]> git.proxmox.com Git - ceph.git/commitdiff
import ceph 15.2.14
authorFabian Grünbichler <f.gruenbichler@proxmox.com>
Mon, 9 Aug 2021 12:41:22 +0000 (14:41 +0200)
committerFabian Grünbichler <f.gruenbichler@proxmox.com>
Mon, 9 Aug 2021 12:41:22 +0000 (14:41 +0200)
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
313 files changed:
ceph/CMakeLists.txt
ceph/PendingReleaseNotes
ceph/alpine/APKBUILD
ceph/ceph.spec
ceph/ceph.spec.in
ceph/changelog.upstream
ceph/debian/control
ceph/doc/man/8/ceph-volume.rst
ceph/doc/mgr/dashboard.rst
ceph/doc/mgr/dashboard_plugins/motd.inc.rst [new file with mode: 0644]
ceph/doc/rados/configuration/msgr2.rst
ceph/doc/rados/configuration/network-config-ref.rst
ceph/doc/rados/operations/balancer.rst
ceph/doc/radosgw/frontends.rst
ceph/examples/boto3/delete_notification.py
ceph/examples/boto3/get_notification.py
ceph/examples/boto3/list_unordered.py
ceph/examples/boto3/notification_filters.py
ceph/examples/boto3/service-2.sdk-extras.json
ceph/examples/boto3/topic_with_endpoint.py
ceph/make-dist
ceph/monitoring/grafana/dashboards/host-details.json
ceph/monitoring/grafana/dashboards/hosts-overview.json
ceph/qa/distros/all/centos_8.0.yaml
ceph/qa/distros/all/centos_8.3.yaml [new file with mode: 0644]
ceph/qa/distros/all/centos_8.yaml
ceph/qa/distros/all/rhel_8.0.yaml
ceph/qa/distros/all/rhel_8.3.yaml [new file with mode: 0644]
ceph/qa/distros/all/rhel_8.yaml
ceph/qa/distros/all/ubuntu_18.04_podman.yaml [deleted file]
ceph/qa/distros/all/ubuntu_20.04.yaml [new file with mode: 0644]
ceph/qa/distros/podman/centos_8.2_kubic_stable.yaml [new file with mode: 0644]
ceph/qa/distros/podman/rhel_8.3_kubic_stable.yaml [new file with mode: 0644]
ceph/qa/distros/podman/ubuntu_18.04_kubic_stable.yaml [new file with mode: 0644]
ceph/qa/distros/podman/ubuntu_20.04_kubic_stable.yaml [new file with mode: 0644]
ceph/qa/distros/podman/ubuntu_20.04_kubic_testing.yaml [new file with mode: 0644]
ceph/qa/distros/supported-all-distro/rhel_8.2.yaml [deleted symlink]
ceph/qa/distros/supported-all-distro/rhel_8.yaml [new symlink]
ceph/qa/distros/supported-all-distro/ubuntu_latest.yaml
ceph/qa/distros/supported-random-distro$/centos_8.yaml [new symlink]
ceph/qa/distros/supported-random-distro$/centos_latest.yaml [deleted symlink]
ceph/qa/distros/supported-random-distro$/rhel_8.yaml [new symlink]
ceph/qa/distros/supported-random-distro$/rhel_latest.yaml [deleted symlink]
ceph/qa/distros/supported-random-distro$/ubuntu_18.04.yaml [new symlink]
ceph/qa/distros/supported-random-distro$/ubuntu_latest.yaml
ceph/qa/distros/supported/centos_latest.yaml
ceph/qa/distros/supported/rhel_latest.yaml
ceph/qa/distros/supported/ubuntu_latest.yaml
ceph/qa/suites/perf-basic/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/centos_7.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/centos_8.0.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/centos_8.2_kubic_stable.yaml [new symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/centos_latest.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/rhel_7.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/rhel_8.0.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/rhel_8.3_kubic_stable.yaml [new symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/rhel_latest.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_18.04.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_20.04.yaml [new symlink]
ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/upgrade/1-start-distro/1-start-centos_8.yaml
ceph/qa/suites/rados/cephadm/upgrade/1-start-distro/1-start-ubuntu_20.04.yaml
ceph/qa/suites/rados/cephadm/with-work/0-distro [new symlink]
ceph/qa/suites/rados/cephadm/with-work/distro/.qa [deleted symlink]
ceph/qa/suites/rados/cephadm/with-work/distro/centos_8.0.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/with-work/distro/centos_latest.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/with-work/distro/rhel_8.0.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/with-work/distro/rhel_latest.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/with-work/distro/ubuntu_18.04.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/with-work/distro/ubuntu_18.04_podman.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/workunits/0-distro/.qa [new symlink]
ceph/qa/suites/rados/cephadm/workunits/0-distro/centos_8.2_kubic_stable.yaml [new symlink]
ceph/qa/suites/rados/cephadm/workunits/0-distro/ubuntu_20.04_kubic_stable.yaml [new symlink]
ceph/qa/suites/rados/cephadm/workunits/0-distro/ubuntu_20.04_kubic_testing.yaml [new symlink]
ceph/qa/suites/rados/cephadm/workunits/distro/.qa [deleted symlink]
ceph/qa/suites/rados/cephadm/workunits/distro/centos_latest.yaml [deleted symlink]
ceph/qa/suites/rados/cephadm/workunits/distro/ubuntu_18.04_podman.yaml [deleted symlink]
ceph/qa/suites/rados/dashboard/tasks/dashboard.yaml
ceph/qa/suites/rados/mgr/tasks/module_selftest.yaml
ceph/qa/suites/rados/perf/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/rados/perf/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/rados/thrash/3-scrub-overrides/$ [new file with mode: 0644]
ceph/qa/suites/rados/thrash/3-scrub-overrides/.qa [new symlink]
ceph/qa/suites/rados/thrash/3-scrub-overrides/default.yaml [new file with mode: 0644]
ceph/qa/suites/rados/thrash/3-scrub-overrides/max-simultaneous-scrubs-2.yaml [new file with mode: 0644]
ceph/qa/suites/rados/thrash/3-scrub-overrides/max-simultaneous-scrubs-3.yaml [new file with mode: 0644]
ceph/qa/suites/rados/thrash/msgr-failures/osd-dispatch-delay.yaml [new file with mode: 0644]
ceph/qa/suites/upgrade-clients/client-upgrade-octopus-pacific/octopus-client-x/rbd/3-workload/rbd_notification_tests.yaml
ceph/qa/suites/upgrade/mimic-x-singleton/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/upgrade/mimic-x-singleton/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/upgrade/mimic-x/parallel/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/upgrade/mimic-x/parallel/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/upgrade/mimic-x/stress-split-erasure-code/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/upgrade/mimic-x/stress-split-erasure-code/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/upgrade/mimic-x/stress-split/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/upgrade/mimic-x/stress-split/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/upgrade/nautilus-x-singleton/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/upgrade/nautilus-x-singleton/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/upgrade/nautilus-x/parallel/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/upgrade/nautilus-x/parallel/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_latest.yaml [deleted symlink]
ceph/qa/suites/upgrade/nautilus-x/stress-split/ubuntu_18.04.yaml [new symlink]
ceph/qa/suites/upgrade/nautilus-x/stress-split/ubuntu_latest.yaml [deleted symlink]
ceph/qa/tasks/barbican.py
ceph/qa/tasks/cephadm.py
ceph/qa/tasks/cephfs/filesystem.py
ceph/qa/tasks/cephfs/test_admin.py
ceph/qa/tasks/mgr/dashboard/test_motd.py [new file with mode: 0644]
ceph/qa/tasks/mgr/test_module_selftest.py
ceph/qa/tasks/userdata_setup.yaml
ceph/qa/workunits/cephadm/test_repos.sh
ceph/qa/workunits/rados/test_envlibrados_for_rocksdb.sh
ceph/qa/workunits/rbd/cli_generic.sh
ceph/qa/workunits/rbd/qemu-iotests.sh
ceph/qa/workunits/rgw/test_rgw_orphan_list.sh
ceph/src/.git_version
ceph/src/ceph-volume/ceph_volume/api/lvm.py
ceph/src/ceph-volume/ceph_volume/devices/lvm/main.py
ceph/src/ceph-volume/ceph_volume/devices/lvm/migrate.py [new file with mode: 0644]
ceph/src/ceph-volume/ceph_volume/tests/devices/lvm/test_migrate.py [new file with mode: 0644]
ceph/src/ceph-volume/ceph_volume/tests/functional/batch/tox.ini
ceph/src/ceph-volume/ceph_volume/tests/functional/lvm/tox.ini
ceph/src/ceph-volume/ceph_volume/tests/functional/playbooks/deploy.yml
ceph/src/ceph-volume/ceph_volume/tests/functional/simple/tox.ini
ceph/src/ceph-volume/ceph_volume/util/system.py
ceph/src/ceph.in
ceph/src/ceph_mon.cc
ceph/src/cephadm/cephadm
ceph/src/cephadm/samples/custom_container.json
ceph/src/cephadm/tests/test_cephadm.py
ceph/src/client/Client.cc
ceph/src/client/Client.h
ceph/src/client/Inode.h
ceph/src/cls/rgw/cls_rgw.cc
ceph/src/common/config_proxy.h
ceph/src/common/ipaddr.cc
ceph/src/common/options.cc
ceph/src/common/pick_address.cc
ceph/src/common/pick_address.h
ceph/src/crush/crush.h
ceph/src/include/ceph_fs.h
ceph/src/include/cephfs/libcephfs.h
ceph/src/include/config-h.in.cmake
ceph/src/include/ipaddr.h
ceph/src/libcephfs.cc
ceph/src/librbd/ImageCtx.cc
ceph/src/librbd/api/Trash.cc
ceph/src/mds/CInode.h
ceph/src/mds/DamageTable.cc
ceph/src/mds/FSMap.cc
ceph/src/mds/FSMap.h
ceph/src/mds/MDCache.cc
ceph/src/mds/MDLog.cc
ceph/src/mds/MDSDaemon.cc
ceph/src/mds/Mutation.h
ceph/src/mds/Server.cc
ceph/src/mds/SessionMap.cc
ceph/src/mds/SnapRealm.cc
ceph/src/mds/SnapServer.h
ceph/src/mds/mdstypes.h
ceph/src/mgr/DaemonServer.cc
ceph/src/mgr/PyModuleRegistry.cc
ceph/src/mon/MDSMonitor.cc
ceph/src/mon/MDSMonitor.h
ceph/src/mon/MonClient.cc
ceph/src/mon/MonClient.h
ceph/src/mon/OSDMonitor.cc
ceph/src/mon/PaxosService.cc
ceph/src/os/bluestore/AvlAllocator.cc
ceph/src/os/bluestore/BlueFS.cc
ceph/src/os/bluestore/BlueFS.h
ceph/src/os/bluestore/BlueRocksEnv.cc
ceph/src/os/bluestore/BlueRocksEnv.h
ceph/src/os/bluestore/BlueStore.cc
ceph/src/os/bluestore/BlueStore.h
ceph/src/os/bluestore/HybridAllocator.cc
ceph/src/os/bluestore/StupidAllocator.cc
ceph/src/os/bluestore/bluefs_types.h
ceph/src/os/bluestore/bluestore_tool.cc
ceph/src/osd/OSD.cc
ceph/src/osd/OSD.h
ceph/src/osd/PG.cc
ceph/src/osd/PeeringState.cc
ceph/src/osd/PrimaryLogPG.cc
ceph/src/osd/osd_types.cc
ceph/src/perfglue/cpu_profiler.cc
ceph/src/pybind/ceph_volume_client.py
ceph/src/pybind/mgr/cephadm/templates/services/prometheus/prometheus.yml.j2
ceph/src/pybind/mgr/dashboard/HACKING.rst
ceph/src/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh [new file with mode: 0755]
ceph/src/pybind/mgr/dashboard/ci/cephadm/ceph_cluster.yml [new file with mode: 0755]
ceph/src/pybind/mgr/dashboard/ci/cephadm/run-cephadm-e2e-tests.sh [new file with mode: 0755]
ceph/src/pybind/mgr/dashboard/ci/cephadm/start-cluster.sh [new file with mode: 0755]
ceph/src/pybind/mgr/dashboard/frontend/cypress.json
ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/cluster/configuration.e2e-spec.ts
ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/cluster/hosts.po.ts
ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/cluster/osds.e2e-spec.ts
ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/orchestrator/workflow/01-hosts.e2e-spec.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/page-helper.po.ts
ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/rgw/buckets.po.ts
ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/ui/dashboard.e2e-spec.ts
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/1.ecdc99fc68ced4743e9f.js [deleted file]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/1.f2cb9c77bf340e0ea797.js [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/5.3532f17ccbf4b268177b.js [deleted file]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/5.7e995d52d0c4ff2d857a.js [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/6.bbb14e8467017ca13aa5.js [deleted file]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/6.dc8bd57d45d56da356c9.js [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/7.1c25843a719516e3e84b.js [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/7.eee5262a4f5915f2d5d4.js [deleted file]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/8.a5d6e73e48ae0cf89ca6.js [deleted file]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/8.d45d4eb6e6f206518908.js [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/index.html
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.6fdc1558ba9057d093e0.js [deleted file]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.6fdc1558ba9057d093e0.js.LICENSE.txt [deleted file]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.8f0b1a650c943458f796.js [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.8f0b1a650c943458f796.js.LICENSE.txt [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/runtime.47bc076fdcd8bde0c19f.js [deleted file]
ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/runtime.aa14b459a46eea461c85.js [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-details/rbd-details.component.html
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-form/rbd-form.model.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.html
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.scss
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.spec.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/dashboard/osd-summary.pipe.spec.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/dashboard/osd-summary.pipe.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/nfs/nfs-form/nfs-form.component.html
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/nfs/nfs-form/nfs-form.component.spec.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/nfs/nfs-form/nfs-form.component.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-bucket-form/rgw-bucket-form.component.html
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-bucket-form/rgw-bucket-form.component.spec.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-bucket-form/rgw-bucket-form.component.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-bucket-list/rgw-bucket-list.component.spec.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-bucket-list/rgw-bucket-list.component.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/ceph/rgw/rgw-user-form/rgw-user-form.component.spec.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/dashboard-help/dashboard-help.component.html
ceph/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/dashboard-help/dashboard-help.component.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.html
ceph/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.scss
ceph/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.spec.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/navigation/navigation.component.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/motd.service.spec.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/motd.service.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/rgw-bucket.service.spec.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/rgw-bucket.service.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/alert-panel/alert-panel.component.html
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/alert-panel/alert-panel.component.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/components.module.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.html [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.scss [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.spec.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/forms/cd-validators.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/pipes.module.ts
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/sanitize-html.pipe.spec.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/sanitize-html.pipe.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/services/motd-notification.service.spec.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/services/motd-notification.service.ts [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/module.py
ceph/src/pybind/mgr/dashboard/plugins/motd.py [new file with mode: 0644]
ceph/src/pybind/mgr/dashboard/services/access_control.py
ceph/src/pybind/mgr/dashboard/services/rbd.py
ceph/src/pybind/mgr/dashboard/tests/test_access_control.py
ceph/src/pybind/mgr/dashboard/tests/test_rbd_service.py
ceph/src/pybind/mgr/selftest/module.py
ceph/src/pybind/mgr/telemetry/module.py
ceph/src/python-common/ceph/utils.py
ceph/src/python-common/tox.ini
ceph/src/rgw/rgw-orphan-list
ceph/src/rgw/rgw_admin.cc
ceph/src/rgw/rgw_asio_frontend.cc
ceph/src/rgw/rgw_cache.h
ceph/src/rgw/rgw_common.cc
ceph/src/rgw/rgw_common.h
ceph/src/rgw/rgw_file.cc
ceph/src/rgw/rgw_gc.cc
ceph/src/rgw/rgw_obj_manifest.cc
ceph/src/rgw/rgw_op.cc
ceph/src/rgw/rgw_op.h
ceph/src/rgw/rgw_orphan.cc
ceph/src/rgw/rgw_pubsub.cc
ceph/src/rgw/rgw_rest_client.cc
ceph/src/rgw/rgw_rest_s3.cc
ceph/src/rgw/rgw_rest_swift.cc
ceph/src/rgw/rgw_sync_module_pubsub.cc
ceph/src/rgw/rgw_sync_module_pubsub.h
ceph/src/rgw/rgw_user.cc
ceph/src/rgw/services/svc_notify.cc
ceph/src/rgw/services/svc_notify.h
ceph/src/rgw/services/svc_sys_obj_cache.cc
ceph/src/test/cls_rgw/test_cls_rgw.cc
ceph/src/test/common/test_counter.cc
ceph/src/test/libcephfs/test.cc
ceph/src/test/objectstore/Allocator_test.cc
ceph/src/test/objectstore/bmap_allocator_replay_test.cc
ceph/src/test/objectstore/store_test.cc
ceph/src/test/objectstore/test_bluefs.cc
ceph/src/test/rgw/amqp_mock.cc
ceph/src/test/test_ipaddr.cc
ceph/src/tools/cephfs/DataScan.cc
ceph/src/tools/rbd/Schedule.cc
ceph/src/tools/rbd/Schedule.h
ceph/src/tools/rbd/Utils.cc
ceph/src/tools/rbd/Utils.h
ceph/src/tools/rbd/action/Kernel.cc
ceph/src/tools/rbd/action/List.cc
ceph/src/tools/rbd/action/Migration.cc
ceph/src/tools/rbd/action/MirrorSnapshotSchedule.cc
ceph/src/tools/rbd/action/Perf.cc
ceph/src/tools/rbd/action/Trash.cc
ceph/src/tools/rbd/action/TrashPurgeSchedule.cc
ceph/src/tools/rbd_mirror/image_replayer/snapshot/Replayer.h

index a2d34ee97dfb0b6c2f209aed73433759cb511b04..3ac7fb27ed80398cca06c473c7eddce2019c4a52 100644 (file)
@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.10.2)
 # remove cmake/modules/FindPython* once 3.12 is required
 
 project(ceph
-  VERSION 15.2.0
+  VERSION 15.2.14
   LANGUAGES CXX C ASM)
 
 foreach(policy
@@ -440,6 +440,11 @@ if(WITH_MGR)
   set(MGR_PYTHON_LIBRARIES ${Python3_LIBRARIES})
   set(MGR_PYTHON_VERSION_MAJOR ${Python3_VERSION_MAJOR})
   set(MGR_PYTHON_VERSION_MINOR ${Python3_VERSION_MINOR})
+  # https://tracker.ceph.com/issues/45147
+  if(Python3_VERSION VERSION_GREATER_EQUAL 3.8)
+    set(MGR_DISABLED_MODULES "diskprediction_local")
+    message(STATUS "mgr module disabled for ${Python3_VERSION}: ${MGR_DISABLED_MODULES}")
+  endif()
   # Boost dependency check deferred to Boost section
 endif(WITH_MGR)
 
index e4eb04ad80dc57b866348e43f975c3f45e1a0936..3cd108a95b1a768c5a048a3c051505262f84c4ed 100644 (file)
@@ -1,6 +1,22 @@
+15.2.14
+-------
+
+* RGW: It is possible to specify ssl options and ciphers for beast frontend now.
+  The default ssl options setting is "no_sslv2:no_sslv3:no_tlsv1:no_tlsv1_1".
+  If you want to return back the old behavior add 'ssl_options=' (empty) to
+  ``rgw frontends`` configuration.
+
 15.2.11
 -------
 
+* `ceph-mgr-modules-core` debian package does not recommend `ceph-mgr-rook`
+  anymore. As the latter depends on `python3-numpy` which cannot be imported in
+  different Python sub-interpreters multi-times if the version of
+  `python3-numpy` is older than 1.19. Since `apt-get` installs the `Recommends`
+  packages by default, `ceph-mgr-rook` was always installed along with
+  `ceph-mgr` debian package as an indirect dependency. If your workflow depends
+  on this behavior, you might want to install `ceph-mgr-rook` separately.
+
 * OSD: the option ``osd_fast_shutdown_notify_mon`` has been introduced to allow
   the OSD to notify the monitor it is shutting down even if ``osd_fast_shutdown``
   is enabled. This helps with the monitor logs on larger clusters, that may get
index b1e8f2512a6c34dda7bd20520d5f579d25467c7e..ef43085d6dd748a249e7d9dcc94353b0e132f4c0 100644 (file)
@@ -1,7 +1,7 @@
 # Contributor: John Coyle <dx9err@gmail.com>
 # Maintainer: John Coyle <dx9err@gmail.com>
 pkgname=ceph
-pkgver=15.2.13
+pkgver=15.2.14
 pkgrel=0
 pkgdesc="Ceph is a distributed object store and file system"
 pkgusers="ceph"
@@ -63,7 +63,7 @@ makedepends="
        xmlstarlet
        yasm
 "
-source="ceph-15.2.13.tar.bz2"
+source="ceph-15.2.14.tar.bz2"
 subpackages="
        $pkgname-base
        $pkgname-common
@@ -116,7 +116,7 @@ _sysconfdir=/etc
 _udevrulesdir=/etc/udev/rules.d
 _python_sitelib=/usr/lib/python2.7/site-packages
 
-builddir=$srcdir/ceph-15.2.13
+builddir=$srcdir/ceph-15.2.14
 
 build() {
        export CEPH_BUILD_VIRTUALENV=$builddir
index ce1ef531aaf75e98f346f16310a38b678bab61b4..a966466df6ce1be57bfc582b08f5399be39ec506 100644 (file)
@@ -98,7 +98,7 @@
 # main package definition
 #################################################################################
 Name:          ceph
-Version:       15.2.13
+Version:       15.2.14
 Release:       0%{?dist}
 %if 0%{?fedora} || 0%{?rhel}
 Epoch:         2
@@ -114,7 +114,7 @@ License:    LGPL-2.1 and LGPL-3.0 and CC-BY-SA-3.0 and GPL-2.0 and BSL-1.0 and BSD-
 Group:         System/Filesystems
 %endif
 URL:           http://ceph.com/
-Source0:       %{?_remote_tarball_prefix}ceph-15.2.13.tar.bz2
+Source0:       %{?_remote_tarball_prefix}ceph-15.2.14.tar.bz2
 %if 0%{?suse_version}
 # _insert_obs_source_lines_here
 ExclusiveArch:  x86_64 aarch64 ppc64le s390x
@@ -1150,7 +1150,7 @@ This package provides Ceph’s default alerts for Prometheus.
 # common
 #################################################################################
 %prep
-%autosetup -p1 -n ceph-15.2.13
+%autosetup -p1 -n ceph-15.2.14
 
 %build
 # LTO can be enabled as soon as the following GCC bug is fixed:
@@ -1452,21 +1452,7 @@ fi
 
 %postun base
 /sbin/ldconfig
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph.target
-%endif
-if [ $1 -ge 1 ] ; then
-  # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
-  # "yes". In any case: if units are not running, do not touch them.
-  SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph
-  if [ -f $SYSCONF_CEPH -a -r $SYSCONF_CEPH ] ; then
-    source $SYSCONF_CEPH
-  fi
-fi
 
 %pre -n cephadm
 getent group cephadm >/dev/null || groupadd -r cephadm
@@ -1612,13 +1598,7 @@ fi
 %endif
 
 %postun mds
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-mds@\*.service ceph-mds.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-mds@\*.service ceph-mds.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -1665,13 +1645,7 @@ fi
 %endif
 
 %postun mgr
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-mgr@\*.service ceph-mgr.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-mgr@\*.service ceph-mgr.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -1818,13 +1792,7 @@ fi
 %endif
 
 %postun mon
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-mon@\*.service ceph-mon.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-mon@\*.service ceph-mon.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -1876,13 +1844,7 @@ fi
 %endif
 
 %postun -n rbd-mirror
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-rbd-mirror@\*.service ceph-rbd-mirror.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-rbd-mirror@\*.service ceph-rbd-mirror.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -1923,15 +1885,8 @@ fi
 %endif
 
 %postun immutable-object-cache
-test -n "$FIRST_ARG" || FIRST_ARG=$1
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
-%endif
-if [ $FIRST_ARG -ge 1 ] ; then
+if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
   SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph
@@ -1986,13 +1941,7 @@ fi
 
 %postun radosgw
 /sbin/ldconfig
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-radosgw@\*.service ceph-radosgw.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-radosgw@\*.service ceph-radosgw.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -2053,13 +2002,7 @@ fi
 %endif
 
 %postun osd
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-osd@\*.service ceph-volume@\*.service ceph-osd.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-osd@\*.service ceph-volume@\*.service ceph-osd.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
index 433e316f960211e20aa3a0eb832b32251fabc24f..ccafc4562941c5df3352506d3afe7e6dd240e9fa 100644 (file)
@@ -1452,21 +1452,7 @@ fi
 
 %postun base
 /sbin/ldconfig
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph.target
-%endif
-if [ $1 -ge 1 ] ; then
-  # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
-  # "yes". In any case: if units are not running, do not touch them.
-  SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph
-  if [ -f $SYSCONF_CEPH -a -r $SYSCONF_CEPH ] ; then
-    source $SYSCONF_CEPH
-  fi
-fi
 
 %pre -n cephadm
 getent group cephadm >/dev/null || groupadd -r cephadm
@@ -1612,13 +1598,7 @@ fi
 %endif
 
 %postun mds
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-mds@\*.service ceph-mds.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-mds@\*.service ceph-mds.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -1665,13 +1645,7 @@ fi
 %endif
 
 %postun mgr
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-mgr@\*.service ceph-mgr.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-mgr@\*.service ceph-mgr.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -1818,13 +1792,7 @@ fi
 %endif
 
 %postun mon
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-mon@\*.service ceph-mon.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-mon@\*.service ceph-mon.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -1876,13 +1844,7 @@ fi
 %endif
 
 %postun -n rbd-mirror
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-rbd-mirror@\*.service ceph-rbd-mirror.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-rbd-mirror@\*.service ceph-rbd-mirror.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -1923,15 +1885,8 @@ fi
 %endif
 
 %postun immutable-object-cache
-test -n "$FIRST_ARG" || FIRST_ARG=$1
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
-%endif
-if [ $FIRST_ARG -ge 1 ] ; then
+if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
   SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph
@@ -1986,13 +1941,7 @@ fi
 
 %postun radosgw
 /sbin/ldconfig
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-radosgw@\*.service ceph-radosgw.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-radosgw@\*.service ceph-radosgw.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
@@ -2053,13 +2002,7 @@ fi
 %endif
 
 %postun osd
-%if 0%{?suse_version}
-DISABLE_RESTART_ON_UPDATE="yes"
-%service_del_postun ceph-osd@\*.service ceph-volume@\*.service ceph-osd.target
-%endif
-%if 0%{?fedora} || 0%{?rhel}
 %systemd_postun ceph-osd@\*.service ceph-volume@\*.service ceph-osd.target
-%endif
 if [ $1 -ge 1 ] ; then
   # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
   # "yes". In any case: if units are not running, do not touch them.
index 03a97c540aeb7757193751ab35e511e2d7684ba3..14b0e4b50e9dd48594728c187000f9f29d4ecc7f 100644 (file)
@@ -1,7 +1,13 @@
-ceph (15.2.13-1bionic) bionic; urgency=medium
+ceph (15.2.14-1bionic) bionic; urgency=medium
 
 
- -- Jenkins Build Slave User <jenkins-build@braggi13.front.sepia.ceph.com>  Wed, 26 May 2021 19:34:51 +0000
+ -- Jenkins Build Slave User <jenkins-build@adami08.front.sepia.ceph.com>  Thu, 05 Aug 2021 17:22:18 +0000
+
+ceph (15.2.14-1) stable; urgency=medium
+
+  * New upstream release
+
+ -- Ceph Release Team <ceph-maintainers@ceph.com>  Thu, 05 Aug 2021 17:11:52 +0000
 
 ceph (15.2.13-1) stable; urgency=medium
 
index 397e3a09d5e0106100ecbbfa95e1043ba7f1478e..ee62a1a6d139b44d0221201c30cd39696b91af99 100644 (file)
@@ -305,7 +305,6 @@ Depends: ${misc:Depends},
          python3-openssl,
 Replaces: ceph-mgr (<< 15.1.0)
 Breaks: ceph-mgr (<< 15.1.0)
-Recommends: ceph-mgr-rook
 Description: ceph manager modules which are always enabled
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
index b3c70a5567ba20515575f2727f2198e24a093a16..9bd51744eafc7a3dff811753a1e215f3f5829302 100644 (file)
@@ -15,7 +15,7 @@ Synopsis
 | **ceph-volume** **inventory**
 
 | **ceph-volume** **lvm** [ *trigger* | *create* | *activate* | *prepare*
-| *zap* | *list* | *batch*]
+| *zap* | *list* | *batch* | *new-wal* | *new-db* | *migrate* ]
 
 | **ceph-volume** **simple** [ *trigger* | *scan* | *activate* ]
 
@@ -241,6 +241,71 @@ Positional arguments:
   ``/path/to/sda1`` or ``/path/to/sda`` for regular devices.
 
 
+**new-wal**
+Attaches the given logical volume to OSD as a WAL. Logical volume
+name format is vg/lv. Fails if OSD has already got attached WAL.
+
+Usage::
+
+    ceph-volume lvm new-wal --osd-id OSD_ID --osd-fsid OSD_FSID --target TARGET_LV
+
+Optional arguments:
+
+* [-h, --help]          show the help message and exit
+
+Required arguments:
+
+* --osd-id OSD_ID       OSD id to attach new WAL to
+* --osd-fsid OSD_FSID   OSD fsid to attach new WAL to
+* --target TARGET_LV    logical volume name to attach as WAL
+
+
+**new-db**
+Attaches the given logical volume to OSD as a DB. Logical volume
+name format is vg/lv. Fails if OSD has already got attached DB.
+
+Usage::
+
+    ceph-volume lvm new-db --osd-id OSD_ID --osd-fsid OSD_FSID --target <target lv>
+
+Optional arguments:
+
+* [-h, --help]          show the help message and exit
+
+Required arguments:
+
+* --osd-id OSD_ID       OSD id to attach new DB to
+* --osd-fsid OSD_FSID   OSD fsid to attach new DB to
+* --target TARGET_LV    logical volume name to attach as DB
+
+**migrate**
+
+Moves BlueFS data from source volume(s) to the target one, source volumes
+(except the main, i.e. data or block one) are removed on success. LVM volumes
+are permitted for Target only, both already attached or new one. In the latter
+case it is attached to the OSD replacing one of the source devices. Following
+replacement rules apply (in the order of precedence, stop on the first match):
+
+    - if source list has DB volume - target device replaces it.
+    - if source list has WAL volume - target device replace it.
+    - if source list has slow volume only - operation is not permitted,
+      requires explicit allocation via new-db/new-wal command.
+
+Usage::
+
+    ceph-volume lvm migrate --osd-id OSD_ID --osd-fsid OSD_FSID --target TARGET_LV --from {data|db|wal} [{data|db|wal} ...]
+
+Optional arguments:
+
+* [-h, --help]          show the help message and exit
+
+Required arguments:
+
+* --osd-id OSD_ID       OSD id to perform migration at
+* --osd-fsid OSD_FSID   OSD fsid to perform migration at
+* --target TARGET_LV    logical volume to move data to
+* --from TYPE_LIST      list of source device type names, e.g. --from db wal
+
 simple
 ------
 
index 31cbe585c9a8a2cd7441d51b06bf75ef2a8db27a..ca577741dfd5a83abcfc37092d07a2957999922b 100644 (file)
@@ -1189,6 +1189,7 @@ and loosely coupled fashion.
 
 .. include:: dashboard_plugins/feature_toggles.inc.rst
 .. include:: dashboard_plugins/debug.inc.rst
+.. include:: dashboard_plugins/motd.inc.rst
 
 
 Troubleshooting the Dashboard
diff --git a/ceph/doc/mgr/dashboard_plugins/motd.inc.rst b/ceph/doc/mgr/dashboard_plugins/motd.inc.rst
new file mode 100644 (file)
index 0000000..b8464e1
--- /dev/null
@@ -0,0 +1,30 @@
+.. _dashboard-motd:
+
+Message of the day (MOTD)
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Displays a configured `message of the day` at the top of the Ceph Dashboard.
+
+The importance of a MOTD can be configured by its severity, which is
+`info`, `warning` or `danger`. The MOTD can expire after a given time,
+this means it will not be displayed in the UI anymore. Use the following
+syntax to specify the expiration time: `Ns|m|h|d|w` for seconds, minutes,
+hours, days and weeks. If the MOTD should expire after 2 hours, use `2h`
+or `5w` for 5 weeks. Use `0` to configure a MOTD that does not expire.
+
+To configure a MOTD, run the following command::
+
+  $ ceph dashboard motd set <severity:info|warning|danger> <expires> <message>
+
+To show the configured MOTD::
+
+  $ ceph dashboard motd get
+
+To clear the configured MOTD run::
+
+  $ ceph dashboard motd clear
+
+A MOTD with a `info` or `warning` severity can be closed by the user. The
+`info` MOTD is not displayed anymore until the local storage cookies are
+cleared or a new MOTD with a different severity is displayed. A MOTD with
+a 'warning' severity will be displayed again in a new session.
index 293f7c3d39dab4dafe87f0170102b671dd985261..70494d65ff8d8eeca3b568eba6007a3e5a234fbf 100644 (file)
@@ -88,7 +88,7 @@ Similarly, two options control whether IPv4 and IPv6 addresses are used:
   * ``ms_bind_ipv6`` [default: false] controls whether a daemon binds
     to an IPv6 address
 
-.. note: The ability to bind to multiple ports has paved the way for
+.. note:: The ability to bind to multiple ports has paved the way for
    dual-stack IPv4 and IPv6 support.  That said, dual-stack support is
    not yet tested as of Nautilus v14.2.0 and likely needs some
    additional code changes to work correctly.
index bd49a87b310ccfd9e45ee290fabe8cd6c864f92c..4ebbf101688a348fca67f2407f50cf56a2e01642 100644 (file)
@@ -201,6 +201,27 @@ following option to the ``[global]`` section of your Ceph configuration file.
 We prefer that the cluster network is **NOT** reachable from the public network
 or the Internet for added security.
 
+IPv4/IPv6 Dual Stack Mode
+-------------------------
+
+If you want to run in an IPv4/IPv6 dual stack mode and want to define your public and/or
+cluster networks, then you need to specify both your IPv4 and IPv6 networks for each:
+
+.. code-block:: ini
+
+       [global]
+               # ... elided configuration
+               public network = {IPv4 public-network/netmask}, {IPv6 public-network/netmask}
+
+This is so ceph can find a valid IP address for both address families.
+
+If you want just an IPv4 or an IPv6 stack environment, then make sure you set the `ms bind`
+options correctly.
+
+.. note::
+   Binding to IPv4 is enabled by default, so if you just add the option to bind to IPv6
+   you'll actually put yourself into dual stack mode. If you want just IPv6, then disable IPv4 and
+   enable IPv6. See `Bind`_ below.
 
 Ceph Daemons
 ============
@@ -336,11 +357,16 @@ addresses.
 :Default: ``7300``
 :Required: No. 
 
+``ms bind ipv4``
+
+:Description: Enables Ceph daemons to bind to IPv4 addresses.
+:Type: Boolean
+:Default: ``true``
+:Required: No
 
 ``ms bind ipv6``
 
-:Description: Enables Ceph daemons to bind to IPv6 addresses. Currently the
-              messenger *either* uses IPv4 or IPv6, but it cannot do both.
+:Description: Enables Ceph daemons to bind to IPv6 addresses.
 :Type: Boolean
 :Default: ``false``
 :Required: No
index b4bbfd85158caa45958bef480f0273659de68f43..9f4f0b3dfe1e383d5f0a25b0e8768145686e6109 100644 (file)
@@ -42,9 +42,9 @@ healed itself).
 When the cluster is healthy, the balancer will throttle its changes
 such that the percentage of PGs that are misplaced (i.e., that need to
 be moved) is below a threshold of (by default) 5%.  The
-``max_misplaced`` threshold can be adjusted with::
+``target_max_misplaced_ratio`` threshold can be adjusted with::
 
-  ceph config set mgr mgr/balancer/max_misplaced .07   # 7%
+  ceph config set mgr target_max_misplaced_ratio .07   # 7%
 
 
 Modes
index e4a013590851c06fbe815352bd7e551c42d94791..be96e77e863245c4fb9eceb18539028935ac21d7 100644 (file)
@@ -64,6 +64,38 @@ Options
 :Type: String
 :Default: None
 
+``ssl_options``
+
+:Description: Optional colon separated list of ssl context options:
+
+              ``default_workarounds`` Implement various bug workarounds.
+
+              ``no_compression`` Disable compression.
+
+              ``no_sslv2`` Disable SSL v2.
+
+              ``no_sslv3`` Disable SSL v3.
+
+              ``no_tlsv1`` Disable TLS v1.
+
+              ``no_tlsv1_1`` Disable TLS v1.1.
+
+              ``no_tlsv1_2`` Disable TLS v1.2.
+
+              ``single_dh_use`` Always create a new key when using tmp_dh parameters.
+
+:Type: String
+:Default: ``no_sslv2:no_sslv3:no_tlsv1:no_tlsv1_1``
+
+``ssl_ciphers``
+
+:Description: Optional list of one or more cipher strings separated by colons.
+              The format of the string is described in openssl's ciphers(1)
+              manual.
+
+:Type: String
+:Default: None
+
 ``tcp_nodelay``
 
 :Description: If set the socket option will disable Nagle's algorithm on 
index 8e4d3d7b71935ecb5c0a31183f192140ca00d6d4..ca5958e52ec110f83ce22d1aa88e62e310cda512 100755 (executable)
@@ -13,7 +13,7 @@ elif len(sys.argv) == 2:
     bucketname = sys.argv[1]
     notification_name = ""
 else:
-    print 'Usage: ' + sys.argv[0] + ' <bucket> [notification]'
+    print('Usage: ' + sys.argv[0] + ' <bucket> [notification]')
     sys.exit(1)
 
 # endpoint and keys from vstart
@@ -30,7 +30,7 @@ client = boto3.client('s3',
 # deleting all notification configurations on a bucket (without deleting the bucket itself) are extension to AWS S3 API
 
 if notification_name == "":
-    print client.delete_bucket_notification_configuration(Bucket=bucketname)
+    print(client.delete_bucket_notification_configuration(Bucket=bucketname))
 else:
-    print client.delete_bucket_notification_configuration(Bucket=bucketname,
-                                                          Notification=notification_name)
+    print(client.delete_bucket_notification_configuration(Bucket=bucketname,
+                                                          Notification=notification_name))
index 6e32198950c633737d3ec2e141112d6e1ca4af80..490c018d4ca2f0e12815543ecfd91a23b94f956f 100755 (executable)
@@ -4,7 +4,7 @@ import boto3
 import sys
 
 if len(sys.argv) != 3:
-    print 'Usage: ' + sys.argv[0] + ' <bucket> <notification>'
+    print('Usage: ' + sys.argv[0] + ' <bucket> <notification>')
     sys.exit(1)
 
 # bucket name as first argument
@@ -24,5 +24,5 @@ client = boto3.client('s3',
 
 # getting a specific notification configuration is an extension to AWS S3 API
 
-print client.get_bucket_notification_configuration(Bucket=bucketname,
-                                                   Notification=notification_name)
+print(client.get_bucket_notification_configuration(Bucket=bucketname,
+                                                   Notification=notification_name))
index b2339eaa63690c4574c45789e5eee5ba2d1320ba..2aa5a8e0608d3775e0c75a942df93f31bb6050ab 100755 (executable)
@@ -4,7 +4,7 @@ import boto3
 import sys
 
 if len(sys.argv) != 2:
-    print 'Usage: ' + sys.argv[0] + ' <bucket>'
+    print('Usage: ' + sys.argv[0] + ' <bucket>')
     sys.exit(1)
 
 # bucket name as first argument
@@ -22,4 +22,4 @@ client = boto3.client('s3',
 
 # geting an unordered list of objets is an extension to AWS S3 API
 
-print client.list_objects(Bucket=bucketname, AllowUnordered=True)
+print(client.list_objects(Bucket=bucketname, AllowUnordered=True))
index a45393c74f9b81cf13ee0fbac87d8b470efe0c72..2687c8b3aad5f515e11644be1fdf7dbf8a21fcc3 100755 (executable)
@@ -4,7 +4,7 @@ import boto3
 import sys
 
 if len(sys.argv) != 4:
-    print 'Usage: ' + sys.argv[0] + ' <bucket> <topic ARN> <notification Id>'
+    print('Usage: ' + sys.argv[0] + ' <bucket> <topic ARN> <notification Id>')
     sys.exit(1)
 
 # bucket name as first argument
@@ -44,5 +44,5 @@ topic_conf_list = [{'Id': notification_id,
                          }
                     }}]
 
-print client.put_bucket_notification_configuration(Bucket=bucketname,
-                                                   NotificationConfiguration={'TopicConfigurations': topic_conf_list})
+print(client.put_bucket_notification_configuration(Bucket=bucketname,
+                                                   NotificationConfiguration={'TopicConfigurations': topic_conf_list}))
index 65883226366f871c2808d4ded1d2a10d39ca9d70..9ee66730e8522ec07a7337fa4e2a5309b2716469 100644 (file)
         "UsageStatsSummary": {
             "type": "structure",
             "members": {
-                "TotalBytes":{"shape":"TotalBytes"},
+                       "QuotaMaxBytes":{"shape":"QuotaMaxBytes"},
+                       "QuotaMaxBuckets":{"shape": "QuotaMaxBuckets"},
+                       "QuotaMaxObjCount":{"shape":"QuotaMaxObjCount"},
+                       "QuotaMaxBytesPerBucket":{"shape":"QuotaMaxBytesPerBucket"},
+                "QuotaMaxObjCountPerBucket":{"shape":"QuotaMaxObjCountPerBucket"},
+                       "TotalBytes":{"shape":"TotalBytes"},
                 "TotalBytesRounded":{"shape":"TotalBytesRounded"},
                 "TotalEntries":{"shape":"TotalEntries"}
             }
         },
-        "TotalBytesRounded":{"type":"integer"},
+        "QuotaMaxBytes":{"type":"integer"},
+           "QuotaMaxBuckets":{"type": "integer"},
+           "QuotaMaxObjCount":{"type":"integer"},
+           "QuotaMaxBytesPerBucket":{"type":"integer"},
+           "QuotaMaxObjCountPerBucket":{"type":"integer"},
+           "TotalBytesRounded":{"type":"integer"},
         "TotalBytes":{"type":"integer"},
         "TotalEntries":{"type":"integer"}
     },
index b6e626e0200263c46268222768a9ed38f5d44963..3137cee7d4069f6e1be3830d9a6ff3c9a15eedfa 100755 (executable)
@@ -15,7 +15,7 @@ elif len(sys.argv) == 2:
     topic_name = sys.argv[1]
     region_name = ""
 else:
-    print 'Usage: ' + sys.argv[0] + ' <topic name> [region name]'
+    print('Usage: ' + sys.argv[0] + ' <topic name> [region name]')
     sys.exit(1)
 
 # endpoint and keys from vstart
@@ -38,4 +38,4 @@ client = boto3.client('sns',
 endpoint_args = 'push-endpoint=amqp://127.0.0.1:5672&amqp-exchange=ex1&amqp-ack-level=broker'
 attributes = {nvp[0] : nvp[1] for nvp in urlparse.parse_qsl(endpoint_args, keep_blank_values=True)}
 
-print client.create_topic(Name=topic_name, Attributes=attributes)
+print(client.create_topic(Name=topic_name, Attributes=attributes))
index e8cc805f7fd93e5131d7633e0e1da9597ae12441..c24de14ab6ff735ae454dfaa845464530129254a 100755 (executable)
@@ -1,7 +1,21 @@
 #!/bin/bash -e
 
+SCRIPTNAME="$(basename "${0}")"
+BASEDIR="$(readlink -f "$(dirname "${0}")")"
+
 if [ ! -d .git ]; then
-    echo "no .git present.  run this from the base dir of the git checkout."
+    echo "$SCRIPTNAME: Full path to the script: $BASEDIR/$SCRIPTNAME"
+    echo "$SCRIPTNAME: No .git present. Run this from the base dir of the git checkout."
+    exit 1
+fi
+
+# Running the script from a directory containing a colon anywhere in the path
+# will expose us to the dreaded "[BUG] npm run [command] failed if the directory
+# path contains colon" bug https://github.com/npm/cli/issues/633
+# (see https://tracker.ceph.com/issues/39556 for details)
+if [[ "$BASEDIR" == *:* ]] ; then
+    echo "$SCRIPTNAME: Full path to the script: $BASEDIR/$SCRIPTNAME"
+    echo "$SCRIPTNAME: The path to the script contains a colon. Their presence has been known to break the script."
     exit 1
 fi
 
index 0300e4f01965052a33d97133b04125c21146c9f9..237349dd36a1f42a9ddb10e4e5b837949c87d0b1 100644 (file)
@@ -37,7 +37,7 @@
   "gnetId": null,
   "graphTooltip": 0,
   "id": null,
-  "iteration": 1557386759572,
+  "iteration": 1615564911000,
   "links": [],
   "panels": [
     {
       "steppedLine": false,
       "targets": [
         {
-          "expr": "sum by (mode) (\n  irate(node_cpu{instance=~\"($ceph_hosts).*\", mode=~\"(irq|nice|softirq|steal|system|user|iowait)\"}[1m]) or\n  irate(node_cpu_seconds_total{instance=~\"($ceph_hosts).*\", mode=~\"(irq|nice|softirq|steal|system|user|iowait)\"}[1m])\n) / scalar(\n  sum(irate(node_cpu{instance=~\"($ceph_hosts).*\"}[1m]) or\n      irate(node_cpu_seconds_total{instance=~\"($ceph_hosts).*\"}[1m]))\n) * 100",
+          "expr": "sum by (mode) (\n  irate(node_cpu{instance=~\"($ceph_hosts)([\\\\.:].*)?\", mode=~\"(irq|nice|softirq|steal|system|user|iowait)\"}[1m]) or\n  irate(node_cpu_seconds_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\", mode=~\"(irq|nice|softirq|steal|system|user|iowait)\"}[1m])\n) / scalar(\n  sum(irate(node_cpu{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[1m]) or\n      irate(node_cpu_seconds_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[1m]))\n) * 100",
           "format": "time_series",
           "intervalFactor": 2,
           "legendFormat": "{{mode}}",
       "steppedLine": false,
       "targets": [
         {
-          "expr": "(node_memory_MemTotal{instance=~\"[[ceph_hosts]].*\"} or node_memory_MemTotal_bytes{instance=~\"[[ceph_hosts]].*\"})- (\n  (node_memory_MemFree{instance=~\"[[ceph_hosts]].*\"} or node_memory_MemFree_bytes{instance=~\"[[ceph_hosts]].*\"})  + \n  (node_memory_Cached{instance=~\"[[ceph_hosts]].*\"} or node_memory_Cached_bytes{instance=~\"[[ceph_hosts]].*\"}) + \n  (node_memory_Buffers{instance=~\"[[ceph_hosts]].*\"} or node_memory_Buffers_bytes{instance=~\"[[ceph_hosts]].*\"}) +\n  (node_memory_Slab{instance=~\"[[ceph_hosts]].*\"} or node_memory_Slab_bytes{instance=~\"[[ceph_hosts]].*\"})\n  )\n  \n",
+          "expr": "(node_memory_MemTotal{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_MemTotal_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"})- (\n  (node_memory_MemFree{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_MemFree_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"})  + \n  (node_memory_Cached{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_Cached_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}) + \n  (node_memory_Buffers{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_Buffers_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}) +\n  (node_memory_Slab{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_Slab_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"})\n  )\n  \n",
           "format": "time_series",
           "intervalFactor": 1,
           "legendFormat": "used",
           "refId": "D"
         },
         {
-          "expr": "node_memory_MemFree{instance=~\"[[ceph_hosts]].*\"} or node_memory_MemFree_bytes{instance=~\"[[ceph_hosts]].*\"} ",
+          "expr": "node_memory_MemFree{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_MemFree_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} ",
           "format": "time_series",
           "hide": false,
           "intervalFactor": 1,
           "refId": "A"
         },
         {
-          "expr": "(node_memory_Cached{instance=~\"[[ceph_hosts]].*\"} or node_memory_Cached_bytes{instance=~\"[[ceph_hosts]].*\"}) + \n(node_memory_Buffers{instance=~\"[[ceph_hosts]].*\"} or node_memory_Buffers_bytes{instance=~\"[[ceph_hosts]].*\"}) +\n(node_memory_Slab{instance=~\"[[ceph_hosts]].*\"} or node_memory_Slab_bytes{instance=~\"[[ceph_hosts]].*\"}) \n",
+          "expr": "(node_memory_Cached{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_Cached_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}) + \n(node_memory_Buffers{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_Buffers_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}) +\n(node_memory_Slab{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_Slab_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}) \n",
           "format": "time_series",
           "hide": false,
           "intervalFactor": 1,
           "refId": "C"
         },
         {
-          "expr": "node_memory_MemTotal{instance=~\"[[ceph_hosts]].*\"} or node_memory_MemTotal_bytes{instance=~\"[[ceph_hosts]].*\"} ",
+          "expr": "node_memory_MemTotal{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} or node_memory_MemTotal_bytes{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"} ",
           "format": "time_series",
           "hide": false,
           "intervalFactor": 1,
       "steppedLine": false,
       "targets": [
         {
-          "expr": "sum by (device) (\n  irate(node_network_receive_bytes{instance=~\"($ceph_hosts).*\",device!=\"lo\"}[1m]) or \n  irate(node_network_receive_bytes_total{instance=~\"($ceph_hosts).*\",device!=\"lo\"}[1m])\n)",
+          "expr": "sum by (device) (\n  irate(node_network_receive_bytes{instance=~\"($ceph_hosts)([\\\\.:].*)?\",device!=\"lo\"}[1m]) or \n  irate(node_network_receive_bytes_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\",device!=\"lo\"}[1m])\n)",
           "format": "time_series",
           "intervalFactor": 1,
           "legendFormat": "{{device}}.rx",
           "textEditor": true
         },
         {
-          "expr": "sum by (device) (\n  irate(node_network_transmit_bytes{instance=~\"($ceph_hosts).*\",device!=\"lo\"}[1m]) or\n  irate(node_network_transmit_bytes_total{instance=~\"($ceph_hosts).*\",device!=\"lo\"}[1m])\n)",
+          "expr": "sum by (device) (\n  irate(node_network_transmit_bytes{instance=~\"($ceph_hosts)([\\\\.:].*)?\",device!=\"lo\"}[1m]) or\n  irate(node_network_transmit_bytes_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\",device!=\"lo\"}[1m])\n)",
           "format": "time_series",
           "intervalFactor": 1,
           "legendFormat": "{{device}}.tx",
       "steppedLine": false,
       "targets": [
         {
-          "expr": "irate(node_network_receive_drop{instance=~\"[[ceph_hosts]].*\"}[1m]) or irate(node_network_receive_drop_total{instance=~\"[[ceph_hosts]].*\"}[1m])",
+          "expr": "irate(node_network_receive_drop{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}[1m]) or irate(node_network_receive_drop_total{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}[1m])",
           "format": "time_series",
           "instant": false,
           "intervalFactor": 1,
           "refId": "A"
         },
         {
-          "expr": "irate(node_network_transmit_drop{instance=~\"[[ceph_hosts]].*\"}[1m]) or irate(node_network_transmit_drop_total{instance=~\"[[ceph_hosts]].*\"}[1m])",
+          "expr": "irate(node_network_transmit_drop{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}[1m]) or irate(node_network_transmit_drop_total{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}[1m])",
           "format": "time_series",
           "intervalFactor": 1,
           "legendFormat": "{{device}}.tx",
       "tableColumn": "",
       "targets": [
         {
-          "expr": "sum(ceph_osd_stat_bytes and on (ceph_daemon) ceph_disk_occupation{instance=~\"($ceph_hosts).*\"})",
+          "expr": "sum(ceph_osd_stat_bytes and on (ceph_daemon) ceph_disk_occupation{instance=~\"($ceph_hosts)([\\\\.:].*)?\"})",
           "format": "time_series",
           "intervalFactor": 2,
           "refId": "A",
       "steppedLine": false,
       "targets": [
         {
-          "expr": "irate(node_network_receive_errs{instance=~\"[[ceph_hosts]].*\"}[1m]) or irate(node_network_receive_errs_total{instance=~\"[[ceph_hosts]].*\"}[1m])",
+          "expr": "irate(node_network_receive_errs{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}[1m]) or irate(node_network_receive_errs_total{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}[1m])",
           "format": "time_series",
           "instant": false,
           "intervalFactor": 1,
           "refId": "A"
         },
         {
-          "expr": "irate(node_network_transmit_errs{instance=~\"[[ceph_hosts]].*\"}[1m]) or irate(node_network_transmit_errs_total{instance=~\"[[ceph_hosts]].*\"}[1m])",
+          "expr": "irate(node_network_transmit_errs{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}[1m]) or irate(node_network_transmit_errs_total{instance=~\"[[ceph_hosts]]([\\\\.:].*)?\"}[1m])",
           "format": "time_series",
           "intervalFactor": 1,
           "legendFormat": "{{device}}.tx",
       "steppedLine": false,
       "targets": [
         {
-          "expr": "label_replace(\n  (\n    irate(node_disk_writes_completed{instance=~\"($ceph_hosts).*\"}[5m]) or\n    irate(node_disk_writes_completed_total{instance=~\"($ceph_hosts).*\"}[5m])\n  ),\n  \"instance\",\n  \"$1\",\n  \"instance\",\n  \"([^:.]*).*\"\n)\n* on(instance, device) group_left(ceph_daemon)\n  label_replace(\n    label_replace(\n      ceph_disk_occupation,\n      \"device\",\n      \"$1\",\n      \"device\",\n      \"/dev/(.*)\"\n    ),\n    \"instance\",\n    \"$1\",\n    \"instance\",\n    \"([^:.]*).*\"\n  )",
+          "expr": "label_replace(\n  (\n    irate(node_disk_writes_completed{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]) or\n    irate(node_disk_writes_completed_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m])\n  ),\n  \"instance\",\n  \"$1\",\n  \"instance\",\n  \"([^:.]*).*\"\n)\n* on(instance, device, ceph_daemon) group_left\n  label_replace(\n    label_replace(\n      ceph_disk_occupation,\n      \"device\",\n      \"$1\",\n      \"device\",\n      \"/dev/(.*)\"\n    ),\n    \"instance\",\n    \"$1\",\n    \"instance\",\n    \"([^:.]*).*\"\n  )",
           "format": "time_series",
           "intervalFactor": 1,
           "legendFormat": "{{device}}({{ceph_daemon}}) writes",
           "textEditor": true
         },
         {
-          "expr": "label_replace(\n    (irate(node_disk_reads_completed{instance=~\"($ceph_hosts).*\"}[5m]) or irate(node_disk_reads_completed_total{instance=~\"($ceph_hosts).*\"}[5m])),\n    \"instance\",\n    \"$1\",\n    \"instance\",\n    \"([^:.]*).*\"\n)\n* on(instance, device) group_left(ceph_daemon)\n  label_replace(\n    label_replace(\n      ceph_disk_occupation,\n      \"device\",\n      \"$1\",\n      \"device\",\n      \"/dev/(.*)\"\n    ),\n    \"instance\",\n    \"$1\",\n    \"instance\",\n    \"([^:.]*).*\"\n  )",
+          "expr": "label_replace(\n    (irate(node_disk_reads_completed{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]) or irate(node_disk_reads_completed_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m])),\n    \"instance\",\n    \"$1\",\n    \"instance\",\n    \"([^:.]*).*\"\n)\n* on(instance, device, ceph_daemon) group_left\n  label_replace(\n    label_replace(\n      ceph_disk_occupation,\n      \"device\",\n      \"$1\",\n      \"device\",\n      \"/dev/(.*)\"\n    ),\n    \"instance\",\n    \"$1\",\n    \"instance\",\n    \"([^:.]*).*\"\n  )",
           "format": "time_series",
           "hide": false,
           "intervalFactor": 1,
       "steppedLine": false,
       "targets": [
         {
-          "expr": "label_replace((irate(node_disk_bytes_written{instance=~\"($ceph_hosts).*\"}[5m]) or irate(node_disk_written_bytes_total{instance=~\"($ceph_hosts).*\"}[5m])), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\") * on(instance, device) group_left(ceph_daemon) label_replace(label_replace(ceph_disk_occupation, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")",
+          "expr": "label_replace((irate(node_disk_bytes_written{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]) or irate(node_disk_written_bytes_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m])), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\") * on(instance, device, ceph_daemon) group_left label_replace(label_replace(ceph_disk_occupation, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")",
           "format": "time_series",
           "intervalFactor": 1,
           "legendFormat": "{{device}}({{ceph_daemon}}) write",
           "refId": "B"
         },
         {
-          "expr": "label_replace((irate(node_disk_bytes_read{instance=~\"($ceph_hosts).*\"}[5m]) or irate(node_disk_read_bytes_total{instance=~\"($ceph_hosts).*\"}[5m])), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\") * on(instance, device) group_left(ceph_daemon) label_replace(label_replace(ceph_disk_occupation, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")",
+          "expr": "label_replace((irate(node_disk_bytes_read{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]) or irate(node_disk_read_bytes_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m])), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\") * on(instance, device, ceph_daemon) group_left label_replace(label_replace(ceph_disk_occupation, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")",
           "format": "time_series",
           "intervalFactor": 1,
           "legendFormat": "{{device}}({{ceph_daemon}}) read",
       "steppedLine": false,
       "targets": [
         {
-          "expr": "max by(instance,device) (label_replace((irate(node_disk_write_time_seconds_total{ instance=~\"($ceph_hosts).*\"}[5m]) )  / clamp_min(irate(node_disk_writes_completed_total{ instance=~\"($ceph_hosts).*\"}[5m]), 0.001) or   (irate(node_disk_read_time_seconds_total{ instance=~\"($ceph_hosts).*\"}[5m]) )  / clamp_min(irate(node_disk_reads_completed_total{ instance=~\"($ceph_hosts).*\"}[5m]), 0.001), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")) *  on(instance,device) group_left(ceph_daemon) label_replace(label_replace(ceph_disk_occupation{instance=~\"($ceph_hosts).*\"}, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")",
+          "expr": "max by(instance,device) (label_replace((irate(node_disk_write_time_seconds_total{ instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]) )  / clamp_min(irate(node_disk_writes_completed_total{ instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]), 0.001) or   (irate(node_disk_read_time_seconds_total{ instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]) )  / clamp_min(irate(node_disk_reads_completed_total{ instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]), 0.001), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")) *  on(instance, device, ceph_daemon) group_left label_replace(label_replace(ceph_disk_occupation{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")",
           "format": "time_series",
           "hide": false,
           "intervalFactor": 1,
       "steppedLine": false,
       "targets": [
         {
-          "expr": "label_replace(((irate(node_disk_io_time_ms{instance=~\"($ceph_hosts).*\"}[5m]) / 10 ) or  irate(node_disk_io_time_seconds_total{instance=~\"($ceph_hosts).*\"}[5m]) * 100), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\") * on(instance, device) group_left(ceph_daemon) label_replace(label_replace(ceph_disk_occupation{instance=~\"($ceph_hosts).*\"}, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")",
+          "expr": "label_replace(((irate(node_disk_io_time_ms{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]) / 10 ) or  irate(node_disk_io_time_seconds_total{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}[5m]) * 100), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\") * on(instance, device, ceph_daemon) group_left label_replace(label_replace(ceph_disk_occupation{instance=~\"($ceph_hosts)([\\\\.:].*)?\"}, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^:.]*).*\")",
           "format": "time_series",
           "hide": false,
           "intervalFactor": 1,
index 804aa51cc9df3defb9a3fe967f38e832ab9f32de..b179d5717d536c37c37a3d67f96cab130a05fbd9 100644 (file)
         "#d44a3a"
       ],
       "datasource": "$datasource",
-      "decimals": 0,
       "description": "Average CPU busy across all hosts (OSD, RGW, MON etc) within the cluster",
       "decimals": 2,
       "format": "percentunit",
         "#d44a3a"
       ],
       "datasource": "$datasource",
-      "decimals": 0,
       "description": "Average Memory Usage across all hosts in the cluster (excludes buffer/cache usage)",
       "decimals": 2,
       "format": "percentunit",
       "tableColumn": "",
       "targets": [
         {
-          "expr" : "avg (\n  label_replace((irate(node_disk_io_time_ms[5m]) / 10 ) or\n   (irate(node_disk_io_time_seconds_total[5m]) * 100), \"instance\", \"$1\", \"instance\", \"([^.:]*).*\"\n  ) *\n  on(instance, device) label_replace(label_replace(ceph_disk_occupation{instance=~\"($osd_hosts).*\"}, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^.:]*).*\")\n)",
+          "expr" : "avg (\n  label_replace((irate(node_disk_io_time_ms[5m]) / 10 ) or\n   (irate(node_disk_io_time_seconds_total[5m]) * 100), \"instance\", \"$1\", \"instance\", \"([^.:]*).*\"\n  ) *\n  on(instance, device, ceph_daemon) label_replace(label_replace(ceph_disk_occupation{instance=~\"($osd_hosts).*\"}, \"device\", \"$1\", \"device\", \"/dev/(.*)\"), \"instance\", \"$1\", \"instance\", \"([^.:]*).*\")\n)",
           "format": "time_series",
           "instant": true,
           "intervalFactor": 1,
index 4fbb41228d2d016766fbb440645e0e3ae286aa8a..282379e039ab3e40f87ab5c71cca7ea4463bcf2a 100644 (file)
@@ -1,6 +1,2 @@
 os_type: centos
 os_version: "8.0"
-overrides:
-  selinux:
-    whitelist:
-      - scontext=system_u:system_r:logrotate_t:s0
diff --git a/ceph/qa/distros/all/centos_8.3.yaml b/ceph/qa/distros/all/centos_8.3.yaml
new file mode 100644 (file)
index 0000000..55ab1a4
--- /dev/null
@@ -0,0 +1,6 @@
+os_type: centos
+os_version: "8.3"
+overrides:
+  selinux:
+    whitelist:
+      - scontext=system_u:system_r:logrotate_t:s0
index 8abfcfd1247259af0fe89604bb90283890f5b8a2..e9308ad1a4f3513a2634a236ab3a1ae903bef3f7 120000 (symlink)
@@ -1 +1 @@
-centos_8.1.yaml
\ No newline at end of file
+centos_8.3.yaml
\ No newline at end of file
index 215c34b7fd893602acb8c366b08219e73924aa88..3edcc303a4f4b05532b5c3470a9c37b4a99c2d3c 100644 (file)
@@ -1,6 +1,2 @@
 os_type: rhel
 os_version: "8.0"
-overrides:
-  selinux:
-    whitelist:
-      - scontext=system_u:system_r:logrotate_t:s0
diff --git a/ceph/qa/distros/all/rhel_8.3.yaml b/ceph/qa/distros/all/rhel_8.3.yaml
new file mode 100644 (file)
index 0000000..c18c07b
--- /dev/null
@@ -0,0 +1,6 @@
+os_type: rhel
+os_version: "8.3"
+overrides:
+  selinux:
+    whitelist:
+      - scontext=system_u:system_r:logrotate_t:s0
index c58864f0433e13c4e1bcc8e1e164737aa054e37a..9e5fa11656ac61f26eecd5d3e98b01b98bd6bd61 120000 (symlink)
@@ -1 +1 @@
-rhel_8.1.yaml
\ No newline at end of file
+rhel_8.3.yaml
\ No newline at end of file
diff --git a/ceph/qa/distros/all/ubuntu_18.04_podman.yaml b/ceph/qa/distros/all/ubuntu_18.04_podman.yaml
deleted file mode 100644 (file)
index 214e964..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-os_type: ubuntu
-os_version: "18.04"
-
-# feel free to remove this test, if Kubic project is no longer maintained.
-tasks:
-- exec:
-    all:
-    - curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_18.04/Release.key | sudo apt-key add -
-    - echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_18.04/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
-    - sudo apt update
-    - sudo apt -y install podman
-    - echo -e "[[registry]]\nlocation = 'docker.io'\n\n[[registry.mirror]]\nlocation='docker-mirror.front.sepia.ceph.com:5000'\n" | sudo tee /etc/containers/registries.conf
diff --git a/ceph/qa/distros/all/ubuntu_20.04.yaml b/ceph/qa/distros/all/ubuntu_20.04.yaml
new file mode 100644 (file)
index 0000000..f203982
--- /dev/null
@@ -0,0 +1,2 @@
+os_type: ubuntu
+os_version: "20.04"
diff --git a/ceph/qa/distros/podman/centos_8.2_kubic_stable.yaml b/ceph/qa/distros/podman/centos_8.2_kubic_stable.yaml
new file mode 100644 (file)
index 0000000..5ea907f
--- /dev/null
@@ -0,0 +1,19 @@
+os_type: centos
+os_version: "8.2"
+overrides:
+  selinux:
+    whitelist:
+      - scontext=system_u:system_r:logrotate_t:s0
+
+tasks:
+- exec:
+    all:
+    - echo -e "[[registry]]\nlocation = 'docker.io'\n\n[[registry.mirror]]\nlocation='docker-mirror.front.sepia.ceph.com:5000'\n" | sudo tee /etc/containers/registries.conf
+    - sudo cp /etc/containers/registries.conf /etc/containers/registries.conf.backup
+    - sudo dnf -y module disable container-tools
+    - sudo dnf -y install 'dnf-command(copr)'
+    - sudo dnf -y copr enable rhcontainerbot/container-selinux
+    - sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_8/devel:kubic:libcontainers:stable.repo
+    - sudo dnf remove -y podman
+    - sudo dnf -y install podman
+    - sudo cp /etc/containers/registries.conf.backup /etc/containers/registries.conf
diff --git a/ceph/qa/distros/podman/rhel_8.3_kubic_stable.yaml b/ceph/qa/distros/podman/rhel_8.3_kubic_stable.yaml
new file mode 100644 (file)
index 0000000..541cf51
--- /dev/null
@@ -0,0 +1,19 @@
+os_type: rhel
+os_version: "8.3"
+overrides:
+  selinux:
+    whitelist:
+      - scontext=system_u:system_r:logrotate_t:s0
+
+tasks:
+- exec:
+    all:
+    - echo -e "[[registry]]\nlocation = 'docker.io'\n\n[[registry.mirror]]\nlocation='docker-mirror.front.sepia.ceph.com:5000'\n" | sudo tee /etc/containers/registries.conf
+    - sudo cp /etc/containers/registries.conf /etc/containers/registries.conf.backup
+    - sudo dnf -y module disable container-tools
+    - sudo dnf -y install 'dnf-command(copr)'
+    - sudo dnf -y copr enable rhcontainerbot/container-selinux
+    - sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_8/devel:kubic:libcontainers:stable.repo
+    - sudo dnf remove -y podman
+    - sudo dnf -y install podman
+    - sudo cp /etc/containers/registries.conf.backup /etc/containers/registries.conf
diff --git a/ceph/qa/distros/podman/ubuntu_18.04_kubic_stable.yaml b/ceph/qa/distros/podman/ubuntu_18.04_kubic_stable.yaml
new file mode 100644 (file)
index 0000000..136d5c4
--- /dev/null
@@ -0,0 +1,14 @@
+os_type: ubuntu
+os_version: "18.04"
+
+# feel free to remove this test, if Kubic project is no longer maintained.
+tasks:
+- exec:
+    all:
+    - echo -e "[[registry]]\nlocation = 'docker.io'\n\n[[registry.mirror]]\nlocation='docker-mirror.front.sepia.ceph.com:5000'\n" | sudo tee /etc/containers/registries.conf
+    - sudo cp /etc/containers/registries.conf /etc/containers/registries.conf.backup
+    - curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_18.04/Release.key | sudo apt-key add -
+    - echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_18.04/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
+    - sudo apt update
+    - sudo apt -y install podman
+    - sudo cp /etc/containers/registries.conf.backup /etc/containers/registries.conf
diff --git a/ceph/qa/distros/podman/ubuntu_20.04_kubic_stable.yaml b/ceph/qa/distros/podman/ubuntu_20.04_kubic_stable.yaml
new file mode 100644 (file)
index 0000000..9c42eb2
--- /dev/null
@@ -0,0 +1,14 @@
+os_type: ubuntu
+os_version: "20.04"
+
+# feel free to remove this test, if Kubic project is no longer maintained.
+tasks:
+- exec:
+    all:
+    - echo -e "[[registry]]\nlocation = 'docker.io'\n\n[[registry.mirror]]\nlocation='docker-mirror.front.sepia.ceph.com:5000'\n" | sudo tee /etc/containers/registries.conf
+    - sudo cp /etc/containers/registries.conf /etc/containers/registries.conf.backup
+    - curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/Release.key | sudo apt-key add -
+    - echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
+    - sudo apt update
+    - sudo apt -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install podman containernetworking-plugins
+    - sudo cp /etc/containers/registries.conf.backup /etc/containers/registries.conf
diff --git a/ceph/qa/distros/podman/ubuntu_20.04_kubic_testing.yaml b/ceph/qa/distros/podman/ubuntu_20.04_kubic_testing.yaml
new file mode 100644 (file)
index 0000000..75e72d7
--- /dev/null
@@ -0,0 +1,14 @@
+os_type: ubuntu
+os_version: "20.04"
+
+# feel free to remove this test, if Kubic project is no longer maintained.
+tasks:
+- exec:
+    all:
+    - echo -e "[[registry]]\nlocation = 'docker.io'\n\n[[registry.mirror]]\nlocation='docker-mirror.front.sepia.ceph.com:5000'\n" | sudo tee /etc/containers/registries.conf
+    - sudo cp /etc/containers/registries.conf /etc/containers/registries.conf.backup
+    - curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/testing/xUbuntu_20.04/Release.key | sudo apt-key add -
+    - echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/testing/xUbuntu_20.04/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:testing.list
+    - sudo apt update
+    - sudo apt -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install podman containernetworking-plugins
+    - sudo cp /etc/containers/registries.conf.backup /etc/containers/registries.conf
diff --git a/ceph/qa/distros/supported-all-distro/rhel_8.2.yaml b/ceph/qa/distros/supported-all-distro/rhel_8.2.yaml
deleted file mode 120000 (symlink)
index dd95793..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../all/rhel_8.2.yaml
\ No newline at end of file
diff --git a/ceph/qa/distros/supported-all-distro/rhel_8.yaml b/ceph/qa/distros/supported-all-distro/rhel_8.yaml
new file mode 120000 (symlink)
index 0000000..f803f09
--- /dev/null
@@ -0,0 +1 @@
+../all/rhel_8.yaml
\ No newline at end of file
index 64a66d9aa487bdd4542cadd0ea9f16eb5598f36f..75d907e3b9cf89b29f9582831cfc1fa1ada69533 120000 (symlink)
@@ -1 +1 @@
-../all/ubuntu_18.04.yaml
\ No newline at end of file
+../all/ubuntu_20.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/distros/supported-random-distro$/centos_8.yaml b/ceph/qa/distros/supported-random-distro$/centos_8.yaml
new file mode 120000 (symlink)
index 0000000..b7e6c9b
--- /dev/null
@@ -0,0 +1 @@
+../all/centos_8.yaml
\ No newline at end of file
diff --git a/ceph/qa/distros/supported-random-distro$/centos_latest.yaml b/ceph/qa/distros/supported-random-distro$/centos_latest.yaml
deleted file mode 120000 (symlink)
index 591d55b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../all/centos_8.1.yaml
\ No newline at end of file
diff --git a/ceph/qa/distros/supported-random-distro$/rhel_8.yaml b/ceph/qa/distros/supported-random-distro$/rhel_8.yaml
new file mode 120000 (symlink)
index 0000000..f803f09
--- /dev/null
@@ -0,0 +1 @@
+../all/rhel_8.yaml
\ No newline at end of file
diff --git a/ceph/qa/distros/supported-random-distro$/rhel_latest.yaml b/ceph/qa/distros/supported-random-distro$/rhel_latest.yaml
deleted file mode 120000 (symlink)
index dd95793..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../all/rhel_8.2.yaml
\ No newline at end of file
diff --git a/ceph/qa/distros/supported-random-distro$/ubuntu_18.04.yaml b/ceph/qa/distros/supported-random-distro$/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..64a66d9
--- /dev/null
@@ -0,0 +1 @@
+../all/ubuntu_18.04.yaml
\ No newline at end of file
index 64a66d9aa487bdd4542cadd0ea9f16eb5598f36f..75d907e3b9cf89b29f9582831cfc1fa1ada69533 120000 (symlink)
@@ -1 +1 @@
-../all/ubuntu_18.04.yaml
\ No newline at end of file
+../all/ubuntu_20.04.yaml
\ No newline at end of file
index 591d55ba555403dce8b2f4ce00137e6a7ef899a9..b7e6c9b4e546120d9e1d407382e2d8a94e2bc8a3 120000 (symlink)
@@ -1 +1 @@
-../all/centos_8.1.yaml
\ No newline at end of file
+../all/centos_8.yaml
\ No newline at end of file
index dd95793a8c1cb411cc9d8b40079e705f0227ecc0..f803f091ec8068aca0838b4c0aaf768a47663bf8 120000 (symlink)
@@ -1 +1 @@
-../all/rhel_8.2.yaml
\ No newline at end of file
+../all/rhel_8.yaml
\ No newline at end of file
index 64a66d9aa487bdd4542cadd0ea9f16eb5598f36f..75d907e3b9cf89b29f9582831cfc1fa1ada69533 120000 (symlink)
@@ -1 +1 @@
-../all/ubuntu_18.04.yaml
\ No newline at end of file
+../all/ubuntu_20.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/perf-basic/ubuntu_18.04.yaml b/ceph/qa/suites/perf-basic/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..cfb85f1
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/all/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/centos_7.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/centos_7.yaml
deleted file mode 120000 (symlink)
index 5ad8254..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/centos_7.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/centos_8.0.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/centos_8.0.yaml
deleted file mode 120000 (symlink)
index f07a2bd..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/centos_8.0.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/centos_8.2_kubic_stable.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/centos_8.2_kubic_stable.yaml
new file mode 120000 (symlink)
index 0000000..3afeed7
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/podman/centos_8.2_kubic_stable.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/centos_latest.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/centos_latest.yaml
deleted file mode 120000 (symlink)
index bd9854e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/centos_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/rhel_7.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/rhel_7.yaml
deleted file mode 120000 (symlink)
index b776cd2..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/rhel_7.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/rhel_8.0.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/rhel_8.0.yaml
deleted file mode 120000 (symlink)
index 7247d53..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/rhel_8.0.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/rhel_8.3_kubic_stable.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/rhel_8.3_kubic_stable.yaml
new file mode 120000 (symlink)
index 0000000..20f0f7c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/podman/rhel_8.3_kubic_stable.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/rhel_latest.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/rhel_latest.yaml
deleted file mode 120000 (symlink)
index be3103a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/rhel_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_18.04.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_18.04.yaml
deleted file mode 120000 (symlink)
index cfb85f1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_20.04.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_20.04.yaml
new file mode 120000 (symlink)
index 0000000..1629648
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/all/ubuntu_20.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_latest.yaml b/ceph/qa/suites/rados/cephadm/smoke/distro/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
index 14c803a9a2cb90153b73b4a7a5996877ee597634..5d380ad787f334f7a73bd70e47625d528ad81494 100644 (file)
@@ -1,7 +1,7 @@
 tasks:
 - cephadm:
-    image: docker.io/ceph/ceph:v15.2.5
-    cephadm_branch: v15.2.5
+    image: docker.io/ceph/ceph:v15.2.9
+    cephadm_branch: v15.2.9
     cephadm_git_url: https://github.com/ceph/ceph
     # avoid --cap-add=PTRACE + --privileged for older cephadm versions
     allow_ptrace: false
index 0ad5a32d3730f31700bbc6bf9ae9383050e06edb..76da6e80a179966f7e30949aa21798b7185825b8 100644 (file)
@@ -1,7 +1,7 @@
 tasks:
 - cephadm:
-    image: docker.io/ceph/ceph:v15.2.0
-    cephadm_branch: v15.2.0
+    image: docker.io/ceph/ceph:v15.2.9
+    cephadm_branch: v15.2.9
     cephadm_git_url: https://github.com/ceph/ceph
     # avoid --cap-add=PTRACE + --privileged for older cephadm versions
     allow_ptrace: false
diff --git a/ceph/qa/suites/rados/cephadm/with-work/0-distro b/ceph/qa/suites/rados/cephadm/with-work/0-distro
new file mode 120000 (symlink)
index 0000000..92c9153
--- /dev/null
@@ -0,0 +1 @@
+../smoke/distro/
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/with-work/distro/.qa b/ceph/qa/suites/rados/cephadm/with-work/distro/.qa
deleted file mode 120000 (symlink)
index fea2489..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../.qa
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/with-work/distro/centos_8.0.yaml b/ceph/qa/suites/rados/cephadm/with-work/distro/centos_8.0.yaml
deleted file mode 120000 (symlink)
index f07a2bd..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/centos_8.0.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/with-work/distro/centos_latest.yaml b/ceph/qa/suites/rados/cephadm/with-work/distro/centos_latest.yaml
deleted file mode 120000 (symlink)
index bd9854e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/centos_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/with-work/distro/rhel_8.0.yaml b/ceph/qa/suites/rados/cephadm/with-work/distro/rhel_8.0.yaml
deleted file mode 120000 (symlink)
index 7247d53..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/rhel_8.0.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/with-work/distro/rhel_latest.yaml b/ceph/qa/suites/rados/cephadm/with-work/distro/rhel_latest.yaml
deleted file mode 120000 (symlink)
index be3103a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/rhel_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/with-work/distro/ubuntu_18.04.yaml b/ceph/qa/suites/rados/cephadm/with-work/distro/ubuntu_18.04.yaml
deleted file mode 120000 (symlink)
index cfb85f1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/with-work/distro/ubuntu_18.04_podman.yaml b/ceph/qa/suites/rados/cephadm/with-work/distro/ubuntu_18.04_podman.yaml
deleted file mode 120000 (symlink)
index b948dd4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/ubuntu_18.04_podman.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/workunits/0-distro/.qa b/ceph/qa/suites/rados/cephadm/workunits/0-distro/.qa
new file mode 120000 (symlink)
index 0000000..fea2489
--- /dev/null
@@ -0,0 +1 @@
+../.qa
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/workunits/0-distro/centos_8.2_kubic_stable.yaml b/ceph/qa/suites/rados/cephadm/workunits/0-distro/centos_8.2_kubic_stable.yaml
new file mode 120000 (symlink)
index 0000000..3afeed7
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/podman/centos_8.2_kubic_stable.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/workunits/0-distro/ubuntu_20.04_kubic_stable.yaml b/ceph/qa/suites/rados/cephadm/workunits/0-distro/ubuntu_20.04_kubic_stable.yaml
new file mode 120000 (symlink)
index 0000000..065bb1a
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/podman/ubuntu_20.04_kubic_stable.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/workunits/0-distro/ubuntu_20.04_kubic_testing.yaml b/ceph/qa/suites/rados/cephadm/workunits/0-distro/ubuntu_20.04_kubic_testing.yaml
new file mode 120000 (symlink)
index 0000000..36a5ad1
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/podman/ubuntu_20.04_kubic_testing.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/workunits/distro/.qa b/ceph/qa/suites/rados/cephadm/workunits/distro/.qa
deleted file mode 120000 (symlink)
index fea2489..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../.qa
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/workunits/distro/centos_latest.yaml b/ceph/qa/suites/rados/cephadm/workunits/distro/centos_latest.yaml
deleted file mode 120000 (symlink)
index bd9854e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/centos_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/cephadm/workunits/distro/ubuntu_18.04_podman.yaml b/ceph/qa/suites/rados/cephadm/workunits/distro/ubuntu_18.04_podman.yaml
deleted file mode 120000 (symlink)
index b948dd4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/all/ubuntu_18.04_podman.yaml
\ No newline at end of file
index 317c5de1720b1b4bbd2d91bdea77722113144a17..0c050d5ddef79f3fc3c5d8ddb73e97a28647b613 100644 (file)
@@ -56,3 +56,4 @@ tasks:
         - tasks.mgr.dashboard.test_summary
         - tasks.mgr.dashboard.test_telemetry
         - tasks.mgr.dashboard.test_user
+        - tasks.mgr.dashboard.test_motd
index deab01adb05ddc0d848b2fc3fc5dd213e8c097ed..905e6f783008e7e6bb2c8c34eb241f2538c7095c 100644 (file)
@@ -23,3 +23,4 @@ tasks:
   - cephfs_test_runner:
       modules:
         - tasks.mgr.test_module_selftest
+      fail_on_skip: false
diff --git a/ceph/qa/suites/rados/perf/ubuntu_18.04.yaml b/ceph/qa/suites/rados/perf/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..cfb85f1
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/all/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/perf/ubuntu_latest.yaml b/ceph/qa/suites/rados/perf/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/thrash/3-scrub-overrides/$ b/ceph/qa/suites/rados/thrash/3-scrub-overrides/$
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/ceph/qa/suites/rados/thrash/3-scrub-overrides/.qa b/ceph/qa/suites/rados/thrash/3-scrub-overrides/.qa
new file mode 120000 (symlink)
index 0000000..fea2489
--- /dev/null
@@ -0,0 +1 @@
+../.qa
\ No newline at end of file
diff --git a/ceph/qa/suites/rados/thrash/3-scrub-overrides/default.yaml b/ceph/qa/suites/rados/thrash/3-scrub-overrides/default.yaml
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/ceph/qa/suites/rados/thrash/3-scrub-overrides/max-simultaneous-scrubs-2.yaml b/ceph/qa/suites/rados/thrash/3-scrub-overrides/max-simultaneous-scrubs-2.yaml
new file mode 100644 (file)
index 0000000..abf852e
--- /dev/null
@@ -0,0 +1,5 @@
+overrides:
+  ceph:
+    conf:
+      osd:
+        osd max scrubs: 2
diff --git a/ceph/qa/suites/rados/thrash/3-scrub-overrides/max-simultaneous-scrubs-3.yaml b/ceph/qa/suites/rados/thrash/3-scrub-overrides/max-simultaneous-scrubs-3.yaml
new file mode 100644 (file)
index 0000000..3b3dfd6
--- /dev/null
@@ -0,0 +1,5 @@
+overrides:
+  ceph:
+    conf:
+      osd:
+        osd max scrubs: 3
diff --git a/ceph/qa/suites/rados/thrash/msgr-failures/osd-dispatch-delay.yaml b/ceph/qa/suites/rados/thrash/msgr-failures/osd-dispatch-delay.yaml
new file mode 100644 (file)
index 0000000..aff059f
--- /dev/null
@@ -0,0 +1,7 @@
+overrides:
+  ceph:
+    conf:
+      global:
+        osd debug inject dispatch delay duration: 0.1
+        osd debug inject dispatch delay probability: 0.1
+
index 212846d4d56bb347a8276244e0e8ef2f5b1ac046..45520042d630b8d9857710797bed284615e4d755 100644 (file)
@@ -8,25 +8,23 @@ tasks:
       env:
         RBD_FEATURES: "61"
   - workunit:
-      #The line below to change to 'pacific'
-      branch: master
+      branch: pacific
       clients:
         client.1:
           - rbd/notify_slave.sh
       env:
         RBD_FEATURES: "61"
+        RBD_DISABLE_UPDATE_FEATURES: "1"
 - print: "**** done rbd: old librbd -> new librbd"
 - parallel:
   - workunit:
-      #The line below to change to 'pacific'
-      branch: master
+      branch: octopus
       clients:
         client.0:
           - rbd/notify_slave.sh
       env:
         RBD_FEATURES: "61"
   - workunit:
-      #The line below to change to 'pacific'
       branch: pacific
       clients:
         client.1:
diff --git a/ceph/qa/suites/upgrade/mimic-x-singleton/ubuntu_18.04.yaml b/ceph/qa/suites/upgrade/mimic-x-singleton/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..dce171c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/mimic-x-singleton/ubuntu_latest.yaml b/ceph/qa/suites/upgrade/mimic-x-singleton/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/mimic-x/parallel/ubuntu_18.04.yaml b/ceph/qa/suites/upgrade/mimic-x/parallel/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..dce171c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/mimic-x/parallel/ubuntu_latest.yaml b/ceph/qa/suites/upgrade/mimic-x/parallel/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/mimic-x/stress-split-erasure-code/ubuntu_18.04.yaml b/ceph/qa/suites/upgrade/mimic-x/stress-split-erasure-code/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..dce171c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/mimic-x/stress-split-erasure-code/ubuntu_latest.yaml b/ceph/qa/suites/upgrade/mimic-x/stress-split-erasure-code/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/mimic-x/stress-split/ubuntu_18.04.yaml b/ceph/qa/suites/upgrade/mimic-x/stress-split/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..dce171c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/mimic-x/stress-split/ubuntu_latest.yaml b/ceph/qa/suites/upgrade/mimic-x/stress-split/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/nautilus-x-singleton/ubuntu_18.04.yaml b/ceph/qa/suites/upgrade/nautilus-x-singleton/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..dce171c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/nautilus-x-singleton/ubuntu_latest.yaml b/ceph/qa/suites/upgrade/nautilus-x-singleton/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/nautilus-x/parallel/ubuntu_18.04.yaml b/ceph/qa/suites/upgrade/nautilus-x/parallel/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..dce171c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/nautilus-x/parallel/ubuntu_latest.yaml b/ceph/qa/suites/upgrade/nautilus-x/parallel/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_18.04.yaml b/ceph/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..dce171c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_latest.yaml b/ceph/qa/suites/upgrade/nautilus-x/stress-split-erasure-code/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/nautilus-x/stress-split/ubuntu_18.04.yaml b/ceph/qa/suites/upgrade/nautilus-x/stress-split/ubuntu_18.04.yaml
new file mode 120000 (symlink)
index 0000000..dce171c
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-random-distro$/ubuntu_18.04.yaml
\ No newline at end of file
diff --git a/ceph/qa/suites/upgrade/nautilus-x/stress-split/ubuntu_latest.yaml b/ceph/qa/suites/upgrade/nautilus-x/stress-split/ubuntu_latest.yaml
deleted file mode 120000 (symlink)
index 3a09f9a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/supported/ubuntu_latest.yaml
\ No newline at end of file
index 46b036ef4ced680dc80421721ec1ad45fb0183fa..03f58c5c7a34a186888da7135f53840ae2b9c499 100644 (file)
@@ -8,6 +8,8 @@ import six
 from six.moves import http_client
 from six.moves.urllib.parse import urlparse
 import json
+import time
+import math
 
 from teuthology import misc as teuthology
 from teuthology import contextutil
@@ -326,12 +328,16 @@ def create_secrets(ctx, config):
                     token_resp.status < 300):
                 raise Exception("Cannot authenticate user "+secret["username"]+" for secret creation")
 
+            expire = time.time() + 5400                # now + 90m
+            (expire_fract,dummy) = math.modf(expire)
+            expire_format = "%%FT%%T.%06d" % (round(expire_fract*1000000))
+            expiration = time.strftime(expire_format, time.gmtime(expire))
             token_id = token_resp.getheader('x-subject-token')
 
             key1_json = json.dumps(
                 {
                     "name": secret['name'],
-                    "expiration": "2020-12-31T19:14:44.180394",
+                    "expiration": expiration,
                     "algorithm": "aes",
                     "bit_length": 256,
                     "mode": "cbc",
index 43139274576c835f3fdf95814b295b35138e2d89..51cf7488eebd0d08345023ea59bde72a3a5957b4 100644 (file)
@@ -583,10 +583,10 @@ def ceph_mgrs(ctx, config):
             for mgr in [r for r in roles
                         if teuthology.is_type('mgr', cluster_name)(r)]:
                 c_, _, id_ = teuthology.split_role(mgr)
-                if c_ == cluster_name and id_ == ctx.ceph[cluster_name].first_mgr:
-                    continue
                 log.info('Adding %s on %s' % (mgr, remote.shortname))
                 nodes.append(remote.shortname + '=' + id_)
+                if c_ == cluster_name and id_ == ctx.ceph[cluster_name].first_mgr:
+                    continue
                 daemons[mgr] = (remote, id_)
         if nodes:
             _shell(ctx, cluster_name, remote, [
index 7f01b0ff48000d60c21a2343f7fbb5a896ec32e1..0c02e2aa3d7d1d31ae75cd44e7b23c734dfc0bc5 100644 (file)
@@ -63,9 +63,12 @@ class FSStatus(object):
     """
     Operations on a snapshot of the FSMap.
     """
-    def __init__(self, mon_manager):
+    def __init__(self, mon_manager, epoch=None):
         self.mon = mon_manager
-        self.map = json.loads(self.mon.raw_cluster_cmd("fs", "dump", "--format=json"))
+        cmd = ["fs", "dump", "--format=json"]
+        if epoch is not None:
+            cmd.append(str(epoch))
+        self.map = json.loads(self.mon.raw_cluster_cmd(*cmd))
 
     def __str__(self):
         return json.dumps(self.map, indent = 2, sort_keys = True)
@@ -333,8 +336,8 @@ class MDSCluster(CephCluster):
     def newfs(self, name='cephfs', create=True):
         return Filesystem(self._ctx, name=name, create=create)
 
-    def status(self):
-        return FSStatus(self.mon_manager)
+    def status(self, epoch=None):
+        return FSStatus(self.mon_manager, epoch)
 
     def delete_all_filesystems(self):
         """
index 60198604b395b41d4ca2401a93a9352836e23ef8..879dc05687c628a1128ec357bfede445f578e044 100644 (file)
@@ -1,4 +1,7 @@
+import errno
 import json
+import logging
+import time
 
 from teuthology.orchestra.run import CommandFailedError
 
@@ -7,6 +10,7 @@ from tasks.cephfs.fuse_mount import FuseMount
 
 from tasks.cephfs.filesystem import FileLayout
 
+log = logging.getLogger(__name__)
 
 class TestAdminCommands(CephFSTestCase):
     """
@@ -169,6 +173,77 @@ class TestAdminCommands(CephFSTestCase):
                 pool_names[i], 'cephfs', keys[i], fs_name)
 
 
+class TestDump(CephFSTestCase):
+    CLIENTS_REQUIRED = 0
+    MDSS_REQUIRED = 1
+
+    def test_fs_dump_epoch(self):
+        """
+        That dumping a specific epoch works.
+        """
+
+        status1 = self.fs.status()
+        status2 = self.fs.status(epoch=status1["epoch"]-1)
+        self.assertEqual(status1["epoch"], status2["epoch"]+1)
+
+    def test_fsmap_trim(self):
+        """
+        That the fsmap is trimmed normally.
+        """
+
+        paxos_service_trim_min = 25
+        self.config_set('mon', 'paxos_service_trim_min', paxos_service_trim_min)
+        mon_max_mdsmap_epochs = 20
+        self.config_set('mon', 'mon_max_mdsmap_epochs', mon_max_mdsmap_epochs)
+
+        status = self.fs.status()
+        epoch = status["epoch"]
+
+        # for N mutations
+        mutations = paxos_service_trim_min + mon_max_mdsmap_epochs
+        b = False
+        for i in range(mutations):
+            self.fs.set_joinable(b)
+            b = not b
+
+        time.sleep(10) # for tick/compaction
+
+        try:
+            self.fs.status(epoch=epoch)
+        except CommandFailedError as e:
+            self.assertEqual(e.exitstatus, errno.ENOENT, "invalid error code when trying to fetch FSMap that was trimmed")
+        else:
+            self.fail("trimming did not occur as expected")
+
+    def test_fsmap_force_trim(self):
+        """
+        That the fsmap is trimmed forcefully.
+        """
+
+        status = self.fs.status()
+        epoch = status["epoch"]
+
+        paxos_service_trim_min = 1
+        self.config_set('mon', 'paxos_service_trim_min', paxos_service_trim_min)
+        mon_mds_force_trim_to = epoch+1
+        self.config_set('mon', 'mon_mds_force_trim_to', mon_mds_force_trim_to)
+
+        # force a new fsmap
+        self.fs.set_joinable(False)
+        time.sleep(10) # for tick/compaction
+
+        status = self.fs.status()
+        log.debug(f"new epoch is {status['epoch']}")
+        self.fs.status(epoch=epoch+1) # epoch+1 is not trimmed, may not == status["epoch"]
+
+        try:
+            self.fs.status(epoch=epoch)
+        except CommandFailedError as e:
+            self.assertEqual(e.exitstatus, errno.ENOENT, "invalid error code when trying to fetch FSMap that was trimmed")
+        else:
+            self.fail("trimming did not occur as expected")
+
+
 class TestConfigCommands(CephFSTestCase):
     """
     Test that daemons and clients respond to the otherwise rarely-used
diff --git a/ceph/qa/tasks/mgr/dashboard/test_motd.py b/ceph/qa/tasks/mgr/dashboard/test_motd.py
new file mode 100644 (file)
index 0000000..2edbf36
--- /dev/null
@@ -0,0 +1,37 @@
+# -*- coding: utf-8 -*-
+# pylint: disable=too-many-public-methods
+
+from __future__ import absolute_import
+
+import time
+
+from .helper import DashboardTestCase
+
+
+class MotdTest(DashboardTestCase):
+    @classmethod
+    def tearDownClass(cls):
+        cls._ceph_cmd(['dashboard', 'motd', 'clear'])
+        super(MotdTest, cls).tearDownClass()
+
+    def setUp(self):
+        super(MotdTest, self).setUp()
+        self._ceph_cmd(['dashboard', 'motd', 'clear'])
+
+    def test_none(self):
+        data = self._get('/ui-api/motd')
+        self.assertStatus(200)
+        self.assertIsNone(data)
+
+    def test_set(self):
+        self._ceph_cmd(['dashboard', 'motd', 'set', 'info', '0', 'foo bar baz'])
+        data = self._get('/ui-api/motd')
+        self.assertStatus(200)
+        self.assertIsInstance(data, dict)
+
+    def test_expired(self):
+        self._ceph_cmd(['dashboard', 'motd', 'set', 'info', '2s', 'foo bar baz'])
+        time.sleep(5)
+        data = self._get('/ui-api/motd')
+        self.assertStatus(200)
+        self.assertIsNone(data)
index 63cf39a3b7af67b12cdfb37a40f905ddc51ac56d..a982ad3c456e8434af5113266df47575d42abd2d 100644 (file)
@@ -3,6 +3,7 @@ import time
 import requests
 import errno
 import logging
+
 from teuthology.exceptions import CommandFailedError
 
 from tasks.mgr.mgr_test_case import MgrTestCase
@@ -49,6 +50,13 @@ class TestModuleSelftest(MgrTestCase):
         self._selftest_plugin("influx")
 
     def test_diskprediction_local(self):
+        self._load_module("selftest")
+        python_version = self.mgr_cluster.mon_manager.raw_cluster_cmd(
+            "mgr", "self-test", "python-version")
+        if tuple(int(v) for v in python_version.split('.')) >= (3, 8):
+            # https://tracker.ceph.com/issues/45147
+            self.skipTest(f'python {python_version} not compatible with '
+                          'diskprediction_local')
         self._selftest_plugin("diskprediction_local")
 
     # Not included in qa/packages/packages.yaml
index 7271925c9f7c5627c376996065f0e04217ce87c9..9aa2d0396713c8c9d5e9ff1d9378e047a1e60ae0 100644 (file)
@@ -14,6 +14,8 @@
   #!/usr/bin/env bash
 
   # mount a NFS share for storing logs
+  sed -i 's/archive.ubuntu.com/old-releases.ubuntu.com/' /etc/apt/sources.list
+  sed -i 's/security.ubuntu.com/old-releases.ubuntu.com/' /etc/apt/sources.list
   apt-get update
   apt-get -y install nfs-common
   mkdir /mnt/log
index 1732ca1df3eab19974904b22d13c8d65a0f08f59..148972cebde710002b9b45c9a86743627efa12e3 100755 (executable)
@@ -28,7 +28,7 @@ sudo $CEPHADM -v add-repo --dev master
 test_install_uninstall
 sudo $CEPHADM -v rm-repo
 
-sudo $CEPHADM -v add-repo --release 15.1.1
+sudo $CEPHADM -v add-repo --release 15.2.7
 test_install_uninstall
 sudo $CEPHADM -v rm-repo
 
index ecbb4098a45b8d0995f8195a899292a6da9894f0..7be53727c922ce9d069f4f1dbbc8148140ddbdd0 100755 (executable)
@@ -33,7 +33,7 @@ case $(distro_id) in
                 sudo subscription-manager repos --enable "codeready-builder-for-rhel-8-x86_64-rpms"
                 ;;
         esac
-        install git gcc-c++.x86_64 snappy-devel zlib zlib-devel bzip2 bzip2-devel libradospp-devel.x86_64 cmake
+        install git gcc-c++.x86_64 snappy-devel zlib zlib-devel bzip2 bzip2-devel libradospp-devel.x86_64 cmake libarchive
         ;;
        opensuse*|suse|sles)
                install git gcc-c++ snappy-devel zlib-devel libbz2-devel libradospp-devel
index e363109c28a8dba9a7ad234b543e96eea1865a4a..e6a7cb759879cdbbc95e9bc8fbcef66d0bfbb465 100755 (executable)
@@ -485,21 +485,219 @@ test_purge() {
     echo "testing trash purge..."
     remove_images
 
+    rbd trash ls | wc -l | grep 0
+    rbd trash purge
+
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd create $RBD_CREATE_ARGS --size 256 testimg2
+    rbd trash mv testimg1
+    rbd trash mv testimg2
+    rbd trash ls | wc -l | grep 2
+    rbd trash purge
+    rbd trash ls | wc -l | grep 0
+
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd create $RBD_CREATE_ARGS --size 256 testimg2
+    rbd trash mv testimg1 --expires-at "1 hour"
+    rbd trash mv testimg2 --expires-at "3 hours"
+    rbd trash ls | wc -l | grep 2
+    rbd trash purge
+    rbd trash ls | wc -l | grep 2
+    rbd trash purge --expired-before "now + 2 hours"
+    rbd trash ls | wc -l | grep 1
+    rbd trash ls | grep testimg2
+    rbd trash purge --expired-before "now + 4 hours"
+    rbd trash ls | wc -l | grep 0
+
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd snap create testimg1@snap  # pin testimg1
+    rbd create $RBD_CREATE_ARGS --size 256 testimg2
+    rbd create $RBD_CREATE_ARGS --size 256 testimg3
+    rbd trash mv testimg1
+    rbd trash mv testimg2
+    rbd trash mv testimg3
+    rbd trash ls | wc -l | grep 3
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 1
+    rbd trash ls | grep testimg1
+    ID=$(rbd trash ls | awk '{ print $1 }')
+    rbd snap purge --image-id $ID
+    rbd trash purge
+    rbd trash ls | wc -l | grep 0
+
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd create $RBD_CREATE_ARGS --size 256 testimg2
+    rbd snap create testimg2@snap  # pin testimg2
+    rbd create $RBD_CREATE_ARGS --size 256 testimg3
+    rbd trash mv testimg1
+    rbd trash mv testimg2
+    rbd trash mv testimg3
+    rbd trash ls | wc -l | grep 3
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 1
+    rbd trash ls | grep testimg2
+    ID=$(rbd trash ls | awk '{ print $1 }')
+    rbd snap purge --image-id $ID
     rbd trash purge
     rbd trash ls | wc -l | grep 0
 
-    rbd create $RBD_CREATE_ARGS foo -s 1
-    rbd create $RBD_CREATE_ARGS bar -s 1
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd create $RBD_CREATE_ARGS --size 256 testimg2
+    rbd create $RBD_CREATE_ARGS --size 256 testimg3
+    rbd snap create testimg3@snap  # pin testimg3
+    rbd trash mv testimg1
+    rbd trash mv testimg2
+    rbd trash mv testimg3
+    rbd trash ls | wc -l | grep 3
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 1
+    rbd trash ls | grep testimg3
+    ID=$(rbd trash ls | awk '{ print $1 }')
+    rbd snap purge --image-id $ID
+    rbd trash purge
+    rbd trash ls | wc -l | grep 0
 
-    rbd trash mv foo --expires-at "10 sec"
-    rbd trash mv bar --expires-at "30 sec"
+    # test purging a clone with a chain of parents
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd snap create testimg1@snap
+    rbd clone --rbd-default-clone-format=2 testimg1@snap testimg2
+    rbd snap rm testimg1@snap
+    rbd create $RBD_CREATE_ARGS --size 256 testimg3
+    rbd snap create testimg2@snap
+    rbd clone --rbd-default-clone-format=2 testimg2@snap testimg4
+    rbd clone --rbd-default-clone-format=2 testimg2@snap testimg5
+    rbd snap rm testimg2@snap
+    rbd snap create testimg4@snap
+    rbd clone --rbd-default-clone-format=2 testimg4@snap testimg6
+    rbd snap rm testimg4@snap
+    rbd trash mv testimg1
+    rbd trash mv testimg2
+    rbd trash mv testimg3
+    rbd trash mv testimg4
+    rbd trash ls | wc -l | grep 4
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 3
+    rbd trash ls | grep testimg1
+    rbd trash ls | grep testimg2
+    rbd trash ls | grep testimg4
+    rbd trash mv testimg6
+    rbd trash ls | wc -l | grep 4
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 2
+    rbd trash ls | grep testimg1
+    rbd trash ls | grep testimg2
+    rbd trash mv testimg5
+    rbd trash ls | wc -l | grep 3
+    rbd trash purge
+    rbd trash ls | wc -l | grep 0
 
-    rbd trash purge --expired-before "now + 10 sec"
-    rbd trash ls | grep -v foo | wc -l | grep 1
-    rbd trash ls | grep bar
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd snap create testimg1@snap
+    rbd clone --rbd-default-clone-format=2 testimg1@snap testimg2
+    rbd snap rm testimg1@snap
+    rbd create $RBD_CREATE_ARGS --size 256 testimg3
+    rbd snap create testimg3@snap  # pin testimg3
+    rbd snap create testimg2@snap
+    rbd clone --rbd-default-clone-format=2 testimg2@snap testimg4
+    rbd clone --rbd-default-clone-format=2 testimg2@snap testimg5
+    rbd snap rm testimg2@snap
+    rbd snap create testimg4@snap
+    rbd clone --rbd-default-clone-format=2 testimg4@snap testimg6
+    rbd snap rm testimg4@snap
+    rbd trash mv testimg1
+    rbd trash mv testimg2
+    rbd trash mv testimg3
+    rbd trash mv testimg4
+    rbd trash ls | wc -l | grep 4
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 4
+    rbd trash mv testimg6
+    rbd trash ls | wc -l | grep 5
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 3
+    rbd trash ls | grep testimg1
+    rbd trash ls | grep testimg2
+    rbd trash ls | grep testimg3
+    rbd trash mv testimg5
+    rbd trash ls | wc -l | grep 4
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 1
+    rbd trash ls | grep testimg3
+    ID=$(rbd trash ls | awk '{ print $1 }')
+    rbd snap purge --image-id $ID
+    rbd trash purge
+    rbd trash ls | wc -l | grep 0
+
+    # test purging a clone with a chain of auto-delete parents
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd snap create testimg1@snap
+    rbd clone --rbd-default-clone-format=2 testimg1@snap testimg2
+    rbd snap rm testimg1@snap
+    rbd create $RBD_CREATE_ARGS --size 256 testimg3
+    rbd snap create testimg2@snap
+    rbd clone --rbd-default-clone-format=2 testimg2@snap testimg4
+    rbd clone --rbd-default-clone-format=2 testimg2@snap testimg5
+    rbd snap rm testimg2@snap
+    rbd snap create testimg4@snap
+    rbd clone --rbd-default-clone-format=2 testimg4@snap testimg6
+    rbd snap rm testimg4@snap
+    rbd rm --rbd_move_parent_to_trash_on_remove=true testimg1
+    rbd rm --rbd_move_parent_to_trash_on_remove=true testimg2
+    rbd trash mv testimg3
+    rbd rm --rbd_move_parent_to_trash_on_remove=true testimg4
+    rbd trash ls | wc -l | grep 4
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 3
+    rbd trash ls | grep testimg1
+    rbd trash ls | grep testimg2
+    rbd trash ls | grep testimg4
+    rbd trash mv testimg6
+    rbd trash ls | wc -l | grep 4
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 2
+    rbd trash ls | grep testimg1
+    rbd trash ls | grep testimg2
+    rbd trash mv testimg5
+    rbd trash ls | wc -l | grep 3
+    rbd trash purge
+    rbd trash ls | wc -l | grep 0
 
-    LAST_IMG=$(rbd trash ls | grep bar | awk '{print $1;}')
-    rbd trash rm $LAST_IMG --force --no-progress | grep -v '.' | wc -l | grep 0
+    rbd create $RBD_CREATE_ARGS --size 256 testimg1
+    rbd snap create testimg1@snap
+    rbd clone --rbd-default-clone-format=2 testimg1@snap testimg2
+    rbd snap rm testimg1@snap
+    rbd create $RBD_CREATE_ARGS --size 256 testimg3
+    rbd snap create testimg3@snap  # pin testimg3
+    rbd snap create testimg2@snap
+    rbd clone --rbd-default-clone-format=2 testimg2@snap testimg4
+    rbd clone --rbd-default-clone-format=2 testimg2@snap testimg5
+    rbd snap rm testimg2@snap
+    rbd snap create testimg4@snap
+    rbd clone --rbd-default-clone-format=2 testimg4@snap testimg6
+    rbd snap rm testimg4@snap
+    rbd rm --rbd_move_parent_to_trash_on_remove=true testimg1
+    rbd rm --rbd_move_parent_to_trash_on_remove=true testimg2
+    rbd trash mv testimg3
+    rbd rm --rbd_move_parent_to_trash_on_remove=true testimg4
+    rbd trash ls | wc -l | grep 4
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 4
+    rbd trash mv testimg6
+    rbd trash ls | wc -l | grep 5
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 3
+    rbd trash ls | grep testimg1
+    rbd trash ls | grep testimg2
+    rbd trash ls | grep testimg3
+    rbd trash mv testimg5
+    rbd trash ls | wc -l | grep 4
+    rbd trash purge 2>&1 | grep 'some expired images could not be removed'
+    rbd trash ls | wc -l | grep 1
+    rbd trash ls | grep testimg3
+    ID=$(rbd trash ls | awk '{ print $1 }')
+    rbd snap purge --image-id $ID
+    rbd trash purge
+    rbd trash ls | wc -l | grep 0
 }
 
 test_deep_copy_clone() {
index ddb63dae3b5dbde9c51870d40141b28e75d08d95..1f13da9fc09103d76bbddd60d6d730037e959eb7 100755 (executable)
@@ -5,11 +5,11 @@
 # require the admin ceph user, as there's no way to pass the ceph user
 # to qemu-iotests currently.
 
-testlist='001 002 003 004 005 008 009 010 011 021 025 032 033 055'
+testlist='001 002 003 004 005 008 009 010 011 021 025 032 033'
 
 git clone https://github.com/qemu/qemu.git
 cd qemu
-if lsb_release -da 2>&1 | grep -iq 'bionic'; then
+if lsb_release -da 2>&1 | grep -iqE '(bionic|focal)'; then
     # Bionic requires a matching test harness
     git checkout v2.11.0
 elif lsb_release -da 2>&1 | grep -iqE '(xenial|linux release 8)'; then
@@ -34,11 +34,6 @@ then
     ln -s /usr/bin/qemu-nbd
 else
     QEMU='/usr/libexec/qemu-kvm'
-
-    # disable test 055 since qemu-kvm (RHEL/CentOS) doesn't support the
-    # required QMP commands under EL7 and Python 3 is not supported by
-    # the test under EL8
-    testlist=$(echo ${testlist} | sed "s/ 055//g")
 fi
 ln -s $QEMU bin/qemu
 
index 4299078a173ddcadd5ab5a7cbcb6cb01b3f6fa81..34d550ceade67049be2fca10e5f3123ff39fc231 100755 (executable)
@@ -1,12 +1,13 @@
 #!/usr/bin/env bash
 
-set -ex
+# set -x
+set -e
 
 # if defined, debug messages will be displayed and prepended with the string
 # debug="DEBUG"
 
-huge_size=2222 # in megabytes
-big_size=6 # in megabytes
+huge_size=5100 # in megabytes
+big_size=7 # in megabytes
 
 huge_obj=/tmp/huge_obj.temp.$$
 big_obj=/tmp/big_obj.temp.$$
@@ -160,7 +161,6 @@ mys3uploadkill() {
        exit 1
     fi
 
-    set -v
     local_file="$1"
     remote_bkt="$2"
     remote_obj="$3"
@@ -229,8 +229,16 @@ mys3cmd ls s3://multipart-bkt
 bkt="incomplete-mp-bkt-1"
 
 mys3cmd mb s3://$bkt
-mys3uploadkill $huge_obj $bkt incomplete-mp-obj-1 $fifo 20
-mys3uploadkill $huge_obj $bkt incomplete-mp-obj-2 $fifo 100
+
+mys3uploadkill $huge_obj $bkt incomplete-mp-obj-c $fifo 20
+
+# generate an incomplete multipart with more than 1,000 parts
+mys3uploadkill $huge_obj $bkt incomplete-mp-obj-b $fifo 1005
+
+# generate more than 1000 incomplet multiparts
+for c in $(seq 1005) ;do
+    mys3uploadkill $huge_obj $bkt incomplete-mp-obj-c-$c $fifo 3
+done
 
 ####################################
 # resharded bucket
index a05bd878e9f452c7764e0802691bce6bdbc3b41b..59bde605806d07617b9cfadd6b4183c3e5cc3b5d 100644 (file)
@@ -1,2 +1,2 @@
-c44bc49e7a57a87d84dfff2a077a2058aa2172e2
-15.2.13
+cd3bb7e87a2f62c1b862ff3fd8b1eec13391a5be
+15.2.14
index 30362f1bd2759737fc18562985540eb131715ce9..e4b932b80e2ebec1186289237e72a943788471a2 100644 (file)
@@ -1134,3 +1134,15 @@ def get_device_lvs(device, name_prefix=''):
     lvs = _output_parser(stdout, LV_FIELDS)
     return [Volume(**lv) for lv in lvs if lv['lv_name'] and
             lv['lv_name'].startswith(name_prefix)]
+
+def get_lv_by_fullname(full_name):
+    """
+    returns LV by the specified LV's full name (formatted as vg_name/lv_name)
+    """
+    try:
+        vg_name, lv_name = full_name.split('/')
+        res_lv = get_first_lv(filters={'lv_name': lv_name,
+                                       'vg_name': vg_name})
+    except ValueError:
+        res_lv = None
+    return res_lv
index 3ef3c1117d2797d925c282b74de7926bf4c88505..39947454d57f57b28e8e4225363d8213c010b32f 100644 (file)
@@ -9,6 +9,7 @@ from . import trigger
 from . import listing
 from . import zap
 from . import batch
+from . import migrate
 
 
 class LVM(object):
@@ -30,6 +31,9 @@ class LVM(object):
         'trigger': trigger.Trigger,
         'list': listing.List,
         'zap': zap.Zap,
+        'migrate': migrate.Migrate,
+        'new-wal': migrate.NewWAL,
+        'new-db': migrate.NewDB,
     }
 
     def __init__(self, argv):
diff --git a/ceph/src/ceph-volume/ceph_volume/devices/lvm/migrate.py b/ceph/src/ceph-volume/ceph_volume/devices/lvm/migrate.py
new file mode 100644 (file)
index 0000000..3410dd5
--- /dev/null
@@ -0,0 +1,674 @@
+from __future__ import print_function
+import argparse
+import logging
+import os
+from textwrap import dedent
+from ceph_volume.util import system, disk, merge_dict
+from ceph_volume.util.device import Device
+from ceph_volume import decorators, terminal, process
+from ceph_volume.api import lvm as api
+from ceph_volume.systemd import systemctl
+
+
+logger = logging.getLogger(__name__)
+mlogger = terminal.MultiLogger(__name__)
+
+def get_cluster_name(osd_id, osd_fsid):
+    """
+    From an ``osd_id`` and/or an ``osd_fsid``, filter out all the LVs in the
+    system that match those tag values, then return cluster_name for the first
+    one.
+    """
+    lv_tags = {}
+    lv_tags['ceph.osd_id'] = osd_id
+    lv_tags['ceph.osd_fsid'] = osd_fsid
+
+    lvs = api.get_lvs(tags=lv_tags)
+    if not lvs:
+        mlogger.error(
+            'Unable to find any LV for source OSD: id:{} fsid:{}'.format(
+                osd_id,  osd_fsid)        )
+        raise SystemExit('Unexpected error, terminating')
+    return next(iter(lvs)).tags["ceph.cluster_name"]
+
+def get_osd_path(osd_id, osd_fsid):
+    return '/var/lib/ceph/osd/{}-{}'.format(
+        get_cluster_name(osd_id, osd_fsid), osd_id)
+
+def find_associated_devices(osd_id, osd_fsid):
+    """
+    From an ``osd_id`` and/or an ``osd_fsid``, filter out all the LVs in the
+    system that match those tag values, further detect if any partitions are
+    part of the OSD, and then return the set of LVs and partitions (if any).
+    """
+    lv_tags = {}
+    lv_tags['ceph.osd_id'] = osd_id
+    lv_tags['ceph.osd_fsid'] = osd_fsid
+
+    lvs = api.get_lvs(tags=lv_tags)
+    if not lvs:
+        mlogger.error(
+            'Unable to find any LV for source OSD: id:{} fsid:{}'.format(
+                osd_id,  osd_fsid)        )
+        raise SystemExit('Unexpected error, terminating')
+
+    devices = set(ensure_associated_lvs(lvs, lv_tags))
+    return [(Device(path), type) for path, type in devices if path]
+
+def ensure_associated_lvs(lvs, lv_tags):
+    """
+    Go through each LV and ensure if backing devices (journal, wal, block)
+    are LVs or partitions, so that they can be accurately reported.
+    """
+    # look for many LVs for each backing type, because it is possible to
+    # receive a filtering for osd.1, and have multiple failed deployments
+    # leaving many journals with osd.1 - usually, only a single LV will be
+    # returned
+
+    block_lvs = api.get_lvs(tags=merge_dict(lv_tags, {'ceph.type': 'block'}))
+    db_lvs = api.get_lvs(tags=merge_dict(lv_tags, {'ceph.type': 'db'}))
+    wal_lvs = api.get_lvs(tags=merge_dict(lv_tags, {'ceph.type': 'wal'}))
+    backing_devices = [(block_lvs, 'block'), (db_lvs, 'db'),
+                       (wal_lvs, 'wal')]
+
+    verified_devices = []
+
+    for lv in lvs:
+        # go through each lv and append it, otherwise query `blkid` to find
+        # a physical device. Do this for each type (journal,db,wal) regardless
+        # if they have been processed in the previous LV, so that bad devices
+        # with the same ID can be caught
+        for ceph_lvs, type in backing_devices:
+
+            if ceph_lvs:
+                verified_devices.extend([(l.lv_path, type) for l in ceph_lvs])
+                continue
+
+            # must be a disk partition, by querying blkid by the uuid we are
+            # ensuring that the device path is always correct
+            try:
+                device_uuid = lv.tags['ceph.{}_uuid'.format(type)]
+            except KeyError:
+                # Bluestore will not have ceph.journal_uuid, and Filestore
+                # will not not have ceph.db_uuid
+                continue
+
+            osd_device = disk.get_device_from_partuuid(device_uuid)
+            if not osd_device:
+                # if the osd_device is not found by the partuuid, then it is
+                # not possible to ensure this device exists anymore, so skip it
+                continue
+            verified_devices.append((osd_device, type))
+
+    return verified_devices
+
+class VolumeTagTracker(object):
+    def __init__(self, devices, target_lv):
+        self.target_lv = target_lv
+        self.data_device = self.db_device = self.wal_device = None
+        for device, type in devices:
+            if type == 'block':
+                self.data_device = device
+            elif type == 'db':
+                self.db_device = device
+            elif type == 'wal':
+                self.wal_device = device
+        if not self.data_device:
+            mlogger.error('Data device not found')
+            raise SystemExit(
+                "Unexpected error, terminating")
+        if not self.data_device.is_lv:
+            mlogger.error('Data device isn\'t LVM')
+            raise SystemExit(
+                "Unexpected error, terminating")
+
+        self.old_target_tags = self.target_lv.tags.copy()
+        self.old_data_tags = (
+            self.data_device.lv_api.tags.copy()
+            if self.data_device.is_lv else None)
+        self.old_db_tags = (
+            self.db_device.lv_api.tags.copy()
+            if self.db_device and self.db_device.is_lv else None)
+        self.old_wal_tags = (
+            self.wal_device.lv_api.tags.copy()
+            if self.wal_device and self.wal_device.is_lv else None)
+
+    def update_tags_when_lv_create(self, create_type):
+        tags = {}
+        if not self.data_device.is_lv:
+            mlogger.warning(
+                'Data device is not LVM, wouldn\'t update LVM tags')
+        else:
+            tags["ceph.{}_uuid".format(create_type)] = self.target_lv.lv_uuid
+            tags["ceph.{}_device".format(create_type)] = self.target_lv.lv_path
+            self.data_device.lv_api.set_tags(tags)
+
+            tags = self.data_device.lv_api.tags.copy()
+            tags["ceph.type"] = create_type
+            self.target_lv.set_tags(tags)
+
+        aux_dev = None
+        if create_type == "db" and self.wal_device:
+            aux_dev = self.wal_device
+        elif create_type == "wal" and self.db_device:
+            aux_dev = self.db_device
+        else:
+            return
+        if not aux_dev.is_lv:
+            mlogger.warning(
+                '{} device is not LVM, wouldn\'t update LVM tags'.format(
+                    create_type.upper()))
+        else:
+            tags = {}
+            tags["ceph.{}_uuid".format(create_type)] = self.target_lv.lv_uuid
+            tags["ceph.{}_device".format(create_type)] = self.target_lv.lv_path
+            aux_dev.lv_api.set_tags(tags)
+
+    def remove_lvs(self, source_devices, target_type):
+        remaining_devices = [self.data_device, self.db_device, self.wal_device]
+
+        outdated_tags = []
+        for device, type in source_devices:
+            if type == "block" or type == target_type:
+                continue
+            remaining_devices.remove(device)
+            if device.is_lv:
+                outdated_tags.append("ceph.{}_uuid".format(type))
+                outdated_tags.append("ceph.{}_device".format(type))
+                device.lv_api.clear_tags()
+        if len(outdated_tags) > 0:
+            for d in remaining_devices:
+                if d and d.is_lv:
+                    d.lv_api.clear_tags(outdated_tags)
+
+    def replace_lvs(self, source_devices, target_type):
+        remaining_devices = [self.data_device]
+        if self.db_device:
+            remaining_devices.append(self.db_device)
+        if self.wal_device:
+            remaining_devices.append(self.wal_device)
+
+        outdated_tags = []
+        for device, type in source_devices:
+            if type == "block":
+                continue
+            remaining_devices.remove(device)
+            if device.is_lv:
+                outdated_tags.append("ceph.{}_uuid".format(type))
+                outdated_tags.append("ceph.{}_device".format(type))
+                device.lv_api.clear_tags()
+
+        new_tags = {}
+        new_tags["ceph.{}_uuid".format(target_type)] = self.target_lv.lv_uuid
+        new_tags["ceph.{}_device".format(target_type)] = self.target_lv.lv_path
+
+        for d in remaining_devices:
+            if d and d.is_lv:
+                if len(outdated_tags) > 0:
+                    d.lv_api.clear_tags(outdated_tags)
+                d.lv_api.set_tags(new_tags)
+
+        if not self.data_device.is_lv:
+            mlogger.warning(
+                'Data device is not LVM, wouldn\'t properly update target LVM tags')
+        else:
+            tags = self.data_device.lv_api.tags.copy()
+
+        tags["ceph.type"] = target_type
+        tags["ceph.{}_uuid".format(target_type)] = self.target_lv.lv_uuid
+        tags["ceph.{}_device".format(target_type)] = self.target_lv.lv_path
+        self.target_lv.set_tags(tags)
+
+    def undo(self):
+        mlogger.info(
+            'Undoing lv tag set')
+        if self.data_device:
+            if self.old_data_tags:
+                self.data_device.lv_api.set_tags(self.old_data_tags)
+            else:
+                self.data_device.lv_api.clear_tags()
+        if self.db_device:
+            if self.old_db_tags:
+                self.db_device.lv_api.set_tags(self.old_db_tags)
+            else:
+                self.db_device.lv_api.clear_tags()
+        if self.wal_device:
+            if self.old_wal_tags:
+                self.wal_device.lv_api.set_tags(self.old_wal_tags)
+            else:
+                self.wal_device.lv_api.clear_tags()
+        if self.old_target_tags:
+            self.target_lv.set_tags(self.old_target_tags)
+        else:
+            self.target_lv.clear_tags()
+
+class Migrate(object):
+
+    help = 'Migrate BlueFS data from to another LVM device'
+
+    def __init__(self, argv):
+        self.argv = argv
+        self.osd_id = None
+
+    def get_source_devices(self, devices, target_type=""):
+        ret = []
+        for device, type in devices:
+            if type == target_type:
+                continue
+            if type == 'block':
+                if 'data' not in self.args.from_:
+                    continue;
+            elif type == 'db':
+                if 'db' not in self.args.from_:
+                    continue;
+            elif type == 'wal':
+                if 'wal' not in self.args.from_:
+                    continue;
+            ret.append([device, type])
+        if ret == []:
+            mlogger.error('Source device list is empty')
+            raise SystemExit(
+                'Unable to migrate to : {}'.format(self.args.target))
+        return ret
+
+    # ceph-bluestore-tool uses the following replacement rules
+    # (in the order of precedence, stop on the first match)
+    # if source list has DB volume - target device replaces it.
+    # if source list has WAL volume - target device replace it.
+    # if source list has slow volume only - operation isn\92t permitted,
+    #  requires explicit allocation via new-db/new-wal command.detects which
+    def get_target_type_by_source(self, devices):
+        ret = None
+        for device, type in devices:
+            if type == 'db':
+                return 'db'
+            elif type == 'wal':
+                ret = 'wal'
+        return ret
+
+    def get_filename_by_type(self, type):
+        filename = 'block'
+        if type == 'db' or type == 'wal':
+            filename += '.' + type
+        return filename
+
+    def get_source_args(self, osd_path, devices):
+        ret = []
+        for device, type in devices:
+            ret = ret + ["--devs-source", os.path.join(
+                osd_path, self.get_filename_by_type(type))]
+        return ret
+
+    @decorators.needs_root
+    def migrate_to_new(self, osd_id, osd_fsid, devices, target_lv):
+        source_devices = self.get_source_devices(devices)
+        target_type = self.get_target_type_by_source(source_devices)
+        if not target_type:
+            mlogger.error(
+                "Unable to determine new volume type,"
+                " please use new-db or new-wal command before.")
+            raise SystemExit(
+                "Unable to migrate to : {}".format(self.args.target))
+
+        target_path = target_lv.lv_path
+
+        try:
+            tag_tracker = VolumeTagTracker(devices, target_lv)
+            # we need to update lvm tags for all the remaining volumes
+            # and clear for ones which to be removed
+
+            # ceph-bluestore-tool removes source volume(s) other than block one
+            # and attaches target one after successful migration
+            tag_tracker.replace_lvs(source_devices, target_type)
+
+            osd_path = get_osd_path(osd_id, osd_fsid)
+            source_args = self.get_source_args(osd_path, source_devices)
+            mlogger.info("Migrate to new, Source: {} Target: {}".format(
+                source_args, target_path))
+            stdout, stderr, exit_code = process.call([
+                'ceph-bluestore-tool',
+                '--path',
+                osd_path,
+                '--dev-target',
+                target_path,
+                '--command',
+                'bluefs-bdev-migrate'] +
+                source_args)
+            if exit_code != 0:
+                mlogger.error(
+                    'Failed to migrate device, error code:{}'.format(exit_code))
+                raise SystemExit(
+                    'Failed to migrate to : {}'.format(self.args.target))
+            else:
+                system.chown(os.path.join(osd_path, "block.{}".format(
+                    target_type)))
+                terminal.success('Migration successful.')
+        except:
+            tag_tracker.undo()
+            raise
+
+        return
+
+    @decorators.needs_root
+    def migrate_to_existing(self, osd_id, osd_fsid, devices, target_lv):
+        target_type = target_lv.tags["ceph.type"]
+        if target_type == "wal":
+            mlogger.error("Migrate to WAL is not supported")
+            raise SystemExit(
+                "Unable to migrate to : {}".format(self.args.target))
+        target_filename = self.get_filename_by_type(target_type)
+        if (target_filename == ""):
+            mlogger.error(
+                "Target Logical Volume doesn't have proper volume type "
+                "(ceph.type LVM tag): {}".format(target_type))
+            raise SystemExit(
+                "Unable to migrate to : {}".format(self.args.target))
+
+        osd_path = get_osd_path(osd_id, osd_fsid)
+        source_devices = self.get_source_devices(devices, target_type)
+        target_path = os.path.join(osd_path, target_filename)
+        tag_tracker = VolumeTagTracker(devices, target_lv)
+
+        try:
+            # ceph-bluestore-tool removes source volume(s) other than
+            # block and target ones after successful migration
+            tag_tracker.remove_lvs(source_devices, target_type)
+            source_args = self.get_source_args(osd_path, source_devices)
+            mlogger.info("Migrate to existing, Source: {} Target: {}".format(
+                source_args, target_path))
+            stdout, stderr, exit_code = process.call([
+                'ceph-bluestore-tool',
+                '--path',
+                osd_path,
+                '--dev-target',
+                target_path,
+                '--command',
+                'bluefs-bdev-migrate'] +
+                source_args)
+            if exit_code != 0:
+                mlogger.error(
+                    'Failed to migrate device, error code:{}'.format(exit_code))
+                raise SystemExit(
+                    'Failed to migrate to : {}'.format(self.args.target))
+            else:
+                terminal.success('Migration successful.')
+        except:
+            tag_tracker.undo()
+            raise
+
+        return
+
+    @decorators.needs_root
+    def migrate_osd(self):
+        if self.args.osd_id:
+            osd_is_running = systemctl.osd_is_active(self.args.osd_id)
+            if osd_is_running:
+                mlogger.error('OSD is running, stop it with: '
+                    'systemctl stop ceph-osd@{}'.format(
+                        self.args.osd_id))
+                raise SystemExit(
+                    'Unable to migrate devices associated with OSD ID: {}'
+                        .format(self.args.osd_id))
+
+        target_lv = api.get_lv_by_fullname(self.args.target)
+        if not target_lv:
+            mlogger.error(
+                'Target path "{}" is not a Logical Volume'.formaat(
+                    self.args.target))
+            raise SystemExit(
+                'Unable to migrate to : {}'.format(self.args.target))
+        devices = find_associated_devices(self.args.osd_id, self.args.osd_fsid)
+        if (not target_lv.used_by_ceph):
+            self.migrate_to_new(self.args.osd_id, self.args.osd_fsid,
+                devices,
+                target_lv)
+        else:
+            if (target_lv.tags['ceph.osd_id'] != self.args.osd_id or
+                    target_lv.tags['ceph.osd_fsid'] != self.args.osd_fsid):
+                mlogger.error(
+                    'Target Logical Volume isn\'t used by the specified OSD: '
+                        '{} FSID: {}'.format(self.args.osd_id,
+                            self.args.osd_fsid))
+                raise SystemExit(
+                    'Unable to migrate to : {}'.format(self.args.target))
+
+            self.migrate_to_existing(self.args.osd_id, self.args.osd_fsid,
+                devices,
+                target_lv)
+
+    def parse_argv(self):
+        sub_command_help = dedent("""
+        Moves BlueFS data from source volume(s) to the target one, source
+        volumes (except the main (i.e. data or block) one) are removed on
+        success. LVM volumes are permitted for Target only, both already
+        attached or new logical one. In the latter case it is attached to OSD
+        replacing one of the source devices. Following replacement rules apply
+        (in the order of precedence, stop on the first match):
+        * if source list has DB volume - target device replaces it.
+        * if source list has WAL volume - target device replace it.
+        * if source list has slow volume only - operation is not permitted,
+          requires explicit allocation via new-db/new-wal command.
+
+        Example calls for supported scenarios:
+
+          Moves BlueFS data from main device to LV already attached as DB:
+
+            ceph-volume lvm migrate --osd-id 1 --osd-fsid <uuid> --from data --target vgname/db
+
+          Moves BlueFS data from shared main device to LV which will be attached
+           as a new DB:
+
+            ceph-volume lvm migrate --osd-id 1 --osd-fsid <uuid> --from data --target vgname/new_db
+
+          Moves BlueFS data from DB device to new LV, DB is replaced:
+
+            ceph-volume lvm migrate --osd-id 1 --osd-fsid <uuid> --from db --target vgname/new_db
+
+          Moves BlueFS data from main and DB devices to new LV, DB is replaced:
+
+            ceph-volume lvm migrate --osd-id 1 --osd-fsid <uuid> --from data db --target vgname/new_db
+
+          Moves BlueFS data from main, DB and WAL devices to new LV, WAL is
+           removed and DB is replaced:
+
+            ceph-volume lvm migrate --osd-id 1 --osd-fsid <uuid> --from data db wal --target vgname/new_db
+
+          Moves BlueFS data from main, DB and WAL devices to main device, WAL
+           and DB are removed:
+
+            ceph-volume lvm migrate --osd-id 1 --osd-fsid <uuid> --from db wal --target vgname/data
+
+        """)
+        parser = argparse.ArgumentParser(
+            prog='ceph-volume lvm migrate',
+            formatter_class=argparse.RawDescriptionHelpFormatter,
+            description=sub_command_help,
+        )
+
+        parser.add_argument(
+            '--osd-id',
+            required=True,
+            help='Specify an OSD ID to detect associated devices for zapping',
+        )
+
+        parser.add_argument(
+            '--osd-fsid',
+            required=True,
+            help='Specify an OSD FSID to detect associated devices for zapping',
+        )
+        parser.add_argument(
+            '--target',
+            required=True,
+            help='Specify target Logical Volume (LV) to migrate data to',
+        )
+        parser.add_argument(
+            '--from',
+            nargs='*',
+            dest='from_',
+            required=True,
+            choices=['data', 'db', 'wal'],
+            help='Copy BlueFS data from DB device',
+        )
+
+        if len(self.argv) == 0:
+            print(sub_command_help)
+            return
+        self.args = parser.parse_args(self.argv)
+
+    def main(self):
+        self.parse_argv()
+        self.migrate_osd()
+
+class NewVolume(object):
+    def __init__(self, create_type, argv):
+        self.create_type = create_type
+        self.argv = argv
+
+    def make_parser(self, prog, sub_command_help):
+        parser = argparse.ArgumentParser(
+            prog=prog,
+            formatter_class=argparse.RawDescriptionHelpFormatter,
+            description=sub_command_help,
+        )
+
+        parser.add_argument(
+            '--osd-id',
+            required=True,
+            help='Specify an OSD ID to attach new volume to',
+        )
+
+        parser.add_argument(
+            '--osd-fsid',
+            required=True,
+            help='Specify an OSD FSIDto attach new volume to',
+        )
+        parser.add_argument(
+            '--target',
+            required=True,
+            help='Specify target Logical Volume (LV) to attach',
+        )
+        return parser
+
+    @decorators.needs_root
+    def make_new_volume(self, osd_id, osd_fsid, devices, target_lv):
+        osd_path = get_osd_path(osd_id, osd_fsid)
+        mlogger.info(
+            'Making new volume at {} for OSD: {} ({})'.format(
+                target_lv.lv_path, osd_id, osd_path))
+        tag_tracker = VolumeTagTracker(devices, target_lv)
+
+        try:
+            tag_tracker.update_tags_when_lv_create(self.create_type)
+
+            stdout, stderr, exit_code = process.call([
+                'ceph-bluestore-tool',
+                '--path',
+                osd_path,
+                '--dev-target',
+                target_lv.lv_path,
+                '--command',
+                'bluefs-bdev-new-{}'.format(self.create_type)
+            ])
+            if exit_code != 0:
+                mlogger.error(
+                    'failed to attach new volume, error code:{}'.format(
+                        exit_code))
+                raise SystemExit(
+                    "Failed to attach new volume: {}".format(
+                        self.args.target))
+            else:
+                system.chown(os.path.join(osd_path, "block.{}".format(
+                    self.create_type)))
+                terminal.success('New volume attached.')
+        except:
+            tag_tracker.undo()
+            raise
+        return
+
+    @decorators.needs_root
+    def new_volume(self):
+        if self.args.osd_id:
+            osd_is_running = systemctl.osd_is_active(self.args.osd_id)
+            if osd_is_running:
+                mlogger.error('OSD ID is running, stop it with:'
+                    ' systemctl stop ceph-osd@{}'.format(self.args.osd_id))
+                raise SystemExit(
+                    'Unable to attach new volume for OSD: {}'.format(
+                        self.args.osd_id))
+
+        target_lv = api.get_lv_by_fullname(self.args.target)
+        if not target_lv:
+            mlogger.error(
+                'Target path {} is not a Logical Volume'.format(
+                    self.args.target))
+            raise SystemExit(
+                'Unable to attach new volume : {}'.format(self.args.target))
+        if target_lv.used_by_ceph:
+            mlogger.error(
+                'Target Logical Volume is already used by ceph: {}'.format(
+                    self.args.target))
+            raise SystemExit(
+                'Unable to attach new volume : {}'.format(self.args.target))
+        else:
+            devices = find_associated_devices(self.args.osd_id,
+                self.args.osd_fsid)
+            self.make_new_volume(
+                self.args.osd_id,
+                self.args.osd_fsid,
+                devices,
+                target_lv)
+
+class NewWAL(NewVolume):
+
+    help = 'Allocate new WAL volume for OSD at specified Logical Volume'
+
+    def __init__(self, argv):
+        super(NewWAL, self).__init__("wal", argv)
+
+    def main(self):
+        sub_command_help = dedent("""
+        Attaches the given logical volume to the given OSD as a WAL volume.
+        Logical volume format is vg/lv. Fails if OSD has already got attached DB.
+
+        Example:
+
+          Attach vgname/lvname as a WAL volume to OSD 1
+
+              ceph-volume lvm new-wal --osd-id 1 --osd-fsid 55BD4219-16A7-4037-BC20-0F158EFCC83D --target vgname/new_wal
+        """)
+        parser = self.make_parser('ceph-volume lvm new-wal', sub_command_help)
+
+        if len(self.argv) == 0:
+            print(sub_command_help)
+            return
+
+        self.args = parser.parse_args(self.argv)
+
+        self.new_volume()
+
+class NewDB(NewVolume):
+
+    help = 'Allocate new DB volume for OSD at specified Logical Volume'
+
+    def __init__(self, argv):
+        super(NewDB, self).__init__("db", argv)
+
+    def main(self):
+        sub_command_help = dedent("""
+        Attaches the given logical volume to the given OSD as a DB volume.
+        Logical volume format is vg/lv. Fails if OSD has already got attached DB.
+
+        Example:
+
+          Attach vgname/lvname as a DB volume to OSD 1
+
+              ceph-volume lvm new-db --osd-id 1 --osd-fsid 55BD4219-16A7-4037-BC20-0F158EFCC83D --target vgname/new_db
+        """)
+
+        parser = self.make_parser('ceph-volume lvm new-db', sub_command_help)
+        if len(self.argv) == 0:
+            print(sub_command_help)
+            return
+        self.args = parser.parse_args(self.argv)
+
+        self.new_volume()
diff --git a/ceph/src/ceph-volume/ceph_volume/tests/devices/lvm/test_migrate.py b/ceph/src/ceph-volume/ceph_volume/tests/devices/lvm/test_migrate.py
new file mode 100644 (file)
index 0000000..dc42979
--- /dev/null
@@ -0,0 +1,1504 @@
+import pytest
+from mock.mock import patch
+from ceph_volume import process
+from ceph_volume.api import lvm as api
+from ceph_volume.devices.lvm import migrate
+from ceph_volume.util.device import Device
+from ceph_volume.util import system
+
+class TestGetClusterName(object):
+
+    mock_volumes = []
+    def mock_get_lvs(self, *args, **kwargs):
+        return self.mock_volumes.pop(0)
+
+    def test_cluster_found(self, monkeypatch):
+        tags = 'ceph.osd_id=0,ceph.journal_uuid=x,ceph.type=data,ceph.osd_fsid=1234,ceph.cluster_name=name_of_the_cluster'
+        vol = api.Volume(lv_name='volume1', lv_uuid='y', vg_name='',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=tags)
+        self.mock_volumes = []
+        self.mock_volumes.append([vol])
+
+        monkeypatch.setattr(migrate.api, 'get_lvs', self.mock_get_lvs)
+        monkeypatch.setattr(process, 'call', lambda x, **kw: ('', '', 0))
+
+        result = migrate.get_cluster_name(osd_id='0', osd_fsid='1234')
+        assert "name_of_the_cluster" == result
+
+    def test_cluster_not_found(self, monkeypatch, capsys):
+        self.mock_volumes = []
+        self.mock_volumes.append([])
+
+        monkeypatch.setattr(migrate.api, 'get_lvs', self.mock_get_lvs)
+        monkeypatch.setattr(process, 'call', lambda x, **kw: ('', '', 0))
+
+        with pytest.raises(SystemExit) as error:
+            migrate.get_cluster_name(osd_id='0', osd_fsid='1234')
+        stdout, stderr = capsys.readouterr()
+        expected = 'Unexpected error, terminating'
+        assert expected in str(error.value)
+        expected = 'Unable to find any LV for source OSD: id:0 fsid:1234'
+        assert expected in stderr
+
+class TestFindAssociatedDevices(object):
+
+    mock_volumes = []
+    def mock_get_lvs(self, *args, **kwargs):
+        return self.mock_volumes.pop(0)
+
+    mock_single_volumes = {}
+    def mock_get_first_lv(self, *args, **kwargs):
+        p = kwargs['filters']['lv_path']
+        return self.mock_single_volumes[p]
+
+    def test_lv_is_matched_id(self, monkeypatch):
+        tags = 'ceph.osd_id=0,ceph.journal_uuid=x,ceph.type=data,ceph.osd_fsid=1234'
+        vol = api.Volume(lv_name='volume1', lv_uuid='y', vg_name='',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=tags)
+        self.mock_volumes = []
+        self.mock_volumes.append([vol])
+        self.mock_volumes.append([vol])
+        self.mock_volumes.append([])
+        self.mock_volumes.append([])
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': vol}
+
+        monkeypatch.setattr(migrate.api, 'get_lvs', self.mock_get_lvs)
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+        monkeypatch.setattr(process, 'call', lambda x, **kw: ('', '', 0))
+
+        result = migrate.find_associated_devices(osd_id='0', osd_fsid='1234')
+        assert len(result) == 1
+        assert result[0][0].abspath == '/dev/VolGroup/lv1'
+        assert result[0][0].lvs == [vol]
+        assert result[0][1] == 'block'
+
+    def test_lv_is_matched_id2(self, monkeypatch):
+        tags = 'ceph.osd_id=0,ceph.journal_uuid=x,ceph.type=data,ceph.osd_fsid=1234'
+        vol = api.Volume(lv_name='volume1', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=tags)
+        tags2 = 'ceph.osd_id=0,ceph.journal_uuid=xx,ceph.type=wal,ceph.osd_fsid=1234'
+        vol2 = api.Volume(lv_name='volume2', lv_uuid='z', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv2', lv_tags=tags2)
+        self.mock_volumes = []
+        self.mock_volumes.append([vol])
+        self.mock_volumes.append([vol])
+        self.mock_volumes.append([])
+        self.mock_volumes.append([vol2])
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': vol, '/dev/VolGroup/lv2': vol2}
+
+        monkeypatch.setattr(migrate.api, 'get_lvs', self.mock_get_lvs)
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+        monkeypatch.setattr(process, 'call', lambda x, **kw: ('', '', 0))
+
+        result = migrate.find_associated_devices(osd_id='0', osd_fsid='1234')
+        assert len(result) == 2
+        for d in result:
+          if d[1] == 'block':
+            assert d[0].abspath == '/dev/VolGroup/lv1'
+            assert d[0].lvs == [vol]
+          elif d[1] == 'wal':
+            assert d[0].abspath == '/dev/VolGroup/lv2'
+            assert d[0].lvs == [vol2]
+          else:
+            assert False
+
+    def test_lv_is_matched_id3(self, monkeypatch):
+        tags = 'ceph.osd_id=0,ceph.journal_uuid=x,ceph.type=data,ceph.osd_fsid=1234'
+        vol = api.Volume(lv_name='volume1', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=tags)
+        tags2 = 'ceph.osd_id=0,ceph.journal_uuid=xx,ceph.type=wal,ceph.osd_fsid=1234'
+        vol2 = api.Volume(lv_name='volume2', lv_uuid='z', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv2', lv_tags=tags2)
+        tags3 = 'ceph.osd_id=0,ceph.journal_uuid=xx,ceph.type=db,ceph.osd_fsid=1234'
+        vol3 = api.Volume(lv_name='volume3', lv_uuid='z', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv3', lv_tags=tags3)
+
+        self.mock_volumes = []
+        self.mock_volumes.append([vol])
+        self.mock_volumes.append([vol])
+        self.mock_volumes.append([vol3])
+        self.mock_volumes.append([vol2])
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': vol,
+                                    '/dev/VolGroup/lv2': vol2,
+                                    '/dev/VolGroup/lv3': vol3}
+
+        monkeypatch.setattr(migrate.api, 'get_lvs', self.mock_get_lvs)
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+        monkeypatch.setattr(process, 'call', lambda x, **kw: ('', '', 0))
+
+        result = migrate.find_associated_devices(osd_id='0', osd_fsid='1234')
+        assert len(result) == 3
+        for d in result:
+          if d[1] == 'block':
+            assert d[0].abspath == '/dev/VolGroup/lv1'
+            assert d[0].lvs == [vol]
+          elif d[1] == 'wal':
+            assert d[0].abspath == '/dev/VolGroup/lv2'
+            assert d[0].lvs == [vol2]
+          elif d[1] == 'db':
+            assert d[0].abspath == '/dev/VolGroup/lv3'
+            assert d[0].lvs == [vol3]
+          else:
+            assert False
+
+    def test_lv_is_not_matched(self, monkeypatch, capsys):
+        self.mock_volumes = [None]
+        monkeypatch.setattr(migrate.api, 'get_lvs', self.mock_get_lvs)
+        monkeypatch.setattr(process, 'call', lambda x, **kw: ('', '', 0))
+
+        with pytest.raises(SystemExit) as error:
+            migrate.find_associated_devices(osd_id='1', osd_fsid='1234')
+        stdout, stderr = capsys.readouterr()
+        expected = 'Unexpected error, terminating'
+        assert expected in str(error.value)
+        expected = 'Unable to find any LV for source OSD: id:1 fsid:1234'
+        assert expected in stderr
+
+class TestVolumeTagTracker(object):
+    mock_single_volumes = {}
+    def mock_get_first_lv(self, *args, **kwargs):
+        p = kwargs['filters']['lv_path']
+        return self.mock_single_volumes[p]
+
+    mock_process_input = []
+    def mock_process(self, *args, **kwargs):
+        self.mock_process_input.append(args[0]);
+        return ('', '', 0)
+
+    def test_init(self, monkeypatch):
+        source_tags = 'ceph.osd_id=0,ceph.journal_uuid=x,ceph.type=data,ceph.osd_fsid=1234'
+        source_db_tags = 'ceph.osd_id=0,journal_uuid=x,ceph.type=db, osd_fsid=1234'
+        source_wal_tags = 'ceph.osd_id=0,ceph.journal_uuid=x,ceph.type=wal'
+        target_tags="ceph.a=1,ceph.b=2,c=3,ceph.d=4" # 'c' to be bypassed
+        devices=[]
+
+        data_vol = api.Volume(lv_name='volume1', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv2', lv_tags=source_db_tags)
+        wal_vol = api.Volume(lv_name='volume3', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv3', lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': data_vol,
+                                    '/dev/VolGroup/lv2': db_vol,
+                                    '/dev/VolGroup/lv3': wal_vol}
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        data_device = Device(path = '/dev/VolGroup/lv1')
+        db_device = Device(path = '/dev/VolGroup/lv2')
+        wal_device = Device(path = '/dev/VolGroup/lv3')
+        devices.append([data_device, 'block'])
+        devices.append([db_device, 'db'])
+        devices.append([wal_device, 'wal'])
+
+        target = api.Volume(lv_name='target_name', lv_tags=target_tags,
+            lv_path='/dev/VolGroup/lv_target')
+        t = migrate.VolumeTagTracker(devices, target);
+
+        assert 3 == len(t.old_target_tags)
+
+        assert data_device == t.data_device
+        assert 4 == len(t.old_data_tags)
+        assert 'data' == t.old_data_tags['ceph.type']
+
+        assert db_device == t.db_device
+        assert 2 == len(t.old_db_tags)
+        assert 'db' == t.old_db_tags['ceph.type']
+
+        assert wal_device == t.wal_device
+        assert 3 == len(t.old_wal_tags)
+        assert 'wal' == t.old_wal_tags['ceph.type']
+
+    def test_update_tags_when_lv_create(self, monkeypatch):
+        source_tags = \
+        'ceph.osd_id=0,ceph.journal_uuid=x,' \
+        'ceph.type=data,ceph.osd_fsid=1234'
+        source_db_tags = \
+        'ceph.osd_id=0,journal_uuid=x,ceph.type=db,' \
+        'osd_fsid=1234'
+
+        devices=[]
+
+        data_vol = api.Volume(lv_name='volume1', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv2', lv_tags=source_db_tags)
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': data_vol,
+                                    '/dev/VolGroup/lv2': db_vol}
+
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        data_device = Device(path = '/dev/VolGroup/lv1')
+        db_device = Device(path = '/dev/VolGroup/lv2')
+        devices.append([data_device, 'block'])
+        devices.append([db_device, 'db'])
+
+        target = api.Volume(lv_name='target_name', lv_tags='',
+            lv_uuid='wal_uuid',
+            lv_path='/dev/VolGroup/lv_target')
+        t = migrate.VolumeTagTracker(devices, target);
+
+        self.mock_process_input = []
+        t.update_tags_when_lv_create('wal')
+
+        assert 3 == len(self.mock_process_input)
+
+        assert ['lvchange',
+                '--addtag', 'ceph.wal_uuid=wal_uuid',
+                '--addtag', 'ceph.wal_device=/dev/VolGroup/lv_target',
+                '/dev/VolGroup/lv1'] == self.mock_process_input[0]
+
+        assert  self.mock_process_input[1].sort() == [
+                'lvchange',
+                '--addtag', 'ceph.osd_id=0',
+                '--addtag', 'ceph.journal_uuid=x',
+                '--addtag', 'ceph.type=wal',
+                '--addtag', 'ceph.osd_fsid=1234',
+                '--addtag', 'ceph.wal_uuid=wal_uuid',
+                '--addtag', 'ceph.wal_device=/dev/VolGroup/lv_target',
+                '/dev/VolGroup/lv_target'].sort()
+
+        assert ['lvchange',
+                '--addtag', 'ceph.wal_uuid=wal_uuid',
+                '--addtag', 'ceph.wal_device=/dev/VolGroup/lv_target',
+                '/dev/VolGroup/lv2'] == self.mock_process_input[2]
+
+    def test_remove_lvs(self, monkeypatch):
+        source_tags = \
+        'ceph.osd_id=0,ceph.journal_uuid=x,' \
+        'ceph.type=data,ceph.osd_fsid=1234,ceph.wal_uuid=aaaaa'
+        source_db_tags = \
+        'ceph.osd_id=0,journal_uuid=x,ceph.type=db,' \
+        'osd_fsid=1234,ceph.wal_device=aaaaa'
+        source_wal_tags = \
+        'ceph.wal_uuid=uuid,ceph.wal_device=device,' \
+        'ceph.osd_id=0,ceph.type=wal'
+
+        devices=[]
+
+        data_vol = api.Volume(lv_name='volume1', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv2', lv_tags=source_db_tags)
+        wal_vol = api.Volume(lv_name='volume3', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv3', lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': data_vol,
+                                    '/dev/VolGroup/lv2': db_vol,
+                                    '/dev/VolGroup/lv3': wal_vol}
+
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        data_device = Device(path = '/dev/VolGroup/lv1')
+        db_device = Device(path = '/dev/VolGroup/lv2')
+        wal_device = Device(path = '/dev/VolGroup/lv3')
+        devices.append([data_device, 'block'])
+        devices.append([db_device, 'db'])
+        devices.append([wal_device, 'wal'])
+
+        target = api.Volume(lv_name='target_name', lv_tags='',
+            lv_path='/dev/VolGroup/lv_target')
+        t = migrate.VolumeTagTracker(devices, target);
+
+        device_to_remove = devices.copy()
+
+        self.mock_process_input = []
+        t.remove_lvs(device_to_remove, 'db')
+
+        assert 3 == len(self.mock_process_input)
+        assert ['lvchange',
+                '--deltag', 'ceph.wal_uuid=uuid',
+                '--deltag', 'ceph.wal_device=device',
+                '--deltag', 'ceph.osd_id=0',
+                '--deltag', 'ceph.type=wal',
+                '/dev/VolGroup/lv3'] == self.mock_process_input[0]
+        assert ['lvchange',
+                '--deltag', 'ceph.wal_uuid=aaaaa',
+                '/dev/VolGroup/lv1'] == self.mock_process_input[1]
+        assert ['lvchange',
+                '--deltag', 'ceph.wal_device=aaaaa',
+                '/dev/VolGroup/lv2'] == self.mock_process_input[2]
+
+    def test_replace_lvs(self, monkeypatch):
+        source_tags = \
+        'ceph.osd_id=0,ceph.type=data,ceph.osd_fsid=1234,'\
+        'ceph.wal_uuid=wal_uuid,ceph.db_device=/dbdevice'
+        source_db_tags = \
+        'ceph.osd_id=0,ceph.type=db,ceph.osd_fsid=1234'
+        source_wal_tags = \
+        'ceph.wal_uuid=uuid,ceph.wal_device=device,' \
+        'ceph.osd_id=0,ceph.type=wal'
+
+        devices=[]
+
+        data_vol = api.Volume(lv_name='volume1', lv_uuid='datauuid', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2', lv_uuid='dbuuid', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv2', lv_tags=source_db_tags)
+        wal_vol = api.Volume(lv_name='volume3', lv_uuid='waluuid', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv3', lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': data_vol,
+                                    '/dev/VolGroup/lv2': db_vol,
+                                    '/dev/VolGroup/lv3': wal_vol}
+
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        data_device = Device(path = '/dev/VolGroup/lv1')
+        db_device = Device(path = '/dev/VolGroup/lv2')
+        wal_device = Device(path = '/dev/VolGroup/lv3')
+        devices.append([data_device, 'block'])
+        devices.append([db_device, 'db'])
+        devices.append([wal_device, 'wal'])
+
+        target = api.Volume(lv_name='target_name',
+            lv_uuid='ttt',
+            lv_tags='ceph.tag_to_remove=aaa',
+            lv_path='/dev/VolGroup/lv_target')
+        t = migrate.VolumeTagTracker(devices, target);
+
+        self.mock_process_input = []
+        t.replace_lvs(devices, 'db')
+
+        assert 5 == len(self.mock_process_input)
+
+        assert ['lvchange',
+                '--deltag', 'ceph.osd_id=0',
+                '--deltag', 'ceph.type=db',
+                '--deltag', 'ceph.osd_fsid=1234',
+                '/dev/VolGroup/lv2'] == self.mock_process_input[0]
+        assert ['lvchange',
+                '--deltag', 'ceph.wal_uuid=uuid',
+                '--deltag', 'ceph.wal_device=device',
+                '--deltag', 'ceph.osd_id=0',
+                '--deltag', 'ceph.type=wal',
+                '/dev/VolGroup/lv3'] == self.mock_process_input[1]
+        assert ['lvchange',
+                '--deltag', 'ceph.db_device=/dbdevice',
+                '--deltag', 'ceph.wal_uuid=wal_uuid',
+                '/dev/VolGroup/lv1'] == self.mock_process_input[2]
+
+        assert ['lvchange',
+                '--addtag', 'ceph.db_uuid=ttt',
+                '--addtag', 'ceph.db_device=/dev/VolGroup/lv_target',
+                '/dev/VolGroup/lv1'] == self.mock_process_input[3]
+
+        assert self.mock_process_input[4].sort() == [
+            'lvchange',
+            '--addtag', 'ceph.osd_id=0',
+            '--addtag', 'ceph.osd_fsid=1234',
+            '--addtag', 'ceph.type=db',
+            '--addtag', 'ceph.db_uuid=ttt',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/lv_target',
+            '/dev/VolGroup/lv_target'].sort()
+
+    def test_undo(self, monkeypatch):
+        source_tags = 'ceph.osd_id=0,ceph.journal_uuid=x,ceph.type=data,ceph.osd_fsid=1234'
+        source_db_tags = 'ceph.osd_id=0,journal_uuid=x,ceph.type=db, osd_fsid=1234'
+        source_wal_tags = 'ceph.osd_id=0,ceph.journal_uuid=x,ceph.type=wal'
+        target_tags=""
+        devices=[]
+
+        data_vol = api.Volume(lv_name='volume1', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv2', lv_tags=source_db_tags)
+        wal_vol = api.Volume(lv_name='volume3', lv_uuid='y', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv3', lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': data_vol,
+                                    '/dev/VolGroup/lv2': db_vol,
+                                    '/dev/VolGroup/lv3': wal_vol}
+
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        data_device = Device(path = '/dev/VolGroup/lv1')
+        db_device = Device(path = '/dev/VolGroup/lv2')
+        wal_device = Device(path = '/dev/VolGroup/lv3')
+        devices.append([data_device, 'block'])
+        devices.append([db_device, 'db'])
+        devices.append([wal_device, 'wal'])
+
+        target = api.Volume(lv_name='target_name', lv_tags=target_tags,
+            lv_path='/dev/VolGroup/lv_target')
+        t = migrate.VolumeTagTracker(devices, target);
+
+        target.tags['ceph.a'] = 'aa';
+        target.tags['ceph.b'] = 'bb';
+
+        data_vol.tags['ceph.journal_uuid'] = 'z';
+
+        db_vol.tags.pop('ceph.type')
+
+        wal_vol.tags.clear()
+
+        assert 2 == len(target.tags)
+        assert 4 == len(data_vol.tags)
+        assert 1 == len(db_vol.tags)
+
+        self.mock_process_input = []
+        t.undo()
+
+        assert 0 == len(target.tags)
+        assert 4 == len(data_vol.tags)
+        assert 'x' == data_vol.tags['ceph.journal_uuid']
+
+        assert 2 == len(db_vol.tags)
+        assert 'db' == db_vol.tags['ceph.type']
+
+        assert 3 == len(wal_vol.tags)
+        assert 'wal' == wal_vol.tags['ceph.type']
+
+        assert 6 == len(self.mock_process_input)
+        assert 'lvchange' in self.mock_process_input[0]
+        assert '--deltag' in self.mock_process_input[0]
+        assert 'ceph.journal_uuid=z' in self.mock_process_input[0]
+        assert '/dev/VolGroup/lv1' in self.mock_process_input[0]
+
+        assert 'lvchange' in self.mock_process_input[1]
+        assert '--addtag' in self.mock_process_input[1]
+        assert 'ceph.journal_uuid=x' in self.mock_process_input[1]
+        assert '/dev/VolGroup/lv1' in self.mock_process_input[1]
+
+        assert 'lvchange' in self.mock_process_input[2]
+        assert '--deltag' in self.mock_process_input[2]
+        assert 'ceph.osd_id=0' in self.mock_process_input[2]
+        assert '/dev/VolGroup/lv2' in self.mock_process_input[2]
+
+        assert 'lvchange' in self.mock_process_input[3]
+        assert '--addtag' in self.mock_process_input[3]
+        assert 'ceph.type=db' in self.mock_process_input[3]
+        assert '/dev/VolGroup/lv2' in self.mock_process_input[3]
+
+        assert 'lvchange' in self.mock_process_input[4]
+        assert '--addtag' in self.mock_process_input[4]
+        assert 'ceph.type=wal' in self.mock_process_input[4]
+        assert '/dev/VolGroup/lv3' in self.mock_process_input[4]
+
+        assert 'lvchange' in self.mock_process_input[5]
+        assert '--deltag' in self.mock_process_input[5]
+        assert 'ceph.a=aa' in self.mock_process_input[5]
+        assert 'ceph.b=bb' in self.mock_process_input[5]
+        assert '/dev/VolGroup/lv_target' in self.mock_process_input[5]
+
+class TestNew(object):
+
+    mock_volume = None
+    def mock_get_lv_by_fullname(self, *args, **kwargs):
+        return self.mock_volume
+
+    mock_process_input = []
+    def mock_process(self, *args, **kwargs):
+        self.mock_process_input.append(args[0]);
+        return ('', '', 0)
+
+    mock_single_volumes = {}
+    def mock_get_first_lv(self, *args, **kwargs):
+        p = kwargs['filters']['lv_path']
+        return self.mock_single_volumes[p]
+
+    mock_volumes = []
+    def mock_get_lvs(self, *args, **kwargs):
+        return self.mock_volumes.pop(0)
+
+    def test_newdb_non_root(self):
+        with pytest.raises(Exception) as error:
+            migrate.NewDB(argv=[
+                '--osd-id', '1',
+                '--osd-fsid', '55BD4219-16A7-4037-BC20-0F158EFCC83D',
+                '--target', 'vgname/new_db']).main()
+        expected = 'This command needs to be executed with sudo or as root'
+        assert expected in str(error.value)
+
+    @patch('os.getuid')
+    def test_newdb_not_target_lvm(self, m_getuid, capsys):
+        m_getuid.return_value = 0
+        with pytest.raises(SystemExit) as error:
+            migrate.NewDB(argv=[
+                '--osd-id', '1',
+                '--osd-fsid', '55BD4219-16A7-4037-BC20-0F158EFCC83D',
+                '--target', 'vgname/new_db']).main()
+        stdout, stderr = capsys.readouterr()
+        expected = 'Unable to attach new volume : vgname/new_db'
+        assert expected in str(error.value)
+        expected = 'Target path vgname/new_db is not a Logical Volume'
+        assert expected in stderr
+
+
+    @patch('os.getuid')
+    def test_newdb_already_in_use(self, m_getuid, monkeypatch, capsys):
+        m_getuid.return_value = 0
+
+        self.mock_volume = api.Volume(lv_name='volume1',
+                                      lv_uuid='y',
+                                      vg_name='vg',
+                                      lv_path='/dev/VolGroup/lv1',
+                                      lv_tags='ceph.osd_id=5') # this results in set used_by_ceph
+        monkeypatch.setattr(api, 'get_lv_by_fullname', self.mock_get_lv_by_fullname)
+
+        with pytest.raises(SystemExit) as error:
+            migrate.NewDB(argv=[
+                '--osd-id', '1',
+                '--osd-fsid', '55BD4219-16A7-4037-BC20-0F158EFCC83D',
+                '--target', 'vgname/new_db']).main()
+        stdout, stderr = capsys.readouterr()
+        expected = 'Unable to attach new volume : vgname/new_db'
+        assert expected in str(error.value)
+        expected = 'Target Logical Volume is already used by ceph: vgname/new_db'
+        assert expected in stderr
+
+    @patch('os.getuid')
+    def test_newdb(self, m_getuid, monkeypatch, capsys):
+        m_getuid.return_value = 0
+
+        source_tags = \
+        'ceph.osd_id=0,ceph.type=data,ceph.osd_fsid=1234,'\
+        'ceph.wal_uuid=wal_uuid,ceph.db_device=/dbdevice'
+        source_wal_tags = \
+        'ceph.wal_uuid=uuid,ceph.wal_device=device,' \
+        'ceph.osd_id=0,ceph.type=wal'
+
+        data_vol = api.Volume(lv_name='volume1', lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        wal_vol = api.Volume(lv_name='volume3',
+                             lv_uuid='waluuid',
+                             vg_name='vg',
+                             lv_path='/dev/VolGroup/lv3',
+                             lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': data_vol,
+                                    '/dev/VolGroup/lv3': wal_vol}
+
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        self.mock_volume = api.Volume(lv_name='target_volume1', lv_uuid='y',
+                                      vg_name='vg',
+                                      lv_path='/dev/VolGroup/target_volume',
+                                      lv_tags='')
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active",
+            lambda id: False)
+
+        #find_associated_devices will call get_lvs() 4 times
+        # and it this needs results to be arranged that way
+        self.mock_volumes = []
+        self.mock_volumes.append([data_vol, wal_vol])
+        self.mock_volumes.append([data_vol])
+        self.mock_volumes.append([])
+        self.mock_volumes.append([wal_vol])
+
+        monkeypatch.setattr(migrate.api, 'get_lvs', self.mock_get_lvs)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name',
+            lambda osd_id, osd_fsid: 'ceph_cluster')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+
+        migrate.NewDB(argv=[
+            '--osd-id', '1',
+            '--osd-fsid', '55BD4219-16A7-4037-BC20-0F158EFCC83D',
+            '--target', 'vgname/new_db']).main()
+
+        n = len(self.mock_process_input)
+        assert n >= 5
+
+        assert self.mock_process_input[n - 5] == [
+            'lvchange',
+            '--deltag', 'ceph.db_device=/dbdevice',
+            '/dev/VolGroup/lv1']
+        assert self.mock_process_input[n - 4] == [
+            'lvchange',
+            '--addtag', 'ceph.db_uuid=y',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/target_volume',
+            '/dev/VolGroup/lv1']
+
+        assert self.mock_process_input[n - 3].sort() == [
+            'lvchange',
+            '--addtag', 'ceph.wal_uuid=uuid',
+            '--addtag', 'ceph.osd_id=0',
+            '--addtag', 'ceph.type=db',
+            '--addtag', 'ceph.osd_fsid=1234',
+            '--addtag', 'ceph.db_uuid=y',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/target_volume',
+            '/dev/VolGroup/target_volume'].sort()
+
+        assert self.mock_process_input[n - 2] == [
+            'lvchange',
+            '--addtag', 'ceph.db_uuid=y',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/target_volume',
+            '/dev/VolGroup/lv3']
+
+        assert self.mock_process_input[n - 1] == [
+            'ceph-bluestore-tool',
+            '--path', '/var/lib/ceph/osd/ceph_cluster-1',
+            '--dev-target', '/dev/VolGroup/target_volume',
+            '--command', 'bluefs-bdev-new-db']
+
+    @patch('os.getuid')
+    def test_newwal(self, m_getuid, monkeypatch, capsys):
+        m_getuid.return_value = 0
+
+        source_tags = \
+        'ceph.osd_id=0,ceph.type=data,ceph.osd_fsid=1234'
+
+        data_vol = api.Volume(lv_name='volume1', lv_uuid='datauuid', vg_name='vg',
+                         lv_path='/dev/VolGroup/lv1', lv_tags=source_tags)
+
+        self.mock_single_volumes = {'/dev/VolGroup/lv1': data_vol}
+
+        monkeypatch.setattr(migrate.api, 'get_first_lv', self.mock_get_first_lv)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        self.mock_volume = api.Volume(lv_name='target_volume1', lv_uuid='y', vg_name='vg',
+                                      lv_path='/dev/VolGroup/target_volume',
+                                      lv_tags='')
+        monkeypatch.setattr(api, 'get_lv_by_fullname', self.mock_get_lv_by_fullname)
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active", lambda id: False)
+
+        #find_associated_devices will call get_lvs() 4 times
+        # and it this needs results to be arranged that way
+        self.mock_volumes = []
+        self.mock_volumes.append([data_vol])
+        self.mock_volumes.append([data_vol])
+        self.mock_volumes.append([])
+        self.mock_volumes.append([])
+
+        monkeypatch.setattr(migrate.api, 'get_lvs', self.mock_get_lvs)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name', lambda osd_id, osd_fsid: 'cluster')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+
+        migrate.NewWAL(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '55BD4219-16A7-4037-BC20-0F158EFCC83D',
+            '--target', 'vgname/new_wal']).main()
+
+        n = len(self.mock_process_input)
+        assert n >= 3
+
+        assert self.mock_process_input[n - 3] == [
+            'lvchange',
+            '--addtag', 'ceph.wal_uuid=y',
+            '--addtag', 'ceph.wal_device=/dev/VolGroup/target_volume',
+            '/dev/VolGroup/lv1']
+
+        assert self.mock_process_input[n - 2].sort() == [
+            'lvchange',
+            '--addtag', 'ceph.osd_id=0',
+            '--addtag', 'ceph.type=wal',
+            '--addtag', 'ceph.osd_fsid=1234',
+            '--addtag', 'ceph.wal_uuid=y',
+            '--addtag', 'ceph.wal_device=/dev/VolGroup/target_volume',
+            '/dev/VolGroup/target_volume'].sort()
+
+        assert self.mock_process_input[n - 1] == [
+            'ceph-bluestore-tool',
+            '--path', '/var/lib/ceph/osd/cluster-2',
+            '--dev-target', '/dev/VolGroup/target_volume',
+            '--command', 'bluefs-bdev-new-wal']
+
+class TestMigrate(object):
+
+    mock_volume = None
+    def mock_get_lv_by_fullname(self, *args, **kwargs):
+        return self.mock_volume
+
+    mock_process_input = []
+    def mock_process(self, *args, **kwargs):
+        self.mock_process_input.append(args[0]);
+        return ('', '', 0)
+
+    mock_single_volumes = {}
+    def mock_get_first_lv(self, *args, **kwargs):
+        p = kwargs['filters']['lv_path']
+        return self.mock_single_volumes[p]
+
+    mock_volumes = []
+    def mock_get_lvs(self, *args, **kwargs):
+        return self.mock_volumes.pop(0)
+
+    def test_get_source_devices(self, monkeypatch):
+
+        source_tags = 'ceph.osd_id=2,ceph.type=data,ceph.osd_fsid=1234'
+        source_db_tags = 'ceph.osd_id=2,ceph.type=db,ceph.osd_fsid=1234'
+        source_wal_tags = 'ceph.osd_id=2,ceph.type=wal,ceph.osd_fsid=1234'
+
+        data_vol = api.Volume(lv_name='volume1',
+                              lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2',
+                            lv_uuid='datauuid',
+                            vg_name='vg',
+                            lv_path='/dev/VolGroup/lv2',
+                            lv_tags=source_db_tags)
+
+        wal_vol = api.Volume(lv_name='volume3',
+                             lv_uuid='datauuid',
+                             vg_name='vg',
+                             lv_path='/dev/VolGroup/lv3',
+                             lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {
+            '/dev/VolGroup/lv1': data_vol,
+            '/dev/VolGroup/lv2': db_vol,
+            '/dev/VolGroup/lv3': wal_vol,
+        }
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_volume = api.Volume(lv_name='volume2', lv_uuid='y',
+                                      vg_name='vg',
+                                      lv_path='/dev/VolGroup/lv2',
+                                      lv_tags='ceph.osd_id=5,ceph.osd_type=db')
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        devices = []
+        devices.append([Device('/dev/VolGroup/lv1'), 'block'])
+        devices.append([Device('/dev/VolGroup/lv2'), 'db'])
+        devices.append([Device('/dev/VolGroup/lv3'), 'wal'])
+
+        monkeypatch.setattr(migrate, 'find_associated_devices',
+            lambda osd_id, osd_fsid: devices)
+
+
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '55BD4219-16A7-4037-BC20-0F158EFCC83D',
+            '--from', 'data', 'wal',
+            '--target', 'vgname/new_wal'])
+        m.parse_argv()
+        res_devices = m.get_source_devices(devices)
+
+        assert 2 == len(res_devices)
+        assert devices[0] == res_devices[0]
+        assert devices[2] == res_devices[1]
+
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '55BD4219-16A7-4037-BC20-0F158EFCC83D',
+            '--from', 'db', 'wal', 'data',
+            '--target', 'vgname/new_wal'])
+        m.parse_argv()
+        res_devices = m.get_source_devices(devices)
+
+        assert 3 == len(res_devices)
+        assert devices[0] == res_devices[0]
+        assert devices[1] == res_devices[1]
+        assert devices[2] == res_devices[2]
+
+
+    @patch('os.getuid')
+    def test_migrate_data_db_to_new_db(self, m_getuid, monkeypatch):
+        m_getuid.return_value = 0
+
+        source_tags = 'ceph.osd_id=2,ceph.type=data,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+        source_db_tags = 'ceph.osd_id=2,ceph.type=db,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+
+        data_vol = api.Volume(lv_name='volume1',
+                              lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2',
+                            lv_uuid='dbuuid',
+                            vg_name='vg',
+                            lv_path='/dev/VolGroup/lv2',
+                            lv_tags=source_db_tags)
+
+        self.mock_single_volumes = {
+            '/dev/VolGroup/lv1': data_vol,
+            '/dev/VolGroup/lv2': db_vol,
+        }
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_volume = api.Volume(lv_name='volume2_new', lv_uuid='new-db-uuid',
+                                      vg_name='vg',
+                                      lv_path='/dev/VolGroup/lv2_new',
+                                      lv_tags='')
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        devices = []
+        devices.append([Device('/dev/VolGroup/lv1'), 'block'])
+        devices.append([Device('/dev/VolGroup/lv2'), 'db'])
+
+        monkeypatch.setattr(migrate, 'find_associated_devices',
+            lambda osd_id, osd_fsid: devices)
+
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active",
+            lambda id: False)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name',
+            lambda osd_id, osd_fsid: 'ceph')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '1234',
+            '--from', 'data', 'db', 'wal',
+            '--target', 'vgname/new_wal'])
+        m.main()
+
+        n = len(self.mock_process_input)
+        assert n >= 5
+
+        assert self. mock_process_input[n-5] == [
+            'lvchange',
+            '--deltag', 'ceph.osd_id=2',
+            '--deltag', 'ceph.type=db',
+            '--deltag', 'ceph.osd_fsid=1234',
+            '--deltag', 'ceph.cluster_name=ceph',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '/dev/VolGroup/lv2']
+
+        assert self. mock_process_input[n-4] == [
+            'lvchange',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '/dev/VolGroup/lv1']
+
+        assert self. mock_process_input[n-3] == [
+            'lvchange',
+            '--addtag', 'ceph.db_uuid=new-db-uuid',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/lv2_new',
+            '/dev/VolGroup/lv1']
+
+        assert self. mock_process_input[n-2] == [
+            'lvchange',
+            '--addtag', 'ceph.osd_id=2',
+            '--addtag', 'ceph.type=db',
+            '--addtag', 'ceph.osd_fsid=1234',
+            '--addtag', 'ceph.cluster_name=ceph',
+            '--addtag', 'ceph.db_uuid=new-db-uuid',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/lv2_new',
+            '/dev/VolGroup/lv2_new']
+
+        assert self. mock_process_input[n-1] == [
+            'ceph-bluestore-tool',
+            '--path', '/var/lib/ceph/osd/ceph-2',
+            '--dev-target', '/dev/VolGroup/lv2_new',
+            '--command', 'bluefs-bdev-migrate',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block.db']
+
+    @patch('os.getuid')
+    def test_migrate_data_db_to_new_db_skip_wal(self, m_getuid, monkeypatch):
+        m_getuid.return_value = 0
+
+        source_tags = 'ceph.osd_id=2,ceph.type=data,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+        source_db_tags = 'ceph.osd_id=2,ceph.type=db,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+        source_wal_tags = 'ceph.osd_id=2,ceph.type=wal,ceph.osd_fsid=1234' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+
+        data_vol = api.Volume(lv_name='volume1',
+                              lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2',
+                            lv_uuid='dbuuid',
+                            vg_name='vg',
+                            lv_path='/dev/VolGroup/lv2',
+                            lv_tags=source_db_tags)
+
+        wal_vol = api.Volume(lv_name='volume3',
+                             lv_uuid='datauuid',
+                             vg_name='vg',
+                             lv_path='/dev/VolGroup/lv3',
+                             lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {
+            '/dev/VolGroup/lv1': data_vol,
+            '/dev/VolGroup/lv2': db_vol,
+            '/dev/VolGroup/lv3': wal_vol,
+        }
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_volume = api.Volume(lv_name='volume2_new', lv_uuid='new-db-uuid',
+                                      vg_name='vg',
+                                      lv_path='/dev/VolGroup/lv2_new',
+                                      lv_tags='')
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        devices = []
+        devices.append([Device('/dev/VolGroup/lv1'), 'block'])
+        devices.append([Device('/dev/VolGroup/lv2'), 'db'])
+        devices.append([Device('/dev/VolGroup/lv3'), 'wal'])
+
+        monkeypatch.setattr(migrate, 'find_associated_devices',
+            lambda osd_id, osd_fsid: devices)
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active",
+            lambda id: False)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name',
+            lambda osd_id, osd_fsid: 'ceph')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '1234',
+            '--from', 'data', 'db',
+            '--target', 'vgname/new_wal'])
+        m.main()
+
+        n = len(self.mock_process_input)
+        assert n >= 7
+
+        assert self. mock_process_input[n-7] == [
+            'lvchange',
+            '--deltag', 'ceph.osd_id=2',
+            '--deltag', 'ceph.type=db',
+            '--deltag', 'ceph.osd_fsid=1234',
+            '--deltag', 'ceph.cluster_name=ceph',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '/dev/VolGroup/lv2']
+
+        assert self. mock_process_input[n-6] == [
+            'lvchange',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '/dev/VolGroup/lv1']
+
+        assert self. mock_process_input[n-5] == [
+            'lvchange',
+            '--addtag', 'ceph.db_uuid=new-db-uuid',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/lv2_new',
+            '/dev/VolGroup/lv1']
+
+        assert self. mock_process_input[n-4] == [
+            'lvchange',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '/dev/VolGroup/lv3']
+
+        assert self. mock_process_input[n-3] == [
+            'lvchange',
+            '--addtag', 'ceph.db_uuid=new-db-uuid',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/lv2_new',
+            '/dev/VolGroup/lv3']
+
+        assert self. mock_process_input[n-2] == [
+            'lvchange',
+            '--addtag', 'ceph.osd_id=2',
+            '--addtag', 'ceph.type=db',
+            '--addtag', 'ceph.osd_fsid=1234',
+            '--addtag', 'ceph.cluster_name=ceph',
+            '--addtag', 'ceph.db_uuid=new-db-uuid',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/lv2_new',
+            '/dev/VolGroup/lv2_new']
+
+        assert self. mock_process_input[n-1] == [
+            'ceph-bluestore-tool',
+            '--path', '/var/lib/ceph/osd/ceph-2',
+            '--dev-target', '/dev/VolGroup/lv2_new',
+            '--command', 'bluefs-bdev-migrate',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block.db']
+
+    @patch('os.getuid')
+    def test_migrate_data_db_wal_to_new_db(self, m_getuid, monkeypatch):
+        m_getuid.return_value = 0
+
+        source_tags = 'ceph.osd_id=2,ceph.type=data,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+        source_db_tags = 'ceph.osd_id=2,ceph.type=db,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+        source_wal_tags = 'ceph.osd_id=0,ceph.type=wal,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+
+        data_vol = api.Volume(lv_name='volume1',
+                              lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2',
+                            lv_uuid='dbuuid',
+                            vg_name='vg',
+                            lv_path='/dev/VolGroup/lv2',
+                            lv_tags=source_db_tags)
+
+        wal_vol = api.Volume(lv_name='volume3',
+                             lv_uuid='waluuid',
+                             vg_name='vg',
+                             lv_path='/dev/VolGroup/lv3',
+                             lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {
+            '/dev/VolGroup/lv1': data_vol,
+            '/dev/VolGroup/lv2': db_vol,
+            '/dev/VolGroup/lv3': wal_vol,
+        }
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_volume = api.Volume(lv_name='volume2_new', lv_uuid='new-db-uuid',
+                                      vg_name='vg',
+                                      lv_path='/dev/VolGroup/lv2_new',
+                                      lv_tags='')
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        devices = []
+        devices.append([Device('/dev/VolGroup/lv1'), 'block'])
+        devices.append([Device('/dev/VolGroup/lv2'), 'db'])
+        devices.append([Device('/dev/VolGroup/lv3'), 'wal'])
+
+        monkeypatch.setattr(migrate, 'find_associated_devices',
+            lambda osd_id, osd_fsid: devices)
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active",
+            lambda id: False)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name',
+            lambda osd_id, osd_fsid: 'ceph')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '1234',
+            '--from', 'data', 'db', 'wal',
+            '--target', 'vgname/new_wal'])
+        m.main()
+
+        n = len(self.mock_process_input)
+        assert n >= 6
+
+        assert self. mock_process_input[n-6] == [
+            'lvchange',
+            '--deltag', 'ceph.osd_id=2',
+            '--deltag', 'ceph.type=db',
+            '--deltag', 'ceph.osd_fsid=1234',
+            '--deltag', 'ceph.cluster_name=ceph',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '/dev/VolGroup/lv2']
+
+        assert self. mock_process_input[n-5] == [
+            'lvchange',
+            '--deltag', 'ceph.osd_id=0',
+            '--deltag', 'ceph.type=wal',
+            '--deltag', 'ceph.osd_fsid=1234',
+            '--deltag', 'ceph.cluster_name=ceph',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '--deltag', 'ceph.wal_uuid=waluuid',
+            '--deltag', 'ceph.wal_device=wal_dev',
+            '/dev/VolGroup/lv3']
+
+        assert self. mock_process_input[n-4] == [
+            'lvchange',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '--deltag', 'ceph.wal_uuid=waluuid',
+            '--deltag', 'ceph.wal_device=wal_dev',
+            '/dev/VolGroup/lv1']
+
+        assert self. mock_process_input[n-3] == [
+            'lvchange',
+            '--addtag', 'ceph.db_uuid=new-db-uuid',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/lv2_new',
+            '/dev/VolGroup/lv1']
+
+        assert self. mock_process_input[n-2] == [
+            'lvchange',
+            '--addtag', 'ceph.osd_id=2',
+            '--addtag', 'ceph.type=db',
+            '--addtag', 'ceph.osd_fsid=1234',
+            '--addtag', 'ceph.cluster_name=ceph',
+            '--addtag', 'ceph.db_uuid=new-db-uuid',
+            '--addtag', 'ceph.db_device=/dev/VolGroup/lv2_new',
+            '/dev/VolGroup/lv2_new']
+
+        assert self. mock_process_input[n-1] == [
+            'ceph-bluestore-tool',
+            '--path', '/var/lib/ceph/osd/ceph-2',
+            '--dev-target', '/dev/VolGroup/lv2_new',
+            '--command', 'bluefs-bdev-migrate',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block.db',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block.wal']
+
+    @patch('os.getuid')
+    def test_dont_migrate_data_db_wal_to_new_data(self,
+                                                  m_getuid,
+                                                  monkeypatch,
+                                                  capsys):
+        m_getuid.return_value = 0
+
+        source_tags = 'ceph.osd_id=2,ceph.type=data,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+        source_db_tags = 'ceph.osd_id=2,ceph.type=db,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+
+        data_vol = api.Volume(lv_name='volume1',
+                              lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2',
+                            lv_uuid='dbuuid',
+                            vg_name='vg',
+                            lv_path='/dev/VolGroup/lv2',
+                            lv_tags=source_db_tags)
+
+        self.mock_single_volumes = {
+            '/dev/VolGroup/lv1': data_vol,
+            '/dev/VolGroup/lv2': db_vol,
+        }
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_volume = api.Volume(lv_name='volume2_new', lv_uuid='new-db-uuid',
+                                      vg_name='vg',
+                                      lv_path='/dev/VolGroup/lv2_new',
+                                      lv_tags='')
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        devices = []
+        devices.append([Device('/dev/VolGroup/lv1'), 'block'])
+        devices.append([Device('/dev/VolGroup/lv2'), 'db'])
+
+        monkeypatch.setattr(migrate, 'find_associated_devices',
+            lambda osd_id, osd_fsid: devices)
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active",
+            lambda id: False)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name',
+            lambda osd_id, osd_fsid: 'ceph')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '1234',
+            '--from', 'data',
+            '--target', 'vgname/new_data'])
+
+        with pytest.raises(SystemExit) as error:
+            m.main()
+        stdout, stderr = capsys.readouterr()
+        expected = 'Unable to migrate to : vgname/new_data'
+        assert expected in str(error.value)
+        expected = 'Unable to determine new volume type,'
+        ' please use new-db or new-wal command before.'
+        assert expected in stderr
+
+    @patch('os.getuid')
+    def test_dont_migrate_db_to_wal(self,
+                                    m_getuid,
+                                    monkeypatch,
+                                    capsys):
+        m_getuid.return_value = 0
+
+        source_tags = 'ceph.osd_id=2,ceph.type=data,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+        source_db_tags = 'ceph.osd_id=2,ceph.type=db,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+        source_wal_tags = 'ceph.osd_id=2,ceph.type=wal,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+
+        data_vol = api.Volume(lv_name='volume1',
+                              lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2',
+                            lv_uuid='dbuuid',
+                            vg_name='vg',
+                            lv_path='/dev/VolGroup/lv2',
+                            lv_tags=source_db_tags)
+
+        wal_vol = api.Volume(lv_name='volume3',
+                             lv_uuid='waluuid',
+                             vg_name='vg',
+                             lv_path='/dev/VolGroup/lv3',
+                             lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {
+            '/dev/VolGroup/lv1': data_vol,
+            '/dev/VolGroup/lv2': db_vol,
+            '/dev/VolGroup/lv3': wal_vol,
+        }
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_volume = wal_vol
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        devices = []
+        devices.append([Device('/dev/VolGroup/lv1'), 'block'])
+        devices.append([Device('/dev/VolGroup/lv2'), 'db'])
+        devices.append([Device('/dev/VolGroup/lv3'), 'wal'])
+
+        monkeypatch.setattr(migrate, 'find_associated_devices',
+            lambda osd_id, osd_fsid: devices)
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active",
+            lambda id: False)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name',
+            lambda osd_id, osd_fsid: 'ceph')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '1234',
+            '--from', 'db',
+            '--target', 'vgname/wal'])
+
+        with pytest.raises(SystemExit) as error:
+            m.main()
+        stdout, stderr = capsys.readouterr()
+        expected = 'Unable to migrate to : vgname/wal'
+        assert expected in str(error.value)
+        expected = 'Migrate to WAL is not supported'
+        assert expected in stderr
+
+    @patch('os.getuid')
+    def test_migrate_data_db_to_db(self,
+                                    m_getuid,
+                                    monkeypatch,
+                                    capsys):
+        m_getuid.return_value = 0
+
+        source_tags = 'ceph.osd_id=2,ceph.type=data,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+        source_db_tags = 'ceph.osd_id=2,ceph.type=db,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev'
+        source_wal_tags = 'ceph.osd_id=2,ceph.type=wal,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+
+        data_vol = api.Volume(lv_name='volume1',
+                              lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2',
+                            lv_uuid='dbuuid',
+                            vg_name='vg',
+                            lv_path='/dev/VolGroup/lv2',
+                            lv_tags=source_db_tags)
+
+        wal_vol = api.Volume(lv_name='volume3',
+                             lv_uuid='waluuid',
+                             vg_name='vg',
+                             lv_path='/dev/VolGroup/lv3',
+                             lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {
+            '/dev/VolGroup/lv1': data_vol,
+            '/dev/VolGroup/lv2': db_vol,
+            '/dev/VolGroup/lv3': wal_vol,
+        }
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_volume = db_vol
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        devices = []
+        devices.append([Device('/dev/VolGroup/lv1'), 'block'])
+        devices.append([Device('/dev/VolGroup/lv2'), 'db'])
+        devices.append([Device('/dev/VolGroup/lv3'), 'wal'])
+
+        monkeypatch.setattr(migrate, 'find_associated_devices',
+            lambda osd_id, osd_fsid: devices)
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active",
+            lambda id: False)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name',
+            lambda osd_id, osd_fsid: 'ceph')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '1234',
+            '--from', 'db', 'data',
+            '--target', 'vgname/db'])
+
+        m.main()
+
+        n = len(self.mock_process_input)
+        assert n >= 1
+        for s in self.mock_process_input:
+            print(s)
+
+        assert self. mock_process_input[n-1] == [
+            'ceph-bluestore-tool',
+            '--path', '/var/lib/ceph/osd/ceph-2',
+            '--dev-target', '/var/lib/ceph/osd/ceph-2/block.db',
+            '--command', 'bluefs-bdev-migrate',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block']
+
+    @patch('os.getuid')
+    def test_migrate_data_wal_to_db(self,
+                                    m_getuid,
+                                    monkeypatch,
+                                    capsys):
+        m_getuid.return_value = 0
+
+        source_tags = 'ceph.osd_id=2,ceph.type=data,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+        source_db_tags = 'ceph.osd_id=2,ceph.type=db,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+        source_wal_tags = 'ceph.osd_id=2,ceph.type=wal,ceph.osd_fsid=1234,' \
+        'ceph.cluster_name=ceph,ceph.db_uuid=dbuuid,ceph.db_device=db_dev,' \
+        'ceph.wal_uuid=waluuid,ceph.wal_device=wal_dev'
+
+        data_vol = api.Volume(lv_name='volume1',
+                              lv_uuid='datauuid',
+                              vg_name='vg',
+                              lv_path='/dev/VolGroup/lv1',
+                              lv_tags=source_tags)
+        db_vol = api.Volume(lv_name='volume2',
+                            lv_uuid='dbuuid',
+                            vg_name='vg',
+                            lv_path='/dev/VolGroup/lv2',
+                            lv_tags=source_db_tags)
+
+        wal_vol = api.Volume(lv_name='volume3',
+                             lv_uuid='waluuid',
+                             vg_name='vg',
+                             lv_path='/dev/VolGroup/lv3',
+                             lv_tags=source_wal_tags)
+
+        self.mock_single_volumes = {
+            '/dev/VolGroup/lv1': data_vol,
+            '/dev/VolGroup/lv2': db_vol,
+            '/dev/VolGroup/lv3': wal_vol,
+        }
+        monkeypatch.setattr(migrate.api, 'get_first_lv',
+            self.mock_get_first_lv)
+
+        self.mock_volume = db_vol
+        monkeypatch.setattr(api, 'get_lv_by_fullname',
+            self.mock_get_lv_by_fullname)
+
+        self.mock_process_input = []
+        monkeypatch.setattr(process, 'call', self.mock_process)
+
+        devices = []
+        devices.append([Device('/dev/VolGroup/lv1'), 'block'])
+        devices.append([Device('/dev/VolGroup/lv2'), 'db'])
+        devices.append([Device('/dev/VolGroup/lv3'), 'wal'])
+
+        monkeypatch.setattr(migrate, 'find_associated_devices',
+            lambda osd_id, osd_fsid: devices)
+
+        monkeypatch.setattr("ceph_volume.systemd.systemctl.osd_is_active",
+            lambda id: False)
+
+        monkeypatch.setattr(migrate, 'get_cluster_name',
+            lambda osd_id, osd_fsid: 'ceph')
+        monkeypatch.setattr(system, 'chown', lambda path: 0)
+        m = migrate.Migrate(argv=[
+            '--osd-id', '2',
+            '--osd-fsid', '1234',
+            '--from', 'db', 'data', 'wal',
+            '--target', 'vgname/db'])
+
+        m.main()
+
+        n = len(self.mock_process_input)
+        assert n >= 1
+        for s in self.mock_process_input:
+            print(s)
+
+        assert self. mock_process_input[n-4] == [
+            'lvchange',
+            '--deltag', 'ceph.osd_id=2',
+            '--deltag', 'ceph.type=wal',
+            '--deltag', 'ceph.osd_fsid=1234',
+            '--deltag', 'ceph.cluster_name=ceph',
+            '--deltag', 'ceph.db_uuid=dbuuid',
+            '--deltag', 'ceph.db_device=db_dev',
+            '--deltag', 'ceph.wal_uuid=waluuid',
+            '--deltag', 'ceph.wal_device=wal_dev',
+            '/dev/VolGroup/lv3']
+        assert self. mock_process_input[n-3] == [
+            'lvchange',
+            '--deltag', 'ceph.wal_uuid=waluuid',
+            '--deltag', 'ceph.wal_device=wal_dev',
+            '/dev/VolGroup/lv1']
+        assert self. mock_process_input[n-2] == [
+            'lvchange',
+            '--deltag', 'ceph.wal_uuid=waluuid',
+            '--deltag', 'ceph.wal_device=wal_dev',
+            '/dev/VolGroup/lv2']
+        assert self. mock_process_input[n-1] == [
+            'ceph-bluestore-tool',
+            '--path', '/var/lib/ceph/osd/ceph-2',
+            '--dev-target', '/var/lib/ceph/osd/ceph-2/block.db',
+            '--command', 'bluefs-bdev-migrate',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block',
+            '--devs-source', '/var/lib/ceph/osd/ceph-2/block.wal']
index f7969fe9bde07dbe444e7cfaf198bb59bdd9cfb1..508d1b4c6cd0211ff358c2372f694b3a18373308 100644 (file)
@@ -12,11 +12,9 @@ whitelist_externals =
     sleep
 passenv=*
 setenv=
-  ANSIBLE_SSH_ARGS = -F {changedir}/vagrant_ssh_config
-  ANSIBLE_ACTION_PLUGINS = {envdir}/tmp/ceph-ansible/plugins/actions
+  ANSIBLE_CONFIG = {envdir}/tmp/ceph-ansible/ansible.cfg
+  ANSIBLE_SSH_ARGS = -F {changedir}/vagrant_ssh_config -o ControlMaster=auto -o ControlPersist=600s -o PreferredAuthentications=publickey
   ANSIBLE_STDOUT_CALLBACK = debug
-  ANSIBLE_RETRY_FILES_ENABLED = False
-  ANSIBLE_SSH_RETRIES = 5
   VAGRANT_CWD = {changedir}
   CEPH_VOLUME_DEBUG = 1
   DEBIAN_FRONTEND=noninteractive
@@ -53,7 +51,7 @@ commands=
   ansible-playbook -vv -i {changedir}/hosts {envdir}/tmp/ceph-ansible/tests/functional/setup.yml
 
   # test cluster state using testinfra
-  py.test -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
+  py.test --reruns 5 --reruns-delay 10 -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
 
   # reboot all vms - attempt
   bash {toxinidir}/../scripts/vagrant_reload.sh {env:VAGRANT_UP_FLAGS:"--no-provision"} {posargs:--provider=virtualbox}
@@ -62,13 +60,13 @@ commands=
   sleep 30
 
   # retest to ensure cluster came back up correctly after rebooting
-  py.test -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
+  py.test --reruns 5 --reruns-delay 10 -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
 
   # destroy an OSD, zap it's device and recreate it using it's ID
   ansible-playbook -vv -i {changedir}/hosts {changedir}/test.yml
 
   # retest to ensure cluster came back up correctly
-  py.test -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
+  py.test --reruns 5 --reruns-delay 10 -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
 
   # test zap OSDs by ID
   ansible-playbook -vv -i {changedir}/hosts {changedir}/test_zap.yml
index 2b63875bf438d0969dd3c90015a065db617dbcb2..bec30e6d7cb4f6ec92333cbcf424960ef17bcf33 100644 (file)
@@ -12,11 +12,9 @@ whitelist_externals =
     sleep
 passenv=*
 setenv=
-  ANSIBLE_SSH_ARGS = -F {changedir}/vagrant_ssh_config
-  ANSIBLE_ACTION_PLUGINS = {envdir}/tmp/ceph-ansible/plugins/actions
+  ANSIBLE_CONFIG = {envdir}/tmp/ceph-ansible/ansible.cfg
+  ANSIBLE_SSH_ARGS = -F {changedir}/vagrant_ssh_config -o ControlMaster=auto -o ControlPersist=600s -o PreferredAuthentications=publickey
   ANSIBLE_STDOUT_CALLBACK = debug
-  ANSIBLE_RETRY_FILES_ENABLED = False
-  ANSIBLE_SSH_RETRIES = 5
   VAGRANT_CWD = {changedir}
   CEPH_VOLUME_DEBUG = 1
   DEBIAN_FRONTEND=noninteractive
@@ -53,7 +51,7 @@ commands=
   ansible-playbook -vv -i {changedir}/hosts {envdir}/tmp/ceph-ansible/tests/functional/setup.yml
 
   # test cluster state using testinfra
-  py.test -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
+  py.test --reruns 5 --reruns-delay 10 -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
 
   # reboot all vms - attempt
   bash {toxinidir}/../scripts/vagrant_reload.sh {env:VAGRANT_UP_FLAGS:"--no-provision"} {posargs:--provider=virtualbox}
@@ -62,12 +60,12 @@ commands=
   sleep 30
 
   # retest to ensure cluster came back up correctly after rebooting
-  py.test -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
+  py.test --reruns 5 --reruns-delay 10 -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
 
   # destroy an OSD, zap it's device and recreate it using it's ID
   ansible-playbook -vv -i {changedir}/hosts {changedir}/test.yml
 
   # retest to ensure cluster came back up correctly
-  py.test -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
+  py.test --reruns 5 --reruns-delay 10 -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
 
   vagrant destroy {env:VAGRANT_DESTROY_FLAGS:"--force"}
index 0c1d13f8f1a2f8116d00e2a16043b80a9e354454..e5185e3fcdfc7d85ce4abfe0b0fe2da323a0494f 100644 (file)
@@ -75,8 +75,8 @@
     - name: install required packages for fedora > 23
       raw: sudo dnf -y install python2-dnf libselinux-python ntp
       when:
-        - ansible_distribution == 'Fedora'
-        - ansible_distribution_major_version|int >= 23
+        - ansible_facts['distribution'] == 'Fedora'
+        - ansible_facts['distribution_major_version']|int >= 23
 
     - name: check if it is atomic host
       stat:
         dest: "/usr/lib/python3.6/site-packages"
         use_ssh_args: true
       when:
-        - ansible_os_family == "RedHat"
+        - ansible_facts['os_family'] == "RedHat"
         - inventory_hostname in groups.get(osd_group_name, [])
 
     - name: rsync ceph-volume to test nodes on ubuntu
         dest: "/usr/lib/python2.7/dist-packages"
         use_ssh_args: true
       when:
-        - ansible_os_family == "Debian"
+        - ansible_facts['os_family'] == "Debian"
         - inventory_hostname in groups.get(osd_group_name, [])
 
     - name: run ceph-config role
index c3b7d3648a1d8eb2f65104cfdcce8a42cd442305..1fdfe26a8768256a17bff6b570e17e0d96faa06d 100644 (file)
@@ -12,11 +12,9 @@ whitelist_externals =
     cp
 passenv=*
 setenv=
-  ANSIBLE_SSH_ARGS = -F {changedir}/vagrant_ssh_config
-  ANSIBLE_ACTION_PLUGINS = {envdir}/tmp/ceph-ansible/plugins/actions
+  ANSIBLE_CONFIG = {envdir}/tmp/ceph-ansible/ansible.cfg
+  ANSIBLE_SSH_ARGS = -F {changedir}/vagrant_ssh_config -o ControlMaster=auto -o ControlPersist=600s -o PreferredAuthentications=publickey
   ANSIBLE_STDOUT_CALLBACK = debug
-  ANSIBLE_RETRY_FILES_ENABLED = False
-  ANSIBLE_SSH_RETRIES = 5
   VAGRANT_CWD = {changedir}
   CEPH_VOLUME_DEBUG = 1
   DEBIAN_FRONTEND=noninteractive
@@ -43,7 +41,7 @@ commands=
   ansible-playbook -vv -i {changedir}/hosts {envdir}/tmp/ceph-ansible/tests/functional/setup.yml
 
   # test cluster state testinfra
-  py.test -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
+  py.test --reruns 5 --reruns-delay 10 -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
 
   # make ceph-volume simple take over all the OSDs that got deployed, disabling ceph-disk
   ansible-playbook -vv -i {changedir}/hosts {changedir}/test.yml
@@ -55,6 +53,6 @@ commands=
   sleep 120
 
   # retest to ensure cluster came back up correctly after rebooting
-  py.test -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
+  py.test --reruns 5 --reruns-delay 10 -n 4 --sudo -v --connection=ansible --ssh-config={changedir}/vagrant_ssh_config --ansible-inventory={changedir}/hosts {toxinidir}/../tests
 
   vagrant destroy {env:VAGRANT_DESTROY_FLAGS:"--force"}
index 4998623373fdfc8b49f341fabceaf74566b99f50..d0d6545d3fab1c14b9ff20089aef104a5708165f 100644 (file)
@@ -260,6 +260,7 @@ def get_mounts(devices=False, paths=False, realpath=False):
 
     - tmpfs
     - devtmpfs
+    - /dev/root
 
     If ``devices`` is set to ``True`` the mapping will be a device-to-path(s),
     if ``paths`` is set to ``True`` then the mapping will be
@@ -270,7 +271,7 @@ def get_mounts(devices=False, paths=False, realpath=False):
     """
     devices_mounted = {}
     paths_mounted = {}
-    do_not_skip = ['tmpfs', 'devtmpfs']
+    do_not_skip = ['tmpfs', 'devtmpfs', '/dev/root']
     default_to_devices = devices is False and paths is False
 
     with open(PROCDIR + '/mounts', 'rb') as mounts:
index 25622d4f2e365469e4aef5f034bef0230c784407..3a289092913a3273dc194feb1c3c73df2558e10a 100755 (executable)
@@ -386,8 +386,11 @@ daemonperf {type.id | path} list|ls [stat-pats] [priority]
 
 def do_extended_help(parser, args, target, partial):
     def help_for_sigs(sigs, partial=None):
-        sys.stdout.write(format_help(parse_json_funcsigs(sigs, 'cli'),
-                         partial=partial))
+        try:
+            sys.stdout.write(format_help(parse_json_funcsigs(sigs, 'cli'),
+                             partial=partial))
+        except BrokenPipeError:
+            pass
 
     def help_for_target(target, partial=None):
         # wait for osdmap because we know this is sent after the mgrmap
index 3463110d1ded3083e64dc3fa616a400c6d039fa6..4ae05567a35d73c523025bdfdd9b5a1d041e6b30 100644 (file)
@@ -109,6 +109,14 @@ int obtain_monmap(MonitorDBStore &store, bufferlist &bl)
     }
   }
 
+  if (store.exists("mon_sync", "temp_newer_monmap")) {
+    dout(10) << __func__ << " found temp_newer_monmap" << dendl;
+    int err = store.get("mon_sync", "temp_newer_monmap", bl);
+    ceph_assert(err == 0);
+    ceph_assert(bl.length() > 0);
+    return 0;
+  }
+
   if (store.exists("mkfs", "monmap")) {
     dout(10) << __func__ << " found mkfs monmap" << dendl;
     int err = store.get("mkfs", "monmap", bl);
index 6eb2c2b5b169995e758e2b2449778ce75787965f..9b7348b8bc29c5881c05511b478ebcca728818a5 100755 (executable)
@@ -50,6 +50,7 @@ import platform
 import pwd
 import random
 import select
+import shlex
 import shutil
 import socket
 import string
@@ -712,6 +713,9 @@ def get_supported_daemons():
 
 ##################################
 
+class PortOccupiedError(Error):
+    pass
+
 
 def attempt_bind(s, address, port):
     # type: (socket.socket, str, int) -> None
@@ -719,12 +723,12 @@ def attempt_bind(s, address, port):
         s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
         s.bind((address, port))
     except (socket.error, OSError) as e:  # py2 and py3
-        msg = 'Cannot bind to IP %s port %d: %s' % (address, port, e)
-        logger.warning(msg)
         if e.errno == errno.EADDRINUSE:
-            raise OSError(msg)
-        elif e.errno == errno.EADDRNOTAVAIL:
-            pass
+            msg = 'Cannot bind to IP %s port %d: %s' % (address, port, e)
+            logger.warning(msg)
+            raise PortOccupiedError(msg)
+        else:
+            raise e
     finally:
         s.close()
 
@@ -733,16 +737,26 @@ def port_in_use(port_num):
     # type: (int) -> bool
     """Detect whether a port is in use on the local machine - IPv4 and IPv6"""
     logger.info('Verifying port %d ...' % port_num)
-    try:
-        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
-        attempt_bind(s, '0.0.0.0', port_num)
-
-        s = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)
-        attempt_bind(s, '::', port_num)
-    except OSError:
-        return True
-    else:
+    def _port_in_use(af, address):
+        # type: (socket.AddressFamily, str) -> bool
+        try:
+            s = socket.socket(af, socket.SOCK_STREAM)
+            attempt_bind(s, address, port_num)
+        except PortOccupiedError:
+            return True
+        except OSError as e:
+            if e.errno in (errno.EAFNOSUPPORT, errno.EADDRNOTAVAIL):
+                # Ignore EAFNOSUPPORT and EADDRNOTAVAIL as two interfaces are
+                # being tested here and one might be intentionally be disabled.
+                # In that case no error should be raised.
+                return False
+            else:
+                raise e
         return False
+    return any(_port_in_use(af, address) for af, address in (
+        (socket.AF_INET, '0.0.0.0'),
+        (socket.AF_INET6, '::')
+    ))
 
 
 def check_ip_port(ip, port):
@@ -754,10 +768,7 @@ def check_ip_port(ip, port):
             ip = unwrap_ipv6(ip)
         else:
             s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
-        try:
-            attempt_bind(s, ip, port)
-        except OSError as e:
-            raise Error(e)
+        attempt_bind(s, ip, port)
 
 ##################################
 
@@ -1765,7 +1776,7 @@ def get_daemon_args(fsid, daemon_type, daemon_id):
             '--setgroup', 'ceph',
             '--default-log-to-file=false',
             '--default-log-to-stderr=true',
-            '--default-log-stderr-prefix="debug "',
+            '--default-log-stderr-prefix=debug ',
         ]
         if daemon_type == 'mon':
             r += [
@@ -1814,7 +1825,6 @@ def create_daemon_dirs(fsid, daemon_type, daemon_id, uid, gid,
 
     if daemon_type in Monitoring.components.keys():
         config_json: Dict[str, Any] = get_parm(args.config_json)
-        required_files = Monitoring.components[daemon_type].get('config-json-files', list())
 
         # Set up directories specific to the monitoring component
         config_dir = ''
@@ -1838,10 +1848,14 @@ def create_daemon_dirs(fsid, daemon_type, daemon_id, uid, gid,
             makedirs(os.path.join(data_dir_root, config_dir, 'data'), uid, gid, 0o755)
 
         # populate the config directory for the component from the config-json
-        for fname in required_files:
-            if 'files' in config_json:  # type: ignore
+        if 'files' in config_json:
+            for fname in config_json['files']:
                 content = dict_get_join(config_json['files'], fname)
-                with open(os.path.join(data_dir_root, config_dir, fname), 'w') as f:
+                if os.path.isabs(fname):
+                    fpath = os.path.join(data_dir_root, fname.lstrip(os.path.sep))
+                else:
+                    fpath = os.path.join(data_dir_root, config_dir, fname)
+                with open(fpath, 'w', encoding='utf-8') as f:
                     os.fchown(f.fileno(), uid, gid)
                     os.fchmod(f.fileno(), 0o600)
                     f.write(content)
@@ -2230,10 +2244,15 @@ def _write_container_cmd_to_bash(file_obj, container, comment=None, background=F
     file_obj.write('! '+ ' '.join(container.rm_cmd()) + ' 2> /dev/null\n')
     # Sometimes, `podman rm` doesn't find the container. Then you'll have to add `--storage`
     if 'podman' in container_path:
-        file_obj.write('! '+ ' '.join(container.rm_cmd(storage=True)) + ' 2> /dev/null\n')
+        file_obj.write(
+            '! '
+            + ' '.join([shlex.quote(a) for a in container.rm_cmd(storage=True)])
+            + ' 2> /dev/null\n')
 
     # container run command
-    file_obj.write(' '.join(container.run_cmd()) + (' &' if background else '') + '\n')
+    file_obj.write(
+        ' '.join([shlex.quote(a) for a in container.run_cmd()])
+        + (' &' if background else '') + '\n')
 
 
 def deploy_daemon_units(fsid, uid, gid, daemon_type, daemon_id, c,
index d6e73c47463d8d4e818f3c1d7bfd67f1f1874251..194a44d2abbf16ee4416fc13caacafc107f0ebc3 100644 (file)
@@ -2,8 +2,8 @@
     "image": "docker.io/prom/alertmanager:v0.20.0",
     "ports": [9093, 9094],
     "args": [
-        "-p 9093:9093",
-        "-p 9094:9094"
+        "-p", "9093:9093",
+        "-p", "9094:9094"
     ],
     "dirs": ["etc/alertmanager"],
     "files": {
index 2df7d559aebb76c02dfcdb737f1e41ea1857f5f9..66b3ca7b39dfe1670b5b1a42d9c0e2c7a7a03170 100644 (file)
@@ -1,9 +1,9 @@
 # type: ignore
 import mock
-from mock import patch
-import os
-import sys
+from mock import patch, call
 import unittest
+import errno
+import socket
 
 import pytest
 
@@ -22,6 +22,97 @@ class TestCephAdm(object):
         r = cd.get_unit_file('9b9d7609-f4d5-4aba-94c8-effa764d96c9')
         assert 'Requires=docker.service' not in r
 
+    def test_attempt_bind(self):
+        cd.logger = mock.Mock()
+        address = None
+        port = 0
+
+        def os_error(errno):
+            _os_error = OSError()
+            _os_error.errno = errno
+            return _os_error
+
+        for side_effect, expected_exception in (
+            (os_error(errno.EADDRINUSE), cd.PortOccupiedError),
+            (os_error(errno.EAFNOSUPPORT), OSError),
+            (os_error(errno.EADDRNOTAVAIL), OSError),
+            (None, None),
+        ):
+            _socket = mock.Mock()
+            _socket.bind.side_effect = side_effect
+            try:
+                cd.attempt_bind(_socket, address, port)
+            except Exception as e:
+                assert isinstance(e, expected_exception)
+            else:
+                if expected_exception is not None:
+                    assert False, '{} should not be None'.format(expected_exception)
+
+    @mock.patch('cephadm.attempt_bind')
+    def test_port_in_use(self, attempt_bind):
+
+        assert cd.port_in_use(9100) == False
+
+        attempt_bind.side_effect = cd.PortOccupiedError('msg')
+        assert cd.port_in_use(9100) == True
+
+        os_error = OSError()
+        os_error.errno = errno.EADDRNOTAVAIL
+        attempt_bind.side_effect = os_error
+        assert cd.port_in_use(9100) == False
+
+        os_error = OSError()
+        os_error.errno = errno.EAFNOSUPPORT
+        attempt_bind.side_effect = os_error
+        assert cd.port_in_use(9100) == False
+
+    @mock.patch('socket.socket')
+    @mock.patch('cephadm.args')
+    def test_check_ip_port_success(self, args, _socket):
+        args.skip_ping_check = False
+
+        for address, address_family in (
+            ('0.0.0.0', socket.AF_INET),
+            ('::', socket.AF_INET6),
+        ):
+            try:
+                cd.check_ip_port(address, 9100)
+            except:
+                assert False
+            else:
+                assert _socket.call_args == call(address_family, socket.SOCK_STREAM)
+
+    @mock.patch('socket.socket')
+    @mock.patch('cephadm.args')
+    def test_check_ip_port_failure(self, args, _socket):
+        args.skip_ping_check = False
+
+        def os_error(errno):
+            _os_error = OSError()
+            _os_error.errno = errno
+            return _os_error
+
+        for address, address_family in (
+            ('0.0.0.0', socket.AF_INET),
+            ('::', socket.AF_INET6),
+        ):
+            for side_effect, expected_exception in (
+                (os_error(errno.EADDRINUSE), cd.PortOccupiedError),
+                (os_error(errno.EADDRNOTAVAIL), OSError),
+                (os_error(errno.EAFNOSUPPORT), OSError),
+                (None, None),
+            ):
+                mock_socket_obj = mock.Mock()
+                mock_socket_obj.bind.side_effect = side_effect
+                _socket.return_value = mock_socket_obj
+                try:
+                    cd.check_ip_port(address, 9100)
+                except Exception as e:
+                    assert isinstance(e, expected_exception)
+                else:
+                    assert side_effect is None
+
+
     def test_is_not_fsid(self):
         assert not cd.is_fsid('no-uuid')
 
@@ -416,3 +507,53 @@ class TestMonitoring(object):
         _call.return_value = '', '{}, version 0.16.1'.format(daemon_type.replace('-', '_')), 0
         version = cd.Monitoring.get_version(ctx, 'container_id', daemon_type)
         assert version == '0.16.1'
+
+    @mock.patch('cephadm.os.fchown')
+    @mock.patch('cephadm.get_parm')
+    @mock.patch('cephadm.makedirs')
+    @mock.patch('cephadm.open')
+    @mock.patch('cephadm.make_log_dir')
+    @mock.patch('cephadm.make_data_dir')
+    @mock.patch('cephadm.args')
+    def test_create_daemon_dirs_prometheus(self, args, make_data_dir, make_log_dir, _open, makedirs,
+                                           get_parm, fchown):
+        """
+        Ensures the required and optional files given in the configuration are
+        created and mapped correctly inside the container. Tests absolute and
+        relative file paths given in the configuration.
+        """
+        args.data_dir = '/somedir'
+        fsid = 'aaf5a720-13fe-4a3b-82b9-2d99b7fd9704'
+        daemon_type = 'prometheus'
+        uid, gid = 50, 50
+        daemon_id = 'home'
+        files = {
+            'files': {
+                'prometheus.yml': 'foo',
+                '/etc/prometheus/alerting/ceph_alerts.yml': 'bar'
+            }
+        }
+        get_parm.return_value = files
+
+        cd.create_daemon_dirs(fsid,
+                              daemon_type,
+                              daemon_id,
+                              uid,
+                              gid,
+                              config=None,
+                              keyring=None)
+
+        prefix = '{data_dir}/{fsid}/{daemon_type}.{daemon_id}'.format(
+            data_dir=args.data_dir,
+            fsid=fsid,
+            daemon_type=daemon_type,
+            daemon_id=daemon_id
+        )
+        assert _open.call_args_list == [
+            call('{}/etc/prometheus/prometheus.yml'.format(prefix), 'w',
+                 encoding='utf-8'),
+            call('{}/etc/prometheus/alerting/ceph_alerts.yml'.format(prefix), 'w',
+                 encoding='utf-8'),
+        ]
+        assert call().__enter__().write('foo') in _open.mock_calls
+        assert call().__enter__().write('bar') in _open.mock_calls
index c6d5b0c558563b0d15f5c2edb7707ad1c89ba2da..96d7f5f2f1dbcc2e09c1fdc506e4307e768fc409 100755 (executable)
@@ -132,6 +132,14 @@ void client_flush_set_callback(void *p, ObjectCacher::ObjectSet *oset)
   client->flush_set_callback(oset);
 }
 
+bool Client::is_reserved_vino(vinodeno_t &vino) {
+  if (MDS_IS_PRIVATE_INO(vino.ino)) {
+    ldout(cct, -1) << __func__ << " attempt to access reserved inode number " << vino << dendl;
+    return true;
+  }
+  return false;
+}
+
 
 // -------------
 
@@ -4369,7 +4377,7 @@ void Client::trim_caps(MetaSession *s, uint64_t max)
         ++q;
        if (dn->lru_is_expireable()) {
          if (can_invalidate_dentries &&
-             dn->dir->parent_inode->ino == MDS_INO_ROOT) {
+             dn->dir->parent_inode->ino == CEPH_INO_ROOT) {
            // Only issue one of these per DN for inodes in root: handle
            // others more efficiently by calling for root-child DNs at
            // the end of this function.
@@ -4382,10 +4390,10 @@ void Client::trim_caps(MetaSession *s, uint64_t max)
          all = false;
         }
       }
-      if (in->ll_ref == 1 && in->ino != MDS_INO_ROOT) {
+      if (in->ll_ref == 1 && in->ino != CEPH_INO_ROOT) {
          _schedule_ino_release_callback(in.get());
       }
-      if (all && in->ino != MDS_INO_ROOT) {
+      if (all && in->ino != CEPH_INO_ROOT) {
         ldout(cct, 20) << __func__ << " counting as trimmed: " << *in << dendl;
        trimmed++;
       }
@@ -8708,33 +8716,44 @@ int Client::lookup_hash(inodeno_t ino, inodeno_t dirino, const char *name,
  * the resulting Inode object in one operation, so that caller
  * can safely assume inode will still be there after return.
  */
-int Client::_lookup_ino(inodeno_t ino, const UserPerm& perms, Inode **inode)
+int Client::_lookup_vino(vinodeno_t vino, const UserPerm& perms, Inode **inode)
 {
-  ldout(cct, 8) << __func__ << " enter(" << ino << ")" << dendl;
+  ldout(cct, 8) << __func__ << " enter(" << vino << ")" << dendl;
 
   if (unmounting)
     return -ENOTCONN;
 
+  if (is_reserved_vino(vino))
+    return -ESTALE;
+
   MetaRequest *req = new MetaRequest(CEPH_MDS_OP_LOOKUPINO);
-  filepath path(ino);
+  filepath path(vino.ino);
   req->set_filepath(path);
 
+  /*
+   * The MDS expects either a "real" snapid here or 0. The special value
+   * carveouts for the snapid are all at the end of the range so we can
+   * just look for any snapid below this value.
+   */
+  if (vino.snapid < CEPH_NOSNAP)
+    req->head.args.lookupino.snapid = vino.snapid;
+
   int r = make_request(req, perms, NULL, NULL, rand() % mdsmap->get_num_in_mds());
   if (r == 0 && inode != NULL) {
-    vinodeno_t vino(ino, CEPH_NOSNAP);
     unordered_map<vinodeno_t,Inode*>::iterator p = inode_map.find(vino);
     ceph_assert(p != inode_map.end());
     *inode = p->second;
     _ll_get(*inode);
   }
-  ldout(cct, 8) << __func__ << " exit(" << ino << ") = " << r << dendl;
+  ldout(cct, 8) << __func__ << " exit(" << vino << ") = " << r << dendl;
   return r;
 }
 
 int Client::lookup_ino(inodeno_t ino, const UserPerm& perms, Inode **inode)
 {
+  vinodeno_t vino(ino, CEPH_NOSNAP);
   std::lock_guard lock(client_lock);
-  return _lookup_ino(ino, perms, inode);
+  return _lookup_vino(vino, perms, inode);
 }
 
 /**
@@ -10896,58 +10915,61 @@ int Client::ll_lookup(Inode *parent, const char *name, struct stat *attr,
   return r;
 }
 
-int Client::ll_lookup_inode(
-    struct inodeno_t ino,
+int Client::ll_lookup_vino(
+    vinodeno_t vino,
     const UserPerm& perms,
     Inode **inode)
 {
   ceph_assert(inode != NULL);
-  std::lock_guard lock(client_lock);
-  ldout(cct, 3) << "ll_lookup_inode " << ino  << dendl;
-   
+
   if (unmounting)
     return -ENOTCONN;
 
-  // Num1: get inode and *inode
-  int r = _lookup_ino(ino, perms, inode);
-  if (r)
-    return r;
+  if (is_reserved_vino(vino))
+    return -ESTALE;
 
-  ceph_assert(*inode != NULL);
-
-  if (!(*inode)->dentries.empty()) {
-    ldout(cct, 8) << __func__ << " dentry already present" << dendl;
+  std::lock_guard lock(client_lock);
+  ldout(cct, 3) << __func__ << vino << dendl;
+   
+  // Check the cache first
+  unordered_map<vinodeno_t,Inode*>::iterator p = inode_map.find(vino);
+  if (p != inode_map.end()) {
+    *inode = p->second;
+    _ll_get(*inode);
     return 0;
   }
 
-  if ((*inode)->is_root()) {
-    ldout(cct, 8) << "ino is root, no parent" << dendl;
-    return 0;
-  }
+  uint64_t snapid = vino.snapid;
 
-  // Num2: Request the parent inode, so that we can look up the name
-  Inode *parent;
-  r = _lookup_parent(*inode, perms, &parent);
-  if (r) {
-    _ll_forget(*inode, 1);  
+  // for snapdir, find the non-snapped dir inode
+  if (snapid == CEPH_SNAPDIR)
+    vino.snapid = CEPH_NOSNAP;
+
+  int r = _lookup_vino(vino, perms, inode);
+  if (r)
     return r;
-  }
+  ceph_assert(*inode != NULL);
 
-  ceph_assert(parent != NULL);
+  if (snapid == CEPH_SNAPDIR) {
+    Inode *tmp = *inode;
 
-  // Num3: Finally, get the name (dentry) of the requested inode
-  r = _lookup_name(*inode, parent, perms);
-  if (r) {
-    // Unexpected error
-    _ll_forget(parent, 1);
-    _ll_forget(*inode, 1);
-    return r;
+    // open the snapdir and put the inode ref
+    *inode = open_snapdir(tmp);
+    _ll_forget(tmp, 1);
+    _ll_get(*inode);
   }
-
-  _ll_forget(parent, 1);
   return 0;
 }
 
+int Client::ll_lookup_inode(
+    struct inodeno_t ino,
+    const UserPerm& perms,
+    Inode **inode)
+{
+  vinodeno_t vino(ino, CEPH_NOSNAP);
+  return ll_lookup_vino(vino, perms, inode);
+}
+
 int Client::ll_lookupx(Inode *parent, const char *name, Inode **out,
                       struct ceph_statx *stx, unsigned want, unsigned flags,
                       const UserPerm& perms)
@@ -11157,6 +11179,9 @@ Inode *Client::ll_get_inode(vinodeno_t vino)
   if (unmounting)
     return NULL;
 
+  if (is_reserved_vino(vino))
+    return NULL;
+
   unordered_map<vinodeno_t,Inode*>::iterator p = inode_map.find(vino);
   if (p == inode_map.end())
     return NULL;
index 95cb2fcfb94599f072fd0f16c458739c312b00c0..e4e651554b8d57846bb2556f688328a9d3c31053 100644 (file)
@@ -480,6 +480,7 @@ public:
   int ll_lookup(Inode *parent, const char *name, struct stat *attr,
                Inode **out, const UserPerm& perms);
   int ll_lookup_inode(struct inodeno_t ino, const UserPerm& perms, Inode **inode);
+  int ll_lookup_vino(vinodeno_t vino, const UserPerm& perms, Inode **inode);
   int ll_lookupx(Inode *parent, const char *name, Inode **out,
                        struct ceph_statx *stx, unsigned want, unsigned flags,
                        const UserPerm& perms);
@@ -1013,6 +1014,7 @@ private:
   static const VXattr _common_vxattrs[];
 
 
+  bool is_reserved_vino(vinodeno_t &vino);
 
   void fill_dirent(struct dirent *de, const char *name, int type, uint64_t ino, loff_t next_off);
 
@@ -1183,7 +1185,7 @@ private:
   int _ll_getattr(Inode *in, int caps, const UserPerm& perms);
   int _lookup_parent(Inode *in, const UserPerm& perms, Inode **parent=NULL);
   int _lookup_name(Inode *in, Inode *parent, const UserPerm& perms);
-  int _lookup_ino(inodeno_t ino, const UserPerm& perms, Inode **inode=NULL);
+  int _lookup_vino(vinodeno_t ino, const UserPerm& perms, Inode **inode=NULL);
   bool _ll_forget(Inode *in, uint64_t count);
 
 
index 5b932a98709a9c66d0623dd42ebf31fcab7dcf9f..faa2c894dc52fce39305306ceaf31f4b987dde29 100644 (file)
@@ -164,7 +164,7 @@ struct Inode {
   version_t  inline_version;
   bufferlist inline_data;
 
-  bool is_root()    const { return ino == MDS_INO_ROOT; }
+  bool is_root()    const { return ino == CEPH_INO_ROOT; }
   bool is_symlink() const { return (mode & S_IFMT) == S_IFLNK; }
   bool is_dir()     const { return (mode & S_IFMT) == S_IFDIR; }
   bool is_file()    const { return (mode & S_IFMT) == S_IFREG; }
index 84e536af0a00b349256df1c6865431c39f42493e..84792f7407f5c9ce3e45d194f3dbd1c7d5b90401 100644 (file)
@@ -42,6 +42,9 @@ static std::string bucket_index_prefixes[] = { "", /* special handling for the o
                                           /* this must be the last index */
                                           "9999_",};
 
+static const std::string BI_PREFIX_END = string(1, BI_PREFIX_CHAR) +
+    bucket_index_prefixes[BI_BUCKET_LAST_INDEX];
+
 static bool bi_is_objs_index(const string& s) {
   return ((unsigned char)s[0] != BI_PREFIX_CHAR);
 }
@@ -484,6 +487,7 @@ int rgw_bucket_list(cls_method_context_t hctx, bufferlist *in, bufferlist *out)
   bool has_delimiter = !op.delimiter.empty();
 
   if (has_delimiter &&
+      start_after_key > op.filter_prefix &&
       boost::algorithm::ends_with(start_after_key, op.delimiter)) {
     // advance past all subdirectory entries if we start after a
     // subdirectory
@@ -2424,18 +2428,14 @@ static int rgw_bi_put_op(cls_method_context_t hctx, bufferlist *in, bufferlist *
 }
 
 static int list_plain_entries(cls_method_context_t hctx,
-                             const string& name,
-                             const string& marker,
-                             uint32_t max,
+                              const string& filter,
+                              const string& start_after_key,
+                              const string& end_key,
+                              uint32_t max,
                               list<rgw_cls_bi_entry> *entries,
-                             bool *pmore)
+                              bool *end_key_reached,
+                              bool *pmore)
 {
-  string filter = name;
-  string start_after_key = marker;
-
-  string end_key; // stop listing at bi_log_prefix
-  bi_log_prefix(end_key);
-
   int count = 0;
   map<string, bufferlist> keys;
   int ret = cls_cxx_map_get_vals(hctx, start_after_key, filter, max,
@@ -2444,13 +2444,12 @@ static int list_plain_entries(cls_method_context_t hctx,
     return ret;
   }
 
-  map<string, bufferlist>::iterator iter;
-  for (iter = keys.begin(); iter != keys.end(); ++iter) {
-    if (iter->first >= end_key) {
-      /* past the end of plain namespace */
-      if (pmore) {
-       *pmore = false;
-      }
+  *end_key_reached = false;
+
+  for (auto iter = keys.begin(); iter != keys.end(); ++iter) {
+    if (!end_key.empty() && iter->first >= end_key) {
+      *end_key_reached = true;
+      *pmore = true;
       return count;
     }
 
@@ -2469,13 +2468,12 @@ static int list_plain_entries(cls_method_context_t hctx,
       return -EIO;
     }
 
-    CLS_LOG(20, "%s(): entry.idx=%s e.key.name=%s", __func__, escape_str(entry.idx).c_str(), escape_str(e.key.name).c_str());
+    CLS_LOG(20, "%s(): entry.idx=%s e.key.name=%s", __func__,
+            escape_str(entry.idx).c_str(), escape_str(e.key.name).c_str());
 
-    if (!name.empty() && e.key.name != name) {
+    if (!filter.empty() && e.key.name != filter) {
       /* we are skipping the rest of the entries */
-      if (pmore) {
-       *pmore = false;
-      }
+      *pmore = false;
       return count;
     }
 
@@ -2484,12 +2482,54 @@ static int list_plain_entries(cls_method_context_t hctx,
     if (count >= (int)max) {
       return count;
     }
-    start_after_key = entry.idx;
   }
 
   return count;
 }
 
+static int list_plain_entries(cls_method_context_t hctx,
+                              const string& name,
+                              const string& marker,
+                              uint32_t max,
+                              list<rgw_cls_bi_entry> *entries,
+                              bool *pmore) {
+  string start_after_key = marker;
+  string end_key;
+  bi_log_prefix(end_key);
+  int r;
+  bool end_key_reached;
+  bool more;
+
+  if (start_after_key < end_key) {
+    // listing ascii plain namespace
+    int r = list_plain_entries(hctx, name, start_after_key, end_key, max,
+                               entries, &end_key_reached, &more);
+    if (r < 0) {
+      return r;
+    }
+    if (r >= (int)max || !end_key_reached || !more) {
+      if (pmore) {
+       *pmore = more;
+      }
+      return r;
+    }
+    start_after_key = BI_PREFIX_END;
+    max = max - r;
+  }
+
+  // listing non-ascii plain namespace
+  r = list_plain_entries(hctx, name, start_after_key, {}, max, entries,
+                         &end_key_reached, &more);
+  if (r < 0) {
+    return r;
+  }
+  if (pmore) {
+    *pmore = more;
+  }
+
+  return r;
+}
+
 static int list_instance_entries(cls_method_context_t hctx,
                                 const string& name,
                                 const string& marker,
index 7ca5a54af6a110ab9aa6dc6fa4117896f71d8674..136e8be73847c207ce9cf919025192be431a45aa 100644 (file)
 // member methods.
 namespace ceph::common{
 class ConfigProxy {
-  static ConfigValues get_config_values(const ConfigProxy &config_proxy) {
-    std::lock_guard locker(config_proxy.lock);
-    return config_proxy.values;
-  }
-
   /**
    * The current values of all settings described by the schema
    */
@@ -115,7 +110,7 @@ public:
     : config{values, obs_mgr, is_daemon}
   {}
   explicit ConfigProxy(const ConfigProxy &config_proxy)
-    : values(get_config_values(config_proxy)),
+    : values(config_proxy.get_config_values()),
       config{values, obs_mgr, config_proxy.config.is_daemon}
   {}
   const ConfigValues* operator->() const noexcept {
@@ -124,11 +119,16 @@ public:
   ConfigValues* operator->() noexcept {
     return &values;
   }
-#ifdef WITH_SEASTAR
+  ConfigValues get_config_values() const {
+    std::lock_guard l{lock};
+    return values;
+  }
   void set_config_values(const ConfigValues& val) {
+#ifndef WITH_SEASTAR
+    std::lock_guard l{lock};
+#endif
     values = val;
   }
-#endif
   int get_val(const std::string_view key, char** buf, int len) const {
     std::lock_guard l{lock};
     return config.get_val(values, key, buf, len);
index 0abf7f20ca71f1acbe21dadef072f9b6db9ffc43..bd11cbfc1808f8c93f8221b8f39767eb4e8e7568 100644 (file)
@@ -3,7 +3,6 @@
 #include <ifaddrs.h>
 #include <stdlib.h>
 #include <string.h>
-#include <boost/algorithm/string/predicate.hpp>
 #if defined(__FreeBSD__)
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -29,54 +28,23 @@ void netmask_ipv4(const struct in_addr *addr,
   out->s_addr = addr->s_addr & mask;
 }
 
-
-static bool match_numa_node(const string& if_name, int numa_node)
+bool matches_ipv4_in_subnet(const struct ifaddrs& addrs,
+                         const struct sockaddr_in* net,
+                         unsigned int prefix_len)
 {
-#ifdef WITH_SEASTAR
-  return true;
-#else
-  int if_node = -1;
-  int r = get_iface_numa_node(if_name, &if_node);
-  if (r < 0) {
+  if (addrs.ifa_addr == nullptr)
     return false;
-  }
-  return if_node == numa_node;
-#endif
-}
-
-const struct ifaddrs *find_ipv4_in_subnet(const struct ifaddrs *addrs,
-                                         const struct sockaddr_in *net,
-                                         unsigned int prefix_len,
-                                         int numa_node) {
-  struct in_addr want, temp;
 
+  if (addrs.ifa_addr->sa_family != net->sin_family)
+      return false;
+  struct in_addr want;
   netmask_ipv4(&net->sin_addr, prefix_len, &want);
-  for (; addrs != NULL; addrs = addrs->ifa_next) {
-
-    if (addrs->ifa_addr == NULL)
-      continue;
-
-    if (strcmp(addrs->ifa_name, "lo") == 0 || boost::starts_with(addrs->ifa_name, "lo:"))
-      continue;
-
-    if (numa_node >= 0 && !match_numa_node(addrs->ifa_name, numa_node))
-      continue;
-
-    if (addrs->ifa_addr->sa_family != net->sin_family)
-      continue;
-
-    struct in_addr *cur = &((struct sockaddr_in*)addrs->ifa_addr)->sin_addr;
-    netmask_ipv4(cur, prefix_len, &temp);
-
-    if (temp.s_addr == want.s_addr) {
-      return addrs;
-    }
-  }
-
-  return NULL;
+  struct in_addr *cur = &((struct sockaddr_in*)addrs.ifa_addr)->sin_addr;
+  struct in_addr temp;
+  netmask_ipv4(cur, prefix_len, &temp);
+  return temp.s_addr == want.s_addr;
 }
 
-
 void netmask_ipv6(const struct in6_addr *addr,
                  unsigned int prefix_len,
                  struct in6_addr *out) {
@@ -90,59 +58,25 @@ void netmask_ipv6(const struct in6_addr *addr,
     memset(out->s6_addr+prefix_len/8+1, 0, 16-prefix_len/8-1);
 }
 
+bool matches_ipv6_in_subnet(const struct ifaddrs& addrs,
+                           const struct sockaddr_in6* net,
+                           unsigned int prefix_len)
+{
+  if (addrs.ifa_addr == nullptr)
+    return false;
 
-const struct ifaddrs *find_ipv6_in_subnet(const struct ifaddrs *addrs,
-                                         const struct sockaddr_in6 *net,
-                                         unsigned int prefix_len,
-                                         int numa_node) {
-  struct in6_addr want, temp;
-
+  if (addrs.ifa_addr->sa_family != net->sin6_family)
+    return false;
+  struct in6_addr want;
   netmask_ipv6(&net->sin6_addr, prefix_len, &want);
-  for (; addrs != NULL; addrs = addrs->ifa_next) {
-
-    if (addrs->ifa_addr == NULL)
-      continue;
-
-    if (strcmp(addrs->ifa_name, "lo") == 0 || boost::starts_with(addrs->ifa_name, "lo:"))
-      continue;
-
-    if (numa_node >= 0 && !match_numa_node(addrs->ifa_name, numa_node))
-      continue;
-
-    if (addrs->ifa_addr->sa_family != net->sin6_family)
-      continue;
-
-    struct in6_addr *cur = &((struct sockaddr_in6*)addrs->ifa_addr)->sin6_addr;
-    if (IN6_IS_ADDR_LINKLOCAL(cur))
-      continue;
-    netmask_ipv6(cur, prefix_len, &temp);
-
-    if (IN6_ARE_ADDR_EQUAL(&temp, &want))
-      return addrs;
-  }
-
-  return NULL;
-}
-
-
-const struct ifaddrs *find_ip_in_subnet(const struct ifaddrs *addrs,
-                                       const struct sockaddr *net,
-                                       unsigned int prefix_len,
-                                       int numa_node) {
-  switch (net->sa_family) {
-    case AF_INET:
-      return find_ipv4_in_subnet(addrs, (struct sockaddr_in*)net, prefix_len,
-                                numa_node);
-
-    case AF_INET6:
-      return find_ipv6_in_subnet(addrs, (struct sockaddr_in6*)net, prefix_len,
-                                numa_node);
-    }
-
-  return NULL;
+  struct in6_addr temp;
+  struct in6_addr *cur = &((struct sockaddr_in6*)addrs.ifa_addr)->sin6_addr;
+  if (IN6_IS_ADDR_LINKLOCAL(cur))
+    return false;
+  netmask_ipv6(cur, prefix_len, &temp);
+  return IN6_ARE_ADDR_EQUAL(&temp, &want);
 }
 
-
 bool parse_network(const char *s, struct sockaddr_storage *network, unsigned int *prefix_len) {
   char *slash = strchr((char*)s, '/');
   if (!slash) {
index b8cc55ef982b31f5e6a8887b57b88954a8331e13..85f4203be3686e466ca32ad73db66417bf47eb1a 100644 (file)
@@ -5256,6 +5256,20 @@ std::vector<Option> get_global_options() {
     .add_service("mgr")
     .set_description("Filesystem path to manager modules."),
 
+    Option("mgr_disabled_modules", Option::TYPE_STR, Option::LEVEL_ADVANCED)
+#ifdef MGR_DISABLED_MODULES
+    .set_default(MGR_DISABLED_MODULES)
+#endif
+    .set_flag(Option::FLAG_STARTUP)
+    .add_service("mgr")
+    .set_description("List of manager modules never get loaded")
+    .set_long_description("A comma delimited list of module names. This list "
+        "is read by manager when it starts. By default, manager loads all "
+        "modules found in specified 'mgr_module_path', and it starts the "
+        "enabled ones as instructed. The modules in this list will not be "
+        "loaded at all.")
+    .add_see_also("mgr_module_path"),
+
     Option("mgr_initial_modules", Option::TYPE_STR, Option::LEVEL_BASIC)
     .set_default("restful iostat")
     .set_flag(Option::FLAG_NO_MON_UPDATE)
index ec464c1b8e165119c20e8c227525456c2d2f125b..bb3f7d30cb5bab775ab5e04b6deca4f1d596024f 100644 (file)
@@ -22,6 +22,7 @@
 #include <fmt/format.h>
 
 #include "include/ipaddr.h"
+#include "include/scope_guard.h"
 #include "include/str_list.h"
 #include "common/ceph_context.h"
 #ifndef WITH_SEASTAR
 #include "common/errno.h"
 #include "common/numa.h"
 
+#include <net/if.h>
+#include <netinet/in.h>
+
 #define dout_subsys ceph_subsys_
 
+namespace {
+
+bool matches_with_name(const ifaddrs& ifa, const std::string& if_name)
+{
+  return if_name.compare(ifa.ifa_name) == 0;
+}
+
+static int is_loopback_addr(sockaddr* addr)
+{
+  if (addr->sa_family == AF_INET) {
+    const sockaddr_in* sin = (struct sockaddr_in *)(addr);
+    const in_addr_t net = ntohl(sin->sin_addr.s_addr) >> IN_CLASSA_NSHIFT;
+    return net == IN_LOOPBACKNET ? 1 : 0;
+  } else if (addr->sa_family == AF_INET6) {
+    sockaddr_in6* sin6 = (struct sockaddr_in6 *)(addr);
+    return IN6_IS_ADDR_LOOPBACK(&sin6->sin6_addr) ? 1 : 0;
+  } else {
+    return -1;
+  }
+}
+
+static int grade_addr(const ifaddrs& ifa)
+{
+  if (ifa.ifa_addr == nullptr) {
+    return -1;
+  }
+  int score = 0;
+  if (ifa.ifa_flags & IFF_UP) {
+    score += 4;
+  }
+  switch (is_loopback_addr(ifa.ifa_addr)) {
+  case 0:
+    // prefer non-loopback addresses
+    score += 2;
+    break;
+  case 1:
+    score += 0;
+    break;
+  default:
+    score = -1;
+    break;
+  }
+  return score;
+}
+
+bool matches_with_net(const ifaddrs& ifa,
+                      const sockaddr* net,
+                      unsigned int prefix_len,
+                      unsigned ipv)
+{
+  switch (net->sa_family) {
+  case AF_INET:
+    if (ipv & CEPH_PICK_ADDRESS_IPV4) {
+      return matches_ipv4_in_subnet(ifa, (struct sockaddr_in*)net, prefix_len);
+    }
+    break;
+  case AF_INET6:
+    if (ipv & CEPH_PICK_ADDRESS_IPV6) {
+      return matches_ipv6_in_subnet(ifa, (struct sockaddr_in6*)net, prefix_len);
+    }
+    break;
+  }
+  return false;
+}
+
+bool matches_with_net(CephContext *cct,
+                      const ifaddrs& ifa,
+                      const std::string& s,
+                      unsigned ipv)
+{
+  struct sockaddr_storage net;
+  unsigned int prefix_len;
+  if (!parse_network(s.c_str(), &net, &prefix_len)) {
+    lderr(cct) << "unable to parse network: " << s << dendl;
+    exit(1);
+  }
+  return matches_with_net(ifa, (sockaddr*)&net, prefix_len, ipv);
+}
+
+int grade_with_numa_node(const ifaddrs& ifa, int numa_node)
+{
+#if defined(WITH_SEASTAR) || defined(_WIN32)
+  return 0;
+#else
+  if (numa_node < 0) {
+    return 0;
+  }
+  int if_node = -1;
+  int r = get_iface_numa_node(ifa.ifa_name, &if_node);
+  if (r < 0) {
+    return 0;
+  }
+  return if_node == numa_node ? 1 : 0;
+#endif
+}
+}
+
 const struct sockaddr *find_ip_in_subnet_list(
   CephContext *cct,
   const struct ifaddrs *ifa,
@@ -42,86 +143,41 @@ const struct sockaddr *find_ip_in_subnet_list(
   const std::string &interfaces,
   int numa_node)
 {
-  std::list<string> nets;
-  get_str_list(networks, nets);
-  std::list<string> ifs;
-  get_str_list(interfaces, ifs);
-
-  // filter interfaces by name
-  const struct ifaddrs *filtered = nullptr;
-  if (ifs.empty()) {
-    filtered = ifa;
-  } else {
-    if (nets.empty()) {
+  const auto ifs = get_str_list(interfaces);
+  const auto nets = get_str_list(networks);
+  if (!ifs.empty() && nets.empty()) {
       lderr(cct) << "interface names specified but not network names" << dendl;
       exit(1);
-    }
-    const struct ifaddrs *t = ifa;
-    struct ifaddrs *head = 0;
-    while (t) {
-      bool match = false;
-      for (auto& i : ifs) {
-       if (strcmp(i.c_str(), t->ifa_name) == 0) {
-         match = true;
-         break;
-       }
-      }
-      if (match) {
-       struct ifaddrs *n = new ifaddrs;
-       memcpy(n, t, sizeof(*t));
-       n->ifa_next = head;
-       head = n;
-      }
-      t = t->ifa_next;
-    }
-    if (!head) {
-      lderr(cct) << "no interfaces matching " << ifs << dendl;
-      exit(1);
-    }
-    filtered = head;
   }
 
-  struct sockaddr *r = nullptr;
-  for (auto& s : nets) {
-    struct sockaddr_storage net;
-    unsigned int prefix_len;
-
-    if (!parse_network(s.c_str(), &net, &prefix_len)) {
-      lderr(cct) << "unable to parse network: " << s << dendl;
-      exit(1);
+  int best_score = 0;
+  const sockaddr* best_addr = nullptr;
+  for (const auto* addr = ifa; addr != nullptr; addr = addr->ifa_next) {
+    if (!ifs.empty() &&
+       std::none_of(std::begin(ifs), std::end(ifs),
+                     [&](const auto& if_name) {
+                       return matches_with_name(*addr, if_name);
+                     })) {
+      continue;
     }
-
-    switch (net.ss_family) {
-    case AF_INET:
-      if (!(ipv & CEPH_PICK_ADDRESS_IPV4)) {
-       continue;
-      }
-      break;
-    case AF_INET6:
-      if (!(ipv & CEPH_PICK_ADDRESS_IPV6)) {
-       continue;
-      }
-      break;
+    if (!nets.empty() &&
+       std::none_of(std::begin(nets), std::end(nets),
+                     [&](const auto& net) {
+                       return matches_with_net(cct, *addr, net, ipv);
+                     })) {
+      continue;
     }
-
-    const struct ifaddrs *found = find_ip_in_subnet(
-      filtered,
-      (struct sockaddr *) &net, prefix_len, numa_node);
-    if (found) {
-      r = found->ifa_addr;
-      break;
+    int score = grade_addr(*addr);
+    if (score < 0) {
+      continue;
     }
-  }
-
-  if (filtered != ifa) {
-    while (filtered) {
-      struct ifaddrs *t = filtered->ifa_next;
-      delete filtered;
-      filtered = t;
+    score += grade_with_numa_node(*addr, numa_node);
+    if (score > best_score) {
+      best_score = score;
+      best_addr = addr->ifa_addr;
     }
   }
-
-  return r;
+  return best_addr;
 }
 
 #ifndef WITH_SEASTAR
@@ -144,8 +200,8 @@ struct Observer : public md_config_obs_t {
 
 static void fill_in_one_address(CephContext *cct,
                                const struct ifaddrs *ifa,
-                               const string networks,
-                               const string interfaces,
+                               const string &networks,
+                               const string &interfaces,
                                const char *conf_var,
                                int numa_node = -1)
 {
@@ -190,8 +246,6 @@ static void fill_in_one_address(CephContext *cct,
 
 void pick_addresses(CephContext *cct, int needs)
 {
-  struct ifaddrs *ifa;
-  int r = getifaddrs(&ifa);
   auto public_addr = cct->_conf.get_val<entity_addr_t>("public_addr");
   auto public_network = cct->_conf.get_val<std::string>("public_network");
   auto public_network_interface =
@@ -201,33 +255,33 @@ void pick_addresses(CephContext *cct, int needs)
   auto cluster_network_interface =
     cct->_conf.get_val<std::string>("cluster_network_interface");
 
+  struct ifaddrs *ifa;
+  int r = getifaddrs(&ifa);
   if (r < 0) {
     string err = cpp_strerror(errno);
     lderr(cct) << "unable to fetch interfaces and addresses: " << err << dendl;
     exit(1);
   }
-
+  auto free_ifa = make_scope_guard([ifa] { freeifaddrs(ifa); });
   if ((needs & CEPH_PICK_ADDRESS_PUBLIC) &&
     public_addr.is_blank_ip() && !public_network.empty()) {
     fill_in_one_address(cct, ifa, public_network, public_network_interface,
-      "public_addr");
+                       "public_addr");
   }
 
   if ((needs & CEPH_PICK_ADDRESS_CLUSTER) && cluster_addr.is_blank_ip()) {
     if (!cluster_network.empty()) {
       fill_in_one_address(cct, ifa, cluster_network, cluster_network_interface,
-       "cluster_addr");
+                         "cluster_addr");
     } else {
       if (!public_network.empty()) {
         lderr(cct) << "Public network was set, but cluster network was not set " << dendl;
         lderr(cct) << "    Using public network also for cluster network" << dendl;
         fill_in_one_address(cct, ifa, public_network, public_network_interface,
-          "cluster_addr");
+                           "cluster_addr");
       }
     }
   }
-
-  freeifaddrs(ifa);
 }
 #endif // !WITH_SEASTAR
 
@@ -235,13 +289,15 @@ static int fill_in_one_address(
   CephContext *cct,
   const struct ifaddrs *ifa,
   unsigned ipv,
-  const string networks,
-  const string interfaces,
+  const string &networks,
+  const string &interfaces,
   entity_addrvec_t *addrs,
   int numa_node = -1)
 {
-  const struct sockaddr *found = find_ip_in_subnet_list(cct, ifa, ipv, networks,
-                                                       interfaces, numa_node);
+  const struct sockaddr *found = find_ip_in_subnet_list(cct, ifa, ipv,
+                                                       networks,
+                                                       interfaces,
+                                                       numa_node);
   if (!found) {
     std::string ip_type = "";
     if ((ipv & CEPH_PICK_ADDRESS_IPV4) && (ipv & CEPH_PICK_ADDRESS_IPV6)) {
@@ -355,33 +411,29 @@ int pick_addresses(
       !networks.empty()) {
     int ipv4_r = !(ipv & CEPH_PICK_ADDRESS_IPV4) ? 0 : -1;
     int ipv6_r = !(ipv & CEPH_PICK_ADDRESS_IPV6) ? 0 : -1;
-    // first try on preferred numa node (if >= 0), then anywhere.
-    while (true) {
-      // note: pass in ipv to filter the matching addresses
-      if ((ipv & CEPH_PICK_ADDRESS_IPV4) &&
-         (flags & CEPH_PICK_ADDRESS_PREFER_IPV4)) {
-       ipv4_r = fill_in_one_address(cct, ifa, CEPH_PICK_ADDRESS_IPV4,
-                                     networks, interfaces, addrs,
-                                     preferred_numa_node);
-      }
-      if (ipv & CEPH_PICK_ADDRESS_IPV6) {
-       ipv6_r = fill_in_one_address(cct, ifa, CEPH_PICK_ADDRESS_IPV6,
-                                     networks, interfaces, addrs,
-                                     preferred_numa_node);
-      }
-      if ((ipv & CEPH_PICK_ADDRESS_IPV4) &&
-         !(flags & CEPH_PICK_ADDRESS_PREFER_IPV4)) {
-       ipv4_r = fill_in_one_address(cct, ifa, CEPH_PICK_ADDRESS_IPV4,
-                                     networks, interfaces, addrs,
-                                     preferred_numa_node);
-      }
-      if (ipv4_r >= 0 && ipv6_r >= 0) {
-       break;
-      }
-      if (preferred_numa_node < 0) {
-       return ipv4_r >= 0 && ipv6_r >= 0 ? 0 : -1;
-      }
-      preferred_numa_node = -1;      // try any numa node
+    // note: pass in ipv to filter the matching addresses
+    if ((ipv & CEPH_PICK_ADDRESS_IPV4) &&
+       (flags & CEPH_PICK_ADDRESS_PREFER_IPV4)) {
+      ipv4_r = fill_in_one_address(cct, ifa, CEPH_PICK_ADDRESS_IPV4,
+                                  networks, interfaces,
+                                  addrs,
+                                  preferred_numa_node);
+    }
+    if (ipv & CEPH_PICK_ADDRESS_IPV6) {
+      ipv6_r = fill_in_one_address(cct, ifa, CEPH_PICK_ADDRESS_IPV6,
+                                  networks, interfaces,
+                                  addrs,
+                                  preferred_numa_node);
+    }
+    if ((ipv & CEPH_PICK_ADDRESS_IPV4) &&
+       !(flags & CEPH_PICK_ADDRESS_PREFER_IPV4)) {
+      ipv4_r = fill_in_one_address(cct, ifa, CEPH_PICK_ADDRESS_IPV4,
+                                  networks, interfaces,
+                                  addrs,
+                                  preferred_numa_node);
+    }
+    if (ipv4_r < 0 || ipv6_r < 0) {
+      return -1;
     }
   }
 
@@ -464,20 +516,15 @@ std::string pick_iface(CephContext *cct, const struct sockaddr_storage &network)
     lderr(cct) << "unable to fetch interfaces and addresses: " << err << dendl;
     return {};
   }
-
-  const unsigned int prefix_len = max(sizeof(in_addr::s_addr), sizeof(in6_addr::s6_addr)) * CHAR_BIT;
-  const struct ifaddrs *found = find_ip_in_subnet(
-    ifa,
-    (const struct sockaddr *) &network, prefix_len);
-
-  std::string result;
-  if (found) {
-    result = found->ifa_name;
+  auto free_ifa = make_scope_guard([ifa] { freeifaddrs(ifa); });
+  const unsigned int prefix_len = std::max(sizeof(in_addr::s_addr), sizeof(in6_addr::s6_addr)) * CHAR_BIT;
+  for (auto addr = ifa; addr != nullptr; addr = addr->ifa_next) {
+    if (matches_with_net(*ifa, (const struct sockaddr *) &network, prefix_len,
+                        CEPH_PICK_ADDRESS_IPV4 | CEPH_PICK_ADDRESS_IPV6)) {
+      return addr->ifa_name;
+    }
   }
-
-  freeifaddrs(ifa);
-
-  return result;
+  return {};
 }
 
 
@@ -489,8 +536,8 @@ bool have_local_addr(CephContext *cct, const list<entity_addr_t>& ls, entity_add
     lderr(cct) << "unable to fetch interfaces and addresses: " << cpp_strerror(errno) << dendl;
     exit(1);
   }
+  auto free_ifa = make_scope_guard([ifa] { freeifaddrs(ifa); });
 
-  bool found = false;
   for (struct ifaddrs *addrs = ifa; addrs != nullptr; addrs = addrs->ifa_next) {
     if (addrs->ifa_addr) {
       entity_addr_t a;
@@ -498,16 +545,12 @@ bool have_local_addr(CephContext *cct, const list<entity_addr_t>& ls, entity_add
       for (auto& p : ls) {
         if (a.is_same_host(p)) {
           *match = p;
-          found = true;
-          goto out;
+          return true;
         }
       }
     }
   }
-
- out:
-  freeifaddrs(ifa);
-  return found;
+  return false;
 }
 
 int get_iface_numa_node(
index 2621fed8108db1182cc03912c8b2767734dfe75d..1faf60dbd75bcf65f183311df305d7f2cbcc377e 100644 (file)
@@ -68,6 +68,20 @@ std::string pick_iface(CephContext *cct, const struct sockaddr_storage &network)
  */
 bool have_local_addr(CephContext *cct, const std::list<entity_addr_t>& ls, entity_addr_t *match);
 
+/**
+ * filter the addresses in @c ifa with specified interfaces, networks and IPv
+ *
+ * @param cct
+ * @param ifa a list of network interface addresses to be filtered
+ * @param ipv bitmask of CEPH_PICK_ADDRESS_IPV4 and CEPH_PICK_ADDRESS_IPV6.
+ *        it is used to filter the @c networks
+ * @param networks a comma separated list of networks as the allow list. only
+ *        the addresses in the specified networks are allowed. all addresses
+ *        are accepted if it is empty.
+ * @param interfaces a comma separated list of interfaces for the allow list.
+ *        all addresses are accepted if it is empty
+ * @param exclude_lo_iface filter out network interface named "lo"
+ */
 const struct sockaddr *find_ip_in_subnet_list(
   CephContext *cct,
   const struct ifaddrs *ifa,
index 83ef88a6b76db97f0c9c4d6a8e0ad63c390fa8f2..37efccc9c3741b63e6561380045c9d448965a9a2 100644 (file)
@@ -540,7 +540,7 @@ struct crush_work_bucket {
        __u32 perm_x; /* @x for which *perm is defined */
        __u32 perm_n; /* num elements of *perm that are permuted/defined */
        __u32 *perm;  /* Permutation of the bucket's items */
-};
+} __attribute__ ((packed));
 
 struct crush_work {
        struct crush_work_bucket **work; /* Per-bucket working store */
index f7bf65c066248f3d39ca4af7775e999aac72f7e7..6f8a80e56f03f1d4214e2bd89506075f7843597b 100644 (file)
 #define CEPH_MONC_PROTOCOL   15 /* server/client */
 
 
-#define CEPH_INO_ROOT   1
-#define CEPH_INO_CEPH   2       /* hidden .ceph dir */
-#define CEPH_INO_LOST_AND_FOUND 4      /* reserved ino for use in recovery */
+#define CEPH_INO_ROOT             1
+/*
+ * hidden .ceph dir, which is no longer created but
+ * recognised in existing filesystems so that we
+ * don't try to fragment it.
+ */
+#define CEPH_INO_CEPH             2
+#define CEPH_INO_GLOBAL_SNAPREALM 3
+#define CEPH_INO_LOST_AND_FOUND   4 /* reserved ino for use in recovery */
 
 /* arbitrary limit on max # of monitors (cluster of 3 is typical) */
 #define CEPH_MAX_MON   31
index 94c80635030d141005cc4b60b199d488389cde14..f8eff8e88f7622d47ce3ac26caeb649c89a0e038 100644 (file)
@@ -1621,6 +1621,10 @@ int ceph_debug_get_file_caps(struct ceph_mount_info *cmount, const char *path);
 /* Low Level */
 struct Inode *ceph_ll_get_inode(struct ceph_mount_info *cmount,
                                vinodeno_t vino);
+
+int ceph_ll_lookup_vino(struct ceph_mount_info *cmount, vinodeno_t vino,
+                       Inode **inode);
+
 int ceph_ll_lookup_inode(
     struct ceph_mount_info *cmount,
     struct inodeno_t ino,
index ea0dcadb67f3f9daa17df5dd8ccfb2b6d82415cc..546646ec02325a5a120c8782a41a15c05f0d237e 100644 (file)
 
 #cmakedefine MGR_PYTHON_EXECUTABLE "@MGR_PYTHON_EXECUTABLE@"
 
+/* the default value of "mgr_disabled_module" option */
+#cmakedefine MGR_DISABLED_MODULES "@MGR_DISABLED_MODULES@"
+
 /* Define to 1 if you have the `getprogname' function. */
 #cmakedefine HAVE_GETPROGNAME 1
 
index e8bed82920af35a7db8dabeac776e38cf7714053..bf06cfc93642af2129a9ba354e2d9fd76826379d 100644 (file)
@@ -4,15 +4,14 @@
 class entity_addr_t;
 
 /*
- * Find an IP address that is in the wanted subnet.
- *
- * If there are multiple matches, the first one is returned; this order
- * is system-dependent and should not be relied on.
+ * Check if an IP address that is in the wanted subnet.
  */
-const struct ifaddrs *find_ip_in_subnet(const struct ifaddrs *addrs,
-                                       const struct sockaddr *net,
-                                       unsigned int prefix_len,
-                                       int numa_node = -1);
+bool matches_ipv4_in_subnet(const struct ifaddrs& addrs,
+                            const struct sockaddr_in* net,
+                            unsigned int prefix_len);
+bool matches_ipv6_in_subnet(const struct ifaddrs& addrs,
+                            const struct sockaddr_in6* net,
+                            unsigned int prefix_len);
 
 /*
  * Validate and parse IPv4 or IPv6 network
index c18323be43f91379e0b6f8d5a89afedbd003356d..5ab93541d5e3985a4ac50a5e2980eb97c11d82f5 100644 (file)
@@ -1587,6 +1587,14 @@ extern "C" struct Inode *ceph_ll_get_inode(class ceph_mount_info *cmount,
 }
 
 
+extern "C" int ceph_ll_lookup_vino(
+    struct ceph_mount_info *cmount,
+    vinodeno_t vino,
+    Inode **inode)
+{
+  return (cmount->get_client())->ll_lookup_vino(vino, cmount->default_perms, inode);
+}
+
 /**
  * Populates the client cache with the requested inode, and its
  * parent dentry.
index a2a150887086cf4a870062346067e19f6f0c8dd9..4c21b2a411bc3eac3011f658dfbbd623aec33eac 100644 (file)
@@ -730,14 +730,8 @@ public:
     std::unique_lock image_locker(image_lock);
 
     // reset settings back to global defaults
-    for (auto& key : config_overrides) {
-      std::string value;
-      int r = cct->_conf.get_val(key, &value);
-      ceph_assert(r == 0);
-
-      config.set_val(key, value);
-    }
     config_overrides.clear();
+    config.set_config_values(cct->_conf.get_config_values());
 
     // extract config overrides
     for (auto meta_pair : meta) {
index 9ed0b018a4f998aa67235e6e9f14df2587cc2133..5aa38b8aded54ed994a96e6378519716618959d2 100644 (file)
@@ -529,32 +529,48 @@ int Trash<I>::purge(IoCtx& io_ctx, time_t expire_ts,
 
   NoOpProgressContext remove_pctx;
   uint64_t list_size = to_be_removed.size(), i = 0;
-  for (const auto &entry_id : to_be_removed) {
-    r = librbd::api::Trash<I>::remove(io_ctx, entry_id, true, remove_pctx);
-    if (r < 0) {
-      if (r == -ENOTEMPTY) {
-        ldout(cct, 5) << "image has snapshots - these must be deleted "
-                      << "with 'rbd snap purge' before the image can be "
-                      << "removed." << dendl;
-      } else if (r == -EBUSY) {
-        ldout(cct, 5) << "error: image still has watchers" << std::endl
-                      << "This means the image is still open or the client "
-                      << "using it crashed. Try again after closing/unmapping "
-                      << "it or waiting 30s for the crashed client to timeout."
-                      << dendl;
-      } else if (r == -EUCLEAN) {
-        ldout(cct, 5) << "Image is not in the expected state. Ensure moving "
-                      << "the image to the trash completed successfully."
-                      << dendl;
-      } else if (r == -EMLINK) {
-        ldout(cct, 5) << "Remove the image from the group and try again."
-                      << dendl;
-      } else {
-        lderr(cct) << "remove error: " << cpp_strerror(r) << dendl;
+  int remove_err = 1;
+  while (!to_be_removed.empty() && remove_err == 1) {
+    remove_err = 0;
+    for (auto it = to_be_removed.begin(); it != to_be_removed.end(); ) {
+      trash_image_info_t trash_info;
+      r = Trash<I>::get(io_ctx, *it, &trash_info);
+      if (r == -ENOENT) {
+        // likely RBD_TRASH_IMAGE_SOURCE_USER_PARENT image removed as a side
+        // effect of a preceeding remove (last child detach)
+        pctx.update_progress(++i, list_size);
+        it = to_be_removed.erase(it);
+        continue;
+      } else if (r < 0) {
+        lderr(cct) << "error getting image id " << *it
+                   << " info: " << cpp_strerror(r) << dendl;
+        return r;
       }
-      return r;
+
+      r = Trash<I>::remove(io_ctx, *it, true, remove_pctx);
+      if (r == -ENOTEMPTY || r == -EBUSY || r == -EMLINK || r == -EUCLEAN) {
+        if (!remove_err) {
+          remove_err = r;
+        }
+        ++it;
+        continue;
+      } else if (r < 0) {
+        lderr(cct) << "error removing image id " << *it
+                   << ": " << cpp_strerror(r) << dendl;
+        return r;
+      }
+      pctx.update_progress(++i, list_size);
+      it = to_be_removed.erase(it);
+      remove_err = 1;
     }
-    pctx.update_progress(++i, list_size);
+    ldout(cct, 20) << "remove_err=" << remove_err << dendl;
+  }
+
+  if (!to_be_removed.empty()) {
+    ceph_assert(remove_err < 0);
+    ldout(cct, 10) << "couldn't remove " << to_be_removed.size()
+                   << " expired images" << dendl;
+    return remove_err;
   }
 
   return 0;
index 1930c700591afdd3326d335fca9e63427ac8e5d0..ed9ca4e7a52156479925130e4b6578386e2963fd 100644 (file)
@@ -599,7 +599,7 @@ class CInode : public MDSCacheObject, public InodeStoreBase, public Counter<CIno
   pair<bool,bool> split_need_snapflush(CInode *cowin, CInode *in);
 
   // -- accessors --
-  bool is_root() const { return inode.ino == MDS_INO_ROOT; }
+  bool is_root() const { return ino() == CEPH_INO_ROOT; }
   bool is_stray() const { return MDS_INO_IS_STRAY(inode.ino); }
   mds_rank_t get_stray_owner() const {
     return (mds_rank_t)MDS_INO_STRAY_OWNER(inode.ino);
index c474b078b21d1bae54c15d0ea58b06637ada9a6b..150ad5764825712d592e0ac98220d121dfa57a0e 100644 (file)
@@ -164,11 +164,8 @@ bool DamageTable::notify_dirfrag(inodeno_t ino, frag_t frag,
 {
   // Special cases: damage to these dirfrags is considered fatal to
   // the MDS rank that owns them.
-  if (
-      (MDS_INO_IS_STRAY(ino) && MDS_INO_STRAY_OWNER(ino) == rank)
-      ||
-      (ino == MDS_INO_ROOT)
-     ) {
+  if ((MDS_INO_IS_STRAY(ino) && MDS_INO_STRAY_OWNER(ino) == rank)
+      || (ino == CEPH_INO_ROOT)) {
     derr << "Damage to fragment " << frag << " of ino " << ino
          << " is fatal because it is a system directory for this rank" << dendl;
     return true;
index 8f4cffa43a009840767dc35475f6cff8f62d7805..f8bebc0507d2ae1b4ad584878ba83bb7f8f8c84f 100644 (file)
@@ -472,7 +472,7 @@ void FSMap::update_compat(const CompatSet &c)
 
 void FSMap::encode(bufferlist& bl, uint64_t features) const
 {
-  ENCODE_START(7, 6, bl);
+  ENCODE_START(STRUCT_VERSION, 6, bl);
   encode(epoch, bl);
   encode(next_filesystem_id, bl);
   encode(legacy_client_fscid, bl);
@@ -497,7 +497,8 @@ void FSMap::decode(bufferlist::const_iterator& p)
   // MDSMonitor to store an FSMap instead of an MDSMap was
   // 5, so anything older than 6 is decoded as an MDSMap,
   // and anything newer is decoded as an FSMap.
-  DECODE_START_LEGACY_COMPAT_LEN_16(7, 4, 4, p);
+  DECODE_START_LEGACY_COMPAT_LEN_16(STRUCT_VERSION, 4, 4, p);
+  struct_version = struct_v;
   if (struct_v < 6) {
     // Because the mon used to store an MDSMap where we now
     // store an FSMap, FSMap knows how to decode the legacy
index feed962c8180b5244587373c85633ebcf909c329..72e57231d0e31bb982ece06ae15ea447dc5eedc6 100644 (file)
@@ -88,6 +88,9 @@ public:
   friend class PaxosFSMap;
   using mds_info_t = MDSMap::mds_info_t;
 
+  static const version_t STRUCT_VERSION = 7;
+  static const version_t STRUCT_VERSION_TRIM_TO = 7;
+
   FSMap() : compat(MDSMap::get_compat_set_default()) {}
 
   FSMap(const FSMap &rhs)
@@ -100,7 +103,8 @@ public:
       ever_enabled_multiple(rhs.ever_enabled_multiple),
       mds_roles(rhs.mds_roles),
       standby_daemons(rhs.standby_daemons),
-      standby_epochs(rhs.standby_epochs)
+      standby_epochs(rhs.standby_epochs),
+      struct_version(rhs.struct_version)
   {
     filesystems.clear();
     for (const auto &i : rhs.filesystems) {
@@ -339,6 +343,11 @@ public:
   epoch_t get_epoch() const { return epoch; }
   void inc_epoch() { epoch++; }
 
+  version_t get_struct_version() const { return struct_version; }
+  bool is_struct_old() const {
+    return struct_version < STRUCT_VERSION_TRIM_TO;
+  }
+
   size_t filesystem_count() const {return filesystems.size();}
   bool filesystem_exists(fs_cluster_id_t fscid) const {return filesystems.count(fscid) > 0;}
   Filesystem::const_ref get_filesystem(fs_cluster_id_t fscid) const {return std::const_pointer_cast<const Filesystem>(filesystems.at(fscid));}
@@ -409,6 +418,9 @@ protected:
   // For MDS daemons not yet assigned to a Filesystem
   std::map<mds_gid_t, mds_info_t> standby_daemons;
   std::map<mds_gid_t, epoch_t> standby_epochs;
+
+private:
+  epoch_t struct_version = 0;
 };
 WRITE_CLASS_ENCODER_FEATURES(FSMap)
 
index 31355f7a0b5524089b6a0d7e75410713e07a930a..2667622b44642636c054af464c996a40315721ec 100644 (file)
@@ -271,7 +271,7 @@ void MDCache::add_inode(CInode *in)
   }
 
   if (in->ino() < MDS_INO_SYSTEM_BASE) {
-    if (in->ino() == MDS_INO_ROOT)
+    if (in->ino() == CEPH_INO_ROOT)
       root = in;
     else if (in->ino() == MDS_INO_MDSDIR(mds->get_nodeid()))
       myin = in;
@@ -417,7 +417,7 @@ CInode *MDCache::create_system_inode(inodeno_t ino, int mode)
 
 CInode *MDCache::create_root_inode()
 {
-  CInode *i = create_system_inode(MDS_INO_ROOT, S_IFDIR|0755);
+  CInode *i = create_system_inode(CEPH_INO_ROOT, S_IFDIR|0755);
   i->inode.uid = g_conf()->mds_root_ino_uid;
   i->inode.gid = g_conf()->mds_root_ino_gid;
   i->inode.layout = default_file_layout;
@@ -610,10 +610,10 @@ void MDCache::open_root_inode(MDSContext *c)
 {
   if (mds->get_nodeid() == mds->mdsmap->get_root()) {
     CInode *in;
-    in = create_system_inode(MDS_INO_ROOT, S_IFDIR|0755);  // initially inaccurate!
+    in = create_system_inode(CEPH_INO_ROOT, S_IFDIR|0755);  // initially inaccurate!
     in->fetch(c);
   } else {
-    discover_base_ino(MDS_INO_ROOT, c, mds->mdsmap->get_root());
+    discover_base_ino(CEPH_INO_ROOT, c, mds->mdsmap->get_root());
   }
 }
 
@@ -1036,7 +1036,7 @@ void MDCache::adjust_bounded_subtree_auth(CDir *dir, const set<CDir*>& bounds, m
   show_subtrees();
 
   CDir *root;
-  if (dir->ino() == MDS_INO_ROOT) {
+  if (dir->ino() == CEPH_INO_ROOT) {
     root = dir;  // bootstrap hack.
     if (subtrees.count(root) == 0) {
       subtrees[root];
@@ -9788,7 +9788,7 @@ void MDCache::request_kill(MDRequestRef& mdr)
 void MDCache::create_global_snaprealm()
 {
   CInode *in = new CInode(this); // dummy inode
-  create_unlinked_system_inode(in, MDS_INO_GLOBAL_SNAPREALM, S_IFDIR|0755);
+  create_unlinked_system_inode(in, CEPH_INO_GLOBAL_SNAPREALM, S_IFDIR|0755);
   add_inode(in);
   global_snaprealm = in->snaprealm;
 }
@@ -10828,7 +10828,7 @@ void MDCache::decode_replica_inode(CInode *&in, bufferlist::const_iterator& p, C
     in->_decode_base(p);
     in->_decode_locks_state_for_replica(p, true);
     add_inode(in);
-    if (in->ino() == MDS_INO_ROOT)
+    if (in->ino() == CEPH_INO_ROOT)
       in->inode_auth.first = 0;
     else if (in->is_mdsdir())
       in->inode_auth.first = in->ino() - MDS_INO_MDSDIR_OFFSET;
@@ -11419,7 +11419,7 @@ bool MDCache::can_fragment(CInode *diri, const std::vector<CDir*>& dirs)
     dout(7) << "can_fragment: i won't merge|split anything in stray" << dendl;
     return false;
   }
-  if (diri->is_mdsdir() || diri->is_stray() || diri->ino() == MDS_INO_CEPH) {
+  if (diri->is_mdsdir() || diri->is_stray() || diri->ino() == CEPH_INO_CEPH) {
     dout(7) << "can_fragment: i won't fragment the mdsdir or straydir or .ceph" << dendl;
     return false;
   }
@@ -12490,7 +12490,7 @@ void MDCache::show_subtrees(int dbl, bool force_print)
     dout(ceph::dout::need_dynamic(dbl)) << indent << "|_" << pad << s
                                        << " " << auth << *dir << dendl;
 
-    if (dir->ino() == MDS_INO_ROOT)
+    if (dir->ino() == CEPH_INO_ROOT)
       ceph_assert(dir->inode == root);
     if (dir->ino() == MDS_INO_MDSDIR(mds->get_nodeid()))
       ceph_assert(dir->inode == myin);
index ee2d08cebba4728b04f82754f552848ba5b40399..2ee4c70b1790f04c3a96cf002a25b68b2127d932 100644 (file)
@@ -1088,9 +1088,9 @@ void MDLog::_recovery_thread(MDSContext *completion)
      * tolerate replaying old journals until we have to go active. Use front_journal as
      * our journaler attribute and complete */
     dout(4) << "Recovered journal " << jp.front << " in format " << front_journal->get_stream_format() << dendl;
-    journaler->set_write_error_handler(new C_MDL_WriteError(this));
     {
       std::lock_guard l(mds->mds_lock);
+      journaler->set_write_error_handler(new C_MDL_WriteError(this));
       if (mds->is_daemon_stopping()) {
         return;
       }
@@ -1273,17 +1273,14 @@ void MDLog::_reformat_journal(JournalPointer const &jp_in, Journaler *old_journa
     ceph_assert(journaler == old_journal);
     journaler = NULL;
     delete old_journal;
-  }
 
-  /* Update the pointer to reflect we're back in clean single journal state. */
-  jp.back = 0;
-  write_result = jp.save(mds->objecter);
-  ceph_assert(write_result == 0);
+    /* Update the pointer to reflect we're back in clean single journal state. */
+    jp.back = 0;
+    write_result = jp.save(mds->objecter);
+    ceph_assert(write_result == 0);
 
-  /* Reset the Journaler object to its default state */
-  dout(1) << "Journal rewrite complete, continuing with normal startup" << dendl;
-  {
-    std::lock_guard l(mds->mds_lock);
+    /* Reset the Journaler object to its default state */
+    dout(1) << "Journal rewrite complete, continuing with normal startup" << dendl;
     if (mds->is_daemon_stopping()) {
       delete new_journal;
       return;
@@ -1291,11 +1288,8 @@ void MDLog::_reformat_journal(JournalPointer const &jp_in, Journaler *old_journa
     journaler = new_journal;
     journaler->set_readonly();
     journaler->set_write_error_handler(new C_MDL_WriteError(this));
-  }
 
-  /* Trigger completion */
-  {
-    std::lock_guard l(mds->mds_lock);
+    /* Trigger completion */
     if (mds->is_daemon_stopping()) {
       return;
     }
index 74def09ea0728fe2248eac2322c5a1df5af3e6a7..f875715009170c37b793e3355d0b6bd6b33e3f34 100644 (file)
@@ -184,6 +184,7 @@ void MDSDaemon::asok_command(
     vector<string> argvec;
     get_str_vec(arg, argvec);
     cpu_profiler_handle_command(argvec, ss);
+    r = 0;
   } else {
     if (mds_rank == NULL) {
       dout(1) << "Can't run that command on an inactive MDS!" << dendl;
index 4b2ea17114a97085ccdbd65158bbc2a264189060..536f6e806f519d6677ded7eda9c0ebf214c43ad4 100644 (file)
@@ -304,6 +304,7 @@ struct MDRequestImpl : public MutationImpl {
     bool is_ambiguous_auth = false;
     bool is_remote_frozen_authpin = false;
     bool is_inode_exporter = false;
+    bool rdonly_checks = false;
 
     map<client_t, pair<Session*, uint64_t> > imported_session_map;
     map<CInode*, map<client_t,Capability::Export> > cap_imports;
index e4b9c28e3fe1eddf1086c486635cadf800b9e4bb..46ec83570253aec7aa23f5b5ba7ddd389fc31427 100644 (file)
@@ -3863,6 +3863,19 @@ void Server::handle_client_lookup_ino(MDRequestRef& mdr,
     return _lookup_snap_ino(mdr);
 
   inodeno_t ino = req->get_filepath().get_ino();
+  auto _ino = ino.val;
+
+  /* It's been observed [1] that a client may lookup a private ~mdsdir inode.
+   * I do not have an explanation for how that happened organically but this
+   * check will ensure that the client can no longer do that.
+   *
+   * [1] https://tracker.ceph.com/issues/49922
+   */
+  if (MDS_IS_PRIVATE_INO(_ino)) {
+    respond_to_request(mdr, -ESTALE);
+    return;
+  }
+
   CInode *in = mdcache->get_inode(ino);
   if (in && in->state_test(CInode::STATE_PURGING)) {
     respond_to_request(mdr, -ESTALE);
@@ -5637,9 +5650,36 @@ void Server::handle_set_vxattr(MDRequestRef& mdr, CInode *cur)
       return;
     }
 
-    if (!xlock_policylock(mdr, cur, false, true))
-      return;
+    /* Verify it's not already a subvolume with lighter weight
+     * rdlock.
+     */
+    if (!mdr->more()->rdonly_checks) {
+      if (!(mdr->locking_state & MutationImpl::ALL_LOCKED)) {
+        MutationImpl::LockOpVec lov;
+        lov.add_rdlock(&cur->snaplock);
+        if (!mds->locker->acquire_locks(mdr, lov))
+          return;
+        mdr->locking_state |= MutationImpl::ALL_LOCKED;
+      }
+      SnapRealm *realm = cur->find_snaprealm();
+      const auto srnode = cur->get_projected_srnode();
+      if (val == (srnode && srnode->is_subvolume())) {
+        dout(20) << "already marked subvolume" << dendl;
+        respond_to_request(mdr, 0);
+        return;
+      }
+      mdr->more()->rdonly_checks = true;
+    }
+
+    if ((mdr->locking_state & MutationImpl::ALL_LOCKED) && !mdr->is_xlocked(&cur->snaplock)) {
+      /* drop the rdlock and acquire xlocks */
+      dout(20) << "dropping rdlocks" << dendl;
+      mds->locker->drop_locks(mdr.get());
+      if (!xlock_policylock(mdr, cur, false, true))
+        return;
+    }
 
+    /* repeat rdonly checks in case changed between rdlock -> xlock */
     SnapRealm *realm = cur->find_snaprealm();
     if (val) {
       inodeno_t subvol_ino = realm->get_subvolume_ino();
index a8b9fe10caab96d2e3cd178187e61fbe8e6af2bc..de729d7b3f426f6a20726d9f6a7588c5ec78d8cf 100644 (file)
@@ -590,7 +590,8 @@ void Session::dump(Formatter *f, bool cap_dump) const
   }
   f->dump_float("uptime", get_session_uptime());
   f->dump_unsigned("requests_in_flight", get_request_count());
-  f->dump_unsigned("completed_requests", get_num_completed_requests());
+  f->dump_unsigned("num_completed_requests", get_num_completed_requests());
+  f->dump_unsigned("num_completed_flushes", get_num_completed_flushes());
   f->dump_bool("reconnecting", reconnecting);
   f->dump_object("recall_caps", recall_caps);
   f->dump_object("release_caps", release_caps);
index 7c89ba019d5874d063551d72d30b5372f76267d0..0b149faeeca29afb9eb58f3f57a041ef532d2d9e 100644 (file)
@@ -67,7 +67,7 @@ ostream& operator<<(ostream& out, const SnapRealm& realm)
 SnapRealm::SnapRealm(MDCache *c, CInode *in) :
     mdcache(c), inode(in)
 {
-  global = (inode->ino() == MDS_INO_GLOBAL_SNAPREALM);
+  global = (inode->ino() == CEPH_INO_GLOBAL_SNAPREALM);
 }
 
 void SnapRealm::add_open_past_parent(SnapRealm *parent, snapid_t last)
index 5b38f55587fc5d6333f0012807d5ab84ad87e5b7..8ca83b97f3edb44e490c09ae8554ddab5db89cbc 100644 (file)
@@ -54,7 +54,7 @@ public:
   void check_osd_map(bool force);
 
   void mark_base_recursively_scrubbed(inodeno_t ino) {
-    if (ino ==  MDS_INO_ROOT)
+    if (ino ==  CEPH_INO_ROOT)
       root_scrubbed = true;
     else if (ino == MDS_INO_MDSDIR(rank))
       mdsdir_scrubbed = true;
index 3f0b05a095284122fa04c9022a1f47a651ac4b2b..d8e3efde619ce309f80b4af7290fb273104059e7 100644 (file)
@@ -23,6 +23,7 @@
 #include "include/compact_map.h"
 #include "include/compact_set.h"
 #include "include/fs_types.h"
+#include "include/ceph_fs.h"
 
 #include "inode_backtrace.h"
 
 #define MAX_MDS                   0x100
 #define NUM_STRAY                 10
 
-#define MDS_INO_ROOT              1
-
-// No longer created but recognised in existing filesystems
-// so that we don't try to fragment it.
-#define MDS_INO_CEPH              2
-
-#define MDS_INO_GLOBAL_SNAPREALM  3
+// Inode numbers 1,2 and 4 please see CEPH_INO_* in include/ceph_fs.h
 
 #define MDS_INO_MDSDIR_OFFSET     (1*MAX_MDS)
 #define MDS_INO_STRAY_OFFSET      (6*MAX_MDS)
 #define MDS_INO_IS_STRAY(i)  ((i) >= MDS_INO_STRAY_OFFSET  && (i) < (MDS_INO_STRAY_OFFSET+(MAX_MDS*NUM_STRAY)))
 #define MDS_INO_IS_MDSDIR(i) ((i) >= MDS_INO_MDSDIR_OFFSET && (i) < (MDS_INO_MDSDIR_OFFSET+MAX_MDS))
 #define MDS_INO_MDSDIR_OWNER(i) (signed ((unsigned (i)) - MDS_INO_MDSDIR_OFFSET))
-#define MDS_INO_IS_BASE(i)   ((i) == MDS_INO_ROOT || (i) == MDS_INO_GLOBAL_SNAPREALM || MDS_INO_IS_MDSDIR(i))
+#define MDS_INO_IS_BASE(i)   ((i) == CEPH_INO_ROOT || (i) == CEPH_INO_GLOBAL_SNAPREALM || MDS_INO_IS_MDSDIR(i))
 #define MDS_INO_STRAY_OWNER(i) (signed (((unsigned (i)) - MDS_INO_STRAY_OFFSET) / NUM_STRAY))
 #define MDS_INO_STRAY_INDEX(i) (((unsigned (i)) - MDS_INO_STRAY_OFFSET) % NUM_STRAY)
 
+#define MDS_IS_PRIVATE_INO(i) ((i) < MDS_INO_SYSTEM_BASE && (i) >= MDS_INO_MDSDIR_OFFSET)
+
 typedef int32_t mds_rank_t;
 constexpr mds_rank_t MDS_RANK_NONE = -1;
 
index ff548a155faa00fc999e22d5b03ec189d4fab145..8f02c1211649f61acb179fe240ad124748f63f8d 100644 (file)
@@ -2708,8 +2708,12 @@ void DaemonServer::adjust_pgs()
                                 max_misplaced / 2.0);
              unsigned estmax = std::max<unsigned>(
                (double)p.get_pg_num() * room, 1u);
+             unsigned next_min = 0;
+             if (p.get_pgp_num() > estmax) {
+               next_min = p.get_pgp_num() - estmax;
+             }
              next = std::clamp(target,
-                               p.get_pgp_num() - estmax,
+                               next_min,
                                p.get_pgp_num() + estmax);
              dout(20) << " room " << room << " estmax " << estmax
                       << " delta " << (target-p.get_pgp_num())
@@ -2732,11 +2736,13 @@ void DaemonServer::adjust_pgs()
                }
              }
            }
-           dout(10) << "pool " << i.first
-                    << " pgp_num_target " << p.get_pgp_num_target()
-                    << " pgp_num " << p.get_pgp_num()
-                    << " -> " << next << dendl;
-           pgp_num_to_set[osdmap.get_pool_name(i.first)] = next;
+           if (next != p.get_pgp_num()) {
+             dout(10) << "pool " << i.first
+                      << " pgp_num_target " << p.get_pgp_num_target()
+                      << " pgp_num " << p.get_pgp_num()
+                      << " -> " << next << dendl;
+             pgp_num_to_set[osdmap.get_pool_name(i.first)] = next;
+           }
          }
        }
        if (left == 0) {
index 42680e5f44b621a39d0b9a7b1d49eadac6d197ad..7ee218dc06a0b6a8651630ada923cca5b9d9e414 100644 (file)
  * Foundation.  See file COPYING.
  */
 
+#include "PyModuleRegistry.h"
+
+#if __has_include(<filesystem>)
+#include <filesystem>
+namespace fs = std::filesystem;
+#elif __has_include(<experimental/filesystem>)
+#include <experimental/filesystem>
+namespace fs = std::experimental::filesystem;
+#else
+#error std::filesystem not available!
+#endif
 
 #include "include/stringify.h"
 #include "common/errno.h"
+#include "common/split.h"
 
 #include "BaseMgrModule.h"
 #include "PyOSDMap.h"
@@ -24,8 +36,6 @@
 
 #include "ActivePyModules.h"
 
-#include "PyModuleRegistry.h"
-
 #define dout_context g_ceph_context
 #define dout_subsys ceph_subsys_mgr
 
@@ -260,29 +270,25 @@ void PyModuleRegistry::shutdown()
 
 std::set<std::string> PyModuleRegistry::probe_modules(const std::string &path) const
 {
-  DIR *dir = opendir(path.c_str());
-  if (!dir) {
-    return {};
-  }
+  const auto opt = g_conf().get_val<std::string>("mgr_disabled_modules");
+  const auto disabled_modules = ceph::split(opt);
 
-  std::set<std::string> modules_out;
-  struct dirent *entry = NULL;
-  while ((entry = readdir(dir)) != NULL) {
-    string n(entry->d_name);
-    string fn = path + "/" + n;
-    struct stat st;
-    int r = ::stat(fn.c_str(), &st);
-    if (r == 0 && S_ISDIR(st.st_mode)) {
-      string initfn = fn + "/module.py";
-      r = ::stat(initfn.c_str(), &st);
-      if (r == 0) {
-       modules_out.insert(n);
-      }
+  std::set<std::string> modules;
+  for (const auto& entry: fs::directory_iterator(path)) {
+    if (!fs::is_directory(entry)) {
+      continue;
+    }
+    const std::string name = entry.path().filename();
+    if (std::count(disabled_modules.begin(), disabled_modules.end(), name)) {
+      dout(10) << "ignoring disabled module " << name << dendl;
+      continue;
+    }
+    auto module_path = entry.path() / "module.py";
+    if (fs::exists(module_path)) {
+      modules.emplace(name);
     }
   }
-  closedir(dir);
-
-  return modules_out;
+  return modules;
 }
 
 int PyModuleRegistry::handle_command(
index 7ff5f889e69d07ebb2a7efec2dc0d61278e87109..21604acb8474de838bfe8d44de6c9935e771ea19 100644 (file)
@@ -120,7 +120,12 @@ void MDSMonitor::update_from_paxos(bool *need_bootstrap)
 
   ceph_assert(fsmap_bl.length() > 0);
   dout(10) << __func__ << " got " << version << dendl;
-  PaxosFSMap::decode(fsmap_bl);
+  try {
+    PaxosFSMap::decode(fsmap_bl);
+  } catch (const ceph::buffer::malformed_input& e) {
+    derr << "unable to decode FSMap: " << e.what() << dendl;
+    throw;
+  }
 
   // new map
   dout(0) << "new map" << dendl;
@@ -264,7 +269,7 @@ version_t MDSMonitor::get_trim_to() const
 {
   version_t floor = 0;
   if (g_conf()->mon_mds_force_trim_to > 0 &&
-      g_conf()->mon_mds_force_trim_to < (int)get_last_committed()) {
+      g_conf()->mon_mds_force_trim_to <= (int)get_last_committed()) {
     floor = g_conf()->mon_mds_force_trim_to;
     dout(10) << __func__ << " explicit mon_mds_force_trim_to = "
              << floor << dendl;
@@ -273,8 +278,11 @@ version_t MDSMonitor::get_trim_to() const
   unsigned max = g_conf()->mon_max_mdsmap_epochs;
   version_t last = get_last_committed();
 
-  if (last - get_first_committed() > max && floor < last - max)
-    return last - max;
+  if (last - get_first_committed() > max && floor < last - max) {
+    floor = last-max;
+  }
+
+  dout(20) << __func__ << " = " << floor << dendl;
   return floor;
 }
 
@@ -2171,6 +2179,34 @@ void MDSMonitor::tick()
   bool do_propose = false;
   bool propose_osdmap = false;
 
+  if (check_fsmap_struct_version) {
+    /* Allow time for trimming otherwise PaxosService::is_writeable will always
+     * be false.
+     */
+
+    auto now = clock::now();
+    auto elapsed = now - last_fsmap_struct_flush;
+    if (elapsed > std::chrono::seconds(30)) {
+      FSMap fsmap;
+      bufferlist bl;
+      auto v = get_first_committed();
+      int err = get_version(v, bl);
+      if (err) {
+        derr << "could not get version " << v << dendl;
+        ceph_abort();
+      }
+      fsmap.decode(bl);
+      if (fsmap.is_struct_old()) {
+        dout(5) << "fsmap struct is too old; proposing to flush out old versions" << dendl;
+        do_propose = true;
+        last_fsmap_struct_flush = now;
+      } else {
+        dout(20) << "struct is recent" << dendl;
+        check_fsmap_struct_version = false;
+      }
+    }
+  }
+
   do_propose |= pending.check_health();
 
   /* Check health and affinity of ranks */
index 56762a8afb7ba0b47cfb359f5b8474ce01d70031..51be614dae1494c286bed9c5f0542edaaf3964af 100644 (file)
@@ -32,6 +32,9 @@ class FileSystemCommandHandler;
 
 class MDSMonitor : public PaxosService, public PaxosFSMap, protected CommandHandler {
  public:
+  using clock = ceph::coarse_mono_clock;
+  using time = ceph::coarse_mono_time;
+
   MDSMonitor(Monitor *mn, Paxos *p, string service_name);
 
   // service methods
@@ -142,6 +145,10 @@ protected:
   // when the mon was not updating us for some period (e.g. during slow
   // election) to reset last_beacon timeouts
   mono_time last_tick = mono_clock::zero();
+
+private:
+  time last_fsmap_struct_flush = clock::zero();
+  bool check_fsmap_struct_version = true;
 };
 
 #endif
index b94b4d9a9ead41903fac03dc635c46ebf7d8cbd5..2c8cd663bfa5dfc8d70405eddc24c2c1c78ef234 100644 (file)
@@ -137,6 +137,14 @@ int MonClient::get_monmap_and_config()
     }
   });
 
+  want_bootstrap_config = true;
+  auto shutdown_config = make_scope_guard([this] {
+    std::unique_lock l(monc_lock);
+    want_bootstrap_config = false;
+    bootstrap_config.reset();
+  });
+
+  ceph::ref_t<MConfig> config;
   while (tries-- > 0) {
     r = init();
     if (r < 0) {
@@ -160,7 +168,7 @@ int MonClient::get_monmap_and_config()
        r = 0;
        break;
       }
-      while ((!got_config || monmap.get_epoch() == 0) && r == 0) {
+      while ((!bootstrap_config || monmap.get_epoch() == 0) && r == 0) {
        ldout(cct,20) << __func__ << " waiting for monmap|config" << dendl;
        auto status = map_cond.wait_for(l, ceph::make_timespan(
            cct->_conf->mon_client_hunt_interval));
@@ -168,8 +176,10 @@ int MonClient::get_monmap_and_config()
          r = -ETIMEDOUT;
        }
       }
-      if (got_config) {
+
+      if (bootstrap_config) {
        ldout(cct,10) << __func__ << " success" << dendl;
+       config = std::move(bootstrap_config);
        r = 0;
        break;
       }
@@ -179,6 +189,12 @@ int MonClient::get_monmap_and_config()
     continue;
   }
 
+  if (config) {
+    // apply the bootstrap config to ensure its applied prior to completing
+    // the bootstrap
+    cct->_conf.set_mon_vals(cct, config->config, config_cb);
+  }
+
   shutdown();
   return r;
 }
@@ -437,6 +453,15 @@ void MonClient::handle_monmap(MMonMap *m)
 void MonClient::handle_config(MConfig *m)
 {
   ldout(cct,10) << __func__ << " " << *m << dendl;
+
+  if (want_bootstrap_config) {
+    // get_monmap_and_config is waiting for config which it will apply
+    // synchronously
+    bootstrap_config = ceph::ref_t<MConfig>(m, false);
+    map_cond.notify_all();
+    return;
+  }
+
   finisher.queue(new LambdaContext([this, m](int r) {
        cct->_conf.set_mon_vals(cct, m->config, config_cb);
        if (config_notify_cb) {
@@ -444,8 +469,6 @@ void MonClient::handle_config(MConfig *m)
        }
        m->put();
       }));
-  got_config = true;
-  map_cond.notify_all();
 }
 
 // ----------------------
@@ -1074,10 +1097,11 @@ int MonClient::wait_auth_rotating(double timeout)
     return 0;
 
   ldout(cct, 10) << __func__ << " waiting for " << timeout << dendl;
-  utime_t now = ceph_clock_now();
-  if (auth_cond.wait_for(l, ceph::make_timespan(timeout), [now, this] {
+  utime_t cutoff = ceph_clock_now();
+  cutoff -= std::min(30.0, cct->_conf->auth_service_ticket_ttl / 4.0);
+  if (auth_cond.wait_for(l, ceph::make_timespan(timeout), [this, cutoff] {
     return (!auth_principal_needs_rotating_keys(entity_name) ||
-           !rotating_secrets->need_new_secrets(now));
+           !rotating_secrets->need_new_secrets(cutoff));
   })) {
     ldout(cct, 10) << __func__ << " done" << dendl;
     return 0;
index 80262200b612b53459e5fd822d9d00799a3fadb4..f10b447a6e2f4b5d945cfebe5323eb5aacfa4db9 100644 (file)
@@ -290,7 +290,9 @@ private:
   bool want_monmap;
   ceph::condition_variable map_cond;
   bool passthrough_monmap = false;
-  bool got_config = false;
+
+  bool want_bootstrap_config = false;
+  ceph::ref_t<MConfig> bootstrap_config;
 
   // authenticate
   std::unique_ptr<AuthClientHandler> auth;
index 833e7c4cc134f6fce6c441901431b2c229842eeb..877ce53a6fd4a288d2e9d6ae1421119563274161 100644 (file)
@@ -3102,8 +3102,9 @@ bool OSDMonitor::check_failures(utime_t now)
   auto p = failure_info.begin();
   while (p != failure_info.end()) {
     auto& [target_osd, fi] = *p;
-    if (can_mark_down(target_osd)) {
-      found_failure |= check_failure(now, target_osd, fi);
+    if (can_mark_down(target_osd) &&
+       check_failure(now, target_osd, fi)) {
+      found_failure = true;
       ++p;
     } else if (is_failure_stale(now, fi)) {
       dout(10) << " dropping stale failure_info for osd." << target_osd
index dc994e194eb7347807924d0a7dec1cc90f3e2f70..1acadebbea641c1bd78a4dd77a88b15cd02dc8c0 100644 (file)
@@ -372,11 +372,17 @@ void PaxosService::maybe_trim()
   if (!is_writeable())
     return;
 
+  const version_t first_committed = get_first_committed();
   version_t trim_to = get_trim_to();
-  if (trim_to < get_first_committed())
+  dout(20) << __func__ << " " << first_committed << "~" << trim_to << dendl;
+
+  if (trim_to < first_committed) {
+    dout(10) << __func__ << " trim_to " << trim_to << " < first_committed "
+            << first_committed << dendl;
     return;
+  }
 
-  version_t to_remove = trim_to - get_first_committed();
+  version_t to_remove = trim_to - first_committed;
   const version_t trim_min = g_conf().get_val<version_t>("paxos_service_trim_min");
   if (trim_min > 0 &&
       to_remove < trim_min) {
@@ -385,13 +391,13 @@ void PaxosService::maybe_trim()
     return;
   }
 
-  to_remove = [to_remove, this] {
+  to_remove = [to_remove, trim_to, this] {
     const version_t trim_max = g_conf().get_val<version_t>("paxos_service_trim_max");
     if (trim_max == 0 || to_remove < trim_max) {
       return to_remove;
     }
     if (to_remove < trim_max * 1.5) {
-      dout(10) << __func__ << " trim to " << get_trim_to() << " would only trim " << to_remove
+      dout(10) << __func__ << " trim to " << trim_to << " would only trim " << to_remove
              << " > paxos_service_trim_max, limiting to " << trim_max
              << dendl;
       return trim_max;
@@ -404,11 +410,11 @@ void PaxosService::maybe_trim()
       return new_trim_max;
     }
   }();
-  trim_to = get_first_committed() + to_remove;
+  trim_to = first_committed + to_remove;
 
   dout(10) << __func__ << " trimming to " << trim_to << ", " << to_remove << " states" << dendl;
   MonitorDBStore::TransactionRef t = paxos->get_pending_transaction();
-  trim(t, get_first_committed(), trim_to);
+  trim(t, first_committed, trim_to);
   put_first_committed(t, trim_to);
   cached_first_committed = trim_to;
 
index 0ac70baa80c3acd6cd87c03bfb59d06158730842..b66ea33fce8e873597fadac416656e83be1a7e7c 100644 (file)
@@ -219,16 +219,6 @@ int AvlAllocator::_allocate(
     ceph_assert(size > 0);
     force_range_size_alloc = true;
   }
-  /*
-   * Find the largest power of 2 block size that evenly divides the
-   * requested size. This is used to try to allocate blocks with similar
-   * alignment from the same area (i.e. same cursor bucket) but it does
-   * not guarantee that other allocations sizes may exist in the same
-   * region.
-   */
-  const uint64_t align = size & -size;
-  ceph_assert(align != 0);
-  uint64_t *cursor = &lbas[cbits(align) - 1];
 
   const int free_pct = num_free * 100 / num_total;
   uint64_t start = 0;
@@ -239,10 +229,11 @@ int AvlAllocator::_allocate(
   if (force_range_size_alloc ||
       max_size < range_size_alloc_threshold ||
       free_pct < range_size_alloc_free_pct) {
-    *cursor = 0;
+    uint64_t fake_cursor = 0;
     do {
-      start = _block_picker(range_size_tree, cursor, size, unit);
-      if (start != -1ULL || !force_range_size_alloc) {
+      start = _block_picker(range_size_tree, &fake_cursor, size, unit);
+      dout(20) << __func__ << " best fit=" << start << " size=" << size << dendl;
+      if (start != uint64_t(-1ULL)) {
         break;
       }
       // try to collect smaller extents as we could fail to retrieve
@@ -250,7 +241,27 @@ int AvlAllocator::_allocate(
       size = p2align(size >> 1, unit);
     } while (size >= unit);
   } else {
-    start = _block_picker(range_tree, cursor, size, unit);
+    do {
+      /*
+       * Find the largest power of 2 block size that evenly divides the
+       * requested size. This is used to try to allocate blocks with similar
+       * alignment from the same area (i.e. same cursor bucket) but it does
+       * not guarantee that other allocations sizes may exist in the same
+       * region.
+       */
+      uint64_t align = size & -size;
+      ceph_assert(align != 0);
+      uint64_t* cursor = &lbas[cbits(align) - 1];
+
+      start = _block_picker(range_tree, cursor, size, unit);
+      dout(20) << __func__ << " first fit=" << start << " size=" << size << dendl;
+      if (start != uint64_t(-1ULL)) {
+        break;
+      }
+      // try to collect smaller extents as we could fail to retrieve
+      // that large block due to misaligned extents
+      size = p2align(size >> 1, unit);
+    } while (size >= unit);
   }
   if (start == -1ULL) {
     return -ENOSPC;
@@ -405,6 +416,8 @@ void AvlAllocator::dump(std::function<void(uint64_t offset, uint64_t length)> no
 
 void AvlAllocator::init_add_free(uint64_t offset, uint64_t length)
 {
+  if (!length)
+    return;
   std::lock_guard l(lock);
   ldout(cct, 10) << __func__ << std::hex
                  << " offset 0x" << offset
@@ -415,6 +428,8 @@ void AvlAllocator::init_add_free(uint64_t offset, uint64_t length)
 
 void AvlAllocator::init_rm_free(uint64_t offset, uint64_t length)
 {
+  if (!length)
+    return;
   std::lock_guard l(lock);
   ldout(cct, 10) << __func__ << std::hex
                  << " offset 0x" << offset
index 03cc9c5fe868c3c7aa1780570a8fbc1ff4decff1..bc6d34012bcbf4aa71791824925df19fb0ffdf1e 100644 (file)
@@ -2841,6 +2841,33 @@ int BlueFS::_flush_and_sync_log(std::unique_lock<ceph::mutex>& l,
   return 0;
 }
 
+int BlueFS::_signal_dirty_to_log(FileWriter *h)
+{
+  h->file->fnode.mtime = ceph_clock_now();
+  ceph_assert(h->file->fnode.ino >= 1);
+  if (h->file->dirty_seq == 0) {
+    h->file->dirty_seq = log_seq + 1;
+    dirty_files[h->file->dirty_seq].push_back(*h->file);
+    dout(20) << __func__ << " dirty_seq = " << log_seq + 1
+            << " (was clean)" << dendl;
+  } else {
+    if (h->file->dirty_seq != log_seq + 1) {
+      // need re-dirty, erase from list first
+      ceph_assert(dirty_files.count(h->file->dirty_seq));
+      auto it = dirty_files[h->file->dirty_seq].iterator_to(*h->file);
+      dirty_files[h->file->dirty_seq].erase(it);
+      h->file->dirty_seq = log_seq + 1;
+      dirty_files[h->file->dirty_seq].push_back(*h->file);
+      dout(20) << __func__ << " dirty_seq = " << log_seq + 1
+              << " (was " << h->file->dirty_seq << ")" << dendl;
+    } else {
+      dout(20) << __func__ << " dirty_seq = " << log_seq + 1
+              << " (unchanged, do nothing) " << dendl;
+    }
+  }
+  return 0;
+}
+
 int BlueFS::_flush_range(FileWriter *h, uint64_t offset, uint64_t length)
 {
   dout(10) << __func__ << " " << h << " pos 0x" << std::hex << h->pos
@@ -2876,7 +2903,7 @@ int BlueFS::_flush_range(FileWriter *h, uint64_t offset, uint64_t length)
   vselector->sub_usage(h->file->vselector_hint, h->file->fnode);
   // do not bother to dirty the file if we are overwriting
   // previously allocated extents.
-  bool must_dirty = false;
+
   if (allocated < offset + length) {
     // we should never run out of log space here; see the min runway check
     // in _flush_and_sync_log.
@@ -2892,7 +2919,7 @@ int BlueFS::_flush_range(FileWriter *h, uint64_t offset, uint64_t length)
       ceph_abort_msg("bluefs enospc");
       return r;
     }
-    must_dirty = true;
+    h->file->is_dirty = true;
   }
   if (h->file->fnode.size < offset + length) {
     h->file->fnode.size = offset + length;
@@ -2900,34 +2927,10 @@ int BlueFS::_flush_range(FileWriter *h, uint64_t offset, uint64_t length)
       // we do not need to dirty the log file (or it's compacting
       // replacement) when the file size changes because replay is
       // smart enough to discover it on its own.
-      must_dirty = true;
-    }
-  }
-  if (must_dirty) {
-    h->file->fnode.mtime = ceph_clock_now();
-    ceph_assert(h->file->fnode.ino >= 1);
-    if (h->file->dirty_seq == 0) {
-      h->file->dirty_seq = log_seq + 1;
-      dirty_files[h->file->dirty_seq].push_back(*h->file);
-      dout(20) << __func__ << " dirty_seq = " << log_seq + 1
-              << " (was clean)" << dendl;
-    } else {
-      if (h->file->dirty_seq != log_seq + 1) {
-        // need re-dirty, erase from list first
-        ceph_assert(dirty_files.count(h->file->dirty_seq));
-        auto it = dirty_files[h->file->dirty_seq].iterator_to(*h->file);
-        dirty_files[h->file->dirty_seq].erase(it);
-        h->file->dirty_seq = log_seq + 1;
-        dirty_files[h->file->dirty_seq].push_back(*h->file);
-        dout(20) << __func__ << " dirty_seq = " << log_seq + 1
-                 << " (was " << h->file->dirty_seq << ")" << dendl;
-      } else {
-        dout(20) << __func__ << " dirty_seq = " << log_seq + 1
-                 << " (unchanged, do nothing) " << dendl;
-      }
+      h->file->is_dirty = true;
     }
   }
-  dout(20) << __func__ << " file now " << h->file->fnode << dendl;
+  dout(20) << __func__ << " file now, unflushed " << h->file->fnode << dendl;
 
   uint64_t x_off = 0;
   auto p = h->file->fnode.seek(offset, &x_off);
@@ -3148,6 +3151,10 @@ int BlueFS::_fsync(FileWriter *h, std::unique_lock<ceph::mutex>& l)
   int r = _flush(h, true);
   if (r < 0)
      return r;
+  if (h->file->is_dirty) {
+    _signal_dirty_to_log(h);
+    h->file->is_dirty = false;
+  }
   uint64_t old_dirty_seq = h->file->dirty_seq;
 
   _flush_bdev_safely(h);
@@ -3402,8 +3409,8 @@ void BlueFS::_maybe_compact_log(std::unique_lock<ceph::mutex>& l)
 }
 
 int BlueFS::open_for_write(
-  const string& dirname,
-  const string& filename,
+  std::string_view dirname,
+  std::string_view filename,
   FileWriter **h,
   bool overwrite)
 {
@@ -3434,7 +3441,7 @@ int BlueFS::open_for_write(
     file = ceph::make_ref<File>();
     file->fnode.ino = ++ino_last;
     file_map[ino_last] = file;
-    dir->file_map[filename] = file;
+    dir->file_map[string{filename}] = file;
     ++file->refs;
     create = true;
   } else {
@@ -3518,9 +3525,21 @@ void BlueFS::_close_writer(FileWriter *h)
   delete h;
 }
 
+uint64_t BlueFS::debug_get_dirty_seq(FileWriter *h)
+{
+  std::lock_guard l(lock);
+  return h->file->dirty_seq;
+}
+
+bool BlueFS::debug_get_is_dev_dirty(FileWriter *h, uint8_t dev)
+{
+  std::lock_guard l(lock);
+  return h->dirty_devs[dev];
+}
+
 int BlueFS::open_for_read(
-  const string& dirname,
-  const string& filename,
+  std::string_view dirname,
+  std::string_view filename,
   FileReader **h,
   bool random)
 {
@@ -3550,8 +3569,8 @@ int BlueFS::open_for_read(
 }
 
 int BlueFS::rename(
-  const string& old_dirname, const string& old_filename,
-  const string& new_dirname, const string& new_filename)
+  std::string_view old_dirname, std::string_view old_filename,
+  std::string_view new_dirname, std::string_view new_filename)
 {
   std::lock_guard l(lock);
   dout(10) << __func__ << " " << old_dirname << "/" << old_filename
@@ -3590,15 +3609,15 @@ int BlueFS::rename(
   dout(10) << __func__ << " " << new_dirname << "/" << new_filename << " "
           << " " << file->fnode << dendl;
 
-  new_dir->file_map[new_filename] = file;
-  old_dir->file_map.erase(old_filename);
+  new_dir->file_map[string{new_filename}] = file;
+  old_dir->file_map.erase(string{old_filename});
 
   log_t.op_dir_link(new_dirname, new_filename, file->fnode.ino);
   log_t.op_dir_unlink(old_dirname, old_filename);
   return 0;
 }
 
-int BlueFS::mkdir(const string& dirname)
+int BlueFS::mkdir(std::string_view dirname)
 {
   std::lock_guard l(lock);
   dout(10) << __func__ << " " << dirname << dendl;
@@ -3607,16 +3626,16 @@ int BlueFS::mkdir(const string& dirname)
     dout(20) << __func__ << " dir " << dirname << " exists" << dendl;
     return -EEXIST;
   }
-  dir_map[dirname] = ceph::make_ref<Dir>();
+  dir_map[string{dirname}] = ceph::make_ref<Dir>();
   log_t.op_dir_create(dirname);
   return 0;
 }
 
-int BlueFS::rmdir(const string& dirname)
+int BlueFS::rmdir(std::string_view dirname)
 {
   std::lock_guard l(lock);
   dout(10) << __func__ << " " << dirname << dendl;
-  map<string,DirRef>::iterator p = dir_map.find(dirname);
+  auto p = dir_map.find(dirname);
   if (p == dir_map.end()) {
     dout(20) << __func__ << " dir " << dirname << " does not exist" << dendl;
     return -ENOENT;
@@ -3626,12 +3645,12 @@ int BlueFS::rmdir(const string& dirname)
     dout(20) << __func__ << " dir " << dirname << " not empty" << dendl;
     return -ENOTEMPTY;
   }
-  dir_map.erase(dirname);
+  dir_map.erase(string{dirname});
   log_t.op_dir_remove(dirname);
   return 0;
 }
 
-bool BlueFS::dir_exists(const string& dirname)
+bool BlueFS::dir_exists(std::string_view dirname)
 {
   std::lock_guard l(lock);
   map<string,DirRef>::iterator p = dir_map.find(dirname);
@@ -3640,7 +3659,7 @@ bool BlueFS::dir_exists(const string& dirname)
   return exists;
 }
 
-int BlueFS::stat(const string& dirname, const string& filename,
+int BlueFS::stat(std::string_view dirname, std::string_view filename,
                 uint64_t *size, utime_t *mtime)
 {
   std::lock_guard l(lock);
@@ -3668,7 +3687,7 @@ int BlueFS::stat(const string& dirname, const string& filename,
   return 0;
 }
 
-int BlueFS::lock_file(const string& dirname, const string& filename,
+int BlueFS::lock_file(std::string_view dirname, std::string_view filename,
                      FileLock **plock)
 {
   std::lock_guard l(lock);
@@ -3679,7 +3698,7 @@ int BlueFS::lock_file(const string& dirname, const string& filename,
     return -ENOENT;
   }
   DirRef dir = p->second;
-  map<string,FileRef>::iterator q = dir->file_map.find(filename);
+  auto q = dir->file_map.find(filename);
   FileRef file;
   if (q == dir->file_map.end()) {
     dout(20) << __func__ << " dir " << dirname << " (" << dir
@@ -3689,7 +3708,7 @@ int BlueFS::lock_file(const string& dirname, const string& filename,
     file->fnode.ino = ++ino_last;
     file->fnode.mtime = ceph_clock_now();
     file_map[ino_last] = file;
-    dir->file_map[filename] = file;
+    dir->file_map[string{filename}] = file;
     ++file->refs;
     log_t.op_file_update(file->fnode);
     log_t.op_dir_link(dirname, filename, file->fnode.ino);
@@ -3717,8 +3736,12 @@ int BlueFS::unlock_file(FileLock *fl)
   return 0;
 }
 
-int BlueFS::readdir(const string& dirname, vector<string> *ls)
+int BlueFS::readdir(std::string_view dirname, vector<string> *ls)
 {
+  // dirname may contain a trailing /
+  if (!dirname.empty() && dirname.back() == '/') {
+    dirname.remove_suffix(1);
+  }
   std::lock_guard l(lock);
   dout(10) << __func__ << " " << dirname << dendl;
   if (dirname.empty()) {
@@ -3745,7 +3768,7 @@ int BlueFS::readdir(const string& dirname, vector<string> *ls)
   return 0;
 }
 
-int BlueFS::unlink(const string& dirname, const string& filename)
+int BlueFS::unlink(std::string_view dirname, std::string_view filename)
 {
   std::lock_guard l(lock);
   dout(10) << __func__ << " " << dirname << "/" << filename << dendl;
@@ -3767,7 +3790,7 @@ int BlueFS::unlink(const string& dirname, const string& filename)
              << " is locked" << dendl;
     return -EBUSY;
   }
-  dir->file_map.erase(filename);
+  dir->file_map.erase(string{filename});
   log_t.op_dir_unlink(dirname, filename);
   _drop_link(file);
   return 0;
@@ -3984,7 +4007,7 @@ void BlueFS::debug_inject_duplicate_gift(unsigned id,
 void* OriginalVolumeSelector::get_hint_for_log() const {
   return reinterpret_cast<void*>(BlueFS::BDEV_WAL);
 }
-void* OriginalVolumeSelector::get_hint_by_dir(const string& dirname) const {
+void* OriginalVolumeSelector::get_hint_by_dir(std::string_view dirname) const {
   uint8_t res = BlueFS::BDEV_DB;
   if (dirname.length() > 5) {
     // the "db.slow" and "db.wal" directory names are hard-coded at
index 3fd67c4021f641289bd5e794ed84de2a3070972b..659c4c9e615e3d0540b183fb09e3bfc3604f95ad 100644 (file)
@@ -84,7 +84,7 @@ public:
   virtual ~BlueFSVolumeSelector() {
   }
   virtual void* get_hint_for_log() const = 0;
-  virtual void* get_hint_by_dir(const std::string& dirname) const = 0;
+  virtual void* get_hint_by_dir(std::string_view dirname) const = 0;
 
   virtual void add_usage(void* file_hint, const bluefs_fnode_t& fnode) = 0;
   virtual void sub_usage(void* file_hint, const bluefs_fnode_t& fnode) = 0;
@@ -120,6 +120,7 @@ public:
     uint64_t dirty_seq;
     bool locked;
     bool deleted;
+    bool is_dirty;
     boost::intrusive::list_member_hook<> dirty_item;
 
     std::atomic_int num_readers, num_writers;
@@ -135,6 +136,7 @@ public:
        dirty_seq(0),
        locked(false),
        deleted(false),
+       is_dirty(false),
        num_readers(0),
        num_writers(0),
        num_reading(0),
@@ -159,7 +161,7 @@ public:
   struct Dir : public RefCountedObject {
     MEMPOOL_CLASS_HELPERS();
 
-    mempool::bluefs::map<string,FileRef> file_map;
+    mempool::bluefs::map<std::string, FileRef, std::less<>> file_map;
 
   private:
     FRIEND_MAKE_REF(Dir);
@@ -293,8 +295,8 @@ private:
   };
 
   // cache
-  mempool::bluefs::map<string, DirRef> dir_map;              ///< dirname -> Dir
-  mempool::bluefs::unordered_map<uint64_t,FileRef> file_map; ///< ino -> File
+  mempool::bluefs::map<std::string, DirRef, std::less<>> dir_map;          ///< dirname -> Dir
+  mempool::bluefs::unordered_map<uint64_t, FileRef> file_map; ///< ino -> File
 
   // map of dirty files, files of same dirty_seq are grouped into list.
   map<uint64_t, dirty_file_list_t> dirty_files;
@@ -360,6 +362,8 @@ private:
   int _allocate_without_fallback(uint8_t id, uint64_t len,
                                 PExtentVector* extents);
 
+  /* signal replay log to include h->file in nearest log flush */
+  int _signal_dirty_to_log(FileWriter *h);
   int _flush_range(FileWriter *h, uint64_t offset, uint64_t length);
   int _flush(FileWriter *h, bool focce, std::unique_lock<ceph::mutex>& l);
   int _flush(FileWriter *h, bool force, bool *flushed = nullptr);
@@ -489,14 +493,14 @@ public:
   int get_block_extents(unsigned id, interval_set<uint64_t> *extents);
 
   int open_for_write(
-    const string& dir,
-    const string& file,
+    std::string_view dir,
+    std::string_view file,
     FileWriter **h,
     bool overwrite);
 
   int open_for_read(
-    const string& dir,
-    const string& file,
+    std::string_view dir,
+    std::string_view file,
     FileReader **h,
     bool random = false);
 
@@ -505,21 +509,21 @@ public:
     _close_writer(h);
   }
 
-  int rename(const string& old_dir, const string& old_file,
-            const string& new_dir, const string& new_file);
+  int rename(std::string_view old_dir, std::string_view old_file,
+            std::string_view new_dir, std::string_view new_file);
 
-  int readdir(const string& dirname, vector<string> *ls);
+  int readdir(std::string_view dirname, std::vector<std::string> *ls);
 
-  int unlink(const string& dirname, const string& filename);
-  int mkdir(const string& dirname);
-  int rmdir(const string& dirname);
+  int unlink(std::string_view dirname, std::string_view filename);
+  int mkdir(std::string_view dirname);
+  int rmdir(std::string_view dirname);
   bool wal_is_rotational();
 
-  bool dir_exists(const string& dirname);
-  int stat(const string& dirname, const string& filename,
+  bool dir_exists(std::string_view dirname);
+  int stat(std::string_view dirname, std::string_view filename,
           uint64_t *size, utime_t *mtime);
 
-  int lock_file(const string& dirname, const string& filename, FileLock **p);
+  int lock_file(std::string_view dirname, std::string_view filename, FileLock **p);
   int unlock_file(FileLock *l);
 
   void compact_log();
@@ -637,6 +641,8 @@ public:
   const PerfCounters* get_perf_counters() const {
     return logger;
   }
+  uint64_t debug_get_dirty_seq(FileWriter *h);
+  bool debug_get_is_dev_dirty(FileWriter *h, uint8_t dev);
 
 private:
   // Wrappers for BlockDevice::read(...) and BlockDevice::read_random(...)
@@ -659,7 +665,7 @@ public:
     : wal_total(_wal_total), db_total(_db_total), slow_total(_slow_total) {}
 
   void* get_hint_for_log() const override;
-  void* get_hint_by_dir(const std::string& dirname) const override;
+  void* get_hint_by_dir(std::string_view dirname) const override;
 
   void add_usage(void* hint, const bluefs_fnode_t& fnode) override {
     // do nothing
index 5aaac3557d4fe302525fb76b7e3f0490a7451a58..0794b87ad4a4138c9d57546d6be952d794d8c7c4 100644 (file)
@@ -7,6 +7,8 @@
 #include "kv/RocksDBStore.h"
 #include "string.h"
 
+namespace {
+
 rocksdb::Status err_to_status(int r)
 {
   switch (r) {
@@ -28,6 +30,21 @@ rocksdb::Status err_to_status(int r)
   }
 }
 
+std::pair<std::string_view, std::string_view>
+split(const std::string &fn)
+{
+  size_t slash = fn.rfind('/');
+  assert(slash != fn.npos);
+  size_t file_begin = slash + 1;
+  while (slash && fn[slash - 1] == '/')
+    --slash;
+  return {string_view(fn.data(), slash),
+          string_view(fn.data() + file_begin,
+                     fn.size() - file_begin)};
+}
+
+}
+
 // A file abstraction for reading sequentially through a file
 class BlueRocksSequentialFile : public rocksdb::SequentialFile {
   BlueFS *fs;
@@ -196,7 +213,7 @@ class BlueRocksWritableFile : public rocksdb::WritableFile {
   }
 
   rocksdb::Status Close() override {
-    fs->flush(h, true);
+    fs->fsync(h);
 
     // mimic posix env, here.  shrug.
     size_t block_size;
@@ -333,8 +350,7 @@ rocksdb::Status BlueRocksEnv::NewSequentialFile(
 {
   if (fname[0] == '/')
     return target()->NewSequentialFile(fname, result, options);
-  std::string dir, file;
-  split(fname, &dir, &file);
+  auto [dir, file] = split(fname);
   BlueFS::FileReader *h;
   int r = fs->open_for_read(dir, file, &h, false);
   if (r < 0)
@@ -348,8 +364,7 @@ rocksdb::Status BlueRocksEnv::NewRandomAccessFile(
   std::unique_ptr<rocksdb::RandomAccessFile>* result,
   const rocksdb::EnvOptions& options)
 {
-  std::string dir, file;
-  split(fname, &dir, &file);
+  auto [dir, file] = split(fname);
   BlueFS::FileReader *h;
   int r = fs->open_for_read(dir, file, &h, true);
   if (r < 0)
@@ -363,8 +378,7 @@ rocksdb::Status BlueRocksEnv::NewWritableFile(
   std::unique_ptr<rocksdb::WritableFile>* result,
   const rocksdb::EnvOptions& options)
 {
-  std::string dir, file;
-  split(fname, &dir, &file);
+  auto [dir, file] = split(fname);
   BlueFS::FileWriter *h;
   int r = fs->open_for_write(dir, file, &h, false);
   if (r < 0)
@@ -379,10 +393,8 @@ rocksdb::Status BlueRocksEnv::ReuseWritableFile(
   std::unique_ptr<rocksdb::WritableFile>* result,
   const rocksdb::EnvOptions& options)
 {
-  std::string old_dir, old_file;
-  split(old_fname, &old_dir, &old_file);
-  std::string new_dir, new_file;
-  split(new_fname, &new_dir, &new_file);
+  auto [old_dir, old_file] = split(old_fname);
+  auto [new_dir, new_file] = split(new_fname);
 
   int r = fs->rename(old_dir, old_file, new_dir, new_file);
   if (r < 0)
@@ -410,8 +422,7 @@ rocksdb::Status BlueRocksEnv::FileExists(const std::string& fname)
 {
   if (fname[0] == '/')
     return target()->FileExists(fname);
-  std::string dir, file;
-  split(fname, &dir, &file);
+  auto [dir, file] = split(fname);
   if (fs->stat(dir, file, NULL, NULL) == 0)
     return rocksdb::Status::OK();
   return err_to_status(-ENOENT);
@@ -430,8 +441,7 @@ rocksdb::Status BlueRocksEnv::GetChildren(
 
 rocksdb::Status BlueRocksEnv::DeleteFile(const std::string& fname)
 {
-  std::string dir, file;
-  split(fname, &dir, &file);
+  auto [dir, file] = split(fname);
   int r = fs->unlink(dir, file);
   if (r < 0)
     return err_to_status(r);
@@ -466,8 +476,7 @@ rocksdb::Status BlueRocksEnv::GetFileSize(
   const std::string& fname,
   uint64_t* file_size)
 {
-  std::string dir, file;
-  split(fname, &dir, &file);
+  auto [dir, file] = split(fname);
   int r = fs->stat(dir, file, file_size, NULL);
   if (r < 0)
     return err_to_status(r);
@@ -477,8 +486,7 @@ rocksdb::Status BlueRocksEnv::GetFileSize(
 rocksdb::Status BlueRocksEnv::GetFileModificationTime(const std::string& fname,
                                                      uint64_t* file_mtime)
 {
-  std::string dir, file;
-  split(fname, &dir, &file);
+  auto [dir, file] = split(fname);
   utime_t mtime;
   int r = fs->stat(dir, file, NULL, &mtime);
   if (r < 0)
@@ -491,10 +499,8 @@ rocksdb::Status BlueRocksEnv::RenameFile(
   const std::string& src,
   const std::string& target)
 {
-  std::string old_dir, old_file;
-  split(src, &old_dir, &old_file);
-  std::string new_dir, new_file;
-  split(target, &new_dir, &new_file);
+  auto [old_dir, old_file] = split(src);
+  auto [new_dir, new_file] = split(target);
 
   int r = fs->rename(old_dir, old_file, new_dir, new_file);
   if (r < 0)
@@ -517,8 +523,7 @@ rocksdb::Status BlueRocksEnv::AreFilesSame(
     if (fs->dir_exists(path)) {
       continue;
     }
-    std::string dir, file;
-    split(path, &dir, &file);
+    auto [dir, file] = split(path);
     int r = fs->stat(dir, file, nullptr, nullptr);
     if (!r) {
       continue;
@@ -536,8 +541,7 @@ rocksdb::Status BlueRocksEnv::LockFile(
   const std::string& fname,
   rocksdb::FileLock** lock)
 {
-  std::string dir, file;
-  split(fname, &dir, &file);
+  auto [dir, file] = split(fname);
   BlueFS::FileLock *l = NULL;
   int r = fs->lock_file(dir, file, &l);
   if (r < 0)
index 82cffcd809bdd27d7313c38b3a6c715cdc576ec4..62bcddcf67626e4e802081849d1f3b0ff46be352 100644 (file)
 class BlueFS;
 
 class BlueRocksEnv : public rocksdb::EnvWrapper {
-  void split(const std::string &fn, std::string *dir, std::string *file) {
-    size_t slash = fn.rfind('/');
-    *file = fn.substr(slash + 1);
-    while (slash && fn[slash-1] == '/')
-      --slash;
-    *dir = fn.substr(0, slash);
-  }
-
 public:
   // Create a brand new sequentially-readable file with the specified name.
   // On success, stores a pointer to the new file in *result and returns OK.
index 90fe81b62b6660d0c19d09275c313abfb1355fd4..2bd5ac8648ad40476562a52a068553e83e99bf12 100644 (file)
@@ -7551,7 +7551,7 @@ int BlueStore::_fsck_check_extents(
            bs.set(pos);
         });
         if (repairer) {
-         repairer->get_space_usage_tracker().set_used( e.offset, e.length, cid, oid);
+         repairer->set_space_used(e.offset, e.length, cid, oid);
         }
 
       if (e.end() > bdev->get_size()) {
@@ -7630,7 +7630,7 @@ void BlueStore::_fsck_check_pool_statfs(
          ++errors;
        }
        if (repairer) {
-         repairer->remove_key(db, PREFIX_SHARED_BLOB, key);
+         repairer->remove_key(db, PREFIX_STAT, key);
        }
        continue;
       }
@@ -7875,8 +7875,11 @@ BlueStore::OnodeRef BlueStore::fsck_check_objects_shallow(
            << " zombie spanning blob(s) found, the first one: "
            << *first_broken << dendl;
       if(repairer) {
-        auto txn = repairer->fix_spanning_blobs(db);
-       _record_onode(o, txn);
+        repairer->fix_spanning_blobs(
+         db,
+         [&](KeyValueDB::Transaction txn) {
+           _record_onode(o, txn);
+         });
       }
     }
   }
@@ -8210,6 +8213,7 @@ void BlueStore::_fsck_check_object_omap(FSCKDepth depth,
       }
       db->submit_transaction_sync(txn);
       repairer->inc_repaired();
+      repairer->request_compaction();
     }
   }
 }
@@ -8620,7 +8624,7 @@ int BlueStore::_fsck_on_open(BlueStore::FSCKDepth depth, bool repair)
     }
   );
   if (repair) {
-    repairer.get_space_usage_tracker().init(
+    repairer.init_space_usage_tracker(
       bdev->get_size(),
       min_alloc_size);
   }
@@ -8812,7 +8816,6 @@ int BlueStore::_fsck_on_open(BlueStore::FSCKDepth depth, bool repair)
   if (repair && repairer.preprocess_misreference(db)) {
 
     dout(1) << __func__ << " sorting out misreferenced extents" << dendl;
-    auto& space_tracker = repairer.get_space_usage_tracker();
     auto& misref_extents = repairer.get_misreferences();
     interval_set<uint64_t> to_release;
     it = db->get_iterator(PREFIX_OBJ);
@@ -8834,7 +8837,7 @@ int BlueStore::_fsck_on_open(BlueStore::FSCKDepth depth, bool repair)
 
        ghobject_t oid;
        int r = get_key_object(it->key(), &oid);
-       if (r < 0 || !space_tracker.is_used(oid)) {
+       if (r < 0 || !repairer.is_used(oid)) {
          continue;
        }
 
@@ -8857,7 +8860,7 @@ int BlueStore::_fsck_on_open(BlueStore::FSCKDepth depth, bool repair)
            expected_statfs = &expected_pool_statfs[pool_id];
          }
        }
-       if (!space_tracker.is_used(c->cid)) {
+       if (!repairer.is_used(c->cid)) {
          continue;
        }
 
@@ -16102,6 +16105,7 @@ bool BlueStoreRepairer::remove_key(KeyValueDB *db,
                                   const string& prefix,
                                   const string& key)
 {
+  std::lock_guard l(lock);
   if (!remove_key_txn) {
     remove_key_txn = db->get_transaction();
   }
@@ -16113,6 +16117,8 @@ bool BlueStoreRepairer::remove_key(KeyValueDB *db,
 
 void BlueStoreRepairer::fix_per_pool_omap(KeyValueDB *db)
 {
+  std::lock_guard l(lock); // possibly redundant
+  ceph_assert(fix_per_pool_omap_txn == nullptr);
   fix_per_pool_omap_txn = db->get_transaction();
   ++to_repair_cnt;
   bufferlist bl;
@@ -16125,6 +16131,7 @@ bool BlueStoreRepairer::fix_shared_blob(
   uint64_t sbid,
   const bufferlist* bl)
 {
+  std::lock_guard l(lock); // possibly redundant
   KeyValueDB::Transaction txn;
   if (fix_misreferences_txn) { // reuse this txn
     txn = fix_misreferences_txn;
@@ -16150,6 +16157,7 @@ bool BlueStoreRepairer::fix_statfs(KeyValueDB *db,
                                   const string& key,
                                   const store_statfs_t& new_statfs)
 {
+  std::lock_guard l(lock);
   if (!fix_statfs_txn) {
     fix_statfs_txn = db->get_transaction();
   }
@@ -16166,6 +16174,7 @@ bool BlueStoreRepairer::fix_leaked(KeyValueDB *db,
                                   FreelistManager* fm,
                                   uint64_t offset, uint64_t len)
 {
+  std::lock_guard l(lock);
   if (!fix_fm_leaked_txn) {
     fix_fm_leaked_txn = db->get_transaction();
   }
@@ -16177,6 +16186,7 @@ bool BlueStoreRepairer::fix_false_free(KeyValueDB *db,
                                       FreelistManager* fm,
                                       uint64_t offset, uint64_t len)
 {
+  std::lock_guard l(lock);
   if (!fix_fm_false_free_txn) {
     fix_fm_false_free_txn = db->get_transaction();
   }
@@ -16195,17 +16205,22 @@ bool BlueStoreRepairer::fix_bluefs_extents(std::atomic<uint64_t>& out_of_sync_fl
   return true;
 }
 
-KeyValueDB::Transaction BlueStoreRepairer::fix_spanning_blobs(KeyValueDB* db)
+bool BlueStoreRepairer::fix_spanning_blobs(
+  KeyValueDB* db,
+  std::function<void(KeyValueDB::Transaction)> f)
 {
+  std::lock_guard l(lock);
   if (!fix_onode_txn) {
     fix_onode_txn = db->get_transaction();
   }
+  f(fix_onode_txn);
   ++to_repair_cnt;
-  return fix_onode_txn;
+  return true;
 }
 
 bool BlueStoreRepairer::preprocess_misreference(KeyValueDB *db)
 {
+  //NB: not for use in multithreading mode!!!
   if (misreferenced_extents.size()) {
     size_t n = space_usage_tracker.filter_out(misreferenced_extents);
     ceph_assert(n > 0);
@@ -16219,6 +16234,7 @@ bool BlueStoreRepairer::preprocess_misreference(KeyValueDB *db)
 
 unsigned BlueStoreRepairer::apply(KeyValueDB* db)
 {
+  //NB: not for use in multithreading mode!!!
   if (fix_per_pool_omap_txn) {
     db->submit_transaction_sync(fix_per_pool_omap_txn);
     fix_per_pool_omap_txn = nullptr;
@@ -16252,6 +16268,10 @@ unsigned BlueStoreRepairer::apply(KeyValueDB* db)
     db->submit_transaction_sync(fix_statfs_txn);
     fix_statfs_txn = nullptr;
   }
+  if (need_compact) {
+    db->compact();
+    need_compact = false;
+  }
   unsigned repaired = to_repair_cnt;
   to_repair_cnt = 0;
   return repaired;
@@ -16307,7 +16327,7 @@ void RocksDBBlueFSVolumeSelector::get_paths(const std::string& base, paths& res)
   res.emplace_back(base + ".slow", l_totals[LEVEL_SLOW - LEVEL_FIRST]);
 }
 
-void* RocksDBBlueFSVolumeSelector::get_hint_by_dir(const string& dirname) const {
+void* RocksDBBlueFSVolumeSelector::get_hint_by_dir(std::string_view dirname) const {
   uint8_t res = LEVEL_DB;
   if (dirname.length() > 5) {
     // the "db.slow" and "db.wal" directory names are hard-coded at
index e3b982887f58c648e90931d61d877683ebc01e08..218e59da862b9be6dbd806c13519a5791f29f644 100644 (file)
@@ -3379,6 +3379,8 @@ static inline void intrusive_ptr_release(BlueStore::OpSequencer *o) {
 
 class BlueStoreRepairer
 {
+  ceph::mutex lock = ceph::make_mutex("BlueStore::BlueStoreRepairer::lock");
+
 public:
   // to simplify future potential migration to mempools
   using fsck_interval = interval_set<uint64_t>;
@@ -3521,37 +3523,63 @@ public:
                      FreelistManager* fm,
                      uint64_t offset, uint64_t len);
   bool fix_bluefs_extents(std::atomic<uint64_t>& out_of_sync_flag);
-  KeyValueDB::Transaction fix_spanning_blobs(KeyValueDB* db);
-
-  void init(uint64_t total_space, uint64_t lres_tracking_unit_size);
+  bool fix_spanning_blobs(
+    KeyValueDB* db,
+    std::function<void(KeyValueDB::Transaction)> f);
 
   bool preprocess_misreference(KeyValueDB *db);
 
   unsigned apply(KeyValueDB* db);
 
   void note_misreference(uint64_t offs, uint64_t len, bool inc_error) {
+    std::lock_guard l(lock);
     misreferenced_extents.union_insert(offs, len);
     if (inc_error) {
       ++to_repair_cnt;
     }
   }
-  // In fact this is the only repairer's method which is thread-safe!!
+  //////////////////////
+  //In fact two methods below are the only ones in this class which are thread-safe!!
   void inc_repaired() {
     ++to_repair_cnt;
   }
+  void request_compaction() {
+    need_compact = true;
+  }
+  //////////////////////
 
-  StoreSpaceTracker& get_space_usage_tracker() {
-    return space_usage_tracker;
+  void init_space_usage_tracker(
+    uint64_t total_space, uint64_t lres_tracking_unit_size)
+  {
+    //NB: not for use in multithreading mode!!!
+    space_usage_tracker.init(total_space, lres_tracking_unit_size);
   }
+  void set_space_used(uint64_t offset, uint64_t len,
+    const coll_t& cid, const ghobject_t& oid) {
+    std::lock_guard l(lock);
+    space_usage_tracker.set_used(offset, len, cid, oid);
+  }
+  inline bool is_used(const coll_t& cid) const {
+    //NB: not for use in multithreading mode!!!
+    return space_usage_tracker.is_used(cid);
+  }
+  inline bool is_used(const ghobject_t& oid) const {
+    //NB: not for use in multithreading mode!!!
+    return space_usage_tracker.is_used(oid);
+  }
+
   const fsck_interval& get_misreferences() const {
+    //NB: not for use in multithreading mode!!!
     return misreferenced_extents;
   }
   KeyValueDB::Transaction get_fix_misreferences_txn() {
+    //NB: not for use in multithreading mode!!!
     return fix_misreferences_txn;
   }
 
 private:
   std::atomic<unsigned> to_repair_cnt = { 0 };
+  std::atomic<bool> need_compact = { false };
   KeyValueDB::Transaction fix_per_pool_omap_txn;
   KeyValueDB::Transaction fix_fm_leaked_txn;
   KeyValueDB::Transaction fix_fm_false_free_txn;
@@ -3674,7 +3702,7 @@ public:
   void* get_hint_for_log() const override {
     return  reinterpret_cast<void*>(LEVEL_LOG);
   }
-  void* get_hint_by_dir(const string& dirname) const override;
+  void* get_hint_by_dir(std::string_view dirname) const override;
 
   void add_usage(void* hint, const bluefs_fnode_t& fnode) override {
     if (hint == nullptr)
index 6caf5c6dd8924be68db1301ddb180e84d9a35299..3a2da67379b592eda2b8312b741102ff8bf149c7 100644 (file)
@@ -155,6 +155,8 @@ void HybridAllocator::dump(std::function<void(uint64_t offset, uint64_t length)>
 
 void HybridAllocator::init_rm_free(uint64_t offset, uint64_t length)
 {
+  if (!length)
+    return;
   std::lock_guard l(lock);
   ldout(cct, 10) << __func__ << std::hex
                  << " offset 0x" << offset
index 2660657d9e93480baa07dfb1d48118e47d72648f..ca6121ac38c584e95564a80a768e49ff6747eaa6 100644 (file)
@@ -307,6 +307,8 @@ void StupidAllocator::dump(std::function<void(uint64_t offset, uint64_t length)>
 
 void StupidAllocator::init_add_free(uint64_t offset, uint64_t length)
 {
+  if (!length)
+    return;
   std::lock_guard l(lock);
   ldout(cct, 10) << __func__ << " 0x" << std::hex << offset << "~" << length
                 << std::dec << dendl;
@@ -316,6 +318,8 @@ void StupidAllocator::init_add_free(uint64_t offset, uint64_t length)
 
 void StupidAllocator::init_rm_free(uint64_t offset, uint64_t length)
 {
+  if (!length)
+    return;
   std::lock_guard l(lock);
   ldout(cct, 10) << __func__ << " 0x" << std::hex << offset << "~" << length
                 << std::dec << dendl;
index 1b1a60c59146e6fc3b21b3c0916b8477d9188063..b4d9466963886915b2506023767049e3639b2718 100644 (file)
@@ -228,24 +228,24 @@ struct bluefs_transaction_t {
     encode(offset, op_bl);
     encode(length, op_bl);
   }
-  void op_dir_create(const string& dir) {
+  void op_dir_create(std::string_view dir) {
     using ceph::encode;
     encode((__u8)OP_DIR_CREATE, op_bl);
     encode(dir, op_bl);
   }
-  void op_dir_remove(const string& dir) {
+  void op_dir_remove(std::string_view dir) {
     using ceph::encode;
     encode((__u8)OP_DIR_REMOVE, op_bl);
     encode(dir, op_bl);
   }
-  void op_dir_link(const string& dir, const string& file, uint64_t ino) {
+  void op_dir_link(std::string_view dir, std::string_view file, uint64_t ino) {
     using ceph::encode;
     encode((__u8)OP_DIR_LINK, op_bl);
     encode(dir, op_bl);
     encode(file, op_bl);
     encode(ino, op_bl);
   }
-  void op_dir_unlink(const string& dir, const string& file) {
+  void op_dir_unlink(std::string_view dir, std::string_view file) {
     using ceph::encode;
     encode((__u8)OP_DIR_UNLINK, op_bl);
     encode(dir, op_bl);
index 2dc1016c38edd4a886f97cb462cf4e1253bd8877..2b671484039045546ce6368a342265c9cec1b423 100644 (file)
@@ -676,6 +676,7 @@ int main(int argc, char **argv)
 
     parse_devices(cct.get(), devs, &cur_devs_map, &has_db, &has_wal);
 
+    const char* rlpath = nullptr;
     if (has_db && has_wal) {
       cerr << "can't allocate new device, both WAL and DB exist"
            << std::endl;
@@ -689,24 +690,35 @@ int main(int argc, char **argv)
            << std::endl;
       exit(EXIT_FAILURE);
     } else if(!dev_target.empty() &&
-             realpath(dev_target.c_str(), target_path) == nullptr) {
+             (rlpath = realpath(dev_target.c_str(), target_path)) == nullptr) {
       cerr << "failed to retrieve absolute path for " << dev_target
            << ": " << cpp_strerror(errno)
            << std::endl;
       exit(EXIT_FAILURE);
     }
 
-    // Create either DB or WAL volume
-    int r = EXIT_FAILURE;
-    if (need_db && cct->_conf->bluestore_block_db_size == 0) {
-      cerr << "DB size isn't specified, "
-              "please set Ceph bluestore-block-db-size config parameter "
-           << std::endl;
-    } else if (!need_db && cct->_conf->bluestore_block_wal_size == 0) {
-      cerr << "WAL size isn't specified, "
-              "please set Ceph bluestore-block-wal-size config parameter "
-           << std::endl;
-    } else {
+    // Attach either DB or WAL volume, create if needed
+    struct stat st;
+    int r = -1;
+    if (rlpath != nullptr) {
+      r = ::stat(rlpath, &st);
+    }
+    // check if we need additional size specification
+    if (r == -1 || (r == 0 && S_ISREG(st.st_mode) && st.st_size == 0)) {
+      r = 0;
+      if (need_db && cct->_conf->bluestore_block_db_size == 0) {
+       cerr << "Might need DB size specification, "
+               "please set Ceph bluestore-block-db-size config parameter "
+            << std::endl;
+       r = EXIT_FAILURE;
+      } else if (!need_db && cct->_conf->bluestore_block_wal_size == 0) {
+       cerr << "Might need WAL size specification, "
+               "please set Ceph bluestore-block-wal-size config parameter "
+            << std::endl;
+       r = EXIT_FAILURE;
+      }
+    }
+    if (r == 0) {
       BlueStore bluestore(cct.get(), path);
       r = bluestore.add_new_bluefs_device(
         need_db ? BlueFS::BDEV_NEWDB : BlueFS::BDEV_NEWWAL,
@@ -719,8 +731,8 @@ int main(int argc, char **argv)
              << cpp_strerror(r)
              << std::endl;
       }
-      return r;
     }
+    return r;
   } else if (action == "bluefs-bdev-migrate") {
     map<string, int> cur_devs_map;
     set<int> src_dev_ids;
index 8ae62212e35999bcb31dec4a257abaa71e0b0cf2..b56c41a4334da26fda0255837283ab159c312448 100644 (file)
@@ -7511,20 +7511,26 @@ void OSD::sched_scrub()
 void OSD::resched_all_scrubs()
 {
   dout(10) << __func__ << ": start" << dendl;
-  OSDService::ScrubJob scrub;
-  if (service.first_scrub_stamp(&scrub)) {
-    do {
-      dout(20) << __func__ << ": examine " << scrub.pgid << dendl;
-
-      PGRef pg = _lookup_lock_pg(scrub.pgid);
+  const vector<spg_t> pgs = [this] {
+    vector<spg_t> pgs;
+    OSDService::ScrubJob job;
+    if (service.first_scrub_stamp(&job)) {
+      do {
+        pgs.push_back(job.pgid);
+      } while (service.next_scrub_stamp(job, &job));
+    }
+    return pgs;
+  }();
+  for (auto& pgid : pgs) {
+      dout(20) << __func__ << ": examine " << pgid << dendl;
+      PGRef pg = _lookup_lock_pg(pgid);
       if (!pg)
        continue;
       if (!pg->scrubber.must_scrub && !pg->scrubber.need_auto) {
-        dout(20) << __func__ << ": reschedule " << scrub.pgid << dendl;
+        dout(15) << __func__ << ": reschedule " << pgid << dendl;
         pg->on_info_history_change();
       }
       pg->unlock();
-    } while (service.next_scrub_stamp(scrub, &scrub));
   }
   dout(10) << __func__ << ": done" << dendl;
 }
index b7a45f8c9f498375f5088a3b0ac2aaf1e40d7104..e277554beae6b2c30113e460932a32d2dc642823 100644 (file)
@@ -325,10 +325,7 @@ public:
     std::lock_guard l(sched_scrub_lock);
     if (sched_scrub_pg.empty())
       return false;
-    set<ScrubJob>::const_iterator iter = sched_scrub_pg.lower_bound(next);
-    if (iter == sched_scrub_pg.cend())
-      return false;
-    ++iter;
+    std::set<ScrubJob>::const_iterator iter = sched_scrub_pg.upper_bound(next);
     if (iter == sched_scrub_pg.cend())
       return false;
     *out = *iter;
index e50a22a47b89385a674f661cf1e967e29c388b89..583ff9f72a8ffc16959b7cc86c890a371e075810 100644 (file)
@@ -3872,9 +3872,15 @@ ghobject_t PG::do_delete_work(ObjectStore::Transaction &t,
       &olist,
       &next);
     if (!olist.empty()) {
-      dout(0) << __func__ << " additional unexpected onode list"
-              <<" (new onodes has appeared since PG removal started"
-              << olist << dendl;
+      for (auto& oid : olist) {
+        if (oid == pgmeta_oid) {
+          dout(20) << __func__ << " removing pgmeta object " << oid << dendl;
+        } else {
+          dout(0) << __func__ << " additional unexpected onode"
+                  <<" new onode has appeared since PG removal started"
+                  << oid << dendl;
+        }
+      }
     }
   }
 
index d7495123475b1bd79f065b633856aa6d95233315..87ee246fce83dca3b7bf0955bb828203240fc5c4 100644 (file)
@@ -347,13 +347,23 @@ void PeeringState::remove_down_peer_info(const OSDMapRef &osdmap)
       peer_missing.erase(p->first);
       peer_log_requested.erase(p->first);
       peer_missing_requested.erase(p->first);
-      peer_purged.erase(p->first);
       peer_info.erase(p++);
       removed = true;
     } else
       ++p;
   }
 
+  // Remove any downed osds from peer_purged so we can re-purge if necessary
+  auto it = peer_purged.begin();
+  while (it != peer_purged.end()) {
+    if (!osdmap->is_up(it->osd)) {
+      psdout(10) << " dropping down osd." << *it << " from peer_purged" << dendl;
+      peer_purged.erase(it++);
+    } else {
+      ++it;
+    }
+  }
+
   // if we removed anyone, update peers (which include peer_info)
   if (removed)
     update_heartbeat_peers();
@@ -1008,10 +1018,10 @@ unsigned PeeringState::get_backfill_priority()
   if (state & PG_STATE_FORCED_BACKFILL) {
     ret = OSD_BACKFILL_PRIORITY_FORCED;
   } else {
-    if (acting.size() < pool.info.min_size) {
+    if (actingset.size() < pool.info.min_size) {
       base = OSD_BACKFILL_INACTIVE_PRIORITY_BASE;
       // inactive: no. of replicas < min_size, highest priority since it blocks IO
-      ret = base + (pool.info.min_size - acting.size());
+      ret = base + (pool.info.min_size - actingset.size());
 
     } else if (is_undersized()) {
       // undersized: OSD_BACKFILL_DEGRADED_PRIORITY_BASE + num missing replicas
@@ -2328,7 +2338,7 @@ void PeeringState::activate(
 
   if (is_primary()) {
     // only update primary last_epoch_started if we will go active
-    if (acting.size() >= pool.info.min_size) {
+    if (actingset.size() >= pool.info.min_size) {
       ceph_assert(cct->_conf->osd_find_best_info_ignore_history_les ||
             info.last_epoch_started <= activation_epoch);
       info.last_epoch_started = activation_epoch;
@@ -2634,7 +2644,7 @@ void PeeringState::activate(
     state_set(PG_STATE_ACTIVATING);
     pl->on_activate(std::move(to_trim));
   }
-  if (acting.size() >= pool.info.min_size) {
+  if (actingset.size() >= pool.info.min_size) {
     PGLog::LogEntryHandlerRef rollbacker{pl->get_log_handler(t)};
     pg_log.roll_forward(rollbacker.get());
   }
@@ -5864,7 +5874,7 @@ boost::statechart::result PeeringState::Active::react(const AllReplicasActivated
        pl->set_not_ready_to_merge_source(pgid);
       }
     }
-  } else if (ps->acting.size() < ps->pool.info.min_size) {
+  } else if (ps->actingset.size() < ps->pool.info.min_size) {
     ps->state_set(PG_STATE_PEERED);
   } else {
     ps->state_set(PG_STATE_ACTIVE);
@@ -6023,7 +6033,7 @@ boost::statechart::result PeeringState::ReplicaActive::react(
     {}, /* lease */
     ps->get_lease_ack());
 
-  if (ps->acting.size() >= ps->pool.info.min_size) {
+  if (ps->actingset.size() >= ps->pool.info.min_size) {
     ps->state_set(PG_STATE_ACTIVE);
   } else {
     ps->state_set(PG_STATE_PEERED);
index 5dac3a144fd093cb23cc8486de58897ae50e9fb9..4de4eb938447549868649c29dd077e0c6ae1b6f8 100644 (file)
@@ -4523,7 +4523,7 @@ int PrimaryLogPG::trim_object(
        ctx->mtime,
        0)
       );
-    derr << "removing snap head" << dendl;
+    dout(10) << "removing snap head" << dendl;
     object_info_t& oi = head_obc->obs.oi;
     ctx->delta_stats.num_objects--;
     if (oi.is_dirty()) {
@@ -6400,6 +6400,7 @@ int PrimaryLogPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
                oi.size - op.extent.truncate_size);
              ctx->modified_ranges.union_of(trim);
              ctx->clean_regions.mark_data_region_dirty(op.extent.truncate_size, oi.size - op.extent.truncate_size);
+             oi.clear_data_digest();
            }
            if (op.extent.truncate_size != oi.size) {
               truncate_update_size_and_usage(ctx->delta_stats,
index cc5d91d528f9a5a0234f6fdc5ca747f20701ebc4..3f11eed818802846c53b0436b85b2580bde4fd45 100644 (file)
@@ -2763,8 +2763,8 @@ bool pg_stat_t::is_acting_osd(int32_t osd, bool primary) const
 void pg_stat_t::dump(Formatter *f) const
 {
   f->dump_stream("version") << version;
-  f->dump_stream("reported_seq") << reported_seq;
-  f->dump_stream("reported_epoch") << reported_epoch;
+  f->dump_unsigned("reported_seq", reported_seq);
+  f->dump_unsigned("reported_epoch", reported_epoch);
   f->dump_string("state", pg_state_string(state));
   f->dump_stream("last_fresh") << last_fresh;
   f->dump_stream("last_change") << last_change;
index beec88533d0e869c68df53dee4577d026b60712a..f2576274cd44e3534c5754210bfe9bf96774ac6d 100644 (file)
@@ -22,7 +22,7 @@
 void cpu_profiler_handle_command(const std::vector<std::string> &cmd,
                                 ostream& out)
 {
-  if (cmd[1] == "status") {
+  if (cmd.size() == 1 && cmd[0] == "status") {
     ProfilerState st;
     ProfilerGetCurrentState(&st);
     out << "cpu_profiler " << (st.enabled ? "enabled":"not enabled")
@@ -30,7 +30,7 @@ void cpu_profiler_handle_command(const std::vector<std::string> &cmd,
        << " profile_name " << st.profile_name
        << " samples " << st.samples_gathered;
   }
-  else if (cmd[1] == "flush") {
+  else if (cmd.size() == 1 && cmd[0] == "flush") {
     ProfilerFlush();
     out << "cpu_profiler: flushed";
   }
index 7fc5e768a16115a97f0359bb7763604d8aa1fc49..e89b650cb0f18dbb9b10966517a3d3890e4b28d6 100644 (file)
@@ -608,7 +608,7 @@ class CephFSVolumeClient(object):
             raise ValueError("group ID cannot end with '{0}'.".format(
                 META_FILE_EXT))
         path = self._get_group_path(group_id)
-        self._mkdir_p(path, mode)
+        self.fs.mkdirs(path, mode)
 
     def destroy_group(self, group_id):
         path = self._get_group_path(group_id)
@@ -619,23 +619,6 @@ class CephFSVolumeClient(object):
         else:
             self.fs.rmdir(path)
 
-    def _mkdir_p(self, path, mode=0o755):
-        try:
-            self.fs.stat(path)
-        except cephfs.ObjectNotFound:
-            pass
-        else:
-            return
-
-        parts = path.split(os.path.sep)
-
-        for i in range(1, len(parts) + 1):
-            subpath = os.path.join(*parts[0:i])
-            try:
-                self.fs.stat(subpath)
-            except cephfs.ObjectNotFound:
-                self.fs.mkdir(subpath, mode)
-
     def create_volume(self, volume_path, size=None, data_isolated=False, namespace_isolated=True,
                       mode=0o755):
         """
@@ -653,7 +636,7 @@ class CephFSVolumeClient(object):
         path = self._get_path(volume_path)
         log.info("create_volume: {0}".format(path))
 
-        self._mkdir_p(path, mode)
+        self.fs.mkdirs(path, mode)
 
         if size is not None:
             self.fs.setxattr(path, 'ceph.quota.max_bytes', to_bytes(size), 0)
@@ -711,7 +694,7 @@ class CephFSVolumeClient(object):
 
         # Create the trash folder if it doesn't already exist
         trash = os.path.join(self.volume_prefix, "_deleting")
-        self._mkdir_p(trash)
+        self.fs.mkdirs(trash, 0o755)
 
         # We'll move it to here
         trashed_volume = os.path.join(trash, volume_path.volume_id)
index 26af6db012d1e2fdd6bd19953b78dd9a2bd2f2c3..b9834ee781971d11c7ace595bbd9c4cea8714683 100644 (file)
@@ -8,7 +8,6 @@ rule_files:
 alerting:
   alertmanagers:
     - scheme: http
-      path_prefix: /alertmanager
       static_configs:
         - targets: [{{ alertmgr_targets|join(', ') }}]
 {% endif %}
index 66e42009be36005778abd39dbbd9bb303a5c3197..b50182c85ef3ca2fc3512558ab086bb4a5b79a69 100644 (file)
@@ -183,6 +183,40 @@ Note:
   When using docker, as your device, you might need to run the script with sudo
   permissions.
 
+run-cephadm-e2e-tests.sh
+........................
+
+``run-cephadm-e2e-tests.sh`` runs a subset of E2E tests to verify that the Dashboard and cephadm as
+Orchestrator backend behave correctly.
+
+Prerequisites: you need to install `KCLI
+<https://kcli.readthedocs.io/en/latest/>`_ and Node.js in your local machine.
+
+Configure KCLI plan requirements::
+
+  $ sudo chown -R $(id -un) /var/lib/libvirt/images
+  $ mkdir -p /var/lib/libvirt/images/ceph-dashboard dashboard
+  $ kcli create pool -p /var/lib/libvirt/images/ceph-dashboard dashboard
+  $ kcli create network -c 192.168.100.0/24 dashboard
+
+Note:
+  This script is aimed to be run as jenkins job so the cleanup is triggered only in a jenkins
+  environment. In local, the user will shutdown the cluster when desired (i.e. after debugging).
+
+Start E2E tests by running::
+
+  $ cd <your/ceph/repo/dir>
+  $ sudo chown -R $(id -un) src/pybind/mgr/dashboard/frontend/{dist,node_modules,src/environments}
+  $ ./src/pybind/mgr/dashboard/ci/cephadm/run-cephadm-e2e-tests.sh
+  $ kcli delete plan -y ceph  # After tests finish.
+
+You can also start a cluster in development mode and later run E2E tests by running::
+
+  $ ./src/pybind/mgr/dashboard/ci/cephadm/start-cluster.sh --dev-mode
+  $ # Work on your feature, bug fix, ...
+  $ ./src/pybind/mgr/dashboard/ci/cephadm/run-cephadm-e2e-tests.sh
+  $ # Remember to kill the npm build watch process i.e.: pkill -f "ng build"
+
 Other running options
 .....................
 
diff --git a/ceph/src/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh b/ceph/src/pybind/mgr/dashboard/ci/cephadm/bootstrap-cluster.sh
new file mode 100755 (executable)
index 0000000..af7ef81
--- /dev/null
@@ -0,0 +1,15 @@
+#!/usr/bin/env bash
+
+export PATH=/root/bin:$PATH
+mkdir /root/bin
+
+cp /mnt/{{ ceph_dev_folder }}/src/cephadm/cephadm /root/bin/cephadm
+chmod +x /root/bin/cephadm
+mkdir -p /etc/ceph
+mon_ip=$(ifconfig eth0  | grep 'inet ' | awk '{ print $2}')
+
+cephadm bootstrap --mon-ip $mon_ip --initial-dashboard-password {{ admin_password }} --allow-fqdn-hostname --dashboard-password-noupdate --shared_ceph_folder /mnt/{{ ceph_dev_folder }}
+
+{% for number in range(1, nodes) %}
+  ssh-copy-id -f -i /etc/ceph/ceph.pub  -o StrictHostKeyChecking=no root@{{ prefix }}-node-0{{ number }}.{{ domain }}
+{% endfor %}
diff --git a/ceph/src/pybind/mgr/dashboard/ci/cephadm/ceph_cluster.yml b/ceph/src/pybind/mgr/dashboard/ci/cephadm/ceph_cluster.yml
new file mode 100755 (executable)
index 0000000..6044097
--- /dev/null
@@ -0,0 +1,39 @@
+parameters:
+ nodes: 3
+ pool: ceph-dashboard
+ network: ceph-dashboard
+ domain: cephlab.com
+ prefix: ceph
+ numcpus: 1
+ memory: 2048
+ image: fedora34
+ notify: false
+ admin_password: password
+ disks:
+ - 15
+ - 5
+
+{% for number in range(0, nodes) %}
+{{ prefix }}-node-0{{ number }}:
+ image: {{ image }}
+ numcpus: {{ numcpus }}
+ memory: {{ memory }}
+ reserveip: true
+ reservedns: true
+ sharedkey: true
+ domain: {{ domain }}
+ nets:
+  - {{ network }}
+ disks: {{ disks }}
+ pool: {{ pool }}
+ sharedfolders: [{{ ceph_dev_folder }}]
+ files:
+  - bootstrap-cluster.sh
+ cmds:
+ - dnf -y install python3 chrony lvm2 podman
+ - sed -i "s/SELINUX=enforcing/SELINUX=permissive/" /etc/selinux/config
+ - setenforce 0
+ {% if number == 0 %}
+ - bash /root/bootstrap-cluster.sh
+ {% endif %}
+{% endfor %}
diff --git a/ceph/src/pybind/mgr/dashboard/ci/cephadm/run-cephadm-e2e-tests.sh b/ceph/src/pybind/mgr/dashboard/ci/cephadm/run-cephadm-e2e-tests.sh
new file mode 100755 (executable)
index 0000000..178c89f
--- /dev/null
@@ -0,0 +1,41 @@
+#!/usr/bin/env bash
+
+set -ex
+
+: ${CYPRESS_BASE_URL:=''}
+: ${CYPRESS_LOGIN_USER:='admin'}
+: ${CYPRESS_LOGIN_PWD:='password'}
+: ${CYPRESS_ARGS:=''}
+: ${DASHBOARD_PORT:='8443'}
+
+get_vm_ip () {
+    local ip=$(kcli info vm "$1" -f ip -v | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')
+    echo -n $ip
+}
+
+if [[ -z "${CYPRESS_BASE_URL}" ]]; then
+    CEPH_NODE_00_IP="$(get_vm_ip ceph-node-00)"
+    if [[ -z "${CEPH_NODE_00_IP}" ]]; then
+        . "$(dirname $0)"/start-cluster.sh
+    fi
+    CYPRESS_BASE_URL="https://$(get_vm_ip ceph-node-00):${DASHBOARD_PORT}"
+fi
+
+export CYPRESS_BASE_URL CYPRESS_LOGIN_USER CYPRESS_LOGIN_PWD
+
+cypress_run () {
+    local specs="$1"
+    local timeout="$2"
+    local override_config="ignoreTestFiles=*.po.ts,retries=0,testFiles=${specs}"
+
+    if [[ -n "$timeout" ]]; then
+        override_config="${override_config},defaultCommandTimeout=${timeout}"
+    fi
+    npx cypress run ${CYPRESS_ARGS} --browser chrome --headless --config "$override_config"
+}
+
+: ${CEPH_DEV_FOLDER:=${PWD}}
+
+cd ${CEPH_DEV_FOLDER}/src/pybind/mgr/dashboard/frontend
+
+cypress_run "orchestrator/workflow/*-spec.ts"
diff --git a/ceph/src/pybind/mgr/dashboard/ci/cephadm/start-cluster.sh b/ceph/src/pybind/mgr/dashboard/ci/cephadm/start-cluster.sh
new file mode 100755 (executable)
index 0000000..61775d0
--- /dev/null
@@ -0,0 +1,79 @@
+#!/usr/bin/env bash
+
+set -ex
+
+cleanup() {
+    set +x
+    if [[ -n "$JENKINS_HOME" ]]; then
+        printf "\n\nStarting cleanup...\n\n"
+        kcli delete plan -y ceph || true
+        docker container prune -f
+        printf "\n\nCleanup completed.\n\n"
+    fi
+}
+
+on_error() {
+    set +x
+    if [ "$1" != "0" ]; then
+        printf "\n\nERROR $1 thrown on line $2\n\n"
+        printf "\n\nCollecting info...\n\n"
+        for vm_id in 0 1 2
+        do
+            local vm="ceph-node-0${vm_id}"
+            printf "\n\nDisplaying journalctl from VM ${vm}:\n\n"
+            kcli ssh -u root -- ${vm} 'journalctl --no-tail --no-pager -t cloud-init' || true
+            printf "\n\nEnd of journalctl from VM ${vm}\n\n"
+            printf "\n\nDisplaying container logs:\n\n"
+            kcli ssh -u root -- ${vm} 'podman logs --names --since 30s $(podman ps -aq)' || true
+        done
+        printf "\n\nTEST FAILED.\n\n"
+    fi
+}
+
+trap 'on_error $? $LINENO' ERR
+trap 'cleanup $? $LINENO' EXIT
+
+sed -i '/ceph-node-/d' $HOME/.ssh/known_hosts
+
+: ${CEPH_DEV_FOLDER:=${PWD}}
+EXTRA_PARAMS=''
+DEV_MODE=''
+# Check script args/options.
+for arg in "$@"; do
+  shift
+  case "$arg" in
+    "--dev-mode") DEV_MODE='true'; EXTRA_PARAMS="-P dev_mode=${DEV_MODE}" ;;
+  esac
+done
+
+kcli delete plan -y ceph || true
+
+# Build dashboard frontend (required to start the module).
+cd ${CEPH_DEV_FOLDER}/src/pybind/mgr/dashboard/frontend
+NG_CLI_ANALYTICS=false npm ci
+FRONTEND_BUILD_OPTS='-- --prod'
+if [[ -n "${DEV_MODE}" ]]; then
+    FRONTEND_BUILD_OPTS+=' --deleteOutputPath=false --watch'
+fi
+npm run build ${FRONTEND_BUILD_OPTS} &
+
+cd ${CEPH_DEV_FOLDER}
+: ${VM_IMAGE:='fedora34'}
+: ${VM_IMAGE_URL:='https://fedora.mirror.liteserver.nl/linux/releases/34/Cloud/x86_64/images/Fedora-Cloud-Base-34-1.2.x86_64.qcow2'}
+kcli download image -p ceph-dashboard -u ${VM_IMAGE_URL} ${VM_IMAGE}
+kcli delete plan -y ceph || true
+kcli create plan -f ./src/pybind/mgr/dashboard/ci/cephadm/ceph_cluster.yml \
+    -P ceph_dev_folder=${CEPH_DEV_FOLDER} \
+    ${EXTRA_PARAMS} ceph
+
+: ${CLUSTER_DEBUG:=0}
+: ${DASHBOARD_CHECK_INTERVAL:=10}
+while [[ -z $(kcli ssh -u root -- ceph-node-00 'journalctl --no-tail --no-pager -t cloud-init' | grep "Dashboard is now available") ]]; do
+    sleep ${DASHBOARD_CHECK_INTERVAL}
+    kcli list vm
+    if [[ ${CLUSTER_DEBUG} != 0 ]]; then
+        kcli ssh -u root -- ceph-node-00 'podman ps -a'
+        kcli ssh -u root -- ceph-node-00 'podman logs --names --since 30s $(podman ps -aq)'
+    fi
+    kcli ssh -u root -- ceph-node-00 'journalctl -n 100 --no-pager -t cloud-init'
+done
index 4f604241edb98ff7c83be41ce65cf4350b3ca2c1..72b5b850f67eef7474613f14ba307e3cd530fe2c 100644 (file)
@@ -1,7 +1,8 @@
 {
   "baseUrl": "http://localhost:4200/",
   "ignoreTestFiles": [
-    "*.po.ts"
+    "*.po.ts",
+    "**/orchestrator/**"
   ],
   "supportFile": "cypress/support/index.ts",
   "video": false,
index 7caf321885be1b7e025688b08ada4b744163e6c8..c7d84146f44ec8013bfcb75fe73ff527942a2ac4 100644 (file)
@@ -52,12 +52,12 @@ describe('Configuration page', () => {
 
     it('should show only modified configurations', () => {
       configuration.filterTable('Modified', 'yes');
-      configuration.getTableFoundCount().should('eq', 2);
+      configuration.getTableCount('found').should('eq', 2);
     });
 
     it('should hide all modified configurations', () => {
       configuration.filterTable('Modified', 'no');
-      configuration.getTableFoundCount().should('gt', 1);
+      configuration.getTableCount('found').should('gt', 1);
     });
   });
 });
index d3e75400bba5a8799f0afd74e83fe7619d537c3c..792759f0780a0eeea6f67ed48562a750fe465d6c 100644 (file)
@@ -1,10 +1,20 @@
 import { PageHelper } from '../page-helper.po';
 
+const pages = {
+  index: { url: '#/hosts', id: 'cd-hosts' },
+  create: { url: '#/hosts/create', id: 'cd-host-form' }
+};
+
 export class HostsPageHelper extends PageHelper {
-  pages = { index: { url: '#/hosts', id: 'cd-hosts' } };
+  pages = pages;
+
+  columnIndex = {
+    hostname: 2,
+    labels: 4
+  };
 
   check_for_host() {
-    this.getTableTotalCount().should('not.be.eq', 0);
+    this.getTableCount('total').should('not.be.eq', 0);
   }
 
   // function that checks all services links work for first
@@ -28,4 +38,82 @@ export class HostsPageHelper extends PageHelper {
         expect(links_tested).gt(0);
       });
   }
+
+  @PageHelper.restrictTo(pages.index.url)
+  clickHostTab(hostname: string, tabName: string) {
+    this.getExpandCollapseElement(hostname).click();
+    cy.get('cd-host-details').within(() => {
+      this.getTab(tabName).click();
+    });
+  }
+
+  @PageHelper.restrictTo(pages.create.url)
+  add(hostname: string, exist?: boolean) {
+    cy.get(`${this.pages.create.id}`).within(() => {
+      cy.get('#hostname').type(hostname);
+      cy.get('cd-submit-button').click();
+    });
+    if (exist) {
+      cy.get('#hostname').should('have.class', 'ng-invalid');
+    } else {
+      // back to host list
+      cy.get(`${this.pages.index.id}`);
+    }
+  }
+
+  @PageHelper.restrictTo(pages.index.url)
+  checkExist(hostname: string, exist: boolean) {
+    this.getTableCell(this.columnIndex.hostname, hostname).should(($elements) => {
+      const hosts = $elements.map((_, el) => el.textContent).get();
+      if (exist) {
+        expect(hosts).to.include(hostname);
+      } else {
+        expect(hosts).to.not.include(hostname);
+      }
+    });
+  }
+
+  @PageHelper.restrictTo(pages.index.url)
+  delete(hostname: string) {
+    super.delete(hostname, this.columnIndex.hostname);
+  }
+
+  // Add or remove labels on a host, then verify labels in the table
+  @PageHelper.restrictTo(pages.index.url)
+  editLabels(hostname: string, labels: string[], add: boolean) {
+    this.getTableCell(this.columnIndex.hostname, hostname).click();
+    this.clickActionButton('edit');
+
+    // add or remove label badges
+    if (add) {
+      cy.get('cd-modal').find('.select-menu-edit').click();
+      for (const label of labels) {
+        cy.contains('cd-modal .badge', new RegExp(`^${label}$`)).should('not.exist');
+        cy.get('.popover-body input').type(`${label}{enter}`);
+      }
+    } else {
+      for (const label of labels) {
+        cy.contains('cd-modal .badge', new RegExp(`^${label}$`))
+          .find('.badge-remove')
+          .click();
+      }
+    }
+    cy.get('cd-modal cd-submit-button').click();
+
+    // Verify labels are added or removed from Labels column
+    // First find row with hostname, then find labels in the row
+    this.getTableCell(this.columnIndex.hostname, hostname)
+      .parent()
+      .find(`datatable-body-cell:nth-child(${this.columnIndex.labels})`)
+      .should(($ele) => {
+        const newLabels = $ele.text().split(' ');
+        for (const label of labels) {
+          if (add) {
+            expect(newLabels).to.include(label);
+          } else {
+            expect(newLabels).to.not.include(label);
+          }
+        }
+      });
+  }
 }
index 1fb76e4d019b3650e7a4286bfe4a49c8e72fe7aa..b8c184ce70bc7ee2a68fd1a44eca4e1384424cbc 100644 (file)
@@ -23,7 +23,7 @@ describe('OSDs page', () => {
 
   describe('check existence of fields on OSD page', () => {
     it('should check that number of rows and count in footer match', () => {
-      osds.getTableTotalCount().then((text) => {
+      osds.getTableCount('total').then((text) => {
         osds.getTableRows().its('length').should('equal', text);
       });
     });
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/orchestrator/workflow/01-hosts.e2e-spec.ts b/ceph/src/pybind/mgr/dashboard/frontend/cypress/integration/orchestrator/workflow/01-hosts.e2e-spec.ts
new file mode 100644 (file)
index 0000000..3734f55
--- /dev/null
@@ -0,0 +1,53 @@
+import { HostsPageHelper } from '../../cluster/hosts.po';
+
+describe('Hosts page', () => {
+  const hosts = new HostsPageHelper();
+  const hostnames = ['ceph-node-00.cephlab.com', 'ceph-node-02.cephlab.com'];
+  const addHost = (hostname: string, exist?: boolean) => {
+    hosts.navigateTo('create');
+    hosts.add(hostname, exist);
+    hosts.checkExist(hostname, true);
+  };
+
+  beforeEach(() => {
+    cy.login();
+    Cypress.Cookies.preserveOnce('token');
+    hosts.navigateTo();
+  });
+
+  describe('when Orchestrator is available', () => {
+    it('should display inventory', function () {
+      hosts.clickHostTab(hostnames[0], 'Inventory');
+      cy.get('cd-host-details').within(() => {
+        hosts.getTableCount('total').should('be.gte', 0);
+      });
+    });
+
+    it('should display daemons', function () {
+      hosts.clickHostTab(hostnames[0], 'Daemons');
+      cy.get('cd-host-details').within(() => {
+        hosts.getTableCount('total').should('be.gte', 0);
+      });
+    });
+
+    it('should edit host labels', function () {
+      const labels = ['foo', 'bar'];
+      hosts.editLabels(hostnames[0], labels, true);
+      hosts.editLabels(hostnames[0], labels, false);
+    });
+
+    it('should not add an existing host', function () {
+      hosts.navigateTo('create');
+      hosts.add(hostnames[0], true);
+    });
+
+    it('should add a host', function () {
+      addHost(hostnames[1], false);
+    });
+
+    it('should delete a host and add it back', function () {
+      hosts.delete(hostnames[1]);
+      addHost(hostnames[1], false);
+    });
+  });
+});
index 07d772cc2188dee08a3333871c4a28ff18d6954b..b9212442b1172ef11eb676ec63e325395a500069 100644 (file)
@@ -57,6 +57,7 @@ export abstract class PageHelper {
       this.navigateTo();
       this.getFirstTableCell(name).click();
     }
+    cy.contains('Creating...').should('not.exist');
     cy.contains('button', 'Edit').click();
     this.expectBreadcrumbText('Edit');
   }
@@ -68,12 +69,20 @@ export abstract class PageHelper {
     cy.get('.breadcrumb-item.active').should('have.text', text);
   }
 
+  getTabs() {
+    return cy.get('.nav.nav-tabs li');
+  }
+
+  getTab(tabName: string) {
+    return cy.contains('.nav.nav-tabs li', new RegExp(`^${tabName}$`));
+  }
+
   getTabText(index: number) {
-    return cy.get('.nav.nav-tabs li').its(index).text();
+    return this.getTabs().its(index).text();
   }
 
   getTabsCount(): any {
-    return cy.get('.nav.nav-tabs li').its('length');
+    return this.getTabs().its('length');
   }
 
   /**
@@ -118,42 +127,29 @@ export abstract class PageHelper {
     return cy.get('cd-table .dataTables_wrapper');
   }
 
-  getTableTotalCount() {
-    this.waitDataTableToLoad();
-
-    return cy.get('.datatable-footer-inner .page-count span').then(($elem) => {
-      const text = $elem
-        .filter((_i, e) => e.innerText.includes('total'))
-        .first()
-        .text();
-
-      return Number(text.match(/(\d+)\s+total/)[1]);
-    });
+  private getTableCountSpan(spanType: 'selected' | 'found' | 'total') {
+    return cy.contains('.datatable-footer-inner .page-count span', spanType);
   }
 
-  getTableSelectedCount() {
+  // Get 'selected', 'found', or 'total' row count of a table.
+  getTableCount(spanType: 'selected' | 'found' | 'total') {
     this.waitDataTableToLoad();
-
-    return cy.get('.datatable-footer-inner .page-count span').then(($elem) => {
+    return this.getTableCountSpan(spanType).then(($elem) => {
       const text = $elem
-        .filter((_i, e) => e.innerText.includes('selected'))
+        .filter((_i, e) => e.innerText.includes(spanType))
         .first()
         .text();
 
-      return Number(text.match(/(\d+)\s+selected/)[1]);
+      return Number(text.match(/(\d+)\s+\w*/)[1]);
     });
   }
 
-  getTableFoundCount() {
+  // Wait until selected', 'found', or 'total' row count of a table equal to a number.
+  expectTableCount(spanType: 'selected' | 'found' | 'total', count: number) {
     this.waitDataTableToLoad();
-
-    return cy.get('.datatable-footer-inner .page-count span').then(($elem) => {
-      const text = $elem
-        .filter((_i, e) => e.innerText.includes('found'))
-        .first()
-        .text();
-
-      return Number(text.match(/(\d+)\s+found/)[1]);
+    this.getTableCountSpan(spanType).should(($elem) => {
+      const text = $elem.first().text();
+      expect(Number(text.match(/(\d+)\s+\w*/)[1])).to.equal(count);
     });
   }
 
@@ -185,6 +181,15 @@ export abstract class PageHelper {
     }
   }
 
+  getTableCell(columnIndex: number, exactContent: string) {
+    this.waitDataTableToLoad();
+    this.seachTable(exactContent);
+    return cy.contains(
+      `datatable-body-row datatable-body-cell:nth-child(${columnIndex})`,
+      new RegExp(`^${exactContent}$`)
+    );
+  }
+
   getExpandCollapseElement(content?: string) {
     this.waitDataTableToLoad();
 
@@ -194,6 +199,7 @@ export abstract class PageHelper {
       return cy.get('.tc_expand-collapse').first();
     }
   }
+
   /**
    * Gets column headers of table
    */
@@ -220,10 +226,14 @@ export abstract class PageHelper {
     cy.contains(`.tc_filter_option .dropdown-item`, option).click();
   }
 
+  setPageSize(size: string) {
+    cy.get('cd-table .dataTables_paginate input').first().clear().type(size);
+  }
+
   seachTable(text: string) {
     this.waitDataTableToLoad();
 
-    cy.get('cd-table .dataTables_paginate input').first().clear().type('10');
+    this.setPageSize('10');
     cy.get('cd-table .search input').first().clear().type(text);
   }
 
@@ -233,27 +243,37 @@ export abstract class PageHelper {
     return cy.get('cd-table .search button').click();
   }
 
+  // Click the action button
+  clickActionButton(action: string) {
+    cy.get('.table-actions button.dropdown-toggle').first().click(); // open submenu
+    cy.get(`.table-actions li.${action}`).click(); // click on "action" menu item
+  }
+
   /**
    * This is a generic method to delete table rows.
    * It will select the first row that contains the provided name and delete it.
    * After that it will wait until the row is no longer displayed.
+   * @param name The string to search in table cells.
+   * @param columnIndex If provided, search string in columnIndex column.
    */
-  delete(name: string) {
+  delete(name: string, columnIndex?: number) {
     // Selects row
-    this.getFirstTableCell(name).click();
+    const getRow = columnIndex
+      ? this.getTableCell.bind(this, columnIndex)
+      : this.getFirstTableCell.bind(this);
+    getRow(name).click();
 
     // Clicks on table Delete button
-    cy.get('.table-actions button.dropdown-toggle').first().click(); // open submenu
-    cy.get('li.delete a').click(); // click on "delete" menu item
+    this.clickActionButton('delete');
 
     // Confirms deletion
-    cy.get('.custom-control-label').click();
-    cy.contains('button', 'Delete').click();
+    cy.get('cd-modal .custom-control-label').click();
+    cy.contains('cd-modal button', 'Delete').click();
 
     // Wait for modal to close
     cy.get('cd-modal').should('not.exist');
 
     // Waits for item to be removed from table
-    this.getFirstTableCell(name).should('not.exist');
+    getRow(name).should('not.exist');
   }
 }
index 7d0b46c256e721cd222e8127442f7664d330a3c3..36cadecd7bad41a3fb2f5b54a64068f240fa994c 100644 (file)
@@ -96,7 +96,10 @@ export class BucketsPageHelper extends PageHelper {
       .and('have.class', 'ng-invalid');
 
     // Check that error message was printed under name input field
-    cy.get('#bid + .invalid-feedback').should('have.text', 'The value is not valid.');
+    cy.get('#bid + .invalid-feedback').should(
+      'have.text',
+      'Bucket names must be 3 to 63 characters long.'
+    );
 
     // Test invalid owner input
     // select some valid option. The owner drop down error message will not appear unless a valid user was selected at
index 2d604db34394e5dad389212502ff8817fe20b06c..9cb84480b6432cdda5f48dedf6020d18b0d662e3 100644 (file)
@@ -111,7 +111,7 @@ describe('Dashboard Main Page', () => {
         }
 
         spec.pageObject.navigateTo();
-        spec.pageObject.getTableTotalCount().then((tableCount) => {
+        spec.pageObject.getTableCount('total').then((tableCount) => {
           expect(tableCount).to.eq(
             dashCount,
             `Text of card "${spec.cardName}" and regex "${spec.regexMatcher}" resulted in ${dashCount} ` +
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/1.ecdc99fc68ced4743e9f.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/1.ecdc99fc68ced4743e9f.js
deleted file mode 100644 (file)
index 2e06444..0000000
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{"+26A":function(l,n,e){"use strict";e.d(n,"a",(function(){return d}));var t=e("s7LF"),u=e("LvDl"),i=e("GyhO"),s=e("cp0P"),a=e("NJ9Y"),o=(e("XED3"),e("QFaf")),r=e("kvvV");e("kn/O");class d{constructor(l,n,e){this.modalRef=l,this.rbdMirroringService=n,this.taskWrapper=e,this.pools=[],this.directions=[{key:"rx-tx",desc:"Bidirectional"},{key:"rx",desc:"Unidirectional (receive-only)"}],this.createForm()}createForm(){this.importBootstrapForm=new o.a({siteName:new t.i("",{validators:[t.B.required]}),direction:new t.i("rx-tx",{}),pools:new t.k({},{validators:[this.validatePools()]}),token:new t.i("",{validators:[t.B.required,this.validateToken()]})})}ngOnInit(){this.rbdMirroringService.getSiteName().subscribe(l=>{this.importBootstrapForm.get("siteName").setValue(l.site_name)}),this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.pools=l.content_data.pools.reduce((l,n)=>(l.push({name:n.name,mirror_mode:n.mirror_mode}),l),[]);const n=this.importBootstrapForm.get("pools");u.each(this.pools,l=>{const e=l.name,u="disabled"===l.mirror_mode,i=n.controls[e];i?u&&i.disabled?i.enable():!u&&i.enabled&&(i.disable(),i.setValue(!0)):n.addControl(e,new t.i({value:!u,disabled:!u}))})})}ngOnDestroy(){this.subs&&this.subs.unsubscribe()}validatePools(){return l=>{let n=0;return u.each(l.controls,l=>{!0===l.value&&++n}),n>0?null:{requirePool:!0}}}validateToken(){return l=>{try{if(JSON.parse(atob(l.value)))return null}catch(n){}return{invalidToken:!0}}}import(){const l=[],n=[],e=this.importBootstrapForm.get("pools");u.each(e.controls,(e,t)=>{!0===e.value&&(l.push(t),e.disabled||n.push(t))});const t={mirror_mode:"image"};let o=Object(i.a)(this.rbdMirroringService.setSiteName(this.importBootstrapForm.getValue("siteName")),Object(s.a)(n.map(l=>this.rbdMirroringService.updatePool(l,t))));o=l.reduce((l,n)=>Object(i.a)(l,this.rbdMirroringService.importBootstrapToken(n,this.importBootstrapForm.getValue("direction"),this.importBootstrapForm.getValue("token"))),o).pipe(Object(a.a)());const d=()=>{this.rbdMirroringService.refresh(),this.importBootstrapForm.setErrors({cdSubmitButton:!0})};this.taskWrapper.wrapTaskAroundCall({task:new r.a("rbd/mirroring/bootstrap/import",{}),call:o}).subscribe(void 0,d,()=>{d(),this.modalRef.hide()})}}},"0BYw":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("ANnk"),s=e("f/UV"),a=e("aexS"),o=e("+gVj"),r=e("SVse"),d=e("EEJc"),c=e("ajRT"),m=e("mXUL"),p=e("IZUe"),h=e("gp3X"),g=e("sb0X"),f=e("KVJa"),v=e("Z21x"),b=e("sne2"),C=e("daK0"),S=e("LqlI"),R=e("9nlD"),_=e("Ekvf"),w=e("F83c"),y=e("GiVz");e.d(n,"a",(function(){return A}));var k=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","pool"],["id","pool"],["name","pool"],["placeholder","Pool name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,1)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,1)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,1)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"pool"),l(n,7,0,"pool")}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵted"](-1,null,["-- No rbd pools available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵted"](-1,null,["-- Select a pool --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.pool_name),l(n,2,0,n.context.$implicit.pool_name)}),(function(l,n){l(n,3,0,n.context.$implicit.pool_name)}))}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","pool"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,1).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](9,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,N)),t["ɵdid"](11,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,F)),t["ɵdid"](13,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,V)),t["ɵdid"](15,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,3,0,"pool"),l(n,7,0,"pool"),l(n,9,0,null===e.pools),l(n,11,0,null!==e.pools&&0===e.pools.length),l(n,13,0,null!==e.pools&&e.pools.length>0),l(n,15,0,e.pools)}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function D(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function x(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function P(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Namespace already exists."]))],null,null)}function q(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,51,"cd-modal",[],null,null,null,d.c,d.b)),t["ɵdid"](1,49152,null,0,c.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Create Namespace"])),(l()(),t["ɵeld"](4,0,null,1,47,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,46,"form",[["name","namespaceForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,u.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](9,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](10,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,33,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,12,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,m.b,m.a)),t["ɵdid"](13,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","pool"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pool"])),(l()(),t["ɵeld"](18,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](20,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,T)),t["ɵdid"](22,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,D)),t["ɵdid"](24,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](25,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,m.b,m.a)),t["ɵdid"](26,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](29,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","namespace"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Name"])),(l()(),t["ɵeld"](31,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](32,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","namespace"],["id","namespace"],["name","namespace"],["placeholder","Namespace name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,33)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,33).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,33)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,33)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](33,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](35,671744,[[3,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](37,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](38,4210688,null,0,p.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](39,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](40,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,x)),t["ɵdid"](42,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,P)),t["ɵdid"](44,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](45,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](46,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](47,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.submit()&&t),t}),h.b,h.a)),t["ɵdid"](48,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Create Namespace"])),(l()(),t["ɵeld"](50,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,f.b,f.a)),t["ɵdid"](51,49152,null,0,v.a,[r.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.namespaceForm),l(n,10,0,e.namespaceForm),l(n,13,0),l(n,20,0,!e.poolPermission.read),l(n,22,0,e.poolPermission.read),l(n,24,0,e.namespaceForm.showError("pool",t["ɵnov"](n,7),"required")),l(n,26,0),l(n,35,0,"namespace"),l(n,38,0,""),l(n,40,0,"namespace"),l(n,42,0,e.namespaceForm.showError("namespace",t["ɵnov"](n,7),"required")),l(n,44,0,e.namespaceForm.showError("namespace",t["ɵnov"](n,7),"namespaceExists")),l(n,48,0,e.namespaceForm),l(n,51,0,"Close",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,12,0,t["ɵnov"](n,13).hasErrors,t["ɵnov"](n,13).hasSuccess),l(n,25,0,t["ɵnov"](n,26).hasErrors,t["ɵnov"](n,26).hasSuccess),l(n,32,0,t["ɵnov"](n,37).ngClassUntouched,t["ɵnov"](n,37).ngClassTouched,t["ɵnov"](n,37).ngClassPristine,t["ɵnov"](n,37).ngClassDirty,t["ɵnov"](n,37).ngClassValid,t["ɵnov"](n,37).ngClassInvalid,t["ɵnov"](n,37).ngClassPending,t["ɵnov"](n,40).validClass,t["ɵnov"](n,40).invalidClass)}))}function B(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-namespace-form-modal",[],null,null,null,q,k)),t["ɵdid"](1,114688,null,0,C.a,[S.a,a.a,R.a,_.a,w.a,y.a],null,null)],(function(l,n){l(n,1,0)}),null)}var A=t["ɵccf"]("cd-rbd-namespace-form-modal",C.a,B,{},{},[])},"0rTx":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("EEJc"),i=e("ajRT"),s=e("s7LF"),a=e("+gVj"),o=e("mXUL"),r=e("IZUe"),d=e("ANnk"),c=e("f/UV"),m=e("aexS"),p=e("SVse"),h=e("gp3X"),g=e("sb0X"),f=e("KVJa"),v=e("Z21x"),b=e("sne2"),C=e("2GqK"),S=e("F83c"),R=e("LqlI"),_=e("2EZI"),w=e("kn/O");e.d(n,"a",(function(){return N}));var y=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,48,"cd-modal",[],null,null,null,u.c,u.b)),t["ɵdid"](1,49152,null,0,i.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Restore Image"])),(l()(),t["ɵeld"](4,0,null,1,44,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,43,"form",[["class","form"],["name","restoreForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,s.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,s.d,null,[s.l]),t["ɵdid"](9,16384,null,0,s.s,[[4,s.d]],null,null),t["ɵdid"](10,16384,null,0,a.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,30,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,12,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To restore"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](16,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](17,null,["","@",""])),(l()(),t["ɵted"](-1,null,[",  "])),(l()(),t["ɵeld"](19,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["type the image's new name and click"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](22,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Restore Image"])),(l()(),t["ɵted"](-1,null,[". "])),(l()(),t["ɵeld"](25,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,o.b,o.a)),t["ɵdid"](26,1163264,null,2,a.c,[t.ElementRef,a.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](29,0,null,0,1,"label",[["class","col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["New Name"])),(l()(),t["ɵeld"](31,0,null,0,8,"input",[["autocomplete","off"],["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,32)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,32).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,32)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,32)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](32,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵprd"](1024,null,s.p,(function(l){return[l]}),[s.e]),t["ɵdid"](34,671744,[[1,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](36,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](37,4210688,null,0,r.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](38,4210688,null,0,d.a,[[2,c.a],m.a,t.ElementRef],null,null),t["ɵdid"](39,16384,null,0,a.h,[[3,s.d],a.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,k)),t["ɵdid"](41,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](42,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](43,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](44,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.restore()&&t),t}),h.b,h.a)),t["ɵdid"](45,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Restore Image"])),(l()(),t["ɵeld"](47,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,f.b,f.a)),t["ɵdid"](48,49152,null,0,v.a,[p.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.restoreForm),l(n,10,0,e.restoreForm),l(n,26,0),l(n,34,0,"name"),l(n,37,0,""),l(n,39,0,"name"),l(n,41,0,e.restoreForm.showError("name",t["ɵnov"](n,7),"required")),l(n,45,0,e.restoreForm),l(n,48,0,"Cancel",e.modalRef.hide)}),(function(l,n){var e=n.component;l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,17,0,e.imageSpec,e.imageId),l(n,25,0,t["ɵnov"](n,26).hasErrors,t["ɵnov"](n,26).hasSuccess),l(n,31,0,t["ɵnov"](n,36).ngClassUntouched,t["ɵnov"](n,36).ngClassTouched,t["ɵnov"](n,36).ngClassPristine,t["ɵnov"](n,36).ngClassDirty,t["ɵnov"](n,36).ngClassValid,t["ɵnov"](n,36).ngClassInvalid,t["ɵnov"](n,36).ngClassPending,t["ɵnov"](n,39).validClass,t["ɵnov"](n,39).invalidClass)}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-trash-restore-modal",[],null,null,null,E,y)),t["ɵdid"](1,114688,null,0,C.a,[S.a,R.a,_.a,w.a],null,null)],(function(l,n){l(n,1,0)}),null)}var N=t["ɵccf"]("cd-rbd-trash-restore-modal",C.a,I,{},{},[])},"2GqK":function(l,n,e){"use strict";e.d(n,"a",(function(){return i})),e("F83c"),e("2EZI");var t=e("kvvV"),u=e("jVDg");e("kn/O");class i{constructor(l,n,e,t){this.rbdService=l,this.modalRef=n,this.fb=e,this.taskWrapper=t}ngOnInit(){this.imageSpec=new u.a(this.poolName,this.namespace,this.imageName).toString(),this.restoreForm=this.fb.group({name:this.imageName})}restore(){const l=this.restoreForm.getValue("name"),n=new u.a(this.poolName,this.namespace,this.imageId);this.taskWrapper.wrapTaskAroundCall({task:new t.a("rbd/trash/restore",{image_id_spec:n.toString(),new_image_name:l}),call:this.rbdService.restoreTrash(n,l)}).subscribe(void 0,()=>{this.restoreForm.setErrors({cdSubmitButton:!0})},()=>{this.modalRef.hide()})}}},"2JDI":function(l,n,e){"use strict";e.d(n,"a",(function(){return a}));var t=e("wd/R"),u=(e("F83c"),e("2EZI"),e("1Ni5")),i=e("kvvV"),s=e("jVDg");e("kn/O");class a{constructor(l,n,e,t){this.rbdService=l,this.modalRef=n,this.fb=e,this.taskWrapper=t,this.minDate=new Date,this.bsConfig={dateInputFormat:"YYYY-MM-DD HH:mm:ss",containerClass:"theme-default"},this.createForm()}createForm(){this.moveForm=this.fb.group({expiresAt:["",[u.a.custom("format",l=>!(""===l||t(l,"YYYY-MM-DD HH:mm:ss").isValid())),u.a.custom("expired",l=>t().isAfter(l))]]})}ngOnInit(){this.imageSpec=new s.a(this.poolName,this.namespace,this.imageName),this.imageSpecStr=this.imageSpec.toString(),this.pattern=`${this.poolName}/${this.imageName}`}moveImage(){let l=0;const n=this.moveForm.getValue("expiresAt");n&&(l=t(n).diff(t(),"seconds",!0)),l<0&&(l=0),this.taskWrapper.wrapTaskAroundCall({task:new i.a("rbd/trash/move",{image_spec:this.imageSpecStr}),call:this.rbdService.moveTrash(this.imageSpec,l)}).subscribe(void 0,void 0,()=>{this.modalRef.hide()})}}},"3IYD":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("SVse"),i=e("8xTl"),s=e("EEJc"),a=e("ajRT"),o=e("s7LF"),r=e("+gVj"),d=e("mXUL"),c=e("IZUe"),m=e("ANnk"),p=e("f/UV"),h=e("aexS"),g=e("gp3X"),f=e("sb0X"),v=e("KVJa"),b=e("Z21x"),C=e("sne2"),S=e("Fd71"),R=e("LqlI"),_=e("F83c"),w=e("VXsX"),y=e("9nlD"),k=e("GiVz");e.d(n,"a",(function(){return V}));var E=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function N(l){return t["ɵvid"](0,[t["ɵpid"](0,u.TitleCasePipe,[]),t["ɵpid"](0,i.a,[]),(l()(),t["ɵeld"](2,0,null,null,40,"cd-modal",[],null,null,null,s.c,s.b)),t["ɵdid"](3,49152,null,0,a.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),t["ɵted"](5,null,[""," ",""])),t["ɵppd"](6,1),t["ɵppd"](7,1),(l()(),t["ɵeld"](8,0,null,1,34,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](9,0,null,null,33,"form",[["name","snapshotForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,11).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,11).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,14).onSubmit()&&u),u}),null,null)),t["ɵdid"](10,16384,null,0,o.G,[],null,null),t["ɵdid"](11,540672,[["formDir",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,o.d,null,[o.l]),t["ɵdid"](13,16384,null,0,o.s,[[4,o.d]],null,null),t["ɵdid"](14,16384,null,0,r.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](15,0,null,null,18,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](16,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](17,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](20,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","snapshotName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Name"])),(l()(),t["ɵeld"](22,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](23,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","snapshotName"],["id","snapshotName"],["name","snapshotName"],["placeholder","Snapshot name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,24)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,24).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,24)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,24)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](24,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](26,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](28,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](29,4210688,null,0,c.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](30,4210688,null,0,m.a,[[2,p.a],h.a,t.ElementRef],null,null),t["ɵdid"](31,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](33,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](34,0,null,null,8,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](35,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](36,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.submit()&&t),t}),g.b,g.a)),t["ɵdid"](37,114688,null,0,f.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](38,0,[""," ",""])),t["ɵppd"](39,1),t["ɵppd"](40,1),(l()(),t["ɵeld"](41,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,v.b,v.a)),t["ɵdid"](42,49152,null,0,b.a,[u.Location,C.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.modalRef),l(n,11,0,e.snapshotForm),l(n,14,0,e.snapshotForm),l(n,17,0),l(n,26,0,"snapshotName"),l(n,29,0,""),l(n,31,0,"snapshotName"),l(n,33,0,e.snapshotForm.showError("snapshotName",t["ɵnov"](n,11),"required")),l(n,37,0,e.snapshotForm),l(n,42,0,"Close",e.modalRef.hide)}),(function(l,n){var e=n.component,u=t["ɵunv"](n,5,0,l(n,6,0,t["ɵnov"](n,0),e.action)),i=t["ɵunv"](n,5,1,l(n,7,0,t["ɵnov"](n,1),e.resource));l(n,5,0,u,i),l(n,9,0,t["ɵnov"](n,13).ngClassUntouched,t["ɵnov"](n,13).ngClassTouched,t["ɵnov"](n,13).ngClassPristine,t["ɵnov"](n,13).ngClassDirty,t["ɵnov"](n,13).ngClassValid,t["ɵnov"](n,13).ngClassInvalid,t["ɵnov"](n,13).ngClassPending),l(n,16,0,t["ɵnov"](n,17).hasErrors,t["ɵnov"](n,17).hasSuccess),l(n,23,0,t["ɵnov"](n,28).ngClassUntouched,t["ɵnov"](n,28).ngClassTouched,t["ɵnov"](n,28).ngClassPristine,t["ɵnov"](n,28).ngClassDirty,t["ɵnov"](n,28).ngClassValid,t["ɵnov"](n,28).ngClassInvalid,t["ɵnov"](n,28).ngClassPending,t["ɵnov"](n,31).validClass,t["ɵnov"](n,31).invalidClass);var s=t["ɵunv"](n,38,0,l(n,39,0,t["ɵnov"](n,0),e.action)),a=t["ɵunv"](n,38,1,l(n,40,0,t["ɵnov"](n,1),e.resource));l(n,38,0,s,a)}))}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-snapshot-form-modal",[],null,null,null,N,E)),t["ɵdid"](1,114688,null,0,S.a,[R.a,_.a,w.a,y.a,k.a,C.b],null,null)],(function(l,n){l(n,1,0)}),null)}var V=t["ɵccf"]("cd-rbd-snapshot-form-modal",S.a,F,{},{},[])},"3ris":function(l,n,e){"use strict";e.d(n,"a",(function(){return s}));var t=e("yYhs"),u=e("LvDl"),i=(e("uIqm"),e("oxzT"));e("iExv"),e("uYzU");class s{constructor(l,n,e){this.i18n=l,this.iscsiBackstorePipe=n,this.booleanTextPipe=e,this.icons=i.a,this.metadata={},this.nodes=[],this.treeOptions={useVirtualScroll:!0,actionMapping:{mouse:{click:this.onNodeSelected.bind(this)}}}}set content(l){this.detailTable=l,l&&l.updateColumns()}ngOnInit(){this.columns=[{prop:"displayName",name:this.i18n("Name"),flexGrow:1,cellTemplate:this.highlightTpl},{prop:"current",name:this.i18n("Current"),flexGrow:1,cellTemplate:this.highlightTpl},{prop:"default",name:this.i18n("Default"),flexGrow:1,cellTemplate:this.highlightTpl}]}ngOnChanges(){this.selection&&(this.selectedItem=this.selection,this.generateTree()),this.data=void 0}generateTree(){const l=u.cloneDeep(this.selectedItem.target_controls);this.cephIscsiConfigVersion>10&&u.extend(l,u.cloneDeep(this.selectedItem.auth)),this.metadata={root:l};const n={target:{expanded:u.join(this.selectedItem.cdExecuting?[i.a.large,i.a.spinner,i.a.spin]:[i.a.large,i.a.bullseye]," ")},initiators:{expanded:u.join([i.a.large,i.a.user]," "),leaf:u.join([i.a.user]," ")},groups:{expanded:u.join([i.a.large,i.a.users]," "),leaf:u.join([i.a.users]," ")},disks:{expanded:u.join([i.a.large,i.a.disk]," "),leaf:u.join([i.a.disk]," ")},portals:{expanded:u.join([i.a.large,i.a.server]," "),leaf:u.join([i.a.server]," ")}},e=[];u.forEach(this.selectedItem.disks,l=>{const t="disk_"+l.pool+"_"+l.image;this.metadata[t]={controls:l.controls,backstore:l.backstore},["wwn","lun"].forEach(n=>{n in l&&(this.metadata[t][n]=l[n])}),e.push({name:`${l.pool}/${l.image}`,cdId:t,cdIcon:n.disks.leaf})});const t=[];u.forEach(this.selectedItem.portals,l=>{t.push({name:`${l.host}:${l.ip}`,cdIcon:n.portals.leaf})});const s=[];u.forEach(this.selectedItem.clients,l=>{const e=u.cloneDeep(l.auth);l.info&&(u.extend(e,l.info),delete e.state,u.forEach(Object.keys(l.info.state),n=>{e[n.toLowerCase()]=l.info.state[n]})),this.metadata["client_"+l.client_iqn]=e;const t=[];l.luns.forEach(l=>{t.push({name:`${l.pool}/${l.image}`,cdId:"disk_"+l.pool+"_"+l.image,cdIcon:n.disks.leaf})});let i="";l.info&&(i=Object.keys(l.info.state).includes("LOGGED_IN")?"logged_in":"logged_out"),s.push({name:l.client_iqn,status:i,cdId:"client_"+l.client_iqn,children:t,cdIcon:n.initiators.leaf})});const a=[];u.forEach(this.selectedItem.groups,l=>{const e=[];l.disks.forEach(l=>{e.push({name:`${l.pool}/${l.image}`,cdId:"disk_"+l.pool+"_"+l.image,cdIcon:n.disks.leaf})});const t=[];l.members.forEach(l=>{t.push({name:l,cdId:"client_"+l})}),a.push({name:l.group_id,cdIcon:n.groups.leaf,children:[{name:"Disks",children:e,cdIcon:n.disks.expanded},{name:"Initiators",children:t,cdIcon:n.initiators.expanded}]})}),this.nodes=[{name:this.selectedItem.target_iqn,cdId:"root",isExpanded:!0,cdIcon:n.target.expanded,children:[{name:"Disks",isExpanded:!0,children:e,cdIcon:n.disks.expanded},{name:"Portals",isExpanded:!0,children:t,cdIcon:n.portals.expanded},{name:"Initiators",isExpanded:!0,children:s,cdIcon:n.initiators.expanded},{name:"Groups",isExpanded:!0,children:a,cdIcon:n.groups.expanded}]}]}format(l){return"boolean"==typeof l?this.booleanTextPipe.transform(l):l}onNodeSelected(l,n){if(t.a.ACTIVATE(l,n,!0),n.data.cdId){this.title=n.data.name;const l=this.metadata[n.data.cdId]||{};"root"===n.data.cdId?(this.columns[2].isHidden=!1,this.data=u.map(this.settings.target_default_controls,(n,e)=>({displayName:e,default:n=this.format(n),current:u.isUndefined(l[e])?n:this.format(l[e])})),this.cephIscsiConfigVersion>10&&["user","password","mutual_user","mutual_password"].forEach(n=>{this.data.push({displayName:n,default:null,current:l[n]})})):n.data.cdId.toString().startsWith("disk_")?(this.columns[2].isHidden=!1,this.data=u.map(this.settings.disk_default_controls[l.backstore],(n,e)=>({displayName:e,default:n=this.format(n),current:u.isUndefined(l.controls[e])?n:this.format(l.controls[e])})),this.data.push({displayName:"backstore",default:this.iscsiBackstorePipe.transform(this.settings.default_backstore),current:this.iscsiBackstorePipe.transform(l.backstore)}),["wwn","lun"].forEach(n=>{n in l&&this.data.push({displayName:n,default:void 0,current:l[n]})})):(this.columns[2].isHidden=!0,this.data=u.map(l,(l,n)=>({displayName:n,default:void 0,current:this.format(l)})))}else this.data=void 0;this.detailTable&&this.detailTable.updateColumns()}onUpdateData(){this.tree.treeModel.expandAll()}}},"5GyT":function(l,n,e){"use strict";e.d(n,"a",(function(){return v})),e.d(n,"b",(function(){return f}));var t=e("LvDl"),u=(e("F83c"),e("+fVR")),i=e("OLbh"),s=e("0+/T"),a=(e("sne2"),e("uIqm"),e("x38r")),o=e("oxzT"),r=e("yJti"),d=e("vCyI"),c=e("kvvV"),m=e("jVDg"),p=(e("Fgil"),e("o4+5"),e("aexS"),e("VTlA"),e("kn/O"),e("EgGo")),h=e("2JDI"),g=e("u0yg");const f=new p.a("block/rbd");class v extends u.a{constructor(l,n,e,t,u,i,s,a,r,c){super(),this.authStorageService=l,this.rbdService=n,this.dimlessBinaryPipe=e,this.dimlessPipe=t,this.modalService=u,this.taskWrapper=i,this.taskListService=s,this.i18n=a,this.urlBuilder=r,this.actionLabels=c,this.selection=new d.a,this.builders={"rbd/create":l=>this.createRbdFromTask(l.pool_name,l.namespace,l.image_name),"rbd/delete":l=>this.createRbdFromTaskImageSpec(l.image_spec),"rbd/clone":l=>this.createRbdFromTask(l.child_pool_name,l.child_namespace,l.child_image_name),"rbd/copy":l=>this.createRbdFromTask(l.dest_pool_name,l.dest_namespace,l.dest_image_name)},this.permission=this.authStorageService.getPermissions().rbdImage;const p=()=>this.selection.first()&&new m.a(this.selection.first().pool_name,this.selection.first().namespace,this.selection.first().name).toStringEncoded();this.tableActions=[{permission:"create",icon:o.a.add,routerLink:()=>this.urlBuilder.getCreate(),canBePrimary:l=>!l.hasSingleSelection,name:this.actionLabels.CREATE},{permission:"update",icon:o.a.edit,routerLink:()=>this.urlBuilder.getEdit(p()),name:this.actionLabels.EDIT},{permission:"create",canBePrimary:l=>l.hasSingleSelection,disable:l=>!l.hasSingleSelection||l.first().cdExecuting,icon:o.a.copy,routerLink:()=>"/block/rbd/copy/"+p(),name:this.actionLabels.COPY},{permission:"update",disable:l=>!l.hasSingleSelection||l.first().cdExecuting||!l.first().parent,icon:o.a.flatten,click:()=>this.flattenRbdModal(),name:this.actionLabels.FLATTEN},{permission:"delete",icon:o.a.destroy,click:()=>this.deleteRbdModal(),name:this.actionLabels.DELETE,disable:l=>this.getDeleteDisableDesc(l)},{permission:"delete",icon:o.a.trash,click:()=>this.trashRbdModal(),name:this.actionLabels.TRASH,disable:l=>!l.first()||!l.hasSingleSelection||l.first().image_format===g.a.V1}]}createRbdFromTaskImageSpec(l){const n=m.a.fromString(l);return this.createRbdFromTask(n.poolName,n.namespace,n.imageName)}createRbdFromTask(l,n,e){const t=new g.b;return t.id="-1",t.unique_id="-1",t.name=e,t.namespace=n,t.pool_name=l,t.image_format=g.a.V2,t}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"name",flexGrow:2,cellTransformation:a.a.executing},{name:this.i18n("Pool"),prop:"pool_name",flexGrow:2},{name:this.i18n("Namespace"),prop:"namespace",flexGrow:2},{name:this.i18n("Size"),prop:"size",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:this.i18n("Objects"),prop:"num_objs",flexGrow:1,cellClass:"text-right",pipe:this.dimlessPipe},{name:this.i18n("Object size"),prop:"obj_size",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:this.i18n("Provisioned"),prop:"disk_usage",cellClass:"text-center",flexGrow:1,pipe:this.dimlessBinaryPipe},{name:this.i18n("Total provisioned"),prop:"total_disk_usage",cellClass:"text-center",flexGrow:1,pipe:this.dimlessBinaryPipe},{name:this.i18n("Parent"),prop:"parent",flexGrow:2,cellTemplate:this.parentTpl}],this.taskListService.init(()=>this.rbdService.list(),l=>this.prepareResponse(l),l=>this.images=l,()=>this.onFetchError(),l=>["rbd/clone","rbd/copy","rbd/create","rbd/delete","rbd/edit","rbd/flatten","rbd/trash/move"].includes(l.name),(l,n)=>{let e;switch(n.name){case"rbd/copy":e=new m.a(n.metadata.dest_pool_name,n.metadata.dest_namespace,n.metadata.dest_image_name).toString();break;case"rbd/clone":e=new m.a(n.metadata.child_pool_name,n.metadata.child_namespace,n.metadata.child_image_name).toString();break;case"rbd/create":e=new m.a(n.metadata.pool_name,n.metadata.namespace,n.metadata.image_name).toString();break;default:e=n.metadata.image_spec}return e===new m.a(l.pool_name,l.namespace,l.name).toString()},this.builders)}onFetchError(){this.table.reset(),this.viewCacheStatusList=[{status:r.a.ValueException}]}prepareResponse(l){let n=[];const e={};l.forEach(l=>{t.isUndefined(e[l.status])&&(e[l.status]=[]),e[l.status].push(l.pool_name),n=n.concat(l.value)});const u=[];return t.forEach(e,(l,n)=>{u.push({status:parseInt(n,10),statusFor:(l.length>1?"pools ":"pool ")+"<strong>"+l.join("</strong>, <strong>")+"</strong>"})}),this.viewCacheStatusList=u,n}updateSelection(l){this.selection=l}deleteRbdModal(){const l=this.selection.first().pool_name,n=this.selection.first().namespace,e=this.selection.first().name,t=new m.a(l,n,e);this.modalRef=this.modalService.show(s.a,{initialState:{itemDescription:"RBD",itemNames:[t],bodyTemplate:this.deleteTpl,bodyContext:{hasSnapshots:this.hasSnapshots(),snapshots:this.listProtectedSnapshots()},submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new c.a("rbd/delete",{image_spec:t.toString()}),call:this.rbdService.delete(t)})}})}trashRbdModal(){const l={poolName:this.selection.first().pool_name,namespace:this.selection.first().namespace,imageName:this.selection.first().name,hasSnapshots:this.hasSnapshots()};this.modalRef=this.modalService.show(h.a,{initialState:l})}flattenRbd(l){this.taskWrapper.wrapTaskAroundCall({task:new c.a("rbd/flatten",{image_spec:l.toString()}),call:this.rbdService.flatten(l)}).subscribe(void 0,void 0,()=>{this.modalRef.hide()})}flattenRbdModal(){const l=this.selection.first().pool_name,n=this.selection.first().namespace,e=this.selection.first().name,t=this.selection.first().parent,u=new m.a(t.pool_name,t.pool_namespace,t.image_name),s=new m.a(l,n,e),a={titleText:"RBD flatten",buttonText:"Flatten",bodyTpl:this.flattenTpl,bodyData:{parent:`${u}@${t.snap_name}`,child:s.toString()},onSubmit:()=>{this.flattenRbd(s)}};this.modalRef=this.modalService.show(i.a,{initialState:a})}hasSnapshots(){return(this.selection.first().snapshots||[]).length>0}hasClonedSnapshots(l){return(l.snapshots||[]).some(l=>l.children&&l.children.length>0)}listProtectedSnapshots(){return this.selection.first().snapshots.reduce((l,n)=>(n.is_protected&&l.push(n.name),l),[])}getDeleteDisableDesc(l){const n=l.first();return n&&this.hasClonedSnapshots(n)?this.i18n("This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD."):!l.first()||!l.hasSingleSelection||this.hasClonedSnapshots(l.first())}}},BH9v:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("aXbf");class s{constructor(l,n){this.control=l,this.formatter=n}setValue(l){const n=this.formatter.toMilliseconds(l);this.control.control.setValue(n+" ms")}ngOnInit(){this.setValue(this.control.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.control.value))}onUpdate(l){this.setValue(l)}}var a=e("ANnk"),o=e("f/UV"),r=e("aexS"),d=e("+gVj"),c=e("LvDl"),m=e("IzCI");class p{constructor(l,n,e,u){this.elementRef=l,this.control=n,this.dimlessBinaryPerSecondPipe=e,this.formatter=u,this.ngModelChange=new t.EventEmitter,this.el=this.elementRef.nativeElement}ngOnInit(){this.setValue(this.el.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.el.value))}setValue(l){/^[\d.]+$/.test(l)&&(l+=this.defaultUnit||"m");const n=this.formatter.toBytes(l,0),e=this.round(n);this.el.value=this.dimlessBinaryPerSecondPipe.transform(e),null!==n?(this.ngModelChange.emit(this.el.value),this.control.control.setValue(this.el.value)):(this.ngModelChange.emit(null),this.control.control.setValue(null))}round(l){if(null!==l&&0!==l){if(!c.isUndefined(this.minBytes)&&l<this.minBytes)return this.minBytes;if(!c.isUndefined(this.maxBytes)&&l>this.maxBytes)return this.maxBytes;if(!c.isUndefined(this.roundPower)){const n=Math.round(Math.log(l)/Math.log(this.roundPower));return Math.pow(this.roundPower,n)}}return l}onBlur(l){this.setValue(l)}}class h{constructor(l,n){this.formatter=l,this.ngControl=n}setValue(l){const n=this.formatter.toIops(l);this.ngControl.control.setValue(n+" IOPS")}ngOnInit(){this.setValue(this.ngControl.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.ngControl.value))}onUpdate(l){this.setValue(l)}}var g=e("mXUL"),f=e("4HWh"),v=e("p4Cf"),b=e("SVse");e("rFfW"),e("o8EM"),e.d(n,"a",(function(){return C})),e.d(n,"b",(function(){return E}));var C=t["ɵcrt"]({encapsulation:0,styles:[[".collapsible[_ngcontent-%COMP%]{cursor:pointer;-moz-user-select:none;user-select:none}"]],data:{}});function S(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,8,"input",[["cdMilliseconds",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,2)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,2).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,2)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,2)._compositionEnd(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,7).onUpdate(e.target.value)&&u),u}),null,null)),t["ɵdid"](2,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](4,671744,null,0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](6,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](7,81920,null,0,s,[u.q,i.a],{ngDataReady:[0,"ngDataReady"]},null),t["ɵdid"](8,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](9,16384,null,0,d.h,[[3,u.d],d.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0,n.parent.context.$implicit.name),l(n,7,0,e.ngDataReady),l(n,9,0,n.parent.context.$implicit.name)}),(function(l,n){l(n,1,1,[n.parent.context.$implicit.name,n.parent.context.$implicit.name,t["ɵnov"](n,6).ngClassUntouched,t["ɵnov"](n,6).ngClassTouched,t["ɵnov"](n,6).ngClassPristine,t["ɵnov"](n,6).ngClassDirty,t["ɵnov"](n,6).ngClassValid,t["ɵnov"](n,6).ngClassInvalid,t["ɵnov"](n,6).ngClassPending,t["ɵnov"](n,9).validClass,t["ɵnov"](n,9).invalidClass])}))}function R(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,8,"input",[["cdDimlessBinaryPerSecond",""],["class","form-control"],["defaultUnit","b"],["type","text"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,2)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,2).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,2)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,2)._compositionEnd(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,7).onBlur(e.target.value)&&u),u}),null,null)),t["ɵdid"](2,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](4,671744,null,0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](6,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](7,81920,null,0,p,[t.ElementRef,u.q,m.a,i.a],{ngDataReady:[0,"ngDataReady"],defaultUnit:[1,"defaultUnit"]},null),t["ɵdid"](8,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](9,16384,null,0,d.h,[[3,u.d],d.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0,n.parent.context.$implicit.name),l(n,7,0,e.ngDataReady,"b"),l(n,9,0,n.parent.context.$implicit.name)}),(function(l,n){l(n,1,1,[n.parent.context.$implicit.name,n.parent.context.$implicit.name,t["ɵnov"](n,6).ngClassUntouched,t["ɵnov"](n,6).ngClassTouched,t["ɵnov"](n,6).ngClassPristine,t["ɵnov"](n,6).ngClassDirty,t["ɵnov"](n,6).ngClassValid,t["ɵnov"](n,6).ngClassInvalid,t["ɵnov"](n,6).ngClassPending,t["ɵnov"](n,9).validClass,t["ɵnov"](n,9).invalidClass])}))}function _(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,8,"input",[["cdIops",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,2)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,2).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,2)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,2)._compositionEnd(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,7).onUpdate(e.target.value)&&u),u}),null,null)),t["ɵdid"](2,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](4,671744,null,0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](6,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](7,81920,null,0,h,[i.a,u.q],{ngDataReady:[0,"ngDataReady"]},null),t["ɵdid"](8,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](9,16384,null,0,d.h,[[3,u.d],d.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0,n.parent.context.$implicit.name),l(n,7,0,e.ngDataReady),l(n,9,0,n.parent.context.$implicit.name)}),(function(l,n){l(n,1,1,[n.parent.context.$implicit.name,n.parent.context.$implicit.name,t["ɵnov"](n,6).ngClassUntouched,t["ɵnov"](n,6).ngClassTouched,t["ɵnov"](n,6).ngClassPristine,t["ɵnov"](n,6).ngClassDirty,t["ɵnov"](n,6).ngClassValid,t["ɵnov"](n,6).ngClassInvalid,t["ɵnov"](n,6).ngClassPending,t["ɵnov"](n,9).validClass,t["ɵnov"](n,9).invalidClass])}))}function w(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The mininum value is 0"]))],null,null)}function y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,g.b,g.a)),t["ɵdid"](1,1163264,null,2,d.c,[t.ElementRef,d.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](5,null,["",""])),(l()(),t["ɵeld"](6,0,null,null,2,"cd-helper",[],null,null,null,f.b,f.a)),t["ɵdid"](7,49152,null,0,v.a,[],null,null),(l()(),t["ɵted"](8,0,["",""])),(l()(),t["ɵeld"](9,0,null,0,20,"div",[],[[8,"className",0]],null,null,null,null)),(l()(),t["ɵeld"](10,0,null,null,17,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),t["ɵeld"](11,0,null,null,7,null,null,null,null,null,null,null)),t["ɵdid"](12,16384,null,0,b.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,S)),t["ɵdid"](14,278528,null,0,b.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,b.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,R)),t["ɵdid"](16,278528,null,0,b.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,b.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,_)),t["ɵdid"](18,278528,null,0,b.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,b.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵeld"](19,0,null,null,8,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),t["ɵeld"](20,0,null,null,7,"button",[["class","btn btn-light"],["data-toggle","button"],["title","Remove the local configuration value. The parent configuration value will be inherited and used instead."],["type","button"]],null,[[null,"click"]],(function(l,n,e){var t=!0;return"click"===n&&(t=!1!==l.component.reset(l.context.$implicit.name)&&t),t}),null,null)),t["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](22,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t["ɵpod"](23,{active:0}),(l()(),t["ɵeld"](24,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),t["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](26,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),t["ɵpad"](27,1),(l()(),t["ɵand"](16777216,null,null,1,null,w)),t["ɵdid"](29,16384,null,0,b.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,12,0,n.context.$implicit.type),l(n,14,0,e.configurationType.milliseconds),l(n,16,0,e.configurationType.bps),l(n,18,0,e.configurationType.iops);var u=l(n,23,0,e.isDisabled(n.context.$implicit.name));l(n,22,0,"btn btn-light",u);var i=l(n,27,0,e.icons.erase);l(n,26,0,i),l(n,29,0,e.form.showError("configuration."+n.context.$implicit.name,t["ɵnov"](n.parent.parent,0),"min"))}),(function(l,n){l(n,0,0,t["ɵnov"](n,1).hasErrors,t["ɵnov"](n,1).hasSuccess),l(n,4,0,n.context.$implicit.name),l(n,5,0,n.context.$implicit.displayName),l(n,8,0,n.context.$implicit.description),l(n,9,0,t["ɵinlineInterpolate"](1,"cd-col-form-input ",n.parent.context.$implicit.heading,""))}))}function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,"div",[["class","col-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,5,"h4",[["class","cd-header"]],null,null,null,null,null)),(l()(),t["ɵeld"](2,0,null,null,4,"span",[["class","collapsible"]],null,[[null,"click"]],(function(l,n,e){var t=!0;return"click"===n&&(t=!1!==l.component.toggleSectionVisibility(l.context.$implicit.class)&&t),t}),null,null)),(l()(),t["ɵted"](3,null,[" "," "])),(l()(),t["ɵeld"](4,0,null,null,2,"i",[["aria-hidden","true"]],null,null,null,null,null)),t["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](6,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(l()(),t["ɵeld"](7,0,null,null,2,"div",[],[[8,"className",0],[8,"hidden",0]],null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,y)),t["ɵdid"](9,278528,null,0,b.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,6,0,e.sectionVisibility[n.context.$implicit.class]?e.icons.minusCircle:e.icons.addCircle),l(n,9,0,n.context.$implicit.options)}),(function(l,n){var e=n.component;l(n,3,0,n.context.$implicit.heading),l(n,7,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.class,""),!e.sectionVisibility[n.context.$implicit.class])}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,[["cfgFormGroup",1]],null,8,"fieldset",[],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,1).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,1).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,4).onSubmit()&&u),u}),null,null)),t["ɵdid"](1,540672,null,0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](3,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](4,16384,null,0,d.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](5,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["RBD Configuration"])),(l()(),t["ɵand"](16777216,null,null,1,null,k)),t["ɵdid"](8,278528,null,0,b.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.form.get("configuration")),l(n,4,0,e.form.get("configuration")),l(n,8,0,e.rbdConfigurationService.sections)}),(function(l,n){l(n,0,0,t["ɵnov"](n,3).ngClassUntouched,t["ɵnov"](n,3).ngClassTouched,t["ɵnov"](n,3).ngClassPristine,t["ɵnov"](n,3).ngClassDirty,t["ɵnov"](n,3).ngClassValid,t["ɵnov"](n,3).ngClassInvalid,t["ɵnov"](n,3).ngClassPending)}))}},E7j4:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("ANnk"),s=e("f/UV"),a=e("aexS"),o=e("+gVj"),r=e("EEJc"),d=e("ajRT"),c=e("mXUL"),m=e("IZUe"),p=e("SVse"),h=e("gp3X"),g=e("sb0X"),f=e("KVJa"),v=e("Z21x"),b=e("sne2"),C=e("+26A"),S=e("LqlI"),R=e("XED3"),_=e("kn/O");e.d(n,"a",(function(){return D}));var w=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.key),l(n,2,0,n.context.$implicit.key)}),(function(l,n){l(n,3,0,n.context.$implicit.desc)}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,3).onChange(e.target.checked)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,3).onTouched()&&u),u}),null,null)),t["ɵdid"](2,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](3,16384,null,0,u.c,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.c]),t["ɵdid"](5,671744,[[5,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](7,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](8,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](9,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](10,null,["",""]))],(function(l,n){l(n,5,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,"")),l(n,8,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""))}),(function(l,n){l(n,1,1,[t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""),t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""),t["ɵnov"](n,7).ngClassUntouched,t["ɵnov"](n,7).ngClassTouched,t["ɵnov"](n,7).ngClassPristine,t["ɵnov"](n,7).ngClassDirty,t["ɵnov"](n,7).ngClassValid,t["ɵnov"](n,7).ngClassInvalid,t["ɵnov"](n,7).ngClassPending,t["ɵnov"](n,8).validClass,t["ɵnov"](n,8).invalidClass]),l(n,9,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,"")),l(n,10,0,n.context.$implicit.name)}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["At least one pool is required."]))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The token is invalid."]))],null,null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,89,"cd-modal",[],null,null,null,r.c,r.b)),t["ɵdid"](1,49152,null,0,d.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Import Bootstrap Token"])),(l()(),t["ɵeld"](4,0,null,1,85,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,84,"form",[["class","form"],["name","importBootstrapForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,u.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](9,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](10,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,71,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,5,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,4,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To import a bootstrap token which was created by a peer site cluster, provide the local site's name, select which pools will have mirroring enabled, provide the generated token, and click "])),(l()(),t["ɵeld"](15,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Import"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](18,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](19,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](22,0,null,0,1,"label",[["class","col-form-label required"],["for","siteName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Site Name"])),(l()(),t["ɵeld"](24,0,null,0,8,"input",[["autofocus",""],["class","form-control"],["formControlName","siteName"],["id","siteName"],["name","siteName"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,27)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,27).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,27)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,27)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](25,4210688,null,0,m.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](26,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](27,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](29,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](31,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](32,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,y)),t["ɵdid"](34,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](35,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](36,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](39,0,null,0,2,"label",[["class","col-form-label"],["for","direction"]],null,null,null,null,null)),(l()(),t["ɵeld"](40,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Direction"])),(l()(),t["ɵeld"](42,0,null,0,9,"select",[["class","form-control custom-select"],["formControlName","direction"],["id","direction"],["name","direction"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,44).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,44).onTouched()&&u),u}),null,null)),t["ɵdid"](43,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](44,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](46,671744,[[3,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](48,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](49,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,k)),t["ɵdid"](51,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵeld"](52,0,null,null,12,"div",[["class","form-group"],["formGroupName","pools"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](53,212992,null,0,u.m,[[3,u.d],[8,null],[8,null]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.d,null,[u.m]),t["ɵdid"](55,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](56,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](59,0,null,0,1,"label",[["class","col-form-label required"],["for","pools"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pools"])),(l()(),t["ɵand"](16777216,null,0,1,null,E)),t["ɵdid"](62,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,I)),t["ɵdid"](64,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](65,0,null,null,17,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](66,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,7,{FormControlNames:1}),t["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),t["ɵeld"](69,0,null,0,1,"label",[["class","col-form-label required"],["for","token"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Token"])),(l()(),t["ɵeld"](71,0,null,0,7,"textarea",[["class","form-control resize-vertical"],["formControlName","token"],["id","token"],["placeholder","Generated token..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,72)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,72).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,72)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,72)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](72,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](74,671744,[[7,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](76,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](77,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵted"](-1,null,["          "])),(l()(),t["ɵand"](16777216,null,0,1,null,N)),t["ɵdid"](80,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,F)),t["ɵdid"](82,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](83,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](84,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](85,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.import()&&t),t}),h.b,h.a)),t["ɵdid"](86,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Import"])),(l()(),t["ɵeld"](88,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,f.b,f.a)),t["ɵdid"](89,49152,null,0,v.a,[p.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.importBootstrapForm),l(n,10,0,e.importBootstrapForm),l(n,19,0),l(n,25,0,""),l(n,29,0,"siteName"),l(n,32,0,"siteName"),l(n,34,0,e.importBootstrapForm.showError("siteName",t["ɵnov"](n,7),"required")),l(n,36,0),l(n,46,0,"direction"),l(n,49,0,"direction"),l(n,51,0,e.directions),l(n,53,0,"pools"),l(n,56,0),l(n,62,0,e.pools),l(n,64,0,e.importBootstrapForm.showError("pools",t["ɵnov"](n,7),"requirePool")),l(n,66,0),l(n,74,0,"token"),l(n,77,0,"token"),l(n,80,0,e.importBootstrapForm.showError("token",t["ɵnov"](n,7),"required")),l(n,82,0,e.importBootstrapForm.showError("token",t["ɵnov"](n,7),"invalidToken")),l(n,86,0,e.importBootstrapForm),l(n,89,0,"Close",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,18,0,t["ɵnov"](n,19).hasErrors,t["ɵnov"](n,19).hasSuccess),l(n,24,0,t["ɵnov"](n,31).ngClassUntouched,t["ɵnov"](n,31).ngClassTouched,t["ɵnov"](n,31).ngClassPristine,t["ɵnov"](n,31).ngClassDirty,t["ɵnov"](n,31).ngClassValid,t["ɵnov"](n,31).ngClassInvalid,t["ɵnov"](n,31).ngClassPending,t["ɵnov"](n,32).validClass,t["ɵnov"](n,32).invalidClass),l(n,35,0,t["ɵnov"](n,36).hasErrors,t["ɵnov"](n,36).hasSuccess),l(n,42,0,t["ɵnov"](n,48).ngClassUntouched,t["ɵnov"](n,48).ngClassTouched,t["ɵnov"](n,48).ngClassPristine,t["ɵnov"](n,48).ngClassDirty,t["ɵnov"](n,48).ngClassValid,t["ɵnov"](n,48).ngClassInvalid,t["ɵnov"](n,48).ngClassPending,t["ɵnov"](n,49).validClass,t["ɵnov"](n,49).invalidClass),l(n,52,0,t["ɵnov"](n,55).ngClassUntouched,t["ɵnov"](n,55).ngClassTouched,t["ɵnov"](n,55).ngClassPristine,t["ɵnov"](n,55).ngClassDirty,t["ɵnov"](n,55).ngClassValid,t["ɵnov"](n,55).ngClassInvalid,t["ɵnov"](n,55).ngClassPending,t["ɵnov"](n,56).hasErrors,t["ɵnov"](n,56).hasSuccess),l(n,65,0,t["ɵnov"](n,66).hasErrors,t["ɵnov"](n,66).hasSuccess),l(n,71,0,t["ɵnov"](n,76).ngClassUntouched,t["ɵnov"](n,76).ngClassTouched,t["ɵnov"](n,76).ngClassPristine,t["ɵnov"](n,76).ngClassDirty,t["ɵnov"](n,76).ngClassValid,t["ɵnov"](n,76).ngClassInvalid,t["ɵnov"](n,76).ngClassPending,t["ɵnov"](n,77).validClass,t["ɵnov"](n,77).invalidClass)}))}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-bootstrap-import-modal",[],null,null,null,V,w)),t["ɵdid"](1,245760,null,0,C.a,[S.a,R.a,_.a],null,null)],(function(l,n){l(n,1,0)}),null)}var D=t["ɵccf"]("cd-bootstrap-import-modal",C.a,T,{},{},[])},EFGL:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("SVse"),i=e("IzCI"),s=e("aXbf"),a=e("dEH0"),o=e("BQkM"),r=e("25BL"),d=e("uIqm");e("aAWM"),e("o8EM"),e("GiVz"),e.d(n,"a",(function(){return c})),e.d(n,"b",(function(){return R}));var c=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function m(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Global"]))],null,null)}function p(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Image"]))],null,null)}function h(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pool"]))],null,null)}function g(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,7,"div",[],null,null,null,null,null)),t["ɵdid"](1,16384,null,0,u.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,m)),t["ɵdid"](3,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,p)),t["ɵdid"](5,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,h)),t["ɵdid"](7,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null)],(function(l,n){l(n,1,0,n.context.value),l(n,3,0,"global"),l(n,5,0,"image"),l(n,7,0,"pool")}),null)}function f(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""])),t["ɵppd"](2,1)],null,(function(l,n){var e=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,0),n.parent.context.value));l(n,1,0,e)}))}function v(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""])),t["ɵppd"](2,1)],null,(function(l,n){var e=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,1),n.parent.context.value));l(n,1,0,e)}))}function b(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""])),t["ɵppd"](2,1)],null,(function(l,n){var e=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,2),n.parent.context.value));l(n,1,0,e)}))}function C(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""]))],null,(function(l,n){l(n,1,0,n.parent.context.value)}))}function S(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,"div",[],null,null,null,null,null)),t["ɵdid"](1,16384,null,0,u.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,f)),t["ɵdid"](3,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,v)),t["ɵdid"](5,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,b)),t["ɵdid"](7,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,C)),t["ɵdid"](9,16384,null,0,u.NgSwitchDefault,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],null,null)],(function(l,n){var e=n.component;l(n,1,0,n.context.row.type),l(n,3,0,e.typeField.bps),l(n,5,0,e.typeField.milliseconds),l(n,7,0,e.typeField.iops)}),null)}function R(l){return t["ɵvid"](0,[t["ɵpid"](0,i.a,[s.a]),t["ɵpid"](0,a.a,[]),t["ɵpid"](0,o.a,[]),t["ɵqud"](402653184,1,{configurationSourceTpl:0}),t["ɵqud"](402653184,2,{configurationValueTpl:0}),t["ɵqud"](402653184,3,{poolConfTable:0}),(l()(),t["ɵeld"](6,0,null,null,1,"cd-table",[["identifier","name"]],null,null,null,r.b,r.a)),t["ɵdid"](7,2867200,[[3,4],["poolConfTable",4]],0,d.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],identifier:[2,"identifier"]},null),(l()(),t["ɵand"](0,[[1,2],["configurationSourceTpl",2]],null,0,null,g)),(l()(),t["ɵand"](0,[[2,2],["configurationValueTpl",2]],null,0,null,S))],(function(l,n){var e=n.component;l(n,7,0,e.data,e.poolConfigurationColumns,"name")}),null)}},F83c:function(l,n,e){"use strict";e.d(n,"a",(function(){return m}));var t=e("mrSG"),u=e("IheW"),i=e("LvDl"),s=e("lJxs"),a=e("xTzq"),o=e("jVDg"),r=e("o8EM"),d=e("8Y7J"),c=e("pL04");let m=(()=>{let l=class{constructor(l,n){this.http=l,this.rbdConfigurationService=n}isRBDPool(l){return-1!==i.indexOf(l.application_metadata,"rbd")&&!l.pool_name.includes("/")}create(l){return this.http.post("api/block/image",l,{observe:"response"})}delete(l){return this.http.delete("api/block/image/"+l.toStringEncoded(),{observe:"response"})}update(l,n){return this.http.put("api/block/image/"+l.toStringEncoded(),n,{observe:"response"})}get(l){return this.http.get("api/block/image/"+l.toStringEncoded())}list(){return this.http.get("api/block/image").pipe(Object(s.a)(l=>l.map(l=>(l.value.map(l=>l.configuration?(l.configuration.map(l=>Object.assign(l,this.rbdConfigurationService.getOptionByName(l.name))),l):l),l))))}copy(l,n){return this.http.post(`api/block/image/${l.toStringEncoded()}/copy`,n,{observe:"response"})}flatten(l){return this.http.post(`api/block/image/${l.toStringEncoded()}/flatten`,null,{observe:"response"})}defaultFeatures(){return this.http.get("api/block/image/default_features")}createSnapshot(l,n){const e={snapshot_name:n};return this.http.post(`api/block/image/${l.toStringEncoded()}/snap`,e,{observe:"response"})}renameSnapshot(l,n,e){const t={new_snap_name:e};return this.http.put(`api/block/image/${l.toStringEncoded()}/snap/${n}`,t,{observe:"response"})}protectSnapshot(l,n,e){const t={is_protected:e};return this.http.put(`api/block/image/${l.toStringEncoded()}/snap/${n}`,t,{observe:"response"})}rollbackSnapshot(l,n){return this.http.post(`api/block/image/${l.toStringEncoded()}/snap/${n}/rollback`,null,{observe:"response"})}cloneSnapshot(l,n,e){return this.http.post(`api/block/image/${l.toStringEncoded()}/snap/${n}/clone`,e,{observe:"response"})}deleteSnapshot(l,n){return this.http.delete(`api/block/image/${l.toStringEncoded()}/snap/${n}`,{observe:"response"})}listTrash(){return this.http.get("api/block/image/trash/")}createNamespace(l,n){return this.http.post(`api/block/pool/${l}/namespace`,{namespace:n},{observe:"response"})}listNamespaces(l){return this.http.get(`api/block/pool/${l}/namespace/`)}deleteNamespace(l,n){return this.http.delete(`api/block/pool/${l}/namespace/${n}`,{observe:"response"})}moveTrash(l,n){return this.http.post(`api/block/image/${l.toStringEncoded()}/move_trash`,{delay:n},{observe:"response"})}purgeTrash(l){return this.http.post("api/block/image/trash/purge/?pool_name="+l,null,{observe:"response"})}restoreTrash(l,n){return this.http.post(`api/block/image/trash/${l.toStringEncoded()}/restore`,{new_image_name:n},{observe:"response"})}removeTrash(l,n=!1){return this.http.delete(`api/block/image/trash/${l.toStringEncoded()}/?force=${n}`,{observe:"response"})}};return l.ngInjectableDef=d["ɵɵdefineInjectable"]({factory:function(){return new l(d["ɵɵinject"](u.c),d["ɵɵinject"](r.a))},token:l,providedIn:c.a}),t.__decorate([t.__param(1,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[o.a,String]),t.__metadata("design:returntype",void 0)],l.prototype,"createSnapshot",null),t.__decorate([t.__param(2,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[o.a,String,String]),t.__metadata("design:returntype",void 0)],l.prototype,"renameSnapshot",null),t.__decorate([t.__param(2,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[o.a,String,Boolean]),t.__metadata("design:returntype",void 0)],l.prototype,"protectSnapshot",null),t.__decorate([t.__param(1,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[o.a,String]),t.__metadata("design:returntype",void 0)],l.prototype,"restoreTrash",null),l=t.__decorate([a.a,t.__metadata("design:paramtypes",[u.c,r.a])],l),l})()},Fd71:function(l,n,e){"use strict";e.d(n,"a",(function(){return o}));var t=e("s7LF"),u=e("XNiG"),i=(e("F83c"),e("sne2"),e("QFaf")),s=e("kvvV"),a=e("jVDg");e("9nlD"),e("VXsX");class o{constructor(l,n,e,t,u,i){this.modalRef=l,this.rbdService=n,this.taskManagerService=e,this.notificationService=t,this.i18n=u,this.actionLabels=i,this.editing=!1,this.action=this.actionLabels.CREATE,this.resource=this.i18n("RBD Snapshot"),this.createForm()}createForm(){this.snapshotForm=new i.a({snapshotName:new t.i("",{validators:[t.B.required]})})}ngOnInit(){this.onSubmit=new u.a}setSnapName(l){this.snapName=l,this.snapshotForm.get("snapshotName").setValue(l)}setEditing(l=!0){this.editing=l,this.action=this.editing?this.actionLabels.RENAME:this.actionLabels.CREATE}editAction(){const l=this.snapshotForm.getValue("snapshotName"),n=new a.a(this.poolName,this.namespace,this.imageName),e=new s.a;e.name="rbd/snap/edit",e.metadata={image_spec:n.toString(),snapshot_name:l},this.rbdService.renameSnapshot(n,this.snapName,l).toPromise().then(()=>{this.taskManagerService.subscribe(e.name,e.metadata,l=>{this.notificationService.notifyTask(l)}),this.modalRef.hide(),this.onSubmit.next(this.snapName)}).catch(()=>{this.snapshotForm.setErrors({cdSubmitButton:!0})})}createAction(){const l=this.snapshotForm.getValue("snapshotName"),n=new a.a(this.poolName,this.namespace,this.imageName),e=new s.a;e.name="rbd/snap/create",e.metadata={image_spec:n.toString(),snapshot_name:l},this.rbdService.createSnapshot(n,l).toPromise().then(()=>{this.taskManagerService.subscribe(e.name,e.metadata,l=>{this.notificationService.notifyTask(l)}),this.modalRef.hide(),this.onSubmit.next(l)}).catch(()=>{this.snapshotForm.setErrors({cdSubmitButton:!0})})}submit(){this.editing?this.editAction():this.createAction()}}},I4Qz:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("EEJc"),i=e("ajRT"),s=e("s7LF"),a=e("+gVj"),o=e("SVse"),r=e("mXUL"),d=e("ienR"),c=e("z/SZ"),m=e("ANnk"),p=e("f/UV"),h=e("aexS"),g=e("gp3X"),f=e("sb0X"),v=e("KVJa"),b=e("Z21x"),C=e("sne2"),S=e("2JDI"),R=e("F83c"),_=e("LqlI"),w=e("2EZI"),y=e("kn/O");e.d(n,"a",(function(){return T}));var k=t["ɵcrt"]({encapsulation:0,styles:[[".bs-datepicker-head bs-datepicker-navigation-view{display:flex;justify-content:space-between}"]],data:{}});function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"div",[["class","alert alert-warning"],["role","alert"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This image contains snapshot(s), which will prevent it from being removed after moved to trash."]))],null,null)}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,['Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".']))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Protection has already expired. Please pick a future date or leave it empty."]))],null,null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,49,"cd-modal",[],null,null,null,u.c,u.b)),t["ɵdid"](1,49152,null,0,i.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Move an image to trash"])),(l()(),t["ɵeld"](4,0,null,1,45,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,44,"form",[["class","form"],["name","moveForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,s.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,s.d,null,[s.l]),t["ɵdid"](9,16384,null,0,s.s,[[4,s.d]],null,null),t["ɵdid"](10,16384,null,0,a.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,31,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](14,0,null,null,7,"p",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To move "])),(l()(),t["ɵeld"](16,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](17,null,["",""])),(l()(),t["ɵted"](-1,null,[" to trash, click "])),(l()(),t["ɵeld"](19,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Move Image"])),(l()(),t["ɵted"](-1,null,[". Optionally, you can pick an expiration date."])),(l()(),t["ɵeld"](22,0,null,null,20,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](23,1163264,null,2,a.c,[t.ElementRef,a.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](26,0,null,0,1,"label",[["class","col-form-label"],["for","expires"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Protection expires at"])),(l()(),t["ɵeld"](28,16777216,null,0,10,"input",[["bsDatepicker",""],["class","form-control"],["formControlName","expiresAt"],["placeholder","NOT PROTECTED"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,29)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,29).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,29)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,29)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,31).onChange(e)&&u),"keyup.esc"===n&&(u=!1!==t["ɵnov"](l,31).hide()&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,31).onBlur()&&u),u}),null,null)),t["ɵdid"](29,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵdid"](30,737280,null,0,d.c,[d.a,t.ElementRef,t.Renderer2,t.ViewContainerRef,c.a],{bsConfig:[0,"bsConfig"],minDate:[1,"minDate"]},null),t["ɵdid"](31,16384,null,0,d.f,[d.c,d.l,t.Renderer2,t.ElementRef,t.ChangeDetectorRef],null,null),t["ɵprd"](1024,null,s.o,(function(l){return[l]}),[d.f]),t["ɵprd"](1024,null,s.p,(function(l,n){return[l,n]}),[s.e,d.f]),t["ɵdid"](34,671744,[[1,4]],0,s.j,[[3,s.d],[6,s.o],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](36,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](37,4210688,null,0,m.a,[[2,p.a],h.a,t.ElementRef],null,null),t["ɵdid"](38,16384,null,0,a.h,[[3,s.d],a.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,I)),t["ɵdid"](40,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,N)),t["ɵdid"](42,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](43,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](44,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](45,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.moveImage()&&t),t}),g.b,g.a)),t["ɵdid"](46,114688,null,0,f.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Move Image"])),(l()(),t["ɵeld"](48,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,v.b,v.a)),t["ɵdid"](49,49152,null,0,b.a,[o.Location,C.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.moveForm),l(n,10,0,e.moveForm),l(n,13,0,e.hasSnapshots),l(n,23,0),l(n,30,0,e.bsConfig,e.minDate),l(n,34,0,"expiresAt"),l(n,38,0,"expiresAt"),l(n,40,0,e.moveForm.showError("expiresAt",t["ɵnov"](n,7),"format")),l(n,42,0,e.moveForm.showError("expiresAt",t["ɵnov"](n,7),"expired")),l(n,46,0,e.moveForm),l(n,49,0,"Cancel",e.modalRef.hide)}),(function(l,n){var e=n.component;l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,17,0,e.imageSpecStr),l(n,22,0,t["ɵnov"](n,23).hasErrors,t["ɵnov"](n,23).hasSuccess),l(n,28,0,t["ɵnov"](n,36).ngClassUntouched,t["ɵnov"](n,36).ngClassTouched,t["ɵnov"](n,36).ngClassPristine,t["ɵnov"](n,36).ngClassDirty,t["ɵnov"](n,36).ngClassValid,t["ɵnov"](n,36).ngClassInvalid,t["ɵnov"](n,36).ngClassPending,t["ɵnov"](n,38).validClass,t["ɵnov"](n,38).invalidClass)}))}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-trash-move-modal",[],null,null,null,F,k)),t["ɵdid"](1,114688,null,0,S.a,[R.a,_.a,w.a,y.a],null,null)],(function(l,n){l(n,1,0)}),null)}var T=t["ɵccf"]("cd-rbd-trash-move-modal",S.a,V,{},{},[])},JBea:function(l,n,e){"use strict";e.d(n,"a",(function(){return t})),e("lArG");class t{constructor(){}ngOnChanges(){this.selection&&(this.rbdDashboardUrl=`rbd-details?var-Pool=${this.selection.pool_name}&var-Image=${this.selection.name}`)}}},"JIi+":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("978R"),i=e("z/SZ"),s=e("2uy1"),a=e("SVse"),o=e("pKUh"),r=e("2ZVE"),d=e("25BL"),c=e("uIqm"),m=e("NUGo"),p=e("S7zO"),h=e("VTlA"),g=e("ufoC"),f=e("mSOc"),v=e("wd/R"),b=e("LRne"),C=e("F83c"),S=e("OLbh"),R=e("0+/T"),_=e("sne2"),w=e("x38r"),y=e("vCyI"),k=e("QTAa"),E=e("kvvV"),I=e("jVDg"),N=e("a0VL"),F=e("Fgil"),V=e("aexS"),T=e("9nlD"),D=e("VXsX"),x=e("Fd71"),P=e("LvDl"),q=e("oxzT");class B{constructor(l,n,e){this.i18n=l,this.create={permission:"create",icon:q.a.add,name:n.CREATE},this.rename={permission:"update",icon:q.a.edit,name:n.RENAME},this.protect={permission:"update",icon:q.a.lock,visible:l=>l.hasSingleSelection&&!l.first().is_protected,name:n.PROTECT},this.unprotect={permission:"update",icon:q.a.unlock,visible:l=>l.hasSingleSelection&&l.first().is_protected,name:n.UNPROTECT},this.clone={permission:"create",canBePrimary:l=>l.hasSingleSelection,disable:l=>this.getCloneDisableDesc(l,e),icon:q.a.clone,name:n.CLONE},this.copy={permission:"create",canBePrimary:l=>l.hasSingleSelection,disable:l=>!l.hasSingleSelection||l.first().cdExecuting,icon:q.a.copy,name:n.COPY},this.rollback={permission:"update",icon:q.a.undo,name:n.ROLLBACK},this.deleteSnap={permission:"delete",icon:q.a.destroy,disable:l=>{const n=l.first();return!l.hasSingleSelection||n.cdExecuting||n.is_protected},name:n.DELETE},this.ordering=[this.create,this.rename,this.protect,this.unprotect,this.clone,this.copy,this.rollback,this.deleteSnap]}getCloneDisableDesc(l,n){return!(l&&l.hasSingleSelection&&!l.first().cdExecuting)||!P.includes(n,"layering")&&this.i18n("Parent image must support Layering")}}class A{}class M{constructor(l,n,e,t,u,i,s,a,o,r,d){this.authStorageService=l,this.modalService=n,this.dimlessBinaryPipe=e,this.cdDatePipe=t,this.rbdService=u,this.taskManagerService=i,this.notificationService=s,this.summaryService=a,this.taskListService=o,this.i18n=r,this.actionLabels=d,this.snapshots=[],this.selection=new y.a,this.builders={"rbd/snap/create":l=>{const n=new A;return n.name=l.snapshot_name,n}},this.permission=this.authStorageService.getPermissions().rbdImage}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"name",cellTransformation:w.a.executing,flexGrow:2},{name:this.i18n("Size"),prop:"size",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:this.i18n("Provisioned"),prop:"disk_usage",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:this.i18n("State"),prop:"is_protected",flexGrow:1,cellTransformation:w.a.badge,customTemplateConfig:{map:{true:{value:this.i18n("PROTECTED"),class:"badge-success"},false:{value:this.i18n("UNPROTECTED"),class:"badge-info"}}}},{name:this.i18n("Created"),prop:"timestamp",flexGrow:1,pipe:this.cdDatePipe}]}ngOnChanges(){const l=new I.a(this.poolName,this.namespace,this.rbdName),n=new B(this.i18n,this.actionLabels,this.featuresName);n.create.click=()=>this.openCreateSnapshotModal(),n.rename.click=()=>this.openEditSnapshotModal(),n.protect.click=()=>this.toggleProtection(),n.unprotect.click=()=>this.toggleProtection();const e=()=>this.selection.first()&&`${l.toStringEncoded()}/${encodeURIComponent(this.selection.first().name)}`;n.clone.routerLink=()=>"/block/rbd/clone/"+e(),n.copy.routerLink=()=>"/block/rbd/copy/"+e(),n.rollback.click=()=>this.rollbackModal(),n.deleteSnap.click=()=>this.deleteSnapshotModal(),this.tableActions=n.ordering,this.taskListService.init(()=>Object(b.a)(this.snapshots),null,l=>this.data=l,()=>this.data=this.snapshots,n=>["rbd/snap/create","rbd/snap/delete","rbd/snap/edit","rbd/snap/rollback"].includes(n.name)&&l.toString()===n.metadata.image_spec,(l,n)=>l.name===n.metadata.snapshot_name,this.builders)}openSnapshotModal(l,n=null){this.modalRef=this.modalService.show(x.a),this.modalRef.content.poolName=this.poolName,this.modalRef.content.imageName=this.rbdName,this.modalRef.content.namespace=this.namespace,n?this.modalRef.content.setEditing():n=`${this.rbdName}_${v().toISOString(!0)}`,this.modalRef.content.setSnapName(n),this.modalRef.content.onSubmit.subscribe(n=>{const e=new k.a;e.name=l,e.metadata={image_name:this.rbdName,pool_name:this.poolName,snapshot_name:n},this.summaryService.addRunningTask(e),this.ngOnChanges()})}openCreateSnapshotModal(){this.openSnapshotModal("rbd/snap/create")}openEditSnapshotModal(){this.openSnapshotModal("rbd/snap/edit",this.selection.first().name)}toggleProtection(){const l=this.selection.first().name,n=this.selection.first().is_protected,e=new E.a;e.name="rbd/snap/edit";const t=new I.a(this.poolName,this.namespace,this.rbdName);e.metadata={image_spec:t.toString(),snapshot_name:l},this.rbdService.protectSnapshot(t,l,!n).toPromise().then(()=>{const l=new k.a;l.name=e.name,l.metadata=e.metadata,this.summaryService.addRunningTask(l),this.ngOnChanges(),this.taskManagerService.subscribe(e.name,e.metadata,l=>{this.notificationService.notifyTask(l)})})}_asyncTask(l,n,e){const t=new E.a;t.name=n,t.metadata={image_spec:new I.a(this.poolName,this.namespace,this.rbdName).toString(),snapshot_name:e};const u=new I.a(this.poolName,this.namespace,this.rbdName);this.rbdService[l](u,e).toPromise().then(()=>{const l=new k.a;l.name=t.name,l.metadata=t.metadata,this.summaryService.addRunningTask(l),this.modalRef.hide(),this.ngOnChanges(),this.taskManagerService.subscribe(l.name,l.metadata,l=>{this.notificationService.notifyTask(l)})}).catch(()=>{this.modalRef.content.stopLoadingSpinner()})}rollbackModal(){const l=this.selection.selected[0].name,n=new I.a(this.poolName,this.namespace,this.rbdName).toString(),e={titleText:this.i18n("RBD snapshot rollback"),buttonText:this.i18n("Rollback"),bodyTpl:this.rollbackTpl,bodyData:{snapName:`${n}@${l}`},onSubmit:()=>{this._asyncTask("rollbackSnapshot","rbd/snap/rollback",l)}};this.modalRef=this.modalService.show(S.a,{initialState:e})}deleteSnapshotModal(){const l=this.selection.selected[0].name;this.modalRef=this.modalService.show(R.a,{initialState:{itemDescription:this.i18n("RBD snapshot"),itemNames:[l],submitAction:()=>this._asyncTask("deleteSnapshot","rbd/snap/delete",l)}})}updateSelection(l){this.selection=l}}var O=e("LqlI"),L=e("GiVz"),j=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function U(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["You are about to rollback"])),(l()(),t["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](3,null,[" ",""])),(l()(),t["ɵted"](-1,null,[".\n"]))],null,(function(l,n){l(n,3,0,n.context.$implicit.snapName)}))}function G(l){return t["ɵvid"](0,[t["ɵqud"](671088640,1,{nameTpl:0}),t["ɵqud"](402653184,2,{rollbackTpl:0}),(l()(),t["ɵeld"](2,0,null,null,3,"cd-table",[["columnMode","flex"],["selectionType","single"]],null,[[null,"updateSelection"]],(function(l,n,e){var t=!0;return"updateSelection"===n&&(t=!1!==l.component.updateSelection(e)&&t),t}),d.b,d.a)),t["ɵdid"](3,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],selectionType:[3,"selectionType"]},{updateSelection:"updateSelection"}),(l()(),t["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,m.b,m.a)),t["ɵdid"](5,114688,null,0,p.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),t["ɵand"](0,[[2,2],["rollbackTpl",2]],null,0,null,U))],(function(l,n){var e=n.component;l(n,3,0,e.data,e.columns,"flex","single"),l(n,5,0,e.permission,e.selection,e.tableActions)}),null)}var $=e("EFGL"),X=e("aAWM"),z=e("aXbf"),W=e("o8EM"),J=e("a278"),Y=e("insk"),K=e("cUpR"),Z=e("20UP"),H=e("nSDx"),Q=e("o4+5"),ll=e("JBea");e.d(n,"b",(function(){return nl})),e.d(n,"c",(function(){return gl})),e.d(n,"a",(function(){return vl}));var nl=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function el(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Only available for RBD images with "])),(l()(),t["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["fast-diff"])),(l()(),t["ɵted"](-1,null,[" enabled"]))],null,null)}function tl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(l()(),t["ɵted"](2,null,["",""]))],null,(function(l,n){l(n,2,0,n.context.$implicit)}))}function ul(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](1,16777216,null,null,2,"span",[["class","form-text text-muted"],["placement","top"]],null,null,null,null,null)),t["ɵdid"](2,212992,null,0,u.c,[t.ViewContainerRef,i.a,u.a,t.ElementRef,t.Renderer2,s.a],{tooltip:[0,"tooltip"],placement:[1,"placement"]},null),(l()(),t["ɵted"](-1,null,["N/A"]))],(function(l,n){l(n,2,0,t["ɵnov"](n.parent.parent,5),"top")}),null)}function il(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,[" "," "])),t["ɵppd"](2,1)],null,(function(l,n){var e=n.component,u=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,2),e.selection.disk_usage));l(n,1,0,u)}))}function sl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](1,16777216,null,null,2,"span",[["class","form-text text-muted"],["placement","top"]],null,null,null,null,null)),t["ɵdid"](2,212992,null,0,u.c,[t.ViewContainerRef,i.a,u.a,t.ElementRef,t.Renderer2,s.a],{tooltip:[0,"tooltip"],placement:[1,"placement"]},null),(l()(),t["ɵted"](-1,null,["N/A"]))],(function(l,n){l(n,2,0,t["ɵnov"](n.parent.parent,5),"top")}),null)}function al(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,[" "," "])),t["ɵppd"](2,1)],null,(function(l,n){var e=n.component,u=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,2),e.selection.total_disk_usage));l(n,1,0,u)}))}function ol(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["/",""]))],null,(function(l,n){l(n,1,0,n.component.selection.parent.pool_namespace)}))}function rl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""])),(l()(),t["ɵand"](16777216,null,null,1,null,ol)),t["ɵdid"](3,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵted"](4,null,["/","@",""]))],(function(l,n){l(n,3,0,n.component.selection.parent.pool_namespace)}),(function(l,n){var e=n.component;l(n,1,0,e.selection.parent.pool_name),l(n,4,0,e.selection.parent.image_name,e.selection.parent.snap_name)}))}function dl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["-"]))],null,null)}function cl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,114,"tabset",[],[[2,"tab-container",null]],null,null,o.b,o.a)),t["ɵdid"](1,180224,null,0,r.e,[r.f,t.Renderer2,t.ElementRef],null,null),(l()(),t["ɵeld"](2,0,null,0,99,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](3,212992,null,0,r.b,[r.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵeld"](4,0,null,null,97,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,96,"tbody",[],null,null,null,null,null)),(l()(),t["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](7,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Name"])),(l()(),t["ɵeld"](9,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),t["ɵted"](10,null,["",""])),(l()(),t["ɵeld"](11,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pool"])),(l()(),t["ɵeld"](14,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](15,null,["",""])),(l()(),t["ɵeld"](16,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](17,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Data Pool"])),(l()(),t["ɵeld"](19,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](20,null,["",""])),t["ɵppd"](21,1),(l()(),t["ɵeld"](22,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](23,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Created"])),(l()(),t["ɵeld"](25,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](26,null,["",""])),t["ɵppd"](27,1),(l()(),t["ɵeld"](28,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](29,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Size"])),(l()(),t["ɵeld"](31,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](32,null,["",""])),t["ɵppd"](33,1),(l()(),t["ɵeld"](34,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](35,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Objects"])),(l()(),t["ɵeld"](37,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](38,null,["",""])),t["ɵppd"](39,1),(l()(),t["ɵeld"](40,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](41,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Object size"])),(l()(),t["ɵeld"](43,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](44,null,["",""])),t["ɵppd"](45,1),(l()(),t["ɵeld"](46,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](47,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Features"])),(l()(),t["ɵeld"](49,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,tl)),t["ɵdid"](51,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵeld"](52,0,null,null,7,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](53,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Provisioned"])),(l()(),t["ɵeld"](55,0,null,null,4,"td",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,ul)),t["ɵdid"](57,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,il)),t["ɵdid"](59,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](60,0,null,null,7,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](61,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Total provisioned"])),(l()(),t["ɵeld"](63,0,null,null,4,"td",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,sl)),t["ɵdid"](65,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,al)),t["ɵdid"](67,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](68,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](69,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Striping unit"])),(l()(),t["ɵeld"](71,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](72,null,["",""])),t["ɵppd"](73,1),(l()(),t["ɵeld"](74,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](75,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Striping count"])),(l()(),t["ɵeld"](77,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](78,null,["",""])),(l()(),t["ɵeld"](79,0,null,null,7,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](80,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Parent"])),(l()(),t["ɵeld"](82,0,null,null,4,"td",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,rl)),t["ɵdid"](84,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,dl)),t["ɵdid"](86,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](87,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](88,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Block name prefix"])),(l()(),t["ɵeld"](90,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](91,null,["",""])),(l()(),t["ɵeld"](92,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](93,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Order"])),(l()(),t["ɵeld"](95,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](96,null,["",""])),(l()(),t["ɵeld"](97,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](98,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Format Version"])),(l()(),t["ɵeld"](100,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](101,null,["",""])),(l()(),t["ɵeld"](102,0,null,0,4,"tab",[["heading","Snapshots"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](103,212992,null,0,r.b,[r.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵeld"](104,0,null,null,2,"cd-rbd-snapshot-list",[],null,null,null,G,j)),t["ɵprd"](131584,null,h.a,h.a,[g.a,f.a]),t["ɵdid"](106,638976,null,0,M,[V.a,O.b,F.a,N.a,C.a,D.a,T.a,f.a,h.a,L.a,_.b],{snapshots:[0,"snapshots"],featuresName:[1,"featuresName"],poolName:[2,"poolName"],namespace:[3,"namespace"],rbdName:[4,"rbdName"]},null),(l()(),t["ɵeld"](107,0,null,0,3,"tab",[["heading","Configuration"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](108,212992,null,0,r.b,[r.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵeld"](109,0,null,null,1,"cd-rbd-configuration-table",[],null,null,null,$.b,$.a)),t["ɵdid"](110,638976,null,0,X.a,[z.a,W.a,L.a],{data:[0,"data"]},null),(l()(),t["ɵeld"](111,0,null,0,3,"tab",[["heading","Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](112,212992,null,0,r.b,[r.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵeld"](113,0,null,null,1,"cd-grafana",[["grafanaStyle","one"],["uid","YhCYGcuZz"]],null,null,null,J.b,J.a)),t["ɵdid"](114,638976,null,0,Y.a,[K.b,Z.a,L.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){var e=n.component;l(n,3,0,"Details"),l(n,51,0,e.selection.features_name),l(n,57,0,-1===(null==e.selection.features_name?null:e.selection.features_name.indexOf("fast-diff"))),l(n,59,0,-1!==(null==e.selection.features_name?null:e.selection.features_name.indexOf("fast-diff"))),l(n,65,0,-1===(null==e.selection.features_name?null:e.selection.features_name.indexOf("fast-diff"))),l(n,67,0,-1!==(null==e.selection.features_name?null:e.selection.features_name.indexOf("fast-diff"))),l(n,84,0,e.selection.parent),l(n,86,0,!e.selection.parent),l(n,103,0,"Snapshots"),l(n,106,0,e.selection.snapshots,e.selection.features_name,e.selection.pool_name,e.selection.namespace,e.selection.name),l(n,108,0,"Configuration"),l(n,110,0,e.selection.configuration),l(n,112,0,"Performance"),l(n,114,0,e.rbdDashboardUrl,"one","YhCYGcuZz")}),(function(l,n){var e=n.component;l(n,0,0,t["ɵnov"](n,1).clazz),l(n,2,0,t["ɵnov"](n,3).id,t["ɵnov"](n,3).active,t["ɵnov"](n,3).addClass,t["ɵnov"](n,3).role,t["ɵnov"](n,3).ariaLabelledby),l(n,10,0,e.selection.name),l(n,15,0,e.selection.pool_name);var u=t["ɵunv"](n,20,0,l(n,21,0,t["ɵnov"](n.parent,0),e.selection.data_pool));l(n,20,0,u);var i=t["ɵunv"](n,26,0,l(n,27,0,t["ɵnov"](n.parent,1),e.selection.timestamp));l(n,26,0,i);var s=t["ɵunv"](n,32,0,l(n,33,0,t["ɵnov"](n.parent,2),e.selection.size));l(n,32,0,s);var a=t["ɵunv"](n,38,0,l(n,39,0,t["ɵnov"](n.parent,3),e.selection.num_objs));l(n,38,0,a);var o=t["ɵunv"](n,44,0,l(n,45,0,t["ɵnov"](n.parent,2),e.selection.obj_size));l(n,44,0,o);var r=t["ɵunv"](n,72,0,l(n,73,0,t["ɵnov"](n.parent,2),e.selection.stripe_unit));l(n,72,0,r),l(n,78,0,e.selection.stripe_count),l(n,91,0,e.selection.block_name_prefix),l(n,96,0,e.selection.order),l(n,101,0,e.selection.image_format),l(n,102,0,t["ɵnov"](n,103).id,t["ɵnov"](n,103).active,t["ɵnov"](n,103).addClass,t["ɵnov"](n,103).role,t["ɵnov"](n,103).ariaLabelledby),l(n,107,0,t["ɵnov"](n,108).id,t["ɵnov"](n,108).active,t["ɵnov"](n,108).addClass,t["ɵnov"](n,108).role,t["ɵnov"](n,108).ariaLabelledby),l(n,111,0,t["ɵnov"](n,112).id,t["ɵnov"](n,112).active,t["ɵnov"](n,112).addClass,t["ɵnov"](n,112).role,t["ɵnov"](n,112).ariaLabelledby)}))}function ml(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,16777216,null,null,2,"strong",[["tooltip","This setting overrides the global value"]],null,null,null,null,null)),t["ɵdid"](2,212992,null,0,u.c,[t.ViewContainerRef,i.a,u.a,t.ElementRef,t.Renderer2,s.a],{tooltip:[0,"tooltip"]},null),(l()(),t["ɵted"](-1,null,["Image"])),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){l(n,2,0,"This setting overrides the global value")}),null)}function pl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,16777216,null,null,2,"span",[["tooltip","This is the global value. No value for this option has been set for this image."]],null,null,null,null,null)),t["ɵdid"](1,212992,null,0,u.c,[t.ViewContainerRef,i.a,u.a,t.ElementRef,t.Renderer2,s.a],{tooltip:[0,"tooltip"]},null),(l()(),t["ɵted"](-1,null,["Global"])),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,"This is the global value. No value for this option has been set for this image.")}),null)}function hl(l){return t["ɵvid"](0,[(l()(),t["ɵand"](16777216,null,null,1,null,ml)),t["ɵdid"](1,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(l()(),t["ɵand"](0,[["global",2]],null,0,null,pl))],(function(l,n){l(n,1,0,n.context.value-0,t["ɵnov"](n,2))}),null)}function gl(l){return t["ɵvid"](0,[t["ɵpid"](0,H.a,[]),t["ɵpid"](0,N.a,[a.DatePipe]),t["ɵpid"](0,F.a,[z.a]),t["ɵpid"](0,Q.a,[z.a]),t["ɵqud"](402653184,1,{poolConfigurationSourceTpl:0}),(l()(),t["ɵand"](0,[["usageNotAvailableTooltipTpl",2]],null,0,null,el)),(l()(),t["ɵand"](16777216,null,null,1,null,cl)),t["ɵdid"](7,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,[[1,2],["poolConfigurationSourceTpl",2]],null,0,null,hl))],(function(l,n){l(n,7,0,n.component.selection)}),null)}function fl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-details",[],null,null,null,gl,nl)),t["ɵdid"](1,573440,null,0,ll.a,[],null,null)],null,null)}var vl=t["ɵccf"]("cd-rbd-details",ll.a,fl,{selection:"selection",images:"images"},{},[])},L4us:function(l,n,e){"use strict";var t=e("s7LF"),u=(e("XED3"),e("QFaf")),i=e("kvvV");e("kn/O");class s{}e.d(n,"a",(function(){return a}));class a{constructor(l,n,e){this.modalRef=l,this.rbdMirroringService=n,this.taskWrapper=e,this.bsConfig={containerClass:"theme-default"},this.createForm()}createForm(){this.editPeerForm=new u.a({clusterName:new t.i("",{validators:[t.B.required,this.validateClusterName]}),clientID:new t.i("",{validators:[t.B.required,this.validateClientID]}),monAddr:new t.i("",{validators:[this.validateMonAddr]}),key:new t.i("",{validators:[this.validateKey]})})}ngOnInit(){this.pattern=`${this.poolName}/${this.peerUUID}`,"edit"===this.mode&&this.rbdMirroringService.getPeer(this.poolName,this.peerUUID).subscribe(l=>{this.setResponse(l)})}validateClusterName(l){if(!l.value.match(/^[\w\-_]*$/))return{invalidClusterName:{value:l.value}}}validateClientID(l){if(!l.value.match(/^(?!client\.)[\w\-_.]*$/))return{invalidClientID:{value:l.value}}}validateMonAddr(l){if(!l.value.match(/^[,; ]*([\w.\-_\[\]]+(:[\d]+)?[,; ]*)*$/))return{invalidMonAddr:{value:l.value}}}validateKey(l){try{if(""===l.value||atob(l.value))return null}catch(n){}return{invalidKey:{value:l.value}}}setResponse(l){this.response=l,this.editPeerForm.get("clusterName").setValue(l.cluster_name),this.editPeerForm.get("clientID").setValue(l.client_id),this.editPeerForm.get("monAddr").setValue(l.mon_host),this.editPeerForm.get("key").setValue(l.key)}update(){const l=new s;let n;l.cluster_name=this.editPeerForm.getValue("clusterName"),l.client_id=this.editPeerForm.getValue("clientID"),l.mon_host=this.editPeerForm.getValue("monAddr"),l.key=this.editPeerForm.getValue("key"),n=this.taskWrapper.wrapTaskAroundCall("edit"===this.mode?{task:new i.a("rbd/mirroring/peer/edit",{pool_name:this.poolName}),call:this.rbdMirroringService.updatePeer(this.poolName,this.peerUUID,l)}:{task:new i.a("rbd/mirroring/peer/add",{pool_name:this.poolName}),call:this.rbdMirroringService.addPeer(this.poolName,l)}),n.subscribe(void 0,()=>this.editPeerForm.setErrors({cdSubmitButton:!0}),()=>{this.rbdMirroringService.refresh(),this.modalRef.hide()})}}},MyVl:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("LvDl"),s=e("jtHE"),a=e("cp0P"),o=e("SxV6"),r=e("eIep"),d=(e("Ekvf"),e("F83c"),e("sne2"),e("oxzT")),c=e("QFaf"),m=e("PhyI"),p=e("kvvV"),h=e("jVDg"),g=(e("Fgil"),e("aexS"),e("aXbf"),e("kn/O"),e("u0yg"));class f{constructor(){this.features=[]}}class v{constructor(){this.features=[]}}var b=e("lArG");class C extends b.a{constructor(){super(...arguments),this.features=[]}}class S{constructor(){this.features=[]}}var R=function(l){return l.editing="editing",l.cloning="cloning",l.copying="copying",l}({});e.d(n,"a",(function(){return _}));class _{constructor(l,n,e,u,i,a,o,r,c,m){this.authStorageService=l,this.route=n,this.poolService=e,this.rbdService=u,this.formatter=i,this.taskWrapper=a,this.dimlessBinaryPipe=o,this.i18n=r,this.actionLabels=c,this.router=m,this.namespaces=[],this.namespacesByPoolCache={},this.pools=null,this.allPools=null,this.dataPools=null,this.allDataPools=null,this.featuresList=[],this.initializeConfigData=new t.EventEmitter,this.advancedEnabled=!1,this.rbdFormMode=R,this.defaultObjectSize="4 MiB",this.objectSizes=["4 KiB","8 KiB","16 KiB","32 KiB","64 KiB","128 KiB","256 KiB","512 KiB","1 MiB","2 MiB","4 MiB","8 MiB","16 MiB","32 MiB"],this.rbdImage=new s.a(1),this.icons=d.a,this.poolPermission=this.authStorageService.getPermissions().pool,this.resource=this.i18n("RBD"),this.features={"deep-flatten":{desc:this.i18n("Deep flatten"),requires:null,allowEnable:!1,allowDisable:!0},layering:{desc:this.i18n("Layering"),requires:null,allowEnable:!1,allowDisable:!1},"exclusive-lock":{desc:this.i18n("Exclusive lock"),requires:null,allowEnable:!0,allowDisable:!0},"object-map":{desc:this.i18n("Object map (requires exclusive-lock)"),requires:"exclusive-lock",allowEnable:!0,allowDisable:!0,initDisabled:!0},journaling:{desc:this.i18n("Journaling (requires exclusive-lock)"),requires:"exclusive-lock",allowEnable:!0,allowDisable:!0,initDisabled:!0},"fast-diff":{desc:this.i18n("Fast diff (interlocked with object-map)"),requires:"object-map",allowEnable:!0,allowDisable:!0,interlockedWith:"object-map",initDisabled:!0}},this.featuresList=this.objToArray(this.features),this.createForm()}objToArray(l){return i.map(l,(l,n)=>Object.assign(l,{key:n}))}createForm(){this.rbdForm=new c.a({parent:new u.i(""),name:new u.i("",{validators:[u.B.required,u.B.pattern(/^[^@/]+?$/)]}),pool:new u.i(null,{validators:[u.B.required]}),namespace:new u.i(null),useDataPool:new u.i(!1),dataPool:new u.i(null),size:new u.i(null,{updateOn:"blur"}),obj_size:new u.i(this.defaultObjectSize),features:new c.a(this.featuresList.reduce((l,n)=>(l[n.key]=new u.i({value:!1,disabled:!!n.initDisabled}),l),{})),stripingUnit:new u.i(null),stripingCount:new u.i(null,{updateOn:"blur"})},this.validateRbdForm(this.formatter))}disableForEdit(){this.rbdForm.get("parent").disable(),this.rbdForm.get("pool").disable(),this.rbdForm.get("namespace").disable(),this.rbdForm.get("useDataPool").disable(),this.rbdForm.get("dataPool").disable(),this.rbdForm.get("obj_size").disable(),this.rbdForm.get("stripingUnit").disable(),this.rbdForm.get("stripingCount").disable(),this.rbdImage.subscribe(l=>{l.image_format===g.a.V1&&(this.rbdForm.get("deep-flatten").disable(),this.rbdForm.get("layering").disable(),this.rbdForm.get("exclusive-lock").disable())})}disableForClone(){this.rbdForm.get("parent").disable(),this.rbdForm.get("size").disable()}disableForCopy(){this.rbdForm.get("parent").disable(),this.rbdForm.get("size").disable()}ngOnInit(){let l;this.router.url.startsWith("/block/rbd/edit")?(this.mode=this.rbdFormMode.editing,this.action=this.actionLabels.EDIT,this.disableForEdit()):this.router.url.startsWith("/block/rbd/clone")?(this.mode=this.rbdFormMode.cloning,this.disableForClone(),this.action=this.actionLabels.CLONE):this.router.url.startsWith("/block/rbd/copy")?(this.mode=this.rbdFormMode.copying,this.action=this.actionLabels.COPY,this.disableForCopy()):this.action=this.actionLabels.CREATE,function(l){l.RbdServiceGet="rbdService.get",l.PoolServiceList="poolService.list"}(l||(l={}));const n={};this.mode===this.rbdFormMode.editing||this.mode===this.rbdFormMode.cloning||this.mode===this.rbdFormMode.copying?this.route.params.subscribe(e=>{const t=h.a.fromString(decodeURIComponent(e.image_spec));e.snap&&(this.snapName=decodeURIComponent(e.snap)),n[l.RbdServiceGet]=this.rbdService.get(t)}):this.rbdService.defaultFeatures().subscribe(l=>{this.setFeatures(l)}),this.mode!==this.rbdFormMode.editing&&this.poolPermission.read&&(n[l.PoolServiceList]=this.poolService.list(["pool_name","type","flags_names","application_metadata"])),Object(a.a)(n).subscribe(n=>{if(n[l.PoolServiceList]){const e=[],t=[];for(const u of n[l.PoolServiceList])this.rbdService.isRBDPool(u)&&("replicated"===u.type?(e.push(u),t.push(u)):"erasure"===u.type&&-1!==u.flags_names.indexOf("ec_overwrites")&&t.push(u));if(this.pools=e,this.allPools=e,this.dataPools=t,this.allDataPools=t,1===this.pools.length){const l=this.pools[0].pool_name;this.rbdForm.get("pool").setValue(l),this.onPoolChange(l)}}if(n[l.RbdServiceGet]){const e=n[l.RbdServiceGet];this.setResponse(e,this.snapName),this.rbdImage.next(e)}}),i.each(this.features,l=>{this.rbdForm.get("features").get(l.key).valueChanges.subscribe(n=>this.featureFormUpdate(l.key,n))})}onPoolChange(l){const n=this.allDataPools?this.allDataPools.filter(n=>n.pool_name!==l):[];this.rbdForm.getValue("dataPool")===l&&this.rbdForm.get("dataPool").setValue(null),this.dataPools=n,this.namespaces=null,l in this.namespacesByPoolCache?this.namespaces=this.namespacesByPoolCache[l]:this.rbdService.listNamespaces(l).subscribe(n=>{n=n.map(l=>l.namespace),this.namespacesByPoolCache[l]=n,this.namespaces=n}),this.rbdForm.get("namespace").setValue(null)}onUseDataPoolChange(){this.rbdForm.getValue("useDataPool")||(this.rbdForm.get("dataPool").setValue(null),this.onDataPoolChange(null))}onDataPoolChange(l){const n=this.allPools.filter(n=>n.pool_name!==l);this.rbdForm.getValue("pool")===l&&this.rbdForm.get("pool").setValue(null),this.pools=n}validateRbdForm(l){return n=>{const e=n.get("useDataPool"),t=n.get("dataPool");let u=null;e.value&&null==t.value&&(u={required:!0}),t.setErrors(u);const i=n.get("size"),s=n.get("obj_size"),a=l.toBytes(null!=s.value?s.value:this.defaultObjectSize),o=n.get("stripingCount"),r=null!=o.value?o.value:1;let d=null;null===i.value?d={required:!0}:r*a>l.toBytes(i.value)&&(d={invalidSizeObject:!0}),i.setErrors(d);const c=n.get("stripingUnit");let m=null;null===c.value&&null!==o.value?m={required:!0}:null!==c.value&&l.toBytes(c.value)>a&&(m={invalidStripingUnit:!0}),c.setErrors(m);let p=null;return null===o.value&&null!==c.value?p={required:!0}:r<1&&(p={min:!0}),o.setErrors(p),null}}getDependendChildFeatures(l){return i.filter(this.features,n=>n.requires===l)||[]}deepBoxCheck(l,n){this.getDependendChildFeatures(l).forEach(l=>{const e=this.rbdForm.get(l.key);n?e.enable({emitEvent:!1}):(e.disable({emitEvent:!1}),e.setValue(!1,{emitEvent:!1}),this.deepBoxCheck(l.key,n));const t=this.rbdForm.get("features");this.mode===this.rbdFormMode.editing&&t.get(l.key).enabled&&((-1===this.response.features_name.indexOf(l.key)||l.allowDisable)&&(-1!==this.response.features_name.indexOf(l.key)||l.allowEnable)||t.get(l.key).disable())})}interlockCheck(l,n){const e=this.featuresList.find(n=>n.key===l);if(this.response){const l=null!=e.interlockedWith,n=this.featuresList.find(l=>l.interlockedWith===e.key),t=!!this.response.features_name.find(l=>l===e.key);if(l){if(t!==!!this.response.features_name.find(l=>l===e.interlockedWith))return}else if(n&&!!this.response.features_name.find(l=>l===n.key)!==t)return}n?i.filter(this.features,n=>n.interlockedWith===l).forEach(l=>this.rbdForm.get(l.key).setValue(!0,{emitEvent:!1})):e.interlockedWith&&this.rbdForm.get("features").get(e.interlockedWith).setValue(!1)}featureFormUpdate(l,n){if(n){const n=this.features[l].requires;if(n&&!this.rbdForm.getValue(n))return void this.rbdForm.get("features."+l).setValue(!1)}this.deepBoxCheck(l,n),this.interlockCheck(l,n)}setFeatures(l){const n=this.rbdForm.get("features");i.forIn(this.features,e=>{-1!==l.indexOf(e.key)&&n.get(e.key).setValue(!0),this.featureFormUpdate(e.key,n.get(e.key).value)})}setResponse(l,n){this.response=l;const e=new h.a(l.pool_name,l.namespace,l.name).toString();if(this.mode===this.rbdFormMode.cloning)this.rbdForm.get("parent").setValue(`${e}@${n}`);else if(this.mode===this.rbdFormMode.copying)n?this.rbdForm.get("parent").setValue(`${e}@${n}`):this.rbdForm.get("parent").setValue(""+e);else if(l.parent){const n=l.parent;this.rbdForm.get("parent").setValue(`${n.pool_name}/${n.image_name}@${n.snap_name}`)}this.mode===this.rbdFormMode.editing&&this.rbdForm.get("name").setValue(l.name),this.rbdForm.get("pool").setValue(l.pool_name),this.onPoolChange(l.pool_name),this.rbdForm.get("namespace").setValue(l.namespace),l.data_pool&&(this.rbdForm.get("useDataPool").setValue(!0),this.rbdForm.get("dataPool").setValue(l.data_pool)),this.rbdForm.get("size").setValue(this.dimlessBinaryPipe.transform(l.size)),this.rbdForm.get("obj_size").setValue(this.dimlessBinaryPipe.transform(l.obj_size)),this.setFeatures(l.features_name),this.rbdForm.get("stripingUnit").setValue(this.dimlessBinaryPipe.transform(l.stripe_unit)),this.rbdForm.get("stripingCount").setValue(l.stripe_count),this.initializeConfigData.emit({initialData:this.response.configuration,sourceType:m.a.image})}createRequest(){const l=new C;return l.pool_name=this.rbdForm.getValue("pool"),l.namespace=this.rbdForm.getValue("namespace"),l.name=this.rbdForm.getValue("name"),l.size=this.formatter.toBytes(this.rbdForm.getValue("size")),l.obj_size=this.formatter.toBytes(this.rbdForm.getValue("obj_size")),i.forIn(this.features,n=>{this.rbdForm.getValue(n.key)&&l.features.push(n.key)}),l.stripe_unit=this.formatter.toBytes(this.rbdForm.getValue("stripingUnit")),l.stripe_count=this.rbdForm.getValue("stripingCount"),l.data_pool=this.rbdForm.getValue("dataPool"),l.configuration=this.getDirtyConfigurationValues(),l}createAction(){const l=this.createRequest();return this.taskWrapper.wrapTaskAroundCall({task:new p.a("rbd/create",{pool_name:l.pool_name,namespace:l.namespace,image_name:l.name}),call:this.rbdService.create(l)})}editRequest(){const l=new S;return l.name=this.rbdForm.getValue("name"),l.size=this.formatter.toBytes(this.rbdForm.getValue("size")),i.forIn(this.features,n=>{this.rbdForm.getValue(n.key)&&l.features.push(n.key)}),l.configuration=this.getDirtyConfigurationValues(),l}cloneRequest(){const l=new f;return l.child_pool_name=this.rbdForm.getValue("pool"),l.child_namespace=this.rbdForm.getValue("namespace"),l.child_image_name=this.rbdForm.getValue("name"),l.obj_size=this.formatter.toBytes(this.rbdForm.getValue("obj_size")),i.forIn(this.features,n=>{this.rbdForm.getValue(n.key)&&l.features.push(n.key)}),l.stripe_unit=this.formatter.toBytes(this.rbdForm.getValue("stripingUnit")),l.stripe_count=this.rbdForm.getValue("stripingCount"),l.data_pool=this.rbdForm.getValue("dataPool"),l.configuration=this.getDirtyConfigurationValues(!0,m.a.image),l}editAction(){const l=new h.a(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new p.a("rbd/edit",{image_spec:l.toString()}),call:this.rbdService.update(l,this.editRequest())})}cloneAction(){const l=this.cloneRequest(),n=new h.a(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new p.a("rbd/clone",{parent_image_spec:n.toString(),parent_snap_name:this.snapName,child_pool_name:l.child_pool_name,child_namespace:l.child_namespace,child_image_name:l.child_image_name}),call:this.rbdService.cloneSnapshot(n,this.snapName,l)})}copyRequest(){const l=new v;return this.snapName&&(l.snapshot_name=this.snapName),l.dest_pool_name=this.rbdForm.getValue("pool"),l.dest_namespace=this.rbdForm.getValue("namespace"),l.dest_image_name=this.rbdForm.getValue("name"),l.obj_size=this.formatter.toBytes(this.rbdForm.getValue("obj_size")),i.forIn(this.features,n=>{this.rbdForm.getValue(n.key)&&l.features.push(n.key)}),l.stripe_unit=this.formatter.toBytes(this.rbdForm.getValue("stripingUnit")),l.stripe_count=this.rbdForm.getValue("stripingCount"),l.data_pool=this.rbdForm.getValue("dataPool"),l.configuration=this.getDirtyConfigurationValues(!0,m.a.image),l}copyAction(){const l=this.copyRequest(),n=new h.a(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new p.a("rbd/copy",{src_image_spec:n.toString(),dest_pool_name:l.dest_pool_name,dest_namespace:l.dest_namespace,dest_image_name:l.dest_image_name}),call:this.rbdService.copy(n,l)})}submit(){this.mode||this.rbdImage.next("create"),this.rbdImage.pipe(Object(o.a)(),Object(r.a)(()=>this.mode===this.rbdFormMode.editing?this.editAction():this.mode===this.rbdFormMode.cloning?this.cloneAction():this.mode===this.rbdFormMode.copying?this.copyAction():this.createAction())).subscribe(()=>{},()=>this.rbdForm.setErrors({cdSubmitButton:!0}),()=>this.router.navigate(["/block/rbd"]))}}},QUzE:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("ANnk"),i=e("f/UV"),s=e("aexS"),a=e("s7LF"),o=e("+gVj"),r=e("EEJc"),d=e("ajRT"),c=e("mXUL"),m=e("IZUe"),p=e("SVse"),h=e("gp3X"),g=e("sb0X"),f=e("OcYo"),v=e("EApP"),b=e("GiVz"),C=e("KVJa"),S=e("Z21x"),R=e("sne2"),_=e("SuaG"),w=e("LqlI"),y=e("XED3"),k=e("kn/O");e.d(n,"a",(function(){return D}));var E=t["ɵcrt"]({encapsulation:0,styles:[[".form-group.ng-invalid[_ngcontent-%COMP%]   .invalid-feedback[_ngcontent-%COMP%]{display:block}"]],data:{}});function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,3).onChange(e.target.checked)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,3).onTouched()&&u),u}),null,null)),t["ɵdid"](2,4210688,null,0,u.a,[[2,i.a],s.a,t.ElementRef],null,null),t["ɵdid"](3,16384,null,0,a.c,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.c]),t["ɵdid"](5,671744,[[3,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](7,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](8,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](9,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](10,null,["",""]))],(function(l,n){l(n,5,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,"")),l(n,8,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""))}),(function(l,n){l(n,1,1,[t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""),t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""),t["ɵnov"](n,7).ngClassUntouched,t["ɵnov"](n,7).ngClassTouched,t["ɵnov"](n,7).ngClassPristine,t["ɵnov"](n,7).ngClassDirty,t["ɵnov"](n,7).ngClassValid,t["ɵnov"](n,7).ngClassInvalid,t["ɵnov"](n,7).ngClassPending,t["ɵnov"](n,8).validClass,t["ɵnov"](n,8).invalidClass]),l(n,9,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,"")),l(n,10,0,n.context.$implicit.name)}))}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["At least one pool is required."]))],null,null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,74,"cd-modal",[],null,null,null,r.c,r.b)),t["ɵdid"](1,49152,null,0,d.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Create Bootstrap Token"])),(l()(),t["ɵeld"](4,0,null,1,70,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,69,"form",[["class","form"],["name","createBootstrapForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,a.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,a.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,a.d,null,[a.l]),t["ɵdid"](9,16384,null,0,a.s,[[4,a.d]],null,null),t["ɵdid"](10,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,59,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,5,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,4,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To create a bootstrap token which can be imported by a peer site cluster, provide the local site's name, select which pools will have mirroring enabled, and click  "])),(l()(),t["ɵeld"](15,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Generate"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](18,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](19,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](22,0,null,0,1,"label",[["class","col-form-label required"],["for","siteName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Site Name"])),(l()(),t["ɵeld"](24,0,null,0,8,"input",[["autofocus",""],["class","form-control"],["formControlName","siteName"],["id","siteName"],["name","siteName"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,27)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,27).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,27)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,27)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](25,4210688,null,0,m.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](26,4210688,null,0,u.a,[[2,i.a],s.a,t.ElementRef],null,null),t["ɵdid"](27,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](29,671744,[[1,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](31,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](32,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,I)),t["ɵdid"](34,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](35,0,null,null,12,"div",[["class","form-group"],["formGroupName","pools"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](36,212992,null,0,a.m,[[3,a.d],[8,null],[8,null]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.d,null,[a.m]),t["ɵdid"](38,16384,null,0,a.s,[[4,a.d]],null,null),t["ɵdid"](39,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](42,0,null,0,1,"label",[["class","col-form-label required"],["for","pools"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pools"])),(l()(),t["ɵand"](16777216,null,0,1,null,N)),t["ɵdid"](45,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,F)),t["ɵdid"](47,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](48,0,null,null,3,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](49,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.generate()&&t),t}),h.b,h.a)),t["ɵdid"](50,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Generate"])),(l()(),t["ɵeld"](52,0,null,null,14,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](53,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](56,0,null,0,2,"label",[["class","col-form-label"],["for","token"]],null,null,null,null,null)),(l()(),t["ɵeld"](57,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Token"])),(l()(),t["ɵeld"](59,0,null,0,7,"textarea",[["class","form-control resize-vertical"],["formControlName","token"],["id","token"],["placeholder","Generated token..."],["readonly",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,60)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,60).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,60)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,60)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](60,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](62,671744,[[5,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](64,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](65,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵted"](-1,null,["          "])),(l()(),t["ɵeld"](67,0,null,null,3,"button",[["aria-label","Copy to Clipboard"],["cdCopy2ClipboardButton","token"],["class","btn btn-primary mb-3 float-right"],["title","Copy to Clipboard"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,68).onClick()&&u),u}),null,null)),t["ɵdid"](68,81920,null,0,f.a,[t.ElementRef,t.Renderer2,v.j,b.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),t["ɵeld"](69,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Copy to Clipboard"])),(l()(),t["ɵeld"](71,0,null,null,3,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](72,0,null,null,2,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](73,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,C.b,C.a)),t["ɵdid"](74,49152,null,0,S.a,[p.Location,R.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.createBootstrapForm),l(n,10,0,e.createBootstrapForm),l(n,19,0),l(n,25,0,""),l(n,29,0,"siteName"),l(n,32,0,"siteName"),l(n,34,0,e.createBootstrapForm.showError("siteName",t["ɵnov"](n,7),"required")),l(n,36,0,"pools"),l(n,39,0),l(n,45,0,e.pools),l(n,47,0,e.createBootstrapForm.showError("pools",t["ɵnov"](n,7),"requirePool")),l(n,50,0,e.createBootstrapForm),l(n,53,0),l(n,62,0,"token"),l(n,65,0,"token"),l(n,68,0,"token"),l(n,74,0,"Close",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,18,0,t["ɵnov"](n,19).hasErrors,t["ɵnov"](n,19).hasSuccess),l(n,24,0,t["ɵnov"](n,31).ngClassUntouched,t["ɵnov"](n,31).ngClassTouched,t["ɵnov"](n,31).ngClassPristine,t["ɵnov"](n,31).ngClassDirty,t["ɵnov"](n,31).ngClassValid,t["ɵnov"](n,31).ngClassInvalid,t["ɵnov"](n,31).ngClassPending,t["ɵnov"](n,32).validClass,t["ɵnov"](n,32).invalidClass),l(n,35,0,t["ɵnov"](n,38).ngClassUntouched,t["ɵnov"](n,38).ngClassTouched,t["ɵnov"](n,38).ngClassPristine,t["ɵnov"](n,38).ngClassDirty,t["ɵnov"](n,38).ngClassValid,t["ɵnov"](n,38).ngClassInvalid,t["ɵnov"](n,38).ngClassPending,t["ɵnov"](n,39).hasErrors,t["ɵnov"](n,39).hasSuccess),l(n,52,0,t["ɵnov"](n,53).hasErrors,t["ɵnov"](n,53).hasSuccess),l(n,59,0,t["ɵnov"](n,64).ngClassUntouched,t["ɵnov"](n,64).ngClassTouched,t["ɵnov"](n,64).ngClassPristine,t["ɵnov"](n,64).ngClassDirty,t["ɵnov"](n,64).ngClassValid,t["ɵnov"](n,64).ngClassInvalid,t["ɵnov"](n,64).ngClassPending,t["ɵnov"](n,65).validClass,t["ɵnov"](n,65).invalidClass)}))}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-bootstrap-create-modal",[],null,null,null,V,E)),t["ɵdid"](1,245760,null,0,_.a,[w.a,y.a,k.a],null,null)],(function(l,n){l(n,1,0)}),null)}var D=t["ɵccf"]("cd-bootstrap-create-modal",_.a,T,{},{},[])},RIVN:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("C6Ij"),i=e("AWcq"),s=e("NUGo"),a=e("S7zO"),o=e("SVse");class r{transform(l){return"warning"===l?"badge badge-warning":"error"===l?"badge badge-danger":"success"===l?"badge badge-success":"badge badge-info"}}var d=e("25BL"),c=e("uIqm"),m=e("XED3"),p=e("85J/");class h{constructor(l,n,e){this.rbdMirroringService=l,this.cephShortVersionPipe=n,this.i18n=e}ngOnInit(){this.columns=[{prop:"instance_id",name:this.i18n("Instance"),flexGrow:2},{prop:"id",name:this.i18n("ID"),flexGrow:2},{prop:"server_hostname",name:this.i18n("Hostname"),flexGrow:2},{prop:"version",name:this.i18n("Version"),pipe:this.cephShortVersionPipe,flexGrow:2},{prop:"health",name:this.i18n("Health"),cellTemplate:this.healthTmpl,flexGrow:1}],this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.data=l.content_data.daemons})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}}var g=e("GiVz"),f=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function v(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),t["ɵprd"](512,null,o["ɵNgClassImpl"],o["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](2,278528,null,0,o.NgClass,[o["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),t["ɵppd"](3,1),(l()(),t["ɵted"](4,null,["",""]))],(function(l,n){var e=t["ɵunv"](n,2,0,l(n,3,0,t["ɵnov"](n.parent,0),n.context.row.health_color));l(n,2,0,e)}),(function(l,n){l(n,4,0,n.context.value)}))}function b(l){return t["ɵvid"](0,[t["ɵpid"](0,r,[]),t["ɵqud"](402653184,1,{healthTmpl:0}),(l()(),t["ɵeld"](2,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(l,n,e){var t=!0;return"fetchData"===n&&(t=!1!==l.component.refresh()&&t),t}),d.b,d.a)),t["ɵdid"](3,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"}),(l()(),t["ɵand"](0,[[1,2],["healthTmpl",2]],null,0,null,v))],(function(l,n){var e=n.component;l(n,3,0,e.data,e.columns,"flex",-1)}),null)}var C=e("HDdC"),S=e("0+/T"),R=e("oxzT"),_=e("vCyI"),w=e("kvvV"),y=e("aexS"),k=e("kn/O"),E=e("aa9H"),I=e("L4us");class N{constructor(l,n,e,t,u){this.authStorageService=l,this.rbdMirroringService=n,this.modalService=e,this.taskWrapper=t,this.i18n=u,this.selection=new _.a,this.data=[],this.permission=this.authStorageService.getPermissions().rbdMirroring;const i={permission:"update",icon:R.a.edit,click:()=>this.editModeModal(),name:this.i18n("Edit Mode"),canBePrimary:()=>!0},s={permission:"create",icon:R.a.add,name:this.i18n("Add Peer"),click:()=>this.editPeersModal("add"),disable:()=>!this.selection.first()||"disabled"===this.selection.first().mirror_mode,visible:()=>!this.getPeerUUID(),canBePrimary:()=>!1},a={permission:"update",icon:R.a.exchange,name:this.i18n("Edit Peer"),click:()=>this.editPeersModal("edit"),visible:()=>!!this.getPeerUUID()},o={permission:"delete",icon:R.a.destroy,name:this.i18n("Delete Peer"),click:()=>this.deletePeersModal(),visible:()=>!!this.getPeerUUID()};this.tableActions=[i,s,a,o]}ngOnInit(){this.columns=[{prop:"name",name:this.i18n("Name"),flexGrow:2},{prop:"mirror_mode",name:this.i18n("Mode"),flexGrow:2},{prop:"leader_id",name:this.i18n("Leader"),flexGrow:2},{prop:"image_local_count",name:this.i18n("# Local"),flexGrow:2},{prop:"image_remote_count",name:this.i18n("# Remote"),flexGrow:2},{prop:"health",name:this.i18n("Health"),cellTemplate:this.healthTmpl,flexGrow:1}],this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.data=l.content_data.pools})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}editModeModal(){const l={poolName:this.selection.first().name};this.modalRef=this.modalService.show(E.a,{initialState:l})}editPeersModal(l){const n={poolName:this.selection.first().name,mode:l};"edit"===l&&(n.peerUUID=this.getPeerUUID()),this.modalRef=this.modalService.show(I.a,{initialState:n})}deletePeersModal(){const l=this.selection.first().name,n=this.getPeerUUID();this.modalRef=this.modalService.show(S.a,{initialState:{itemDescription:this.i18n("mirror peer"),itemNames:[`${l} (${n})`],submitActionObservable:()=>new C.a(e=>{this.taskWrapper.wrapTaskAroundCall({task:new w.a("rbd/mirroring/peer/delete",{pool_name:l}),call:this.rbdMirroringService.deletePeer(l,n)}).subscribe(void 0,l=>e.error(l),()=>{this.rbdMirroringService.refresh(),e.complete()})})}})}getPeerUUID(){const l=this.selection.first(),n=this.data.find(n=>l&&l.name===n.name);if(n&&n.peer_uuids)return n.peer_uuids[0]}updateSelection(l){this.selection=l}}var F=e("LqlI"),V=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),t["ɵprd"](512,null,o["ɵNgClassImpl"],o["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](2,278528,null,0,o.NgClass,[o["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),t["ɵppd"](3,1),(l()(),t["ɵted"](4,null,["",""]))],(function(l,n){var e=t["ɵunv"](n,2,0,l(n,3,0,t["ɵnov"](n.parent,0),n.context.row.health_color));l(n,2,0,e)}),(function(l,n){l(n,4,0,n.context.value)}))}function D(l){return t["ɵvid"](0,[t["ɵpid"](0,r,[]),t["ɵqud"](402653184,1,{healthTmpl:0}),(l()(),t["ɵeld"](2,0,null,null,3,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","name"],["selectionType","single"]],null,[[null,"fetchData"],[null,"updateSelection"]],(function(l,n,e){var t=!0,u=l.component;return"fetchData"===n&&(t=!1!==u.refresh()&&t),"updateSelection"===n&&(t=!1!==u.updateSelection(e)&&t),t}),d.b,d.a)),t["ɵdid"](3,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection"}),(l()(),t["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,s.b,s.a)),t["ɵdid"](5,114688,null,0,a.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),t["ɵand"](0,[[1,2],["healthTmpl",2]],null,0,null,T))],(function(l,n){var e=n.component;l(n,3,0,e.data,e.columns,"flex",-1,"name","true","single"),l(n,5,0,e.permission,e.selection,e.tableActions)}),null)}var x=e("7qid"),P=e("38Bd"),q=e("pKUh"),B=e("2ZVE");class A{constructor(l,n){this.rbdMirroringService=l,this.i18n=n,this.image_error={data:[],columns:{}},this.image_syncing={data:[],columns:{}},this.image_ready={data:[],columns:{}}}ngOnInit(){this.image_error.columns=[{prop:"pool_name",name:this.i18n("Pool"),flexGrow:2},{prop:"name",name:this.i18n("Image"),flexGrow:2},{prop:"description",name:this.i18n("Issue"),flexGrow:4},{prop:"state",name:this.i18n("State"),cellTemplate:this.stateTmpl,flexGrow:1}],this.image_syncing.columns=[{prop:"pool_name",name:this.i18n("Pool"),flexGrow:2},{prop:"name",name:this.i18n("Image"),flexGrow:2},{prop:"progress",name:this.i18n("Progress"),cellTemplate:this.progressTmpl,flexGrow:2},{prop:"state",name:this.i18n("State"),cellTemplate:this.syncTmpl,flexGrow:1}],this.image_ready.columns=[{prop:"pool_name",name:this.i18n("Pool"),flexGrow:2},{prop:"name",name:this.i18n("Image"),flexGrow:2},{prop:"description",name:this.i18n("Description"),flexGrow:4},{prop:"state",name:this.i18n("State"),cellTemplate:this.stateTmpl,flexGrow:1}],this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.image_error.data=l.content_data.image_error,this.image_syncing.data=l.content_data.image_syncing,this.image_ready.data=l.content_data.image_ready})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}}var M=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function O(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(l,n,e){var t=!0;return"fetchData"===n&&(t=!1!==l.component.refresh()&&t),t}),d.b,d.a)),t["ɵdid"](1,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"})],(function(l,n){var e=n.component;l(n,1,0,e.image_error.data,e.image_error.columns,"flex",-1)}),null)}function L(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(l,n,e){var t=!0;return"fetchData"===n&&(t=!1!==l.component.refresh()&&t),t}),d.b,d.a)),t["ɵdid"](1,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"})],(function(l,n){var e=n.component;l(n,1,0,e.image_syncing.data,e.image_syncing.columns,"flex",-1)}),null)}function j(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(l,n,e){var t=!0;return"fetchData"===n&&(t=!1!==l.component.refresh()&&t),t}),d.b,d.a)),t["ɵdid"](1,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"})],(function(l,n){var e=n.component;l(n,1,0,e.image_ready.data,e.image_ready.columns,"flex",-1)}),null)}function U(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),t["ɵprd"](512,null,o["ɵNgClassImpl"],o["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](2,278528,null,0,o.NgClass,[o["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),t["ɵppd"](3,1),(l()(),t["ɵted"](4,null,["",""]))],(function(l,n){var e=t["ɵunv"](n,2,0,l(n,3,0,t["ɵnov"](n.parent,0),n.context.row.state_color));l(n,2,0,e)}),(function(l,n){l(n,4,0,n.context.value)}))}function G(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-info"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Syncing"]))],null,null)}function $(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"progressbar",[["type","info"]],[[1,"max",0],[2,"progress",null]],null,null,x.b,x.a)),t["ɵdid"](1,49152,null,0,P.b,[P.c],{type:[0,"type"],value:[1,"value"]},null)],(function(l,n){l(n,1,0,"info",n.context.value)}),(function(l,n){l(n,0,0,t["ɵnov"](n,1).max,t["ɵnov"](n,1).addClass)}))}function X(l){return t["ɵvid"](0,[t["ɵpid"](0,r,[]),t["ɵqud"](402653184,1,{stateTmpl:0}),t["ɵqud"](402653184,2,{syncTmpl:0}),t["ɵqud"](402653184,3,{progressTmpl:0}),(l()(),t["ɵeld"](4,0,null,null,13,"tabset",[],[[2,"tab-container",null]],null,null,q.b,q.a)),t["ɵdid"](5,180224,[["tabset",4]],0,B.e,[B.f,t.Renderer2,t.ElementRef],null,null),(l()(),t["ɵeld"](6,0,null,0,3,"tab",[["heading","Issues"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](7,212992,null,0,B.b,[B.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,O)),t["ɵdid"](9,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](10,0,null,0,3,"tab",[["heading","Syncing"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](11,212992,null,0,B.b,[B.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,L)),t["ɵdid"](13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](14,0,null,0,3,"tab",[["heading","Ready"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](15,212992,null,0,B.b,[B.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,j)),t["ɵdid"](17,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,[[1,2],["stateTmpl",2]],null,0,null,U)),(l()(),t["ɵand"](0,[[2,2],["syncTmpl",2]],null,0,null,G)),(l()(),t["ɵand"](0,[[3,2],["progressTmpl",2]],null,0,null,$))],(function(l,n){l(n,7,0,"Issues"),l(n,9,0,null==t["ɵnov"](n,5).tabs[0]?null:t["ɵnov"](n,5).tabs[0].active),l(n,11,0,"Syncing"),l(n,13,0,null==t["ɵnov"](n,5).tabs[1]?null:t["ɵnov"](n,5).tabs[1].active),l(n,15,0,"Ready"),l(n,17,0,null==t["ɵnov"](n,5).tabs[2]?null:t["ɵnov"](n,5).tabs[2].active)}),(function(l,n){l(n,4,0,t["ɵnov"](n,5).clazz),l(n,6,0,t["ɵnov"](n,7).id,t["ɵnov"](n,7).active,t["ɵnov"](n,7).addClass,t["ɵnov"](n,7).role,t["ɵnov"](n,7).ariaLabelledby),l(n,10,0,t["ɵnov"](n,11).id,t["ɵnov"](n,11).active,t["ɵnov"](n,11).addClass,t["ɵnov"](n,11).role,t["ɵnov"](n,11).ariaLabelledby),l(n,14,0,t["ɵnov"](n,15).id,t["ɵnov"](n,15).active,t["ɵnov"](n,15).addClass,t["ɵnov"](n,15).role,t["ɵnov"](n,15).ariaLabelledby)}))}var z=e("cxJu");e.d(n,"a",(function(){return K}));var W=t["ɵcrt"]({encapsulation:0,styles:[["cd-mirroring cd-table-actions.float-right ul{right:0!important;left:auto!important}"]],data:{}});function J(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,u.b,u.a)),t["ɵdid"](1,114688,null,0,i.a,[],{status:[0,"status"]},null),(l()(),t["ɵeld"](2,0,null,null,7,"div",[["class","row"]],null,null,null,null,null)),(l()(),t["ɵeld"](3,0,null,null,6,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](4,0,null,null,3,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Site Name:"])),(l()(),t["ɵted"](7,null,[" ",""])),(l()(),t["ɵeld"](8,0,null,null,1,"cd-table-actions",[["class","table-actions float-right"]],null,null,null,s.b,s.a)),t["ɵdid"](9,114688,null,0,a.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),t["ɵeld"](10,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),t["ɵeld"](11,0,null,null,4,"div",[["class","col-sm-6"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Daemons"])),(l()(),t["ɵeld"](14,0,null,null,1,"cd-mirroring-daemons",[],null,null,null,b,f)),t["ɵdid"](15,245760,null,0,h,[m.a,p.a,g.a],null,null),(l()(),t["ɵeld"](16,0,null,null,4,"div",[["class","col-sm-6"]],null,null,null,null,null)),(l()(),t["ɵeld"](17,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pools"])),(l()(),t["ɵeld"](19,0,null,null,1,"cd-mirroring-pools",[],null,null,null,D,V)),t["ɵdid"](20,245760,null,0,N,[y.a,m.a,F.b,k.a,g.a],null,null),(l()(),t["ɵeld"](21,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(l()(),t["ɵeld"](22,0,null,null,4,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](23,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Images"])),(l()(),t["ɵeld"](25,0,null,null,1,"cd-mirroring-images",[],null,null,null,X,M)),t["ɵdid"](26,245760,null,0,A,[m.a,g.a],null,null)],(function(l,n){var e=n.component;l(n,1,0,e.status),l(n,9,0,e.permission,e.selection,e.tableActions),l(n,15,0),l(n,20,0),l(n,26,0)}),(function(l,n){l(n,7,0,n.component.siteName)}))}function Y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-mirroring",[],null,null,null,J,W)),t["ɵdid"](1,245760,null,0,z.a,[y.a,m.a,F.b,g.a],null,null)],(function(l,n){l(n,1,0)}),null)}var K=t["ɵccf"]("cd-mirroring",z.a,Y,{},{},[])},Sofw:function(l,n,e){"use strict";e.d(n,"a",(function(){return a}));var t=e("s7LF"),u=(e("my5R"),e("mtw6")),i=e("QFaf"),s=e("1Ni5");e("aexS"),e("9nlD");class a{constructor(l,n,e,t,u){this.authStorageService=l,this.bsModalRef=n,this.iscsiService=e,this.notificationService=t,this.i18n=u,this.USER_REGEX=/^[\w\.:@_-]{8,64}$/,this.PASSWORD_REGEX=/^[\w@\-_\/]{12,16}$/,this.permission=this.authStorageService.getPermissions().iscsi}ngOnInit(){this.hasPermission=this.permission.update,this.createForm(),this.iscsiService.getDiscovery().subscribe(l=>{this.discoveryForm.patchValue(l)})}createForm(){this.discoveryForm=new i.a({user:new t.i({value:"",disabled:!this.hasPermission}),password:new t.i({value:"",disabled:!this.hasPermission}),mutual_user:new t.i({value:"",disabled:!this.hasPermission}),mutual_password:new t.i({value:"",disabled:!this.hasPermission})}),s.a.validateIf(this.discoveryForm.get("user"),()=>this.discoveryForm.getValue("password")||this.discoveryForm.getValue("mutual_user")||this.discoveryForm.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.USER_REGEX)],[this.discoveryForm.get("password"),this.discoveryForm.get("mutual_user"),this.discoveryForm.get("mutual_password")]),s.a.validateIf(this.discoveryForm.get("password"),()=>this.discoveryForm.getValue("user")||this.discoveryForm.getValue("mutual_user")||this.discoveryForm.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.PASSWORD_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("mutual_user"),this.discoveryForm.get("mutual_password")]),s.a.validateIf(this.discoveryForm.get("mutual_user"),()=>this.discoveryForm.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.USER_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("password"),this.discoveryForm.get("mutual_password")]),s.a.validateIf(this.discoveryForm.get("mutual_password"),()=>this.discoveryForm.getValue("mutual_user"),[t.B.required],[t.B.pattern(this.PASSWORD_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("password"),this.discoveryForm.get("mutual_user")])}submitAction(){this.iscsiService.updateDiscovery(this.discoveryForm.value).subscribe(()=>{this.notificationService.show(u.a.success,this.i18n("Updated discovery authentication")),this.bsModalRef.hide()},()=>{this.discoveryForm.setErrors({cdSubmitButton:!0})})}}},SuaG:function(l,n,e){"use strict";e.d(n,"a",(function(){return c}));var t=e("s7LF"),u=e("LvDl"),i=e("GyhO"),s=e("cp0P"),a=e("vkgz"),o=e("NJ9Y"),r=(e("XED3"),e("QFaf")),d=e("kvvV");e("kn/O");class c{constructor(l,n,e){this.modalRef=l,this.rbdMirroringService=n,this.taskWrapper=e,this.pools=[],this.createForm()}createForm(){this.createBootstrapForm=new r.a({siteName:new t.i("",{validators:[t.B.required]}),pools:new t.k({},{validators:[this.validatePools()]}),token:new t.i("",{})})}ngOnInit(){this.createBootstrapForm.get("siteName").setValue(this.siteName),this.rbdMirroringService.getSiteName().subscribe(l=>{this.createBootstrapForm.get("siteName").setValue(l.site_name)}),this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.pools=l.content_data.pools.reduce((l,n)=>(l.push({name:n.name,mirror_mode:n.mirror_mode}),l),[]);const n=this.createBootstrapForm.get("pools");u.each(this.pools,l=>{const e=l.name,u="disabled"===l.mirror_mode,i=n.controls[e];i?u&&i.disabled?i.enable():!u&&i.enabled&&(i.disable(),i.setValue(!0)):n.addControl(e,new t.i({value:!u,disabled:!u}))})})}ngOnDestroy(){this.subs&&this.subs.unsubscribe()}validatePools(){return l=>{let n=0;return u.each(l.controls,l=>{!0===l.value&&++n}),n>0?null:{requirePool:!0}}}generate(){this.createBootstrapForm.get("token").setValue("");let l="";const n=[],e=this.createBootstrapForm.get("pools");u.each(e.controls,(e,t)=>{!0===e.value&&(l=t,e.disabled||n.push(t))});const t={mirror_mode:"image"},r=Object(i.a)(this.rbdMirroringService.setSiteName(this.createBootstrapForm.getValue("siteName")),Object(s.a)(n.map(l=>this.rbdMirroringService.updatePool(l,t))),this.rbdMirroringService.createBootstrapToken(l).pipe(Object(a.a)(l=>this.createBootstrapForm.get("token").setValue(l.token)))).pipe(Object(o.a)()),c=()=>{this.rbdMirroringService.refresh(),this.createBootstrapForm.setErrors({cdSubmitButton:!0})};this.taskWrapper.wrapTaskAroundCall({task:new d.a("rbd/mirroring/bootstrap/create",{}),call:r}).subscribe(void 0,c,c)}}},VBM6:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("EEJc"),i=e("ajRT"),s=e("SVse"),a=e("s7LF"),o=e("+gVj"),r=e("mXUL"),d=e("IZUe"),c=e("ANnk"),m=e("f/UV"),p=e("aexS"),h=e("gp3X"),g=e("sb0X"),f=e("KVJa"),v=e("Z21x"),b=e("sne2"),C=e("L4us"),S=e("LqlI"),R=e("XED3"),_=e("kn/O");e.d(n,"a",(function(){return B}));var w=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function y(l){return t["ɵvid"](0,[(l()(),t["ɵted"](-1,null,["Edit"]))],null,null)}function k(l){return t["ɵvid"](0,[(l()(),t["ɵted"](-1,null,["Add"]))],null,null)}function E(l){return t["ɵvid"](0,[(l()(),t["ɵted"](-1,null,["Edit"]))],null,null)}function I(l){return t["ɵvid"](0,[(l()(),t["ɵted"](-1,null,["Add"]))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The cluster name is not valid."]))],null,null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The CephX ID is not valid."]))],null,null)}function D(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The monitory address is not valid."]))],null,null)}function x(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["CephX key must be base64 encoded."]))],null,null)}function P(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,110,"cd-modal",[],null,null,null,u.c,u.b)),t["ɵdid"](1,49152,null,0,i.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,7,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](3,0,null,null,5,null,null,null,null,null,null,null)),t["ɵdid"](4,16384,null,0,s.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,y)),t["ɵdid"](6,278528,null,0,s.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,s.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,k)),t["ɵdid"](8,16384,null,0,s.NgSwitchDefault,[t.ViewContainerRef,t.TemplateRef,s.NgSwitch],null,null),(l()(),t["ɵted"](-1,null,[" pool mirror peer"])),(l()(),t["ɵeld"](10,0,null,1,100,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](11,0,null,null,99,"form",[["class","form"],["name","editPeerForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,13).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,13).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,16).onSubmit()&&u),u}),null,null)),t["ɵdid"](12,16384,null,0,a.G,[],null,null),t["ɵdid"](13,540672,[["formDir",4]],0,a.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,a.d,null,[a.l]),t["ɵdid"](15,16384,null,0,a.s,[[4,a.d]],null,null),t["ɵdid"](16,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](17,0,null,null,86,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](18,0,null,null,14,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](19,0,null,null,13,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](20,0,null,null,5,null,null,null,null,null,null,null)),t["ɵdid"](21,16384,null,0,s.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](23,278528,null,0,s.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,s.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](25,16384,null,0,s.NgSwitchDefault,[t.ViewContainerRef,t.TemplateRef,s.NgSwitch],null,null),(l()(),t["ɵted"](-1,null,[" the pool mirror peer attributes for pool "])),(l()(),t["ɵeld"](27,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](28,null,["",""])),(l()(),t["ɵted"](-1,null,[" and click "])),(l()(),t["ɵeld"](30,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Submit"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](33,0,null,null,18,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](34,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](37,0,null,0,1,"label",[["class","col-form-label required"],["for","clusterName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Cluster Name"])),(l()(),t["ɵeld"](39,0,null,0,8,"input",[["autofocus",""],["class","form-control"],["formControlName","clusterName"],["id","clusterName"],["name","clusterName"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,42)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,42).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,42)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,42)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](40,4210688,null,0,d.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](41,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](42,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](44,671744,[[1,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](46,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](47,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,N)),t["ɵdid"](49,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,F)),t["ɵdid"](51,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](52,0,null,null,17,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](53,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](56,0,null,0,1,"label",[["class","col-form-label required"],["for","clientID"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["CephX ID"])),(l()(),t["ɵeld"](58,0,null,0,7,"input",[["class","form-control"],["formControlName","clientID"],["id","clientID"],["name","clientID"],["placeholder","CephX ID..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,60)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,60).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,60)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,60)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](59,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](60,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](62,671744,[[3,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](64,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](65,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,V)),t["ɵdid"](67,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,T)),t["ɵdid"](69,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](70,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](71,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](74,0,null,0,2,"label",[["class","col-form-label"],["for","monAddr"]],null,null,null,null,null)),(l()(),t["ɵeld"](75,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Monitor Addresses"])),(l()(),t["ɵeld"](77,0,null,0,7,"input",[["class","form-control"],["formControlName","monAddr"],["id","monAddr"],["name","monAddr"],["placeholder","Comma-delimited addresses..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,79)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,79).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,79)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,79)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](78,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](79,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](81,671744,[[5,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](83,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](84,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,D)),t["ɵdid"](86,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](87,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](88,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,7,{FormControlNames:1}),t["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),t["ɵeld"](91,0,null,0,2,"label",[["class","col-form-label"],["for","key"]],null,null,null,null,null)),(l()(),t["ɵeld"](92,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["CephX Key"])),(l()(),t["ɵeld"](94,0,null,0,7,"input",[["class","form-control"],["formControlName","key"],["id","key"],["name","key"],["placeholder","Base64-encoded key..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,96)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,96).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,96)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,96)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](95,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](96,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](98,671744,[[7,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](100,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](101,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,x)),t["ɵdid"](103,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](104,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](105,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](106,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.update()&&t),t}),h.b,h.a)),t["ɵdid"](107,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Submit"])),(l()(),t["ɵeld"](109,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,f.b,f.a)),t["ɵdid"](110,49152,null,0,v.a,[s.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,4,0,e.mode),l(n,6,0,"edit"),l(n,13,0,e.editPeerForm),l(n,16,0,e.editPeerForm),l(n,21,0,e.mode),l(n,23,0,"edit"),l(n,34,0),l(n,40,0,""),l(n,44,0,"clusterName"),l(n,47,0,"clusterName"),l(n,49,0,e.editPeerForm.showError("clusterName",t["ɵnov"](n,13),"required")),l(n,51,0,e.editPeerForm.showError("clusterName",t["ɵnov"](n,13),"invalidClusterName")),l(n,53,0),l(n,62,0,"clientID"),l(n,65,0,"clientID"),l(n,67,0,e.editPeerForm.showError("clientID",t["ɵnov"](n,13),"required")),l(n,69,0,e.editPeerForm.showError("clientID",t["ɵnov"](n,13),"invalidClientID")),l(n,71,0),l(n,81,0,"monAddr"),l(n,84,0,"monAddr"),l(n,86,0,e.editPeerForm.showError("monAddr",t["ɵnov"](n,13),"invalidMonAddr")),l(n,88,0),l(n,98,0,"key"),l(n,101,0,"key"),l(n,103,0,e.editPeerForm.showError("key",t["ɵnov"](n,13),"invalidKey")),l(n,107,0,e.editPeerForm),l(n,110,0,"Cancel",e.modalRef.hide)}),(function(l,n){var e=n.component;l(n,11,0,t["ɵnov"](n,15).ngClassUntouched,t["ɵnov"](n,15).ngClassTouched,t["ɵnov"](n,15).ngClassPristine,t["ɵnov"](n,15).ngClassDirty,t["ɵnov"](n,15).ngClassValid,t["ɵnov"](n,15).ngClassInvalid,t["ɵnov"](n,15).ngClassPending),l(n,28,0,e.poolName),l(n,33,0,t["ɵnov"](n,34).hasErrors,t["ɵnov"](n,34).hasSuccess),l(n,39,0,t["ɵnov"](n,46).ngClassUntouched,t["ɵnov"](n,46).ngClassTouched,t["ɵnov"](n,46).ngClassPristine,t["ɵnov"](n,46).ngClassDirty,t["ɵnov"](n,46).ngClassValid,t["ɵnov"](n,46).ngClassInvalid,t["ɵnov"](n,46).ngClassPending,t["ɵnov"](n,47).validClass,t["ɵnov"](n,47).invalidClass),l(n,52,0,t["ɵnov"](n,53).hasErrors,t["ɵnov"](n,53).hasSuccess),l(n,58,0,t["ɵnov"](n,64).ngClassUntouched,t["ɵnov"](n,64).ngClassTouched,t["ɵnov"](n,64).ngClassPristine,t["ɵnov"](n,64).ngClassDirty,t["ɵnov"](n,64).ngClassValid,t["ɵnov"](n,64).ngClassInvalid,t["ɵnov"](n,64).ngClassPending,t["ɵnov"](n,65).validClass,t["ɵnov"](n,65).invalidClass),l(n,70,0,t["ɵnov"](n,71).hasErrors,t["ɵnov"](n,71).hasSuccess),l(n,77,0,t["ɵnov"](n,83).ngClassUntouched,t["ɵnov"](n,83).ngClassTouched,t["ɵnov"](n,83).ngClassPristine,t["ɵnov"](n,83).ngClassDirty,t["ɵnov"](n,83).ngClassValid,t["ɵnov"](n,83).ngClassInvalid,t["ɵnov"](n,83).ngClassPending,t["ɵnov"](n,84).validClass,t["ɵnov"](n,84).invalidClass),l(n,87,0,t["ɵnov"](n,88).hasErrors,t["ɵnov"](n,88).hasSuccess),l(n,94,0,t["ɵnov"](n,100).ngClassUntouched,t["ɵnov"](n,100).ngClassTouched,t["ɵnov"](n,100).ngClassPristine,t["ɵnov"](n,100).ngClassDirty,t["ɵnov"](n,100).ngClassValid,t["ɵnov"](n,100).ngClassInvalid,t["ɵnov"](n,100).ngClassPending,t["ɵnov"](n,101).validClass,t["ɵnov"](n,101).invalidClass)}))}function q(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-pool-edit-peer-modal",[],null,null,null,P,w)),t["ɵdid"](1,114688,null,0,C.a,[S.a,R.a,_.a],null,null)],(function(l,n){l(n,1,0)}),null)}var B=t["ɵccf"]("cd-pool-edit-peer-modal",C.a,q,{},{},[])},WkyA:function(l,n,e){"use strict";e.d(n,"a",(function(){return t}));class t{constructor(){}}},WxU5:function(l,n,e){"use strict";e.d(n,"a",(function(){return u})),e("Ekvf"),e("F83c"),e("2EZI");var t=e("kvvV");e("aexS"),e("kn/O");class u{constructor(l,n,e,t,u,i){this.authStorageService=l,this.rbdService=n,this.modalRef=e,this.fb=t,this.poolService=u,this.taskWrapper=i,this.poolPermission=this.authStorageService.getPermissions().pool}createForm(){this.purgeForm=this.fb.group({poolName:""})}ngOnInit(){this.poolPermission.read&&this.poolService.list(["pool_name","application_metadata"]).then(l=>{this.pools=l.filter(l=>l.application_metadata.includes("rbd")).map(l=>l.pool_name)}),this.createForm()}purge(){const l=this.purgeForm.getValue("poolName")||"";this.taskWrapper.wrapTaskAroundCall({task:new t.a("rbd/trash/purge",{pool_name:l}),call:this.rbdService.purgeTrash(l)}).subscribe(void 0,()=>{this.purgeForm.setErrors({cdSubmitButton:!0})},()=>{this.modalRef.hide()})}}},XED3:function(l,n,e){"use strict";e.d(n,"a",(function(){return c}));var t=e("mrSG"),u=e("IheW"),i=e("2Vo4"),s=e("pLZG"),a=e("xTzq"),o=e("lOp/"),r=e("8Y7J"),d=e("pL04");let c=(()=>{let l=class{constructor(l,n){this.http=l,this.timerService=n,this.REFRESH_INTERVAL=3e4,this.summaryDataSource=new i.a(null),this.summaryData$=this.summaryDataSource.asObservable()}startPolling(){return this.timerService.get(()=>this.retrieveSummaryObservable(),this.REFRESH_INTERVAL).subscribe(this.retrieveSummaryObserver())}refresh(){return this.retrieveSummaryObservable().subscribe(this.retrieveSummaryObserver())}retrieveSummaryObservable(){return this.http.get("api/block/mirroring/summary")}retrieveSummaryObserver(){return l=>{this.summaryDataSource.next(l)}}subscribeSummary(l,n){return this.summaryData$.pipe(Object(s.a)(l=>!!l)).subscribe(l,n)}getPool(l){return this.http.get("api/block/mirroring/pool/"+l)}updatePool(l,n){return this.http.put("api/block/mirroring/pool/"+l,n,{observe:"response"})}getSiteName(){return this.http.get("api/block/mirroring/site_name")}setSiteName(l){return this.http.put("api/block/mirroring/site_name",{site_name:l},{observe:"response"})}createBootstrapToken(l){return this.http.post(`api/block/mirroring/pool/${l}/bootstrap/token`,{})}importBootstrapToken(l,n,e){return this.http.post(`api/block/mirroring/pool/${l}/bootstrap/peer`,{direction:n,token:e},{observe:"response"})}getPeer(l,n){return this.http.get(`api/block/mirroring/pool/${l}/peer/${n}`)}addPeer(l,n){return this.http.post(`api/block/mirroring/pool/${l}/peer`,n,{observe:"response"})}updatePeer(l,n,e){return this.http.put(`api/block/mirroring/pool/${l}/peer/${n}`,e,{observe:"response"})}deletePeer(l,n){return this.http.delete(`api/block/mirroring/pool/${l}/peer/${n}`,{observe:"response"})}};return l.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new l(r["ɵɵinject"](u.c),r["ɵɵinject"](o.a))},token:l,providedIn:d.a}),t.__decorate([t.__param(0,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[String]),t.__metadata("design:returntype",void 0)],l.prototype,"setSiteName",null),t.__decorate([t.__param(1,a.b),t.__param(2,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[String,String,String]),t.__metadata("design:returntype",void 0)],l.prototype,"importBootstrapToken",null),l=t.__decorate([a.a,t.__metadata("design:paramtypes",[u.c,o.a])],l),l})()},Z4cD:function(l,n,e){"use strict";e.d(n,"a",(function(){return s}));var t=e("s7LF"),u=e("LvDl"),i=(e("my5R"),e("QFaf"));class s{constructor(l,n){this.modalRef=l,this.iscsiService=n}ngOnInit(){const l={backstore:new t.i(this.imagesSettings[this.image].backstore),lun:new t.i(this.imagesSettings[this.image].lun),wwn:new t.i(this.imagesSettings[this.image].wwn)};u.forEach(this.backstores,n=>{const e=this.imagesSettings[this.image][n]||{};u.forIn(this.disk_default_controls[n],(n,u)=>{l[u]=new t.i(e[u])})}),this.settingsForm=new i.a(l)}getDiskControlLimits(l,n){return this.disk_controls_limits?this.disk_controls_limits[l][n]:{type:"int"}}save(){const l=this.settingsForm.controls.backstore.value,n=this.settingsForm.controls.lun.value,e=this.settingsForm.controls.wwn.value,t={};u.forIn(this.settingsForm.controls,(n,e)=>{""!==n.value&&null!==n.value&&e in this.disk_default_controls[this.settingsForm.value.backstore]&&(t[e]=n.value,u.forEach(this.backstores,t=>{t!==l&&e in(this.imagesSettings[this.image][t]||{})&&(this.imagesSettings[this.image][t][e]=n.value)}))}),this.imagesSettings[this.image].backstore=l,this.imagesSettings[this.image].lun=n,this.imagesSettings[this.image].wwn=e,this.imagesSettings[this.image][l]=t,this.imagesSettings=Object.assign({},this.imagesSettings),this.control.updateValueAndValidity({emitEvent:!1}),this.modalRef.hide()}}},Z5tW:function(l,n,e){"use strict";e.d(n,"a",(function(){return r}));var t=e("cp0P"),u=(e("Ekvf"),e("F83c"),e("0+/T")),i=(e("sne2"),e("oxzT")),s=e("mtw6"),a=e("vCyI"),o=(e("aexS"),e("9nlD"),e("daK0"));class r{constructor(l,n,e,t,u,s,o){this.authStorageService=l,this.rbdService=n,this.poolService=e,this.modalService=t,this.notificationService=u,this.i18n=s,this.actionLabels=o,this.selection=new a.a,this.permission=this.authStorageService.getPermissions().rbdImage,this.tableActions=[{permission:"create",icon:i.a.add,click:()=>this.createModal(),name:this.actionLabels.CREATE},{permission:"delete",icon:i.a.destroy,click:()=>this.deleteModal(),name:this.actionLabels.DELETE,disable:()=>this.getDeleteDisableDesc()}]}ngOnInit(){this.columns=[{name:this.i18n("Namespace"),prop:"namespace",flexGrow:1},{name:this.i18n("Pool"),prop:"pool",flexGrow:1},{name:this.i18n("Total images"),prop:"num_images",flexGrow:1}],this.refresh()}refresh(){this.poolService.list(["pool_name","type","application_metadata"]).then(l=>{l=l.filter(l=>this.rbdService.isRBDPool(l)&&"replicated"===l.type);const n=[];l.forEach(l=>{n.push(this.rbdService.listNamespaces(l.pool_name))}),n.length>0?Object(t.a)(n).subscribe(n=>{const e=[];for(let t=0;t<n.length;t++){const u=l[t].pool_name;n[t].forEach(l=>{e.push({id:`${u}/${l.namespace}`,pool:u,namespace:l.namespace,num_images:l.num_images})})}this.namespaces=e}):this.namespaces=[]})}updateSelection(l){this.selection=l}createModal(){this.modalRef=this.modalService.show(o.a),this.modalRef.content.onSubmit.subscribe(()=>{this.refresh()})}deleteModal(){const l=this.selection.first().pool,n=this.selection.first().namespace;this.modalRef=this.modalService.show(u.a,{initialState:{itemDescription:"Namespace",itemNames:[`${l}/${n}`],submitAction:()=>this.rbdService.deleteNamespace(l,n).subscribe(()=>{this.notificationService.show(s.a.success,this.i18n("Deleted namespace '{{pool}}/{{namespace}}'",{pool:l,namespace:n})),this.modalRef.hide(),this.refresh()},()=>{this.modalRef.content.stopLoadingSpinner()})}})}getDeleteDisableDesc(){const l=this.selection.first();return!l||l.num_images>0&&this.i18n("Namespace contains images")}}},a6qe:function(l,n,e){"use strict";e.d(n,"a",(function(){return s}));var t=e("s7LF"),u=e("LvDl"),i=(e("my5R"),e("QFaf"));class s{constructor(l,n){this.modalRef=l,this.iscsiService=n}ngOnInit(){const l={};u.forIn(this.target_default_controls,(n,e)=>{l[e]=new t.i(this.target_controls.value[e])}),this.settingsForm=new i.a(l)}save(){const l={};u.forIn(this.settingsForm.controls,(n,e)=>{""!==n.value&&null!==n.value&&(l[e]=n.value)}),this.target_controls.setValue(l),this.modalRef.hide()}getTargetControlLimits(l){return this.target_controls_limits?this.target_controls_limits[l]:["Yes","No"].includes(this.target_default_controls[l])?{type:"bool"}:{type:"int"}}}},aAWM:function(l,n,e){"use strict";e("uIqm");var t=e("PhyI");class u{transform(l){return{0:"global",1:"pool",2:"image"}[l]}}e("aXbf"),e("o8EM"),e.d(n,"a",(function(){return i}));class i{constructor(l,n,e){this.formatterService=l,this.rbdConfigurationService=n,this.i18n=e,this.sourceField=t.a,this.typeField=t.b}ngOnInit(){this.poolConfigurationColumns=[{prop:"displayName",name:this.i18n("Name")},{prop:"description",name:this.i18n("Description")},{prop:"name",name:this.i18n("Key")},{prop:"source",name:this.i18n("Source"),cellTemplate:this.configurationSourceTpl,pipe:new u},{prop:"value",name:this.i18n("Value"),cellTemplate:this.configurationValueTpl}]}ngOnChanges(){this.data&&(this.data=this.data.filter(l=>this.rbdConfigurationService.getOptionFields().map(l=>l.name).includes(l.name)))}}},aa9H:function(l,n,e){"use strict";var t=e("s7LF"),u=(e("XED3"),e("QFaf")),i=e("kvvV");e("kn/O");class s{}e.d(n,"a",(function(){return a}));class a{constructor(l,n,e,t){this.modalRef=l,this.i18n=n,this.rbdMirroringService=e,this.taskWrapper=t,this.bsConfig={containerClass:"theme-default"},this.peerExists=!1,this.mirrorModes=[{id:"disabled",name:this.i18n("Disabled")},{id:"pool",name:this.i18n("Pool")},{id:"image",name:this.i18n("Image")}],this.createForm()}createForm(){this.editModeForm=new u.a({mirrorMode:new t.i("",{validators:[t.B.required,this.validateMode.bind(this)]})})}ngOnInit(){this.pattern=""+this.poolName,this.rbdMirroringService.getPool(this.poolName).subscribe(l=>{this.setResponse(l)}),this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.peerExists=!1;const n=l.content_data.pools.find(l=>this.poolName===l.name);this.peerExists=n&&n.peer_uuids.length})}ngOnDestroy(){this.subs.unsubscribe()}validateMode(l){return"disabled"===l.value&&this.peerExists?{cannotDisable:{value:l.value}}:null}setResponse(l){this.editModeForm.get("mirrorMode").setValue(l.mirror_mode)}update(){const l=new s;l.mirror_mode=this.editModeForm.getValue("mirrorMode"),this.taskWrapper.wrapTaskAroundCall({task:new i.a("rbd/mirroring/pool/edit",{pool_name:this.poolName}),call:this.rbdMirroringService.updatePool(this.poolName,l)}).subscribe(void 0,()=>this.editModeForm.setErrors({cdSubmitButton:!0}),()=>{this.rbdMirroringService.refresh(),this.modalRef.hide()})}}},bUo2:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("gp3X"),i=e("sb0X"),s=e("EEJc"),a=e("ajRT"),o=e("s7LF"),r=e("+gVj"),d=e("mXUL"),c=e("ANnk"),m=e("f/UV"),p=e("aexS"),h=e("SVse"),g=e("D4zM"),f=e("OcYo"),v=e("EApP"),b=e("GiVz"),C=e("KVJa"),S=e("Z21x"),R=e("sne2"),_=e("Sofw"),w=e("LqlI"),y=e("my5R"),k=e("9nlD");e.d(n,"a",(function(){return M}));var E=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function D(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function x(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function P(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function q(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.submitAction()&&t),t}),u.b,u.a)),t["ɵdid"](1,114688,null,0,i.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Submit"]))],(function(l,n){l(n,1,0,n.component.discoveryForm)}),null)}function B(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,106,"cd-modal",[],null,null,null,s.c,s.b)),t["ɵdid"](1,49152,null,0,a.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Discovery Authentication"])),(l()(),t["ɵeld"](4,0,null,1,102,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,101,"form",[["name","discoveryForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,o.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,o.d,null,[o.l]),t["ɵdid"](9,16384,null,0,o.s,[[4,o.d]],null,null),t["ɵdid"](10,16384,null,0,r.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,89,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](13,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label"],["for","user"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["User"])),(l()(),t["ɵeld"](18,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](19,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","user"],["id","user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,20)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,20).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,20)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,20)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](20,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](22,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](24,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](25,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](26,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](28,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,N)),t["ɵdid"](30,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](31,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](32,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](35,0,null,0,1,"label",[["class","cd-col-form-label"],["for","password"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Password"])),(l()(),t["ɵeld"](37,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](38,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),t["ɵeld"](39,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","password"],["id","password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,40)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,40).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,40)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,40)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](40,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](42,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](44,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](45,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](46,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](47,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),t["ɵeld"](48,0,null,null,1,"button",[["cdPasswordButton","password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,49).onClick()&&u),u}),null,null)),t["ɵdid"](49,81920,null,0,g.a,[t.ElementRef,t.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),t["ɵeld"](50,0,null,null,1,"button",[["cdCopy2ClipboardButton","password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,51).onClick()&&u),u}),null,null)),t["ɵdid"](51,81920,null,0,f.a,[t.ElementRef,t.Renderer2,v.j,b.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,F)),t["ɵdid"](53,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,V)),t["ɵdid"](55,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](56,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](57,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](60,0,null,0,2,"label",[["class","cd-col-form-label"],["for","mutual_user"]],null,null,null,null,null)),(l()(),t["ɵeld"](61,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Mutual User"])),(l()(),t["ɵeld"](63,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](64,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","mutual_user"],["id","mutual_user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,65)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,65).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,65)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,65)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](65,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](67,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](69,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](70,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](71,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,T)),t["ɵdid"](73,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,D)),t["ɵdid"](75,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](76,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](77,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,7,{FormControlNames:1}),t["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),t["ɵeld"](80,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mutual_password"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Mutual Password"])),(l()(),t["ɵeld"](82,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](83,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),t["ɵeld"](84,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","mutual_password"],["id","mutual_password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,85)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,85).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,85)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,85)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](85,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](87,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](89,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](90,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](91,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](92,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),t["ɵeld"](93,0,null,null,1,"button",[["cdPasswordButton","mutual_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,94).onClick()&&u),u}),null,null)),t["ɵdid"](94,81920,null,0,g.a,[t.ElementRef,t.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),t["ɵeld"](95,0,null,null,1,"button",[["cdCopy2ClipboardButton","mutual_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,96).onClick()&&u),u}),null,null)),t["ɵdid"](96,81920,null,0,f.a,[t.ElementRef,t.Renderer2,v.j,b.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,x)),t["ɵdid"](98,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,P)),t["ɵdid"](100,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](101,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](102,0,null,null,4,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,q)),t["ɵdid"](104,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](105,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,C.b,C.a)),t["ɵdid"](106,49152,null,0,S.a,[h.Location,R.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.bsModalRef),l(n,7,0,e.discoveryForm),l(n,10,0,e.discoveryForm),l(n,13,0),l(n,22,0,"user"),l(n,26,0,"user"),l(n,28,0,e.discoveryForm.showError("user",t["ɵnov"](n,7),"required")),l(n,30,0,e.discoveryForm.showError("user",t["ɵnov"](n,7),"pattern")),l(n,32,0),l(n,42,0,"password"),l(n,46,0,"password"),l(n,49,0,"password"),l(n,51,0,"password"),l(n,53,0,e.discoveryForm.showError("password",t["ɵnov"](n,7),"required")),l(n,55,0,e.discoveryForm.showError("password",t["ɵnov"](n,7),"pattern")),l(n,57,0),l(n,67,0,"mutual_user"),l(n,71,0,"mutual_user"),l(n,73,0,e.discoveryForm.showError("mutual_user",t["ɵnov"](n,7),"required")),l(n,75,0,e.discoveryForm.showError("mutual_user",t["ɵnov"](n,7),"pattern")),l(n,77,0),l(n,87,0,"mutual_password"),l(n,91,0,"mutual_password"),l(n,94,0,"mutual_password"),l(n,96,0,"mutual_password"),l(n,98,0,e.discoveryForm.showError("mutual_password",t["ɵnov"](n,7),"required")),l(n,100,0,e.discoveryForm.showError("mutual_password",t["ɵnov"](n,7),"pattern")),l(n,104,0,e.hasPermission),l(n,106,0,"Cancel",e.bsModalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,12,0,t["ɵnov"](n,13).hasErrors,t["ɵnov"](n,13).hasSuccess),l(n,19,0,t["ɵnov"](n,24).ngClassUntouched,t["ɵnov"](n,24).ngClassTouched,t["ɵnov"](n,24).ngClassPristine,t["ɵnov"](n,24).ngClassDirty,t["ɵnov"](n,24).ngClassValid,t["ɵnov"](n,24).ngClassInvalid,t["ɵnov"](n,24).ngClassPending,t["ɵnov"](n,26).validClass,t["ɵnov"](n,26).invalidClass),l(n,31,0,t["ɵnov"](n,32).hasErrors,t["ɵnov"](n,32).hasSuccess),l(n,39,0,t["ɵnov"](n,44).ngClassUntouched,t["ɵnov"](n,44).ngClassTouched,t["ɵnov"](n,44).ngClassPristine,t["ɵnov"](n,44).ngClassDirty,t["ɵnov"](n,44).ngClassValid,t["ɵnov"](n,44).ngClassInvalid,t["ɵnov"](n,44).ngClassPending,t["ɵnov"](n,46).validClass,t["ɵnov"](n,46).invalidClass),l(n,56,0,t["ɵnov"](n,57).hasErrors,t["ɵnov"](n,57).hasSuccess),l(n,64,0,t["ɵnov"](n,69).ngClassUntouched,t["ɵnov"](n,69).ngClassTouched,t["ɵnov"](n,69).ngClassPristine,t["ɵnov"](n,69).ngClassDirty,t["ɵnov"](n,69).ngClassValid,t["ɵnov"](n,69).ngClassInvalid,t["ɵnov"](n,69).ngClassPending,t["ɵnov"](n,71).validClass,t["ɵnov"](n,71).invalidClass),l(n,76,0,t["ɵnov"](n,77).hasErrors,t["ɵnov"](n,77).hasSuccess),l(n,84,0,t["ɵnov"](n,89).ngClassUntouched,t["ɵnov"](n,89).ngClassTouched,t["ɵnov"](n,89).ngClassPristine,t["ɵnov"](n,89).ngClassDirty,t["ɵnov"](n,89).ngClassValid,t["ɵnov"](n,89).ngClassInvalid,t["ɵnov"](n,89).ngClassPending,t["ɵnov"](n,91).validClass,t["ɵnov"](n,91).invalidClass)}))}function A(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-iscsi-target-discovery-modal",[],null,null,null,B,E)),t["ɵdid"](1,114688,null,0,_.a,[p.a,w.a,y.a,k.a,b.a],null,null)],(function(l,n){l(n,1,0)}),null)}var M=t["ɵccf"]("cd-iscsi-target-discovery-modal",_.a,A,{},{},[])},chpi:function(l,n,e){"use strict";e.d(n,"a",(function(){return h}));var t=e("LvDl"),u=e("wd/R"),i=(e("F83c"),e("0+/T")),s=(e("sne2"),e("uIqm"),e("x38r")),a=e("oxzT"),o=e("yJti"),r=e("vCyI"),d=e("kvvV"),c=e("jVDg"),m=(e("a0VL"),e("aexS"),e("VTlA"),e("kn/O"),e("WxU5")),p=e("2GqK");class h{constructor(l,n,e,t,u,i,s,o){this.authStorageService=l,this.rbdService=n,this.modalService=e,this.cdDatePipe=t,this.taskListService=u,this.taskWrapper=i,this.i18n=s,this.actionLabels=o,this.icons=a.a,this.executingTasks=[],this.selection=new r.a,this.disablePurgeBtn=!0,this.permission=this.authStorageService.getPermissions().rbdImage,this.tableActions=[{permission:"update",icon:a.a.undo,click:()=>this.restoreModal(),name:this.actionLabels.RESTORE},{permission:"delete",icon:a.a.destroy,click:()=>this.deleteModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:this.i18n("ID"),prop:"id",flexGrow:1,cellTransformation:s.a.executing},{name:this.i18n("Name"),prop:"name",flexGrow:1},{name:this.i18n("Pool"),prop:"pool_name",flexGrow:1},{name:this.i18n("Namespace"),prop:"namespace",flexGrow:1},{name:this.i18n("Status"),prop:"deferment_end_time",flexGrow:1,cellTemplate:this.expiresTpl},{name:this.i18n("Deleted At"),prop:"deletion_time",flexGrow:1,pipe:this.cdDatePipe}],this.taskListService.init(()=>this.rbdService.listTrash(),l=>this.prepareResponse(l),l=>this.images=l,()=>this.onFetchError(),l=>["rbd/trash/remove","rbd/trash/restore"].includes(l.name),(l,n)=>new c.a(l.pool_name,l.namespace,l.id).toString()===n.metadata.image_id_spec,void 0)}prepareResponse(l){let n=[];const e={};l.forEach(l=>{t.isUndefined(e[l.status])&&(e[l.status]=[]),e[l.status].push(l.pool_name),n=n.concat(l.value),this.disablePurgeBtn=!n.length});const i=[];return t.forEach(e,(l,n)=>{i.push({status:parseInt(n,10),statusFor:(l.length>1?"pools ":"pool ")+"<strong>"+l.join("</strong>, <strong>")+"</strong>"})}),this.viewCacheStatusList=i,n.forEach(l=>{l.cdIsExpired=u().isAfter(l.deferment_end_time)}),n}onFetchError(){this.table.reset(),this.viewCacheStatusList=[{status:o.a.ValueException}]}updateSelection(l){this.selection=l}restoreModal(){const l={poolName:this.selection.first().pool_name,namespace:this.selection.first().namespace,imageName:this.selection.first().name,imageId:this.selection.first().id};this.modalRef=this.modalService.show(p.a,{initialState:l})}deleteModal(){const l=this.selection.first().pool_name,n=this.selection.first().namespace,e=this.selection.first().id,t=this.selection.first().deferment_end_time,u=new c.a(l,n,e);this.modalRef=this.modalService.show(i.a,{initialState:{itemDescription:"RBD",itemNames:[u],bodyTemplate:this.deleteTpl,bodyContext:{$implicit:t},submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new d.a("rbd/trash/remove",{image_id_spec:u.toString()}),call:this.rbdService.removeTrash(u,!0)})}})}isExpired(l){return u().isAfter(l)}purgeModal(){this.modalService.show(m.a)}}},cxJu:function(l,n,e){"use strict";e.d(n,"a",(function(){return r}));var t=e("quSY"),u=(e("XED3"),e("oxzT")),i=e("vCyI"),s=(e("aexS"),e("SuaG")),a=e("+26A"),o=e("puGn");class r{constructor(l,n,e,s){this.authStorageService=l,this.rbdMirroringService=n,this.modalService=e,this.i18n=s,this.selection=new i.a,this.peersExist=!0,this.subs=new t.a,this.permission=this.authStorageService.getPermissions().rbdMirroring;const a={permission:"update",icon:u.a.edit,click:()=>this.editSiteNameModal(),name:this.i18n("Edit Site Name"),canBePrimary:()=>!0,disable:()=>!1},o={permission:"update",icon:u.a.upload,click:()=>this.createBootstrapModal(),name:this.i18n("Create Bootstrap Token"),disable:()=>!1},r={permission:"update",icon:u.a.download,click:()=>this.importBootstrapModal(),name:this.i18n("Import Bootstrap Token"),disable:()=>this.peersExist};this.tableActions=[a,o,r]}ngOnInit(){this.subs.add(this.rbdMirroringService.startPolling()),this.subs.add(this.rbdMirroringService.subscribeSummary(l=>{this.status=l.content_data.status,this.siteName=l.site_name,this.peersExist=!!l.content_data.pools.find(l=>l.peer_uuids.length>0)}))}ngOnDestroy(){this.subs.unsubscribe()}editSiteNameModal(){this.modalRef=this.modalService.show(o.a,{initialState:{siteName:this.siteName}})}createBootstrapModal(){this.modalRef=this.modalService.show(s.a,{initialState:{siteName:this.siteName}})}importBootstrapModal(){this.modalRef=this.modalService.show(a.a,{initialState:{siteName:this.siteName}})}}},daK0:function(l,n,e){"use strict";e.d(n,"a",(function(){return o}));var t=e("s7LF"),u=e("XNiG"),i=(e("Ekvf"),e("F83c"),e("mtw6")),s=e("QFaf"),a=e("kvvV");e("aexS"),e("9nlD");class o{constructor(l,n,e,t,u,i){this.modalRef=l,this.authStorageService=n,this.notificationService=e,this.poolService=t,this.rbdService=u,this.i18n=i,this.pools=null,this.editing=!1,this.poolPermission=this.authStorageService.getPermissions().pool,this.createForm()}createForm(){this.namespaceForm=new s.a({pool:new t.i(""),namespace:new t.i("")},this.validator(),this.asyncValidator())}validator(){return l=>{const n=l.get("pool"),e=l.get("namespace");let t=null;n.value||(t={required:!0}),n.setErrors(t);let u=null;return e.value||(u={required:!0}),e.setErrors(u),null}}asyncValidator(){return l=>new Promise(n=>{const e=l.get("pool"),t=l.get("namespace");this.rbdService.listNamespaces(e.value).subscribe(l=>{if(l.some(l=>l.namespace===t.value)){const l={namespaceExists:!0};t.setErrors(l),n(l)}else n(null)})})}ngOnInit(){this.onSubmit=new u.a,this.poolPermission.read&&this.poolService.list(["pool_name","type","application_metadata"]).then(l=>{const n=[];for(const e of l)this.rbdService.isRBDPool(e)&&"replicated"===e.type&&n.push(e);if(this.pools=n,1===this.pools.length){const l=this.pools[0].pool_name;this.namespaceForm.get("pool").setValue(l)}})}submit(){const l=this.namespaceForm.getValue("pool"),n=this.namespaceForm.getValue("namespace"),e=new a.a;e.name="rbd/namespace/create",e.metadata={pool:l,namespace:n},this.rbdService.createNamespace(l,n).toPromise().then(()=>{this.notificationService.show(i.a.success,this.i18n("Created namespace '{{pool}}/{{namespace}}'",{pool:l,namespace:n})),this.modalRef.hide(),this.onSubmit.next()}).catch(()=>{this.namespaceForm.setErrors({cdSubmitButton:!0})})}}},"e/kN":function(l,n,e){"use strict";e.d(n,"a",(function(){return c}));var t=e("LvDl"),u=(e("my5R"),e("+fVR")),i=e("0+/T"),s=(e("sne2"),e("uIqm"),e("x38r")),a=e("oxzT"),o=e("vCyI"),r=e("kvvV"),d=(e("FFMq"),e("G1/K"),e("aexS"),e("VTlA"),e("kn/O"),e("Sofw"));class c extends u.a{constructor(l,n,e,t,u,i,s,r,d){super(),this.authStorageService=l,this.i18n=n,this.iscsiService=e,this.joinPipe=t,this.taskListService=u,this.notAvailablePipe=i,this.modalService=s,this.taskWrapper=r,this.actionLabels=d,this.available=void 0,this.selection=new o.a,this.targets=[],this.icons=a.a,this.builders={"iscsi/target/create":l=>({target_iqn:l.target_iqn})},this.permission=this.authStorageService.getPermissions().iscsi,this.tableActions=[{permission:"create",icon:a.a.add,routerLink:()=>"/block/iscsi/targets/create",name:this.actionLabels.CREATE},{permission:"update",icon:a.a.edit,routerLink:()=>"/block/iscsi/targets/edit/"+this.selection.first().target_iqn,name:this.actionLabels.EDIT,disable:()=>this.getEditDisableDesc()},{permission:"delete",icon:a.a.destroy,click:()=>this.deleteIscsiTargetModal(),name:this.actionLabels.DELETE,disable:()=>this.getDeleteDisableDesc()}]}ngOnInit(){this.columns=[{name:this.i18n("Target"),prop:"target_iqn",flexGrow:2,cellTransformation:s.a.executing},{name:this.i18n("Portals"),prop:"cdPortals",pipe:this.joinPipe,flexGrow:2},{name:this.i18n("Images"),prop:"cdImages",pipe:this.joinPipe,flexGrow:2},{name:this.i18n("# Sessions"),prop:"info.num_sessions",pipe:this.notAvailablePipe,flexGrow:1}],this.iscsiService.status().subscribe(l=>{this.available=l.available,l.available?(this.iscsiService.version().subscribe(l=>{this.cephIscsiConfigVersion=l.ceph_iscsi_config_version,this.taskListService.init(()=>this.iscsiService.listTargets(),l=>this.prepareResponse(l),l=>this.targets=l,()=>this.onFetchError(),this.taskFilter,this.itemFilter,this.builders)}),this.iscsiService.settings().subscribe(l=>{this.settings=l})):this.status=l.message})}ngOnDestroy(){this.summaryDataSubscription&&this.summaryDataSubscription.unsubscribe()}getEditDisableDesc(){const l=this.selection.first();return l&&l.cdExecuting?l.cdExecuting:l&&t.isUndefined(l.info)?this.i18n("Unavailable gateway(s)"):!l}getDeleteDisableDesc(){const l=this.selection.first();return l&&l.cdExecuting?l.cdExecuting:l&&t.isUndefined(l.info)?this.i18n("Unavailable gateway(s)"):l&&l.info&&l.info.num_sessions?this.i18n("Target has active sessions"):!l}prepareResponse(l){return l.forEach(l=>{l.cdPortals=l.portals.map(l=>`${l.host}:${l.ip}`),l.cdImages=l.disks.map(l=>`${l.pool}/${l.image}`)}),l}onFetchError(){this.table.reset()}itemFilter(l,n){return l.target_iqn===n.metadata.target_iqn}taskFilter(l){return["iscsi/target/create","iscsi/target/edit","iscsi/target/delete"].includes(l.name)}updateSelection(l){this.selection=l}deleteIscsiTargetModal(){const l=this.selection.first().target_iqn;this.modalRef=this.modalService.show(i.a,{initialState:{itemDescription:this.i18n("iSCSI target"),itemNames:[l],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new r.a("iscsi/target/delete",{target_iqn:l}),call:this.iscsiService.deleteTarget(l)})}})}configureDiscoveryAuth(){this.modalService.show(d.a,{})}}},eF8U:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("ANnk"),s=e("f/UV"),a=e("aexS"),o=e("+gVj"),r=e("SVse"),d=e("mXUL");e("jMP8"),e.d(n,"a",(function(){return c})),e.d(n,"b",(function(){return S}));var c=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function m(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function p(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,12,"select",[["class","form-control custom-select"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,1).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](8,0,null,null,2,"option",[],null,null,null,null,null)),t["ɵdid"](9,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](10,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,m)),t["ɵdid"](12,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.setting),l(n,7,0,e.setting),l(n,9,0,null),l(n,10,0,null),l(n,12,0,e.limits.values)}),(function(l,n){var e=n.component;l(n,0,1,[t["ɵinlineInterpolate"](1,"",e.setting,""),t["ɵinlineInterpolate"](1,"",e.setting,""),t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass])}))}function h(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,8,"input",[["class","form-control"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,1)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,1)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,1)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,2).onChange(e.target.value)&&u),"input"===n&&(u=!1!==t["ɵnov"](l,2).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,2).onTouched()&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵdid"](2,16384,null,0,u.w,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l,n){return[l,n]}),[u.e,u.w]),t["ɵdid"](4,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](6,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](7,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](8,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0,e.setting),l(n,8,0,e.setting)}),(function(l,n){l(n,0,0,t["ɵnov"](n,6).ngClassUntouched,t["ɵnov"](n,6).ngClassTouched,t["ɵnov"](n,6).ngClassPristine,t["ɵnov"](n,6).ngClassDirty,t["ɵnov"](n,6).ngClassValid,t["ɵnov"](n,6).ngClassInvalid,t["ɵnov"](n,6).ngClassPending,t["ɵnov"](n,8).validClass,t["ɵnov"](n,8).invalidClass)}))}function g(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,1)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,1)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,1)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.setting),l(n,7,0,e.setting)}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function f(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,25,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),t["ɵeld"](2,0,null,null,11,"div",[["class","custom-control custom-radio custom-control-inline"]],null,null,null,null,null)),(l()(),t["ɵeld"](3,0,null,null,8,"input",[["class","custom-control-input"],["type","radio"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,4)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,4).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,4)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,4)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,5).onChange()&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,5).onTouched()&&u),u}),null,null)),t["ɵdid"](4,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵdid"](5,212992,null,0,u.x,[t.Renderer2,t.ElementRef,u.D,t.Injector],{formControlName:[0,"formControlName"],value:[1,"value"]},null),t["ɵprd"](1024,null,u.p,(function(l,n){return[l,n]}),[u.e,u.x]),t["ɵdid"](7,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](9,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](10,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](11,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](12,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](-1,null,["Yes"])),(l()(),t["ɵeld"](14,0,null,null,11,"div",[["class","custom-control custom-radio custom-control-inline"]],null,null,null,null,null)),(l()(),t["ɵeld"](15,0,null,null,8,"input",[["class","custom-control-input"],["type","radio"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,16)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,16).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,16)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,16)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,17).onChange()&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,17).onTouched()&&u),u}),null,null)),t["ɵdid"](16,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵdid"](17,212992,null,0,u.x,[t.Renderer2,t.ElementRef,u.D,t.Injector],{formControlName:[0,"formControlName"],value:[1,"value"]},null),t["ɵprd"](1024,null,u.p,(function(l,n){return[l,n]}),[u.e,u.x]),t["ɵdid"](19,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](21,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](22,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](23,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](24,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](-1,null,["No"]))],(function(l,n){var e=n.component;l(n,5,0,e.setting,!0),l(n,7,0,e.setting),l(n,11,0,e.setting),l(n,17,0,e.setting,!1),l(n,19,0,e.setting),l(n,23,0,e.setting)}),(function(l,n){var e=n.component;l(n,3,0,e.setting+"True",t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending,t["ɵnov"](n,11).validClass,t["ɵnov"](n,11).invalidClass),l(n,12,0,e.setting+"True"),l(n,15,0,e.setting+"False",t["ɵnov"](n,21).ngClassUntouched,t["ɵnov"](n,21).ngClassTouched,t["ɵnov"](n,21).ngClassPristine,t["ɵnov"](n,21).ngClassDirty,t["ɵnov"](n,21).ngClassValid,t["ɵnov"](n,21).ngClassInvalid,t["ɵnov"](n,21).ngClassPending,t["ɵnov"](n,23).validClass,t["ɵnov"](n,23).invalidClass),l(n,24,0,e.setting+"False")}))}function v(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,6,"span",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,h)),t["ɵdid"](2,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,g)),t["ɵdid"](4,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,f)),t["ɵdid"](6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,2,0,"int"===e.limits.type),l(n,4,0,"str"===e.limits.type),l(n,6,0,"bool"===e.limits.type)}),null)}function b(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](2,null,["Must be greater than or equal to ","."]))],null,(function(l,n){l(n,2,0,n.component.limits.min)}))}function C(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](2,null,["Must be less than or equal to ","."]))],null,(function(l,n){l(n,2,0,n.component.limits.max)}))}function S(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,17,"div",[["class","form-group"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,1).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,1).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,4).onSubmit()&&u),u}),d.b,d.a)),t["ɵdid"](1,540672,null,0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](3,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](4,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),t["ɵdid"](5,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](8,0,null,0,1,"label",[["class","col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](9,null,["",""])),(l()(),t["ɵand"](16777216,null,0,1,null,p)),t["ɵdid"](11,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,v)),t["ɵdid"](13,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,b)),t["ɵdid"](15,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,C)),t["ɵdid"](17,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.settingsForm),l(n,4,0,e.settingsForm),l(n,5,0),l(n,11,0,"enum"===e.limits.type),l(n,13,0,"enum"!==e.limits.type),l(n,15,0,e.settingsForm.showError(e.setting,e.formDir,"min")),l(n,17,0,e.settingsForm.showError(e.setting,e.formDir,"max"))}),(function(l,n){var e=n.component;l(n,0,0,t["ɵnov"](n,3).ngClassUntouched,t["ɵnov"](n,3).ngClassTouched,t["ɵnov"](n,3).ngClassPristine,t["ɵnov"](n,3).ngClassDirty,t["ɵnov"](n,3).ngClassValid,t["ɵnov"](n,3).ngClassInvalid,t["ɵnov"](n,3).ngClassPending,t["ɵnov"](n,5).hasErrors,t["ɵnov"](n,5).hasSuccess),l(n,8,0,t["ɵinlineInterpolate"](1,"",e.setting,"")),l(n,9,0,e.setting)}))}},gr3l:function(l,n,e){"use strict";e.d(n,"a",(function(){return h}));var t=e("s7LF"),u=e("LvDl"),i=e("cp0P"),s=(e("my5R"),e("F83c"),e("DNAf")),a=e("a96k"),o=(e("sne2"),e("oxzT")),r=e("QFaf"),d=e("1Ni5"),c=e("kvvV"),m=(e("kn/O"),e("Z4cD")),p=e("a6qe");class h{constructor(l,n,e,t,u,i,a,r){this.iscsiService=l,this.modalService=n,this.rbdService=e,this.router=t,this.route=u,this.i18n=i,this.taskWrapper=a,this.actionLabels=r,this.api_version=0,this.minimum_gateways=1,this.icons=o.a,this.isEdit=!1,this.portalsSelections=[],this.imagesInitiatorSelections=[],this.groupDiskSelections=[],this.groupMembersSelections=[],this.imagesSettings={},this.messages={portals:new s.a({noOptions:this.i18n("There are no portals available.")},this.i18n),images:new s.a({noOptions:this.i18n("There are no images available.")},this.i18n),initiatorImage:new s.a({noOptions:this.i18n("There are no images available. Please make sure you add an image to the target.")},this.i18n),groupInitiator:new s.a({noOptions:this.i18n("There are no initiators available. Please make sure you add an initiator to the target.")},this.i18n)},this.IQN_REGEX=/^iqn\.(19|20)\d\d-(0[1-9]|1[0-2])\.\D{2,3}(\.[A-Za-z0-9-]+)+(:[A-Za-z0-9-\.]+)*$/,this.USER_REGEX=/^[\w\.:@_-]{8,64}$/,this.PASSWORD_REGEX=/^[\w@\-_\/]{12,16}$/,this.resource=this.i18n("target")}ngOnInit(){const l=[this.iscsiService.listTargets(),this.rbdService.list(),this.iscsiService.portals(),this.iscsiService.settings(),this.iscsiService.version()];this.router.url.startsWith("/block/iscsi/targets/edit")&&(this.isEdit=!0,this.route.params.subscribe(n=>{this.target_iqn=decodeURIComponent(n.target_iqn),l.push(this.iscsiService.getTarget(this.target_iqn))})),this.action=this.isEdit?this.actionLabels.EDIT:this.actionLabels.CREATE,Object(i.a)(l).subscribe(l=>{const n=u(l[0]).filter(l=>l.target_iqn!==this.target_iqn).flatMap(l=>l.disks).map(l=>`${l.pool}/${l.image}`).value();"api_version"in l[3]&&(this.api_version=l[3].api_version),this.minimum_gateways=l[3].config.minimum_gateways,this.target_default_controls=l[3].target_default_controls,this.target_controls_limits=l[3].target_controls_limits,this.disk_default_controls=l[3].disk_default_controls,this.disk_controls_limits=l[3].disk_controls_limits,this.backstores=l[3].backstores,this.default_backstore=l[3].default_backstore,this.unsupported_rbd_features=l[3].unsupported_rbd_features,this.required_rbd_features=l[3].required_rbd_features,this.imagesAll=u(l[1]).flatMap(l=>l.value).filter(l=>!l.namespace&&-1===n.indexOf(`${l.pool_name}/${l.name}`)&&0!==this.getValidBackstores(l).length).value(),this.imagesSelections=this.imagesAll.map(l=>new a.a(!1,`${l.pool_name}/${l.name}`,""));const e=[];l[2].forEach(l=>{l.ip_addresses.forEach(n=>{e.push(new a.a(!1,l.name+":"+n,""))})}),this.portalsSelections=[...e],this.cephIscsiConfigVersion=l[4].ceph_iscsi_config_version,this.createForm(),l[5]&&this.resolveModel(l[5])})}createForm(){if(this.targetForm=new r.a({target_iqn:new t.i("iqn.2001-07.com.ceph:"+Date.now(),{validators:[t.B.required,t.B.pattern(this.IQN_REGEX)]}),target_controls:new t.i({}),portals:new t.i([],{validators:[d.a.custom("minGateways",l=>u.uniq(l.map(l=>l.split(":")[0])).length<Math.max(1,this.minimum_gateways))]}),disks:new t.i([],{validators:[d.a.custom("dupLunId",l=>{const n=this.getLunIds(l);return n.length!==u.uniq(n).length}),d.a.custom("dupWwn",l=>{const n=this.getWwns(l);return n.length!==u.uniq(n).length})]}),initiators:new t.f([]),groups:new t.f([]),acl_enabled:new t.i(!1)}),this.cephIscsiConfigVersion>10){const l=new r.a({user:new t.i(""),password:new t.i(""),mutual_user:new t.i(""),mutual_password:new t.i("")});this.setAuthValidator(l),this.targetForm.addControl("auth",l)}}resolveModel(l){this.targetForm.patchValue({target_iqn:l.target_iqn,target_controls:l.target_controls,acl_enabled:l.acl_enabled}),this.cephIscsiConfigVersion>10&&this.targetForm.patchValue({auth:l.auth});const n=[];u.forEach(l.portals,l=>{n.push(`${l.host}:${l.ip}`)}),this.targetForm.patchValue({portals:n});const e=[];u.forEach(l.disks,l=>{const n=`${l.pool}/${l.image}`;e.push(n),this.imagesSettings[n]={backstore:l.backstore},this.imagesSettings[n][l.backstore]=l.controls,"lun"in l&&(this.imagesSettings[n].lun=l.lun),"wwn"in l&&(this.imagesSettings[n].wwn=l.wwn),this.onImageSelection({option:{name:n,selected:!0}})}),this.targetForm.patchValue({disks:e}),u.forEach(l.clients,l=>{const n=this.addInitiator();l.luns=u.map(l.luns,l=>`${l.pool}/${l.image}`),n.patchValue(l)}),u.forEach(l.groups,l=>{const n=this.addGroup();l.disks=u.map(l.disks,l=>`${l.pool}/${l.image}`),n.patchValue(l),u.forEach(l.members,l=>{this.onGroupMemberSelection({option:new a.a(!0,l,"")})})})}hasAdvancedSettings(l){return Object.values(l).length>0}get portals(){return this.targetForm.get("portals")}onPortalSelection(){this.portals.setValue(this.portals.value)}removePortal(l,n){return this.portalsSelections.forEach(l=>{l.name===n&&(l.selected=!1)}),this.portals.value.splice(l,1),this.portals.setValue(this.portals.value),!1}get disks(){return this.targetForm.get("disks")}removeImage(l,n){return this.imagesSelections.forEach(l=>{l.name===n&&(l.selected=!1)}),this.disks.value.splice(l,1),this.removeImageRefs(n),this.targetForm.get("disks").updateValueAndValidity({emitEvent:!1}),!1}removeImageRefs(l){this.initiators.controls.forEach(n=>{const e=n.value.luns.filter(n=>n!==l);n.get("luns").setValue(e)}),this.groups.controls.forEach(n=>{const e=n.value.disks.filter(n=>n!==l);n.get("disks").setValue(e)}),u.forEach(this.imagesInitiatorSelections,(n,e)=>{this.imagesInitiatorSelections[e]=n.filter(n=>n.name!==l)}),u.forEach(this.groupDiskSelections,(n,e)=>{this.groupDiskSelections[e]=n.filter(n=>n.name!==l)})}getDefaultBackstore(l){let n=this.default_backstore;const e=this.getImageById(l);return this.validFeatures(e,this.default_backstore)||this.backstores.forEach(l=>{l!==this.default_backstore&&this.validFeatures(e,l)&&(n=l)}),n}isLunIdInUse(l,n){const e=this.disks.value.filter(l=>l!==n);return this.getLunIds(e).includes(l)}getLunIds(l){return u.map(l,l=>this.imagesSettings[l].lun)}nextLunId(l){const n=this.disks.value.filter(n=>n!==l),e=this.getLunIds(n);let t=0;for(;e.includes(t);)t++;return t}getWwns(l){return u.map(l,l=>this.imagesSettings[l].wwn).filter(l=>u.isString(l)&&""!==l)}onImageSelection(l){const n=l.option;if(n.selected){if(this.imagesSettings[n.name])this.isLunIdInUse(this.imagesSettings[n.name].lun,n.name)&&(this.imagesSettings[n.name].lun=this.nextLunId(n.name));else{const l=this.getDefaultBackstore(n.name);this.imagesSettings[n.name]={backstore:l,lun:this.nextLunId(n.name)},this.imagesSettings[n.name][l]={}}u.forEach(this.imagesInitiatorSelections,(l,e)=>{l.push(new a.a(!1,n.name,"")),this.imagesInitiatorSelections[e]=[...l]}),u.forEach(this.groupDiskSelections,(l,e)=>{l.push(new a.a(!1,n.name,"")),this.groupDiskSelections[e]=[...l]})}else this.removeImageRefs(n.name);this.targetForm.get("disks").updateValueAndValidity({emitEvent:!1})}get initiators(){return this.targetForm.get("initiators")}addInitiator(){const l=new r.a({client_iqn:new t.i("",{validators:[t.B.required,d.a.custom("notUnique",l=>{const n=this.initiators.controls.reduce((function(l,n){return l.concat(n.value.client_iqn)}),[]);return n.indexOf(l)!==n.lastIndexOf(l)}),t.B.pattern(this.IQN_REGEX)]}),auth:new r.a({user:new t.i(""),password:new t.i(""),mutual_user:new t.i(""),mutual_password:new t.i("")}),luns:new t.i([]),cdIsInGroup:new t.i(!1)});this.setAuthValidator(l),this.initiators.push(l),u.forEach(this.groupMembersSelections,(l,n)=>{l.push(new a.a(!1,"","")),this.groupMembersSelections[n]=[...l]});const n=u.map(this.targetForm.getValue("disks"),l=>new a.a(!1,l,""));return this.imagesInitiatorSelections.push(n),l}setAuthValidator(l){d.a.validateIf(l.get("user"),()=>l.getValue("password")||l.getValue("mutual_user")||l.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.USER_REGEX)],[l.get("password"),l.get("mutual_user"),l.get("mutual_password")]),d.a.validateIf(l.get("password"),()=>l.getValue("user")||l.getValue("mutual_user")||l.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.PASSWORD_REGEX)],[l.get("user"),l.get("mutual_user"),l.get("mutual_password")]),d.a.validateIf(l.get("mutual_user"),()=>l.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.USER_REGEX)],[l.get("user"),l.get("password"),l.get("mutual_password")]),d.a.validateIf(l.get("mutual_password"),()=>l.getValue("mutual_user"),[t.B.required],[t.B.pattern(this.PASSWORD_REGEX)],[l.get("user"),l.get("password"),l.get("mutual_user")])}removeInitiator(l){const n=this.initiators.value[l];this.initiators.removeAt(l),u.forEach(this.groupMembersSelections,(n,e)=>{n.splice(l,1),this.groupMembersSelections[e]=[...n]}),this.groups.controls.forEach(l=>{const e=l.value.members.filter(l=>l!==n.client_iqn);l.get("members").setValue(e)}),this.imagesInitiatorSelections.splice(l,1)}updatedInitiatorSelector(){this.initiators.controls.forEach(l=>{l.get("client_iqn").updateValueAndValidity({emitEvent:!1})}),u.forEach(this.groupMembersSelections,(l,n)=>{u.forEach(l,(l,n)=>{const e=l.name;l.name=this.initiators.controls[n].value.client_iqn,this.groups.controls.forEach(n=>{const t=n.value.members,u=t.indexOf(e);-1!==u&&(t[u]=l.name),n.get("members").setValue(t)})}),this.groupMembersSelections[n]=[...this.groupMembersSelections[n]]})}removeInitiatorImage(l,n,e,t){const u=l.getValue("luns");return u.splice(n,1),l.patchValue({luns:u}),this.imagesInitiatorSelections[e].forEach(l=>{l.name===t&&(l.selected=!1)}),!1}get groups(){return this.targetForm.get("groups")}addGroup(){const l=new r.a({group_id:new t.i("",{validators:[t.B.required]}),members:new t.i([]),disks:new t.i([])});this.groups.push(l);const n=u.map(this.targetForm.getValue("disks"),l=>new a.a(!1,l,""));this.groupDiskSelections.push(n);const e=u.map(this.initiators.value,l=>new a.a(!1,l.client_iqn,"",!l.cdIsInGroup));return this.groupMembersSelections.push(e),l}removeGroup(l){this.groups.removeAt(l),this.groupDiskSelections.splice(l,1)}onGroupMemberSelection(l){const n=l.option;let e;this.initiators.controls.forEach((l,t)=>{l.value.client_iqn===n.name&&(l.patchValue({luns:[]}),l.get("cdIsInGroup").setValue(n.selected),e=t)}),u.forEach(this.groupMembersSelections,l=>{l[e].enabled=!n.selected})}removeGroupInitiator(l,n,e){const t=l.getValue("members")[n];l.getValue("members").splice(n,1),this.groupMembersSelections[e].forEach(l=>{l.name===t&&(l.selected=!1)}),this.groupMembersSelections[e]=[...this.groupMembersSelections[e]],this.onGroupMemberSelection({option:new a.a(!1,t,"")})}removeGroupDisk(l,n,e){const t=l.getValue("disks")[n];l.getValue("disks").splice(n,1),this.groupDiskSelections[e].forEach(l=>{l.name===t&&(l.selected=!1)}),this.groupDiskSelections[e]=[...this.groupDiskSelections[e]]}submit(){const l=u.cloneDeep(this.targetForm.value),n={target_iqn:this.targetForm.getValue("target_iqn"),target_controls:this.targetForm.getValue("target_controls"),acl_enabled:this.targetForm.getValue("acl_enabled"),portals:[],disks:[],clients:[],groups:[]};if(this.cephIscsiConfigVersion>10){const l=this.targetForm.get("auth");l.getValue("user")||l.get("user").setValue(""),l.getValue("password")||l.get("password").setValue(""),l.getValue("mutual_user")||l.get("mutual_user").setValue(""),l.getValue("mutual_password")||l.get("mutual_password").setValue("");const e=this.targetForm.getValue("acl_enabled");n.auth={user:e?"":l.getValue("user"),password:e?"":l.getValue("password"),mutual_user:e?"":l.getValue("mutual_user"),mutual_password:e?"":l.getValue("mutual_password")}}let e;l.disks.forEach(l=>{const e=l.split("/"),t=this.imagesSettings[l].backstore;n.disks.push({pool:e[0],image:e[1],backstore:t,controls:this.imagesSettings[l][t],lun:this.imagesSettings[l].lun,wwn:this.imagesSettings[l].wwn})}),l.portals.forEach(l=>{const e=l.indexOf(":");n.portals.push({host:l.substring(0,e),ip:l.substring(e+1)})}),n.acl_enabled&&(l.initiators.forEach(l=>{l.auth.user||(l.auth.user=""),l.auth.password||(l.auth.password=""),l.auth.mutual_user||(l.auth.mutual_user=""),l.auth.mutual_password||(l.auth.mutual_password=""),delete l.cdIsInGroup;const n=[];l.luns.forEach(l=>{const e=l.split("/");n.push({pool:e[0],image:e[1]})}),l.luns=n}),n.clients=l.initiators),n.acl_enabled&&(l.groups.forEach(l=>{const n=[];l.disks.forEach(l=>{const e=l.split("/");n.push({pool:e[0],image:e[1]})}),l.disks=n}),n.groups=l.groups),this.isEdit?(n.new_target_iqn=n.target_iqn,n.target_iqn=this.target_iqn,e=this.taskWrapper.wrapTaskAroundCall({task:new c.a("iscsi/target/edit",{target_iqn:n.target_iqn}),call:this.iscsiService.updateTarget(this.target_iqn,n)})):e=this.taskWrapper.wrapTaskAroundCall({task:new c.a("iscsi/target/create",{target_iqn:n.target_iqn}),call:this.iscsiService.createTarget(n)}),e.subscribe(void 0,()=>{this.targetForm.setErrors({cdSubmitButton:!0})},()=>this.router.navigate(["/block/iscsi/targets"]))}targetSettingsModal(){const l={target_controls:this.targetForm.get("target_controls"),target_default_controls:this.target_default_controls,target_controls_limits:this.target_controls_limits};this.modalRef=this.modalService.show(p.a,{initialState:l})}imageSettingsModal(l){const n={imagesSettings:this.imagesSettings,image:l,api_version:this.api_version,disk_default_controls:this.disk_default_controls,disk_controls_limits:this.disk_controls_limits,backstores:this.getValidBackstores(this.getImageById(l)),control:this.targetForm.get("disks")};this.modalRef=this.modalService.show(m.a,{initialState:n})}validFeatures(l,n){const e=l.features,t=this.required_rbd_features[n];return(e&t)===t&&0==(e&this.unsupported_rbd_features[n])}getImageById(l){return this.imagesAll.find(n=>l===`${n.pool_name}/${n.name}`)}getValidBackstores(l){return this.backstores.filter(n=>this.validFeatures(l,n))}}},jMP8:function(l,n,e){"use strict";e.d(n,"a",(function(){return u}));var t=e("s7LF");e("QFaf");class u{ngOnInit(){const l=[];"min"in this.limits&&l.push(t.B.min(this.limits.min)),"max"in this.limits&&l.push(t.B.max(this.limits.max)),this.settingsForm.get(this.setting).setValidators(l)}}},"k/xb":function(l,n,e){"use strict";e.d(n,"a",(function(){return u})),e.d(n,"b",(function(){return S})),e.d(n,"c",(function(){return i})),e.d(n,"d",(function(){return s})),e.d(n,"j",(function(){return a})),e.d(n,"k",(function(){return o})),e.d(n,"l",(function(){return r})),e.d(n,"m",(function(){return d})),e.d(n,"n",(function(){return c})),e.d(n,"o",(function(){return m})),e.d(n,"p",(function(){return p})),e.d(n,"q",(function(){return h})),e.d(n,"e",(function(){return g})),e.d(n,"f",(function(){return f})),e.d(n,"g",(function(){return v})),e.d(n,"h",(function(){return b})),e.d(n,"i",(function(){return C}));var t=e("sne2");e("Vhfg"),e("gr3l"),e("e/kN"),e("roDX"),e("cxJu"),e("MyVl"),e("5GyT"),e("Z5tW"),e("WkyA"),e("chpi");class u{}const i={breadcrumbs:"Images"},s={breadcrumbs:"Namespaces"},a={breadcrumbs:"Trash"},o={breadcrumbs:"Overall Performance"},r={breadcrumbs:t.a.CREATE},d={breadcrumbs:t.a.EDIT},c={breadcrumbs:t.a.CLONE},m={breadcrumbs:t.a.COPY},p={breadcrumbs:t.a.COPY},h={breadcrumbs:"Mirroring"},g={breadcrumbs:"iSCSI"},f={breadcrumbs:"Overview"},v={breadcrumbs:"Targets"},b={breadcrumbs:t.a.CREATE},C={breadcrumbs:t.a.EDIT};class S{}},kccj:function(l,n,e){"use strict";e.d(n,"a",(function(){return t}));class t{}},l7Jr:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("mXUL"),i=e("+gVj"),s=e("eF8U"),a=e("jMP8"),o=e("EEJc"),r=e("ajRT"),d=e("s7LF"),c=e("SVse"),m=e("gp3X"),p=e("sb0X"),h=e("KVJa"),g=e("Z21x"),f=e("sne2"),v=e("a6qe"),b=e("LqlI"),C=e("my5R");e.d(n,"a",(function(){return y}));var S=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function R(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,6,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](1,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](4,0,null,0,2,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,1,"cd-iscsi-setting",[],null,null,null,s.b,s.a)),t["ɵdid"](6,114688,null,0,a.a,[],{settingsForm:[0,"settingsForm"],formDir:[1,"formDir"],setting:[2,"setting"],limits:[3,"limits"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,6,0,e.settingsForm,t["ɵnov"](n.parent,7),n.context.$implicit.key,e.getTargetControlLimits(n.context.$implicit.key))}),(function(l,n){l(n,0,0,t["ɵnov"](n,1).hasErrors,t["ɵnov"](n,1).hasSuccess)}))}function _(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,23,"cd-modal",[],null,null,null,o.c,o.b)),t["ɵdid"](1,49152,null,0,r.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Advanced Settings"])),(l()(),t["ɵeld"](4,0,null,1,19,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,18,"form",[["name","settingsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,d.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,d.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,d.d,null,[d.l]),t["ɵdid"](9,16384,null,0,d.s,[[4,d.d]],null,null),t["ɵdid"](10,16384,null,0,i.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,5,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,1,"p",[["class","alert-warning"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Changing these parameters from their default values is usually not necessary."])),(l()(),t["ɵand"](16777216,null,null,2,null,R)),t["ɵdid"](15,278528,null,0,c.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),t["ɵpid"](0,c.KeyValuePipe,[t.KeyValueDiffers]),(l()(),t["ɵeld"](17,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](18,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](19,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.save()&&t),t}),m.b,m.a)),t["ɵdid"](20,114688,null,0,p.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Confirm"])),(l()(),t["ɵeld"](22,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,h.b,h.a)),t["ɵdid"](23,49152,null,0,g.a,[c.Location,f.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.settingsForm),l(n,10,0,e.settingsForm),l(n,15,0,t["ɵunv"](n,15,0,t["ɵnov"](n,16).transform(e.settingsForm.controls))),l(n,20,0,e.settingsForm),l(n,23,0,"Cancel",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending)}))}function w(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-iscsi-target-iqn-settings-modal",[],null,null,null,_,S)),t["ɵdid"](1,114688,null,0,v.a,[b.a,C.a],null,null)],(function(l,n){l(n,1,0)}),null)}var y=t["ɵccf"]("cd-iscsi-target-iqn-settings-modal",v.a,w,{},{},[])},lArG:function(l,n,e){"use strict";e.d(n,"a",(function(){return t}));class t{}},"lz+O":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("ANnk"),s=e("f/UV"),a=e("aexS"),o=e("+gVj"),r=e("SVse"),d=e("EEJc"),c=e("ajRT"),m=e("mXUL"),p=e("gp3X"),h=e("sb0X"),g=e("KVJa"),f=e("Z21x"),v=e("sne2"),b=e("WxU5"),C=e("F83c"),S=e("LqlI"),R=e("2EZI"),_=e("Ekvf"),w=e("kn/O");e.d(n,"a",(function(){return V}));var y=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","poolName"],["placeholder","Pool name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,1)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,1)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,1)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"poolName"),l(n,7,0,"poolName")}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","poolName"],["id","poolName"],["name","poolName"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,1).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](8,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),t["ɵdid"](9,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](10,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](-1,null,["All"])),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](13,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,3,0,"poolName"),l(n,7,0,"poolName"),l(n,9,0,""),l(n,10,0,""),l(n,13,0,e.pools)}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,41,"cd-modal",[],null,null,null,d.c,d.b)),t["ɵdid"](1,49152,null,0,c.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Purge Trash"])),(l()(),t["ɵeld"](4,0,null,1,37,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,36,"form",[["class","form"],["name","purgeForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,u.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](9,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](10,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,23,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,12,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To purge, select one or"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](16,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["All"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](19,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["pools and click"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](22,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Purge Trash"])),(l()(),t["ɵted"](-1,null,[".  "])),(l()(),t["ɵeld"](25,0,null,null,9,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,m.b,m.a)),t["ɵdid"](26,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](29,0,null,0,1,"label",[["class","col-form-label mx-auto"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pool:"])),(l()(),t["ɵand"](16777216,null,0,1,null,k)),t["ɵdid"](32,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,I)),t["ɵdid"](34,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](35,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](36,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](37,0,null,null,2,"cd-submit-button",[["id","purgeFormButton"]],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.purge()&&t),t}),p.b,p.a)),t["ɵdid"](38,114688,null,0,h.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Purge Trash"])),(l()(),t["ɵeld"](40,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,g.b,g.a)),t["ɵdid"](41,49152,null,0,f.a,[r.Location,v.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.purgeForm),l(n,10,0,e.purgeForm),l(n,26,0),l(n,32,0,!e.poolPermission.read),l(n,34,0,e.poolPermission.read),l(n,38,0,e.purgeForm),l(n,41,0,"Cancel",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,25,0,t["ɵnov"](n,26).hasErrors,t["ɵnov"](n,26).hasSuccess)}))}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-trash-purge-modal",[],null,null,null,N,y)),t["ɵdid"](1,114688,null,0,b.a,[a.a,C.a,S.a,R.a,_.a,w.a],null,null)],(function(l,n){l(n,1,0)}),null)}var V=t["ɵccf"]("cd-rbd-trash-purge-modal",b.a,F,{},{},[])},my5R:function(l,n,e){"use strict";e.d(n,"a",(function(){return o}));var t=e("mrSG"),u=e("IheW"),i=e("xTzq"),s=e("8Y7J"),a=e("pL04");let o=(()=>{let l=class{constructor(l){this.http=l}listTargets(){return this.http.get("api/iscsi/target")}getTarget(l){return this.http.get("api/iscsi/target/"+l)}updateTarget(l,n){return this.http.put("api/iscsi/target/"+l,n,{observe:"response"})}status(){return this.http.get("ui-api/iscsi/status")}settings(){return this.http.get("ui-api/iscsi/settings")}version(){return this.http.get("ui-api/iscsi/version")}portals(){return this.http.get("ui-api/iscsi/portals")}createTarget(l){return this.http.post("api/iscsi/target",l,{observe:"response"})}deleteTarget(l){return this.http.delete("api/iscsi/target/"+l,{observe:"response"})}getDiscovery(){return this.http.get("api/iscsi/discoveryauth")}updateDiscovery(l){return this.http.put("api/iscsi/discoveryauth",l)}overview(){return this.http.get("ui-api/iscsi/overview")}};return l.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new l(s["ɵɵinject"](u.c))},token:l,providedIn:a.a}),l=t.__decorate([i.a,t.__metadata("design:paramtypes",[u.c])],l),l})()},nP0W:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("EEJc"),s=e("ajRT"),a=e("+gVj"),o=e("mXUL"),r=e("ANnk"),d=e("f/UV"),c=e("aexS"),m=e("SVse"),p=e("gp3X"),h=e("sb0X"),g=e("KVJa"),f=e("Z21x"),v=e("sne2"),b=e("aa9H"),C=e("LqlI"),S=e("GiVz"),R=e("XED3"),_=e("kn/O");e.d(n,"a",(function(){return N}));var w=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.id),l(n,2,0,n.context.$implicit.id)}),(function(l,n){l(n,3,0,n.context.$implicit.name)}))}function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Peer clusters must be removed prior to disabling mirror."]))],null,null)}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,46,"cd-modal",[],null,null,null,i.c,i.b)),t["ɵdid"](1,49152,null,0,s.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Edit pool mirror mode"])),(l()(),t["ɵeld"](4,0,null,1,42,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,41,"form",[["class","form"],["name","editModeForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,u.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](9,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](10,16384,null,0,a.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,28,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,8,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,7,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To edit the mirror mode for pool  "])),(l()(),t["ɵeld"](15,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](16,null,["",""])),(l()(),t["ɵted"](-1,null,[", select a new mode from the list and click  "])),(l()(),t["ɵeld"](18,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Update"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](21,0,null,null,18,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,o.b,o.a)),t["ɵdid"](22,1163264,null,2,a.c,[t.ElementRef,a.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](25,0,null,0,2,"label",[["class","col-form-label"],["for","mirrorMode"]],null,null,null,null,null)),(l()(),t["ɵeld"](26,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Mode"])),(l()(),t["ɵeld"](28,0,null,0,9,"select",[["class","form-control custom-select"],["formControlName","mirrorMode"],["id","mirrorMode"],["name","mirrorMode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,30).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,30).onTouched()&&u),u}),null,null)),t["ɵdid"](29,4210688,null,0,r.a,[[2,d.a],c.a,t.ElementRef],null,null),t["ɵdid"](30,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](32,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](34,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](35,16384,null,0,a.h,[[3,u.d],a.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,y)),t["ɵdid"](37,278528,null,0,m.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,k)),t["ɵdid"](39,16384,null,0,m.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](40,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](41,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](42,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.update()&&t),t}),p.b,p.a)),t["ɵdid"](43,114688,null,0,h.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Update"])),(l()(),t["ɵeld"](45,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,g.b,g.a)),t["ɵdid"](46,49152,null,0,f.a,[m.Location,v.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.editModeForm),l(n,10,0,e.editModeForm),l(n,22,0),l(n,32,0,"mirrorMode"),l(n,35,0,"mirrorMode"),l(n,37,0,e.mirrorModes),l(n,39,0,e.editModeForm.showError("mirrorMode",t["ɵnov"](n,7),"cannotDisable")),l(n,43,0,e.editModeForm),l(n,46,0,"Cancel",e.modalRef.hide)}),(function(l,n){var e=n.component;l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,16,0,e.poolName),l(n,21,0,t["ɵnov"](n,22).hasErrors,t["ɵnov"](n,22).hasSuccess),l(n,28,0,t["ɵnov"](n,34).ngClassUntouched,t["ɵnov"](n,34).ngClassTouched,t["ɵnov"](n,34).ngClassPristine,t["ɵnov"](n,34).ngClassDirty,t["ɵnov"](n,34).ngClassValid,t["ɵnov"](n,34).ngClassInvalid,t["ɵnov"](n,34).ngClassPending,t["ɵnov"](n,35).validClass,t["ɵnov"](n,35).invalidClass)}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-pool-edit-mode-modal",[],null,null,null,E,w)),t["ɵdid"](1,245760,null,0,b.a,[C.a,S.a,R.a,_.a],null,null)],(function(l,n){l(n,1,0)}),null)}var N=t["ɵccf"]("cd-pool-edit-mode-modal",b.a,I,{},{},[])},nhAp:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("mXUL"),i=e("+gVj"),s=e("s7LF"),a=e("ANnk"),o=e("f/UV"),r=e("aexS"),d=e("SVse"),c=e("eF8U"),m=e("jMP8"),p=e("uYzU"),h=e("EEJc"),g=e("ajRT"),f=e("gp3X"),v=e("sb0X"),b=e("KVJa"),C=e("Z21x"),S=e("sne2"),R=e("Z4cD"),_=e("LqlI"),w=e("my5R");e.d(n,"a",(function(){return x}));var y=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,35,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Identifier"])),(l()(),t["ɵeld"](3,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](4,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](7,0,null,0,13,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](8,0,null,null,1,"label",[["class","col-form-label required"],["for","lun"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["lun"])),(l()(),t["ɵeld"](10,0,null,null,8,"input",[["class","form-control"],["formControlName","lun"],["id","lun"],["name","lun"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,11)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,11).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,11)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,11)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,12).onChange(e.target.value)&&u),"input"===n&&(u=!1!==t["ɵnov"](l,12).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,12).onTouched()&&u),u}),null,null)),t["ɵdid"](11,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵdid"](12,16384,null,0,s.w,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,s.p,(function(l,n){return[l,n]}),[s.e,s.w]),t["ɵdid"](14,671744,[[1,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](16,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](17,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](18,16384,null,0,i.h,[[3,s.d],i.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,k)),t["ɵdid"](20,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](21,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](22,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](25,0,null,0,10,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](26,0,null,null,1,"label",[["class","col-form-label"],["for","wwn"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["wwn"])),(l()(),t["ɵeld"](28,0,null,null,7,"input",[["class","form-control"],["formControlName","wwn"],["id","wwn"],["name","wwn"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,29)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,29).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,29)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,29)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](29,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵprd"](1024,null,s.p,(function(l){return[l]}),[s.e]),t["ɵdid"](31,671744,[[3,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](33,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](34,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](35,16384,null,0,i.h,[[3,s.d],i.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0),l(n,14,0,"lun"),l(n,18,0,"lun"),l(n,20,0,e.settingsForm.showError("lun",t["ɵnov"](n.parent,12),"required")),l(n,22,0),l(n,31,0,"wwn"),l(n,35,0,"wwn")}),(function(l,n){l(n,3,0,t["ɵnov"](n,4).hasErrors,t["ɵnov"](n,4).hasSuccess),l(n,10,0,t["ɵnov"](n,16).ngClassUntouched,t["ɵnov"](n,16).ngClassTouched,t["ɵnov"](n,16).ngClassPristine,t["ɵnov"](n,16).ngClassDirty,t["ɵnov"](n,16).ngClassValid,t["ɵnov"](n,16).ngClassInvalid,t["ɵnov"](n,16).ngClassPending,t["ɵnov"](n,18).validClass,t["ɵnov"](n,18).invalidClass),l(n,21,0,t["ɵnov"](n,22).hasErrors,t["ɵnov"](n,22).hasSuccess),l(n,28,0,t["ɵnov"](n,33).ngClassUntouched,t["ɵnov"](n,33).ngClassTouched,t["ɵnov"](n,33).ngClassPristine,t["ɵnov"](n,33).ngClassDirty,t["ɵnov"](n,33).ngClassValid,t["ɵnov"](n,33).ngClassInvalid,t["ɵnov"](n,33).ngClassPending,t["ɵnov"](n,35).validClass,t["ɵnov"](n,35).invalidClass)}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,s.v,[t.ElementRef,t.Renderer2,[2,s.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,s.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""])),t["ɵppd"](4,1)],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){var e=t["ɵunv"](n,3,0,l(n,4,0,t["ɵnov"](n.parent,0),n.context.$implicit));l(n,3,0,e)}))}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,6,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](1,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,7,{FormControlNames:1}),t["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),t["ɵeld"](4,0,null,0,2,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,1,"cd-iscsi-setting",[],null,null,null,c.b,c.a)),t["ɵdid"](6,114688,null,0,m.a,[],{settingsForm:[0,"settingsForm"],formDir:[1,"formDir"],setting:[2,"setting"],limits:[3,"limits"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,6,0,e.settingsForm,t["ɵnov"](n.parent.parent.parent,12),n.context.$implicit.key,e.getDiskControlLimits(n.parent.parent.context.$implicit,n.context.$implicit.key))}),(function(l,n){l(n,0,0,t["ɵnov"](n,1).hasErrors,t["ɵnov"](n,1).hasSuccess)}))}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,2,null,N)),t["ɵdid"](2,278528,null,0,d.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),t["ɵpid"](0,d.KeyValuePipe,[t.KeyValueDiffers]),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){var e=n.component;l(n,2,0,t["ɵunv"](n,2,0,t["ɵnov"](n,3).transform(e.disk_default_controls[n.parent.context.$implicit])))}),null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,F)),t["ɵdid"](2,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){l(n,2,0,n.component.settingsForm.value.backstore===n.context.$implicit)}),null)}function T(l){return t["ɵvid"](0,[t["ɵpid"](0,p.a,[]),(l()(),t["ɵeld"](1,0,null,null,47,"cd-modal",[],null,null,null,h.c,h.b)),t["ɵdid"](2,49152,null,0,g.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](3,0,null,0,5,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](4,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Configure"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](7,0,null,null,1,"small",[],null,null,null,null,null)),(l()(),t["ɵted"](8,null,["",""])),(l()(),t["ɵeld"](9,0,null,1,39,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](10,0,null,null,38,"form",[["class","form"],["name","settingsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,12).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,12).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,15).onSubmit()&&u),u}),null,null)),t["ɵdid"](11,16384,null,0,s.G,[],null,null),t["ɵdid"](12,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,s.d,null,[s.l]),t["ɵdid"](14,16384,null,0,s.s,[[4,s.d]],null,null),t["ɵdid"](15,16384,null,0,i.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](16,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](17,0,null,null,1,"p",[["class","alert-warning"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Changing these parameters from their default values is usually not necessary."])),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](20,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](21,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Settings"])),(l()(),t["ɵeld"](23,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](24,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](27,0,null,0,12,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](28,0,null,null,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Backstore"])),(l()(),t["ɵeld"](30,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","backstore"],["id","backstore"],["name","backstore"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,31).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,31).onTouched()&&u),u}),null,null)),t["ɵdid"](31,16384,null,0,s.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,s.p,(function(l){return[l]}),[s.A]),t["ɵdid"](33,671744,[[5,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](35,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](36,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](37,16384,null,0,i.h,[[3,s.d],i.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](39,278528,null,0,d.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,V)),t["ɵdid"](41,278528,null,0,d.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵeld"](42,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](43,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](44,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.save()&&t),t}),f.b,f.a)),t["ɵdid"](45,114688,null,0,v.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Confirm"])),(l()(),t["ɵeld"](47,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,b.b,b.a)),t["ɵdid"](48,49152,null,0,C.a,[d.Location,S.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,2,0,e.modalRef),l(n,12,0,e.settingsForm),l(n,15,0,e.settingsForm),l(n,20,0,e.api_version>=1),l(n,24,0),l(n,33,0,"backstore"),l(n,37,0,"backstore"),l(n,39,0,e.backstores),l(n,41,0,e.backstores),l(n,45,0,e.settingsForm),l(n,48,0,"Cancel",e.modalRef.hide)}),(function(l,n){l(n,8,0,n.component.image),l(n,10,0,t["ɵnov"](n,14).ngClassUntouched,t["ɵnov"](n,14).ngClassTouched,t["ɵnov"](n,14).ngClassPristine,t["ɵnov"](n,14).ngClassDirty,t["ɵnov"](n,14).ngClassValid,t["ɵnov"](n,14).ngClassInvalid,t["ɵnov"](n,14).ngClassPending),l(n,23,0,t["ɵnov"](n,24).hasErrors,t["ɵnov"](n,24).hasSuccess),l(n,30,0,t["ɵnov"](n,35).ngClassUntouched,t["ɵnov"](n,35).ngClassTouched,t["ɵnov"](n,35).ngClassPristine,t["ɵnov"](n,35).ngClassDirty,t["ɵnov"](n,35).ngClassValid,t["ɵnov"](n,35).ngClassInvalid,t["ɵnov"](n,35).ngClassPending,t["ɵnov"](n,37).validClass,t["ɵnov"](n,37).invalidClass)}))}function D(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-iscsi-target-image-settings-modal",[],null,null,null,T,y)),t["ɵdid"](1,114688,null,0,R.a,[_.a,w.a],null,null)],(function(l,n){l(n,1,0)}),null)}var x=t["ɵccf"]("cd-iscsi-target-image-settings-modal",R.a,D,{},{},[])},puGn:function(l,n,e){"use strict";e.d(n,"a",(function(){return s}));var t=e("s7LF"),u=(e("XED3"),e("QFaf")),i=e("kvvV");e("kn/O");class s{constructor(l,n,e){this.modalRef=l,this.rbdMirroringService=n,this.taskWrapper=e,this.createForm()}createForm(){this.editSiteNameForm=new u.a({siteName:new t.i("",{})})}ngOnInit(){this.editSiteNameForm.get("siteName").setValue(this.siteName),this.rbdMirroringService.getSiteName().subscribe(l=>{this.editSiteNameForm.get("siteName").setValue(l.site_name)})}update(){this.taskWrapper.wrapTaskAroundCall({task:new i.a("rbd/mirroring/site_name/edit",{}),call:this.rbdMirroringService.setSiteName(this.editSiteNameForm.getValue("siteName"))}).subscribe(void 0,()=>this.editSiteNameForm.setErrors({cdSubmitButton:!0}),()=>{this.rbdMirroringService.refresh(),this.modalRef.hide()})}}},rFfW:function(l,n,e){"use strict";e.d(n,"a",(function(){return o}));var t=e("8Y7J"),u=e("s7LF"),i=e("oxzT"),s=e("QFaf"),a=e("PhyI");e("aXbf"),e("o8EM");class o{constructor(l,n){this.formatterService=l,this.rbdConfigurationService=n,this.changes=new t.EventEmitter,this.icons=i.a,this.ngDataReady=new t.EventEmitter,this.configurationType=a.b,this.sectionVisibility={}}ngOnInit(){const l=this.createConfigurationFormGroup();this.form.addControl("configuration",l),l.valueChanges.subscribe(()=>{this.changes.emit(this.getDirtyValues.bind(this))}),this.initializeData&&this.initializeData.subscribe(l=>{this.initialData=l.initialData;const n=l.sourceType;this.rbdConfigurationService.getWritableOptionFields().forEach(e=>{const t=l.initialData.filter(l=>l.name===e.name).pop();t&&t.source===n&&this.form.get("configuration."+e.name).setValue(t.value)}),this.ngDataReady.emit()}),this.rbdConfigurationService.getWritableSections().forEach(l=>this.sectionVisibility[l.class]=!1)}getDirtyValues(l=!1,n){if(l&&!n)throw new Error("ProgrammingError: If local values shall be included, a proper localFieldType argument has to be provided, too");const e={};return this.rbdConfigurationService.getWritableOptionFields().forEach(t=>{const u=this.form.get("configuration").get(t.name);this.initialData&&this.initialData[t.name]===u.value||(u.dirty||l&&u.source===n)&&(e[t.name]=null===u.value?u.value:t.type===a.b.bps?this.formatterService.toBytes(u.value):t.type===a.b.milliseconds?this.formatterService.toMilliseconds(u.value):t.type===a.b.iops?this.formatterService.toIops(u.value):u.value)}),e}createConfigurationFormGroup(){const l=new s.a({});return this.rbdConfigurationService.getWritableOptionFields().forEach(n=>{let e;if(n.type!==a.b.milliseconds&&n.type!==a.b.iops&&n.type!==a.b.bps)throw new Error(`Type ${n.type} is unknown, you may need to add it to RbdConfiguration class`);e=new u.i(0,u.B.min(0)),l.addControl(n.name,e)}),l}reset(l){const n=this.form.get("configuration").get(l);n.disabled?(n.setValue(n.previousValue||0),n.enable(),n.previousValue||n.markAsPristine()):(n.previousValue=n.value,n.setValue(null),n.markAsDirty(),n.disable())}isDisabled(l){return this.form.get("configuration").get(l).disabled}toggleSectionVisibility(l){this.sectionVisibility[l]=!this.sectionVisibility[l]}}},roDX:function(l,n,e){"use strict";e.d(n,"a",(function(){return u})),e("my5R");var t=e("x38r");e("o4+5"),e("uYzU");class u{constructor(l,n,e,t){this.iscsiService=l,this.dimlessPipe=n,this.iscsiBackstorePipe=e,this.i18n=t,this.gateways=[],this.images=[]}ngOnInit(){this.gatewaysColumns=[{name:this.i18n("Name"),prop:"name"},{name:this.i18n("State"),prop:"state",flexGrow:1,cellTransformation:t.a.badge,customTemplateConfig:{map:{up:{class:"badge-success"},down:{class:"badge-danger"}}}},{name:this.i18n("# Targets"),prop:"num_targets"},{name:this.i18n("# Sessions"),prop:"num_sessions"}],this.imagesColumns=[{name:this.i18n("Pool"),prop:"pool"},{name:this.i18n("Image"),prop:"image"},{name:this.i18n("Backstore"),prop:"backstore",pipe:this.iscsiBackstorePipe},{name:this.i18n("Read Bytes"),prop:"stats_history.rd_bytes",cellTemplate:this.iscsiSparklineTpl},{name:this.i18n("Write Bytes"),prop:"stats_history.wr_bytes",cellTemplate:this.iscsiSparklineTpl},{name:this.i18n("Read Ops"),prop:"stats.rd",pipe:this.dimlessPipe,cellTemplate:this.iscsiPerSecondTpl},{name:this.i18n("Write Ops"),prop:"stats.wr",pipe:this.dimlessPipe,cellTemplate:this.iscsiPerSecondTpl},{name:this.i18n("A/O Since"),prop:"optimized_since",cellTemplate:this.iscsiRelativeDateTpl}]}refresh(){this.iscsiService.overview().subscribe(l=>{this.gateways=l.gateways,this.images=l.images,this.images.map(l=>(l.stats_history&&(l.stats_history.rd_bytes=l.stats_history.rd_bytes.map(l=>l[1]),l.stats_history.wr_bytes=l.stats_history.wr_bytes.map(l=>l[1])),l.cdIsBinary=!0,l))})}}},u0yg:function(l,n,e){"use strict";e.d(n,"b",(function(){return t})),e.d(n,"a",(function(){return u}));class t{}var u=function(l){return l[l.V1=1]="V1",l[l.V2=2]="V2",l}({})},u2XS:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("SVse"),i=e("25BL"),s=e("uIqm"),a=e("LOMR"),o=e("MP8s"),r=e("fxL3"),d=e("gk6K"),c=e("3ris"),m=e("GiVz"),p=e("uYzU"),h=e("iExv");e.d(n,"b",(function(){return g})),e.d(n,"c",(function(){return R})),e.d(n,"a",(function(){return w}));var g=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function f(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](2,null,["",""])),(l()(),t["ɵted"](-1,null,["   "])),(l()(),t["ɵeld"](4,0,null,null,6,"span",[["class","badge"]],null,null,null,null,null)),t["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](6,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t["ɵpad"](7,1),t["ɵpad"](8,1),t["ɵpod"](9,{"badge-success":0,"badge-danger":1}),(l()(),t["ɵted"](10,null,[" "," "]))],(function(l,n){var e=l(n,9,0,l(n,7,0,"logged_in").includes(n.context.$implicit.data.status),l(n,8,0,"logged_out").includes(n.context.$implicit.data.status));l(n,6,0,"badge",e)}),(function(l,n){l(n,0,0,n.context.$implicit.data.cdIcon),l(n,2,0,n.context.$implicit.data.name),l(n,10,0,n.context.$implicit.data.status)}))}function v(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"div",[["class","col-6 metadata"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](2,null,["",""])),(l()(),t["ɵeld"](3,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,i.b,i.a)),t["ɵdid"](4,2867200,[[2,4],["detailTable",4]],0,s.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],limit:[3,"limit"]},null)],(function(l,n){var e=n.component;l(n,4,0,e.data,e.columns,"flex",0)}),(function(l,n){l(n,2,0,n.component.title)}))}function b(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""]))],null,(function(l,n){l(n,1,0,n.parent.context.value)}))}function C(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""]))],null,(function(l,n){l(n,1,0,n.parent.context.value)}))}function S(l){return t["ɵvid"](0,[(l()(),t["ɵand"](16777216,null,null,1,null,b)),t["ɵdid"](1,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,C)),t["ɵdid"](3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,void 0===n.context.row.default||n.context.row.default===n.context.row.current),l(n,3,0,void 0!==n.context.row.default&&n.context.row.default!==n.context.row.current)}),null)}function R(l){return t["ɵvid"](0,[t["ɵqud"](402653184,1,{highlightTpl:0}),t["ɵqud"](671088640,2,{content:0}),t["ɵqud"](671088640,3,{tree:0}),(l()(),t["ɵeld"](3,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(l()(),t["ɵeld"](4,0,null,null,10,"div",[["class","col-6"]],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["iSCSI Topology"])),(l()(),t["ɵeld"](7,0,null,null,7,"tree-root",[],null,[[null,"updateData"],["body","keydown"],["body","mousedown"]],(function(l,n,e){var u=!0,i=l.component;return"body:keydown"===n&&(u=!1!==t["ɵnov"](l,9).onKeydown(e)&&u),"body:mousedown"===n&&(u=!1!==t["ɵnov"](l,9).onMousedown(e)&&u),"updateData"===n&&(u=!1!==i.onUpdateData()&&u),u}),a.b,a.a)),t["ɵprd"](131584,null,o.a,o.a,[]),t["ɵdid"](9,573440,[[3,4],["tree",4]],4,r.a,[o.a,d.a],{nodes:[0,"nodes"],options:[1,"options"]},{updateData:"updateData"}),t["ɵqud"](603979776,4,{loadingTemplate:0}),t["ɵqud"](603979776,5,{treeNodeTemplate:0}),t["ɵqud"](603979776,6,{treeNodeWrapperTemplate:0}),t["ɵqud"](603979776,7,{treeNodeFullTemplate:0}),(l()(),t["ɵand"](0,[[5,2],["treeNodeTemplate",2]],null,0,null,f)),(l()(),t["ɵand"](16777216,null,null,1,null,v)),t["ɵdid"](16,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,[[1,2],["highlightTpl",2]],null,0,null,S))],(function(l,n){var e=n.component;l(n,9,0,e.nodes,e.treeOptions),l(n,16,0,e.data)}),null)}function _(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-iscsi-target-details",[],null,null,null,R,g)),t["ɵdid"](1,638976,null,0,c.a,[m.a,p.a,h.a],null,null)],(function(l,n){l(n,1,0)}),null)}var w=t["ɵccf"]("cd-iscsi-target-details",c.a,_,{selection:"selection",settings:"settings",cephIscsiConfigVersion:"cephIscsiConfigVersion"},{},[])},xvu0:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("EEJc"),i=e("ajRT"),s=e("s7LF"),a=e("+gVj"),o=e("mXUL"),r=e("IZUe"),d=e("ANnk"),c=e("f/UV"),m=e("aexS"),p=e("gp3X"),h=e("sb0X"),g=e("KVJa"),f=e("Z21x"),v=e("SVse"),b=e("sne2"),C=e("puGn"),S=e("LqlI"),R=e("XED3"),_=e("kn/O");e.d(n,"a",(function(){return E}));var w=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,39,"cd-modal",[],null,null,null,u.c,u.b)),t["ɵdid"](1,49152,null,0,i.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Edit site name"])),(l()(),t["ɵeld"](4,0,null,1,35,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,34,"form",[["class","form"],["name","editSiteNameForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,s.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,s.d,null,[s.l]),t["ɵdid"](9,16384,null,0,s.s,[[4,s.d]],null,null),t["ɵdid"](10,16384,null,0,a.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,21,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,5,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,4,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Edit the site name and click  "])),(l()(),t["ɵeld"](15,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Update"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](18,0,null,null,14,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,o.b,o.a)),t["ɵdid"](19,1163264,null,2,a.c,[t.ElementRef,a.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](22,0,null,0,1,"label",[["class","col-form-label required"],["for","siteName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Site Name"])),(l()(),t["ɵeld"](24,0,null,0,8,"input",[["autofocus",""],["class","form-control"],["formControlName","siteName"],["id","siteName"],["name","siteName"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,27)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,27).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,27)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,27)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](25,4210688,null,0,r.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](26,4210688,null,0,d.a,[[2,c.a],m.a,t.ElementRef],null,null),t["ɵdid"](27,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵprd"](1024,null,s.p,(function(l){return[l]}),[s.e]),t["ɵdid"](29,671744,[[1,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](31,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](32,16384,null,0,a.h,[[3,s.d],a.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](33,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](34,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](35,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.update()&&t),t}),p.b,p.a)),t["ɵdid"](36,114688,null,0,h.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Update"])),(l()(),t["ɵeld"](38,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,g.b,g.a)),t["ɵdid"](39,49152,null,0,f.a,[v.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.editSiteNameForm),l(n,10,0,e.editSiteNameForm),l(n,19,0),l(n,25,0,""),l(n,29,0,"siteName"),l(n,32,0,"siteName"),l(n,36,0,e.editSiteNameForm),l(n,39,0,"Cancel",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,18,0,t["ɵnov"](n,19).hasErrors,t["ɵnov"](n,19).hasSuccess),l(n,24,0,t["ɵnov"](n,31).ngClassUntouched,t["ɵnov"](n,31).ngClassTouched,t["ɵnov"](n,31).ngClassPristine,t["ɵnov"](n,31).ngClassDirty,t["ɵnov"](n,31).ngClassValid,t["ɵnov"](n,31).ngClassInvalid,t["ɵnov"](n,31).ngClassPending,t["ɵnov"](n,32).validClass,t["ɵnov"](n,32).invalidClass)}))}function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-edit-site-mode-modal",[],null,null,null,y,w)),t["ɵdid"](1,114688,null,0,C.a,[S.a,R.a,_.a],null,null)],(function(l,n){l(n,1,0)}),null)}var E=t["ɵccf"]("cd-edit-site-mode-modal",C.a,k,{},{},[])}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/1.f2cb9c77bf340e0ea797.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/1.f2cb9c77bf340e0ea797.js
new file mode 100644 (file)
index 0000000..16f0a8e
--- /dev/null
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{"+26A":function(l,n,e){"use strict";e.d(n,"a",(function(){return d}));var t=e("s7LF"),u=e("LvDl"),i=e("GyhO"),s=e("cp0P"),a=e("NJ9Y"),o=(e("XED3"),e("QFaf")),r=e("kvvV");e("kn/O");class d{constructor(l,n,e){this.modalRef=l,this.rbdMirroringService=n,this.taskWrapper=e,this.pools=[],this.directions=[{key:"rx-tx",desc:"Bidirectional"},{key:"rx",desc:"Unidirectional (receive-only)"}],this.createForm()}createForm(){this.importBootstrapForm=new o.a({siteName:new t.i("",{validators:[t.B.required]}),direction:new t.i("rx-tx",{}),pools:new t.k({},{validators:[this.validatePools()]}),token:new t.i("",{validators:[t.B.required,this.validateToken()]})})}ngOnInit(){this.rbdMirroringService.getSiteName().subscribe(l=>{this.importBootstrapForm.get("siteName").setValue(l.site_name)}),this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.pools=l.content_data.pools.reduce((l,n)=>(l.push({name:n.name,mirror_mode:n.mirror_mode}),l),[]);const n=this.importBootstrapForm.get("pools");u.each(this.pools,l=>{const e=l.name,u="disabled"===l.mirror_mode,i=n.controls[e];i?u&&i.disabled?i.enable():!u&&i.enabled&&(i.disable(),i.setValue(!0)):n.addControl(e,new t.i({value:!u,disabled:!u}))})})}ngOnDestroy(){this.subs&&this.subs.unsubscribe()}validatePools(){return l=>{let n=0;return u.each(l.controls,l=>{!0===l.value&&++n}),n>0?null:{requirePool:!0}}}validateToken(){return l=>{try{if(JSON.parse(atob(l.value)))return null}catch(n){}return{invalidToken:!0}}}import(){const l=[],n=[],e=this.importBootstrapForm.get("pools");u.each(e.controls,(e,t)=>{!0===e.value&&(l.push(t),e.disabled||n.push(t))});const t={mirror_mode:"image"};let o=Object(i.a)(this.rbdMirroringService.setSiteName(this.importBootstrapForm.getValue("siteName")),Object(s.a)(n.map(l=>this.rbdMirroringService.updatePool(l,t))));o=l.reduce((l,n)=>Object(i.a)(l,this.rbdMirroringService.importBootstrapToken(n,this.importBootstrapForm.getValue("direction"),this.importBootstrapForm.getValue("token"))),o).pipe(Object(a.a)());const d=()=>{this.rbdMirroringService.refresh(),this.importBootstrapForm.setErrors({cdSubmitButton:!0})};this.taskWrapper.wrapTaskAroundCall({task:new r.a("rbd/mirroring/bootstrap/import",{}),call:o}).subscribe(void 0,d,()=>{d(),this.modalRef.hide()})}}},"0BYw":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("ANnk"),s=e("f/UV"),a=e("aexS"),o=e("+gVj"),r=e("SVse"),d=e("EEJc"),c=e("ajRT"),m=e("mXUL"),p=e("IZUe"),h=e("gp3X"),g=e("sb0X"),f=e("KVJa"),v=e("Z21x"),b=e("sne2"),C=e("daK0"),S=e("LqlI"),R=e("9nlD"),_=e("Ekvf"),w=e("F83c"),y=e("GiVz");e.d(n,"a",(function(){return A}));var k=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","pool"],["id","pool"],["name","pool"],["placeholder","Pool name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,1)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,1)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,1)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"pool"),l(n,7,0,"pool")}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵted"](-1,null,["-- No rbd pools available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵted"](-1,null,["-- Select a pool --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.pool_name),l(n,2,0,n.context.$implicit.pool_name)}),(function(l,n){l(n,3,0,n.context.$implicit.pool_name)}))}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","pool"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,1).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](9,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,N)),t["ɵdid"](11,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,F)),t["ɵdid"](13,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,V)),t["ɵdid"](15,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,3,0,"pool"),l(n,7,0,"pool"),l(n,9,0,null===e.pools),l(n,11,0,null!==e.pools&&0===e.pools.length),l(n,13,0,null!==e.pools&&e.pools.length>0),l(n,15,0,e.pools)}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function D(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function x(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function P(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Namespace already exists."]))],null,null)}function q(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,51,"cd-modal",[],null,null,null,d.c,d.b)),t["ɵdid"](1,49152,null,0,c.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Create Namespace"])),(l()(),t["ɵeld"](4,0,null,1,47,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,46,"form",[["name","namespaceForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,u.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](9,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](10,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,33,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,12,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,m.b,m.a)),t["ɵdid"](13,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","pool"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pool"])),(l()(),t["ɵeld"](18,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](20,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,T)),t["ɵdid"](22,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,D)),t["ɵdid"](24,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](25,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,m.b,m.a)),t["ɵdid"](26,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](29,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","namespace"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Name"])),(l()(),t["ɵeld"](31,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](32,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","namespace"],["id","namespace"],["name","namespace"],["placeholder","Namespace name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,33)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,33).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,33)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,33)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](33,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](35,671744,[[3,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](37,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](38,4210688,null,0,p.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](39,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](40,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,x)),t["ɵdid"](42,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,P)),t["ɵdid"](44,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](45,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](46,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](47,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.submit()&&t),t}),h.b,h.a)),t["ɵdid"](48,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Create Namespace"])),(l()(),t["ɵeld"](50,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,f.b,f.a)),t["ɵdid"](51,49152,null,0,v.a,[r.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.namespaceForm),l(n,10,0,e.namespaceForm),l(n,13,0),l(n,20,0,!e.poolPermission.read),l(n,22,0,e.poolPermission.read),l(n,24,0,e.namespaceForm.showError("pool",t["ɵnov"](n,7),"required")),l(n,26,0),l(n,35,0,"namespace"),l(n,38,0,""),l(n,40,0,"namespace"),l(n,42,0,e.namespaceForm.showError("namespace",t["ɵnov"](n,7),"required")),l(n,44,0,e.namespaceForm.showError("namespace",t["ɵnov"](n,7),"namespaceExists")),l(n,48,0,e.namespaceForm),l(n,51,0,"Close",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,12,0,t["ɵnov"](n,13).hasErrors,t["ɵnov"](n,13).hasSuccess),l(n,25,0,t["ɵnov"](n,26).hasErrors,t["ɵnov"](n,26).hasSuccess),l(n,32,0,t["ɵnov"](n,37).ngClassUntouched,t["ɵnov"](n,37).ngClassTouched,t["ɵnov"](n,37).ngClassPristine,t["ɵnov"](n,37).ngClassDirty,t["ɵnov"](n,37).ngClassValid,t["ɵnov"](n,37).ngClassInvalid,t["ɵnov"](n,37).ngClassPending,t["ɵnov"](n,40).validClass,t["ɵnov"](n,40).invalidClass)}))}function B(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-namespace-form-modal",[],null,null,null,q,k)),t["ɵdid"](1,114688,null,0,C.a,[S.a,a.a,R.a,_.a,w.a,y.a],null,null)],(function(l,n){l(n,1,0)}),null)}var A=t["ɵccf"]("cd-rbd-namespace-form-modal",C.a,B,{},{},[])},"0rTx":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("EEJc"),i=e("ajRT"),s=e("s7LF"),a=e("+gVj"),o=e("mXUL"),r=e("IZUe"),d=e("ANnk"),c=e("f/UV"),m=e("aexS"),p=e("SVse"),h=e("gp3X"),g=e("sb0X"),f=e("KVJa"),v=e("Z21x"),b=e("sne2"),C=e("2GqK"),S=e("F83c"),R=e("LqlI"),_=e("2EZI"),w=e("kn/O");e.d(n,"a",(function(){return N}));var y=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,48,"cd-modal",[],null,null,null,u.c,u.b)),t["ɵdid"](1,49152,null,0,i.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Restore Image"])),(l()(),t["ɵeld"](4,0,null,1,44,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,43,"form",[["class","form"],["name","restoreForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,s.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,s.d,null,[s.l]),t["ɵdid"](9,16384,null,0,s.s,[[4,s.d]],null,null),t["ɵdid"](10,16384,null,0,a.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,30,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,12,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To restore"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](16,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](17,null,["","@",""])),(l()(),t["ɵted"](-1,null,[",  "])),(l()(),t["ɵeld"](19,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["type the image's new name and click"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](22,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Restore Image"])),(l()(),t["ɵted"](-1,null,[". "])),(l()(),t["ɵeld"](25,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,o.b,o.a)),t["ɵdid"](26,1163264,null,2,a.c,[t.ElementRef,a.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](29,0,null,0,1,"label",[["class","col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["New Name"])),(l()(),t["ɵeld"](31,0,null,0,8,"input",[["autocomplete","off"],["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,32)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,32).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,32)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,32)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](32,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵprd"](1024,null,s.p,(function(l){return[l]}),[s.e]),t["ɵdid"](34,671744,[[1,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](36,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](37,4210688,null,0,r.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](38,4210688,null,0,d.a,[[2,c.a],m.a,t.ElementRef],null,null),t["ɵdid"](39,16384,null,0,a.h,[[3,s.d],a.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,k)),t["ɵdid"](41,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](42,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](43,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](44,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.restore()&&t),t}),h.b,h.a)),t["ɵdid"](45,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Restore Image"])),(l()(),t["ɵeld"](47,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,f.b,f.a)),t["ɵdid"](48,49152,null,0,v.a,[p.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.restoreForm),l(n,10,0,e.restoreForm),l(n,26,0),l(n,34,0,"name"),l(n,37,0,""),l(n,39,0,"name"),l(n,41,0,e.restoreForm.showError("name",t["ɵnov"](n,7),"required")),l(n,45,0,e.restoreForm),l(n,48,0,"Cancel",e.modalRef.hide)}),(function(l,n){var e=n.component;l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,17,0,e.imageSpec,e.imageId),l(n,25,0,t["ɵnov"](n,26).hasErrors,t["ɵnov"](n,26).hasSuccess),l(n,31,0,t["ɵnov"](n,36).ngClassUntouched,t["ɵnov"](n,36).ngClassTouched,t["ɵnov"](n,36).ngClassPristine,t["ɵnov"](n,36).ngClassDirty,t["ɵnov"](n,36).ngClassValid,t["ɵnov"](n,36).ngClassInvalid,t["ɵnov"](n,36).ngClassPending,t["ɵnov"](n,39).validClass,t["ɵnov"](n,39).invalidClass)}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-trash-restore-modal",[],null,null,null,I,y)),t["ɵdid"](1,114688,null,0,C.a,[S.a,R.a,_.a,w.a],null,null)],(function(l,n){l(n,1,0)}),null)}var N=t["ɵccf"]("cd-rbd-trash-restore-modal",C.a,E,{},{},[])},"2GqK":function(l,n,e){"use strict";e.d(n,"a",(function(){return i})),e("F83c"),e("2EZI");var t=e("kvvV"),u=e("jVDg");e("kn/O");class i{constructor(l,n,e,t){this.rbdService=l,this.modalRef=n,this.fb=e,this.taskWrapper=t}ngOnInit(){this.imageSpec=new u.a(this.poolName,this.namespace,this.imageName).toString(),this.restoreForm=this.fb.group({name:this.imageName})}restore(){const l=this.restoreForm.getValue("name"),n=new u.a(this.poolName,this.namespace,this.imageId);this.taskWrapper.wrapTaskAroundCall({task:new t.a("rbd/trash/restore",{image_id_spec:n.toString(),new_image_name:l}),call:this.rbdService.restoreTrash(n,l)}).subscribe(void 0,()=>{this.restoreForm.setErrors({cdSubmitButton:!0})},()=>{this.modalRef.hide()})}}},"2JDI":function(l,n,e){"use strict";e.d(n,"a",(function(){return a}));var t=e("wd/R"),u=(e("F83c"),e("2EZI"),e("1Ni5")),i=e("kvvV"),s=e("jVDg");e("kn/O");class a{constructor(l,n,e,t){this.rbdService=l,this.modalRef=n,this.fb=e,this.taskWrapper=t,this.minDate=new Date,this.bsConfig={dateInputFormat:"YYYY-MM-DD HH:mm:ss",containerClass:"theme-default"},this.createForm()}createForm(){this.moveForm=this.fb.group({expiresAt:["",[u.a.custom("format",l=>!(""===l||t(l,"YYYY-MM-DD HH:mm:ss").isValid())),u.a.custom("expired",l=>t().isAfter(l))]]})}ngOnInit(){this.imageSpec=new s.a(this.poolName,this.namespace,this.imageName),this.imageSpecStr=this.imageSpec.toString(),this.pattern=`${this.poolName}/${this.imageName}`}moveImage(){let l=0;const n=this.moveForm.getValue("expiresAt");n&&(l=t(n).diff(t(),"seconds",!0)),l<0&&(l=0),this.taskWrapper.wrapTaskAroundCall({task:new i.a("rbd/trash/move",{image_spec:this.imageSpecStr}),call:this.rbdService.moveTrash(this.imageSpec,l)}).subscribe(void 0,void 0,()=>{this.modalRef.hide()})}}},"3IYD":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("SVse"),i=e("8xTl"),s=e("EEJc"),a=e("ajRT"),o=e("s7LF"),r=e("+gVj"),d=e("mXUL"),c=e("IZUe"),m=e("ANnk"),p=e("f/UV"),h=e("aexS"),g=e("gp3X"),f=e("sb0X"),v=e("KVJa"),b=e("Z21x"),C=e("sne2"),S=e("Fd71"),R=e("LqlI"),_=e("F83c"),w=e("VXsX"),y=e("9nlD"),k=e("GiVz");e.d(n,"a",(function(){return V}));var I=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function N(l){return t["ɵvid"](0,[t["ɵpid"](0,u.TitleCasePipe,[]),t["ɵpid"](0,i.a,[]),(l()(),t["ɵeld"](2,0,null,null,40,"cd-modal",[],null,null,null,s.c,s.b)),t["ɵdid"](3,49152,null,0,a.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),t["ɵted"](5,null,[""," ",""])),t["ɵppd"](6,1),t["ɵppd"](7,1),(l()(),t["ɵeld"](8,0,null,1,34,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](9,0,null,null,33,"form",[["name","snapshotForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,11).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,11).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,14).onSubmit()&&u),u}),null,null)),t["ɵdid"](10,16384,null,0,o.G,[],null,null),t["ɵdid"](11,540672,[["formDir",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,o.d,null,[o.l]),t["ɵdid"](13,16384,null,0,o.s,[[4,o.d]],null,null),t["ɵdid"](14,16384,null,0,r.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](15,0,null,null,18,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](16,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](17,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](20,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","snapshotName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Name"])),(l()(),t["ɵeld"](22,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](23,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","snapshotName"],["id","snapshotName"],["name","snapshotName"],["placeholder","Snapshot name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,24)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,24).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,24)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,24)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](24,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](26,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](28,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](29,4210688,null,0,c.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](30,4210688,null,0,m.a,[[2,p.a],h.a,t.ElementRef],null,null),t["ɵdid"](31,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](33,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](34,0,null,null,8,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](35,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](36,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.submit()&&t),t}),g.b,g.a)),t["ɵdid"](37,114688,null,0,f.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](38,0,[""," ",""])),t["ɵppd"](39,1),t["ɵppd"](40,1),(l()(),t["ɵeld"](41,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,v.b,v.a)),t["ɵdid"](42,49152,null,0,b.a,[u.Location,C.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.modalRef),l(n,11,0,e.snapshotForm),l(n,14,0,e.snapshotForm),l(n,17,0),l(n,26,0,"snapshotName"),l(n,29,0,""),l(n,31,0,"snapshotName"),l(n,33,0,e.snapshotForm.showError("snapshotName",t["ɵnov"](n,11),"required")),l(n,37,0,e.snapshotForm),l(n,42,0,"Close",e.modalRef.hide)}),(function(l,n){var e=n.component,u=t["ɵunv"](n,5,0,l(n,6,0,t["ɵnov"](n,0),e.action)),i=t["ɵunv"](n,5,1,l(n,7,0,t["ɵnov"](n,1),e.resource));l(n,5,0,u,i),l(n,9,0,t["ɵnov"](n,13).ngClassUntouched,t["ɵnov"](n,13).ngClassTouched,t["ɵnov"](n,13).ngClassPristine,t["ɵnov"](n,13).ngClassDirty,t["ɵnov"](n,13).ngClassValid,t["ɵnov"](n,13).ngClassInvalid,t["ɵnov"](n,13).ngClassPending),l(n,16,0,t["ɵnov"](n,17).hasErrors,t["ɵnov"](n,17).hasSuccess),l(n,23,0,t["ɵnov"](n,28).ngClassUntouched,t["ɵnov"](n,28).ngClassTouched,t["ɵnov"](n,28).ngClassPristine,t["ɵnov"](n,28).ngClassDirty,t["ɵnov"](n,28).ngClassValid,t["ɵnov"](n,28).ngClassInvalid,t["ɵnov"](n,28).ngClassPending,t["ɵnov"](n,31).validClass,t["ɵnov"](n,31).invalidClass);var s=t["ɵunv"](n,38,0,l(n,39,0,t["ɵnov"](n,0),e.action)),a=t["ɵunv"](n,38,1,l(n,40,0,t["ɵnov"](n,1),e.resource));l(n,38,0,s,a)}))}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-snapshot-form-modal",[],null,null,null,N,I)),t["ɵdid"](1,114688,null,0,S.a,[R.a,_.a,w.a,y.a,k.a,C.b],null,null)],(function(l,n){l(n,1,0)}),null)}var V=t["ɵccf"]("cd-rbd-snapshot-form-modal",S.a,F,{},{},[])},"3ris":function(l,n,e){"use strict";e.d(n,"a",(function(){return s}));var t=e("yYhs"),u=e("LvDl"),i=(e("uIqm"),e("oxzT"));e("iExv"),e("uYzU");class s{constructor(l,n,e){this.i18n=l,this.iscsiBackstorePipe=n,this.booleanTextPipe=e,this.icons=i.a,this.metadata={},this.nodes=[],this.treeOptions={useVirtualScroll:!0,actionMapping:{mouse:{click:this.onNodeSelected.bind(this)}}}}set content(l){this.detailTable=l,l&&l.updateColumns()}ngOnInit(){this.columns=[{prop:"displayName",name:this.i18n("Name"),flexGrow:1,cellTemplate:this.highlightTpl},{prop:"current",name:this.i18n("Current"),flexGrow:1,cellTemplate:this.highlightTpl},{prop:"default",name:this.i18n("Default"),flexGrow:1,cellTemplate:this.highlightTpl}]}ngOnChanges(){this.selection&&(this.selectedItem=this.selection,this.generateTree()),this.data=void 0}generateTree(){const l=u.cloneDeep(this.selectedItem.target_controls);this.cephIscsiConfigVersion>10&&u.extend(l,u.cloneDeep(this.selectedItem.auth)),this.metadata={root:l};const n={target:{expanded:u.join(this.selectedItem.cdExecuting?[i.a.large,i.a.spinner,i.a.spin]:[i.a.large,i.a.bullseye]," ")},initiators:{expanded:u.join([i.a.large,i.a.user]," "),leaf:u.join([i.a.user]," ")},groups:{expanded:u.join([i.a.large,i.a.users]," "),leaf:u.join([i.a.users]," ")},disks:{expanded:u.join([i.a.large,i.a.disk]," "),leaf:u.join([i.a.disk]," ")},portals:{expanded:u.join([i.a.large,i.a.server]," "),leaf:u.join([i.a.server]," ")}},e=[];u.forEach(this.selectedItem.disks,l=>{const t="disk_"+l.pool+"_"+l.image;this.metadata[t]={controls:l.controls,backstore:l.backstore},["wwn","lun"].forEach(n=>{n in l&&(this.metadata[t][n]=l[n])}),e.push({name:`${l.pool}/${l.image}`,cdId:t,cdIcon:n.disks.leaf})});const t=[];u.forEach(this.selectedItem.portals,l=>{t.push({name:`${l.host}:${l.ip}`,cdIcon:n.portals.leaf})});const s=[];u.forEach(this.selectedItem.clients,l=>{const e=u.cloneDeep(l.auth);l.info&&(u.extend(e,l.info),delete e.state,u.forEach(Object.keys(l.info.state),n=>{e[n.toLowerCase()]=l.info.state[n]})),this.metadata["client_"+l.client_iqn]=e;const t=[];l.luns.forEach(l=>{t.push({name:`${l.pool}/${l.image}`,cdId:"disk_"+l.pool+"_"+l.image,cdIcon:n.disks.leaf})});let i="";l.info&&(i=Object.keys(l.info.state).includes("LOGGED_IN")?"logged_in":"logged_out"),s.push({name:l.client_iqn,status:i,cdId:"client_"+l.client_iqn,children:t,cdIcon:n.initiators.leaf})});const a=[];u.forEach(this.selectedItem.groups,l=>{const e=[];l.disks.forEach(l=>{e.push({name:`${l.pool}/${l.image}`,cdId:"disk_"+l.pool+"_"+l.image,cdIcon:n.disks.leaf})});const t=[];l.members.forEach(l=>{t.push({name:l,cdId:"client_"+l})}),a.push({name:l.group_id,cdIcon:n.groups.leaf,children:[{name:"Disks",children:e,cdIcon:n.disks.expanded},{name:"Initiators",children:t,cdIcon:n.initiators.expanded}]})}),this.nodes=[{name:this.selectedItem.target_iqn,cdId:"root",isExpanded:!0,cdIcon:n.target.expanded,children:[{name:"Disks",isExpanded:!0,children:e,cdIcon:n.disks.expanded},{name:"Portals",isExpanded:!0,children:t,cdIcon:n.portals.expanded},{name:"Initiators",isExpanded:!0,children:s,cdIcon:n.initiators.expanded},{name:"Groups",isExpanded:!0,children:a,cdIcon:n.groups.expanded}]}]}format(l){return"boolean"==typeof l?this.booleanTextPipe.transform(l):l}onNodeSelected(l,n){if(t.a.ACTIVATE(l,n,!0),n.data.cdId){this.title=n.data.name;const l=this.metadata[n.data.cdId]||{};"root"===n.data.cdId?(this.columns[2].isHidden=!1,this.data=u.map(this.settings.target_default_controls,(n,e)=>({displayName:e,default:n=this.format(n),current:u.isUndefined(l[e])?n:this.format(l[e])})),this.cephIscsiConfigVersion>10&&["user","password","mutual_user","mutual_password"].forEach(n=>{this.data.push({displayName:n,default:null,current:l[n]})})):n.data.cdId.toString().startsWith("disk_")?(this.columns[2].isHidden=!1,this.data=u.map(this.settings.disk_default_controls[l.backstore],(n,e)=>({displayName:e,default:n=this.format(n),current:u.isUndefined(l.controls[e])?n:this.format(l.controls[e])})),this.data.push({displayName:"backstore",default:this.iscsiBackstorePipe.transform(this.settings.default_backstore),current:this.iscsiBackstorePipe.transform(l.backstore)}),["wwn","lun"].forEach(n=>{n in l&&this.data.push({displayName:n,default:void 0,current:l[n]})})):(this.columns[2].isHidden=!0,this.data=u.map(l,(l,n)=>({displayName:n,default:void 0,current:this.format(l)})))}else this.data=void 0;this.detailTable&&this.detailTable.updateColumns()}onUpdateData(){this.tree.treeModel.expandAll()}}},"5GyT":function(l,n,e){"use strict";e.d(n,"a",(function(){return f})),e.d(n,"b",(function(){return g}));var t=e("LvDl"),u=(e("F83c"),e("+fVR")),i=e("OLbh"),s=e("0+/T"),a=(e("sne2"),e("uIqm"),e("oxzT")),o=e("yJti"),r=e("vCyI"),d=e("kvvV"),c=e("jVDg"),m=(e("Fgil"),e("o4+5"),e("aexS"),e("VTlA"),e("kn/O"),e("EgGo")),p=e("2JDI"),h=e("u0yg");const g=new m.a("block/rbd");class f extends u.a{constructor(l,n,e,t,u,i,s,o,d,m){super(),this.authStorageService=l,this.rbdService=n,this.dimlessBinaryPipe=e,this.dimlessPipe=t,this.modalService=u,this.taskWrapper=i,this.taskListService=s,this.i18n=o,this.urlBuilder=d,this.actionLabels=m,this.selection=new r.a,this.icons=a.a,this.builders={"rbd/create":l=>this.createRbdFromTask(l.pool_name,l.namespace,l.image_name),"rbd/delete":l=>this.createRbdFromTaskImageSpec(l.image_spec),"rbd/clone":l=>this.createRbdFromTask(l.child_pool_name,l.child_namespace,l.child_image_name),"rbd/copy":l=>this.createRbdFromTask(l.dest_pool_name,l.dest_namespace,l.dest_image_name)},this.permission=this.authStorageService.getPermissions().rbdImage;const p=()=>this.selection.first()&&new c.a(this.selection.first().pool_name,this.selection.first().namespace,this.selection.first().name).toStringEncoded();this.tableActions=[{permission:"create",icon:a.a.add,routerLink:()=>this.urlBuilder.getCreate(),canBePrimary:l=>!l.hasSingleSelection,name:this.actionLabels.CREATE},{permission:"update",icon:a.a.edit,routerLink:()=>this.urlBuilder.getEdit(p()),name:this.actionLabels.EDIT,disable:l=>!l.hasSingleSelection||this.getRemovingStatusDesc(l)},{permission:"create",canBePrimary:l=>l.hasSingleSelection,disable:l=>!l.hasSingleSelection||l.first().cdExecuting||this.getRemovingStatusDesc(l),icon:a.a.copy,routerLink:()=>"/block/rbd/copy/"+p(),name:this.actionLabels.COPY},{permission:"update",disable:l=>!l.hasSingleSelection||l.first().cdExecuting||!l.first().parent||this.getRemovingStatusDesc(l),icon:a.a.flatten,click:()=>this.flattenRbdModal(),name:this.actionLabels.FLATTEN},{permission:"delete",icon:a.a.destroy,click:()=>this.deleteRbdModal(),name:this.actionLabels.DELETE,disable:l=>this.getDeleteDisableDesc(l)},{permission:"delete",icon:a.a.trash,click:()=>this.trashRbdModal(),name:this.actionLabels.TRASH,disable:l=>!l.first()||!l.hasSingleSelection||l.first().image_format===h.a.V1||this.getRemovingStatusDesc(l)}]}createRbdFromTaskImageSpec(l){const n=c.a.fromString(l);return this.createRbdFromTask(n.poolName,n.namespace,n.imageName)}createRbdFromTask(l,n,e){const t=new h.b;return t.id="-1",t.unique_id="-1",t.name=e,t.namespace=n,t.pool_name=l,t.image_format=h.a.V2,t}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"name",flexGrow:2,cellTemplate:this.removingStatTpl},{name:this.i18n("Pool"),prop:"pool_name",flexGrow:2},{name:this.i18n("Namespace"),prop:"namespace",flexGrow:2},{name:this.i18n("Size"),prop:"size",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:this.i18n("Objects"),prop:"num_objs",flexGrow:1,cellClass:"text-right",pipe:this.dimlessPipe},{name:this.i18n("Object size"),prop:"obj_size",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:this.i18n("Provisioned"),prop:"disk_usage",cellClass:"text-center",flexGrow:1,pipe:this.dimlessBinaryPipe},{name:this.i18n("Total provisioned"),prop:"total_disk_usage",cellClass:"text-center",flexGrow:1,pipe:this.dimlessBinaryPipe},{name:this.i18n("Parent"),prop:"parent",flexGrow:2,cellTemplate:this.parentTpl}],this.taskListService.init(()=>this.rbdService.list(),l=>this.prepareResponse(l),l=>this.images=l,()=>this.onFetchError(),l=>["rbd/clone","rbd/copy","rbd/create","rbd/delete","rbd/edit","rbd/flatten","rbd/trash/move"].includes(l.name),(l,n)=>{let e;switch(n.name){case"rbd/copy":e=new c.a(n.metadata.dest_pool_name,n.metadata.dest_namespace,n.metadata.dest_image_name).toString();break;case"rbd/clone":e=new c.a(n.metadata.child_pool_name,n.metadata.child_namespace,n.metadata.child_image_name).toString();break;case"rbd/create":e=new c.a(n.metadata.pool_name,n.metadata.namespace,n.metadata.image_name).toString();break;default:e=n.metadata.image_spec}return e===new c.a(l.pool_name,l.namespace,l.name).toString()},this.builders)}onFetchError(){this.table.reset(),this.viewCacheStatusList=[{status:o.a.ValueException}]}prepareResponse(l){let n=[];const e={};l.forEach(l=>{t.isUndefined(e[l.status])&&(e[l.status]=[]),e[l.status].push(l.pool_name),n=n.concat(l.value)});const u=[];return t.forEach(e,(l,n)=>{u.push({status:parseInt(n,10),statusFor:(l.length>1?"pools ":"pool ")+"<strong>"+l.join("</strong>, <strong>")+"</strong>"})}),this.viewCacheStatusList=u,n}updateSelection(l){this.selection=l}deleteRbdModal(){const l=this.selection.first().pool_name,n=this.selection.first().namespace,e=this.selection.first().name,t=new c.a(l,n,e);this.modalRef=this.modalService.show(s.a,{initialState:{itemDescription:"RBD",itemNames:[t],bodyTemplate:this.deleteTpl,bodyContext:{hasSnapshots:this.hasSnapshots(),snapshots:this.listProtectedSnapshots()},submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new d.a("rbd/delete",{image_spec:t.toString()}),call:this.rbdService.delete(t)})}})}trashRbdModal(){const l={poolName:this.selection.first().pool_name,namespace:this.selection.first().namespace,imageName:this.selection.first().name,hasSnapshots:this.hasSnapshots()};this.modalRef=this.modalService.show(p.a,{initialState:l})}flattenRbd(l){this.taskWrapper.wrapTaskAroundCall({task:new d.a("rbd/flatten",{image_spec:l.toString()}),call:this.rbdService.flatten(l)}).subscribe(void 0,void 0,()=>{this.modalRef.hide()})}flattenRbdModal(){const l=this.selection.first().pool_name,n=this.selection.first().namespace,e=this.selection.first().name,t=this.selection.first().parent,u=new c.a(t.pool_name,t.pool_namespace,t.image_name),s=new c.a(l,n,e),a={titleText:"RBD flatten",buttonText:"Flatten",bodyTpl:this.flattenTpl,bodyData:{parent:`${u}@${t.snap_name}`,child:s.toString()},onSubmit:()=>{this.flattenRbd(s)}};this.modalRef=this.modalService.show(i.a,{initialState:a})}hasSnapshots(){return(this.selection.first().snapshots||[]).length>0}hasClonedSnapshots(l){return(l.snapshots||[]).some(l=>l.children&&l.children.length>0)}listProtectedSnapshots(){return this.selection.first().snapshots.reduce((l,n)=>(n.is_protected&&l.push(n.name),l),[])}getDeleteDisableDesc(l){const n=l.first();return n&&this.hasClonedSnapshots(n)?this.i18n("This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD."):!l.first()||!l.hasSingleSelection||this.hasClonedSnapshots(l.first())}getRemovingStatusDesc(l){const n=l.first();return!(!n||!n.source||"REMOVING"!==n.source)&&this.i18n("Action not possible for an RBD in status 'Removing'")}}},BH9v:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("aXbf");class s{constructor(l,n){this.control=l,this.formatter=n}setValue(l){const n=this.formatter.toMilliseconds(l);this.control.control.setValue(n+" ms")}ngOnInit(){this.setValue(this.control.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.control.value))}onUpdate(l){this.setValue(l)}}var a=e("ANnk"),o=e("f/UV"),r=e("aexS"),d=e("+gVj"),c=e("LvDl"),m=e("IzCI");class p{constructor(l,n,e,u){this.elementRef=l,this.control=n,this.dimlessBinaryPerSecondPipe=e,this.formatter=u,this.ngModelChange=new t.EventEmitter,this.el=this.elementRef.nativeElement}ngOnInit(){this.setValue(this.el.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.el.value))}setValue(l){/^[\d.]+$/.test(l)&&(l+=this.defaultUnit||"m");const n=this.formatter.toBytes(l,0),e=this.round(n);this.el.value=this.dimlessBinaryPerSecondPipe.transform(e),null!==n?(this.ngModelChange.emit(this.el.value),this.control.control.setValue(this.el.value)):(this.ngModelChange.emit(null),this.control.control.setValue(null))}round(l){if(null!==l&&0!==l){if(!c.isUndefined(this.minBytes)&&l<this.minBytes)return this.minBytes;if(!c.isUndefined(this.maxBytes)&&l>this.maxBytes)return this.maxBytes;if(!c.isUndefined(this.roundPower)){const n=Math.round(Math.log(l)/Math.log(this.roundPower));return Math.pow(this.roundPower,n)}}return l}onBlur(l){this.setValue(l)}}class h{constructor(l,n){this.formatter=l,this.ngControl=n}setValue(l){const n=this.formatter.toIops(l);this.ngControl.control.setValue(n+" IOPS")}ngOnInit(){this.setValue(this.ngControl.value),this.ngDataReady&&this.ngDataReady.subscribe(()=>this.setValue(this.ngControl.value))}onUpdate(l){this.setValue(l)}}var g=e("mXUL"),f=e("4HWh"),v=e("p4Cf"),b=e("SVse");e("rFfW"),e("o8EM"),e.d(n,"a",(function(){return C})),e.d(n,"b",(function(){return I}));var C=t["ɵcrt"]({encapsulation:0,styles:[[".collapsible[_ngcontent-%COMP%]{cursor:pointer;-moz-user-select:none;user-select:none}"]],data:{}});function S(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,8,"input",[["cdMilliseconds",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,2)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,2).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,2)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,2)._compositionEnd(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,7).onUpdate(e.target.value)&&u),u}),null,null)),t["ɵdid"](2,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](4,671744,null,0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](6,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](7,81920,null,0,s,[u.q,i.a],{ngDataReady:[0,"ngDataReady"]},null),t["ɵdid"](8,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](9,16384,null,0,d.h,[[3,u.d],d.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0,n.parent.context.$implicit.name),l(n,7,0,e.ngDataReady),l(n,9,0,n.parent.context.$implicit.name)}),(function(l,n){l(n,1,1,[n.parent.context.$implicit.name,n.parent.context.$implicit.name,t["ɵnov"](n,6).ngClassUntouched,t["ɵnov"](n,6).ngClassTouched,t["ɵnov"](n,6).ngClassPristine,t["ɵnov"](n,6).ngClassDirty,t["ɵnov"](n,6).ngClassValid,t["ɵnov"](n,6).ngClassInvalid,t["ɵnov"](n,6).ngClassPending,t["ɵnov"](n,9).validClass,t["ɵnov"](n,9).invalidClass])}))}function R(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,8,"input",[["cdDimlessBinaryPerSecond",""],["class","form-control"],["defaultUnit","b"],["type","text"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,2)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,2).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,2)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,2)._compositionEnd(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,7).onBlur(e.target.value)&&u),u}),null,null)),t["ɵdid"](2,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](4,671744,null,0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](6,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](7,81920,null,0,p,[t.ElementRef,u.q,m.a,i.a],{ngDataReady:[0,"ngDataReady"],defaultUnit:[1,"defaultUnit"]},null),t["ɵdid"](8,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](9,16384,null,0,d.h,[[3,u.d],d.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0,n.parent.context.$implicit.name),l(n,7,0,e.ngDataReady,"b"),l(n,9,0,n.parent.context.$implicit.name)}),(function(l,n){l(n,1,1,[n.parent.context.$implicit.name,n.parent.context.$implicit.name,t["ɵnov"](n,6).ngClassUntouched,t["ɵnov"](n,6).ngClassTouched,t["ɵnov"](n,6).ngClassPristine,t["ɵnov"](n,6).ngClassDirty,t["ɵnov"](n,6).ngClassValid,t["ɵnov"](n,6).ngClassInvalid,t["ɵnov"](n,6).ngClassPending,t["ɵnov"](n,9).validClass,t["ɵnov"](n,9).invalidClass])}))}function _(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,8,"input",[["cdIops",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,2)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,2).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,2)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,2)._compositionEnd(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,7).onUpdate(e.target.value)&&u),u}),null,null)),t["ɵdid"](2,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](4,671744,null,0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](6,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](7,81920,null,0,h,[i.a,u.q],{ngDataReady:[0,"ngDataReady"]},null),t["ɵdid"](8,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](9,16384,null,0,d.h,[[3,u.d],d.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0,n.parent.context.$implicit.name),l(n,7,0,e.ngDataReady),l(n,9,0,n.parent.context.$implicit.name)}),(function(l,n){l(n,1,1,[n.parent.context.$implicit.name,n.parent.context.$implicit.name,t["ɵnov"](n,6).ngClassUntouched,t["ɵnov"](n,6).ngClassTouched,t["ɵnov"](n,6).ngClassPristine,t["ɵnov"](n,6).ngClassDirty,t["ɵnov"](n,6).ngClassValid,t["ɵnov"](n,6).ngClassInvalid,t["ɵnov"](n,6).ngClassPending,t["ɵnov"](n,9).validClass,t["ɵnov"](n,9).invalidClass])}))}function w(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The mininum value is 0"]))],null,null)}function y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,g.b,g.a)),t["ɵdid"](1,1163264,null,2,d.c,[t.ElementRef,d.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](5,null,["",""])),(l()(),t["ɵeld"](6,0,null,null,2,"cd-helper",[],null,null,null,f.b,f.a)),t["ɵdid"](7,49152,null,0,v.a,[],null,null),(l()(),t["ɵted"](8,0,["",""])),(l()(),t["ɵeld"](9,0,null,0,20,"div",[],[[8,"className",0]],null,null,null,null)),(l()(),t["ɵeld"](10,0,null,null,17,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),t["ɵeld"](11,0,null,null,7,null,null,null,null,null,null,null)),t["ɵdid"](12,16384,null,0,b.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,S)),t["ɵdid"](14,278528,null,0,b.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,b.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,R)),t["ɵdid"](16,278528,null,0,b.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,b.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,_)),t["ɵdid"](18,278528,null,0,b.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,b.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵeld"](19,0,null,null,8,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),t["ɵeld"](20,0,null,null,7,"button",[["class","btn btn-light"],["data-toggle","button"],["title","Remove the local configuration value. The parent configuration value will be inherited and used instead."],["type","button"]],null,[[null,"click"]],(function(l,n,e){var t=!0;return"click"===n&&(t=!1!==l.component.reset(l.context.$implicit.name)&&t),t}),null,null)),t["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](22,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t["ɵpod"](23,{active:0}),(l()(),t["ɵeld"](24,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),t["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](26,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),t["ɵpad"](27,1),(l()(),t["ɵand"](16777216,null,null,1,null,w)),t["ɵdid"](29,16384,null,0,b.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,12,0,n.context.$implicit.type),l(n,14,0,e.configurationType.milliseconds),l(n,16,0,e.configurationType.bps),l(n,18,0,e.configurationType.iops);var u=l(n,23,0,e.isDisabled(n.context.$implicit.name));l(n,22,0,"btn btn-light",u);var i=l(n,27,0,e.icons.erase);l(n,26,0,i),l(n,29,0,e.form.showError("configuration."+n.context.$implicit.name,t["ɵnov"](n.parent.parent,0),"min"))}),(function(l,n){l(n,0,0,t["ɵnov"](n,1).hasErrors,t["ɵnov"](n,1).hasSuccess),l(n,4,0,n.context.$implicit.name),l(n,5,0,n.context.$implicit.displayName),l(n,8,0,n.context.$implicit.description),l(n,9,0,t["ɵinlineInterpolate"](1,"cd-col-form-input ",n.parent.context.$implicit.heading,""))}))}function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,"div",[["class","col-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,5,"h4",[["class","cd-header"]],null,null,null,null,null)),(l()(),t["ɵeld"](2,0,null,null,4,"span",[["class","collapsible"]],null,[[null,"click"]],(function(l,n,e){var t=!0;return"click"===n&&(t=!1!==l.component.toggleSectionVisibility(l.context.$implicit.class)&&t),t}),null,null)),(l()(),t["ɵted"](3,null,[" "," "])),(l()(),t["ɵeld"](4,0,null,null,2,"i",[["aria-hidden","true"]],null,null,null,null,null)),t["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](6,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(l()(),t["ɵeld"](7,0,null,null,2,"div",[],[[8,"className",0],[8,"hidden",0]],null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,y)),t["ɵdid"](9,278528,null,0,b.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,6,0,e.sectionVisibility[n.context.$implicit.class]?e.icons.minusCircle:e.icons.addCircle),l(n,9,0,n.context.$implicit.options)}),(function(l,n){var e=n.component;l(n,3,0,n.context.$implicit.heading),l(n,7,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.class,""),!e.sectionVisibility[n.context.$implicit.class])}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,[["cfgFormGroup",1]],null,8,"fieldset",[],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,1).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,1).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,4).onSubmit()&&u),u}),null,null)),t["ɵdid"](1,540672,null,0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](3,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](4,16384,null,0,d.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](5,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["RBD Configuration"])),(l()(),t["ɵand"](16777216,null,null,1,null,k)),t["ɵdid"](8,278528,null,0,b.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.form.get("configuration")),l(n,4,0,e.form.get("configuration")),l(n,8,0,e.rbdConfigurationService.sections)}),(function(l,n){l(n,0,0,t["ɵnov"](n,3).ngClassUntouched,t["ɵnov"](n,3).ngClassTouched,t["ɵnov"](n,3).ngClassPristine,t["ɵnov"](n,3).ngClassDirty,t["ɵnov"](n,3).ngClassValid,t["ɵnov"](n,3).ngClassInvalid,t["ɵnov"](n,3).ngClassPending)}))}},E7j4:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("ANnk"),s=e("f/UV"),a=e("aexS"),o=e("+gVj"),r=e("EEJc"),d=e("ajRT"),c=e("mXUL"),m=e("IZUe"),p=e("SVse"),h=e("gp3X"),g=e("sb0X"),f=e("KVJa"),v=e("Z21x"),b=e("sne2"),C=e("+26A"),S=e("LqlI"),R=e("XED3"),_=e("kn/O");e.d(n,"a",(function(){return D}));var w=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.key),l(n,2,0,n.context.$implicit.key)}),(function(l,n){l(n,3,0,n.context.$implicit.desc)}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,3).onChange(e.target.checked)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,3).onTouched()&&u),u}),null,null)),t["ɵdid"](2,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](3,16384,null,0,u.c,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.c]),t["ɵdid"](5,671744,[[5,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](7,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](8,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](9,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](10,null,["",""]))],(function(l,n){l(n,5,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,"")),l(n,8,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""))}),(function(l,n){l(n,1,1,[t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""),t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""),t["ɵnov"](n,7).ngClassUntouched,t["ɵnov"](n,7).ngClassTouched,t["ɵnov"](n,7).ngClassPristine,t["ɵnov"](n,7).ngClassDirty,t["ɵnov"](n,7).ngClassValid,t["ɵnov"](n,7).ngClassInvalid,t["ɵnov"](n,7).ngClassPending,t["ɵnov"](n,8).validClass,t["ɵnov"](n,8).invalidClass]),l(n,9,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,"")),l(n,10,0,n.context.$implicit.name)}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["At least one pool is required."]))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The token is invalid."]))],null,null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,89,"cd-modal",[],null,null,null,r.c,r.b)),t["ɵdid"](1,49152,null,0,d.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Import Bootstrap Token"])),(l()(),t["ɵeld"](4,0,null,1,85,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,84,"form",[["class","form"],["name","importBootstrapForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,u.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](9,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](10,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,71,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,5,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,4,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To import a bootstrap token which was created by a peer site cluster, provide the local site's name, select which pools will have mirroring enabled, provide the generated token, and click "])),(l()(),t["ɵeld"](15,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Import"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](18,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](19,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](22,0,null,0,1,"label",[["class","col-form-label required"],["for","siteName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Site Name"])),(l()(),t["ɵeld"](24,0,null,0,8,"input",[["autofocus",""],["class","form-control"],["formControlName","siteName"],["id","siteName"],["name","siteName"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,27)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,27).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,27)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,27)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](25,4210688,null,0,m.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](26,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](27,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](29,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](31,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](32,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,y)),t["ɵdid"](34,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](35,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](36,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](39,0,null,0,2,"label",[["class","col-form-label"],["for","direction"]],null,null,null,null,null)),(l()(),t["ɵeld"](40,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Direction"])),(l()(),t["ɵeld"](42,0,null,0,9,"select",[["class","form-control custom-select"],["formControlName","direction"],["id","direction"],["name","direction"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,44).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,44).onTouched()&&u),u}),null,null)),t["ɵdid"](43,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](44,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](46,671744,[[3,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](48,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](49,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,k)),t["ɵdid"](51,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵeld"](52,0,null,null,12,"div",[["class","form-group"],["formGroupName","pools"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](53,212992,null,0,u.m,[[3,u.d],[8,null],[8,null]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.d,null,[u.m]),t["ɵdid"](55,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](56,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](59,0,null,0,1,"label",[["class","col-form-label required"],["for","pools"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pools"])),(l()(),t["ɵand"](16777216,null,0,1,null,I)),t["ɵdid"](62,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,E)),t["ɵdid"](64,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](65,0,null,null,17,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](66,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,7,{FormControlNames:1}),t["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),t["ɵeld"](69,0,null,0,1,"label",[["class","col-form-label required"],["for","token"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Token"])),(l()(),t["ɵeld"](71,0,null,0,7,"textarea",[["class","form-control resize-vertical"],["formControlName","token"],["id","token"],["placeholder","Generated token..."]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,72)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,72).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,72)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,72)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](72,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](74,671744,[[7,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](76,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](77,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵted"](-1,null,["          "])),(l()(),t["ɵand"](16777216,null,0,1,null,N)),t["ɵdid"](80,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,F)),t["ɵdid"](82,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](83,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](84,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](85,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.import()&&t),t}),h.b,h.a)),t["ɵdid"](86,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Import"])),(l()(),t["ɵeld"](88,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,f.b,f.a)),t["ɵdid"](89,49152,null,0,v.a,[p.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.importBootstrapForm),l(n,10,0,e.importBootstrapForm),l(n,19,0),l(n,25,0,""),l(n,29,0,"siteName"),l(n,32,0,"siteName"),l(n,34,0,e.importBootstrapForm.showError("siteName",t["ɵnov"](n,7),"required")),l(n,36,0),l(n,46,0,"direction"),l(n,49,0,"direction"),l(n,51,0,e.directions),l(n,53,0,"pools"),l(n,56,0),l(n,62,0,e.pools),l(n,64,0,e.importBootstrapForm.showError("pools",t["ɵnov"](n,7),"requirePool")),l(n,66,0),l(n,74,0,"token"),l(n,77,0,"token"),l(n,80,0,e.importBootstrapForm.showError("token",t["ɵnov"](n,7),"required")),l(n,82,0,e.importBootstrapForm.showError("token",t["ɵnov"](n,7),"invalidToken")),l(n,86,0,e.importBootstrapForm),l(n,89,0,"Close",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,18,0,t["ɵnov"](n,19).hasErrors,t["ɵnov"](n,19).hasSuccess),l(n,24,0,t["ɵnov"](n,31).ngClassUntouched,t["ɵnov"](n,31).ngClassTouched,t["ɵnov"](n,31).ngClassPristine,t["ɵnov"](n,31).ngClassDirty,t["ɵnov"](n,31).ngClassValid,t["ɵnov"](n,31).ngClassInvalid,t["ɵnov"](n,31).ngClassPending,t["ɵnov"](n,32).validClass,t["ɵnov"](n,32).invalidClass),l(n,35,0,t["ɵnov"](n,36).hasErrors,t["ɵnov"](n,36).hasSuccess),l(n,42,0,t["ɵnov"](n,48).ngClassUntouched,t["ɵnov"](n,48).ngClassTouched,t["ɵnov"](n,48).ngClassPristine,t["ɵnov"](n,48).ngClassDirty,t["ɵnov"](n,48).ngClassValid,t["ɵnov"](n,48).ngClassInvalid,t["ɵnov"](n,48).ngClassPending,t["ɵnov"](n,49).validClass,t["ɵnov"](n,49).invalidClass),l(n,52,0,t["ɵnov"](n,55).ngClassUntouched,t["ɵnov"](n,55).ngClassTouched,t["ɵnov"](n,55).ngClassPristine,t["ɵnov"](n,55).ngClassDirty,t["ɵnov"](n,55).ngClassValid,t["ɵnov"](n,55).ngClassInvalid,t["ɵnov"](n,55).ngClassPending,t["ɵnov"](n,56).hasErrors,t["ɵnov"](n,56).hasSuccess),l(n,65,0,t["ɵnov"](n,66).hasErrors,t["ɵnov"](n,66).hasSuccess),l(n,71,0,t["ɵnov"](n,76).ngClassUntouched,t["ɵnov"](n,76).ngClassTouched,t["ɵnov"](n,76).ngClassPristine,t["ɵnov"](n,76).ngClassDirty,t["ɵnov"](n,76).ngClassValid,t["ɵnov"](n,76).ngClassInvalid,t["ɵnov"](n,76).ngClassPending,t["ɵnov"](n,77).validClass,t["ɵnov"](n,77).invalidClass)}))}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-bootstrap-import-modal",[],null,null,null,V,w)),t["ɵdid"](1,245760,null,0,C.a,[S.a,R.a,_.a],null,null)],(function(l,n){l(n,1,0)}),null)}var D=t["ɵccf"]("cd-bootstrap-import-modal",C.a,T,{},{},[])},EFGL:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("SVse"),i=e("IzCI"),s=e("aXbf"),a=e("dEH0"),o=e("BQkM"),r=e("25BL"),d=e("uIqm");e("aAWM"),e("o8EM"),e("GiVz"),e.d(n,"a",(function(){return c})),e.d(n,"b",(function(){return R}));var c=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function m(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Global"]))],null,null)}function p(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Image"]))],null,null)}function h(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pool"]))],null,null)}function g(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,7,"div",[],null,null,null,null,null)),t["ɵdid"](1,16384,null,0,u.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,m)),t["ɵdid"](3,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,p)),t["ɵdid"](5,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,h)),t["ɵdid"](7,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null)],(function(l,n){l(n,1,0,n.context.value),l(n,3,0,"global"),l(n,5,0,"image"),l(n,7,0,"pool")}),null)}function f(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""])),t["ɵppd"](2,1)],null,(function(l,n){var e=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,0),n.parent.context.value));l(n,1,0,e)}))}function v(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""])),t["ɵppd"](2,1)],null,(function(l,n){var e=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,1),n.parent.context.value));l(n,1,0,e)}))}function b(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""])),t["ɵppd"](2,1)],null,(function(l,n){var e=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,2),n.parent.context.value));l(n,1,0,e)}))}function C(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""]))],null,(function(l,n){l(n,1,0,n.parent.context.value)}))}function S(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,9,"div",[],null,null,null,null,null)),t["ɵdid"](1,16384,null,0,u.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,f)),t["ɵdid"](3,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,v)),t["ɵdid"](5,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,b)),t["ɵdid"](7,278528,null,0,u.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,C)),t["ɵdid"](9,16384,null,0,u.NgSwitchDefault,[t.ViewContainerRef,t.TemplateRef,u.NgSwitch],null,null)],(function(l,n){var e=n.component;l(n,1,0,n.context.row.type),l(n,3,0,e.typeField.bps),l(n,5,0,e.typeField.milliseconds),l(n,7,0,e.typeField.iops)}),null)}function R(l){return t["ɵvid"](0,[t["ɵpid"](0,i.a,[s.a]),t["ɵpid"](0,a.a,[]),t["ɵpid"](0,o.a,[]),t["ɵqud"](402653184,1,{configurationSourceTpl:0}),t["ɵqud"](402653184,2,{configurationValueTpl:0}),t["ɵqud"](402653184,3,{poolConfTable:0}),(l()(),t["ɵeld"](6,0,null,null,1,"cd-table",[["identifier","name"]],null,null,null,r.b,r.a)),t["ɵdid"](7,2867200,[[3,4],["poolConfTable",4]],0,d.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],identifier:[2,"identifier"]},null),(l()(),t["ɵand"](0,[[1,2],["configurationSourceTpl",2]],null,0,null,g)),(l()(),t["ɵand"](0,[[2,2],["configurationValueTpl",2]],null,0,null,S))],(function(l,n){var e=n.component;l(n,7,0,e.data,e.poolConfigurationColumns,"name")}),null)}},F83c:function(l,n,e){"use strict";e.d(n,"a",(function(){return m}));var t=e("mrSG"),u=e("IheW"),i=e("LvDl"),s=e("lJxs"),a=e("xTzq"),o=e("jVDg"),r=e("o8EM"),d=e("8Y7J"),c=e("pL04");let m=(()=>{let l=class{constructor(l,n){this.http=l,this.rbdConfigurationService=n}isRBDPool(l){return-1!==i.indexOf(l.application_metadata,"rbd")&&!l.pool_name.includes("/")}create(l){return this.http.post("api/block/image",l,{observe:"response"})}delete(l){return this.http.delete("api/block/image/"+l.toStringEncoded(),{observe:"response"})}update(l,n){return this.http.put("api/block/image/"+l.toStringEncoded(),n,{observe:"response"})}get(l){return this.http.get("api/block/image/"+l.toStringEncoded())}list(){return this.http.get("api/block/image").pipe(Object(s.a)(l=>l.map(l=>(l.value.map(l=>l.configuration?(l.configuration.map(l=>Object.assign(l,this.rbdConfigurationService.getOptionByName(l.name))),l):l),l))))}copy(l,n){return this.http.post(`api/block/image/${l.toStringEncoded()}/copy`,n,{observe:"response"})}flatten(l){return this.http.post(`api/block/image/${l.toStringEncoded()}/flatten`,null,{observe:"response"})}defaultFeatures(){return this.http.get("api/block/image/default_features")}createSnapshot(l,n){const e={snapshot_name:n};return this.http.post(`api/block/image/${l.toStringEncoded()}/snap`,e,{observe:"response"})}renameSnapshot(l,n,e){const t={new_snap_name:e};return this.http.put(`api/block/image/${l.toStringEncoded()}/snap/${n}`,t,{observe:"response"})}protectSnapshot(l,n,e){const t={is_protected:e};return this.http.put(`api/block/image/${l.toStringEncoded()}/snap/${n}`,t,{observe:"response"})}rollbackSnapshot(l,n){return this.http.post(`api/block/image/${l.toStringEncoded()}/snap/${n}/rollback`,null,{observe:"response"})}cloneSnapshot(l,n,e){return this.http.post(`api/block/image/${l.toStringEncoded()}/snap/${n}/clone`,e,{observe:"response"})}deleteSnapshot(l,n){return this.http.delete(`api/block/image/${l.toStringEncoded()}/snap/${n}`,{observe:"response"})}listTrash(){return this.http.get("api/block/image/trash/")}createNamespace(l,n){return this.http.post(`api/block/pool/${l}/namespace`,{namespace:n},{observe:"response"})}listNamespaces(l){return this.http.get(`api/block/pool/${l}/namespace/`)}deleteNamespace(l,n){return this.http.delete(`api/block/pool/${l}/namespace/${n}`,{observe:"response"})}moveTrash(l,n){return this.http.post(`api/block/image/${l.toStringEncoded()}/move_trash`,{delay:n},{observe:"response"})}purgeTrash(l){return this.http.post("api/block/image/trash/purge/?pool_name="+l,null,{observe:"response"})}restoreTrash(l,n){return this.http.post(`api/block/image/trash/${l.toStringEncoded()}/restore`,{new_image_name:n},{observe:"response"})}removeTrash(l,n=!1){return this.http.delete(`api/block/image/trash/${l.toStringEncoded()}/?force=${n}`,{observe:"response"})}};return l.ngInjectableDef=d["ɵɵdefineInjectable"]({factory:function(){return new l(d["ɵɵinject"](u.c),d["ɵɵinject"](r.a))},token:l,providedIn:c.a}),t.__decorate([t.__param(1,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[o.a,String]),t.__metadata("design:returntype",void 0)],l.prototype,"createSnapshot",null),t.__decorate([t.__param(2,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[o.a,String,String]),t.__metadata("design:returntype",void 0)],l.prototype,"renameSnapshot",null),t.__decorate([t.__param(2,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[o.a,String,Boolean]),t.__metadata("design:returntype",void 0)],l.prototype,"protectSnapshot",null),t.__decorate([t.__param(1,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[o.a,String]),t.__metadata("design:returntype",void 0)],l.prototype,"restoreTrash",null),l=t.__decorate([a.a,t.__metadata("design:paramtypes",[u.c,r.a])],l),l})()},Fd71:function(l,n,e){"use strict";e.d(n,"a",(function(){return o}));var t=e("s7LF"),u=e("XNiG"),i=(e("F83c"),e("sne2"),e("QFaf")),s=e("kvvV"),a=e("jVDg");e("9nlD"),e("VXsX");class o{constructor(l,n,e,t,u,i){this.modalRef=l,this.rbdService=n,this.taskManagerService=e,this.notificationService=t,this.i18n=u,this.actionLabels=i,this.editing=!1,this.action=this.actionLabels.CREATE,this.resource=this.i18n("RBD Snapshot"),this.createForm()}createForm(){this.snapshotForm=new i.a({snapshotName:new t.i("",{validators:[t.B.required]})})}ngOnInit(){this.onSubmit=new u.a}setSnapName(l){this.snapName=l,this.snapshotForm.get("snapshotName").setValue(l)}setEditing(l=!0){this.editing=l,this.action=this.editing?this.actionLabels.RENAME:this.actionLabels.CREATE}editAction(){const l=this.snapshotForm.getValue("snapshotName"),n=new a.a(this.poolName,this.namespace,this.imageName),e=new s.a;e.name="rbd/snap/edit",e.metadata={image_spec:n.toString(),snapshot_name:l},this.rbdService.renameSnapshot(n,this.snapName,l).toPromise().then(()=>{this.taskManagerService.subscribe(e.name,e.metadata,l=>{this.notificationService.notifyTask(l)}),this.modalRef.hide(),this.onSubmit.next(this.snapName)}).catch(()=>{this.snapshotForm.setErrors({cdSubmitButton:!0})})}createAction(){const l=this.snapshotForm.getValue("snapshotName"),n=new a.a(this.poolName,this.namespace,this.imageName),e=new s.a;e.name="rbd/snap/create",e.metadata={image_spec:n.toString(),snapshot_name:l},this.rbdService.createSnapshot(n,l).toPromise().then(()=>{this.taskManagerService.subscribe(e.name,e.metadata,l=>{this.notificationService.notifyTask(l)}),this.modalRef.hide(),this.onSubmit.next(l)}).catch(()=>{this.snapshotForm.setErrors({cdSubmitButton:!0})})}submit(){this.editing?this.editAction():this.createAction()}}},I4Qz:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("EEJc"),i=e("ajRT"),s=e("s7LF"),a=e("+gVj"),o=e("SVse"),r=e("mXUL"),d=e("ienR"),c=e("z/SZ"),m=e("ANnk"),p=e("f/UV"),h=e("aexS"),g=e("gp3X"),f=e("sb0X"),v=e("KVJa"),b=e("Z21x"),C=e("sne2"),S=e("2JDI"),R=e("F83c"),_=e("LqlI"),w=e("2EZI"),y=e("kn/O");e.d(n,"a",(function(){return T}));var k=t["ɵcrt"]({encapsulation:0,styles:[[".bs-datepicker-head bs-datepicker-navigation-view{display:flex;justify-content:space-between}"]],data:{}});function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"div",[["class","alert alert-warning"],["role","alert"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This image contains snapshot(s), which will prevent it from being removed after moved to trash."]))],null,null)}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,['Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".']))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Protection has already expired. Please pick a future date or leave it empty."]))],null,null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,49,"cd-modal",[],null,null,null,u.c,u.b)),t["ɵdid"](1,49152,null,0,i.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Move an image to trash"])),(l()(),t["ɵeld"](4,0,null,1,45,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,44,"form",[["class","form"],["name","moveForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,s.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,s.d,null,[s.l]),t["ɵdid"](9,16384,null,0,s.s,[[4,s.d]],null,null),t["ɵdid"](10,16384,null,0,a.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,31,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](14,0,null,null,7,"p",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To move "])),(l()(),t["ɵeld"](16,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](17,null,["",""])),(l()(),t["ɵted"](-1,null,[" to trash, click "])),(l()(),t["ɵeld"](19,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Move Image"])),(l()(),t["ɵted"](-1,null,[". Optionally, you can pick an expiration date."])),(l()(),t["ɵeld"](22,0,null,null,20,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](23,1163264,null,2,a.c,[t.ElementRef,a.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](26,0,null,0,1,"label",[["class","col-form-label"],["for","expires"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Protection expires at"])),(l()(),t["ɵeld"](28,16777216,null,0,10,"input",[["bsDatepicker",""],["class","form-control"],["formControlName","expiresAt"],["placeholder","NOT PROTECTED"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,29)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,29).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,29)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,29)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,31).onChange(e)&&u),"keyup.esc"===n&&(u=!1!==t["ɵnov"](l,31).hide()&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,31).onBlur()&&u),u}),null,null)),t["ɵdid"](29,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵdid"](30,737280,null,0,d.c,[d.a,t.ElementRef,t.Renderer2,t.ViewContainerRef,c.a],{bsConfig:[0,"bsConfig"],minDate:[1,"minDate"]},null),t["ɵdid"](31,16384,null,0,d.f,[d.c,d.l,t.Renderer2,t.ElementRef,t.ChangeDetectorRef],null,null),t["ɵprd"](1024,null,s.o,(function(l){return[l]}),[d.f]),t["ɵprd"](1024,null,s.p,(function(l,n){return[l,n]}),[s.e,d.f]),t["ɵdid"](34,671744,[[1,4]],0,s.j,[[3,s.d],[6,s.o],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](36,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](37,4210688,null,0,m.a,[[2,p.a],h.a,t.ElementRef],null,null),t["ɵdid"](38,16384,null,0,a.h,[[3,s.d],a.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,E)),t["ɵdid"](40,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,N)),t["ɵdid"](42,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](43,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](44,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](45,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.moveImage()&&t),t}),g.b,g.a)),t["ɵdid"](46,114688,null,0,f.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Move Image"])),(l()(),t["ɵeld"](48,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,v.b,v.a)),t["ɵdid"](49,49152,null,0,b.a,[o.Location,C.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.moveForm),l(n,10,0,e.moveForm),l(n,13,0,e.hasSnapshots),l(n,23,0),l(n,30,0,e.bsConfig,e.minDate),l(n,34,0,"expiresAt"),l(n,38,0,"expiresAt"),l(n,40,0,e.moveForm.showError("expiresAt",t["ɵnov"](n,7),"format")),l(n,42,0,e.moveForm.showError("expiresAt",t["ɵnov"](n,7),"expired")),l(n,46,0,e.moveForm),l(n,49,0,"Cancel",e.modalRef.hide)}),(function(l,n){var e=n.component;l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,17,0,e.imageSpecStr),l(n,22,0,t["ɵnov"](n,23).hasErrors,t["ɵnov"](n,23).hasSuccess),l(n,28,0,t["ɵnov"](n,36).ngClassUntouched,t["ɵnov"](n,36).ngClassTouched,t["ɵnov"](n,36).ngClassPristine,t["ɵnov"](n,36).ngClassDirty,t["ɵnov"](n,36).ngClassValid,t["ɵnov"](n,36).ngClassInvalid,t["ɵnov"](n,36).ngClassPending,t["ɵnov"](n,38).validClass,t["ɵnov"](n,38).invalidClass)}))}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-trash-move-modal",[],null,null,null,F,k)),t["ɵdid"](1,114688,null,0,S.a,[R.a,_.a,w.a,y.a],null,null)],(function(l,n){l(n,1,0)}),null)}var T=t["ɵccf"]("cd-rbd-trash-move-modal",S.a,V,{},{},[])},JBea:function(l,n,e){"use strict";e.d(n,"a",(function(){return t})),e("lArG");class t{constructor(){}ngOnChanges(){this.selection&&(this.rbdDashboardUrl=`rbd-details?var-Pool=${this.selection.pool_name}&var-Image=${this.selection.name}`)}}},"JIi+":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("978R"),i=e("z/SZ"),s=e("2uy1"),a=e("SVse"),o=e("pKUh"),r=e("2ZVE"),d=e("25BL"),c=e("uIqm"),m=e("NUGo"),p=e("S7zO"),h=e("VTlA"),g=e("ufoC"),f=e("mSOc"),v=e("wd/R"),b=e("LRne"),C=e("F83c"),S=e("OLbh"),R=e("0+/T"),_=e("sne2"),w=e("x38r"),y=e("vCyI"),k=e("QTAa"),I=e("kvvV"),E=e("jVDg"),N=e("a0VL"),F=e("Fgil"),V=e("aexS"),T=e("9nlD"),D=e("VXsX"),x=e("Fd71"),P=e("LvDl"),q=e("oxzT");class B{constructor(l,n,e){this.i18n=l,this.create={permission:"create",icon:q.a.add,name:n.CREATE},this.rename={permission:"update",icon:q.a.edit,name:n.RENAME},this.protect={permission:"update",icon:q.a.lock,visible:l=>l.hasSingleSelection&&!l.first().is_protected,name:n.PROTECT},this.unprotect={permission:"update",icon:q.a.unlock,visible:l=>l.hasSingleSelection&&l.first().is_protected,name:n.UNPROTECT},this.clone={permission:"create",canBePrimary:l=>l.hasSingleSelection,disable:l=>this.getCloneDisableDesc(l,e),icon:q.a.clone,name:n.CLONE},this.copy={permission:"create",canBePrimary:l=>l.hasSingleSelection,disable:l=>!l.hasSingleSelection||l.first().cdExecuting,icon:q.a.copy,name:n.COPY},this.rollback={permission:"update",icon:q.a.undo,name:n.ROLLBACK},this.deleteSnap={permission:"delete",icon:q.a.destroy,disable:l=>{const n=l.first();return!l.hasSingleSelection||n.cdExecuting||n.is_protected},name:n.DELETE},this.ordering=[this.create,this.rename,this.protect,this.unprotect,this.clone,this.copy,this.rollback,this.deleteSnap]}getCloneDisableDesc(l,n){return!(l&&l.hasSingleSelection&&!l.first().cdExecuting)||!P.includes(n,"layering")&&this.i18n("Parent image must support Layering")}}class A{}class M{constructor(l,n,e,t,u,i,s,a,o,r,d){this.authStorageService=l,this.modalService=n,this.dimlessBinaryPipe=e,this.cdDatePipe=t,this.rbdService=u,this.taskManagerService=i,this.notificationService=s,this.summaryService=a,this.taskListService=o,this.i18n=r,this.actionLabels=d,this.snapshots=[],this.selection=new y.a,this.builders={"rbd/snap/create":l=>{const n=new A;return n.name=l.snapshot_name,n}},this.permission=this.authStorageService.getPermissions().rbdImage}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"name",cellTransformation:w.a.executing,flexGrow:2},{name:this.i18n("Size"),prop:"size",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:this.i18n("Provisioned"),prop:"disk_usage",flexGrow:1,cellClass:"text-right",pipe:this.dimlessBinaryPipe},{name:this.i18n("State"),prop:"is_protected",flexGrow:1,cellTransformation:w.a.badge,customTemplateConfig:{map:{true:{value:this.i18n("PROTECTED"),class:"badge-success"},false:{value:this.i18n("UNPROTECTED"),class:"badge-info"}}}},{name:this.i18n("Created"),prop:"timestamp",flexGrow:1,pipe:this.cdDatePipe}]}ngOnChanges(){const l=new E.a(this.poolName,this.namespace,this.rbdName),n=new B(this.i18n,this.actionLabels,this.featuresName);n.create.click=()=>this.openCreateSnapshotModal(),n.rename.click=()=>this.openEditSnapshotModal(),n.protect.click=()=>this.toggleProtection(),n.unprotect.click=()=>this.toggleProtection();const e=()=>this.selection.first()&&`${l.toStringEncoded()}/${encodeURIComponent(this.selection.first().name)}`;n.clone.routerLink=()=>"/block/rbd/clone/"+e(),n.copy.routerLink=()=>"/block/rbd/copy/"+e(),n.rollback.click=()=>this.rollbackModal(),n.deleteSnap.click=()=>this.deleteSnapshotModal(),this.tableActions=n.ordering,this.taskListService.init(()=>Object(b.a)(this.snapshots),null,l=>this.data=l,()=>this.data=this.snapshots,n=>["rbd/snap/create","rbd/snap/delete","rbd/snap/edit","rbd/snap/rollback"].includes(n.name)&&l.toString()===n.metadata.image_spec,(l,n)=>l.name===n.metadata.snapshot_name,this.builders)}openSnapshotModal(l,n=null){this.modalRef=this.modalService.show(x.a),this.modalRef.content.poolName=this.poolName,this.modalRef.content.imageName=this.rbdName,this.modalRef.content.namespace=this.namespace,n?this.modalRef.content.setEditing():n=`${this.rbdName}_${v().toISOString(!0)}`,this.modalRef.content.setSnapName(n),this.modalRef.content.onSubmit.subscribe(n=>{const e=new k.a;e.name=l,e.metadata={image_name:this.rbdName,pool_name:this.poolName,snapshot_name:n},this.summaryService.addRunningTask(e),this.ngOnChanges()})}openCreateSnapshotModal(){this.openSnapshotModal("rbd/snap/create")}openEditSnapshotModal(){this.openSnapshotModal("rbd/snap/edit",this.selection.first().name)}toggleProtection(){const l=this.selection.first().name,n=this.selection.first().is_protected,e=new I.a;e.name="rbd/snap/edit";const t=new E.a(this.poolName,this.namespace,this.rbdName);e.metadata={image_spec:t.toString(),snapshot_name:l},this.rbdService.protectSnapshot(t,l,!n).toPromise().then(()=>{const l=new k.a;l.name=e.name,l.metadata=e.metadata,this.summaryService.addRunningTask(l),this.ngOnChanges(),this.taskManagerService.subscribe(e.name,e.metadata,l=>{this.notificationService.notifyTask(l)})})}_asyncTask(l,n,e){const t=new I.a;t.name=n,t.metadata={image_spec:new E.a(this.poolName,this.namespace,this.rbdName).toString(),snapshot_name:e};const u=new E.a(this.poolName,this.namespace,this.rbdName);this.rbdService[l](u,e).toPromise().then(()=>{const l=new k.a;l.name=t.name,l.metadata=t.metadata,this.summaryService.addRunningTask(l),this.modalRef.hide(),this.ngOnChanges(),this.taskManagerService.subscribe(l.name,l.metadata,l=>{this.notificationService.notifyTask(l)})}).catch(()=>{this.modalRef.content.stopLoadingSpinner()})}rollbackModal(){const l=this.selection.selected[0].name,n=new E.a(this.poolName,this.namespace,this.rbdName).toString(),e={titleText:this.i18n("RBD snapshot rollback"),buttonText:this.i18n("Rollback"),bodyTpl:this.rollbackTpl,bodyData:{snapName:`${n}@${l}`},onSubmit:()=>{this._asyncTask("rollbackSnapshot","rbd/snap/rollback",l)}};this.modalRef=this.modalService.show(S.a,{initialState:e})}deleteSnapshotModal(){const l=this.selection.selected[0].name;this.modalRef=this.modalService.show(R.a,{initialState:{itemDescription:this.i18n("RBD snapshot"),itemNames:[l],submitAction:()=>this._asyncTask("deleteSnapshot","rbd/snap/delete",l)}})}updateSelection(l){this.selection=l}}var O=e("LqlI"),L=e("GiVz"),j=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function U(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["You are about to rollback"])),(l()(),t["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](3,null,[" ",""])),(l()(),t["ɵted"](-1,null,[".\n"]))],null,(function(l,n){l(n,3,0,n.context.$implicit.snapName)}))}function G(l){return t["ɵvid"](0,[t["ɵqud"](671088640,1,{nameTpl:0}),t["ɵqud"](402653184,2,{rollbackTpl:0}),(l()(),t["ɵeld"](2,0,null,null,3,"cd-table",[["columnMode","flex"],["selectionType","single"]],null,[[null,"updateSelection"]],(function(l,n,e){var t=!0;return"updateSelection"===n&&(t=!1!==l.component.updateSelection(e)&&t),t}),d.b,d.a)),t["ɵdid"](3,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],selectionType:[3,"selectionType"]},{updateSelection:"updateSelection"}),(l()(),t["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,m.b,m.a)),t["ɵdid"](5,114688,null,0,p.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),t["ɵand"](0,[[2,2],["rollbackTpl",2]],null,0,null,U))],(function(l,n){var e=n.component;l(n,3,0,e.data,e.columns,"flex","single"),l(n,5,0,e.permission,e.selection,e.tableActions)}),null)}var $=e("EFGL"),X=e("aAWM"),z=e("aXbf"),W=e("o8EM"),J=e("a278"),Y=e("insk"),K=e("cUpR"),Z=e("20UP"),H=e("DqMs"),Q=e("/NlG"),ll=e("nSDx"),nl=e("o4+5"),el=e("JBea");e.d(n,"b",(function(){return tl})),e.d(n,"c",(function(){return bl})),e.d(n,"a",(function(){return Sl}));var tl=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ul(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Only available for RBD images with "])),(l()(),t["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["fast-diff"])),(l()(),t["ɵted"](-1,null,[" enabled"]))],null,null)}function il(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(l()(),t["ɵted"](2,null,["",""]))],null,(function(l,n){l(n,2,0,n.context.$implicit)}))}function sl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](1,16777216,null,null,2,"span",[["class","form-text text-muted"],["placement","top"]],null,null,null,null,null)),t["ɵdid"](2,212992,null,0,u.c,[t.ViewContainerRef,i.a,u.a,t.ElementRef,t.Renderer2,s.a],{tooltip:[0,"tooltip"],placement:[1,"placement"]},null),(l()(),t["ɵted"](-1,null,["N/A"]))],(function(l,n){l(n,2,0,t["ɵnov"](n.parent.parent,5),"top")}),null)}function al(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,[" "," "])),t["ɵppd"](2,1)],null,(function(l,n){var e=n.component,u=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,2),e.selection.disk_usage));l(n,1,0,u)}))}function ol(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](1,16777216,null,null,2,"span",[["class","form-text text-muted"],["placement","top"]],null,null,null,null,null)),t["ɵdid"](2,212992,null,0,u.c,[t.ViewContainerRef,i.a,u.a,t.ElementRef,t.Renderer2,s.a],{tooltip:[0,"tooltip"],placement:[1,"placement"]},null),(l()(),t["ɵted"](-1,null,["N/A"]))],(function(l,n){l(n,2,0,t["ɵnov"](n.parent.parent,5),"top")}),null)}function rl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,[" "," "])),t["ɵppd"](2,1)],null,(function(l,n){var e=n.component,u=t["ɵunv"](n,1,0,l(n,2,0,t["ɵnov"](n.parent.parent,2),e.selection.total_disk_usage));l(n,1,0,u)}))}function dl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["/",""]))],null,(function(l,n){l(n,1,0,n.component.selection.parent.pool_namespace)}))}function cl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""])),(l()(),t["ɵand"](16777216,null,null,1,null,dl)),t["ɵdid"](3,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵted"](4,null,["/","@",""]))],(function(l,n){l(n,3,0,n.component.selection.parent.pool_namespace)}),(function(l,n){var e=n.component;l(n,1,0,e.selection.parent.pool_name),l(n,4,0,e.selection.parent.image_name,e.selection.parent.snap_name)}))}function ml(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["-"]))],null,null)}function pl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,114,"tabset",[],[[2,"tab-container",null]],null,null,o.b,o.a)),t["ɵdid"](1,180224,null,0,r.e,[r.f,t.Renderer2,t.ElementRef],null,null),(l()(),t["ɵeld"](2,0,null,0,99,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](3,212992,null,0,r.b,[r.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵeld"](4,0,null,null,97,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,96,"tbody",[],null,null,null,null,null)),(l()(),t["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](7,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Name"])),(l()(),t["ɵeld"](9,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),t["ɵted"](10,null,["",""])),(l()(),t["ɵeld"](11,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pool"])),(l()(),t["ɵeld"](14,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](15,null,["",""])),(l()(),t["ɵeld"](16,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](17,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Data Pool"])),(l()(),t["ɵeld"](19,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](20,null,["",""])),t["ɵppd"](21,1),(l()(),t["ɵeld"](22,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](23,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Created"])),(l()(),t["ɵeld"](25,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](26,null,["",""])),t["ɵppd"](27,1),(l()(),t["ɵeld"](28,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](29,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Size"])),(l()(),t["ɵeld"](31,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](32,null,["",""])),t["ɵppd"](33,1),(l()(),t["ɵeld"](34,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](35,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Objects"])),(l()(),t["ɵeld"](37,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](38,null,["",""])),t["ɵppd"](39,1),(l()(),t["ɵeld"](40,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](41,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Object size"])),(l()(),t["ɵeld"](43,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](44,null,["",""])),t["ɵppd"](45,1),(l()(),t["ɵeld"](46,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](47,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Features"])),(l()(),t["ɵeld"](49,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,il)),t["ɵdid"](51,278528,null,0,a.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵeld"](52,0,null,null,7,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](53,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Provisioned"])),(l()(),t["ɵeld"](55,0,null,null,4,"td",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,sl)),t["ɵdid"](57,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,al)),t["ɵdid"](59,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](60,0,null,null,7,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](61,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Total provisioned"])),(l()(),t["ɵeld"](63,0,null,null,4,"td",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,ol)),t["ɵdid"](65,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,rl)),t["ɵdid"](67,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](68,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](69,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Striping unit"])),(l()(),t["ɵeld"](71,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](72,null,["",""])),t["ɵppd"](73,1),(l()(),t["ɵeld"](74,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](75,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Striping count"])),(l()(),t["ɵeld"](77,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](78,null,["",""])),(l()(),t["ɵeld"](79,0,null,null,7,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](80,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Parent"])),(l()(),t["ɵeld"](82,0,null,null,4,"td",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,cl)),t["ɵdid"](84,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,ml)),t["ɵdid"](86,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](87,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](88,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Block name prefix"])),(l()(),t["ɵeld"](90,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](91,null,["",""])),(l()(),t["ɵeld"](92,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](93,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Order"])),(l()(),t["ɵeld"](95,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](96,null,["",""])),(l()(),t["ɵeld"](97,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),t["ɵeld"](98,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Format Version"])),(l()(),t["ɵeld"](100,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),t["ɵted"](101,null,["",""])),(l()(),t["ɵeld"](102,0,null,0,4,"tab",[["heading","Snapshots"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](103,212992,null,0,r.b,[r.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵeld"](104,0,null,null,2,"cd-rbd-snapshot-list",[],null,null,null,G,j)),t["ɵprd"](131584,null,h.a,h.a,[g.a,f.a]),t["ɵdid"](106,638976,null,0,M,[V.a,O.b,F.a,N.a,C.a,D.a,T.a,f.a,h.a,L.a,_.b],{snapshots:[0,"snapshots"],featuresName:[1,"featuresName"],poolName:[2,"poolName"],namespace:[3,"namespace"],rbdName:[4,"rbdName"]},null),(l()(),t["ɵeld"](107,0,null,0,3,"tab",[["heading","Configuration"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](108,212992,null,0,r.b,[r.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵeld"](109,0,null,null,1,"cd-rbd-configuration-table",[],null,null,null,$.b,$.a)),t["ɵdid"](110,638976,null,0,X.a,[z.a,W.a,L.a],{data:[0,"data"]},null),(l()(),t["ɵeld"](111,0,null,0,3,"tab",[["heading","Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](112,212992,null,0,r.b,[r.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵeld"](113,0,null,null,1,"cd-grafana",[["grafanaStyle","one"],["uid","YhCYGcuZz"]],null,null,null,J.b,J.a)),t["ɵdid"](114,638976,null,0,Y.a,[K.b,Z.a,L.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){var e=n.component;l(n,3,0,"Details"),l(n,51,0,e.selection.features_name),l(n,57,0,-1===(null==e.selection.features_name?null:e.selection.features_name.indexOf("fast-diff"))),l(n,59,0,-1!==(null==e.selection.features_name?null:e.selection.features_name.indexOf("fast-diff"))),l(n,65,0,-1===(null==e.selection.features_name?null:e.selection.features_name.indexOf("fast-diff"))),l(n,67,0,-1!==(null==e.selection.features_name?null:e.selection.features_name.indexOf("fast-diff"))),l(n,84,0,e.selection.parent),l(n,86,0,!e.selection.parent),l(n,103,0,"Snapshots"),l(n,106,0,e.selection.snapshots,e.selection.features_name,e.selection.pool_name,e.selection.namespace,e.selection.name),l(n,108,0,"Configuration"),l(n,110,0,e.selection.configuration),l(n,112,0,"Performance"),l(n,114,0,e.rbdDashboardUrl,"one","YhCYGcuZz")}),(function(l,n){var e=n.component;l(n,0,0,t["ɵnov"](n,1).clazz),l(n,2,0,t["ɵnov"](n,3).id,t["ɵnov"](n,3).active,t["ɵnov"](n,3).addClass,t["ɵnov"](n,3).role,t["ɵnov"](n,3).ariaLabelledby),l(n,10,0,e.selection.name),l(n,15,0,e.selection.pool_name);var u=t["ɵunv"](n,20,0,l(n,21,0,t["ɵnov"](n.parent,0),e.selection.data_pool));l(n,20,0,u);var i=t["ɵunv"](n,26,0,l(n,27,0,t["ɵnov"](n.parent,1),e.selection.timestamp));l(n,26,0,i);var s=t["ɵunv"](n,32,0,l(n,33,0,t["ɵnov"](n.parent,2),e.selection.size));l(n,32,0,s);var a=t["ɵunv"](n,38,0,l(n,39,0,t["ɵnov"](n.parent,3),e.selection.num_objs));l(n,38,0,a);var o=t["ɵunv"](n,44,0,l(n,45,0,t["ɵnov"](n.parent,2),e.selection.obj_size));l(n,44,0,o);var r=t["ɵunv"](n,72,0,l(n,73,0,t["ɵnov"](n.parent,2),e.selection.stripe_unit));l(n,72,0,r),l(n,78,0,e.selection.stripe_count),l(n,91,0,e.selection.block_name_prefix),l(n,96,0,e.selection.order),l(n,101,0,e.selection.image_format),l(n,102,0,t["ɵnov"](n,103).id,t["ɵnov"](n,103).active,t["ɵnov"](n,103).addClass,t["ɵnov"](n,103).role,t["ɵnov"](n,103).ariaLabelledby),l(n,107,0,t["ɵnov"](n,108).id,t["ɵnov"](n,108).active,t["ɵnov"](n,108).addClass,t["ɵnov"](n,108).role,t["ɵnov"](n,108).ariaLabelledby),l(n,111,0,t["ɵnov"](n,112).id,t["ɵnov"](n,112).active,t["ɵnov"](n,112).addClass,t["ɵnov"](n,112).role,t["ɵnov"](n,112).ariaLabelledby)}))}function hl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,H.b,H.a)),t["ɵdid"](2,114688,null,0,Q.a,[L.a],{type:[0,"type"]},null),(l()(),t["ɵted"](-1,0,["Information can not be displayed for RBD in status 'Removing'."]))],(function(l,n){l(n,2,0,"warning")}),null)}function gl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,16777216,null,null,2,"strong",[["tooltip","This setting overrides the global value"]],null,null,null,null,null)),t["ɵdid"](2,212992,null,0,u.c,[t.ViewContainerRef,i.a,u.a,t.ElementRef,t.Renderer2,s.a],{tooltip:[0,"tooltip"]},null),(l()(),t["ɵted"](-1,null,["Image"])),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){l(n,2,0,"This setting overrides the global value")}),null)}function fl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,16777216,null,null,2,"span",[["tooltip","This is the global value. No value for this option has been set for this image."]],null,null,null,null,null)),t["ɵdid"](1,212992,null,0,u.c,[t.ViewContainerRef,i.a,u.a,t.ElementRef,t.Renderer2,s.a],{tooltip:[0,"tooltip"]},null),(l()(),t["ɵted"](-1,null,["Global"])),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,"This is the global value. No value for this option has been set for this image.")}),null)}function vl(l){return t["ɵvid"](0,[(l()(),t["ɵand"](16777216,null,null,1,null,gl)),t["ɵdid"](1,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(l()(),t["ɵand"](0,[["global",2]],null,0,null,fl))],(function(l,n){l(n,1,0,n.context.value-0,t["ɵnov"](n,2))}),null)}function bl(l){return t["ɵvid"](0,[t["ɵpid"](0,ll.a,[]),t["ɵpid"](0,N.a,[a.DatePipe]),t["ɵpid"](0,F.a,[z.a]),t["ɵpid"](0,nl.a,[z.a]),t["ɵqud"](402653184,1,{poolConfigurationSourceTpl:0}),(l()(),t["ɵand"](0,[["usageNotAvailableTooltipTpl",2]],null,0,null,ul)),(l()(),t["ɵand"](16777216,null,null,1,null,pl)),t["ɵdid"](7,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,hl)),t["ɵdid"](9,16384,null,0,a.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,[[1,2],["poolConfigurationSourceTpl",2]],null,0,null,vl))],(function(l,n){var e=n.component;l(n,7,0,e.selection&&"REMOVING"!==e.selection.source),l(n,9,0,e.selection&&"REMOVING"===e.selection.source)}),null)}function Cl(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-details",[],null,null,null,bl,tl)),t["ɵdid"](1,573440,null,0,el.a,[],null,null)],null,null)}var Sl=t["ɵccf"]("cd-rbd-details",el.a,Cl,{selection:"selection",images:"images"},{},[])},L4us:function(l,n,e){"use strict";var t=e("s7LF"),u=(e("XED3"),e("QFaf")),i=e("kvvV");e("kn/O");class s{}e.d(n,"a",(function(){return a}));class a{constructor(l,n,e){this.modalRef=l,this.rbdMirroringService=n,this.taskWrapper=e,this.bsConfig={containerClass:"theme-default"},this.createForm()}createForm(){this.editPeerForm=new u.a({clusterName:new t.i("",{validators:[t.B.required,this.validateClusterName]}),clientID:new t.i("",{validators:[t.B.required,this.validateClientID]}),monAddr:new t.i("",{validators:[this.validateMonAddr]}),key:new t.i("",{validators:[this.validateKey]})})}ngOnInit(){this.pattern=`${this.poolName}/${this.peerUUID}`,"edit"===this.mode&&this.rbdMirroringService.getPeer(this.poolName,this.peerUUID).subscribe(l=>{this.setResponse(l)})}validateClusterName(l){if(!l.value.match(/^[\w\-_]*$/))return{invalidClusterName:{value:l.value}}}validateClientID(l){if(!l.value.match(/^(?!client\.)[\w\-_.]*$/))return{invalidClientID:{value:l.value}}}validateMonAddr(l){if(!l.value.match(/^[,; ]*([\w.\-_\[\]]+(:[\d]+)?[,; ]*)*$/))return{invalidMonAddr:{value:l.value}}}validateKey(l){try{if(""===l.value||atob(l.value))return null}catch(n){}return{invalidKey:{value:l.value}}}setResponse(l){this.response=l,this.editPeerForm.get("clusterName").setValue(l.cluster_name),this.editPeerForm.get("clientID").setValue(l.client_id),this.editPeerForm.get("monAddr").setValue(l.mon_host),this.editPeerForm.get("key").setValue(l.key)}update(){const l=new s;let n;l.cluster_name=this.editPeerForm.getValue("clusterName"),l.client_id=this.editPeerForm.getValue("clientID"),l.mon_host=this.editPeerForm.getValue("monAddr"),l.key=this.editPeerForm.getValue("key"),n=this.taskWrapper.wrapTaskAroundCall("edit"===this.mode?{task:new i.a("rbd/mirroring/peer/edit",{pool_name:this.poolName}),call:this.rbdMirroringService.updatePeer(this.poolName,this.peerUUID,l)}:{task:new i.a("rbd/mirroring/peer/add",{pool_name:this.poolName}),call:this.rbdMirroringService.addPeer(this.poolName,l)}),n.subscribe(void 0,()=>this.editPeerForm.setErrors({cdSubmitButton:!0}),()=>{this.rbdMirroringService.refresh(),this.modalRef.hide()})}}},MyVl:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("LvDl"),s=e("jtHE"),a=e("cp0P"),o=e("SxV6"),r=e("eIep"),d=(e("Ekvf"),e("F83c"),e("sne2"),e("oxzT")),c=e("QFaf"),m=e("PhyI"),p=e("kvvV"),h=e("jVDg"),g=(e("Fgil"),e("aexS"),e("aXbf"),e("kn/O"),e("u0yg"));class f{constructor(){this.features=[]}}class v{constructor(){this.features=[]}}var b=e("lArG");class C extends b.a{constructor(){super(...arguments),this.features=[]}}class S{constructor(){this.features=[]}}var R=function(l){return l.editing="editing",l.cloning="cloning",l.copying="copying",l}({});e.d(n,"a",(function(){return _}));class _{constructor(l,n,e,u,i,a,o,r,c,m){this.authStorageService=l,this.route=n,this.poolService=e,this.rbdService=u,this.formatter=i,this.taskWrapper=a,this.dimlessBinaryPipe=o,this.i18n=r,this.actionLabels=c,this.router=m,this.namespaces=[],this.namespacesByPoolCache={},this.pools=null,this.allPools=null,this.dataPools=null,this.allDataPools=null,this.featuresList=[],this.initializeConfigData=new t.EventEmitter,this.advancedEnabled=!1,this.rbdFormMode=R,this.defaultObjectSize="4 MiB",this.objectSizes=["4 KiB","8 KiB","16 KiB","32 KiB","64 KiB","128 KiB","256 KiB","512 KiB","1 MiB","2 MiB","4 MiB","8 MiB","16 MiB","32 MiB"],this.rbdImage=new s.a(1),this.icons=d.a,this.poolPermission=this.authStorageService.getPermissions().pool,this.resource=this.i18n("RBD"),this.features={"deep-flatten":{desc:this.i18n("Deep flatten"),requires:null,allowEnable:!1,allowDisable:!0},layering:{desc:this.i18n("Layering"),requires:null,allowEnable:!1,allowDisable:!1},"exclusive-lock":{desc:this.i18n("Exclusive lock"),requires:null,allowEnable:!0,allowDisable:!0},"object-map":{desc:this.i18n("Object map (requires exclusive-lock)"),requires:"exclusive-lock",allowEnable:!0,allowDisable:!0,initDisabled:!0},journaling:{desc:this.i18n("Journaling (requires exclusive-lock)"),requires:"exclusive-lock",allowEnable:!0,allowDisable:!0,initDisabled:!0},"fast-diff":{desc:this.i18n("Fast diff (interlocked with object-map)"),requires:"object-map",allowEnable:!0,allowDisable:!0,interlockedWith:"object-map",initDisabled:!0}},this.featuresList=this.objToArray(this.features),this.createForm()}objToArray(l){return i.map(l,(l,n)=>Object.assign(l,{key:n}))}createForm(){this.rbdForm=new c.a({parent:new u.i(""),name:new u.i("",{validators:[u.B.required,u.B.pattern(/^[^@/]+?$/)]}),pool:new u.i(null,{validators:[u.B.required]}),namespace:new u.i(null),useDataPool:new u.i(!1),dataPool:new u.i(null),size:new u.i(null,{updateOn:"blur"}),obj_size:new u.i(this.defaultObjectSize),features:new c.a(this.featuresList.reduce((l,n)=>(l[n.key]=new u.i({value:!1,disabled:!!n.initDisabled}),l),{})),stripingUnit:new u.i(null),stripingCount:new u.i(null,{updateOn:"blur"})},this.validateRbdForm(this.formatter))}disableForEdit(){this.rbdForm.get("parent").disable(),this.rbdForm.get("pool").disable(),this.rbdForm.get("namespace").disable(),this.rbdForm.get("useDataPool").disable(),this.rbdForm.get("dataPool").disable(),this.rbdForm.get("obj_size").disable(),this.rbdForm.get("stripingUnit").disable(),this.rbdForm.get("stripingCount").disable(),this.rbdImage.subscribe(l=>{l.image_format===g.a.V1&&(this.rbdForm.get("deep-flatten").disable(),this.rbdForm.get("layering").disable(),this.rbdForm.get("exclusive-lock").disable())})}disableForClone(){this.rbdForm.get("parent").disable(),this.rbdForm.get("size").disable()}disableForCopy(){this.rbdForm.get("parent").disable(),this.rbdForm.get("size").disable()}ngOnInit(){let l;this.router.url.startsWith("/block/rbd/edit")?(this.mode=this.rbdFormMode.editing,this.action=this.actionLabels.EDIT,this.disableForEdit()):this.router.url.startsWith("/block/rbd/clone")?(this.mode=this.rbdFormMode.cloning,this.disableForClone(),this.action=this.actionLabels.CLONE):this.router.url.startsWith("/block/rbd/copy")?(this.mode=this.rbdFormMode.copying,this.action=this.actionLabels.COPY,this.disableForCopy()):this.action=this.actionLabels.CREATE,function(l){l.RbdServiceGet="rbdService.get",l.PoolServiceList="poolService.list"}(l||(l={}));const n={};this.mode===this.rbdFormMode.editing||this.mode===this.rbdFormMode.cloning||this.mode===this.rbdFormMode.copying?this.route.params.subscribe(e=>{const t=h.a.fromString(decodeURIComponent(e.image_spec));e.snap&&(this.snapName=decodeURIComponent(e.snap)),n[l.RbdServiceGet]=this.rbdService.get(t)}):this.rbdService.defaultFeatures().subscribe(l=>{this.setFeatures(l)}),this.mode!==this.rbdFormMode.editing&&this.poolPermission.read&&(n[l.PoolServiceList]=this.poolService.list(["pool_name","type","flags_names","application_metadata"])),Object(a.a)(n).subscribe(n=>{if(n[l.PoolServiceList]){const e=[],t=[];for(const u of n[l.PoolServiceList])this.rbdService.isRBDPool(u)&&("replicated"===u.type?(e.push(u),t.push(u)):"erasure"===u.type&&-1!==u.flags_names.indexOf("ec_overwrites")&&t.push(u));if(this.pools=e,this.allPools=e,this.dataPools=t,this.allDataPools=t,1===this.pools.length){const l=this.pools[0].pool_name;this.rbdForm.get("pool").setValue(l),this.onPoolChange(l)}}if(n[l.RbdServiceGet]){const e=n[l.RbdServiceGet];this.setResponse(e,this.snapName),this.rbdImage.next(e)}}),i.each(this.features,l=>{this.rbdForm.get("features").get(l.key).valueChanges.subscribe(n=>this.featureFormUpdate(l.key,n))})}onPoolChange(l){const n=this.allDataPools?this.allDataPools.filter(n=>n.pool_name!==l):[];this.rbdForm.getValue("dataPool")===l&&this.rbdForm.get("dataPool").setValue(null),this.dataPools=n,this.namespaces=null,l in this.namespacesByPoolCache?this.namespaces=this.namespacesByPoolCache[l]:this.rbdService.listNamespaces(l).subscribe(n=>{n=n.map(l=>l.namespace),this.namespacesByPoolCache[l]=n,this.namespaces=n}),this.rbdForm.get("namespace").setValue(null)}onUseDataPoolChange(){this.rbdForm.getValue("useDataPool")||(this.rbdForm.get("dataPool").setValue(null),this.onDataPoolChange(null))}onDataPoolChange(l){const n=this.allPools.filter(n=>n.pool_name!==l);this.rbdForm.getValue("pool")===l&&this.rbdForm.get("pool").setValue(null),this.pools=n}validateRbdForm(l){return n=>{const e=n.get("useDataPool"),t=n.get("dataPool");let u=null;e.value&&null==t.value&&(u={required:!0}),t.setErrors(u);const i=n.get("size"),s=n.get("obj_size"),a=l.toBytes(null!=s.value?s.value:this.defaultObjectSize),o=n.get("stripingCount"),r=null!=o.value?o.value:1;let d=null;null===i.value?d={required:!0}:r*a>l.toBytes(i.value)&&(d={invalidSizeObject:!0}),i.setErrors(d);const c=n.get("stripingUnit");let m=null;null===c.value&&null!==o.value?m={required:!0}:null!==c.value&&l.toBytes(c.value)>a&&(m={invalidStripingUnit:!0}),c.setErrors(m);let p=null;return null===o.value&&null!==c.value?p={required:!0}:r<1&&(p={min:!0}),o.setErrors(p),null}}getDependendChildFeatures(l){return i.filter(this.features,n=>n.requires===l)||[]}deepBoxCheck(l,n){this.getDependendChildFeatures(l).forEach(l=>{const e=this.rbdForm.get(l.key);n?e.enable({emitEvent:!1}):(e.disable({emitEvent:!1}),e.setValue(!1,{emitEvent:!1}),this.deepBoxCheck(l.key,n));const t=this.rbdForm.get("features");this.mode===this.rbdFormMode.editing&&t.get(l.key).enabled&&((-1===this.response.features_name.indexOf(l.key)||l.allowDisable)&&(-1!==this.response.features_name.indexOf(l.key)||l.allowEnable)||t.get(l.key).disable())})}interlockCheck(l,n){const e=this.featuresList.find(n=>n.key===l);if(this.response){const l=null!=e.interlockedWith,n=this.featuresList.find(l=>l.interlockedWith===e.key),t=!!this.response.features_name.find(l=>l===e.key);if(l){if(t!==!!this.response.features_name.find(l=>l===e.interlockedWith))return}else if(n&&!!this.response.features_name.find(l=>l===n.key)!==t)return}n?i.filter(this.features,n=>n.interlockedWith===l).forEach(l=>this.rbdForm.get(l.key).setValue(!0,{emitEvent:!1})):e.interlockedWith&&this.rbdForm.get("features").get(e.interlockedWith).setValue(!1)}featureFormUpdate(l,n){if(n){const n=this.features[l].requires;if(n&&!this.rbdForm.getValue(n))return void this.rbdForm.get("features."+l).setValue(!1)}this.deepBoxCheck(l,n),this.interlockCheck(l,n)}setFeatures(l){const n=this.rbdForm.get("features");i.forIn(this.features,e=>{-1!==l.indexOf(e.key)&&n.get(e.key).setValue(!0),this.featureFormUpdate(e.key,n.get(e.key).value)})}setResponse(l,n){this.response=l;const e=new h.a(l.pool_name,l.namespace,l.name).toString();if(this.mode===this.rbdFormMode.cloning)this.rbdForm.get("parent").setValue(`${e}@${n}`);else if(this.mode===this.rbdFormMode.copying)n?this.rbdForm.get("parent").setValue(`${e}@${n}`):this.rbdForm.get("parent").setValue(""+e);else if(l.parent){const n=l.parent;this.rbdForm.get("parent").setValue(`${n.pool_name}/${n.image_name}@${n.snap_name}`)}this.mode===this.rbdFormMode.editing&&this.rbdForm.get("name").setValue(l.name),this.rbdForm.get("pool").setValue(l.pool_name),this.onPoolChange(l.pool_name),this.rbdForm.get("namespace").setValue(l.namespace),l.data_pool&&(this.rbdForm.get("useDataPool").setValue(!0),this.rbdForm.get("dataPool").setValue(l.data_pool)),this.rbdForm.get("size").setValue(this.dimlessBinaryPipe.transform(l.size)),this.rbdForm.get("obj_size").setValue(this.dimlessBinaryPipe.transform(l.obj_size)),this.setFeatures(l.features_name),this.rbdForm.get("stripingUnit").setValue(this.dimlessBinaryPipe.transform(l.stripe_unit)),this.rbdForm.get("stripingCount").setValue(l.stripe_count),this.initializeConfigData.emit({initialData:this.response.configuration,sourceType:m.a.image})}createRequest(){const l=new C;return l.pool_name=this.rbdForm.getValue("pool"),l.namespace=this.rbdForm.getValue("namespace"),l.name=this.rbdForm.getValue("name"),l.size=this.formatter.toBytes(this.rbdForm.getValue("size")),l.obj_size=this.formatter.toBytes(this.rbdForm.getValue("obj_size")),i.forIn(this.features,n=>{this.rbdForm.getValue(n.key)&&l.features.push(n.key)}),l.stripe_unit=this.formatter.toBytes(this.rbdForm.getValue("stripingUnit")),l.stripe_count=this.rbdForm.getValue("stripingCount"),l.data_pool=this.rbdForm.getValue("dataPool"),l.configuration=this.getDirtyConfigurationValues(),l}createAction(){const l=this.createRequest();return this.taskWrapper.wrapTaskAroundCall({task:new p.a("rbd/create",{pool_name:l.pool_name,namespace:l.namespace,image_name:l.name}),call:this.rbdService.create(l)})}editRequest(){const l=new S;return l.name=this.rbdForm.getValue("name"),l.size=this.formatter.toBytes(this.rbdForm.getValue("size")),i.forIn(this.features,n=>{this.rbdForm.getValue(n.key)&&l.features.push(n.key)}),l.configuration=this.getDirtyConfigurationValues(),l}cloneRequest(){const l=new f;return l.child_pool_name=this.rbdForm.getValue("pool"),l.child_namespace=this.rbdForm.getValue("namespace"),l.child_image_name=this.rbdForm.getValue("name"),l.obj_size=this.formatter.toBytes(this.rbdForm.getValue("obj_size")),i.forIn(this.features,n=>{this.rbdForm.getValue(n.key)&&l.features.push(n.key)}),l.stripe_unit=this.formatter.toBytes(this.rbdForm.getValue("stripingUnit")),l.stripe_count=this.rbdForm.getValue("stripingCount"),l.data_pool=this.rbdForm.getValue("dataPool"),l.configuration=this.getDirtyConfigurationValues(!0,m.a.image),l}editAction(){const l=new h.a(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new p.a("rbd/edit",{image_spec:l.toString()}),call:this.rbdService.update(l,this.editRequest())})}cloneAction(){const l=this.cloneRequest(),n=new h.a(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new p.a("rbd/clone",{parent_image_spec:n.toString(),parent_snap_name:this.snapName,child_pool_name:l.child_pool_name,child_namespace:l.child_namespace,child_image_name:l.child_image_name}),call:this.rbdService.cloneSnapshot(n,this.snapName,l)})}copyRequest(){const l=new v;return this.snapName&&(l.snapshot_name=this.snapName),l.dest_pool_name=this.rbdForm.getValue("pool"),l.dest_namespace=this.rbdForm.getValue("namespace"),l.dest_image_name=this.rbdForm.getValue("name"),l.obj_size=this.formatter.toBytes(this.rbdForm.getValue("obj_size")),i.forIn(this.features,n=>{this.rbdForm.getValue(n.key)&&l.features.push(n.key)}),l.stripe_unit=this.formatter.toBytes(this.rbdForm.getValue("stripingUnit")),l.stripe_count=this.rbdForm.getValue("stripingCount"),l.data_pool=this.rbdForm.getValue("dataPool"),l.configuration=this.getDirtyConfigurationValues(!0,m.a.image),l}copyAction(){const l=this.copyRequest(),n=new h.a(this.response.pool_name,this.response.namespace,this.response.name);return this.taskWrapper.wrapTaskAroundCall({task:new p.a("rbd/copy",{src_image_spec:n.toString(),dest_pool_name:l.dest_pool_name,dest_namespace:l.dest_namespace,dest_image_name:l.dest_image_name}),call:this.rbdService.copy(n,l)})}submit(){this.mode||this.rbdImage.next("create"),this.rbdImage.pipe(Object(o.a)(),Object(r.a)(()=>this.mode===this.rbdFormMode.editing?this.editAction():this.mode===this.rbdFormMode.cloning?this.cloneAction():this.mode===this.rbdFormMode.copying?this.copyAction():this.createAction())).subscribe(()=>{},()=>this.rbdForm.setErrors({cdSubmitButton:!0}),()=>this.router.navigate(["/block/rbd"]))}}},QUzE:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("ANnk"),i=e("f/UV"),s=e("aexS"),a=e("s7LF"),o=e("+gVj"),r=e("EEJc"),d=e("ajRT"),c=e("mXUL"),m=e("IZUe"),p=e("SVse"),h=e("gp3X"),g=e("sb0X"),f=e("OcYo"),v=e("EApP"),b=e("GiVz"),C=e("KVJa"),S=e("Z21x"),R=e("sne2"),_=e("SuaG"),w=e("LqlI"),y=e("XED3"),k=e("kn/O");e.d(n,"a",(function(){return D}));var I=t["ɵcrt"]({encapsulation:0,styles:[[".form-group.ng-invalid[_ngcontent-%COMP%]   .invalid-feedback[_ngcontent-%COMP%]{display:block}"]],data:{}});function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,3).onChange(e.target.checked)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,3).onTouched()&&u),u}),null,null)),t["ɵdid"](2,4210688,null,0,u.a,[[2,i.a],s.a,t.ElementRef],null,null),t["ɵdid"](3,16384,null,0,a.c,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.c]),t["ɵdid"](5,671744,[[3,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](7,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](8,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](9,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](10,null,["",""]))],(function(l,n){l(n,5,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,"")),l(n,8,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""))}),(function(l,n){l(n,1,1,[t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""),t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,""),t["ɵnov"](n,7).ngClassUntouched,t["ɵnov"](n,7).ngClassTouched,t["ɵnov"](n,7).ngClassPristine,t["ɵnov"](n,7).ngClassDirty,t["ɵnov"](n,7).ngClassValid,t["ɵnov"](n,7).ngClassInvalid,t["ɵnov"](n,7).ngClassPending,t["ɵnov"](n,8).validClass,t["ɵnov"](n,8).invalidClass]),l(n,9,0,t["ɵinlineInterpolate"](1,"",n.context.$implicit.name,"")),l(n,10,0,n.context.$implicit.name)}))}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["At least one pool is required."]))],null,null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,74,"cd-modal",[],null,null,null,r.c,r.b)),t["ɵdid"](1,49152,null,0,d.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Create Bootstrap Token"])),(l()(),t["ɵeld"](4,0,null,1,70,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,69,"form",[["class","form"],["name","createBootstrapForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,a.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,a.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,a.d,null,[a.l]),t["ɵdid"](9,16384,null,0,a.s,[[4,a.d]],null,null),t["ɵdid"](10,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,59,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,5,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,4,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To create a bootstrap token which can be imported by a peer site cluster, provide the local site's name, select which pools will have mirroring enabled, and click  "])),(l()(),t["ɵeld"](15,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Generate"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](18,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](19,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](22,0,null,0,1,"label",[["class","col-form-label required"],["for","siteName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Site Name"])),(l()(),t["ɵeld"](24,0,null,0,8,"input",[["autofocus",""],["class","form-control"],["formControlName","siteName"],["id","siteName"],["name","siteName"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,27)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,27).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,27)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,27)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](25,4210688,null,0,m.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](26,4210688,null,0,u.a,[[2,i.a],s.a,t.ElementRef],null,null),t["ɵdid"](27,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](29,671744,[[1,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](31,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](32,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,E)),t["ɵdid"](34,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](35,0,null,null,12,"div",[["class","form-group"],["formGroupName","pools"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](36,212992,null,0,a.m,[[3,a.d],[8,null],[8,null]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.d,null,[a.m]),t["ɵdid"](38,16384,null,0,a.s,[[4,a.d]],null,null),t["ɵdid"](39,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](42,0,null,0,1,"label",[["class","col-form-label required"],["for","pools"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pools"])),(l()(),t["ɵand"](16777216,null,0,1,null,N)),t["ɵdid"](45,278528,null,0,p.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,F)),t["ɵdid"](47,16384,null,0,p.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](48,0,null,null,3,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](49,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.generate()&&t),t}),h.b,h.a)),t["ɵdid"](50,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Generate"])),(l()(),t["ɵeld"](52,0,null,null,14,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,c.b,c.a)),t["ɵdid"](53,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](56,0,null,0,2,"label",[["class","col-form-label"],["for","token"]],null,null,null,null,null)),(l()(),t["ɵeld"](57,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Token"])),(l()(),t["ɵeld"](59,0,null,0,7,"textarea",[["class","form-control resize-vertical"],["formControlName","token"],["id","token"],["placeholder","Generated token..."],["readonly",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,60)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,60).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,60)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,60)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](60,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](62,671744,[[5,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](64,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](65,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵted"](-1,null,["          "])),(l()(),t["ɵeld"](67,0,null,null,3,"button",[["aria-label","Copy to Clipboard"],["cdCopy2ClipboardButton","token"],["class","btn btn-primary mb-3 float-right"],["title","Copy to Clipboard"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,68).onClick()&&u),u}),null,null)),t["ɵdid"](68,81920,null,0,f.a,[t.ElementRef,t.Renderer2,v.j,b.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),t["ɵeld"](69,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Copy to Clipboard"])),(l()(),t["ɵeld"](71,0,null,null,3,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](72,0,null,null,2,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](73,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,C.b,C.a)),t["ɵdid"](74,49152,null,0,S.a,[p.Location,R.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.createBootstrapForm),l(n,10,0,e.createBootstrapForm),l(n,19,0),l(n,25,0,""),l(n,29,0,"siteName"),l(n,32,0,"siteName"),l(n,34,0,e.createBootstrapForm.showError("siteName",t["ɵnov"](n,7),"required")),l(n,36,0,"pools"),l(n,39,0),l(n,45,0,e.pools),l(n,47,0,e.createBootstrapForm.showError("pools",t["ɵnov"](n,7),"requirePool")),l(n,50,0,e.createBootstrapForm),l(n,53,0),l(n,62,0,"token"),l(n,65,0,"token"),l(n,68,0,"token"),l(n,74,0,"Close",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,18,0,t["ɵnov"](n,19).hasErrors,t["ɵnov"](n,19).hasSuccess),l(n,24,0,t["ɵnov"](n,31).ngClassUntouched,t["ɵnov"](n,31).ngClassTouched,t["ɵnov"](n,31).ngClassPristine,t["ɵnov"](n,31).ngClassDirty,t["ɵnov"](n,31).ngClassValid,t["ɵnov"](n,31).ngClassInvalid,t["ɵnov"](n,31).ngClassPending,t["ɵnov"](n,32).validClass,t["ɵnov"](n,32).invalidClass),l(n,35,0,t["ɵnov"](n,38).ngClassUntouched,t["ɵnov"](n,38).ngClassTouched,t["ɵnov"](n,38).ngClassPristine,t["ɵnov"](n,38).ngClassDirty,t["ɵnov"](n,38).ngClassValid,t["ɵnov"](n,38).ngClassInvalid,t["ɵnov"](n,38).ngClassPending,t["ɵnov"](n,39).hasErrors,t["ɵnov"](n,39).hasSuccess),l(n,52,0,t["ɵnov"](n,53).hasErrors,t["ɵnov"](n,53).hasSuccess),l(n,59,0,t["ɵnov"](n,64).ngClassUntouched,t["ɵnov"](n,64).ngClassTouched,t["ɵnov"](n,64).ngClassPristine,t["ɵnov"](n,64).ngClassDirty,t["ɵnov"](n,64).ngClassValid,t["ɵnov"](n,64).ngClassInvalid,t["ɵnov"](n,64).ngClassPending,t["ɵnov"](n,65).validClass,t["ɵnov"](n,65).invalidClass)}))}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-bootstrap-create-modal",[],null,null,null,V,I)),t["ɵdid"](1,245760,null,0,_.a,[w.a,y.a,k.a],null,null)],(function(l,n){l(n,1,0)}),null)}var D=t["ɵccf"]("cd-bootstrap-create-modal",_.a,T,{},{},[])},RIVN:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("C6Ij"),i=e("AWcq"),s=e("NUGo"),a=e("S7zO"),o=e("SVse");class r{transform(l){return"warning"===l?"badge badge-warning":"error"===l?"badge badge-danger":"success"===l?"badge badge-success":"badge badge-info"}}var d=e("25BL"),c=e("uIqm"),m=e("XED3"),p=e("85J/");class h{constructor(l,n,e){this.rbdMirroringService=l,this.cephShortVersionPipe=n,this.i18n=e}ngOnInit(){this.columns=[{prop:"instance_id",name:this.i18n("Instance"),flexGrow:2},{prop:"id",name:this.i18n("ID"),flexGrow:2},{prop:"server_hostname",name:this.i18n("Hostname"),flexGrow:2},{prop:"version",name:this.i18n("Version"),pipe:this.cephShortVersionPipe,flexGrow:2},{prop:"health",name:this.i18n("Health"),cellTemplate:this.healthTmpl,flexGrow:1}],this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.data=l.content_data.daemons})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}}var g=e("GiVz"),f=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function v(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),t["ɵprd"](512,null,o["ɵNgClassImpl"],o["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](2,278528,null,0,o.NgClass,[o["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),t["ɵppd"](3,1),(l()(),t["ɵted"](4,null,["",""]))],(function(l,n){var e=t["ɵunv"](n,2,0,l(n,3,0,t["ɵnov"](n.parent,0),n.context.row.health_color));l(n,2,0,e)}),(function(l,n){l(n,4,0,n.context.value)}))}function b(l){return t["ɵvid"](0,[t["ɵpid"](0,r,[]),t["ɵqud"](402653184,1,{healthTmpl:0}),(l()(),t["ɵeld"](2,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(l,n,e){var t=!0;return"fetchData"===n&&(t=!1!==l.component.refresh()&&t),t}),d.b,d.a)),t["ɵdid"](3,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"}),(l()(),t["ɵand"](0,[[1,2],["healthTmpl",2]],null,0,null,v))],(function(l,n){var e=n.component;l(n,3,0,e.data,e.columns,"flex",-1)}),null)}var C=e("HDdC"),S=e("0+/T"),R=e("oxzT"),_=e("vCyI"),w=e("kvvV"),y=e("aexS"),k=e("kn/O"),I=e("aa9H"),E=e("L4us");class N{constructor(l,n,e,t,u){this.authStorageService=l,this.rbdMirroringService=n,this.modalService=e,this.taskWrapper=t,this.i18n=u,this.selection=new _.a,this.data=[],this.permission=this.authStorageService.getPermissions().rbdMirroring;const i={permission:"update",icon:R.a.edit,click:()=>this.editModeModal(),name:this.i18n("Edit Mode"),canBePrimary:()=>!0},s={permission:"create",icon:R.a.add,name:this.i18n("Add Peer"),click:()=>this.editPeersModal("add"),disable:()=>!this.selection.first()||"disabled"===this.selection.first().mirror_mode,visible:()=>!this.getPeerUUID(),canBePrimary:()=>!1},a={permission:"update",icon:R.a.exchange,name:this.i18n("Edit Peer"),click:()=>this.editPeersModal("edit"),visible:()=>!!this.getPeerUUID()},o={permission:"delete",icon:R.a.destroy,name:this.i18n("Delete Peer"),click:()=>this.deletePeersModal(),visible:()=>!!this.getPeerUUID()};this.tableActions=[i,s,a,o]}ngOnInit(){this.columns=[{prop:"name",name:this.i18n("Name"),flexGrow:2},{prop:"mirror_mode",name:this.i18n("Mode"),flexGrow:2},{prop:"leader_id",name:this.i18n("Leader"),flexGrow:2},{prop:"image_local_count",name:this.i18n("# Local"),flexGrow:2},{prop:"image_remote_count",name:this.i18n("# Remote"),flexGrow:2},{prop:"health",name:this.i18n("Health"),cellTemplate:this.healthTmpl,flexGrow:1}],this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.data=l.content_data.pools})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}editModeModal(){const l={poolName:this.selection.first().name};this.modalRef=this.modalService.show(I.a,{initialState:l})}editPeersModal(l){const n={poolName:this.selection.first().name,mode:l};"edit"===l&&(n.peerUUID=this.getPeerUUID()),this.modalRef=this.modalService.show(E.a,{initialState:n})}deletePeersModal(){const l=this.selection.first().name,n=this.getPeerUUID();this.modalRef=this.modalService.show(S.a,{initialState:{itemDescription:this.i18n("mirror peer"),itemNames:[`${l} (${n})`],submitActionObservable:()=>new C.a(e=>{this.taskWrapper.wrapTaskAroundCall({task:new w.a("rbd/mirroring/peer/delete",{pool_name:l}),call:this.rbdMirroringService.deletePeer(l,n)}).subscribe(void 0,l=>e.error(l),()=>{this.rbdMirroringService.refresh(),e.complete()})})}})}getPeerUUID(){const l=this.selection.first(),n=this.data.find(n=>l&&l.name===n.name);if(n&&n.peer_uuids)return n.peer_uuids[0]}updateSelection(l){this.selection=l}}var F=e("LqlI"),V=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),t["ɵprd"](512,null,o["ɵNgClassImpl"],o["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](2,278528,null,0,o.NgClass,[o["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),t["ɵppd"](3,1),(l()(),t["ɵted"](4,null,["",""]))],(function(l,n){var e=t["ɵunv"](n,2,0,l(n,3,0,t["ɵnov"](n.parent,0),n.context.row.health_color));l(n,2,0,e)}),(function(l,n){l(n,4,0,n.context.value)}))}function D(l){return t["ɵvid"](0,[t["ɵpid"](0,r,[]),t["ɵqud"](402653184,1,{healthTmpl:0}),(l()(),t["ɵeld"](2,0,null,null,3,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","name"],["selectionType","single"]],null,[[null,"fetchData"],[null,"updateSelection"]],(function(l,n,e){var t=!0,u=l.component;return"fetchData"===n&&(t=!1!==u.refresh()&&t),"updateSelection"===n&&(t=!1!==u.updateSelection(e)&&t),t}),d.b,d.a)),t["ɵdid"](3,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection"}),(l()(),t["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,s.b,s.a)),t["ɵdid"](5,114688,null,0,a.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),t["ɵand"](0,[[1,2],["healthTmpl",2]],null,0,null,T))],(function(l,n){var e=n.component;l(n,3,0,e.data,e.columns,"flex",-1,"name","true","single"),l(n,5,0,e.permission,e.selection,e.tableActions)}),null)}var x=e("7qid"),P=e("38Bd"),q=e("pKUh"),B=e("2ZVE");class A{constructor(l,n){this.rbdMirroringService=l,this.i18n=n,this.image_error={data:[],columns:{}},this.image_syncing={data:[],columns:{}},this.image_ready={data:[],columns:{}}}ngOnInit(){this.image_error.columns=[{prop:"pool_name",name:this.i18n("Pool"),flexGrow:2},{prop:"name",name:this.i18n("Image"),flexGrow:2},{prop:"description",name:this.i18n("Issue"),flexGrow:4},{prop:"state",name:this.i18n("State"),cellTemplate:this.stateTmpl,flexGrow:1}],this.image_syncing.columns=[{prop:"pool_name",name:this.i18n("Pool"),flexGrow:2},{prop:"name",name:this.i18n("Image"),flexGrow:2},{prop:"progress",name:this.i18n("Progress"),cellTemplate:this.progressTmpl,flexGrow:2},{prop:"state",name:this.i18n("State"),cellTemplate:this.syncTmpl,flexGrow:1}],this.image_ready.columns=[{prop:"pool_name",name:this.i18n("Pool"),flexGrow:2},{prop:"name",name:this.i18n("Image"),flexGrow:2},{prop:"description",name:this.i18n("Description"),flexGrow:4},{prop:"state",name:this.i18n("State"),cellTemplate:this.stateTmpl,flexGrow:1}],this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.image_error.data=l.content_data.image_error,this.image_syncing.data=l.content_data.image_syncing,this.image_ready.data=l.content_data.image_ready})}ngOnDestroy(){this.subs.unsubscribe()}refresh(){this.rbdMirroringService.refresh()}}var M=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function O(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(l,n,e){var t=!0;return"fetchData"===n&&(t=!1!==l.component.refresh()&&t),t}),d.b,d.a)),t["ɵdid"](1,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"})],(function(l,n){var e=n.component;l(n,1,0,e.image_error.data,e.image_error.columns,"flex",-1)}),null)}function L(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(l,n,e){var t=!0;return"fetchData"===n&&(t=!1!==l.component.refresh()&&t),t}),d.b,d.a)),t["ɵdid"](1,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"})],(function(l,n){var e=n.component;l(n,1,0,e.image_syncing.data,e.image_syncing.columns,"flex",-1)}),null)}function j(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(l,n,e){var t=!0;return"fetchData"===n&&(t=!1!==l.component.refresh()&&t),t}),d.b,d.a)),t["ɵdid"](1,2867200,null,0,c.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"})],(function(l,n){var e=n.component;l(n,1,0,e.image_ready.data,e.image_ready.columns,"flex",-1)}),null)}function U(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),t["ɵprd"](512,null,o["ɵNgClassImpl"],o["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](2,278528,null,0,o.NgClass,[o["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),t["ɵppd"](3,1),(l()(),t["ɵted"](4,null,["",""]))],(function(l,n){var e=t["ɵunv"](n,2,0,l(n,3,0,t["ɵnov"](n.parent,0),n.context.row.state_color));l(n,2,0,e)}),(function(l,n){l(n,4,0,n.context.value)}))}function G(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-info"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Syncing"]))],null,null)}function $(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"progressbar",[["type","info"]],[[1,"max",0],[2,"progress",null]],null,null,x.b,x.a)),t["ɵdid"](1,49152,null,0,P.b,[P.c],{type:[0,"type"],value:[1,"value"]},null)],(function(l,n){l(n,1,0,"info",n.context.value)}),(function(l,n){l(n,0,0,t["ɵnov"](n,1).max,t["ɵnov"](n,1).addClass)}))}function X(l){return t["ɵvid"](0,[t["ɵpid"](0,r,[]),t["ɵqud"](402653184,1,{stateTmpl:0}),t["ɵqud"](402653184,2,{syncTmpl:0}),t["ɵqud"](402653184,3,{progressTmpl:0}),(l()(),t["ɵeld"](4,0,null,null,13,"tabset",[],[[2,"tab-container",null]],null,null,q.b,q.a)),t["ɵdid"](5,180224,[["tabset",4]],0,B.e,[B.f,t.Renderer2,t.ElementRef],null,null),(l()(),t["ɵeld"](6,0,null,0,3,"tab",[["heading","Issues"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](7,212992,null,0,B.b,[B.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,O)),t["ɵdid"](9,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](10,0,null,0,3,"tab",[["heading","Syncing"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](11,212992,null,0,B.b,[B.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,L)),t["ɵdid"](13,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](14,0,null,0,3,"tab",[["heading","Ready"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),t["ɵdid"](15,212992,null,0,B.b,[B.e,t.ElementRef,t.Renderer2],{heading:[0,"heading"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,j)),t["ɵdid"](17,16384,null,0,o.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,[[1,2],["stateTmpl",2]],null,0,null,U)),(l()(),t["ɵand"](0,[[2,2],["syncTmpl",2]],null,0,null,G)),(l()(),t["ɵand"](0,[[3,2],["progressTmpl",2]],null,0,null,$))],(function(l,n){l(n,7,0,"Issues"),l(n,9,0,null==t["ɵnov"](n,5).tabs[0]?null:t["ɵnov"](n,5).tabs[0].active),l(n,11,0,"Syncing"),l(n,13,0,null==t["ɵnov"](n,5).tabs[1]?null:t["ɵnov"](n,5).tabs[1].active),l(n,15,0,"Ready"),l(n,17,0,null==t["ɵnov"](n,5).tabs[2]?null:t["ɵnov"](n,5).tabs[2].active)}),(function(l,n){l(n,4,0,t["ɵnov"](n,5).clazz),l(n,6,0,t["ɵnov"](n,7).id,t["ɵnov"](n,7).active,t["ɵnov"](n,7).addClass,t["ɵnov"](n,7).role,t["ɵnov"](n,7).ariaLabelledby),l(n,10,0,t["ɵnov"](n,11).id,t["ɵnov"](n,11).active,t["ɵnov"](n,11).addClass,t["ɵnov"](n,11).role,t["ɵnov"](n,11).ariaLabelledby),l(n,14,0,t["ɵnov"](n,15).id,t["ɵnov"](n,15).active,t["ɵnov"](n,15).addClass,t["ɵnov"](n,15).role,t["ɵnov"](n,15).ariaLabelledby)}))}var z=e("cxJu");e.d(n,"a",(function(){return K}));var W=t["ɵcrt"]({encapsulation:0,styles:[["cd-mirroring cd-table-actions.float-right ul{right:0!important;left:auto!important}"]],data:{}});function J(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,u.b,u.a)),t["ɵdid"](1,114688,null,0,i.a,[],{status:[0,"status"]},null),(l()(),t["ɵeld"](2,0,null,null,7,"div",[["class","row"]],null,null,null,null,null)),(l()(),t["ɵeld"](3,0,null,null,6,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](4,0,null,null,3,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Site Name:"])),(l()(),t["ɵted"](7,null,[" ",""])),(l()(),t["ɵeld"](8,0,null,null,1,"cd-table-actions",[["class","table-actions float-right"]],null,null,null,s.b,s.a)),t["ɵdid"](9,114688,null,0,a.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),t["ɵeld"](10,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),t["ɵeld"](11,0,null,null,4,"div",[["class","col-sm-6"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Daemons"])),(l()(),t["ɵeld"](14,0,null,null,1,"cd-mirroring-daemons",[],null,null,null,b,f)),t["ɵdid"](15,245760,null,0,h,[m.a,p.a,g.a],null,null),(l()(),t["ɵeld"](16,0,null,null,4,"div",[["class","col-sm-6"]],null,null,null,null,null)),(l()(),t["ɵeld"](17,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pools"])),(l()(),t["ɵeld"](19,0,null,null,1,"cd-mirroring-pools",[],null,null,null,D,V)),t["ɵdid"](20,245760,null,0,N,[y.a,m.a,F.b,k.a,g.a],null,null),(l()(),t["ɵeld"](21,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(l()(),t["ɵeld"](22,0,null,null,4,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](23,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Images"])),(l()(),t["ɵeld"](25,0,null,null,1,"cd-mirroring-images",[],null,null,null,X,M)),t["ɵdid"](26,245760,null,0,A,[m.a,g.a],null,null)],(function(l,n){var e=n.component;l(n,1,0,e.status),l(n,9,0,e.permission,e.selection,e.tableActions),l(n,15,0),l(n,20,0),l(n,26,0)}),(function(l,n){l(n,7,0,n.component.siteName)}))}function Y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-mirroring",[],null,null,null,J,W)),t["ɵdid"](1,245760,null,0,z.a,[y.a,m.a,F.b,g.a],null,null)],(function(l,n){l(n,1,0)}),null)}var K=t["ɵccf"]("cd-mirroring",z.a,Y,{},{},[])},Sofw:function(l,n,e){"use strict";e.d(n,"a",(function(){return a}));var t=e("s7LF"),u=(e("my5R"),e("mtw6")),i=e("QFaf"),s=e("1Ni5");e("aexS"),e("9nlD");class a{constructor(l,n,e,t,u){this.authStorageService=l,this.bsModalRef=n,this.iscsiService=e,this.notificationService=t,this.i18n=u,this.USER_REGEX=/^[\w\.:@_-]{8,64}$/,this.PASSWORD_REGEX=/^[\w@\-_\/]{12,16}$/,this.permission=this.authStorageService.getPermissions().iscsi}ngOnInit(){this.hasPermission=this.permission.update,this.createForm(),this.iscsiService.getDiscovery().subscribe(l=>{this.discoveryForm.patchValue(l)})}createForm(){this.discoveryForm=new i.a({user:new t.i({value:"",disabled:!this.hasPermission}),password:new t.i({value:"",disabled:!this.hasPermission}),mutual_user:new t.i({value:"",disabled:!this.hasPermission}),mutual_password:new t.i({value:"",disabled:!this.hasPermission})}),s.a.validateIf(this.discoveryForm.get("user"),()=>this.discoveryForm.getValue("password")||this.discoveryForm.getValue("mutual_user")||this.discoveryForm.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.USER_REGEX)],[this.discoveryForm.get("password"),this.discoveryForm.get("mutual_user"),this.discoveryForm.get("mutual_password")]),s.a.validateIf(this.discoveryForm.get("password"),()=>this.discoveryForm.getValue("user")||this.discoveryForm.getValue("mutual_user")||this.discoveryForm.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.PASSWORD_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("mutual_user"),this.discoveryForm.get("mutual_password")]),s.a.validateIf(this.discoveryForm.get("mutual_user"),()=>this.discoveryForm.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.USER_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("password"),this.discoveryForm.get("mutual_password")]),s.a.validateIf(this.discoveryForm.get("mutual_password"),()=>this.discoveryForm.getValue("mutual_user"),[t.B.required],[t.B.pattern(this.PASSWORD_REGEX)],[this.discoveryForm.get("user"),this.discoveryForm.get("password"),this.discoveryForm.get("mutual_user")])}submitAction(){this.iscsiService.updateDiscovery(this.discoveryForm.value).subscribe(()=>{this.notificationService.show(u.a.success,this.i18n("Updated discovery authentication")),this.bsModalRef.hide()},()=>{this.discoveryForm.setErrors({cdSubmitButton:!0})})}}},SuaG:function(l,n,e){"use strict";e.d(n,"a",(function(){return c}));var t=e("s7LF"),u=e("LvDl"),i=e("GyhO"),s=e("cp0P"),a=e("vkgz"),o=e("NJ9Y"),r=(e("XED3"),e("QFaf")),d=e("kvvV");e("kn/O");class c{constructor(l,n,e){this.modalRef=l,this.rbdMirroringService=n,this.taskWrapper=e,this.pools=[],this.createForm()}createForm(){this.createBootstrapForm=new r.a({siteName:new t.i("",{validators:[t.B.required]}),pools:new t.k({},{validators:[this.validatePools()]}),token:new t.i("",{})})}ngOnInit(){this.createBootstrapForm.get("siteName").setValue(this.siteName),this.rbdMirroringService.getSiteName().subscribe(l=>{this.createBootstrapForm.get("siteName").setValue(l.site_name)}),this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.pools=l.content_data.pools.reduce((l,n)=>(l.push({name:n.name,mirror_mode:n.mirror_mode}),l),[]);const n=this.createBootstrapForm.get("pools");u.each(this.pools,l=>{const e=l.name,u="disabled"===l.mirror_mode,i=n.controls[e];i?u&&i.disabled?i.enable():!u&&i.enabled&&(i.disable(),i.setValue(!0)):n.addControl(e,new t.i({value:!u,disabled:!u}))})})}ngOnDestroy(){this.subs&&this.subs.unsubscribe()}validatePools(){return l=>{let n=0;return u.each(l.controls,l=>{!0===l.value&&++n}),n>0?null:{requirePool:!0}}}generate(){this.createBootstrapForm.get("token").setValue("");let l="";const n=[],e=this.createBootstrapForm.get("pools");u.each(e.controls,(e,t)=>{!0===e.value&&(l=t,e.disabled||n.push(t))});const t={mirror_mode:"image"},r=Object(i.a)(this.rbdMirroringService.setSiteName(this.createBootstrapForm.getValue("siteName")),Object(s.a)(n.map(l=>this.rbdMirroringService.updatePool(l,t))),this.rbdMirroringService.createBootstrapToken(l).pipe(Object(a.a)(l=>this.createBootstrapForm.get("token").setValue(l.token)))).pipe(Object(o.a)()),c=()=>{this.rbdMirroringService.refresh(),this.createBootstrapForm.setErrors({cdSubmitButton:!0})};this.taskWrapper.wrapTaskAroundCall({task:new d.a("rbd/mirroring/bootstrap/create",{}),call:r}).subscribe(void 0,c,c)}}},VBM6:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("EEJc"),i=e("ajRT"),s=e("SVse"),a=e("s7LF"),o=e("+gVj"),r=e("mXUL"),d=e("IZUe"),c=e("ANnk"),m=e("f/UV"),p=e("aexS"),h=e("gp3X"),g=e("sb0X"),f=e("KVJa"),v=e("Z21x"),b=e("sne2"),C=e("L4us"),S=e("LqlI"),R=e("XED3"),_=e("kn/O");e.d(n,"a",(function(){return B}));var w=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function y(l){return t["ɵvid"](0,[(l()(),t["ɵted"](-1,null,["Edit"]))],null,null)}function k(l){return t["ɵvid"](0,[(l()(),t["ɵted"](-1,null,["Add"]))],null,null)}function I(l){return t["ɵvid"](0,[(l()(),t["ɵted"](-1,null,["Edit"]))],null,null)}function E(l){return t["ɵvid"](0,[(l()(),t["ɵted"](-1,null,["Add"]))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The cluster name is not valid."]))],null,null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The CephX ID is not valid."]))],null,null)}function D(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["The monitory address is not valid."]))],null,null)}function x(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["CephX key must be base64 encoded."]))],null,null)}function P(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,110,"cd-modal",[],null,null,null,u.c,u.b)),t["ɵdid"](1,49152,null,0,i.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,7,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](3,0,null,null,5,null,null,null,null,null,null,null)),t["ɵdid"](4,16384,null,0,s.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,y)),t["ɵdid"](6,278528,null,0,s.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,s.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,k)),t["ɵdid"](8,16384,null,0,s.NgSwitchDefault,[t.ViewContainerRef,t.TemplateRef,s.NgSwitch],null,null),(l()(),t["ɵted"](-1,null,[" pool mirror peer"])),(l()(),t["ɵeld"](10,0,null,1,100,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](11,0,null,null,99,"form",[["class","form"],["name","editPeerForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,13).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,13).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,16).onSubmit()&&u),u}),null,null)),t["ɵdid"](12,16384,null,0,a.G,[],null,null),t["ɵdid"](13,540672,[["formDir",4]],0,a.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,a.d,null,[a.l]),t["ɵdid"](15,16384,null,0,a.s,[[4,a.d]],null,null),t["ɵdid"](16,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](17,0,null,null,86,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](18,0,null,null,14,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](19,0,null,null,13,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](20,0,null,null,5,null,null,null,null,null,null,null)),t["ɵdid"](21,16384,null,0,s.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](23,278528,null,0,s.NgSwitchCase,[t.ViewContainerRef,t.TemplateRef,s.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](25,16384,null,0,s.NgSwitchDefault,[t.ViewContainerRef,t.TemplateRef,s.NgSwitch],null,null),(l()(),t["ɵted"](-1,null,[" the pool mirror peer attributes for pool "])),(l()(),t["ɵeld"](27,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](28,null,["",""])),(l()(),t["ɵted"](-1,null,[" and click "])),(l()(),t["ɵeld"](30,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Submit"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](33,0,null,null,18,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](34,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](37,0,null,0,1,"label",[["class","col-form-label required"],["for","clusterName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Cluster Name"])),(l()(),t["ɵeld"](39,0,null,0,8,"input",[["autofocus",""],["class","form-control"],["formControlName","clusterName"],["id","clusterName"],["name","clusterName"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,42)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,42).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,42)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,42)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](40,4210688,null,0,d.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](41,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](42,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](44,671744,[[1,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](46,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](47,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,N)),t["ɵdid"](49,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,F)),t["ɵdid"](51,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](52,0,null,null,17,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](53,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](56,0,null,0,1,"label",[["class","col-form-label required"],["for","clientID"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["CephX ID"])),(l()(),t["ɵeld"](58,0,null,0,7,"input",[["class","form-control"],["formControlName","clientID"],["id","clientID"],["name","clientID"],["placeholder","CephX ID..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,60)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,60).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,60)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,60)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](59,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](60,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](62,671744,[[3,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](64,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](65,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,V)),t["ɵdid"](67,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,T)),t["ɵdid"](69,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](70,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](71,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](74,0,null,0,2,"label",[["class","col-form-label"],["for","monAddr"]],null,null,null,null,null)),(l()(),t["ɵeld"](75,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Monitor Addresses"])),(l()(),t["ɵeld"](77,0,null,0,7,"input",[["class","form-control"],["formControlName","monAddr"],["id","monAddr"],["name","monAddr"],["placeholder","Comma-delimited addresses..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,79)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,79).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,79)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,79)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](78,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](79,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](81,671744,[[5,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](83,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](84,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,D)),t["ɵdid"](86,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](87,0,null,null,16,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,r.b,r.a)),t["ɵdid"](88,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,7,{FormControlNames:1}),t["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),t["ɵeld"](91,0,null,0,2,"label",[["class","col-form-label"],["for","key"]],null,null,null,null,null)),(l()(),t["ɵeld"](92,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["CephX Key"])),(l()(),t["ɵeld"](94,0,null,0,7,"input",[["class","form-control"],["formControlName","key"],["id","key"],["name","key"],["placeholder","Base64-encoded key..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,96)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,96).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,96)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,96)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](95,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](96,16384,null,0,a.e,[t.Renderer2,t.ElementRef,[2,a.b]],null,null),t["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),t["ɵdid"](98,671744,[[7,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,a.q,null,[a.j]),t["ɵdid"](100,16384,null,0,a.r,[[4,a.q]],null,null),t["ɵdid"](101,16384,null,0,o.h,[[3,a.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,x)),t["ɵdid"](103,16384,null,0,s.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](104,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](105,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](106,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.update()&&t),t}),h.b,h.a)),t["ɵdid"](107,114688,null,0,g.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Submit"])),(l()(),t["ɵeld"](109,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,f.b,f.a)),t["ɵdid"](110,49152,null,0,v.a,[s.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,4,0,e.mode),l(n,6,0,"edit"),l(n,13,0,e.editPeerForm),l(n,16,0,e.editPeerForm),l(n,21,0,e.mode),l(n,23,0,"edit"),l(n,34,0),l(n,40,0,""),l(n,44,0,"clusterName"),l(n,47,0,"clusterName"),l(n,49,0,e.editPeerForm.showError("clusterName",t["ɵnov"](n,13),"required")),l(n,51,0,e.editPeerForm.showError("clusterName",t["ɵnov"](n,13),"invalidClusterName")),l(n,53,0),l(n,62,0,"clientID"),l(n,65,0,"clientID"),l(n,67,0,e.editPeerForm.showError("clientID",t["ɵnov"](n,13),"required")),l(n,69,0,e.editPeerForm.showError("clientID",t["ɵnov"](n,13),"invalidClientID")),l(n,71,0),l(n,81,0,"monAddr"),l(n,84,0,"monAddr"),l(n,86,0,e.editPeerForm.showError("monAddr",t["ɵnov"](n,13),"invalidMonAddr")),l(n,88,0),l(n,98,0,"key"),l(n,101,0,"key"),l(n,103,0,e.editPeerForm.showError("key",t["ɵnov"](n,13),"invalidKey")),l(n,107,0,e.editPeerForm),l(n,110,0,"Cancel",e.modalRef.hide)}),(function(l,n){var e=n.component;l(n,11,0,t["ɵnov"](n,15).ngClassUntouched,t["ɵnov"](n,15).ngClassTouched,t["ɵnov"](n,15).ngClassPristine,t["ɵnov"](n,15).ngClassDirty,t["ɵnov"](n,15).ngClassValid,t["ɵnov"](n,15).ngClassInvalid,t["ɵnov"](n,15).ngClassPending),l(n,28,0,e.poolName),l(n,33,0,t["ɵnov"](n,34).hasErrors,t["ɵnov"](n,34).hasSuccess),l(n,39,0,t["ɵnov"](n,46).ngClassUntouched,t["ɵnov"](n,46).ngClassTouched,t["ɵnov"](n,46).ngClassPristine,t["ɵnov"](n,46).ngClassDirty,t["ɵnov"](n,46).ngClassValid,t["ɵnov"](n,46).ngClassInvalid,t["ɵnov"](n,46).ngClassPending,t["ɵnov"](n,47).validClass,t["ɵnov"](n,47).invalidClass),l(n,52,0,t["ɵnov"](n,53).hasErrors,t["ɵnov"](n,53).hasSuccess),l(n,58,0,t["ɵnov"](n,64).ngClassUntouched,t["ɵnov"](n,64).ngClassTouched,t["ɵnov"](n,64).ngClassPristine,t["ɵnov"](n,64).ngClassDirty,t["ɵnov"](n,64).ngClassValid,t["ɵnov"](n,64).ngClassInvalid,t["ɵnov"](n,64).ngClassPending,t["ɵnov"](n,65).validClass,t["ɵnov"](n,65).invalidClass),l(n,70,0,t["ɵnov"](n,71).hasErrors,t["ɵnov"](n,71).hasSuccess),l(n,77,0,t["ɵnov"](n,83).ngClassUntouched,t["ɵnov"](n,83).ngClassTouched,t["ɵnov"](n,83).ngClassPristine,t["ɵnov"](n,83).ngClassDirty,t["ɵnov"](n,83).ngClassValid,t["ɵnov"](n,83).ngClassInvalid,t["ɵnov"](n,83).ngClassPending,t["ɵnov"](n,84).validClass,t["ɵnov"](n,84).invalidClass),l(n,87,0,t["ɵnov"](n,88).hasErrors,t["ɵnov"](n,88).hasSuccess),l(n,94,0,t["ɵnov"](n,100).ngClassUntouched,t["ɵnov"](n,100).ngClassTouched,t["ɵnov"](n,100).ngClassPristine,t["ɵnov"](n,100).ngClassDirty,t["ɵnov"](n,100).ngClassValid,t["ɵnov"](n,100).ngClassInvalid,t["ɵnov"](n,100).ngClassPending,t["ɵnov"](n,101).validClass,t["ɵnov"](n,101).invalidClass)}))}function q(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-pool-edit-peer-modal",[],null,null,null,P,w)),t["ɵdid"](1,114688,null,0,C.a,[S.a,R.a,_.a],null,null)],(function(l,n){l(n,1,0)}),null)}var B=t["ɵccf"]("cd-pool-edit-peer-modal",C.a,q,{},{},[])},WkyA:function(l,n,e){"use strict";e.d(n,"a",(function(){return t}));class t{constructor(){}}},WxU5:function(l,n,e){"use strict";e.d(n,"a",(function(){return u})),e("Ekvf"),e("F83c"),e("2EZI");var t=e("kvvV");e("aexS"),e("kn/O");class u{constructor(l,n,e,t,u,i){this.authStorageService=l,this.rbdService=n,this.modalRef=e,this.fb=t,this.poolService=u,this.taskWrapper=i,this.poolPermission=this.authStorageService.getPermissions().pool}createForm(){this.purgeForm=this.fb.group({poolName:""})}ngOnInit(){this.poolPermission.read&&this.poolService.list(["pool_name","application_metadata"]).then(l=>{this.pools=l.filter(l=>l.application_metadata.includes("rbd")).map(l=>l.pool_name)}),this.createForm()}purge(){const l=this.purgeForm.getValue("poolName")||"";this.taskWrapper.wrapTaskAroundCall({task:new t.a("rbd/trash/purge",{pool_name:l}),call:this.rbdService.purgeTrash(l)}).subscribe(void 0,()=>{this.purgeForm.setErrors({cdSubmitButton:!0})},()=>{this.modalRef.hide()})}}},XED3:function(l,n,e){"use strict";e.d(n,"a",(function(){return c}));var t=e("mrSG"),u=e("IheW"),i=e("2Vo4"),s=e("pLZG"),a=e("xTzq"),o=e("lOp/"),r=e("8Y7J"),d=e("pL04");let c=(()=>{let l=class{constructor(l,n){this.http=l,this.timerService=n,this.REFRESH_INTERVAL=3e4,this.summaryDataSource=new i.a(null),this.summaryData$=this.summaryDataSource.asObservable()}startPolling(){return this.timerService.get(()=>this.retrieveSummaryObservable(),this.REFRESH_INTERVAL).subscribe(this.retrieveSummaryObserver())}refresh(){return this.retrieveSummaryObservable().subscribe(this.retrieveSummaryObserver())}retrieveSummaryObservable(){return this.http.get("api/block/mirroring/summary")}retrieveSummaryObserver(){return l=>{this.summaryDataSource.next(l)}}subscribeSummary(l,n){return this.summaryData$.pipe(Object(s.a)(l=>!!l)).subscribe(l,n)}getPool(l){return this.http.get("api/block/mirroring/pool/"+l)}updatePool(l,n){return this.http.put("api/block/mirroring/pool/"+l,n,{observe:"response"})}getSiteName(){return this.http.get("api/block/mirroring/site_name")}setSiteName(l){return this.http.put("api/block/mirroring/site_name",{site_name:l},{observe:"response"})}createBootstrapToken(l){return this.http.post(`api/block/mirroring/pool/${l}/bootstrap/token`,{})}importBootstrapToken(l,n,e){return this.http.post(`api/block/mirroring/pool/${l}/bootstrap/peer`,{direction:n,token:e},{observe:"response"})}getPeer(l,n){return this.http.get(`api/block/mirroring/pool/${l}/peer/${n}`)}addPeer(l,n){return this.http.post(`api/block/mirroring/pool/${l}/peer`,n,{observe:"response"})}updatePeer(l,n,e){return this.http.put(`api/block/mirroring/pool/${l}/peer/${n}`,e,{observe:"response"})}deletePeer(l,n){return this.http.delete(`api/block/mirroring/pool/${l}/peer/${n}`,{observe:"response"})}};return l.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new l(r["ɵɵinject"](u.c),r["ɵɵinject"](o.a))},token:l,providedIn:d.a}),t.__decorate([t.__param(0,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[String]),t.__metadata("design:returntype",void 0)],l.prototype,"setSiteName",null),t.__decorate([t.__param(1,a.b),t.__param(2,a.b),t.__metadata("design:type",Function),t.__metadata("design:paramtypes",[String,String,String]),t.__metadata("design:returntype",void 0)],l.prototype,"importBootstrapToken",null),l=t.__decorate([a.a,t.__metadata("design:paramtypes",[u.c,o.a])],l),l})()},Z4cD:function(l,n,e){"use strict";e.d(n,"a",(function(){return s}));var t=e("s7LF"),u=e("LvDl"),i=(e("my5R"),e("QFaf"));class s{constructor(l,n){this.modalRef=l,this.iscsiService=n}ngOnInit(){const l={backstore:new t.i(this.imagesSettings[this.image].backstore),lun:new t.i(this.imagesSettings[this.image].lun),wwn:new t.i(this.imagesSettings[this.image].wwn)};u.forEach(this.backstores,n=>{const e=this.imagesSettings[this.image][n]||{};u.forIn(this.disk_default_controls[n],(n,u)=>{l[u]=new t.i(e[u])})}),this.settingsForm=new i.a(l)}getDiskControlLimits(l,n){return this.disk_controls_limits?this.disk_controls_limits[l][n]:{type:"int"}}save(){const l=this.settingsForm.controls.backstore.value,n=this.settingsForm.controls.lun.value,e=this.settingsForm.controls.wwn.value,t={};u.forIn(this.settingsForm.controls,(n,e)=>{""!==n.value&&null!==n.value&&e in this.disk_default_controls[this.settingsForm.value.backstore]&&(t[e]=n.value,u.forEach(this.backstores,t=>{t!==l&&e in(this.imagesSettings[this.image][t]||{})&&(this.imagesSettings[this.image][t][e]=n.value)}))}),this.imagesSettings[this.image].backstore=l,this.imagesSettings[this.image].lun=n,this.imagesSettings[this.image].wwn=e,this.imagesSettings[this.image][l]=t,this.imagesSettings=Object.assign({},this.imagesSettings),this.control.updateValueAndValidity({emitEvent:!1}),this.modalRef.hide()}}},Z5tW:function(l,n,e){"use strict";e.d(n,"a",(function(){return r}));var t=e("cp0P"),u=(e("Ekvf"),e("F83c"),e("0+/T")),i=(e("sne2"),e("oxzT")),s=e("mtw6"),a=e("vCyI"),o=(e("aexS"),e("9nlD"),e("daK0"));class r{constructor(l,n,e,t,u,s,o){this.authStorageService=l,this.rbdService=n,this.poolService=e,this.modalService=t,this.notificationService=u,this.i18n=s,this.actionLabels=o,this.selection=new a.a,this.permission=this.authStorageService.getPermissions().rbdImage,this.tableActions=[{permission:"create",icon:i.a.add,click:()=>this.createModal(),name:this.actionLabels.CREATE},{permission:"delete",icon:i.a.destroy,click:()=>this.deleteModal(),name:this.actionLabels.DELETE,disable:()=>this.getDeleteDisableDesc()}]}ngOnInit(){this.columns=[{name:this.i18n("Namespace"),prop:"namespace",flexGrow:1},{name:this.i18n("Pool"),prop:"pool",flexGrow:1},{name:this.i18n("Total images"),prop:"num_images",flexGrow:1}],this.refresh()}refresh(){this.poolService.list(["pool_name","type","application_metadata"]).then(l=>{l=l.filter(l=>this.rbdService.isRBDPool(l)&&"replicated"===l.type);const n=[];l.forEach(l=>{n.push(this.rbdService.listNamespaces(l.pool_name))}),n.length>0?Object(t.a)(n).subscribe(n=>{const e=[];for(let t=0;t<n.length;t++){const u=l[t].pool_name;n[t].forEach(l=>{e.push({id:`${u}/${l.namespace}`,pool:u,namespace:l.namespace,num_images:l.num_images})})}this.namespaces=e}):this.namespaces=[]})}updateSelection(l){this.selection=l}createModal(){this.modalRef=this.modalService.show(o.a),this.modalRef.content.onSubmit.subscribe(()=>{this.refresh()})}deleteModal(){const l=this.selection.first().pool,n=this.selection.first().namespace;this.modalRef=this.modalService.show(u.a,{initialState:{itemDescription:"Namespace",itemNames:[`${l}/${n}`],submitAction:()=>this.rbdService.deleteNamespace(l,n).subscribe(()=>{this.notificationService.show(s.a.success,this.i18n("Deleted namespace '{{pool}}/{{namespace}}'",{pool:l,namespace:n})),this.modalRef.hide(),this.refresh()},()=>{this.modalRef.content.stopLoadingSpinner()})}})}getDeleteDisableDesc(){const l=this.selection.first();return!l||l.num_images>0&&this.i18n("Namespace contains images")}}},a6qe:function(l,n,e){"use strict";e.d(n,"a",(function(){return s}));var t=e("s7LF"),u=e("LvDl"),i=(e("my5R"),e("QFaf"));class s{constructor(l,n){this.modalRef=l,this.iscsiService=n}ngOnInit(){const l={};u.forIn(this.target_default_controls,(n,e)=>{l[e]=new t.i(this.target_controls.value[e])}),this.settingsForm=new i.a(l)}save(){const l={};u.forIn(this.settingsForm.controls,(n,e)=>{""!==n.value&&null!==n.value&&(l[e]=n.value)}),this.target_controls.setValue(l),this.modalRef.hide()}getTargetControlLimits(l){return this.target_controls_limits?this.target_controls_limits[l]:["Yes","No"].includes(this.target_default_controls[l])?{type:"bool"}:{type:"int"}}}},aAWM:function(l,n,e){"use strict";e("uIqm");var t=e("PhyI");class u{transform(l){return{0:"global",1:"pool",2:"image"}[l]}}e("aXbf"),e("o8EM"),e.d(n,"a",(function(){return i}));class i{constructor(l,n,e){this.formatterService=l,this.rbdConfigurationService=n,this.i18n=e,this.sourceField=t.a,this.typeField=t.b}ngOnInit(){this.poolConfigurationColumns=[{prop:"displayName",name:this.i18n("Name")},{prop:"description",name:this.i18n("Description")},{prop:"name",name:this.i18n("Key")},{prop:"source",name:this.i18n("Source"),cellTemplate:this.configurationSourceTpl,pipe:new u},{prop:"value",name:this.i18n("Value"),cellTemplate:this.configurationValueTpl}]}ngOnChanges(){this.data&&(this.data=this.data.filter(l=>this.rbdConfigurationService.getOptionFields().map(l=>l.name).includes(l.name)))}}},aa9H:function(l,n,e){"use strict";var t=e("s7LF"),u=(e("XED3"),e("QFaf")),i=e("kvvV");e("kn/O");class s{}e.d(n,"a",(function(){return a}));class a{constructor(l,n,e,t){this.modalRef=l,this.i18n=n,this.rbdMirroringService=e,this.taskWrapper=t,this.bsConfig={containerClass:"theme-default"},this.peerExists=!1,this.mirrorModes=[{id:"disabled",name:this.i18n("Disabled")},{id:"pool",name:this.i18n("Pool")},{id:"image",name:this.i18n("Image")}],this.createForm()}createForm(){this.editModeForm=new u.a({mirrorMode:new t.i("",{validators:[t.B.required,this.validateMode.bind(this)]})})}ngOnInit(){this.pattern=""+this.poolName,this.rbdMirroringService.getPool(this.poolName).subscribe(l=>{this.setResponse(l)}),this.subs=this.rbdMirroringService.subscribeSummary(l=>{this.peerExists=!1;const n=l.content_data.pools.find(l=>this.poolName===l.name);this.peerExists=n&&n.peer_uuids.length})}ngOnDestroy(){this.subs.unsubscribe()}validateMode(l){return"disabled"===l.value&&this.peerExists?{cannotDisable:{value:l.value}}:null}setResponse(l){this.editModeForm.get("mirrorMode").setValue(l.mirror_mode)}update(){const l=new s;l.mirror_mode=this.editModeForm.getValue("mirrorMode"),this.taskWrapper.wrapTaskAroundCall({task:new i.a("rbd/mirroring/pool/edit",{pool_name:this.poolName}),call:this.rbdMirroringService.updatePool(this.poolName,l)}).subscribe(void 0,()=>this.editModeForm.setErrors({cdSubmitButton:!0}),()=>{this.rbdMirroringService.refresh(),this.modalRef.hide()})}}},bUo2:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("gp3X"),i=e("sb0X"),s=e("EEJc"),a=e("ajRT"),o=e("s7LF"),r=e("+gVj"),d=e("mXUL"),c=e("ANnk"),m=e("f/UV"),p=e("aexS"),h=e("SVse"),g=e("D4zM"),f=e("OcYo"),v=e("EApP"),b=e("GiVz"),C=e("KVJa"),S=e("Z21x"),R=e("sne2"),_=e("Sofw"),w=e("LqlI"),y=e("my5R"),k=e("9nlD");e.d(n,"a",(function(){return M}));var I=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function T(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function D(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function x(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function P(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function q(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.submitAction()&&t),t}),u.b,u.a)),t["ɵdid"](1,114688,null,0,i.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Submit"]))],(function(l,n){l(n,1,0,n.component.discoveryForm)}),null)}function B(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,106,"cd-modal",[],null,null,null,s.c,s.b)),t["ɵdid"](1,49152,null,0,a.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Discovery Authentication"])),(l()(),t["ɵeld"](4,0,null,1,102,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,101,"form",[["name","discoveryForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,o.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,o.d,null,[o.l]),t["ɵdid"](9,16384,null,0,o.s,[[4,o.d]],null,null),t["ɵdid"](10,16384,null,0,r.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,89,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](13,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label"],["for","user"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["User"])),(l()(),t["ɵeld"](18,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](19,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","user"],["id","user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,20)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,20).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,20)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,20)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](20,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](22,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](24,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](25,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](26,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](28,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,N)),t["ɵdid"](30,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](31,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](32,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](35,0,null,0,1,"label",[["class","cd-col-form-label"],["for","password"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Password"])),(l()(),t["ɵeld"](37,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](38,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),t["ɵeld"](39,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","password"],["id","password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,40)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,40).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,40)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,40)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](40,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](42,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](44,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](45,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](46,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](47,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),t["ɵeld"](48,0,null,null,1,"button",[["cdPasswordButton","password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,49).onClick()&&u),u}),null,null)),t["ɵdid"](49,81920,null,0,g.a,[t.ElementRef,t.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),t["ɵeld"](50,0,null,null,1,"button",[["cdCopy2ClipboardButton","password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,51).onClick()&&u),u}),null,null)),t["ɵdid"](51,81920,null,0,f.a,[t.ElementRef,t.Renderer2,v.j,b.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,F)),t["ɵdid"](53,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,V)),t["ɵdid"](55,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](56,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](57,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](60,0,null,0,2,"label",[["class","cd-col-form-label"],["for","mutual_user"]],null,null,null,null,null)),(l()(),t["ɵeld"](61,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Mutual User"])),(l()(),t["ɵeld"](63,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](64,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","mutual_user"],["id","mutual_user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,65)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,65).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,65)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,65)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](65,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](67,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](69,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](70,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](71,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,T)),t["ɵdid"](73,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,D)),t["ɵdid"](75,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](76,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,d.b,d.a)),t["ɵdid"](77,1163264,null,2,r.c,[t.ElementRef,r.g],null,null),t["ɵqud"](603979776,7,{FormControlNames:1}),t["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),t["ɵeld"](80,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mutual_password"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Mutual Password"])),(l()(),t["ɵeld"](82,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),t["ɵeld"](83,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),t["ɵeld"](84,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","mutual_password"],["id","mutual_password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,85)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,85).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,85)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,85)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](85,16384,null,0,o.e,[t.Renderer2,t.ElementRef,[2,o.b]],null,null),t["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),t["ɵdid"](87,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,o.q,null,[o.j]),t["ɵdid"](89,16384,null,0,o.r,[[4,o.q]],null,null),t["ɵdid"](90,4210688,null,0,c.a,[[2,m.a],p.a,t.ElementRef],null,null),t["ɵdid"](91,16384,null,0,r.h,[[3,o.d],r.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](92,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),t["ɵeld"](93,0,null,null,1,"button",[["cdPasswordButton","mutual_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,94).onClick()&&u),u}),null,null)),t["ɵdid"](94,81920,null,0,g.a,[t.ElementRef,t.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),t["ɵeld"](95,0,null,null,1,"button",[["cdCopy2ClipboardButton","mutual_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==t["ɵnov"](l,96).onClick()&&u),u}),null,null)),t["ɵdid"](96,81920,null,0,f.a,[t.ElementRef,t.Renderer2,v.j,b.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,x)),t["ɵdid"](98,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,P)),t["ɵdid"](100,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](101,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](102,0,null,null,4,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,q)),t["ɵdid"](104,16384,null,0,h.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](105,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,C.b,C.a)),t["ɵdid"](106,49152,null,0,S.a,[h.Location,R.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.bsModalRef),l(n,7,0,e.discoveryForm),l(n,10,0,e.discoveryForm),l(n,13,0),l(n,22,0,"user"),l(n,26,0,"user"),l(n,28,0,e.discoveryForm.showError("user",t["ɵnov"](n,7),"required")),l(n,30,0,e.discoveryForm.showError("user",t["ɵnov"](n,7),"pattern")),l(n,32,0),l(n,42,0,"password"),l(n,46,0,"password"),l(n,49,0,"password"),l(n,51,0,"password"),l(n,53,0,e.discoveryForm.showError("password",t["ɵnov"](n,7),"required")),l(n,55,0,e.discoveryForm.showError("password",t["ɵnov"](n,7),"pattern")),l(n,57,0),l(n,67,0,"mutual_user"),l(n,71,0,"mutual_user"),l(n,73,0,e.discoveryForm.showError("mutual_user",t["ɵnov"](n,7),"required")),l(n,75,0,e.discoveryForm.showError("mutual_user",t["ɵnov"](n,7),"pattern")),l(n,77,0),l(n,87,0,"mutual_password"),l(n,91,0,"mutual_password"),l(n,94,0,"mutual_password"),l(n,96,0,"mutual_password"),l(n,98,0,e.discoveryForm.showError("mutual_password",t["ɵnov"](n,7),"required")),l(n,100,0,e.discoveryForm.showError("mutual_password",t["ɵnov"](n,7),"pattern")),l(n,104,0,e.hasPermission),l(n,106,0,"Cancel",e.bsModalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,12,0,t["ɵnov"](n,13).hasErrors,t["ɵnov"](n,13).hasSuccess),l(n,19,0,t["ɵnov"](n,24).ngClassUntouched,t["ɵnov"](n,24).ngClassTouched,t["ɵnov"](n,24).ngClassPristine,t["ɵnov"](n,24).ngClassDirty,t["ɵnov"](n,24).ngClassValid,t["ɵnov"](n,24).ngClassInvalid,t["ɵnov"](n,24).ngClassPending,t["ɵnov"](n,26).validClass,t["ɵnov"](n,26).invalidClass),l(n,31,0,t["ɵnov"](n,32).hasErrors,t["ɵnov"](n,32).hasSuccess),l(n,39,0,t["ɵnov"](n,44).ngClassUntouched,t["ɵnov"](n,44).ngClassTouched,t["ɵnov"](n,44).ngClassPristine,t["ɵnov"](n,44).ngClassDirty,t["ɵnov"](n,44).ngClassValid,t["ɵnov"](n,44).ngClassInvalid,t["ɵnov"](n,44).ngClassPending,t["ɵnov"](n,46).validClass,t["ɵnov"](n,46).invalidClass),l(n,56,0,t["ɵnov"](n,57).hasErrors,t["ɵnov"](n,57).hasSuccess),l(n,64,0,t["ɵnov"](n,69).ngClassUntouched,t["ɵnov"](n,69).ngClassTouched,t["ɵnov"](n,69).ngClassPristine,t["ɵnov"](n,69).ngClassDirty,t["ɵnov"](n,69).ngClassValid,t["ɵnov"](n,69).ngClassInvalid,t["ɵnov"](n,69).ngClassPending,t["ɵnov"](n,71).validClass,t["ɵnov"](n,71).invalidClass),l(n,76,0,t["ɵnov"](n,77).hasErrors,t["ɵnov"](n,77).hasSuccess),l(n,84,0,t["ɵnov"](n,89).ngClassUntouched,t["ɵnov"](n,89).ngClassTouched,t["ɵnov"](n,89).ngClassPristine,t["ɵnov"](n,89).ngClassDirty,t["ɵnov"](n,89).ngClassValid,t["ɵnov"](n,89).ngClassInvalid,t["ɵnov"](n,89).ngClassPending,t["ɵnov"](n,91).validClass,t["ɵnov"](n,91).invalidClass)}))}function A(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-iscsi-target-discovery-modal",[],null,null,null,B,I)),t["ɵdid"](1,114688,null,0,_.a,[p.a,w.a,y.a,k.a,b.a],null,null)],(function(l,n){l(n,1,0)}),null)}var M=t["ɵccf"]("cd-iscsi-target-discovery-modal",_.a,A,{},{},[])},chpi:function(l,n,e){"use strict";e.d(n,"a",(function(){return h}));var t=e("LvDl"),u=e("wd/R"),i=(e("F83c"),e("0+/T")),s=(e("sne2"),e("uIqm"),e("x38r")),a=e("oxzT"),o=e("yJti"),r=e("vCyI"),d=e("kvvV"),c=e("jVDg"),m=(e("a0VL"),e("aexS"),e("VTlA"),e("kn/O"),e("WxU5")),p=e("2GqK");class h{constructor(l,n,e,t,u,i,s,o){this.authStorageService=l,this.rbdService=n,this.modalService=e,this.cdDatePipe=t,this.taskListService=u,this.taskWrapper=i,this.i18n=s,this.actionLabels=o,this.icons=a.a,this.executingTasks=[],this.selection=new r.a,this.disablePurgeBtn=!0,this.permission=this.authStorageService.getPermissions().rbdImage,this.tableActions=[{permission:"update",icon:a.a.undo,click:()=>this.restoreModal(),name:this.actionLabels.RESTORE},{permission:"delete",icon:a.a.destroy,click:()=>this.deleteModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:this.i18n("ID"),prop:"id",flexGrow:1,cellTransformation:s.a.executing},{name:this.i18n("Name"),prop:"name",flexGrow:1},{name:this.i18n("Pool"),prop:"pool_name",flexGrow:1},{name:this.i18n("Namespace"),prop:"namespace",flexGrow:1},{name:this.i18n("Status"),prop:"deferment_end_time",flexGrow:1,cellTemplate:this.expiresTpl},{name:this.i18n("Deleted At"),prop:"deletion_time",flexGrow:1,pipe:this.cdDatePipe}],this.taskListService.init(()=>this.rbdService.listTrash(),l=>this.prepareResponse(l),l=>this.images=l,()=>this.onFetchError(),l=>["rbd/trash/remove","rbd/trash/restore"].includes(l.name),(l,n)=>new c.a(l.pool_name,l.namespace,l.id).toString()===n.metadata.image_id_spec,void 0)}prepareResponse(l){let n=[];const e={};l.forEach(l=>{t.isUndefined(e[l.status])&&(e[l.status]=[]),e[l.status].push(l.pool_name),n=n.concat(l.value),this.disablePurgeBtn=!n.length});const i=[];return t.forEach(e,(l,n)=>{i.push({status:parseInt(n,10),statusFor:(l.length>1?"pools ":"pool ")+"<strong>"+l.join("</strong>, <strong>")+"</strong>"})}),this.viewCacheStatusList=i,n.forEach(l=>{l.cdIsExpired=u().isAfter(l.deferment_end_time)}),n}onFetchError(){this.table.reset(),this.viewCacheStatusList=[{status:o.a.ValueException}]}updateSelection(l){this.selection=l}restoreModal(){const l={poolName:this.selection.first().pool_name,namespace:this.selection.first().namespace,imageName:this.selection.first().name,imageId:this.selection.first().id};this.modalRef=this.modalService.show(p.a,{initialState:l})}deleteModal(){const l=this.selection.first().pool_name,n=this.selection.first().namespace,e=this.selection.first().id,t=this.selection.first().deferment_end_time,u=new c.a(l,n,e);this.modalRef=this.modalService.show(i.a,{initialState:{itemDescription:"RBD",itemNames:[u],bodyTemplate:this.deleteTpl,bodyContext:{$implicit:t},submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new d.a("rbd/trash/remove",{image_id_spec:u.toString()}),call:this.rbdService.removeTrash(u,!0)})}})}isExpired(l){return u().isAfter(l)}purgeModal(){this.modalService.show(m.a)}}},cxJu:function(l,n,e){"use strict";e.d(n,"a",(function(){return r}));var t=e("quSY"),u=(e("XED3"),e("oxzT")),i=e("vCyI"),s=(e("aexS"),e("SuaG")),a=e("+26A"),o=e("puGn");class r{constructor(l,n,e,s){this.authStorageService=l,this.rbdMirroringService=n,this.modalService=e,this.i18n=s,this.selection=new i.a,this.peersExist=!0,this.subs=new t.a,this.permission=this.authStorageService.getPermissions().rbdMirroring;const a={permission:"update",icon:u.a.edit,click:()=>this.editSiteNameModal(),name:this.i18n("Edit Site Name"),canBePrimary:()=>!0,disable:()=>!1},o={permission:"update",icon:u.a.upload,click:()=>this.createBootstrapModal(),name:this.i18n("Create Bootstrap Token"),disable:()=>!1},r={permission:"update",icon:u.a.download,click:()=>this.importBootstrapModal(),name:this.i18n("Import Bootstrap Token"),disable:()=>this.peersExist};this.tableActions=[a,o,r]}ngOnInit(){this.subs.add(this.rbdMirroringService.startPolling()),this.subs.add(this.rbdMirroringService.subscribeSummary(l=>{this.status=l.content_data.status,this.siteName=l.site_name,this.peersExist=!!l.content_data.pools.find(l=>l.peer_uuids.length>0)}))}ngOnDestroy(){this.subs.unsubscribe()}editSiteNameModal(){this.modalRef=this.modalService.show(o.a,{initialState:{siteName:this.siteName}})}createBootstrapModal(){this.modalRef=this.modalService.show(s.a,{initialState:{siteName:this.siteName}})}importBootstrapModal(){this.modalRef=this.modalService.show(a.a,{initialState:{siteName:this.siteName}})}}},daK0:function(l,n,e){"use strict";e.d(n,"a",(function(){return o}));var t=e("s7LF"),u=e("XNiG"),i=(e("Ekvf"),e("F83c"),e("mtw6")),s=e("QFaf"),a=e("kvvV");e("aexS"),e("9nlD");class o{constructor(l,n,e,t,u,i){this.modalRef=l,this.authStorageService=n,this.notificationService=e,this.poolService=t,this.rbdService=u,this.i18n=i,this.pools=null,this.editing=!1,this.poolPermission=this.authStorageService.getPermissions().pool,this.createForm()}createForm(){this.namespaceForm=new s.a({pool:new t.i(""),namespace:new t.i("")},this.validator(),this.asyncValidator())}validator(){return l=>{const n=l.get("pool"),e=l.get("namespace");let t=null;n.value||(t={required:!0}),n.setErrors(t);let u=null;return e.value||(u={required:!0}),e.setErrors(u),null}}asyncValidator(){return l=>new Promise(n=>{const e=l.get("pool"),t=l.get("namespace");this.rbdService.listNamespaces(e.value).subscribe(l=>{if(l.some(l=>l.namespace===t.value)){const l={namespaceExists:!0};t.setErrors(l),n(l)}else n(null)})})}ngOnInit(){this.onSubmit=new u.a,this.poolPermission.read&&this.poolService.list(["pool_name","type","application_metadata"]).then(l=>{const n=[];for(const e of l)this.rbdService.isRBDPool(e)&&"replicated"===e.type&&n.push(e);if(this.pools=n,1===this.pools.length){const l=this.pools[0].pool_name;this.namespaceForm.get("pool").setValue(l)}})}submit(){const l=this.namespaceForm.getValue("pool"),n=this.namespaceForm.getValue("namespace"),e=new a.a;e.name="rbd/namespace/create",e.metadata={pool:l,namespace:n},this.rbdService.createNamespace(l,n).toPromise().then(()=>{this.notificationService.show(i.a.success,this.i18n("Created namespace '{{pool}}/{{namespace}}'",{pool:l,namespace:n})),this.modalRef.hide(),this.onSubmit.next()}).catch(()=>{this.namespaceForm.setErrors({cdSubmitButton:!0})})}}},"e/kN":function(l,n,e){"use strict";e.d(n,"a",(function(){return c}));var t=e("LvDl"),u=(e("my5R"),e("+fVR")),i=e("0+/T"),s=(e("sne2"),e("uIqm"),e("x38r")),a=e("oxzT"),o=e("vCyI"),r=e("kvvV"),d=(e("FFMq"),e("G1/K"),e("aexS"),e("VTlA"),e("kn/O"),e("Sofw"));class c extends u.a{constructor(l,n,e,t,u,i,s,r,d){super(),this.authStorageService=l,this.i18n=n,this.iscsiService=e,this.joinPipe=t,this.taskListService=u,this.notAvailablePipe=i,this.modalService=s,this.taskWrapper=r,this.actionLabels=d,this.available=void 0,this.selection=new o.a,this.targets=[],this.icons=a.a,this.builders={"iscsi/target/create":l=>({target_iqn:l.target_iqn})},this.permission=this.authStorageService.getPermissions().iscsi,this.tableActions=[{permission:"create",icon:a.a.add,routerLink:()=>"/block/iscsi/targets/create",name:this.actionLabels.CREATE},{permission:"update",icon:a.a.edit,routerLink:()=>"/block/iscsi/targets/edit/"+this.selection.first().target_iqn,name:this.actionLabels.EDIT,disable:()=>this.getEditDisableDesc()},{permission:"delete",icon:a.a.destroy,click:()=>this.deleteIscsiTargetModal(),name:this.actionLabels.DELETE,disable:()=>this.getDeleteDisableDesc()}]}ngOnInit(){this.columns=[{name:this.i18n("Target"),prop:"target_iqn",flexGrow:2,cellTransformation:s.a.executing},{name:this.i18n("Portals"),prop:"cdPortals",pipe:this.joinPipe,flexGrow:2},{name:this.i18n("Images"),prop:"cdImages",pipe:this.joinPipe,flexGrow:2},{name:this.i18n("# Sessions"),prop:"info.num_sessions",pipe:this.notAvailablePipe,flexGrow:1}],this.iscsiService.status().subscribe(l=>{this.available=l.available,l.available?(this.iscsiService.version().subscribe(l=>{this.cephIscsiConfigVersion=l.ceph_iscsi_config_version,this.taskListService.init(()=>this.iscsiService.listTargets(),l=>this.prepareResponse(l),l=>this.targets=l,()=>this.onFetchError(),this.taskFilter,this.itemFilter,this.builders)}),this.iscsiService.settings().subscribe(l=>{this.settings=l})):this.status=l.message})}ngOnDestroy(){this.summaryDataSubscription&&this.summaryDataSubscription.unsubscribe()}getEditDisableDesc(){const l=this.selection.first();return l&&l.cdExecuting?l.cdExecuting:l&&t.isUndefined(l.info)?this.i18n("Unavailable gateway(s)"):!l}getDeleteDisableDesc(){const l=this.selection.first();return l&&l.cdExecuting?l.cdExecuting:l&&t.isUndefined(l.info)?this.i18n("Unavailable gateway(s)"):l&&l.info&&l.info.num_sessions?this.i18n("Target has active sessions"):!l}prepareResponse(l){return l.forEach(l=>{l.cdPortals=l.portals.map(l=>`${l.host}:${l.ip}`),l.cdImages=l.disks.map(l=>`${l.pool}/${l.image}`)}),l}onFetchError(){this.table.reset()}itemFilter(l,n){return l.target_iqn===n.metadata.target_iqn}taskFilter(l){return["iscsi/target/create","iscsi/target/edit","iscsi/target/delete"].includes(l.name)}updateSelection(l){this.selection=l}deleteIscsiTargetModal(){const l=this.selection.first().target_iqn;this.modalRef=this.modalService.show(i.a,{initialState:{itemDescription:this.i18n("iSCSI target"),itemNames:[l],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new r.a("iscsi/target/delete",{target_iqn:l}),call:this.iscsiService.deleteTarget(l)})}})}configureDiscoveryAuth(){this.modalService.show(d.a,{})}}},eF8U:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("ANnk"),s=e("f/UV"),a=e("aexS"),o=e("+gVj"),r=e("SVse"),d=e("mXUL");e("jMP8"),e.d(n,"a",(function(){return c})),e.d(n,"b",(function(){return S}));var c=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function m(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function p(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,12,"select",[["class","form-control custom-select"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,1).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](8,0,null,null,2,"option",[],null,null,null,null,null)),t["ɵdid"](9,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{ngValue:[0,"ngValue"]},null),t["ɵdid"](10,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,m)),t["ɵdid"](12,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.setting),l(n,7,0,e.setting),l(n,9,0,null),l(n,10,0,null),l(n,12,0,e.limits.values)}),(function(l,n){var e=n.component;l(n,0,1,[t["ɵinlineInterpolate"](1,"",e.setting,""),t["ɵinlineInterpolate"](1,"",e.setting,""),t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass])}))}function h(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,8,"input",[["class","form-control"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,1)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,1)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,1)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,2).onChange(e.target.value)&&u),"input"===n&&(u=!1!==t["ɵnov"](l,2).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,2).onTouched()&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵdid"](2,16384,null,0,u.w,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l,n){return[l,n]}),[u.e,u.w]),t["ɵdid"](4,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](6,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](7,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](8,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0,e.setting),l(n,8,0,e.setting)}),(function(l,n){l(n,0,0,t["ɵnov"](n,6).ngClassUntouched,t["ɵnov"](n,6).ngClassTouched,t["ɵnov"](n,6).ngClassPristine,t["ɵnov"](n,6).ngClassDirty,t["ɵnov"](n,6).ngClassValid,t["ɵnov"](n,6).ngClassInvalid,t["ɵnov"](n,6).ngClassPending,t["ɵnov"](n,8).validClass,t["ɵnov"](n,8).invalidClass)}))}function g(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,1)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,1)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,1)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.setting),l(n,7,0,e.setting)}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function f(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,25,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),t["ɵeld"](2,0,null,null,11,"div",[["class","custom-control custom-radio custom-control-inline"]],null,null,null,null,null)),(l()(),t["ɵeld"](3,0,null,null,8,"input",[["class","custom-control-input"],["type","radio"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,4)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,4).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,4)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,4)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,5).onChange()&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,5).onTouched()&&u),u}),null,null)),t["ɵdid"](4,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵdid"](5,212992,null,0,u.x,[t.Renderer2,t.ElementRef,u.D,t.Injector],{formControlName:[0,"formControlName"],value:[1,"value"]},null),t["ɵprd"](1024,null,u.p,(function(l,n){return[l,n]}),[u.e,u.x]),t["ɵdid"](7,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](9,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](10,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](11,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](12,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](-1,null,["Yes"])),(l()(),t["ɵeld"](14,0,null,null,11,"div",[["class","custom-control custom-radio custom-control-inline"]],null,null,null,null,null)),(l()(),t["ɵeld"](15,0,null,null,8,"input",[["class","custom-control-input"],["type","radio"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,16)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,16).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,16)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,16)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,17).onChange()&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,17).onTouched()&&u),u}),null,null)),t["ɵdid"](16,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵdid"](17,212992,null,0,u.x,[t.Renderer2,t.ElementRef,u.D,t.Injector],{formControlName:[0,"formControlName"],value:[1,"value"]},null),t["ɵprd"](1024,null,u.p,(function(l,n){return[l,n]}),[u.e,u.x]),t["ɵdid"](19,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](21,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](22,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](23,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](24,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](-1,null,["No"]))],(function(l,n){var e=n.component;l(n,5,0,e.setting,!0),l(n,7,0,e.setting),l(n,11,0,e.setting),l(n,17,0,e.setting,!1),l(n,19,0,e.setting),l(n,23,0,e.setting)}),(function(l,n){var e=n.component;l(n,3,0,e.setting+"True",t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending,t["ɵnov"](n,11).validClass,t["ɵnov"](n,11).invalidClass),l(n,12,0,e.setting+"True"),l(n,15,0,e.setting+"False",t["ɵnov"](n,21).ngClassUntouched,t["ɵnov"](n,21).ngClassTouched,t["ɵnov"](n,21).ngClassPristine,t["ɵnov"](n,21).ngClassDirty,t["ɵnov"](n,21).ngClassValid,t["ɵnov"](n,21).ngClassInvalid,t["ɵnov"](n,21).ngClassPending,t["ɵnov"](n,23).validClass,t["ɵnov"](n,23).invalidClass),l(n,24,0,e.setting+"False")}))}function v(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,6,"span",[],null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,h)),t["ɵdid"](2,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,g)),t["ɵdid"](4,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,f)),t["ɵdid"](6,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,2,0,"int"===e.limits.type),l(n,4,0,"str"===e.limits.type),l(n,6,0,"bool"===e.limits.type)}),null)}function b(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](2,null,["Must be greater than or equal to ","."]))],null,(function(l,n){l(n,2,0,n.component.limits.min)}))}function C(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](2,null,["Must be less than or equal to ","."]))],null,(function(l,n){l(n,2,0,n.component.limits.max)}))}function S(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,17,"div",[["class","form-group"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,1).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,1).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,4).onSubmit()&&u),u}),d.b,d.a)),t["ɵdid"](1,540672,null,0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](3,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](4,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),t["ɵdid"](5,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](8,0,null,0,1,"label",[["class","col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),t["ɵted"](9,null,["",""])),(l()(),t["ɵand"](16777216,null,0,1,null,p)),t["ɵdid"](11,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,v)),t["ɵdid"](13,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,b)),t["ɵdid"](15,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,C)),t["ɵdid"](17,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.settingsForm),l(n,4,0,e.settingsForm),l(n,5,0),l(n,11,0,"enum"===e.limits.type),l(n,13,0,"enum"!==e.limits.type),l(n,15,0,e.settingsForm.showError(e.setting,e.formDir,"min")),l(n,17,0,e.settingsForm.showError(e.setting,e.formDir,"max"))}),(function(l,n){var e=n.component;l(n,0,0,t["ɵnov"](n,3).ngClassUntouched,t["ɵnov"](n,3).ngClassTouched,t["ɵnov"](n,3).ngClassPristine,t["ɵnov"](n,3).ngClassDirty,t["ɵnov"](n,3).ngClassValid,t["ɵnov"](n,3).ngClassInvalid,t["ɵnov"](n,3).ngClassPending,t["ɵnov"](n,5).hasErrors,t["ɵnov"](n,5).hasSuccess),l(n,8,0,t["ɵinlineInterpolate"](1,"",e.setting,"")),l(n,9,0,e.setting)}))}},gr3l:function(l,n,e){"use strict";e.d(n,"a",(function(){return h}));var t=e("s7LF"),u=e("LvDl"),i=e("cp0P"),s=(e("my5R"),e("F83c"),e("DNAf")),a=e("a96k"),o=(e("sne2"),e("oxzT")),r=e("QFaf"),d=e("1Ni5"),c=e("kvvV"),m=(e("kn/O"),e("Z4cD")),p=e("a6qe");class h{constructor(l,n,e,t,u,i,a,r){this.iscsiService=l,this.modalService=n,this.rbdService=e,this.router=t,this.route=u,this.i18n=i,this.taskWrapper=a,this.actionLabels=r,this.api_version=0,this.minimum_gateways=1,this.icons=o.a,this.isEdit=!1,this.portalsSelections=[],this.imagesInitiatorSelections=[],this.groupDiskSelections=[],this.groupMembersSelections=[],this.imagesSettings={},this.messages={portals:new s.a({noOptions:this.i18n("There are no portals available.")},this.i18n),images:new s.a({noOptions:this.i18n("There are no images available.")},this.i18n),initiatorImage:new s.a({noOptions:this.i18n("There are no images available. Please make sure you add an image to the target.")},this.i18n),groupInitiator:new s.a({noOptions:this.i18n("There are no initiators available. Please make sure you add an initiator to the target.")},this.i18n)},this.IQN_REGEX=/^iqn\.(19|20)\d\d-(0[1-9]|1[0-2])\.\D{2,3}(\.[A-Za-z0-9-]+)+(:[A-Za-z0-9-\.]+)*$/,this.USER_REGEX=/^[\w\.:@_-]{8,64}$/,this.PASSWORD_REGEX=/^[\w@\-_\/]{12,16}$/,this.resource=this.i18n("target")}ngOnInit(){const l=[this.iscsiService.listTargets(),this.rbdService.list(),this.iscsiService.portals(),this.iscsiService.settings(),this.iscsiService.version()];this.router.url.startsWith("/block/iscsi/targets/edit")&&(this.isEdit=!0,this.route.params.subscribe(n=>{this.target_iqn=decodeURIComponent(n.target_iqn),l.push(this.iscsiService.getTarget(this.target_iqn))})),this.action=this.isEdit?this.actionLabels.EDIT:this.actionLabels.CREATE,Object(i.a)(l).subscribe(l=>{const n=u(l[0]).filter(l=>l.target_iqn!==this.target_iqn).flatMap(l=>l.disks).map(l=>`${l.pool}/${l.image}`).value();"api_version"in l[3]&&(this.api_version=l[3].api_version),this.minimum_gateways=l[3].config.minimum_gateways,this.target_default_controls=l[3].target_default_controls,this.target_controls_limits=l[3].target_controls_limits,this.disk_default_controls=l[3].disk_default_controls,this.disk_controls_limits=l[3].disk_controls_limits,this.backstores=l[3].backstores,this.default_backstore=l[3].default_backstore,this.unsupported_rbd_features=l[3].unsupported_rbd_features,this.required_rbd_features=l[3].required_rbd_features,this.imagesAll=u(l[1]).flatMap(l=>l.value).filter(l=>!l.namespace&&-1===n.indexOf(`${l.pool_name}/${l.name}`)&&0!==this.getValidBackstores(l).length).value(),this.imagesSelections=this.imagesAll.map(l=>new a.a(!1,`${l.pool_name}/${l.name}`,""));const e=[];l[2].forEach(l=>{l.ip_addresses.forEach(n=>{e.push(new a.a(!1,l.name+":"+n,""))})}),this.portalsSelections=[...e],this.cephIscsiConfigVersion=l[4].ceph_iscsi_config_version,this.createForm(),l[5]&&this.resolveModel(l[5])})}createForm(){if(this.targetForm=new r.a({target_iqn:new t.i("iqn.2001-07.com.ceph:"+Date.now(),{validators:[t.B.required,t.B.pattern(this.IQN_REGEX)]}),target_controls:new t.i({}),portals:new t.i([],{validators:[d.a.custom("minGateways",l=>u.uniq(l.map(l=>l.split(":")[0])).length<Math.max(1,this.minimum_gateways))]}),disks:new t.i([],{validators:[d.a.custom("dupLunId",l=>{const n=this.getLunIds(l);return n.length!==u.uniq(n).length}),d.a.custom("dupWwn",l=>{const n=this.getWwns(l);return n.length!==u.uniq(n).length})]}),initiators:new t.f([]),groups:new t.f([]),acl_enabled:new t.i(!1)}),this.cephIscsiConfigVersion>10){const l=new r.a({user:new t.i(""),password:new t.i(""),mutual_user:new t.i(""),mutual_password:new t.i("")});this.setAuthValidator(l),this.targetForm.addControl("auth",l)}}resolveModel(l){this.targetForm.patchValue({target_iqn:l.target_iqn,target_controls:l.target_controls,acl_enabled:l.acl_enabled}),this.cephIscsiConfigVersion>10&&this.targetForm.patchValue({auth:l.auth});const n=[];u.forEach(l.portals,l=>{n.push(`${l.host}:${l.ip}`)}),this.targetForm.patchValue({portals:n});const e=[];u.forEach(l.disks,l=>{const n=`${l.pool}/${l.image}`;e.push(n),this.imagesSettings[n]={backstore:l.backstore},this.imagesSettings[n][l.backstore]=l.controls,"lun"in l&&(this.imagesSettings[n].lun=l.lun),"wwn"in l&&(this.imagesSettings[n].wwn=l.wwn),this.onImageSelection({option:{name:n,selected:!0}})}),this.targetForm.patchValue({disks:e}),u.forEach(l.clients,l=>{const n=this.addInitiator();l.luns=u.map(l.luns,l=>`${l.pool}/${l.image}`),n.patchValue(l)}),u.forEach(l.groups,l=>{const n=this.addGroup();l.disks=u.map(l.disks,l=>`${l.pool}/${l.image}`),n.patchValue(l),u.forEach(l.members,l=>{this.onGroupMemberSelection({option:new a.a(!0,l,"")})})})}hasAdvancedSettings(l){return Object.values(l).length>0}get portals(){return this.targetForm.get("portals")}onPortalSelection(){this.portals.setValue(this.portals.value)}removePortal(l,n){return this.portalsSelections.forEach(l=>{l.name===n&&(l.selected=!1)}),this.portals.value.splice(l,1),this.portals.setValue(this.portals.value),!1}get disks(){return this.targetForm.get("disks")}removeImage(l,n){return this.imagesSelections.forEach(l=>{l.name===n&&(l.selected=!1)}),this.disks.value.splice(l,1),this.removeImageRefs(n),this.targetForm.get("disks").updateValueAndValidity({emitEvent:!1}),!1}removeImageRefs(l){this.initiators.controls.forEach(n=>{const e=n.value.luns.filter(n=>n!==l);n.get("luns").setValue(e)}),this.groups.controls.forEach(n=>{const e=n.value.disks.filter(n=>n!==l);n.get("disks").setValue(e)}),u.forEach(this.imagesInitiatorSelections,(n,e)=>{this.imagesInitiatorSelections[e]=n.filter(n=>n.name!==l)}),u.forEach(this.groupDiskSelections,(n,e)=>{this.groupDiskSelections[e]=n.filter(n=>n.name!==l)})}getDefaultBackstore(l){let n=this.default_backstore;const e=this.getImageById(l);return this.validFeatures(e,this.default_backstore)||this.backstores.forEach(l=>{l!==this.default_backstore&&this.validFeatures(e,l)&&(n=l)}),n}isLunIdInUse(l,n){const e=this.disks.value.filter(l=>l!==n);return this.getLunIds(e).includes(l)}getLunIds(l){return u.map(l,l=>this.imagesSettings[l].lun)}nextLunId(l){const n=this.disks.value.filter(n=>n!==l),e=this.getLunIds(n);let t=0;for(;e.includes(t);)t++;return t}getWwns(l){return u.map(l,l=>this.imagesSettings[l].wwn).filter(l=>u.isString(l)&&""!==l)}onImageSelection(l){const n=l.option;if(n.selected){if(this.imagesSettings[n.name])this.isLunIdInUse(this.imagesSettings[n.name].lun,n.name)&&(this.imagesSettings[n.name].lun=this.nextLunId(n.name));else{const l=this.getDefaultBackstore(n.name);this.imagesSettings[n.name]={backstore:l,lun:this.nextLunId(n.name)},this.imagesSettings[n.name][l]={}}u.forEach(this.imagesInitiatorSelections,(l,e)=>{l.push(new a.a(!1,n.name,"")),this.imagesInitiatorSelections[e]=[...l]}),u.forEach(this.groupDiskSelections,(l,e)=>{l.push(new a.a(!1,n.name,"")),this.groupDiskSelections[e]=[...l]})}else this.removeImageRefs(n.name);this.targetForm.get("disks").updateValueAndValidity({emitEvent:!1})}get initiators(){return this.targetForm.get("initiators")}addInitiator(){const l=new r.a({client_iqn:new t.i("",{validators:[t.B.required,d.a.custom("notUnique",l=>{const n=this.initiators.controls.reduce((function(l,n){return l.concat(n.value.client_iqn)}),[]);return n.indexOf(l)!==n.lastIndexOf(l)}),t.B.pattern(this.IQN_REGEX)]}),auth:new r.a({user:new t.i(""),password:new t.i(""),mutual_user:new t.i(""),mutual_password:new t.i("")}),luns:new t.i([]),cdIsInGroup:new t.i(!1)});this.setAuthValidator(l),this.initiators.push(l),u.forEach(this.groupMembersSelections,(l,n)=>{l.push(new a.a(!1,"","")),this.groupMembersSelections[n]=[...l]});const n=u.map(this.targetForm.getValue("disks"),l=>new a.a(!1,l,""));return this.imagesInitiatorSelections.push(n),l}setAuthValidator(l){d.a.validateIf(l.get("user"),()=>l.getValue("password")||l.getValue("mutual_user")||l.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.USER_REGEX)],[l.get("password"),l.get("mutual_user"),l.get("mutual_password")]),d.a.validateIf(l.get("password"),()=>l.getValue("user")||l.getValue("mutual_user")||l.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.PASSWORD_REGEX)],[l.get("user"),l.get("mutual_user"),l.get("mutual_password")]),d.a.validateIf(l.get("mutual_user"),()=>l.getValue("mutual_password"),[t.B.required],[t.B.pattern(this.USER_REGEX)],[l.get("user"),l.get("password"),l.get("mutual_password")]),d.a.validateIf(l.get("mutual_password"),()=>l.getValue("mutual_user"),[t.B.required],[t.B.pattern(this.PASSWORD_REGEX)],[l.get("user"),l.get("password"),l.get("mutual_user")])}removeInitiator(l){const n=this.initiators.value[l];this.initiators.removeAt(l),u.forEach(this.groupMembersSelections,(n,e)=>{n.splice(l,1),this.groupMembersSelections[e]=[...n]}),this.groups.controls.forEach(l=>{const e=l.value.members.filter(l=>l!==n.client_iqn);l.get("members").setValue(e)}),this.imagesInitiatorSelections.splice(l,1)}updatedInitiatorSelector(){this.initiators.controls.forEach(l=>{l.get("client_iqn").updateValueAndValidity({emitEvent:!1})}),u.forEach(this.groupMembersSelections,(l,n)=>{u.forEach(l,(l,n)=>{const e=l.name;l.name=this.initiators.controls[n].value.client_iqn,this.groups.controls.forEach(n=>{const t=n.value.members,u=t.indexOf(e);-1!==u&&(t[u]=l.name),n.get("members").setValue(t)})}),this.groupMembersSelections[n]=[...this.groupMembersSelections[n]]})}removeInitiatorImage(l,n,e,t){const u=l.getValue("luns");return u.splice(n,1),l.patchValue({luns:u}),this.imagesInitiatorSelections[e].forEach(l=>{l.name===t&&(l.selected=!1)}),!1}get groups(){return this.targetForm.get("groups")}addGroup(){const l=new r.a({group_id:new t.i("",{validators:[t.B.required]}),members:new t.i([]),disks:new t.i([])});this.groups.push(l);const n=u.map(this.targetForm.getValue("disks"),l=>new a.a(!1,l,""));this.groupDiskSelections.push(n);const e=u.map(this.initiators.value,l=>new a.a(!1,l.client_iqn,"",!l.cdIsInGroup));return this.groupMembersSelections.push(e),l}removeGroup(l){this.groups.removeAt(l),this.groupDiskSelections.splice(l,1)}onGroupMemberSelection(l){const n=l.option;let e;this.initiators.controls.forEach((l,t)=>{l.value.client_iqn===n.name&&(l.patchValue({luns:[]}),l.get("cdIsInGroup").setValue(n.selected),e=t)}),u.forEach(this.groupMembersSelections,l=>{l[e].enabled=!n.selected})}removeGroupInitiator(l,n,e){const t=l.getValue("members")[n];l.getValue("members").splice(n,1),this.groupMembersSelections[e].forEach(l=>{l.name===t&&(l.selected=!1)}),this.groupMembersSelections[e]=[...this.groupMembersSelections[e]],this.onGroupMemberSelection({option:new a.a(!1,t,"")})}removeGroupDisk(l,n,e){const t=l.getValue("disks")[n];l.getValue("disks").splice(n,1),this.groupDiskSelections[e].forEach(l=>{l.name===t&&(l.selected=!1)}),this.groupDiskSelections[e]=[...this.groupDiskSelections[e]]}submit(){const l=u.cloneDeep(this.targetForm.value),n={target_iqn:this.targetForm.getValue("target_iqn"),target_controls:this.targetForm.getValue("target_controls"),acl_enabled:this.targetForm.getValue("acl_enabled"),portals:[],disks:[],clients:[],groups:[]};if(this.cephIscsiConfigVersion>10){const l=this.targetForm.get("auth");l.getValue("user")||l.get("user").setValue(""),l.getValue("password")||l.get("password").setValue(""),l.getValue("mutual_user")||l.get("mutual_user").setValue(""),l.getValue("mutual_password")||l.get("mutual_password").setValue("");const e=this.targetForm.getValue("acl_enabled");n.auth={user:e?"":l.getValue("user"),password:e?"":l.getValue("password"),mutual_user:e?"":l.getValue("mutual_user"),mutual_password:e?"":l.getValue("mutual_password")}}let e;l.disks.forEach(l=>{const e=l.split("/"),t=this.imagesSettings[l].backstore;n.disks.push({pool:e[0],image:e[1],backstore:t,controls:this.imagesSettings[l][t],lun:this.imagesSettings[l].lun,wwn:this.imagesSettings[l].wwn})}),l.portals.forEach(l=>{const e=l.indexOf(":");n.portals.push({host:l.substring(0,e),ip:l.substring(e+1)})}),n.acl_enabled&&(l.initiators.forEach(l=>{l.auth.user||(l.auth.user=""),l.auth.password||(l.auth.password=""),l.auth.mutual_user||(l.auth.mutual_user=""),l.auth.mutual_password||(l.auth.mutual_password=""),delete l.cdIsInGroup;const n=[];l.luns.forEach(l=>{const e=l.split("/");n.push({pool:e[0],image:e[1]})}),l.luns=n}),n.clients=l.initiators),n.acl_enabled&&(l.groups.forEach(l=>{const n=[];l.disks.forEach(l=>{const e=l.split("/");n.push({pool:e[0],image:e[1]})}),l.disks=n}),n.groups=l.groups),this.isEdit?(n.new_target_iqn=n.target_iqn,n.target_iqn=this.target_iqn,e=this.taskWrapper.wrapTaskAroundCall({task:new c.a("iscsi/target/edit",{target_iqn:n.target_iqn}),call:this.iscsiService.updateTarget(this.target_iqn,n)})):e=this.taskWrapper.wrapTaskAroundCall({task:new c.a("iscsi/target/create",{target_iqn:n.target_iqn}),call:this.iscsiService.createTarget(n)}),e.subscribe(void 0,()=>{this.targetForm.setErrors({cdSubmitButton:!0})},()=>this.router.navigate(["/block/iscsi/targets"]))}targetSettingsModal(){const l={target_controls:this.targetForm.get("target_controls"),target_default_controls:this.target_default_controls,target_controls_limits:this.target_controls_limits};this.modalRef=this.modalService.show(p.a,{initialState:l})}imageSettingsModal(l){const n={imagesSettings:this.imagesSettings,image:l,api_version:this.api_version,disk_default_controls:this.disk_default_controls,disk_controls_limits:this.disk_controls_limits,backstores:this.getValidBackstores(this.getImageById(l)),control:this.targetForm.get("disks")};this.modalRef=this.modalService.show(m.a,{initialState:n})}validFeatures(l,n){const e=l.features,t=this.required_rbd_features[n];return(e&t)===t&&0==(e&this.unsupported_rbd_features[n])}getImageById(l){return this.imagesAll.find(n=>l===`${n.pool_name}/${n.name}`)}getValidBackstores(l){return this.backstores.filter(n=>this.validFeatures(l,n))}}},jMP8:function(l,n,e){"use strict";e.d(n,"a",(function(){return u}));var t=e("s7LF");e("QFaf");class u{ngOnInit(){const l=[];"min"in this.limits&&l.push(t.B.min(this.limits.min)),"max"in this.limits&&l.push(t.B.max(this.limits.max)),this.settingsForm.get(this.setting).setValidators(l)}}},"k/xb":function(l,n,e){"use strict";e.d(n,"a",(function(){return u})),e.d(n,"b",(function(){return S})),e.d(n,"c",(function(){return i})),e.d(n,"d",(function(){return s})),e.d(n,"j",(function(){return a})),e.d(n,"k",(function(){return o})),e.d(n,"l",(function(){return r})),e.d(n,"m",(function(){return d})),e.d(n,"n",(function(){return c})),e.d(n,"o",(function(){return m})),e.d(n,"p",(function(){return p})),e.d(n,"q",(function(){return h})),e.d(n,"e",(function(){return g})),e.d(n,"f",(function(){return f})),e.d(n,"g",(function(){return v})),e.d(n,"h",(function(){return b})),e.d(n,"i",(function(){return C}));var t=e("sne2");e("Vhfg"),e("gr3l"),e("e/kN"),e("roDX"),e("cxJu"),e("MyVl"),e("5GyT"),e("Z5tW"),e("WkyA"),e("chpi");class u{}const i={breadcrumbs:"Images"},s={breadcrumbs:"Namespaces"},a={breadcrumbs:"Trash"},o={breadcrumbs:"Overall Performance"},r={breadcrumbs:t.a.CREATE},d={breadcrumbs:t.a.EDIT},c={breadcrumbs:t.a.CLONE},m={breadcrumbs:t.a.COPY},p={breadcrumbs:t.a.COPY},h={breadcrumbs:"Mirroring"},g={breadcrumbs:"iSCSI"},f={breadcrumbs:"Overview"},v={breadcrumbs:"Targets"},b={breadcrumbs:t.a.CREATE},C={breadcrumbs:t.a.EDIT};class S{}},kccj:function(l,n,e){"use strict";e.d(n,"a",(function(){return t}));class t{}},l7Jr:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("mXUL"),i=e("+gVj"),s=e("eF8U"),a=e("jMP8"),o=e("EEJc"),r=e("ajRT"),d=e("s7LF"),c=e("SVse"),m=e("gp3X"),p=e("sb0X"),h=e("KVJa"),g=e("Z21x"),f=e("sne2"),v=e("a6qe"),b=e("LqlI"),C=e("my5R");e.d(n,"a",(function(){return y}));var S=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function R(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,6,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](1,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](4,0,null,0,2,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,1,"cd-iscsi-setting",[],null,null,null,s.b,s.a)),t["ɵdid"](6,114688,null,0,a.a,[],{settingsForm:[0,"settingsForm"],formDir:[1,"formDir"],setting:[2,"setting"],limits:[3,"limits"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,6,0,e.settingsForm,t["ɵnov"](n.parent,7),n.context.$implicit.key,e.getTargetControlLimits(n.context.$implicit.key))}),(function(l,n){l(n,0,0,t["ɵnov"](n,1).hasErrors,t["ɵnov"](n,1).hasSuccess)}))}function _(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,23,"cd-modal",[],null,null,null,o.c,o.b)),t["ɵdid"](1,49152,null,0,r.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Advanced Settings"])),(l()(),t["ɵeld"](4,0,null,1,19,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,18,"form",[["name","settingsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,d.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,d.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,d.d,null,[d.l]),t["ɵdid"](9,16384,null,0,d.s,[[4,d.d]],null,null),t["ɵdid"](10,16384,null,0,i.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,5,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,1,"p",[["class","alert-warning"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Changing these parameters from their default values is usually not necessary."])),(l()(),t["ɵand"](16777216,null,null,2,null,R)),t["ɵdid"](15,278528,null,0,c.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),t["ɵpid"](0,c.KeyValuePipe,[t.KeyValueDiffers]),(l()(),t["ɵeld"](17,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](18,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](19,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.save()&&t),t}),m.b,m.a)),t["ɵdid"](20,114688,null,0,p.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Confirm"])),(l()(),t["ɵeld"](22,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,h.b,h.a)),t["ɵdid"](23,49152,null,0,g.a,[c.Location,f.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.settingsForm),l(n,10,0,e.settingsForm),l(n,15,0,t["ɵunv"](n,15,0,t["ɵnov"](n,16).transform(e.settingsForm.controls))),l(n,20,0,e.settingsForm),l(n,23,0,"Cancel",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending)}))}function w(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-iscsi-target-iqn-settings-modal",[],null,null,null,_,S)),t["ɵdid"](1,114688,null,0,v.a,[b.a,C.a],null,null)],(function(l,n){l(n,1,0)}),null)}var y=t["ɵccf"]("cd-iscsi-target-iqn-settings-modal",v.a,w,{},{},[])},lArG:function(l,n,e){"use strict";e.d(n,"a",(function(){return t}));class t{}},"lz+O":function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("ANnk"),s=e("f/UV"),a=e("aexS"),o=e("+gVj"),r=e("SVse"),d=e("EEJc"),c=e("ajRT"),m=e("mXUL"),p=e("gp3X"),h=e("sb0X"),g=e("KVJa"),f=e("Z21x"),v=e("sne2"),b=e("WxU5"),C=e("F83c"),S=e("LqlI"),R=e("2EZI"),_=e("Ekvf"),w=e("kn/O");e.d(n,"a",(function(){return V}));var y=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","poolName"],["placeholder","Pool name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,1)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,1)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,1)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.e,[t.Renderer2,t.ElementRef,[2,u.b]],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.e]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"poolName"),l(n,7,0,"poolName")}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","poolName"],["id","poolName"],["name","poolName"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,1).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,1).onTouched()&&u),u}),null,null)),t["ɵdid"](1,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](3,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](5,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](6,4210688,null,0,i.a,[[2,s.a],a.a,t.ElementRef],null,null),t["ɵdid"](7,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](8,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),t["ɵdid"](9,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](10,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](-1,null,["All"])),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](13,278528,null,0,r.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,3,0,"poolName"),l(n,7,0,"poolName"),l(n,9,0,""),l(n,10,0,""),l(n,13,0,e.pools)}),(function(l,n){l(n,0,0,t["ɵnov"](n,5).ngClassUntouched,t["ɵnov"](n,5).ngClassTouched,t["ɵnov"](n,5).ngClassPristine,t["ɵnov"](n,5).ngClassDirty,t["ɵnov"](n,5).ngClassValid,t["ɵnov"](n,5).ngClassInvalid,t["ɵnov"](n,5).ngClassPending,t["ɵnov"](n,7).validClass,t["ɵnov"](n,7).invalidClass)}))}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,41,"cd-modal",[],null,null,null,d.c,d.b)),t["ɵdid"](1,49152,null,0,c.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Purge Trash"])),(l()(),t["ɵeld"](4,0,null,1,37,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,36,"form",[["class","form"],["name","purgeForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,u.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](9,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](10,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,23,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,12,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To purge, select one or"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](16,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["All"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](19,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["pools and click"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](22,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Purge Trash"])),(l()(),t["ɵted"](-1,null,[".  "])),(l()(),t["ɵeld"](25,0,null,null,9,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,m.b,m.a)),t["ɵdid"](26,1163264,null,2,o.c,[t.ElementRef,o.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](29,0,null,0,1,"label",[["class","col-form-label mx-auto"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Pool:"])),(l()(),t["ɵand"](16777216,null,0,1,null,k)),t["ɵdid"](32,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,E)),t["ɵdid"](34,16384,null,0,r.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](35,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](36,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](37,0,null,null,2,"cd-submit-button",[["id","purgeFormButton"]],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.purge()&&t),t}),p.b,p.a)),t["ɵdid"](38,114688,null,0,h.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Purge Trash"])),(l()(),t["ɵeld"](40,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,g.b,g.a)),t["ɵdid"](41,49152,null,0,f.a,[r.Location,v.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.purgeForm),l(n,10,0,e.purgeForm),l(n,26,0),l(n,32,0,!e.poolPermission.read),l(n,34,0,e.poolPermission.read),l(n,38,0,e.purgeForm),l(n,41,0,"Cancel",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,25,0,t["ɵnov"](n,26).hasErrors,t["ɵnov"](n,26).hasSuccess)}))}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-rbd-trash-purge-modal",[],null,null,null,N,y)),t["ɵdid"](1,114688,null,0,b.a,[a.a,C.a,S.a,R.a,_.a,w.a],null,null)],(function(l,n){l(n,1,0)}),null)}var V=t["ɵccf"]("cd-rbd-trash-purge-modal",b.a,F,{},{},[])},my5R:function(l,n,e){"use strict";e.d(n,"a",(function(){return o}));var t=e("mrSG"),u=e("IheW"),i=e("xTzq"),s=e("8Y7J"),a=e("pL04");let o=(()=>{let l=class{constructor(l){this.http=l}listTargets(){return this.http.get("api/iscsi/target")}getTarget(l){return this.http.get("api/iscsi/target/"+l)}updateTarget(l,n){return this.http.put("api/iscsi/target/"+l,n,{observe:"response"})}status(){return this.http.get("ui-api/iscsi/status")}settings(){return this.http.get("ui-api/iscsi/settings")}version(){return this.http.get("ui-api/iscsi/version")}portals(){return this.http.get("ui-api/iscsi/portals")}createTarget(l){return this.http.post("api/iscsi/target",l,{observe:"response"})}deleteTarget(l){return this.http.delete("api/iscsi/target/"+l,{observe:"response"})}getDiscovery(){return this.http.get("api/iscsi/discoveryauth")}updateDiscovery(l){return this.http.put("api/iscsi/discoveryauth",l)}overview(){return this.http.get("ui-api/iscsi/overview")}};return l.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new l(s["ɵɵinject"](u.c))},token:l,providedIn:a.a}),l=t.__decorate([i.a,t.__metadata("design:paramtypes",[u.c])],l),l})()},nP0W:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("s7LF"),i=e("EEJc"),s=e("ajRT"),a=e("+gVj"),o=e("mXUL"),r=e("ANnk"),d=e("f/UV"),c=e("aexS"),m=e("SVse"),p=e("gp3X"),h=e("sb0X"),g=e("KVJa"),f=e("Z21x"),v=e("sne2"),b=e("aa9H"),C=e("LqlI"),S=e("GiVz"),R=e("XED3"),_=e("kn/O");e.d(n,"a",(function(){return N}));var w=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,u.v,[t.ElementRef,t.Renderer2,[2,u.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,u.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.id),l(n,2,0,n.context.$implicit.id)}),(function(l,n){l(n,3,0,n.context.$implicit.name)}))}function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Peer clusters must be removed prior to disabling mirror."]))],null,null)}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,46,"cd-modal",[],null,null,null,i.c,i.b)),t["ɵdid"](1,49152,null,0,s.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Edit pool mirror mode"])),(l()(),t["ɵeld"](4,0,null,1,42,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,41,"form",[["class","form"],["name","editModeForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,u.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,u.d,null,[u.l]),t["ɵdid"](9,16384,null,0,u.s,[[4,u.d]],null,null),t["ɵdid"](10,16384,null,0,a.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,28,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,8,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,7,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["To edit the mirror mode for pool  "])),(l()(),t["ɵeld"](15,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](16,null,["",""])),(l()(),t["ɵted"](-1,null,[", select a new mode from the list and click  "])),(l()(),t["ɵeld"](18,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Update"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](21,0,null,null,18,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,o.b,o.a)),t["ɵdid"](22,1163264,null,2,a.c,[t.ElementRef,a.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](25,0,null,0,2,"label",[["class","col-form-label"],["for","mirrorMode"]],null,null,null,null,null)),(l()(),t["ɵeld"](26,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Mode"])),(l()(),t["ɵeld"](28,0,null,0,9,"select",[["class","form-control custom-select"],["formControlName","mirrorMode"],["id","mirrorMode"],["name","mirrorMode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,30).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,30).onTouched()&&u),u}),null,null)),t["ɵdid"](29,4210688,null,0,r.a,[[2,d.a],c.a,t.ElementRef],null,null),t["ɵdid"](30,16384,null,0,u.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,u.p,(function(l){return[l]}),[u.A]),t["ɵdid"](32,671744,[[1,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,u.q,null,[u.j]),t["ɵdid"](34,16384,null,0,u.r,[[4,u.q]],null,null),t["ɵdid"](35,16384,null,0,a.h,[[3,u.d],a.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,y)),t["ɵdid"](37,278528,null,0,m.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵand"](16777216,null,0,1,null,k)),t["ɵdid"](39,16384,null,0,m.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](40,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](41,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](42,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.update()&&t),t}),p.b,p.a)),t["ɵdid"](43,114688,null,0,h.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Update"])),(l()(),t["ɵeld"](45,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,g.b,g.a)),t["ɵdid"](46,49152,null,0,f.a,[m.Location,v.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.editModeForm),l(n,10,0,e.editModeForm),l(n,22,0),l(n,32,0,"mirrorMode"),l(n,35,0,"mirrorMode"),l(n,37,0,e.mirrorModes),l(n,39,0,e.editModeForm.showError("mirrorMode",t["ɵnov"](n,7),"cannotDisable")),l(n,43,0,e.editModeForm),l(n,46,0,"Cancel",e.modalRef.hide)}),(function(l,n){var e=n.component;l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,16,0,e.poolName),l(n,21,0,t["ɵnov"](n,22).hasErrors,t["ɵnov"](n,22).hasSuccess),l(n,28,0,t["ɵnov"](n,34).ngClassUntouched,t["ɵnov"](n,34).ngClassTouched,t["ɵnov"](n,34).ngClassPristine,t["ɵnov"](n,34).ngClassDirty,t["ɵnov"](n,34).ngClassValid,t["ɵnov"](n,34).ngClassInvalid,t["ɵnov"](n,34).ngClassPending,t["ɵnov"](n,35).validClass,t["ɵnov"](n,35).invalidClass)}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-pool-edit-mode-modal",[],null,null,null,I,w)),t["ɵdid"](1,245760,null,0,b.a,[C.a,S.a,R.a,_.a],null,null)],(function(l,n){l(n,1,0)}),null)}var N=t["ɵccf"]("cd-pool-edit-mode-modal",b.a,E,{},{},[])},nhAp:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("mXUL"),i=e("+gVj"),s=e("s7LF"),a=e("ANnk"),o=e("f/UV"),r=e("aexS"),d=e("SVse"),c=e("eF8U"),m=e("jMP8"),p=e("uYzU"),h=e("EEJc"),g=e("ajRT"),f=e("gp3X"),v=e("sb0X"),b=e("KVJa"),C=e("Z21x"),S=e("sne2"),R=e("Z4cD"),_=e("LqlI"),w=e("my5R");e.d(n,"a",(function(){return x}));var y=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["This field is required."]))],null,null)}function I(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,35,"span",[],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Identifier"])),(l()(),t["ɵeld"](3,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](4,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](7,0,null,0,13,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](8,0,null,null,1,"label",[["class","col-form-label required"],["for","lun"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["lun"])),(l()(),t["ɵeld"](10,0,null,null,8,"input",[["class","form-control"],["formControlName","lun"],["id","lun"],["name","lun"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,11)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,11).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,11)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,11)._compositionEnd(e.target.value)&&u),"change"===n&&(u=!1!==t["ɵnov"](l,12).onChange(e.target.value)&&u),"input"===n&&(u=!1!==t["ɵnov"](l,12).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,12).onTouched()&&u),u}),null,null)),t["ɵdid"](11,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵdid"](12,16384,null,0,s.w,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,s.p,(function(l,n){return[l,n]}),[s.e,s.w]),t["ɵdid"](14,671744,[[1,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](16,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](17,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](18,16384,null,0,i.h,[[3,s.d],i.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,k)),t["ɵdid"](20,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](21,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](22,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,3,{FormControlNames:1}),t["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),t["ɵeld"](25,0,null,0,10,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](26,0,null,null,1,"label",[["class","col-form-label"],["for","wwn"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["wwn"])),(l()(),t["ɵeld"](28,0,null,null,7,"input",[["class","form-control"],["formControlName","wwn"],["id","wwn"],["name","wwn"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,29)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,29).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,29)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,29)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](29,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵprd"](1024,null,s.p,(function(l){return[l]}),[s.e]),t["ɵdid"](31,671744,[[3,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](33,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](34,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](35,16384,null,0,i.h,[[3,s.d],i.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){var e=n.component;l(n,4,0),l(n,14,0,"lun"),l(n,18,0,"lun"),l(n,20,0,e.settingsForm.showError("lun",t["ɵnov"](n.parent,12),"required")),l(n,22,0),l(n,31,0,"wwn"),l(n,35,0,"wwn")}),(function(l,n){l(n,3,0,t["ɵnov"](n,4).hasErrors,t["ɵnov"](n,4).hasSuccess),l(n,10,0,t["ɵnov"](n,16).ngClassUntouched,t["ɵnov"](n,16).ngClassTouched,t["ɵnov"](n,16).ngClassPristine,t["ɵnov"](n,16).ngClassDirty,t["ɵnov"](n,16).ngClassValid,t["ɵnov"](n,16).ngClassInvalid,t["ɵnov"](n,16).ngClassPending,t["ɵnov"](n,18).validClass,t["ɵnov"](n,18).invalidClass),l(n,21,0,t["ɵnov"](n,22).hasErrors,t["ɵnov"](n,22).hasSuccess),l(n,28,0,t["ɵnov"](n,33).ngClassUntouched,t["ɵnov"](n,33).ngClassTouched,t["ɵnov"](n,33).ngClassPristine,t["ɵnov"](n,33).ngClassDirty,t["ɵnov"](n,33).ngClassValid,t["ɵnov"](n,33).ngClassInvalid,t["ɵnov"](n,33).ngClassPending,t["ɵnov"](n,35).validClass,t["ɵnov"](n,35).invalidClass)}))}function E(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"option",[],null,null,null,null,null)),t["ɵdid"](1,147456,null,0,s.v,[t.ElementRef,t.Renderer2,[2,s.A]],{value:[0,"value"]},null),t["ɵdid"](2,147456,null,0,s.F,[t.ElementRef,t.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),t["ɵted"](3,null,["",""])),t["ɵppd"](4,1)],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){var e=t["ɵunv"](n,3,0,l(n,4,0,t["ɵnov"](n.parent,0),n.context.$implicit));l(n,3,0,e)}))}function N(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,6,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](1,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,7,{FormControlNames:1}),t["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),t["ɵeld"](4,0,null,0,2,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,1,"cd-iscsi-setting",[],null,null,null,c.b,c.a)),t["ɵdid"](6,114688,null,0,m.a,[],{settingsForm:[0,"settingsForm"],formDir:[1,"formDir"],setting:[2,"setting"],limits:[3,"limits"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,6,0,e.settingsForm,t["ɵnov"](n.parent.parent.parent,12),n.context.$implicit.key,e.getDiskControlLimits(n.parent.parent.context.$implicit,n.context.$implicit.key))}),(function(l,n){l(n,0,0,t["ɵnov"](n,1).hasErrors,t["ɵnov"](n,1).hasSuccess)}))}function F(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,2,null,N)),t["ɵdid"](2,278528,null,0,d.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),t["ɵpid"](0,d.KeyValuePipe,[t.KeyValueDiffers]),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){var e=n.component;l(n,2,0,t["ɵunv"](n,2,0,t["ɵnov"](n,3).transform(e.disk_default_controls[n.parent.context.$implicit])))}),null)}function V(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(l()(),t["ɵand"](16777216,null,null,1,null,F)),t["ɵdid"](2,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){l(n,2,0,n.component.settingsForm.value.backstore===n.context.$implicit)}),null)}function T(l){return t["ɵvid"](0,[t["ɵpid"](0,p.a,[]),(l()(),t["ɵeld"](1,0,null,null,47,"cd-modal",[],null,null,null,h.c,h.b)),t["ɵdid"](2,49152,null,0,g.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](3,0,null,0,5,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](4,0,null,null,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Configure"])),(l()(),t["ɵted"](-1,null,["  "])),(l()(),t["ɵeld"](7,0,null,null,1,"small",[],null,null,null,null,null)),(l()(),t["ɵted"](8,null,["",""])),(l()(),t["ɵeld"](9,0,null,1,39,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](10,0,null,null,38,"form",[["class","form"],["name","settingsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,12).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,12).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,15).onSubmit()&&u),u}),null,null)),t["ɵdid"](11,16384,null,0,s.G,[],null,null),t["ɵdid"](12,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,s.d,null,[s.l]),t["ɵdid"](14,16384,null,0,s.s,[[4,s.d]],null,null),t["ɵdid"](15,16384,null,0,i.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](16,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](17,0,null,null,1,"p",[["class","alert-warning"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Changing these parameters from their default values is usually not necessary."])),(l()(),t["ɵand"](16777216,null,null,1,null,I)),t["ɵdid"](20,16384,null,0,d.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵeld"](21,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Settings"])),(l()(),t["ɵeld"](23,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,u.b,u.a)),t["ɵdid"](24,1163264,null,2,i.c,[t.ElementRef,i.g],null,null),t["ɵqud"](603979776,5,{FormControlNames:1}),t["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),t["ɵeld"](27,0,null,0,12,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),t["ɵeld"](28,0,null,null,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Backstore"])),(l()(),t["ɵeld"](30,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","backstore"],["id","backstore"],["name","backstore"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var u=!0;return"change"===n&&(u=!1!==t["ɵnov"](l,31).onChange(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,31).onTouched()&&u),u}),null,null)),t["ɵdid"](31,16384,null,0,s.A,[t.Renderer2,t.ElementRef],null,null),t["ɵprd"](1024,null,s.p,(function(l){return[l]}),[s.A]),t["ɵdid"](33,671744,[[5,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](35,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](36,4210688,null,0,a.a,[[2,o.a],r.a,t.ElementRef],null,null),t["ɵdid"](37,16384,null,0,i.h,[[3,s.d],i.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,E)),t["ɵdid"](39,278528,null,0,d.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,V)),t["ɵdid"](41,278528,null,0,d.NgForOf,[t.ViewContainerRef,t.TemplateRef,t.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),t["ɵeld"](42,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](43,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](44,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.save()&&t),t}),f.b,f.a)),t["ɵdid"](45,114688,null,0,v.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Confirm"])),(l()(),t["ɵeld"](47,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,b.b,b.a)),t["ɵdid"](48,49152,null,0,C.a,[d.Location,S.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,2,0,e.modalRef),l(n,12,0,e.settingsForm),l(n,15,0,e.settingsForm),l(n,20,0,e.api_version>=1),l(n,24,0),l(n,33,0,"backstore"),l(n,37,0,"backstore"),l(n,39,0,e.backstores),l(n,41,0,e.backstores),l(n,45,0,e.settingsForm),l(n,48,0,"Cancel",e.modalRef.hide)}),(function(l,n){l(n,8,0,n.component.image),l(n,10,0,t["ɵnov"](n,14).ngClassUntouched,t["ɵnov"](n,14).ngClassTouched,t["ɵnov"](n,14).ngClassPristine,t["ɵnov"](n,14).ngClassDirty,t["ɵnov"](n,14).ngClassValid,t["ɵnov"](n,14).ngClassInvalid,t["ɵnov"](n,14).ngClassPending),l(n,23,0,t["ɵnov"](n,24).hasErrors,t["ɵnov"](n,24).hasSuccess),l(n,30,0,t["ɵnov"](n,35).ngClassUntouched,t["ɵnov"](n,35).ngClassTouched,t["ɵnov"](n,35).ngClassPristine,t["ɵnov"](n,35).ngClassDirty,t["ɵnov"](n,35).ngClassValid,t["ɵnov"](n,35).ngClassInvalid,t["ɵnov"](n,35).ngClassPending,t["ɵnov"](n,37).validClass,t["ɵnov"](n,37).invalidClass)}))}function D(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-iscsi-target-image-settings-modal",[],null,null,null,T,y)),t["ɵdid"](1,114688,null,0,R.a,[_.a,w.a],null,null)],(function(l,n){l(n,1,0)}),null)}var x=t["ɵccf"]("cd-iscsi-target-image-settings-modal",R.a,D,{},{},[])},puGn:function(l,n,e){"use strict";e.d(n,"a",(function(){return s}));var t=e("s7LF"),u=(e("XED3"),e("QFaf")),i=e("kvvV");e("kn/O");class s{constructor(l,n,e){this.modalRef=l,this.rbdMirroringService=n,this.taskWrapper=e,this.createForm()}createForm(){this.editSiteNameForm=new u.a({siteName:new t.i("",{})})}ngOnInit(){this.editSiteNameForm.get("siteName").setValue(this.siteName),this.rbdMirroringService.getSiteName().subscribe(l=>{this.editSiteNameForm.get("siteName").setValue(l.site_name)})}update(){this.taskWrapper.wrapTaskAroundCall({task:new i.a("rbd/mirroring/site_name/edit",{}),call:this.rbdMirroringService.setSiteName(this.editSiteNameForm.getValue("siteName"))}).subscribe(void 0,()=>this.editSiteNameForm.setErrors({cdSubmitButton:!0}),()=>{this.rbdMirroringService.refresh(),this.modalRef.hide()})}}},rFfW:function(l,n,e){"use strict";e.d(n,"a",(function(){return o}));var t=e("8Y7J"),u=e("s7LF"),i=e("oxzT"),s=e("QFaf"),a=e("PhyI");e("aXbf"),e("o8EM");class o{constructor(l,n){this.formatterService=l,this.rbdConfigurationService=n,this.changes=new t.EventEmitter,this.icons=i.a,this.ngDataReady=new t.EventEmitter,this.configurationType=a.b,this.sectionVisibility={}}ngOnInit(){const l=this.createConfigurationFormGroup();this.form.addControl("configuration",l),l.valueChanges.subscribe(()=>{this.changes.emit(this.getDirtyValues.bind(this))}),this.initializeData&&this.initializeData.subscribe(l=>{this.initialData=l.initialData;const n=l.sourceType;this.rbdConfigurationService.getWritableOptionFields().forEach(e=>{const t=l.initialData.filter(l=>l.name===e.name).pop();t&&t.source===n&&this.form.get("configuration."+e.name).setValue(t.value)}),this.ngDataReady.emit()}),this.rbdConfigurationService.getWritableSections().forEach(l=>this.sectionVisibility[l.class]=!1)}getDirtyValues(l=!1,n){if(l&&!n)throw new Error("ProgrammingError: If local values shall be included, a proper localFieldType argument has to be provided, too");const e={};return this.rbdConfigurationService.getWritableOptionFields().forEach(t=>{const u=this.form.get("configuration").get(t.name);this.initialData&&this.initialData[t.name]===u.value||(u.dirty||l&&u.source===n)&&(e[t.name]=null===u.value?u.value:t.type===a.b.bps?this.formatterService.toBytes(u.value):t.type===a.b.milliseconds?this.formatterService.toMilliseconds(u.value):t.type===a.b.iops?this.formatterService.toIops(u.value):u.value)}),e}createConfigurationFormGroup(){const l=new s.a({});return this.rbdConfigurationService.getWritableOptionFields().forEach(n=>{let e;if(n.type!==a.b.milliseconds&&n.type!==a.b.iops&&n.type!==a.b.bps)throw new Error(`Type ${n.type} is unknown, you may need to add it to RbdConfiguration class`);e=new u.i(0,u.B.min(0)),l.addControl(n.name,e)}),l}reset(l){const n=this.form.get("configuration").get(l);n.disabled?(n.setValue(n.previousValue||0),n.enable(),n.previousValue||n.markAsPristine()):(n.previousValue=n.value,n.setValue(null),n.markAsDirty(),n.disable())}isDisabled(l){return this.form.get("configuration").get(l).disabled}toggleSectionVisibility(l){this.sectionVisibility[l]=!this.sectionVisibility[l]}}},roDX:function(l,n,e){"use strict";e.d(n,"a",(function(){return u})),e("my5R");var t=e("x38r");e("o4+5"),e("uYzU");class u{constructor(l,n,e,t){this.iscsiService=l,this.dimlessPipe=n,this.iscsiBackstorePipe=e,this.i18n=t,this.gateways=[],this.images=[]}ngOnInit(){this.gatewaysColumns=[{name:this.i18n("Name"),prop:"name"},{name:this.i18n("State"),prop:"state",flexGrow:1,cellTransformation:t.a.badge,customTemplateConfig:{map:{up:{class:"badge-success"},down:{class:"badge-danger"}}}},{name:this.i18n("# Targets"),prop:"num_targets"},{name:this.i18n("# Sessions"),prop:"num_sessions"}],this.imagesColumns=[{name:this.i18n("Pool"),prop:"pool"},{name:this.i18n("Image"),prop:"image"},{name:this.i18n("Backstore"),prop:"backstore",pipe:this.iscsiBackstorePipe},{name:this.i18n("Read Bytes"),prop:"stats_history.rd_bytes",cellTemplate:this.iscsiSparklineTpl},{name:this.i18n("Write Bytes"),prop:"stats_history.wr_bytes",cellTemplate:this.iscsiSparklineTpl},{name:this.i18n("Read Ops"),prop:"stats.rd",pipe:this.dimlessPipe,cellTemplate:this.iscsiPerSecondTpl},{name:this.i18n("Write Ops"),prop:"stats.wr",pipe:this.dimlessPipe,cellTemplate:this.iscsiPerSecondTpl},{name:this.i18n("A/O Since"),prop:"optimized_since",cellTemplate:this.iscsiRelativeDateTpl}]}refresh(){this.iscsiService.overview().subscribe(l=>{this.gateways=l.gateways,this.images=l.images,this.images.map(l=>(l.stats_history&&(l.stats_history.rd_bytes=l.stats_history.rd_bytes.map(l=>l[1]),l.stats_history.wr_bytes=l.stats_history.wr_bytes.map(l=>l[1])),l.cdIsBinary=!0,l))})}}},u0yg:function(l,n,e){"use strict";e.d(n,"b",(function(){return t})),e.d(n,"a",(function(){return u}));class t{}var u=function(l){return l[l.V1=1]="V1",l[l.V2=2]="V2",l}({})},u2XS:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("SVse"),i=e("25BL"),s=e("uIqm"),a=e("LOMR"),o=e("MP8s"),r=e("fxL3"),d=e("gk6K"),c=e("3ris"),m=e("GiVz"),p=e("uYzU"),h=e("iExv");e.d(n,"b",(function(){return g})),e.d(n,"c",(function(){return R})),e.d(n,"a",(function(){return w}));var g=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function f(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](2,null,["",""])),(l()(),t["ɵted"](-1,null,["   "])),(l()(),t["ɵeld"](4,0,null,null,6,"span",[["class","badge"]],null,null,null,null,null)),t["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[t.IterableDiffers,t.KeyValueDiffers,t.ElementRef,t.Renderer2]),t["ɵdid"](6,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),t["ɵpad"](7,1),t["ɵpad"](8,1),t["ɵpod"](9,{"badge-success":0,"badge-danger":1}),(l()(),t["ɵted"](10,null,[" "," "]))],(function(l,n){var e=l(n,9,0,l(n,7,0,"logged_in").includes(n.context.$implicit.data.status),l(n,8,0,"logged_out").includes(n.context.$implicit.data.status));l(n,6,0,"badge",e)}),(function(l,n){l(n,0,0,n.context.$implicit.data.cdIcon),l(n,2,0,n.context.$implicit.data.name),l(n,10,0,n.context.$implicit.data.status)}))}function v(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,4,"div",[["class","col-6 metadata"]],null,null,null,null,null)),(l()(),t["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](2,null,["",""])),(l()(),t["ɵeld"](3,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,i.b,i.a)),t["ɵdid"](4,2867200,[[2,4],["detailTable",4]],0,s.a,[t.NgZone,t.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],limit:[3,"limit"]},null)],(function(l,n){var e=n.component;l(n,4,0,e.data,e.columns,"flex",0)}),(function(l,n){l(n,2,0,n.component.title)}))}function b(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""]))],null,(function(l,n){l(n,1,0,n.parent.context.value)}))}function C(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),t["ɵted"](1,null,["",""]))],null,(function(l,n){l(n,1,0,n.parent.context.value)}))}function S(l){return t["ɵvid"](0,[(l()(),t["ɵand"](16777216,null,null,1,null,b)),t["ɵdid"](1,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](16777216,null,null,1,null,C)),t["ɵdid"](3,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,void 0===n.context.row.default||n.context.row.default===n.context.row.current),l(n,3,0,void 0!==n.context.row.default&&n.context.row.default!==n.context.row.current)}),null)}function R(l){return t["ɵvid"](0,[t["ɵqud"](402653184,1,{highlightTpl:0}),t["ɵqud"](671088640,2,{content:0}),t["ɵqud"](671088640,3,{tree:0}),(l()(),t["ɵeld"](3,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(l()(),t["ɵeld"](4,0,null,null,10,"div",[["class","col-6"]],null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["iSCSI Topology"])),(l()(),t["ɵeld"](7,0,null,null,7,"tree-root",[],null,[[null,"updateData"],["body","keydown"],["body","mousedown"]],(function(l,n,e){var u=!0,i=l.component;return"body:keydown"===n&&(u=!1!==t["ɵnov"](l,9).onKeydown(e)&&u),"body:mousedown"===n&&(u=!1!==t["ɵnov"](l,9).onMousedown(e)&&u),"updateData"===n&&(u=!1!==i.onUpdateData()&&u),u}),a.b,a.a)),t["ɵprd"](131584,null,o.a,o.a,[]),t["ɵdid"](9,573440,[[3,4],["tree",4]],4,r.a,[o.a,d.a],{nodes:[0,"nodes"],options:[1,"options"]},{updateData:"updateData"}),t["ɵqud"](603979776,4,{loadingTemplate:0}),t["ɵqud"](603979776,5,{treeNodeTemplate:0}),t["ɵqud"](603979776,6,{treeNodeWrapperTemplate:0}),t["ɵqud"](603979776,7,{treeNodeFullTemplate:0}),(l()(),t["ɵand"](0,[[5,2],["treeNodeTemplate",2]],null,0,null,f)),(l()(),t["ɵand"](16777216,null,null,1,null,v)),t["ɵdid"](16,16384,null,0,u.NgIf,[t.ViewContainerRef,t.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),t["ɵand"](0,[[1,2],["highlightTpl",2]],null,0,null,S))],(function(l,n){var e=n.component;l(n,9,0,e.nodes,e.treeOptions),l(n,16,0,e.data)}),null)}function _(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-iscsi-target-details",[],null,null,null,R,g)),t["ɵdid"](1,638976,null,0,c.a,[m.a,p.a,h.a],null,null)],(function(l,n){l(n,1,0)}),null)}var w=t["ɵccf"]("cd-iscsi-target-details",c.a,_,{selection:"selection",settings:"settings",cephIscsiConfigVersion:"cephIscsiConfigVersion"},{},[])},xvu0:function(l,n,e){"use strict";var t=e("8Y7J"),u=e("EEJc"),i=e("ajRT"),s=e("s7LF"),a=e("+gVj"),o=e("mXUL"),r=e("IZUe"),d=e("ANnk"),c=e("f/UV"),m=e("aexS"),p=e("gp3X"),h=e("sb0X"),g=e("KVJa"),f=e("Z21x"),v=e("SVse"),b=e("sne2"),C=e("puGn"),S=e("LqlI"),R=e("XED3"),_=e("kn/O");e.d(n,"a",(function(){return I}));var w=t["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function y(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,39,"cd-modal",[],null,null,null,u.c,u.b)),t["ɵdid"](1,49152,null,0,i.a,[],{modalRef:[0,"modalRef"]},null),(l()(),t["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Edit site name"])),(l()(),t["ɵeld"](4,0,null,1,35,null,null,null,null,null,null,null)),(l()(),t["ɵeld"](5,0,null,null,34,"form",[["class","form"],["name","editSiteNameForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var u=!0;return"submit"===n&&(u=!1!==t["ɵnov"](l,7).onSubmit(e)&&u),"reset"===n&&(u=!1!==t["ɵnov"](l,7).onReset()&&u),"submit"===n&&(u=!1!==t["ɵnov"](l,10).onSubmit()&&u),u}),null,null)),t["ɵdid"](6,16384,null,0,s.G,[],null,null),t["ɵdid"](7,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),t["ɵprd"](2048,null,s.d,null,[s.l]),t["ɵdid"](9,16384,null,0,s.s,[[4,s.d]],null,null),t["ɵdid"](10,16384,null,0,a.d,[],{formGroup:[0,"formGroup"]},null),(l()(),t["ɵeld"](11,0,null,null,21,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),t["ɵeld"](12,0,null,null,5,"p",[],null,null,null,null,null)),(l()(),t["ɵeld"](13,0,null,null,4,null,null,null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Edit the site name and click  "])),(l()(),t["ɵeld"](15,0,null,null,1,"kbd",[],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Update"])),(l()(),t["ɵted"](-1,null,["."])),(l()(),t["ɵeld"](18,0,null,null,14,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,o.b,o.a)),t["ɵdid"](19,1163264,null,2,a.c,[t.ElementRef,a.g],null,null),t["ɵqud"](603979776,1,{FormControlNames:1}),t["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),t["ɵeld"](22,0,null,0,1,"label",[["class","col-form-label required"],["for","siteName"]],null,null,null,null,null)),(l()(),t["ɵted"](-1,null,["Site Name"])),(l()(),t["ɵeld"](24,0,null,0,8,"input",[["autofocus",""],["class","form-control"],["formControlName","siteName"],["id","siteName"],["name","siteName"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var u=!0;return"input"===n&&(u=!1!==t["ɵnov"](l,27)._handleInput(e.target.value)&&u),"blur"===n&&(u=!1!==t["ɵnov"](l,27).onTouched()&&u),"compositionstart"===n&&(u=!1!==t["ɵnov"](l,27)._compositionStart()&&u),"compositionend"===n&&(u=!1!==t["ɵnov"](l,27)._compositionEnd(e.target.value)&&u),u}),null,null)),t["ɵdid"](25,4210688,null,0,r.a,[t.ElementRef],{autofocus:[0,"autofocus"]},null),t["ɵdid"](26,4210688,null,0,d.a,[[2,c.a],m.a,t.ElementRef],null,null),t["ɵdid"](27,16384,null,0,s.e,[t.Renderer2,t.ElementRef,[2,s.b]],null,null),t["ɵprd"](1024,null,s.p,(function(l){return[l]}),[s.e]),t["ɵdid"](29,671744,[[1,4]],0,s.j,[[3,s.d],[8,null],[8,null],[6,s.p],[2,s.E]],{name:[0,"name"]},null),t["ɵprd"](2048,null,s.q,null,[s.j]),t["ɵdid"](31,16384,null,0,s.r,[[4,s.q]],null,null),t["ɵdid"](32,16384,null,0,a.h,[[3,s.d],a.a],{formControlName:[0,"formControlName"]},null),(l()(),t["ɵeld"](33,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),t["ɵeld"](34,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),t["ɵeld"](35,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var t=!0;return"submitAction"===n&&(t=!1!==l.component.update()&&t),t}),p.b,p.a)),t["ɵdid"](36,114688,null,0,h.a,[t.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),t["ɵted"](-1,0,["Update"])),(l()(),t["ɵeld"](38,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,g.b,g.a)),t["ɵdid"](39,49152,null,0,f.a,[v.Location,b.b],{name:[0,"name"],back:[1,"back"]},null)],(function(l,n){var e=n.component;l(n,1,0,e.modalRef),l(n,7,0,e.editSiteNameForm),l(n,10,0,e.editSiteNameForm),l(n,19,0),l(n,25,0,""),l(n,29,0,"siteName"),l(n,32,0,"siteName"),l(n,36,0,e.editSiteNameForm),l(n,39,0,"Cancel",e.modalRef.hide)}),(function(l,n){l(n,5,0,t["ɵnov"](n,9).ngClassUntouched,t["ɵnov"](n,9).ngClassTouched,t["ɵnov"](n,9).ngClassPristine,t["ɵnov"](n,9).ngClassDirty,t["ɵnov"](n,9).ngClassValid,t["ɵnov"](n,9).ngClassInvalid,t["ɵnov"](n,9).ngClassPending),l(n,18,0,t["ɵnov"](n,19).hasErrors,t["ɵnov"](n,19).hasSuccess),l(n,24,0,t["ɵnov"](n,31).ngClassUntouched,t["ɵnov"](n,31).ngClassTouched,t["ɵnov"](n,31).ngClassPristine,t["ɵnov"](n,31).ngClassDirty,t["ɵnov"](n,31).ngClassValid,t["ɵnov"](n,31).ngClassInvalid,t["ɵnov"](n,31).ngClassPending,t["ɵnov"](n,32).validClass,t["ɵnov"](n,32).invalidClass)}))}function k(l){return t["ɵvid"](0,[(l()(),t["ɵeld"](0,0,null,null,1,"cd-edit-site-mode-modal",[],null,null,null,y,w)),t["ɵdid"](1,114688,null,0,C.a,[S.a,R.a,_.a],null,null)],(function(l,n){l(n,1,0)}),null)}var I=t["ɵccf"]("cd-edit-site-mode-modal",C.a,k,{},{},[])}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/5.3532f17ccbf4b268177b.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/5.3532f17ccbf4b268177b.js
deleted file mode 100644 (file)
index a59c44c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{J6Oi:function(l,n,u){"use strict";u.r(n);var e=u("8Y7J"),a=u("k/xb"),t=u("MdoF"),o=u("ES0t"),d=u("Xg1U"),i=u("z5nN"),s=u("iutN"),r=u("pMnS"),c=u("EEJc"),p=u("PEr+"),m=u("a40w"),g=u("hfeG"),f=u("QUzE"),v=u("E7j4"),C=u("xvu0"),b=u("RIVN"),h=u("nP0W"),R=u("VBM6"),I=u("atuK"),N=u("JIi+"),E=u("0BYw"),w=u("3IYD"),T=u("I4Qz"),y=u("0rTx"),V=u("lz+O"),x=u("u2XS"),q=u("nhAp"),k=u("l7Jr"),_=u("bUo2"),D=u("SVse"),F=u("yT6U"),P=u("4DD9"),S=u("iExv"),A=u("GiVz"),O=u("85J/"),j=u("+0ag"),U=u("aXbf"),B=u("Fgil"),$=u("IzCI"),M=u("o4+5"),L=u("Dwqy"),z=u("uYzU"),G=u("FFMq"),K=u("E2fk"),Z=u("a0VL"),J=u("nSDx"),W=u("SB+Q"),Q=u("TYzs"),Y=u("BQkM"),X=u("dEH0"),H=u("G1/K"),ll=u("8xTl"),nl=u("TJUb"),ul=u("efK2"),el=u("s7LF"),al=u("CNMR"),tl=u("KOzp"),ol=u("2uy1"),dl=u("z/SZ"),il=u("38Bd"),sl=u("978R"),rl=u("LqlI"),cl=u("w9WL"),pl=u("FE24"),ml=u("aexS"),gl=u("Avrn"),fl=u("iInd"),vl=u("2ZVE"),Cl=u("ienR"),bl=u("gk6K"),hl=u("9Xeq"),Rl=u("hrfs"),Il=u("yGOH"),Nl=u("+gVj"),El=u("bxSN"),wl=u("WF9J"),Tl=u("V/fk"),yl=u("ChqD"),Vl=u("pL04"),xl=u("PCNd"),ql=u("kccj"),kl=u("yYhs"),_l=u("C6Ij"),Dl=u("AWcq"),Fl=u("pKUh");class Pl{constructor(l,n){this.authStorageService=l,this.router=n,this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnInit(){this.url=this.router.url}navigateTo(l){this.router.navigate([l])}}var Sl=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Al(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/rbd/performance")&&e),e}),null,null)),e["ɵdid"](1,212992,null,0,vl.b,[vl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"})],(function(l,n){l(n,1,0,"Overall Performance","/block/rbd/performance"===n.component.url)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby)}))}function Ol(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,"tabset",[],[[2,"tab-container",null]],null,null,Fl.b,Fl.a)),e["ɵdid"](1,180224,null,0,vl.e,[vl.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,1,"tab",[["heading","Images"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/rbd")&&e),e}),null,null)),e["ɵdid"](3,212992,null,0,vl.b,[vl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵeld"](4,0,null,0,1,"tab",[["heading","Namespaces"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/rbd/namespaces")&&e),e}),null,null)),e["ɵdid"](5,212992,null,0,vl.b,[vl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵeld"](6,0,null,0,1,"tab",[["heading","Trash"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/rbd/trash")&&e),e}),null,null)),e["ɵdid"](7,212992,null,0,vl.b,[vl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵand"](16777216,null,0,1,null,Al)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Images","/block/rbd"===u.url),l(n,5,0,"Namespaces","/block/rbd/namespaces"===u.url),l(n,7,0,"Trash","/block/rbd/trash"===u.url),l(n,9,0,u.grafanaPermission.read)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby),l(n,4,0,e["ɵnov"](n,5).id,e["ɵnov"](n,5).active,e["ɵnov"](n,5).addClass,e["ɵnov"](n,5).role,e["ɵnov"](n,5).ariaLabelledby),l(n,6,0,e["ɵnov"](n,7).id,e["ɵnov"](n,7).active,e["ɵnov"](n,7).addClass,e["ɵnov"](n,7).role,e["ɵnov"](n,7).ariaLabelledby)}))}var jl=u("25BL"),Ul=u("uIqm"),Bl=u("NUGo"),$l=u("S7zO"),Ml=u("JBea"),Ll=u("VTlA"),zl=u("ufoC"),Gl=u("mSOc"),Kl=u("EgGo"),Zl=u("5GyT"),Jl=u("F83c"),Wl=u("kn/O"),Ql=u("sne2"),Yl=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Xl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,_l.b,_l.a)),e["ɵdid"](1,114688,null,0,Dl.a,[],{status:[0,"status"],statusFor:[1,"statusFor"]},null)],(function(l,n){l(n,1,0,n.context.$implicit.status,n.context.$implicit.statusFor)}),null)}function Hl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(l,n){l(n,0,0,"Only available for RBD images with <strong>fast-diff</strong> enabled")}))}function ln(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["/",""]))],null,(function(l,n){l(n,1,0,n.parent.parent.context.value.pool_namespace)}))}function nn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["",""])),(l()(),e["ɵand"](16777216,null,null,1,null,ln)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵted"](4,null,["/","@",""]))],(function(l,n){l(n,3,0,n.parent.context.value.pool_namespace)}),(function(l,n){l(n,1,0,n.parent.context.value.pool_name),l(n,4,0,n.parent.context.value.image_name,n.parent.context.value.snap_name)}))}function un(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function en(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,nn)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,un)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,n.context.value),l(n,3,0,!n.context.value)}),null)}function an(l){return e["ɵvid"](0,[(l()(),e["ɵted"](-1,null,[" You are about to flatten "])),(l()(),e["ɵeld"](1,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](2,null,["",""])),(l()(),e["ɵted"](-1,null,[". "])),(l()(),e["ɵeld"](4,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" All blocks will be copied from parent "])),(l()(),e["ɵeld"](7,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](8,null,["",""])),(l()(),e["ɵted"](-1,null,[" to child "])),(l()(),e["ɵeld"](10,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](11,null,["",""])),(l()(),e["ɵted"](-1,null,[".\n"]))],null,(function(l,n){l(n,2,0,n.context.$implicit.child),l(n,8,0,n.context.$implicit.parent),l(n,11,0,n.context.$implicit.child)}))}function tn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["",""]))],null,(function(l,n){l(n,1,0,n.context.$implicit)}))}function on(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The following snapshots are currently protected and will be removed:"])),(l()(),e["ɵeld"](3,0,null,null,2,"ul",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,tn)),e["ɵdid"](5,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,5,0,n.parent.parent.context.snapshots)}),null)}function dn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"div",[["class","alert alert-warning"],["role","alert"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Deleting this image will also delete all its snapshots."])),(l()(),e["ɵeld"](3,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,on)),e["ɵdid"](5,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,5,0,n.parent.context.snapshots.length>0)}),null)}function sn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,dn)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,n.context.hasSnapshots)}),null)}function rn(l){return e["ɵvid"](0,[e["ɵqud"](402653184,1,{table:0}),e["ɵqud"](671088640,2,{usageTpl:0}),e["ɵqud"](402653184,3,{parentTpl:0}),e["ɵqud"](671088640,4,{nameTpl:0}),e["ɵqud"](402653184,5,{flattenTpl:0}),e["ɵqud"](402653184,6,{deleteTpl:0}),(l()(),e["ɵeld"](6,0,null,null,1,"cd-rbd-tabs",[],null,null,null,Ol,Sl)),e["ɵdid"](7,114688,null,0,Pl,[ml.a,fl.m],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,Xl)),e["ɵdid"](9,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](10,0,null,null,5,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","unique_id"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(l,n,u){var e=!0,a=l.component;return"setExpandedRow"===n&&(e=!1!==a.setExpandedRow(u)&&e),"updateSelection"===n&&(e=!1!==a.updateSelection(u)&&e),e}),jl.b,jl.a)),e["ɵdid"](11,2867200,[[1,4],["table",4]],0,Ul.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"],searchableObjects:[7,"searchableObjects"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](12,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Bl.b,Bl.a)),e["ɵdid"](13,114688,null,0,$l.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](14,0,null,3,1,"cd-rbd-details",[["cdTableDetail",""]],null,null,null,N.c,N.b)),e["ɵdid"](15,573440,null,0,Ml.a,[],{selection:[0,"selection"]},null),(l()(),e["ɵand"](0,[["usageNotAvailableTooltipTpl",2]],null,0,null,Hl)),(l()(),e["ɵand"](0,[[3,2],["parentTpl",2]],null,0,null,en)),(l()(),e["ɵand"](0,[[5,2],["flattenTpl",2]],null,0,null,an)),(l()(),e["ɵand"](0,[[6,2],["deleteTpl",2]],null,0,null,sn))],(function(l,n){var u=n.component;l(n,7,0),l(n,9,0,u.viewCacheStatusList),l(n,11,0,u.images,u.columns,"flex",!0,"unique_id","true","single",!0),l(n,13,0,u.permission,u.selection,u.tableActions),l(n,15,0,u.expandedRow)}),null)}function cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"cd-rbd-list",[],null,null,null,rn,Yl)),e["ɵprd"](131584,null,Ll.a,Ll.a,[zl.a,Gl.a]),e["ɵprd"](256,null,Kl.a,Zl.b,[]),e["ɵdid"](3,114688,null,0,Zl.a,[ml.a,Jl.a,B.a,M.a,rl.b,Wl.a,Ll.a,A.a,Kl.a,Ql.b],null,null)],(function(l,n){l(n,3,0)}),null)}var pn=e["ɵccf"]("cd-rbd-list",Zl.a,cn,{},{},[]),mn=u("Z5tW"),gn=u("Ekvf"),fn=u("9nlD"),vn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rbd-tabs",[],null,null,null,Ol,Sl)),e["ɵdid"](1,114688,null,0,Pl,[ml.a,fl.m],null,null),(l()(),e["ɵeld"](2,0,null,null,4,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","id"],["selectionType","single"]],null,[[null,"fetchData"],[null,"updateSelection"]],(function(l,n,u){var e=!0,a=l.component;return"fetchData"===n&&(e=!1!==a.refresh()&&e),"updateSelection"===n&&(e=!1!==a.updateSelection(u)&&e),e}),jl.b,jl.a)),e["ɵdid"](3,2867200,null,0,Ul.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],identifier:[3,"identifier"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection"}),(l()(),e["ɵeld"](4,0,null,1,2,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"cd-table-actions",[["class","btn-group"]],null,null,null,Bl.b,Bl.a)),e["ɵdid"](6,114688,null,0,$l.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,3,0,u.namespaces,u.columns,"flex","id","true","single"),l(n,6,0,u.permission,u.selection,u.tableActions)}),null)}function bn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-rbd-namespace-list",[],null,null,null,Cn,vn)),e["ɵprd"](135680,null,Ll.a,Ll.a,[zl.a,Gl.a]),e["ɵdid"](2,114688,null,0,mn.a,[ml.a,Jl.a,gn.a,rl.b,fn.a,A.a,Ql.b],null,null)],(function(l,n){l(n,2,0)}),null)}var hn=e["ɵccf"]("cd-rbd-namespace-list",mn.a,bn,{},{},[]),Rn=u("chpi"),In=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Nn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,_l.b,_l.a)),e["ɵdid"](1,114688,null,0,Dl.a,[],{status:[0,"status"],statusFor:[1,"statusFor"]},null)],(function(l,n){l(n,1,0,n.context.$implicit.status,n.context.$implicit.statusFor)}),null)}function En(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,6,"button",[["class","btn btn-light"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.purgeModal()&&e),e}),null,null)),(l()(),e["ɵeld"](1,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](3,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](4,1),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Purge Trash"]))],(function(l,n){var u=l(n,4,0,n.component.icons.destroy);l(n,3,0,u)}),(function(l,n){l(n,0,0,n.component.disablePurgeBtn)}))}function wn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Expired at"]))],null,null)}function Tn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Protected until"]))],null,null)}function yn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,wn)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Tn)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵted"](4,null,[" ","\n"])),e["ɵppd"](5,1)],(function(l,n){l(n,1,0,n.context.row.cdIsExpired),l(n,3,0,!n.context.row.cdIsExpired)}),(function(l,n){var u=e["ɵunv"](n,4,0,l(n,5,0,e["ɵnov"](n.parent,0),n.context.value));l(n,4,0,u)}))}function Vn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"p",[["class","text-danger"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,3,"strong",[],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,null,null,null,null,null,null,null)),(l()(),e["ɵted"](3,null,["This image is protected until ","."])),e["ɵppd"](4,1)],null,(function(l,n){var u=e["ɵunv"](n,3,0,l(n,4,0,e["ɵnov"](n.parent.parent,0),n.parent.context.$implicit));l(n,3,0,u)}))}function xn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Vn)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,!n.component.isExpired(n.context.$implicit))}),null)}function qn(l){return e["ɵvid"](0,[e["ɵpid"](0,Z.a,[D.DatePipe]),e["ɵqud"](402653184,1,{table:0}),e["ɵqud"](402653184,2,{expiresTpl:0}),e["ɵqud"](402653184,3,{deleteTpl:0}),(l()(),e["ɵeld"](4,0,null,null,1,"cd-rbd-tabs",[],null,null,null,Ol,Sl)),e["ɵdid"](5,114688,null,0,Pl,[ml.a,fl.m],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,Nn)),e["ɵdid"](7,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](8,0,null,null,6,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","id"],["selectionType","single"]],null,[[null,"updateSelection"]],(function(l,n,u){var e=!0;return"updateSelection"===n&&(e=!1!==l.component.updateSelection(u)&&e),e}),jl.b,jl.a)),e["ɵdid"](9,2867200,[[1,4]],0,Ul.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],identifier:[3,"identifier"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"]},{updateSelection:"updateSelection"}),(l()(),e["ɵeld"](10,0,null,1,4,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,1,"cd-table-actions",[["class","btn-group"]],null,null,null,Bl.b,Bl.a)),e["ɵdid"](12,114688,null,0,$l.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,En)),e["ɵdid"](14,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,[[2,2],["expiresTpl",2]],null,0,null,yn)),(l()(),e["ɵand"](0,[[3,2],["deleteTpl",2]],null,0,null,xn))],(function(l,n){var u=n.component;l(n,5,0),l(n,7,0,u.viewCacheStatusList),l(n,9,0,u.images,u.columns,"flex","id","true","single"),l(n,12,0,u.permission,u.selection,u.tableActions),l(n,14,0,u.permission.delete)}),null)}function kn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-rbd-trash-list",[],null,null,null,qn,In)),e["ɵprd"](131584,null,Ll.a,Ll.a,[zl.a,Gl.a]),e["ɵdid"](2,114688,null,0,Rn.a,[ml.a,Jl.a,rl.b,Z.a,Ll.a,Wl.a,A.a,Ql.b],null,null)],(function(l,n){l(n,2,0)}),null)}var _n=e["ɵccf"]("cd-rbd-trash-list",Rn.a,kn,{},{},[]),Dn=u("a278"),Fn=u("insk"),Pn=u("cUpR"),Sn=u("20UP"),An=u("WkyA"),On=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function jn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rbd-tabs",[],null,null,null,Ol,Sl)),e["ɵdid"](1,114688,null,0,Pl,[ml.a,fl.m],null,null),(l()(),e["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","41FrpeUiz"]],null,null,null,Dn.b,Dn.a)),e["ɵdid"](3,638976,null,0,Fn.a,[Pn.b,Sn.a,A.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){l(n,1,0),l(n,3,0,"rbd-overview?","two","41FrpeUiz")}),null)}function Un(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rbd-performance",[],null,null,null,jn,On)),e["ɵdid"](1,49152,null,0,An.a,[],null,null)],null,null)}var Bn=e["ɵccf"]("cd-rbd-performance",An.a,Un,{},{},[]),$n=u("mXUL"),Mn=u("ANnk"),Ln=u("f/UV"),zn=u("4HWh"),Gn=u("p4Cf"),Kn=u("IZUe"),Zn=u("EmSq"),Jn=u("BH9v"),Wn=u("rFfW"),Qn=u("o8EM"),Yn=u("gp3X"),Xn=u("sb0X"),Hn=u("KVJa"),lu=u("Z21x"),nu=u("MyVl"),uu=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function eu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](1,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,2,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," from"])),e["ɵppd"](6,1),(l()(),e["ɵeld"](7,0,null,0,9,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["class","form-control"],["formControlName","parent"],["id","parent"],["name","parent"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,9).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,9)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](9,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](11,671744,[[1,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](13,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](14,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](15,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,0,"hr",[],null,null,null,null,null))],(function(l,n){l(n,1,0),l(n,11,0,"parent"),l(n,15,0,"parent")}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess);var a=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n.parent,0),u.action));l(n,5,0,a),l(n,8,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function au(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function tu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["'/' and '@' are not allowed."]))],null,null)}function ou(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","pool"],["id","pool"],["name","pool"],["placeholder","Pool name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,1)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,1)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,1)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](3,671744,[[5,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](5,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](6,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"pool"),l(n,7,0,"pool")}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function du(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function iu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- No rbd pools available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function su(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a pool --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function ru(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.pool_name),l(n,2,0,n.context.$implicit.pool_name)}),(function(l,n){l(n,3,0,n.context.$implicit.pool_name)}))}function cu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","pool"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,1).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,el.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.A]),e["ɵdid"](3,671744,[[5,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](5,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](6,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,du)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,iu)),e["ɵdid"](11,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,su)),e["ɵdid"](13,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ru)),e["ɵdid"](15,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"pool"),l(n,7,0,"pool"),l(n,9,0,null===u.pools),l(n,11,0,null!==u.pools&&0===u.pools.length),l(n,13,0,null!==u.pools&&u.pools.length>0),l(n,15,0,u.pools)}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function pu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function mu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](1,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,4,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](7,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](8,2)],(function(l,n){var u=n.component;l(n,1,0);var e=l(n,8,0,u.icons.spinner,u.icons.spin);l(n,7,0,e)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess)}))}function gu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","namespace"],["id","namespace"],["name","namespace"],["placeholder","Namespace..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,1)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,1)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,1)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](3,671744,[[9,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](5,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](6,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"namespace"),l(n,7,0,"namespace")}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function fu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function vu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- No namespaces available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Cu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a namespace --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function bu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function hu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","namespace"],["id","namespace"],["name","namespace"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,1).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,el.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.A]),e["ɵdid"](3,671744,[[9,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](5,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](6,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,fu)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,vu)),e["ɵdid"](11,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Cu)),e["ɵdid"](13,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,bu)),e["ɵdid"](15,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"namespace"),l(n,7,0,"namespace"),l(n,9,0,null===u.pools),l(n,11,0,null!==u.pools&&0===u.pools.length),l(n,13,0,null!==u.pools&&u.pools.length>0),l(n,15,0,u.namespaces)}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function Ru(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,10,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](1,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","pool"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" Namespace "])),(l()(),e["ɵeld"](6,0,null,0,4,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,gu)),e["ɵdid"](8,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,hu)),e["ɵdid"](10,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,8,0,"editing"===u.mode||!u.poolPermission.read),l(n,10,0,"editing"!==u.mode&&u.poolPermission.read)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess)}))}function Iu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","dataPool"],["id","dataPool"],["name","dataPool"],["placeholder","Data pool name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,1)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,1)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,1)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](3,671744,[[13,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](5,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](6,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"dataPool"),l(n,7,0,"dataPool")}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function Nu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Eu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- No data pools available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function wu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a data pool -- "]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Tu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.pool_name),l(n,2,0,n.context.$implicit.pool_name)}),(function(l,n){l(n,3,0,n.context.$implicit.pool_name)}))}function yu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","dataPool"],["id","dataPool"],["name","dataPool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0,t=l.component;return"change"===n&&(a=!1!==e["ɵnov"](l,1).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),"change"===n&&(a=!1!==t.onDataPoolChange(u.target.value)&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,el.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.A]),e["ɵdid"](3,671744,[[13,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](5,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](6,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Nu)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Eu)),e["ɵdid"](11,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,wu)),e["ɵdid"](13,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Tu)),e["ɵdid"](15,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"dataPool"),l(n,7,0,"dataPool"),l(n,9,0,null===u.dataPools),l(n,11,0,null!==u.dataPools&&0===u.dataPools.length),l(n,13,0,null!==u.dataPools&&u.dataPools.length>0),l(n,15,0,u.dataPools)}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function Vu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function xu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](1,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,13,{FormControlNames:1}),e["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,7,"label",[["class","cd-col-form-label"],["for","dataPool"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"span",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](7,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpod"](8,{required:0}),(l()(),e["ɵted"](-1,null,["Data pool"])),(l()(),e["ɵeld"](10,0,null,null,1,"cd-helper",[["html","Dedicated pool that stores the object-data of the RBD."]],null,null,null,zn.b,zn.a)),e["ɵdid"](11,49152,null,0,Gn.a,[],{html:[0,"html"]},null),(l()(),e["ɵeld"](12,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Iu)),e["ɵdid"](14,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,yu)),e["ɵdid"](16,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Vu)),e["ɵdid"](18,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0);var a=l(n,8,0,"editing"!==u.mode);l(n,7,0,a),l(n,11,0,"Dedicated pool that stores the object-data of the RBD."),l(n,14,0,"editing"===u.mode||!u.poolPermission.read),l(n,16,0,"editing"!==u.mode&&u.poolPermission.read),l(n,18,0,u.rbdForm.showError("dataPool",e["ɵnov"](n.parent,5),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess)}))}function qu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ku(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["You have to increase the size."]))],null,null)}function _u(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-helper",[],null,null,null,zn.b,zn.a)),e["ɵdid"](1,49152,null,0,Gn.a,[],{html:[0,"html"]},null)],(function(l,n){l(n,1,0,e["ɵinlineInterpolate"](1,"",n.parent.context.$implicit.helperHtml,""))}),null)}function Du(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,12,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,2).onChange(u.target.checked)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,2).onTouched()&&a),a}),null,null)),e["ɵdid"](2,16384,null,0,el.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.c]),e["ɵdid"](4,671744,[[17,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](6,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](7,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](9,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),e["ɵted"](10,null,["",""])),(l()(),e["ɵand"](16777216,null,null,1,null,_u)),e["ɵdid"](12,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,4,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,"")),l(n,8,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,"")),l(n,12,0,n.context.$implicit.helperHtml)}),(function(l,n){l(n,1,1,[e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,""),e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,""),e["ɵnov"](n,6).ngClassUntouched,e["ɵnov"](n,6).ngClassTouched,e["ɵnov"](n,6).ngClassPristine,e["ɵnov"](n,6).ngClassDirty,e["ɵnov"](n,6).ngClassValid,e["ɵnov"](n,6).ngClassInvalid,e["ɵnov"](n,6).ngClassPending,e["ɵnov"](n,8).validClass,e["ɵnov"](n,8).invalidClass]),l(n,9,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,"")),l(n,10,0,n.context.$implicit.desc)}))}function Fu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"a",[["class","float-right margin-right-md"],["href",""]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(l.component.advancedEnabled=!0,e=!1),e}),null,null)),(l()(),e["ɵted"](-1,null,["Advanced..."]))],null,null)}function Pu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Su(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Au(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required because stripe count is defined!"]))],null,null)}function Ou(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Stripe unit is greater than object size."]))],null,null)}function ju(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required because stripe unit is defined!"]))],null,null)}function Uu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Stripe count must be greater than 0."]))],null,null)}function Bu(l){return e["ɵvid"](0,[e["ɵpid"](0,D.TitleCasePipe,[]),e["ɵpid"](0,ll.a,[]),(l()(),e["ɵeld"](2,0,null,null,193,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,192,"form",[["name","rbdForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var a=!0;return"submit"===n&&(a=!1!==e["ɵnov"](l,5).onSubmit(u)&&a),"reset"===n&&(a=!1!==e["ɵnov"](l,5).onReset()&&a),"submit"===n&&(a=!1!==e["ɵnov"](l,8).onSubmit()&&a),a}),null,null)),e["ɵdid"](4,16384,null,0,el.G,[],null,null),e["ɵdid"](5,540672,[["formDir",4]],0,el.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,el.d,null,[el.l]),e["ɵdid"](7,16384,null,0,el.s,[[4,el.d]],null,null),e["ɵdid"](8,16384,null,0,Nl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](9,0,null,null,186,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](11,null,[""," ",""])),e["ɵppd"](12,1),e["ɵppd"](13,1),(l()(),e["ɵeld"](14,0,null,null,172,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,eu)),e["ɵdid"](16,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](17,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](18,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](21,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","name"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](23,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](24,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,25)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,25).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,25)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,25)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](25,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](27,671744,[[3,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](29,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](30,4210688,null,0,Kn.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](31,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](32,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,au)),e["ɵdid"](34,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,tu)),e["ɵdid"](36,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](37,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],[[null,"change"]],(function(l,n,u){var e=!0;return"change"===n&&(e=!1!==l.component.onPoolChange(u.target.value)&&e),e}),$n.b,$n.a)),e["ɵdid"](38,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](41,0,null,0,4,"label",[["class","cd-col-form-label"],["for","pool"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](43,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](44,{required:0}),(l()(),e["ɵted"](-1,null,["Pool"])),(l()(),e["ɵeld"](46,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ou)),e["ɵdid"](48,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,cu)),e["ɵdid"](50,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pu)),e["ɵdid"](52,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,mu)),e["ɵdid"](54,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ru)),e["ɵdid"](56,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](57,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](58,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,11,{FormControlNames:1}),e["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),e["ɵeld"](61,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](62,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](63,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","useDataPool"],["id","useDataPool"],["name","useDataPool"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0,t=l.component;return"change"===n&&(a=!1!==e["ɵnov"](l,64).onChange(u.target.checked)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,64).onTouched()&&a),"change"===n&&(a=!1!==t.onUseDataPoolChange()&&a),a}),null,null)),e["ɵdid"](64,16384,null,0,el.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.c]),e["ɵdid"](66,671744,[[11,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](68,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](69,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](70,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](71,0,null,null,1,"label",[["class","custom-control-label"],["for","useDataPool"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Use a dedicated data pool"])),(l()(),e["ɵand"](16777216,null,null,1,null,xu)),e["ɵdid"](74,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](75,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](76,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,15,{FormControlNames:1}),e["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),e["ɵeld"](79,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","size"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Size"])),(l()(),e["ɵeld"](81,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](82,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["defaultUnit","GiB"],["formControlName","size"],["id","size"],["name","size"],["placeholder","e.g., 10GiB"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,83)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,83).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,83)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,83)._compositionEnd(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,88).onBlur(u.target.value)&&a),a}),null,null)),e["ɵdid"](83,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](85,671744,[[15,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](87,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](88,81920,null,0,Zn.a,[e.ElementRef,el.q,B.a,U.a],{defaultUnit:[0,"defaultUnit"]},null),e["ɵdid"](89,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](90,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,qu)),e["ɵdid"](92,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ku)),e["ɵdid"](94,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](95,0,null,null,11,"div",[["class","form-group row"],["formGroupName","features"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](96,212992,null,0,el.m,[[3,el.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.d,null,[el.m]),e["ɵdid"](98,16384,null,0,el.s,[[4,el.d]],null,null),e["ɵdid"](99,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,17,{FormControlNames:1}),e["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),e["ɵeld"](102,0,null,0,1,"label",[["class","cd-col-form-label"],["for","features"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Features"])),(l()(),e["ɵeld"](104,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Du)),e["ɵdid"](106,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](107,0,null,null,3,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](108,0,null,null,2,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Fu)),e["ɵdid"](110,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](111,0,null,null,75,"div",[],[[8,"hidden",0]],null,null,null,null)),(l()(),e["ɵeld"](112,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Advanced"])),(l()(),e["ɵeld"](114,0,null,null,70,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](115,0,null,null,1,"h4",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Striping"])),(l()(),e["ɵeld"](117,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](118,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,19,{FormControlNames:1}),e["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),e["ɵeld"](121,0,null,0,1,"label",[["class","cd-col-form-label"],["for","size"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Object size"])),(l()(),e["ɵeld"](123,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](124,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","obj_size"],["id","obj_size"],["name","obj_size"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,125).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,125).onTouched()&&a),a}),null,null)),e["ɵdid"](125,16384,null,0,el.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.A]),e["ɵdid"](127,671744,[[19,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](129,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](130,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](131,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Pu)),e["ɵdid"](133,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](134,0,null,null,27,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](135,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,21,{FormControlNames:1}),e["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),e["ɵeld"](138,0,null,0,4,"label",[["class","cd-col-form-label"],["for","stripingUnit"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](140,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](141,{required:0}),(l()(),e["ɵted"](-1,null,["Stripe unit"])),(l()(),e["ɵeld"](143,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](144,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","stripingUnit"],["id","stripingUnit"],["name","stripingUnit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,145).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,145).onTouched()&&a),a}),null,null)),e["ɵdid"](145,16384,null,0,el.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.A]),e["ɵdid"](147,671744,[[21,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](149,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](150,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](151,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](152,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](153,147456,null,0,el.v,[e.ElementRef,e.Renderer2,[2,el.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](154,147456,null,0,el.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select stripe unit --"])),(l()(),e["ɵand"](16777216,null,null,1,null,Su)),e["ɵdid"](157,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Au)),e["ɵdid"](159,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ou)),e["ɵdid"](161,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](162,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](163,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,23,{FormControlNames:1}),e["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),e["ɵeld"](166,0,null,0,4,"label",[["class","cd-col-form-label"],["for","stripingCount"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](168,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](169,{required:0}),(l()(),e["ɵted"](-1,null,["Stripe count"])),(l()(),e["ɵeld"](171,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](172,0,null,null,8,"input",[["class","form-control"],["formControlName","stripingCount"],["id","stripingCount"],["name","stripingCount"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,173)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,173).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,173)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,173)._compositionEnd(u.target.value)&&a),"change"===n&&(a=!1!==e["ɵnov"](l,174).onChange(u.target.value)&&a),"input"===n&&(a=!1!==e["ɵnov"](l,174).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,174).onTouched()&&a),a}),null,null)),e["ɵdid"](173,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵdid"](174,16384,null,0,el.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l,n){return[l,n]}),[el.e,el.w]),e["ɵdid"](176,671744,[[23,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](178,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](179,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](180,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ju)),e["ɵdid"](182,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Uu)),e["ɵdid"](184,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](185,0,null,null,1,"cd-rbd-configuration-form",[],null,[[null,"changes"]],(function(l,n,u){var e=!0;return"changes"===n&&(e=!1!==(l.component.getDirtyConfigurationValues=u)&&e),e}),Jn.b,Jn.a)),e["ɵdid"](186,114688,null,0,Wn.a,[U.a,Qn.a],{form:[0,"form"],initializeData:[1,"initializeData"]},{changes:"changes"}),(l()(),e["ɵeld"](187,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](188,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](189,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),Yn.b,Yn.a)),e["ɵdid"](190,114688,null,0,Xn.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](191,0,[""," ",""])),e["ɵppd"](192,1),e["ɵppd"](193,1),(l()(),e["ɵeld"](194,0,null,null,1,"cd-back-button",[],null,null,null,Hn.b,Hn.a)),e["ɵdid"](195,49152,null,0,lu.a,[D.Location,Ql.b],null,null)],(function(l,n){var u=n.component;l(n,5,0,u.rbdForm),l(n,8,0,u.rbdForm),l(n,16,0,u.rbdForm.getValue("parent")),l(n,18,0),l(n,27,0,"name"),l(n,30,0,""),l(n,32,0,"name"),l(n,34,0,u.rbdForm.showError("name",e["ɵnov"](n,5),"required")),l(n,36,0,u.rbdForm.showError("name",e["ɵnov"](n,5),"pattern")),l(n,38,0);var a=l(n,44,0,"editing"!==u.mode);l(n,43,0,"cd-col-form-label",a),l(n,48,0,"editing"===u.mode||!u.poolPermission.read),l(n,50,0,"editing"!==u.mode&&u.poolPermission.read),l(n,52,0,u.rbdForm.showError("pool",e["ɵnov"](n,5),"required")),l(n,54,0,"editing"!==u.mode&&u.rbdForm.getValue("pool")&&null===u.namespaces),l(n,56,0,"editing"===u.mode&&u.rbdForm.getValue("namespace")||"editing"!==u.mode&&(u.namespaces&&u.namespaces.length>0||!u.poolPermission.read)),l(n,58,0),l(n,66,0,"useDataPool"),l(n,70,0,"useDataPool"),l(n,74,0,u.rbdForm.getValue("useDataPool")),l(n,76,0),l(n,85,0,"size"),l(n,88,0,"GiB"),l(n,90,0,"size"),l(n,92,0,u.rbdForm.showError("size",e["ɵnov"](n,5),"required")),l(n,94,0,u.rbdForm.showError("size",e["ɵnov"](n,5),"invalidSizeObject")),l(n,96,0,"features"),l(n,99,0),l(n,106,0,u.featuresList),l(n,110,0,!u.advancedEnabled),l(n,118,0),l(n,127,0,"obj_size"),l(n,131,0,"obj_size"),l(n,133,0,u.objectSizes),l(n,135,0);var t=l(n,141,0,u.rbdForm.getValue("stripingCount"));l(n,140,0,"cd-col-form-label",t),l(n,147,0,"stripingUnit"),l(n,151,0,"stripingUnit"),l(n,153,0,null),l(n,154,0,null),l(n,157,0,u.objectSizes),l(n,159,0,u.rbdForm.showError("stripingUnit",e["ɵnov"](n,5),"required")),l(n,161,0,u.rbdForm.showError("stripingUnit",e["ɵnov"](n,5),"invalidStripingUnit")),l(n,163,0);var o=l(n,169,0,u.rbdForm.getValue("stripingUnit"));l(n,168,0,"cd-col-form-label",o),l(n,176,0,"stripingCount"),l(n,180,0,"stripingCount"),l(n,182,0,u.rbdForm.showError("stripingCount",e["ɵnov"](n,5),"required")),l(n,184,0,u.rbdForm.showError("stripingCount",e["ɵnov"](n,5),"min")),l(n,186,0,u.rbdForm,u.initializeConfigData),l(n,190,0,e["ɵnov"](n,5))}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,7).ngClassUntouched,e["ɵnov"](n,7).ngClassTouched,e["ɵnov"](n,7).ngClassPristine,e["ɵnov"](n,7).ngClassDirty,e["ɵnov"](n,7).ngClassValid,e["ɵnov"](n,7).ngClassInvalid,e["ɵnov"](n,7).ngClassPending);var a=e["ɵunv"](n,11,0,l(n,12,0,e["ɵnov"](n,0),u.action)),t=e["ɵunv"](n,11,1,l(n,13,0,e["ɵnov"](n,1),u.resource));l(n,11,0,a,t),l(n,17,0,e["ɵnov"](n,18).hasErrors,e["ɵnov"](n,18).hasSuccess),l(n,24,0,e["ɵnov"](n,29).ngClassUntouched,e["ɵnov"](n,29).ngClassTouched,e["ɵnov"](n,29).ngClassPristine,e["ɵnov"](n,29).ngClassDirty,e["ɵnov"](n,29).ngClassValid,e["ɵnov"](n,29).ngClassInvalid,e["ɵnov"](n,29).ngClassPending,e["ɵnov"](n,32).validClass,e["ɵnov"](n,32).invalidClass),l(n,37,0,e["ɵnov"](n,38).hasErrors,e["ɵnov"](n,38).hasSuccess),l(n,57,0,e["ɵnov"](n,58).hasErrors,e["ɵnov"](n,58).hasSuccess),l(n,63,0,e["ɵnov"](n,68).ngClassUntouched,e["ɵnov"](n,68).ngClassTouched,e["ɵnov"](n,68).ngClassPristine,e["ɵnov"](n,68).ngClassDirty,e["ɵnov"](n,68).ngClassValid,e["ɵnov"](n,68).ngClassInvalid,e["ɵnov"](n,68).ngClassPending,e["ɵnov"](n,70).validClass,e["ɵnov"](n,70).invalidClass),l(n,75,0,e["ɵnov"](n,76).hasErrors,e["ɵnov"](n,76).hasSuccess),l(n,82,0,e["ɵnov"](n,87).ngClassUntouched,e["ɵnov"](n,87).ngClassTouched,e["ɵnov"](n,87).ngClassPristine,e["ɵnov"](n,87).ngClassDirty,e["ɵnov"](n,87).ngClassValid,e["ɵnov"](n,87).ngClassInvalid,e["ɵnov"](n,87).ngClassPending,e["ɵnov"](n,90).validClass,e["ɵnov"](n,90).invalidClass),l(n,95,0,e["ɵnov"](n,98).ngClassUntouched,e["ɵnov"](n,98).ngClassTouched,e["ɵnov"](n,98).ngClassPristine,e["ɵnov"](n,98).ngClassDirty,e["ɵnov"](n,98).ngClassValid,e["ɵnov"](n,98).ngClassInvalid,e["ɵnov"](n,98).ngClassPending,e["ɵnov"](n,99).hasErrors,e["ɵnov"](n,99).hasSuccess),l(n,111,0,!u.advancedEnabled),l(n,117,0,e["ɵnov"](n,118).hasErrors,e["ɵnov"](n,118).hasSuccess),l(n,124,0,e["ɵnov"](n,129).ngClassUntouched,e["ɵnov"](n,129).ngClassTouched,e["ɵnov"](n,129).ngClassPristine,e["ɵnov"](n,129).ngClassDirty,e["ɵnov"](n,129).ngClassValid,e["ɵnov"](n,129).ngClassInvalid,e["ɵnov"](n,129).ngClassPending,e["ɵnov"](n,131).validClass,e["ɵnov"](n,131).invalidClass),l(n,134,0,e["ɵnov"](n,135).hasErrors,e["ɵnov"](n,135).hasSuccess),l(n,144,0,e["ɵnov"](n,149).ngClassUntouched,e["ɵnov"](n,149).ngClassTouched,e["ɵnov"](n,149).ngClassPristine,e["ɵnov"](n,149).ngClassDirty,e["ɵnov"](n,149).ngClassValid,e["ɵnov"](n,149).ngClassInvalid,e["ɵnov"](n,149).ngClassPending,e["ɵnov"](n,151).validClass,e["ɵnov"](n,151).invalidClass),l(n,162,0,e["ɵnov"](n,163).hasErrors,e["ɵnov"](n,163).hasSuccess),l(n,172,0,e["ɵnov"](n,178).ngClassUntouched,e["ɵnov"](n,178).ngClassTouched,e["ɵnov"](n,178).ngClassPristine,e["ɵnov"](n,178).ngClassDirty,e["ɵnov"](n,178).ngClassValid,e["ɵnov"](n,178).ngClassInvalid,e["ɵnov"](n,178).ngClassPending,e["ɵnov"](n,180).validClass,e["ɵnov"](n,180).invalidClass);var o=e["ɵunv"](n,191,0,l(n,192,0,e["ɵnov"](n,0),u.action)),d=e["ɵunv"](n,191,1,l(n,193,0,e["ɵnov"](n,1),u.resource));l(n,191,0,o,d)}))}function $u(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rbd-form",[],null,null,null,Bu,uu)),e["ɵdid"](1,114688,null,0,nu.a,[ml.a,fl.a,gn.a,Jl.a,U.a,Wl.a,B.a,A.a,Ql.b,fl.m],null,null)],(function(l,n){l(n,1,0)}),null)}var Mu=e["ɵccf"]("cd-rbd-form",nu.a,$u,{},{},[]),Lu=u("JxMD"),zu=u("dgut");class Gu{constructor(l){this.router=l}ngOnInit(){this.url=this.router.url}navigateTo(l){this.router.navigate([l])}}var Ku=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Zu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,Fl.b,Fl.a)),e["ɵdid"](1,180224,null,0,vl.e,[vl.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,1,"tab",[["heading","Overview"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/iscsi/overview")&&e),e}),null,null)),e["ɵdid"](3,212992,null,0,vl.b,[vl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵeld"](4,0,null,0,1,"tab",[["heading","Targets"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/iscsi/targets")&&e),e}),null,null)),e["ɵdid"](5,212992,null,0,vl.b,[vl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"})],(function(l,n){var u=n.component;l(n,3,0,"Overview","/block/iscsi/overview"===u.url),l(n,5,0,"Targets","/block/iscsi/targets"===u.url)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby),l(n,4,0,e["ɵnov"](n,5).id,e["ɵnov"](n,5).active,e["ɵnov"](n,5).addClass,e["ɵnov"](n,5).role,e["ɵnov"](n,5).ariaLabelledby)}))}var Ju=u("roDX"),Wu=u("my5R"),Qu=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Yu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"cd-sparkline",[],null,null,null,Lu.b,Lu.a)),e["ɵdid"](2,638976,null,0,zu.a,[B.a],{data:[0,"data"],isBinary:[1,"isBinary"]},null)],(function(l,n){l(n,2,0,n.parent.context.value,n.parent.context.row.cdIsBinary)}),null)}function Xu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" n/a "]))],null,null)}function Hu(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Yu)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Xu)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,"user:rbd"===n.context.row.backstore),l(n,3,0,"user:rbd"!==n.context.row.backstore)}),null)}function le(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," /s "]))],null,(function(l,n){l(n,1,0,n.parent.context.value)}))}function ne(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" n/a "]))],null,null)}function ue(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,le)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ne)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,"user:rbd"===n.context.row.backstore),l(n,3,0,"user:rbd"!==n.context.row.backstore)}),null)}function ee(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "])),e["ɵppd"](2,1)],null,(function(l,n){var u=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent,0),n.parent.context.value));l(n,1,0,u)}))}function ae(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" n/a "]))],null,null)}function te(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,ee)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ae)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,"user:rbd"===n.context.row.backstore),l(n,3,0,"user:rbd"!==n.context.row.backstore)}),null)}function oe(l){return e["ɵvid"](0,[e["ɵpid"](0,L.a,[]),e["ɵqud"](402653184,1,{iscsiSparklineTpl:0}),e["ɵqud"](402653184,2,{iscsiPerSecondTpl:0}),e["ɵqud"](402653184,3,{iscsiRelativeDateTpl:0}),(l()(),e["ɵeld"](4,0,null,null,1,"cd-iscsi-tabs",[],null,null,null,Zu,Ku)),e["ɵdid"](5,114688,null,0,Gu,[fl.m],null,null),(l()(),e["ɵeld"](6,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Gateways"])),(l()(),e["ɵeld"](8,0,null,null,1,"cd-table",[],null,[[null,"fetchData"]],(function(l,n,u){var e=!0;return"fetchData"===n&&(e=!1!==l.component.refresh()&&e),e}),jl.b,jl.a)),e["ɵdid"](9,2867200,null,0,Ul.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},{fetchData:"fetchData"}),(l()(),e["ɵeld"](10,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Images"])),(l()(),e["ɵeld"](12,0,null,null,1,"cd-table",[],null,null,null,jl.b,jl.a)),e["ɵdid"](13,2867200,null,0,Ul.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},null),(l()(),e["ɵand"](0,[[1,2],["iscsiSparklineTpl",2]],null,0,null,Hu)),(l()(),e["ɵand"](0,[[2,2],["iscsiPerSecondTpl",2]],null,0,null,ue)),(l()(),e["ɵand"](0,[[3,2],["iscsiRelativeDateTpl",2]],null,0,null,te))],(function(l,n){var u=n.component;l(n,5,0),l(n,9,0,u.gateways,u.gatewaysColumns),l(n,13,0,u.images,u.imagesColumns)}),null)}function de(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-iscsi",[],null,null,null,oe,Qu)),e["ɵdid"](1,114688,null,0,Ju.a,[Wu.a,M.a,z.a,A.a],null,null)],(function(l,n){l(n,1,0)}),null)}var ie=e["ɵccf"]("cd-iscsi",Ju.a,de,{},{},[]),se=u("DqMs"),re=u("/NlG"),ce=u("i4WA"),pe=u("6qls"),me=u("tz6c"),ge=u("3ris"),fe=u("e/kN"),ve=e["ɵcrt"]({encapsulation:0,styles:[["tabset.tabset>ul{border-bottom:0;float:left;display:block;margin-right:20px;border-right:1px solid #ddd;padding-right:15px}"]],data:{}});function Ce(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Available information:"])),(l()(),e["ɵeld"](4,0,null,null,1,"pre",[],null,null,null,null,null)),(l()(),e["ɵted"](5,null,["",""]))],null,(function(l,n){l(n,5,0,n.component.status)}))}function be(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,"cd-alert-panel",[["title","iSCSI Targets not available"],["type","info"]],null,null,null,se.b,se.a)),e["ɵdid"](1,114688,null,0,re.a,[A.a],{title:[0,"title"],type:[1,"type"]},null),(l()(),e["ɵeld"](2,0,null,0,4,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Please consult the "])),(l()(),e["ɵeld"](4,0,null,null,1,"cd-doc",[["section","iscsi"]],null,null,null,ce.b,ce.a)),e["ɵdid"](5,114688,null,0,pe.a,[me.a,A.a],{section:[0,"section"]},null),(l()(),e["ɵted"](-1,null,[" on how to configure and enable the iSCSI Targets management functionality."])),(l()(),e["ɵand"](16777216,null,0,1,null,Ce)),e["ɵdid"](8,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0,"iSCSI Targets not available","info"),l(n,5,0,"iscsi"),l(n,8,0,u.status)}),null)}function he(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-iscsi-target-details",[["cdTableDetail",""]],null,null,null,x.c,x.b)),e["ɵdid"](1,638976,null,0,ge.a,[A.a,z.a,S.a],{selection:[0,"selection"],settings:[1,"settings"],cephIscsiConfigVersion:[2,"cephIscsiConfigVersion"]},null)],(function(l,n){var u=n.component;l(n,1,0,u.expandedRow,u.settings,u.cephIscsiConfigVersion)}),null)}function Re(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,13,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","target_iqn"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(l,n,u){var e=!0,a=l.component;return"setExpandedRow"===n&&(e=!1!==a.setExpandedRow(u)&&e),"updateSelection"===n&&(e=!1!==a.updateSelection(u)&&e),e}),jl.b,jl.a)),e["ɵdid"](1,2867200,[[1,4],["table",4]],0,Ul.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](2,0,null,1,9,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"cd-table-actions",[["class","btn-group"]],null,null,null,Bl.b,Bl.a)),e["ɵdid"](4,114688,null,0,$l.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](5,0,null,null,6,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.configureDiscoveryAuth()&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1),(l()(),e["ɵeld"](10,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Discovery authentication"])),(l()(),e["ɵand"](16777216,null,3,1,null,he)),e["ɵdid"](13,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0,u.targets,u.columns,"flex",!0,"target_iqn","true","single"),l(n,4,0,u.permission,u.selection,u.tableActions);var e=l(n,9,0,u.icons.key);l(n,8,0,e),l(n,13,0,u.expandedRow)}),null)}function Ie(l){return e["ɵvid"](0,[e["ɵqud"](671088640,1,{table:0}),(l()(),e["ɵeld"](1,0,null,null,1,"cd-iscsi-tabs",[],null,null,null,Zu,Ku)),e["ɵdid"](2,114688,null,0,Gu,[fl.m],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,be)),e["ɵdid"](4,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Re)),e["ɵdid"](6,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,2,0),l(n,4,0,!1===u.available),l(n,6,0,!0===u.available)}),null)}function Ne(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-iscsi-target-list",[],null,null,null,Ie,ve)),e["ɵprd"](131584,null,Ll.a,Ll.a,[zl.a,Gl.a]),e["ɵdid"](2,245760,null,0,fe.a,[ml.a,A.a,Wu.a,G.a,Ll.a,H.a,rl.b,Wl.a,Ql.b],null,null)],(function(l,n){l(n,2,0)}),null)}var Ee=e["ɵccf"]("cd-iscsi-target-list",fe.a,Ne,{},{},[]),we=u("D4zM"),Te=u("OcYo"),ye=u("EApP"),Ve=u("WiuZ"),xe=u("wnGv"),qe=u("LvDl");class ke{constructor(l){this.ngControl=l}onInput(l){this.setValue(l)}setValue(l){l=qe.isString(l)?l.trim():l,this.ngControl.control.setValue(l)}}var _e=u("gr3l"),De=e["ɵcrt"]({encapsulation:0,styles:[[".cd-mb[_ngcontent-%COMP%]{margin-bottom:10px}"]],data:{}});function Fe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Pe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["IQN has wrong pattern."]))],null,null)}function Se(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["An IQN has the following notation 'iqn.$year-$month.$reversedAddress:$definedName'"])),(l()(),e["ɵeld"](3,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309"])),(l()(),e["ɵeld"](6,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,1,"a",[["href","https://en.wikipedia.org/wiki/ISCSI#Addressing"],["target","_blank"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["More information"]))],null,null)}function Ae(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This target has modified advanced settings."]))],null,null)}function Oe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removePortal(l.context.index,l.context.$implicit)&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1)],(function(l,n){var u=l(n,9,0,n.component.icons.destroy);l(n,8,0,u)}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function je(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["At least "," gateways are required."]))],null,(function(l,n){l(n,1,0,n.component.minimum_gateways)}))}function Ue(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["lun: ",""]))],null,(function(l,n){l(n,1,0,n.component.imagesSettings[n.parent.context.$implicit].lun)}))}function Be(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(l()(),e["ɵted"](1,null,["Backstore: ",". "])),e["ɵppd"](2,1)],null,(function(l,n){var u=n.component,a=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent.parent,2),u.imagesSettings[n.parent.context.$implicit].backstore));l(n,1,0,a)}))}function $e(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This image has modified settings."]))],null,null)}function Me(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,21,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,15,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Ue)),e["ɵdid"](6,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](7,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.imageSettingsModal(l.context.$implicit)&&e),e}),null,null)),(l()(),e["ɵeld"](8,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](10,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](11,1),(l()(),e["ɵeld"](12,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeImage(l.context.index,l.context.$implicit)&&e),e}),null,null)),(l()(),e["ɵeld"](13,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](15,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](16,1),(l()(),e["ɵeld"](17,0,null,null,4,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Be)),e["ɵdid"](19,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,$e)),e["ɵdid"](21,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,6,0,u.api_version>=1);var e=l(n,11,0,u.icons.deepCheck);l(n,10,0,e);var a=l(n,16,0,u.icons.destroy);l(n,15,0,a),l(n,19,0,u.backstores.length>1),l(n,21,0,u.hasAdvancedSettings(u.imagesSettings[n.context.$implicit][u.imagesSettings[n.context.$implicit].backstore]))}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function Le(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Duplicated LUN numbers."]))],null,null)}function ze(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Duplicated WWN."]))],null,null)}function Ge(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ke(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function Ze(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Je(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function We(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Qe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function Ye(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Xe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function He(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,95,"div",[["formGroupName","auth"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](1,212992,null,0,el.m,[[3,el.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.d,null,[el.m]),e["ɵdid"](3,16384,null,0,el.s,[[4,el.d]],null,null),(l()(),e["ɵeld"](4,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](5,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](8,0,null,0,2,"label",[["class","cd-col-form-label"],["for","target_user"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User"])),(l()(),e["ɵeld"](11,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","user"],["id","target_user"],["name","target_user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,13).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,13)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](13,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](15,671744,[[9,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](17,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](18,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](19,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ge)),e["ɵdid"](21,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ke)),e["ɵdid"](23,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](24,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](25,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,11,{FormControlNames:1}),e["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),e["ɵeld"](28,0,null,0,2,"label",[["class","cd-col-form-label"],["for","target_password"]],null,null,null,null,null)),(l()(),e["ɵeld"](29,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password"])),(l()(),e["ɵeld"](31,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](32,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](33,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","password"],["id","target_password"],["name","target_password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,34)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,34).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,34)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,34)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](34,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](36,671744,[[11,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](38,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](39,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](40,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](41,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](42,0,null,null,1,"button",[["cdPasswordButton","target_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,43).onClick()&&a),a}),null,null)),e["ɵdid"](43,81920,null,0,we.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](44,0,null,null,1,"button",[["cdCopy2ClipboardButton","target_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,45).onClick()&&a),a}),null,null)),e["ɵdid"](45,81920,null,0,Te.a,[e.ElementRef,e.Renderer2,ye.j,A.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ze)),e["ɵdid"](47,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Je)),e["ɵdid"](49,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](50,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](51,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,13,{FormControlNames:1}),e["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),e["ɵeld"](54,0,null,0,2,"label",[["class","cd-col-form-label"],["for","target_mutual_user"]],null,null,null,null,null)),(l()(),e["ɵeld"](55,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mutual User"])),(l()(),e["ɵeld"](57,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](58,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","mutual_user"],["id","target_mutual_user"],["name","target_mutual_user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,59)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,59).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,59)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,59)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](59,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](61,671744,[[13,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](63,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](64,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](65,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,We)),e["ɵdid"](67,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Qe)),e["ɵdid"](69,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](70,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](71,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,15,{FormControlNames:1}),e["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),e["ɵeld"](74,0,null,0,2,"label",[["class","cd-col-form-label"],["for","target_mutual_password"]],null,null,null,null,null)),(l()(),e["ɵeld"](75,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mutual Password"])),(l()(),e["ɵeld"](77,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](78,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](79,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","mutual_password"],["id","target_mutual_password"],["name","target_mutual_password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,80)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,80).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,80)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,80)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](80,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](82,671744,[[15,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](84,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](85,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](86,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](87,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](88,0,null,null,1,"button",[["cdPasswordButton","target_mutual_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,89).onClick()&&a),a}),null,null)),e["ɵdid"](89,81920,null,0,we.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](90,0,null,null,1,"button",[["cdCopy2ClipboardButton","target_mutual_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,91).onClick()&&a),a}),null,null)),e["ɵdid"](91,81920,null,0,Te.a,[e.ElementRef,e.Renderer2,ye.j,A.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ye)),e["ɵdid"](93,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Xe)),e["ɵdid"](95,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0,"auth"),l(n,5,0),l(n,15,0,"user"),l(n,19,0,"user"),l(n,21,0,u.targetForm.showError("user",e["ɵnov"](n.parent,2),"required")),l(n,23,0,u.targetForm.showError("user",e["ɵnov"](n.parent,2),"pattern")),l(n,25,0),l(n,36,0,"password"),l(n,40,0,"password"),l(n,43,0,"target_password"),l(n,45,0,"target_password"),l(n,47,0,u.targetForm.showError("password",e["ɵnov"](n.parent,2),"required")),l(n,49,0,u.targetForm.showError("password",e["ɵnov"](n.parent,2),"pattern")),l(n,51,0),l(n,61,0,"mutual_user"),l(n,65,0,"mutual_user"),l(n,67,0,u.targetForm.showError("mutual_user",e["ɵnov"](n.parent,2),"required")),l(n,69,0,u.targetForm.showError("mutual_user",e["ɵnov"](n.parent,2),"pattern")),l(n,71,0),l(n,82,0,"mutual_password"),l(n,86,0,"mutual_password"),l(n,89,0,"target_mutual_password"),l(n,91,0,"target_mutual_password"),l(n,93,0,u.targetForm.showError("mutual_password",e["ɵnov"](n.parent,2),"required")),l(n,95,0,u.targetForm.showError("mutual_password",e["ɵnov"](n.parent,2),"pattern"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,3).ngClassUntouched,e["ɵnov"](n,3).ngClassTouched,e["ɵnov"](n,3).ngClassPristine,e["ɵnov"](n,3).ngClassDirty,e["ɵnov"](n,3).ngClassValid,e["ɵnov"](n,3).ngClassInvalid,e["ɵnov"](n,3).ngClassPending),l(n,4,0,e["ɵnov"](n,5).hasErrors,e["ɵnov"](n,5).hasSuccess),l(n,12,0,e["ɵnov"](n,17).ngClassUntouched,e["ɵnov"](n,17).ngClassTouched,e["ɵnov"](n,17).ngClassPristine,e["ɵnov"](n,17).ngClassDirty,e["ɵnov"](n,17).ngClassValid,e["ɵnov"](n,17).ngClassInvalid,e["ɵnov"](n,17).ngClassPending,e["ɵnov"](n,19).validClass,e["ɵnov"](n,19).invalidClass),l(n,24,0,e["ɵnov"](n,25).hasErrors,e["ɵnov"](n,25).hasSuccess),l(n,33,0,e["ɵnov"](n,38).ngClassUntouched,e["ɵnov"](n,38).ngClassTouched,e["ɵnov"](n,38).ngClassPristine,e["ɵnov"](n,38).ngClassDirty,e["ɵnov"](n,38).ngClassValid,e["ɵnov"](n,38).ngClassInvalid,e["ɵnov"](n,38).ngClassPending,e["ɵnov"](n,40).validClass,e["ɵnov"](n,40).invalidClass),l(n,50,0,e["ɵnov"](n,51).hasErrors,e["ɵnov"](n,51).hasSuccess),l(n,58,0,e["ɵnov"](n,63).ngClassUntouched,e["ɵnov"](n,63).ngClassTouched,e["ɵnov"](n,63).ngClassPristine,e["ɵnov"](n,63).ngClassDirty,e["ɵnov"](n,63).ngClassValid,e["ɵnov"](n,63).ngClassInvalid,e["ɵnov"](n,63).ngClassPending,e["ɵnov"](n,65).validClass,e["ɵnov"](n,65).invalidClass),l(n,70,0,e["ɵnov"](n,71).hasErrors,e["ɵnov"](n,71).hasSuccess),l(n,79,0,e["ɵnov"](n,84).ngClassUntouched,e["ɵnov"](n,84).ngClassTouched,e["ɵnov"](n,84).ngClassPristine,e["ɵnov"](n,84).ngClassDirty,e["ɵnov"](n,84).ngClassValid,e["ɵnov"](n,84).ngClassInvalid,e["ɵnov"](n,84).ngClassPending,e["ɵnov"](n,86).validClass,e["ɵnov"](n,86).invalidClass)}))}function la(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiator IQN needs to be unique."]))],null,null)}function na(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ua(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["IQN has wrong pattern."]))],null,null)}function ea(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function aa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function ta(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function oa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function da(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ia(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function sa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ra(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function ca(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeInitiatorImage(l.parent.context.$implicit,l.context.index,l.parent.context.index,l.context.$implicit)&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1)],(function(l,n){var u=l(n,9,0,n.component.icons.destroy);l(n,8,0,u)}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function pa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiator belongs to a group. Images will be configure in the group."]))],null,null)}function ma(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,null,null,Ve.b,Ve.a)),e["ɵdid"](3,638976,null,0,xe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},null),(l()(),e["ɵeld"](4,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](6,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](7,1),(l()(),e["ɵeld"](8,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add image"]))],(function(l,n){var u=n.component,e=n.parent.context.$implicit.getValue("luns");l(n,3,0,"btn btn-light float-right",e,u.imagesInitiatorSelections[n.parent.context.index],u.messages.initiatorImage);var a=l(n,7,0,u.icons.add);l(n,6,0,a)}),null)}function ga(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,141,"div",[["class","card mb-2"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](1,212992,null,0,el.m,[[3,el.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.d,null,[el.m]),e["ɵdid"](3,16384,null,0,el.s,[[4,el.d]],null,null),(l()(),e["ɵeld"](4,0,null,null,8,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiator"])),(l()(),e["ɵted"](7,null,[": "," "])),(l()(),e["ɵeld"](8,0,null,null,4,"button",[["class","close"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeInitiator(l.context.index)&&e),e}),null,null)),(l()(),e["ɵeld"](9,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](11,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](12,1),(l()(),e["ɵeld"](13,0,null,null,128,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](14,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](15,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,19,{FormControlNames:1}),e["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),e["ɵeld"](18,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","client_iqn"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Client IQN"])),(l()(),e["ɵeld"](20,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](21,0,null,null,8,"input",[["cdTrim",""],["class","form-control"],["formControlName","client_iqn"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"blur"],[null,"input"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0,t=l.component;return"input"===n&&(a=!1!==e["ɵnov"](l,22)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,22).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,22)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,22)._compositionEnd(u.target.value)&&a),"input"===n&&(a=!1!==e["ɵnov"](l,27).onInput(u.target.value)&&a),"blur"===n&&(a=!1!==t.updatedInitiatorSelector()&&a),a}),null,null)),e["ɵdid"](22,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](24,671744,[[19,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](26,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](27,16384,null,0,ke,[el.q],null,null),e["ɵdid"](28,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](29,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,la)),e["ɵdid"](31,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,na)),e["ɵdid"](33,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ua)),e["ɵdid"](35,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](36,0,null,null,92,null,null,null,null,null,null,null)),e["ɵdid"](37,212992,null,0,el.m,[[3,el.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.d,null,[el.m]),e["ɵdid"](39,16384,null,0,el.s,[[4,el.d]],null,null),(l()(),e["ɵeld"](40,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](41,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,21,{FormControlNames:1}),e["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),e["ɵeld"](44,0,null,0,1,"label",[["class","cd-col-form-label"],["for","user"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User"])),(l()(),e["ɵeld"](46,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](47,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","user"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,48)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,48).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,48)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,48)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](48,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](50,671744,[[21,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](52,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](53,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](54,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ea)),e["ɵdid"](56,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,aa)),e["ɵdid"](58,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](59,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](60,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,23,{FormControlNames:1}),e["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),e["ɵeld"](63,0,null,0,1,"label",[["class","cd-col-form-label"],["for","password"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password"])),(l()(),e["ɵeld"](65,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](66,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](67,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","password"],["type","password"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,68)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,68).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,68)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,68)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](68,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](70,671744,[[23,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](72,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](73,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](74,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](75,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](76,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,77).onClick()&&a),a}),null,null)),e["ɵdid"](77,81920,null,0,we.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](78,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,79).onClick()&&a),a}),null,null)),e["ɵdid"](79,81920,null,0,Te.a,[e.ElementRef,e.Renderer2,ye.j,A.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ta)),e["ɵdid"](81,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,oa)),e["ɵdid"](83,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](84,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](85,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,25,{FormControlNames:1}),e["ɵqud"](603979776,26,{messagesBlock:0}),(l()(),e["ɵeld"](88,0,null,0,2,"label",[["class","cd-col-form-label"],["for","mutual_user"]],null,null,null,null,null)),(l()(),e["ɵeld"](89,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mutual User"])),(l()(),e["ɵeld"](91,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](92,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","mutual_user"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,93)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,93).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,93)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,93)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](93,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](95,671744,[[25,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](97,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](98,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](99,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,da)),e["ɵdid"](101,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ia)),e["ɵdid"](103,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](104,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](105,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,27,{FormControlNames:1}),e["ɵqud"](603979776,28,{messagesBlock:0}),(l()(),e["ɵeld"](108,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mutual_password"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mutual Password"])),(l()(),e["ɵeld"](110,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](111,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](112,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","mutual_password"],["type","password"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,113)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,113).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,113)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,113)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](113,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](115,671744,[[27,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](117,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](118,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](119,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](120,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](121,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,122).onClick()&&a),a}),null,null)),e["ɵdid"](122,81920,null,0,we.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](123,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,124).onClick()&&a),a}),null,null)),e["ɵdid"](124,81920,null,0,Te.a,[e.ElementRef,e.Renderer2,ye.j,A.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,sa)),e["ɵdid"](126,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ra)),e["ɵdid"](128,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](129,0,null,null,12,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](130,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,29,{FormControlNames:1}),e["ɵqud"](603979776,30,{messagesBlock:0}),(l()(),e["ɵeld"](133,0,null,0,1,"label",[["class","cd-col-form-label"],["for","luns"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Images"])),(l()(),e["ɵeld"](135,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ca)),e["ɵdid"](137,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pa)),e["ɵdid"](139,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ma)),e["ɵdid"](141,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0,n.context.index);var a=l(n,12,0,u.icons.destroy);l(n,11,0,a),l(n,15,0),l(n,24,0,"client_iqn"),l(n,29,0,"client_iqn");var t=n.context.$implicit.showError("client_iqn",e["ɵnov"](n.parent.parent,2),"notUnique");l(n,31,0,t);var o=n.context.$implicit.showError("client_iqn",e["ɵnov"](n.parent.parent,2),"required");l(n,33,0,o);var d=n.context.$implicit.showError("client_iqn",e["ɵnov"](n.parent.parent,2),"pattern");l(n,35,0,d),l(n,37,0,"auth"),l(n,41,0),l(n,50,0,"user"),l(n,54,0,"user");var i=n.context.$implicit.showError("user",e["ɵnov"](n.parent.parent,2),"required");l(n,56,0,i);var s=n.context.$implicit.showError("user",e["ɵnov"](n.parent.parent,2),"pattern");l(n,58,0,s),l(n,60,0),l(n,70,0,"password"),l(n,74,0,"password"),l(n,77,0,"password"+n.context.index),l(n,79,0,"password"+n.context.index);var r=n.context.$implicit.showError("password",e["ɵnov"](n.parent.parent,2),"required");l(n,81,0,r);var c=n.context.$implicit.showError("password",e["ɵnov"](n.parent.parent,2),"pattern");l(n,83,0,c),l(n,85,0),l(n,95,0,"mutual_user"),l(n,99,0,"mutual_user");var p=n.context.$implicit.showError("mutual_user",e["ɵnov"](n.parent.parent,2),"required");l(n,101,0,p);var m=n.context.$implicit.showError("mutual_user",e["ɵnov"](n.parent.parent,2),"pattern");l(n,103,0,m),l(n,105,0),l(n,115,0,"mutual_password"),l(n,119,0,"mutual_password"),l(n,122,0,"mutual_password"+n.context.index),l(n,124,0,"mutual_password"+n.context.index);var g=n.context.$implicit.showError("mutual_password",e["ɵnov"](n.parent.parent,2),"required");l(n,126,0,g);var f=n.context.$implicit.showError("mutual_password",e["ɵnov"](n.parent.parent,2),"pattern");l(n,128,0,f),l(n,130,0);var v=n.context.$implicit.getValue("luns");l(n,137,0,v);var C=n.context.$implicit.getValue("cdIsInGroup");l(n,139,0,C);var b=!n.context.$implicit.getValue("cdIsInGroup");l(n,141,0,b)}),(function(l,n){l(n,0,0,e["ɵnov"](n,3).ngClassUntouched,e["ɵnov"](n,3).ngClassTouched,e["ɵnov"](n,3).ngClassPristine,e["ɵnov"](n,3).ngClassDirty,e["ɵnov"](n,3).ngClassValid,e["ɵnov"](n,3).ngClassInvalid,e["ɵnov"](n,3).ngClassPending);var u=n.context.$implicit.getValue("client_iqn");l(n,7,0,u),l(n,14,0,e["ɵnov"](n,15).hasErrors,e["ɵnov"](n,15).hasSuccess),l(n,21,0,e["ɵnov"](n,26).ngClassUntouched,e["ɵnov"](n,26).ngClassTouched,e["ɵnov"](n,26).ngClassPristine,e["ɵnov"](n,26).ngClassDirty,e["ɵnov"](n,26).ngClassValid,e["ɵnov"](n,26).ngClassInvalid,e["ɵnov"](n,26).ngClassPending,e["ɵnov"](n,29).validClass,e["ɵnov"](n,29).invalidClass),l(n,40,0,e["ɵnov"](n,41).hasErrors,e["ɵnov"](n,41).hasSuccess),l(n,47,0,"user"+n.context.index,e["ɵnov"](n,52).ngClassUntouched,e["ɵnov"](n,52).ngClassTouched,e["ɵnov"](n,52).ngClassPristine,e["ɵnov"](n,52).ngClassDirty,e["ɵnov"](n,52).ngClassValid,e["ɵnov"](n,52).ngClassInvalid,e["ɵnov"](n,52).ngClassPending,e["ɵnov"](n,54).validClass,e["ɵnov"](n,54).invalidClass),l(n,59,0,e["ɵnov"](n,60).hasErrors,e["ɵnov"](n,60).hasSuccess),l(n,67,0,"password"+n.context.index,e["ɵnov"](n,72).ngClassUntouched,e["ɵnov"](n,72).ngClassTouched,e["ɵnov"](n,72).ngClassPristine,e["ɵnov"](n,72).ngClassDirty,e["ɵnov"](n,72).ngClassValid,e["ɵnov"](n,72).ngClassInvalid,e["ɵnov"](n,72).ngClassPending,e["ɵnov"](n,74).validClass,e["ɵnov"](n,74).invalidClass),l(n,84,0,e["ɵnov"](n,85).hasErrors,e["ɵnov"](n,85).hasSuccess),l(n,92,0,"mutual_user"+n.context.index,e["ɵnov"](n,97).ngClassUntouched,e["ɵnov"](n,97).ngClassTouched,e["ɵnov"](n,97).ngClassPristine,e["ɵnov"](n,97).ngClassDirty,e["ɵnov"](n,97).ngClassValid,e["ɵnov"](n,97).ngClassInvalid,e["ɵnov"](n,97).ngClassPending,e["ɵnov"](n,99).validClass,e["ɵnov"](n,99).invalidClass),l(n,104,0,e["ɵnov"](n,105).hasErrors,e["ɵnov"](n,105).hasSuccess),l(n,112,0,"mutual_password"+n.context.index,e["ɵnov"](n,117).ngClassUntouched,e["ɵnov"](n,117).ngClassTouched,e["ɵnov"](n,117).ngClassPristine,e["ɵnov"](n,117).ngClassDirty,e["ɵnov"](n,117).ngClassValid,e["ɵnov"](n,117).ngClassInvalid,e["ɵnov"](n,117).ngClassPending,e["ɵnov"](n,119).validClass,e["ɵnov"](n,119).invalidClass),l(n,129,0,e["ɵnov"](n,130).hasErrors,e["ɵnov"](n,130).hasSuccess)}))}function fa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["No items added."]))],null,null)}function va(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](1,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,17,{FormControlNames:1}),e["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","initiators"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiators"])),(l()(),e["ɵeld"](6,0,null,0,17,"div",[["class","cd-col-form-input"],["formArrayName","initiators"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](7,212992,null,0,el.g,[[3,el.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.d,null,[el.g]),e["ɵdid"](9,16384,null,0,el.s,[[4,el.d]],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,ga)),e["ɵdid"](11,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](12,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,9,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,fa)),e["ɵdid"](15,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](16,0,null,null,6,"button",[["class","btn btn-light float-right"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(l.component.addInitiator(),e=!1),e}),null,null)),(l()(),e["ɵeld"](17,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](19,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](20,1),(l()(),e["ɵeld"](21,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add initiator"])),(l()(),e["ɵeld"](23,0,null,null,0,"hr",[],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,1,0),l(n,7,0,"initiators"),l(n,11,0,u.initiators.controls),l(n,15,0,0===u.initiators.controls.length);var e=l(n,20,0,u.icons.add);l(n,19,0,e)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,9).ngClassUntouched,e["ɵnov"](n,9).ngClassTouched,e["ɵnov"](n,9).ngClassPristine,e["ɵnov"](n,9).ngClassDirty,e["ɵnov"](n,9).ngClassValid,e["ɵnov"](n,9).ngClassInvalid,e["ɵnov"](n,9).ngClassPending)}))}function Ca(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeGroupInitiator(l.parent.context.$implicit,l.context.index,l.parent.context.index)&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1)],(function(l,n){var u=l(n,9,0,n.component.icons.destroy);l(n,8,0,u)}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function ba(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeGroupDisk(l.parent.context.$implicit,l.context.index,l.parent.context.index)&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1)],(function(l,n){var u=l(n,9,0,n.component.icons.destroy);l(n,8,0,u)}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function ha(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,70,"div",[["class","card mb-2"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](1,212992,null,0,el.m,[[3,el.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.d,null,[el.m]),e["ɵdid"](3,16384,null,0,el.s,[[4,el.d]],null,null),(l()(),e["ɵeld"](4,0,null,null,8,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Group"])),(l()(),e["ɵted"](7,null,[": "," "])),(l()(),e["ɵeld"](8,0,null,null,4,"button",[["class","close"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.groups.removeAt(l.context.index)&&e),e}),null,null)),(l()(),e["ɵeld"](9,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](11,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](12,1),(l()(),e["ɵeld"](13,0,null,null,57,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](14,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](15,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,33,{FormControlNames:1}),e["ɵqud"](603979776,34,{messagesBlock:0}),(l()(),e["ɵeld"](18,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","group_id"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](20,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](21,0,null,null,7,"input",[["class","form-control"],["formControlName","group_id"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,22)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,22).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,22)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,22)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](22,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](24,671744,[[33,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](26,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](27,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](28,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](29,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](30,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,35,{FormControlNames:1}),e["ɵqud"](603979776,36,{messagesBlock:0}),(l()(),e["ɵeld"](33,0,null,0,2,"label",[["class","cd-col-form-label"],["for","members"]],null,null,null,null,null)),(l()(),e["ɵeld"](34,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiators"])),(l()(),e["ɵeld"](36,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Ca)),e["ɵdid"](38,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](39,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](40,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](41,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,[[null,"selection"]],(function(l,n,u){var e=!0;return"selection"===n&&(e=!1!==l.component.onGroupMemberSelection(u)&&e),e}),Ve.b,Ve.a)),e["ɵdid"](42,638976,null,0,xe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},{selection:"selection"}),(l()(),e["ɵeld"](43,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](45,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](46,1),(l()(),e["ɵeld"](47,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add initiator"])),(l()(),e["ɵeld"](49,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](50,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](51,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,37,{FormControlNames:1}),e["ɵqud"](603979776,38,{messagesBlock:0}),(l()(),e["ɵeld"](54,0,null,0,2,"label",[["class","cd-col-form-label"],["for","disks"]],null,null,null,null,null)),(l()(),e["ɵeld"](55,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Images"])),(l()(),e["ɵeld"](57,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ba)),e["ɵdid"](59,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](60,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](61,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](62,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,null,null,Ve.b,Ve.a)),e["ɵdid"](63,638976,null,0,xe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},null),(l()(),e["ɵeld"](64,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](66,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](67,1),(l()(),e["ɵeld"](68,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add image"])),(l()(),e["ɵeld"](70,0,null,null,0,"hr",[],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,1,0,n.context.index);var e=l(n,12,0,u.icons.destroy);l(n,11,0,e),l(n,15,0),l(n,24,0,"group_id"),l(n,28,0,"group_id"),l(n,30,0);var a=n.context.$implicit.getValue("members");l(n,38,0,a);var t=n.context.$implicit.getValue("members");l(n,42,0,"btn btn-light float-right",t,u.groupMembersSelections[n.context.index],u.messages.groupInitiator);var o=l(n,46,0,u.icons.add);l(n,45,0,o),l(n,51,0);var d=n.context.$implicit.getValue("disks");l(n,59,0,d);var i=n.context.$implicit.getValue("disks");l(n,63,0,"btn btn-light float-right",i,u.groupDiskSelections[n.context.index],u.messages.initiatorImage);var s=l(n,67,0,u.icons.add);l(n,66,0,s)}),(function(l,n){l(n,0,0,e["ɵnov"](n,3).ngClassUntouched,e["ɵnov"](n,3).ngClassTouched,e["ɵnov"](n,3).ngClassPristine,e["ɵnov"](n,3).ngClassDirty,e["ɵnov"](n,3).ngClassValid,e["ɵnov"](n,3).ngClassInvalid,e["ɵnov"](n,3).ngClassPending);var u=n.context.$implicit.getValue("group_id");l(n,7,0,u),l(n,14,0,e["ɵnov"](n,15).hasErrors,e["ɵnov"](n,15).hasSuccess),l(n,21,0,e["ɵnov"](n,26).ngClassUntouched,e["ɵnov"](n,26).ngClassTouched,e["ɵnov"](n,26).ngClassPristine,e["ɵnov"](n,26).ngClassDirty,e["ɵnov"](n,26).ngClassValid,e["ɵnov"](n,26).ngClassInvalid,e["ɵnov"](n,26).ngClassPending,e["ɵnov"](n,28).validClass,e["ɵnov"](n,28).invalidClass),l(n,29,0,e["ɵnov"](n,30).hasErrors,e["ɵnov"](n,30).hasSuccess),l(n,50,0,e["ɵnov"](n,51).hasErrors,e["ɵnov"](n,51).hasSuccess)}))}function Ra(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["No items added."]))],null,null)}function Ia(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](1,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,31,{FormControlNames:1}),e["ɵqud"](603979776,32,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","initiators"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Groups"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"],["formArrayName","groups"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](7,212992,null,0,el.g,[[3,el.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.d,null,[el.g]),e["ɵdid"](9,16384,null,0,el.s,[[4,el.d]],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,ha)),e["ɵdid"](11,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](12,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,9,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Ra)),e["ɵdid"](15,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](16,0,null,null,6,"button",[["class","btn btn-light float-right"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(l.component.addGroup(),e=!1),e}),null,null)),(l()(),e["ɵeld"](17,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](19,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](20,1),(l()(),e["ɵeld"](21,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add group"]))],(function(l,n){var u=n.component;l(n,1,0),l(n,7,0,"groups"),l(n,11,0,u.groups.controls),l(n,15,0,0===u.groups.controls.length);var e=l(n,20,0,u.icons.add);l(n,19,0,e)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,9).ngClassUntouched,e["ɵnov"](n,9).ngClassTouched,e["ɵnov"](n,9).ngClassPristine,e["ɵnov"](n,9).ngClassDirty,e["ɵnov"](n,9).ngClassValid,e["ɵnov"](n,9).ngClassInvalid,e["ɵnov"](n,9).ngClassPending)}))}function Na(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,137,"form",[["name","targetForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var a=!0;return"submit"===n&&(a=!1!==e["ɵnov"](l,2).onSubmit(u)&&a),"reset"===n&&(a=!1!==e["ɵnov"](l,2).onReset()&&a),"submit"===n&&(a=!1!==e["ɵnov"](l,5).onSubmit()&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,el.G,[],null,null),e["ɵdid"](2,540672,[["formDir",4]],0,el.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,el.d,null,[el.l]),e["ɵdid"](4,16384,null,0,el.s,[[4,el.d]],null,null),e["ɵdid"](5,16384,null,0,Nl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](6,0,null,null,131,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](8,null,[""," ",""])),e["ɵppd"](9,1),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,117,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](13,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","target_iqn"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Target IQN"])),(l()(),e["ɵeld"](18,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](19,0,null,null,15,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](20,0,null,null,8,"input",[["cdTrim",""],["class","form-control"],["formControlName","target_iqn"],["id","target_iqn"],["name","target_iqn"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,21)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,21).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,21)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,21)._compositionEnd(u.target.value)&&a),"input"===n&&(a=!1!==e["ɵnov"](l,26).onInput(u.target.value)&&a),a}),null,null)),e["ɵdid"](21,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](23,671744,[[1,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](25,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](26,16384,null,0,ke,[el.q],null,null),e["ɵdid"](27,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](28,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](29,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](30,0,null,null,4,"button",[["class","btn btn-light"],["id","ecp-info-button"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.targetSettingsModal()&&e),e}),null,null)),(l()(),e["ɵeld"](31,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](33,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](34,1),(l()(),e["ɵand"](16777216,null,null,1,null,Fe)),e["ɵdid"](36,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Pe)),e["ɵdid"](38,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Se)),e["ɵdid"](40,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ae)),e["ɵdid"](42,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](43,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](44,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](45,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](48,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","portals"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Portals"])),(l()(),e["ɵeld"](50,0,null,0,23,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Oe)),e["ɵdid"](52,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](53,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](54,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](55,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,[[null,"selection"]],(function(l,n,u){var e=!0;return"selection"===n&&(e=!1!==l.component.onPortalSelection(u)&&e),e}),Ve.b,Ve.a)),e["ɵdid"](56,638976,null,0,xe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},{selection:"selection"}),(l()(),e["ɵeld"](57,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](59,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](60,1),(l()(),e["ɵeld"](61,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add portal"])),(l()(),e["ɵeld"](63,0,null,null,7,"input",[["class","form-control"],["formControlName","portals"],["id","portals"],["name","portals"],["type","hidden"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,64)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,64).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,64)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,64)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](64,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](66,671744,[[3,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](68,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](69,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](70,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,je)),e["ɵdid"](72,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](73,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](74,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](75,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](78,0,null,0,1,"label",[["class","cd-col-form-label"],["for","disks"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Images"])),(l()(),e["ɵeld"](80,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Me)),e["ɵdid"](82,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](83,0,null,null,7,"input",[["class","form-control"],["formControlName","disks"],["id","disks"],["name","disks"],["type","hidden"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,84)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,84).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,84)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,84)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](84,16384,null,0,el.e,[e.Renderer2,e.ElementRef,[2,el.b]],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.e]),e["ɵdid"](86,671744,[[5,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](88,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](89,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](90,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Le)),e["ɵdid"](92,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ze)),e["ɵdid"](94,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](95,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](96,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](97,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,[[null,"selection"]],(function(l,n,u){var e=!0;return"selection"===n&&(e=!1!==l.component.onImageSelection(u)&&e),e}),Ve.b,Ve.a)),e["ɵdid"](98,638976,null,0,xe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},{selection:"selection"}),(l()(),e["ɵeld"](99,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](101,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](102,1),(l()(),e["ɵeld"](103,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add image"])),(l()(),e["ɵeld"](105,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](106,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,$n.b,$n.a)),e["ɵdid"](107,1163264,null,2,Nl.c,[e.ElementRef,Nl.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](110,0,null,0,12,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](111,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](112,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","acl_enabled"],["id","acl_enabled"],["name","acl_enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,113).onChange(u.target.checked)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,113).onTouched()&&a),a}),null,null)),e["ɵdid"](113,16384,null,0,el.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,el.p,(function(l){return[l]}),[el.c]),e["ɵdid"](115,671744,[[7,4]],0,el.j,[[3,el.d],[8,null],[8,null],[6,el.p],[2,el.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,el.q,null,[el.j]),e["ɵdid"](117,16384,null,0,el.r,[[4,el.q]],null,null),e["ɵdid"](118,4210688,null,0,Mn.a,[[2,Ln.a],ml.a,e.ElementRef],null,null),e["ɵdid"](119,16384,null,0,Nl.h,[[3,el.d],Nl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](120,0,null,null,1,"label",[["class","custom-control-label"],["for","acl_enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["ACL authentication"])),(l()(),e["ɵeld"](122,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,He)),e["ɵdid"](124,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,va)),e["ɵdid"](126,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ia)),e["ɵdid"](128,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](129,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](130,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](131,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),Yn.b,Yn.a)),e["ɵdid"](132,114688,null,0,Xn.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](133,0,[""," ",""])),e["ɵppd"](134,1),e["ɵppd"](135,1),(l()(),e["ɵeld"](136,0,null,null,1,"cd-back-button",[],null,null,null,Hn.b,Hn.a)),e["ɵdid"](137,49152,null,0,lu.a,[D.Location,Ql.b],null,null)],(function(l,n){var u=n.component;l(n,2,0,u.targetForm),l(n,5,0,u.targetForm),l(n,13,0),l(n,23,0,"target_iqn"),l(n,28,0,"target_iqn");var a=l(n,34,0,u.icons.deepCheck);l(n,33,0,a),l(n,36,0,u.targetForm.showError("target_iqn",e["ɵnov"](n,2),"required")),l(n,38,0,u.targetForm.showError("target_iqn",e["ɵnov"](n,2),"pattern")),l(n,40,0,u.targetForm.showError("target_iqn",e["ɵnov"](n,2),"iqn")),l(n,42,0,u.hasAdvancedSettings(u.targetForm.getValue("target_controls"))),l(n,45,0),l(n,52,0,u.portals.value),l(n,56,0,"btn btn-light float-right",u.portals.value,u.portalsSelections,u.messages.portals);var t=l(n,60,0,u.icons.add);l(n,59,0,t),l(n,66,0,"portals"),l(n,70,0,"portals"),l(n,72,0,u.targetForm.showError("portals",e["ɵnov"](n,2),"minGateways")),l(n,75,0),l(n,82,0,u.targetForm.getValue("disks")),l(n,86,0,"disks"),l(n,90,0,"disks"),l(n,92,0,u.targetForm.showError("disks",e["ɵnov"](n,2),"dupLunId")),l(n,94,0,u.targetForm.showError("disks",e["ɵnov"](n,2),"dupWwn")),l(n,98,0,"btn btn-light float-right",u.disks.value,u.imagesSelections,u.messages.images);var o=l(n,102,0,u.icons.add);l(n,101,0,o),l(n,107,0),l(n,115,0,"acl_enabled"),l(n,119,0,"acl_enabled"),l(n,124,0,u.cephIscsiConfigVersion>10&&!u.targetForm.getValue("acl_enabled")),l(n,126,0,u.targetForm.getValue("acl_enabled")),l(n,128,0,u.targetForm.getValue("acl_enabled")),l(n,132,0,e["ɵnov"](n,2))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,4).ngClassUntouched,e["ɵnov"](n,4).ngClassTouched,e["ɵnov"](n,4).ngClassPristine,e["ɵnov"](n,4).ngClassDirty,e["ɵnov"](n,4).ngClassValid,e["ɵnov"](n,4).ngClassInvalid,e["ɵnov"](n,4).ngClassPending);var a=e["ɵunv"](n,8,0,l(n,9,0,e["ɵnov"](n.parent,0),u.action)),t=e["ɵunv"](n,8,1,l(n,10,0,e["ɵnov"](n.parent,1),u.resource));l(n,8,0,a,t),l(n,12,0,e["ɵnov"](n,13).hasErrors,e["ɵnov"](n,13).hasSuccess),l(n,20,0,e["ɵnov"](n,25).ngClassUntouched,e["ɵnov"](n,25).ngClassTouched,e["ɵnov"](n,25).ngClassPristine,e["ɵnov"](n,25).ngClassDirty,e["ɵnov"](n,25).ngClassValid,e["ɵnov"](n,25).ngClassInvalid,e["ɵnov"](n,25).ngClassPending,e["ɵnov"](n,28).validClass,e["ɵnov"](n,28).invalidClass),l(n,44,0,e["ɵnov"](n,45).hasErrors,e["ɵnov"](n,45).hasSuccess),l(n,63,0,e["ɵnov"](n,68).ngClassUntouched,e["ɵnov"](n,68).ngClassTouched,e["ɵnov"](n,68).ngClassPristine,e["ɵnov"](n,68).ngClassDirty,e["ɵnov"](n,68).ngClassValid,e["ɵnov"](n,68).ngClassInvalid,e["ɵnov"](n,68).ngClassPending,e["ɵnov"](n,70).validClass,e["ɵnov"](n,70).invalidClass),l(n,74,0,e["ɵnov"](n,75).hasErrors,e["ɵnov"](n,75).hasSuccess),l(n,83,0,e["ɵnov"](n,88).ngClassUntouched,e["ɵnov"](n,88).ngClassTouched,e["ɵnov"](n,88).ngClassPristine,e["ɵnov"](n,88).ngClassDirty,e["ɵnov"](n,88).ngClassValid,e["ɵnov"](n,88).ngClassInvalid,e["ɵnov"](n,88).ngClassPending,e["ɵnov"](n,90).validClass,e["ɵnov"](n,90).invalidClass),l(n,106,0,e["ɵnov"](n,107).hasErrors,e["ɵnov"](n,107).hasSuccess),l(n,112,0,e["ɵnov"](n,117).ngClassUntouched,e["ɵnov"](n,117).ngClassTouched,e["ɵnov"](n,117).ngClassPristine,e["ɵnov"](n,117).ngClassDirty,e["ɵnov"](n,117).ngClassValid,e["ɵnov"](n,117).ngClassInvalid,e["ɵnov"](n,117).ngClassPending,e["ɵnov"](n,119).validClass,e["ɵnov"](n,119).invalidClass);var o=e["ɵunv"](n,133,0,l(n,134,0,e["ɵnov"](n.parent,0),u.action)),d=e["ɵunv"](n,133,1,l(n,135,0,e["ɵnov"](n.parent,1),u.resource));l(n,133,0,o,d)}))}function Ea(l){return e["ɵvid"](0,[e["ɵpid"](0,D.TitleCasePipe,[]),e["ɵpid"](0,ll.a,[]),e["ɵpid"](0,z.a,[]),(l()(),e["ɵeld"](3,0,null,null,2,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Na)),e["ɵdid"](5,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,5,0,n.component.targetForm)}),null)}function wa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-iscsi-target-form",[],null,null,null,Ea,De)),e["ɵdid"](1,114688,null,0,_e.a,[Wu.a,rl.b,Jl.a,fl.m,fl.a,A.a,Wl.a,Ql.b],null,null)],(function(l,n){l(n,1,0)}),null)}var Ta=e["ɵccf"]("cd-iscsi-target-form",_e.a,wa,{},{},[]),ya=u("Vhfg"),Va=u("cxJu");u.d(n,"BlockModuleNgFactory",(function(){return xa})),u.d(n,"RoutedBlockModuleNgFactory",(function(){return qa}));var xa=e["ɵcmf"](a.a,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[t.a,o.a,d.a,i.a,i.b,s.a,r.a,c.a,p.a,m.a,g.a,f.a,v.a,C.a,b.a,h.a,R.a,I.a,I.c,I.b,I.d,N.a,E.a,w.a,T.a,y.a,V.a,x.a,q.a,k.a,_.a]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,D.NgLocalization,D.NgLocaleLocalization,[e.LOCALE_ID,[2,D["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,P.a,P.a,[]),e["ɵmpd"](4608,S.a,S.a,[A.a]),e["ɵmpd"](4608,D.DatePipe,D.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,O.a,O.a,[]),e["ɵmpd"](4608,j.a,j.a,[]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,B.a,B.a,[U.a]),e["ɵmpd"](4608,$.a,$.a,[U.a]),e["ɵmpd"](4608,M.a,M.a,[U.a]),e["ɵmpd"](4608,L.a,L.a,[]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,G.a,G.a,[]),e["ɵmpd"](4608,K.a,K.a,[]),e["ɵmpd"](4608,Z.a,Z.a,[D.DatePipe]),e["ɵmpd"](4608,J.a,J.a,[]),e["ɵmpd"](4608,W.a,W.a,[]),e["ɵmpd"](4608,Q.a,Q.a,[]),e["ɵmpd"](4608,Y.a,Y.a,[]),e["ɵmpd"](4608,X.a,X.a,[]),e["ɵmpd"](4608,H.a,H.a,[A.a]),e["ɵmpd"](4608,ll.a,ll.a,[]),e["ɵmpd"](4608,nl.a,nl.a,[]),e["ɵmpd"](4608,ul.a,ul.a,[]),e["ɵmpd"](4608,el.D,el.D,[]),e["ɵmpd"](4608,el.h,el.h,[]),e["ɵmpd"](4608,al.b,al.b,[]),e["ɵmpd"](4608,tl.a,tl.a,[]),e["ɵmpd"](4608,ol.a,ol.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,dl.a,dl.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,ol.a,e.ApplicationRef]),e["ɵmpd"](4608,il.c,il.c,[]),e["ɵmpd"](4608,sl.a,sl.a,[]),e["ɵmpd"](4608,rl.b,rl.b,[e.RendererFactory2,dl.a]),e["ɵmpd"](4608,cl.y,cl.y,[D.DOCUMENT]),e["ɵmpd"](4608,cl.r,cl.r,[]),e["ɵmpd"](4608,cl.a,cl.a,[]),e["ɵmpd"](4608,pl.f,pl.f,[]),e["ɵmpd"](4608,ml.a,ml.a,[]),e["ɵmpd"](4608,gl.a,gl.a,[fl.m,ml.a]),e["ɵmpd"](4608,vl.f,vl.f,[]),e["ɵmpd"](4608,Cl.t,Cl.t,[]),e["ɵmpd"](4608,Cl.v,Cl.v,[]),e["ɵmpd"](4608,Cl.a,Cl.a,[]),e["ɵmpd"](4608,Cl.h,Cl.h,[]),e["ɵmpd"](4608,Cl.d,Cl.d,[]),e["ɵmpd"](4608,Cl.j,Cl.j,[]),e["ɵmpd"](4608,Cl.l,Cl.l,[]),e["ɵmpd"](4608,Cl.u,Cl.u,[Cl.v,Cl.l]),e["ɵmpd"](4608,bl.a,bl.a,[]),e["ɵmpd"](1073742336,D.CommonModule,D.CommonModule,[]),e["ɵmpd"](1073742336,vl.d,vl.d,[]),e["ɵmpd"](1073742336,hl.a,hl.a,[]),e["ɵmpd"](1073742336,el.C,el.C,[]),e["ɵmpd"](1073742336,el.n,el.n,[]),e["ɵmpd"](1073742336,el.y,el.y,[]),e["ɵmpd"](1073742336,al.c,al.c,[]),e["ɵmpd"](1073742336,tl.d,tl.d,[]),e["ɵmpd"](1073742336,il.d,il.d,[]),e["ɵmpd"](1073742336,sl.d,sl.d,[]),e["ɵmpd"](1073742336,Rl.b,Rl.b,[]),e["ɵmpd"](1073742336,rl.e,rl.e,[]),e["ɵmpd"](1073742336,Il.a,Il.a,[]),e["ɵmpd"](1073742336,pl.e,pl.e,[]),e["ɵmpd"](1073742336,Nl.f,Nl.f,[]),e["ɵmpd"](1073742336,El.ClickOutsideModule,El.ClickOutsideModule,[]),e["ɵmpd"](1073742336,wl.b,wl.b,[]),e["ɵmpd"](1073742336,fl.q,fl.q,[[2,fl.v],[2,fl.m]]),e["ɵmpd"](1073742336,Tl.a,Tl.a,[]),e["ɵmpd"](1073742336,cl.u,cl.u,[]),e["ɵmpd"](1073742336,yl.a,yl.a,[]),e["ɵmpd"](1073742336,Vl.a,Vl.a,[]),e["ɵmpd"](1073742336,xl.a,xl.a,[]),e["ɵmpd"](1073742336,ql.a,ql.a,[]),e["ɵmpd"](1073742336,Cl.g,Cl.g,[]),e["ɵmpd"](1073742336,kl.b,kl.b,[]),e["ɵmpd"](1073742336,a.a,a.a,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,pl.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])})),qa=e["ɵcmf"](a.b,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[t.a,o.a,d.a,i.a,i.b,s.a,r.a,c.a,p.a,m.a,g.a,f.a,v.a,C.a,b.a,h.a,R.a,I.a,I.c,I.b,I.d,N.a,E.a,w.a,T.a,y.a,V.a,x.a,q.a,k.a,_.a,pn,hn,_n,Bn,Mu,ie,Ee,Ta]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,D.NgLocalization,D.NgLocaleLocalization,[e.LOCALE_ID,[2,D["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,P.a,P.a,[]),e["ɵmpd"](4608,S.a,S.a,[A.a]),e["ɵmpd"](4608,D.DatePipe,D.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,O.a,O.a,[]),e["ɵmpd"](4608,j.a,j.a,[]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,B.a,B.a,[U.a]),e["ɵmpd"](4608,$.a,$.a,[U.a]),e["ɵmpd"](4608,M.a,M.a,[U.a]),e["ɵmpd"](4608,L.a,L.a,[]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,G.a,G.a,[]),e["ɵmpd"](4608,K.a,K.a,[]),e["ɵmpd"](4608,Z.a,Z.a,[D.DatePipe]),e["ɵmpd"](4608,J.a,J.a,[]),e["ɵmpd"](4608,W.a,W.a,[]),e["ɵmpd"](4608,Q.a,Q.a,[]),e["ɵmpd"](4608,Y.a,Y.a,[]),e["ɵmpd"](4608,X.a,X.a,[]),e["ɵmpd"](4608,H.a,H.a,[A.a]),e["ɵmpd"](4608,ll.a,ll.a,[]),e["ɵmpd"](4608,nl.a,nl.a,[]),e["ɵmpd"](4608,ul.a,ul.a,[]),e["ɵmpd"](4608,el.D,el.D,[]),e["ɵmpd"](4608,el.h,el.h,[]),e["ɵmpd"](4608,al.b,al.b,[]),e["ɵmpd"](4608,tl.a,tl.a,[]),e["ɵmpd"](4608,ol.a,ol.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,dl.a,dl.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,ol.a,e.ApplicationRef]),e["ɵmpd"](4608,il.c,il.c,[]),e["ɵmpd"](4608,sl.a,sl.a,[]),e["ɵmpd"](4608,rl.b,rl.b,[e.RendererFactory2,dl.a]),e["ɵmpd"](4608,cl.y,cl.y,[D.DOCUMENT]),e["ɵmpd"](4608,cl.r,cl.r,[]),e["ɵmpd"](4608,cl.a,cl.a,[]),e["ɵmpd"](4608,pl.f,pl.f,[]),e["ɵmpd"](4608,ml.a,ml.a,[]),e["ɵmpd"](4608,gl.a,gl.a,[fl.m,ml.a]),e["ɵmpd"](4608,vl.f,vl.f,[]),e["ɵmpd"](4608,Cl.t,Cl.t,[]),e["ɵmpd"](4608,Cl.v,Cl.v,[]),e["ɵmpd"](4608,Cl.a,Cl.a,[]),e["ɵmpd"](4608,Cl.h,Cl.h,[]),e["ɵmpd"](4608,Cl.d,Cl.d,[]),e["ɵmpd"](4608,Cl.j,Cl.j,[]),e["ɵmpd"](4608,Cl.l,Cl.l,[]),e["ɵmpd"](4608,Cl.u,Cl.u,[Cl.v,Cl.l]),e["ɵmpd"](4608,bl.a,bl.a,[]),e["ɵmpd"](1073742336,D.CommonModule,D.CommonModule,[]),e["ɵmpd"](1073742336,vl.d,vl.d,[]),e["ɵmpd"](1073742336,hl.a,hl.a,[]),e["ɵmpd"](1073742336,el.C,el.C,[]),e["ɵmpd"](1073742336,el.n,el.n,[]),e["ɵmpd"](1073742336,el.y,el.y,[]),e["ɵmpd"](1073742336,al.c,al.c,[]),e["ɵmpd"](1073742336,tl.d,tl.d,[]),e["ɵmpd"](1073742336,il.d,il.d,[]),e["ɵmpd"](1073742336,sl.d,sl.d,[]),e["ɵmpd"](1073742336,Rl.b,Rl.b,[]),e["ɵmpd"](1073742336,rl.e,rl.e,[]),e["ɵmpd"](1073742336,Il.a,Il.a,[]),e["ɵmpd"](1073742336,pl.e,pl.e,[]),e["ɵmpd"](1073742336,Nl.f,Nl.f,[]),e["ɵmpd"](1073742336,El.ClickOutsideModule,El.ClickOutsideModule,[]),e["ɵmpd"](1073742336,wl.b,wl.b,[]),e["ɵmpd"](1073742336,fl.q,fl.q,[[2,fl.v],[2,fl.m]]),e["ɵmpd"](1073742336,Tl.a,Tl.a,[]),e["ɵmpd"](1073742336,cl.u,cl.u,[]),e["ɵmpd"](1073742336,yl.a,yl.a,[]),e["ɵmpd"](1073742336,Vl.a,Vl.a,[]),e["ɵmpd"](1073742336,xl.a,xl.a,[]),e["ɵmpd"](1073742336,ql.a,ql.a,[]),e["ɵmpd"](1073742336,Cl.g,Cl.g,[]),e["ɵmpd"](1073742336,kl.b,kl.b,[]),e["ɵmpd"](1073742336,a.a,a.a,[]),e["ɵmpd"](1073742336,a.b,a.b,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,pl.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](1024,fl.k,(function(){return[[{path:"",redirectTo:"rbd",pathMatch:"full"},{path:"rbd",canActivate:[ya.a],data:a.c,children:[{path:"",component:Zl.a},{path:"namespaces",component:mn.a,data:a.d},{path:"trash",component:Rn.a,data:a.j},{path:"performance",component:An.a,data:a.k},{path:"create",component:nu.a,data:a.l},{path:"edit/:image_spec",component:nu.a,data:a.m},{path:"clone/:image_spec/:snap",component:nu.a,data:a.n},{path:"copy/:image_spec",component:nu.a,data:a.o},{path:"copy/:image_spec/:snap",component:nu.a,data:a.p}]},{path:"mirroring",component:Va.a,canActivate:[ya.a],data:a.q},{path:"iscsi",canActivate:[ya.a],data:a.e,children:[{path:"",redirectTo:"overview",pathMatch:"full"},{path:"overview",component:Ju.a,data:a.f},{path:"targets",data:a.g,children:[{path:"",component:fe.a},{path:"create",component:_e.a,data:a.h},{path:"edit/:target_iqn",component:_e.a,data:a.i}]}]}]]}),[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])}))}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/5.7e995d52d0c4ff2d857a.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/5.7e995d52d0c4ff2d857a.js
new file mode 100644 (file)
index 0000000..435950e
--- /dev/null
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{J6Oi:function(l,n,u){"use strict";u.r(n);var e=u("8Y7J"),a=u("k/xb"),t=u("MdoF"),o=u("ES0t"),d=u("Xg1U"),i=u("z5nN"),s=u("iutN"),r=u("pMnS"),c=u("EEJc"),p=u("PEr+"),m=u("a40w"),g=u("hfeG"),f=u("QUzE"),v=u("E7j4"),C=u("xvu0"),b=u("RIVN"),h=u("nP0W"),R=u("VBM6"),I=u("atuK"),N=u("JIi+"),w=u("0BYw"),E=u("3IYD"),T=u("I4Qz"),y=u("0rTx"),V=u("lz+O"),x=u("u2XS"),q=u("nhAp"),k=u("l7Jr"),_=u("bUo2"),D=u("SVse"),F=u("yT6U"),P=u("4DD9"),S=u("iExv"),A=u("GiVz"),O=u("85J/"),j=u("+0ag"),U=u("aXbf"),B=u("Fgil"),$=u("IzCI"),M=u("o4+5"),L=u("Dwqy"),z=u("uYzU"),K=u("FFMq"),G=u("E2fk"),Z=u("a0VL"),J=u("nSDx"),W=u("SB+Q"),Q=u("TYzs"),Y=u("BQkM"),X=u("dEH0"),H=u("G1/K"),ll=u("8xTl"),nl=u("TJUb"),ul=u("efK2"),el=u("Yrry"),al=u("cUpR"),tl=u("s7LF"),ol=u("CNMR"),dl=u("KOzp"),il=u("2uy1"),sl=u("z/SZ"),rl=u("38Bd"),cl=u("978R"),pl=u("LqlI"),ml=u("w9WL"),gl=u("FE24"),fl=u("aexS"),vl=u("Avrn"),Cl=u("iInd"),bl=u("2ZVE"),hl=u("ienR"),Rl=u("gk6K"),Il=u("9Xeq"),Nl=u("hrfs"),wl=u("yGOH"),El=u("+gVj"),Tl=u("bxSN"),yl=u("WF9J"),Vl=u("V/fk"),xl=u("ChqD"),ql=u("pL04"),kl=u("PCNd"),_l=u("kccj"),Dl=u("yYhs"),Fl=u("C6Ij"),Pl=u("AWcq"),Sl=u("pKUh");class Al{constructor(l,n){this.authStorageService=l,this.router=n,this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnInit(){this.url=this.router.url}navigateTo(l){this.router.navigate([l])}}var Ol=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function jl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/rbd/performance")&&e),e}),null,null)),e["ɵdid"](1,212992,null,0,bl.b,[bl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"})],(function(l,n){l(n,1,0,"Overall Performance","/block/rbd/performance"===n.component.url)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby)}))}function Ul(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,"tabset",[],[[2,"tab-container",null]],null,null,Sl.b,Sl.a)),e["ɵdid"](1,180224,null,0,bl.e,[bl.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,1,"tab",[["heading","Images"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/rbd")&&e),e}),null,null)),e["ɵdid"](3,212992,null,0,bl.b,[bl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵeld"](4,0,null,0,1,"tab",[["heading","Namespaces"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/rbd/namespaces")&&e),e}),null,null)),e["ɵdid"](5,212992,null,0,bl.b,[bl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵeld"](6,0,null,0,1,"tab",[["heading","Trash"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/rbd/trash")&&e),e}),null,null)),e["ɵdid"](7,212992,null,0,bl.b,[bl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵand"](16777216,null,0,1,null,jl)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Images","/block/rbd"===u.url),l(n,5,0,"Namespaces","/block/rbd/namespaces"===u.url),l(n,7,0,"Trash","/block/rbd/trash"===u.url),l(n,9,0,u.grafanaPermission.read)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby),l(n,4,0,e["ɵnov"](n,5).id,e["ɵnov"](n,5).active,e["ɵnov"](n,5).addClass,e["ɵnov"](n,5).role,e["ɵnov"](n,5).ariaLabelledby),l(n,6,0,e["ɵnov"](n,7).id,e["ɵnov"](n,7).active,e["ɵnov"](n,7).addClass,e["ɵnov"](n,7).role,e["ɵnov"](n,7).ariaLabelledby)}))}var Bl=u("25BL"),$l=u("uIqm"),Ml=u("NUGo"),Ll=u("S7zO"),zl=u("JBea"),Kl=u("VTlA"),Gl=u("ufoC"),Zl=u("mSOc"),Jl=u("EgGo"),Wl=u("5GyT"),Ql=u("F83c"),Yl=u("kn/O"),Xl=u("sne2"),Hl=e["ɵcrt"]({encapsulation:0,styles:[[".warn[_ngcontent-%COMP%]{color:#ffc200}"]],data:{}});function ln(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,Fl.b,Fl.a)),e["ɵdid"](1,114688,null,0,Pl.a,[],{status:[0,"status"],statusFor:[1,"statusFor"]},null)],(function(l,n){l(n,1,0,n.context.$implicit.status,n.context.$implicit.statusFor)}),null)}function nn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,0,"div",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(l,n){l(n,0,0,"Only available for RBD images with <strong>fast-diff</strong> enabled")}))}function un(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["/",""]))],null,(function(l,n){l(n,1,0,n.parent.parent.context.value.pool_namespace)}))}function en(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["",""])),(l()(),e["ɵand"](16777216,null,null,1,null,un)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵted"](4,null,["/","@",""]))],(function(l,n){l(n,3,0,n.parent.context.value.pool_namespace)}),(function(l,n){l(n,1,0,n.parent.context.value.pool_name),l(n,4,0,n.parent.context.value.image_name,n.parent.context.value.snap_name)}))}function an(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function tn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,en)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,an)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,n.context.value),l(n,3,0,!n.context.value)}),null)}function on(l){return e["ɵvid"](0,[(l()(),e["ɵted"](-1,null,[" You are about to flatten "])),(l()(),e["ɵeld"](1,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](2,null,["",""])),(l()(),e["ɵted"](-1,null,[". "])),(l()(),e["ɵeld"](4,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" All blocks will be copied from parent "])),(l()(),e["ɵeld"](7,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](8,null,["",""])),(l()(),e["ɵted"](-1,null,[" to child "])),(l()(),e["ɵeld"](10,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](11,null,["",""])),(l()(),e["ɵted"](-1,null,[".\n"]))],null,(function(l,n){l(n,2,0,n.context.$implicit.child),l(n,8,0,n.context.$implicit.parent),l(n,11,0,n.context.$implicit.child)}))}function dn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["",""]))],null,(function(l,n){l(n,1,0,n.context.$implicit)}))}function sn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The following snapshots are currently protected and will be removed:"])),(l()(),e["ɵeld"](3,0,null,null,2,"ul",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,dn)),e["ɵdid"](5,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,5,0,n.parent.parent.context.snapshots)}),null)}function rn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"div",[["class","alert alert-warning"],["role","alert"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Deleting this image will also delete all its snapshots."])),(l()(),e["ɵeld"](3,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,sn)),e["ɵdid"](5,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,5,0,n.parent.context.snapshots.length>0)}),null)}function cn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,rn)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,n.context.hasSnapshots)}),null)}function pn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](2,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](3,2)],(function(l,n){var u=n.component,e=l(n,3,0,u.icons.spinner,u.icons.spin);l(n,2,0,e)}),null)}function mn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](2,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(l()(),e["ɵted"](3,null,[" (",") "]))],(function(l,n){l(n,2,0,null!=n.parent.context.column&&null!=n.parent.context.column.customTemplateConfig&&n.parent.context.column.customTemplateConfig.executingClass?n.parent.context.column.customTemplateConfig.executingClass:"text-muted italic")}),(function(l,n){l(n,3,0,n.parent.context.row.cdExecuting)}))}function gn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,0,"i",[["title","RBD in status 'Removing'"]],[[8,"className",0]],null,null,null,null))],null,(function(l,n){l(n,0,0,e["ɵinlineInterpolate"](1,"",n.component.icons.warning," warn"))}))}function fn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,pn)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](2,0,null,null,3,"span",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](4,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(l()(),e["ɵted"](5,null,[" "," "])),(l()(),e["ɵand"](16777216,null,null,1,null,mn)),e["ɵdid"](7,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,gn)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,n.context.row.cdExecuting),l(n,4,0,null==n.context.column||null==n.context.column.customTemplateConfig?null:n.context.column.customTemplateConfig.valueClass),l(n,7,0,n.context.row.cdExecuting),l(n,9,0,n.context.row.source&&"REMOVING"===n.context.row.source)}),(function(l,n){l(n,5,0,n.context.value)}))}function vn(l){return e["ɵvid"](0,[e["ɵqud"](402653184,1,{table:0}),e["ɵqud"](671088640,2,{usageTpl:0}),e["ɵqud"](402653184,3,{parentTpl:0}),e["ɵqud"](671088640,4,{nameTpl:0}),e["ɵqud"](402653184,5,{flattenTpl:0}),e["ɵqud"](402653184,6,{deleteTpl:0}),e["ɵqud"](402653184,7,{removingStatTpl:0}),(l()(),e["ɵeld"](7,0,null,null,1,"cd-rbd-tabs",[],null,null,null,Ul,Ol)),e["ɵdid"](8,114688,null,0,Al,[fl.a,Cl.m],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,ln)),e["ɵdid"](10,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](11,0,null,null,5,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","unique_id"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(l,n,u){var e=!0,a=l.component;return"setExpandedRow"===n&&(e=!1!==a.setExpandedRow(u)&&e),"updateSelection"===n&&(e=!1!==a.updateSelection(u)&&e),e}),Bl.b,Bl.a)),e["ɵdid"](12,2867200,[[1,4],["table",4]],0,$l.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"],searchableObjects:[7,"searchableObjects"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](13,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Ml.b,Ml.a)),e["ɵdid"](14,114688,null,0,Ll.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](15,0,null,3,1,"cd-rbd-details",[["cdTableDetail",""]],null,null,null,N.c,N.b)),e["ɵdid"](16,573440,null,0,zl.a,[],{selection:[0,"selection"]},null),(l()(),e["ɵand"](0,[["usageNotAvailableTooltipTpl",2]],null,0,null,nn)),(l()(),e["ɵand"](0,[[3,2],["parentTpl",2]],null,0,null,tn)),(l()(),e["ɵand"](0,[[5,2],["flattenTpl",2]],null,0,null,on)),(l()(),e["ɵand"](0,[[6,2],["deleteTpl",2]],null,0,null,cn)),(l()(),e["ɵand"](0,[[7,2],["removingStatTpl",2]],null,0,null,fn))],(function(l,n){var u=n.component;l(n,8,0),l(n,10,0,u.viewCacheStatusList),l(n,12,0,u.images,u.columns,"flex",!0,"unique_id","true","single",!0),l(n,14,0,u.permission,u.selection,u.tableActions),l(n,16,0,u.expandedRow)}),null)}function Cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"cd-rbd-list",[],null,null,null,vn,Hl)),e["ɵprd"](131584,null,Kl.a,Kl.a,[Gl.a,Zl.a]),e["ɵprd"](256,null,Jl.a,Wl.b,[]),e["ɵdid"](3,114688,null,0,Wl.a,[fl.a,Ql.a,B.a,M.a,pl.b,Yl.a,Kl.a,A.a,Jl.a,Xl.b],null,null)],(function(l,n){l(n,3,0)}),null)}var bn=e["ɵccf"]("cd-rbd-list",Wl.a,Cn,{},{},[]),hn=u("Z5tW"),Rn=u("Ekvf"),In=u("9nlD"),Nn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function wn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rbd-tabs",[],null,null,null,Ul,Ol)),e["ɵdid"](1,114688,null,0,Al,[fl.a,Cl.m],null,null),(l()(),e["ɵeld"](2,0,null,null,4,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","id"],["selectionType","single"]],null,[[null,"fetchData"],[null,"updateSelection"]],(function(l,n,u){var e=!0,a=l.component;return"fetchData"===n&&(e=!1!==a.refresh()&&e),"updateSelection"===n&&(e=!1!==a.updateSelection(u)&&e),e}),Bl.b,Bl.a)),e["ɵdid"](3,2867200,null,0,$l.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],identifier:[3,"identifier"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection"}),(l()(),e["ɵeld"](4,0,null,1,2,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"cd-table-actions",[["class","btn-group"]],null,null,null,Ml.b,Ml.a)),e["ɵdid"](6,114688,null,0,Ll.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,3,0,u.namespaces,u.columns,"flex","id","true","single"),l(n,6,0,u.permission,u.selection,u.tableActions)}),null)}function En(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-rbd-namespace-list",[],null,null,null,wn,Nn)),e["ɵprd"](135680,null,Kl.a,Kl.a,[Gl.a,Zl.a]),e["ɵdid"](2,114688,null,0,hn.a,[fl.a,Ql.a,Rn.a,pl.b,In.a,A.a,Xl.b],null,null)],(function(l,n){l(n,2,0)}),null)}var Tn=e["ɵccf"]("cd-rbd-namespace-list",hn.a,En,{},{},[]),yn=u("chpi"),Vn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function xn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,Fl.b,Fl.a)),e["ɵdid"](1,114688,null,0,Pl.a,[],{status:[0,"status"],statusFor:[1,"statusFor"]},null)],(function(l,n){l(n,1,0,n.context.$implicit.status,n.context.$implicit.statusFor)}),null)}function qn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,6,"button",[["class","btn btn-light"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.purgeModal()&&e),e}),null,null)),(l()(),e["ɵeld"](1,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](3,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](4,1),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Purge Trash"]))],(function(l,n){var u=l(n,4,0,n.component.icons.destroy);l(n,3,0,u)}),(function(l,n){l(n,0,0,n.component.disablePurgeBtn)}))}function kn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Expired at"]))],null,null)}function _n(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Protected until"]))],null,null)}function Dn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,kn)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,_n)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵted"](4,null,[" ","\n"])),e["ɵppd"](5,1)],(function(l,n){l(n,1,0,n.context.row.cdIsExpired),l(n,3,0,!n.context.row.cdIsExpired)}),(function(l,n){var u=e["ɵunv"](n,4,0,l(n,5,0,e["ɵnov"](n.parent,0),n.context.value));l(n,4,0,u)}))}function Fn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"p",[["class","text-danger"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,3,"strong",[],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,null,null,null,null,null,null,null)),(l()(),e["ɵted"](3,null,["This image is protected until ","."])),e["ɵppd"](4,1)],null,(function(l,n){var u=e["ɵunv"](n,3,0,l(n,4,0,e["ɵnov"](n.parent.parent,0),n.parent.context.$implicit));l(n,3,0,u)}))}function Pn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Fn)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,!n.component.isExpired(n.context.$implicit))}),null)}function Sn(l){return e["ɵvid"](0,[e["ɵpid"](0,Z.a,[D.DatePipe]),e["ɵqud"](402653184,1,{table:0}),e["ɵqud"](402653184,2,{expiresTpl:0}),e["ɵqud"](402653184,3,{deleteTpl:0}),(l()(),e["ɵeld"](4,0,null,null,1,"cd-rbd-tabs",[],null,null,null,Ul,Ol)),e["ɵdid"](5,114688,null,0,Al,[fl.a,Cl.m],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,xn)),e["ɵdid"](7,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](8,0,null,null,6,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","id"],["selectionType","single"]],null,[[null,"updateSelection"]],(function(l,n,u){var e=!0;return"updateSelection"===n&&(e=!1!==l.component.updateSelection(u)&&e),e}),Bl.b,Bl.a)),e["ɵdid"](9,2867200,[[1,4]],0,$l.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],identifier:[3,"identifier"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"]},{updateSelection:"updateSelection"}),(l()(),e["ɵeld"](10,0,null,1,4,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,1,"cd-table-actions",[["class","btn-group"]],null,null,null,Ml.b,Ml.a)),e["ɵdid"](12,114688,null,0,Ll.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,qn)),e["ɵdid"](14,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,[[2,2],["expiresTpl",2]],null,0,null,Dn)),(l()(),e["ɵand"](0,[[3,2],["deleteTpl",2]],null,0,null,Pn))],(function(l,n){var u=n.component;l(n,5,0),l(n,7,0,u.viewCacheStatusList),l(n,9,0,u.images,u.columns,"flex","id","true","single"),l(n,12,0,u.permission,u.selection,u.tableActions),l(n,14,0,u.permission.delete)}),null)}function An(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-rbd-trash-list",[],null,null,null,Sn,Vn)),e["ɵprd"](131584,null,Kl.a,Kl.a,[Gl.a,Zl.a]),e["ɵdid"](2,114688,null,0,yn.a,[fl.a,Ql.a,pl.b,Z.a,Kl.a,Yl.a,A.a,Xl.b],null,null)],(function(l,n){l(n,2,0)}),null)}var On=e["ɵccf"]("cd-rbd-trash-list",yn.a,An,{},{},[]),jn=u("a278"),Un=u("insk"),Bn=u("20UP"),$n=u("WkyA"),Mn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ln(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rbd-tabs",[],null,null,null,Ul,Ol)),e["ɵdid"](1,114688,null,0,Al,[fl.a,Cl.m],null,null),(l()(),e["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","41FrpeUiz"]],null,null,null,jn.b,jn.a)),e["ɵdid"](3,638976,null,0,Un.a,[al.b,Bn.a,A.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){l(n,1,0),l(n,3,0,"rbd-overview?","two","41FrpeUiz")}),null)}function zn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rbd-performance",[],null,null,null,Ln,Mn)),e["ɵdid"](1,49152,null,0,$n.a,[],null,null)],null,null)}var Kn=e["ɵccf"]("cd-rbd-performance",$n.a,zn,{},{},[]),Gn=u("mXUL"),Zn=u("ANnk"),Jn=u("f/UV"),Wn=u("4HWh"),Qn=u("p4Cf"),Yn=u("IZUe"),Xn=u("EmSq"),Hn=u("BH9v"),lu=u("rFfW"),nu=u("o8EM"),uu=u("gp3X"),eu=u("sb0X"),au=u("KVJa"),tu=u("Z21x"),ou=u("MyVl"),du=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function iu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](1,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,2,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," from"])),e["ɵppd"](6,1),(l()(),e["ɵeld"](7,0,null,0,9,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["class","form-control"],["formControlName","parent"],["id","parent"],["name","parent"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,9).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,9)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](9,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](11,671744,[[1,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](13,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](14,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](15,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,0,"hr",[],null,null,null,null,null))],(function(l,n){l(n,1,0),l(n,11,0,"parent"),l(n,15,0,"parent")}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess);var a=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n.parent,0),u.action));l(n,5,0,a),l(n,8,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function su(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ru(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["'/' and '@' are not allowed."]))],null,null)}function cu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","pool"],["id","pool"],["name","pool"],["placeholder","Pool name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,1)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,1)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,1)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](3,671744,[[5,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](5,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](6,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"pool"),l(n,7,0,"pool")}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function pu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function mu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- No rbd pools available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function gu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a pool --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function fu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.pool_name),l(n,2,0,n.context.$implicit.pool_name)}),(function(l,n){l(n,3,0,n.context.$implicit.pool_name)}))}function vu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","pool"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,1).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,tl.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.A]),e["ɵdid"](3,671744,[[5,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](5,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](6,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pu)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,mu)),e["ɵdid"](11,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,gu)),e["ɵdid"](13,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,fu)),e["ɵdid"](15,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"pool"),l(n,7,0,"pool"),l(n,9,0,null===u.pools),l(n,11,0,null!==u.pools&&0===u.pools.length),l(n,13,0,null!==u.pools&&u.pools.length>0),l(n,15,0,u.pools)}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function Cu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function bu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](1,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,4,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](7,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](8,2)],(function(l,n){var u=n.component;l(n,1,0);var e=l(n,8,0,u.icons.spinner,u.icons.spin);l(n,7,0,e)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess)}))}function hu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","namespace"],["id","namespace"],["name","namespace"],["placeholder","Namespace..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,1)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,1)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,1)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](3,671744,[[9,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](5,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](6,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"namespace"),l(n,7,0,"namespace")}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function Ru(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Iu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- No namespaces available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Nu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a namespace --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function wu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Eu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","namespace"],["id","namespace"],["name","namespace"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,1).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,tl.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.A]),e["ɵdid"](3,671744,[[9,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](5,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](6,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ru)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Iu)),e["ɵdid"](11,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Nu)),e["ɵdid"](13,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,wu)),e["ɵdid"](15,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"namespace"),l(n,7,0,"namespace"),l(n,9,0,null===u.pools),l(n,11,0,null!==u.pools&&0===u.pools.length),l(n,13,0,null!==u.pools&&u.pools.length>0),l(n,15,0,u.namespaces)}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function Tu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,10,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](1,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","pool"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" Namespace "])),(l()(),e["ɵeld"](6,0,null,0,4,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,hu)),e["ɵdid"](8,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Eu)),e["ɵdid"](10,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,8,0,"editing"===u.mode||!u.poolPermission.read),l(n,10,0,"editing"!==u.mode&&u.poolPermission.read)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess)}))}function yu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","dataPool"],["id","dataPool"],["name","dataPool"],["placeholder","Data pool name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,1)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,1)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,1)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](3,671744,[[13,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](5,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](6,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,3,0,"dataPool"),l(n,7,0,"dataPool")}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function Vu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function xu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- No data pools available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function qu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a data pool -- "]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function ku(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.pool_name),l(n,2,0,n.context.$implicit.pool_name)}),(function(l,n){l(n,3,0,n.context.$implicit.pool_name)}))}function _u(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","dataPool"],["id","dataPool"],["name","dataPool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0,t=l.component;return"change"===n&&(a=!1!==e["ɵnov"](l,1).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,1).onTouched()&&a),"change"===n&&(a=!1!==t.onDataPoolChange(u.target.value)&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,tl.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.A]),e["ɵdid"](3,671744,[[13,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](5,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](6,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](7,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Vu)),e["ɵdid"](9,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,xu)),e["ɵdid"](11,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,qu)),e["ɵdid"](13,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ku)),e["ɵdid"](15,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"dataPool"),l(n,7,0,"dataPool"),l(n,9,0,null===u.dataPools),l(n,11,0,null!==u.dataPools&&0===u.dataPools.length),l(n,13,0,null!==u.dataPools&&u.dataPools.length>0),l(n,15,0,u.dataPools)}),(function(l,n){l(n,0,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function Du(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Fu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](1,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,13,{FormControlNames:1}),e["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,7,"label",[["class","cd-col-form-label"],["for","dataPool"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"span",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](7,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpod"](8,{required:0}),(l()(),e["ɵted"](-1,null,["Data pool"])),(l()(),e["ɵeld"](10,0,null,null,1,"cd-helper",[["html","Dedicated pool that stores the object-data of the RBD."]],null,null,null,Wn.b,Wn.a)),e["ɵdid"](11,49152,null,0,Qn.a,[],{html:[0,"html"]},null),(l()(),e["ɵeld"](12,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,yu)),e["ɵdid"](14,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,_u)),e["ɵdid"](16,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Du)),e["ɵdid"](18,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0);var a=l(n,8,0,"editing"!==u.mode);l(n,7,0,a),l(n,11,0,"Dedicated pool that stores the object-data of the RBD."),l(n,14,0,"editing"===u.mode||!u.poolPermission.read),l(n,16,0,"editing"!==u.mode&&u.poolPermission.read),l(n,18,0,u.rbdForm.showError("dataPool",e["ɵnov"](n.parent,5),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess)}))}function Pu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Su(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["You have to increase the size."]))],null,null)}function Au(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-helper",[],null,null,null,Wn.b,Wn.a)),e["ɵdid"](1,49152,null,0,Qn.a,[],{html:[0,"html"]},null)],(function(l,n){l(n,1,0,e["ɵinlineInterpolate"](1,"",n.parent.context.$implicit.helperHtml,""))}),null)}function Ou(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,12,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,2).onChange(u.target.checked)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,2).onTouched()&&a),a}),null,null)),e["ɵdid"](2,16384,null,0,tl.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.c]),e["ɵdid"](4,671744,[[17,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](6,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](7,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](9,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),e["ɵted"](10,null,["",""])),(l()(),e["ɵand"](16777216,null,null,1,null,Au)),e["ɵdid"](12,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,4,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,"")),l(n,8,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,"")),l(n,12,0,n.context.$implicit.helperHtml)}),(function(l,n){l(n,1,1,[e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,""),e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,""),e["ɵnov"](n,6).ngClassUntouched,e["ɵnov"](n,6).ngClassTouched,e["ɵnov"](n,6).ngClassPristine,e["ɵnov"](n,6).ngClassDirty,e["ɵnov"](n,6).ngClassValid,e["ɵnov"](n,6).ngClassInvalid,e["ɵnov"](n,6).ngClassPending,e["ɵnov"](n,8).validClass,e["ɵnov"](n,8).invalidClass]),l(n,9,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.key,"")),l(n,10,0,n.context.$implicit.desc)}))}function ju(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"a",[["class","float-right margin-right-md"],["href",""]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(l.component.advancedEnabled=!0,e=!1),e}),null,null)),(l()(),e["ɵted"](-1,null,["Advanced..."]))],null,null)}function Uu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Bu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function $u(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required because stripe count is defined!"]))],null,null)}function Mu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Stripe unit is greater than object size."]))],null,null)}function Lu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required because stripe unit is defined!"]))],null,null)}function zu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Stripe count must be greater than 0."]))],null,null)}function Ku(l){return e["ɵvid"](0,[e["ɵpid"](0,D.TitleCasePipe,[]),e["ɵpid"](0,ll.a,[]),(l()(),e["ɵeld"](2,0,null,null,193,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,192,"form",[["name","rbdForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var a=!0;return"submit"===n&&(a=!1!==e["ɵnov"](l,5).onSubmit(u)&&a),"reset"===n&&(a=!1!==e["ɵnov"](l,5).onReset()&&a),"submit"===n&&(a=!1!==e["ɵnov"](l,8).onSubmit()&&a),a}),null,null)),e["ɵdid"](4,16384,null,0,tl.G,[],null,null),e["ɵdid"](5,540672,[["formDir",4]],0,tl.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.l]),e["ɵdid"](7,16384,null,0,tl.s,[[4,tl.d]],null,null),e["ɵdid"](8,16384,null,0,El.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](9,0,null,null,186,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](11,null,[""," ",""])),e["ɵppd"](12,1),e["ɵppd"](13,1),(l()(),e["ɵeld"](14,0,null,null,172,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,iu)),e["ɵdid"](16,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](17,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](18,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](21,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","name"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](23,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](24,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,25)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,25).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,25)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,25)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](25,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](27,671744,[[3,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](29,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](30,4210688,null,0,Yn.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](31,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](32,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,su)),e["ɵdid"](34,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ru)),e["ɵdid"](36,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](37,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],[[null,"change"]],(function(l,n,u){var e=!0;return"change"===n&&(e=!1!==l.component.onPoolChange(u.target.value)&&e),e}),Gn.b,Gn.a)),e["ɵdid"](38,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](41,0,null,0,4,"label",[["class","cd-col-form-label"],["for","pool"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](43,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](44,{required:0}),(l()(),e["ɵted"](-1,null,["Pool"])),(l()(),e["ɵeld"](46,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,cu)),e["ɵdid"](48,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,vu)),e["ɵdid"](50,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Cu)),e["ɵdid"](52,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,bu)),e["ɵdid"](54,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Tu)),e["ɵdid"](56,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](57,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](58,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,11,{FormControlNames:1}),e["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),e["ɵeld"](61,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](62,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](63,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","useDataPool"],["id","useDataPool"],["name","useDataPool"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0,t=l.component;return"change"===n&&(a=!1!==e["ɵnov"](l,64).onChange(u.target.checked)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,64).onTouched()&&a),"change"===n&&(a=!1!==t.onUseDataPoolChange()&&a),a}),null,null)),e["ɵdid"](64,16384,null,0,tl.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.c]),e["ɵdid"](66,671744,[[11,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](68,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](69,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](70,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](71,0,null,null,1,"label",[["class","custom-control-label"],["for","useDataPool"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Use a dedicated data pool"])),(l()(),e["ɵand"](16777216,null,null,1,null,Fu)),e["ɵdid"](74,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](75,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](76,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,15,{FormControlNames:1}),e["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),e["ɵeld"](79,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","size"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Size"])),(l()(),e["ɵeld"](81,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](82,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["defaultUnit","GiB"],["formControlName","size"],["id","size"],["name","size"],["placeholder","e.g., 10GiB"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,83)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,83).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,83)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,83)._compositionEnd(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,88).onBlur(u.target.value)&&a),a}),null,null)),e["ɵdid"](83,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](85,671744,[[15,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](87,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](88,81920,null,0,Xn.a,[e.ElementRef,tl.q,B.a,U.a],{defaultUnit:[0,"defaultUnit"]},null),e["ɵdid"](89,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](90,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Pu)),e["ɵdid"](92,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Su)),e["ɵdid"](94,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](95,0,null,null,11,"div",[["class","form-group row"],["formGroupName","features"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](96,212992,null,0,tl.m,[[3,tl.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.m]),e["ɵdid"](98,16384,null,0,tl.s,[[4,tl.d]],null,null),e["ɵdid"](99,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,17,{FormControlNames:1}),e["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),e["ɵeld"](102,0,null,0,1,"label",[["class","cd-col-form-label"],["for","features"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Features"])),(l()(),e["ɵeld"](104,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Ou)),e["ɵdid"](106,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](107,0,null,null,3,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](108,0,null,null,2,"div",[["class","col-sm-12"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ju)),e["ɵdid"](110,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](111,0,null,null,75,"div",[],[[8,"hidden",0]],null,null,null,null)),(l()(),e["ɵeld"](112,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Advanced"])),(l()(),e["ɵeld"](114,0,null,null,70,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](115,0,null,null,1,"h4",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Striping"])),(l()(),e["ɵeld"](117,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](118,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,19,{FormControlNames:1}),e["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),e["ɵeld"](121,0,null,0,1,"label",[["class","cd-col-form-label"],["for","size"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Object size"])),(l()(),e["ɵeld"](123,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](124,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","obj_size"],["id","obj_size"],["name","obj_size"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,125).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,125).onTouched()&&a),a}),null,null)),e["ɵdid"](125,16384,null,0,tl.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.A]),e["ɵdid"](127,671744,[[19,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](129,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](130,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](131,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Uu)),e["ɵdid"](133,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](134,0,null,null,27,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](135,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,21,{FormControlNames:1}),e["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),e["ɵeld"](138,0,null,0,4,"label",[["class","cd-col-form-label"],["for","stripingUnit"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](140,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](141,{required:0}),(l()(),e["ɵted"](-1,null,["Stripe unit"])),(l()(),e["ɵeld"](143,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](144,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","stripingUnit"],["id","stripingUnit"],["name","stripingUnit"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,145).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,145).onTouched()&&a),a}),null,null)),e["ɵdid"](145,16384,null,0,tl.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.A]),e["ɵdid"](147,671744,[[21,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](149,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](150,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](151,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](152,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](153,147456,null,0,tl.v,[e.ElementRef,e.Renderer2,[2,tl.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](154,147456,null,0,tl.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select stripe unit --"])),(l()(),e["ɵand"](16777216,null,null,1,null,Bu)),e["ɵdid"](157,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,$u)),e["ɵdid"](159,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Mu)),e["ɵdid"](161,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](162,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](163,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,23,{FormControlNames:1}),e["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),e["ɵeld"](166,0,null,0,4,"label",[["class","cd-col-form-label"],["for","stripingCount"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](168,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](169,{required:0}),(l()(),e["ɵted"](-1,null,["Stripe count"])),(l()(),e["ɵeld"](171,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](172,0,null,null,8,"input",[["class","form-control"],["formControlName","stripingCount"],["id","stripingCount"],["name","stripingCount"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,173)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,173).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,173)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,173)._compositionEnd(u.target.value)&&a),"change"===n&&(a=!1!==e["ɵnov"](l,174).onChange(u.target.value)&&a),"input"===n&&(a=!1!==e["ɵnov"](l,174).onChange(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,174).onTouched()&&a),a}),null,null)),e["ɵdid"](173,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵdid"](174,16384,null,0,tl.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l,n){return[l,n]}),[tl.e,tl.w]),e["ɵdid"](176,671744,[[23,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](178,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](179,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](180,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Lu)),e["ɵdid"](182,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,zu)),e["ɵdid"](184,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](185,0,null,null,1,"cd-rbd-configuration-form",[],null,[[null,"changes"]],(function(l,n,u){var e=!0;return"changes"===n&&(e=!1!==(l.component.getDirtyConfigurationValues=u)&&e),e}),Hn.b,Hn.a)),e["ɵdid"](186,114688,null,0,lu.a,[U.a,nu.a],{form:[0,"form"],initializeData:[1,"initializeData"]},{changes:"changes"}),(l()(),e["ɵeld"](187,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](188,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](189,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),uu.b,uu.a)),e["ɵdid"](190,114688,null,0,eu.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](191,0,[""," ",""])),e["ɵppd"](192,1),e["ɵppd"](193,1),(l()(),e["ɵeld"](194,0,null,null,1,"cd-back-button",[],null,null,null,au.b,au.a)),e["ɵdid"](195,49152,null,0,tu.a,[D.Location,Xl.b],null,null)],(function(l,n){var u=n.component;l(n,5,0,u.rbdForm),l(n,8,0,u.rbdForm),l(n,16,0,u.rbdForm.getValue("parent")),l(n,18,0),l(n,27,0,"name"),l(n,30,0,""),l(n,32,0,"name"),l(n,34,0,u.rbdForm.showError("name",e["ɵnov"](n,5),"required")),l(n,36,0,u.rbdForm.showError("name",e["ɵnov"](n,5),"pattern")),l(n,38,0);var a=l(n,44,0,"editing"!==u.mode);l(n,43,0,"cd-col-form-label",a),l(n,48,0,"editing"===u.mode||!u.poolPermission.read),l(n,50,0,"editing"!==u.mode&&u.poolPermission.read),l(n,52,0,u.rbdForm.showError("pool",e["ɵnov"](n,5),"required")),l(n,54,0,"editing"!==u.mode&&u.rbdForm.getValue("pool")&&null===u.namespaces),l(n,56,0,"editing"===u.mode&&u.rbdForm.getValue("namespace")||"editing"!==u.mode&&(u.namespaces&&u.namespaces.length>0||!u.poolPermission.read)),l(n,58,0),l(n,66,0,"useDataPool"),l(n,70,0,"useDataPool"),l(n,74,0,u.rbdForm.getValue("useDataPool")),l(n,76,0),l(n,85,0,"size"),l(n,88,0,"GiB"),l(n,90,0,"size"),l(n,92,0,u.rbdForm.showError("size",e["ɵnov"](n,5),"required")),l(n,94,0,u.rbdForm.showError("size",e["ɵnov"](n,5),"invalidSizeObject")),l(n,96,0,"features"),l(n,99,0),l(n,106,0,u.featuresList),l(n,110,0,!u.advancedEnabled),l(n,118,0),l(n,127,0,"obj_size"),l(n,131,0,"obj_size"),l(n,133,0,u.objectSizes),l(n,135,0);var t=l(n,141,0,u.rbdForm.getValue("stripingCount"));l(n,140,0,"cd-col-form-label",t),l(n,147,0,"stripingUnit"),l(n,151,0,"stripingUnit"),l(n,153,0,null),l(n,154,0,null),l(n,157,0,u.objectSizes),l(n,159,0,u.rbdForm.showError("stripingUnit",e["ɵnov"](n,5),"required")),l(n,161,0,u.rbdForm.showError("stripingUnit",e["ɵnov"](n,5),"invalidStripingUnit")),l(n,163,0);var o=l(n,169,0,u.rbdForm.getValue("stripingUnit"));l(n,168,0,"cd-col-form-label",o),l(n,176,0,"stripingCount"),l(n,180,0,"stripingCount"),l(n,182,0,u.rbdForm.showError("stripingCount",e["ɵnov"](n,5),"required")),l(n,184,0,u.rbdForm.showError("stripingCount",e["ɵnov"](n,5),"min")),l(n,186,0,u.rbdForm,u.initializeConfigData),l(n,190,0,e["ɵnov"](n,5))}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,7).ngClassUntouched,e["ɵnov"](n,7).ngClassTouched,e["ɵnov"](n,7).ngClassPristine,e["ɵnov"](n,7).ngClassDirty,e["ɵnov"](n,7).ngClassValid,e["ɵnov"](n,7).ngClassInvalid,e["ɵnov"](n,7).ngClassPending);var a=e["ɵunv"](n,11,0,l(n,12,0,e["ɵnov"](n,0),u.action)),t=e["ɵunv"](n,11,1,l(n,13,0,e["ɵnov"](n,1),u.resource));l(n,11,0,a,t),l(n,17,0,e["ɵnov"](n,18).hasErrors,e["ɵnov"](n,18).hasSuccess),l(n,24,0,e["ɵnov"](n,29).ngClassUntouched,e["ɵnov"](n,29).ngClassTouched,e["ɵnov"](n,29).ngClassPristine,e["ɵnov"](n,29).ngClassDirty,e["ɵnov"](n,29).ngClassValid,e["ɵnov"](n,29).ngClassInvalid,e["ɵnov"](n,29).ngClassPending,e["ɵnov"](n,32).validClass,e["ɵnov"](n,32).invalidClass),l(n,37,0,e["ɵnov"](n,38).hasErrors,e["ɵnov"](n,38).hasSuccess),l(n,57,0,e["ɵnov"](n,58).hasErrors,e["ɵnov"](n,58).hasSuccess),l(n,63,0,e["ɵnov"](n,68).ngClassUntouched,e["ɵnov"](n,68).ngClassTouched,e["ɵnov"](n,68).ngClassPristine,e["ɵnov"](n,68).ngClassDirty,e["ɵnov"](n,68).ngClassValid,e["ɵnov"](n,68).ngClassInvalid,e["ɵnov"](n,68).ngClassPending,e["ɵnov"](n,70).validClass,e["ɵnov"](n,70).invalidClass),l(n,75,0,e["ɵnov"](n,76).hasErrors,e["ɵnov"](n,76).hasSuccess),l(n,82,0,e["ɵnov"](n,87).ngClassUntouched,e["ɵnov"](n,87).ngClassTouched,e["ɵnov"](n,87).ngClassPristine,e["ɵnov"](n,87).ngClassDirty,e["ɵnov"](n,87).ngClassValid,e["ɵnov"](n,87).ngClassInvalid,e["ɵnov"](n,87).ngClassPending,e["ɵnov"](n,90).validClass,e["ɵnov"](n,90).invalidClass),l(n,95,0,e["ɵnov"](n,98).ngClassUntouched,e["ɵnov"](n,98).ngClassTouched,e["ɵnov"](n,98).ngClassPristine,e["ɵnov"](n,98).ngClassDirty,e["ɵnov"](n,98).ngClassValid,e["ɵnov"](n,98).ngClassInvalid,e["ɵnov"](n,98).ngClassPending,e["ɵnov"](n,99).hasErrors,e["ɵnov"](n,99).hasSuccess),l(n,111,0,!u.advancedEnabled),l(n,117,0,e["ɵnov"](n,118).hasErrors,e["ɵnov"](n,118).hasSuccess),l(n,124,0,e["ɵnov"](n,129).ngClassUntouched,e["ɵnov"](n,129).ngClassTouched,e["ɵnov"](n,129).ngClassPristine,e["ɵnov"](n,129).ngClassDirty,e["ɵnov"](n,129).ngClassValid,e["ɵnov"](n,129).ngClassInvalid,e["ɵnov"](n,129).ngClassPending,e["ɵnov"](n,131).validClass,e["ɵnov"](n,131).invalidClass),l(n,134,0,e["ɵnov"](n,135).hasErrors,e["ɵnov"](n,135).hasSuccess),l(n,144,0,e["ɵnov"](n,149).ngClassUntouched,e["ɵnov"](n,149).ngClassTouched,e["ɵnov"](n,149).ngClassPristine,e["ɵnov"](n,149).ngClassDirty,e["ɵnov"](n,149).ngClassValid,e["ɵnov"](n,149).ngClassInvalid,e["ɵnov"](n,149).ngClassPending,e["ɵnov"](n,151).validClass,e["ɵnov"](n,151).invalidClass),l(n,162,0,e["ɵnov"](n,163).hasErrors,e["ɵnov"](n,163).hasSuccess),l(n,172,0,e["ɵnov"](n,178).ngClassUntouched,e["ɵnov"](n,178).ngClassTouched,e["ɵnov"](n,178).ngClassPristine,e["ɵnov"](n,178).ngClassDirty,e["ɵnov"](n,178).ngClassValid,e["ɵnov"](n,178).ngClassInvalid,e["ɵnov"](n,178).ngClassPending,e["ɵnov"](n,180).validClass,e["ɵnov"](n,180).invalidClass);var o=e["ɵunv"](n,191,0,l(n,192,0,e["ɵnov"](n,0),u.action)),d=e["ɵunv"](n,191,1,l(n,193,0,e["ɵnov"](n,1),u.resource));l(n,191,0,o,d)}))}function Gu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rbd-form",[],null,null,null,Ku,du)),e["ɵdid"](1,114688,null,0,ou.a,[fl.a,Cl.a,Rn.a,Ql.a,U.a,Yl.a,B.a,A.a,Xl.b,Cl.m],null,null)],(function(l,n){l(n,1,0)}),null)}var Zu=e["ɵccf"]("cd-rbd-form",ou.a,Gu,{},{},[]),Ju=u("JxMD"),Wu=u("dgut");class Qu{constructor(l){this.router=l}ngOnInit(){this.url=this.router.url}navigateTo(l){this.router.navigate([l])}}var Yu=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Xu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,Sl.b,Sl.a)),e["ɵdid"](1,180224,null,0,bl.e,[bl.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,1,"tab",[["heading","Overview"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/iscsi/overview")&&e),e}),null,null)),e["ɵdid"](3,212992,null,0,bl.b,[bl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵeld"](4,0,null,0,1,"tab",[["heading","Targets"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/block/iscsi/targets")&&e),e}),null,null)),e["ɵdid"](5,212992,null,0,bl.b,[bl.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"})],(function(l,n){var u=n.component;l(n,3,0,"Overview","/block/iscsi/overview"===u.url),l(n,5,0,"Targets","/block/iscsi/targets"===u.url)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby),l(n,4,0,e["ɵnov"](n,5).id,e["ɵnov"](n,5).active,e["ɵnov"](n,5).addClass,e["ɵnov"](n,5).role,e["ɵnov"](n,5).ariaLabelledby)}))}var Hu=u("roDX"),le=u("my5R"),ne=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ue(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"cd-sparkline",[],null,null,null,Ju.b,Ju.a)),e["ɵdid"](2,638976,null,0,Wu.a,[B.a],{data:[0,"data"],isBinary:[1,"isBinary"]},null)],(function(l,n){l(n,2,0,n.parent.context.value,n.parent.context.row.cdIsBinary)}),null)}function ee(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" n/a "]))],null,null)}function ae(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,ue)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ee)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,"user:rbd"===n.context.row.backstore),l(n,3,0,"user:rbd"!==n.context.row.backstore)}),null)}function te(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," /s "]))],null,(function(l,n){l(n,1,0,n.parent.context.value)}))}function oe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" n/a "]))],null,null)}function de(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,te)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,oe)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,"user:rbd"===n.context.row.backstore),l(n,3,0,"user:rbd"!==n.context.row.backstore)}),null)}function ie(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "])),e["ɵppd"](2,1)],null,(function(l,n){var u=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent,0),n.parent.context.value));l(n,1,0,u)}))}function se(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" n/a "]))],null,null)}function re(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,ie)),e["ɵdid"](1,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,se)),e["ɵdid"](3,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,"user:rbd"===n.context.row.backstore),l(n,3,0,"user:rbd"!==n.context.row.backstore)}),null)}function ce(l){return e["ɵvid"](0,[e["ɵpid"](0,L.a,[]),e["ɵqud"](402653184,1,{iscsiSparklineTpl:0}),e["ɵqud"](402653184,2,{iscsiPerSecondTpl:0}),e["ɵqud"](402653184,3,{iscsiRelativeDateTpl:0}),(l()(),e["ɵeld"](4,0,null,null,1,"cd-iscsi-tabs",[],null,null,null,Xu,Yu)),e["ɵdid"](5,114688,null,0,Qu,[Cl.m],null,null),(l()(),e["ɵeld"](6,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Gateways"])),(l()(),e["ɵeld"](8,0,null,null,1,"cd-table",[],null,[[null,"fetchData"]],(function(l,n,u){var e=!0;return"fetchData"===n&&(e=!1!==l.component.refresh()&&e),e}),Bl.b,Bl.a)),e["ɵdid"](9,2867200,null,0,$l.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},{fetchData:"fetchData"}),(l()(),e["ɵeld"](10,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Images"])),(l()(),e["ɵeld"](12,0,null,null,1,"cd-table",[],null,null,null,Bl.b,Bl.a)),e["ɵdid"](13,2867200,null,0,$l.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},null),(l()(),e["ɵand"](0,[[1,2],["iscsiSparklineTpl",2]],null,0,null,ae)),(l()(),e["ɵand"](0,[[2,2],["iscsiPerSecondTpl",2]],null,0,null,de)),(l()(),e["ɵand"](0,[[3,2],["iscsiRelativeDateTpl",2]],null,0,null,re))],(function(l,n){var u=n.component;l(n,5,0),l(n,9,0,u.gateways,u.gatewaysColumns),l(n,13,0,u.images,u.imagesColumns)}),null)}function pe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-iscsi",[],null,null,null,ce,ne)),e["ɵdid"](1,114688,null,0,Hu.a,[le.a,M.a,z.a,A.a],null,null)],(function(l,n){l(n,1,0)}),null)}var me=e["ɵccf"]("cd-iscsi",Hu.a,pe,{},{},[]),ge=u("DqMs"),fe=u("/NlG"),ve=u("i4WA"),Ce=u("6qls"),be=u("tz6c"),he=u("3ris"),Re=u("e/kN"),Ie=e["ɵcrt"]({encapsulation:0,styles:[["tabset.tabset>ul{border-bottom:0;float:left;display:block;margin-right:20px;border-right:1px solid #ddd;padding-right:15px}"]],data:{}});function Ne(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Available information:"])),(l()(),e["ɵeld"](4,0,null,null,1,"pre",[],null,null,null,null,null)),(l()(),e["ɵted"](5,null,["",""]))],null,(function(l,n){l(n,5,0,n.component.status)}))}function we(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,"cd-alert-panel",[["title","iSCSI Targets not available"],["type","info"]],null,null,null,ge.b,ge.a)),e["ɵdid"](1,114688,null,0,fe.a,[A.a],{title:[0,"title"],type:[1,"type"]},null),(l()(),e["ɵeld"](2,0,null,0,4,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Please consult the "])),(l()(),e["ɵeld"](4,0,null,null,1,"cd-doc",[["section","iscsi"]],null,null,null,ve.b,ve.a)),e["ɵdid"](5,114688,null,0,Ce.a,[be.a,A.a],{section:[0,"section"]},null),(l()(),e["ɵted"](-1,null,[" on how to configure and enable the iSCSI Targets management functionality."])),(l()(),e["ɵand"](16777216,null,0,1,null,Ne)),e["ɵdid"](8,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0,"iSCSI Targets not available","info"),l(n,5,0,"iscsi"),l(n,8,0,u.status)}),null)}function Ee(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-iscsi-target-details",[["cdTableDetail",""]],null,null,null,x.c,x.b)),e["ɵdid"](1,638976,null,0,he.a,[A.a,z.a,S.a],{selection:[0,"selection"],settings:[1,"settings"],cephIscsiConfigVersion:[2,"cephIscsiConfigVersion"]},null)],(function(l,n){var u=n.component;l(n,1,0,u.expandedRow,u.settings,u.cephIscsiConfigVersion)}),null)}function Te(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,13,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","target_iqn"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(l,n,u){var e=!0,a=l.component;return"setExpandedRow"===n&&(e=!1!==a.setExpandedRow(u)&&e),"updateSelection"===n&&(e=!1!==a.updateSelection(u)&&e),e}),Bl.b,Bl.a)),e["ɵdid"](1,2867200,[[1,4],["table",4]],0,$l.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](2,0,null,1,9,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"cd-table-actions",[["class","btn-group"]],null,null,null,Ml.b,Ml.a)),e["ɵdid"](4,114688,null,0,Ll.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](5,0,null,null,6,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.configureDiscoveryAuth()&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1),(l()(),e["ɵeld"](10,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Discovery authentication"])),(l()(),e["ɵand"](16777216,null,3,1,null,Ee)),e["ɵdid"](13,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0,u.targets,u.columns,"flex",!0,"target_iqn","true","single"),l(n,4,0,u.permission,u.selection,u.tableActions);var e=l(n,9,0,u.icons.key);l(n,8,0,e),l(n,13,0,u.expandedRow)}),null)}function ye(l){return e["ɵvid"](0,[e["ɵqud"](671088640,1,{table:0}),(l()(),e["ɵeld"](1,0,null,null,1,"cd-iscsi-tabs",[],null,null,null,Xu,Yu)),e["ɵdid"](2,114688,null,0,Qu,[Cl.m],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,we)),e["ɵdid"](4,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Te)),e["ɵdid"](6,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,2,0),l(n,4,0,!1===u.available),l(n,6,0,!0===u.available)}),null)}function Ve(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-iscsi-target-list",[],null,null,null,ye,Ie)),e["ɵprd"](131584,null,Kl.a,Kl.a,[Gl.a,Zl.a]),e["ɵdid"](2,245760,null,0,Re.a,[fl.a,A.a,le.a,K.a,Kl.a,H.a,pl.b,Yl.a,Xl.b],null,null)],(function(l,n){l(n,2,0)}),null)}var xe=e["ɵccf"]("cd-iscsi-target-list",Re.a,Ve,{},{},[]),qe=u("D4zM"),ke=u("OcYo"),_e=u("EApP"),De=u("WiuZ"),Fe=u("wnGv"),Pe=u("LvDl");class Se{constructor(l){this.ngControl=l}onInput(l){this.setValue(l)}setValue(l){l=Pe.isString(l)?l.trim():l,this.ngControl.control.setValue(l)}}var Ae=u("gr3l"),Oe=e["ɵcrt"]({encapsulation:0,styles:[[".cd-mb[_ngcontent-%COMP%]{margin-bottom:10px}"]],data:{}});function je(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ue(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["IQN has wrong pattern."]))],null,null)}function Be(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["An IQN has the following notation 'iqn.$year-$month.$reversedAddress:$definedName'"])),(l()(),e["ɵeld"](3,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309"])),(l()(),e["ɵeld"](6,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,1,"a",[["href","https://en.wikipedia.org/wiki/ISCSI#Addressing"],["target","_blank"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["More information"]))],null,null)}function $e(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This target has modified advanced settings."]))],null,null)}function Me(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removePortal(l.context.index,l.context.$implicit)&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1)],(function(l,n){var u=l(n,9,0,n.component.icons.destroy);l(n,8,0,u)}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function Le(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["At least "," gateways are required."]))],null,(function(l,n){l(n,1,0,n.component.minimum_gateways)}))}function ze(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵted"](1,null,["lun: ",""]))],null,(function(l,n){l(n,1,0,n.component.imagesSettings[n.parent.context.$implicit].lun)}))}function Ke(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(l()(),e["ɵted"](1,null,["Backstore: ",". "])),e["ɵppd"](2,1)],null,(function(l,n){var u=n.component,a=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent.parent,2),u.imagesSettings[n.parent.context.$implicit].backstore));l(n,1,0,a)}))}function Ge(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This image has modified settings."]))],null,null)}function Ze(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,21,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,15,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ze)),e["ɵdid"](6,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](7,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.imageSettingsModal(l.context.$implicit)&&e),e}),null,null)),(l()(),e["ɵeld"](8,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](10,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](11,1),(l()(),e["ɵeld"](12,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeImage(l.context.index,l.context.$implicit)&&e),e}),null,null)),(l()(),e["ɵeld"](13,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](15,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](16,1),(l()(),e["ɵeld"](17,0,null,null,4,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Ke)),e["ɵdid"](19,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ge)),e["ɵdid"](21,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,6,0,u.api_version>=1);var e=l(n,11,0,u.icons.deepCheck);l(n,10,0,e);var a=l(n,16,0,u.icons.destroy);l(n,15,0,a),l(n,19,0,u.backstores.length>1),l(n,21,0,u.hasAdvancedSettings(u.imagesSettings[n.context.$implicit][u.imagesSettings[n.context.$implicit].backstore]))}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function Je(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Duplicated LUN numbers."]))],null,null)}function We(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Duplicated WWN."]))],null,null)}function Qe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ye(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function Xe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function He(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function la(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function na(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function ua(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ea(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function aa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,95,"div",[["formGroupName","auth"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](1,212992,null,0,tl.m,[[3,tl.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.m]),e["ɵdid"](3,16384,null,0,tl.s,[[4,tl.d]],null,null),(l()(),e["ɵeld"](4,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](5,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](8,0,null,0,2,"label",[["class","cd-col-form-label"],["for","target_user"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User"])),(l()(),e["ɵeld"](11,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","user"],["id","target_user"],["name","target_user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,13).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,13)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](13,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](15,671744,[[9,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](17,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](18,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](19,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Qe)),e["ɵdid"](21,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ye)),e["ɵdid"](23,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](24,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](25,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,11,{FormControlNames:1}),e["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),e["ɵeld"](28,0,null,0,2,"label",[["class","cd-col-form-label"],["for","target_password"]],null,null,null,null,null)),(l()(),e["ɵeld"](29,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password"])),(l()(),e["ɵeld"](31,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](32,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](33,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","password"],["id","target_password"],["name","target_password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,34)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,34).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,34)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,34)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](34,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](36,671744,[[11,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](38,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](39,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](40,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](41,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](42,0,null,null,1,"button",[["cdPasswordButton","target_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,43).onClick()&&a),a}),null,null)),e["ɵdid"](43,81920,null,0,qe.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](44,0,null,null,1,"button",[["cdCopy2ClipboardButton","target_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,45).onClick()&&a),a}),null,null)),e["ɵdid"](45,81920,null,0,ke.a,[e.ElementRef,e.Renderer2,_e.j,A.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Xe)),e["ɵdid"](47,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,He)),e["ɵdid"](49,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](50,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](51,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,13,{FormControlNames:1}),e["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),e["ɵeld"](54,0,null,0,2,"label",[["class","cd-col-form-label"],["for","target_mutual_user"]],null,null,null,null,null)),(l()(),e["ɵeld"](55,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mutual User"])),(l()(),e["ɵeld"](57,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](58,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","mutual_user"],["id","target_mutual_user"],["name","target_mutual_user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,59)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,59).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,59)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,59)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](59,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](61,671744,[[13,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](63,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](64,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](65,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,la)),e["ɵdid"](67,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,na)),e["ɵdid"](69,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](70,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](71,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,15,{FormControlNames:1}),e["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),e["ɵeld"](74,0,null,0,2,"label",[["class","cd-col-form-label"],["for","target_mutual_password"]],null,null,null,null,null)),(l()(),e["ɵeld"](75,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mutual Password"])),(l()(),e["ɵeld"](77,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](78,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](79,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","mutual_password"],["id","target_mutual_password"],["name","target_mutual_password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,80)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,80).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,80)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,80)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](80,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](82,671744,[[15,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](84,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](85,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](86,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](87,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](88,0,null,null,1,"button",[["cdPasswordButton","target_mutual_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,89).onClick()&&a),a}),null,null)),e["ɵdid"](89,81920,null,0,qe.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](90,0,null,null,1,"button",[["cdCopy2ClipboardButton","target_mutual_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,91).onClick()&&a),a}),null,null)),e["ɵdid"](91,81920,null,0,ke.a,[e.ElementRef,e.Renderer2,_e.j,A.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ua)),e["ɵdid"](93,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ea)),e["ɵdid"](95,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0,"auth"),l(n,5,0),l(n,15,0,"user"),l(n,19,0,"user"),l(n,21,0,u.targetForm.showError("user",e["ɵnov"](n.parent,2),"required")),l(n,23,0,u.targetForm.showError("user",e["ɵnov"](n.parent,2),"pattern")),l(n,25,0),l(n,36,0,"password"),l(n,40,0,"password"),l(n,43,0,"target_password"),l(n,45,0,"target_password"),l(n,47,0,u.targetForm.showError("password",e["ɵnov"](n.parent,2),"required")),l(n,49,0,u.targetForm.showError("password",e["ɵnov"](n.parent,2),"pattern")),l(n,51,0),l(n,61,0,"mutual_user"),l(n,65,0,"mutual_user"),l(n,67,0,u.targetForm.showError("mutual_user",e["ɵnov"](n.parent,2),"required")),l(n,69,0,u.targetForm.showError("mutual_user",e["ɵnov"](n.parent,2),"pattern")),l(n,71,0),l(n,82,0,"mutual_password"),l(n,86,0,"mutual_password"),l(n,89,0,"target_mutual_password"),l(n,91,0,"target_mutual_password"),l(n,93,0,u.targetForm.showError("mutual_password",e["ɵnov"](n.parent,2),"required")),l(n,95,0,u.targetForm.showError("mutual_password",e["ɵnov"](n.parent,2),"pattern"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,3).ngClassUntouched,e["ɵnov"](n,3).ngClassTouched,e["ɵnov"](n,3).ngClassPristine,e["ɵnov"](n,3).ngClassDirty,e["ɵnov"](n,3).ngClassValid,e["ɵnov"](n,3).ngClassInvalid,e["ɵnov"](n,3).ngClassPending),l(n,4,0,e["ɵnov"](n,5).hasErrors,e["ɵnov"](n,5).hasSuccess),l(n,12,0,e["ɵnov"](n,17).ngClassUntouched,e["ɵnov"](n,17).ngClassTouched,e["ɵnov"](n,17).ngClassPristine,e["ɵnov"](n,17).ngClassDirty,e["ɵnov"](n,17).ngClassValid,e["ɵnov"](n,17).ngClassInvalid,e["ɵnov"](n,17).ngClassPending,e["ɵnov"](n,19).validClass,e["ɵnov"](n,19).invalidClass),l(n,24,0,e["ɵnov"](n,25).hasErrors,e["ɵnov"](n,25).hasSuccess),l(n,33,0,e["ɵnov"](n,38).ngClassUntouched,e["ɵnov"](n,38).ngClassTouched,e["ɵnov"](n,38).ngClassPristine,e["ɵnov"](n,38).ngClassDirty,e["ɵnov"](n,38).ngClassValid,e["ɵnov"](n,38).ngClassInvalid,e["ɵnov"](n,38).ngClassPending,e["ɵnov"](n,40).validClass,e["ɵnov"](n,40).invalidClass),l(n,50,0,e["ɵnov"](n,51).hasErrors,e["ɵnov"](n,51).hasSuccess),l(n,58,0,e["ɵnov"](n,63).ngClassUntouched,e["ɵnov"](n,63).ngClassTouched,e["ɵnov"](n,63).ngClassPristine,e["ɵnov"](n,63).ngClassDirty,e["ɵnov"](n,63).ngClassValid,e["ɵnov"](n,63).ngClassInvalid,e["ɵnov"](n,63).ngClassPending,e["ɵnov"](n,65).validClass,e["ɵnov"](n,65).invalidClass),l(n,70,0,e["ɵnov"](n,71).hasErrors,e["ɵnov"](n,71).hasSuccess),l(n,79,0,e["ɵnov"](n,84).ngClassUntouched,e["ɵnov"](n,84).ngClassTouched,e["ɵnov"](n,84).ngClassPristine,e["ɵnov"](n,84).ngClassDirty,e["ɵnov"](n,84).ngClassValid,e["ɵnov"](n,84).ngClassInvalid,e["ɵnov"](n,84).ngClassPending,e["ɵnov"](n,86).validClass,e["ɵnov"](n,86).invalidClass)}))}function ta(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiator IQN needs to be unique."]))],null,null)}function oa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function da(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["IQN has wrong pattern."]))],null,null)}function ia(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function sa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function ra(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ca(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function pa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ma(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User names must have a length of 8 to 64 characters and can contain alphanumeric characters, '.', '@', '-', '_' or ':'."]))],null,null)}function ga(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function fa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Passwords must have a length of 12 to 16 characters and can contain alphanumeric characters, '@', '-', '_' or '/'."]))],null,null)}function va(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeInitiatorImage(l.parent.context.$implicit,l.context.index,l.parent.context.index,l.context.$implicit)&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1)],(function(l,n){var u=l(n,9,0,n.component.icons.destroy);l(n,8,0,u)}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function Ca(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiator belongs to a group. Images will be configure in the group."]))],null,null)}function ba(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,null,null,De.b,De.a)),e["ɵdid"](3,638976,null,0,Fe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},null),(l()(),e["ɵeld"](4,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](6,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](7,1),(l()(),e["ɵeld"](8,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add image"]))],(function(l,n){var u=n.component,e=n.parent.context.$implicit.getValue("luns");l(n,3,0,"btn btn-light float-right",e,u.imagesInitiatorSelections[n.parent.context.index],u.messages.initiatorImage);var a=l(n,7,0,u.icons.add);l(n,6,0,a)}),null)}function ha(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,141,"div",[["class","card mb-2"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](1,212992,null,0,tl.m,[[3,tl.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.m]),e["ɵdid"](3,16384,null,0,tl.s,[[4,tl.d]],null,null),(l()(),e["ɵeld"](4,0,null,null,8,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiator"])),(l()(),e["ɵted"](7,null,[": "," "])),(l()(),e["ɵeld"](8,0,null,null,4,"button",[["class","close"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeInitiator(l.context.index)&&e),e}),null,null)),(l()(),e["ɵeld"](9,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](11,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](12,1),(l()(),e["ɵeld"](13,0,null,null,128,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](14,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](15,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,19,{FormControlNames:1}),e["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),e["ɵeld"](18,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","client_iqn"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Client IQN"])),(l()(),e["ɵeld"](20,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](21,0,null,null,8,"input",[["cdTrim",""],["class","form-control"],["formControlName","client_iqn"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"blur"],[null,"input"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0,t=l.component;return"input"===n&&(a=!1!==e["ɵnov"](l,22)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,22).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,22)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,22)._compositionEnd(u.target.value)&&a),"input"===n&&(a=!1!==e["ɵnov"](l,27).onInput(u.target.value)&&a),"blur"===n&&(a=!1!==t.updatedInitiatorSelector()&&a),a}),null,null)),e["ɵdid"](22,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](24,671744,[[19,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](26,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](27,16384,null,0,Se,[tl.q],null,null),e["ɵdid"](28,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](29,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ta)),e["ɵdid"](31,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,oa)),e["ɵdid"](33,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,da)),e["ɵdid"](35,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](36,0,null,null,92,null,null,null,null,null,null,null)),e["ɵdid"](37,212992,null,0,tl.m,[[3,tl.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.m]),e["ɵdid"](39,16384,null,0,tl.s,[[4,tl.d]],null,null),(l()(),e["ɵeld"](40,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](41,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,21,{FormControlNames:1}),e["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),e["ɵeld"](44,0,null,0,1,"label",[["class","cd-col-form-label"],["for","user"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User"])),(l()(),e["ɵeld"](46,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](47,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","user"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,48)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,48).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,48)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,48)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](48,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](50,671744,[[21,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](52,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](53,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](54,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ia)),e["ɵdid"](56,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,sa)),e["ɵdid"](58,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](59,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](60,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,23,{FormControlNames:1}),e["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),e["ɵeld"](63,0,null,0,1,"label",[["class","cd-col-form-label"],["for","password"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password"])),(l()(),e["ɵeld"](65,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](66,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](67,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","password"],["type","password"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,68)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,68).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,68)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,68)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](68,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](70,671744,[[23,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](72,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](73,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](74,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](75,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](76,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,77).onClick()&&a),a}),null,null)),e["ɵdid"](77,81920,null,0,qe.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](78,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,79).onClick()&&a),a}),null,null)),e["ɵdid"](79,81920,null,0,ke.a,[e.ElementRef,e.Renderer2,_e.j,A.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ra)),e["ɵdid"](81,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ca)),e["ɵdid"](83,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](84,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](85,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,25,{FormControlNames:1}),e["ɵqud"](603979776,26,{messagesBlock:0}),(l()(),e["ɵeld"](88,0,null,0,2,"label",[["class","cd-col-form-label"],["for","mutual_user"]],null,null,null,null,null)),(l()(),e["ɵeld"](89,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mutual User"])),(l()(),e["ɵeld"](91,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](92,0,null,null,7,"input",[["autocomplete","off"],["class","form-control"],["formControlName","mutual_user"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,93)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,93).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,93)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,93)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](93,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](95,671744,[[25,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](97,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](98,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](99,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pa)),e["ɵdid"](101,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ma)),e["ɵdid"](103,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](104,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](105,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,27,{FormControlNames:1}),e["ɵqud"](603979776,28,{messagesBlock:0}),(l()(),e["ɵeld"](108,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mutual_password"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mutual Password"])),(l()(),e["ɵeld"](110,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](111,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](112,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","mutual_password"],["type","password"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,113)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,113).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,113)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,113)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](113,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](115,671744,[[27,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](117,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](118,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](119,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](120,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](121,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,122).onClick()&&a),a}),null,null)),e["ɵdid"](122,81920,null,0,qe.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](123,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,124).onClick()&&a),a}),null,null)),e["ɵdid"](124,81920,null,0,ke.a,[e.ElementRef,e.Renderer2,_e.j,A.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ga)),e["ɵdid"](126,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,fa)),e["ɵdid"](128,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](129,0,null,null,12,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](130,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,29,{FormControlNames:1}),e["ɵqud"](603979776,30,{messagesBlock:0}),(l()(),e["ɵeld"](133,0,null,0,1,"label",[["class","cd-col-form-label"],["for","luns"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Images"])),(l()(),e["ɵeld"](135,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,va)),e["ɵdid"](137,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ca)),e["ɵdid"](139,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ba)),e["ɵdid"](141,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0,n.context.index);var a=l(n,12,0,u.icons.destroy);l(n,11,0,a),l(n,15,0),l(n,24,0,"client_iqn"),l(n,29,0,"client_iqn");var t=n.context.$implicit.showError("client_iqn",e["ɵnov"](n.parent.parent,2),"notUnique");l(n,31,0,t);var o=n.context.$implicit.showError("client_iqn",e["ɵnov"](n.parent.parent,2),"required");l(n,33,0,o);var d=n.context.$implicit.showError("client_iqn",e["ɵnov"](n.parent.parent,2),"pattern");l(n,35,0,d),l(n,37,0,"auth"),l(n,41,0),l(n,50,0,"user"),l(n,54,0,"user");var i=n.context.$implicit.showError("user",e["ɵnov"](n.parent.parent,2),"required");l(n,56,0,i);var s=n.context.$implicit.showError("user",e["ɵnov"](n.parent.parent,2),"pattern");l(n,58,0,s),l(n,60,0),l(n,70,0,"password"),l(n,74,0,"password"),l(n,77,0,"password"+n.context.index),l(n,79,0,"password"+n.context.index);var r=n.context.$implicit.showError("password",e["ɵnov"](n.parent.parent,2),"required");l(n,81,0,r);var c=n.context.$implicit.showError("password",e["ɵnov"](n.parent.parent,2),"pattern");l(n,83,0,c),l(n,85,0),l(n,95,0,"mutual_user"),l(n,99,0,"mutual_user");var p=n.context.$implicit.showError("mutual_user",e["ɵnov"](n.parent.parent,2),"required");l(n,101,0,p);var m=n.context.$implicit.showError("mutual_user",e["ɵnov"](n.parent.parent,2),"pattern");l(n,103,0,m),l(n,105,0),l(n,115,0,"mutual_password"),l(n,119,0,"mutual_password"),l(n,122,0,"mutual_password"+n.context.index),l(n,124,0,"mutual_password"+n.context.index);var g=n.context.$implicit.showError("mutual_password",e["ɵnov"](n.parent.parent,2),"required");l(n,126,0,g);var f=n.context.$implicit.showError("mutual_password",e["ɵnov"](n.parent.parent,2),"pattern");l(n,128,0,f),l(n,130,0);var v=n.context.$implicit.getValue("luns");l(n,137,0,v);var C=n.context.$implicit.getValue("cdIsInGroup");l(n,139,0,C);var b=!n.context.$implicit.getValue("cdIsInGroup");l(n,141,0,b)}),(function(l,n){l(n,0,0,e["ɵnov"](n,3).ngClassUntouched,e["ɵnov"](n,3).ngClassTouched,e["ɵnov"](n,3).ngClassPristine,e["ɵnov"](n,3).ngClassDirty,e["ɵnov"](n,3).ngClassValid,e["ɵnov"](n,3).ngClassInvalid,e["ɵnov"](n,3).ngClassPending);var u=n.context.$implicit.getValue("client_iqn");l(n,7,0,u),l(n,14,0,e["ɵnov"](n,15).hasErrors,e["ɵnov"](n,15).hasSuccess),l(n,21,0,e["ɵnov"](n,26).ngClassUntouched,e["ɵnov"](n,26).ngClassTouched,e["ɵnov"](n,26).ngClassPristine,e["ɵnov"](n,26).ngClassDirty,e["ɵnov"](n,26).ngClassValid,e["ɵnov"](n,26).ngClassInvalid,e["ɵnov"](n,26).ngClassPending,e["ɵnov"](n,29).validClass,e["ɵnov"](n,29).invalidClass),l(n,40,0,e["ɵnov"](n,41).hasErrors,e["ɵnov"](n,41).hasSuccess),l(n,47,0,"user"+n.context.index,e["ɵnov"](n,52).ngClassUntouched,e["ɵnov"](n,52).ngClassTouched,e["ɵnov"](n,52).ngClassPristine,e["ɵnov"](n,52).ngClassDirty,e["ɵnov"](n,52).ngClassValid,e["ɵnov"](n,52).ngClassInvalid,e["ɵnov"](n,52).ngClassPending,e["ɵnov"](n,54).validClass,e["ɵnov"](n,54).invalidClass),l(n,59,0,e["ɵnov"](n,60).hasErrors,e["ɵnov"](n,60).hasSuccess),l(n,67,0,"password"+n.context.index,e["ɵnov"](n,72).ngClassUntouched,e["ɵnov"](n,72).ngClassTouched,e["ɵnov"](n,72).ngClassPristine,e["ɵnov"](n,72).ngClassDirty,e["ɵnov"](n,72).ngClassValid,e["ɵnov"](n,72).ngClassInvalid,e["ɵnov"](n,72).ngClassPending,e["ɵnov"](n,74).validClass,e["ɵnov"](n,74).invalidClass),l(n,84,0,e["ɵnov"](n,85).hasErrors,e["ɵnov"](n,85).hasSuccess),l(n,92,0,"mutual_user"+n.context.index,e["ɵnov"](n,97).ngClassUntouched,e["ɵnov"](n,97).ngClassTouched,e["ɵnov"](n,97).ngClassPristine,e["ɵnov"](n,97).ngClassDirty,e["ɵnov"](n,97).ngClassValid,e["ɵnov"](n,97).ngClassInvalid,e["ɵnov"](n,97).ngClassPending,e["ɵnov"](n,99).validClass,e["ɵnov"](n,99).invalidClass),l(n,104,0,e["ɵnov"](n,105).hasErrors,e["ɵnov"](n,105).hasSuccess),l(n,112,0,"mutual_password"+n.context.index,e["ɵnov"](n,117).ngClassUntouched,e["ɵnov"](n,117).ngClassTouched,e["ɵnov"](n,117).ngClassPristine,e["ɵnov"](n,117).ngClassDirty,e["ɵnov"](n,117).ngClassValid,e["ɵnov"](n,117).ngClassInvalid,e["ɵnov"](n,117).ngClassPending,e["ɵnov"](n,119).validClass,e["ɵnov"](n,119).invalidClass),l(n,129,0,e["ɵnov"](n,130).hasErrors,e["ɵnov"](n,130).hasSuccess)}))}function Ra(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["No items added."]))],null,null)}function Ia(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](1,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,17,{FormControlNames:1}),e["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","initiators"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiators"])),(l()(),e["ɵeld"](6,0,null,0,17,"div",[["class","cd-col-form-input"],["formArrayName","initiators"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](7,212992,null,0,tl.g,[[3,tl.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.g]),e["ɵdid"](9,16384,null,0,tl.s,[[4,tl.d]],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,ha)),e["ɵdid"](11,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](12,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,9,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Ra)),e["ɵdid"](15,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](16,0,null,null,6,"button",[["class","btn btn-light float-right"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(l.component.addInitiator(),e=!1),e}),null,null)),(l()(),e["ɵeld"](17,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](19,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](20,1),(l()(),e["ɵeld"](21,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add initiator"])),(l()(),e["ɵeld"](23,0,null,null,0,"hr",[],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,1,0),l(n,7,0,"initiators"),l(n,11,0,u.initiators.controls),l(n,15,0,0===u.initiators.controls.length);var e=l(n,20,0,u.icons.add);l(n,19,0,e)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,9).ngClassUntouched,e["ɵnov"](n,9).ngClassTouched,e["ɵnov"](n,9).ngClassPristine,e["ɵnov"](n,9).ngClassDirty,e["ɵnov"](n,9).ngClassValid,e["ɵnov"](n,9).ngClassInvalid,e["ɵnov"](n,9).ngClassPending)}))}function Na(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeGroupInitiator(l.parent.context.$implicit,l.context.index,l.parent.context.index)&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1)],(function(l,n){var u=l(n,9,0,n.component.icons.destroy);l(n,8,0,u)}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function wa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,8,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](3,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),(l()(),e["ɵeld"](4,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.removeGroupDisk(l.parent.context.$implicit,l.context.index,l.parent.context.index)&&e),e}),null,null)),(l()(),e["ɵeld"](6,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](8,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](9,1)],(function(l,n){var u=l(n,9,0,n.component.icons.destroy);l(n,8,0,u)}),(function(l,n){l(n,2,0,n.context.$implicit)}))}function Ea(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,70,"div",[["class","card mb-2"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](1,212992,null,0,tl.m,[[3,tl.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.m]),e["ɵdid"](3,16384,null,0,tl.s,[[4,tl.d]],null,null),(l()(),e["ɵeld"](4,0,null,null,8,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Group"])),(l()(),e["ɵted"](7,null,[": "," "])),(l()(),e["ɵeld"](8,0,null,null,4,"button",[["class","close"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.groups.removeAt(l.context.index)&&e),e}),null,null)),(l()(),e["ɵeld"](9,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](11,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](12,1),(l()(),e["ɵeld"](13,0,null,null,57,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](14,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](15,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,33,{FormControlNames:1}),e["ɵqud"](603979776,34,{messagesBlock:0}),(l()(),e["ɵeld"](18,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","group_id"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](20,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](21,0,null,null,7,"input",[["class","form-control"],["formControlName","group_id"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,22)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,22).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,22)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,22)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](22,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](24,671744,[[33,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](26,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](27,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](28,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](29,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](30,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,35,{FormControlNames:1}),e["ɵqud"](603979776,36,{messagesBlock:0}),(l()(),e["ɵeld"](33,0,null,0,2,"label",[["class","cd-col-form-label"],["for","members"]],null,null,null,null,null)),(l()(),e["ɵeld"](34,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Initiators"])),(l()(),e["ɵeld"](36,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Na)),e["ɵdid"](38,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](39,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](40,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](41,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,[[null,"selection"]],(function(l,n,u){var e=!0;return"selection"===n&&(e=!1!==l.component.onGroupMemberSelection(u)&&e),e}),De.b,De.a)),e["ɵdid"](42,638976,null,0,Fe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},{selection:"selection"}),(l()(),e["ɵeld"](43,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](45,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](46,1),(l()(),e["ɵeld"](47,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add initiator"])),(l()(),e["ɵeld"](49,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](50,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](51,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,37,{FormControlNames:1}),e["ɵqud"](603979776,38,{messagesBlock:0}),(l()(),e["ɵeld"](54,0,null,0,2,"label",[["class","cd-col-form-label"],["for","disks"]],null,null,null,null,null)),(l()(),e["ɵeld"](55,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Images"])),(l()(),e["ɵeld"](57,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,wa)),e["ɵdid"](59,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](60,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](61,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](62,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,null,null,De.b,De.a)),e["ɵdid"](63,638976,null,0,Fe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},null),(l()(),e["ɵeld"](64,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](66,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](67,1),(l()(),e["ɵeld"](68,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add image"])),(l()(),e["ɵeld"](70,0,null,null,0,"hr",[],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,1,0,n.context.index);var e=l(n,12,0,u.icons.destroy);l(n,11,0,e),l(n,15,0),l(n,24,0,"group_id"),l(n,28,0,"group_id"),l(n,30,0);var a=n.context.$implicit.getValue("members");l(n,38,0,a);var t=n.context.$implicit.getValue("members");l(n,42,0,"btn btn-light float-right",t,u.groupMembersSelections[n.context.index],u.messages.groupInitiator);var o=l(n,46,0,u.icons.add);l(n,45,0,o),l(n,51,0);var d=n.context.$implicit.getValue("disks");l(n,59,0,d);var i=n.context.$implicit.getValue("disks");l(n,63,0,"btn btn-light float-right",i,u.groupDiskSelections[n.context.index],u.messages.initiatorImage);var s=l(n,67,0,u.icons.add);l(n,66,0,s)}),(function(l,n){l(n,0,0,e["ɵnov"](n,3).ngClassUntouched,e["ɵnov"](n,3).ngClassTouched,e["ɵnov"](n,3).ngClassPristine,e["ɵnov"](n,3).ngClassDirty,e["ɵnov"](n,3).ngClassValid,e["ɵnov"](n,3).ngClassInvalid,e["ɵnov"](n,3).ngClassPending);var u=n.context.$implicit.getValue("group_id");l(n,7,0,u),l(n,14,0,e["ɵnov"](n,15).hasErrors,e["ɵnov"](n,15).hasSuccess),l(n,21,0,e["ɵnov"](n,26).ngClassUntouched,e["ɵnov"](n,26).ngClassTouched,e["ɵnov"](n,26).ngClassPristine,e["ɵnov"](n,26).ngClassDirty,e["ɵnov"](n,26).ngClassValid,e["ɵnov"](n,26).ngClassInvalid,e["ɵnov"](n,26).ngClassPending,e["ɵnov"](n,28).validClass,e["ɵnov"](n,28).invalidClass),l(n,29,0,e["ɵnov"](n,30).hasErrors,e["ɵnov"](n,30).hasSuccess),l(n,50,0,e["ɵnov"](n,51).hasErrors,e["ɵnov"](n,51).hasSuccess)}))}function Ta(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["No items added."]))],null,null)}function ya(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](1,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,31,{FormControlNames:1}),e["ɵqud"](603979776,32,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","initiators"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Groups"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"],["formArrayName","groups"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),e["ɵdid"](7,212992,null,0,tl.g,[[3,tl.d],[8,null],[8,null]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.g]),e["ɵdid"](9,16384,null,0,tl.s,[[4,tl.d]],null,null),(l()(),e["ɵand"](16777216,null,null,1,null,Ea)),e["ɵdid"](11,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](12,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,9,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Ta)),e["ɵdid"](15,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](16,0,null,null,6,"button",[["class","btn btn-light float-right"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(l.component.addGroup(),e=!1),e}),null,null)),(l()(),e["ɵeld"](17,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](19,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](20,1),(l()(),e["ɵeld"](21,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add group"]))],(function(l,n){var u=n.component;l(n,1,0),l(n,7,0,"groups"),l(n,11,0,u.groups.controls),l(n,15,0,0===u.groups.controls.length);var e=l(n,20,0,u.icons.add);l(n,19,0,e)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,9).ngClassUntouched,e["ɵnov"](n,9).ngClassTouched,e["ɵnov"](n,9).ngClassPristine,e["ɵnov"](n,9).ngClassDirty,e["ɵnov"](n,9).ngClassValid,e["ɵnov"](n,9).ngClassInvalid,e["ɵnov"](n,9).ngClassPending)}))}function Va(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,137,"form",[["name","targetForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var a=!0;return"submit"===n&&(a=!1!==e["ɵnov"](l,2).onSubmit(u)&&a),"reset"===n&&(a=!1!==e["ɵnov"](l,2).onReset()&&a),"submit"===n&&(a=!1!==e["ɵnov"](l,5).onSubmit()&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,tl.G,[],null,null),e["ɵdid"](2,540672,[["formDir",4]],0,tl.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,tl.d,null,[tl.l]),e["ɵdid"](4,16384,null,0,tl.s,[[4,tl.d]],null,null),e["ɵdid"](5,16384,null,0,El.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](6,0,null,null,131,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](8,null,[""," ",""])),e["ɵppd"](9,1),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,117,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](13,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","target_iqn"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Target IQN"])),(l()(),e["ɵeld"](18,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](19,0,null,null,15,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](20,0,null,null,8,"input",[["cdTrim",""],["class","form-control"],["formControlName","target_iqn"],["id","target_iqn"],["name","target_iqn"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,21)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,21).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,21)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,21)._compositionEnd(u.target.value)&&a),"input"===n&&(a=!1!==e["ɵnov"](l,26).onInput(u.target.value)&&a),a}),null,null)),e["ɵdid"](21,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](23,671744,[[1,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](25,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](26,16384,null,0,Se,[tl.q],null,null),e["ɵdid"](27,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](28,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](29,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](30,0,null,null,4,"button",[["class","btn btn-light"],["id","ecp-info-button"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.targetSettingsModal()&&e),e}),null,null)),(l()(),e["ɵeld"](31,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](33,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](34,1),(l()(),e["ɵand"](16777216,null,null,1,null,je)),e["ɵdid"](36,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ue)),e["ɵdid"](38,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Be)),e["ɵdid"](40,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,$e)),e["ɵdid"](42,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](43,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](44,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](45,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](48,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","portals"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Portals"])),(l()(),e["ɵeld"](50,0,null,0,23,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Me)),e["ɵdid"](52,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](53,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](54,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](55,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,[[null,"selection"]],(function(l,n,u){var e=!0;return"selection"===n&&(e=!1!==l.component.onPortalSelection(u)&&e),e}),De.b,De.a)),e["ɵdid"](56,638976,null,0,Fe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},{selection:"selection"}),(l()(),e["ɵeld"](57,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](59,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](60,1),(l()(),e["ɵeld"](61,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add portal"])),(l()(),e["ɵeld"](63,0,null,null,7,"input",[["class","form-control"],["formControlName","portals"],["id","portals"],["name","portals"],["type","hidden"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,64)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,64).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,64)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,64)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](64,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](66,671744,[[3,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](68,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](69,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](70,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Le)),e["ɵdid"](72,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](73,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](74,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](75,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](78,0,null,0,1,"label",[["class","cd-col-form-label"],["for","disks"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Images"])),(l()(),e["ɵeld"](80,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Ze)),e["ɵdid"](82,278528,null,0,D.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](83,0,null,null,7,"input",[["class","form-control"],["formControlName","disks"],["id","disks"],["name","disks"],["type","hidden"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,84)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,84).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,84)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,84)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](84,16384,null,0,tl.e,[e.Renderer2,e.ElementRef,[2,tl.b]],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.e]),e["ɵdid"](86,671744,[[5,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](88,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](89,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](90,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Je)),e["ɵdid"](92,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,We)),e["ɵdid"](94,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](95,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](96,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](97,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,[[null,"selection"]],(function(l,n,u){var e=!0;return"selection"===n&&(e=!1!==l.component.onImageSelection(u)&&e),e}),De.b,De.a)),e["ɵdid"](98,638976,null,0,Fe.a,[A.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},{selection:"selection"}),(l()(),e["ɵeld"](99,0,null,0,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,D["ɵNgClassImpl"],D["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](101,278528,null,0,D.NgClass,[D["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](102,1),(l()(),e["ɵeld"](103,0,null,0,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Add image"])),(l()(),e["ɵeld"](105,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](106,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Gn.b,Gn.a)),e["ɵdid"](107,1163264,null,2,El.c,[e.ElementRef,El.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](110,0,null,0,12,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](111,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](112,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","acl_enabled"],["id","acl_enabled"],["name","acl_enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,113).onChange(u.target.checked)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,113).onTouched()&&a),a}),null,null)),e["ɵdid"](113,16384,null,0,tl.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,tl.p,(function(l){return[l]}),[tl.c]),e["ɵdid"](115,671744,[[7,4]],0,tl.j,[[3,tl.d],[8,null],[8,null],[6,tl.p],[2,tl.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,tl.q,null,[tl.j]),e["ɵdid"](117,16384,null,0,tl.r,[[4,tl.q]],null,null),e["ɵdid"](118,4210688,null,0,Zn.a,[[2,Jn.a],fl.a,e.ElementRef],null,null),e["ɵdid"](119,16384,null,0,El.h,[[3,tl.d],El.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](120,0,null,null,1,"label",[["class","custom-control-label"],["for","acl_enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["ACL authentication"])),(l()(),e["ɵeld"](122,0,null,null,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,aa)),e["ɵdid"](124,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ia)),e["ɵdid"](126,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ya)),e["ɵdid"](128,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](129,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](130,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](131,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),uu.b,uu.a)),e["ɵdid"](132,114688,null,0,eu.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](133,0,[""," ",""])),e["ɵppd"](134,1),e["ɵppd"](135,1),(l()(),e["ɵeld"](136,0,null,null,1,"cd-back-button",[],null,null,null,au.b,au.a)),e["ɵdid"](137,49152,null,0,tu.a,[D.Location,Xl.b],null,null)],(function(l,n){var u=n.component;l(n,2,0,u.targetForm),l(n,5,0,u.targetForm),l(n,13,0),l(n,23,0,"target_iqn"),l(n,28,0,"target_iqn");var a=l(n,34,0,u.icons.deepCheck);l(n,33,0,a),l(n,36,0,u.targetForm.showError("target_iqn",e["ɵnov"](n,2),"required")),l(n,38,0,u.targetForm.showError("target_iqn",e["ɵnov"](n,2),"pattern")),l(n,40,0,u.targetForm.showError("target_iqn",e["ɵnov"](n,2),"iqn")),l(n,42,0,u.hasAdvancedSettings(u.targetForm.getValue("target_controls"))),l(n,45,0),l(n,52,0,u.portals.value),l(n,56,0,"btn btn-light float-right",u.portals.value,u.portalsSelections,u.messages.portals);var t=l(n,60,0,u.icons.add);l(n,59,0,t),l(n,66,0,"portals"),l(n,70,0,"portals"),l(n,72,0,u.targetForm.showError("portals",e["ɵnov"](n,2),"minGateways")),l(n,75,0),l(n,82,0,u.targetForm.getValue("disks")),l(n,86,0,"disks"),l(n,90,0,"disks"),l(n,92,0,u.targetForm.showError("disks",e["ɵnov"](n,2),"dupLunId")),l(n,94,0,u.targetForm.showError("disks",e["ɵnov"](n,2),"dupWwn")),l(n,98,0,"btn btn-light float-right",u.disks.value,u.imagesSelections,u.messages.images);var o=l(n,102,0,u.icons.add);l(n,101,0,o),l(n,107,0),l(n,115,0,"acl_enabled"),l(n,119,0,"acl_enabled"),l(n,124,0,u.cephIscsiConfigVersion>10&&!u.targetForm.getValue("acl_enabled")),l(n,126,0,u.targetForm.getValue("acl_enabled")),l(n,128,0,u.targetForm.getValue("acl_enabled")),l(n,132,0,e["ɵnov"](n,2))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,4).ngClassUntouched,e["ɵnov"](n,4).ngClassTouched,e["ɵnov"](n,4).ngClassPristine,e["ɵnov"](n,4).ngClassDirty,e["ɵnov"](n,4).ngClassValid,e["ɵnov"](n,4).ngClassInvalid,e["ɵnov"](n,4).ngClassPending);var a=e["ɵunv"](n,8,0,l(n,9,0,e["ɵnov"](n.parent,0),u.action)),t=e["ɵunv"](n,8,1,l(n,10,0,e["ɵnov"](n.parent,1),u.resource));l(n,8,0,a,t),l(n,12,0,e["ɵnov"](n,13).hasErrors,e["ɵnov"](n,13).hasSuccess),l(n,20,0,e["ɵnov"](n,25).ngClassUntouched,e["ɵnov"](n,25).ngClassTouched,e["ɵnov"](n,25).ngClassPristine,e["ɵnov"](n,25).ngClassDirty,e["ɵnov"](n,25).ngClassValid,e["ɵnov"](n,25).ngClassInvalid,e["ɵnov"](n,25).ngClassPending,e["ɵnov"](n,28).validClass,e["ɵnov"](n,28).invalidClass),l(n,44,0,e["ɵnov"](n,45).hasErrors,e["ɵnov"](n,45).hasSuccess),l(n,63,0,e["ɵnov"](n,68).ngClassUntouched,e["ɵnov"](n,68).ngClassTouched,e["ɵnov"](n,68).ngClassPristine,e["ɵnov"](n,68).ngClassDirty,e["ɵnov"](n,68).ngClassValid,e["ɵnov"](n,68).ngClassInvalid,e["ɵnov"](n,68).ngClassPending,e["ɵnov"](n,70).validClass,e["ɵnov"](n,70).invalidClass),l(n,74,0,e["ɵnov"](n,75).hasErrors,e["ɵnov"](n,75).hasSuccess),l(n,83,0,e["ɵnov"](n,88).ngClassUntouched,e["ɵnov"](n,88).ngClassTouched,e["ɵnov"](n,88).ngClassPristine,e["ɵnov"](n,88).ngClassDirty,e["ɵnov"](n,88).ngClassValid,e["ɵnov"](n,88).ngClassInvalid,e["ɵnov"](n,88).ngClassPending,e["ɵnov"](n,90).validClass,e["ɵnov"](n,90).invalidClass),l(n,106,0,e["ɵnov"](n,107).hasErrors,e["ɵnov"](n,107).hasSuccess),l(n,112,0,e["ɵnov"](n,117).ngClassUntouched,e["ɵnov"](n,117).ngClassTouched,e["ɵnov"](n,117).ngClassPristine,e["ɵnov"](n,117).ngClassDirty,e["ɵnov"](n,117).ngClassValid,e["ɵnov"](n,117).ngClassInvalid,e["ɵnov"](n,117).ngClassPending,e["ɵnov"](n,119).validClass,e["ɵnov"](n,119).invalidClass);var o=e["ɵunv"](n,133,0,l(n,134,0,e["ɵnov"](n.parent,0),u.action)),d=e["ɵunv"](n,133,1,l(n,135,0,e["ɵnov"](n.parent,1),u.resource));l(n,133,0,o,d)}))}function xa(l){return e["ɵvid"](0,[e["ɵpid"](0,D.TitleCasePipe,[]),e["ɵpid"](0,ll.a,[]),e["ɵpid"](0,z.a,[]),(l()(),e["ɵeld"](3,0,null,null,2,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Va)),e["ɵdid"](5,16384,null,0,D.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,5,0,n.component.targetForm)}),null)}function qa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-iscsi-target-form",[],null,null,null,xa,Oe)),e["ɵdid"](1,114688,null,0,Ae.a,[le.a,pl.b,Ql.a,Cl.m,Cl.a,A.a,Yl.a,Xl.b],null,null)],(function(l,n){l(n,1,0)}),null)}var ka=e["ɵccf"]("cd-iscsi-target-form",Ae.a,qa,{},{},[]),_a=u("Vhfg"),Da=u("cxJu");u.d(n,"BlockModuleNgFactory",(function(){return Fa})),u.d(n,"RoutedBlockModuleNgFactory",(function(){return Pa}));var Fa=e["ɵcmf"](a.a,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[t.a,o.a,d.a,i.a,i.b,s.a,r.a,c.a,p.a,m.a,g.a,f.a,v.a,C.a,b.a,h.a,R.a,I.a,I.c,I.b,I.d,N.a,w.a,E.a,T.a,y.a,V.a,x.a,q.a,k.a,_.a]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,D.NgLocalization,D.NgLocaleLocalization,[e.LOCALE_ID,[2,D["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,P.a,P.a,[]),e["ɵmpd"](4608,S.a,S.a,[A.a]),e["ɵmpd"](4608,D.DatePipe,D.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,O.a,O.a,[]),e["ɵmpd"](4608,j.a,j.a,[]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,B.a,B.a,[U.a]),e["ɵmpd"](4608,$.a,$.a,[U.a]),e["ɵmpd"](4608,M.a,M.a,[U.a]),e["ɵmpd"](4608,L.a,L.a,[]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,K.a,K.a,[]),e["ɵmpd"](4608,G.a,G.a,[]),e["ɵmpd"](4608,Z.a,Z.a,[D.DatePipe]),e["ɵmpd"](4608,J.a,J.a,[]),e["ɵmpd"](4608,W.a,W.a,[]),e["ɵmpd"](4608,Q.a,Q.a,[]),e["ɵmpd"](4608,Y.a,Y.a,[]),e["ɵmpd"](4608,X.a,X.a,[]),e["ɵmpd"](4608,H.a,H.a,[A.a]),e["ɵmpd"](4608,ll.a,ll.a,[]),e["ɵmpd"](4608,nl.a,nl.a,[]),e["ɵmpd"](4608,ul.a,ul.a,[]),e["ɵmpd"](4608,el.a,el.a,[al.b]),e["ɵmpd"](4608,tl.D,tl.D,[]),e["ɵmpd"](4608,tl.h,tl.h,[]),e["ɵmpd"](4608,ol.b,ol.b,[]),e["ɵmpd"](4608,dl.a,dl.a,[]),e["ɵmpd"](4608,il.a,il.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,sl.a,sl.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,il.a,e.ApplicationRef]),e["ɵmpd"](4608,rl.c,rl.c,[]),e["ɵmpd"](4608,cl.a,cl.a,[]),e["ɵmpd"](4608,pl.b,pl.b,[e.RendererFactory2,sl.a]),e["ɵmpd"](4608,ml.y,ml.y,[D.DOCUMENT]),e["ɵmpd"](4608,ml.r,ml.r,[]),e["ɵmpd"](4608,ml.a,ml.a,[]),e["ɵmpd"](4608,gl.f,gl.f,[]),e["ɵmpd"](4608,fl.a,fl.a,[]),e["ɵmpd"](4608,vl.a,vl.a,[Cl.m,fl.a]),e["ɵmpd"](4608,bl.f,bl.f,[]),e["ɵmpd"](4608,hl.t,hl.t,[]),e["ɵmpd"](4608,hl.v,hl.v,[]),e["ɵmpd"](4608,hl.a,hl.a,[]),e["ɵmpd"](4608,hl.h,hl.h,[]),e["ɵmpd"](4608,hl.d,hl.d,[]),e["ɵmpd"](4608,hl.j,hl.j,[]),e["ɵmpd"](4608,hl.l,hl.l,[]),e["ɵmpd"](4608,hl.u,hl.u,[hl.v,hl.l]),e["ɵmpd"](4608,Rl.a,Rl.a,[]),e["ɵmpd"](1073742336,D.CommonModule,D.CommonModule,[]),e["ɵmpd"](1073742336,bl.d,bl.d,[]),e["ɵmpd"](1073742336,Il.a,Il.a,[]),e["ɵmpd"](1073742336,tl.C,tl.C,[]),e["ɵmpd"](1073742336,tl.n,tl.n,[]),e["ɵmpd"](1073742336,tl.y,tl.y,[]),e["ɵmpd"](1073742336,ol.c,ol.c,[]),e["ɵmpd"](1073742336,dl.d,dl.d,[]),e["ɵmpd"](1073742336,rl.d,rl.d,[]),e["ɵmpd"](1073742336,cl.d,cl.d,[]),e["ɵmpd"](1073742336,Nl.b,Nl.b,[]),e["ɵmpd"](1073742336,pl.e,pl.e,[]),e["ɵmpd"](1073742336,wl.a,wl.a,[]),e["ɵmpd"](1073742336,gl.e,gl.e,[]),e["ɵmpd"](1073742336,El.f,El.f,[]),e["ɵmpd"](1073742336,Tl.ClickOutsideModule,Tl.ClickOutsideModule,[]),e["ɵmpd"](1073742336,yl.b,yl.b,[]),e["ɵmpd"](1073742336,Cl.q,Cl.q,[[2,Cl.v],[2,Cl.m]]),e["ɵmpd"](1073742336,Vl.a,Vl.a,[]),e["ɵmpd"](1073742336,ml.u,ml.u,[]),e["ɵmpd"](1073742336,xl.a,xl.a,[]),e["ɵmpd"](1073742336,ql.a,ql.a,[]),e["ɵmpd"](1073742336,kl.a,kl.a,[]),e["ɵmpd"](1073742336,_l.a,_l.a,[]),e["ɵmpd"](1073742336,hl.g,hl.g,[]),e["ɵmpd"](1073742336,Dl.b,Dl.b,[]),e["ɵmpd"](1073742336,a.a,a.a,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,gl.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])})),Pa=e["ɵcmf"](a.b,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[t.a,o.a,d.a,i.a,i.b,s.a,r.a,c.a,p.a,m.a,g.a,f.a,v.a,C.a,b.a,h.a,R.a,I.a,I.c,I.b,I.d,N.a,w.a,E.a,T.a,y.a,V.a,x.a,q.a,k.a,_.a,bn,Tn,On,Kn,Zu,me,xe,ka]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,D.NgLocalization,D.NgLocaleLocalization,[e.LOCALE_ID,[2,D["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,P.a,P.a,[]),e["ɵmpd"](4608,S.a,S.a,[A.a]),e["ɵmpd"](4608,D.DatePipe,D.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,O.a,O.a,[]),e["ɵmpd"](4608,j.a,j.a,[]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,B.a,B.a,[U.a]),e["ɵmpd"](4608,$.a,$.a,[U.a]),e["ɵmpd"](4608,M.a,M.a,[U.a]),e["ɵmpd"](4608,L.a,L.a,[]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,K.a,K.a,[]),e["ɵmpd"](4608,G.a,G.a,[]),e["ɵmpd"](4608,Z.a,Z.a,[D.DatePipe]),e["ɵmpd"](4608,J.a,J.a,[]),e["ɵmpd"](4608,W.a,W.a,[]),e["ɵmpd"](4608,Q.a,Q.a,[]),e["ɵmpd"](4608,Y.a,Y.a,[]),e["ɵmpd"](4608,X.a,X.a,[]),e["ɵmpd"](4608,H.a,H.a,[A.a]),e["ɵmpd"](4608,ll.a,ll.a,[]),e["ɵmpd"](4608,nl.a,nl.a,[]),e["ɵmpd"](4608,ul.a,ul.a,[]),e["ɵmpd"](4608,el.a,el.a,[al.b]),e["ɵmpd"](4608,tl.D,tl.D,[]),e["ɵmpd"](4608,tl.h,tl.h,[]),e["ɵmpd"](4608,ol.b,ol.b,[]),e["ɵmpd"](4608,dl.a,dl.a,[]),e["ɵmpd"](4608,il.a,il.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,sl.a,sl.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,il.a,e.ApplicationRef]),e["ɵmpd"](4608,rl.c,rl.c,[]),e["ɵmpd"](4608,cl.a,cl.a,[]),e["ɵmpd"](4608,pl.b,pl.b,[e.RendererFactory2,sl.a]),e["ɵmpd"](4608,ml.y,ml.y,[D.DOCUMENT]),e["ɵmpd"](4608,ml.r,ml.r,[]),e["ɵmpd"](4608,ml.a,ml.a,[]),e["ɵmpd"](4608,gl.f,gl.f,[]),e["ɵmpd"](4608,fl.a,fl.a,[]),e["ɵmpd"](4608,vl.a,vl.a,[Cl.m,fl.a]),e["ɵmpd"](4608,bl.f,bl.f,[]),e["ɵmpd"](4608,hl.t,hl.t,[]),e["ɵmpd"](4608,hl.v,hl.v,[]),e["ɵmpd"](4608,hl.a,hl.a,[]),e["ɵmpd"](4608,hl.h,hl.h,[]),e["ɵmpd"](4608,hl.d,hl.d,[]),e["ɵmpd"](4608,hl.j,hl.j,[]),e["ɵmpd"](4608,hl.l,hl.l,[]),e["ɵmpd"](4608,hl.u,hl.u,[hl.v,hl.l]),e["ɵmpd"](4608,Rl.a,Rl.a,[]),e["ɵmpd"](1073742336,D.CommonModule,D.CommonModule,[]),e["ɵmpd"](1073742336,bl.d,bl.d,[]),e["ɵmpd"](1073742336,Il.a,Il.a,[]),e["ɵmpd"](1073742336,tl.C,tl.C,[]),e["ɵmpd"](1073742336,tl.n,tl.n,[]),e["ɵmpd"](1073742336,tl.y,tl.y,[]),e["ɵmpd"](1073742336,ol.c,ol.c,[]),e["ɵmpd"](1073742336,dl.d,dl.d,[]),e["ɵmpd"](1073742336,rl.d,rl.d,[]),e["ɵmpd"](1073742336,cl.d,cl.d,[]),e["ɵmpd"](1073742336,Nl.b,Nl.b,[]),e["ɵmpd"](1073742336,pl.e,pl.e,[]),e["ɵmpd"](1073742336,wl.a,wl.a,[]),e["ɵmpd"](1073742336,gl.e,gl.e,[]),e["ɵmpd"](1073742336,El.f,El.f,[]),e["ɵmpd"](1073742336,Tl.ClickOutsideModule,Tl.ClickOutsideModule,[]),e["ɵmpd"](1073742336,yl.b,yl.b,[]),e["ɵmpd"](1073742336,Cl.q,Cl.q,[[2,Cl.v],[2,Cl.m]]),e["ɵmpd"](1073742336,Vl.a,Vl.a,[]),e["ɵmpd"](1073742336,ml.u,ml.u,[]),e["ɵmpd"](1073742336,xl.a,xl.a,[]),e["ɵmpd"](1073742336,ql.a,ql.a,[]),e["ɵmpd"](1073742336,kl.a,kl.a,[]),e["ɵmpd"](1073742336,_l.a,_l.a,[]),e["ɵmpd"](1073742336,hl.g,hl.g,[]),e["ɵmpd"](1073742336,Dl.b,Dl.b,[]),e["ɵmpd"](1073742336,a.a,a.a,[]),e["ɵmpd"](1073742336,a.b,a.b,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,gl.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](1024,Cl.k,(function(){return[[{path:"",redirectTo:"rbd",pathMatch:"full"},{path:"rbd",canActivate:[_a.a],data:a.c,children:[{path:"",component:Wl.a},{path:"namespaces",component:hn.a,data:a.d},{path:"trash",component:yn.a,data:a.j},{path:"performance",component:$n.a,data:a.k},{path:"create",component:ou.a,data:a.l},{path:"edit/:image_spec",component:ou.a,data:a.m},{path:"clone/:image_spec/:snap",component:ou.a,data:a.n},{path:"copy/:image_spec",component:ou.a,data:a.o},{path:"copy/:image_spec/:snap",component:ou.a,data:a.p}]},{path:"mirroring",component:Da.a,canActivate:[_a.a],data:a.q},{path:"iscsi",canActivate:[_a.a],data:a.e,children:[{path:"",redirectTo:"overview",pathMatch:"full"},{path:"overview",component:Hu.a,data:a.f},{path:"targets",data:a.g,children:[{path:"",component:Re.a},{path:"create",component:Ae.a,data:a.h},{path:"edit/:target_iqn",component:Ae.a,data:a.i}]}]}]]}),[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])}))}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/6.bbb14e8467017ca13aa5.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/6.bbb14e8467017ca13aa5.js
deleted file mode 100644 (file)
index 2ac754d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{nOaW:function(l,n,e){"use strict";e.r(n);var u=e("8Y7J"),t=e("sne2"),i=e("s7LF"),a=e("LvDl"),o=e("IheW"),s=e("GiVz"),r=e("pL04");let d=(()=>{class l{constructor(l,n){this.http=l,this.i18n=n,this.apiPath="api/crush_rule",this.formTooltips={root:this.i18n("The name of the node under which data should be placed."),failure_domain:this.i18n("The type of CRUSH nodes across which we should separate replicas."),device_class:this.i18n("The device class data should be placed on.")}}create(l){return this.http.post(this.apiPath,l,{observe:"response"})}delete(l){return this.http.delete(`${this.apiPath}/${l}`,{observe:"response"})}getInfo(){return this.http.get(`ui-${this.apiPath}/info`)}}return l.ngInjectableDef=u["ɵɵdefineInjectable"]({factory:function(){return new l(u["ɵɵinject"](o.c),u["ɵɵinject"](s.a))},token:l,providedIn:r.a}),l})(),c=(()=>{class l{constructor(l,n){this.http=l,this.i18n=n,this.apiPath="api/erasure_code_profile",this.formTooltips={k:this.i18n("Each object is split in data-chunks parts, each stored on a different OSD."),m:this.i18n("Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data."),plugins:{jerasure:{description:this.i18n("The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools."),technique:this.i18n("The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2."),packetSize:this.i18n("The encoding will be done on packets of bytes size at a time.\n          Choosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.")},lrc:{description:this.i18n("With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven."),l:this.i18n("Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set."),crushLocality:this.i18n("The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.")},isa:{description:this.i18n("The isa plugin encapsulates the ISA library. It only runs on Intel processors."),technique:this.i18n("The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.")},shec:{description:this.i18n("The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes."),c:this.i18n("The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.")},clay:{description:this.i18n("CLAY (short for coupled-layer) codes are erasure codes designed to\n          bring about significant savings in terms of network bandwidth and disk IO when a failed\n          node/OSD/rack is being repaired."),d:this.i18n("Number of OSDs requested to send data during recovery of a single chunk.\n          d needs to be chosen such that k+1 <= d <= k+m-1. The larger the d, the better\n          the savings."),scalar_mds:this.i18n("scalar_mds specifies the plugin that is used as a building block\n          in the layered construction. It can be one of jerasure, isa, shec."),technique:this.i18n("technique specifies the technique that will be picked\n          within the 'scalar_mds' plugin specified. Supported techniques\n          are 'reed_sol_van', 'reed_sol_r6_op', 'cauchy_orig',\n          'cauchy_good', 'liber8tion' for jerasure, 'reed_sol_van',\n          'cauchy' for isa and 'single', 'multiple' for shec.")}},crushRoot:this.i18n("The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default."),crushFailureDomain:this.i18n("Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host."),crushDeviceClass:this.i18n("Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map."),directory:this.i18n("Set the directory name from which the erasure code plugin is loaded.")}}list(){return this.http.get(this.apiPath)}create(l){return this.http.post(this.apiPath,l,{observe:"response"})}delete(l){return this.http.delete(`${this.apiPath}/${l}`,{observe:"response"})}getInfo(){return this.http.get(`ui-${this.apiPath}/info`)}}return l.ngInjectableDef=u["ɵɵdefineInjectable"]({factory:function(){return new l(u["ɵɵinject"](o.c),u["ɵɵinject"](s.a))},token:l,providedIn:r.a}),l})();var m=e("Ekvf");class f{constructor(){this.nodes=[],this.idTree={},this.allDevices=[],this.buckets=[],this.failureDomains={},this.failureDomainKeys=[],this.devices=[],this.deviceCount=0}static searchFailureDomains(l,n){return this.getFailureDomains(this.search(l,n))}static search(l,n){const[e,u]=n.split("~"),t=l.find(l=>["name","id","type"].some(n=>l[n]===e));return t?(l=this.getSubNodes(t,this.createIdTreeFromNodes(l)),u&&(l=this.filterNodesByDeviceType(l,u)),l):[]}static createIdTreeFromNodes(l){const n={};return l.forEach(l=>{n[l.id]=l}),n}static getSubNodes(l,n){let e=[l];return l.children?(l.children.forEach(l=>{e=e.concat(this.getSubNodes(n[l],n))}),e):e}static filterNodesByDeviceType(l,n){let e,u=l.filter(l=>l.device_class&&l.device_class!==n).map(l=>l.id),t=u;do{e=!1,l=l.filter(l=>!u.includes(l.id));const n=[];l.forEach(l=>{l.children&&l.children.every(l=>u.includes(l))&&(n.push(l.id),e=!0)}),e&&(u=n,t=t.concat(n))}while(e);return(l=a.cloneDeep(l)).map(l=>l.children?(l.children=l.children.filter(l=>!t.includes(l)),l):l)}static getFailureDomains(l){const n={};return l.forEach(l=>{const e=l.type;n[e]||(n[e]=[]),n[e].push(l)}),n}initCrushNodeSelection(l,n,e,u){this.nodes=l,this.idTree=f.createIdTreeFromNodes(l),l.forEach(l=>{this.idTree[l.id]=l}),this.buckets=a.sortBy(l.filter(l=>l.children),"name"),this.controls={root:n,failure:e,device:u},this.preSelectRoot(),this.controls.root.valueChanges.subscribe(()=>this.onRootChange()),this.controls.failure.valueChanges.subscribe(()=>this.onFailureDomainChange()),this.controls.device.valueChanges.subscribe(()=>this.onDeviceChange())}preSelectRoot(){const l=this.nodes.find(l=>"root"===l.type);this.silentSet(this.controls.root,l),this.onRootChange()}silentSet(l,n){l.setValue(n,{emitEvent:!1})}onRootChange(){const l=f.getSubNodes(this.controls.root.value,this.idTree),n=f.getFailureDomains(l);Object.keys(n).forEach(l=>{n[l].length<=1&&delete n[l]}),this.failureDomains=n,this.failureDomainKeys=Object.keys(n).sort(),this.updateFailureDomain()}updateFailureDomain(){let l=this.getIncludedCustomValue(this.controls.failure,Object.keys(this.failureDomains));""===l&&(l=this.setMostCommonDomain(this.controls.failure)),this.updateDevices(l)}getIncludedCustomValue(l,n){return l.dirty&&n.includes(l.value)?l.value:""}setMostCommonDomain(l){let n={n:0,type:""};return Object.keys(this.failureDomains).forEach(l=>{const e=this.failureDomains[l].length;n.n<e&&(n={n:e,type:l})}),this.silentSet(l,n.type),n.type}onFailureDomainChange(){this.updateDevices()}updateDevices(l=this.controls.failure.value){const n=a.flatten(this.failureDomains[l].map(l=>f.getSubNodes(l,this.idTree)));this.allDevices=n.filter(l=>l.device_class).map(l=>l.device_class),this.devices=a.uniq(this.allDevices).sort();const e=1===this.devices.length?this.devices[0]:this.getIncludedCustomValue(this.controls.device,this.devices);this.silentSet(this.controls.device,e),this.onDeviceChange(e)}onDeviceChange(l=this.controls.device.value){this.deviceCount=""===l?this.allDevices.length:this.allDevices.filter(n=>n===l).length}}var g=e("0+/T"),p=e("a96k"),h=e("oxzT"),v=e("QFaf"),b=e("1Ni5"),C=e("PhyI"),R=e("kvvV"),I=e("Fgil"),E=e("aexS"),N=e("aXbf"),y=e("kn/O"),V=e("2EZI");class w extends f{constructor(l,n,e,t,i,a){super(),this.formBuilder=l,this.bsModalRef=n,this.taskWrapper=e,this.crushRuleService=t,this.i18n=i,this.actionLabels=a,this.submitAction=new u.EventEmitter,this.tooltips=this.crushRuleService.formTooltips,this.action=this.actionLabels.CREATE,this.resource=this.i18n("Crush Rule"),this.createForm()}createForm(){this.form=this.formBuilder.group({name:["",[i.B.required,i.B.pattern("[A-Za-z0-9_-]+"),b.a.custom("uniqueName",l=>this.names&&-1!==this.names.indexOf(l))]],root:null,failure_domain:"",device_class:""})}ngOnInit(){this.crushRuleService.getInfo().subscribe(({names:l,nodes:n})=>{this.initCrushNodeSelection(n,this.form.get("root"),this.form.get("failure_domain"),this.form.get("device_class")),this.names=l})}onSubmit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const l=a.cloneDeep(this.form.value);l.root=l.root.name,""===l.device_class&&delete l.device_class,this.taskWrapper.wrapTaskAroundCall({task:new R.a("crushRule/create",l),call:this.crushRuleService.create(l)}).subscribe(void 0,()=>{this.form.setErrors({cdSubmitButton:!0})},()=>{this.bsModalRef.hide(),this.submitAction.emit(l)})}}class T{}class _ extends f{constructor(l,n,e,t,i,a){super(),this.formBuilder=l,this.bsModalRef=n,this.taskWrapper=e,this.ecpService=t,this.i18n=i,this.actionLabels=a,this.submitAction=new u.EventEmitter,this.tooltips=this.ecpService.formTooltips,this.PLUGIN={LRC:"lrc",SHEC:"shec",CLAY:"clay",JERASURE:"jerasure",ISA:"isa"},this.plugin=this.PLUGIN.JERASURE,this.icons=h.a,this.action=this.actionLabels.CREATE,this.resource=this.i18n("EC Profile"),this.createForm(),this.setJerasureDefaults()}createForm(){this.form=this.formBuilder.group({name:[null,[i.B.required,i.B.pattern("[A-Za-z0-9_-]+"),b.a.custom("uniqueName",l=>this.names&&-1!==this.names.indexOf(l))]],plugin:[this.PLUGIN.JERASURE,[i.B.required]],k:[4,[i.B.required,i.B.min(2),b.a.custom("max",()=>this.baseValueValidation(!0)),b.a.custom("unequal",l=>this.lrcDataValidation(l)),b.a.custom("kLowerM",l=>this.shecDataValidation(l))]],m:[2,[i.B.required,i.B.min(1),b.a.custom("max",()=>this.baseValueValidation())]],crushFailureDomain:"",crushRoot:null,crushDeviceClass:"",directory:"",technique:"reed_sol_van",packetSize:[2048,[i.B.min(1)]],l:[3,[i.B.required,i.B.min(1),b.a.custom("unequal",l=>this.lrcLocalityValidation(l))]],crushLocality:"",c:[2,[i.B.required,i.B.min(1),b.a.custom("cGreaterM",l=>this.shecDurabilityValidation(l))]],d:[5,[i.B.required,b.a.custom("dMin",l=>this.dMinValidation(l)),b.a.custom("dMax",l=>this.dMaxValidation(l))]],scalar_mds:[this.PLUGIN.JERASURE,[i.B.required]]}),this.toggleDCalc(),this.form.get("k").valueChanges.subscribe(()=>this.updateValidityOnChange(["m","l","d"])),this.form.get("m").valueChanges.subscribe(()=>this.updateValidityOnChange(["k","l","c","d"])),this.form.get("l").valueChanges.subscribe(()=>this.updateValidityOnChange(["k","m"])),this.form.get("plugin").valueChanges.subscribe(l=>this.onPluginChange(l)),this.form.get("scalar_mds").valueChanges.subscribe(()=>this.setClayDefaultsForScalar())}baseValueValidation(l=!1){return this.validValidation(()=>this.getKMSum()>this.deviceCount&&this.form.getValue("k")>this.form.getValue("m")===l)}validValidation(l,n){return!((!this.form||n)&&this.plugin!==n)&&l()}getKMSum(){return this.form.getValue("k")+this.form.getValue("m")}lrcDataValidation(l){return this.validValidation(()=>{const n=this.form.getValue("m"),e=this.form.getValue("l"),u=l+n;return this.lrcMultiK=l/(u/e),l%(u/e)!=0},"lrc")}shecDataValidation(l){return this.validValidation(()=>this.form.getValue("m")>l,"shec")}lrcLocalityValidation(l){return this.validValidation(()=>{const n=this.getKMSum();return this.lrcGroups=l>0?n/l:0,l>0&&n%l!=0},"lrc")}shecDurabilityValidation(l){return this.validValidation(()=>{const n=this.form.getValue("m");return l>n},"shec")}dMinValidation(l){return this.validValidation(()=>this.getDMin()>l,"clay")}getDMin(){return this.form.getValue("k")+1}dMaxValidation(l){return this.validValidation(()=>l>this.getDMax(),"clay")}getDMax(){const l=this.form.getValue("m");return this.form.getValue("k")+l-1}toggleDCalc(){this.dCalc=!this.dCalc,this.form.get("d")[this.dCalc?"disable":"enable"](),this.calculateD()}calculateD(){this.plugin===this.PLUGIN.CLAY&&this.dCalc&&this.form.silentSet("d",this.getDMax())}updateValidityOnChange(l){l.forEach(l=>{"d"===l&&this.calculateD(),this.form.get(l).updateValueAndValidity({emitEvent:!1})})}onPluginChange(l){this.plugin=l,l===this.PLUGIN.JERASURE?this.setJerasureDefaults():l===this.PLUGIN.LRC?this.setLrcDefaults():l===this.PLUGIN.ISA?this.setIsaDefaults():l===this.PLUGIN.SHEC?this.setShecDefaults():l===this.PLUGIN.CLAY&&this.setClayDefaults(),this.updateValidityOnChange(["m"])}setJerasureDefaults(){this.techniques=["reed_sol_van","reed_sol_r6_op","cauchy_orig","cauchy_good","liberation","blaum_roth","liber8tion"],this.setDefaults({k:4,m:2,technique:"reed_sol_van"})}setLrcDefaults(){this.setDefaults({k:4,m:2,l:3})}setIsaDefaults(){this.techniques=["reed_sol_van","cauchy"],this.setDefaults({k:7,m:3,technique:"reed_sol_van"})}setShecDefaults(){this.setDefaults({k:4,m:3,c:2})}setClayDefaults(){this.setDefaults({k:4,m:2,scalar_mds:this.PLUGIN.JERASURE}),this.setClayDefaultsForScalar()}setClayDefaultsForScalar(){const l=this.form.getValue("scalar_mds");let n="reed_sol_van";l===this.PLUGIN.JERASURE?this.techniques=["reed_sol_van","reed_sol_r6_op","cauchy_orig","cauchy_good","liber8tion"]:l===this.PLUGIN.ISA?this.techniques=["reed_sol_van","cauchy"]:(n="single",this.techniques=["single","multiple"]),this.setDefaults({technique:n})}setDefaults(l){Object.keys(l).forEach(n=>{const e=this.form.get(n),u=e.value;e.pristine||"technique"===n&&!this.techniques.includes(u)||"k"===n&&[4,7].includes(u)||"m"===n&&[2,3].includes(u)?e.setValue(l[n]):e.updateValueAndValidity()})}ngOnInit(){this.ecpService.getInfo().subscribe(({plugins:l,names:n,directory:e,nodes:u})=>{this.initCrushNodeSelection(u,this.form.get("crushRoot"),this.form.get("crushFailureDomain"),this.form.get("crushDeviceClass")),this.plugins=l,this.names=n,this.form.silentSet("directory",e),this.preValidateNumericInputFields()})}preValidateNumericInputFields(){const l=["k","m","l","c","d"].map(l=>this.form.get(l));l.forEach(l=>{l.markAsTouched(),l.markAsDirty()}),l[1].updateValueAndValidity()}onSubmit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const l=this.createJson();this.taskWrapper.wrapTaskAroundCall({task:new R.a("ecp/create",{name:l.name}),call:this.ecpService.create(l)}).subscribe(void 0,()=>{this.form.setErrors({cdSubmitButton:!0})},()=>{this.bsModalRef.hide(),this.submitAction.emit(l)})}createJson(){const l={technique:[this.PLUGIN.ISA,this.PLUGIN.JERASURE,this.PLUGIN.CLAY],packetSize:[this.PLUGIN.JERASURE],l:[this.PLUGIN.LRC],crushLocality:[this.PLUGIN.LRC],c:[this.PLUGIN.SHEC],d:[this.PLUGIN.CLAY],scalar_mds:[this.PLUGIN.CLAY]},n=new T,e=this.form.getValue("plugin");return Object.keys(this.form.controls).filter(n=>{const u=l[n],t=this.form.getValue(n);return(u&&u.includes(e)||!u)&&t&&""!==t}).forEach(l=>{this.extendJson(l,n)}),n}extendJson(l,n){const e=this.form.getValue(l);n[{crushFailureDomain:"crush-failure-domain",crushRoot:"crush-root",crushDeviceClass:"crush-device-class",packetSize:"packetsize",crushLocality:"crush-locality"}[l]||l]="crushRoot"===l?e.name:e}}var S=e("DNAf");class D{constructor(l){this.erasureInfo=!1,this.crushInfo=!1,this.pgs=1,this.poolTypes=["erasure","replicated"],this.applications={selected:[],default:["cephfs","rbd","rgw"],available:[],validators:[i.B.pattern("[A-Za-z0-9_]+"),i.B.maxLength(128)],messages:new S.a({empty:l("No applications added"),selectionLimit:{text:l("Applications limit reached"),tooltip:l("A pool can only have up to four applications definitions.")},customValidations:{pattern:l("Allowed characters '_a-zA-Z0-9'"),maxlength:l("Maximum length is 128 characters")},filter:l("Filter or add applications"),add:l("Add application")},l)}}}class k{constructor(l,n,e,i,a,o,s,r,d,c,m,f,g){this.dimlessBinaryPipe=l,this.route=n,this.router=e,this.modalService=i,this.poolService=a,this.authStorageService=o,this.formatter=s,this.bsModalService=r,this.taskWrapper=d,this.ecpService=c,this.crushRuleService=m,this.i18n=f,this.actionLabels=g,this.editing=!1,this.isReplicated=!1,this.isErasure=!1,this.data=new D(this.i18n),this.externalPgChange=!1,this.current={rules:[]},this.initializeConfigData=new u.EventEmitter,this.currentConfigurationValues={},this.icons=h.a,this.crushUsage=void 0,this.ecpUsage=void 0,this.editing=this.router.url.startsWith("/pool/"+t.e.EDIT),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.resource=this.i18n("pool"),this.authenticate(),this.createForm()}authenticate(){this.permission=this.authStorageService.getPermissions().pool,(!this.permission.read||!this.permission.update&&this.editing||!this.permission.create&&!this.editing)&&this.router.navigate(["/404"])}createForm(){const l=new v.a({mode:new i.i("none"),algorithm:new i.i(""),minBlobSize:new i.i("",{updateOn:"blur"}),maxBlobSize:new i.i("",{updateOn:"blur"}),ratio:new i.i("",{updateOn:"blur"})});this.form=new v.a({name:new i.i("",{validators:[i.B.pattern(/^[.A-Za-z0-9_/-]+$/),i.B.required,b.a.custom("rbdPool",()=>this.form&&this.form.getValue("name").includes("/")&&this.data&&-1!==this.data.applications.selected.indexOf("rbd"))]}),poolType:new i.i("",{validators:[i.B.required]}),crushRule:new i.i(null,{validators:[b.a.custom("tooFewOsds",l=>this.info&&l&&this.info.osd_count<l.min_size),b.a.custom("required",l=>this.isReplicated&&this.info.crush_rules_replicated.length>0&&!l)]}),size:new i.i("",{updateOn:"blur"}),erasureProfile:new i.i(null),pgNum:new i.i("",{validators:[i.B.required,i.B.min(1)]}),pgAutoscaleMode:new i.i(null),ecOverwrites:new i.i(!1),compression:l,max_bytes:new i.i(""),max_objects:new i.i(0,{validators:[i.B.min(0)]})},[b.a.custom("form",()=>null)])}ngOnInit(){this.poolService.getInfo().subscribe(l=>{this.initInfo(l),this.editing?this.initEditMode():this.setAvailableApps(),this.listenToChanges(),this.setComplexValidators()})}initInfo(l){this.pgAutoscaleModes=l.pg_autoscale_modes,this.form.silentSet("pgAutoscaleMode",l.pg_autoscale_default_mode),this.form.silentSet("algorithm",l.bluestore_compression_algorithm),this.info=l,this.initEcp(l.erasure_code_profiles)}initEcp(l){this.setListControlStatus("erasureProfile",l),this.ecProfiles=l}setListControlStatus(l,n){const e=this.form.get(l),u=e.value;1!==n.length||u&&a.isEqual(u,n[0])?0===n.length&&u&&e.setValue(null):e.setValue(n[0]),n.length<=1?e.enabled&&e.disable():e.disabled&&e.enable()}initEditMode(){this.disableForEdit(),this.routeParamsSubscribe=this.route.params.subscribe(l=>this.poolService.get(l.name).subscribe(l=>{this.data.pool=l,this.initEditFormData(l)}))}disableForEdit(){["poolType","crushRule","size","erasureProfile","ecOverwrites"].forEach(l=>this.form.get(l).disable())}initEditFormData(l){this.initializeConfigData.emit({initialData:l.configuration,sourceType:C.a.pool}),this.poolTypeChange(l.type);const n=this.info.crush_rules_replicated.concat(this.info.crush_rules_erasure),e={name:l.pool_name,poolType:l.type,crushRule:n.find(n=>n.rule_name===l.crush_rule),size:l.size,erasureProfile:this.ecProfiles.find(n=>n.name===l.erasure_code_profile),pgAutoscaleMode:l.pg_autoscale_mode,pgNum:l.pg_num,ecOverwrites:l.flags_names.includes("ec_overwrites"),mode:l.options.compression_mode,algorithm:l.options.compression_algorithm,minBlobSize:this.dimlessBinaryPipe.transform(l.options.compression_min_blob_size),maxBlobSize:this.dimlessBinaryPipe.transform(l.options.compression_max_blob_size),ratio:l.options.compression_required_ratio,max_bytes:this.dimlessBinaryPipe.transform(l.quota_max_bytes),max_objects:l.quota_max_objects};Object.keys(e).forEach(l=>{const n=e[l];a.isUndefined(n)||""===n||this.form.silentSet(l,n)}),this.data.pgs=this.form.getValue("pgNum"),this.setAvailableApps(this.data.applications.default.concat(l.application_metadata)),this.data.applications.selected=l.application_metadata}setAvailableApps(l=this.data.applications.default){this.data.applications.available=a.uniq(l.sort()).map(l=>new p.a(!1,l,""))}listenToChanges(){this.listenToChangesDuringAddEdit(),this.editing||this.listenToChangesDuringAdd()}listenToChangesDuringAddEdit(){this.form.get("pgNum").valueChanges.subscribe(l=>{const n=l-this.data.pgs;1===Math.abs(n)&&2!==l?this.doPgPowerJump(n):this.data.pgs=l})}doPgPowerJump(l){const n=this.calculatePgPower()+l;this.setPgs(-1===l?Math.round(n):Math.floor(n))}calculatePgPower(l=this.form.getValue("pgNum")){return Math.log(l)/Math.log(2)}setPgs(l){const n=Math.pow(2,l<0?0:l);this.data.pgs=n,this.form.silentSet("pgNum",n)}listenToChangesDuringAdd(){this.form.get("poolType").valueChanges.subscribe(l=>{this.poolTypeChange(l)}),this.form.get("crushRule").valueChanges.subscribe(l=>{this.crushDeletionBtn&&this.crushDeletionBtn.isOpen&&this.crushDeletionBtn.hide(),l&&(this.setCorrectMaxSize(l),this.crushRuleIsUsedBy(l.rule_name),this.replicatedRuleChange(),this.pgCalc())}),this.form.get("size").valueChanges.subscribe(()=>{this.pgCalc()}),this.form.get("erasureProfile").valueChanges.subscribe(l=>{this.ecpDeletionBtn&&this.ecpDeletionBtn.isOpen&&this.ecpDeletionBtn.hide(),l&&(this.ecpIsUsedBy(l.name),this.pgCalc())}),this.form.get("mode").valueChanges.subscribe(()=>{["minBlobSize","maxBlobSize","ratio"].forEach(l=>{this.form.get(l).updateValueAndValidity({emitEvent:!1})})}),this.form.get("minBlobSize").valueChanges.subscribe(()=>{this.form.get("maxBlobSize").updateValueAndValidity({emitEvent:!1})}),this.form.get("maxBlobSize").valueChanges.subscribe(()=>{this.form.get("minBlobSize").updateValueAndValidity({emitEvent:!1})})}poolTypeChange(l){if("replicated"===l?this.setTypeBooleans(!0,!1):this.setTypeBooleans(!1,"erasure"===l),!l||!this.info)return void(this.current.rules=[]);const n=this.info["crush_rules_"+l]||[];this.current.rules=n,this.editing||(this.isReplicated&&this.setListControlStatus("crushRule",n),this.replicatedRuleChange(),this.pgCalc())}setTypeBooleans(l,n){this.isReplicated=l,this.isErasure=n}replicatedRuleChange(){if(!this.isReplicated)return;const l=this.form.get("size");let n=this.form.getValue("size")||3;const e=this.getMinSize(),u=this.getMaxSize();n<e?n=e:n>u&&(n=u),n!==l.value&&this.form.silentSet("size",n)}getMinSize(){if(!this.info||this.info.osd_count<1)return 0;const l=this.form.getValue("crushRule");return l?l.min_size:1}getMaxSize(){const l=this.form.getValue("crushRule");return this.info?l?l.usable_size:Math.min(this.info.osd_count,3):0}pgCalc(){const l=this.form.getValue("poolType");if(!this.info||this.form.get("pgNum").dirty||!l)return;const n=100*this.info.osd_count,e=this.isReplicated?this.replicatedPgCalc(n):this.erasurePgCalc(n);if(!e)return;const u=this.data.pgs;this.alignPgs(e),this.externalPgChange||(this.externalPgChange=u!==this.data.pgs)}setCorrectMaxSize(l=this.form.getValue("crushRule")){if(!l)return;const n=f.searchFailureDomains(this.info.nodes,l.steps[0].item_name)[l.steps[1].type];l.usable_size=Math.min(n?n.length:l.max_size,l.max_size)}replicatedPgCalc(l){const n=this.form.get("size"),e=n.value;return n.valid&&e>0?l/e:0}erasurePgCalc(l){const n=this.form.get("erasureProfile"),e=n.value;return(n.valid||n.disabled)&&e?l/(e.k+e.m):0}alignPgs(l=this.form.getValue("pgNum")){this.setPgs(Math.round(this.calculatePgPower(l<1?1:l)))}setComplexValidators(){this.editing?this.form.get("name").setValidators([this.form.get("name").validator,b.a.custom("uniqueName",l=>this.data.pool&&this.info&&-1!==this.info.pool_names.indexOf(l)&&this.info.pool_names.indexOf(l)!==this.info.pool_names.indexOf(this.data.pool.pool_name))]):(b.a.validateIf(this.form.get("size"),()=>this.isReplicated,[b.a.custom("min",l=>this.form.getValue("size")&&l<this.getMinSize()),b.a.custom("max",l=>this.form.getValue("size")&&this.getMaxSize()<l)]),this.form.get("name").setValidators([this.form.get("name").validator,b.a.custom("uniqueName",l=>this.info&&-1!==this.info.pool_names.indexOf(l))])),this.setCompressionValidators()}setCompressionValidators(){b.a.validateIf(this.form.get("minBlobSize"),()=>this.hasCompressionEnabled(),[i.B.min(0),b.a.custom("maximum",l=>this.oddBlobSize(l,this.form.getValue("maxBlobSize")))]),b.a.validateIf(this.form.get("maxBlobSize"),()=>this.hasCompressionEnabled(),[i.B.min(0),b.a.custom("minimum",l=>this.oddBlobSize(this.form.getValue("minBlobSize"),l))]),b.a.validateIf(this.form.get("ratio"),()=>this.hasCompressionEnabled(),[i.B.min(0),i.B.max(1)])}oddBlobSize(l,n){const e=this.formatter.toBytes(l),u=this.formatter.toBytes(n);return Boolean(e&&u&&e>=u)}hasCompressionEnabled(){return this.form.getValue("mode")&&"none"!==this.form.get("mode").value.toLowerCase()}describeCrushStep(l){return[l.op.replace("_"," "),l.item_name||"",l.type?l.num+" type "+l.type:""].join(" ")}addErasureCodeProfile(){this.addModal(_,l=>this.reloadECPs(l))}addModal(l,n){this.hideOpenTooltips(),this.bsModalService.show(l).content.submitAction.subscribe(l=>{n(l.name)})}hideOpenTooltips(){const l=l=>l&&l.isOpen&&l.hide();l(this.ecpDeletionBtn),l(this.crushDeletionBtn)}reloadECPs(l){this.reloadList({newItemName:l,getInfo:()=>this.ecpService.list(),initInfo:l=>this.initEcp(l),findNewItem:()=>this.ecProfiles.find(n=>n.name===l),controlName:"erasureProfile"})}reloadList({newItemName:l,getInfo:n,initInfo:e,findNewItem:u,controlName:t}){this.modalSubscription&&this.modalSubscription.unsubscribe(),n().subscribe(n=>{if(e(n),!l)return;const i=u();i&&this.form.get(t).setValue(i)})}deleteErasureCodeProfile(){this.deletionModal({value:this.form.getValue("erasureProfile"),usage:this.ecpUsage,deletionBtn:this.ecpDeletionBtn,dataName:"erasureInfo",getTabs:()=>this.ecpInfoTabs,tabPosition:1,nameAttribute:"name",itemDescription:this.i18n("erasure code profile"),reloadFn:()=>this.reloadECPs(),deleteFn:l=>this.ecpService.delete(l),taskName:"ecp/delete"})}deletionModal({value:l,usage:n,deletionBtn:e,dataName:u,getTabs:t,tabPosition:i,nameAttribute:a,itemDescription:o,reloadFn:s,deleteFn:r,taskName:d}){if(!l)return;if(n)return e.toggle(),this.data[u]=!0,void setTimeout(()=>{const l=t();l&&(l.tabs[i].active=!0)},50);const c=l[a];this.modalService.show(g.a,{initialState:{itemDescription:o,itemNames:[c],submitActionObservable:()=>{const l=r(c);return l.subscribe(()=>s()),this.taskWrapper.wrapTaskAroundCall({task:new R.a(d,{name:c}),call:l})}}})}addCrushRule(){this.addModal(w,l=>this.reloadCrushRules(l))}reloadCrushRules(l){this.reloadList({newItemName:l,getInfo:()=>this.poolService.getInfo(),initInfo:l=>{this.initInfo(l),this.poolTypeChange("replicated")},findNewItem:()=>this.info.crush_rules_replicated.find(n=>n.rule_name===l),controlName:"crushRule"})}deleteCrushRule(){this.deletionModal({value:this.form.getValue("crushRule"),usage:this.crushUsage,deletionBtn:this.crushDeletionBtn,dataName:"crushInfo",getTabs:()=>this.crushInfoTabs,tabPosition:2,nameAttribute:"rule_name",itemDescription:this.i18n("crush rule"),reloadFn:()=>this.reloadCrushRules(),deleteFn:l=>this.crushRuleService.delete(l),taskName:"crushRule/delete"})}crushRuleIsUsedBy(l){this.crushUsage=l?this.info.used_rules[l]:void 0}ecpIsUsedBy(l){this.ecpUsage=l?this.info.used_profiles[l]:void 0}submit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const l={pool:this.form.getValue("name")};this.assignFormFields(l,[{externalFieldName:"pool_type",formControlName:"poolType"},{externalFieldName:"pg_autoscale_mode",formControlName:"pgAutoscaleMode",editable:!0},{externalFieldName:"pg_num",formControlName:"pgNum",replaceFn:l=>"on"===this.form.getValue("pgAutoscaleMode")?1:l,editable:!0},this.isReplicated?{externalFieldName:"size",formControlName:"size"}:{externalFieldName:"erasure_code_profile",formControlName:"erasureProfile",attr:"name"},{externalFieldName:"rule_name",formControlName:"crushRule",replaceFn:l=>this.isReplicated?l&&l.rule_name:void 0},{externalFieldName:"quota_max_bytes",formControlName:"max_bytes",replaceFn:this.formatter.toBytes,editable:!0,resetValue:this.editing?0:void 0},{externalFieldName:"quota_max_objects",formControlName:"max_objects",editable:!0,resetValue:this.editing?0:void 0}]),this.info.is_all_bluestore&&(this.assignFormField(l,{externalFieldName:"flags",formControlName:"ecOverwrites",replaceFn:()=>this.isErasure?["ec_overwrites"]:void 0}),"none"!==this.form.getValue("mode")?this.assignFormFields(l,[{externalFieldName:"compression_mode",formControlName:"mode",editable:!0,replaceFn:l=>this.hasCompressionEnabled()&&l},{externalFieldName:"compression_algorithm",formControlName:"algorithm",editable:!0},{externalFieldName:"compression_min_blob_size",formControlName:"minBlobSize",replaceFn:this.formatter.toBytes,editable:!0,resetValue:0},{externalFieldName:"compression_max_blob_size",formControlName:"maxBlobSize",replaceFn:this.formatter.toBytes,editable:!0,resetValue:0},{externalFieldName:"compression_required_ratio",formControlName:"ratio",editable:!0,resetValue:0}]):this.editing&&this.assignFormFields(l,[{externalFieldName:"compression_mode",formControlName:"mode",editable:!0,replaceFn:()=>"unset"},{externalFieldName:"srcpool",formControlName:"name",editable:!0,replaceFn:()=>this.data.pool.pool_name}]));const n=this.data.applications.selected;(n.length>0||this.editing)&&(l.application_metadata=n),this.isReplicated&&!a.isEmpty(this.currentConfigurationValues)&&(l.configuration=this.currentConfigurationValues),this.triggerApiTask(l)}assignFormFields(l,n){n.forEach(n=>this.assignFormField(l,n))}assignFormField(l,{externalFieldName:n,formControlName:e,attr:u,replaceFn:t,editable:i,resetValue:o}){if(this.editing&&(!i||this.form.get(e).pristine))return;const s=this.form.getValue(e);let r=t?t(s):u?a.get(s,u):s;if(!s||!r){if(!i||a.isUndefined(o))return;r=o}l[n]=r}triggerApiTask(l){this.taskWrapper.wrapTaskAroundCall({task:new R.a("pool/"+(this.editing?t.e.EDIT:t.e.CREATE),{pool_name:l.hasOwnProperty("srcpool")?l.srcpool:l.pool}),call:this.poolService[this.editing?t.e.UPDATE:t.e.CREATE](l)}).subscribe(void 0,l=>{a.isObject(l.error)&&"34"===l.error.code&&this.form.get("pgNum").setErrors({34:!0}),this.form.setErrors({cdSubmitButton:!0})},()=>this.router.navigate(["/pool"]))}appSelection(){this.form.get("name").updateValueAndValidity({emitEvent:!1,onlySelf:!0})}}var q=e("MuvH"),x=e("+fVR"),P=e("uIqm"),F=e("x38r"),A=e("yJti"),B=e("vCyI"),O=e("o4+5"),L=e("VTlA"),z=e("EgGo"),U=e("d+Og");class M{constructor(l){this.pool_name=l}}const j=new z.a("pool");class G extends x.a{constructor(l,n,e,u,t,i,o,s,r,d,c){super(),this.poolService=l,this.taskWrapper=n,this.authStorageService=e,this.taskListService=u,this.modalService=t,this.i18n=i,this.pgCategoryService=o,this.dimlessPipe=s,this.urlBuilder=r,this.configurationService=d,this.actionLabels=c,this.selection=new B.a,this.executingTasks=[],this.cacheTiers=[],this.monAllowPoolDelete=!1,this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{permission:"create",icon:h.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE},{permission:"update",icon:h.a.edit,routerLink:()=>this.urlBuilder.getEdit(encodeURIComponent(this.selection.first().pool_name)),name:this.actionLabels.EDIT},{permission:"delete",icon:h.a.destroy,click:()=>this.deletePoolModal(),name:this.actionLabels.DELETE,disable:this.getDisableDesc.bind(this)}],this.permissions.configOpt.read&&this.configurationService.get("mon_allow_pool_delete").subscribe(l=>{if(a.has(l,"value")){const n=a.find(l.value,l=>"mon"===l.section)||{value:!1};this.monAllowPoolDelete="true"===n.value}})}ngOnInit(){const l=(l,n,e)=>a.get(n,l)>a.get(e,l)?1:-1;this.columns=[{prop:"pool_name",name:this.i18n("Name"),flexGrow:4,cellTransformation:F.a.executing},{prop:"type",name:this.i18n("Type"),flexGrow:2},{prop:"application_metadata",name:this.i18n("Applications"),flexGrow:3},{prop:"pg_status",name:this.i18n("PG Status"),flexGrow:3,cellClass:({row:l,column:n,value:e})=>this.getPgStatusCellClass(l,n,e)},{prop:"size",name:this.i18n("Replica Size"),flexGrow:2,cellClass:"text-right"},{prop:"last_change",name:this.i18n("Last Change"),flexGrow:2,cellClass:"text-right"},{prop:"erasure_code_profile",name:this.i18n("Erasure Coded Profile"),flexGrow:2},{prop:"crush_rule",name:this.i18n("Crush Ruleset"),flexGrow:3},{name:this.i18n("Usage"),prop:"usage",cellTemplate:this.poolUsageTpl,flexGrow:3},{prop:"stats.rd_bytes.rates",name:this.i18n("Read bytes"),comparator:(n,e,u,t)=>l("stats.rd_bytes.latest",u,t),cellTransformation:F.a.sparkline,flexGrow:3},{prop:"stats.wr_bytes.rates",name:this.i18n("Write bytes"),comparator:(n,e,u,t)=>l("stats.wr_bytes.latest",u,t),cellTransformation:F.a.sparkline,flexGrow:3},{prop:"stats.rd.rate",name:this.i18n("Read ops"),flexGrow:1,pipe:this.dimlessPipe,cellTransformation:F.a.perSecond},{prop:"stats.wr.rate",name:this.i18n("Write ops"),flexGrow:1,pipe:this.dimlessPipe,cellTransformation:F.a.perSecond}],this.taskListService.init(()=>this.poolService.getList(),void 0,l=>this.pools=this.transformPoolsData(l),()=>{this.table.reset(),this.viewCacheStatusList=[{status:A.a.ValueException}]},l=>l.name.startsWith("pool/"),(l,n)=>n.metadata.pool_name===l.pool_name,{default:l=>new M(l.pool_name)})}updateSelection(l){this.selection=l}deletePoolModal(){const l=this.selection.first().pool_name;this.modalRef=this.modalService.show(g.a,{initialState:{itemDescription:"Pool",itemNames:[l],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new R.a("pool/"+t.e.DELETE,{pool_name:l}),call:this.poolService.delete(l)})}})}getPgStatusCellClass(l,n,e){return{"text-right":!0,["pg-"+this.pgCategoryService.getTypeByStates(e)]:!0}}transformPoolsData(l){const n=["bytes_used","max_avail","avail_raw","percent_used","rd_bytes","wr_bytes","rd","wr"],e={latest:0,rate:0,rates:[]};return a.forEach(l,l=>{l.pg_status=this.transformPgStatus(l.pg_status);const u={};a.forEach(n,n=>{u[n]=l.stats&&l.stats[n]?l.stats[n]:e}),l.stats=u,l.usage=u.percent_used.latest,l.cdExecuting||l.pg_num+l.pg_placement_num===l.pg_num_target+l.pg_placement_num_target||(l.cdExecuting="Updating"),["rd_bytes","wr_bytes"].forEach(n=>{l.stats[n].rates=l.stats[n].rates.map(l=>l[1])}),l.cdIsBinary=!0}),l}transformPgStatus(l){const n=[];return a.forEach(l,(l,e)=>{n.push(`${l} ${e}`)}),n.join(", ")}getSelectionTiers(){if(void 0!==this.expandedRow){const l=this.expandedRow.tiers;this.cacheTiers=this.pools.filter(n=>l.includes(n.pool))}}getDisableDesc(){return!this.selection||!this.selection.hasSelection||!this.monAllowPoolDelete&&this.i18n("Pool deletion is disabled by the mon_allow_pool_delete configuration setting.")}setExpandedRow(l){super.setExpandedRow(l),this.getSelectionTiers()}}class ${}const K={breadcrumbs:t.a.CREATE},J={breadcrumbs:t.a.EDIT};class W{}var H=e("iutN"),Y=e("MdoF"),Z=e("ES0t"),X=e("Xg1U"),Q=e("z5nN"),ll=e("pMnS"),nl=e("EEJc"),el=e("PEr+"),ul=e("a40w"),tl=e("hfeG"),il=e("QUzE"),al=e("E7j4"),ol=e("xvu0"),sl=e("RIVN"),rl=e("nP0W"),dl=e("VBM6"),cl=e("atuK"),ml=e("JIi+"),fl=e("0BYw"),gl=e("3IYD"),pl=e("I4Qz"),hl=e("0rTx"),vl=e("lz+O"),bl=e("u2XS"),Cl=e("nhAp"),Rl=e("l7Jr"),Il=e("bUo2"),El=e("SVse"),Nl=e("8xTl"),yl=e("ajRT"),Vl=e("+gVj"),wl=e("mXUL"),Tl=e("IZUe"),_l=e("ANnk"),Sl=e("f/UV"),Dl=e("4HWh"),kl=e("p4Cf"),ql=e("gp3X"),xl=e("sb0X"),Pl=e("KVJa"),Fl=e("Z21x"),Al=e("LqlI"),Bl=u["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ol(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Ll(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The name can only consist of alphanumeric characters, dashes and underscores."]))],null,null)}function zl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The chosen erasure code profile name is already in use."]))],null,null)}function Ul(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Ml(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit.name)}))}function jl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Gl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function $l(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," ( "," ) "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit,n.component.failureDomains[n.context.$implicit].length)}))}function Kl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Jl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Wl(l){return u["ɵvid"](0,[u["ɵpid"](0,El.TitleCasePipe,[]),u["ɵpid"](0,Nl.a,[]),(l()(),u["ɵeld"](2,0,null,null,119,"cd-modal",[],null,null,null,nl.c,nl.b)),u["ɵdid"](3,49152,null,0,yl.a,[],{modalRef:[0,"modalRef"]},null),(l()(),u["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),u["ɵted"](5,null,[""," ",""])),u["ɵppd"](6,1),u["ɵppd"](7,1),(l()(),u["ɵeld"](8,0,null,1,113,null,null,null,null,null,null,null)),(l()(),u["ɵeld"](9,0,null,null,112,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var t=!0;return"submit"===n&&(t=!1!==u["ɵnov"](l,11).onSubmit(e)&&t),"reset"===n&&(t=!1!==u["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==u["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),u["ɵdid"](10,16384,null,0,i.G,[],null,null),u["ɵdid"](11,540672,[["frm",4]],0,i.l,[[8,null],[8,null]],{form:[0,"form"]},null),u["ɵprd"](2048,null,i.d,null,[i.l]),u["ɵdid"](13,16384,null,0,i.s,[[4,i.d]],null,null),u["ɵdid"](14,16384,null,0,Vl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),u["ɵeld"](15,0,null,null,98,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),u["ɵeld"](16,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](17,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,1,{FormControlNames:1}),u["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),u["ɵeld"](20,0,null,0,3,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),u["ɵeld"](21,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Name"])),(l()(),u["ɵeld"](23,0,null,null,0,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵeld"](24,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](25,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,28)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,28).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,28)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,28)._compositionEnd(e.target.value)&&t),t}),null,null)),u["ɵdid"](26,4210688,null,0,Tl.a,[u.ElementRef],{autofocus:[0,"autofocus"]},null),u["ɵdid"](27,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](28,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.e]),u["ɵdid"](30,671744,[[1,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](32,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](33,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ol)),u["ɵdid"](35,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ll)),u["ɵdid"](37,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,zl)),u["ɵdid"](39,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](40,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](41,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,3,{FormControlNames:1}),u["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),u["ɵeld"](44,0,null,0,5,"label",[["class","cd-col-form-label"],["for","root"]],null,null,null,null,null)),(l()(),u["ɵeld"](45,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Root"])),(l()(),u["ɵeld"](47,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](48,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](49,0,null,null,0,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵeld"](50,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](51,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","root"],["id","root"],["name","root"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,53).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,53).onTouched()&&t),t}),null,null)),u["ɵdid"](52,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](53,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](55,671744,[[3,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](57,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](58,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ul)),u["ɵdid"](60,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ml)),u["ɵdid"](62,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,jl)),u["ɵdid"](64,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](65,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](66,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,5,{FormControlNames:1}),u["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),u["ɵeld"](69,0,null,0,5,"label",[["class","cd-col-form-label"],["for","failure_domain"]],null,null,null,null,null)),(l()(),u["ɵeld"](70,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Failure domain type"])),(l()(),u["ɵeld"](72,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](73,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](74,0,null,null,0,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵeld"](75,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](76,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","failure_domain"],["id","failure_domain"],["name","failure_domain"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,78).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,78).onTouched()&&t),t}),null,null)),u["ɵdid"](77,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](78,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](80,671744,[[5,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](82,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](83,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Gl)),u["ɵdid"](85,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,$l)),u["ɵdid"](87,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Kl)),u["ɵdid"](89,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](90,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](91,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,7,{FormControlNames:1}),u["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),u["ɵeld"](94,0,null,0,4,"label",[["class","cd-col-form-label"],["for","device_class"]],null,null,null,null,null)),(l()(),u["ɵeld"](95,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Device class"])),(l()(),u["ɵeld"](97,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](98,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](99,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](100,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","device_class"],["id","device_class"],["name","device_class"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,102).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,102).onTouched()&&t),t}),null,null)),u["ɵdid"](101,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](102,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](104,671744,[[7,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](106,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](107,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](108,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](109,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](110,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Let Ceph decide"])),(l()(),u["ɵand"](16777216,null,null,1,null,Jl)),u["ɵdid"](113,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](114,0,null,null,7,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),u["ɵeld"](115,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var u=!0;return"submitAction"===n&&(u=!1!==l.component.onSubmit()&&u),u}),ql.b,ql.a)),u["ɵdid"](116,114688,null,0,xl.a,[u.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),u["ɵted"](117,0,[""," ",""])),u["ɵppd"](118,1),u["ɵppd"](119,1),(l()(),u["ɵeld"](120,0,null,null,1,"cd-back-button",[],null,null,null,Pl.b,Pl.a)),u["ɵdid"](121,49152,null,0,Fl.a,[El.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.bsModalRef),l(n,11,0,e.form),l(n,14,0,e.form),l(n,17,0),l(n,26,0,""),l(n,30,0,"name"),l(n,33,0,"name"),l(n,35,0,e.form.showError("name",u["ɵnov"](n,11),"required")),l(n,37,0,e.form.showError("name",u["ɵnov"](n,11),"pattern")),l(n,39,0,e.form.showError("name",u["ɵnov"](n,11),"uniqueName")),l(n,41,0),l(n,48,0,e.tooltips.root),l(n,55,0,"root"),l(n,58,0,"root"),l(n,60,0,!e.buckets),l(n,62,0,e.buckets),l(n,64,0,e.form.showError("root",u["ɵnov"](n,11),"required")),l(n,66,0),l(n,73,0,e.tooltips.failure_domain),l(n,80,0,"failure_domain"),l(n,83,0,"failure_domain"),l(n,85,0,!e.failureDomains),l(n,87,0,e.failureDomainKeys),l(n,89,0,e.form.showError("failure_domain",u["ɵnov"](n,11),"required")),l(n,91,0),l(n,98,0,e.tooltips.device_class),l(n,104,0,"device_class"),l(n,107,0,"device_class"),l(n,109,0,""),l(n,110,0,""),l(n,113,0,e.devices),l(n,116,0,u["ɵnov"](n,11)),l(n,121,0,e.bsModalRef.hide)}),(function(l,n){var e=n.component,t=u["ɵunv"](n,5,0,l(n,6,0,u["ɵnov"](n,0),e.action)),i=u["ɵunv"](n,5,1,l(n,7,0,u["ɵnov"](n,1),e.resource));l(n,5,0,t,i),l(n,9,0,u["ɵnov"](n,13).ngClassUntouched,u["ɵnov"](n,13).ngClassTouched,u["ɵnov"](n,13).ngClassPristine,u["ɵnov"](n,13).ngClassDirty,u["ɵnov"](n,13).ngClassValid,u["ɵnov"](n,13).ngClassInvalid,u["ɵnov"](n,13).ngClassPending),l(n,16,0,u["ɵnov"](n,17).hasErrors,u["ɵnov"](n,17).hasSuccess),l(n,25,0,u["ɵnov"](n,32).ngClassUntouched,u["ɵnov"](n,32).ngClassTouched,u["ɵnov"](n,32).ngClassPristine,u["ɵnov"](n,32).ngClassDirty,u["ɵnov"](n,32).ngClassValid,u["ɵnov"](n,32).ngClassInvalid,u["ɵnov"](n,32).ngClassPending,u["ɵnov"](n,33).validClass,u["ɵnov"](n,33).invalidClass),l(n,40,0,u["ɵnov"](n,41).hasErrors,u["ɵnov"](n,41).hasSuccess),l(n,51,0,u["ɵnov"](n,57).ngClassUntouched,u["ɵnov"](n,57).ngClassTouched,u["ɵnov"](n,57).ngClassPristine,u["ɵnov"](n,57).ngClassDirty,u["ɵnov"](n,57).ngClassValid,u["ɵnov"](n,57).ngClassInvalid,u["ɵnov"](n,57).ngClassPending,u["ɵnov"](n,58).validClass,u["ɵnov"](n,58).invalidClass),l(n,65,0,u["ɵnov"](n,66).hasErrors,u["ɵnov"](n,66).hasSuccess),l(n,76,0,u["ɵnov"](n,82).ngClassUntouched,u["ɵnov"](n,82).ngClassTouched,u["ɵnov"](n,82).ngClassPristine,u["ɵnov"](n,82).ngClassDirty,u["ɵnov"](n,82).ngClassValid,u["ɵnov"](n,82).ngClassInvalid,u["ɵnov"](n,82).ngClassPending,u["ɵnov"](n,83).validClass,u["ɵnov"](n,83).invalidClass),l(n,90,0,u["ɵnov"](n,91).hasErrors,u["ɵnov"](n,91).hasSuccess),l(n,100,0,u["ɵnov"](n,106).ngClassUntouched,u["ɵnov"](n,106).ngClassTouched,u["ɵnov"](n,106).ngClassPristine,u["ɵnov"](n,106).ngClassDirty,u["ɵnov"](n,106).ngClassValid,u["ɵnov"](n,106).ngClassInvalid,u["ɵnov"](n,106).ngClassPending,u["ɵnov"](n,107).validClass,u["ɵnov"](n,107).invalidClass);var a=u["ɵunv"](n,117,0,l(n,118,0,u["ɵnov"](n,0),e.action)),o=u["ɵunv"](n,117,1,l(n,119,0,u["ɵnov"](n,1),e.resource));l(n,117,0,a,o)}))}function Hl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-crush-rule-form-modal",[],null,null,null,Wl,Bl)),u["ɵdid"](1,114688,null,0,w,[V.a,Al.a,y.a,d,s.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var Yl=u["ɵccf"]("cd-crush-rule-form-modal",w,Hl,{},{submitAction:"submitAction"},[]),Zl=u["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Xl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Ql(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The name can only consist of alphanumeric characters, dashes and underscores."]))],null,null)}function ln(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The chosen erasure code profile name is already in use."]))],null,null)}function nn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function en(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function un(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function tn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function an(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 2."]))],null,null)}function on(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["Chunks (k+m) have exceeded the available OSDs of ","."]))],null,(function(l,n){l(n,1,0,n.component.deviceCount)}))}function sn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["For an equal distribution k has to be a multiple of (k+m)/l."]))],null,null)}function rn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["K has to be equal to or greater than m in order to recover data correctly through c."]))],null,null)}function dn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["Distribution factor: ",""]))],null,(function(l,n){l(n,1,0,n.component.lrcMultiK)}))}function cn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function mn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 1."]))],null,null)}function fn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["Chunks (k+m) have exceeded the available OSDs of ","."]))],null,(function(l,n){l(n,1,0,n.component.deviceCount)}))}function gn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 1."]))],null,null)}function pn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["C has to be equal to or lower than m as m defines the amount of chunks that can be used."]))],null,null)}function hn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,9,{FormControlNames:1}),u["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","c"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Durability estimator (c)"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,8,"input",[["class","form-control"],["formControlName","c"],["id","c"],["name","c"],["placeholder","Coding chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,12)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,12)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,12)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,13).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](13,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](15,671744,[[9,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](17,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](18,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,gn)),u["ɵdid"](20,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,pn)),u["ɵdid"](22,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.shec.c),l(n,15,0,"c"),l(n,18,0,"c"),l(n,20,0,e.form.showError("c",u["ɵnov"](n.parent,11),"min")),l(n,22,0,e.form.showError("c",u["ɵnov"](n.parent,11),"cGreaterM"))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,17).ngClassUntouched,u["ɵnov"](n,17).ngClassTouched,u["ɵnov"](n,17).ngClassPristine,u["ɵnov"](n,17).ngClassDirty,u["ɵnov"](n,17).ngClassValid,u["ɵnov"](n,17).ngClassInvalid,u["ɵnov"](n,17).ngClassPending,u["ɵnov"](n,18).validClass,u["ɵnov"](n,18).invalidClass)}))}function vn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["D is automatically updated on k and m changes"]))],null,null)}function bn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["D can be set from "," to ",""]))],null,(function(l,n){var e=n.component;l(n,1,0,e.getDMin(),e.getDMax())}))}function Cn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["D can only be set to ",""]))],null,(function(l,n){l(n,1,0,n.component.getDMax())}))}function Rn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,bn)),u["ɵdid"](2,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Cn)),u["ɵdid"](4,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](0,null,null,0))],(function(l,n){var e=n.component;l(n,2,0,e.getDMin()<e.getDMax()),l(n,4,0,e.getDMin()===e.getDMax())}),null)}function In(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["D has to be greater than k (",")."]))],null,(function(l,n){l(n,1,0,n.component.getDMin())}))}function En(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["D has to be lower than k + m (",")."]))],null,(function(l,n){l(n,1,0,n.component.getDMax())}))}function Nn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,32,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,11,{FormControlNames:1}),u["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","d"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Helper chunks (d)"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,23,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,14,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),u["ɵeld"](11,0,null,null,8,"input",[["class","form-control"],["formControlName","d"],["id","d"],["name","d"],["placeholder","Helper chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,13)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,13)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,14).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,14).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,14).onTouched()&&t),t}),null,null)),u["ɵdid"](12,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](13,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](14,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](16,671744,[[11,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](18,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](19,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](20,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),u["ɵeld"](21,0,null,null,3,"button",[["class","btn btn-light"],["id","d-calc-btn"],["ngbTooltip","Set d manually or use the plugin's default calculation that maximizes d."],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.toggleDCalc()&&u),u}),null,null)),(l()(),u["ɵeld"](22,0,null,null,2,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](24,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,vn)),u["ɵdid"](26,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Rn)),u["ɵdid"](28,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,In)),u["ɵdid"](30,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,En)),u["ɵdid"](32,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.clay.d),l(n,16,0,"d"),l(n,19,0,"d"),l(n,24,0,e.dCalc?e.icons.unlock:e.icons.lock),l(n,26,0,e.dCalc),l(n,28,0,!e.dCalc),l(n,30,0,e.form.showError("d",u["ɵnov"](n.parent,11),"dMin")),l(n,32,0,e.form.showError("d",u["ɵnov"](n.parent,11),"dMax"))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,11,0,u["ɵnov"](n,18).ngClassUntouched,u["ɵnov"](n,18).ngClassTouched,u["ɵnov"](n,18).ngClassPristine,u["ɵnov"](n,18).ngClassDirty,u["ɵnov"](n,18).ngClassValid,u["ɵnov"](n,18).ngClassInvalid,u["ɵnov"](n,18).ngClassPending,u["ɵnov"](n,19).validClass,u["ɵnov"](n,19).invalidClass)}))}function yn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Vn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 1."]))],null,null)}function wn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Can't split up chunks (k+m) correctly with the current locality."]))],null,null)}function Tn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,13,{FormControlNames:1}),u["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","l"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Locality (l)"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,8,"input",[["class","form-control"],["formControlName","l"],["id","l"],["name","l"],["placeholder","Coding chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,12)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,12)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,12)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,13).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](13,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](15,671744,[[13,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](17,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](18,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,yn)),u["ɵdid"](20,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Vn)),u["ɵdid"](22,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,wn)),u["ɵdid"](24,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](25,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](26,null,["Locality groups: ",""]))],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.lrc.l),l(n,15,0,"l"),l(n,18,0,"l"),l(n,20,0,e.form.showError("l",u["ɵnov"](n.parent,11),"required")),l(n,22,0,e.form.showError("l",u["ɵnov"](n.parent,11),"min")),l(n,24,0,e.form.showError("l",u["ɵnov"](n.parent,11),"unequal"))}),(function(l,n){var e=n.component;l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,17).ngClassUntouched,u["ɵnov"](n,17).ngClassTouched,u["ɵnov"](n,17).ngClassPristine,u["ɵnov"](n,17).ngClassDirty,u["ɵnov"](n,17).ngClassValid,u["ɵnov"](n,17).ngClassInvalid,u["ɵnov"](n,17).ngClassPending,u["ɵnov"](n,18).validClass,u["ɵnov"](n,18).invalidClass),l(n,26,0,e.lrcGroups)}))}function _n(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Sn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," ( "," ) "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit,n.component.failureDomains[n.context.$implicit].length)}))}function Dn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function kn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["None"]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function qn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," ( "," ) "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit,n.component.failureDomains[n.context.$implicit].length)}))}function xn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,17,{FormControlNames:1}),u["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","crushLocality"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush Locality"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","crushLocality"],["id","crushLocality"],["name","crushLocality"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,12).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](14,671744,[[17,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](16,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](17,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Dn)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,kn)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,qn)),u["ɵdid"](23,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.lrc.crushLocality),l(n,14,0,"crushLocality"),l(n,17,0,"crushLocality"),l(n,19,0,!e.failureDomains),l(n,21,0,e.failureDomainKeys.length>0),l(n,23,0,e.failureDomainKeys)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,16).ngClassUntouched,u["ɵnov"](n,16).ngClassTouched,u["ɵnov"](n,16).ngClassPristine,u["ɵnov"](n,16).ngClassDirty,u["ɵnov"](n,16).ngClassValid,u["ɵnov"](n,16).ngClassInvalid,u["ɵnov"](n,16).ngClassPending,u["ɵnov"](n,17).validClass,u["ɵnov"](n,17).invalidClass)}))}function Pn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Fn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,19,{FormControlNames:1}),u["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","scalar_mds"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Scalar mds"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,10,"select",[["class","form-control custom-select"],["formControlName","scalar_mds"],["id","scalar_mds"],["name","scalar_mds"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,12).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](14,671744,[[19,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](16,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](17,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,2,null,Pn)),u["ɵdid"](19,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),u["ɵpad"](20,3)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.clay.scalar_mds),l(n,14,0,"scalar_mds"),l(n,17,0,"scalar_mds");var u=l(n,20,0,e.PLUGIN.JERASURE,e.PLUGIN.ISA,e.PLUGIN.SHEC);l(n,19,0,u)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,16).ngClassUntouched,u["ɵnov"](n,16).ngClassTouched,u["ɵnov"](n,16).ngClassPristine,u["ɵnov"](n,16).ngClassDirty,u["ɵnov"](n,16).ngClassValid,u["ɵnov"](n,16).ngClassInvalid,u["ɵnov"](n,16).ngClassPending,u["ɵnov"](n,17).validClass,u["ɵnov"](n,17).invalidClass)}))}function An(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Bn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,21,{FormControlNames:1}),u["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","technique"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Technique"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","technique"],["id","technique"],["name","technique"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,12).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](14,671744,[[21,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](16,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](17,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,An)),u["ɵdid"](19,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins[e.plugin].technique),l(n,14,0,"technique"),l(n,17,0,"technique"),l(n,19,0,e.techniques)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,16).ngClassUntouched,u["ɵnov"](n,16).ngClassTouched,u["ɵnov"](n,16).ngClassPristine,u["ɵnov"](n,16).ngClassDirty,u["ɵnov"](n,16).ngClassValid,u["ɵnov"](n,16).ngClassInvalid,u["ɵnov"](n,16).ngClassPending,u["ɵnov"](n,17).validClass,u["ɵnov"](n,17).invalidClass)}))}function On(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 1."]))],null,null)}function Ln(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,23,{FormControlNames:1}),u["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","packetSize"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Packetsize"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,8,"input",[["class","form-control"],["formControlName","packetSize"],["id","packetSize"],["name","packetSize"],["placeholder","Packetsize..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,12)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,12)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,12)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,13).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](13,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](15,671744,[[23,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](17,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](18,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,On)),u["ɵdid"](20,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.jerasure.packetSize),l(n,15,0,"packetSize"),l(n,18,0,"packetSize"),l(n,20,0,e.form.showError("packetSize",u["ɵnov"](n.parent,11),"min"))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,17).ngClassUntouched,u["ɵnov"](n,17).ngClassTouched,u["ɵnov"](n,17).ngClassPristine,u["ɵnov"](n,17).ngClassDirty,u["ɵnov"](n,17).ngClassValid,u["ɵnov"](n,17).ngClassInvalid,u["ɵnov"](n,17).ngClassPending,u["ɵnov"](n,18).validClass,u["ɵnov"](n,18).invalidClass)}))}function zn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Un(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit.name)}))}function Mn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function jn(l){return u["ɵvid"](0,[u["ɵpid"](0,El.TitleCasePipe,[]),u["ɵpid"](0,Nl.a,[]),(l()(),u["ɵeld"](2,0,null,null,226,"cd-modal",[],null,null,null,nl.c,nl.b)),u["ɵdid"](3,49152,null,0,yl.a,[],{modalRef:[0,"modalRef"]},null),(l()(),u["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),u["ɵted"](5,null,[""," ",""])),u["ɵppd"](6,1),u["ɵppd"](7,1),(l()(),u["ɵeld"](8,0,null,1,220,null,null,null,null,null,null,null)),(l()(),u["ɵeld"](9,0,null,null,219,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var t=!0;return"submit"===n&&(t=!1!==u["ɵnov"](l,11).onSubmit(e)&&t),"reset"===n&&(t=!1!==u["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==u["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),u["ɵdid"](10,16384,null,0,i.G,[],null,null),u["ɵdid"](11,540672,[["frm",4]],0,i.l,[[8,null],[8,null]],{form:[0,"form"]},null),u["ɵprd"](2048,null,i.d,null,[i.l]),u["ɵdid"](13,16384,null,0,i.s,[[4,i.d]],null,null),u["ɵdid"](14,16384,null,0,Vl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),u["ɵeld"](15,0,null,null,205,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),u["ɵeld"](16,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](17,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,1,{FormControlNames:1}),u["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),u["ɵeld"](20,0,null,0,1,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Name"])),(l()(),u["ɵeld"](22,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](23,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,26)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,26).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,26)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,26)._compositionEnd(e.target.value)&&t),t}),null,null)),u["ɵdid"](24,4210688,null,0,Tl.a,[u.ElementRef],{autofocus:[0,"autofocus"]},null),u["ɵdid"](25,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](26,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.e]),u["ɵdid"](28,671744,[[1,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](30,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](31,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Xl)),u["ɵdid"](33,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ql)),u["ɵdid"](35,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ln)),u["ɵdid"](37,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](38,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](39,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,3,{FormControlNames:1}),u["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),u["ɵeld"](42,0,null,0,4,"label",[["class","cd-col-form-label"],["for","plugin"]],null,null,null,null,null)),(l()(),u["ɵeld"](43,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Plugin"])),(l()(),u["ɵeld"](45,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](46,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](47,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](48,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","plugin"],["id","plugin"],["name","plugin"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,50).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,50).onTouched()&&t),t}),null,null)),u["ɵdid"](49,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](50,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](52,671744,[[3,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](54,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](55,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,nn)),u["ɵdid"](57,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,en)),u["ɵdid"](59,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,un)),u["ɵdid"](61,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](62,0,null,null,30,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](63,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,5,{FormControlNames:1}),u["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),u["ɵeld"](66,0,null,0,4,"label",[["class","cd-col-form-label"],["for","k"]],null,null,null,null,null)),(l()(),u["ɵeld"](67,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Data chunks (k)"])),(l()(),u["ɵeld"](69,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](70,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](71,0,null,0,21,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](72,0,null,null,8,"input",[["class","form-control"],["formControlName","k"],["id","k"],["name","k"],["ng-model","$ctrl.erasureCodeProfile.k"],["placeholder","Data chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,74)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,74).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,74)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,74)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,75).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,75).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,75).onTouched()&&t),t}),null,null)),u["ɵdid"](73,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](74,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](75,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](77,671744,[[5,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](79,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](80,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,tn)),u["ɵdid"](82,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,an)),u["ɵdid"](84,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,on)),u["ɵdid"](86,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,sn)),u["ɵdid"](88,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,rn)),u["ɵdid"](90,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,dn)),u["ɵdid"](92,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](93,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](94,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,7,{FormControlNames:1}),u["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),u["ɵeld"](97,0,null,0,4,"label",[["class","cd-col-form-label"],["for","m"]],null,null,null,null,null)),(l()(),u["ɵeld"](98,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Coding chunks (m)"])),(l()(),u["ɵeld"](100,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](101,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](102,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](103,0,null,null,8,"input",[["class","form-control"],["formControlName","m"],["id","m"],["name","m"],["placeholder","Coding chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,105)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,105).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,105)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,105)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,106).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,106).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,106).onTouched()&&t),t}),null,null)),u["ɵdid"](104,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](105,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](106,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](108,671744,[[7,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](110,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](111,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,cn)),u["ɵdid"](113,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,mn)),u["ɵdid"](115,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,fn)),u["ɵdid"](117,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,hn)),u["ɵdid"](119,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Nn)),u["ɵdid"](121,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Tn)),u["ɵdid"](123,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](124,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](125,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,15,{FormControlNames:1}),u["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),u["ɵeld"](128,0,null,0,4,"label",[["class","cd-col-form-label"],["for","crushFailureDomain"]],null,null,null,null,null)),(l()(),u["ɵeld"](129,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush failure domain"])),(l()(),u["ɵeld"](131,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](132,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](133,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](134,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","crushFailureDomain"],["id","crushFailureDomain"],["name","crushFailureDomain"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,136).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,136).onTouched()&&t),t}),null,null)),u["ɵdid"](135,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](136,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](138,671744,[[15,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](140,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](141,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,_n)),u["ɵdid"](143,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Sn)),u["ɵdid"](145,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,xn)),u["ɵdid"](147,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Fn)),u["ɵdid"](149,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,2,null,Bn)),u["ɵdid"](151,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),u["ɵpad"](152,3),(l()(),u["ɵand"](16777216,null,null,1,null,Ln)),u["ɵdid"](154,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](155,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](156,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,25,{FormControlNames:1}),u["ɵqud"](603979776,26,{messagesBlock:0}),(l()(),u["ɵeld"](159,0,null,0,4,"label",[["class","cd-col-form-label"],["for","crushRoot"]],null,null,null,null,null)),(l()(),u["ɵeld"](160,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush root"])),(l()(),u["ɵeld"](162,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](163,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](164,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](165,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","crushRoot"],["id","crushRoot"],["name","crushRoot"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,167).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,167).onTouched()&&t),t}),null,null)),u["ɵdid"](166,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](167,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](169,671744,[[25,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](171,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](172,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,zn)),u["ɵdid"](174,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Un)),u["ɵdid"](176,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](177,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](178,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,27,{FormControlNames:1}),u["ɵqud"](603979776,28,{messagesBlock:0}),(l()(),u["ɵeld"](181,0,null,0,4,"label",[["class","cd-col-form-label"],["for","crushDeviceClass"]],null,null,null,null,null)),(l()(),u["ɵeld"](182,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush device class"])),(l()(),u["ɵeld"](184,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](185,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](186,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](187,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","crushDeviceClass"],["id","crushDeviceClass"],["name","crushDeviceClass"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,189).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,189).onTouched()&&t),t}),null,null)),u["ɵdid"](188,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](189,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](191,671744,[[27,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](193,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](194,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](195,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](196,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](197,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Let Ceph decide"])),(l()(),u["ɵand"](16777216,null,null,1,null,Mn)),u["ɵdid"](200,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](201,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](202,null,["Available OSDs: ",""])),(l()(),u["ɵeld"](203,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](204,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,29,{FormControlNames:1}),u["ɵqud"](603979776,30,{messagesBlock:0}),(l()(),u["ɵeld"](207,0,null,0,4,"label",[["class","cd-col-form-label"],["for","directory"]],null,null,null,null,null)),(l()(),u["ɵeld"](208,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Directory"])),(l()(),u["ɵeld"](210,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](211,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](212,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](213,0,null,null,7,"input",[["class","form-control"],["formControlName","directory"],["id","directory"],["name","directory"],["placeholder","Path..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,215)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,215).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,215)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,215)._compositionEnd(e.target.value)&&t),t}),null,null)),u["ɵdid"](214,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](215,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.e]),u["ɵdid"](217,671744,[[29,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](219,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](220,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](221,0,null,null,7,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),u["ɵeld"](222,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var u=!0;return"submitAction"===n&&(u=!1!==l.component.onSubmit()&&u),u}),ql.b,ql.a)),u["ɵdid"](223,114688,null,0,xl.a,[u.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),u["ɵted"](224,0,[""," ",""])),u["ɵppd"](225,1),u["ɵppd"](226,1),(l()(),u["ɵeld"](227,0,null,null,1,"cd-back-button",[],null,null,null,Pl.b,Pl.a)),u["ɵdid"](228,49152,null,0,Fl.a,[El.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.bsModalRef),l(n,11,0,e.form),l(n,14,0,e.form),l(n,17,0),l(n,24,0,""),l(n,28,0,"name"),l(n,31,0,"name"),l(n,33,0,e.form.showError("name",u["ɵnov"](n,11),"required")),l(n,35,0,e.form.showError("name",u["ɵnov"](n,11),"pattern")),l(n,37,0,e.form.showError("name",u["ɵnov"](n,11),"uniqueName")),l(n,39,0),l(n,46,0,e.tooltips.plugins[e.plugin].description),l(n,52,0,"plugin"),l(n,55,0,"plugin"),l(n,57,0,!e.plugins),l(n,59,0,e.plugins),l(n,61,0,e.form.showError("name",u["ɵnov"](n,11),"required")),l(n,63,0),l(n,70,0,e.tooltips.k),l(n,77,0,"k"),l(n,80,0,"k"),l(n,82,0,e.form.showError("k",u["ɵnov"](n,11),"required")),l(n,84,0,e.form.showError("k",u["ɵnov"](n,11),"min")),l(n,86,0,e.form.showError("k",u["ɵnov"](n,11),"max")),l(n,88,0,e.form.showError("k",u["ɵnov"](n,11),"unequal")),l(n,90,0,e.form.showError("k",u["ɵnov"](n,11),"kLowerM")),l(n,92,0,"lrc"===e.plugin),l(n,94,0),l(n,101,0,e.tooltips.m),l(n,108,0,"m"),l(n,111,0,"m"),l(n,113,0,e.form.showError("m",u["ɵnov"](n,11),"required")),l(n,115,0,e.form.showError("m",u["ɵnov"](n,11),"min")),l(n,117,0,e.form.showError("m",u["ɵnov"](n,11),"max")),l(n,119,0,"shec"===e.plugin),l(n,121,0,"clay"===e.plugin),l(n,123,0,e.plugin===e.PLUGIN.LRC),l(n,125,0),l(n,132,0,e.tooltips.crushFailureDomain),l(n,138,0,"crushFailureDomain"),l(n,141,0,"crushFailureDomain"),l(n,143,0,!e.failureDomains),l(n,145,0,e.failureDomainKeys),l(n,147,0,e.plugin===e.PLUGIN.LRC),l(n,149,0,e.PLUGIN.CLAY===e.plugin);var t=l(n,152,0,e.PLUGIN.JERASURE,e.PLUGIN.ISA,e.PLUGIN.CLAY).includes(e.plugin);l(n,151,0,t),l(n,154,0,e.plugin===e.PLUGIN.JERASURE),l(n,156,0),l(n,163,0,e.tooltips.crushRoot),l(n,169,0,"crushRoot"),l(n,172,0,"crushRoot"),l(n,174,0,!e.buckets),l(n,176,0,e.buckets),l(n,178,0),l(n,185,0,e.tooltips.crushDeviceClass),l(n,191,0,"crushDeviceClass"),l(n,194,0,"crushDeviceClass"),l(n,196,0,""),l(n,197,0,""),l(n,200,0,e.devices),l(n,204,0),l(n,211,0,e.tooltips.directory),l(n,217,0,"directory"),l(n,220,0,"directory"),l(n,223,0,u["ɵnov"](n,11)),l(n,228,0,e.bsModalRef.hide)}),(function(l,n){var e=n.component,t=u["ɵunv"](n,5,0,l(n,6,0,u["ɵnov"](n,0),e.action)),i=u["ɵunv"](n,5,1,l(n,7,0,u["ɵnov"](n,1),e.resource));l(n,5,0,t,i),l(n,9,0,u["ɵnov"](n,13).ngClassUntouched,u["ɵnov"](n,13).ngClassTouched,u["ɵnov"](n,13).ngClassPristine,u["ɵnov"](n,13).ngClassDirty,u["ɵnov"](n,13).ngClassValid,u["ɵnov"](n,13).ngClassInvalid,u["ɵnov"](n,13).ngClassPending),l(n,16,0,u["ɵnov"](n,17).hasErrors,u["ɵnov"](n,17).hasSuccess),l(n,23,0,u["ɵnov"](n,30).ngClassUntouched,u["ɵnov"](n,30).ngClassTouched,u["ɵnov"](n,30).ngClassPristine,u["ɵnov"](n,30).ngClassDirty,u["ɵnov"](n,30).ngClassValid,u["ɵnov"](n,30).ngClassInvalid,u["ɵnov"](n,30).ngClassPending,u["ɵnov"](n,31).validClass,u["ɵnov"](n,31).invalidClass),l(n,38,0,u["ɵnov"](n,39).hasErrors,u["ɵnov"](n,39).hasSuccess),l(n,48,0,u["ɵnov"](n,54).ngClassUntouched,u["ɵnov"](n,54).ngClassTouched,u["ɵnov"](n,54).ngClassPristine,u["ɵnov"](n,54).ngClassDirty,u["ɵnov"](n,54).ngClassValid,u["ɵnov"](n,54).ngClassInvalid,u["ɵnov"](n,54).ngClassPending,u["ɵnov"](n,55).validClass,u["ɵnov"](n,55).invalidClass),l(n,62,0,u["ɵnov"](n,63).hasErrors,u["ɵnov"](n,63).hasSuccess),l(n,72,0,u["ɵnov"](n,79).ngClassUntouched,u["ɵnov"](n,79).ngClassTouched,u["ɵnov"](n,79).ngClassPristine,u["ɵnov"](n,79).ngClassDirty,u["ɵnov"](n,79).ngClassValid,u["ɵnov"](n,79).ngClassInvalid,u["ɵnov"](n,79).ngClassPending,u["ɵnov"](n,80).validClass,u["ɵnov"](n,80).invalidClass),l(n,93,0,u["ɵnov"](n,94).hasErrors,u["ɵnov"](n,94).hasSuccess),l(n,103,0,u["ɵnov"](n,110).ngClassUntouched,u["ɵnov"](n,110).ngClassTouched,u["ɵnov"](n,110).ngClassPristine,u["ɵnov"](n,110).ngClassDirty,u["ɵnov"](n,110).ngClassValid,u["ɵnov"](n,110).ngClassInvalid,u["ɵnov"](n,110).ngClassPending,u["ɵnov"](n,111).validClass,u["ɵnov"](n,111).invalidClass),l(n,124,0,u["ɵnov"](n,125).hasErrors,u["ɵnov"](n,125).hasSuccess),l(n,134,0,u["ɵnov"](n,140).ngClassUntouched,u["ɵnov"](n,140).ngClassTouched,u["ɵnov"](n,140).ngClassPristine,u["ɵnov"](n,140).ngClassDirty,u["ɵnov"](n,140).ngClassValid,u["ɵnov"](n,140).ngClassInvalid,u["ɵnov"](n,140).ngClassPending,u["ɵnov"](n,141).validClass,u["ɵnov"](n,141).invalidClass),l(n,155,0,u["ɵnov"](n,156).hasErrors,u["ɵnov"](n,156).hasSuccess),l(n,165,0,u["ɵnov"](n,171).ngClassUntouched,u["ɵnov"](n,171).ngClassTouched,u["ɵnov"](n,171).ngClassPristine,u["ɵnov"](n,171).ngClassDirty,u["ɵnov"](n,171).ngClassValid,u["ɵnov"](n,171).ngClassInvalid,u["ɵnov"](n,171).ngClassPending,u["ɵnov"](n,172).validClass,u["ɵnov"](n,172).invalidClass),l(n,177,0,u["ɵnov"](n,178).hasErrors,u["ɵnov"](n,178).hasSuccess),l(n,187,0,u["ɵnov"](n,193).ngClassUntouched,u["ɵnov"](n,193).ngClassTouched,u["ɵnov"](n,193).ngClassPristine,u["ɵnov"](n,193).ngClassDirty,u["ɵnov"](n,193).ngClassValid,u["ɵnov"](n,193).ngClassInvalid,u["ɵnov"](n,193).ngClassPending,u["ɵnov"](n,194).validClass,u["ɵnov"](n,194).invalidClass),l(n,202,0,e.deviceCount),l(n,203,0,u["ɵnov"](n,204).hasErrors,u["ɵnov"](n,204).hasSuccess),l(n,213,0,u["ɵnov"](n,219).ngClassUntouched,u["ɵnov"](n,219).ngClassTouched,u["ɵnov"](n,219).ngClassPristine,u["ɵnov"](n,219).ngClassDirty,u["ɵnov"](n,219).ngClassValid,u["ɵnov"](n,219).ngClassInvalid,u["ɵnov"](n,219).ngClassPending,u["ɵnov"](n,220).validClass,u["ɵnov"](n,220).invalidClass);var a=u["ɵunv"](n,224,0,l(n,225,0,u["ɵnov"](n,0),e.action)),o=u["ɵunv"](n,224,1,l(n,226,0,u["ɵnov"](n,1),e.resource));l(n,224,0,a,o)}))}function Gn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-erasure-code-profile-form-modal",[],null,null,null,jn,Zl)),u["ɵdid"](1,114688,null,0,_,[V.a,Al.a,y.a,c,s.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var $n=u["ɵccf"]("cd-erasure-code-profile-form-modal",_,Gn,{},{submitAction:"submitAction"},[]),Kn=e("w9WL"),Jn=e("yT6U"),Wn=e("4DD9"),Hn=e("iExv"),Yn=e("85J/"),Zn=e("+0ag"),Xn=e("IzCI"),Qn=e("Dwqy"),le=e("uYzU"),ne=e("FFMq"),ee=e("E2fk"),ue=e("a0VL"),te=e("nSDx"),ie=e("SB+Q"),ae=e("TYzs"),oe=e("BQkM"),se=e("dEH0"),re=e("G1/K"),de=e("TJUb"),ce=e("efK2"),me=e("CNMR"),fe=e("KOzp"),ge=e("2uy1"),pe=e("z/SZ"),he=e("38Bd"),ve=e("978R"),be=e("FE24"),Ce=e("Avrn"),Re=e("iInd"),Ie=e("2ZVE"),Ee=e("ienR"),Ne=e("gk6K"),ye=e("9Xeq"),Ve=e("hrfs"),we=e("yGOH"),Te=e("bxSN"),_e=e("WF9J"),Se=e("V/fk"),De=e("ChqD"),ke=e("PCNd"),qe=e("zWsK"),xe=e("kJI8"),Pe=e("kccj"),Fe=e("yYhs"),Ae=e("k/xb"),Be=e("C6Ij"),Oe=e("AWcq"),Le=e("xSw7"),ze=e("GgAd"),Ue=e("a278"),Me=e("insk"),je=e("cUpR"),Ge=e("20UP"),$e=e("pKUh"),Ke=e("25BL"),Je=e("NUGo"),We=e("S7zO"),He=e("EFGL"),Ye=e("aAWM"),Ze=e("o8EM"),Xe=e("sLuX"),Qe=e("FSuO");e("jKX/");class lu{constructor(l,n){this.i18n=l,this.poolService=n,this.cacheTierColumns=[],this.cacheTierColumns=[{prop:"pool_name",name:this.i18n("Name"),flexGrow:3},{prop:"cache_mode",name:this.i18n("Cache Mode"),flexGrow:2},{prop:"cache_min_evict_age",name:this.i18n("Min Evict Age"),flexGrow:2},{prop:"cache_min_flush_age",name:this.i18n("Min Flush Age"),flexGrow:2},{prop:"target_max_bytes",name:this.i18n("Target Max Bytes"),flexGrow:2},{prop:"target_max_objects",name:this.i18n("Target Max Objects"),flexGrow:2}]}ngOnChanges(){this.selection&&this.poolService.getConfiguration(this.selection.pool_name).subscribe(l=>{this.selectedPoolConfiguration=l})}filterNonPoolData(l){return a.omit(l,["cdExecuting","cdIsBinary"])}}var nu=u["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function eu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](1,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","three"],["uid","-xyV8KCiz"]],null,null,null,Ue.b,Ue.a)),u["ɵdid"](3,638976,null,0,Me.a,[je.b,Ge.a,s.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){var e=n.component;l(n,1,0,"Performance Details"),l(n,3,0,"ceph-pool-detail?var-pool_name="+e.selection.pool_name,"three","-xyV8KCiz")}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).id,u["ɵnov"](n,1).active,u["ɵnov"](n,1).addClass,u["ɵnov"](n,1).role,u["ɵnov"](n,1).ariaLabelledby)}))}function uu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"tab",[["heading","Configuration"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](1,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](2,0,null,null,1,"cd-rbd-configuration-table",[],null,null,null,He.b,He.a)),u["ɵdid"](3,638976,null,0,Ye.a,[N.a,Ze.a,s.a],{data:[0,"data"]},null)],(function(l,n){var e=n.component;l(n,1,0,"Configuration"),l(n,3,0,e.selectedPoolConfiguration)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).id,u["ɵnov"](n,1).active,u["ɵnov"](n,1).addClass,u["ɵnov"](n,1).role,u["ɵnov"](n,1).ariaLabelledby)}))}function tu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"tab",[["heading","Cache Tiers Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](1,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](2,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,Ke.b,Ke.a)),u["ɵdid"](3,2867200,null,0,P.a,[u.NgZone,u.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoSave:[3,"autoSave"]},null)],(function(l,n){var e=n.component;l(n,1,0,"Cache Tiers Details"),l(n,3,0,e.cacheTiers,e.cacheTierColumns,"flex",!1)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).id,u["ɵnov"](n,1).active,u["ɵnov"](n,1).addClass,u["ɵnov"](n,1).role,u["ɵnov"](n,1).ariaLabelledby)}))}function iu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,11,"tabset",[["cdTableDetail",""]],[[2,"tab-container",null]],null,null,$e.b,$e.a)),u["ɵdid"](1,180224,[[1,4],["tabsetChild",4]],0,Ie.e,[Ie.f,u.Renderer2,u.ElementRef],null,null),(l()(),u["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](3,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](4,0,null,null,1,"cd-table-key-value",[],null,null,null,Xe.b,Xe.a)),u["ɵdid"](5,638976,null,0,Qe.a,[ue.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"]},null),(l()(),u["ɵand"](16777216,null,0,1,null,eu)),u["ɵdid"](7,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,0,1,null,uu)),u["ɵdid"](9,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,0,1,null,tu)),u["ɵdid"](11,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,3,0,"Details"),l(n,5,0,e.filterNonPoolData(e.selection),!1,!0),l(n,7,0,e.permissions.grafana.read),l(n,9,0,"replicated"===e.selection.type),l(n,11,0,(null==e.selection.tiers?null:e.selection.tiers.length)>0)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).clazz),l(n,2,0,u["ɵnov"](n,3).id,u["ɵnov"](n,3).active,u["ɵnov"](n,3).addClass,u["ɵnov"](n,3).role,u["ɵnov"](n,3).ariaLabelledby)}))}function au(l){return u["ɵvid"](0,[u["ɵqud"](671088640,1,{tabsetChild:0}),(l()(),u["ɵand"](16777216,null,null,1,null,iu)),u["ɵdid"](2,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,2,0,n.component.selection)}),null)}var ou=e("ufoC"),su=e("mSOc"),ru=u["ɵcrt"]({encapsulation:0,styles:[[".pg-clean{color:#0b0}  .pg-working{color:#2b99a8}  .pg-warning{color:#ffc200}  .pg-unknown{color:red}"]],data:{}});function du(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,Be.b,Be.a)),u["ɵdid"](1,114688,null,0,Oe.a,[],{status:[0,"status"],statusFor:[1,"statusFor"]},null)],(function(l,n){l(n,1,0,n.context.$implicit.status,n.context.$implicit.statusFor)}),null)}function cu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-usage-bar",[["decimals","2"]],null,null,null,Le.b,Le.a)),u["ɵdid"](1,573440,null,0,ze.a,[],{total:[0,"total"],used:[1,"used"],decimals:[2,"decimals"]},null)],(function(l,n){l(n,1,0,n.parent.context.row.stats.bytes_used.latest+n.parent.context.row.stats.avail_raw.latest,n.parent.context.row.stats.bytes_used.latest,"2")}),null)}function mu(l){return u["ɵvid"](0,[(l()(),u["ɵand"](16777216,null,null,1,null,cu)),u["ɵdid"](1,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,null==n.context.row.stats||null==n.context.row.stats.avail_raw?null:n.context.row.stats.avail_raw.latest)}),null)}function fu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](1,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","z99hzWtmk"]],null,null,null,Ue.b,Ue.a)),u["ɵdid"](3,638976,null,0,Me.a,[je.b,Ge.a,s.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){l(n,1,0,"Overall Performance"),l(n,3,0,"ceph-pools-overview?","two","z99hzWtmk")}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).id,u["ɵnov"](n,1).active,u["ɵnov"](n,1).addClass,u["ɵnov"](n,1).role,u["ɵnov"](n,1).ariaLabelledby)}))}function gu(l){return u["ɵvid"](0,[u["ɵqud"](402653184,1,{table:0}),u["ɵqud"](402653184,2,{poolUsageTpl:0}),u["ɵqud"](671088640,3,{poolConfigurationSourceTpl:0}),(l()(),u["ɵeld"](3,0,null,null,14,"tabset",[],[[2,"tab-container",null]],null,null,$e.b,$e.a)),u["ɵdid"](4,180224,null,0,Ie.e,[Ie.f,u.Renderer2,u.ElementRef],null,null),(l()(),u["ɵeld"](5,0,null,0,10,"tab",[["heading","Pools List"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](6,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,du)),u["ɵdid"](8,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](9,0,null,null,5,"cd-table",[["id","pool-list"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(l,n,e){var u=!0,t=l.component;return"setExpandedRow"===n&&(u=!1!==t.setExpandedRow(e)&&u),"updateSelection"===n&&(u=!1!==t.updateSelection(e)&&u),u}),Ke.b,Ke.a)),u["ɵdid"](10,2867200,[[1,4],["table",4]],0,P.a,[u.NgZone,u.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],selectionType:[3,"selectionType"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),u["ɵeld"](11,0,null,1,1,"cd-table-actions",[["class","table-actions"],["id","pool-list-actions"]],null,null,null,Je.b,Je.a)),u["ɵdid"](12,114688,null,0,We.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),u["ɵeld"](13,0,null,3,1,"cd-pool-details",[["cdTableDetail",""],["id","pool-list-details"]],null,null,null,au,nu)),u["ɵdid"](14,573440,null,0,lu,[s.a,m.a],{selection:[0,"selection"],permissions:[1,"permissions"],cacheTiers:[2,"cacheTiers"]},null),(l()(),u["ɵand"](0,[[2,2],["poolUsageTpl",2]],null,0,null,mu)),(l()(),u["ɵand"](16777216,null,0,1,null,fu)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,6,0,"Pools List"),l(n,8,0,e.viewCacheStatusList),l(n,10,0,e.pools,e.columns,!0,"single"),l(n,12,0,e.permissions.pool,e.selection,e.tableActions),l(n,14,0,e.expandedRow,e.permissions,e.cacheTiers),l(n,17,0,e.permissions.grafana.read)}),(function(l,n){l(n,3,0,u["ɵnov"](n,4).clazz),l(n,5,0,u["ɵnov"](n,6).id,u["ɵnov"](n,6).active,u["ɵnov"](n,6).addClass,u["ɵnov"](n,6).role,u["ɵnov"](n,6).ariaLabelledby)}))}function pu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"cd-pool-list",[],null,null,null,gu,ru)),u["ɵprd"](131584,null,L.a,L.a,[ou.a,su.a]),u["ɵprd"](256,null,z.a,j,[]),u["ɵdid"](3,114688,null,0,G,[m.a,y.a,E.a,L.a,Al.b,s.a,U.a,O.a,z.a,q.a,t.b],null,null)],(function(l,n){l(n,3,0)}),null)}var hu=u["ɵccf"]("cd-pool-list",G,pu,{},{},[]),vu=e("QC43"),bu=e("XFyV"),Cu=e("i4WA"),Ru=e("6qls"),Iu=e("tz6c"),Eu=e("EmSq"),Nu=e("pYKc"),yu=e("ppaS"),Vu=e("BH9v"),wu=e("rFfW"),Tu=u["ɵcrt"]({encapsulation:0,styles:[[".crush-rule-steps[_ngcontent-%COMP%]{margin-top:10px}"]],data:{}});function _u(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,vu.b,vu.a)),u["ɵdid"](1,49152,null,0,bu.a,[],null,null),(l()(),u["ɵted"](-1,0,["Loading..."]))],null,null)}function Su(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Du(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The chosen Ceph pool name is already in use."]))],null,null)}function ku(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["It's not possible to create an RBD pool with '/' in the name. Please change the name or remove 'rbd' from the applications list."]))],null,null)}function qu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Pool name can only contain letters, numbers, '.', '-', '_' or '/'."]))],null,null)}function xu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{value:[0,"value"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Pu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Fu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{value:[0,"value"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Au(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Bu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["At least one placement group is needed!"]))],null,null)}function Ou(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Your cluster can't handle this many PGs. Please recalculate the PG amount needed."]))],null,null)}function Lu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The current PGs settings were calculated for you, you should make sure the values suit your needs before submit."]))],null,null)}function zu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,28,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,11,{FormControlNames:1}),u["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","pgNum"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Placement groups"])),(l()(),u["ɵeld"](6,0,null,0,22,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,10,"input",[["class","form-control"],["formControlName","pgNum"],["id","pgNum"],["min","1"],["name","pgNum"],["required",""],["type","number"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"focus"],[null,"blur"],[null,"input"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0,i=l.component;return"input"===n&&(t=!1!==u["ɵnov"](l,9)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,9)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),"focus"===n&&(t=0!=(i.externalPgChange=!1)&&t),"blur"===n&&(t=!1!==i.alignPgs()&&t),t}),null,null)),u["ɵdid"](8,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](9,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](10,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵdid"](11,16384,null,0,i.z,[],{required:[0,"required"]},null),u["ɵprd"](1024,null,i.o,(function(l){return[l]}),[i.z]),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](14,671744,[[11,4]],0,i.j,[[3,i.d],[6,i.o],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](16,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](17,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Au)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Bu)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ou)),u["ɵdid"](23,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](24,0,null,null,2,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵeld"](25,0,null,null,1,"cd-doc",[["docText","Calculation help"],["section","pgs"]],null,null,null,Cu.b,Cu.a)),u["ɵdid"](26,114688,null,0,Ru.a,[Iu.a,s.a],{section:[0,"section"],docText:[1,"docText"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Lu)),u["ɵdid"](28,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,11,0,""),l(n,14,0,"pgNum"),l(n,17,0,"pgNum"),l(n,19,0,e.form.showError("pgNum",u["ɵnov"](n.parent.parent,2),"required")),l(n,21,0,e.form.showError("pgNum",u["ɵnov"](n.parent.parent,2),"min")),l(n,23,0,e.form.showError("pgNum",u["ɵnov"](n.parent.parent,2),"34")),l(n,26,0,"pgs","Calculation help"),l(n,28,0,e.externalPgChange)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,7,0,u["ɵnov"](n,11).required?"":null,u["ɵnov"](n,16).ngClassUntouched,u["ɵnov"](n,16).ngClassTouched,u["ɵnov"](n,16).ngClassPristine,u["ɵnov"](n,16).ngClassDirty,u["ɵnov"](n,16).ngClassValid,u["ɵnov"](n,16).ngClassInvalid,u["ɵnov"](n,16).ngClassPending,u["ɵnov"](n,17).validClass,u["ɵnov"](n,17).invalidClass)}))}function Uu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,5,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,4,"ul",[["class","list-inline"]],null,null,null,null,null)),(l()(),u["ɵeld"](2,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](3,null,["Minimum: ",""])),(l()(),u["ɵeld"](4,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](5,null,["Maximum: ",""]))],null,(function(l,n){var e=n.component;l(n,3,0,e.getMinSize()),l(n,5,0,e.getMaxSize())}))}function Mu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["The size specified is out of range. A value from "," to "," is usable."]))],null,(function(l,n){var e=n.component;l(n,1,0,e.getMinSize(),e.getMaxSize())}))}function ju(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","text-warning-dark"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["A size of 1 will not create a replication of the object. The 'Replicated size' includes the object itself."]))],null,null)}function Gu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,13,{FormControlNames:1}),u["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","size"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Replicated size"])),(l()(),u["ɵeld"](6,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,8,"input",[["class","form-control"],["formControlName","size"],["id","size"],["name","size"],["type","number"]],[[8,"max",0],[8,"min",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,9)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,9)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](8,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](9,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](10,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](12,671744,[[13,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](14,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Uu)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Mu)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ju)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,12,0,"size"),l(n,15,0,"size"),l(n,17,0,e.form.showError("size",u["ɵnov"](n.parent.parent,2))),l(n,19,0,e.form.showError("size",u["ɵnov"](n.parent.parent,2))),l(n,21,0,1===e.form.getValue("size"))}),(function(l,n){var e=n.component;l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,7,1,[e.getMaxSize(),e.getMinSize(),u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass])}))}function $u(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,15,{FormControlNames:1}),u["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Flags"])),(l()(),u["ɵeld"](6,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),u["ɵeld"](8,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","ecOverwrites"],["id","ec-overwrites"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.checked)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](9,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](10,16384,null,0,i.c,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.c]),u["ɵdid"](12,671744,[[15,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](14,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](16,0,null,null,1,"label",[["class","custom-control-label"],["for","ec-overwrites"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["EC Overwrites"]))],(function(l,n){l(n,1,0),l(n,12,0,"ecOverwrites"),l(n,15,0,"ecOverwrites")}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,8,0,u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass)}))}function Ku(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,23,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](2,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,9,{FormControlNames:1}),u["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),u["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label"],["for","pgAutoscaleMode"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["PG Autoscale"])),(l()(),u["ɵeld"](7,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](8,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","pgAutoscaleMode"],["id","pgAutoscaleMode"],["name","pgAutoscaleMode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](9,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](10,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](12,671744,[[9,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](14,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Fu)),u["ɵdid"](17,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,zu)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Gu)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,$u)),u["ɵdid"](23,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,2,0),l(n,12,0,"pgAutoscaleMode"),l(n,15,0,"pgAutoscaleMode"),l(n,17,0,e.pgAutoscaleModes),l(n,19,0,"on"!==e.form.getValue("pgAutoscaleMode")),l(n,21,0,e.isReplicated),l(n,23,0,e.info.is_all_bluestore&&e.isErasure)}),(function(l,n){l(n,1,0,u["ɵnov"](n,2).hasErrors,u["ɵnov"](n,2).hasSuccess),l(n,8,0,u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass)}))}function Ju(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Wu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- No erasure code profile available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Hu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- Select an erasure code profile --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Yu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit.name)}))}function Zu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.addErasureCodeProfile()&&u),u}),null,null)),(l()(),u["ɵeld"](1,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](3,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](4,1)],(function(l,n){var e=l(n,4,0,n.component.icons.add);l(n,3,0,e)}),null)}function Xu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,16777216,null,null,5,"button",[["class","btn btn-light"],["tooltip","This profile can't be deleted as it is in use."],["triggers",""],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.deleteErasureCodeProfile()&&u),u}),null,null)),u["ɵdid"](1,212992,[[4,4],["ecpDeletionBtn",4]],0,ve.c,[u.ViewContainerRef,pe.a,ve.a,u.ElementRef,u.Renderer2,ge.a],{tooltip:[0,"tooltip"],triggers:[1,"triggers"]},null),(l()(),u["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](4,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](5,1),(l()(),u["ɵand"](0,null,null,0))],(function(l,n){var e=n.component;l(n,1,0,"This profile can't be deleted as it is in use.","");var u=l(n,5,0,e.icons.trash);l(n,4,0,u)}),null)}function Qu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Profile is not in use."]))],null,null)}function lt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.context.$implicit)}))}function nt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,2,"ul",[],null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,lt)),u["ɵdid"](2,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,2,0,n.component.ecpUsage)}),null)}function et(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,12,"span",[["class","form-text text-muted"],["id","ecp-info-block"]],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,11,"tabset",[],[[2,"tab-container",null]],null,null,$e.b,$e.a)),u["ɵdid"](2,180224,[[3,4],["ecpInfoTabs",4]],0,Ie.e,[Ie.f,u.Renderer2,u.ElementRef],null,null),(l()(),u["ɵeld"](3,0,null,0,4,"tab",[["class","ecp-info"],["heading","Profile"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](4,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](5,0,null,null,2,"cd-table-key-value",[],null,null,null,Xe.b,Xe.a)),u["ɵdid"](6,638976,null,0,Qe.a,[ue.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"],hideKeys:[3,"hideKeys"]},null),u["ɵpad"](7,1),(l()(),u["ɵeld"](8,0,null,0,4,"tab",[["class","used-by-pools"],["heading","Used by pools"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](9,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵand"](0,[["ecpIsNotUsed",2]],null,0,null,Qu)),(l()(),u["ɵand"](16777216,null,null,1,null,nt)),u["ɵdid"](12,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null)],(function(l,n){var e=n.component;l(n,4,0,"Profile");var t=e.form.getValue("erasureProfile"),i=l(n,7,0,"name");l(n,6,0,t,!1,!0,i),l(n,9,0,"Used by pools"),l(n,12,0,e.ecpUsage,u["ɵnov"](n,10))}),(function(l,n){l(n,1,0,u["ɵnov"](n,2).clazz),l(n,3,0,u["ɵnov"](n,4).id,u["ɵnov"](n,4).active,u["ɵnov"](n,4).addClass,u["ɵnov"](n,4).role,u["ɵnov"](n,4).ariaLabelledby),l(n,8,0,u["ɵnov"](n,9).id,u["ɵnov"](n,9).active,u["ɵnov"](n,9).addClass,u["ɵnov"](n,9).role,u["ɵnov"](n,9).ariaLabelledby)}))}function ut(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,38,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,19,{FormControlNames:1}),u["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","erasureProfile"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Erasure code profile"])),(l()(),u["ɵeld"](6,0,null,0,32,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,29,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),u["ɵeld"](8,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","erasureProfile"],["id","erasureProfile"],["name","erasureProfile"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](9,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](10,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](12,671744,[[19,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](14,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ju)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Wu)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Hu)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Yu)),u["ɵdid"](23,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](24,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),u["ɵeld"](25,0,null,null,7,"button",[["class","btn btn-light"],["id","ecp-info-button"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0,t=l.component;return"click"===n&&(u=0!=(t.data.erasureInfo=!t.data.erasureInfo)&&u),u}),null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](27,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),u["ɵpod"](28,{active:0}),(l()(),u["ɵeld"](29,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](31,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](32,1),(l()(),u["ɵand"](16777216,null,null,1,null,Zu)),u["ɵdid"](34,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Xu)),u["ɵdid"](36,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,et)),u["ɵdid"](38,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,12,0,"erasureProfile"),l(n,15,0,"erasureProfile"),l(n,17,0,!e.ecProfiles),l(n,19,0,e.ecProfiles&&0===e.ecProfiles.length),l(n,21,0,e.ecProfiles&&e.ecProfiles.length>0),l(n,23,0,e.ecProfiles);var u=l(n,28,0,e.data.erasureInfo);l(n,27,0,"btn btn-light",u);var t=l(n,32,0,e.icons.questionCircle);l(n,31,0,t),l(n,34,0,!e.editing),l(n,36,0,!e.editing),l(n,38,0,e.data.erasureInfo&&e.form.getValue("erasureProfile"))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,8,0,u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass)}))}function tt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,21,{FormControlNames:1}),u["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","crushRule"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush ruleset"])),(l()(),u["ɵeld"](6,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["A new crush ruleset will be implicitly created."]))],(function(l,n){l(n,1,0)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess)}))}function it(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["There are no rules."])),(l()(),u["ɵted"](-1,null,["  "]))],null,null)}function at(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit.rule_name)}))}function ot(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.addCrushRule()&&u),u}),null,null)),(l()(),u["ɵeld"](1,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](3,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](4,1)],(function(l,n){var e=l(n,4,0,n.component.icons.add);l(n,3,0,e)}),null)}function st(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,16777216,null,null,5,"button",[["class","btn btn-light"],["tooltip","This rule can't be deleted as it is in use."],["triggers",""],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.deleteCrushRule()&&u),u}),null,null)),u["ɵdid"](1,212992,[[2,4],["crushDeletionBtn",4]],0,ve.c,[u.ViewContainerRef,pe.a,ve.a,u.ElementRef,u.Renderer2,ge.a],{tooltip:[0,"tooltip"],triggers:[1,"triggers"]},null),(l()(),u["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](4,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](5,1),(l()(),u["ɵand"](0,null,null,0))],(function(l,n){var e=n.component;l(n,1,0,"This rule can't be deleted as it is in use.","");var u=l(n,5,0,e.icons.trash);l(n,4,0,u)}),null)}function rt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.describeCrushStep(n.context.$implicit))}))}function dt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Rule is not in use."]))],null,null)}function ct(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.context.$implicit)}))}function mt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,2,"ul",[],null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,ct)),u["ɵdid"](2,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,2,0,n.component.crushUsage)}),null)}function ft(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,17,"span",[["class","form-text text-muted"],["id","crush-info-block"]],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,16,"tabset",[],[[2,"tab-container",null]],null,null,$e.b,$e.a)),u["ɵdid"](2,180224,[[1,4],["crushInfoTabs",4]],0,Ie.e,[Ie.f,u.Renderer2,u.ElementRef],null,null),(l()(),u["ɵeld"](3,0,null,0,4,"tab",[["class","crush-rule-info"],["heading","Crush rule"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](4,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](5,0,null,null,2,"cd-table-key-value",[],null,null,null,Xe.b,Xe.a)),u["ɵdid"](6,638976,null,0,Qe.a,[ue.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"],hideKeys:[3,"hideKeys"]},null),u["ɵpad"](7,4),(l()(),u["ɵeld"](8,0,null,0,4,"tab",[["class","crush-rule-steps"],["heading","Crush steps"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](9,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](10,0,null,null,2,"ol",[],null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,rt)),u["ɵdid"](12,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](13,0,null,0,4,"tab",[["class","used-by-pools"],["heading","Used by pools"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](14,212992,null,0,Ie.b,[Ie.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵand"](0,[["ruleIsNotUsed",2]],null,0,null,dt)),(l()(),u["ɵand"](16777216,null,null,1,null,mt)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null)],(function(l,n){var e=n.component;l(n,4,0,"Crush rule");var t=e.form.getValue("crushRule"),i=l(n,7,0,"steps","ruleset","type","rule_name");l(n,6,0,t,!1,!1,i),l(n,9,0,"Crush steps"),l(n,12,0,e.form.get("crushRule").value.steps),l(n,14,0,"Used by pools"),l(n,17,0,e.crushUsage,u["ɵnov"](n,15))}),(function(l,n){l(n,1,0,u["ɵnov"](n,2).clazz),l(n,3,0,u["ɵnov"](n,4).id,u["ɵnov"](n,4).active,u["ɵnov"](n,4).addClass,u["ɵnov"](n,4).role,u["ɵnov"](n,4).ariaLabelledby),l(n,8,0,u["ɵnov"](n,9).id,u["ɵnov"](n,9).active,u["ɵnov"](n,9).addClass,u["ɵnov"](n,9).role,u["ɵnov"](n,9).ariaLabelledby),l(n,13,0,u["ɵnov"](n,14).id,u["ɵnov"](n,14).active,u["ɵnov"](n,14).addClass,u["ɵnov"](n,14).role,u["ɵnov"](n,14).ariaLabelledby)}))}function gt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function pt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The rule can't be used in the current cluster as it has too few OSDs to meet the minimum required OSD by this rule."]))],null,null)}function ht(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,34,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,27,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),u["ɵeld"](2,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","crushRule"],["id","crushRule"],["name","crushSet"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,4).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,4).onTouched()&&t),t}),null,null)),u["ɵdid"](3,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](4,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](6,671744,[[23,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](8,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](9,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](10,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](11,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](12,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- Select a crush rule --"])),(l()(),u["ɵand"](16777216,null,null,1,null,at)),u["ɵdid"](15,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](16,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),u["ɵeld"](17,0,null,null,7,"button",[["class","btn btn-light"],["id","crush-info-button"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0,t=l.component;return"click"===n&&(u=0!=(t.data.crushInfo=!t.data.crushInfo)&&u),u}),null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](19,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),u["ɵpod"](20,{active:0}),(l()(),u["ɵeld"](21,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](23,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](24,1),(l()(),u["ɵand"](16777216,null,null,1,null,ot)),u["ɵdid"](26,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,st)),u["ɵdid"](28,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ft)),u["ɵdid"](30,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,gt)),u["ɵdid"](32,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,pt)),u["ɵdid"](34,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,6,0,"crushRule"),l(n,9,0,"crushRule"),l(n,11,0,null),l(n,12,0,null),l(n,15,0,e.current.rules);var t=l(n,20,0,e.data.crushInfo);l(n,19,0,"btn btn-light",t);var i=l(n,24,0,e.icons.questionCircle);l(n,23,0,i),l(n,26,0,e.isReplicated&&!e.editing),l(n,28,0,e.isReplicated&&!e.editing),l(n,30,0,e.data.crushInfo&&e.form.getValue("crushRule")),l(n,32,0,e.form.showError("crushRule",u["ɵnov"](n.parent.parent.parent,2),"required")),l(n,34,0,e.form.showError("crushRule",u["ɵnov"](n.parent.parent.parent,2),"tooFewOsds"))}),(function(l,n){l(n,2,0,u["ɵnov"](n,8).ngClassUntouched,u["ɵnov"](n,8).ngClassTouched,u["ɵnov"](n,8).ngClassPristine,u["ɵnov"](n,8).ngClassDirty,u["ɵnov"](n,8).ngClassValid,u["ɵnov"](n,8).ngClassInvalid,u["ɵnov"](n,8).ngClassPending,u["ɵnov"](n,9).validClass,u["ɵnov"](n,9).invalidClass)}))}function vt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,9,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,23,{FormControlNames:1}),u["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","crushRule"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush ruleset"])),(l()(),u["ɵeld"](6,0,null,0,3,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵand"](0,[["noRules",2]],null,0,null,it)),(l()(),u["ɵand"](16777216,null,null,1,null,ht)),u["ɵdid"](9,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,9,0,e.current.rules.length>0,u["ɵnov"](n,7))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess)}))}function bt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,8,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["CRUSH"])),(l()(),u["ɵand"](16777216,null,null,1,null,ut)),u["ɵdid"](4,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,tt)),u["ɵdid"](6,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,vt)),u["ɵdid"](8,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,4,0,e.isErasure),l(n,6,0,e.isErasure&&!e.editing),l(n,8,0,e.isReplicated||e.editing)}),null)}function Ct(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{value:[0,"value"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Rt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function It(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- No erasure compression algorithm available --"]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Et(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{value:[0,"value"]},null),u["ɵdid"](2,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Nt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be greater than 0"]))],null,null)}function yt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be less than the maximum blob size"]))],null,null)}function Vt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be greater than 0"]))],null,null)}function wt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be greater than the minimum blob size"]))],null,null)}function Tt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be between 0.0 and 1.0"]))],null,null)}function _t(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,79,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](2,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,27,{FormControlNames:1}),u["ɵqud"](603979776,28,{messagesBlock:0}),(l()(),u["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label"],["for","algorithm"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Algorithm"])),(l()(),u["ɵeld"](7,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](8,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","algorithm"],["id","algorithm"],["name","algorithm"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](9,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](10,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](12,671744,[[27,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](14,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Rt)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,It)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Et)),u["ɵdid"](21,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](22,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](23,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,29,{FormControlNames:1}),u["ɵqud"](603979776,30,{messagesBlock:0}),(l()(),u["ɵeld"](26,0,null,0,1,"label",[["class","cd-col-form-label"],["for","minBlobSize"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Minimum blob size"])),(l()(),u["ɵeld"](28,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](29,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["defaultUnit","KiB"],["formControlName","minBlobSize"],["id","minBlobSize"],["min","0"],["name","minBlobSize"],["placeholder","e.g., 128KiB"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,30)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,30).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,30)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,30)._compositionEnd(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,34).onBlur(e.target.value)&&t),t}),null,null)),u["ɵdid"](30,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.e]),u["ɵdid"](32,671744,[[29,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](34,81920,null,0,Eu.a,[u.ElementRef,i.q,I.a,N.a],{defaultUnit:[0,"defaultUnit"]},null),u["ɵdid"](35,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](36,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](37,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Nt)),u["ɵdid"](39,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,yt)),u["ɵdid"](41,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](42,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](43,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,31,{FormControlNames:1}),u["ɵqud"](603979776,32,{messagesBlock:0}),(l()(),u["ɵeld"](46,0,null,0,1,"label",[["class","cd-col-form-label"],["for","maxBlobSize"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Maximum blob size"])),(l()(),u["ɵeld"](48,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](49,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["defaultUnit","KiB"],["formControlName","maxBlobSize"],["id","maxBlobSize"],["min","0"],["placeholder","e.g., 512KiB"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,50)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,50).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,50)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,50)._compositionEnd(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,54).onBlur(e.target.value)&&t),t}),null,null)),u["ɵdid"](50,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.e]),u["ɵdid"](52,671744,[[31,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](54,81920,null,0,Eu.a,[u.ElementRef,i.q,I.a,N.a],{defaultUnit:[0,"defaultUnit"]},null),u["ɵdid"](55,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](56,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](57,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Vt)),u["ɵdid"](59,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,wt)),u["ɵdid"](61,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](62,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](63,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,33,{FormControlNames:1}),u["ɵqud"](603979776,34,{messagesBlock:0}),(l()(),u["ɵeld"](66,0,null,0,1,"label",[["class","cd-col-form-label"],["for","ratio"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Ratio"])),(l()(),u["ɵeld"](68,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](69,0,null,null,8,"input",[["class","form-control"],["formControlName","ratio"],["id","ratio"],["max","1"],["min","0"],["name","ratio"],["placeholder","Compression ratio"],["step","0.1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,71)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,71).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,71)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,71)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,72).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,72).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,72).onTouched()&&t),t}),null,null)),u["ɵdid"](70,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](71,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](72,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](74,671744,[[33,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](76,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](77,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Tt)),u["ɵdid"](79,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,2,0),l(n,12,0,"algorithm"),l(n,15,0,"algorithm"),l(n,17,0,!e.info.compression_algorithms),l(n,19,0,e.info.compression_algorithms&&0===e.info.compression_algorithms.length),l(n,21,0,e.info.compression_algorithms),l(n,23,0),l(n,32,0,"minBlobSize"),l(n,34,0,"KiB"),l(n,37,0,"minBlobSize"),l(n,39,0,e.form.showError("minBlobSize",u["ɵnov"](n.parent.parent,2),"min")),l(n,41,0,e.form.showError("minBlobSize",u["ɵnov"](n.parent.parent,2),"maximum")),l(n,43,0),l(n,52,0,"maxBlobSize"),l(n,54,0,"KiB"),l(n,57,0,"maxBlobSize"),l(n,59,0,e.form.showError("maxBlobSize",u["ɵnov"](n.parent.parent,2),"min")),l(n,61,0,e.form.showError("maxBlobSize",u["ɵnov"](n.parent.parent,2),"minimum")),l(n,63,0),l(n,74,0,"ratio"),l(n,77,0,"ratio"),l(n,79,0,e.form.showError("ratio",u["ɵnov"](n.parent.parent,2),"min")||e.form.showError("ratio",u["ɵnov"](n.parent.parent,2),"max"))}),(function(l,n){l(n,1,0,u["ɵnov"](n,2).hasErrors,u["ɵnov"](n,2).hasSuccess),l(n,8,0,u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass),l(n,22,0,u["ɵnov"](n,23).hasErrors,u["ɵnov"](n,23).hasSuccess),l(n,29,0,u["ɵnov"](n,36).ngClassUntouched,u["ɵnov"](n,36).ngClassTouched,u["ɵnov"](n,36).ngClassPristine,u["ɵnov"](n,36).ngClassDirty,u["ɵnov"](n,36).ngClassValid,u["ɵnov"](n,36).ngClassInvalid,u["ɵnov"](n,36).ngClassPending,u["ɵnov"](n,37).validClass,u["ɵnov"](n,37).invalidClass),l(n,42,0,u["ɵnov"](n,43).hasErrors,u["ɵnov"](n,43).hasSuccess),l(n,49,0,u["ɵnov"](n,56).ngClassUntouched,u["ɵnov"](n,56).ngClassTouched,u["ɵnov"](n,56).ngClassPristine,u["ɵnov"](n,56).ngClassDirty,u["ɵnov"](n,56).ngClassValid,u["ɵnov"](n,56).ngClassInvalid,u["ɵnov"](n,56).ngClassPending,u["ɵnov"](n,57).validClass,u["ɵnov"](n,57).invalidClass),l(n,62,0,u["ɵnov"](n,63).hasErrors,u["ɵnov"](n,63).hasSuccess),l(n,69,0,u["ɵnov"](n,76).ngClassUntouched,u["ɵnov"](n,76).ngClassTouched,u["ɵnov"](n,76).ngClassPristine,u["ɵnov"](n,76).ngClassDirty,u["ɵnov"](n,76).ngClassValid,u["ɵnov"](n,76).ngClassInvalid,u["ɵnov"](n,76).ngClassPending,u["ɵnov"](n,77).validClass,u["ɵnov"](n,77).invalidClass)}))}function St(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,24,"div",[["formGroupName","compression"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),u["ɵdid"](1,212992,null,0,i.m,[[3,i.d],[8,null],[8,null]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.d,null,[i.m]),u["ɵdid"](3,16384,null,0,i.s,[[4,i.d]],null,null),(l()(),u["ɵeld"](4,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Compression"])),(l()(),u["ɵeld"](6,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](7,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,25,{FormControlNames:1}),u["ɵqud"](603979776,26,{messagesBlock:0}),(l()(),u["ɵeld"](10,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mode"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Mode"])),(l()(),u["ɵeld"](12,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](13,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","mode"],["id","mode"],["name","mode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,15).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,15).onTouched()&&t),t}),null,null)),u["ɵdid"](14,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](15,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](17,671744,[[25,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](19,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](20,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ct)),u["ɵdid"](22,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,_t)),u["ɵdid"](24,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0,"compression"),l(n,7,0),l(n,17,0,"mode"),l(n,20,0,"mode"),l(n,22,0,e.info.compression_modes),l(n,24,0,e.hasCompressionEnabled())}),(function(l,n){l(n,0,0,u["ɵnov"](n,3).ngClassUntouched,u["ɵnov"](n,3).ngClassTouched,u["ɵnov"](n,3).ngClassPristine,u["ɵnov"](n,3).ngClassDirty,u["ɵnov"](n,3).ngClassValid,u["ɵnov"](n,3).ngClassInvalid,u["ɵnov"](n,3).ngClassPending),l(n,6,0,u["ɵnov"](n,7).hasErrors,u["ɵnov"](n,7).hasSuccess),l(n,13,0,u["ɵnov"](n,19).ngClassUntouched,u["ɵnov"](n,19).ngClassTouched,u["ɵnov"](n,19).ngClassPristine,u["ɵnov"](n,19).ngClassDirty,u["ɵnov"](n,19).ngClassValid,u["ɵnov"](n,19).ngClassInvalid,u["ɵnov"](n,19).ngClassPending,u["ɵnov"](n,20).validClass,u["ɵnov"](n,20).invalidClass)}))}function Dt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The value should be greater or equal to 0"]))],null,null)}function kt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,138,"form",[["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var t=!0;return"submit"===n&&(t=!1!==u["ɵnov"](l,2).onSubmit(e)&&t),"reset"===n&&(t=!1!==u["ɵnov"](l,2).onReset()&&t),"submit"===n&&(t=!1!==u["ɵnov"](l,5).onSubmit()&&t),t}),null,null)),u["ɵdid"](1,16384,null,0,i.G,[],null,null),u["ɵdid"](2,540672,[["formDir",4]],0,i.l,[[8,null],[8,null]],{form:[0,"form"]},null),u["ɵprd"](2048,null,i.d,null,[i.l]),u["ɵdid"](4,16384,null,0,i.s,[[4,i.d]],null,null),u["ɵdid"](5,16384,null,0,Vl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),u["ɵeld"](6,0,null,null,132,"div",[["class","card"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),u["ɵted"](8,null,[""," ",""])),u["ɵppd"](9,1),u["ɵppd"](10,1),(l()(),u["ɵeld"](11,0,null,null,118,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),u["ɵeld"](12,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](13,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,5,{FormControlNames:1}),u["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),u["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","name"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Name"])),(l()(),u["ɵeld"](18,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](19,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,22)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,22).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,22)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,22)._compositionEnd(e.target.value)&&t),t}),null,null)),u["ɵdid"](20,4210688,null,0,Tl.a,[u.ElementRef],{autofocus:[0,"autofocus"]},null),u["ɵdid"](21,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](22,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.e]),u["ɵdid"](24,671744,[[5,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](26,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](27,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Su)),u["ɵdid"](29,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Du)),u["ɵdid"](31,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ku)),u["ɵdid"](33,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,qu)),u["ɵdid"](35,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](36,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](37,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,7,{FormControlNames:1}),u["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),u["ɵeld"](40,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","poolType"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Pool type"])),(l()(),u["ɵeld"](42,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](43,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","poolType"],["id","poolType"],["name","poolType"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,45).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,45).onTouched()&&t),t}),null,null)),u["ɵdid"](44,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](45,16384,null,0,i.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.A]),u["ɵdid"](47,671744,[[7,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](49,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](50,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](51,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](52,147456,null,0,i.v,[u.ElementRef,u.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](53,147456,null,0,i.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- Select a pool type --"])),(l()(),u["ɵand"](16777216,null,null,1,null,xu)),u["ɵdid"](56,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Pu)),u["ɵdid"](58,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ku)),u["ɵdid"](60,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](61,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](62,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,17,{FormControlNames:1}),u["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),u["ɵeld"](65,0,null,0,1,"label",[["class","cd-col-form-label"],["for","applications"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Applications"])),(l()(),u["ɵeld"](67,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](68,0,null,null,1,"cd-select-badges",[["id","applications"]],null,[[null,"selection"]],(function(l,n,e){var u=!0;return"selection"===n&&(u=!1!==l.component.appSelection()&&u),u}),Nu.b,Nu.a)),u["ɵdid"](69,49152,null,0,yu.a,[s.a],{data:[0,"data"],options:[1,"options"],messages:[2,"messages"],selectionLimit:[3,"selectionLimit"],customBadges:[4,"customBadges"],customBadgeValidators:[5,"customBadgeValidators"]},{selection:"selection"}),(l()(),u["ɵand"](16777216,null,null,1,null,bt)),u["ɵdid"](71,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,St)),u["ɵdid"](73,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](74,0,null,null,52,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](75,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Quotas"])),(l()(),u["ɵeld"](77,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](78,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,35,{FormControlNames:1}),u["ɵqud"](603979776,36,{messagesBlock:0}),(l()(),u["ɵeld"](81,0,null,0,9,"label",[["class","cd-col-form-label"],["for","max_bytes"]],null,null,null,null,null)),(l()(),u["ɵeld"](82,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Max bytes"])),(l()(),u["ɵeld"](84,0,null,null,6,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](85,49152,null,0,kl.a,[],null,null),(l()(),u["ɵeld"](86,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Leave it blank or specify 0 to disable this quota."])),(l()(),u["ɵeld"](88,0,null,0,0,"br",[],null,null,null,null,null)),(l()(),u["ɵeld"](89,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["A valid quota should be greater than 0."])),(l()(),u["ɵeld"](91,0,null,0,9,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](92,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["defaultUnit","GiB"],["formControlName","max_bytes"],["id","max_bytes"],["name","max_bytes"],["placeholder","e.g., 10GiB"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,93)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,93).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,93)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,93)._compositionEnd(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,97).onBlur(e.target.value)&&t),t}),null,null)),u["ɵdid"](93,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵprd"](1024,null,i.p,(function(l){return[l]}),[i.e]),u["ɵdid"](95,671744,[[35,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](97,81920,null,0,Eu.a,[u.ElementRef,i.q,I.a,N.a],{defaultUnit:[0,"defaultUnit"]},null),u["ɵdid"](98,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](99,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](100,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](101,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](102,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,37,{FormControlNames:1}),u["ɵqud"](603979776,38,{messagesBlock:0}),(l()(),u["ɵeld"](105,0,null,0,9,"label",[["class","cd-col-form-label"],["for","max_objects"]],null,null,null,null,null)),(l()(),u["ɵeld"](106,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Max objects"])),(l()(),u["ɵeld"](108,0,null,null,6,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](109,49152,null,0,kl.a,[],null,null),(l()(),u["ɵeld"](110,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Leave it blank or specify 0 to disable this quota."])),(l()(),u["ɵeld"](112,0,null,0,0,"br",[],null,null,null,null,null)),(l()(),u["ɵeld"](113,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["A valid quota should be greater than 0."])),(l()(),u["ɵeld"](115,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](116,0,null,null,8,"input",[["class","form-control"],["formControlName","max_objects"],["id","max_objects"],["min","0"],["name","max_objects"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,118)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,118).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,118)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,118)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,119).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,119).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,119).onTouched()&&t),t}),null,null)),u["ɵdid"](117,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](118,16384,null,0,i.e,[u.Renderer2,u.ElementRef,[2,i.b]],null,null),u["ɵdid"](119,16384,null,0,i.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,i.p,(function(l,n){return[l,n]}),[i.e,i.w]),u["ɵdid"](121,671744,[[37,4]],0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,i.q,null,[i.j]),u["ɵdid"](123,16384,null,0,i.r,[[4,i.q]],null,null),u["ɵdid"](124,16384,null,0,Vl.h,[[3,i.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Dt)),u["ɵdid"](126,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](127,0,null,null,2,"div",[],[[8,"hidden",0]],null,null,null,null)),(l()(),u["ɵeld"](128,0,null,null,1,"cd-rbd-configuration-form",[],null,[[null,"changes"]],(function(l,n,e){var u=!0;return"changes"===n&&(u=!1!==(l.component.currentConfigurationValues=e())&&u),u}),Vu.b,Vu.a)),u["ɵdid"](129,114688,null,0,wu.a,[N.a,Ze.a],{form:[0,"form"],initializeData:[1,"initializeData"]},{changes:"changes"}),(l()(),u["ɵeld"](130,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),u["ɵeld"](131,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),u["ɵeld"](132,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var u=!0;return"submitAction"===n&&(u=!1!==l.component.submit()&&u),u}),ql.b,ql.a)),u["ɵdid"](133,114688,null,0,xl.a,[u.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),u["ɵted"](134,0,[""," "," "])),u["ɵppd"](135,1),u["ɵppd"](136,1),(l()(),u["ɵeld"](137,0,null,null,1,"cd-back-button",[],null,null,null,Pl.b,Pl.a)),u["ɵdid"](138,49152,null,0,Fl.a,[El.Location,t.b],null,null)],(function(l,n){var e=n.component;l(n,2,0,e.form),l(n,5,0,e.form),l(n,13,0),l(n,20,0,""),l(n,24,0,"name"),l(n,27,0,"name"),l(n,29,0,e.form.showError("name",u["ɵnov"](n,2),"required")),l(n,31,0,e.form.showError("name",u["ɵnov"](n,2),"uniqueName")),l(n,33,0,e.form.showError("name",u["ɵnov"](n,2),"rbdPool")),l(n,35,0,e.form.showError("name",u["ɵnov"](n,2),"pattern")),l(n,37,0),l(n,47,0,"poolType"),l(n,50,0,"poolType"),l(n,52,0,""),l(n,53,0,""),l(n,56,0,e.data.poolTypes),l(n,58,0,e.form.showError("poolType",u["ɵnov"](n,2),"required")),l(n,60,0,e.isReplicated||e.isErasure),l(n,62,0),l(n,69,0,e.data.applications.selected,e.data.applications.available,e.data.applications.messages,4,!0,e.data.applications.validators),l(n,71,0,e.isErasure||e.isReplicated),l(n,73,0,e.info.is_all_bluestore),l(n,78,0),l(n,95,0,"max_bytes"),l(n,97,0,"GiB"),l(n,100,0,"max_bytes"),l(n,102,0),l(n,121,0,"max_objects"),l(n,124,0,"max_objects"),l(n,126,0,e.form.showError("max_objects",u["ɵnov"](n,2),"min")),l(n,129,0,e.form,e.initializeConfigData),l(n,133,0,u["ɵnov"](n,2))}),(function(l,n){var e=n.component;l(n,0,0,u["ɵnov"](n,4).ngClassUntouched,u["ɵnov"](n,4).ngClassTouched,u["ɵnov"](n,4).ngClassPristine,u["ɵnov"](n,4).ngClassDirty,u["ɵnov"](n,4).ngClassValid,u["ɵnov"](n,4).ngClassInvalid,u["ɵnov"](n,4).ngClassPending);var t=u["ɵunv"](n,8,0,l(n,9,0,u["ɵnov"](n.parent,0),e.action)),i=u["ɵunv"](n,8,1,l(n,10,0,u["ɵnov"](n.parent,1),e.resource));l(n,8,0,t,i),l(n,12,0,u["ɵnov"](n,13).hasErrors,u["ɵnov"](n,13).hasSuccess),l(n,19,0,u["ɵnov"](n,26).ngClassUntouched,u["ɵnov"](n,26).ngClassTouched,u["ɵnov"](n,26).ngClassPristine,u["ɵnov"](n,26).ngClassDirty,u["ɵnov"](n,26).ngClassValid,u["ɵnov"](n,26).ngClassInvalid,u["ɵnov"](n,26).ngClassPending,u["ɵnov"](n,27).validClass,u["ɵnov"](n,27).invalidClass),l(n,36,0,u["ɵnov"](n,37).hasErrors,u["ɵnov"](n,37).hasSuccess),l(n,43,0,u["ɵnov"](n,49).ngClassUntouched,u["ɵnov"](n,49).ngClassTouched,u["ɵnov"](n,49).ngClassPristine,u["ɵnov"](n,49).ngClassDirty,u["ɵnov"](n,49).ngClassValid,u["ɵnov"](n,49).ngClassInvalid,u["ɵnov"](n,49).ngClassPending,u["ɵnov"](n,50).validClass,u["ɵnov"](n,50).invalidClass),l(n,61,0,u["ɵnov"](n,62).hasErrors,u["ɵnov"](n,62).hasSuccess),l(n,77,0,u["ɵnov"](n,78).hasErrors,u["ɵnov"](n,78).hasSuccess),l(n,92,0,u["ɵnov"](n,99).ngClassUntouched,u["ɵnov"](n,99).ngClassTouched,u["ɵnov"](n,99).ngClassPristine,u["ɵnov"](n,99).ngClassDirty,u["ɵnov"](n,99).ngClassValid,u["ɵnov"](n,99).ngClassInvalid,u["ɵnov"](n,99).ngClassPending,u["ɵnov"](n,100).validClass,u["ɵnov"](n,100).invalidClass),l(n,101,0,u["ɵnov"](n,102).hasErrors,u["ɵnov"](n,102).hasSuccess),l(n,116,0,u["ɵnov"](n,123).ngClassUntouched,u["ɵnov"](n,123).ngClassTouched,u["ɵnov"](n,123).ngClassPristine,u["ɵnov"](n,123).ngClassDirty,u["ɵnov"](n,123).ngClassValid,u["ɵnov"](n,123).ngClassInvalid,u["ɵnov"](n,123).ngClassPending,u["ɵnov"](n,124).validClass,u["ɵnov"](n,124).invalidClass),l(n,127,0,e.isErasure||-1===e.data.applications.selected.indexOf("rbd"));var a=u["ɵunv"](n,134,0,l(n,135,0,u["ɵnov"](n.parent,0),e.action)),o=u["ɵunv"](n,134,1,l(n,136,0,u["ɵnov"](n.parent,1),e.resource));l(n,134,0,a,o)}))}function qt(l){return u["ɵvid"](0,[u["ɵpid"](0,El.TitleCasePipe,[]),u["ɵpid"](0,Nl.a,[]),u["ɵqud"](671088640,1,{crushInfoTabs:0}),u["ɵqud"](671088640,2,{crushDeletionBtn:0}),u["ɵqud"](671088640,3,{ecpInfoTabs:0}),u["ɵqud"](671088640,4,{ecpDeletionBtn:0}),(l()(),u["ɵand"](16777216,null,null,1,null,_u)),u["ɵdid"](7,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](8,0,null,null,2,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,kt)),u["ɵdid"](10,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,7,0,!(e.info&&e.ecProfiles)),l(n,10,0,e.info&&e.ecProfiles)}),null)}function xt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-pool-form",[],null,null,null,qt,Tu)),u["ɵdid"](1,114688,null,0,k,[I.a,Re.a,Re.m,Al.b,m.a,E.a,N.a,Al.b,y.a,c,d,s.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var Pt=u["ɵccf"]("cd-pool-form",k,xt,{},{},[]);e.d(n,"PoolModuleNgFactory",(function(){return Ft})),e.d(n,"RoutedPoolModuleNgFactory",(function(){return At}));var Ft=u["ɵcmf"]($,[],(function(l){return u["ɵmod"]([u["ɵmpd"](512,u.ComponentFactoryResolver,u["ɵCodegenComponentFactoryResolver"],[[8,[H.a,Y.a,Z.a,X.a,Q.a,Q.b,ll.a,nl.a,el.a,ul.a,tl.a,il.a,al.a,ol.a,sl.a,rl.a,dl.a,cl.a,cl.c,cl.b,cl.d,ml.a,fl.a,gl.a,pl.a,hl.a,vl.a,bl.a,Cl.a,Rl.a,Il.a,Yl,$n]],[3,u.ComponentFactoryResolver],u.NgModuleRef]),u["ɵmpd"](4608,El.NgLocalization,El.NgLocaleLocalization,[u.LOCALE_ID,[2,El["ɵangular_packages_common_common_a"]]]),u["ɵmpd"](4608,Kn.y,Kn.y,[El.DOCUMENT]),u["ɵmpd"](4608,Kn.r,Kn.r,[]),u["ɵmpd"](4608,Kn.a,Kn.a,[]),u["ɵmpd"](4608,i.D,i.D,[]),u["ɵmpd"](4608,Jn.a,Jn.a,[]),u["ɵmpd"](4608,Wn.a,Wn.a,[]),u["ɵmpd"](4608,Hn.a,Hn.a,[s.a]),u["ɵmpd"](4608,El.DatePipe,El.DatePipe,[u.LOCALE_ID]),u["ɵmpd"](4608,Yn.a,Yn.a,[]),u["ɵmpd"](4608,Zn.a,Zn.a,[]),u["ɵmpd"](4608,N.a,N.a,[]),u["ɵmpd"](4608,I.a,I.a,[N.a]),u["ɵmpd"](4608,Xn.a,Xn.a,[N.a]),u["ɵmpd"](4608,O.a,O.a,[N.a]),u["ɵmpd"](4608,Qn.a,Qn.a,[]),u["ɵmpd"](4608,le.a,le.a,[]),u["ɵmpd"](4608,ne.a,ne.a,[]),u["ɵmpd"](4608,ee.a,ee.a,[]),u["ɵmpd"](4608,ue.a,ue.a,[El.DatePipe]),u["ɵmpd"](4608,te.a,te.a,[]),u["ɵmpd"](4608,ie.a,ie.a,[]),u["ɵmpd"](4608,ae.a,ae.a,[]),u["ɵmpd"](4608,oe.a,oe.a,[]),u["ɵmpd"](4608,se.a,se.a,[]),u["ɵmpd"](4608,re.a,re.a,[s.a]),u["ɵmpd"](4608,Nl.a,Nl.a,[]),u["ɵmpd"](4608,de.a,de.a,[]),u["ɵmpd"](4608,ce.a,ce.a,[]),u["ɵmpd"](4608,i.h,i.h,[]),u["ɵmpd"](4608,me.b,me.b,[]),u["ɵmpd"](4608,fe.a,fe.a,[]),u["ɵmpd"](4608,ge.a,ge.a,[u.NgZone,u.RendererFactory2,u.PLATFORM_ID]),u["ɵmpd"](4608,pe.a,pe.a,[u.ComponentFactoryResolver,u.NgZone,u.Injector,ge.a,u.ApplicationRef]),u["ɵmpd"](4608,he.c,he.c,[]),u["ɵmpd"](4608,ve.a,ve.a,[]),u["ɵmpd"](4608,Al.b,Al.b,[u.RendererFactory2,pe.a]),u["ɵmpd"](4608,be.f,be.f,[]),u["ɵmpd"](4608,E.a,E.a,[]),u["ɵmpd"](4608,Ce.a,Ce.a,[Re.m,E.a]),u["ɵmpd"](4608,Ie.f,Ie.f,[]),u["ɵmpd"](4608,Ee.t,Ee.t,[]),u["ɵmpd"](4608,Ee.v,Ee.v,[]),u["ɵmpd"](4608,Ee.a,Ee.a,[]),u["ɵmpd"](4608,Ee.h,Ee.h,[]),u["ɵmpd"](4608,Ee.d,Ee.d,[]),u["ɵmpd"](4608,Ee.j,Ee.j,[]),u["ɵmpd"](4608,Ee.l,Ee.l,[]),u["ɵmpd"](4608,Ee.u,Ee.u,[Ee.v,Ee.l]),u["ɵmpd"](4608,Ne.a,Ne.a,[]),u["ɵmpd"](1073742336,El.CommonModule,El.CommonModule,[]),u["ɵmpd"](1073742336,Kn.u,Kn.u,[]),u["ɵmpd"](1073742336,i.C,i.C,[]),u["ɵmpd"](1073742336,i.n,i.n,[]),u["ɵmpd"](1073742336,be.e,be.e,[]),u["ɵmpd"](1073742336,ye.a,ye.a,[]),u["ɵmpd"](1073742336,i.y,i.y,[]),u["ɵmpd"](1073742336,me.c,me.c,[]),u["ɵmpd"](1073742336,fe.d,fe.d,[]),u["ɵmpd"](1073742336,he.d,he.d,[]),u["ɵmpd"](1073742336,ve.d,ve.d,[]),u["ɵmpd"](1073742336,Ve.b,Ve.b,[]),u["ɵmpd"](1073742336,Al.e,Al.e,[]),u["ɵmpd"](1073742336,we.a,we.a,[]),u["ɵmpd"](1073742336,Vl.f,Vl.f,[]),u["ɵmpd"](1073742336,Te.ClickOutsideModule,Te.ClickOutsideModule,[]),u["ɵmpd"](1073742336,_e.b,_e.b,[]),u["ɵmpd"](1073742336,Re.q,Re.q,[[2,Re.v],[2,Re.m]]),u["ɵmpd"](1073742336,Se.a,Se.a,[]),u["ɵmpd"](1073742336,De.a,De.a,[]),u["ɵmpd"](1073742336,r.a,r.a,[]),u["ɵmpd"](1073742336,ke.a,ke.a,[]),u["ɵmpd"](1073742336,Ie.d,Ie.d,[]),u["ɵmpd"](1073742336,qe.a,qe.a,[]),u["ɵmpd"](1073742336,xe.a,xe.a,[]),u["ɵmpd"](1073742336,Pe.a,Pe.a,[]),u["ɵmpd"](1073742336,Ee.g,Ee.g,[]),u["ɵmpd"](1073742336,Fe.b,Fe.b,[]),u["ɵmpd"](1073742336,Ae.a,Ae.a,[]),u["ɵmpd"](1073742336,$,$,[]),u["ɵmpd"](256,u.LOCALE_ID,"en-US",[]),u["ɵmpd"](256,be.a,{autoClose:!0,insideClick:!1},[]),u["ɵmpd"](256,u.TRANSLATIONS_FORMAT,"xlf",[])])})),At=u["ɵcmf"](W,[],(function(l){return u["ɵmod"]([u["ɵmpd"](512,u.ComponentFactoryResolver,u["ɵCodegenComponentFactoryResolver"],[[8,[H.a,Y.a,Z.a,X.a,Q.a,Q.b,ll.a,nl.a,el.a,ul.a,tl.a,il.a,al.a,ol.a,sl.a,rl.a,dl.a,cl.a,cl.c,cl.b,cl.d,ml.a,fl.a,gl.a,pl.a,hl.a,vl.a,bl.a,Cl.a,Rl.a,Il.a,Yl,$n,hu,Pt]],[3,u.ComponentFactoryResolver],u.NgModuleRef]),u["ɵmpd"](4608,El.NgLocalization,El.NgLocaleLocalization,[u.LOCALE_ID,[2,El["ɵangular_packages_common_common_a"]]]),u["ɵmpd"](4608,Kn.y,Kn.y,[El.DOCUMENT]),u["ɵmpd"](4608,Kn.r,Kn.r,[]),u["ɵmpd"](4608,Kn.a,Kn.a,[]),u["ɵmpd"](4608,i.D,i.D,[]),u["ɵmpd"](4608,Jn.a,Jn.a,[]),u["ɵmpd"](4608,Wn.a,Wn.a,[]),u["ɵmpd"](4608,Hn.a,Hn.a,[s.a]),u["ɵmpd"](4608,El.DatePipe,El.DatePipe,[u.LOCALE_ID]),u["ɵmpd"](4608,Yn.a,Yn.a,[]),u["ɵmpd"](4608,Zn.a,Zn.a,[]),u["ɵmpd"](4608,N.a,N.a,[]),u["ɵmpd"](4608,I.a,I.a,[N.a]),u["ɵmpd"](4608,Xn.a,Xn.a,[N.a]),u["ɵmpd"](4608,O.a,O.a,[N.a]),u["ɵmpd"](4608,Qn.a,Qn.a,[]),u["ɵmpd"](4608,le.a,le.a,[]),u["ɵmpd"](4608,ne.a,ne.a,[]),u["ɵmpd"](4608,ee.a,ee.a,[]),u["ɵmpd"](4608,ue.a,ue.a,[El.DatePipe]),u["ɵmpd"](4608,te.a,te.a,[]),u["ɵmpd"](4608,ie.a,ie.a,[]),u["ɵmpd"](4608,ae.a,ae.a,[]),u["ɵmpd"](4608,oe.a,oe.a,[]),u["ɵmpd"](4608,se.a,se.a,[]),u["ɵmpd"](4608,re.a,re.a,[s.a]),u["ɵmpd"](4608,Nl.a,Nl.a,[]),u["ɵmpd"](4608,de.a,de.a,[]),u["ɵmpd"](4608,ce.a,ce.a,[]),u["ɵmpd"](4608,i.h,i.h,[]),u["ɵmpd"](4608,me.b,me.b,[]),u["ɵmpd"](4608,fe.a,fe.a,[]),u["ɵmpd"](4608,ge.a,ge.a,[u.NgZone,u.RendererFactory2,u.PLATFORM_ID]),u["ɵmpd"](4608,pe.a,pe.a,[u.ComponentFactoryResolver,u.NgZone,u.Injector,ge.a,u.ApplicationRef]),u["ɵmpd"](4608,he.c,he.c,[]),u["ɵmpd"](4608,ve.a,ve.a,[]),u["ɵmpd"](4608,Al.b,Al.b,[u.RendererFactory2,pe.a]),u["ɵmpd"](4608,be.f,be.f,[]),u["ɵmpd"](4608,E.a,E.a,[]),u["ɵmpd"](4608,Ce.a,Ce.a,[Re.m,E.a]),u["ɵmpd"](4608,Ie.f,Ie.f,[]),u["ɵmpd"](4608,Ee.t,Ee.t,[]),u["ɵmpd"](4608,Ee.v,Ee.v,[]),u["ɵmpd"](4608,Ee.a,Ee.a,[]),u["ɵmpd"](4608,Ee.h,Ee.h,[]),u["ɵmpd"](4608,Ee.d,Ee.d,[]),u["ɵmpd"](4608,Ee.j,Ee.j,[]),u["ɵmpd"](4608,Ee.l,Ee.l,[]),u["ɵmpd"](4608,Ee.u,Ee.u,[Ee.v,Ee.l]),u["ɵmpd"](4608,Ne.a,Ne.a,[]),u["ɵmpd"](1073742336,El.CommonModule,El.CommonModule,[]),u["ɵmpd"](1073742336,Kn.u,Kn.u,[]),u["ɵmpd"](1073742336,i.C,i.C,[]),u["ɵmpd"](1073742336,i.n,i.n,[]),u["ɵmpd"](1073742336,be.e,be.e,[]),u["ɵmpd"](1073742336,ye.a,ye.a,[]),u["ɵmpd"](1073742336,i.y,i.y,[]),u["ɵmpd"](1073742336,me.c,me.c,[]),u["ɵmpd"](1073742336,fe.d,fe.d,[]),u["ɵmpd"](1073742336,he.d,he.d,[]),u["ɵmpd"](1073742336,ve.d,ve.d,[]),u["ɵmpd"](1073742336,Ve.b,Ve.b,[]),u["ɵmpd"](1073742336,Al.e,Al.e,[]),u["ɵmpd"](1073742336,we.a,we.a,[]),u["ɵmpd"](1073742336,Vl.f,Vl.f,[]),u["ɵmpd"](1073742336,Te.ClickOutsideModule,Te.ClickOutsideModule,[]),u["ɵmpd"](1073742336,_e.b,_e.b,[]),u["ɵmpd"](1073742336,Re.q,Re.q,[[2,Re.v],[2,Re.m]]),u["ɵmpd"](1073742336,Se.a,Se.a,[]),u["ɵmpd"](1073742336,De.a,De.a,[]),u["ɵmpd"](1073742336,r.a,r.a,[]),u["ɵmpd"](1073742336,ke.a,ke.a,[]),u["ɵmpd"](1073742336,Ie.d,Ie.d,[]),u["ɵmpd"](1073742336,qe.a,qe.a,[]),u["ɵmpd"](1073742336,xe.a,xe.a,[]),u["ɵmpd"](1073742336,Pe.a,Pe.a,[]),u["ɵmpd"](1073742336,Ee.g,Ee.g,[]),u["ɵmpd"](1073742336,Fe.b,Fe.b,[]),u["ɵmpd"](1073742336,Ae.a,Ae.a,[]),u["ɵmpd"](1073742336,$,$,[]),u["ɵmpd"](1073742336,W,W,[]),u["ɵmpd"](256,u.LOCALE_ID,"en-US",[]),u["ɵmpd"](256,be.a,{autoClose:!0,insideClick:!1},[]),u["ɵmpd"](1024,Re.k,(function(){return[[{path:"",component:G},{path:"create",component:k,data:K},{path:"edit/:name",component:k,data:J}]]}),[]),u["ɵmpd"](256,u.TRANSLATIONS_FORMAT,"xlf",[])])}))}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/6.dc8bd57d45d56da356c9.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/6.dc8bd57d45d56da356c9.js
new file mode 100644 (file)
index 0000000..3dfbf50
--- /dev/null
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{nOaW:function(l,n,e){"use strict";e.r(n);var u=e("8Y7J"),t=e("sne2"),a=e("s7LF"),i=e("LvDl"),o=e("IheW"),s=e("GiVz"),r=e("pL04");let d=(()=>{class l{constructor(l,n){this.http=l,this.i18n=n,this.apiPath="api/crush_rule",this.formTooltips={root:this.i18n("The name of the node under which data should be placed."),failure_domain:this.i18n("The type of CRUSH nodes across which we should separate replicas."),device_class:this.i18n("The device class data should be placed on.")}}create(l){return this.http.post(this.apiPath,l,{observe:"response"})}delete(l){return this.http.delete(`${this.apiPath}/${l}`,{observe:"response"})}getInfo(){return this.http.get(`ui-${this.apiPath}/info`)}}return l.ngInjectableDef=u["ɵɵdefineInjectable"]({factory:function(){return new l(u["ɵɵinject"](o.c),u["ɵɵinject"](s.a))},token:l,providedIn:r.a}),l})(),c=(()=>{class l{constructor(l,n){this.http=l,this.i18n=n,this.apiPath="api/erasure_code_profile",this.formTooltips={k:this.i18n("Each object is split in data-chunks parts, each stored on a different OSD."),m:this.i18n("Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data."),plugins:{jerasure:{description:this.i18n("The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools."),technique:this.i18n("The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2."),packetSize:this.i18n("The encoding will be done on packets of bytes size at a time.\n          Choosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.")},lrc:{description:this.i18n("With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven."),l:this.i18n("Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set."),crushLocality:this.i18n("The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.")},isa:{description:this.i18n("The isa plugin encapsulates the ISA library. It only runs on Intel processors."),technique:this.i18n("The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.")},shec:{description:this.i18n("The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes."),c:this.i18n("The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.")},clay:{description:this.i18n("CLAY (short for coupled-layer) codes are erasure codes designed to\n          bring about significant savings in terms of network bandwidth and disk IO when a failed\n          node/OSD/rack is being repaired."),d:this.i18n("Number of OSDs requested to send data during recovery of a single chunk.\n          d needs to be chosen such that k+1 <= d <= k+m-1. The larger the d, the better\n          the savings."),scalar_mds:this.i18n("scalar_mds specifies the plugin that is used as a building block\n          in the layered construction. It can be one of jerasure, isa, shec."),technique:this.i18n("technique specifies the technique that will be picked\n          within the 'scalar_mds' plugin specified. Supported techniques\n          are 'reed_sol_van', 'reed_sol_r6_op', 'cauchy_orig',\n          'cauchy_good', 'liber8tion' for jerasure, 'reed_sol_van',\n          'cauchy' for isa and 'single', 'multiple' for shec.")}},crushRoot:this.i18n("The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default."),crushFailureDomain:this.i18n("Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host."),crushDeviceClass:this.i18n("Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map."),directory:this.i18n("Set the directory name from which the erasure code plugin is loaded.")}}list(){return this.http.get(this.apiPath)}create(l){return this.http.post(this.apiPath,l,{observe:"response"})}delete(l){return this.http.delete(`${this.apiPath}/${l}`,{observe:"response"})}getInfo(){return this.http.get(`ui-${this.apiPath}/info`)}}return l.ngInjectableDef=u["ɵɵdefineInjectable"]({factory:function(){return new l(u["ɵɵinject"](o.c),u["ɵɵinject"](s.a))},token:l,providedIn:r.a}),l})();var m=e("Ekvf");class f{constructor(){this.nodes=[],this.idTree={},this.allDevices=[],this.buckets=[],this.failureDomains={},this.failureDomainKeys=[],this.devices=[],this.deviceCount=0}static searchFailureDomains(l,n){return this.getFailureDomains(this.search(l,n))}static search(l,n){const[e,u]=n.split("~"),t=l.find(l=>["name","id","type"].some(n=>l[n]===e));return t?(l=this.getSubNodes(t,this.createIdTreeFromNodes(l)),u&&(l=this.filterNodesByDeviceType(l,u)),l):[]}static createIdTreeFromNodes(l){const n={};return l.forEach(l=>{n[l.id]=l}),n}static getSubNodes(l,n){let e=[l];return l.children?(l.children.forEach(l=>{e=e.concat(this.getSubNodes(n[l],n))}),e):e}static filterNodesByDeviceType(l,n){let e,u=l.filter(l=>l.device_class&&l.device_class!==n).map(l=>l.id),t=u;do{e=!1,l=l.filter(l=>!u.includes(l.id));const n=[];l.forEach(l=>{l.children&&l.children.every(l=>u.includes(l))&&(n.push(l.id),e=!0)}),e&&(u=n,t=t.concat(n))}while(e);return(l=i.cloneDeep(l)).map(l=>l.children?(l.children=l.children.filter(l=>!t.includes(l)),l):l)}static getFailureDomains(l){const n={};return l.forEach(l=>{const e=l.type;n[e]||(n[e]=[]),n[e].push(l)}),n}initCrushNodeSelection(l,n,e,u){this.nodes=l,this.idTree=f.createIdTreeFromNodes(l),l.forEach(l=>{this.idTree[l.id]=l}),this.buckets=i.sortBy(l.filter(l=>l.children),"name"),this.controls={root:n,failure:e,device:u},this.preSelectRoot(),this.controls.root.valueChanges.subscribe(()=>this.onRootChange()),this.controls.failure.valueChanges.subscribe(()=>this.onFailureDomainChange()),this.controls.device.valueChanges.subscribe(()=>this.onDeviceChange())}preSelectRoot(){const l=this.nodes.find(l=>"root"===l.type);this.silentSet(this.controls.root,l),this.onRootChange()}silentSet(l,n){l.setValue(n,{emitEvent:!1})}onRootChange(){const l=f.getSubNodes(this.controls.root.value,this.idTree),n=f.getFailureDomains(l);Object.keys(n).forEach(l=>{n[l].length<=1&&delete n[l]}),this.failureDomains=n,this.failureDomainKeys=Object.keys(n).sort(),this.updateFailureDomain()}updateFailureDomain(){let l=this.getIncludedCustomValue(this.controls.failure,Object.keys(this.failureDomains));""===l&&(l=this.setMostCommonDomain(this.controls.failure)),this.updateDevices(l)}getIncludedCustomValue(l,n){return l.dirty&&n.includes(l.value)?l.value:""}setMostCommonDomain(l){let n={n:0,type:""};return Object.keys(this.failureDomains).forEach(l=>{const e=this.failureDomains[l].length;n.n<e&&(n={n:e,type:l})}),this.silentSet(l,n.type),n.type}onFailureDomainChange(){this.updateDevices()}updateDevices(l=this.controls.failure.value){const n=i.flatten(this.failureDomains[l].map(l=>f.getSubNodes(l,this.idTree)));this.allDevices=n.filter(l=>l.device_class).map(l=>l.device_class),this.devices=i.uniq(this.allDevices).sort();const e=1===this.devices.length?this.devices[0]:this.getIncludedCustomValue(this.controls.device,this.devices);this.silentSet(this.controls.device,e),this.onDeviceChange(e)}onDeviceChange(l=this.controls.device.value){this.deviceCount=""===l?this.allDevices.length:this.allDevices.filter(n=>n===l).length}}var g=e("0+/T"),p=e("a96k"),h=e("oxzT"),v=e("QFaf"),b=e("1Ni5"),C=e("PhyI"),R=e("kvvV"),I=e("Fgil"),E=e("aexS"),N=e("aXbf"),y=e("kn/O"),V=e("2EZI");class w extends f{constructor(l,n,e,t,a,i){super(),this.formBuilder=l,this.bsModalRef=n,this.taskWrapper=e,this.crushRuleService=t,this.i18n=a,this.actionLabels=i,this.submitAction=new u.EventEmitter,this.tooltips=this.crushRuleService.formTooltips,this.action=this.actionLabels.CREATE,this.resource=this.i18n("Crush Rule"),this.createForm()}createForm(){this.form=this.formBuilder.group({name:["",[a.B.required,a.B.pattern("[A-Za-z0-9_-]+"),b.a.custom("uniqueName",l=>this.names&&-1!==this.names.indexOf(l))]],root:null,failure_domain:"",device_class:""})}ngOnInit(){this.crushRuleService.getInfo().subscribe(({names:l,nodes:n})=>{this.initCrushNodeSelection(n,this.form.get("root"),this.form.get("failure_domain"),this.form.get("device_class")),this.names=l})}onSubmit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const l=i.cloneDeep(this.form.value);l.root=l.root.name,""===l.device_class&&delete l.device_class,this.taskWrapper.wrapTaskAroundCall({task:new R.a("crushRule/create",l),call:this.crushRuleService.create(l)}).subscribe(void 0,()=>{this.form.setErrors({cdSubmitButton:!0})},()=>{this.bsModalRef.hide(),this.submitAction.emit(l)})}}class T{}class _ extends f{constructor(l,n,e,t,a,i){super(),this.formBuilder=l,this.bsModalRef=n,this.taskWrapper=e,this.ecpService=t,this.i18n=a,this.actionLabels=i,this.submitAction=new u.EventEmitter,this.tooltips=this.ecpService.formTooltips,this.PLUGIN={LRC:"lrc",SHEC:"shec",CLAY:"clay",JERASURE:"jerasure",ISA:"isa"},this.plugin=this.PLUGIN.JERASURE,this.icons=h.a,this.action=this.actionLabels.CREATE,this.resource=this.i18n("EC Profile"),this.createForm(),this.setJerasureDefaults()}createForm(){this.form=this.formBuilder.group({name:[null,[a.B.required,a.B.pattern("[A-Za-z0-9_-]+"),b.a.custom("uniqueName",l=>this.names&&-1!==this.names.indexOf(l))]],plugin:[this.PLUGIN.JERASURE,[a.B.required]],k:[4,[a.B.required,a.B.min(2),b.a.custom("max",()=>this.baseValueValidation(!0)),b.a.custom("unequal",l=>this.lrcDataValidation(l)),b.a.custom("kLowerM",l=>this.shecDataValidation(l))]],m:[2,[a.B.required,a.B.min(1),b.a.custom("max",()=>this.baseValueValidation())]],crushFailureDomain:"",crushRoot:null,crushDeviceClass:"",directory:"",technique:"reed_sol_van",packetSize:[2048,[a.B.min(1)]],l:[3,[a.B.required,a.B.min(1),b.a.custom("unequal",l=>this.lrcLocalityValidation(l))]],crushLocality:"",c:[2,[a.B.required,a.B.min(1),b.a.custom("cGreaterM",l=>this.shecDurabilityValidation(l))]],d:[5,[a.B.required,b.a.custom("dMin",l=>this.dMinValidation(l)),b.a.custom("dMax",l=>this.dMaxValidation(l))]],scalar_mds:[this.PLUGIN.JERASURE,[a.B.required]]}),this.toggleDCalc(),this.form.get("k").valueChanges.subscribe(()=>this.updateValidityOnChange(["m","l","d"])),this.form.get("m").valueChanges.subscribe(()=>this.updateValidityOnChange(["k","l","c","d"])),this.form.get("l").valueChanges.subscribe(()=>this.updateValidityOnChange(["k","m"])),this.form.get("plugin").valueChanges.subscribe(l=>this.onPluginChange(l)),this.form.get("scalar_mds").valueChanges.subscribe(()=>this.setClayDefaultsForScalar())}baseValueValidation(l=!1){return this.validValidation(()=>this.getKMSum()>this.deviceCount&&this.form.getValue("k")>this.form.getValue("m")===l)}validValidation(l,n){return!((!this.form||n)&&this.plugin!==n)&&l()}getKMSum(){return this.form.getValue("k")+this.form.getValue("m")}lrcDataValidation(l){return this.validValidation(()=>{const n=this.form.getValue("m"),e=this.form.getValue("l"),u=l+n;return this.lrcMultiK=l/(u/e),l%(u/e)!=0},"lrc")}shecDataValidation(l){return this.validValidation(()=>this.form.getValue("m")>l,"shec")}lrcLocalityValidation(l){return this.validValidation(()=>{const n=this.getKMSum();return this.lrcGroups=l>0?n/l:0,l>0&&n%l!=0},"lrc")}shecDurabilityValidation(l){return this.validValidation(()=>{const n=this.form.getValue("m");return l>n},"shec")}dMinValidation(l){return this.validValidation(()=>this.getDMin()>l,"clay")}getDMin(){return this.form.getValue("k")+1}dMaxValidation(l){return this.validValidation(()=>l>this.getDMax(),"clay")}getDMax(){const l=this.form.getValue("m");return this.form.getValue("k")+l-1}toggleDCalc(){this.dCalc=!this.dCalc,this.form.get("d")[this.dCalc?"disable":"enable"](),this.calculateD()}calculateD(){this.plugin===this.PLUGIN.CLAY&&this.dCalc&&this.form.silentSet("d",this.getDMax())}updateValidityOnChange(l){l.forEach(l=>{"d"===l&&this.calculateD(),this.form.get(l).updateValueAndValidity({emitEvent:!1})})}onPluginChange(l){this.plugin=l,l===this.PLUGIN.JERASURE?this.setJerasureDefaults():l===this.PLUGIN.LRC?this.setLrcDefaults():l===this.PLUGIN.ISA?this.setIsaDefaults():l===this.PLUGIN.SHEC?this.setShecDefaults():l===this.PLUGIN.CLAY&&this.setClayDefaults(),this.updateValidityOnChange(["m"])}setJerasureDefaults(){this.techniques=["reed_sol_van","reed_sol_r6_op","cauchy_orig","cauchy_good","liberation","blaum_roth","liber8tion"],this.setDefaults({k:4,m:2,technique:"reed_sol_van"})}setLrcDefaults(){this.setDefaults({k:4,m:2,l:3})}setIsaDefaults(){this.techniques=["reed_sol_van","cauchy"],this.setDefaults({k:7,m:3,technique:"reed_sol_van"})}setShecDefaults(){this.setDefaults({k:4,m:3,c:2})}setClayDefaults(){this.setDefaults({k:4,m:2,scalar_mds:this.PLUGIN.JERASURE}),this.setClayDefaultsForScalar()}setClayDefaultsForScalar(){const l=this.form.getValue("scalar_mds");let n="reed_sol_van";l===this.PLUGIN.JERASURE?this.techniques=["reed_sol_van","reed_sol_r6_op","cauchy_orig","cauchy_good","liber8tion"]:l===this.PLUGIN.ISA?this.techniques=["reed_sol_van","cauchy"]:(n="single",this.techniques=["single","multiple"]),this.setDefaults({technique:n})}setDefaults(l){Object.keys(l).forEach(n=>{const e=this.form.get(n),u=e.value;e.pristine||"technique"===n&&!this.techniques.includes(u)||"k"===n&&[4,7].includes(u)||"m"===n&&[2,3].includes(u)?e.setValue(l[n]):e.updateValueAndValidity()})}ngOnInit(){this.ecpService.getInfo().subscribe(({plugins:l,names:n,directory:e,nodes:u})=>{this.initCrushNodeSelection(u,this.form.get("crushRoot"),this.form.get("crushFailureDomain"),this.form.get("crushDeviceClass")),this.plugins=l,this.names=n,this.form.silentSet("directory",e),this.preValidateNumericInputFields()})}preValidateNumericInputFields(){const l=["k","m","l","c","d"].map(l=>this.form.get(l));l.forEach(l=>{l.markAsTouched(),l.markAsDirty()}),l[1].updateValueAndValidity()}onSubmit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const l=this.createJson();this.taskWrapper.wrapTaskAroundCall({task:new R.a("ecp/create",{name:l.name}),call:this.ecpService.create(l)}).subscribe(void 0,()=>{this.form.setErrors({cdSubmitButton:!0})},()=>{this.bsModalRef.hide(),this.submitAction.emit(l)})}createJson(){const l={technique:[this.PLUGIN.ISA,this.PLUGIN.JERASURE,this.PLUGIN.CLAY],packetSize:[this.PLUGIN.JERASURE],l:[this.PLUGIN.LRC],crushLocality:[this.PLUGIN.LRC],c:[this.PLUGIN.SHEC],d:[this.PLUGIN.CLAY],scalar_mds:[this.PLUGIN.CLAY]},n=new T,e=this.form.getValue("plugin");return Object.keys(this.form.controls).filter(n=>{const u=l[n],t=this.form.getValue(n);return(u&&u.includes(e)||!u)&&t&&""!==t}).forEach(l=>{this.extendJson(l,n)}),n}extendJson(l,n){const e=this.form.getValue(l);n[{crushFailureDomain:"crush-failure-domain",crushRoot:"crush-root",crushDeviceClass:"crush-device-class",packetSize:"packetsize",crushLocality:"crush-locality"}[l]||l]="crushRoot"===l?e.name:e}}var S=e("DNAf");class D{constructor(l){this.erasureInfo=!1,this.crushInfo=!1,this.pgs=1,this.poolTypes=["erasure","replicated"],this.applications={selected:[],default:["cephfs","rbd","rgw"],available:[],validators:[a.B.pattern("[A-Za-z0-9_]+"),a.B.maxLength(128)],messages:new S.a({empty:l("No applications added"),selectionLimit:{text:l("Applications limit reached"),tooltip:l("A pool can only have up to four applications definitions.")},customValidations:{pattern:l("Allowed characters '_a-zA-Z0-9'"),maxlength:l("Maximum length is 128 characters")},filter:l("Filter or add applications"),add:l("Add application")},l)}}}class k{constructor(l,n,e,a,i,o,s,r,d,c,m,f,g){this.dimlessBinaryPipe=l,this.route=n,this.router=e,this.modalService=a,this.poolService=i,this.authStorageService=o,this.formatter=s,this.bsModalService=r,this.taskWrapper=d,this.ecpService=c,this.crushRuleService=m,this.i18n=f,this.actionLabels=g,this.editing=!1,this.isReplicated=!1,this.isErasure=!1,this.data=new D(this.i18n),this.externalPgChange=!1,this.current={rules:[]},this.initializeConfigData=new u.EventEmitter,this.currentConfigurationValues={},this.icons=h.a,this.crushUsage=void 0,this.ecpUsage=void 0,this.editing=this.router.url.startsWith("/pool/"+t.e.EDIT),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.resource=this.i18n("pool"),this.authenticate(),this.createForm()}authenticate(){this.permission=this.authStorageService.getPermissions().pool,(!this.permission.read||!this.permission.update&&this.editing||!this.permission.create&&!this.editing)&&this.router.navigate(["/404"])}createForm(){const l=new v.a({mode:new a.i("none"),algorithm:new a.i(""),minBlobSize:new a.i("",{updateOn:"blur"}),maxBlobSize:new a.i("",{updateOn:"blur"}),ratio:new a.i("",{updateOn:"blur"})});this.form=new v.a({name:new a.i("",{validators:[a.B.pattern(/^[.A-Za-z0-9_/-]+$/),a.B.required,b.a.custom("rbdPool",()=>this.form&&this.form.getValue("name").includes("/")&&this.data&&-1!==this.data.applications.selected.indexOf("rbd"))]}),poolType:new a.i("",{validators:[a.B.required]}),crushRule:new a.i(null,{validators:[b.a.custom("tooFewOsds",l=>this.info&&l&&this.info.osd_count<l.min_size),b.a.custom("required",l=>this.isReplicated&&this.info.crush_rules_replicated.length>0&&!l)]}),size:new a.i("",{updateOn:"blur"}),erasureProfile:new a.i(null),pgNum:new a.i("",{validators:[a.B.required,a.B.min(1)]}),pgAutoscaleMode:new a.i(null),ecOverwrites:new a.i(!1),compression:l,max_bytes:new a.i(""),max_objects:new a.i(0,{validators:[a.B.min(0)]})},[b.a.custom("form",()=>null)])}ngOnInit(){this.poolService.getInfo().subscribe(l=>{this.initInfo(l),this.editing?this.initEditMode():this.setAvailableApps(),this.listenToChanges(),this.setComplexValidators()})}initInfo(l){this.pgAutoscaleModes=l.pg_autoscale_modes,this.form.silentSet("pgAutoscaleMode",l.pg_autoscale_default_mode),this.form.silentSet("algorithm",l.bluestore_compression_algorithm),this.info=l,this.initEcp(l.erasure_code_profiles)}initEcp(l){this.setListControlStatus("erasureProfile",l),this.ecProfiles=l}setListControlStatus(l,n){const e=this.form.get(l),u=e.value;1!==n.length||u&&i.isEqual(u,n[0])?0===n.length&&u&&e.setValue(null):e.setValue(n[0]),n.length<=1?e.enabled&&e.disable():e.disabled&&e.enable()}initEditMode(){this.disableForEdit(),this.routeParamsSubscribe=this.route.params.subscribe(l=>this.poolService.get(l.name).subscribe(l=>{this.data.pool=l,this.initEditFormData(l)}))}disableForEdit(){["poolType","crushRule","size","erasureProfile","ecOverwrites"].forEach(l=>this.form.get(l).disable())}initEditFormData(l){this.initializeConfigData.emit({initialData:l.configuration,sourceType:C.a.pool}),this.poolTypeChange(l.type);const n=this.info.crush_rules_replicated.concat(this.info.crush_rules_erasure),e={name:l.pool_name,poolType:l.type,crushRule:n.find(n=>n.rule_name===l.crush_rule),size:l.size,erasureProfile:this.ecProfiles.find(n=>n.name===l.erasure_code_profile),pgAutoscaleMode:l.pg_autoscale_mode,pgNum:l.pg_num,ecOverwrites:l.flags_names.includes("ec_overwrites"),mode:l.options.compression_mode,algorithm:l.options.compression_algorithm,minBlobSize:this.dimlessBinaryPipe.transform(l.options.compression_min_blob_size),maxBlobSize:this.dimlessBinaryPipe.transform(l.options.compression_max_blob_size),ratio:l.options.compression_required_ratio,max_bytes:this.dimlessBinaryPipe.transform(l.quota_max_bytes),max_objects:l.quota_max_objects};Object.keys(e).forEach(l=>{const n=e[l];i.isUndefined(n)||""===n||this.form.silentSet(l,n)}),this.data.pgs=this.form.getValue("pgNum"),this.setAvailableApps(this.data.applications.default.concat(l.application_metadata)),this.data.applications.selected=l.application_metadata}setAvailableApps(l=this.data.applications.default){this.data.applications.available=i.uniq(l.sort()).map(l=>new p.a(!1,l,""))}listenToChanges(){this.listenToChangesDuringAddEdit(),this.editing||this.listenToChangesDuringAdd()}listenToChangesDuringAddEdit(){this.form.get("pgNum").valueChanges.subscribe(l=>{const n=l-this.data.pgs;1===Math.abs(n)&&2!==l?this.doPgPowerJump(n):this.data.pgs=l})}doPgPowerJump(l){const n=this.calculatePgPower()+l;this.setPgs(-1===l?Math.round(n):Math.floor(n))}calculatePgPower(l=this.form.getValue("pgNum")){return Math.log(l)/Math.log(2)}setPgs(l){const n=Math.pow(2,l<0?0:l);this.data.pgs=n,this.form.silentSet("pgNum",n)}listenToChangesDuringAdd(){this.form.get("poolType").valueChanges.subscribe(l=>{this.poolTypeChange(l)}),this.form.get("crushRule").valueChanges.subscribe(l=>{this.crushDeletionBtn&&this.crushDeletionBtn.isOpen&&this.crushDeletionBtn.hide(),l&&(this.setCorrectMaxSize(l),this.crushRuleIsUsedBy(l.rule_name),this.replicatedRuleChange(),this.pgCalc())}),this.form.get("size").valueChanges.subscribe(()=>{this.pgCalc()}),this.form.get("erasureProfile").valueChanges.subscribe(l=>{this.ecpDeletionBtn&&this.ecpDeletionBtn.isOpen&&this.ecpDeletionBtn.hide(),l&&(this.ecpIsUsedBy(l.name),this.pgCalc())}),this.form.get("mode").valueChanges.subscribe(()=>{["minBlobSize","maxBlobSize","ratio"].forEach(l=>{this.form.get(l).updateValueAndValidity({emitEvent:!1})})}),this.form.get("minBlobSize").valueChanges.subscribe(()=>{this.form.get("maxBlobSize").updateValueAndValidity({emitEvent:!1})}),this.form.get("maxBlobSize").valueChanges.subscribe(()=>{this.form.get("minBlobSize").updateValueAndValidity({emitEvent:!1})})}poolTypeChange(l){if("replicated"===l?this.setTypeBooleans(!0,!1):this.setTypeBooleans(!1,"erasure"===l),!l||!this.info)return void(this.current.rules=[]);const n=this.info["crush_rules_"+l]||[];this.current.rules=n,this.editing||(this.isReplicated&&this.setListControlStatus("crushRule",n),this.replicatedRuleChange(),this.pgCalc())}setTypeBooleans(l,n){this.isReplicated=l,this.isErasure=n}replicatedRuleChange(){if(!this.isReplicated)return;const l=this.form.get("size");let n=this.form.getValue("size")||3;const e=this.getMinSize(),u=this.getMaxSize();n<e?n=e:n>u&&(n=u),n!==l.value&&this.form.silentSet("size",n)}getMinSize(){if(!this.info||this.info.osd_count<1)return 0;const l=this.form.getValue("crushRule");return l?l.min_size:1}getMaxSize(){const l=this.form.getValue("crushRule");return this.info?l?l.usable_size:Math.min(this.info.osd_count,3):0}pgCalc(){const l=this.form.getValue("poolType");if(!this.info||this.form.get("pgNum").dirty||!l)return;const n=100*this.info.osd_count,e=this.isReplicated?this.replicatedPgCalc(n):this.erasurePgCalc(n);if(!e)return;const u=this.data.pgs;this.alignPgs(e),this.externalPgChange||(this.externalPgChange=u!==this.data.pgs)}setCorrectMaxSize(l=this.form.getValue("crushRule")){if(!l)return;const n=f.searchFailureDomains(this.info.nodes,l.steps[0].item_name)[l.steps[1].type];l.usable_size=Math.min(n?n.length:l.max_size,l.max_size)}replicatedPgCalc(l){const n=this.form.get("size"),e=n.value;return n.valid&&e>0?l/e:0}erasurePgCalc(l){const n=this.form.get("erasureProfile"),e=n.value;return(n.valid||n.disabled)&&e?l/(e.k+e.m):0}alignPgs(l=this.form.getValue("pgNum")){this.setPgs(Math.round(this.calculatePgPower(l<1?1:l)))}setComplexValidators(){this.editing?this.form.get("name").setValidators([this.form.get("name").validator,b.a.custom("uniqueName",l=>this.data.pool&&this.info&&-1!==this.info.pool_names.indexOf(l)&&this.info.pool_names.indexOf(l)!==this.info.pool_names.indexOf(this.data.pool.pool_name))]):(b.a.validateIf(this.form.get("size"),()=>this.isReplicated,[b.a.custom("min",l=>this.form.getValue("size")&&l<this.getMinSize()),b.a.custom("max",l=>this.form.getValue("size")&&this.getMaxSize()<l)]),this.form.get("name").setValidators([this.form.get("name").validator,b.a.custom("uniqueName",l=>this.info&&-1!==this.info.pool_names.indexOf(l))])),this.setCompressionValidators()}setCompressionValidators(){b.a.validateIf(this.form.get("minBlobSize"),()=>this.hasCompressionEnabled(),[a.B.min(0),b.a.custom("maximum",l=>this.oddBlobSize(l,this.form.getValue("maxBlobSize")))]),b.a.validateIf(this.form.get("maxBlobSize"),()=>this.hasCompressionEnabled(),[a.B.min(0),b.a.custom("minimum",l=>this.oddBlobSize(this.form.getValue("minBlobSize"),l))]),b.a.validateIf(this.form.get("ratio"),()=>this.hasCompressionEnabled(),[a.B.min(0),a.B.max(1)])}oddBlobSize(l,n){const e=this.formatter.toBytes(l),u=this.formatter.toBytes(n);return Boolean(e&&u&&e>=u)}hasCompressionEnabled(){return this.form.getValue("mode")&&"none"!==this.form.get("mode").value.toLowerCase()}describeCrushStep(l){return[l.op.replace("_"," "),l.item_name||"",l.type?l.num+" type "+l.type:""].join(" ")}addErasureCodeProfile(){this.addModal(_,l=>this.reloadECPs(l))}addModal(l,n){this.hideOpenTooltips(),this.bsModalService.show(l).content.submitAction.subscribe(l=>{n(l.name)})}hideOpenTooltips(){const l=l=>l&&l.isOpen&&l.hide();l(this.ecpDeletionBtn),l(this.crushDeletionBtn)}reloadECPs(l){this.reloadList({newItemName:l,getInfo:()=>this.ecpService.list(),initInfo:l=>this.initEcp(l),findNewItem:()=>this.ecProfiles.find(n=>n.name===l),controlName:"erasureProfile"})}reloadList({newItemName:l,getInfo:n,initInfo:e,findNewItem:u,controlName:t}){this.modalSubscription&&this.modalSubscription.unsubscribe(),n().subscribe(n=>{if(e(n),!l)return;const a=u();a&&this.form.get(t).setValue(a)})}deleteErasureCodeProfile(){this.deletionModal({value:this.form.getValue("erasureProfile"),usage:this.ecpUsage,deletionBtn:this.ecpDeletionBtn,dataName:"erasureInfo",getTabs:()=>this.ecpInfoTabs,tabPosition:1,nameAttribute:"name",itemDescription:this.i18n("erasure code profile"),reloadFn:()=>this.reloadECPs(),deleteFn:l=>this.ecpService.delete(l),taskName:"ecp/delete"})}deletionModal({value:l,usage:n,deletionBtn:e,dataName:u,getTabs:t,tabPosition:a,nameAttribute:i,itemDescription:o,reloadFn:s,deleteFn:r,taskName:d}){if(!l)return;if(n)return e.toggle(),this.data[u]=!0,void setTimeout(()=>{const l=t();l&&(l.tabs[a].active=!0)},50);const c=l[i];this.modalService.show(g.a,{initialState:{itemDescription:o,itemNames:[c],submitActionObservable:()=>{const l=r(c);return l.subscribe(()=>s()),this.taskWrapper.wrapTaskAroundCall({task:new R.a(d,{name:c}),call:l})}}})}addCrushRule(){this.addModal(w,l=>this.reloadCrushRules(l))}reloadCrushRules(l){this.reloadList({newItemName:l,getInfo:()=>this.poolService.getInfo(),initInfo:l=>{this.initInfo(l),this.poolTypeChange("replicated")},findNewItem:()=>this.info.crush_rules_replicated.find(n=>n.rule_name===l),controlName:"crushRule"})}deleteCrushRule(){this.deletionModal({value:this.form.getValue("crushRule"),usage:this.crushUsage,deletionBtn:this.crushDeletionBtn,dataName:"crushInfo",getTabs:()=>this.crushInfoTabs,tabPosition:2,nameAttribute:"rule_name",itemDescription:this.i18n("crush rule"),reloadFn:()=>this.reloadCrushRules(),deleteFn:l=>this.crushRuleService.delete(l),taskName:"crushRule/delete"})}crushRuleIsUsedBy(l){this.crushUsage=l?this.info.used_rules[l]:void 0}ecpIsUsedBy(l){this.ecpUsage=l?this.info.used_profiles[l]:void 0}submit(){if(this.form.invalid)return void this.form.setErrors({cdSubmitButton:!0});const l={pool:this.form.getValue("name")};this.assignFormFields(l,[{externalFieldName:"pool_type",formControlName:"poolType"},{externalFieldName:"pg_autoscale_mode",formControlName:"pgAutoscaleMode",editable:!0},{externalFieldName:"pg_num",formControlName:"pgNum",replaceFn:l=>"on"===this.form.getValue("pgAutoscaleMode")?1:l,editable:!0},this.isReplicated?{externalFieldName:"size",formControlName:"size"}:{externalFieldName:"erasure_code_profile",formControlName:"erasureProfile",attr:"name"},{externalFieldName:"rule_name",formControlName:"crushRule",replaceFn:l=>this.isReplicated?l&&l.rule_name:void 0},{externalFieldName:"quota_max_bytes",formControlName:"max_bytes",replaceFn:this.formatter.toBytes,editable:!0,resetValue:this.editing?0:void 0},{externalFieldName:"quota_max_objects",formControlName:"max_objects",editable:!0,resetValue:this.editing?0:void 0}]),this.info.is_all_bluestore&&(this.assignFormField(l,{externalFieldName:"flags",formControlName:"ecOverwrites",replaceFn:()=>this.isErasure?["ec_overwrites"]:void 0}),"none"!==this.form.getValue("mode")?this.assignFormFields(l,[{externalFieldName:"compression_mode",formControlName:"mode",editable:!0,replaceFn:l=>this.hasCompressionEnabled()&&l},{externalFieldName:"compression_algorithm",formControlName:"algorithm",editable:!0},{externalFieldName:"compression_min_blob_size",formControlName:"minBlobSize",replaceFn:this.formatter.toBytes,editable:!0,resetValue:0},{externalFieldName:"compression_max_blob_size",formControlName:"maxBlobSize",replaceFn:this.formatter.toBytes,editable:!0,resetValue:0},{externalFieldName:"compression_required_ratio",formControlName:"ratio",editable:!0,resetValue:0}]):this.editing&&this.assignFormFields(l,[{externalFieldName:"compression_mode",formControlName:"mode",editable:!0,replaceFn:()=>"unset"},{externalFieldName:"srcpool",formControlName:"name",editable:!0,replaceFn:()=>this.data.pool.pool_name}]));const n=this.data.applications.selected;(n.length>0||this.editing)&&(l.application_metadata=n),this.isReplicated&&!i.isEmpty(this.currentConfigurationValues)&&(l.configuration=this.currentConfigurationValues),this.triggerApiTask(l)}assignFormFields(l,n){n.forEach(n=>this.assignFormField(l,n))}assignFormField(l,{externalFieldName:n,formControlName:e,attr:u,replaceFn:t,editable:a,resetValue:o}){if(this.editing&&(!a||this.form.get(e).pristine))return;const s=this.form.getValue(e);let r=t?t(s):u?i.get(s,u):s;if(!s||!r){if(!a||i.isUndefined(o))return;r=o}l[n]=r}triggerApiTask(l){this.taskWrapper.wrapTaskAroundCall({task:new R.a("pool/"+(this.editing?t.e.EDIT:t.e.CREATE),{pool_name:l.hasOwnProperty("srcpool")?l.srcpool:l.pool}),call:this.poolService[this.editing?t.e.UPDATE:t.e.CREATE](l)}).subscribe(void 0,l=>{i.isObject(l.error)&&"34"===l.error.code&&this.form.get("pgNum").setErrors({34:!0}),this.form.setErrors({cdSubmitButton:!0})},()=>this.router.navigate(["/pool"]))}appSelection(){this.form.get("name").updateValueAndValidity({emitEvent:!1,onlySelf:!0})}}var q=e("MuvH"),x=e("+fVR"),P=e("uIqm"),F=e("x38r"),A=e("yJti"),B=e("vCyI"),O=e("o4+5"),L=e("VTlA"),z=e("EgGo"),U=e("d+Og");class M{constructor(l){this.pool_name=l}}const j=new z.a("pool");class G extends x.a{constructor(l,n,e,u,t,a,o,s,r,d,c){super(),this.poolService=l,this.taskWrapper=n,this.authStorageService=e,this.taskListService=u,this.modalService=t,this.i18n=a,this.pgCategoryService=o,this.dimlessPipe=s,this.urlBuilder=r,this.configurationService=d,this.actionLabels=c,this.selection=new B.a,this.executingTasks=[],this.cacheTiers=[],this.monAllowPoolDelete=!1,this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{permission:"create",icon:h.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE},{permission:"update",icon:h.a.edit,routerLink:()=>this.urlBuilder.getEdit(encodeURIComponent(this.selection.first().pool_name)),name:this.actionLabels.EDIT},{permission:"delete",icon:h.a.destroy,click:()=>this.deletePoolModal(),name:this.actionLabels.DELETE,disable:this.getDisableDesc.bind(this)}],this.permissions.configOpt.read&&this.configurationService.get("mon_allow_pool_delete").subscribe(l=>{if(i.has(l,"value")){const n=i.find(l.value,l=>"mon"===l.section)||{value:!1};this.monAllowPoolDelete="true"===n.value}})}ngOnInit(){const l=(l,n,e)=>i.get(n,l)>i.get(e,l)?1:-1;this.columns=[{prop:"pool_name",name:this.i18n("Name"),flexGrow:4,cellTransformation:F.a.executing},{prop:"type",name:this.i18n("Type"),flexGrow:2},{prop:"application_metadata",name:this.i18n("Applications"),flexGrow:3},{prop:"pg_status",name:this.i18n("PG Status"),flexGrow:3,cellClass:({row:l,column:n,value:e})=>this.getPgStatusCellClass(l,n,e)},{prop:"size",name:this.i18n("Replica Size"),flexGrow:2,cellClass:"text-right"},{prop:"last_change",name:this.i18n("Last Change"),flexGrow:2,cellClass:"text-right"},{prop:"erasure_code_profile",name:this.i18n("Erasure Coded Profile"),flexGrow:2},{prop:"crush_rule",name:this.i18n("Crush Ruleset"),flexGrow:3},{name:this.i18n("Usage"),prop:"usage",cellTemplate:this.poolUsageTpl,flexGrow:3},{prop:"stats.rd_bytes.rates",name:this.i18n("Read bytes"),comparator:(n,e,u,t)=>l("stats.rd_bytes.latest",u,t),cellTransformation:F.a.sparkline,flexGrow:3},{prop:"stats.wr_bytes.rates",name:this.i18n("Write bytes"),comparator:(n,e,u,t)=>l("stats.wr_bytes.latest",u,t),cellTransformation:F.a.sparkline,flexGrow:3},{prop:"stats.rd.rate",name:this.i18n("Read ops"),flexGrow:1,pipe:this.dimlessPipe,cellTransformation:F.a.perSecond},{prop:"stats.wr.rate",name:this.i18n("Write ops"),flexGrow:1,pipe:this.dimlessPipe,cellTransformation:F.a.perSecond}],this.taskListService.init(()=>this.poolService.getList(),void 0,l=>this.pools=this.transformPoolsData(l),()=>{this.table.reset(),this.viewCacheStatusList=[{status:A.a.ValueException}]},l=>l.name.startsWith("pool/"),(l,n)=>n.metadata.pool_name===l.pool_name,{default:l=>new M(l.pool_name)})}updateSelection(l){this.selection=l}deletePoolModal(){const l=this.selection.first().pool_name;this.modalRef=this.modalService.show(g.a,{initialState:{itemDescription:"Pool",itemNames:[l],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new R.a("pool/"+t.e.DELETE,{pool_name:l}),call:this.poolService.delete(l)})}})}getPgStatusCellClass(l,n,e){return{"text-right":!0,["pg-"+this.pgCategoryService.getTypeByStates(e)]:!0}}transformPoolsData(l){const n=["bytes_used","max_avail","avail_raw","percent_used","rd_bytes","wr_bytes","rd","wr"],e={latest:0,rate:0,rates:[]};return i.forEach(l,l=>{l.pg_status=this.transformPgStatus(l.pg_status);const u={};i.forEach(n,n=>{u[n]=l.stats&&l.stats[n]?l.stats[n]:e}),l.stats=u,l.usage=u.percent_used.latest,l.cdExecuting||l.pg_num+l.pg_placement_num===l.pg_num_target+l.pg_placement_num_target||(l.cdExecuting="Updating"),["rd_bytes","wr_bytes"].forEach(n=>{l.stats[n].rates=l.stats[n].rates.map(l=>l[1])}),l.cdIsBinary=!0}),l}transformPgStatus(l){const n=[];return i.forEach(l,(l,e)=>{n.push(`${l} ${e}`)}),n.join(", ")}getSelectionTiers(){if(void 0!==this.expandedRow){const l=this.expandedRow.tiers;this.cacheTiers=this.pools.filter(n=>l.includes(n.pool))}}getDisableDesc(){return!this.selection||!this.selection.hasSelection||!this.monAllowPoolDelete&&this.i18n("Pool deletion is disabled by the mon_allow_pool_delete configuration setting.")}setExpandedRow(l){super.setExpandedRow(l),this.getSelectionTiers()}}class ${}const K={breadcrumbs:t.a.CREATE},J={breadcrumbs:t.a.EDIT};class W{}var H=e("iutN"),Y=e("MdoF"),Z=e("ES0t"),X=e("Xg1U"),Q=e("z5nN"),ll=e("pMnS"),nl=e("EEJc"),el=e("PEr+"),ul=e("a40w"),tl=e("hfeG"),al=e("QUzE"),il=e("E7j4"),ol=e("xvu0"),sl=e("RIVN"),rl=e("nP0W"),dl=e("VBM6"),cl=e("atuK"),ml=e("JIi+"),fl=e("0BYw"),gl=e("3IYD"),pl=e("I4Qz"),hl=e("0rTx"),vl=e("lz+O"),bl=e("u2XS"),Cl=e("nhAp"),Rl=e("l7Jr"),Il=e("bUo2"),El=e("SVse"),Nl=e("8xTl"),yl=e("ajRT"),Vl=e("+gVj"),wl=e("mXUL"),Tl=e("IZUe"),_l=e("ANnk"),Sl=e("f/UV"),Dl=e("4HWh"),kl=e("p4Cf"),ql=e("gp3X"),xl=e("sb0X"),Pl=e("KVJa"),Fl=e("Z21x"),Al=e("LqlI"),Bl=u["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ol(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Ll(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The name can only consist of alphanumeric characters, dashes and underscores."]))],null,null)}function zl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The chosen erasure code profile name is already in use."]))],null,null)}function Ul(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Ml(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit.name)}))}function jl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Gl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function $l(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," ( "," ) "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit,n.component.failureDomains[n.context.$implicit].length)}))}function Kl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Jl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Wl(l){return u["ɵvid"](0,[u["ɵpid"](0,El.TitleCasePipe,[]),u["ɵpid"](0,Nl.a,[]),(l()(),u["ɵeld"](2,0,null,null,119,"cd-modal",[],null,null,null,nl.c,nl.b)),u["ɵdid"](3,49152,null,0,yl.a,[],{modalRef:[0,"modalRef"]},null),(l()(),u["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),u["ɵted"](5,null,[""," ",""])),u["ɵppd"](6,1),u["ɵppd"](7,1),(l()(),u["ɵeld"](8,0,null,1,113,null,null,null,null,null,null,null)),(l()(),u["ɵeld"](9,0,null,null,112,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var t=!0;return"submit"===n&&(t=!1!==u["ɵnov"](l,11).onSubmit(e)&&t),"reset"===n&&(t=!1!==u["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==u["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),u["ɵdid"](10,16384,null,0,a.G,[],null,null),u["ɵdid"](11,540672,[["frm",4]],0,a.l,[[8,null],[8,null]],{form:[0,"form"]},null),u["ɵprd"](2048,null,a.d,null,[a.l]),u["ɵdid"](13,16384,null,0,a.s,[[4,a.d]],null,null),u["ɵdid"](14,16384,null,0,Vl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),u["ɵeld"](15,0,null,null,98,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),u["ɵeld"](16,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](17,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,1,{FormControlNames:1}),u["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),u["ɵeld"](20,0,null,0,3,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),u["ɵeld"](21,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Name"])),(l()(),u["ɵeld"](23,0,null,null,0,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵeld"](24,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](25,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,28)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,28).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,28)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,28)._compositionEnd(e.target.value)&&t),t}),null,null)),u["ɵdid"](26,4210688,null,0,Tl.a,[u.ElementRef],{autofocus:[0,"autofocus"]},null),u["ɵdid"](27,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](28,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),u["ɵdid"](30,671744,[[1,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](32,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](33,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ol)),u["ɵdid"](35,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ll)),u["ɵdid"](37,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,zl)),u["ɵdid"](39,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](40,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](41,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,3,{FormControlNames:1}),u["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),u["ɵeld"](44,0,null,0,5,"label",[["class","cd-col-form-label"],["for","root"]],null,null,null,null,null)),(l()(),u["ɵeld"](45,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Root"])),(l()(),u["ɵeld"](47,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](48,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](49,0,null,null,0,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵeld"](50,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](51,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","root"],["id","root"],["name","root"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,53).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,53).onTouched()&&t),t}),null,null)),u["ɵdid"](52,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](53,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](55,671744,[[3,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](57,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](58,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ul)),u["ɵdid"](60,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ml)),u["ɵdid"](62,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,jl)),u["ɵdid"](64,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](65,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](66,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,5,{FormControlNames:1}),u["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),u["ɵeld"](69,0,null,0,5,"label",[["class","cd-col-form-label"],["for","failure_domain"]],null,null,null,null,null)),(l()(),u["ɵeld"](70,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Failure domain type"])),(l()(),u["ɵeld"](72,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](73,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](74,0,null,null,0,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵeld"](75,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](76,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","failure_domain"],["id","failure_domain"],["name","failure_domain"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,78).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,78).onTouched()&&t),t}),null,null)),u["ɵdid"](77,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](78,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](80,671744,[[5,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](82,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](83,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Gl)),u["ɵdid"](85,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,$l)),u["ɵdid"](87,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Kl)),u["ɵdid"](89,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](90,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](91,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,7,{FormControlNames:1}),u["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),u["ɵeld"](94,0,null,0,4,"label",[["class","cd-col-form-label"],["for","device_class"]],null,null,null,null,null)),(l()(),u["ɵeld"](95,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Device class"])),(l()(),u["ɵeld"](97,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](98,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](99,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](100,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","device_class"],["id","device_class"],["name","device_class"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,102).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,102).onTouched()&&t),t}),null,null)),u["ɵdid"](101,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](102,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](104,671744,[[7,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](106,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](107,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](108,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](109,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](110,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Let Ceph decide"])),(l()(),u["ɵand"](16777216,null,null,1,null,Jl)),u["ɵdid"](113,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](114,0,null,null,7,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),u["ɵeld"](115,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var u=!0;return"submitAction"===n&&(u=!1!==l.component.onSubmit()&&u),u}),ql.b,ql.a)),u["ɵdid"](116,114688,null,0,xl.a,[u.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),u["ɵted"](117,0,[""," ",""])),u["ɵppd"](118,1),u["ɵppd"](119,1),(l()(),u["ɵeld"](120,0,null,null,1,"cd-back-button",[],null,null,null,Pl.b,Pl.a)),u["ɵdid"](121,49152,null,0,Fl.a,[El.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.bsModalRef),l(n,11,0,e.form),l(n,14,0,e.form),l(n,17,0),l(n,26,0,""),l(n,30,0,"name"),l(n,33,0,"name"),l(n,35,0,e.form.showError("name",u["ɵnov"](n,11),"required")),l(n,37,0,e.form.showError("name",u["ɵnov"](n,11),"pattern")),l(n,39,0,e.form.showError("name",u["ɵnov"](n,11),"uniqueName")),l(n,41,0),l(n,48,0,e.tooltips.root),l(n,55,0,"root"),l(n,58,0,"root"),l(n,60,0,!e.buckets),l(n,62,0,e.buckets),l(n,64,0,e.form.showError("root",u["ɵnov"](n,11),"required")),l(n,66,0),l(n,73,0,e.tooltips.failure_domain),l(n,80,0,"failure_domain"),l(n,83,0,"failure_domain"),l(n,85,0,!e.failureDomains),l(n,87,0,e.failureDomainKeys),l(n,89,0,e.form.showError("failure_domain",u["ɵnov"](n,11),"required")),l(n,91,0),l(n,98,0,e.tooltips.device_class),l(n,104,0,"device_class"),l(n,107,0,"device_class"),l(n,109,0,""),l(n,110,0,""),l(n,113,0,e.devices),l(n,116,0,u["ɵnov"](n,11)),l(n,121,0,e.bsModalRef.hide)}),(function(l,n){var e=n.component,t=u["ɵunv"](n,5,0,l(n,6,0,u["ɵnov"](n,0),e.action)),a=u["ɵunv"](n,5,1,l(n,7,0,u["ɵnov"](n,1),e.resource));l(n,5,0,t,a),l(n,9,0,u["ɵnov"](n,13).ngClassUntouched,u["ɵnov"](n,13).ngClassTouched,u["ɵnov"](n,13).ngClassPristine,u["ɵnov"](n,13).ngClassDirty,u["ɵnov"](n,13).ngClassValid,u["ɵnov"](n,13).ngClassInvalid,u["ɵnov"](n,13).ngClassPending),l(n,16,0,u["ɵnov"](n,17).hasErrors,u["ɵnov"](n,17).hasSuccess),l(n,25,0,u["ɵnov"](n,32).ngClassUntouched,u["ɵnov"](n,32).ngClassTouched,u["ɵnov"](n,32).ngClassPristine,u["ɵnov"](n,32).ngClassDirty,u["ɵnov"](n,32).ngClassValid,u["ɵnov"](n,32).ngClassInvalid,u["ɵnov"](n,32).ngClassPending,u["ɵnov"](n,33).validClass,u["ɵnov"](n,33).invalidClass),l(n,40,0,u["ɵnov"](n,41).hasErrors,u["ɵnov"](n,41).hasSuccess),l(n,51,0,u["ɵnov"](n,57).ngClassUntouched,u["ɵnov"](n,57).ngClassTouched,u["ɵnov"](n,57).ngClassPristine,u["ɵnov"](n,57).ngClassDirty,u["ɵnov"](n,57).ngClassValid,u["ɵnov"](n,57).ngClassInvalid,u["ɵnov"](n,57).ngClassPending,u["ɵnov"](n,58).validClass,u["ɵnov"](n,58).invalidClass),l(n,65,0,u["ɵnov"](n,66).hasErrors,u["ɵnov"](n,66).hasSuccess),l(n,76,0,u["ɵnov"](n,82).ngClassUntouched,u["ɵnov"](n,82).ngClassTouched,u["ɵnov"](n,82).ngClassPristine,u["ɵnov"](n,82).ngClassDirty,u["ɵnov"](n,82).ngClassValid,u["ɵnov"](n,82).ngClassInvalid,u["ɵnov"](n,82).ngClassPending,u["ɵnov"](n,83).validClass,u["ɵnov"](n,83).invalidClass),l(n,90,0,u["ɵnov"](n,91).hasErrors,u["ɵnov"](n,91).hasSuccess),l(n,100,0,u["ɵnov"](n,106).ngClassUntouched,u["ɵnov"](n,106).ngClassTouched,u["ɵnov"](n,106).ngClassPristine,u["ɵnov"](n,106).ngClassDirty,u["ɵnov"](n,106).ngClassValid,u["ɵnov"](n,106).ngClassInvalid,u["ɵnov"](n,106).ngClassPending,u["ɵnov"](n,107).validClass,u["ɵnov"](n,107).invalidClass);var i=u["ɵunv"](n,117,0,l(n,118,0,u["ɵnov"](n,0),e.action)),o=u["ɵunv"](n,117,1,l(n,119,0,u["ɵnov"](n,1),e.resource));l(n,117,0,i,o)}))}function Hl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-crush-rule-form-modal",[],null,null,null,Wl,Bl)),u["ɵdid"](1,114688,null,0,w,[V.a,Al.a,y.a,d,s.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var Yl=u["ɵccf"]("cd-crush-rule-form-modal",w,Hl,{},{submitAction:"submitAction"},[]),Zl=u["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Xl(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Ql(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The name can only consist of alphanumeric characters, dashes and underscores."]))],null,null)}function ln(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The chosen erasure code profile name is already in use."]))],null,null)}function nn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function en(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function un(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function tn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function an(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 2."]))],null,null)}function on(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["Chunks (k+m) have exceeded the available OSDs of ","."]))],null,(function(l,n){l(n,1,0,n.component.deviceCount)}))}function sn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["For an equal distribution k has to be a multiple of (k+m)/l."]))],null,null)}function rn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["K has to be equal to or greater than m in order to recover data correctly through c."]))],null,null)}function dn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["Distribution factor: ",""]))],null,(function(l,n){l(n,1,0,n.component.lrcMultiK)}))}function cn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function mn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 1."]))],null,null)}function fn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["Chunks (k+m) have exceeded the available OSDs of ","."]))],null,(function(l,n){l(n,1,0,n.component.deviceCount)}))}function gn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 1."]))],null,null)}function pn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["C has to be equal to or lower than m as m defines the amount of chunks that can be used."]))],null,null)}function hn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,9,{FormControlNames:1}),u["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","c"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Durability estimator (c)"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,8,"input",[["class","form-control"],["formControlName","c"],["id","c"],["name","c"],["placeholder","Coding chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,12)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,12)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,12)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,13).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](13,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](15,671744,[[9,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](17,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](18,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,gn)),u["ɵdid"](20,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,pn)),u["ɵdid"](22,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.shec.c),l(n,15,0,"c"),l(n,18,0,"c"),l(n,20,0,e.form.showError("c",u["ɵnov"](n.parent,11),"min")),l(n,22,0,e.form.showError("c",u["ɵnov"](n.parent,11),"cGreaterM"))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,17).ngClassUntouched,u["ɵnov"](n,17).ngClassTouched,u["ɵnov"](n,17).ngClassPristine,u["ɵnov"](n,17).ngClassDirty,u["ɵnov"](n,17).ngClassValid,u["ɵnov"](n,17).ngClassInvalid,u["ɵnov"](n,17).ngClassPending,u["ɵnov"](n,18).validClass,u["ɵnov"](n,18).invalidClass)}))}function vn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["D is automatically updated on k and m changes"]))],null,null)}function bn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["D can be set from "," to ",""]))],null,(function(l,n){var e=n.component;l(n,1,0,e.getDMin(),e.getDMax())}))}function Cn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["D can only be set to ",""]))],null,(function(l,n){l(n,1,0,n.component.getDMax())}))}function Rn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,bn)),u["ɵdid"](2,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Cn)),u["ɵdid"](4,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](0,null,null,0))],(function(l,n){var e=n.component;l(n,2,0,e.getDMin()<e.getDMax()),l(n,4,0,e.getDMin()===e.getDMax())}),null)}function In(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["D has to be greater than k (",")."]))],null,(function(l,n){l(n,1,0,n.component.getDMin())}))}function En(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["D has to be lower than k + m (",")."]))],null,(function(l,n){l(n,1,0,n.component.getDMax())}))}function Nn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,32,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,11,{FormControlNames:1}),u["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","d"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Helper chunks (d)"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,23,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,14,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),u["ɵeld"](11,0,null,null,8,"input",[["class","form-control"],["formControlName","d"],["id","d"],["name","d"],["placeholder","Helper chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,13)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,13)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,14).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,14).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,14).onTouched()&&t),t}),null,null)),u["ɵdid"](12,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](13,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](14,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](16,671744,[[11,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](18,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](19,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](20,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),u["ɵeld"](21,0,null,null,3,"button",[["class","btn btn-light"],["id","d-calc-btn"],["ngbTooltip","Set d manually or use the plugin's default calculation that maximizes d."],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.toggleDCalc()&&u),u}),null,null)),(l()(),u["ɵeld"](22,0,null,null,2,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](24,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,vn)),u["ɵdid"](26,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Rn)),u["ɵdid"](28,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,In)),u["ɵdid"](30,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,En)),u["ɵdid"](32,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.clay.d),l(n,16,0,"d"),l(n,19,0,"d"),l(n,24,0,e.dCalc?e.icons.unlock:e.icons.lock),l(n,26,0,e.dCalc),l(n,28,0,!e.dCalc),l(n,30,0,e.form.showError("d",u["ɵnov"](n.parent,11),"dMin")),l(n,32,0,e.form.showError("d",u["ɵnov"](n.parent,11),"dMax"))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,11,0,u["ɵnov"](n,18).ngClassUntouched,u["ɵnov"](n,18).ngClassTouched,u["ɵnov"](n,18).ngClassPristine,u["ɵnov"](n,18).ngClassDirty,u["ɵnov"](n,18).ngClassValid,u["ɵnov"](n,18).ngClassInvalid,u["ɵnov"](n,18).ngClassPending,u["ɵnov"](n,19).validClass,u["ɵnov"](n,19).invalidClass)}))}function yn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Vn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 1."]))],null,null)}function wn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Can't split up chunks (k+m) correctly with the current locality."]))],null,null)}function Tn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,13,{FormControlNames:1}),u["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","l"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Locality (l)"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,8,"input",[["class","form-control"],["formControlName","l"],["id","l"],["name","l"],["placeholder","Coding chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,12)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,12)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,12)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,13).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](13,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](15,671744,[[13,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](17,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](18,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,yn)),u["ɵdid"](20,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Vn)),u["ɵdid"](22,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,wn)),u["ɵdid"](24,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](25,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](26,null,["Locality groups: ",""]))],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.lrc.l),l(n,15,0,"l"),l(n,18,0,"l"),l(n,20,0,e.form.showError("l",u["ɵnov"](n.parent,11),"required")),l(n,22,0,e.form.showError("l",u["ɵnov"](n.parent,11),"min")),l(n,24,0,e.form.showError("l",u["ɵnov"](n.parent,11),"unequal"))}),(function(l,n){var e=n.component;l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,17).ngClassUntouched,u["ɵnov"](n,17).ngClassTouched,u["ɵnov"](n,17).ngClassPristine,u["ɵnov"](n,17).ngClassDirty,u["ɵnov"](n,17).ngClassValid,u["ɵnov"](n,17).ngClassInvalid,u["ɵnov"](n,17).ngClassPending,u["ɵnov"](n,18).validClass,u["ɵnov"](n,18).invalidClass),l(n,26,0,e.lrcGroups)}))}function _n(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Sn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," ( "," ) "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit,n.component.failureDomains[n.context.$implicit].length)}))}function Dn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function kn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["None"]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function qn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," ( "," ) "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit,n.component.failureDomains[n.context.$implicit].length)}))}function xn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,17,{FormControlNames:1}),u["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","crushLocality"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush Locality"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","crushLocality"],["id","crushLocality"],["name","crushLocality"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,12).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](14,671744,[[17,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](16,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](17,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Dn)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,kn)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,qn)),u["ɵdid"](23,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.lrc.crushLocality),l(n,14,0,"crushLocality"),l(n,17,0,"crushLocality"),l(n,19,0,!e.failureDomains),l(n,21,0,e.failureDomainKeys.length>0),l(n,23,0,e.failureDomainKeys)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,16).ngClassUntouched,u["ɵnov"](n,16).ngClassTouched,u["ɵnov"](n,16).ngClassPristine,u["ɵnov"](n,16).ngClassDirty,u["ɵnov"](n,16).ngClassValid,u["ɵnov"](n,16).ngClassInvalid,u["ɵnov"](n,16).ngClassPending,u["ɵnov"](n,17).validClass,u["ɵnov"](n,17).invalidClass)}))}function Pn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Fn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,19,{FormControlNames:1}),u["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","scalar_mds"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Scalar mds"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,10,"select",[["class","form-control custom-select"],["formControlName","scalar_mds"],["id","scalar_mds"],["name","scalar_mds"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,12).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](14,671744,[[19,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](16,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](17,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,2,null,Pn)),u["ɵdid"](19,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),u["ɵpad"](20,3)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.clay.scalar_mds),l(n,14,0,"scalar_mds"),l(n,17,0,"scalar_mds");var u=l(n,20,0,e.PLUGIN.JERASURE,e.PLUGIN.ISA,e.PLUGIN.SHEC);l(n,19,0,u)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,16).ngClassUntouched,u["ɵnov"](n,16).ngClassTouched,u["ɵnov"](n,16).ngClassPristine,u["ɵnov"](n,16).ngClassDirty,u["ɵnov"](n,16).ngClassValid,u["ɵnov"](n,16).ngClassInvalid,u["ɵnov"](n,16).ngClassPending,u["ɵnov"](n,17).validClass,u["ɵnov"](n,17).invalidClass)}))}function An(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Bn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,21,{FormControlNames:1}),u["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","technique"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Technique"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","technique"],["id","technique"],["name","technique"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,12).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](14,671744,[[21,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](16,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](17,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,An)),u["ɵdid"](19,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins[e.plugin].technique),l(n,14,0,"technique"),l(n,17,0,"technique"),l(n,19,0,e.techniques)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,16).ngClassUntouched,u["ɵnov"](n,16).ngClassTouched,u["ɵnov"](n,16).ngClassPristine,u["ɵnov"](n,16).ngClassDirty,u["ɵnov"](n,16).ngClassValid,u["ɵnov"](n,16).ngClassInvalid,u["ɵnov"](n,16).ngClassPending,u["ɵnov"](n,17).validClass,u["ɵnov"](n,17).invalidClass)}))}function On(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Must be equal to or greater than 1."]))],null,null)}function Ln(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,23,{FormControlNames:1}),u["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","packetSize"]],null,null,null,null,null)),(l()(),u["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Packetsize"])),(l()(),u["ɵeld"](7,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](8,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](9,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](10,0,null,null,8,"input",[["class","form-control"],["formControlName","packetSize"],["id","packetSize"],["name","packetSize"],["placeholder","Packetsize..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,12)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,12).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,12)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,12)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,13).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,13).onTouched()&&t),t}),null,null)),u["ɵdid"](11,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](12,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](13,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](15,671744,[[23,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](17,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](18,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,On)),u["ɵdid"](20,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,8,0,e.tooltips.plugins.jerasure.packetSize),l(n,15,0,"packetSize"),l(n,18,0,"packetSize"),l(n,20,0,e.form.showError("packetSize",u["ɵnov"](n.parent,11),"min"))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,10,0,u["ɵnov"](n,17).ngClassUntouched,u["ɵnov"](n,17).ngClassTouched,u["ɵnov"](n,17).ngClassPristine,u["ɵnov"](n,17).ngClassDirty,u["ɵnov"](n,17).ngClassValid,u["ɵnov"](n,17).ngClassInvalid,u["ɵnov"](n,17).ngClassPending,u["ɵnov"](n,18).validClass,u["ɵnov"](n,18).invalidClass)}))}function zn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Un(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit.name)}))}function Mn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function jn(l){return u["ɵvid"](0,[u["ɵpid"](0,El.TitleCasePipe,[]),u["ɵpid"](0,Nl.a,[]),(l()(),u["ɵeld"](2,0,null,null,226,"cd-modal",[],null,null,null,nl.c,nl.b)),u["ɵdid"](3,49152,null,0,yl.a,[],{modalRef:[0,"modalRef"]},null),(l()(),u["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),u["ɵted"](5,null,[""," ",""])),u["ɵppd"](6,1),u["ɵppd"](7,1),(l()(),u["ɵeld"](8,0,null,1,220,null,null,null,null,null,null,null)),(l()(),u["ɵeld"](9,0,null,null,219,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var t=!0;return"submit"===n&&(t=!1!==u["ɵnov"](l,11).onSubmit(e)&&t),"reset"===n&&(t=!1!==u["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==u["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),u["ɵdid"](10,16384,null,0,a.G,[],null,null),u["ɵdid"](11,540672,[["frm",4]],0,a.l,[[8,null],[8,null]],{form:[0,"form"]},null),u["ɵprd"](2048,null,a.d,null,[a.l]),u["ɵdid"](13,16384,null,0,a.s,[[4,a.d]],null,null),u["ɵdid"](14,16384,null,0,Vl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),u["ɵeld"](15,0,null,null,205,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),u["ɵeld"](16,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](17,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,1,{FormControlNames:1}),u["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),u["ɵeld"](20,0,null,0,1,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Name"])),(l()(),u["ɵeld"](22,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](23,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,26)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,26).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,26)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,26)._compositionEnd(e.target.value)&&t),t}),null,null)),u["ɵdid"](24,4210688,null,0,Tl.a,[u.ElementRef],{autofocus:[0,"autofocus"]},null),u["ɵdid"](25,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](26,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),u["ɵdid"](28,671744,[[1,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](30,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](31,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Xl)),u["ɵdid"](33,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ql)),u["ɵdid"](35,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ln)),u["ɵdid"](37,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](38,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](39,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,3,{FormControlNames:1}),u["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),u["ɵeld"](42,0,null,0,4,"label",[["class","cd-col-form-label"],["for","plugin"]],null,null,null,null,null)),(l()(),u["ɵeld"](43,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Plugin"])),(l()(),u["ɵeld"](45,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](46,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](47,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](48,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","plugin"],["id","plugin"],["name","plugin"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,50).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,50).onTouched()&&t),t}),null,null)),u["ɵdid"](49,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](50,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](52,671744,[[3,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](54,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](55,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,nn)),u["ɵdid"](57,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,en)),u["ɵdid"](59,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,un)),u["ɵdid"](61,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](62,0,null,null,30,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](63,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,5,{FormControlNames:1}),u["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),u["ɵeld"](66,0,null,0,4,"label",[["class","cd-col-form-label"],["for","k"]],null,null,null,null,null)),(l()(),u["ɵeld"](67,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Data chunks (k)"])),(l()(),u["ɵeld"](69,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](70,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](71,0,null,0,21,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](72,0,null,null,8,"input",[["class","form-control"],["formControlName","k"],["id","k"],["name","k"],["ng-model","$ctrl.erasureCodeProfile.k"],["placeholder","Data chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,74)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,74).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,74)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,74)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,75).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,75).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,75).onTouched()&&t),t}),null,null)),u["ɵdid"](73,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](74,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](75,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](77,671744,[[5,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](79,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](80,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,tn)),u["ɵdid"](82,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,an)),u["ɵdid"](84,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,on)),u["ɵdid"](86,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,sn)),u["ɵdid"](88,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,rn)),u["ɵdid"](90,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,dn)),u["ɵdid"](92,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](93,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](94,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,7,{FormControlNames:1}),u["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),u["ɵeld"](97,0,null,0,4,"label",[["class","cd-col-form-label"],["for","m"]],null,null,null,null,null)),(l()(),u["ɵeld"](98,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Coding chunks (m)"])),(l()(),u["ɵeld"](100,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](101,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](102,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](103,0,null,null,8,"input",[["class","form-control"],["formControlName","m"],["id","m"],["name","m"],["placeholder","Coding chunks..."],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,105)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,105).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,105)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,105)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,106).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,106).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,106).onTouched()&&t),t}),null,null)),u["ɵdid"](104,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](105,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](106,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](108,671744,[[7,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](110,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](111,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,cn)),u["ɵdid"](113,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,mn)),u["ɵdid"](115,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,fn)),u["ɵdid"](117,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,hn)),u["ɵdid"](119,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Nn)),u["ɵdid"](121,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Tn)),u["ɵdid"](123,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](124,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](125,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,15,{FormControlNames:1}),u["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),u["ɵeld"](128,0,null,0,4,"label",[["class","cd-col-form-label"],["for","crushFailureDomain"]],null,null,null,null,null)),(l()(),u["ɵeld"](129,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush failure domain"])),(l()(),u["ɵeld"](131,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](132,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](133,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](134,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","crushFailureDomain"],["id","crushFailureDomain"],["name","crushFailureDomain"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,136).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,136).onTouched()&&t),t}),null,null)),u["ɵdid"](135,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](136,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](138,671744,[[15,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](140,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](141,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,_n)),u["ɵdid"](143,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Sn)),u["ɵdid"](145,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,xn)),u["ɵdid"](147,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Fn)),u["ɵdid"](149,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,2,null,Bn)),u["ɵdid"](151,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),u["ɵpad"](152,3),(l()(),u["ɵand"](16777216,null,null,1,null,Ln)),u["ɵdid"](154,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](155,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](156,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,25,{FormControlNames:1}),u["ɵqud"](603979776,26,{messagesBlock:0}),(l()(),u["ɵeld"](159,0,null,0,4,"label",[["class","cd-col-form-label"],["for","crushRoot"]],null,null,null,null,null)),(l()(),u["ɵeld"](160,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush root"])),(l()(),u["ɵeld"](162,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](163,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](164,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](165,0,null,null,11,"select",[["class","form-control custom-select"],["formControlName","crushRoot"],["id","crushRoot"],["name","crushRoot"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,167).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,167).onTouched()&&t),t}),null,null)),u["ɵdid"](166,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](167,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](169,671744,[[25,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](171,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](172,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,zn)),u["ɵdid"](174,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Un)),u["ɵdid"](176,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](177,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](178,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,27,{FormControlNames:1}),u["ɵqud"](603979776,28,{messagesBlock:0}),(l()(),u["ɵeld"](181,0,null,0,4,"label",[["class","cd-col-form-label"],["for","crushDeviceClass"]],null,null,null,null,null)),(l()(),u["ɵeld"](182,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush device class"])),(l()(),u["ɵeld"](184,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](185,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](186,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](187,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","crushDeviceClass"],["id","crushDeviceClass"],["name","crushDeviceClass"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,189).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,189).onTouched()&&t),t}),null,null)),u["ɵdid"](188,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](189,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](191,671744,[[27,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](193,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](194,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](195,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](196,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](197,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Let Ceph decide"])),(l()(),u["ɵand"](16777216,null,null,1,null,Mn)),u["ɵdid"](200,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](201,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](202,null,["Available OSDs: ",""])),(l()(),u["ɵeld"](203,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](204,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,29,{FormControlNames:1}),u["ɵqud"](603979776,30,{messagesBlock:0}),(l()(),u["ɵeld"](207,0,null,0,4,"label",[["class","cd-col-form-label"],["for","directory"]],null,null,null,null,null)),(l()(),u["ɵeld"](208,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Directory"])),(l()(),u["ɵeld"](210,0,null,null,1,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](211,49152,null,0,kl.a,[],{html:[0,"html"]},null),(l()(),u["ɵeld"](212,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](213,0,null,null,7,"input",[["class","form-control"],["formControlName","directory"],["id","directory"],["name","directory"],["placeholder","Path..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,215)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,215).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,215)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,215)._compositionEnd(e.target.value)&&t),t}),null,null)),u["ɵdid"](214,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](215,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),u["ɵdid"](217,671744,[[29,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](219,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](220,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](221,0,null,null,7,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),u["ɵeld"](222,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var u=!0;return"submitAction"===n&&(u=!1!==l.component.onSubmit()&&u),u}),ql.b,ql.a)),u["ɵdid"](223,114688,null,0,xl.a,[u.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),u["ɵted"](224,0,[""," ",""])),u["ɵppd"](225,1),u["ɵppd"](226,1),(l()(),u["ɵeld"](227,0,null,null,1,"cd-back-button",[],null,null,null,Pl.b,Pl.a)),u["ɵdid"](228,49152,null,0,Fl.a,[El.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var e=n.component;l(n,3,0,e.bsModalRef),l(n,11,0,e.form),l(n,14,0,e.form),l(n,17,0),l(n,24,0,""),l(n,28,0,"name"),l(n,31,0,"name"),l(n,33,0,e.form.showError("name",u["ɵnov"](n,11),"required")),l(n,35,0,e.form.showError("name",u["ɵnov"](n,11),"pattern")),l(n,37,0,e.form.showError("name",u["ɵnov"](n,11),"uniqueName")),l(n,39,0),l(n,46,0,e.tooltips.plugins[e.plugin].description),l(n,52,0,"plugin"),l(n,55,0,"plugin"),l(n,57,0,!e.plugins),l(n,59,0,e.plugins),l(n,61,0,e.form.showError("name",u["ɵnov"](n,11),"required")),l(n,63,0),l(n,70,0,e.tooltips.k),l(n,77,0,"k"),l(n,80,0,"k"),l(n,82,0,e.form.showError("k",u["ɵnov"](n,11),"required")),l(n,84,0,e.form.showError("k",u["ɵnov"](n,11),"min")),l(n,86,0,e.form.showError("k",u["ɵnov"](n,11),"max")),l(n,88,0,e.form.showError("k",u["ɵnov"](n,11),"unequal")),l(n,90,0,e.form.showError("k",u["ɵnov"](n,11),"kLowerM")),l(n,92,0,"lrc"===e.plugin),l(n,94,0),l(n,101,0,e.tooltips.m),l(n,108,0,"m"),l(n,111,0,"m"),l(n,113,0,e.form.showError("m",u["ɵnov"](n,11),"required")),l(n,115,0,e.form.showError("m",u["ɵnov"](n,11),"min")),l(n,117,0,e.form.showError("m",u["ɵnov"](n,11),"max")),l(n,119,0,"shec"===e.plugin),l(n,121,0,"clay"===e.plugin),l(n,123,0,e.plugin===e.PLUGIN.LRC),l(n,125,0),l(n,132,0,e.tooltips.crushFailureDomain),l(n,138,0,"crushFailureDomain"),l(n,141,0,"crushFailureDomain"),l(n,143,0,!e.failureDomains),l(n,145,0,e.failureDomainKeys),l(n,147,0,e.plugin===e.PLUGIN.LRC),l(n,149,0,e.PLUGIN.CLAY===e.plugin);var t=l(n,152,0,e.PLUGIN.JERASURE,e.PLUGIN.ISA,e.PLUGIN.CLAY).includes(e.plugin);l(n,151,0,t),l(n,154,0,e.plugin===e.PLUGIN.JERASURE),l(n,156,0),l(n,163,0,e.tooltips.crushRoot),l(n,169,0,"crushRoot"),l(n,172,0,"crushRoot"),l(n,174,0,!e.buckets),l(n,176,0,e.buckets),l(n,178,0),l(n,185,0,e.tooltips.crushDeviceClass),l(n,191,0,"crushDeviceClass"),l(n,194,0,"crushDeviceClass"),l(n,196,0,""),l(n,197,0,""),l(n,200,0,e.devices),l(n,204,0),l(n,211,0,e.tooltips.directory),l(n,217,0,"directory"),l(n,220,0,"directory"),l(n,223,0,u["ɵnov"](n,11)),l(n,228,0,e.bsModalRef.hide)}),(function(l,n){var e=n.component,t=u["ɵunv"](n,5,0,l(n,6,0,u["ɵnov"](n,0),e.action)),a=u["ɵunv"](n,5,1,l(n,7,0,u["ɵnov"](n,1),e.resource));l(n,5,0,t,a),l(n,9,0,u["ɵnov"](n,13).ngClassUntouched,u["ɵnov"](n,13).ngClassTouched,u["ɵnov"](n,13).ngClassPristine,u["ɵnov"](n,13).ngClassDirty,u["ɵnov"](n,13).ngClassValid,u["ɵnov"](n,13).ngClassInvalid,u["ɵnov"](n,13).ngClassPending),l(n,16,0,u["ɵnov"](n,17).hasErrors,u["ɵnov"](n,17).hasSuccess),l(n,23,0,u["ɵnov"](n,30).ngClassUntouched,u["ɵnov"](n,30).ngClassTouched,u["ɵnov"](n,30).ngClassPristine,u["ɵnov"](n,30).ngClassDirty,u["ɵnov"](n,30).ngClassValid,u["ɵnov"](n,30).ngClassInvalid,u["ɵnov"](n,30).ngClassPending,u["ɵnov"](n,31).validClass,u["ɵnov"](n,31).invalidClass),l(n,38,0,u["ɵnov"](n,39).hasErrors,u["ɵnov"](n,39).hasSuccess),l(n,48,0,u["ɵnov"](n,54).ngClassUntouched,u["ɵnov"](n,54).ngClassTouched,u["ɵnov"](n,54).ngClassPristine,u["ɵnov"](n,54).ngClassDirty,u["ɵnov"](n,54).ngClassValid,u["ɵnov"](n,54).ngClassInvalid,u["ɵnov"](n,54).ngClassPending,u["ɵnov"](n,55).validClass,u["ɵnov"](n,55).invalidClass),l(n,62,0,u["ɵnov"](n,63).hasErrors,u["ɵnov"](n,63).hasSuccess),l(n,72,0,u["ɵnov"](n,79).ngClassUntouched,u["ɵnov"](n,79).ngClassTouched,u["ɵnov"](n,79).ngClassPristine,u["ɵnov"](n,79).ngClassDirty,u["ɵnov"](n,79).ngClassValid,u["ɵnov"](n,79).ngClassInvalid,u["ɵnov"](n,79).ngClassPending,u["ɵnov"](n,80).validClass,u["ɵnov"](n,80).invalidClass),l(n,93,0,u["ɵnov"](n,94).hasErrors,u["ɵnov"](n,94).hasSuccess),l(n,103,0,u["ɵnov"](n,110).ngClassUntouched,u["ɵnov"](n,110).ngClassTouched,u["ɵnov"](n,110).ngClassPristine,u["ɵnov"](n,110).ngClassDirty,u["ɵnov"](n,110).ngClassValid,u["ɵnov"](n,110).ngClassInvalid,u["ɵnov"](n,110).ngClassPending,u["ɵnov"](n,111).validClass,u["ɵnov"](n,111).invalidClass),l(n,124,0,u["ɵnov"](n,125).hasErrors,u["ɵnov"](n,125).hasSuccess),l(n,134,0,u["ɵnov"](n,140).ngClassUntouched,u["ɵnov"](n,140).ngClassTouched,u["ɵnov"](n,140).ngClassPristine,u["ɵnov"](n,140).ngClassDirty,u["ɵnov"](n,140).ngClassValid,u["ɵnov"](n,140).ngClassInvalid,u["ɵnov"](n,140).ngClassPending,u["ɵnov"](n,141).validClass,u["ɵnov"](n,141).invalidClass),l(n,155,0,u["ɵnov"](n,156).hasErrors,u["ɵnov"](n,156).hasSuccess),l(n,165,0,u["ɵnov"](n,171).ngClassUntouched,u["ɵnov"](n,171).ngClassTouched,u["ɵnov"](n,171).ngClassPristine,u["ɵnov"](n,171).ngClassDirty,u["ɵnov"](n,171).ngClassValid,u["ɵnov"](n,171).ngClassInvalid,u["ɵnov"](n,171).ngClassPending,u["ɵnov"](n,172).validClass,u["ɵnov"](n,172).invalidClass),l(n,177,0,u["ɵnov"](n,178).hasErrors,u["ɵnov"](n,178).hasSuccess),l(n,187,0,u["ɵnov"](n,193).ngClassUntouched,u["ɵnov"](n,193).ngClassTouched,u["ɵnov"](n,193).ngClassPristine,u["ɵnov"](n,193).ngClassDirty,u["ɵnov"](n,193).ngClassValid,u["ɵnov"](n,193).ngClassInvalid,u["ɵnov"](n,193).ngClassPending,u["ɵnov"](n,194).validClass,u["ɵnov"](n,194).invalidClass),l(n,202,0,e.deviceCount),l(n,203,0,u["ɵnov"](n,204).hasErrors,u["ɵnov"](n,204).hasSuccess),l(n,213,0,u["ɵnov"](n,219).ngClassUntouched,u["ɵnov"](n,219).ngClassTouched,u["ɵnov"](n,219).ngClassPristine,u["ɵnov"](n,219).ngClassDirty,u["ɵnov"](n,219).ngClassValid,u["ɵnov"](n,219).ngClassInvalid,u["ɵnov"](n,219).ngClassPending,u["ɵnov"](n,220).validClass,u["ɵnov"](n,220).invalidClass);var i=u["ɵunv"](n,224,0,l(n,225,0,u["ɵnov"](n,0),e.action)),o=u["ɵunv"](n,224,1,l(n,226,0,u["ɵnov"](n,1),e.resource));l(n,224,0,i,o)}))}function Gn(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-erasure-code-profile-form-modal",[],null,null,null,jn,Zl)),u["ɵdid"](1,114688,null,0,_,[V.a,Al.a,y.a,c,s.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var $n=u["ɵccf"]("cd-erasure-code-profile-form-modal",_,Gn,{},{submitAction:"submitAction"},[]),Kn=e("w9WL"),Jn=e("yT6U"),Wn=e("4DD9"),Hn=e("iExv"),Yn=e("85J/"),Zn=e("+0ag"),Xn=e("IzCI"),Qn=e("Dwqy"),le=e("uYzU"),ne=e("FFMq"),ee=e("E2fk"),ue=e("a0VL"),te=e("nSDx"),ae=e("SB+Q"),ie=e("TYzs"),oe=e("BQkM"),se=e("dEH0"),re=e("G1/K"),de=e("TJUb"),ce=e("efK2"),me=e("Yrry"),fe=e("cUpR"),ge=e("CNMR"),pe=e("KOzp"),he=e("2uy1"),ve=e("z/SZ"),be=e("38Bd"),Ce=e("978R"),Re=e("FE24"),Ie=e("Avrn"),Ee=e("iInd"),Ne=e("2ZVE"),ye=e("ienR"),Ve=e("gk6K"),we=e("9Xeq"),Te=e("hrfs"),_e=e("yGOH"),Se=e("bxSN"),De=e("WF9J"),ke=e("V/fk"),qe=e("ChqD"),xe=e("PCNd"),Pe=e("zWsK"),Fe=e("kJI8"),Ae=e("kccj"),Be=e("yYhs"),Oe=e("k/xb"),Le=e("C6Ij"),ze=e("AWcq"),Ue=e("xSw7"),Me=e("GgAd"),je=e("a278"),Ge=e("insk"),$e=e("20UP"),Ke=e("pKUh"),Je=e("25BL"),We=e("NUGo"),He=e("S7zO"),Ye=e("EFGL"),Ze=e("aAWM"),Xe=e("o8EM"),Qe=e("sLuX"),lu=e("FSuO");e("jKX/");class nu{constructor(l,n){this.i18n=l,this.poolService=n,this.cacheTierColumns=[],this.cacheTierColumns=[{prop:"pool_name",name:this.i18n("Name"),flexGrow:3},{prop:"cache_mode",name:this.i18n("Cache Mode"),flexGrow:2},{prop:"cache_min_evict_age",name:this.i18n("Min Evict Age"),flexGrow:2},{prop:"cache_min_flush_age",name:this.i18n("Min Flush Age"),flexGrow:2},{prop:"target_max_bytes",name:this.i18n("Target Max Bytes"),flexGrow:2},{prop:"target_max_objects",name:this.i18n("Target Max Objects"),flexGrow:2}]}ngOnChanges(){this.selection&&this.poolService.getConfiguration(this.selection.pool_name).subscribe(l=>{this.selectedPoolConfiguration=l})}filterNonPoolData(l){return i.omit(l,["cdExecuting","cdIsBinary"])}}var eu=u["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function uu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](1,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","three"],["uid","-xyV8KCiz"]],null,null,null,je.b,je.a)),u["ɵdid"](3,638976,null,0,Ge.a,[fe.b,$e.a,s.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){var e=n.component;l(n,1,0,"Performance Details"),l(n,3,0,"ceph-pool-detail?var-pool_name="+e.selection.pool_name,"three","-xyV8KCiz")}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).id,u["ɵnov"](n,1).active,u["ɵnov"](n,1).addClass,u["ɵnov"](n,1).role,u["ɵnov"](n,1).ariaLabelledby)}))}function tu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"tab",[["heading","Configuration"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](1,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](2,0,null,null,1,"cd-rbd-configuration-table",[],null,null,null,Ye.b,Ye.a)),u["ɵdid"](3,638976,null,0,Ze.a,[N.a,Xe.a,s.a],{data:[0,"data"]},null)],(function(l,n){var e=n.component;l(n,1,0,"Configuration"),l(n,3,0,e.selectedPoolConfiguration)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).id,u["ɵnov"](n,1).active,u["ɵnov"](n,1).addClass,u["ɵnov"](n,1).role,u["ɵnov"](n,1).ariaLabelledby)}))}function au(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"tab",[["heading","Cache Tiers Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](1,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](2,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,Je.b,Je.a)),u["ɵdid"](3,2867200,null,0,P.a,[u.NgZone,u.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoSave:[3,"autoSave"]},null)],(function(l,n){var e=n.component;l(n,1,0,"Cache Tiers Details"),l(n,3,0,e.cacheTiers,e.cacheTierColumns,"flex",!1)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).id,u["ɵnov"](n,1).active,u["ɵnov"](n,1).addClass,u["ɵnov"](n,1).role,u["ɵnov"](n,1).ariaLabelledby)}))}function iu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,11,"tabset",[["cdTableDetail",""]],[[2,"tab-container",null]],null,null,Ke.b,Ke.a)),u["ɵdid"](1,180224,[[1,4],["tabsetChild",4]],0,Ne.e,[Ne.f,u.Renderer2,u.ElementRef],null,null),(l()(),u["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](3,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](4,0,null,null,1,"cd-table-key-value",[],null,null,null,Qe.b,Qe.a)),u["ɵdid"](5,638976,null,0,lu.a,[ue.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"]},null),(l()(),u["ɵand"](16777216,null,0,1,null,uu)),u["ɵdid"](7,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,0,1,null,tu)),u["ɵdid"](9,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,0,1,null,au)),u["ɵdid"](11,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,3,0,"Details"),l(n,5,0,e.filterNonPoolData(e.selection),!1,!0),l(n,7,0,e.permissions.grafana.read),l(n,9,0,"replicated"===e.selection.type),l(n,11,0,(null==e.selection.tiers?null:e.selection.tiers.length)>0)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).clazz),l(n,2,0,u["ɵnov"](n,3).id,u["ɵnov"](n,3).active,u["ɵnov"](n,3).addClass,u["ɵnov"](n,3).role,u["ɵnov"](n,3).ariaLabelledby)}))}function ou(l){return u["ɵvid"](0,[u["ɵqud"](671088640,1,{tabsetChild:0}),(l()(),u["ɵand"](16777216,null,null,1,null,iu)),u["ɵdid"](2,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,2,0,n.component.selection)}),null)}var su=e("ufoC"),ru=e("mSOc"),du=u["ɵcrt"]({encapsulation:0,styles:[[".pg-clean{color:#0b0}  .pg-working{color:#2b99a8}  .pg-warning{color:#ffc200}  .pg-unknown{color:red}"]],data:{}});function cu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,Le.b,Le.a)),u["ɵdid"](1,114688,null,0,ze.a,[],{status:[0,"status"],statusFor:[1,"statusFor"]},null)],(function(l,n){l(n,1,0,n.context.$implicit.status,n.context.$implicit.statusFor)}),null)}function mu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-usage-bar",[["decimals","2"]],null,null,null,Ue.b,Ue.a)),u["ɵdid"](1,573440,null,0,Me.a,[],{total:[0,"total"],used:[1,"used"],decimals:[2,"decimals"]},null)],(function(l,n){l(n,1,0,n.parent.context.row.stats.bytes_used.latest+n.parent.context.row.stats.avail_raw.latest,n.parent.context.row.stats.bytes_used.latest,"2")}),null)}function fu(l){return u["ɵvid"](0,[(l()(),u["ɵand"](16777216,null,null,1,null,mu)),u["ɵdid"](1,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,null==n.context.row.stats||null==n.context.row.stats.avail_raw?null:n.context.row.stats.avail_raw.latest)}),null)}function gu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](1,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","z99hzWtmk"]],null,null,null,je.b,je.a)),u["ɵdid"](3,638976,null,0,Ge.a,[fe.b,$e.a,s.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){l(n,1,0,"Overall Performance"),l(n,3,0,"ceph-pools-overview?","two","z99hzWtmk")}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).id,u["ɵnov"](n,1).active,u["ɵnov"](n,1).addClass,u["ɵnov"](n,1).role,u["ɵnov"](n,1).ariaLabelledby)}))}function pu(l){return u["ɵvid"](0,[u["ɵqud"](402653184,1,{table:0}),u["ɵqud"](402653184,2,{poolUsageTpl:0}),u["ɵqud"](671088640,3,{poolConfigurationSourceTpl:0}),(l()(),u["ɵeld"](3,0,null,null,14,"tabset",[],[[2,"tab-container",null]],null,null,Ke.b,Ke.a)),u["ɵdid"](4,180224,null,0,Ne.e,[Ne.f,u.Renderer2,u.ElementRef],null,null),(l()(),u["ɵeld"](5,0,null,0,10,"tab",[["heading","Pools List"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](6,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,cu)),u["ɵdid"](8,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](9,0,null,null,5,"cd-table",[["id","pool-list"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(l,n,e){var u=!0,t=l.component;return"setExpandedRow"===n&&(u=!1!==t.setExpandedRow(e)&&u),"updateSelection"===n&&(u=!1!==t.updateSelection(e)&&u),u}),Je.b,Je.a)),u["ɵdid"](10,2867200,[[1,4],["table",4]],0,P.a,[u.NgZone,u.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],selectionType:[3,"selectionType"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),u["ɵeld"](11,0,null,1,1,"cd-table-actions",[["class","table-actions"],["id","pool-list-actions"]],null,null,null,We.b,We.a)),u["ɵdid"](12,114688,null,0,He.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),u["ɵeld"](13,0,null,3,1,"cd-pool-details",[["cdTableDetail",""],["id","pool-list-details"]],null,null,null,ou,eu)),u["ɵdid"](14,573440,null,0,nu,[s.a,m.a],{selection:[0,"selection"],permissions:[1,"permissions"],cacheTiers:[2,"cacheTiers"]},null),(l()(),u["ɵand"](0,[[2,2],["poolUsageTpl",2]],null,0,null,fu)),(l()(),u["ɵand"](16777216,null,0,1,null,gu)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,6,0,"Pools List"),l(n,8,0,e.viewCacheStatusList),l(n,10,0,e.pools,e.columns,!0,"single"),l(n,12,0,e.permissions.pool,e.selection,e.tableActions),l(n,14,0,e.expandedRow,e.permissions,e.cacheTiers),l(n,17,0,e.permissions.grafana.read)}),(function(l,n){l(n,3,0,u["ɵnov"](n,4).clazz),l(n,5,0,u["ɵnov"](n,6).id,u["ɵnov"](n,6).active,u["ɵnov"](n,6).addClass,u["ɵnov"](n,6).role,u["ɵnov"](n,6).ariaLabelledby)}))}function hu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"cd-pool-list",[],null,null,null,pu,du)),u["ɵprd"](131584,null,L.a,L.a,[su.a,ru.a]),u["ɵprd"](256,null,z.a,j,[]),u["ɵdid"](3,114688,null,0,G,[m.a,y.a,E.a,L.a,Al.b,s.a,U.a,O.a,z.a,q.a,t.b],null,null)],(function(l,n){l(n,3,0)}),null)}var vu=u["ɵccf"]("cd-pool-list",G,hu,{},{},[]),bu=e("QC43"),Cu=e("XFyV"),Ru=e("i4WA"),Iu=e("6qls"),Eu=e("tz6c"),Nu=e("EmSq"),yu=e("pYKc"),Vu=e("ppaS"),wu=e("BH9v"),Tu=e("rFfW"),_u=u["ɵcrt"]({encapsulation:0,styles:[[".crush-rule-steps[_ngcontent-%COMP%]{margin-top:10px}"]],data:{}});function Su(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,bu.b,bu.a)),u["ɵdid"](1,49152,null,0,Cu.a,[],null,null),(l()(),u["ɵted"](-1,0,["Loading..."]))],null,null)}function Du(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function ku(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The chosen Ceph pool name is already in use."]))],null,null)}function qu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["It's not possible to create an RBD pool with '/' in the name. Please change the name or remove 'rbd' from the applications list."]))],null,null)}function xu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Pool name can only contain letters, numbers, '.', '-', '_' or '/'."]))],null,null)}function Pu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{value:[0,"value"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Fu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Au(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{value:[0,"value"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Bu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function Ou(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["At least one placement group is needed!"]))],null,null)}function Lu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Your cluster can't handle this many PGs. Please recalculate the PG amount needed."]))],null,null)}function zu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The current PGs settings were calculated for you, you should make sure the values suit your needs before submit."]))],null,null)}function Uu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,28,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,11,{FormControlNames:1}),u["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","pgNum"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Placement groups"])),(l()(),u["ɵeld"](6,0,null,0,22,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,10,"input",[["class","form-control"],["formControlName","pgNum"],["id","pgNum"],["min","1"],["name","pgNum"],["required",""],["type","number"]],[[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"focus"],[null,"blur"],[null,"input"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0,a=l.component;return"input"===n&&(t=!1!==u["ɵnov"](l,9)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,9)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),"focus"===n&&(t=0!=(a.externalPgChange=!1)&&t),"blur"===n&&(t=!1!==a.alignPgs()&&t),t}),null,null)),u["ɵdid"](8,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](9,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](10,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵdid"](11,16384,null,0,a.z,[],{required:[0,"required"]},null),u["ɵprd"](1024,null,a.o,(function(l){return[l]}),[a.z]),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](14,671744,[[11,4]],0,a.j,[[3,a.d],[6,a.o],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](16,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](17,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Bu)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ou)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Lu)),u["ɵdid"](23,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](24,0,null,null,2,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵeld"](25,0,null,null,1,"cd-doc",[["docText","Calculation help"],["section","pgs"]],null,null,null,Ru.b,Ru.a)),u["ɵdid"](26,114688,null,0,Iu.a,[Eu.a,s.a],{section:[0,"section"],docText:[1,"docText"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,zu)),u["ɵdid"](28,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,11,0,""),l(n,14,0,"pgNum"),l(n,17,0,"pgNum"),l(n,19,0,e.form.showError("pgNum",u["ɵnov"](n.parent.parent,2),"required")),l(n,21,0,e.form.showError("pgNum",u["ɵnov"](n.parent.parent,2),"min")),l(n,23,0,e.form.showError("pgNum",u["ɵnov"](n.parent.parent,2),"34")),l(n,26,0,"pgs","Calculation help"),l(n,28,0,e.externalPgChange)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,7,0,u["ɵnov"](n,11).required?"":null,u["ɵnov"](n,16).ngClassUntouched,u["ɵnov"](n,16).ngClassTouched,u["ɵnov"](n,16).ngClassPristine,u["ɵnov"](n,16).ngClassDirty,u["ɵnov"](n,16).ngClassValid,u["ɵnov"](n,16).ngClassInvalid,u["ɵnov"](n,16).ngClassPending,u["ɵnov"](n,17).validClass,u["ɵnov"](n,17).invalidClass)}))}function Mu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,5,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,4,"ul",[["class","list-inline"]],null,null,null,null,null)),(l()(),u["ɵeld"](2,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](3,null,["Minimum: ",""])),(l()(),u["ɵeld"](4,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](5,null,["Maximum: ",""]))],null,(function(l,n){var e=n.component;l(n,3,0,e.getMinSize()),l(n,5,0,e.getMaxSize())}))}function ju(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](1,null,["The size specified is out of range. A value from "," to "," is usable."]))],null,(function(l,n){var e=n.component;l(n,1,0,e.getMinSize(),e.getMaxSize())}))}function Gu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","text-warning-dark"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["A size of 1 will not create a replication of the object. The 'Replicated size' includes the object itself."]))],null,null)}function $u(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,13,{FormControlNames:1}),u["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","size"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Replicated size"])),(l()(),u["ɵeld"](6,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,8,"input",[["class","form-control"],["formControlName","size"],["id","size"],["name","size"],["type","number"]],[[8,"max",0],[8,"min",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,9)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,9)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](8,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](9,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](10,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](12,671744,[[13,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](14,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Mu)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ju)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Gu)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,12,0,"size"),l(n,15,0,"size"),l(n,17,0,e.form.showError("size",u["ɵnov"](n.parent.parent,2))),l(n,19,0,e.form.showError("size",u["ɵnov"](n.parent.parent,2))),l(n,21,0,1===e.form.getValue("size"))}),(function(l,n){var e=n.component;l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,7,1,[e.getMaxSize(),e.getMinSize(),u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass])}))}function Ku(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,15,{FormControlNames:1}),u["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Flags"])),(l()(),u["ɵeld"](6,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),u["ɵeld"](8,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","ecOverwrites"],["id","ec-overwrites"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.checked)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](9,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](10,16384,null,0,a.c,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.c]),u["ɵdid"](12,671744,[[15,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](14,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](16,0,null,null,1,"label",[["class","custom-control-label"],["for","ec-overwrites"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["EC Overwrites"]))],(function(l,n){l(n,1,0),l(n,12,0,"ecOverwrites"),l(n,15,0,"ecOverwrites")}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,8,0,u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass)}))}function Ju(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,23,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](2,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,9,{FormControlNames:1}),u["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),u["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label"],["for","pgAutoscaleMode"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["PG Autoscale"])),(l()(),u["ɵeld"](7,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](8,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","pgAutoscaleMode"],["id","pgAutoscaleMode"],["name","pgAutoscaleMode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](9,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](10,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](12,671744,[[9,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](14,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Au)),u["ɵdid"](17,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Uu)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,$u)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ku)),u["ɵdid"](23,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,2,0),l(n,12,0,"pgAutoscaleMode"),l(n,15,0,"pgAutoscaleMode"),l(n,17,0,e.pgAutoscaleModes),l(n,19,0,"on"!==e.form.getValue("pgAutoscaleMode")),l(n,21,0,e.isReplicated),l(n,23,0,e.info.is_all_bluestore&&e.isErasure)}),(function(l,n){l(n,1,0,u["ɵnov"](n,2).hasErrors,u["ɵnov"](n,2).hasSuccess),l(n,8,0,u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass)}))}function Wu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Hu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- No erasure code profile available --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Yu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- Select an erasure code profile --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Zu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit.name)}))}function Xu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.addErasureCodeProfile()&&u),u}),null,null)),(l()(),u["ɵeld"](1,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](3,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](4,1)],(function(l,n){var e=l(n,4,0,n.component.icons.add);l(n,3,0,e)}),null)}function Qu(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,16777216,null,null,5,"button",[["class","btn btn-light"],["tooltip","This profile can't be deleted as it is in use."],["triggers",""],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.deleteErasureCodeProfile()&&u),u}),null,null)),u["ɵdid"](1,212992,[[4,4],["ecpDeletionBtn",4]],0,Ce.c,[u.ViewContainerRef,ve.a,Ce.a,u.ElementRef,u.Renderer2,he.a],{tooltip:[0,"tooltip"],triggers:[1,"triggers"]},null),(l()(),u["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](4,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](5,1),(l()(),u["ɵand"](0,null,null,0))],(function(l,n){var e=n.component;l(n,1,0,"This profile can't be deleted as it is in use.","");var u=l(n,5,0,e.icons.trash);l(n,4,0,u)}),null)}function lt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Profile is not in use."]))],null,null)}function nt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.context.$implicit)}))}function et(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,2,"ul",[],null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,nt)),u["ɵdid"](2,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,2,0,n.component.ecpUsage)}),null)}function ut(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,12,"span",[["class","form-text text-muted"],["id","ecp-info-block"]],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,11,"tabset",[],[[2,"tab-container",null]],null,null,Ke.b,Ke.a)),u["ɵdid"](2,180224,[[3,4],["ecpInfoTabs",4]],0,Ne.e,[Ne.f,u.Renderer2,u.ElementRef],null,null),(l()(),u["ɵeld"](3,0,null,0,4,"tab",[["class","ecp-info"],["heading","Profile"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](4,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](5,0,null,null,2,"cd-table-key-value",[],null,null,null,Qe.b,Qe.a)),u["ɵdid"](6,638976,null,0,lu.a,[ue.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"],hideKeys:[3,"hideKeys"]},null),u["ɵpad"](7,1),(l()(),u["ɵeld"](8,0,null,0,4,"tab",[["class","used-by-pools"],["heading","Used by pools"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](9,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵand"](0,[["ecpIsNotUsed",2]],null,0,null,lt)),(l()(),u["ɵand"](16777216,null,null,1,null,et)),u["ɵdid"](12,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null)],(function(l,n){var e=n.component;l(n,4,0,"Profile");var t=e.form.getValue("erasureProfile"),a=l(n,7,0,"name");l(n,6,0,t,!1,!0,a),l(n,9,0,"Used by pools"),l(n,12,0,e.ecpUsage,u["ɵnov"](n,10))}),(function(l,n){l(n,1,0,u["ɵnov"](n,2).clazz),l(n,3,0,u["ɵnov"](n,4).id,u["ɵnov"](n,4).active,u["ɵnov"](n,4).addClass,u["ɵnov"](n,4).role,u["ɵnov"](n,4).ariaLabelledby),l(n,8,0,u["ɵnov"](n,9).id,u["ɵnov"](n,9).active,u["ɵnov"](n,9).addClass,u["ɵnov"](n,9).role,u["ɵnov"](n,9).ariaLabelledby)}))}function tt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,38,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,19,{FormControlNames:1}),u["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","erasureProfile"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Erasure code profile"])),(l()(),u["ɵeld"](6,0,null,0,32,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,29,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),u["ɵeld"](8,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","erasureProfile"],["id","erasureProfile"],["name","erasureProfile"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](9,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](10,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](12,671744,[[19,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](14,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Wu)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Hu)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Yu)),u["ɵdid"](21,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Zu)),u["ɵdid"](23,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](24,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),u["ɵeld"](25,0,null,null,7,"button",[["class","btn btn-light"],["id","ecp-info-button"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0,t=l.component;return"click"===n&&(u=0!=(t.data.erasureInfo=!t.data.erasureInfo)&&u),u}),null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](27,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),u["ɵpod"](28,{active:0}),(l()(),u["ɵeld"](29,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](31,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](32,1),(l()(),u["ɵand"](16777216,null,null,1,null,Xu)),u["ɵdid"](34,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Qu)),u["ɵdid"](36,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ut)),u["ɵdid"](38,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,12,0,"erasureProfile"),l(n,15,0,"erasureProfile"),l(n,17,0,!e.ecProfiles),l(n,19,0,e.ecProfiles&&0===e.ecProfiles.length),l(n,21,0,e.ecProfiles&&e.ecProfiles.length>0),l(n,23,0,e.ecProfiles);var u=l(n,28,0,e.data.erasureInfo);l(n,27,0,"btn btn-light",u);var t=l(n,32,0,e.icons.questionCircle);l(n,31,0,t),l(n,34,0,!e.editing),l(n,36,0,!e.editing),l(n,38,0,e.data.erasureInfo&&e.form.getValue("erasureProfile"))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess),l(n,8,0,u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass)}))}function at(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,21,{FormControlNames:1}),u["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","crushRule"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush ruleset"])),(l()(),u["ɵeld"](6,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["A new crush ruleset will be implicitly created."]))],(function(l,n){l(n,1,0)}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess)}))}function it(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["There are no rules."])),(l()(),u["ɵted"](-1,null,["  "]))],null,null)}function ot(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit.rule_name)}))}function st(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.addCrushRule()&&u),u}),null,null)),(l()(),u["ɵeld"](1,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](3,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](4,1)],(function(l,n){var e=l(n,4,0,n.component.icons.add);l(n,3,0,e)}),null)}function rt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,16777216,null,null,5,"button",[["class","btn btn-light"],["tooltip","This rule can't be deleted as it is in use."],["triggers",""],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0;return"click"===n&&(u=!1!==l.component.deleteCrushRule()&&u),u}),null,null)),u["ɵdid"](1,212992,[[2,4],["crushDeletionBtn",4]],0,Ce.c,[u.ViewContainerRef,ve.a,Ce.a,u.ElementRef,u.Renderer2,he.a],{tooltip:[0,"tooltip"],triggers:[1,"triggers"]},null),(l()(),u["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](4,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](5,1),(l()(),u["ɵand"](0,null,null,0))],(function(l,n){var e=n.component;l(n,1,0,"This rule can't be deleted as it is in use.","");var u=l(n,5,0,e.icons.trash);l(n,4,0,u)}),null)}function dt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.describeCrushStep(n.context.$implicit))}))}function ct(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Rule is not in use."]))],null,null)}function mt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(l()(),u["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.context.$implicit)}))}function ft(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,2,"ul",[],null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,mt)),u["ɵdid"](2,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,2,0,n.component.crushUsage)}),null)}function gt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,17,"span",[["class","form-text text-muted"],["id","crush-info-block"]],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,16,"tabset",[],[[2,"tab-container",null]],null,null,Ke.b,Ke.a)),u["ɵdid"](2,180224,[[1,4],["crushInfoTabs",4]],0,Ne.e,[Ne.f,u.Renderer2,u.ElementRef],null,null),(l()(),u["ɵeld"](3,0,null,0,4,"tab",[["class","crush-rule-info"],["heading","Crush rule"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](4,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](5,0,null,null,2,"cd-table-key-value",[],null,null,null,Qe.b,Qe.a)),u["ɵdid"](6,638976,null,0,lu.a,[ue.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"],hideKeys:[3,"hideKeys"]},null),u["ɵpad"](7,4),(l()(),u["ɵeld"](8,0,null,0,4,"tab",[["class","crush-rule-steps"],["heading","Crush steps"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](9,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵeld"](10,0,null,null,2,"ol",[],null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,dt)),u["ɵdid"](12,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](13,0,null,0,4,"tab",[["class","used-by-pools"],["heading","Used by pools"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),u["ɵdid"](14,212992,null,0,Ne.b,[Ne.e,u.ElementRef,u.Renderer2],{heading:[0,"heading"]},null),(l()(),u["ɵand"](0,[["ruleIsNotUsed",2]],null,0,null,ct)),(l()(),u["ɵand"](16777216,null,null,1,null,ft)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null)],(function(l,n){var e=n.component;l(n,4,0,"Crush rule");var t=e.form.getValue("crushRule"),a=l(n,7,0,"steps","ruleset","type","rule_name");l(n,6,0,t,!1,!1,a),l(n,9,0,"Crush steps"),l(n,12,0,e.form.get("crushRule").value.steps),l(n,14,0,"Used by pools"),l(n,17,0,e.crushUsage,u["ɵnov"](n,15))}),(function(l,n){l(n,1,0,u["ɵnov"](n,2).clazz),l(n,3,0,u["ɵnov"](n,4).id,u["ɵnov"](n,4).active,u["ɵnov"](n,4).addClass,u["ɵnov"](n,4).role,u["ɵnov"](n,4).ariaLabelledby),l(n,8,0,u["ɵnov"](n,9).id,u["ɵnov"](n,9).active,u["ɵnov"](n,9).addClass,u["ɵnov"](n,9).role,u["ɵnov"](n,9).ariaLabelledby),l(n,13,0,u["ɵnov"](n,14).id,u["ɵnov"](n,14).active,u["ɵnov"](n,14).addClass,u["ɵnov"](n,14).role,u["ɵnov"](n,14).ariaLabelledby)}))}function pt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["This field is required!"]))],null,null)}function ht(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The rule can't be used in the current cluster as it has too few OSDs to meet the minimum required OSD by this rule."]))],null,null)}function vt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,34,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,27,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),u["ɵeld"](2,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","crushRule"],["id","crushRule"],["name","crushSet"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,4).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,4).onTouched()&&t),t}),null,null)),u["ɵdid"](3,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](4,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](6,671744,[[23,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](8,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](9,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](10,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](11,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](12,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- Select a crush rule --"])),(l()(),u["ɵand"](16777216,null,null,1,null,ot)),u["ɵdid"](15,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](16,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),u["ɵeld"](17,0,null,null,7,"button",[["class","btn btn-light"],["id","crush-info-button"],["type","button"]],null,[[null,"click"]],(function(l,n,e){var u=!0,t=l.component;return"click"===n&&(u=0!=(t.data.crushInfo=!t.data.crushInfo)&&u),u}),null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](19,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),u["ɵpod"](20,{active:0}),(l()(),u["ɵeld"](21,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),u["ɵprd"](512,null,El["ɵNgClassImpl"],El["ɵNgClassR2Impl"],[u.IterableDiffers,u.KeyValueDiffers,u.ElementRef,u.Renderer2]),u["ɵdid"](23,278528,null,0,El.NgClass,[El["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),u["ɵpad"](24,1),(l()(),u["ɵand"](16777216,null,null,1,null,st)),u["ɵdid"](26,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,rt)),u["ɵdid"](28,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,gt)),u["ɵdid"](30,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,pt)),u["ɵdid"](32,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ht)),u["ɵdid"](34,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,6,0,"crushRule"),l(n,9,0,"crushRule"),l(n,11,0,null),l(n,12,0,null),l(n,15,0,e.current.rules);var t=l(n,20,0,e.data.crushInfo);l(n,19,0,"btn btn-light",t);var a=l(n,24,0,e.icons.questionCircle);l(n,23,0,a),l(n,26,0,e.isReplicated&&!e.editing),l(n,28,0,e.isReplicated&&!e.editing),l(n,30,0,e.data.crushInfo&&e.form.getValue("crushRule")),l(n,32,0,e.form.showError("crushRule",u["ɵnov"](n.parent.parent.parent,2),"required")),l(n,34,0,e.form.showError("crushRule",u["ɵnov"](n.parent.parent.parent,2),"tooFewOsds"))}),(function(l,n){l(n,2,0,u["ɵnov"](n,8).ngClassUntouched,u["ɵnov"](n,8).ngClassTouched,u["ɵnov"](n,8).ngClassPristine,u["ɵnov"](n,8).ngClassDirty,u["ɵnov"](n,8).ngClassValid,u["ɵnov"](n,8).ngClassInvalid,u["ɵnov"](n,8).ngClassPending,u["ɵnov"](n,9).validClass,u["ɵnov"](n,9).invalidClass)}))}function bt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,9,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](1,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,23,{FormControlNames:1}),u["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),u["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","crushRule"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Crush ruleset"])),(l()(),u["ɵeld"](6,0,null,0,3,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵand"](0,[["noRules",2]],null,0,null,it)),(l()(),u["ɵand"](16777216,null,null,1,null,vt)),u["ɵdid"](9,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null)],(function(l,n){var e=n.component;l(n,1,0),l(n,9,0,e.current.rules.length>0,u["ɵnov"](n,7))}),(function(l,n){l(n,0,0,u["ɵnov"](n,1).hasErrors,u["ɵnov"](n,1).hasSuccess)}))}function Ct(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,8,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["CRUSH"])),(l()(),u["ɵand"](16777216,null,null,1,null,tt)),u["ɵdid"](4,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,at)),u["ɵdid"](6,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,bt)),u["ɵdid"](8,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,4,0,e.isErasure),l(n,6,0,e.isErasure&&!e.editing),l(n,8,0,e.isReplicated||e.editing)}),null)}function Rt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{value:[0,"value"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function It(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Et(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- No erasure compression algorithm available --"]))],(function(l,n){l(n,1,0,""),l(n,2,0,"")}),null)}function Nt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),u["ɵdid"](1,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{value:[0,"value"]},null),u["ɵdid"](2,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),u["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function yt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be greater than 0"]))],null,null)}function Vt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be less than the maximum blob size"]))],null,null)}function wt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be greater than 0"]))],null,null)}function Tt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be greater than the minimum blob size"]))],null,null)}function _t(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Value should be between 0.0 and 1.0"]))],null,null)}function St(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,79,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](1,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](2,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,27,{FormControlNames:1}),u["ɵqud"](603979776,28,{messagesBlock:0}),(l()(),u["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label"],["for","algorithm"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Algorithm"])),(l()(),u["ɵeld"](7,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](8,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","algorithm"],["id","algorithm"],["name","algorithm"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,10).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,10).onTouched()&&t),t}),null,null)),u["ɵdid"](9,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](10,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](12,671744,[[27,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](14,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](15,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,It)),u["ɵdid"](17,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Et)),u["ɵdid"](19,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Nt)),u["ɵdid"](21,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵeld"](22,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](23,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,29,{FormControlNames:1}),u["ɵqud"](603979776,30,{messagesBlock:0}),(l()(),u["ɵeld"](26,0,null,0,1,"label",[["class","cd-col-form-label"],["for","minBlobSize"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Minimum blob size"])),(l()(),u["ɵeld"](28,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](29,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["defaultUnit","KiB"],["formControlName","minBlobSize"],["id","minBlobSize"],["min","0"],["name","minBlobSize"],["placeholder","e.g., 128KiB"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,30)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,30).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,30)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,30)._compositionEnd(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,34).onBlur(e.target.value)&&t),t}),null,null)),u["ɵdid"](30,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),u["ɵdid"](32,671744,[[29,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](34,81920,null,0,Nu.a,[u.ElementRef,a.q,I.a,N.a],{defaultUnit:[0,"defaultUnit"]},null),u["ɵdid"](35,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](36,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](37,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,yt)),u["ɵdid"](39,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Vt)),u["ɵdid"](41,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](42,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](43,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,31,{FormControlNames:1}),u["ɵqud"](603979776,32,{messagesBlock:0}),(l()(),u["ɵeld"](46,0,null,0,1,"label",[["class","cd-col-form-label"],["for","maxBlobSize"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Maximum blob size"])),(l()(),u["ɵeld"](48,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](49,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["defaultUnit","KiB"],["formControlName","maxBlobSize"],["id","maxBlobSize"],["min","0"],["placeholder","e.g., 512KiB"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,50)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,50).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,50)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,50)._compositionEnd(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,54).onBlur(e.target.value)&&t),t}),null,null)),u["ɵdid"](50,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),u["ɵdid"](52,671744,[[31,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](54,81920,null,0,Nu.a,[u.ElementRef,a.q,I.a,N.a],{defaultUnit:[0,"defaultUnit"]},null),u["ɵdid"](55,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](56,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](57,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,wt)),u["ɵdid"](59,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Tt)),u["ɵdid"](61,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](62,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](63,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,33,{FormControlNames:1}),u["ɵqud"](603979776,34,{messagesBlock:0}),(l()(),u["ɵeld"](66,0,null,0,1,"label",[["class","cd-col-form-label"],["for","ratio"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Ratio"])),(l()(),u["ɵeld"](68,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](69,0,null,null,8,"input",[["class","form-control"],["formControlName","ratio"],["id","ratio"],["max","1"],["min","0"],["name","ratio"],["placeholder","Compression ratio"],["step","0.1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,71)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,71).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,71)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,71)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,72).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,72).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,72).onTouched()&&t),t}),null,null)),u["ɵdid"](70,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](71,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](72,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](74,671744,[[33,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](76,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](77,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,_t)),u["ɵdid"](79,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,2,0),l(n,12,0,"algorithm"),l(n,15,0,"algorithm"),l(n,17,0,!e.info.compression_algorithms),l(n,19,0,e.info.compression_algorithms&&0===e.info.compression_algorithms.length),l(n,21,0,e.info.compression_algorithms),l(n,23,0),l(n,32,0,"minBlobSize"),l(n,34,0,"KiB"),l(n,37,0,"minBlobSize"),l(n,39,0,e.form.showError("minBlobSize",u["ɵnov"](n.parent.parent,2),"min")),l(n,41,0,e.form.showError("minBlobSize",u["ɵnov"](n.parent.parent,2),"maximum")),l(n,43,0),l(n,52,0,"maxBlobSize"),l(n,54,0,"KiB"),l(n,57,0,"maxBlobSize"),l(n,59,0,e.form.showError("maxBlobSize",u["ɵnov"](n.parent.parent,2),"min")),l(n,61,0,e.form.showError("maxBlobSize",u["ɵnov"](n.parent.parent,2),"minimum")),l(n,63,0),l(n,74,0,"ratio"),l(n,77,0,"ratio"),l(n,79,0,e.form.showError("ratio",u["ɵnov"](n.parent.parent,2),"min")||e.form.showError("ratio",u["ɵnov"](n.parent.parent,2),"max"))}),(function(l,n){l(n,1,0,u["ɵnov"](n,2).hasErrors,u["ɵnov"](n,2).hasSuccess),l(n,8,0,u["ɵnov"](n,14).ngClassUntouched,u["ɵnov"](n,14).ngClassTouched,u["ɵnov"](n,14).ngClassPristine,u["ɵnov"](n,14).ngClassDirty,u["ɵnov"](n,14).ngClassValid,u["ɵnov"](n,14).ngClassInvalid,u["ɵnov"](n,14).ngClassPending,u["ɵnov"](n,15).validClass,u["ɵnov"](n,15).invalidClass),l(n,22,0,u["ɵnov"](n,23).hasErrors,u["ɵnov"](n,23).hasSuccess),l(n,29,0,u["ɵnov"](n,36).ngClassUntouched,u["ɵnov"](n,36).ngClassTouched,u["ɵnov"](n,36).ngClassPristine,u["ɵnov"](n,36).ngClassDirty,u["ɵnov"](n,36).ngClassValid,u["ɵnov"](n,36).ngClassInvalid,u["ɵnov"](n,36).ngClassPending,u["ɵnov"](n,37).validClass,u["ɵnov"](n,37).invalidClass),l(n,42,0,u["ɵnov"](n,43).hasErrors,u["ɵnov"](n,43).hasSuccess),l(n,49,0,u["ɵnov"](n,56).ngClassUntouched,u["ɵnov"](n,56).ngClassTouched,u["ɵnov"](n,56).ngClassPristine,u["ɵnov"](n,56).ngClassDirty,u["ɵnov"](n,56).ngClassValid,u["ɵnov"](n,56).ngClassInvalid,u["ɵnov"](n,56).ngClassPending,u["ɵnov"](n,57).validClass,u["ɵnov"](n,57).invalidClass),l(n,62,0,u["ɵnov"](n,63).hasErrors,u["ɵnov"](n,63).hasSuccess),l(n,69,0,u["ɵnov"](n,76).ngClassUntouched,u["ɵnov"](n,76).ngClassTouched,u["ɵnov"](n,76).ngClassPristine,u["ɵnov"](n,76).ngClassDirty,u["ɵnov"](n,76).ngClassValid,u["ɵnov"](n,76).ngClassInvalid,u["ɵnov"](n,76).ngClassPending,u["ɵnov"](n,77).validClass,u["ɵnov"](n,77).invalidClass)}))}function Dt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,24,"div",[["formGroupName","compression"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),u["ɵdid"](1,212992,null,0,a.m,[[3,a.d],[8,null],[8,null]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.d,null,[a.m]),u["ɵdid"](3,16384,null,0,a.s,[[4,a.d]],null,null),(l()(),u["ɵeld"](4,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Compression"])),(l()(),u["ɵeld"](6,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](7,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,25,{FormControlNames:1}),u["ɵqud"](603979776,26,{messagesBlock:0}),(l()(),u["ɵeld"](10,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mode"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Mode"])),(l()(),u["ɵeld"](12,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](13,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","mode"],["id","mode"],["name","mode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,15).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,15).onTouched()&&t),t}),null,null)),u["ɵdid"](14,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](15,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](17,671744,[[25,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](19,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](20,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Rt)),u["ɵdid"](22,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,St)),u["ɵdid"](24,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,1,0,"compression"),l(n,7,0),l(n,17,0,"mode"),l(n,20,0,"mode"),l(n,22,0,e.info.compression_modes),l(n,24,0,e.hasCompressionEnabled())}),(function(l,n){l(n,0,0,u["ɵnov"](n,3).ngClassUntouched,u["ɵnov"](n,3).ngClassTouched,u["ɵnov"](n,3).ngClassPristine,u["ɵnov"](n,3).ngClassDirty,u["ɵnov"](n,3).ngClassValid,u["ɵnov"](n,3).ngClassInvalid,u["ɵnov"](n,3).ngClassPending),l(n,6,0,u["ɵnov"](n,7).hasErrors,u["ɵnov"](n,7).hasSuccess),l(n,13,0,u["ɵnov"](n,19).ngClassUntouched,u["ɵnov"](n,19).ngClassTouched,u["ɵnov"](n,19).ngClassPristine,u["ɵnov"](n,19).ngClassDirty,u["ɵnov"](n,19).ngClassValid,u["ɵnov"](n,19).ngClassInvalid,u["ɵnov"](n,19).ngClassPending,u["ɵnov"](n,20).validClass,u["ɵnov"](n,20).invalidClass)}))}function kt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["The value should be greater or equal to 0"]))],null,null)}function qt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,138,"form",[["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,e){var t=!0;return"submit"===n&&(t=!1!==u["ɵnov"](l,2).onSubmit(e)&&t),"reset"===n&&(t=!1!==u["ɵnov"](l,2).onReset()&&t),"submit"===n&&(t=!1!==u["ɵnov"](l,5).onSubmit()&&t),t}),null,null)),u["ɵdid"](1,16384,null,0,a.G,[],null,null),u["ɵdid"](2,540672,[["formDir",4]],0,a.l,[[8,null],[8,null]],{form:[0,"form"]},null),u["ɵprd"](2048,null,a.d,null,[a.l]),u["ɵdid"](4,16384,null,0,a.s,[[4,a.d]],null,null),u["ɵdid"](5,16384,null,0,Vl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),u["ɵeld"](6,0,null,null,132,"div",[["class","card"]],null,null,null,null,null)),(l()(),u["ɵeld"](7,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),u["ɵted"](8,null,[""," ",""])),u["ɵppd"](9,1),u["ɵppd"](10,1),(l()(),u["ɵeld"](11,0,null,null,118,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),u["ɵeld"](12,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](13,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,5,{FormControlNames:1}),u["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),u["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","name"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Name"])),(l()(),u["ɵeld"](18,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](19,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,22)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,22).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,22)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,22)._compositionEnd(e.target.value)&&t),t}),null,null)),u["ɵdid"](20,4210688,null,0,Tl.a,[u.ElementRef],{autofocus:[0,"autofocus"]},null),u["ɵdid"](21,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](22,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),u["ɵdid"](24,671744,[[5,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](26,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](27,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Du)),u["ɵdid"](29,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,ku)),u["ɵdid"](31,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,qu)),u["ɵdid"](33,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,xu)),u["ɵdid"](35,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](36,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](37,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,7,{FormControlNames:1}),u["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),u["ɵeld"](40,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","poolType"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Pool type"])),(l()(),u["ɵeld"](42,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](43,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","poolType"],["id","poolType"],["name","poolType"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,e){var t=!0;return"change"===n&&(t=!1!==u["ɵnov"](l,45).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,45).onTouched()&&t),t}),null,null)),u["ɵdid"](44,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](45,16384,null,0,a.A,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.A]),u["ɵdid"](47,671744,[[7,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](49,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](50,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](51,0,null,null,3,"option",[["ngValue",""]],null,null,null,null,null)),u["ɵdid"](52,147456,null,0,a.v,[u.ElementRef,u.Renderer2,[2,a.A]],{ngValue:[0,"ngValue"]},null),u["ɵdid"](53,147456,null,0,a.F,[u.ElementRef,u.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),u["ɵted"](-1,null,["-- Select a pool type --"])),(l()(),u["ɵand"](16777216,null,null,1,null,Pu)),u["ɵdid"](56,278528,null,0,El.NgForOf,[u.ViewContainerRef,u.TemplateRef,u.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Fu)),u["ɵdid"](58,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Ju)),u["ɵdid"](60,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](61,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](62,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,17,{FormControlNames:1}),u["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),u["ɵeld"](65,0,null,0,1,"label",[["class","cd-col-form-label"],["for","applications"]],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Applications"])),(l()(),u["ɵeld"](67,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](68,0,null,null,1,"cd-select-badges",[["id","applications"]],null,[[null,"selection"]],(function(l,n,e){var u=!0;return"selection"===n&&(u=!1!==l.component.appSelection()&&u),u}),yu.b,yu.a)),u["ɵdid"](69,49152,null,0,Vu.a,[s.a],{data:[0,"data"],options:[1,"options"],messages:[2,"messages"],selectionLimit:[3,"selectionLimit"],customBadges:[4,"customBadges"],customBadgeValidators:[5,"customBadgeValidators"]},{selection:"selection"}),(l()(),u["ɵand"](16777216,null,null,1,null,Ct)),u["ɵdid"](71,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,Dt)),u["ɵdid"](73,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](74,0,null,null,52,"div",[],null,null,null,null,null)),(l()(),u["ɵeld"](75,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Quotas"])),(l()(),u["ɵeld"](77,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](78,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,35,{FormControlNames:1}),u["ɵqud"](603979776,36,{messagesBlock:0}),(l()(),u["ɵeld"](81,0,null,0,9,"label",[["class","cd-col-form-label"],["for","max_bytes"]],null,null,null,null,null)),(l()(),u["ɵeld"](82,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Max bytes"])),(l()(),u["ɵeld"](84,0,null,null,6,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](85,49152,null,0,kl.a,[],null,null),(l()(),u["ɵeld"](86,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Leave it blank or specify 0 to disable this quota."])),(l()(),u["ɵeld"](88,0,null,0,0,"br",[],null,null,null,null,null)),(l()(),u["ɵeld"](89,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["A valid quota should be greater than 0."])),(l()(),u["ɵeld"](91,0,null,0,9,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](92,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["defaultUnit","GiB"],["formControlName","max_bytes"],["id","max_bytes"],["name","max_bytes"],["placeholder","e.g., 10GiB"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,93)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,93).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,93)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,93)._compositionEnd(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,97).onBlur(e.target.value)&&t),t}),null,null)),u["ɵdid"](93,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵprd"](1024,null,a.p,(function(l){return[l]}),[a.e]),u["ɵdid"](95,671744,[[35,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](97,81920,null,0,Nu.a,[u.ElementRef,a.q,I.a,N.a],{defaultUnit:[0,"defaultUnit"]},null),u["ɵdid"](98,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](99,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](100,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵeld"](101,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,wl.b,wl.a)),u["ɵdid"](102,1163264,null,2,Vl.c,[u.ElementRef,Vl.g],null,null),u["ɵqud"](603979776,37,{FormControlNames:1}),u["ɵqud"](603979776,38,{messagesBlock:0}),(l()(),u["ɵeld"](105,0,null,0,9,"label",[["class","cd-col-form-label"],["for","max_objects"]],null,null,null,null,null)),(l()(),u["ɵeld"](106,0,null,null,1,null,null,null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Max objects"])),(l()(),u["ɵeld"](108,0,null,null,6,"cd-helper",[],null,null,null,Dl.b,Dl.a)),u["ɵdid"](109,49152,null,0,kl.a,[],null,null),(l()(),u["ɵeld"](110,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["Leave it blank or specify 0 to disable this quota."])),(l()(),u["ɵeld"](112,0,null,0,0,"br",[],null,null,null,null,null)),(l()(),u["ɵeld"](113,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),u["ɵted"](-1,null,["A valid quota should be greater than 0."])),(l()(),u["ɵeld"](115,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),u["ɵeld"](116,0,null,null,8,"input",[["class","form-control"],["formControlName","max_objects"],["id","max_objects"],["min","0"],["name","max_objects"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,e){var t=!0;return"input"===n&&(t=!1!==u["ɵnov"](l,118)._handleInput(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,118).onTouched()&&t),"compositionstart"===n&&(t=!1!==u["ɵnov"](l,118)._compositionStart()&&t),"compositionend"===n&&(t=!1!==u["ɵnov"](l,118)._compositionEnd(e.target.value)&&t),"change"===n&&(t=!1!==u["ɵnov"](l,119).onChange(e.target.value)&&t),"input"===n&&(t=!1!==u["ɵnov"](l,119).onChange(e.target.value)&&t),"blur"===n&&(t=!1!==u["ɵnov"](l,119).onTouched()&&t),t}),null,null)),u["ɵdid"](117,4210688,null,0,_l.a,[[2,Sl.a],E.a,u.ElementRef],null,null),u["ɵdid"](118,16384,null,0,a.e,[u.Renderer2,u.ElementRef,[2,a.b]],null,null),u["ɵdid"](119,16384,null,0,a.w,[u.Renderer2,u.ElementRef],null,null),u["ɵprd"](1024,null,a.p,(function(l,n){return[l,n]}),[a.e,a.w]),u["ɵdid"](121,671744,[[37,4]],0,a.j,[[3,a.d],[8,null],[8,null],[6,a.p],[2,a.E]],{name:[0,"name"]},null),u["ɵprd"](2048,null,a.q,null,[a.j]),u["ɵdid"](123,16384,null,0,a.r,[[4,a.q]],null,null),u["ɵdid"](124,16384,null,0,Vl.h,[[3,a.d],Vl.a],{formControlName:[0,"formControlName"]},null),(l()(),u["ɵand"](16777216,null,null,1,null,kt)),u["ɵdid"](126,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](127,0,null,null,2,"div",[],[[8,"hidden",0]],null,null,null,null)),(l()(),u["ɵeld"](128,0,null,null,1,"cd-rbd-configuration-form",[],null,[[null,"changes"]],(function(l,n,e){var u=!0;return"changes"===n&&(u=!1!==(l.component.currentConfigurationValues=e())&&u),u}),wu.b,wu.a)),u["ɵdid"](129,114688,null,0,Tu.a,[N.a,Xe.a],{form:[0,"form"],initializeData:[1,"initializeData"]},{changes:"changes"}),(l()(),u["ɵeld"](130,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),u["ɵeld"](131,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),u["ɵeld"](132,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,e){var u=!0;return"submitAction"===n&&(u=!1!==l.component.submit()&&u),u}),ql.b,ql.a)),u["ɵdid"](133,114688,null,0,xl.a,[u.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),u["ɵted"](134,0,[""," "," "])),u["ɵppd"](135,1),u["ɵppd"](136,1),(l()(),u["ɵeld"](137,0,null,null,1,"cd-back-button",[],null,null,null,Pl.b,Pl.a)),u["ɵdid"](138,49152,null,0,Fl.a,[El.Location,t.b],null,null)],(function(l,n){var e=n.component;l(n,2,0,e.form),l(n,5,0,e.form),l(n,13,0),l(n,20,0,""),l(n,24,0,"name"),l(n,27,0,"name"),l(n,29,0,e.form.showError("name",u["ɵnov"](n,2),"required")),l(n,31,0,e.form.showError("name",u["ɵnov"](n,2),"uniqueName")),l(n,33,0,e.form.showError("name",u["ɵnov"](n,2),"rbdPool")),l(n,35,0,e.form.showError("name",u["ɵnov"](n,2),"pattern")),l(n,37,0),l(n,47,0,"poolType"),l(n,50,0,"poolType"),l(n,52,0,""),l(n,53,0,""),l(n,56,0,e.data.poolTypes),l(n,58,0,e.form.showError("poolType",u["ɵnov"](n,2),"required")),l(n,60,0,e.isReplicated||e.isErasure),l(n,62,0),l(n,69,0,e.data.applications.selected,e.data.applications.available,e.data.applications.messages,4,!0,e.data.applications.validators),l(n,71,0,e.isErasure||e.isReplicated),l(n,73,0,e.info.is_all_bluestore),l(n,78,0),l(n,95,0,"max_bytes"),l(n,97,0,"GiB"),l(n,100,0,"max_bytes"),l(n,102,0),l(n,121,0,"max_objects"),l(n,124,0,"max_objects"),l(n,126,0,e.form.showError("max_objects",u["ɵnov"](n,2),"min")),l(n,129,0,e.form,e.initializeConfigData),l(n,133,0,u["ɵnov"](n,2))}),(function(l,n){var e=n.component;l(n,0,0,u["ɵnov"](n,4).ngClassUntouched,u["ɵnov"](n,4).ngClassTouched,u["ɵnov"](n,4).ngClassPristine,u["ɵnov"](n,4).ngClassDirty,u["ɵnov"](n,4).ngClassValid,u["ɵnov"](n,4).ngClassInvalid,u["ɵnov"](n,4).ngClassPending);var t=u["ɵunv"](n,8,0,l(n,9,0,u["ɵnov"](n.parent,0),e.action)),a=u["ɵunv"](n,8,1,l(n,10,0,u["ɵnov"](n.parent,1),e.resource));l(n,8,0,t,a),l(n,12,0,u["ɵnov"](n,13).hasErrors,u["ɵnov"](n,13).hasSuccess),l(n,19,0,u["ɵnov"](n,26).ngClassUntouched,u["ɵnov"](n,26).ngClassTouched,u["ɵnov"](n,26).ngClassPristine,u["ɵnov"](n,26).ngClassDirty,u["ɵnov"](n,26).ngClassValid,u["ɵnov"](n,26).ngClassInvalid,u["ɵnov"](n,26).ngClassPending,u["ɵnov"](n,27).validClass,u["ɵnov"](n,27).invalidClass),l(n,36,0,u["ɵnov"](n,37).hasErrors,u["ɵnov"](n,37).hasSuccess),l(n,43,0,u["ɵnov"](n,49).ngClassUntouched,u["ɵnov"](n,49).ngClassTouched,u["ɵnov"](n,49).ngClassPristine,u["ɵnov"](n,49).ngClassDirty,u["ɵnov"](n,49).ngClassValid,u["ɵnov"](n,49).ngClassInvalid,u["ɵnov"](n,49).ngClassPending,u["ɵnov"](n,50).validClass,u["ɵnov"](n,50).invalidClass),l(n,61,0,u["ɵnov"](n,62).hasErrors,u["ɵnov"](n,62).hasSuccess),l(n,77,0,u["ɵnov"](n,78).hasErrors,u["ɵnov"](n,78).hasSuccess),l(n,92,0,u["ɵnov"](n,99).ngClassUntouched,u["ɵnov"](n,99).ngClassTouched,u["ɵnov"](n,99).ngClassPristine,u["ɵnov"](n,99).ngClassDirty,u["ɵnov"](n,99).ngClassValid,u["ɵnov"](n,99).ngClassInvalid,u["ɵnov"](n,99).ngClassPending,u["ɵnov"](n,100).validClass,u["ɵnov"](n,100).invalidClass),l(n,101,0,u["ɵnov"](n,102).hasErrors,u["ɵnov"](n,102).hasSuccess),l(n,116,0,u["ɵnov"](n,123).ngClassUntouched,u["ɵnov"](n,123).ngClassTouched,u["ɵnov"](n,123).ngClassPristine,u["ɵnov"](n,123).ngClassDirty,u["ɵnov"](n,123).ngClassValid,u["ɵnov"](n,123).ngClassInvalid,u["ɵnov"](n,123).ngClassPending,u["ɵnov"](n,124).validClass,u["ɵnov"](n,124).invalidClass),l(n,127,0,e.isErasure||-1===e.data.applications.selected.indexOf("rbd"));var i=u["ɵunv"](n,134,0,l(n,135,0,u["ɵnov"](n.parent,0),e.action)),o=u["ɵunv"](n,134,1,l(n,136,0,u["ɵnov"](n.parent,1),e.resource));l(n,134,0,i,o)}))}function xt(l){return u["ɵvid"](0,[u["ɵpid"](0,El.TitleCasePipe,[]),u["ɵpid"](0,Nl.a,[]),u["ɵqud"](671088640,1,{crushInfoTabs:0}),u["ɵqud"](671088640,2,{crushDeletionBtn:0}),u["ɵqud"](671088640,3,{ecpInfoTabs:0}),u["ɵqud"](671088640,4,{ecpDeletionBtn:0}),(l()(),u["ɵand"](16777216,null,null,1,null,Su)),u["ɵdid"](7,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),u["ɵeld"](8,0,null,null,2,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),u["ɵand"](16777216,null,null,1,null,qt)),u["ɵdid"](10,16384,null,0,El.NgIf,[u.ViewContainerRef,u.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var e=n.component;l(n,7,0,!(e.info&&e.ecProfiles)),l(n,10,0,e.info&&e.ecProfiles)}),null)}function Pt(l){return u["ɵvid"](0,[(l()(),u["ɵeld"](0,0,null,null,1,"cd-pool-form",[],null,null,null,xt,_u)),u["ɵdid"](1,114688,null,0,k,[I.a,Ee.a,Ee.m,Al.b,m.a,E.a,N.a,Al.b,y.a,c,d,s.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var Ft=u["ɵccf"]("cd-pool-form",k,Pt,{},{},[]);e.d(n,"PoolModuleNgFactory",(function(){return At})),e.d(n,"RoutedPoolModuleNgFactory",(function(){return Bt}));var At=u["ɵcmf"]($,[],(function(l){return u["ɵmod"]([u["ɵmpd"](512,u.ComponentFactoryResolver,u["ɵCodegenComponentFactoryResolver"],[[8,[H.a,Y.a,Z.a,X.a,Q.a,Q.b,ll.a,nl.a,el.a,ul.a,tl.a,al.a,il.a,ol.a,sl.a,rl.a,dl.a,cl.a,cl.c,cl.b,cl.d,ml.a,fl.a,gl.a,pl.a,hl.a,vl.a,bl.a,Cl.a,Rl.a,Il.a,Yl,$n]],[3,u.ComponentFactoryResolver],u.NgModuleRef]),u["ɵmpd"](4608,El.NgLocalization,El.NgLocaleLocalization,[u.LOCALE_ID,[2,El["ɵangular_packages_common_common_a"]]]),u["ɵmpd"](4608,Kn.y,Kn.y,[El.DOCUMENT]),u["ɵmpd"](4608,Kn.r,Kn.r,[]),u["ɵmpd"](4608,Kn.a,Kn.a,[]),u["ɵmpd"](4608,a.D,a.D,[]),u["ɵmpd"](4608,Jn.a,Jn.a,[]),u["ɵmpd"](4608,Wn.a,Wn.a,[]),u["ɵmpd"](4608,Hn.a,Hn.a,[s.a]),u["ɵmpd"](4608,El.DatePipe,El.DatePipe,[u.LOCALE_ID]),u["ɵmpd"](4608,Yn.a,Yn.a,[]),u["ɵmpd"](4608,Zn.a,Zn.a,[]),u["ɵmpd"](4608,N.a,N.a,[]),u["ɵmpd"](4608,I.a,I.a,[N.a]),u["ɵmpd"](4608,Xn.a,Xn.a,[N.a]),u["ɵmpd"](4608,O.a,O.a,[N.a]),u["ɵmpd"](4608,Qn.a,Qn.a,[]),u["ɵmpd"](4608,le.a,le.a,[]),u["ɵmpd"](4608,ne.a,ne.a,[]),u["ɵmpd"](4608,ee.a,ee.a,[]),u["ɵmpd"](4608,ue.a,ue.a,[El.DatePipe]),u["ɵmpd"](4608,te.a,te.a,[]),u["ɵmpd"](4608,ae.a,ae.a,[]),u["ɵmpd"](4608,ie.a,ie.a,[]),u["ɵmpd"](4608,oe.a,oe.a,[]),u["ɵmpd"](4608,se.a,se.a,[]),u["ɵmpd"](4608,re.a,re.a,[s.a]),u["ɵmpd"](4608,Nl.a,Nl.a,[]),u["ɵmpd"](4608,de.a,de.a,[]),u["ɵmpd"](4608,ce.a,ce.a,[]),u["ɵmpd"](4608,me.a,me.a,[fe.b]),u["ɵmpd"](4608,a.h,a.h,[]),u["ɵmpd"](4608,ge.b,ge.b,[]),u["ɵmpd"](4608,pe.a,pe.a,[]),u["ɵmpd"](4608,he.a,he.a,[u.NgZone,u.RendererFactory2,u.PLATFORM_ID]),u["ɵmpd"](4608,ve.a,ve.a,[u.ComponentFactoryResolver,u.NgZone,u.Injector,he.a,u.ApplicationRef]),u["ɵmpd"](4608,be.c,be.c,[]),u["ɵmpd"](4608,Ce.a,Ce.a,[]),u["ɵmpd"](4608,Al.b,Al.b,[u.RendererFactory2,ve.a]),u["ɵmpd"](4608,Re.f,Re.f,[]),u["ɵmpd"](4608,E.a,E.a,[]),u["ɵmpd"](4608,Ie.a,Ie.a,[Ee.m,E.a]),u["ɵmpd"](4608,Ne.f,Ne.f,[]),u["ɵmpd"](4608,ye.t,ye.t,[]),u["ɵmpd"](4608,ye.v,ye.v,[]),u["ɵmpd"](4608,ye.a,ye.a,[]),u["ɵmpd"](4608,ye.h,ye.h,[]),u["ɵmpd"](4608,ye.d,ye.d,[]),u["ɵmpd"](4608,ye.j,ye.j,[]),u["ɵmpd"](4608,ye.l,ye.l,[]),u["ɵmpd"](4608,ye.u,ye.u,[ye.v,ye.l]),u["ɵmpd"](4608,Ve.a,Ve.a,[]),u["ɵmpd"](1073742336,El.CommonModule,El.CommonModule,[]),u["ɵmpd"](1073742336,Kn.u,Kn.u,[]),u["ɵmpd"](1073742336,a.C,a.C,[]),u["ɵmpd"](1073742336,a.n,a.n,[]),u["ɵmpd"](1073742336,Re.e,Re.e,[]),u["ɵmpd"](1073742336,we.a,we.a,[]),u["ɵmpd"](1073742336,a.y,a.y,[]),u["ɵmpd"](1073742336,ge.c,ge.c,[]),u["ɵmpd"](1073742336,pe.d,pe.d,[]),u["ɵmpd"](1073742336,be.d,be.d,[]),u["ɵmpd"](1073742336,Ce.d,Ce.d,[]),u["ɵmpd"](1073742336,Te.b,Te.b,[]),u["ɵmpd"](1073742336,Al.e,Al.e,[]),u["ɵmpd"](1073742336,_e.a,_e.a,[]),u["ɵmpd"](1073742336,Vl.f,Vl.f,[]),u["ɵmpd"](1073742336,Se.ClickOutsideModule,Se.ClickOutsideModule,[]),u["ɵmpd"](1073742336,De.b,De.b,[]),u["ɵmpd"](1073742336,Ee.q,Ee.q,[[2,Ee.v],[2,Ee.m]]),u["ɵmpd"](1073742336,ke.a,ke.a,[]),u["ɵmpd"](1073742336,qe.a,qe.a,[]),u["ɵmpd"](1073742336,r.a,r.a,[]),u["ɵmpd"](1073742336,xe.a,xe.a,[]),u["ɵmpd"](1073742336,Ne.d,Ne.d,[]),u["ɵmpd"](1073742336,Pe.a,Pe.a,[]),u["ɵmpd"](1073742336,Fe.a,Fe.a,[]),u["ɵmpd"](1073742336,Ae.a,Ae.a,[]),u["ɵmpd"](1073742336,ye.g,ye.g,[]),u["ɵmpd"](1073742336,Be.b,Be.b,[]),u["ɵmpd"](1073742336,Oe.a,Oe.a,[]),u["ɵmpd"](1073742336,$,$,[]),u["ɵmpd"](256,u.LOCALE_ID,"en-US",[]),u["ɵmpd"](256,Re.a,{autoClose:!0,insideClick:!1},[]),u["ɵmpd"](256,u.TRANSLATIONS_FORMAT,"xlf",[])])})),Bt=u["ɵcmf"](W,[],(function(l){return u["ɵmod"]([u["ɵmpd"](512,u.ComponentFactoryResolver,u["ɵCodegenComponentFactoryResolver"],[[8,[H.a,Y.a,Z.a,X.a,Q.a,Q.b,ll.a,nl.a,el.a,ul.a,tl.a,al.a,il.a,ol.a,sl.a,rl.a,dl.a,cl.a,cl.c,cl.b,cl.d,ml.a,fl.a,gl.a,pl.a,hl.a,vl.a,bl.a,Cl.a,Rl.a,Il.a,Yl,$n,vu,Ft]],[3,u.ComponentFactoryResolver],u.NgModuleRef]),u["ɵmpd"](4608,El.NgLocalization,El.NgLocaleLocalization,[u.LOCALE_ID,[2,El["ɵangular_packages_common_common_a"]]]),u["ɵmpd"](4608,Kn.y,Kn.y,[El.DOCUMENT]),u["ɵmpd"](4608,Kn.r,Kn.r,[]),u["ɵmpd"](4608,Kn.a,Kn.a,[]),u["ɵmpd"](4608,a.D,a.D,[]),u["ɵmpd"](4608,Jn.a,Jn.a,[]),u["ɵmpd"](4608,Wn.a,Wn.a,[]),u["ɵmpd"](4608,Hn.a,Hn.a,[s.a]),u["ɵmpd"](4608,El.DatePipe,El.DatePipe,[u.LOCALE_ID]),u["ɵmpd"](4608,Yn.a,Yn.a,[]),u["ɵmpd"](4608,Zn.a,Zn.a,[]),u["ɵmpd"](4608,N.a,N.a,[]),u["ɵmpd"](4608,I.a,I.a,[N.a]),u["ɵmpd"](4608,Xn.a,Xn.a,[N.a]),u["ɵmpd"](4608,O.a,O.a,[N.a]),u["ɵmpd"](4608,Qn.a,Qn.a,[]),u["ɵmpd"](4608,le.a,le.a,[]),u["ɵmpd"](4608,ne.a,ne.a,[]),u["ɵmpd"](4608,ee.a,ee.a,[]),u["ɵmpd"](4608,ue.a,ue.a,[El.DatePipe]),u["ɵmpd"](4608,te.a,te.a,[]),u["ɵmpd"](4608,ae.a,ae.a,[]),u["ɵmpd"](4608,ie.a,ie.a,[]),u["ɵmpd"](4608,oe.a,oe.a,[]),u["ɵmpd"](4608,se.a,se.a,[]),u["ɵmpd"](4608,re.a,re.a,[s.a]),u["ɵmpd"](4608,Nl.a,Nl.a,[]),u["ɵmpd"](4608,de.a,de.a,[]),u["ɵmpd"](4608,ce.a,ce.a,[]),u["ɵmpd"](4608,me.a,me.a,[fe.b]),u["ɵmpd"](4608,a.h,a.h,[]),u["ɵmpd"](4608,ge.b,ge.b,[]),u["ɵmpd"](4608,pe.a,pe.a,[]),u["ɵmpd"](4608,he.a,he.a,[u.NgZone,u.RendererFactory2,u.PLATFORM_ID]),u["ɵmpd"](4608,ve.a,ve.a,[u.ComponentFactoryResolver,u.NgZone,u.Injector,he.a,u.ApplicationRef]),u["ɵmpd"](4608,be.c,be.c,[]),u["ɵmpd"](4608,Ce.a,Ce.a,[]),u["ɵmpd"](4608,Al.b,Al.b,[u.RendererFactory2,ve.a]),u["ɵmpd"](4608,Re.f,Re.f,[]),u["ɵmpd"](4608,E.a,E.a,[]),u["ɵmpd"](4608,Ie.a,Ie.a,[Ee.m,E.a]),u["ɵmpd"](4608,Ne.f,Ne.f,[]),u["ɵmpd"](4608,ye.t,ye.t,[]),u["ɵmpd"](4608,ye.v,ye.v,[]),u["ɵmpd"](4608,ye.a,ye.a,[]),u["ɵmpd"](4608,ye.h,ye.h,[]),u["ɵmpd"](4608,ye.d,ye.d,[]),u["ɵmpd"](4608,ye.j,ye.j,[]),u["ɵmpd"](4608,ye.l,ye.l,[]),u["ɵmpd"](4608,ye.u,ye.u,[ye.v,ye.l]),u["ɵmpd"](4608,Ve.a,Ve.a,[]),u["ɵmpd"](1073742336,El.CommonModule,El.CommonModule,[]),u["ɵmpd"](1073742336,Kn.u,Kn.u,[]),u["ɵmpd"](1073742336,a.C,a.C,[]),u["ɵmpd"](1073742336,a.n,a.n,[]),u["ɵmpd"](1073742336,Re.e,Re.e,[]),u["ɵmpd"](1073742336,we.a,we.a,[]),u["ɵmpd"](1073742336,a.y,a.y,[]),u["ɵmpd"](1073742336,ge.c,ge.c,[]),u["ɵmpd"](1073742336,pe.d,pe.d,[]),u["ɵmpd"](1073742336,be.d,be.d,[]),u["ɵmpd"](1073742336,Ce.d,Ce.d,[]),u["ɵmpd"](1073742336,Te.b,Te.b,[]),u["ɵmpd"](1073742336,Al.e,Al.e,[]),u["ɵmpd"](1073742336,_e.a,_e.a,[]),u["ɵmpd"](1073742336,Vl.f,Vl.f,[]),u["ɵmpd"](1073742336,Se.ClickOutsideModule,Se.ClickOutsideModule,[]),u["ɵmpd"](1073742336,De.b,De.b,[]),u["ɵmpd"](1073742336,Ee.q,Ee.q,[[2,Ee.v],[2,Ee.m]]),u["ɵmpd"](1073742336,ke.a,ke.a,[]),u["ɵmpd"](1073742336,qe.a,qe.a,[]),u["ɵmpd"](1073742336,r.a,r.a,[]),u["ɵmpd"](1073742336,xe.a,xe.a,[]),u["ɵmpd"](1073742336,Ne.d,Ne.d,[]),u["ɵmpd"](1073742336,Pe.a,Pe.a,[]),u["ɵmpd"](1073742336,Fe.a,Fe.a,[]),u["ɵmpd"](1073742336,Ae.a,Ae.a,[]),u["ɵmpd"](1073742336,ye.g,ye.g,[]),u["ɵmpd"](1073742336,Be.b,Be.b,[]),u["ɵmpd"](1073742336,Oe.a,Oe.a,[]),u["ɵmpd"](1073742336,$,$,[]),u["ɵmpd"](1073742336,W,W,[]),u["ɵmpd"](256,u.LOCALE_ID,"en-US",[]),u["ɵmpd"](256,Re.a,{autoClose:!0,insideClick:!1},[]),u["ɵmpd"](1024,Ee.k,(function(){return[[{path:"",component:G},{path:"create",component:k,data:K},{path:"edit/:name",component:k,data:J}]]}),[]),u["ɵmpd"](256,u.TRANSLATIONS_FORMAT,"xlf",[])])}))}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/7.1c25843a719516e3e84b.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/7.1c25843a719516e3e84b.js
new file mode 100644 (file)
index 0000000..f6fdadc
--- /dev/null
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{Znkk:function(l,n,u){"use strict";u.r(n);var e=u("8Y7J"),t=u("sne2"),a=u("Avrn");class i{constructor(l){this.route=l,this.message="The Object Gateway service is not configured."}ngOnInit(){this.routeParamsSubscribe=this.route.params.subscribe(l=>{this.message=l.message})}ngOnDestroy(){this.routeParamsSubscribe.unsubscribe()}}var o=u("s7LF"),s=u("LvDl"),d=u("LRne"),r=u("PqYM"),c=u("lJxs"),m=u("aGrj"),f=u("mrSG"),g=u("IheW"),p=u("CqXF"),v=u("JIr8"),h=u("xTzq"),b=u("pL04");let C=(()=>{let l=class{constructor(l){this.http=l,this.url="api/rgw/bucket"}list(){let l=new g.h;return l=l.append("stats","true"),this.http.get(this.url,{params:l})}get(l){return this.http.get(`${this.url}/${l}`)}create(l,n,u,e,t,a,i,o){return this.http.post(this.url,null,{params:new g.h({fromObject:{bucket:l,uid:n,zonegroup:u,placement_target:e,lock_enabled:String(t),lock_mode:a,lock_retention_period_days:i,lock_retention_period_years:o}})})}update(l,n,u,e,t,a,i,o,s,d){let r=new g.h;return r=r.append("bucket_id",n),r=r.append("uid",u),r=r.append("versioning_state",e),r=r.append("mfa_delete",t),r=r.append("mfa_token_serial",a),r=r.append("mfa_token_pin",i),r=r.append("lock_mode",o),r=r.append("lock_retention_period_days",s),r=r.append("lock_retention_period_years",d),this.http.put(`${this.url}/${l}`,null,{params:r})}delete(l,n=!0){let u=new g.h;return u=u.append("purge_objects",n?"true":"false"),this.http.delete(`${this.url}/${l}`,{params:u})}exists(l){return this.get(l).pipe(Object(p.a)(!0),Object(v.a)(l=>(s.isFunction(l.preventDefault)&&l.preventDefault(),Object(d.a)(!1))))}};return l.ngInjectableDef=e["ɵɵdefineInjectable"]({factory:function(){return new l(e["ɵɵinject"](g.c))},token:l,providedIn:b.a}),l=f.__decorate([h.a,f.__metadata("design:paramtypes",[g.c])],l),l})(),_=(()=>{let l=class{constructor(l){this.http=l,this.url="api/rgw/site"}get(l){let n=new g.h;return l&&(n=n.append("query",l)),this.http.get(this.url,{params:n})}};return l.ngInjectableDef=e["ɵɵdefineInjectable"]({factory:function(){return new l(e["ɵɵinject"](g.c))},token:l,providedIn:b.a}),l=f.__decorate([h.a,f.__metadata("design:paramtypes",[g.c])],l),l})();var R=u("P8lu"),k=u("oxzT"),y=u("mtw6"),I=u("2EZI"),w=u("1Ni5"),E=u("9nlD"),N=function(l){return l.ENABLED="Enabled",l.DISABLED="Disabled",l}({}),q=function(l){return l.ENABLED="Enabled",l.SUSPENDED="Suspended",l}({});class T{constructor(l,n,u,e,a,i,o,s,d){this.route=l,this.router=n,this.formBuilder=u,this.rgwBucketService=e,this.rgwSiteService=a,this.rgwUserService=i,this.notificationService=o,this.i18n=s,this.actionLabels=d,this.editing=!1,this.error=!1,this.loading=!1,this.owners=null,this.placementTargets=[],this.isVersioningEnabled=!1,this.isVersioningAlreadyEnabled=!1,this.isMfaDeleteEnabled=!1,this.isMfaDeleteAlreadyEnabled=!1,this.icons=k.a,this.editing=this.router.url.startsWith("/rgw/bucket/"+t.e.EDIT),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.resource=this.i18n("bucket"),this.createForm()}createForm(){const l=this,n=w.a.custom("eitherDaysOrYears",()=>{if(!l.bucketForm||!s.get(l.bucketForm.getRawValue(),"lock_enabled"))return!1;const n=l.bucketForm.getValue("lock_retention_period_years"),u=l.bucketForm.getValue("lock_retention_period_days");return u>0&&n>0||0===u&&0===n}),u=[0,[w.a.number(!1),n]];this.bucketForm=this.formBuilder.group({id:[null],bid:[null,[o.B.required],this.editing?[]:[this.bucketNameValidator()]],owner:[null,[o.B.required]],"placement-target":[null,this.editing?[]:[o.B.required]],versioning:[null],"mfa-delete":[null],"mfa-token-serial":[""],"mfa-token-pin":[""],lock_enabled:[{value:!1,disabled:this.editing}],lock_mode:["COMPLIANCE"],lock_retention_period_days:u,lock_retention_period_years:u})}ngOnInit(){this.rgwUserService.enumerate().subscribe(l=>{this.owners=l.sort()}),this.editing||this.rgwSiteService.get("placement-targets").subscribe(l=>{this.zonegroup=l.zonegroup,s.forEach(l.placement_targets,l=>{l.description=`${l.name} (${this.i18n("pool")}: ${l.data_pool})`,this.placementTargets.push(l)}),1===this.placementTargets.length&&this.bucketForm.get("placement-target").setValue(this.placementTargets[0].name)}),this.route.params.subscribe(l=>{if(!l.hasOwnProperty("bid"))return;const n=decodeURIComponent(l.bid);this.loading=!0,this.rgwBucketService.get(n).subscribe(l=>{this.loading=!1;const n=s.clone(this.bucketForm.getRawValue());let u=s.pick(l,s.keys(n));u["placement-target"]=l.placement_rule,u=s.merge(n,u),this.bucketForm.setValue(u),this.editing&&(this.setVersioningStatus(l.versioning),this.isVersioningAlreadyEnabled=this.isVersioningEnabled,this.setMfaDeleteStatus(l.mfa_delete),this.isMfaDeleteAlreadyEnabled=this.isMfaDeleteEnabled,this.setMfaDeleteValidators())})})}goToListView(){this.router.navigate(["/rgw/bucket"])}submit(){if(this.bucketForm.pristine)return void this.goToListView();const l=this.bucketForm.value;if(this.editing){const n=this.getVersioningStatus(),u=this.getMfaDeleteStatus();this.rgwBucketService.update(l.bid,l.id,l.owner,n,u,l["mfa-token-serial"],l["mfa-token-pin"],l.lock_mode,l.lock_retention_period_days,l.lock_retention_period_years).subscribe(()=>{this.notificationService.show(y.a.success,this.i18n('Updated Object Gateway bucket "{{bid}}".',l)),this.goToListView()},()=>{this.bucketForm.setErrors({cdSubmitButton:!0})})}else this.rgwBucketService.create(l.bid,l.owner,this.zonegroup,l["placement-target"],l.lock_enabled,l.lock_mode,l.lock_retention_period_days,l.lock_retention_period_years).subscribe(()=>{this.notificationService.show(y.a.success,this.i18n('Created Object Gateway bucket "{{bid}}"',l)),this.goToListView()},()=>{this.bucketForm.setErrors({cdSubmitButton:!0})})}bucketNameValidator(){return l=>{if(l.pristine||""===l.value)return Object(d.a)(null);const n=[];let u;return n.push(()=>{const l=this.bucketForm.get("bid").value;let n=!0;return(/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i.test(l)||/^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}$/i.test(l))&&(u="ipAddress",n=!1),n}),n.push(l=>!!s.inRange(l.length,3,64)||(u="shouldBeInRange",!1)),n.push(l=>{const n=s.split(l,".");return s.every(n,n=>n!==s.toLower(n)||n.includes("_")?(u="containsUpperCase",!1):/^\S*$/.test(l)&&/[0-9a-z-]/.test(n)?s.every([0,n.length-1],l=>(u="lowerCaseOrNumber",/[a-z]/.test(n[l])||s.isInteger(s.parseInt(n[l])))):(u="onlyLowerCaseAndNumbers",!1))}),s.every(n,n=>n(l.value))?Object(r.a)().pipe(Object(m.a)(this.rgwBucketService.exists.call(this.rgwBucketService,l.value)),Object(c.a)(l=>l?{bucketNameExists:!0}:null)):Object(r.a)().pipe(Object(c.a)(()=>{switch(u){case"onlyLowerCaseAndNumbers":return{onlyLowerCaseAndNumbers:!0};case"shouldBeInRange":return{shouldBeInRange:!0};case"ipAddress":return{ipAddress:!0};case"containsUpperCase":return{containsUpperCase:!0};case"lowerCaseOrNumber":return{lowerCaseOrNumber:!0};default:return{bucketNameInvalid:!0}}}))}}areMfaCredentialsRequired(){return this.isMfaDeleteEnabled!==this.isMfaDeleteAlreadyEnabled||this.isMfaDeleteAlreadyEnabled&&this.isVersioningEnabled!==this.isVersioningAlreadyEnabled}setMfaDeleteValidators(){const l=this.bucketForm.get("mfa-token-serial"),n=this.bucketForm.get("mfa-token-pin");this.areMfaCredentialsRequired()?(l.setValidators(o.B.required),n.setValidators(o.B.required)):(l.setValidators(null),n.setValidators(null)),l.updateValueAndValidity(),n.updateValueAndValidity()}getVersioningStatus(){return this.isVersioningEnabled?q.ENABLED:q.SUSPENDED}setVersioningStatus(l){this.isVersioningEnabled=l===q.ENABLED}updateVersioning(){this.isVersioningEnabled=!this.isVersioningEnabled,this.setMfaDeleteValidators()}getMfaDeleteStatus(){return this.isMfaDeleteEnabled?N.ENABLED:N.DISABLED}setMfaDeleteStatus(l){this.isMfaDeleteEnabled=l===N.ENABLED}updateMfaDelete(){this.isMfaDeleteEnabled=!this.isMfaDeleteEnabled,this.setMfaDeleteValidators()}}var V=u("HDdC"),x=u("cp0P"),S=u("+fVR"),D=u("0+/T"),F=u("uIqm"),j=u("vCyI"),B=u("Fgil"),A=u("o4+5"),P=u("aexS"),U=u("EgGo");const O=new U.a("rgw/bucket");class M extends S.a{constructor(l,n,u,e,t,a,i,o,s,d){super(),this.authStorageService=l,this.dimlessBinaryPipe=n,this.dimlessPipe=u,this.rgwBucketService=e,this.bsModalService=t,this.i18n=a,this.urlBuilder=i,this.actionLabels=o,this.ngZone=s,this.changeDetectorRef=d,this.columns=[],this.buckets=[],this.selection=new j.a,this.isStale=!1,this.permission=this.authStorageService.getPermissions().rgw;const r=()=>this.selection.first()&&""+encodeURIComponent(this.selection.first().bid);this.tableActions=[{permission:"create",icon:k.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:l=>!l.hasSelection},{permission:"update",icon:k.a.edit,routerLink:()=>this.urlBuilder.getEdit(r()),name:this.actionLabels.EDIT},{permission:"delete",icon:k.a.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSelection,name:this.actionLabels.DELETE,canBePrimary:l=>l.hasMultiSelection}],this.timeConditionReached()}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"bid",flexGrow:2},{name:this.i18n("Owner"),prop:"owner",flexGrow:3},{name:this.i18n("Used Capacity"),prop:"bucket_size",flexGrow:.5,pipe:this.dimlessBinaryPipe},{name:this.i18n("Capacity Limit %"),prop:"size_usage",cellTemplate:this.bucketSizeTpl,flexGrow:1},{name:this.i18n("Objects"),prop:"num_objects",flexGrow:.5,pipe:this.dimlessPipe},{name:this.i18n("Object Limit %"),prop:"object_usage",cellTemplate:this.bucketObjectTpl,flexGrow:1}]}transformBucketData(){s.forEach(this.buckets,l=>{const n=l.bucket_quota.max_size,u=l.bucket_quota.max_objects;l.bucket_size=0,l.num_objects=0,s.isEmpty(l.usage)||(l.bucket_size=l.usage["rgw.main"].size_actual,l.num_objects=l.usage["rgw.main"].num_objects),l.size_usage=n>0?l.bucket_size/n:void 0,l.object_usage=u>0?l.num_objects/u:void 0})}timeConditionReached(){clearTimeout(this.staleTimeout),this.ngZone.runOutsideAngular(()=>{this.staleTimeout=window.setTimeout(()=>{this.ngZone.run(()=>{this.isStale=!0})},1e4)})}getBucketList(l){this.isStale=!1,this.timeConditionReached(),this.rgwBucketService.list().subscribe(l=>{this.buckets=l,this.transformBucketData(),this.changeDetectorRef.detectChanges()},()=>{l.error()})}updateSelection(l){this.selection=l}deleteAction(){this.bsModalService.show(D.a,{initialState:{itemDescription:this.i18n(this.selection.hasSingleSelection?"bucket":"buckets"),itemNames:this.selection.selected.map(l=>l.bid),submitActionObservable:()=>new V.a(l=>{Object(x.a)(this.selection.selected.map(l=>this.rgwBucketService.delete(l.bid))).subscribe(null,n=>{l.error(n),this.table.refreshBtn()},()=>{l.complete(),this.table.refreshBtn()})})}})}}let L=(()=>{let l=class{constructor(l){this.http=l,this.url="api/rgw/daemon"}list(){return this.http.get(this.url)}get(l){return this.http.get(`${this.url}/${l}`)}};return l.ngInjectableDef=e["ɵɵdefineInjectable"]({factory:function(){return new l(e["ɵɵinject"](g.c))},token:l,providedIn:b.a}),l=f.__decorate([h.a,f.__metadata("design:paramtypes",[g.c])],l),l})();var z=u("85J/");class G extends S.a{constructor(l,n,u,e,t){super(),this.rgwDaemonService=l,this.authStorageService=n,this.cephShortVersionPipe=u,this.i18n=e,this.rgwSiteService=t,this.columns=[],this.daemons=[]}ngOnInit(){this.grafanaPermission=this.authStorageService.getPermissions().grafana,this.columns=[{name:this.i18n("ID"),prop:"id",flexGrow:2},{name:this.i18n("Hostname"),prop:"server_hostname",flexGrow:2},{name:this.i18n("Version"),prop:"version",flexGrow:1,pipe:this.cephShortVersionPipe}],this.rgwSiteService.get("realms").subscribe(l=>this.isMultiSite=l.length>0)}getDaemonList(l){this.rgwDaemonService.list().subscribe(l=>{this.daemons=l},()=>{l.error()})}}var K=u("GyhO"),$=u("aXbf"),Z=function(l){return l.USERS="users",l.BUCKETS="buckets",l.METADATA="metadata",l.USAGE="usage",l.ZONE="zone",l}({});let Q=(()=>{class l{static getAll(){return Object.values(l.capabilities)}}return l.capabilities=Z,l})();class Y{constructor(l,n,u,t){this.formBuilder=l,this.bsModalRef=n,this.i18n=u,this.actionLabels=t,this.submitAction=new e.EventEmitter,this.editing=!0,this.types=[],this.resource=this.i18n("capability"),this.createForm()}createForm(){this.formGroup=this.formBuilder.group({type:[null,[o.B.required]],perm:[null,[o.B.required]]})}setEditing(l=!0){this.editing=l,this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.ADD}setValues(l,n){this.formGroup.setValue({type:l,perm:n})}setCapabilities(l){const n=[];l.forEach(l=>{n.push(l.type)}),this.types=[],Q.getAll().forEach(l=>{-1===s.indexOf(n,l)&&this.types.push(l)})}onSubmit(){this.submitAction.emit(this.formGroup.value),this.bsModalRef.hide()}}class W{constructor(l,n,u,t){this.formBuilder=l,this.bsModalRef=n,this.i18n=u,this.actionLabels=t,this.submitAction=new e.EventEmitter,this.viewing=!0,this.userCandidates=[],this.resource=this.i18n("S3 Key"),this.createForm()}createForm(){this.formGroup=this.formBuilder.group({user:[null,[o.B.required]],generate_key:[!0],access_key:[null,[w.a.requiredIf({generate_key:!1})]],secret_key:[null,[w.a.requiredIf({generate_key:!1})]]})}setViewing(l=!0){this.viewing=l,this.action=this.viewing?this.actionLabels.SHOW:this.actionLabels.CREATE}setValues(l,n,u){this.formGroup.setValue({user:l,generate_key:s.isEmpty(n),access_key:n,secret_key:u})}setUserCandidates(l){this.userCandidates=l}onSubmit(){this.submitAction.emit(this.formGroup.value),this.bsModalRef.hide()}}class J{}class X{constructor(l,n,u,t){this.formBuilder=l,this.bsModalRef=n,this.i18n=u,this.actionLabels=t,this.submitAction=new e.EventEmitter,this.editing=!0,this.subusers=[],this.resource=this.i18n("Subuser"),this.createForm()}createForm(){this.formGroup=this.formBuilder.group({uid:[null],subuid:[null,[o.B.required,this.subuserValidator()]],perm:[null,[o.B.required]],generate_secret:[!0],secret_key:[null,[w.a.requiredIf({generate_secret:!1})]]})}subuserValidator(){const l=this;return n=>l.editing||Object(w.b)(n.value)?null:l.subusers.some(u=>s.isEqual(l.getSubuserName(u.id),n.value))?{subuserIdExists:!0}:null}getSubuserName(l){if(s.isEmpty(l))return l;const n=l.match(/([^:]+)(:(.+))?/);return s.isUndefined(n[3])?n[1]:n[3]}setEditing(l=!0){this.editing=l,this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE}setValues(l,n="",u=""){this.formGroup.setValue({uid:l,subuid:this.getSubuserName(n),perm:u,generate_secret:!0,secret_key:null})}setSubusers(l){this.subusers=l}onSubmit(){const l=this.formGroup.value,n=new J;n.id=`${l.uid}:${l.subuid}`,n.permissions=l.perm,n.generate_secret=l.generate_secret,n.secret_key=l.secret_key,this.submitAction.emit(n),this.bsModalRef.hide()}}class H{constructor(l,n,u){this.bsModalRef=l,this.i18n=n,this.actionLabels=u,this.resource=this.i18n("Swift Key"),this.action=this.actionLabels.SHOW}setValues(l,n){this.user=l,this.secret_key=n}}class ll{constructor(l,n,u,e,a,i,o,s){this.formBuilder=l,this.route=n,this.router=u,this.rgwUserService=e,this.bsModalService=a,this.notificationService=i,this.i18n=o,this.actionLabels=s,this.editing=!1,this.error=!1,this.loading=!1,this.submitObservables=[],this.icons=k.a,this.subusers=[],this.s3Keys=[],this.swiftKeys=[],this.capabilities=[],this.showTenant=!1,this.previousTenant=null,this.resource=this.i18n("user"),this.subuserLabel=this.i18n("subuser"),this.s3keyLabel=this.i18n("S3 Key"),this.capabilityLabel=this.i18n("capability"),this.editing=this.router.url.startsWith("/rgw/user/"+t.e.EDIT),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.createForm()}createForm(){this.userForm=this.formBuilder.group({user_id:[null,[o.B.required,o.B.pattern(/^[a-zA-Z0-9!@#%^&*()_-]+$/)],this.editing?[]:[w.a.unique(this.rgwUserService.exists,this.rgwUserService,()=>this.userForm.getValue("tenant"))]],show_tenant:[this.editing],tenant:[null,[o.B.pattern(/^[a-zA-Z0-9!@#%^&*()_-]+$/)],this.editing?[]:[w.a.unique(this.rgwUserService.exists,this.rgwUserService,()=>this.userForm.getValue("user_id"),!0)]],display_name:[null,[o.B.required]],email:[null,[w.a.email],[w.a.unique(this.rgwUserService.emailExists,this.rgwUserService)]],max_buckets_mode:[1],max_buckets:[1e3,[w.a.requiredIf({max_buckets_mode:"1"}),w.a.number(!1),o.B.min(1)]],suspended:[!1],generate_key:[!0],access_key:[null,[w.a.requiredIf({generate_key:!1})]],secret_key:[null,[w.a.requiredIf({generate_key:!1})]],user_quota_enabled:[!1],user_quota_max_size_unlimited:[!0],user_quota_max_size:[null,[w.a.composeIf({user_quota_enabled:!0,user_quota_max_size_unlimited:!1},[o.B.required,this.quotaMaxSizeValidator])]],user_quota_max_objects_unlimited:[!0],user_quota_max_objects:[null,[o.B.min(0),w.a.requiredIf({user_quota_enabled:!0,user_quota_max_objects_unlimited:!1})]],bucket_quota_enabled:[!1],bucket_quota_max_size_unlimited:[!0],bucket_quota_max_size:[null,[w.a.composeIf({bucket_quota_enabled:!0,bucket_quota_max_size_unlimited:!1},[o.B.required,this.quotaMaxSizeValidator])]],bucket_quota_max_objects_unlimited:[!0],bucket_quota_max_objects:[null,[o.B.min(0),w.a.requiredIf({bucket_quota_enabled:!0,bucket_quota_max_objects_unlimited:!1})]]})}ngOnInit(){this.route.params.subscribe(l=>{if(!l.hasOwnProperty("uid"))return;const n=decodeURIComponent(l.uid);this.loading=!0;const u=[];u.push(this.rgwUserService.get(n)),u.push(this.rgwUserService.getQuota(n)),Object(x.a)(u).subscribe(l=>{this.loading=!1;const n=s.clone(this.userForm.value);let u=s.pick(l[0],s.keys(this.userForm.value));switch(u.max_buckets){case-1:u.max_buckets_mode=-1,u.max_buckets="";break;case 0:u.max_buckets_mode=0,u.max_buckets="";break;default:u.max_buckets_mode=1}["user","bucket"].forEach(n=>{const e=l[1][n+"_quota"];u[n+"_quota_enabled"]=e.enabled,e.max_size<0?(u[n+"_quota_max_size_unlimited"]=!0,u[n+"_quota_max_size"]=null):(u[n+"_quota_max_size_unlimited"]=!1,u[n+"_quota_max_size"]=e.max_size+" B"),e.max_objects<0?(u[n+"_quota_max_objects_unlimited"]=!0,u[n+"_quota_max_objects"]=null):(u[n+"_quota_max_objects_unlimited"]=!1,u[n+"_quota_max_objects"]=e.max_objects)}),u=s.merge(n,u),this.userForm.setValue(u),this.subusers=l[0].subusers,this.s3Keys=l[0].keys,this.swiftKeys=l[0].swift_keys;const e={"read, write":"*"};l[0].caps.forEach(l=>{l.perm in e&&(l.perm=e[l.perm])}),this.capabilities=l[0].caps},l=>{this.error=l})})}goToListView(){this.router.navigate(["/rgw/user"])}onSubmit(){let l;if(this.userForm.pristine)return void this.goToListView();const n=this.getUID();if(this.editing){if(this._isGeneralDirty()){const l=this._getUpdateArgs();this.submitObservables.push(this.rgwUserService.update(n,l))}l=this.i18n('Updated Object Gateway user "{{uid}}"',{uid:n})}else{const u=this._getCreateArgs();this.submitObservables.push(this.rgwUserService.create(u)),l=this.i18n('Created Object Gateway user "{{uid}}"',{uid:n})}if(this._isUserQuotaDirty()){const l=this._getUserQuotaArgs();this.submitObservables.push(this.rgwUserService.updateQuota(n,l))}if(this._isBucketQuotaDirty()){const l=this._getBucketQuotaArgs();this.submitObservables.push(this.rgwUserService.updateQuota(n,l))}Object(K.a)(...this.submitObservables).subscribe({error:()=>{this.userForm.setErrors({cdSubmitButton:!0})},complete:()=>{this.notificationService.show(y.a.success,l),this.goToListView()}})}updateFieldsWhenTenanted(){this.showTenant=this.userForm.getValue("show_tenant"),this.showTenant?(this.userForm.get("user_id").markAsTouched(),this.previousTenant=this.userForm.get("tenant").value,this.userForm.get("tenant").patchValue(null)):(this.userForm.get("user_id").markAsUntouched(),this.userForm.get("tenant").patchValue(this.previousTenant))}getUID(){let l,n=this.userForm.getValue("user_id");return null!==this.userForm&&(l=this.userForm.getValue("tenant")),l&&l.length>0&&(n=`${this.userForm.getValue("tenant")}$${n}`),n}quotaMaxSizeValidator(l){return Object(w.b)(l.value)?null:null===RegExp("^(\\d+(\\.\\d+)?)\\s*(B|K(B|iB)?|M(B|iB)?|G(B|iB)?|T(B|iB)?)?$","i").exec(l.value)||(new $.a).toBytes(l.value)<1024?{quotaMaxSize:!0}:null}setSubuser(l,n){const u={"full-control":"full","read-write":"readwrite"},e=this.getUID();this.submitObservables.push(this.rgwUserService.createSubuser(e,{subuser:l.id,access:l.permissions in u?u[l.permissions]:l.permissions,key_type:"swift",secret_key:l.secret_key,generate_secret:l.generate_secret?"true":"false"})),s.isNumber(n)?this.subusers[n]=l:(this.subusers.push(l),this.swiftKeys.push({user:l.id,secret_key:l.generate_secret?"Apply your changes first...":l.secret_key})),this.userForm.markAsDirty()}deleteSubuser(l){const n=this.subusers[l];this.submitObservables.push(this.rgwUserService.deleteSubuser(this.getUID(),n.id)),this.s3Keys=this.s3Keys.filter(l=>l.user!==n.id),this.swiftKeys=this.swiftKeys.filter(l=>l.user!==n.id),this.subusers.splice(l,1),this.userForm.markAsDirty()}setCapability(l,n){const u=this.getUID();if(s.isNumber(n)){const e=this.capabilities[n];this.submitObservables.push(this.rgwUserService.deleteCapability(u,e.type,e.perm)),this.submitObservables.push(this.rgwUserService.addCapability(u,l.type,l.perm)),this.capabilities[n]=l}else this.submitObservables.push(this.rgwUserService.addCapability(u,l.type,l.perm)),this.capabilities.push(l);this.userForm.markAsDirty()}deleteCapability(l){const n=this.capabilities[l];this.submitObservables.push(this.rgwUserService.deleteCapability(this.getUID(),n.type,n.perm)),this.capabilities.splice(l,1),this.userForm.markAsDirty()}hasAllCapabilities(){return!s.difference(Q.getAll(),s.map(this.capabilities,"type")).length}setS3Key(l,n){if(s.isNumber(n));else{const n=l.user.match(/([^:]+)(:(.+))?/),u=n[1],e={subuser:n[2]?n[3]:"",generate_key:l.generate_key?"true":"false"};"false"===e.generate_key&&(s.isNil(l.access_key)||(e.access_key=l.access_key),s.isNil(l.secret_key)||(e.secret_key=l.secret_key)),this.submitObservables.push(this.rgwUserService.addS3Key(u,e)),this.s3Keys.push({user:l.user,access_key:l.generate_key?"Apply your changes first...":l.access_key,secret_key:l.generate_key?"Apply your changes first...":l.secret_key})}this.userForm.markAsDirty()}deleteS3Key(l){const n=this.s3Keys[l];this.submitObservables.push(this.rgwUserService.deleteS3Key(this.getUID(),n.access_key)),this.s3Keys.splice(l,1),this.userForm.markAsDirty()}showSubuserModal(l){const n=this.getUID(),u=this.bsModalService.show(X);if(s.isNumber(l)){const e=this.subusers[l];u.content.setEditing(),u.content.setValues(n,e.id,e.permissions)}else u.content.setEditing(!1),u.content.setValues(n),u.content.setSubusers(this.subusers);u.content.submitAction.subscribe(n=>{this.setSubuser(n,l)})}showS3KeyModal(l){const n=this.bsModalService.show(W);if(s.isNumber(l)){const u=this.s3Keys[l];n.content.setViewing(),n.content.setValues(u.user,u.access_key,u.secret_key)}else{const l=this._getS3KeyUserCandidates();n.content.setViewing(!1),n.content.setUserCandidates(l),n.content.submitAction.subscribe(l=>{this.setS3Key(l)})}}showSwiftKeyModal(l){const n=this.bsModalService.show(H),u=this.swiftKeys[l];n.content.setValues(u.user,u.secret_key)}showCapabilityModal(l){const n=this.bsModalService.show(Y);if(s.isNumber(l)){const u=this.capabilities[l];n.content.setEditing(),n.content.setValues(u.type,u.perm)}else n.content.setEditing(!1),n.content.setCapabilities(this.capabilities);n.content.submitAction.subscribe(n=>{this.setCapability(n,l)})}_isGeneralDirty(){return["display_name","email","max_buckets_mode","max_buckets","suspended"].some(l=>this.userForm.get(l).dirty)}_isUserQuotaDirty(){return["user_quota_enabled","user_quota_max_size_unlimited","user_quota_max_size","user_quota_max_objects_unlimited","user_quota_max_objects"].some(l=>this.userForm.get(l).dirty)}_isBucketQuotaDirty(){return["bucket_quota_enabled","bucket_quota_max_size_unlimited","bucket_quota_max_size","bucket_quota_max_objects_unlimited","bucket_quota_max_objects"].some(l=>this.userForm.get(l).dirty)}_getCreateArgs(){const l={uid:this.getUID(),display_name:this.userForm.getValue("display_name"),suspended:this.userForm.getValue("suspended"),email:"",max_buckets:this.userForm.getValue("max_buckets"),generate_key:this.userForm.getValue("generate_key"),access_key:"",secret_key:""},n=this.userForm.getValue("email");s.isString(n)&&n.length>0&&s.merge(l,{email:n}),this.userForm.getValue("generate_key")||s.merge(l,{generate_key:!1,access_key:this.userForm.getValue("access_key"),secret_key:this.userForm.getValue("secret_key")});const u=parseInt(this.userForm.getValue("max_buckets_mode"),10);return s.includes([-1,0],u)&&s.merge(l,{max_buckets:u}),l}_getUpdateArgs(){const l={},n=["display_name","email","max_buckets","suspended"];for(const e of n)l[e]=this.userForm.getValue(e);const u=parseInt(this.userForm.getValue("max_buckets_mode"),10);return s.includes([-1,0],u)&&(l.max_buckets=u),l}_getUserQuotaArgs(){const l={quota_type:"user",enabled:this.userForm.getValue("user_quota_enabled"),max_size_kb:-1,max_objects:-1};if(!this.userForm.getValue("user_quota_max_size_unlimited")){const n=(new $.a).toBytes(this.userForm.getValue("user_quota_max_size"));l.max_size_kb=(n/1024).toFixed(0)}return this.userForm.getValue("user_quota_max_objects_unlimited")||(l.max_objects=this.userForm.getValue("user_quota_max_objects")),l}_getBucketQuotaArgs(){const l={quota_type:"bucket",enabled:this.userForm.getValue("bucket_quota_enabled"),max_size_kb:-1,max_objects:-1};if(!this.userForm.getValue("bucket_quota_max_size_unlimited")){const n=(new $.a).toBytes(this.userForm.getValue("bucket_quota_max_size"));l.max_size_kb=(n/1024).toFixed(0)}return this.userForm.getValue("bucket_quota_max_objects_unlimited")||(l.max_objects=this.userForm.getValue("bucket_quota_max_objects")),l}_getS3KeyUserCandidates(){let l=[];const n=this.getUID();return s.isString(n)&&!s.isEmpty(n)&&l.push(n),this.subusers.forEach(n=>{l.push(n.id)}),this.s3Keys.forEach(n=>{l.push(n.user)}),l=s.uniq(l),l}onMaxBucketsModeChange(l){"1"===l&&(this.userForm.get("max_buckets").valid||this.userForm.patchValue({max_buckets:1e3}))}}var nl=u("x38r");const ul=new U.a("rgw/user");class el extends S.a{constructor(l,n,u,e,t,a,i){super(),this.authStorageService=l,this.rgwUserService=n,this.bsModalService=u,this.i18n=e,this.urlBuilder=t,this.actionLabels=a,this.ngZone=i,this.columns=[],this.users=[],this.selection=new j.a,this.isStale=!1,this.permission=this.authStorageService.getPermissions().rgw,this.columns=[{name:this.i18n("Username"),prop:"uid",flexGrow:1},{name:this.i18n("Tenant"),prop:"tenant",flexGrow:1},{name:this.i18n("Full name"),prop:"display_name",flexGrow:1},{name:this.i18n("Email address"),prop:"email",flexGrow:1},{name:this.i18n("Suspended"),prop:"suspended",flexGrow:1,cellClass:"text-center",cellTransformation:nl.a.checkIcon},{name:this.i18n("Max. buckets"),prop:"max_buckets",flexGrow:1,cellTransformation:nl.a.map,customTemplateConfig:{"-1":this.i18n("Disabled"),0:this.i18n("Unlimited")}}];const o=()=>this.selection.first()&&""+encodeURIComponent(this.selection.first().uid);this.tableActions=[{permission:"create",icon:k.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:l=>!l.hasSelection},{permission:"update",icon:k.a.edit,routerLink:()=>this.urlBuilder.getEdit(o()),name:this.actionLabels.EDIT},{permission:"delete",icon:k.a.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSelection,name:this.actionLabels.DELETE,canBePrimary:l=>l.hasMultiSelection}],this.timeConditionReached()}timeConditionReached(){clearTimeout(this.staleTimeout),this.ngZone.runOutsideAngular(()=>{this.staleTimeout=window.setTimeout(()=>{this.ngZone.run(()=>{this.isStale=!0})},1e4)})}getUserList(l){this.isStale=!1,this.timeConditionReached(),this.rgwUserService.list().subscribe(l=>{this.users=l},()=>{l.error()})}updateSelection(l){this.selection=l}deleteAction(){this.bsModalService.show(D.a,{initialState:{itemDescription:this.i18n(this.selection.hasSingleSelection?"user":"users"),itemNames:this.selection.selected.map(l=>l.uid),submitActionObservable:()=>new V.a(l=>{Object(x.a)(this.selection.selected.map(l=>this.rgwUserService.delete(l.uid))).subscribe(null,n=>{l.error(n),this.table.refreshBtn()},()=>{l.complete(),this.table.refreshBtn()})})}})}}class tl{}const al={breadcrumbs:"Daemons"},il={breadcrumbs:"Users"},ol={breadcrumbs:t.a.CREATE},sl={breadcrumbs:t.a.EDIT},dl={breadcrumbs:"Buckets"},rl={breadcrumbs:t.a.CREATE},cl={breadcrumbs:t.a.EDIT},ml={breadcrumbs:"Object Gateway"};class fl{}var gl=u("MdoF"),pl=u("ES0t"),vl=u("Xg1U"),hl=u("z5nN"),bl=u("iutN"),Cl=u("pMnS"),_l=u("EEJc"),Rl=u("PEr+"),kl=u("a40w"),yl=u("hfeG"),Il=u("2ZVE"),wl=u("a278"),El=u("insk"),Nl=u("cUpR"),ql=u("20UP"),Tl=u("GiVz"),Vl=u("pKUh"),xl=u("sLuX"),Sl=u("FSuO"),Dl=u("a0VL"),Fl=u("j8L6"),jl=u("b5OY"),Bl=u("pxLl"),Al=u("SVse");class Pl{constructor(l,n){this.rgwDaemonService=l,this.authStorageService=n,this.serviceId="",this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnChanges(){this.selection&&(this.serviceId=this.selection.id)}getMetaData(){s.isEmpty(this.serviceId)||this.rgwDaemonService.get(this.serviceId).subscribe(l=>{this.metadata=l.rgw_metadata})}}var Ul=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ol(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](1,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","one"],["uid","x5ARzZtmk"]],null,null,null,wl.b,wl.a)),e["ɵdid"](3,638976,null,0,El.a,[Nl.b,ql.a,Tl.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){var u=n.component;l(n,1,0,"Performance Details"),l(n,3,0,"rgw-instance-detail?var-rgw_servers=rgw."+u.serviceId,"one","x5ARzZtmk")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby)}))}function Ml(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,11,"tabset",[],[[2,"tab-container",null]],null,null,Vl.b,Vl.a)),e["ɵdid"](1,180224,null,0,Il.e,[Il.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](4,0,null,null,1,"cd-table-key-value",[],null,[[null,"fetchData"]],(function(l,n,u){var e=!0;return"fetchData"===n&&(e=!1!==l.component.getMetaData()&&e),e}),xl.b,xl.a)),e["ɵdid"](5,638976,null,0,Sl.a,[Dl.a],{data:[0,"data"]},{fetchData:"fetchData"}),(l()(),e["ɵeld"](6,0,null,0,3,"tab",[["heading","Performance Counters"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](7,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](8,0,null,null,1,"cd-table-performance-counter",[["serviceType","rgw"]],null,null,null,Fl.b,Fl.a)),e["ɵdid"](9,114688,null,0,jl.a,[Bl.a,Tl.a],{serviceType:[0,"serviceType"],serviceId:[1,"serviceId"]},null),(l()(),e["ɵand"](16777216,null,0,1,null,Ol)),e["ɵdid"](11,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Details"),l(n,5,0,u.metadata),l(n,7,0,"Performance Counters"),l(n,9,0,"rgw",u.serviceId),l(n,11,0,u.grafanaPermission.read)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby),l(n,6,0,e["ɵnov"](n,7).id,e["ɵnov"](n,7).active,e["ɵnov"](n,7).addClass,e["ɵnov"](n,7).role,e["ɵnov"](n,7).ariaLabelledby)}))}function Ll(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Ml)),e["ɵdid"](1,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,1,0,n.component.selection)}),null)}function zl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-daemon-details",[],null,null,null,Ll,Ul)),e["ɵdid"](1,573440,null,0,Pl,[L,P.a],null,null)],null,null)}var Gl=e["ɵccf"]("cd-rgw-daemon-details",Pl,zl,{selection:"selection"},{},[]),Kl=u("iExv");class $l{constructor(l){this.rgwBucketService=l}ngOnChanges(){this.selection&&this.rgwBucketService.get(this.selection.bid).subscribe(l=>{this.selection=l})}}var Zl=e["ɵcrt"]({encapsulation:0,styles:[["table[_ngcontent-%COMP%]{table-layout:fixed}table[_ngcontent-%COMP%]   td[_ngcontent-%COMP%]{word-wrap:break-word}"]],data:{}});function Ql(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function Yl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "])),e["ɵppd"](2,1)],null,(function(l,n){var u=n.component,t=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent.parent.parent,2),u.selection.bucket_quota.max_size));l(n,1,0,t)}))}function Wl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function Jl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.selection.bucket_quota.max_objects)}))}function Xl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,24,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket quota"])),(l()(),e["ɵeld"](3,0,null,null,21,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,20,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](8,0,null,null,2,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,["",""])),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,6,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum size"])),(l()(),e["ɵand"](16777216,null,null,1,null,Ql)),e["ɵdid"](15,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Yl)),e["ɵdid"](17,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](18,0,null,null,6,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](19,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum objects"])),(l()(),e["ɵand"](16777216,null,null,1,null,Wl)),e["ɵdid"](22,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Jl)),e["ɵdid"](24,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,15,0,u.selection.bucket_quota.max_size<=-1),l(n,17,0,u.selection.bucket_quota.max_size>-1),l(n,22,0,u.selection.bucket_quota.max_objects<=-1),l(n,24,0,u.selection.bucket_quota.max_objects>-1)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent.parent.parent,1),u.selection.bucket_quota.enabled));l(n,9,0,t)}))}function Hl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mode"])),(l()(),e["ɵeld"](4,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](5,null,["",""])),(l()(),e["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Days"])),(l()(),e["ɵeld"](9,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](10,null,["",""])),(l()(),e["ɵeld"](11,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Years"])),(l()(),e["ɵeld"](14,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](15,null,["",""]))],null,(function(l,n){var u=n.component;l(n,5,0,u.selection.lock_mode),l(n,10,0,u.selection.lock_retention_period_days),l(n,15,0,u.selection.lock_retention_period_years)}))}function ln(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,82,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,67,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,66,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](7,null,["",""])),(l()(),e["ɵeld"](8,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["ID"])),(l()(),e["ɵeld"](11,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](12,null,["",""])),(l()(),e["ɵeld"](13,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](14,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Owner"])),(l()(),e["ɵeld"](16,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](17,null,["",""])),(l()(),e["ɵeld"](18,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](19,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Index type"])),(l()(),e["ɵeld"](21,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](22,null,["",""])),(l()(),e["ɵeld"](23,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](24,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Placement rule"])),(l()(),e["ɵeld"](26,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](27,null,["",""])),(l()(),e["ɵeld"](28,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](29,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Marker"])),(l()(),e["ɵeld"](31,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](32,null,["",""])),(l()(),e["ɵeld"](33,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](34,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum marker"])),(l()(),e["ɵeld"](36,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](37,null,["",""])),(l()(),e["ɵeld"](38,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](39,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Version"])),(l()(),e["ɵeld"](41,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](42,null,["",""])),(l()(),e["ɵeld"](43,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](44,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Master version"])),(l()(),e["ɵeld"](46,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](47,null,["",""])),(l()(),e["ɵeld"](48,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](49,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Modification time"])),(l()(),e["ɵeld"](51,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](52,null,["",""])),e["ɵppd"](53,1),(l()(),e["ɵeld"](54,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](55,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Zonegroup"])),(l()(),e["ɵeld"](57,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](58,null,["",""])),(l()(),e["ɵeld"](59,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](60,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Versioning"])),(l()(),e["ɵeld"](62,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](63,null,["",""])),(l()(),e["ɵeld"](64,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](65,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["MFA Delete"])),(l()(),e["ɵeld"](67,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](68,null,["",""])),(l()(),e["ɵand"](16777216,null,null,1,null,Xl)),e["ɵdid"](70,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](71,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Locking"])),(l()(),e["ɵeld"](73,0,null,null,9,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](74,0,null,null,8,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](75,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](76,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](78,0,null,null,2,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](79,null,["",""])),e["ɵppd"](80,1),(l()(),e["ɵand"](16777216,null,null,1,null,Hl)),e["ɵdid"](82,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,70,0,u.selection.bucket_quota),l(n,82,0,u.selection.lock_enabled)}),(function(l,n){var u=n.component;l(n,7,0,u.selection.bid),l(n,12,0,u.selection.id),l(n,17,0,u.selection.owner),l(n,22,0,u.selection.index_type),l(n,27,0,u.selection.placement_rule),l(n,32,0,u.selection.marker),l(n,37,0,u.selection.max_marker),l(n,42,0,u.selection.ver),l(n,47,0,u.selection.master_ver);var t=e["ɵunv"](n,52,0,l(n,53,0,e["ɵnov"](n.parent.parent,0),u.selection.mtime));l(n,52,0,t),l(n,58,0,u.selection.zonegroup),l(n,63,0,u.selection.versioning),l(n,68,0,u.selection.mfa_delete);var a=e["ɵunv"](n,79,0,l(n,80,0,e["ɵnov"](n.parent.parent,1),u.selection.lock_enabled));l(n,79,0,a)}))}function nn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,Vl.b,Vl.a)),e["ɵdid"](1,180224,null,0,Il.e,[Il.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ln)),e["ɵdid"](5,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Details"),l(n,5,0,u.selection)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby)}))}function un(l){return e["ɵvid"](0,[e["ɵpid"](0,Dl.a,[Al.DatePipe]),e["ɵpid"](0,Kl.a,[Tl.a]),e["ɵpid"](0,A.a,[$.a]),(l()(),e["ɵand"](16777216,null,null,1,null,nn)),e["ɵdid"](4,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,4,0,n.component.selection)}),null)}function en(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-bucket-details",[],null,null,null,un,Zl)),e["ɵdid"](1,573440,null,0,$l,[C],null,null)],null,null)}var tn=e["ɵccf"]("cd-rgw-bucket-details",$l,en,{selection:"selection"},{},[]),an=u("25BL"),on=u("FE24"),sn=u("z/SZ"),dn=u("GS7A"),rn=u("TJUb");class cn{constructor(l,n,u){this.rgwUserService=l,this.bsModalService=n,this.i18n=u,this.keys=[],this.keysColumns=[],this.keysSelection=new j.a,this.icons=k.a}ngOnInit(){this.keysColumns=[{name:this.i18n("Username"),prop:"username",flexGrow:1},{name:this.i18n("Type"),prop:"type",flexGrow:1}],this.maxBucketsMap={"-1":this.i18n("Disabled"),0:this.i18n("Unlimited")}}ngOnChanges(){this.selection&&(this.user=this.selection,this.user.subusers=s.sortBy(this.user.subusers,"id"),this.user.caps=s.sortBy(this.user.caps,"type"),this.rgwUserService.getQuota(this.user.uid).subscribe(l=>{s.extend(this.user,l)}),this.keys=[],this.user.keys&&this.user.keys.forEach(l=>{this.keys.push({id:this.keys.length+1,type:"S3",username:l.user,ref:l})}),this.user.swift_keys&&this.user.swift_keys.forEach(l=>{this.keys.push({id:this.keys.length+1,type:"Swift",username:l.user,ref:l})}),this.keys=s.sortBy(this.keys,"user"))}updateKeysSelection(l){this.keysSelection=l}showKeyModal(){const l=this.keysSelection.first(),n=this.bsModalService.show("S3"===l.type?W:H);switch(l.type){case"S3":n.content.setViewing(),n.content.setValues(l.ref.user,l.ref.access_key,l.ref.secret_key);break;case"Swift":n.content.setValues(l.ref.user,l.ref.secret_key)}}}var mn=u("LqlI"),fn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function gn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Email address"])),(l()(),e["ɵeld"](3,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](4,null,["",""]))],null,(function(l,n){l(n,4,0,n.component.user.email)}))}function pn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"div",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," (",") "]))],null,(function(l,n){l(n,1,0,n.context.$implicit.id,n.context.$implicit.permissions)}))}function vn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Subusers"])),(l()(),e["ɵeld"](3,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,pn)),e["ɵdid"](5,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,5,0,n.component.user.subusers)}),null)}function hn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"div",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," (",") "]))],null,(function(l,n){l(n,1,0,n.context.$implicit.type,n.context.$implicit.perm)}))}function bn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Capabilities"])),(l()(),e["ɵeld"](3,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,hn)),e["ɵdid"](5,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,5,0,n.component.user.caps)}),null)}function Cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function _n(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function Rn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "])),e["ɵppd"](2,1)],null,(function(l,n){var u=n.component,t=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent.parent.parent,2),u.user.user_quota.max_size));l(n,1,0,t)}))}function kn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function yn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function In(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.user.user_quota.max_objects)}))}function wn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,28,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User quota"])),(l()(),e["ɵeld"](3,0,null,null,25,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,24,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](8,0,null,null,2,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,["",""])),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,8,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum size"])),(l()(),e["ɵand"](16777216,null,null,1,null,Cn)),e["ɵdid"](15,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,_n)),e["ɵdid"](17,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Rn)),e["ɵdid"](19,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](20,0,null,null,8,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](21,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum objects"])),(l()(),e["ɵand"](16777216,null,null,1,null,kn)),e["ɵdid"](24,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,yn)),e["ɵdid"](26,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,In)),e["ɵdid"](28,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,15,0,!u.user.user_quota.enabled),l(n,17,0,u.user.user_quota.enabled&&u.user.user_quota.max_size<=-1),l(n,19,0,u.user.user_quota.enabled&&u.user.user_quota.max_size>-1),l(n,24,0,!u.user.user_quota.enabled),l(n,26,0,u.user.user_quota.enabled&&u.user.user_quota.max_objects<=-1),l(n,28,0,u.user.user_quota.enabled&&u.user.user_quota.max_objects>-1)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent.parent.parent,0),u.user.user_quota.enabled));l(n,9,0,t)}))}function En(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function Nn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function qn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "])),e["ɵppd"](2,1)],null,(function(l,n){var u=n.component,t=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent.parent.parent,2),u.user.bucket_quota.max_size));l(n,1,0,t)}))}function Tn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function Vn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function xn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.user.bucket_quota.max_objects)}))}function Sn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,28,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket quota"])),(l()(),e["ɵeld"](3,0,null,null,25,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,24,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](8,0,null,null,2,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,["",""])),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,8,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum size"])),(l()(),e["ɵand"](16777216,null,null,1,null,En)),e["ɵdid"](15,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Nn)),e["ɵdid"](17,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,qn)),e["ɵdid"](19,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](20,0,null,null,8,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](21,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum objects"])),(l()(),e["ɵand"](16777216,null,null,1,null,Tn)),e["ɵdid"](24,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Vn)),e["ɵdid"](26,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,xn)),e["ɵdid"](28,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,15,0,!u.user.bucket_quota.enabled),l(n,17,0,u.user.bucket_quota.enabled&&u.user.bucket_quota.max_size<=-1),l(n,19,0,u.user.bucket_quota.enabled&&u.user.bucket_quota.max_size>-1),l(n,24,0,!u.user.bucket_quota.enabled),l(n,26,0,u.user.bucket_quota.enabled&&u.user.bucket_quota.max_objects<=-1),l(n,28,0,u.user.bucket_quota.enabled&&u.user.bucket_quota.max_objects>-1)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent.parent.parent,0),u.user.bucket_quota.enabled));l(n,9,0,t)}))}function Dn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,50,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,45,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,44,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Tenant"])),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](7,null,["",""])),(l()(),e["ɵeld"](8,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User ID"])),(l()(),e["ɵeld"](11,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](12,null,["",""])),(l()(),e["ɵeld"](13,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](14,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](16,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](17,null,["",""])),(l()(),e["ɵeld"](18,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](19,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Full name"])),(l()(),e["ɵeld"](21,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](22,null,["",""])),(l()(),e["ɵand"](16777216,null,null,1,null,gn)),e["ɵdid"](24,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](25,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](26,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Suspended"])),(l()(),e["ɵeld"](28,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](29,null,["",""])),e["ɵppd"](30,1),(l()(),e["ɵeld"](31,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](32,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["System"])),(l()(),e["ɵeld"](34,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](35,null,["",""])),e["ɵppd"](36,1),(l()(),e["ɵeld"](37,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](38,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum buckets"])),(l()(),e["ɵeld"](40,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](41,null,["",""])),e["ɵppd"](42,2),(l()(),e["ɵand"](16777216,null,null,1,null,vn)),e["ɵdid"](44,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,bn)),e["ɵdid"](46,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,wn)),e["ɵdid"](48,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Sn)),e["ɵdid"](50,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,24,0,null==u.user.email?null:u.user.email.length),l(n,44,0,u.user.subusers&&u.user.subusers.length),l(n,46,0,u.user.caps&&u.user.caps.length),l(n,48,0,u.user.user_quota),l(n,50,0,u.user.bucket_quota)}),(function(l,n){var u=n.component;l(n,7,0,u.user.tenant),l(n,12,0,u.user.user_id),l(n,17,0,u.user.uid),l(n,22,0,u.user.display_name);var t=e["ɵunv"](n,29,0,l(n,30,0,e["ɵnov"](n.parent.parent,0),u.user.suspended));l(n,29,0,t);var a=e["ɵunv"](n,35,0,l(n,36,0,e["ɵnov"](n.parent.parent,0),"true"===u.user.system));l(n,35,0,a);var i=e["ɵunv"](n,41,0,l(n,42,0,e["ɵnov"](n.parent.parent,1),u.user.max_buckets,u.maxBucketsMap));l(n,41,0,i)}))}function Fn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,14,"tab",[["heading","Keys"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](1,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](2,0,null,null,12,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["selectionType","multi"]],null,[[null,"updateSelection"]],(function(l,n,u){var e=!0;return"updateSelection"===n&&(e=!1!==l.component.updateKeysSelection(u)&&e),e}),an.b,an.a)),e["ɵdid"](3,2867200,null,0,F.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],forceIdentifier:[3,"forceIdentifier"],selectionType:[4,"selectionType"]},{updateSelection:"updateSelection"}),(l()(),e["ɵeld"](4,0,null,1,10,"div",[["class","table-actions"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,16777216,null,null,9,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),e["ɵprd"](512,null,on.f,on.f,[]),e["ɵdid"](7,212992,null,0,on.c,[e.ElementRef,e.Renderer2,e.ViewContainerRef,sn.a,on.f,on.a,dn.b],null,null),(l()(),e["ɵeld"](8,0,null,null,6,"button",[["class","btn btn-secondary"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showKeyModal()&&e),e}),null,null)),(l()(),e["ɵeld"](9,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](11,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](12,1),(l()(),e["ɵeld"](13,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Show"]))],(function(l,n){var u=n.component;l(n,1,0,"Keys"),l(n,3,0,u.keys,u.keysColumns,"flex","true","multi"),l(n,7,0);var e=l(n,12,0,u.icons.show);l(n,11,0,e)}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby),l(n,5,0,e["ɵnov"](n,7).dropup,e["ɵnov"](n,7).isOpen,e["ɵnov"](n,7).isOpen&&e["ɵnov"](n,7).isBs4),l(n,8,0,!u.keysSelection.hasSingleSelection)}))}function jn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"tabset",[],[[2,"tab-container",null]],null,null,Vl.b,Vl.a)),e["ɵdid"](1,180224,null,0,Il.e,[Il.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Dn)),e["ɵdid"](5,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,0,1,null,Fn)),e["ɵdid"](7,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Details"),l(n,5,0,u.user),l(n,7,0,u.keys.length)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby)}))}function Bn(l){return e["ɵvid"](0,[e["ɵpid"](0,Kl.a,[Tl.a]),e["ɵpid"](0,rn.a,[]),e["ɵpid"](0,B.a,[$.a]),e["ɵqud"](671088640,1,{accessKeyTpl:0}),e["ɵqud"](671088640,2,{secretKeyTpl:0}),(l()(),e["ɵand"](16777216,null,null,1,null,jn)),e["ɵdid"](6,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,6,0,n.component.selection)}),null)}function An(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-details",[],null,null,null,Bn,fn)),e["ɵdid"](1,638976,null,0,cn,[R.a,mn.b,Tl.a],null,null)],(function(l,n){l(n,1,0)}),null)}var Pn=e["ɵccf"]("cd-rgw-user-details",cn,An,{selection:"selection"},{},[]),Un=u("8xTl"),On=u("ajRT"),Mn=u("mXUL"),Ln=u("+gVj"),zn=u("ANnk"),Gn=u("f/UV"),Kn=u("D4zM"),$n=u("OcYo"),Zn=u("EApP"),Qn=u("KVJa"),Yn=u("Z21x"),Wn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Jn(l){return e["ɵvid"](0,[e["ɵpid"](0,Al.TitleCasePipe,[]),e["ɵpid"](0,Un.a,[]),(l()(),e["ɵeld"](2,0,null,null,51,"cd-modal",[],null,null,null,_l.c,_l.b)),e["ɵdid"](3,49152,null,0,On.a,[],{modalRef:[0,"modalRef"]},null),(l()(),e["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," "," "])),e["ɵppd"](6,1),e["ɵppd"](7,1),(l()(),e["ɵeld"](8,0,null,1,45,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,41,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,40,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,12).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,12).onReset()&&t),t}),null,null)),e["ɵdid"](11,16384,null,0,o.G,[],null,null),e["ɵdid"](12,4210688,null,0,o.t,[[8,null],[8,null]],null,null),e["ɵprd"](2048,null,o.d,null,[o.t]),e["ɵdid"](14,16384,null,0,o.s,[[4,o.d]],null,null),(l()(),e["ɵeld"](15,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](16,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](19,0,null,0,1,"label",[["class","cd-col-form-label"],["for","user"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](21,0,null,0,8,"div",[["class","cd-col-form-inpu"]],null,null,null,null,null)),(l()(),e["ɵeld"](22,0,null,null,7,"input",[["class","form-control"],["id","user"],["name","user"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0,a=l.component;return"input"===n&&(t=!1!==e["ɵnov"](l,24)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,24).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,24)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,24)._compositionEnd(u.target.value)&&t),"ngModelChange"===n&&(t=!1!==(a.user=u)&&t),t}),null,null)),e["ɵdid"](23,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](24,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](26,671744,null,0,o.u,[[2,o.d],[8,null],[8,null],[6,o.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),e["ɵprd"](2048,null,o.q,null,[o.u]),e["ɵdid"](28,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](29,16384,null,0,Ln.h,[[3,o.d],Ln.a],null,null),(l()(),e["ɵeld"](30,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](31,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](34,0,null,0,1,"label",[["class","cd-col-form-label"],["for","secret_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Secret key"])),(l()(),e["ɵeld"](36,0,null,0,14,"div",[["class","cd-col-form-inpu"]],null,null,null,null,null)),(l()(),e["ɵeld"](37,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](38,0,null,null,7,"input",[["class","form-control"],["id","secret_key"],["name","secret_key"],["type","password"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0,a=l.component;return"input"===n&&(t=!1!==e["ɵnov"](l,40)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,40).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,40)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,40)._compositionEnd(u.target.value)&&t),"ngModelChange"===n&&(t=!1!==(a.secret_key=u)&&t),t}),null,null)),e["ɵdid"](39,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](40,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](42,671744,null,0,o.u,[[2,o.d],[8,null],[8,null],[6,o.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),e["ɵprd"](2048,null,o.q,null,[o.u]),e["ɵdid"](44,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](45,16384,null,0,Ln.h,[[3,o.d],Ln.a],null,null),(l()(),e["ɵeld"](46,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](47,0,null,null,1,"button",[["cdPasswordButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,48).onClick()&&t),t}),null,null)),e["ɵdid"](48,81920,null,0,Kn.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](49,0,null,null,1,"button",[["cdCopy2ClipboardButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,50).onClick()&&t),t}),null,null)),e["ɵdid"](50,81920,null,0,$n.a,[e.ElementRef,e.Renderer2,Zn.j,Tl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵeld"](51,0,null,null,2,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](52,0,null,null,1,"cd-back-button",[],null,null,null,Qn.b,Qn.a)),e["ɵdid"](53,49152,null,0,Yn.a,[Al.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.bsModalRef),l(n,16,0),l(n,26,0,"user",u.user),l(n,31,0),l(n,42,0,"secret_key",u.secret_key),l(n,48,0,"secret_key"),l(n,50,0,"secret_key"),l(n,53,0,u.bsModalRef.hide)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,5,1,l(n,7,0,e["ɵnov"](n,1),u.resource));l(n,5,0,t,a),l(n,10,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending),l(n,15,0,e["ɵnov"](n,16).hasErrors,e["ɵnov"](n,16).hasSuccess),l(n,22,0,!0,e["ɵnov"](n,28).ngClassUntouched,e["ɵnov"](n,28).ngClassTouched,e["ɵnov"](n,28).ngClassPristine,e["ɵnov"](n,28).ngClassDirty,e["ɵnov"](n,28).ngClassValid,e["ɵnov"](n,28).ngClassInvalid,e["ɵnov"](n,28).ngClassPending,e["ɵnov"](n,29).validClass,e["ɵnov"](n,29).invalidClass),l(n,30,0,e["ɵnov"](n,31).hasErrors,e["ɵnov"](n,31).hasSuccess),l(n,38,0,!0,e["ɵnov"](n,44).ngClassUntouched,e["ɵnov"](n,44).ngClassTouched,e["ɵnov"](n,44).ngClassPristine,e["ɵnov"](n,44).ngClassDirty,e["ɵnov"](n,44).ngClassValid,e["ɵnov"](n,44).ngClassInvalid,e["ɵnov"](n,44).ngClassPending,e["ɵnov"](n,45).validClass,e["ɵnov"](n,45).invalidClass)}))}function Xn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-swift-key-modal",[],null,null,null,Jn,Wn)),e["ɵdid"](1,49152,null,0,H,[mn.a,Tl.a,t.b],null,null)],null,null)}var Hn=e["ɵccf"]("cd-rgw-user-swift-key-modal",H,Xn,{},{},[]),lu=u("IZUe"),nu=u("gp3X"),uu=u("sb0X"),eu=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function tu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","user"],["id","user"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,2)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,2).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,2)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,2)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](2,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](4,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](6,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](7,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,4,0,"user"),l(n,7,0,"user")}),(function(l,n){l(n,0,0,!0,e["ɵnov"](n,6).ngClassUntouched,e["ɵnov"](n,6).ngClassTouched,e["ɵnov"](n,6).ngClassPristine,e["ɵnov"](n,6).ngClassDirty,e["ɵnov"](n,6).ngClassValid,e["ɵnov"](n,6).ngClassInvalid,e["ɵnov"](n,6).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function au(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a username --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function iu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function ou(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,12,"select",[["autofocus",""],["class","form-control custom-select"],["formControlName","user"],["id","user"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,3).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,3).onTouched()&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,lu.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](2,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](5,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](7,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](8,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,au)),e["ɵdid"](10,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,iu)),e["ɵdid"](12,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,1,0,""),l(n,5,0,"user"),l(n,8,0,"user"),l(n,10,0,null!==u.userCandidates),l(n,12,0,u.userCandidates)}),(function(l,n){l(n,0,0,e["ɵnov"](n,7).ngClassUntouched,e["ɵnov"](n,7).ngClassTouched,e["ɵnov"](n,7).ngClassPristine,e["ɵnov"](n,7).ngClassDirty,e["ɵnov"](n,7).ngClassValid,e["ɵnov"](n,7).ngClassInvalid,e["ɵnov"](n,7).ngClassPending,e["ɵnov"](n,8).validClass,e["ɵnov"](n,8).invalidClass)}))}function su(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function du(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","generate_key"],["id","generate_key"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","generate_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Auto-generate key"]))],(function(l,n){l(n,1,0),l(n,10,0,"generate_key"),l(n,13,0,"generate_key")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function ru(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function cu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","access_key"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](6,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](7,{required:0}),(l()(),e["ɵted"](-1,null,["Access key"])),(l()(),e["ɵeld"](9,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,7,"input",[["class","form-control"],["formControlName","access_key"],["id","access_key"],["type","password"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](12,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](15,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](17,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](18,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](19,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](20,0,null,null,1,"button",[["cdPasswordButton","access_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,21).onClick()&&t),t}),null,null)),e["ɵdid"](21,81920,null,0,Kn.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](22,0,null,null,1,"button",[["cdCopy2ClipboardButton","access_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,23).onClick()&&t),t}),null,null)),e["ɵdid"](23,81920,null,0,$n.a,[e.ElementRef,e.Renderer2,Zn.j,Tl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ru)),e["ɵdid"](25,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0);var t=l(n,7,0,!u.viewing);l(n,6,0,"cd-col-form-label",t),l(n,15,0,"access_key"),l(n,18,0,"access_key"),l(n,21,0,"access_key"),l(n,23,0,"access_key"),l(n,25,0,u.formGroup.showError("access_key",e["ɵnov"](n.parent,11),"required"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,u.viewing,e["ɵnov"](n,17).ngClassUntouched,e["ɵnov"](n,17).ngClassTouched,e["ɵnov"](n,17).ngClassPristine,e["ɵnov"](n,17).ngClassDirty,e["ɵnov"](n,17).ngClassValid,e["ɵnov"](n,17).ngClassInvalid,e["ɵnov"](n,17).ngClassPending,e["ɵnov"](n,18).validClass,e["ɵnov"](n,18).invalidClass)}))}function mu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function fu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","secret_key"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](6,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](7,{required:0}),(l()(),e["ɵted"](-1,null,["Secret key"])),(l()(),e["ɵeld"](9,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,7,"input",[["class","form-control"],["formControlName","secret_key"],["id","secret_key"],["type","password"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](12,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](15,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](17,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](18,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](19,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](20,0,null,null,1,"button",[["cdPasswordButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,21).onClick()&&t),t}),null,null)),e["ɵdid"](21,81920,null,0,Kn.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](22,0,null,null,1,"button",[["cdCopy2ClipboardButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,23).onClick()&&t),t}),null,null)),e["ɵdid"](23,81920,null,0,$n.a,[e.ElementRef,e.Renderer2,Zn.j,Tl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,mu)),e["ɵdid"](25,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0);var t=l(n,7,0,!u.viewing);l(n,6,0,"cd-col-form-label",t),l(n,15,0,"secret_key"),l(n,18,0,"secret_key"),l(n,21,0,"secret_key"),l(n,23,0,"secret_key"),l(n,25,0,u.formGroup.showError("secret_key",e["ɵnov"](n.parent,11),"required"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,u.viewing,e["ɵnov"](n,17).ngClassUntouched,e["ɵnov"](n,17).ngClassTouched,e["ɵnov"](n,17).ngClassPristine,e["ɵnov"](n,17).ngClassDirty,e["ɵnov"](n,17).ngClassValid,e["ɵnov"](n,17).ngClassInvalid,e["ɵnov"](n,17).ngClassPending,e["ɵnov"](n,18).validClass,e["ɵnov"](n,18).invalidClass)}))}function gu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.onSubmit()&&e),e}),nu.b,nu.a)),e["ɵdid"](1,114688,null,0,uu.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](2,0,[""," ",""])),e["ɵppd"](3,1),e["ɵppd"](4,1)],(function(l,n){l(n,1,0,n.component.formGroup)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,2,0,l(n,3,0,e["ɵnov"](n.parent,0),u.action)),a=e["ɵunv"](n,2,1,l(n,4,0,e["ɵnov"](n.parent,1),u.resource));l(n,2,0,t,a)}))}function pu(l){return e["ɵvid"](0,[e["ɵpid"](0,Al.TitleCasePipe,[]),e["ɵpid"](0,Un.a,[]),(l()(),e["ɵeld"](2,0,null,null,40,"cd-modal",[],null,null,null,_l.c,_l.b)),e["ɵdid"](3,49152,null,0,On.a,[],{modalRef:[0,"modalRef"]},null),(l()(),e["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," ",""])),e["ɵppd"](6,1),e["ɵppd"](7,1),(l()(),e["ɵeld"](8,0,null,1,34,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,33,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,11).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),e["ɵdid"](10,16384,null,0,o.G,[],null,null),e["ɵdid"](11,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](13,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](14,16384,null,0,Ln.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](15,0,null,null,22,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](16,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](17,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](20,0,null,0,4,"label",[["class","cd-col-form-label"],["for","user"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](22,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](23,{required:0}),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](25,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,tu)),e["ɵdid"](27,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ou)),e["ɵdid"](29,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,su)),e["ɵdid"](31,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,du)),e["ɵdid"](33,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,cu)),e["ɵdid"](35,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,fu)),e["ɵdid"](37,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](38,0,null,null,4,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,gu)),e["ɵdid"](40,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](41,0,null,null,1,"cd-back-button",[],null,null,null,Qn.b,Qn.a)),e["ɵdid"](42,49152,null,0,Yn.a,[Al.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.bsModalRef),l(n,11,0,u.formGroup),l(n,14,0,u.formGroup),l(n,17,0);var t=l(n,23,0,!u.viewing);l(n,22,0,"cd-col-form-label",t),l(n,27,0,u.viewing),l(n,29,0,!u.viewing),l(n,31,0,u.formGroup.showError("user",e["ɵnov"](n,11),"required")),l(n,33,0,!u.viewing),l(n,35,0,!u.formGroup.getValue("generate_key")),l(n,37,0,!u.formGroup.getValue("generate_key")),l(n,40,0,!u.viewing),l(n,42,0,u.bsModalRef.hide)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,5,1,l(n,7,0,e["ɵnov"](n,1),u.resource));l(n,5,0,t,a),l(n,9,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending),l(n,16,0,e["ɵnov"](n,17).hasErrors,e["ɵnov"](n,17).hasSuccess)}))}function vu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-s3-key-modal",[],null,null,null,pu,eu)),e["ɵdid"](1,49152,null,0,W,[I.a,mn.a,Tl.a,t.b],null,null)],null,null)}var hu=e["ɵccf"]("cd-rgw-user-s3-key-modal",W,vu,{},{submitAction:"submitAction"},[]),bu=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Cu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","type"],["id","type"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,2)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,2).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,2)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,2)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](2,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](4,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](6,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](7,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,4,0,"type"),l(n,7,0,"type")}),(function(l,n){l(n,0,0,!0,e["ɵnov"](n,6).ngClassUntouched,e["ɵnov"](n,6).ngClassTouched,e["ɵnov"](n,6).ngClassPristine,e["ɵnov"](n,6).ngClassDirty,e["ɵnov"](n,6).ngClassValid,e["ɵnov"](n,6).ngClassInvalid,e["ɵnov"](n,6).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function _u(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a type --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Ru(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function ku(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,12,"select",[["autofocus",""],["class","form-control custom-select"],["formControlName","type"],["id","type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,3).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,3).onTouched()&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,lu.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](2,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](5,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](7,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](8,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,_u)),e["ɵdid"](10,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ru)),e["ɵdid"](12,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,1,0,""),l(n,5,0,"type"),l(n,8,0,"type"),l(n,10,0,null!==u.types),l(n,12,0,u.types)}),(function(l,n){l(n,0,0,e["ɵnov"](n,7).ngClassUntouched,e["ɵnov"](n,7).ngClassTouched,e["ɵnov"](n,7).ngClassPristine,e["ɵnov"](n,7).ngClassDirty,e["ɵnov"](n,7).ngClassValid,e["ɵnov"](n,7).ngClassInvalid,e["ɵnov"](n,7).ngClassPending,e["ɵnov"](n,8).validClass,e["ɵnov"](n,8).invalidClass)}))}function yu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Iu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function wu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Eu(l){return e["ɵvid"](0,[e["ɵpid"](0,Al.TitleCasePipe,[]),e["ɵpid"](0,Un.a,[]),(l()(),e["ɵeld"](2,0,null,null,61,"cd-modal",[],null,null,null,_l.c,_l.b)),e["ɵdid"](3,49152,null,0,On.a,[],{modalRef:[0,"modalRef"]},null),(l()(),e["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," ",""])),e["ɵppd"](6,1),e["ɵppd"](7,1),(l()(),e["ɵeld"](8,0,null,1,55,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,54,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,11).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),e["ɵdid"](10,16384,null,0,o.G,[],null,null),e["ɵdid"](11,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](13,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](14,16384,null,0,Ln.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](15,0,null,null,40,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](16,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](17,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](20,0,null,0,4,"label",[["class","cd-col-form-label"],["for","type"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](22,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](23,{required:0}),(l()(),e["ɵted"](-1,null,["Type"])),(l()(),e["ɵeld"](25,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Cu)),e["ɵdid"](27,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ku)),e["ɵdid"](29,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,yu)),e["ɵdid"](31,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](32,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](33,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](36,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","perm"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Permission"])),(l()(),e["ɵeld"](38,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](39,0,null,null,14,"select",[["class","form-control custom-select"],["formControlName","perm"],["id","perm"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,41).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,41).onTouched()&&t),t}),null,null)),e["ɵdid"](40,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](41,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](43,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](45,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](46,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](47,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](48,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](49,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a permission --"])),(l()(),e["ɵand"](16777216,null,null,2,null,Iu)),e["ɵdid"](52,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),e["ɵpad"](53,3),(l()(),e["ɵand"](16777216,null,null,1,null,wu)),e["ɵdid"](55,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](56,0,null,null,7,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](57,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.onSubmit()&&e),e}),nu.b,nu.a)),e["ɵdid"](58,114688,null,0,uu.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](59,0,[""," ",""])),e["ɵppd"](60,1),e["ɵppd"](61,1),(l()(),e["ɵeld"](62,0,null,null,1,"cd-back-button",[],null,null,null,Qn.b,Qn.a)),e["ɵdid"](63,49152,null,0,Yn.a,[Al.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.bsModalRef),l(n,11,0,u.formGroup),l(n,14,0,u.formGroup),l(n,17,0);var t=l(n,23,0,!u.editing);l(n,22,0,"cd-col-form-label",t),l(n,27,0,u.editing),l(n,29,0,!u.editing),l(n,31,0,u.formGroup.showError("type",e["ɵnov"](n,11),"required")),l(n,33,0),l(n,43,0,"perm"),l(n,46,0,"perm"),l(n,48,0,null),l(n,49,0,null);var a=l(n,53,0,"read","write","*");l(n,52,0,a),l(n,55,0,u.formGroup.showError("perm",e["ɵnov"](n,11),"required")),l(n,58,0,u.formGroup),l(n,63,0,u.bsModalRef.hide)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,5,1,l(n,7,0,e["ɵnov"](n,1),u.resource));l(n,5,0,t,a),l(n,9,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending),l(n,16,0,e["ɵnov"](n,17).hasErrors,e["ɵnov"](n,17).hasSuccess),l(n,32,0,e["ɵnov"](n,33).hasErrors,e["ɵnov"](n,33).hasSuccess),l(n,39,0,e["ɵnov"](n,45).ngClassUntouched,e["ɵnov"](n,45).ngClassTouched,e["ɵnov"](n,45).ngClassPristine,e["ɵnov"](n,45).ngClassDirty,e["ɵnov"](n,45).ngClassValid,e["ɵnov"](n,45).ngClassInvalid,e["ɵnov"](n,45).ngClassPending,e["ɵnov"](n,46).validClass,e["ɵnov"](n,46).invalidClass);var i=e["ɵunv"](n,59,0,l(n,60,0,e["ɵnov"](n,0),u.action)),o=e["ɵunv"](n,59,1,l(n,61,0,e["ɵnov"](n,1),u.resource));l(n,59,0,i,o)}))}function Nu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-capability-modal",[],null,null,null,Eu,bu)),e["ɵdid"](1,49152,null,0,Y,[I.a,mn.a,Tl.a,t.b],null,null)],null,null)}var qu=e["ɵccf"]("cd-rgw-user-capability-modal",Y,Nu,{},{submitAction:"submitAction"},[]),Tu=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Vu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function xu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen subuser ID is already in use."]))],null,null)}function Su(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Du(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Fu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ju(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","secret_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Secret key"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["class","form-control"],["formControlName","secret_key"],["id","secret_key"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,10)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,10)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,10)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](9,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](10,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](12,671744,[[9,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](17,0,null,null,1,"button",[["cdPasswordButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,18).onClick()&&t),t}),null,null)),e["ɵdid"](18,81920,null,0,Kn.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](19,0,null,null,1,"button",[["cdCopy2ClipboardButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,20).onClick()&&t),t}),null,null)),e["ɵdid"](20,81920,null,0,$n.a,[e.ElementRef,e.Renderer2,Zn.j,Tl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Fu)),e["ɵdid"](22,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"secret_key"),l(n,15,0,"secret_key"),l(n,18,0,"secret_key"),l(n,20,0,"secret_key"),l(n,22,0,u.formGroup.showError("secret_key",e["ɵnov"](n.parent.parent,11),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,8,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function Bu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,20,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Swift key"])),(l()(),e["ɵeld"](3,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](4,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","generate_secret"],["id","generate_secret"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,11).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,11).onTouched()&&t),t}),null,null)),e["ɵdid"](10,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](11,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](13,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](15,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](16,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](17,0,null,null,1,"label",[["class","custom-control-label"],["for","generate_secret"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Auto-generate secret"])),(l()(),e["ɵand"](16777216,null,null,1,null,ju)),e["ɵdid"](20,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,4,0),l(n,13,0,"generate_secret"),l(n,16,0,"generate_secret"),l(n,20,0,!u.editing&&!u.formGroup.getValue("generate_secret"))}),(function(l,n){l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,9,0,e["ɵnov"](n,15).ngClassUntouched,e["ɵnov"](n,15).ngClassTouched,e["ɵnov"](n,15).ngClassPristine,e["ɵnov"](n,15).ngClassDirty,e["ɵnov"](n,15).ngClassValid,e["ɵnov"](n,15).ngClassInvalid,e["ɵnov"](n,15).ngClassPending,e["ɵnov"](n,16).validClass,e["ɵnov"](n,16).invalidClass)}))}function Au(l){return e["ɵvid"](0,[e["ɵpid"](0,Al.TitleCasePipe,[]),e["ɵpid"](0,Un.a,[]),(l()(),e["ɵeld"](2,0,null,null,93,"cd-modal",[],null,null,null,_l.c,_l.b)),e["ɵdid"](3,49152,null,0,On.a,[],{modalRef:[0,"modalRef"]},null),(l()(),e["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," ",""])),e["ɵppd"](6,1),e["ɵppd"](7,1),(l()(),e["ɵeld"](8,0,null,1,87,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,86,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,11).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),e["ɵdid"](10,16384,null,0,o.G,[],null,null),e["ɵdid"](11,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](13,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](14,16384,null,0,Ln.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](15,0,null,null,72,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](16,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](17,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](20,0,null,0,1,"label",[["class","cd-col-form-label"],["for","uid"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](22,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](23,0,null,null,7,"input",[["class","form-control"],["formControlName","uid"],["id","uid"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,25)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,25).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,25)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,25)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](24,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](25,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](27,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](29,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](30,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](31,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](32,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](35,0,null,0,4,"label",[["class","cd-col-form-label"],["for","subuid"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](37,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](38,{required:0}),(l()(),e["ɵted"](-1,null,["Subuser"])),(l()(),e["ɵeld"](40,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](41,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","subuid"],["id","subuid"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,44)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,44).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,44)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,44)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](42,4210688,null,0,lu.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](43,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](44,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](46,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](48,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](49,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Vu)),e["ɵdid"](51,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,xu)),e["ɵdid"](53,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](54,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](55,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](58,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","perm"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Permission"])),(l()(),e["ɵeld"](60,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](61,0,null,null,22,"select",[["class","form-control custom-select"],["formControlName","perm"],["id","perm"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,63).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,63).onTouched()&&t),t}),null,null)),e["ɵdid"](62,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](63,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](65,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](67,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](68,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](69,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](70,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](71,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a permission --"])),(l()(),e["ɵand"](16777216,null,null,2,null,Su)),e["ɵdid"](74,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),e["ɵpad"](75,2),(l()(),e["ɵeld"](76,0,null,null,3,"option",[["value","read-write"]],null,null,null,null,null)),e["ɵdid"](77,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](78,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["read, write"])),(l()(),e["ɵeld"](80,0,null,null,3,"option",[["value","full-control"]],null,null,null,null,null)),e["ɵdid"](81,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](82,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["full"])),(l()(),e["ɵand"](16777216,null,null,1,null,Du)),e["ɵdid"](85,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Bu)),e["ɵdid"](87,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](88,0,null,null,7,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](89,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.onSubmit()&&e),e}),nu.b,nu.a)),e["ɵdid"](90,114688,null,0,uu.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](91,0,[""," ",""])),e["ɵppd"](92,1),e["ɵppd"](93,1),(l()(),e["ɵeld"](94,0,null,null,1,"cd-back-button",[],null,null,null,Qn.b,Qn.a)),e["ɵdid"](95,49152,null,0,Yn.a,[Al.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.bsModalRef),l(n,11,0,u.formGroup),l(n,14,0,u.formGroup),l(n,17,0),l(n,27,0,"uid"),l(n,30,0,"uid"),l(n,32,0);var t=l(n,38,0,!u.editing);l(n,37,0,"cd-col-form-label",t),l(n,42,0,""),l(n,46,0,"subuid"),l(n,49,0,"subuid"),l(n,51,0,u.formGroup.showError("subuid",e["ɵnov"](n,11),"required")),l(n,53,0,u.formGroup.showError("subuid",e["ɵnov"](n,11),"subuserIdExists")),l(n,55,0),l(n,65,0,"perm"),l(n,68,0,"perm"),l(n,70,0,null),l(n,71,0,null);var a=l(n,75,0,"read","write");l(n,74,0,a),l(n,77,0,"read-write"),l(n,78,0,"read-write"),l(n,81,0,"full-control"),l(n,82,0,"full-control"),l(n,85,0,u.formGroup.showError("perm",e["ɵnov"](n,11),"required")),l(n,87,0,!u.editing),l(n,90,0,u.formGroup),l(n,95,0,u.bsModalRef.hide)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,5,1,l(n,7,0,e["ɵnov"](n,1),u.resource));l(n,5,0,t,a),l(n,9,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending),l(n,16,0,e["ɵnov"](n,17).hasErrors,e["ɵnov"](n,17).hasSuccess),l(n,23,0,!0,e["ɵnov"](n,29).ngClassUntouched,e["ɵnov"](n,29).ngClassTouched,e["ɵnov"](n,29).ngClassPristine,e["ɵnov"](n,29).ngClassDirty,e["ɵnov"](n,29).ngClassValid,e["ɵnov"](n,29).ngClassInvalid,e["ɵnov"](n,29).ngClassPending,e["ɵnov"](n,30).validClass,e["ɵnov"](n,30).invalidClass),l(n,31,0,e["ɵnov"](n,32).hasErrors,e["ɵnov"](n,32).hasSuccess),l(n,41,0,u.editing,e["ɵnov"](n,48).ngClassUntouched,e["ɵnov"](n,48).ngClassTouched,e["ɵnov"](n,48).ngClassPristine,e["ɵnov"](n,48).ngClassDirty,e["ɵnov"](n,48).ngClassValid,e["ɵnov"](n,48).ngClassInvalid,e["ɵnov"](n,48).ngClassPending,e["ɵnov"](n,49).validClass,e["ɵnov"](n,49).invalidClass),l(n,54,0,e["ɵnov"](n,55).hasErrors,e["ɵnov"](n,55).hasSuccess),l(n,61,0,e["ɵnov"](n,67).ngClassUntouched,e["ɵnov"](n,67).ngClassTouched,e["ɵnov"](n,67).ngClassPristine,e["ɵnov"](n,67).ngClassDirty,e["ɵnov"](n,67).ngClassValid,e["ɵnov"](n,67).ngClassInvalid,e["ɵnov"](n,67).ngClassPending,e["ɵnov"](n,68).validClass,e["ɵnov"](n,68).invalidClass);var i=e["ɵunv"](n,91,0,l(n,92,0,e["ɵnov"](n,0),u.action)),o=e["ɵunv"](n,91,1,l(n,93,0,e["ɵnov"](n,1),u.resource));l(n,91,0,i,o)}))}function Pu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-subuser-modal",[],null,null,null,Au,Tu)),e["ɵdid"](1,49152,null,0,X,[I.a,mn.a,Tl.a,t.b],null,null)],null,null)}var Uu=e["ɵccf"]("cd-rgw-user-subuser-modal",X,Pu,{},{submitAction:"submitAction"},[]),Ou=u("yT6U"),Mu=u("4DD9"),Lu=u("+0ag"),zu=u("IzCI"),Gu=u("Dwqy"),Ku=u("uYzU"),$u=u("FFMq"),Zu=u("E2fk"),Qu=u("nSDx"),Yu=u("SB+Q"),Wu=u("TYzs"),Ju=u("BQkM"),Xu=u("dEH0"),Hu=u("G1/K"),le=u("efK2"),ne=u("Yrry"),ue=u("CNMR"),ee=u("KOzp"),te=u("2uy1"),ae=u("38Bd"),ie=u("978R"),oe=u("w9WL"),se=u("iInd"),de=u("9Xeq"),re=u("hrfs"),ce=u("yGOH"),me=u("bxSN"),fe=u("WF9J"),ge=u("V/fk"),pe=u("ChqD"),ve=u("PCNd"),he=u("G6Q+"),be=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ce(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](1,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","WAkugZpiz"]],null,null,null,wl.b,wl.a)),e["ɵdid"](3,638976,null,0,El.a,[Nl.b,ql.a,Tl.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){l(n,1,0,"Overall Performance"),l(n,3,0,"rgw-overview?","two","WAkugZpiz")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby)}))}function _e(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"tab",[["heading","Sync Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](1,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","rgw-sync-overview"]],null,null,null,wl.b,wl.a)),e["ɵdid"](3,638976,null,0,El.a,[Nl.b,ql.a,Tl.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){l(n,1,0,"Sync Performance"),l(n,3,0,"radosgw-sync-overview?","two","rgw-sync-overview")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby)}))}function Re(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,11,"tabset",[],[[2,"tab-container",null]],null,null,Vl.b,Vl.a)),e["ɵdid"](1,180224,null,0,Il.e,[Il.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,5,"tab",[["heading","Daemons List"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,Il.b,[Il.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](4,0,null,null,3,"cd-table",[["columnMode","flex"]],null,[[null,"setExpandedRow"],[null,"fetchData"]],(function(l,n,u){var e=!0,t=l.component;return"setExpandedRow"===n&&(e=!1!==t.setExpandedRow(u)&&e),"fetchData"===n&&(e=!1!==t.getDaemonList(u)&&e),e}),an.b,an.a)),e["ɵdid"](5,2867200,null,0,F.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"]},{fetchData:"fetchData",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](6,0,null,3,1,"cd-rgw-daemon-details",[["cdTableDetail",""]],null,null,null,Ll,Ul)),e["ɵdid"](7,573440,null,0,Pl,[L,P.a],{selection:[0,"selection"]},null),(l()(),e["ɵand"](16777216,null,0,1,null,Ce)),e["ɵdid"](9,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,0,1,null,_e)),e["ɵdid"](11,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Daemons List"),l(n,5,0,u.daemons,u.columns,"flex",!0),l(n,7,0,u.expandedRow),l(n,9,0,u.grafanaPermission.read),l(n,11,0,u.grafanaPermission.read&&u.isMultiSite)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby)}))}function ke(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-daemon-list",[],null,null,null,Re,be)),e["ɵdid"](1,114688,null,0,G,[L,P.a,z.a,Tl.a,_],null,null)],(function(l,n){l(n,1,0)}),null)}var ye=e["ɵccf"]("cd-rgw-daemon-list",G,ke,{},{},[]),Ie=u("DqMs"),we=u("/NlG"),Ee=u("NUGo"),Ne=u("S7zO"),qe=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Te(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["size","slim"],["type","warning"]],null,null,null,Ie.b,Ie.a)),e["ɵdid"](1,114688,null,0,we.a,[Tl.a],{type:[0,"type"],size:[1,"size"]},null),(l()(),e["ɵted"](-1,0,["The user list data might be stale. If needed, you can manually reload it."]))],(function(l,n){l(n,1,0,"warning","slim")}),null)}function Ve(l){return e["ɵvid"](0,[e["ɵqud"](402653184,1,{table:0}),(l()(),e["ɵand"](16777216,null,null,1,null,Te)),e["ɵdid"](2,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](3,0,null,null,5,"cd-table",[["columnMode","flex"],["identifier","uid"],["selectionType","multiClick"]],null,[[null,"setExpandedRow"],[null,"updateSelection"],[null,"fetchData"]],(function(l,n,u){var e=!0,t=l.component;return"setExpandedRow"===n&&(e=!1!==t.setExpandedRow(u)&&e),"updateSelection"===n&&(e=!1!==t.updateSelection(u)&&e),"fetchData"===n&&(e=!1!==t.getUserList(u)&&e),e}),an.b,an.a)),e["ɵdid"](4,2867200,[[1,4],["table",4]],0,F.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](5,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Ee.b,Ee.a)),e["ɵdid"](6,114688,null,0,Ne.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](7,0,null,3,1,"cd-rgw-user-details",[["cdTableDetail",""]],null,null,null,Bn,fn)),e["ɵdid"](8,638976,null,0,cn,[R.a,mn.b,Tl.a],{selection:[0,"selection"]},null)],(function(l,n){var u=n.component;l(n,2,0,u.isStale),l(n,4,0,u.users,u.columns,"flex",!0,!1,"uid","multiClick"),l(n,6,0,u.permission,u.selection,u.tableActions),l(n,8,0,u.expandedRow)}),null)}function xe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-rgw-user-list",[],null,null,null,Ve,qe)),e["ɵprd"](256,null,U.a,ul,[]),e["ɵdid"](2,49152,null,0,el,[P.a,R.a,mn.b,Tl.a,U.a,t.b,e.NgZone],null,null)],null,null)}var Se=e["ɵccf"]("cd-rgw-user-list",el,xe,{},{},[]),De=u("QC43"),Fe=u("XFyV"),je=u("EmSq"),Be=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ae(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,De.b,De.a)),e["ɵdid"](1,49152,null,0,Fe.a,[],null,null),(l()(),e["ɵted"](-1,0,["Loading user data..."]))],null,null)}function Pe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,[[null,"backAction"]],(function(l,n,u){var e=!0;return"backAction"===n&&(e=!1!==l.component.goToListView()&&e),e}),Ie.b,Ie.a)),e["ɵdid"](1,114688,null,0,we.a,[Tl.a],{type:[0,"type"]},{backAction:"backAction"}),(l()(),e["ɵted"](-1,0,["The user data could not be loaded."]))],(function(l,n){l(n,1,0,"error")}),null)}function Ue(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Oe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function Me(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen user ID is already in use."]))],null,null)}function Le(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function ze(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen user ID exists in this tenant."]))],null,null)}function Ge(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","tenant"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Tenant"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","tenant"],["id","tenant"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,10)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,10)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,10)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,lu.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](9,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](10,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](12,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Le)),e["ɵdid"](17,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ze)),e["ɵdid"](19,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,8,0,""),l(n,12,0,"tenant"),l(n,15,0,"tenant"),l(n,17,0,u.userForm.showError("tenant",e["ɵnov"](n.parent,3),"pattern")),l(n,19,0,u.userForm.showError("tenant",e["ɵnov"](n.parent,3),"notUnique"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,u.editing,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function Ke(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function $e(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This is not a valid email address."]))],null,null)}function Ze(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen email address is already in use."]))],null,null)}function Qe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ye(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be >= 1."]))],null,null)}function We(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,13,{FormControlNames:1}),e["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,0,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,8,"input",[["class","form-control"],["formControlName","max_buckets"],["id","max_buckets"],["min","1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,8)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,8)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,8)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,9).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,9).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](9,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](11,671744,[[13,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Qe)),e["ɵdid"](16,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ye)),e["ɵdid"](18,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,11,0,"max_buckets"),l(n,14,0,"max_buckets"),l(n,16,0,u.userForm.showError("max_buckets",e["ɵnov"](n.parent,3),"required")),l(n,18,0,u.userForm.showError("max_buckets",e["ɵnov"](n.parent,3),"min"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function Je(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Xe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,19,{FormControlNames:1}),e["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","access_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Access key"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["class","form-control"],["formControlName","access_key"],["id","access_key"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,10)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,10)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,10)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](9,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](10,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](12,671744,[[19,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](17,0,null,null,1,"button",[["cdPasswordButton","access_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,18).onClick()&&t),t}),null,null)),e["ɵdid"](18,81920,null,0,Kn.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](19,0,null,null,1,"button",[["cdCopy2ClipboardButton","access_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,20).onClick()&&t),t}),null,null)),e["ɵdid"](20,81920,null,0,$n.a,[e.ElementRef,e.Renderer2,Zn.j,Tl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Je)),e["ɵdid"](22,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"access_key"),l(n,15,0,"access_key"),l(n,18,0,"access_key"),l(n,20,0,"access_key"),l(n,22,0,u.userForm.showError("access_key",e["ɵnov"](n.parent.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,8,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function He(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function lt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,21,{FormControlNames:1}),e["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","secret_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Secret key"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["class","form-control"],["formControlName","secret_key"],["id","secret_key"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,10)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,10)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,10)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](9,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](10,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](12,671744,[[21,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](17,0,null,null,1,"button",[["cdPasswordButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,18).onClick()&&t),t}),null,null)),e["ɵdid"](18,81920,null,0,Kn.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](19,0,null,null,1,"button",[["cdCopy2ClipboardButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,20).onClick()&&t),t}),null,null)),e["ɵdid"](20,81920,null,0,$n.a,[e.ElementRef,e.Renderer2,Zn.j,Tl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,He)),e["ɵdid"](22,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"secret_key"),l(n,15,0,"secret_key"),l(n,18,0,"secret_key"),l(n,20,0,"secret_key"),l(n,22,0,u.userForm.showError("secret_key",e["ɵnov"](n.parent.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,8,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function nt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["S3 key"])),(l()(),e["ɵeld"](3,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](4,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,17,{FormControlNames:1}),e["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","generate_key"],["id","generate_key"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,11).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,11).onTouched()&&t),t}),null,null)),e["ɵdid"](10,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](11,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](13,671744,[[17,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](15,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](16,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](17,0,null,null,1,"label",[["class","custom-control-label"],["for","generate_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Auto-generate key"])),(l()(),e["ɵand"](16777216,null,null,1,null,Xe)),e["ɵdid"](20,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,lt)),e["ɵdid"](22,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,4,0),l(n,13,0,"generate_key"),l(n,16,0,"generate_key"),l(n,20,0,!u.editing&&!u.userForm.getValue("generate_key")),l(n,22,0,!u.editing&&!u.userForm.getValue("generate_key"))}),(function(l,n){l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,9,0,e["ɵnov"](n,15).ngClassUntouched,e["ɵnov"](n,15).ngClassTouched,e["ɵnov"](n,15).ngClassPristine,e["ɵnov"](n,15).ngClassDirty,e["ɵnov"](n,15).ngClassValid,e["ɵnov"](n,15).ngClassInvalid,e["ɵnov"](n,15).ngClassPending,e["ɵnov"](n,16).validClass,e["ɵnov"](n,16).invalidClass)}))}function ut(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["There are no subusers."]))],null,null)}function et(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,25,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,23,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"span",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](6,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),(l()(),e["ɵeld"](7,0,null,null,2,"div",[["class","input-group-prepend border-left-0 border-right-0"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,1,"span",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](11,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),(l()(),e["ɵeld"](12,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,16777216,null,null,5,"button",[["class","btn btn-light tc_showSubuserButton"],["tooltip","Edit"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showSubuserModal(l.context.index)&&e),e}),null,null)),e["ɵdid"](14,212992,null,0,ie.c,[e.ViewContainerRef,sn.a,ie.a,e.ElementRef,e.Renderer2,te.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](15,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](17,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](18,1),(l()(),e["ɵeld"](19,16777216,null,null,5,"button",[["class","btn btn-light tc_deleteSubuserButton"],["tooltip","Delete"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.deleteSubuser(l.context.index)&&e),e}),null,null)),e["ɵdid"](20,212992,null,0,ie.c,[e.ViewContainerRef,sn.a,ie.a,e.ElementRef,e.Renderer2,te.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](21,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](23,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](24,1),(l()(),e["ɵeld"](25,0,null,null,0,"span",[["class","form-text text-muted"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,14,0,"Edit");var e=l(n,18,0,u.icons.edit);l(n,17,0,e),l(n,20,0,"Delete");var t=l(n,24,0,u.icons.destroy);l(n,23,0,t)}),(function(l,n){var u=n.component;l(n,4,0,e["ɵinlineInterpolate"](1,"",u.icons.user,"")),l(n,5,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.id,"")),l(n,9,0,e["ɵinlineInterpolate"](1,"",u.icons.share,"")),l(n,10,0,e["ɵinlineInterpolate"](1,"","full-control"===n.context.$implicit.permissions?"full":n.context.$implicit.permissions,""))}))}function tt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,20,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Subusers"])),(l()(),e["ɵeld"](3,0,null,null,17,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,16,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ut)),e["ɵdid"](6,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,et)),e["ɵdid"](8,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](9,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,9,"div",[["class","col-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,8,"button",[["class","btn btn-light float-right tc_addSubuserButton"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showSubuserModal()&&e),e}),null,null)),(l()(),e["ɵeld"](12,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](14,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](15,1),(l()(),e["ɵeld"](16,0,null,null,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](17,null,[""," ",""])),e["ɵppd"](18,1),e["ɵppd"](19,1),(l()(),e["ɵeld"](20,0,null,null,0,"span",[["class","help-block"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,6,0,0===u.subusers.length),l(n,8,0,u.subusers);var e=l(n,15,0,u.icons.add);l(n,14,0,e)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,17,0,l(n,18,0,e["ɵnov"](n.parent.parent,0),u.actionLabels.CREATE)),a=e["ɵunv"](n,17,1,l(n,19,0,e["ɵnov"](n.parent.parent,1),u.subuserLabel));l(n,17,0,t,a)}))}function at(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["There are no keys."]))],null,null)}function it(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,20,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](6,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),(l()(),e["ɵeld"](7,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,16777216,null,null,5,"button",[["class","btn btn-light tc_showS3KeyButton"],["tooltip","Show"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showS3KeyModal(l.context.index)&&e),e}),null,null)),e["ɵdid"](9,212992,null,0,ie.c,[e.ViewContainerRef,sn.a,ie.a,e.ElementRef,e.Renderer2,te.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](10,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](12,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](13,1),(l()(),e["ɵeld"](14,16777216,null,null,5,"button",[["class","btn btn-light tc_deleteS3KeyButton"],["tooltip","Delete"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.deleteS3Key(l.context.index)&&e),e}),null,null)),e["ɵdid"](15,212992,null,0,ie.c,[e.ViewContainerRef,sn.a,ie.a,e.ElementRef,e.Renderer2,te.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](18,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](19,1),(l()(),e["ɵeld"](20,0,null,null,0,"span",[["class","form-text text-muted"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,9,0,"Show");var e=l(n,13,0,u.icons.show);l(n,12,0,e),l(n,15,0,"Delete");var t=l(n,19,0,u.icons.destroy);l(n,18,0,t)}),(function(l,n){l(n,4,0,e["ɵinlineInterpolate"](1,"",n.component.icons.key,"")),l(n,5,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.user,""))}))}function ot(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["There are no keys."]))],null,null)}function st(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,14,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,12,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"span",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](6,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),(l()(),e["ɵeld"](7,0,null,null,6,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,16777216,null,null,5,"button",[["class","btn btn-light tc_showSwiftKeyButton"],["tooltip","Show"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showSwiftKeyModal(l.context.index)&&e),e}),null,null)),e["ɵdid"](9,212992,null,0,ie.c,[e.ViewContainerRef,sn.a,ie.a,e.ElementRef,e.Renderer2,te.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](10,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](12,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](13,1),(l()(),e["ɵeld"](14,0,null,null,0,"span",[["class","form-text text-muted"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,9,0,"Show");var e=l(n,13,0,u.icons.show);l(n,12,0,e)}),(function(l,n){l(n,4,0,e["ɵinlineInterpolate"](1,"",n.component.icons.key,"")),l(n,5,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.user,""))}))}function dt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,37,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Keys"])),(l()(),e["ɵeld"](3,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](4,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,23,{FormControlNames:1}),e["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["S3"])),(l()(),e["ɵeld"](9,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,at)),e["ɵdid"](11,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,it)),e["ɵdid"](13,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](14,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](15,0,null,null,9,"div",[["class","col-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](16,0,null,null,8,"button",[["class","btn btn-light float-right tc_addS3KeyButton"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showS3KeyModal()&&e),e}),null,null)),(l()(),e["ɵeld"](17,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](19,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](20,1),(l()(),e["ɵeld"](21,0,null,null,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](22,null,[""," ",""])),e["ɵppd"](23,1),e["ɵppd"](24,1),(l()(),e["ɵeld"](25,0,null,null,0,"span",[["class","help-block"]],null,null,null,null,null)),(l()(),e["ɵeld"](26,0,null,0,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](27,0,null,null,10,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](28,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,25,{FormControlNames:1}),e["ɵqud"](603979776,26,{messagesBlock:0}),(l()(),e["ɵeld"](31,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Swift"])),(l()(),e["ɵeld"](33,0,null,0,4,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ot)),e["ɵdid"](35,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,st)),e["ɵdid"](37,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,4,0),l(n,11,0,0===u.s3Keys.length),l(n,13,0,u.s3Keys);var e=l(n,20,0,u.icons.add);l(n,19,0,e),l(n,28,0),l(n,35,0,0===u.swiftKeys.length),l(n,37,0,u.swiftKeys)}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess);var t=e["ɵunv"](n,22,0,l(n,23,0,e["ɵnov"](n.parent.parent,0),u.actionLabels.CREATE)),a=e["ɵunv"](n,22,1,l(n,24,0,e["ɵnov"](n.parent.parent,1),u.s3keyLabel));l(n,22,0,t,a),l(n,27,0,e["ɵnov"](n,28).hasErrors,e["ɵnov"](n,28).hasSuccess)}))}function rt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["There are no capabilities."]))],null,null)}function ct(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,20,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,"span",[["class","input-group-prepend"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](6,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),(l()(),e["ɵeld"](7,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,16777216,null,null,5,"button",[["class","btn btn-light tc_editCapButton"],["tooltip","Edit"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showCapabilityModal(l.context.index)&&e),e}),null,null)),e["ɵdid"](9,212992,null,0,ie.c,[e.ViewContainerRef,sn.a,ie.a,e.ElementRef,e.Renderer2,te.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](10,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](12,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](13,1),(l()(),e["ɵeld"](14,16777216,null,null,5,"button",[["class","btn btn-light tc_deleteCapButton"],["tooltip","Delete"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.deleteCapability(l.context.index)&&e),e}),null,null)),e["ɵdid"](15,212992,null,0,ie.c,[e.ViewContainerRef,sn.a,ie.a,e.ElementRef,e.Renderer2,te.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](18,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](19,1),(l()(),e["ɵeld"](20,0,null,null,0,"span",[["class","form-text text-muted"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,9,0,"Edit");var e=l(n,13,0,u.icons.edit);l(n,12,0,e),l(n,15,0,"Delete");var t=l(n,19,0,u.icons.destroy);l(n,18,0,t)}),(function(l,n){l(n,4,0,e["ɵinlineInterpolate"](1,"",n.component.icons.share,"")),l(n,5,0,e["ɵinlineInterpolate"](2,"",n.context.$implicit.type,":",n.context.$implicit.perm,""))}))}function mt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,24,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Capabilities"])),(l()(),e["ɵeld"](3,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](4,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,27,{FormControlNames:1}),e["ɵqud"](603979776,28,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,17,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,rt)),e["ɵdid"](9,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ct)),e["ɵdid"](11,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](12,0,null,null,11,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,10,"div",[["class","col-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](14,16777216,null,null,9,"button",[["class","btn btn-light float-right tc_addCapButton"],["tooltip","All capabilities are already added."],["triggers","pointerenter pointerleave"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showCapabilityModal()&&e),e}),null,null)),e["ɵdid"](15,212992,null,0,ie.c,[e.ViewContainerRef,sn.a,ie.a,e.ElementRef,e.Renderer2,te.a],{tooltip:[0,"tooltip"],triggers:[1,"triggers"],isDisabled:[2,"isDisabled"]},null),(l()(),e["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](18,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](19,1),(l()(),e["ɵeld"](20,0,null,null,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](21,null,[""," ",""])),e["ɵppd"](22,1),e["ɵppd"](23,1),(l()(),e["ɵeld"](24,0,null,null,0,"span",[["class","help-block"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,4,0),l(n,9,0,0===u.capabilities.length),l(n,11,0,u.capabilities),l(n,15,0,"All capabilities are already added.","pointerenter pointerleave",!u.hasAllCapabilities());var e=l(n,19,0,u.icons.add);l(n,18,0,e)}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,14,0,u.hasAllCapabilities());var t=e["ɵunv"](n,21,0,l(n,22,0,e["ɵnov"](n.parent.parent,0),u.actionLabels.ADD)),a=e["ɵunv"](n,21,1,l(n,23,0,e["ɵnov"](n.parent.parent,1),u.capabilityLabel));l(n,21,0,t,a)}))}function ft(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,31,{FormControlNames:1}),e["ɵqud"](603979776,32,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","user_quota_max_size_unlimited"],["id","user_quota_max_size_unlimited"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[31,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","user_quota_max_size_unlimited"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited size"]))],(function(l,n){l(n,1,0),l(n,10,0,"user_quota_max_size_unlimited"),l(n,13,0,"user_quota_max_size_unlimited")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function gt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function pt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function vt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,33,{FormControlNames:1}),e["ɵqud"](603979776,34,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","user_quota_max_size"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. size"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["formControlName","user_quota_max_size"],["id","user_quota_max_size"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,8)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,8)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,8)._compositionEnd(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,12).onBlur(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](10,671744,[[33,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,81920,null,0,je.a,[e.ElementRef,o.q,B.a,$.a],null,null),e["ɵdid"](13,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,gt)),e["ɵdid"](17,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pt)),e["ɵdid"](19,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,10,0,"user_quota_max_size"),l(n,12,0),l(n,15,0,"user_quota_max_size"),l(n,17,0,u.userForm.showError("user_quota_max_size",e["ɵnov"](n.parent,3),"required")),l(n,19,0,u.userForm.showError("user_quota_max_size",e["ɵnov"](n.parent,3),"quotaMaxSize"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function ht(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,35,{FormControlNames:1}),e["ɵqud"](603979776,36,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","user_quota_max_objects_unlimited"],["id","user_quota_max_objects_unlimited"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[35,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","user_quota_max_objects_unlimited"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited objects"]))],(function(l,n){l(n,1,0),l(n,10,0,"user_quota_max_objects_unlimited"),l(n,13,0,"user_quota_max_objects_unlimited")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function bt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ct(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be >= 0."]))],null,null)}function _t(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,37,{FormControlNames:1}),e["ɵqud"](603979776,38,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","user_quota_max_objects"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. objects"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["class","form-control"],["formControlName","user_quota_max_objects"],["id","user_quota_max_objects"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,10).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,10).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](10,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](12,671744,[[37,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,bt)),e["ɵdid"](17,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ct)),e["ɵdid"](19,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"user_quota_max_objects"),l(n,15,0,"user_quota_max_objects"),l(n,17,0,u.userForm.showError("user_quota_max_objects",e["ɵnov"](n.parent,3),"required")),l(n,19,0,u.userForm.showError("user_quota_max_objects",e["ɵnov"](n.parent,3),"min"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function Rt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,41,{FormControlNames:1}),e["ɵqud"](603979776,42,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","bucket_quota_max_size_unlimited"],["id","bucket_quota_max_size_unlimited"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[41,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","bucket_quota_max_size_unlimited"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited size"]))],(function(l,n){l(n,1,0),l(n,10,0,"bucket_quota_max_size_unlimited"),l(n,13,0,"bucket_quota_max_size_unlimited")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function kt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function yt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function It(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,43,{FormControlNames:1}),e["ɵqud"](603979776,44,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","bucket_quota_max_size"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. size"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["formControlName","bucket_quota_max_size"],["id","bucket_quota_max_size"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,8)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,8)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,8)._compositionEnd(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,12).onBlur(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](10,671744,[[43,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,81920,null,0,je.a,[e.ElementRef,o.q,B.a,$.a],null,null),e["ɵdid"](13,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,kt)),e["ɵdid"](17,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,yt)),e["ɵdid"](19,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,10,0,"bucket_quota_max_size"),l(n,12,0),l(n,15,0,"bucket_quota_max_size"),l(n,17,0,u.userForm.showError("bucket_quota_max_size",e["ɵnov"](n.parent,3),"required")),l(n,19,0,u.userForm.showError("bucket_quota_max_size",e["ɵnov"](n.parent,3),"quotaMaxSize"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function wt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,45,{FormControlNames:1}),e["ɵqud"](603979776,46,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","bucket_quota_max_objects_unlimited"],["id","bucket_quota_max_objects_unlimited"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[45,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","bucket_quota_max_objects_unlimited"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited objects"]))],(function(l,n){l(n,1,0),l(n,10,0,"bucket_quota_max_objects_unlimited"),l(n,13,0,"bucket_quota_max_objects_unlimited")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function Et(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Nt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be >= 0."]))],null,null)}function qt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,47,{FormControlNames:1}),e["ɵqud"](603979776,48,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","bucket_quota_max_objects"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. objects"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["class","form-control"],["formControlName","bucket_quota_max_objects"],["id","bucket_quota_max_objects"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,10).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,10).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](10,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](12,671744,[[47,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Et)),e["ɵdid"](17,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Nt)),e["ɵdid"](19,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"bucket_quota_max_objects"),l(n,15,0,"bucket_quota_max_objects"),l(n,17,0,u.userForm.showError("bucket_quota_max_objects",e["ɵnov"](n.parent,3),"required")),l(n,19,0,u.userForm.showError("bucket_quota_max_objects",e["ɵnov"](n.parent,3),"min"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function Tt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,209,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,208,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,3).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,3).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,6).onSubmit()&&t),t}),null,null)),e["ɵdid"](2,16384,null,0,o.G,[],null,null),e["ɵdid"](3,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](5,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](6,16384,null,0,Ln.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](7,0,null,null,202,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,[""," ",""])),e["ɵppd"](10,1),e["ɵppd"](11,1),(l()(),e["ɵeld"](12,0,null,null,188,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](14,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](17,0,null,0,4,"label",[["class","cd-col-form-label"],["for","user_id"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](19,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](20,{required:0}),(l()(),e["ɵted"](-1,null,["User ID"])),(l()(),e["ɵeld"](22,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](23,0,null,null,7,"input",[["class","form-control"],["formControlName","user_id"],["id","user_id"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,25)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,25).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,25)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,25)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](24,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](25,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](27,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](29,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](30,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ue)),e["ɵdid"](32,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Oe)),e["ɵdid"](34,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Me)),e["ɵdid"](36,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](37,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](38,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](41,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](42,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](43,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","show_tenant"],["id","show_tenant"],["type","checkbox"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"click"],[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0,a=l.component;return"change"===n&&(t=!1!==e["ɵnov"](l,45).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,45).onTouched()&&t),"click"===n&&(t=!1!==a.updateFieldsWhenTenanted()&&t),t}),null,null)),e["ɵdid"](44,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](45,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](47,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](49,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](50,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](51,0,null,null,1,"label",[["class","custom-control-label"],["for","show_tenant"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Show Tenant"])),(l()(),e["ɵand"](16777216,null,null,1,null,Ge)),e["ɵdid"](54,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](55,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](56,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](59,0,null,0,4,"label",[["class","cd-col-form-label"],["for","display_name"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](61,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](62,{required:0}),(l()(),e["ɵted"](-1,null,["Full name"])),(l()(),e["ɵeld"](64,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](65,0,null,null,7,"input",[["class","form-control"],["formControlName","display_name"],["id","display_name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,67)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,67).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,67)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,67)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](66,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](67,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](69,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](71,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](72,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ke)),e["ɵdid"](74,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](75,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](76,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](79,0,null,0,1,"label",[["class","cd-col-form-label"],["for","email"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Email address"])),(l()(),e["ɵeld"](81,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](82,0,null,null,7,"input",[["class","form-control"],["formControlName","email"],["id","email"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,84)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,84).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,84)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,84)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](83,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](84,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](86,671744,[[9,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](88,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](89,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,$e)),e["ɵdid"](91,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ze)),e["ɵdid"](93,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](94,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](95,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,11,{FormControlNames:1}),e["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),e["ɵeld"](98,0,null,0,1,"label",[["class","cd-col-form-label"],["for","max_buckets_mode"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. buckets"])),(l()(),e["ɵeld"](100,0,null,0,20,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](101,0,null,null,19,"select",[["class","form-control custom-select"],["formControlName","max_buckets_mode"],["id","max_buckets_mode"],["name","max_buckets_mode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0,a=l.component;return"change"===n&&(t=!1!==e["ɵnov"](l,103).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,103).onTouched()&&t),"change"===n&&(t=!1!==a.onMaxBucketsModeChange(u.target.value)&&t),t}),null,null)),e["ɵdid"](102,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](103,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](105,671744,[[11,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](107,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](108,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](109,0,null,null,3,"option",[["value","-1"]],null,null,null,null,null)),e["ɵdid"](110,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](111,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Disabled"])),(l()(),e["ɵeld"](113,0,null,null,3,"option",[["value","0"]],null,null,null,null,null)),e["ɵdid"](114,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](115,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Unlimited"])),(l()(),e["ɵeld"](117,0,null,null,3,"option",[["value","1"]],null,null,null,null,null)),e["ɵdid"](118,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](119,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Custom"])),(l()(),e["ɵand"](16777216,null,null,1,null,We)),e["ɵdid"](122,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](123,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](124,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,15,{FormControlNames:1}),e["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),e["ɵeld"](127,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](128,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](129,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","suspended"],["id","suspended"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,131).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,131).onTouched()&&t),t}),null,null)),e["ɵdid"](130,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](131,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](133,671744,[[15,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](135,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](136,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](137,0,null,null,1,"label",[["class","custom-control-label"],["for","suspended"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Suspended"])),(l()(),e["ɵand"](16777216,null,null,1,null,nt)),e["ɵdid"](140,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,tt)),e["ɵdid"](142,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,dt)),e["ɵdid"](144,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,mt)),e["ɵdid"](146,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](147,0,null,null,26,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](148,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User quota"])),(l()(),e["ɵeld"](150,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](151,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,29,{FormControlNames:1}),e["ɵqud"](603979776,30,{messagesBlock:0}),(l()(),e["ɵeld"](154,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](155,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](156,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","user_quota_enabled"],["id","user_quota_enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,158).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,158).onTouched()&&t),t}),null,null)),e["ɵdid"](157,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](158,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](160,671744,[[29,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](162,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](163,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](164,0,null,null,1,"label",[["class","custom-control-label"],["for","user_quota_enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵand"](16777216,null,null,1,null,ft)),e["ɵdid"](167,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,vt)),e["ɵdid"](169,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ht)),e["ɵdid"](171,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,_t)),e["ɵdid"](173,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](174,0,null,null,26,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](175,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket quota"])),(l()(),e["ɵeld"](177,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](178,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,39,{FormControlNames:1}),e["ɵqud"](603979776,40,{messagesBlock:0}),(l()(),e["ɵeld"](181,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](182,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](183,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","bucket_quota_enabled"],["id","bucket_quota_enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,185).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,185).onTouched()&&t),t}),null,null)),e["ɵdid"](184,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](185,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](187,671744,[[39,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](189,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](190,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](191,0,null,null,1,"label",[["class","custom-control-label"],["for","bucket_quota_enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵand"](16777216,null,null,1,null,Rt)),e["ɵdid"](194,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,It)),e["ɵdid"](196,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,wt)),e["ɵdid"](198,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,qt)),e["ɵdid"](200,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](201,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](202,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](203,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.onSubmit()&&e),e}),nu.b,nu.a)),e["ɵdid"](204,114688,null,0,uu.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](205,0,[""," ",""])),e["ɵppd"](206,1),e["ɵppd"](207,1),(l()(),e["ɵeld"](208,0,null,null,1,"cd-back-button",[],null,null,null,Qn.b,Qn.a)),e["ɵdid"](209,49152,null,0,Yn.a,[Al.Location,t.b],null,null)],(function(l,n){var u=n.component;l(n,3,0,u.userForm),l(n,6,0,u.userForm),l(n,14,0);var t=l(n,20,0,!u.editing);l(n,19,0,"cd-col-form-label",t),l(n,27,0,"user_id"),l(n,30,0,"user_id"),l(n,32,0,u.userForm.showError("user_id",e["ɵnov"](n,3),"required")),l(n,34,0,u.userForm.showError("user_id",e["ɵnov"](n,3),"pattern")),l(n,36,0,!u.userForm.getValue("show_tenant")&&u.userForm.showError("user_id",e["ɵnov"](n,3),"notUnique")),l(n,38,0),l(n,47,0,"show_tenant"),l(n,50,0,"show_tenant"),l(n,54,0,u.userForm.getValue("show_tenant")),l(n,56,0);var a=l(n,62,0,!u.editing);l(n,61,0,"cd-col-form-label",a),l(n,69,0,"display_name"),l(n,72,0,"display_name"),l(n,74,0,u.userForm.showError("display_name",e["ɵnov"](n,3),"required")),l(n,76,0),l(n,86,0,"email"),l(n,89,0,"email"),l(n,91,0,u.userForm.showError("email",e["ɵnov"](n,3),"email")),l(n,93,0,u.userForm.showError("email",e["ɵnov"](n,3),"notUnique")),l(n,95,0),l(n,105,0,"max_buckets_mode"),l(n,108,0,"max_buckets_mode"),l(n,110,0,"-1"),l(n,111,0,"-1"),l(n,114,0,"0"),l(n,115,0,"0"),l(n,118,0,"1"),l(n,119,0,"1"),l(n,122,0,1==u.userForm.get("max_buckets_mode").value),l(n,124,0),l(n,133,0,"suspended"),l(n,136,0,"suspended"),l(n,140,0,!u.editing),l(n,142,0,u.editing),l(n,144,0,u.editing),l(n,146,0,u.editing),l(n,151,0),l(n,160,0,"user_quota_enabled"),l(n,163,0,"user_quota_enabled"),l(n,167,0,u.userForm.controls.user_quota_enabled.value),l(n,169,0,u.userForm.controls.user_quota_enabled.value&&!u.userForm.getValue("user_quota_max_size_unlimited")),l(n,171,0,u.userForm.controls.user_quota_enabled.value),l(n,173,0,u.userForm.controls.user_quota_enabled.value&&!u.userForm.getValue("user_quota_max_objects_unlimited")),l(n,178,0),l(n,187,0,"bucket_quota_enabled"),l(n,190,0,"bucket_quota_enabled"),l(n,194,0,u.userForm.controls.bucket_quota_enabled.value),l(n,196,0,u.userForm.controls.bucket_quota_enabled.value&&!u.userForm.getValue("bucket_quota_max_size_unlimited")),l(n,198,0,u.userForm.controls.bucket_quota_enabled.value),l(n,200,0,u.userForm.controls.bucket_quota_enabled.value&&!u.userForm.getValue("bucket_quota_max_objects_unlimited")),l(n,204,0,u.userForm)}),(function(l,n){var u=n.component;l(n,1,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending);var t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent,0),u.action)),a=e["ɵunv"](n,9,1,l(n,11,0,e["ɵnov"](n.parent,1),u.resource));l(n,9,0,t,a),l(n,13,0,e["ɵnov"](n,14).hasErrors,e["ɵnov"](n,14).hasSuccess),l(n,23,0,u.editing,e["ɵnov"](n,29).ngClassUntouched,e["ɵnov"](n,29).ngClassTouched,e["ɵnov"](n,29).ngClassPristine,e["ɵnov"](n,29).ngClassDirty,e["ɵnov"](n,29).ngClassValid,e["ɵnov"](n,29).ngClassInvalid,e["ɵnov"](n,29).ngClassPending,e["ɵnov"](n,30).validClass,e["ɵnov"](n,30).invalidClass),l(n,37,0,e["ɵnov"](n,38).hasErrors,e["ɵnov"](n,38).hasSuccess),l(n,43,0,!0,e["ɵnov"](n,49).ngClassUntouched,e["ɵnov"](n,49).ngClassTouched,e["ɵnov"](n,49).ngClassPristine,e["ɵnov"](n,49).ngClassDirty,e["ɵnov"](n,49).ngClassValid,e["ɵnov"](n,49).ngClassInvalid,e["ɵnov"](n,49).ngClassPending,e["ɵnov"](n,50).validClass,e["ɵnov"](n,50).invalidClass),l(n,55,0,e["ɵnov"](n,56).hasErrors,e["ɵnov"](n,56).hasSuccess),l(n,65,0,e["ɵnov"](n,71).ngClassUntouched,e["ɵnov"](n,71).ngClassTouched,e["ɵnov"](n,71).ngClassPristine,e["ɵnov"](n,71).ngClassDirty,e["ɵnov"](n,71).ngClassValid,e["ɵnov"](n,71).ngClassInvalid,e["ɵnov"](n,71).ngClassPending,e["ɵnov"](n,72).validClass,e["ɵnov"](n,72).invalidClass),l(n,75,0,e["ɵnov"](n,76).hasErrors,e["ɵnov"](n,76).hasSuccess),l(n,82,0,e["ɵnov"](n,88).ngClassUntouched,e["ɵnov"](n,88).ngClassTouched,e["ɵnov"](n,88).ngClassPristine,e["ɵnov"](n,88).ngClassDirty,e["ɵnov"](n,88).ngClassValid,e["ɵnov"](n,88).ngClassInvalid,e["ɵnov"](n,88).ngClassPending,e["ɵnov"](n,89).validClass,e["ɵnov"](n,89).invalidClass),l(n,94,0,e["ɵnov"](n,95).hasErrors,e["ɵnov"](n,95).hasSuccess),l(n,101,0,e["ɵnov"](n,107).ngClassUntouched,e["ɵnov"](n,107).ngClassTouched,e["ɵnov"](n,107).ngClassPristine,e["ɵnov"](n,107).ngClassDirty,e["ɵnov"](n,107).ngClassValid,e["ɵnov"](n,107).ngClassInvalid,e["ɵnov"](n,107).ngClassPending,e["ɵnov"](n,108).validClass,e["ɵnov"](n,108).invalidClass),l(n,123,0,e["ɵnov"](n,124).hasErrors,e["ɵnov"](n,124).hasSuccess),l(n,129,0,e["ɵnov"](n,135).ngClassUntouched,e["ɵnov"](n,135).ngClassTouched,e["ɵnov"](n,135).ngClassPristine,e["ɵnov"](n,135).ngClassDirty,e["ɵnov"](n,135).ngClassValid,e["ɵnov"](n,135).ngClassInvalid,e["ɵnov"](n,135).ngClassPending,e["ɵnov"](n,136).validClass,e["ɵnov"](n,136).invalidClass),l(n,150,0,e["ɵnov"](n,151).hasErrors,e["ɵnov"](n,151).hasSuccess),l(n,156,0,e["ɵnov"](n,162).ngClassUntouched,e["ɵnov"](n,162).ngClassTouched,e["ɵnov"](n,162).ngClassPristine,e["ɵnov"](n,162).ngClassDirty,e["ɵnov"](n,162).ngClassValid,e["ɵnov"](n,162).ngClassInvalid,e["ɵnov"](n,162).ngClassPending,e["ɵnov"](n,163).validClass,e["ɵnov"](n,163).invalidClass),l(n,177,0,e["ɵnov"](n,178).hasErrors,e["ɵnov"](n,178).hasSuccess),l(n,183,0,e["ɵnov"](n,189).ngClassUntouched,e["ɵnov"](n,189).ngClassTouched,e["ɵnov"](n,189).ngClassPristine,e["ɵnov"](n,189).ngClassDirty,e["ɵnov"](n,189).ngClassValid,e["ɵnov"](n,189).ngClassInvalid,e["ɵnov"](n,189).ngClassPending,e["ɵnov"](n,190).validClass,e["ɵnov"](n,190).invalidClass);var i=e["ɵunv"](n,205,0,l(n,206,0,e["ɵnov"](n.parent,0),u.action)),o=e["ɵunv"](n,205,1,l(n,207,0,e["ɵnov"](n.parent,1),u.resource));l(n,205,0,i,o)}))}function Vt(l){return e["ɵvid"](0,[e["ɵpid"](0,Al.TitleCasePipe,[]),e["ɵpid"](0,Un.a,[]),(l()(),e["ɵand"](16777216,null,null,1,null,Ae)),e["ɵdid"](3,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Pe)),e["ɵdid"](5,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Tt)),e["ɵdid"](7,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.editing&&u.loading&&!u.error),l(n,5,0,u.editing&&u.error),l(n,7,0,!u.loading&&!u.error)}),null)}function xt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-form",[],null,null,null,Vt,Be)),e["ɵdid"](1,114688,null,0,ll,[I.a,se.a,se.m,R.a,mn.b,E.a,Tl.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var St=e["ɵccf"]("cd-rgw-user-form",ll,xt,{},{},[]),Dt=u("xSw7"),Ft=u("GgAd"),jt=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Bt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["size","slim"],["type","warning"]],null,null,null,Ie.b,Ie.a)),e["ɵdid"](1,114688,null,0,we.a,[Tl.a],{type:[0,"type"],size:[1,"size"]},null),(l()(),e["ɵted"](-1,0,["The bucket list data might be stale. If needed, you can manually reload it."]))],(function(l,n){l(n,1,0,"warning","slim")}),null)}function At(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-usage-bar",[],null,null,null,Dt.b,Dt.a)),e["ɵdid"](1,573440,null,0,Ft.a,[],{total:[0,"total"],used:[1,"used"]},null)],(function(l,n){l(n,1,0,n.parent.context.row.bucket_quota.max_size,n.parent.context.row.bucket_size)}),null)}function Pt(l){return e["ɵvid"](0,[(l()(),e["ɵted"](-1,null,["No Limit"]))],null,null)}function Ut(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,At)),e["ɵdid"](1,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(l()(),e["ɵand"](0,[["noSizeQuota",2]],null,0,null,Pt))],(function(l,n){l(n,1,0,n.context.row.bucket_quota.max_size>0&&n.context.row.bucket_quota.enabled,e["ɵnov"](n,2))}),null)}function Ot(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-usage-bar",[],null,null,null,Dt.b,Dt.a)),e["ɵdid"](1,573440,null,0,Ft.a,[],{total:[0,"total"],used:[1,"used"],isBinary:[2,"isBinary"]},null)],(function(l,n){l(n,1,0,n.parent.context.row.bucket_quota.max_objects,n.parent.context.row.num_objects,!1)}),null)}function Mt(l){return e["ɵvid"](0,[(l()(),e["ɵted"](-1,null,["No Limit"]))],null,null)}function Lt(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Ot)),e["ɵdid"](1,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(l()(),e["ɵand"](0,[["noObjectQuota",2]],null,0,null,Mt))],(function(l,n){l(n,1,0,n.context.row.bucket_quota.max_objects>0&&n.context.row.bucket_quota.enabled,e["ɵnov"](n,2))}),null)}function zt(l){return e["ɵvid"](0,[e["ɵqud"](402653184,1,{table:0}),e["ɵqud"](402653184,2,{bucketSizeTpl:0}),e["ɵqud"](402653184,3,{bucketObjectTpl:0}),(l()(),e["ɵand"](16777216,null,null,1,null,Bt)),e["ɵdid"](4,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](5,0,null,null,5,"cd-table",[["columnMode","flex"],["identifier","bid"],["selectionType","multiClick"]],null,[[null,"setExpandedRow"],[null,"updateSelection"],[null,"fetchData"]],(function(l,n,u){var e=!0,t=l.component;return"setExpandedRow"===n&&(e=!1!==t.setExpandedRow(u)&&e),"updateSelection"===n&&(e=!1!==t.updateSelection(u)&&e),"fetchData"===n&&(e=!1!==t.getBucketList(u)&&e),e}),an.b,an.a)),e["ɵdid"](6,2867200,[[1,4],["table",4]],0,F.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](7,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Ee.b,Ee.a)),e["ɵdid"](8,114688,null,0,Ne.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](9,0,null,3,1,"cd-rgw-bucket-details",[["cdTableDetail",""]],null,null,null,un,Zl)),e["ɵdid"](10,573440,null,0,$l,[C],{selection:[0,"selection"]},null),(l()(),e["ɵand"](0,[[2,2],["bucketSizeTpl",2]],null,0,null,Ut)),(l()(),e["ɵand"](0,[[3,2],["bucketObjectTpl",2]],null,0,null,Lt))],(function(l,n){var u=n.component;l(n,4,0,u.isStale),l(n,6,0,u.buckets,u.columns,"flex",!0,!1,"bid","multiClick"),l(n,8,0,u.permission,u.selection,u.tableActions),l(n,10,0,u.expandedRow)}),null)}function Gt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-rgw-bucket-list",[],null,null,null,zt,jt)),e["ɵprd"](256,null,U.a,O,[]),e["ɵdid"](2,114688,null,0,M,[P.a,B.a,A.a,C,mn.b,Tl.a,U.a,t.b,e.NgZone,e.ChangeDetectorRef],null,null)],(function(l,n){l(n,2,0)}),null)}var Kt=e["ɵccf"]("cd-rgw-bucket-list",M,Gt,{},{},[]),$t=u("4HWh"),Zt=u("p4Cf"),Qt=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Yt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,De.b,De.a)),e["ɵdid"](1,49152,null,0,Fe.a,[],null,null),(l()(),e["ɵted"](-1,0,["Loading bucket data..."]))],null,null)}function Wt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","id"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Id"])),(l()(),e["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","id"],["id","id"],["name","id"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](11,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,1,0),l(n,11,0,"id"),l(n,14,0,"id")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function Jt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Xt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function Ht(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen name is already in use."]))],null,null)}function la(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket names must not contain uppercase characters or underscores."]))],null,null)}function na(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Each label must start and end with a lowercase letter or a number."]))],null,null)}function ua(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket names cannot be formatted as IP address."]))],null,null)}function ea(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket names can only contain lowercase letters, numbers, and hyphens."]))],null,null)}function ta(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket names must be 3 to 63 characters long."]))],null,null)}function aa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function ia(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a user --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function oa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function sa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function da(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function ra(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a placement target --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function ca(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.name),l(n,2,0,n.context.$implicit.name)}),(function(l,n){l(n,3,0,n.context.$implicit.description)}))}function ma(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function fa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","placement-target"],["id","placement-target"],["name","placement-target"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,2).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,2).onTouched()&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](2,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](4,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](6,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](7,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,da)),e["ɵdid"](9,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ra)),e["ɵdid"](11,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ca)),e["ɵdid"](13,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ma)),e["ɵdid"](15,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){var u=n.component;l(n,4,0,"placement-target"),l(n,7,0,"placement-target"),l(n,9,0,null===u.placementTargets),l(n,11,0,null!==u.placementTargets),l(n,13,0,u.placementTargets),l(n,15,0,u.bucketForm.showError("placement-target",e["ɵnov"](n.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,6).ngClassUntouched,e["ɵnov"](n,6).ngClassTouched,e["ɵnov"](n,6).ngClassPristine,e["ɵnov"](n,6).ngClassDirty,e["ɵnov"](n,6).ngClassValid,e["ɵnov"](n,6).ngClassInvalid,e["ɵnov"](n,6).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function ga(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,7,"input",[["class","form-control"],["formControlName","placement-target"],["id","placement-target"],["name","placement-target"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,3)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,3).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,3)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,3)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](2,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](5,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](7,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](8,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,5,0,"placement-target"),l(n,8,0,"placement-target")}),(function(l,n){l(n,1,0,e["ɵnov"](n,7).ngClassUntouched,e["ɵnov"](n,7).ngClassTouched,e["ɵnov"](n,7).ngClassPristine,e["ɵnov"](n,7).ngClassDirty,e["ɵnov"](n,7).ngClassValid,e["ɵnov"](n,7).ngClassInvalid,e["ɵnov"](n,7).ngClassPending,e["ɵnov"](n,8).validClass,e["ɵnov"](n,8).invalidClass)}))}function pa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Versioning"])),(l()(),e["ɵeld"](3,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](4,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,15,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,14,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","versioning"],["id","versioning"],["name","versioning"],["type","checkbox"]],[[8,"checked",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0,a=l.component;return"change"===n&&(t=!1!==e["ɵnov"](l,11).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,11).onTouched()&&t),"change"===n&&(t=!1!==a.updateVersioning()&&t),t}),null,null)),e["ɵdid"](10,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](11,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](13,671744,[[9,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](15,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](16,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](17,0,null,null,1,"label",[["class","custom-control-label"],["for","versioning"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](19,0,null,null,3,"cd-helper",[],null,null,null,$t.b,$t.a)),e["ɵdid"](20,49152,null,0,Zt.a,[],null,null),(l()(),e["ɵeld"](21,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enables versioning for the objects in the bucket."]))],(function(l,n){l(n,4,0),l(n,13,0,"versioning"),l(n,16,0,"versioning")}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,9,0,u.isVersioningEnabled,e["ɵnov"](n,15).ngClassUntouched,e["ɵnov"](n,15).ngClassTouched,e["ɵnov"](n,15).ngClassPristine,e["ɵnov"](n,15).ngClassDirty,e["ɵnov"](n,15).ngClassValid,e["ɵnov"](n,15).ngClassInvalid,e["ɵnov"](n,15).ngClassPending,e["ɵnov"](n,16).validClass,e["ɵnov"](n,16).invalidClass)}))}function va(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ha(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,13,{FormControlNames:1}),e["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mfa-token-serial"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Token Serial Number"])),(l()(),e["ɵeld"](6,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","mfa-token-serial"],["id","mfa-token-serial"],["name","mfa-token-serial"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](11,671744,[[13,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,va)),e["ɵdid"](16,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,11,0,"mfa-token-serial"),l(n,14,0,"mfa-token-serial"),l(n,16,0,u.bucketForm.showError("mfa-token-serial",e["ɵnov"](n.parent.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function ba(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ca(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,15,{FormControlNames:1}),e["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mfa-token-pin"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Token PIN"])),(l()(),e["ɵeld"](6,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","mfa-token-pin"],["id","mfa-token-pin"],["name","mfa-token-pin"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](11,671744,[[15,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ba)),e["ɵdid"](16,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,11,0,"mfa-token-pin"),l(n,14,0,"mfa-token-pin"),l(n,16,0,u.bucketForm.showError("mfa-token-pin",e["ɵnov"](n.parent.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function _a(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,26,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Multi-Factor Authentication"])),(l()(),e["ɵeld"](3,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](4,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,11,{FormControlNames:1}),e["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,15,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,14,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","mfa-delete"],["id","mfa-delete"],["name","mfa-delete"],["type","checkbox"]],[[8,"checked",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0,a=l.component;return"change"===n&&(t=!1!==e["ɵnov"](l,11).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,11).onTouched()&&t),"change"===n&&(t=!1!==a.updateMfaDelete()&&t),t}),null,null)),e["ɵdid"](10,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](11,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](13,671744,[[11,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](15,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](16,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](17,0,null,null,1,"label",[["class","custom-control-label"],["for","mfa-delete"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Delete enabled"])),(l()(),e["ɵeld"](19,0,null,null,3,"cd-helper",[],null,null,null,$t.b,$t.a)),e["ɵdid"](20,49152,null,0,Zt.a,[],null,null),(l()(),e["ɵeld"](21,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state."])),(l()(),e["ɵand"](16777216,null,null,1,null,ha)),e["ɵdid"](24,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ca)),e["ɵdid"](26,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,4,0),l(n,13,0,"mfa-delete"),l(n,16,0,"mfa-delete"),l(n,24,0,u.areMfaCredentialsRequired()),l(n,26,0,u.areMfaCredentialsRequired())}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,9,0,u.isMfaDeleteEnabled,e["ɵnov"](n,15).ngClassUntouched,e["ɵnov"](n,15).ngClassTouched,e["ɵnov"](n,15).ngClassPristine,e["ɵnov"](n,15).ngClassDirty,e["ɵnov"](n,15).ngClassValid,e["ɵnov"](n,15).ngClassInvalid,e["ɵnov"](n,15).ngClassPending,e["ɵnov"](n,16).validClass,e["ɵnov"](n,16).invalidClass)}))}function Ra(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,19,{FormControlNames:1}),e["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","lock_mode"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mode"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","lock_mode"],["id","lock_mode"],["name","lock_mode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,9).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](11,671744,[[19,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](15,0,null,null,3,"option",[["value","COMPLIANCE"]],null,null,null,null,null)),e["ɵdid"](16,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](17,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Compliance"])),(l()(),e["ɵeld"](19,0,null,null,3,"option",[["value","GOVERNANCE"]],null,null,null,null,null)),e["ɵdid"](20,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](21,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Governance"]))],(function(l,n){l(n,1,0),l(n,11,0,"lock_mode"),l(n,14,0,"lock_mode"),l(n,16,0,"COMPLIANCE"),l(n,17,0,"COMPLIANCE"),l(n,20,0,"GOVERNANCE"),l(n,21,0,"GOVERNANCE")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function ka(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be a positive integer."]))],null,null)}function ya(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Retention period requires either Days or Years."]))],null,null)}function Ia(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,21,{FormControlNames:1}),e["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","lock_retention_period_days"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Days"])),(l()(),e["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,$t.b,$t.a)),e["ɵdid"](8,49152,null,0,Zt.a,[],null,null),(l()(),e["ɵted"](-1,0,["The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket."])),(l()(),e["ɵeld"](10,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,8,"input",[["class","form-control"],["formControlName","lock_retention_period_days"],["id","lock_retention_period_days"],["min","0"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,14).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,14).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,14).onTouched()&&t),t}),null,null)),e["ɵdid"](12,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](14,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](16,671744,[[21,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](18,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](19,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ka)),e["ɵdid"](21,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ya)),e["ɵdid"](23,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,16,0,"lock_retention_period_days"),l(n,19,0,"lock_retention_period_days"),l(n,21,0,u.bucketForm.showError("lock_retention_period_days",e["ɵnov"](n.parent,3),"pattern")),l(n,23,0,u.bucketForm.showError("lock_retention_period_days",e["ɵnov"](n.parent,3),"eitherDaysOrYears"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,e["ɵnov"](n,18).ngClassUntouched,e["ɵnov"](n,18).ngClassTouched,e["ɵnov"](n,18).ngClassPristine,e["ɵnov"](n,18).ngClassDirty,e["ɵnov"](n,18).ngClassValid,e["ɵnov"](n,18).ngClassInvalid,e["ɵnov"](n,18).ngClassPending,e["ɵnov"](n,19).validClass,e["ɵnov"](n,19).invalidClass)}))}function wa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be a positive integer."]))],null,null)}function Ea(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Retention period requires either Days or Years."]))],null,null)}function Na(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](1,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,23,{FormControlNames:1}),e["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","lock_retention_period_years"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Years"])),(l()(),e["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,$t.b,$t.a)),e["ɵdid"](8,49152,null,0,Zt.a,[],null,null),(l()(),e["ɵted"](-1,0,["The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket."])),(l()(),e["ɵeld"](10,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,8,"input",[["class","form-control"],["formControlName","lock_retention_period_years"],["id","lock_retention_period_years"],["min","0"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,14).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,14).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,14).onTouched()&&t),t}),null,null)),e["ɵdid"](12,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](14,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](16,671744,[[23,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](18,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](19,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,wa)),e["ɵdid"](21,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ea)),e["ɵdid"](23,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,16,0,"lock_retention_period_years"),l(n,19,0,"lock_retention_period_years"),l(n,21,0,u.bucketForm.showError("lock_retention_period_days",e["ɵnov"](n.parent,3),"pattern")),l(n,23,0,u.bucketForm.showError("lock_retention_period_years",e["ɵnov"](n.parent,3),"eitherDaysOrYears"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,e["ɵnov"](n,18).ngClassUntouched,e["ɵnov"](n,18).ngClassTouched,e["ɵnov"](n,18).ngClassPristine,e["ɵnov"](n,18).ngClassDirty,e["ɵnov"](n,18).ngClassValid,e["ɵnov"](n,18).ngClassInvalid,e["ɵnov"](n,18).ngClassPending,e["ɵnov"](n,19).validClass,e["ɵnov"](n,19).invalidClass)}))}function qa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,128,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,127,"form",[["name","bucketForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,3).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,3).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,6).onSubmit()&&t),t}),null,null)),e["ɵdid"](2,16384,null,0,o.G,[],null,null),e["ɵdid"](3,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](5,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](6,16384,null,0,Ln.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](7,0,null,null,121,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,[""," ",""])),e["ɵppd"](10,1),e["ɵppd"](11,1),(l()(),e["ɵeld"](12,0,null,null,107,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Wt)),e["ɵdid"](14,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](15,0,null,null,34,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](16,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](19,0,null,0,4,"label",[["class","cd-col-form-label"],["for","bid"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](21,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](22,{required:0}),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](24,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](25,0,null,null,8,"input",[["class","form-control"],["formControlName","bid"],["id","bid"],["name","bid"],["placeholder","Name..."],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,28)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,28).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,28)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,28)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](26,4210688,null,0,lu.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](27,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](28,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](30,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](32,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](33,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Jt)),e["ɵdid"](35,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Xt)),e["ɵdid"](37,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ht)),e["ɵdid"](39,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,la)),e["ɵdid"](41,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,na)),e["ɵdid"](43,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ua)),e["ɵdid"](45,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ea)),e["ɵdid"](47,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ta)),e["ɵdid"](49,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](50,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](51,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](54,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","owner"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Owner"])),(l()(),e["ɵeld"](56,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](57,0,null,null,14,"select",[["class","form-control custom-select"],["formControlName","owner"],["id","owner"],["name","owner"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,60).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,60).onTouched()&&t),t}),null,null)),e["ɵdid"](58,4210688,null,0,lu.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](59,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](60,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](62,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](64,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](65,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,aa)),e["ɵdid"](67,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ia)),e["ɵdid"](69,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,oa)),e["ɵdid"](71,278528,null,0,Al.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,sa)),e["ɵdid"](73,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](74,0,null,null,12,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](75,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](78,0,null,0,4,"label",[["class","cd-col-form-label"],["for","placement-target"]],null,null,null,null,null)),e["ɵprd"](512,null,Al["ɵNgClassImpl"],Al["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](80,278528,null,0,Al.NgClass,[Al["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](81,{required:0}),(l()(),e["ɵted"](-1,null,["Placement target"])),(l()(),e["ɵeld"](83,0,null,0,3,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](0,[["placementTargetSelect",2]],null,0,null,fa)),(l()(),e["ɵand"](16777216,null,null,1,null,ga)),e["ɵdid"](86,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pa)),e["ɵdid"](88,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,_a)),e["ɵdid"](90,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](91,0,null,null,28,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](92,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Locking"])),(l()(),e["ɵeld"](94,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Mn.b,Mn.a)),e["ɵdid"](95,1163264,null,2,Ln.c,[e.ElementRef,Ln.g],null,null),e["ɵqud"](603979776,17,{FormControlNames:1}),e["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),e["ɵeld"](98,0,null,0,15,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](99,0,null,null,14,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](100,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","lock_enabled"],["id","lock_enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,102).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,102).onTouched()&&t),t}),null,null)),e["ɵdid"](101,4210688,null,0,zn.a,[[2,Gn.a],P.a,e.ElementRef],null,null),e["ɵdid"](102,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](104,671744,[[17,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](106,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](107,16384,null,0,Ln.h,[[3,o.d],Ln.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](108,0,null,null,1,"label",[["class","custom-control-label"],["for","lock_enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](110,0,null,null,3,"cd-helper",[],null,null,null,$t.b,$t.a)),e["ɵdid"](111,49152,null,0,Zt.a,[],null,null),(l()(),e["ɵeld"](112,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket."])),(l()(),e["ɵand"](16777216,null,null,1,null,Ra)),e["ɵdid"](115,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ia)),e["ɵdid"](117,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Na)),e["ɵdid"](119,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](120,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](121,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](122,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),nu.b,nu.a)),e["ɵdid"](123,114688,null,0,uu.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](124,0,[""," ",""])),e["ɵppd"](125,1),e["ɵppd"](126,1),(l()(),e["ɵeld"](127,0,null,null,1,"cd-back-button",[],null,null,null,Qn.b,Qn.a)),e["ɵdid"](128,49152,null,0,Yn.a,[Al.Location,t.b],null,null)],(function(l,n){var u=n.component;l(n,3,0,u.bucketForm),l(n,6,0,u.bucketForm),l(n,14,0,u.editing),l(n,16,0);var t=l(n,22,0,!u.editing);l(n,21,0,"cd-col-form-label",t),l(n,26,0,!u.editing),l(n,30,0,"bid"),l(n,33,0,"bid"),l(n,35,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"required")),l(n,37,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"bucketNameInvalid")),l(n,39,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"bucketNameExists")),l(n,41,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"containsUpperCase")),l(n,43,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"lowerCaseOrNumber")),l(n,45,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"ipAddress")),l(n,47,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"onlyLowerCaseAndNumbers")),l(n,49,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"shouldBeInRange")),l(n,51,0),l(n,58,0,u.editing),l(n,62,0,"owner"),l(n,65,0,"owner"),l(n,67,0,null===u.owners),l(n,69,0,null!==u.owners),l(n,71,0,u.owners),l(n,73,0,u.bucketForm.showError("owner",e["ɵnov"](n,3),"required")),l(n,75,0);var a=l(n,81,0,!u.editing);l(n,80,0,"cd-col-form-label",a),l(n,86,0,u.editing,e["ɵnov"](n,84)),l(n,88,0,u.editing),l(n,90,0,u.editing),l(n,95,0),l(n,104,0,"lock_enabled"),l(n,107,0,"lock_enabled"),l(n,115,0,u.bucketForm.getValue("lock_enabled")),l(n,117,0,u.bucketForm.getValue("lock_enabled")),l(n,119,0,u.bucketForm.getValue("lock_enabled")),l(n,123,0,u.bucketForm)}),(function(l,n){var u=n.component;l(n,1,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending);var t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent,0),u.action)),a=e["ɵunv"](n,9,1,l(n,11,0,e["ɵnov"](n.parent,1),u.resource));l(n,9,0,t,a),l(n,15,0,e["ɵnov"](n,16).hasErrors,e["ɵnov"](n,16).hasSuccess),l(n,25,0,u.editing,e["ɵnov"](n,32).ngClassUntouched,e["ɵnov"](n,32).ngClassTouched,e["ɵnov"](n,32).ngClassPristine,e["ɵnov"](n,32).ngClassDirty,e["ɵnov"](n,32).ngClassValid,e["ɵnov"](n,32).ngClassInvalid,e["ɵnov"](n,32).ngClassPending,e["ɵnov"](n,33).validClass,e["ɵnov"](n,33).invalidClass),l(n,50,0,e["ɵnov"](n,51).hasErrors,e["ɵnov"](n,51).hasSuccess),l(n,57,0,e["ɵnov"](n,64).ngClassUntouched,e["ɵnov"](n,64).ngClassTouched,e["ɵnov"](n,64).ngClassPristine,e["ɵnov"](n,64).ngClassDirty,e["ɵnov"](n,64).ngClassValid,e["ɵnov"](n,64).ngClassInvalid,e["ɵnov"](n,64).ngClassPending,e["ɵnov"](n,65).validClass,e["ɵnov"](n,65).invalidClass),l(n,74,0,e["ɵnov"](n,75).hasErrors,e["ɵnov"](n,75).hasSuccess),l(n,94,0,e["ɵnov"](n,95).hasErrors,e["ɵnov"](n,95).hasSuccess),l(n,100,0,e["ɵnov"](n,106).ngClassUntouched,e["ɵnov"](n,106).ngClassTouched,e["ɵnov"](n,106).ngClassPristine,e["ɵnov"](n,106).ngClassDirty,e["ɵnov"](n,106).ngClassValid,e["ɵnov"](n,106).ngClassInvalid,e["ɵnov"](n,106).ngClassPending,e["ɵnov"](n,107).validClass,e["ɵnov"](n,107).invalidClass);var i=e["ɵunv"](n,124,0,l(n,125,0,e["ɵnov"](n.parent,0),u.action)),o=e["ɵunv"](n,124,1,l(n,126,0,e["ɵnov"](n.parent,1),u.resource));l(n,124,0,i,o)}))}function Ta(l){return e["ɵvid"](0,[e["ɵpid"](0,Al.TitleCasePipe,[]),e["ɵpid"](0,Un.a,[]),(l()(),e["ɵand"](16777216,null,null,1,null,Yt)),e["ɵdid"](3,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,qa)),e["ɵdid"](5,16384,null,0,Al.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.editing&&u.loading&&!u.error),l(n,5,0,!u.loading&&!u.error)}),null)}function Va(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-bucket-form",[],null,null,null,Ta,Qt)),e["ɵdid"](1,114688,null,0,T,[se.a,se.m,I.a,C,_,R.a,E.a,Tl.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var xa=e["ɵccf"]("cd-rgw-bucket-form",T,Va,{},{},[]),Sa=u("i4WA"),Da=u("6qls"),Fa=u("tz6c"),ja=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ba(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,"cd-alert-panel",[["type","info"]],null,null,null,Ie.b,Ie.a)),e["ɵdid"](1,114688,null,0,we.a,[Tl.a],{type:[0,"type"]},null),(l()(),e["ɵted"](2,0,[" ",""])),(l()(),e["ɵeld"](3,0,null,0,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,0,4,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Please consult the "])),(l()(),e["ɵeld"](6,0,null,null,1,"cd-doc",[["section","rgw"]],null,null,null,Sa.b,Sa.a)),e["ɵdid"](7,114688,null,0,Da.a,[Fa.a,Tl.a],{section:[0,"section"]},null),(l()(),e["ɵted"](-1,null,[" on how to configure and enable the Object Gateway management functionality."]))],(function(l,n){l(n,1,0,"info"),l(n,7,0,"rgw")}),(function(l,n){l(n,2,0,n.component.message)}))}function Aa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-501",[],null,null,null,Ba,ja)),e["ɵdid"](1,245760,null,0,i,[se.a],null,null)],(function(l,n){l(n,1,0)}),null)}var Pa=e["ɵccf"]("cd-rgw-501",i,Aa,{},{},[]);u.d(n,"RgwModuleNgFactory",(function(){return Ua})),u.d(n,"RoutedRgwModuleNgFactory",(function(){return Oa}));var Ua=e["ɵcmf"](tl,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[gl.a,pl.a,vl.a,hl.a,hl.b,bl.a,Cl.a,_l.a,Rl.a,kl.a,yl.a,Gl,tn,Pn,Hn,hu,qu,Uu]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,Al.NgLocalization,Al.NgLocaleLocalization,[e.LOCALE_ID,[2,Al["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,Ou.a,Ou.a,[]),e["ɵmpd"](4608,Mu.a,Mu.a,[]),e["ɵmpd"](4608,Kl.a,Kl.a,[Tl.a]),e["ɵmpd"](4608,Al.DatePipe,Al.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,Lu.a,Lu.a,[]),e["ɵmpd"](4608,$.a,$.a,[]),e["ɵmpd"](4608,B.a,B.a,[$.a]),e["ɵmpd"](4608,zu.a,zu.a,[$.a]),e["ɵmpd"](4608,A.a,A.a,[$.a]),e["ɵmpd"](4608,Gu.a,Gu.a,[]),e["ɵmpd"](4608,Ku.a,Ku.a,[]),e["ɵmpd"](4608,$u.a,$u.a,[]),e["ɵmpd"](4608,Zu.a,Zu.a,[]),e["ɵmpd"](4608,Dl.a,Dl.a,[Al.DatePipe]),e["ɵmpd"](4608,Qu.a,Qu.a,[]),e["ɵmpd"](4608,Yu.a,Yu.a,[]),e["ɵmpd"](4608,Wu.a,Wu.a,[]),e["ɵmpd"](4608,Ju.a,Ju.a,[]),e["ɵmpd"](4608,Xu.a,Xu.a,[]),e["ɵmpd"](4608,Hu.a,Hu.a,[Tl.a]),e["ɵmpd"](4608,Un.a,Un.a,[]),e["ɵmpd"](4608,rn.a,rn.a,[]),e["ɵmpd"](4608,le.a,le.a,[]),e["ɵmpd"](4608,ne.a,ne.a,[Nl.b]),e["ɵmpd"](4608,o.D,o.D,[]),e["ɵmpd"](4608,o.h,o.h,[]),e["ɵmpd"](4608,ue.b,ue.b,[]),e["ɵmpd"](4608,ee.a,ee.a,[]),e["ɵmpd"](4608,te.a,te.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,sn.a,sn.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,te.a,e.ApplicationRef]),e["ɵmpd"](4608,ae.c,ae.c,[]),e["ɵmpd"](4608,ie.a,ie.a,[]),e["ɵmpd"](4608,mn.b,mn.b,[e.RendererFactory2,sn.a]),e["ɵmpd"](4608,oe.y,oe.y,[Al.DOCUMENT]),e["ɵmpd"](4608,oe.r,oe.r,[]),e["ɵmpd"](4608,oe.a,oe.a,[]),e["ɵmpd"](4608,on.f,on.f,[]),e["ɵmpd"](4608,P.a,P.a,[]),e["ɵmpd"](4608,a.a,a.a,[se.m,P.a]),e["ɵmpd"](4608,Il.f,Il.f,[]),e["ɵmpd"](1073742336,Al.CommonModule,Al.CommonModule,[]),e["ɵmpd"](1073742336,de.a,de.a,[]),e["ɵmpd"](1073742336,o.C,o.C,[]),e["ɵmpd"](1073742336,o.n,o.n,[]),e["ɵmpd"](1073742336,o.y,o.y,[]),e["ɵmpd"](1073742336,ue.c,ue.c,[]),e["ɵmpd"](1073742336,ee.d,ee.d,[]),e["ɵmpd"](1073742336,ae.d,ae.d,[]),e["ɵmpd"](1073742336,ie.d,ie.d,[]),e["ɵmpd"](1073742336,re.b,re.b,[]),e["ɵmpd"](1073742336,mn.e,mn.e,[]),e["ɵmpd"](1073742336,ce.a,ce.a,[]),e["ɵmpd"](1073742336,on.e,on.e,[]),e["ɵmpd"](1073742336,Ln.f,Ln.f,[]),e["ɵmpd"](1073742336,me.ClickOutsideModule,me.ClickOutsideModule,[]),e["ɵmpd"](1073742336,fe.b,fe.b,[]),e["ɵmpd"](1073742336,se.q,se.q,[[2,se.v],[2,se.m]]),e["ɵmpd"](1073742336,ge.a,ge.a,[]),e["ɵmpd"](1073742336,oe.u,oe.u,[]),e["ɵmpd"](1073742336,pe.a,pe.a,[]),e["ɵmpd"](1073742336,b.a,b.a,[]),e["ɵmpd"](1073742336,ve.a,ve.a,[]),e["ɵmpd"](1073742336,he.a,he.a,[]),e["ɵmpd"](1073742336,Il.d,Il.d,[]),e["ɵmpd"](1073742336,tl,tl,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,on.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])})),Oa=e["ɵcmf"](fl,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[gl.a,pl.a,vl.a,hl.a,hl.b,bl.a,Cl.a,_l.a,Rl.a,kl.a,yl.a,Gl,tn,Pn,Hn,hu,qu,Uu,ye,Se,St,Kt,xa,Pa]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,Al.NgLocalization,Al.NgLocaleLocalization,[e.LOCALE_ID,[2,Al["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,Ou.a,Ou.a,[]),e["ɵmpd"](4608,Mu.a,Mu.a,[]),e["ɵmpd"](4608,Kl.a,Kl.a,[Tl.a]),e["ɵmpd"](4608,Al.DatePipe,Al.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,Lu.a,Lu.a,[]),e["ɵmpd"](4608,$.a,$.a,[]),e["ɵmpd"](4608,B.a,B.a,[$.a]),e["ɵmpd"](4608,zu.a,zu.a,[$.a]),e["ɵmpd"](4608,A.a,A.a,[$.a]),e["ɵmpd"](4608,Gu.a,Gu.a,[]),e["ɵmpd"](4608,Ku.a,Ku.a,[]),e["ɵmpd"](4608,$u.a,$u.a,[]),e["ɵmpd"](4608,Zu.a,Zu.a,[]),e["ɵmpd"](4608,Dl.a,Dl.a,[Al.DatePipe]),e["ɵmpd"](4608,Qu.a,Qu.a,[]),e["ɵmpd"](4608,Yu.a,Yu.a,[]),e["ɵmpd"](4608,Wu.a,Wu.a,[]),e["ɵmpd"](4608,Ju.a,Ju.a,[]),e["ɵmpd"](4608,Xu.a,Xu.a,[]),e["ɵmpd"](4608,Hu.a,Hu.a,[Tl.a]),e["ɵmpd"](4608,Un.a,Un.a,[]),e["ɵmpd"](4608,rn.a,rn.a,[]),e["ɵmpd"](4608,le.a,le.a,[]),e["ɵmpd"](4608,ne.a,ne.a,[Nl.b]),e["ɵmpd"](4608,o.D,o.D,[]),e["ɵmpd"](4608,o.h,o.h,[]),e["ɵmpd"](4608,ue.b,ue.b,[]),e["ɵmpd"](4608,ee.a,ee.a,[]),e["ɵmpd"](4608,te.a,te.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,sn.a,sn.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,te.a,e.ApplicationRef]),e["ɵmpd"](4608,ae.c,ae.c,[]),e["ɵmpd"](4608,ie.a,ie.a,[]),e["ɵmpd"](4608,mn.b,mn.b,[e.RendererFactory2,sn.a]),e["ɵmpd"](4608,oe.y,oe.y,[Al.DOCUMENT]),e["ɵmpd"](4608,oe.r,oe.r,[]),e["ɵmpd"](4608,oe.a,oe.a,[]),e["ɵmpd"](4608,on.f,on.f,[]),e["ɵmpd"](4608,P.a,P.a,[]),e["ɵmpd"](4608,a.a,a.a,[se.m,P.a]),e["ɵmpd"](4608,Il.f,Il.f,[]),e["ɵmpd"](1073742336,Al.CommonModule,Al.CommonModule,[]),e["ɵmpd"](1073742336,de.a,de.a,[]),e["ɵmpd"](1073742336,o.C,o.C,[]),e["ɵmpd"](1073742336,o.n,o.n,[]),e["ɵmpd"](1073742336,o.y,o.y,[]),e["ɵmpd"](1073742336,ue.c,ue.c,[]),e["ɵmpd"](1073742336,ee.d,ee.d,[]),e["ɵmpd"](1073742336,ae.d,ae.d,[]),e["ɵmpd"](1073742336,ie.d,ie.d,[]),e["ɵmpd"](1073742336,re.b,re.b,[]),e["ɵmpd"](1073742336,mn.e,mn.e,[]),e["ɵmpd"](1073742336,ce.a,ce.a,[]),e["ɵmpd"](1073742336,on.e,on.e,[]),e["ɵmpd"](1073742336,Ln.f,Ln.f,[]),e["ɵmpd"](1073742336,me.ClickOutsideModule,me.ClickOutsideModule,[]),e["ɵmpd"](1073742336,fe.b,fe.b,[]),e["ɵmpd"](1073742336,se.q,se.q,[[2,se.v],[2,se.m]]),e["ɵmpd"](1073742336,ge.a,ge.a,[]),e["ɵmpd"](1073742336,oe.u,oe.u,[]),e["ɵmpd"](1073742336,pe.a,pe.a,[]),e["ɵmpd"](1073742336,b.a,b.a,[]),e["ɵmpd"](1073742336,ve.a,ve.a,[]),e["ɵmpd"](1073742336,he.a,he.a,[]),e["ɵmpd"](1073742336,Il.d,Il.d,[]),e["ɵmpd"](1073742336,tl,tl,[]),e["ɵmpd"](1073742336,fl,fl,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,on.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](1024,se.k,(function(){return[[{path:"",redirectTo:"daemon",pathMatch:"full"},{path:"daemon",component:G,data:al},{path:"user",data:il,children:[{path:"",component:el},{path:"create",component:ll,data:ol},{path:"edit/:uid",component:ll,data:sl}]},{path:"bucket",data:dl,children:[{path:"",component:M},{path:"create",component:T,data:rl},{path:"edit/:bid",component:T,data:cl}]},{path:"501/:message",component:i,canActivate:[a.a],data:ml}]]}),[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])}))}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/7.eee5262a4f5915f2d5d4.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/7.eee5262a4f5915f2d5d4.js
deleted file mode 100644 (file)
index a295fe6..0000000
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{Znkk:function(l,n,u){"use strict";u.r(n);var e=u("8Y7J"),t=u("sne2"),a=u("Avrn");class i{constructor(l){this.route=l,this.message="The Object Gateway service is not configured."}ngOnInit(){this.routeParamsSubscribe=this.route.params.subscribe(l=>{this.message=l.message})}ngOnDestroy(){this.routeParamsSubscribe.unsubscribe()}}var o=u("s7LF"),s=u("LvDl"),d=u("mrSG"),r=u("IheW"),c=u("LRne"),m=u("5+tZ"),f=u("xTzq"),g=u("pL04");let p=(()=>{let l=class{constructor(l){this.http=l,this.url="api/rgw/bucket"}list(){let l=new r.h;return l=l.append("stats","true"),this.http.get(this.url,{params:l})}enumerate(){return this.http.get(this.url)}get(l){return this.http.get(`${this.url}/${l}`)}create(l,n,u,e,t,a,i,o){return this.http.post(this.url,null,{params:new r.h({fromObject:{bucket:l,uid:n,zonegroup:u,placement_target:e,lock_enabled:String(t),lock_mode:a,lock_retention_period_days:i,lock_retention_period_years:o}})})}update(l,n,u,e,t,a,i,o,s,d){let c=new r.h;return c=c.append("bucket_id",n),c=c.append("uid",u),c=c.append("versioning_state",e),c=c.append("mfa_delete",t),c=c.append("mfa_token_serial",a),c=c.append("mfa_token_pin",i),c=c.append("lock_mode",o),c=c.append("lock_retention_period_days",s),c=c.append("lock_retention_period_years",d),this.http.put(`${this.url}/${l}`,null,{params:c})}delete(l,n=!0){let u=new r.h;return u=u.append("purge_objects",n?"true":"false"),this.http.delete(`${this.url}/${l}`,{params:u})}exists(l){return this.enumerate().pipe(Object(m.a)(n=>{const u=s.indexOf(n,l);return Object(c.a)(-1!==u)}))}};return l.ngInjectableDef=e["ɵɵdefineInjectable"]({factory:function(){return new l(e["ɵɵinject"](r.c))},token:l,providedIn:g.a}),l=d.__decorate([f.a,d.__metadata("design:paramtypes",[r.c])],l),l})(),v=(()=>{let l=class{constructor(l){this.http=l,this.url="api/rgw/site"}get(l){let n=new r.h;return l&&(n=n.append("query",l)),this.http.get(this.url,{params:n})}};return l.ngInjectableDef=e["ɵɵdefineInjectable"]({factory:function(){return new l(e["ɵɵinject"](r.c))},token:l,providedIn:g.a}),l=d.__decorate([f.a,d.__metadata("design:paramtypes",[r.c])],l),l})();var h=u("P8lu"),b=u("oxzT"),C=u("mtw6"),_=u("2EZI"),R=u("1Ni5"),k=u("9nlD"),y=function(l){return l.ENABLED="Enabled",l.DISABLED="Disabled",l}({}),I=function(l){return l.ENABLED="Enabled",l.SUSPENDED="Suspended",l}({});class w{constructor(l,n,u,e,a,i,o,s,d){this.route=l,this.router=n,this.formBuilder=u,this.rgwBucketService=e,this.rgwSiteService=a,this.rgwUserService=i,this.notificationService=o,this.i18n=s,this.actionLabels=d,this.editing=!1,this.error=!1,this.loading=!1,this.owners=null,this.placementTargets=[],this.isVersioningEnabled=!1,this.isVersioningAlreadyEnabled=!1,this.isMfaDeleteEnabled=!1,this.isMfaDeleteAlreadyEnabled=!1,this.icons=b.a,this.editing=this.router.url.startsWith("/rgw/bucket/"+t.e.EDIT),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.resource=this.i18n("bucket"),this.createForm()}createForm(){const l=this,n=R.a.custom("eitherDaysOrYears",()=>{if(!l.bucketForm||!s.get(l.bucketForm.getRawValue(),"lock_enabled"))return!1;const n=l.bucketForm.getValue("lock_retention_period_years"),u=l.bucketForm.getValue("lock_retention_period_days");return u>0&&n>0||0===u&&0===n}),u=[0,[R.a.number(!1),n]];this.bucketForm=this.formBuilder.group({id:[null],bid:[null,[o.B.required],this.editing?[]:[this.bucketNameValidator()]],owner:[null,[o.B.required]],"placement-target":[null,this.editing?[]:[o.B.required]],versioning:[null],"mfa-delete":[null],"mfa-token-serial":[""],"mfa-token-pin":[""],lock_enabled:[{value:!1,disabled:this.editing}],lock_mode:["COMPLIANCE"],lock_retention_period_days:u,lock_retention_period_years:u})}ngOnInit(){this.rgwUserService.enumerate().subscribe(l=>{this.owners=l.sort()}),this.editing||this.rgwSiteService.get("placement-targets").subscribe(l=>{this.zonegroup=l.zonegroup,s.forEach(l.placement_targets,l=>{l.description=`${l.name} (${this.i18n("pool")}: ${l.data_pool})`,this.placementTargets.push(l)}),1===this.placementTargets.length&&this.bucketForm.get("placement-target").setValue(this.placementTargets[0].name)}),this.route.params.subscribe(l=>{if(!l.hasOwnProperty("bid"))return;const n=decodeURIComponent(l.bid);this.loading=!0,this.rgwBucketService.get(n).subscribe(l=>{this.loading=!1;const n=s.clone(this.bucketForm.getRawValue());let u=s.pick(l,s.keys(n));u["placement-target"]=l.placement_rule,u=s.merge(n,u),this.bucketForm.setValue(u),this.editing&&(this.setVersioningStatus(l.versioning),this.isVersioningAlreadyEnabled=this.isVersioningEnabled,this.setMfaDeleteStatus(l.mfa_delete),this.isMfaDeleteAlreadyEnabled=this.isMfaDeleteEnabled,this.setMfaDeleteValidators())})})}goToListView(){this.router.navigate(["/rgw/bucket"])}submit(){if(this.bucketForm.pristine)return void this.goToListView();const l=this.bucketForm.value;if(this.editing){const n=this.getVersioningStatus(),u=this.getMfaDeleteStatus();this.rgwBucketService.update(l.bid,l.id,l.owner,n,u,l["mfa-token-serial"],l["mfa-token-pin"],l.lock_mode,l.lock_retention_period_days,l.lock_retention_period_years).subscribe(()=>{this.notificationService.show(C.a.success,this.i18n('Updated Object Gateway bucket "{{bid}}".',l)),this.goToListView()},()=>{this.bucketForm.setErrors({cdSubmitButton:!0})})}else this.rgwBucketService.create(l.bid,l.owner,this.zonegroup,l["placement-target"],l.lock_enabled,l.lock_mode,l.lock_retention_period_days,l.lock_retention_period_years).subscribe(()=>{this.notificationService.show(C.a.success,this.i18n('Created Object Gateway bucket "{{bid}}"',l)),this.goToListView()},()=>{this.bucketForm.setErrors({cdSubmitButton:!0})})}bucketNameValidator(){const l=this.rgwBucketService;return n=>new Promise(u=>{if(n.pristine||""===n.value)return void u(null);const e=[];e.push(l=>!R.a.ip()(l)),e.push(l=>s.inRange(l.length,3,64)),e.push(l=>{const n=s.split(l,".");return s.every(n,l=>l===s.toLower(l)&&!l.includes("_")&&!!/[0-9a-z-]/.test(l)&&s.every([0,l.length],n=>/[a-z]/.test(l[n])||s.isInteger(s.parseInt(l[n]))))}),s.every(e,l=>l(n.value))?l.exists(n.value).subscribe(l=>{u(l?{bucketNameExists:!0}:null)}):u({bucketNameInvalid:!0})})}areMfaCredentialsRequired(){return this.isMfaDeleteEnabled!==this.isMfaDeleteAlreadyEnabled||this.isMfaDeleteAlreadyEnabled&&this.isVersioningEnabled!==this.isVersioningAlreadyEnabled}setMfaDeleteValidators(){const l=this.bucketForm.get("mfa-token-serial"),n=this.bucketForm.get("mfa-token-pin");this.areMfaCredentialsRequired()?(l.setValidators(o.B.required),n.setValidators(o.B.required)):(l.setValidators(null),n.setValidators(null)),l.updateValueAndValidity(),n.updateValueAndValidity()}getVersioningStatus(){return this.isVersioningEnabled?I.ENABLED:I.SUSPENDED}setVersioningStatus(l){this.isVersioningEnabled=l===I.ENABLED}updateVersioning(){this.isVersioningEnabled=!this.isVersioningEnabled,this.setMfaDeleteValidators()}getMfaDeleteStatus(){return this.isMfaDeleteEnabled?y.ENABLED:y.DISABLED}setMfaDeleteStatus(l){this.isMfaDeleteEnabled=l===y.ENABLED}updateMfaDelete(){this.isMfaDeleteEnabled=!this.isMfaDeleteEnabled,this.setMfaDeleteValidators()}}var E=u("HDdC"),q=u("cp0P"),N=u("+fVR"),T=u("0+/T"),x=u("uIqm"),V=u("vCyI"),S=u("Fgil"),D=u("o4+5"),F=u("aexS"),j=u("EgGo");const B=new j.a("rgw/bucket");class P extends N.a{constructor(l,n,u,e,t,a,i,o,s,d){super(),this.authStorageService=l,this.dimlessBinaryPipe=n,this.dimlessPipe=u,this.rgwBucketService=e,this.bsModalService=t,this.i18n=a,this.urlBuilder=i,this.actionLabels=o,this.ngZone=s,this.changeDetectorRef=d,this.columns=[],this.buckets=[],this.selection=new V.a,this.isStale=!1,this.permission=this.authStorageService.getPermissions().rgw;const r=()=>this.selection.first()&&""+encodeURIComponent(this.selection.first().bid);this.tableActions=[{permission:"create",icon:b.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:l=>!l.hasSelection},{permission:"update",icon:b.a.edit,routerLink:()=>this.urlBuilder.getEdit(r()),name:this.actionLabels.EDIT},{permission:"delete",icon:b.a.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSelection,name:this.actionLabels.DELETE,canBePrimary:l=>l.hasMultiSelection}],this.timeConditionReached()}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"bid",flexGrow:2},{name:this.i18n("Owner"),prop:"owner",flexGrow:3},{name:this.i18n("Used Capacity"),prop:"bucket_size",flexGrow:.5,pipe:this.dimlessBinaryPipe},{name:this.i18n("Capacity Limit %"),prop:"size_usage",cellTemplate:this.bucketSizeTpl,flexGrow:1},{name:this.i18n("Objects"),prop:"num_objects",flexGrow:.5,pipe:this.dimlessPipe},{name:this.i18n("Object Limit %"),prop:"object_usage",cellTemplate:this.bucketObjectTpl,flexGrow:1}]}transformBucketData(){s.forEach(this.buckets,l=>{const n=l.bucket_quota.max_size,u=l.bucket_quota.max_objects;let e=0,t=0;s.forEach(l.usage,l=>{e+=l.size_actual,t+=l.num_objects}),l.bucket_size=e,l.num_objects=t,l.size_usage=n>0?e/n:void 0,l.object_usage=u>0?t/u:void 0})}timeConditionReached(){clearTimeout(this.staleTimeout),this.ngZone.runOutsideAngular(()=>{this.staleTimeout=window.setTimeout(()=>{this.ngZone.run(()=>{this.isStale=!0})},1e4)})}getBucketList(l){this.isStale=!1,this.timeConditionReached(),this.rgwBucketService.list().subscribe(l=>{this.buckets=l,this.transformBucketData(),this.changeDetectorRef.detectChanges()},()=>{l.error()})}updateSelection(l){this.selection=l}deleteAction(){this.bsModalService.show(T.a,{initialState:{itemDescription:this.i18n(this.selection.hasSingleSelection?"bucket":"buckets"),itemNames:this.selection.selected.map(l=>l.bid),submitActionObservable:()=>new E.a(l=>{Object(q.a)(this.selection.selected.map(l=>this.rgwBucketService.delete(l.bid))).subscribe(null,n=>{l.error(n),this.table.refreshBtn()},()=>{l.complete(),this.table.refreshBtn()})})}})}}let A=(()=>{let l=class{constructor(l){this.http=l,this.url="api/rgw/daemon"}list(){return this.http.get(this.url)}get(l){return this.http.get(`${this.url}/${l}`)}};return l.ngInjectableDef=e["ɵɵdefineInjectable"]({factory:function(){return new l(e["ɵɵinject"](r.c))},token:l,providedIn:g.a}),l=d.__decorate([f.a,d.__metadata("design:paramtypes",[r.c])],l),l})();var U=u("85J/");class M extends N.a{constructor(l,n,u,e,t){super(),this.rgwDaemonService=l,this.authStorageService=n,this.cephShortVersionPipe=u,this.i18n=e,this.rgwSiteService=t,this.columns=[],this.daemons=[]}ngOnInit(){this.grafanaPermission=this.authStorageService.getPermissions().grafana,this.columns=[{name:this.i18n("ID"),prop:"id",flexGrow:2},{name:this.i18n("Hostname"),prop:"server_hostname",flexGrow:2},{name:this.i18n("Version"),prop:"version",flexGrow:1,pipe:this.cephShortVersionPipe}],this.rgwSiteService.get("realms").subscribe(l=>this.isMultiSite=l.length>0)}getDaemonList(l){this.rgwDaemonService.list().subscribe(l=>{this.daemons=l},()=>{l.error()})}}var O=u("GyhO"),z=u("aXbf"),L=function(l){return l.USERS="users",l.BUCKETS="buckets",l.METADATA="metadata",l.USAGE="usage",l.ZONE="zone",l}({});let G=(()=>{class l{static getAll(){return Object.values(l.capabilities)}}return l.capabilities=L,l})();class K{constructor(l,n,u,t){this.formBuilder=l,this.bsModalRef=n,this.i18n=u,this.actionLabels=t,this.submitAction=new e.EventEmitter,this.editing=!0,this.types=[],this.resource=this.i18n("capability"),this.createForm()}createForm(){this.formGroup=this.formBuilder.group({type:[null,[o.B.required]],perm:[null,[o.B.required]]})}setEditing(l=!0){this.editing=l,this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.ADD}setValues(l,n){this.formGroup.setValue({type:l,perm:n})}setCapabilities(l){const n=[];l.forEach(l=>{n.push(l.type)}),this.types=[],G.getAll().forEach(l=>{-1===s.indexOf(n,l)&&this.types.push(l)})}onSubmit(){this.submitAction.emit(this.formGroup.value),this.bsModalRef.hide()}}class ${constructor(l,n,u,t){this.formBuilder=l,this.bsModalRef=n,this.i18n=u,this.actionLabels=t,this.submitAction=new e.EventEmitter,this.viewing=!0,this.userCandidates=[],this.resource=this.i18n("S3 Key"),this.createForm()}createForm(){this.formGroup=this.formBuilder.group({user:[null,[o.B.required]],generate_key:[!0],access_key:[null,[R.a.requiredIf({generate_key:!1})]],secret_key:[null,[R.a.requiredIf({generate_key:!1})]]})}setViewing(l=!0){this.viewing=l,this.action=this.viewing?this.actionLabels.SHOW:this.actionLabels.CREATE}setValues(l,n,u){this.formGroup.setValue({user:l,generate_key:s.isEmpty(n),access_key:n,secret_key:u})}setUserCandidates(l){this.userCandidates=l}onSubmit(){this.submitAction.emit(this.formGroup.value),this.bsModalRef.hide()}}class Z{}class Q{constructor(l,n,u,t){this.formBuilder=l,this.bsModalRef=n,this.i18n=u,this.actionLabels=t,this.submitAction=new e.EventEmitter,this.editing=!0,this.subusers=[],this.resource=this.i18n("Subuser"),this.createForm()}createForm(){this.formGroup=this.formBuilder.group({uid:[null],subuid:[null,[o.B.required,this.subuserValidator()]],perm:[null,[o.B.required]],generate_secret:[!0],secret_key:[null,[R.a.requiredIf({generate_secret:!1})]]})}subuserValidator(){const l=this;return n=>l.editing||Object(R.b)(n.value)?null:l.subusers.some(u=>s.isEqual(l.getSubuserName(u.id),n.value))?{subuserIdExists:!0}:null}getSubuserName(l){if(s.isEmpty(l))return l;const n=l.match(/([^:]+)(:(.+))?/);return s.isUndefined(n[3])?n[1]:n[3]}setEditing(l=!0){this.editing=l,this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE}setValues(l,n="",u=""){this.formGroup.setValue({uid:l,subuid:this.getSubuserName(n),perm:u,generate_secret:!0,secret_key:null})}setSubusers(l){this.subusers=l}onSubmit(){const l=this.formGroup.value,n=new Z;n.id=`${l.uid}:${l.subuid}`,n.permissions=l.perm,n.generate_secret=l.generate_secret,n.secret_key=l.secret_key,this.submitAction.emit(n),this.bsModalRef.hide()}}class W{constructor(l,n,u){this.bsModalRef=l,this.i18n=n,this.actionLabels=u,this.resource=this.i18n("Swift Key"),this.action=this.actionLabels.SHOW}setValues(l,n){this.user=l,this.secret_key=n}}class Y{constructor(l,n,u,e,a,i,o,s){this.formBuilder=l,this.route=n,this.router=u,this.rgwUserService=e,this.bsModalService=a,this.notificationService=i,this.i18n=o,this.actionLabels=s,this.editing=!1,this.error=!1,this.loading=!1,this.submitObservables=[],this.icons=b.a,this.subusers=[],this.s3Keys=[],this.swiftKeys=[],this.capabilities=[],this.showTenant=!1,this.previousTenant=null,this.resource=this.i18n("user"),this.subuserLabel=this.i18n("subuser"),this.s3keyLabel=this.i18n("S3 Key"),this.capabilityLabel=this.i18n("capability"),this.editing=this.router.url.startsWith("/rgw/user/"+t.e.EDIT),this.action=this.editing?this.actionLabels.EDIT:this.actionLabels.CREATE,this.createForm()}createForm(){this.userForm=this.formBuilder.group({user_id:[null,[o.B.required,o.B.pattern(/^[a-zA-Z0-9!@#%^&*()_-]+$/)],this.editing?[]:[R.a.unique(this.rgwUserService.exists,this.rgwUserService,()=>this.userForm.getValue("tenant"))]],show_tenant:[this.editing],tenant:[null,[o.B.pattern(/^[a-zA-Z0-9!@#%^&*()_-]+$/)],this.editing?[]:[R.a.unique(this.rgwUserService.exists,this.rgwUserService,()=>this.userForm.getValue("user_id"),!0)]],display_name:[null,[o.B.required]],email:[null,[R.a.email],[R.a.unique(this.rgwUserService.emailExists,this.rgwUserService)]],max_buckets_mode:[1],max_buckets:[1e3,[R.a.requiredIf({max_buckets_mode:"1"}),R.a.number(!1),o.B.min(1)]],suspended:[!1],generate_key:[!0],access_key:[null,[R.a.requiredIf({generate_key:!1})]],secret_key:[null,[R.a.requiredIf({generate_key:!1})]],user_quota_enabled:[!1],user_quota_max_size_unlimited:[!0],user_quota_max_size:[null,[R.a.composeIf({user_quota_enabled:!0,user_quota_max_size_unlimited:!1},[o.B.required,this.quotaMaxSizeValidator])]],user_quota_max_objects_unlimited:[!0],user_quota_max_objects:[null,[o.B.min(0),R.a.requiredIf({user_quota_enabled:!0,user_quota_max_objects_unlimited:!1})]],bucket_quota_enabled:[!1],bucket_quota_max_size_unlimited:[!0],bucket_quota_max_size:[null,[R.a.composeIf({bucket_quota_enabled:!0,bucket_quota_max_size_unlimited:!1},[o.B.required,this.quotaMaxSizeValidator])]],bucket_quota_max_objects_unlimited:[!0],bucket_quota_max_objects:[null,[o.B.min(0),R.a.requiredIf({bucket_quota_enabled:!0,bucket_quota_max_objects_unlimited:!1})]]})}ngOnInit(){this.route.params.subscribe(l=>{if(!l.hasOwnProperty("uid"))return;const n=decodeURIComponent(l.uid);this.loading=!0;const u=[];u.push(this.rgwUserService.get(n)),u.push(this.rgwUserService.getQuota(n)),Object(q.a)(u).subscribe(l=>{this.loading=!1;const n=s.clone(this.userForm.value);let u=s.pick(l[0],s.keys(this.userForm.value));switch(u.max_buckets){case-1:u.max_buckets_mode=-1,u.max_buckets="";break;case 0:u.max_buckets_mode=0,u.max_buckets="";break;default:u.max_buckets_mode=1}["user","bucket"].forEach(n=>{const e=l[1][n+"_quota"];u[n+"_quota_enabled"]=e.enabled,e.max_size<0?(u[n+"_quota_max_size_unlimited"]=!0,u[n+"_quota_max_size"]=null):(u[n+"_quota_max_size_unlimited"]=!1,u[n+"_quota_max_size"]=e.max_size+" B"),e.max_objects<0?(u[n+"_quota_max_objects_unlimited"]=!0,u[n+"_quota_max_objects"]=null):(u[n+"_quota_max_objects_unlimited"]=!1,u[n+"_quota_max_objects"]=e.max_objects)}),u=s.merge(n,u),this.userForm.setValue(u),this.subusers=l[0].subusers,this.s3Keys=l[0].keys,this.swiftKeys=l[0].swift_keys;const e={"read, write":"*"};l[0].caps.forEach(l=>{l.perm in e&&(l.perm=e[l.perm])}),this.capabilities=l[0].caps},l=>{this.error=l})})}goToListView(){this.router.navigate(["/rgw/user"])}onSubmit(){let l;if(this.userForm.pristine)return void this.goToListView();const n=this.getUID();if(this.editing){if(this._isGeneralDirty()){const l=this._getUpdateArgs();this.submitObservables.push(this.rgwUserService.update(n,l))}l=this.i18n('Updated Object Gateway user "{{uid}}"',{uid:n})}else{const u=this._getCreateArgs();this.submitObservables.push(this.rgwUserService.create(u)),l=this.i18n('Created Object Gateway user "{{uid}}"',{uid:n})}if(this._isUserQuotaDirty()){const l=this._getUserQuotaArgs();this.submitObservables.push(this.rgwUserService.updateQuota(n,l))}if(this._isBucketQuotaDirty()){const l=this._getBucketQuotaArgs();this.submitObservables.push(this.rgwUserService.updateQuota(n,l))}Object(O.a)(...this.submitObservables).subscribe({error:()=>{this.userForm.setErrors({cdSubmitButton:!0})},complete:()=>{this.notificationService.show(C.a.success,l),this.goToListView()}})}updateFieldsWhenTenanted(){this.showTenant=this.userForm.getValue("show_tenant"),this.showTenant?(this.userForm.get("user_id").markAsTouched(),this.previousTenant=this.userForm.get("tenant").value,this.userForm.get("tenant").patchValue(null)):(this.userForm.get("user_id").markAsUntouched(),this.userForm.get("tenant").patchValue(this.previousTenant))}getUID(){let l,n=this.userForm.getValue("user_id");return null!==this.userForm&&(l=this.userForm.getValue("tenant")),l&&l.length>0&&(n=`${this.userForm.getValue("tenant")}$${n}`),n}quotaMaxSizeValidator(l){return Object(R.b)(l.value)?null:null===RegExp("^(\\d+(\\.\\d+)?)\\s*(B|K(B|iB)?|M(B|iB)?|G(B|iB)?|T(B|iB)?)?$","i").exec(l.value)||(new z.a).toBytes(l.value)<1024?{quotaMaxSize:!0}:null}setSubuser(l,n){const u={"full-control":"full","read-write":"readwrite"},e=this.getUID();this.submitObservables.push(this.rgwUserService.createSubuser(e,{subuser:l.id,access:l.permissions in u?u[l.permissions]:l.permissions,key_type:"swift",secret_key:l.secret_key,generate_secret:l.generate_secret?"true":"false"})),s.isNumber(n)?this.subusers[n]=l:(this.subusers.push(l),this.swiftKeys.push({user:l.id,secret_key:l.generate_secret?"Apply your changes first...":l.secret_key})),this.userForm.markAsDirty()}deleteSubuser(l){const n=this.subusers[l];this.submitObservables.push(this.rgwUserService.deleteSubuser(this.getUID(),n.id)),this.s3Keys=this.s3Keys.filter(l=>l.user!==n.id),this.swiftKeys=this.swiftKeys.filter(l=>l.user!==n.id),this.subusers.splice(l,1),this.userForm.markAsDirty()}setCapability(l,n){const u=this.getUID();if(s.isNumber(n)){const e=this.capabilities[n];this.submitObservables.push(this.rgwUserService.deleteCapability(u,e.type,e.perm)),this.submitObservables.push(this.rgwUserService.addCapability(u,l.type,l.perm)),this.capabilities[n]=l}else this.submitObservables.push(this.rgwUserService.addCapability(u,l.type,l.perm)),this.capabilities.push(l);this.userForm.markAsDirty()}deleteCapability(l){const n=this.capabilities[l];this.submitObservables.push(this.rgwUserService.deleteCapability(this.getUID(),n.type,n.perm)),this.capabilities.splice(l,1),this.userForm.markAsDirty()}hasAllCapabilities(){return!s.difference(G.getAll(),s.map(this.capabilities,"type")).length}setS3Key(l,n){if(s.isNumber(n));else{const n=l.user.match(/([^:]+)(:(.+))?/),u=n[1],e={subuser:n[2]?n[3]:"",generate_key:l.generate_key?"true":"false"};"false"===e.generate_key&&(s.isNil(l.access_key)||(e.access_key=l.access_key),s.isNil(l.secret_key)||(e.secret_key=l.secret_key)),this.submitObservables.push(this.rgwUserService.addS3Key(u,e)),this.s3Keys.push({user:l.user,access_key:l.generate_key?"Apply your changes first...":l.access_key,secret_key:l.generate_key?"Apply your changes first...":l.secret_key})}this.userForm.markAsDirty()}deleteS3Key(l){const n=this.s3Keys[l];this.submitObservables.push(this.rgwUserService.deleteS3Key(this.getUID(),n.access_key)),this.s3Keys.splice(l,1),this.userForm.markAsDirty()}showSubuserModal(l){const n=this.getUID(),u=this.bsModalService.show(Q);if(s.isNumber(l)){const e=this.subusers[l];u.content.setEditing(),u.content.setValues(n,e.id,e.permissions)}else u.content.setEditing(!1),u.content.setValues(n),u.content.setSubusers(this.subusers);u.content.submitAction.subscribe(n=>{this.setSubuser(n,l)})}showS3KeyModal(l){const n=this.bsModalService.show($);if(s.isNumber(l)){const u=this.s3Keys[l];n.content.setViewing(),n.content.setValues(u.user,u.access_key,u.secret_key)}else{const l=this._getS3KeyUserCandidates();n.content.setViewing(!1),n.content.setUserCandidates(l),n.content.submitAction.subscribe(l=>{this.setS3Key(l)})}}showSwiftKeyModal(l){const n=this.bsModalService.show(W),u=this.swiftKeys[l];n.content.setValues(u.user,u.secret_key)}showCapabilityModal(l){const n=this.bsModalService.show(K);if(s.isNumber(l)){const u=this.capabilities[l];n.content.setEditing(),n.content.setValues(u.type,u.perm)}else n.content.setEditing(!1),n.content.setCapabilities(this.capabilities);n.content.submitAction.subscribe(n=>{this.setCapability(n,l)})}_isGeneralDirty(){return["display_name","email","max_buckets_mode","max_buckets","suspended"].some(l=>this.userForm.get(l).dirty)}_isUserQuotaDirty(){return["user_quota_enabled","user_quota_max_size_unlimited","user_quota_max_size","user_quota_max_objects_unlimited","user_quota_max_objects"].some(l=>this.userForm.get(l).dirty)}_isBucketQuotaDirty(){return["bucket_quota_enabled","bucket_quota_max_size_unlimited","bucket_quota_max_size","bucket_quota_max_objects_unlimited","bucket_quota_max_objects"].some(l=>this.userForm.get(l).dirty)}_getCreateArgs(){const l={uid:this.getUID(),display_name:this.userForm.getValue("display_name"),suspended:this.userForm.getValue("suspended"),email:"",max_buckets:this.userForm.getValue("max_buckets"),generate_key:this.userForm.getValue("generate_key"),access_key:"",secret_key:""},n=this.userForm.getValue("email");s.isString(n)&&n.length>0&&s.merge(l,{email:n}),this.userForm.getValue("generate_key")||s.merge(l,{generate_key:!1,access_key:this.userForm.getValue("access_key"),secret_key:this.userForm.getValue("secret_key")});const u=parseInt(this.userForm.getValue("max_buckets_mode"),10);return s.includes([-1,0],u)&&s.merge(l,{max_buckets:u}),l}_getUpdateArgs(){const l={},n=["display_name","email","max_buckets","suspended"];for(const e of n)l[e]=this.userForm.getValue(e);const u=parseInt(this.userForm.getValue("max_buckets_mode"),10);return s.includes([-1,0],u)&&(l.max_buckets=u),l}_getUserQuotaArgs(){const l={quota_type:"user",enabled:this.userForm.getValue("user_quota_enabled"),max_size_kb:-1,max_objects:-1};if(!this.userForm.getValue("user_quota_max_size_unlimited")){const n=(new z.a).toBytes(this.userForm.getValue("user_quota_max_size"));l.max_size_kb=(n/1024).toFixed(0)}return this.userForm.getValue("user_quota_max_objects_unlimited")||(l.max_objects=this.userForm.getValue("user_quota_max_objects")),l}_getBucketQuotaArgs(){const l={quota_type:"bucket",enabled:this.userForm.getValue("bucket_quota_enabled"),max_size_kb:-1,max_objects:-1};if(!this.userForm.getValue("bucket_quota_max_size_unlimited")){const n=(new z.a).toBytes(this.userForm.getValue("bucket_quota_max_size"));l.max_size_kb=(n/1024).toFixed(0)}return this.userForm.getValue("bucket_quota_max_objects_unlimited")||(l.max_objects=this.userForm.getValue("bucket_quota_max_objects")),l}_getS3KeyUserCandidates(){let l=[];const n=this.getUID();return s.isString(n)&&!s.isEmpty(n)&&l.push(n),this.subusers.forEach(n=>{l.push(n.id)}),this.s3Keys.forEach(n=>{l.push(n.user)}),l=s.uniq(l),l}onMaxBucketsModeChange(l){"1"===l&&(this.userForm.get("max_buckets").valid||this.userForm.patchValue({max_buckets:1e3}))}}var J=u("x38r");const X=new j.a("rgw/user");class H extends N.a{constructor(l,n,u,e,t,a,i){super(),this.authStorageService=l,this.rgwUserService=n,this.bsModalService=u,this.i18n=e,this.urlBuilder=t,this.actionLabels=a,this.ngZone=i,this.columns=[],this.users=[],this.selection=new V.a,this.isStale=!1,this.permission=this.authStorageService.getPermissions().rgw,this.columns=[{name:this.i18n("Username"),prop:"uid",flexGrow:1},{name:this.i18n("Tenant"),prop:"tenant",flexGrow:1},{name:this.i18n("Full name"),prop:"display_name",flexGrow:1},{name:this.i18n("Email address"),prop:"email",flexGrow:1},{name:this.i18n("Suspended"),prop:"suspended",flexGrow:1,cellClass:"text-center",cellTransformation:J.a.checkIcon},{name:this.i18n("Max. buckets"),prop:"max_buckets",flexGrow:1,cellTransformation:J.a.map,customTemplateConfig:{"-1":this.i18n("Disabled"),0:this.i18n("Unlimited")}}];const o=()=>this.selection.first()&&""+encodeURIComponent(this.selection.first().uid);this.tableActions=[{permission:"create",icon:b.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:l=>!l.hasSelection},{permission:"update",icon:b.a.edit,routerLink:()=>this.urlBuilder.getEdit(o()),name:this.actionLabels.EDIT},{permission:"delete",icon:b.a.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSelection,name:this.actionLabels.DELETE,canBePrimary:l=>l.hasMultiSelection}],this.timeConditionReached()}timeConditionReached(){clearTimeout(this.staleTimeout),this.ngZone.runOutsideAngular(()=>{this.staleTimeout=window.setTimeout(()=>{this.ngZone.run(()=>{this.isStale=!0})},1e4)})}getUserList(l){this.isStale=!1,this.timeConditionReached(),this.rgwUserService.list().subscribe(l=>{this.users=l},()=>{l.error()})}updateSelection(l){this.selection=l}deleteAction(){this.bsModalService.show(T.a,{initialState:{itemDescription:this.i18n(this.selection.hasSingleSelection?"user":"users"),itemNames:this.selection.selected.map(l=>l.uid),submitActionObservable:()=>new E.a(l=>{Object(q.a)(this.selection.selected.map(l=>this.rgwUserService.delete(l.uid))).subscribe(null,n=>{l.error(n),this.table.refreshBtn()},()=>{l.complete(),this.table.refreshBtn()})})}})}}class ll{}const nl={breadcrumbs:"Daemons"},ul={breadcrumbs:"Users"},el={breadcrumbs:t.a.CREATE},tl={breadcrumbs:t.a.EDIT},al={breadcrumbs:"Buckets"},il={breadcrumbs:t.a.CREATE},ol={breadcrumbs:t.a.EDIT},sl={breadcrumbs:"Object Gateway"};class dl{}var rl=u("MdoF"),cl=u("ES0t"),ml=u("Xg1U"),fl=u("z5nN"),gl=u("iutN"),pl=u("pMnS"),vl=u("EEJc"),hl=u("PEr+"),bl=u("a40w"),Cl=u("hfeG"),_l=u("2ZVE"),Rl=u("a278"),kl=u("insk"),yl=u("cUpR"),Il=u("20UP"),wl=u("GiVz"),El=u("pKUh"),ql=u("sLuX"),Nl=u("FSuO"),Tl=u("a0VL"),xl=u("j8L6"),Vl=u("b5OY"),Sl=u("pxLl"),Dl=u("SVse");class Fl{constructor(l,n){this.rgwDaemonService=l,this.authStorageService=n,this.serviceId="",this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnChanges(){this.selection&&(this.serviceId=this.selection.id)}getMetaData(){s.isEmpty(this.serviceId)||this.rgwDaemonService.get(this.serviceId).subscribe(l=>{this.metadata=l.rgw_metadata})}}var jl=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Bl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](1,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","one"],["uid","x5ARzZtmk"]],null,null,null,Rl.b,Rl.a)),e["ɵdid"](3,638976,null,0,kl.a,[yl.b,Il.a,wl.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){var u=n.component;l(n,1,0,"Performance Details"),l(n,3,0,"rgw-instance-detail?var-rgw_servers=rgw."+u.serviceId,"one","x5ARzZtmk")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby)}))}function Pl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,11,"tabset",[],[[2,"tab-container",null]],null,null,El.b,El.a)),e["ɵdid"](1,180224,null,0,_l.e,[_l.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](4,0,null,null,1,"cd-table-key-value",[],null,[[null,"fetchData"]],(function(l,n,u){var e=!0;return"fetchData"===n&&(e=!1!==l.component.getMetaData()&&e),e}),ql.b,ql.a)),e["ɵdid"](5,638976,null,0,Nl.a,[Tl.a],{data:[0,"data"]},{fetchData:"fetchData"}),(l()(),e["ɵeld"](6,0,null,0,3,"tab",[["heading","Performance Counters"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](7,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](8,0,null,null,1,"cd-table-performance-counter",[["serviceType","rgw"]],null,null,null,xl.b,xl.a)),e["ɵdid"](9,114688,null,0,Vl.a,[Sl.a,wl.a],{serviceType:[0,"serviceType"],serviceId:[1,"serviceId"]},null),(l()(),e["ɵand"](16777216,null,0,1,null,Bl)),e["ɵdid"](11,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Details"),l(n,5,0,u.metadata),l(n,7,0,"Performance Counters"),l(n,9,0,"rgw",u.serviceId),l(n,11,0,u.grafanaPermission.read)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby),l(n,6,0,e["ɵnov"](n,7).id,e["ɵnov"](n,7).active,e["ɵnov"](n,7).addClass,e["ɵnov"](n,7).role,e["ɵnov"](n,7).ariaLabelledby)}))}function Al(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Pl)),e["ɵdid"](1,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,1,0,n.component.selection)}),null)}function Ul(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-daemon-details",[],null,null,null,Al,jl)),e["ɵdid"](1,573440,null,0,Fl,[A,F.a],null,null)],null,null)}var Ml=e["ɵccf"]("cd-rgw-daemon-details",Fl,Ul,{selection:"selection"},{},[]),Ol=u("iExv");class zl{constructor(l){this.rgwBucketService=l}ngOnChanges(){this.selection&&this.rgwBucketService.get(this.selection.bid).subscribe(l=>{this.selection=l})}}var Ll=e["ɵcrt"]({encapsulation:0,styles:[["table[_ngcontent-%COMP%]{table-layout:fixed}table[_ngcontent-%COMP%]   td[_ngcontent-%COMP%]{word-wrap:break-word}"]],data:{}});function Gl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function Kl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "])),e["ɵppd"](2,1)],null,(function(l,n){var u=n.component,t=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent.parent.parent,2),u.selection.bucket_quota.max_size));l(n,1,0,t)}))}function $l(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function Zl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.selection.bucket_quota.max_objects)}))}function Ql(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,24,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket quota"])),(l()(),e["ɵeld"](3,0,null,null,21,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,20,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](8,0,null,null,2,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,["",""])),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,6,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum size"])),(l()(),e["ɵand"](16777216,null,null,1,null,Gl)),e["ɵdid"](15,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Kl)),e["ɵdid"](17,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](18,0,null,null,6,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](19,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum objects"])),(l()(),e["ɵand"](16777216,null,null,1,null,$l)),e["ɵdid"](22,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Zl)),e["ɵdid"](24,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,15,0,u.selection.bucket_quota.max_size<=-1),l(n,17,0,u.selection.bucket_quota.max_size>-1),l(n,22,0,u.selection.bucket_quota.max_objects<=-1),l(n,24,0,u.selection.bucket_quota.max_objects>-1)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent.parent.parent,1),u.selection.bucket_quota.enabled));l(n,9,0,t)}))}function Wl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mode"])),(l()(),e["ɵeld"](4,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](5,null,["",""])),(l()(),e["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Days"])),(l()(),e["ɵeld"](9,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](10,null,["",""])),(l()(),e["ɵeld"](11,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Years"])),(l()(),e["ɵeld"](14,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](15,null,["",""]))],null,(function(l,n){var u=n.component;l(n,5,0,u.selection.lock_mode),l(n,10,0,u.selection.lock_retention_period_days),l(n,15,0,u.selection.lock_retention_period_years)}))}function Yl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,82,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,67,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,66,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](7,null,["",""])),(l()(),e["ɵeld"](8,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["ID"])),(l()(),e["ɵeld"](11,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](12,null,["",""])),(l()(),e["ɵeld"](13,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](14,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Owner"])),(l()(),e["ɵeld"](16,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](17,null,["",""])),(l()(),e["ɵeld"](18,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](19,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Index type"])),(l()(),e["ɵeld"](21,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](22,null,["",""])),(l()(),e["ɵeld"](23,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](24,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Placement rule"])),(l()(),e["ɵeld"](26,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](27,null,["",""])),(l()(),e["ɵeld"](28,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](29,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Marker"])),(l()(),e["ɵeld"](31,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](32,null,["",""])),(l()(),e["ɵeld"](33,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](34,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum marker"])),(l()(),e["ɵeld"](36,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](37,null,["",""])),(l()(),e["ɵeld"](38,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](39,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Version"])),(l()(),e["ɵeld"](41,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](42,null,["",""])),(l()(),e["ɵeld"](43,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](44,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Master version"])),(l()(),e["ɵeld"](46,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](47,null,["",""])),(l()(),e["ɵeld"](48,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](49,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Modification time"])),(l()(),e["ɵeld"](51,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](52,null,["",""])),e["ɵppd"](53,1),(l()(),e["ɵeld"](54,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](55,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Zonegroup"])),(l()(),e["ɵeld"](57,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](58,null,["",""])),(l()(),e["ɵeld"](59,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](60,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Versioning"])),(l()(),e["ɵeld"](62,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](63,null,["",""])),(l()(),e["ɵeld"](64,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](65,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["MFA Delete"])),(l()(),e["ɵeld"](67,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](68,null,["",""])),(l()(),e["ɵand"](16777216,null,null,1,null,Ql)),e["ɵdid"](70,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](71,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Locking"])),(l()(),e["ɵeld"](73,0,null,null,9,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](74,0,null,null,8,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](75,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](76,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](78,0,null,null,2,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](79,null,["",""])),e["ɵppd"](80,1),(l()(),e["ɵand"](16777216,null,null,1,null,Wl)),e["ɵdid"](82,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,70,0,u.selection.bucket_quota),l(n,82,0,u.selection.lock_enabled)}),(function(l,n){var u=n.component;l(n,7,0,u.selection.bid),l(n,12,0,u.selection.id),l(n,17,0,u.selection.owner),l(n,22,0,u.selection.index_type),l(n,27,0,u.selection.placement_rule),l(n,32,0,u.selection.marker),l(n,37,0,u.selection.max_marker),l(n,42,0,u.selection.ver),l(n,47,0,u.selection.master_ver);var t=e["ɵunv"](n,52,0,l(n,53,0,e["ɵnov"](n.parent.parent,0),u.selection.mtime));l(n,52,0,t),l(n,58,0,u.selection.zonegroup),l(n,63,0,u.selection.versioning),l(n,68,0,u.selection.mfa_delete);var a=e["ɵunv"](n,79,0,l(n,80,0,e["ɵnov"](n.parent.parent,1),u.selection.lock_enabled));l(n,79,0,a)}))}function Jl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,El.b,El.a)),e["ɵdid"](1,180224,null,0,_l.e,[_l.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Yl)),e["ɵdid"](5,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Details"),l(n,5,0,u.selection)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby)}))}function Xl(l){return e["ɵvid"](0,[e["ɵpid"](0,Tl.a,[Dl.DatePipe]),e["ɵpid"](0,Ol.a,[wl.a]),e["ɵpid"](0,D.a,[z.a]),(l()(),e["ɵand"](16777216,null,null,1,null,Jl)),e["ɵdid"](4,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,4,0,n.component.selection)}),null)}function Hl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-bucket-details",[],null,null,null,Xl,Ll)),e["ɵdid"](1,573440,null,0,zl,[p],null,null)],null,null)}var ln=e["ɵccf"]("cd-rgw-bucket-details",zl,Hl,{selection:"selection"},{},[]),nn=u("25BL"),un=u("FE24"),en=u("z/SZ"),tn=u("GS7A"),an=u("TJUb");class on{constructor(l,n,u){this.rgwUserService=l,this.bsModalService=n,this.i18n=u,this.keys=[],this.keysColumns=[],this.keysSelection=new V.a,this.icons=b.a}ngOnInit(){this.keysColumns=[{name:this.i18n("Username"),prop:"username",flexGrow:1},{name:this.i18n("Type"),prop:"type",flexGrow:1}],this.maxBucketsMap={"-1":this.i18n("Disabled"),0:this.i18n("Unlimited")}}ngOnChanges(){this.selection&&(this.user=this.selection,this.user.subusers=s.sortBy(this.user.subusers,"id"),this.user.caps=s.sortBy(this.user.caps,"type"),this.rgwUserService.getQuota(this.user.uid).subscribe(l=>{s.extend(this.user,l)}),this.keys=[],this.user.keys&&this.user.keys.forEach(l=>{this.keys.push({id:this.keys.length+1,type:"S3",username:l.user,ref:l})}),this.user.swift_keys&&this.user.swift_keys.forEach(l=>{this.keys.push({id:this.keys.length+1,type:"Swift",username:l.user,ref:l})}),this.keys=s.sortBy(this.keys,"user"))}updateKeysSelection(l){this.keysSelection=l}showKeyModal(){const l=this.keysSelection.first(),n=this.bsModalService.show("S3"===l.type?$:W);switch(l.type){case"S3":n.content.setViewing(),n.content.setValues(l.ref.user,l.ref.access_key,l.ref.secret_key);break;case"Swift":n.content.setValues(l.ref.user,l.ref.secret_key)}}}var sn=u("LqlI"),dn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function rn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Email address"])),(l()(),e["ɵeld"](3,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](4,null,["",""]))],null,(function(l,n){l(n,4,0,n.component.user.email)}))}function cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"div",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," (",") "]))],null,(function(l,n){l(n,1,0,n.context.$implicit.id,n.context.$implicit.permissions)}))}function mn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Subusers"])),(l()(),e["ɵeld"](3,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,cn)),e["ɵdid"](5,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,5,0,n.component.user.subusers)}),null)}function fn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"div",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," (",") "]))],null,(function(l,n){l(n,1,0,n.context.$implicit.type,n.context.$implicit.perm)}))}function gn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Capabilities"])),(l()(),e["ɵeld"](3,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,fn)),e["ɵdid"](5,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){l(n,5,0,n.component.user.caps)}),null)}function pn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function vn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function hn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "])),e["ɵppd"](2,1)],null,(function(l,n){var u=n.component,t=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent.parent.parent,2),u.user.user_quota.max_size));l(n,1,0,t)}))}function bn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function Cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function _n(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.user.user_quota.max_objects)}))}function Rn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,28,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User quota"])),(l()(),e["ɵeld"](3,0,null,null,25,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,24,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](8,0,null,null,2,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,["",""])),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,8,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum size"])),(l()(),e["ɵand"](16777216,null,null,1,null,pn)),e["ɵdid"](15,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,vn)),e["ɵdid"](17,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,hn)),e["ɵdid"](19,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](20,0,null,null,8,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](21,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum objects"])),(l()(),e["ɵand"](16777216,null,null,1,null,bn)),e["ɵdid"](24,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Cn)),e["ɵdid"](26,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,_n)),e["ɵdid"](28,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,15,0,!u.user.user_quota.enabled),l(n,17,0,u.user.user_quota.enabled&&u.user.user_quota.max_size<=-1),l(n,19,0,u.user.user_quota.enabled&&u.user.user_quota.max_size>-1),l(n,24,0,!u.user.user_quota.enabled),l(n,26,0,u.user.user_quota.enabled&&u.user.user_quota.max_objects<=-1),l(n,28,0,u.user.user_quota.enabled&&u.user.user_quota.max_objects>-1)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent.parent.parent,0),u.user.user_quota.enabled));l(n,9,0,t)}))}function kn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function yn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function In(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "])),e["ɵppd"](2,1)],null,(function(l,n){var u=n.component,t=e["ɵunv"](n,1,0,l(n,2,0,e["ɵnov"](n.parent.parent.parent.parent,2),u.user.bucket_quota.max_size));l(n,1,0,t)}))}function wn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["-"]))],null,null)}function En(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited"]))],null,null)}function qn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.user.bucket_quota.max_objects)}))}function Nn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,28,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket quota"])),(l()(),e["ɵeld"](3,0,null,null,25,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,24,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](8,0,null,null,2,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,["",""])),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,8,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum size"])),(l()(),e["ɵand"](16777216,null,null,1,null,kn)),e["ɵdid"](15,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,yn)),e["ɵdid"](17,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,In)),e["ɵdid"](19,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](20,0,null,null,8,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](21,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum objects"])),(l()(),e["ɵand"](16777216,null,null,1,null,wn)),e["ɵdid"](24,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,En)),e["ɵdid"](26,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,qn)),e["ɵdid"](28,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,15,0,!u.user.bucket_quota.enabled),l(n,17,0,u.user.bucket_quota.enabled&&u.user.bucket_quota.max_size<=-1),l(n,19,0,u.user.bucket_quota.enabled&&u.user.bucket_quota.max_size>-1),l(n,24,0,!u.user.bucket_quota.enabled),l(n,26,0,u.user.bucket_quota.enabled&&u.user.bucket_quota.max_objects<=-1),l(n,28,0,u.user.bucket_quota.enabled&&u.user.bucket_quota.max_objects>-1)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent.parent.parent,0),u.user.bucket_quota.enabled));l(n,9,0,t)}))}function Tn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,50,"div",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,45,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,44,"tbody",[],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Tenant"])),(l()(),e["ɵeld"](6,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](7,null,["",""])),(l()(),e["ɵeld"](8,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User ID"])),(l()(),e["ɵeld"](11,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](12,null,["",""])),(l()(),e["ɵeld"](13,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](14,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](16,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(l()(),e["ɵted"](17,null,["",""])),(l()(),e["ɵeld"](18,0,null,null,4,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](19,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Full name"])),(l()(),e["ɵeld"](21,0,null,null,1,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](22,null,["",""])),(l()(),e["ɵand"](16777216,null,null,1,null,rn)),e["ɵdid"](24,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](25,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](26,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Suspended"])),(l()(),e["ɵeld"](28,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](29,null,["",""])),e["ɵppd"](30,1),(l()(),e["ɵeld"](31,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](32,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["System"])),(l()(),e["ɵeld"](34,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](35,null,["",""])),e["ɵppd"](36,1),(l()(),e["ɵeld"](37,0,null,null,5,"tr",[],null,null,null,null,null)),(l()(),e["ɵeld"](38,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Maximum buckets"])),(l()(),e["ɵeld"](40,0,null,null,2,"td",[],null,null,null,null,null)),(l()(),e["ɵted"](41,null,["",""])),e["ɵppd"](42,2),(l()(),e["ɵand"](16777216,null,null,1,null,mn)),e["ɵdid"](44,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,gn)),e["ɵdid"](46,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Rn)),e["ɵdid"](48,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Nn)),e["ɵdid"](50,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,24,0,null==u.user.email?null:u.user.email.length),l(n,44,0,u.user.subusers&&u.user.subusers.length),l(n,46,0,u.user.caps&&u.user.caps.length),l(n,48,0,u.user.user_quota),l(n,50,0,u.user.bucket_quota)}),(function(l,n){var u=n.component;l(n,7,0,u.user.tenant),l(n,12,0,u.user.user_id),l(n,17,0,u.user.uid),l(n,22,0,u.user.display_name);var t=e["ɵunv"](n,29,0,l(n,30,0,e["ɵnov"](n.parent.parent,0),u.user.suspended));l(n,29,0,t);var a=e["ɵunv"](n,35,0,l(n,36,0,e["ɵnov"](n.parent.parent,0),"true"===u.user.system));l(n,35,0,a);var i=e["ɵunv"](n,41,0,l(n,42,0,e["ɵnov"](n.parent.parent,1),u.user.max_buckets,u.maxBucketsMap));l(n,41,0,i)}))}function xn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,14,"tab",[["heading","Keys"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](1,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](2,0,null,null,12,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["selectionType","multi"]],null,[[null,"updateSelection"]],(function(l,n,u){var e=!0;return"updateSelection"===n&&(e=!1!==l.component.updateKeysSelection(u)&&e),e}),nn.b,nn.a)),e["ɵdid"](3,2867200,null,0,x.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],forceIdentifier:[3,"forceIdentifier"],selectionType:[4,"selectionType"]},{updateSelection:"updateSelection"}),(l()(),e["ɵeld"](4,0,null,1,10,"div",[["class","table-actions"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,16777216,null,null,9,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),e["ɵprd"](512,null,un.f,un.f,[]),e["ɵdid"](7,212992,null,0,un.c,[e.ElementRef,e.Renderer2,e.ViewContainerRef,en.a,un.f,un.a,tn.b],null,null),(l()(),e["ɵeld"](8,0,null,null,6,"button",[["class","btn btn-secondary"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showKeyModal()&&e),e}),null,null)),(l()(),e["ɵeld"](9,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](11,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](12,1),(l()(),e["ɵeld"](13,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Show"]))],(function(l,n){var u=n.component;l(n,1,0,"Keys"),l(n,3,0,u.keys,u.keysColumns,"flex","true","multi"),l(n,7,0);var e=l(n,12,0,u.icons.show);l(n,11,0,e)}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby),l(n,5,0,e["ɵnov"](n,7).dropup,e["ɵnov"](n,7).isOpen,e["ɵnov"](n,7).isOpen&&e["ɵnov"](n,7).isBs4),l(n,8,0,!u.keysSelection.hasSingleSelection)}))}function Vn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"tabset",[],[[2,"tab-container",null]],null,null,El.b,El.a)),e["ɵdid"](1,180224,null,0,_l.e,[_l.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Tn)),e["ɵdid"](5,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,0,1,null,xn)),e["ɵdid"](7,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Details"),l(n,5,0,u.user),l(n,7,0,u.keys.length)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby)}))}function Sn(l){return e["ɵvid"](0,[e["ɵpid"](0,Ol.a,[wl.a]),e["ɵpid"](0,an.a,[]),e["ɵpid"](0,S.a,[z.a]),e["ɵqud"](671088640,1,{accessKeyTpl:0}),e["ɵqud"](671088640,2,{secretKeyTpl:0}),(l()(),e["ɵand"](16777216,null,null,1,null,Vn)),e["ɵdid"](6,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,6,0,n.component.selection)}),null)}function Dn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-details",[],null,null,null,Sn,dn)),e["ɵdid"](1,638976,null,0,on,[h.a,sn.b,wl.a],null,null)],(function(l,n){l(n,1,0)}),null)}var Fn=e["ɵccf"]("cd-rgw-user-details",on,Dn,{selection:"selection"},{},[]),jn=u("8xTl"),Bn=u("ajRT"),Pn=u("mXUL"),An=u("+gVj"),Un=u("ANnk"),Mn=u("f/UV"),On=u("D4zM"),zn=u("OcYo"),Ln=u("EApP"),Gn=u("KVJa"),Kn=u("Z21x"),$n=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Zn(l){return e["ɵvid"](0,[e["ɵpid"](0,Dl.TitleCasePipe,[]),e["ɵpid"](0,jn.a,[]),(l()(),e["ɵeld"](2,0,null,null,51,"cd-modal",[],null,null,null,vl.c,vl.b)),e["ɵdid"](3,49152,null,0,Bn.a,[],{modalRef:[0,"modalRef"]},null),(l()(),e["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," "," "])),e["ɵppd"](6,1),e["ɵppd"](7,1),(l()(),e["ɵeld"](8,0,null,1,45,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,41,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,40,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,12).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,12).onReset()&&t),t}),null,null)),e["ɵdid"](11,16384,null,0,o.G,[],null,null),e["ɵdid"](12,4210688,null,0,o.t,[[8,null],[8,null]],null,null),e["ɵprd"](2048,null,o.d,null,[o.t]),e["ɵdid"](14,16384,null,0,o.s,[[4,o.d]],null,null),(l()(),e["ɵeld"](15,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](16,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](19,0,null,0,1,"label",[["class","cd-col-form-label"],["for","user"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](21,0,null,0,8,"div",[["class","cd-col-form-inpu"]],null,null,null,null,null)),(l()(),e["ɵeld"](22,0,null,null,7,"input",[["class","form-control"],["id","user"],["name","user"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0,a=l.component;return"input"===n&&(t=!1!==e["ɵnov"](l,24)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,24).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,24)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,24)._compositionEnd(u.target.value)&&t),"ngModelChange"===n&&(t=!1!==(a.user=u)&&t),t}),null,null)),e["ɵdid"](23,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](24,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](26,671744,null,0,o.u,[[2,o.d],[8,null],[8,null],[6,o.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),e["ɵprd"](2048,null,o.q,null,[o.u]),e["ɵdid"](28,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](29,16384,null,0,An.h,[[3,o.d],An.a],null,null),(l()(),e["ɵeld"](30,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](31,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](34,0,null,0,1,"label",[["class","cd-col-form-label"],["for","secret_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Secret key"])),(l()(),e["ɵeld"](36,0,null,0,14,"div",[["class","cd-col-form-inpu"]],null,null,null,null,null)),(l()(),e["ɵeld"](37,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](38,0,null,null,7,"input",[["class","form-control"],["id","secret_key"],["name","secret_key"],["type","password"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0,a=l.component;return"input"===n&&(t=!1!==e["ɵnov"](l,40)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,40).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,40)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,40)._compositionEnd(u.target.value)&&t),"ngModelChange"===n&&(t=!1!==(a.secret_key=u)&&t),t}),null,null)),e["ɵdid"](39,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](40,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](42,671744,null,0,o.u,[[2,o.d],[8,null],[8,null],[6,o.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),e["ɵprd"](2048,null,o.q,null,[o.u]),e["ɵdid"](44,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](45,16384,null,0,An.h,[[3,o.d],An.a],null,null),(l()(),e["ɵeld"](46,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](47,0,null,null,1,"button",[["cdPasswordButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,48).onClick()&&t),t}),null,null)),e["ɵdid"](48,81920,null,0,On.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](49,0,null,null,1,"button",[["cdCopy2ClipboardButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,50).onClick()&&t),t}),null,null)),e["ɵdid"](50,81920,null,0,zn.a,[e.ElementRef,e.Renderer2,Ln.j,wl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵeld"](51,0,null,null,2,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](52,0,null,null,1,"cd-back-button",[],null,null,null,Gn.b,Gn.a)),e["ɵdid"](53,49152,null,0,Kn.a,[Dl.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.bsModalRef),l(n,16,0),l(n,26,0,"user",u.user),l(n,31,0),l(n,42,0,"secret_key",u.secret_key),l(n,48,0,"secret_key"),l(n,50,0,"secret_key"),l(n,53,0,u.bsModalRef.hide)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,5,1,l(n,7,0,e["ɵnov"](n,1),u.resource));l(n,5,0,t,a),l(n,10,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending),l(n,15,0,e["ɵnov"](n,16).hasErrors,e["ɵnov"](n,16).hasSuccess),l(n,22,0,!0,e["ɵnov"](n,28).ngClassUntouched,e["ɵnov"](n,28).ngClassTouched,e["ɵnov"](n,28).ngClassPristine,e["ɵnov"](n,28).ngClassDirty,e["ɵnov"](n,28).ngClassValid,e["ɵnov"](n,28).ngClassInvalid,e["ɵnov"](n,28).ngClassPending,e["ɵnov"](n,29).validClass,e["ɵnov"](n,29).invalidClass),l(n,30,0,e["ɵnov"](n,31).hasErrors,e["ɵnov"](n,31).hasSuccess),l(n,38,0,!0,e["ɵnov"](n,44).ngClassUntouched,e["ɵnov"](n,44).ngClassTouched,e["ɵnov"](n,44).ngClassPristine,e["ɵnov"](n,44).ngClassDirty,e["ɵnov"](n,44).ngClassValid,e["ɵnov"](n,44).ngClassInvalid,e["ɵnov"](n,44).ngClassPending,e["ɵnov"](n,45).validClass,e["ɵnov"](n,45).invalidClass)}))}function Qn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-swift-key-modal",[],null,null,null,Zn,$n)),e["ɵdid"](1,49152,null,0,W,[sn.a,wl.a,t.b],null,null)],null,null)}var Wn=e["ɵccf"]("cd-rgw-user-swift-key-modal",W,Qn,{},{},[]),Yn=u("IZUe"),Jn=u("gp3X"),Xn=u("sb0X"),Hn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function lu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","user"],["id","user"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,2)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,2).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,2)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,2)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](2,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](4,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](6,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](7,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,4,0,"user"),l(n,7,0,"user")}),(function(l,n){l(n,0,0,!0,e["ɵnov"](n,6).ngClassUntouched,e["ɵnov"](n,6).ngClassTouched,e["ɵnov"](n,6).ngClassPristine,e["ɵnov"](n,6).ngClassDirty,e["ɵnov"](n,6).ngClassValid,e["ɵnov"](n,6).ngClassInvalid,e["ɵnov"](n,6).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function nu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a username --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function uu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function eu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,12,"select",[["autofocus",""],["class","form-control custom-select"],["formControlName","user"],["id","user"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,3).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,3).onTouched()&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,Yn.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](2,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](5,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](7,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](8,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,nu)),e["ɵdid"](10,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,uu)),e["ɵdid"](12,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,1,0,""),l(n,5,0,"user"),l(n,8,0,"user"),l(n,10,0,null!==u.userCandidates),l(n,12,0,u.userCandidates)}),(function(l,n){l(n,0,0,e["ɵnov"](n,7).ngClassUntouched,e["ɵnov"](n,7).ngClassTouched,e["ɵnov"](n,7).ngClassPristine,e["ɵnov"](n,7).ngClassDirty,e["ɵnov"](n,7).ngClassValid,e["ɵnov"](n,7).ngClassInvalid,e["ɵnov"](n,7).ngClassPending,e["ɵnov"](n,8).validClass,e["ɵnov"](n,8).invalidClass)}))}function tu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function au(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","generate_key"],["id","generate_key"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","generate_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Auto-generate key"]))],(function(l,n){l(n,1,0),l(n,10,0,"generate_key"),l(n,13,0,"generate_key")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function iu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ou(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","access_key"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](6,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](7,{required:0}),(l()(),e["ɵted"](-1,null,["Access key"])),(l()(),e["ɵeld"](9,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,7,"input",[["class","form-control"],["formControlName","access_key"],["id","access_key"],["type","password"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](12,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](15,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](17,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](18,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](19,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](20,0,null,null,1,"button",[["cdPasswordButton","access_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,21).onClick()&&t),t}),null,null)),e["ɵdid"](21,81920,null,0,On.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](22,0,null,null,1,"button",[["cdCopy2ClipboardButton","access_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,23).onClick()&&t),t}),null,null)),e["ɵdid"](23,81920,null,0,zn.a,[e.ElementRef,e.Renderer2,Ln.j,wl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,iu)),e["ɵdid"](25,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0);var t=l(n,7,0,!u.viewing);l(n,6,0,"cd-col-form-label",t),l(n,15,0,"access_key"),l(n,18,0,"access_key"),l(n,21,0,"access_key"),l(n,23,0,"access_key"),l(n,25,0,u.formGroup.showError("access_key",e["ɵnov"](n.parent,11),"required"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,u.viewing,e["ɵnov"](n,17).ngClassUntouched,e["ɵnov"](n,17).ngClassTouched,e["ɵnov"](n,17).ngClassPristine,e["ɵnov"](n,17).ngClassDirty,e["ɵnov"](n,17).ngClassValid,e["ɵnov"](n,17).ngClassInvalid,e["ɵnov"](n,17).ngClassPending,e["ɵnov"](n,18).validClass,e["ɵnov"](n,18).invalidClass)}))}function su(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function du(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","secret_key"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](6,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](7,{required:0}),(l()(),e["ɵted"](-1,null,["Secret key"])),(l()(),e["ɵeld"](9,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,7,"input",[["class","form-control"],["formControlName","secret_key"],["id","secret_key"],["type","password"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](12,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](15,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](17,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](18,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](19,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](20,0,null,null,1,"button",[["cdPasswordButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,21).onClick()&&t),t}),null,null)),e["ɵdid"](21,81920,null,0,On.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](22,0,null,null,1,"button",[["cdCopy2ClipboardButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,23).onClick()&&t),t}),null,null)),e["ɵdid"](23,81920,null,0,zn.a,[e.ElementRef,e.Renderer2,Ln.j,wl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,su)),e["ɵdid"](25,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0);var t=l(n,7,0,!u.viewing);l(n,6,0,"cd-col-form-label",t),l(n,15,0,"secret_key"),l(n,18,0,"secret_key"),l(n,21,0,"secret_key"),l(n,23,0,"secret_key"),l(n,25,0,u.formGroup.showError("secret_key",e["ɵnov"](n.parent,11),"required"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,u.viewing,e["ɵnov"](n,17).ngClassUntouched,e["ɵnov"](n,17).ngClassTouched,e["ɵnov"](n,17).ngClassPristine,e["ɵnov"](n,17).ngClassDirty,e["ɵnov"](n,17).ngClassValid,e["ɵnov"](n,17).ngClassInvalid,e["ɵnov"](n,17).ngClassPending,e["ɵnov"](n,18).validClass,e["ɵnov"](n,18).invalidClass)}))}function ru(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.onSubmit()&&e),e}),Jn.b,Jn.a)),e["ɵdid"](1,114688,null,0,Xn.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](2,0,[""," ",""])),e["ɵppd"](3,1),e["ɵppd"](4,1)],(function(l,n){l(n,1,0,n.component.formGroup)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,2,0,l(n,3,0,e["ɵnov"](n.parent,0),u.action)),a=e["ɵunv"](n,2,1,l(n,4,0,e["ɵnov"](n.parent,1),u.resource));l(n,2,0,t,a)}))}function cu(l){return e["ɵvid"](0,[e["ɵpid"](0,Dl.TitleCasePipe,[]),e["ɵpid"](0,jn.a,[]),(l()(),e["ɵeld"](2,0,null,null,40,"cd-modal",[],null,null,null,vl.c,vl.b)),e["ɵdid"](3,49152,null,0,Bn.a,[],{modalRef:[0,"modalRef"]},null),(l()(),e["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," ",""])),e["ɵppd"](6,1),e["ɵppd"](7,1),(l()(),e["ɵeld"](8,0,null,1,34,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,33,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,11).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),e["ɵdid"](10,16384,null,0,o.G,[],null,null),e["ɵdid"](11,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](13,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](14,16384,null,0,An.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](15,0,null,null,22,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](16,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](17,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](20,0,null,0,4,"label",[["class","cd-col-form-label"],["for","user"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](22,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](23,{required:0}),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](25,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,lu)),e["ɵdid"](27,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,eu)),e["ɵdid"](29,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,tu)),e["ɵdid"](31,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,au)),e["ɵdid"](33,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ou)),e["ɵdid"](35,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,du)),e["ɵdid"](37,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](38,0,null,null,4,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ru)),e["ɵdid"](40,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](41,0,null,null,1,"cd-back-button",[],null,null,null,Gn.b,Gn.a)),e["ɵdid"](42,49152,null,0,Kn.a,[Dl.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.bsModalRef),l(n,11,0,u.formGroup),l(n,14,0,u.formGroup),l(n,17,0);var t=l(n,23,0,!u.viewing);l(n,22,0,"cd-col-form-label",t),l(n,27,0,u.viewing),l(n,29,0,!u.viewing),l(n,31,0,u.formGroup.showError("user",e["ɵnov"](n,11),"required")),l(n,33,0,!u.viewing),l(n,35,0,!u.formGroup.getValue("generate_key")),l(n,37,0,!u.formGroup.getValue("generate_key")),l(n,40,0,!u.viewing),l(n,42,0,u.bsModalRef.hide)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,5,1,l(n,7,0,e["ɵnov"](n,1),u.resource));l(n,5,0,t,a),l(n,9,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending),l(n,16,0,e["ɵnov"](n,17).hasErrors,e["ɵnov"](n,17).hasSuccess)}))}function mu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-s3-key-modal",[],null,null,null,cu,Hn)),e["ɵdid"](1,49152,null,0,$,[_.a,sn.a,wl.a,t.b],null,null)],null,null)}var fu=e["ɵccf"]("cd-rgw-user-s3-key-modal",$,mu,{},{submitAction:"submitAction"},[]),gu=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function pu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","type"],["id","type"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,2)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,2).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,2)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,2)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](2,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](4,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](6,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](7,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,4,0,"type"),l(n,7,0,"type")}),(function(l,n){l(n,0,0,!0,e["ɵnov"](n,6).ngClassUntouched,e["ɵnov"](n,6).ngClassTouched,e["ɵnov"](n,6).ngClassPristine,e["ɵnov"](n,6).ngClassDirty,e["ɵnov"](n,6).ngClassValid,e["ɵnov"](n,6).ngClassInvalid,e["ɵnov"](n,6).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function vu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a type --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function hu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function bu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,12,"select",[["autofocus",""],["class","form-control custom-select"],["formControlName","type"],["id","type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,3).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,3).onTouched()&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,Yn.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](2,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](5,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](7,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](8,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,vu)),e["ɵdid"](10,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,hu)),e["ɵdid"](12,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,1,0,""),l(n,5,0,"type"),l(n,8,0,"type"),l(n,10,0,null!==u.types),l(n,12,0,u.types)}),(function(l,n){l(n,0,0,e["ɵnov"](n,7).ngClassUntouched,e["ɵnov"](n,7).ngClassTouched,e["ɵnov"](n,7).ngClassPristine,e["ɵnov"](n,7).ngClassDirty,e["ɵnov"](n,7).ngClassValid,e["ɵnov"](n,7).ngClassInvalid,e["ɵnov"](n,7).ngClassPending,e["ɵnov"](n,8).validClass,e["ɵnov"](n,8).invalidClass)}))}function Cu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function _u(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Ru(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ku(l){return e["ɵvid"](0,[e["ɵpid"](0,Dl.TitleCasePipe,[]),e["ɵpid"](0,jn.a,[]),(l()(),e["ɵeld"](2,0,null,null,61,"cd-modal",[],null,null,null,vl.c,vl.b)),e["ɵdid"](3,49152,null,0,Bn.a,[],{modalRef:[0,"modalRef"]},null),(l()(),e["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," ",""])),e["ɵppd"](6,1),e["ɵppd"](7,1),(l()(),e["ɵeld"](8,0,null,1,55,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,54,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,11).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),e["ɵdid"](10,16384,null,0,o.G,[],null,null),e["ɵdid"](11,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](13,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](14,16384,null,0,An.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](15,0,null,null,40,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](16,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](17,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](20,0,null,0,4,"label",[["class","cd-col-form-label"],["for","type"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](22,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](23,{required:0}),(l()(),e["ɵted"](-1,null,["Type"])),(l()(),e["ɵeld"](25,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,pu)),e["ɵdid"](27,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,bu)),e["ɵdid"](29,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Cu)),e["ɵdid"](31,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](32,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](33,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](36,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","perm"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Permission"])),(l()(),e["ɵeld"](38,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](39,0,null,null,14,"select",[["class","form-control custom-select"],["formControlName","perm"],["id","perm"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,41).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,41).onTouched()&&t),t}),null,null)),e["ɵdid"](40,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](41,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](43,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](45,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](46,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](47,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](48,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](49,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a permission --"])),(l()(),e["ɵand"](16777216,null,null,2,null,_u)),e["ɵdid"](52,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),e["ɵpad"](53,3),(l()(),e["ɵand"](16777216,null,null,1,null,Ru)),e["ɵdid"](55,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](56,0,null,null,7,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](57,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.onSubmit()&&e),e}),Jn.b,Jn.a)),e["ɵdid"](58,114688,null,0,Xn.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](59,0,[""," ",""])),e["ɵppd"](60,1),e["ɵppd"](61,1),(l()(),e["ɵeld"](62,0,null,null,1,"cd-back-button",[],null,null,null,Gn.b,Gn.a)),e["ɵdid"](63,49152,null,0,Kn.a,[Dl.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.bsModalRef),l(n,11,0,u.formGroup),l(n,14,0,u.formGroup),l(n,17,0);var t=l(n,23,0,!u.editing);l(n,22,0,"cd-col-form-label",t),l(n,27,0,u.editing),l(n,29,0,!u.editing),l(n,31,0,u.formGroup.showError("type",e["ɵnov"](n,11),"required")),l(n,33,0),l(n,43,0,"perm"),l(n,46,0,"perm"),l(n,48,0,null),l(n,49,0,null);var a=l(n,53,0,"read","write","*");l(n,52,0,a),l(n,55,0,u.formGroup.showError("perm",e["ɵnov"](n,11),"required")),l(n,58,0,u.formGroup),l(n,63,0,u.bsModalRef.hide)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,5,1,l(n,7,0,e["ɵnov"](n,1),u.resource));l(n,5,0,t,a),l(n,9,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending),l(n,16,0,e["ɵnov"](n,17).hasErrors,e["ɵnov"](n,17).hasSuccess),l(n,32,0,e["ɵnov"](n,33).hasErrors,e["ɵnov"](n,33).hasSuccess),l(n,39,0,e["ɵnov"](n,45).ngClassUntouched,e["ɵnov"](n,45).ngClassTouched,e["ɵnov"](n,45).ngClassPristine,e["ɵnov"](n,45).ngClassDirty,e["ɵnov"](n,45).ngClassValid,e["ɵnov"](n,45).ngClassInvalid,e["ɵnov"](n,45).ngClassPending,e["ɵnov"](n,46).validClass,e["ɵnov"](n,46).invalidClass);var i=e["ɵunv"](n,59,0,l(n,60,0,e["ɵnov"](n,0),u.action)),o=e["ɵunv"](n,59,1,l(n,61,0,e["ɵnov"](n,1),u.resource));l(n,59,0,i,o)}))}function yu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-capability-modal",[],null,null,null,ku,gu)),e["ɵdid"](1,49152,null,0,K,[_.a,sn.a,wl.a,t.b],null,null)],null,null)}var Iu=e["ɵccf"]("cd-rgw-user-capability-modal",K,yu,{},{submitAction:"submitAction"},[]),wu=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Eu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function qu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen subuser ID is already in use."]))],null,null)}function Nu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,[" "," "]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Tu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function xu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Vu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","secret_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Secret key"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["class","form-control"],["formControlName","secret_key"],["id","secret_key"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,10)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,10)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,10)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](9,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](10,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](12,671744,[[9,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](17,0,null,null,1,"button",[["cdPasswordButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,18).onClick()&&t),t}),null,null)),e["ɵdid"](18,81920,null,0,On.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](19,0,null,null,1,"button",[["cdCopy2ClipboardButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,20).onClick()&&t),t}),null,null)),e["ɵdid"](20,81920,null,0,zn.a,[e.ElementRef,e.Renderer2,Ln.j,wl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,xu)),e["ɵdid"](22,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"secret_key"),l(n,15,0,"secret_key"),l(n,18,0,"secret_key"),l(n,20,0,"secret_key"),l(n,22,0,u.formGroup.showError("secret_key",e["ɵnov"](n.parent.parent,11),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,8,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function Su(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,20,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Swift key"])),(l()(),e["ɵeld"](3,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](4,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","generate_secret"],["id","generate_secret"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,11).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,11).onTouched()&&t),t}),null,null)),e["ɵdid"](10,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](11,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](13,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](15,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](16,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](17,0,null,null,1,"label",[["class","custom-control-label"],["for","generate_secret"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Auto-generate secret"])),(l()(),e["ɵand"](16777216,null,null,1,null,Vu)),e["ɵdid"](20,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,4,0),l(n,13,0,"generate_secret"),l(n,16,0,"generate_secret"),l(n,20,0,!u.editing&&!u.formGroup.getValue("generate_secret"))}),(function(l,n){l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,9,0,e["ɵnov"](n,15).ngClassUntouched,e["ɵnov"](n,15).ngClassTouched,e["ɵnov"](n,15).ngClassPristine,e["ɵnov"](n,15).ngClassDirty,e["ɵnov"](n,15).ngClassValid,e["ɵnov"](n,15).ngClassInvalid,e["ɵnov"](n,15).ngClassPending,e["ɵnov"](n,16).validClass,e["ɵnov"](n,16).invalidClass)}))}function Du(l){return e["ɵvid"](0,[e["ɵpid"](0,Dl.TitleCasePipe,[]),e["ɵpid"](0,jn.a,[]),(l()(),e["ɵeld"](2,0,null,null,93,"cd-modal",[],null,null,null,vl.c,vl.b)),e["ɵdid"](3,49152,null,0,Bn.a,[],{modalRef:[0,"modalRef"]},null),(l()(),e["ɵeld"](4,0,null,0,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](5,null,[""," ",""])),e["ɵppd"](6,1),e["ɵppd"](7,1),(l()(),e["ɵeld"](8,0,null,1,87,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,86,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,11).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,11).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,14).onSubmit()&&t),t}),null,null)),e["ɵdid"](10,16384,null,0,o.G,[],null,null),e["ɵdid"](11,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](13,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](14,16384,null,0,An.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](15,0,null,null,72,"div",[["class","modal-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](16,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](17,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](20,0,null,0,1,"label",[["class","cd-col-form-label"],["for","uid"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](22,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](23,0,null,null,7,"input",[["class","form-control"],["formControlName","uid"],["id","uid"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,25)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,25).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,25)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,25)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](24,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](25,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](27,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](29,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](30,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](31,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](32,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](35,0,null,0,4,"label",[["class","cd-col-form-label"],["for","subuid"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](37,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](38,{required:0}),(l()(),e["ɵted"](-1,null,["Subuser"])),(l()(),e["ɵeld"](40,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](41,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","subuid"],["id","subuid"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,44)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,44).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,44)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,44)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](42,4210688,null,0,Yn.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](43,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](44,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](46,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](48,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](49,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Eu)),e["ɵdid"](51,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,qu)),e["ɵdid"](53,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](54,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](55,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](58,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","perm"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Permission"])),(l()(),e["ɵeld"](60,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](61,0,null,null,22,"select",[["class","form-control custom-select"],["formControlName","perm"],["id","perm"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,63).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,63).onTouched()&&t),t}),null,null)),e["ɵdid"](62,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](63,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](65,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](67,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](68,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](69,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](70,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](71,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a permission --"])),(l()(),e["ɵand"](16777216,null,null,2,null,Nu)),e["ɵdid"](74,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),e["ɵpad"](75,2),(l()(),e["ɵeld"](76,0,null,null,3,"option",[["value","read-write"]],null,null,null,null,null)),e["ɵdid"](77,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](78,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["read, write"])),(l()(),e["ɵeld"](80,0,null,null,3,"option",[["value","full-control"]],null,null,null,null,null)),e["ɵdid"](81,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](82,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["full"])),(l()(),e["ɵand"](16777216,null,null,1,null,Tu)),e["ɵdid"](85,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Su)),e["ɵdid"](87,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](88,0,null,null,7,"div",[["class","modal-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](89,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.onSubmit()&&e),e}),Jn.b,Jn.a)),e["ɵdid"](90,114688,null,0,Xn.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](91,0,[""," ",""])),e["ɵppd"](92,1),e["ɵppd"](93,1),(l()(),e["ɵeld"](94,0,null,null,1,"cd-back-button",[],null,null,null,Gn.b,Gn.a)),e["ɵdid"](95,49152,null,0,Kn.a,[Dl.Location,t.b],{back:[0,"back"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.bsModalRef),l(n,11,0,u.formGroup),l(n,14,0,u.formGroup),l(n,17,0),l(n,27,0,"uid"),l(n,30,0,"uid"),l(n,32,0);var t=l(n,38,0,!u.editing);l(n,37,0,"cd-col-form-label",t),l(n,42,0,""),l(n,46,0,"subuid"),l(n,49,0,"subuid"),l(n,51,0,u.formGroup.showError("subuid",e["ɵnov"](n,11),"required")),l(n,53,0,u.formGroup.showError("subuid",e["ɵnov"](n,11),"subuserIdExists")),l(n,55,0),l(n,65,0,"perm"),l(n,68,0,"perm"),l(n,70,0,null),l(n,71,0,null);var a=l(n,75,0,"read","write");l(n,74,0,a),l(n,77,0,"read-write"),l(n,78,0,"read-write"),l(n,81,0,"full-control"),l(n,82,0,"full-control"),l(n,85,0,u.formGroup.showError("perm",e["ɵnov"](n,11),"required")),l(n,87,0,!u.editing),l(n,90,0,u.formGroup),l(n,95,0,u.bsModalRef.hide)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,5,0,l(n,6,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,5,1,l(n,7,0,e["ɵnov"](n,1),u.resource));l(n,5,0,t,a),l(n,9,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending),l(n,16,0,e["ɵnov"](n,17).hasErrors,e["ɵnov"](n,17).hasSuccess),l(n,23,0,!0,e["ɵnov"](n,29).ngClassUntouched,e["ɵnov"](n,29).ngClassTouched,e["ɵnov"](n,29).ngClassPristine,e["ɵnov"](n,29).ngClassDirty,e["ɵnov"](n,29).ngClassValid,e["ɵnov"](n,29).ngClassInvalid,e["ɵnov"](n,29).ngClassPending,e["ɵnov"](n,30).validClass,e["ɵnov"](n,30).invalidClass),l(n,31,0,e["ɵnov"](n,32).hasErrors,e["ɵnov"](n,32).hasSuccess),l(n,41,0,u.editing,e["ɵnov"](n,48).ngClassUntouched,e["ɵnov"](n,48).ngClassTouched,e["ɵnov"](n,48).ngClassPristine,e["ɵnov"](n,48).ngClassDirty,e["ɵnov"](n,48).ngClassValid,e["ɵnov"](n,48).ngClassInvalid,e["ɵnov"](n,48).ngClassPending,e["ɵnov"](n,49).validClass,e["ɵnov"](n,49).invalidClass),l(n,54,0,e["ɵnov"](n,55).hasErrors,e["ɵnov"](n,55).hasSuccess),l(n,61,0,e["ɵnov"](n,67).ngClassUntouched,e["ɵnov"](n,67).ngClassTouched,e["ɵnov"](n,67).ngClassPristine,e["ɵnov"](n,67).ngClassDirty,e["ɵnov"](n,67).ngClassValid,e["ɵnov"](n,67).ngClassInvalid,e["ɵnov"](n,67).ngClassPending,e["ɵnov"](n,68).validClass,e["ɵnov"](n,68).invalidClass);var i=e["ɵunv"](n,91,0,l(n,92,0,e["ɵnov"](n,0),u.action)),o=e["ɵunv"](n,91,1,l(n,93,0,e["ɵnov"](n,1),u.resource));l(n,91,0,i,o)}))}function Fu(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-subuser-modal",[],null,null,null,Du,wu)),e["ɵdid"](1,49152,null,0,Q,[_.a,sn.a,wl.a,t.b],null,null)],null,null)}var ju=e["ɵccf"]("cd-rgw-user-subuser-modal",Q,Fu,{},{submitAction:"submitAction"},[]),Bu=u("yT6U"),Pu=u("4DD9"),Au=u("+0ag"),Uu=u("IzCI"),Mu=u("Dwqy"),Ou=u("uYzU"),zu=u("FFMq"),Lu=u("E2fk"),Gu=u("nSDx"),Ku=u("SB+Q"),$u=u("TYzs"),Zu=u("BQkM"),Qu=u("dEH0"),Wu=u("G1/K"),Yu=u("efK2"),Ju=u("CNMR"),Xu=u("KOzp"),Hu=u("2uy1"),le=u("38Bd"),ne=u("978R"),ue=u("w9WL"),ee=u("iInd"),te=u("9Xeq"),ae=u("hrfs"),ie=u("yGOH"),oe=u("bxSN"),se=u("WF9J"),de=u("V/fk"),re=u("ChqD"),ce=u("PCNd"),me=u("G6Q+"),fe=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ge(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](1,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","WAkugZpiz"]],null,null,null,Rl.b,Rl.a)),e["ɵdid"](3,638976,null,0,kl.a,[yl.b,Il.a,wl.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){l(n,1,0,"Overall Performance"),l(n,3,0,"rgw-overview?","two","WAkugZpiz")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby)}))}function pe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"tab",[["heading","Sync Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](1,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","rgw-sync-overview"]],null,null,null,Rl.b,Rl.a)),e["ɵdid"](3,638976,null,0,kl.a,[yl.b,Il.a,wl.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(l,n){l(n,1,0,"Sync Performance"),l(n,3,0,"radosgw-sync-overview?","two","rgw-sync-overview")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).id,e["ɵnov"](n,1).active,e["ɵnov"](n,1).addClass,e["ɵnov"](n,1).role,e["ɵnov"](n,1).ariaLabelledby)}))}function ve(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,11,"tabset",[],[[2,"tab-container",null]],null,null,El.b,El.a)),e["ɵdid"](1,180224,null,0,_l.e,[_l.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,5,"tab",[["heading","Daemons List"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,_l.b,[_l.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](4,0,null,null,3,"cd-table",[["columnMode","flex"]],null,[[null,"setExpandedRow"],[null,"fetchData"]],(function(l,n,u){var e=!0,t=l.component;return"setExpandedRow"===n&&(e=!1!==t.setExpandedRow(u)&&e),"fetchData"===n&&(e=!1!==t.getDaemonList(u)&&e),e}),nn.b,nn.a)),e["ɵdid"](5,2867200,null,0,x.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"]},{fetchData:"fetchData",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](6,0,null,3,1,"cd-rgw-daemon-details",[["cdTableDetail",""]],null,null,null,Al,jl)),e["ɵdid"](7,573440,null,0,Fl,[A,F.a],{selection:[0,"selection"]},null),(l()(),e["ɵand"](16777216,null,0,1,null,ge)),e["ɵdid"](9,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,0,1,null,pe)),e["ɵdid"](11,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Daemons List"),l(n,5,0,u.daemons,u.columns,"flex",!0),l(n,7,0,u.expandedRow),l(n,9,0,u.grafanaPermission.read),l(n,11,0,u.grafanaPermission.read&&u.isMultiSite)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby)}))}function he(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-daemon-list",[],null,null,null,ve,fe)),e["ɵdid"](1,114688,null,0,M,[A,F.a,U.a,wl.a,v],null,null)],(function(l,n){l(n,1,0)}),null)}var be=e["ɵccf"]("cd-rgw-daemon-list",M,he,{},{},[]),Ce=u("DqMs"),_e=u("/NlG"),Re=u("NUGo"),ke=u("S7zO"),ye=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ie(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["size","slim"],["type","warning"]],null,null,null,Ce.b,Ce.a)),e["ɵdid"](1,114688,null,0,_e.a,[wl.a],{type:[0,"type"],size:[1,"size"]},null),(l()(),e["ɵted"](-1,0,["The user list data might be stale. If needed, you can manually reload it."]))],(function(l,n){l(n,1,0,"warning","slim")}),null)}function we(l){return e["ɵvid"](0,[e["ɵqud"](402653184,1,{table:0}),(l()(),e["ɵand"](16777216,null,null,1,null,Ie)),e["ɵdid"](2,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](3,0,null,null,5,"cd-table",[["columnMode","flex"],["identifier","uid"],["selectionType","multiClick"]],null,[[null,"setExpandedRow"],[null,"updateSelection"],[null,"fetchData"]],(function(l,n,u){var e=!0,t=l.component;return"setExpandedRow"===n&&(e=!1!==t.setExpandedRow(u)&&e),"updateSelection"===n&&(e=!1!==t.updateSelection(u)&&e),"fetchData"===n&&(e=!1!==t.getUserList(u)&&e),e}),nn.b,nn.a)),e["ɵdid"](4,2867200,[[1,4],["table",4]],0,x.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](5,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Re.b,Re.a)),e["ɵdid"](6,114688,null,0,ke.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](7,0,null,3,1,"cd-rgw-user-details",[["cdTableDetail",""]],null,null,null,Sn,dn)),e["ɵdid"](8,638976,null,0,on,[h.a,sn.b,wl.a],{selection:[0,"selection"]},null)],(function(l,n){var u=n.component;l(n,2,0,u.isStale),l(n,4,0,u.users,u.columns,"flex",!0,!1,"uid","multiClick"),l(n,6,0,u.permission,u.selection,u.tableActions),l(n,8,0,u.expandedRow)}),null)}function Ee(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-rgw-user-list",[],null,null,null,we,ye)),e["ɵprd"](256,null,j.a,X,[]),e["ɵdid"](2,49152,null,0,H,[F.a,h.a,sn.b,wl.a,j.a,t.b,e.NgZone],null,null)],null,null)}var qe=e["ɵccf"]("cd-rgw-user-list",H,Ee,{},{},[]),Ne=u("QC43"),Te=u("XFyV"),xe=u("EmSq"),Ve=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Se(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,Ne.b,Ne.a)),e["ɵdid"](1,49152,null,0,Te.a,[],null,null),(l()(),e["ɵted"](-1,0,["Loading user data..."]))],null,null)}function De(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,[[null,"backAction"]],(function(l,n,u){var e=!0;return"backAction"===n&&(e=!1!==l.component.goToListView()&&e),e}),Ce.b,Ce.a)),e["ɵdid"](1,114688,null,0,_e.a,[wl.a],{type:[0,"type"]},{backAction:"backAction"}),(l()(),e["ɵted"](-1,0,["The user data could not be loaded."]))],(function(l,n){l(n,1,0,"error")}),null)}function Fe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function je(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function Be(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen user ID is already in use."]))],null,null)}function Pe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function Ae(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen user ID exists in this tenant."]))],null,null)}function Ue(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","tenant"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Tenant"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","tenant"],["id","tenant"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,10)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,10)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,10)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,Yn.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](9,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](10,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](12,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Pe)),e["ɵdid"](17,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ae)),e["ɵdid"](19,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,8,0,""),l(n,12,0,"tenant"),l(n,15,0,"tenant"),l(n,17,0,u.userForm.showError("tenant",e["ɵnov"](n.parent,3),"pattern")),l(n,19,0,u.userForm.showError("tenant",e["ɵnov"](n.parent,3),"notUnique"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,u.editing,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function Me(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Oe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This is not a valid email address."]))],null,null)}function ze(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen email address is already in use."]))],null,null)}function Le(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ge(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be >= 1."]))],null,null)}function Ke(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,13,{FormControlNames:1}),e["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,0,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,8,"input",[["class","form-control"],["formControlName","max_buckets"],["id","max_buckets"],["min","1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,8)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,8)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,8)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,9).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,9).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](9,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](11,671744,[[13,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Le)),e["ɵdid"](16,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ge)),e["ɵdid"](18,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,11,0,"max_buckets"),l(n,14,0,"max_buckets"),l(n,16,0,u.userForm.showError("max_buckets",e["ɵnov"](n.parent,3),"required")),l(n,18,0,u.userForm.showError("max_buckets",e["ɵnov"](n.parent,3),"min"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function $e(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ze(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,19,{FormControlNames:1}),e["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","access_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Access key"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["class","form-control"],["formControlName","access_key"],["id","access_key"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,10)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,10)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,10)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](9,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](10,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](12,671744,[[19,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](17,0,null,null,1,"button",[["cdPasswordButton","access_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,18).onClick()&&t),t}),null,null)),e["ɵdid"](18,81920,null,0,On.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](19,0,null,null,1,"button",[["cdCopy2ClipboardButton","access_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,20).onClick()&&t),t}),null,null)),e["ɵdid"](20,81920,null,0,zn.a,[e.ElementRef,e.Renderer2,Ln.j,wl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,$e)),e["ɵdid"](22,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"access_key"),l(n,15,0,"access_key"),l(n,18,0,"access_key"),l(n,20,0,"access_key"),l(n,22,0,u.userForm.showError("access_key",e["ɵnov"](n.parent.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,8,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function Qe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function We(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,21,{FormControlNames:1}),e["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","secret_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Secret key"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["class","form-control"],["formControlName","secret_key"],["id","secret_key"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,10)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,10)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,10)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](9,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](10,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](12,671744,[[21,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](17,0,null,null,1,"button",[["cdPasswordButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,18).onClick()&&t),t}),null,null)),e["ɵdid"](18,81920,null,0,On.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](19,0,null,null,1,"button",[["cdCopy2ClipboardButton","secret_key"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var t=!0;return"click"===n&&(t=!1!==e["ɵnov"](l,20).onClick()&&t),t}),null,null)),e["ɵdid"](20,81920,null,0,zn.a,[e.ElementRef,e.Renderer2,Ln.j,wl.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Qe)),e["ɵdid"](22,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"secret_key"),l(n,15,0,"secret_key"),l(n,18,0,"secret_key"),l(n,20,0,"secret_key"),l(n,22,0,u.userForm.showError("secret_key",e["ɵnov"](n.parent.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,8,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function Ye(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["S3 key"])),(l()(),e["ɵeld"](3,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](4,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,17,{FormControlNames:1}),e["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","generate_key"],["id","generate_key"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,11).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,11).onTouched()&&t),t}),null,null)),e["ɵdid"](10,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](11,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](13,671744,[[17,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](15,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](16,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](17,0,null,null,1,"label",[["class","custom-control-label"],["for","generate_key"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Auto-generate key"])),(l()(),e["ɵand"](16777216,null,null,1,null,Ze)),e["ɵdid"](20,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,We)),e["ɵdid"](22,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,4,0),l(n,13,0,"generate_key"),l(n,16,0,"generate_key"),l(n,20,0,!u.editing&&!u.userForm.getValue("generate_key")),l(n,22,0,!u.editing&&!u.userForm.getValue("generate_key"))}),(function(l,n){l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,9,0,e["ɵnov"](n,15).ngClassUntouched,e["ɵnov"](n,15).ngClassTouched,e["ɵnov"](n,15).ngClassPristine,e["ɵnov"](n,15).ngClassDirty,e["ɵnov"](n,15).ngClassValid,e["ɵnov"](n,15).ngClassInvalid,e["ɵnov"](n,15).ngClassPending,e["ɵnov"](n,16).validClass,e["ɵnov"](n,16).invalidClass)}))}function Je(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["There are no subusers."]))],null,null)}function Xe(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,25,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,23,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"span",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](6,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),(l()(),e["ɵeld"](7,0,null,null,2,"div",[["class","input-group-prepend border-left-0 border-right-0"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,1,"span",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](11,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),(l()(),e["ɵeld"](12,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,16777216,null,null,5,"button",[["class","btn btn-light tc_showSubuserButton"],["tooltip","Edit"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showSubuserModal(l.context.index)&&e),e}),null,null)),e["ɵdid"](14,212992,null,0,ne.c,[e.ViewContainerRef,en.a,ne.a,e.ElementRef,e.Renderer2,Hu.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](15,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](17,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](18,1),(l()(),e["ɵeld"](19,16777216,null,null,5,"button",[["class","btn btn-light tc_deleteSubuserButton"],["tooltip","Delete"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.deleteSubuser(l.context.index)&&e),e}),null,null)),e["ɵdid"](20,212992,null,0,ne.c,[e.ViewContainerRef,en.a,ne.a,e.ElementRef,e.Renderer2,Hu.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](21,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](23,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](24,1),(l()(),e["ɵeld"](25,0,null,null,0,"span",[["class","form-text text-muted"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,14,0,"Edit");var e=l(n,18,0,u.icons.edit);l(n,17,0,e),l(n,20,0,"Delete");var t=l(n,24,0,u.icons.destroy);l(n,23,0,t)}),(function(l,n){var u=n.component;l(n,4,0,e["ɵinlineInterpolate"](1,"",u.icons.user,"")),l(n,5,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.id,"")),l(n,9,0,e["ɵinlineInterpolate"](1,"",u.icons.share,"")),l(n,10,0,e["ɵinlineInterpolate"](1,"","full-control"===n.context.$implicit.permissions?"full":n.context.$implicit.permissions,""))}))}function He(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,20,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Subusers"])),(l()(),e["ɵeld"](3,0,null,null,17,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,16,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Je)),e["ɵdid"](6,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Xe)),e["ɵdid"](8,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](9,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,9,"div",[["class","col-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,8,"button",[["class","btn btn-light float-right tc_addSubuserButton"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showSubuserModal()&&e),e}),null,null)),(l()(),e["ɵeld"](12,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](14,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](15,1),(l()(),e["ɵeld"](16,0,null,null,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](17,null,[""," ",""])),e["ɵppd"](18,1),e["ɵppd"](19,1),(l()(),e["ɵeld"](20,0,null,null,0,"span",[["class","help-block"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,6,0,0===u.subusers.length),l(n,8,0,u.subusers);var e=l(n,15,0,u.icons.add);l(n,14,0,e)}),(function(l,n){var u=n.component,t=e["ɵunv"](n,17,0,l(n,18,0,e["ɵnov"](n.parent.parent,0),u.actionLabels.CREATE)),a=e["ɵunv"](n,17,1,l(n,19,0,e["ɵnov"](n.parent.parent,1),u.subuserLabel));l(n,17,0,t,a)}))}function lt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["There are no keys."]))],null,null)}function nt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,20,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](6,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),(l()(),e["ɵeld"](7,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,16777216,null,null,5,"button",[["class","btn btn-light tc_showS3KeyButton"],["tooltip","Show"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showS3KeyModal(l.context.index)&&e),e}),null,null)),e["ɵdid"](9,212992,null,0,ne.c,[e.ViewContainerRef,en.a,ne.a,e.ElementRef,e.Renderer2,Hu.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](10,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](12,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](13,1),(l()(),e["ɵeld"](14,16777216,null,null,5,"button",[["class","btn btn-light tc_deleteS3KeyButton"],["tooltip","Delete"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.deleteS3Key(l.context.index)&&e),e}),null,null)),e["ɵdid"](15,212992,null,0,ne.c,[e.ViewContainerRef,en.a,ne.a,e.ElementRef,e.Renderer2,Hu.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](18,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](19,1),(l()(),e["ɵeld"](20,0,null,null,0,"span",[["class","form-text text-muted"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,9,0,"Show");var e=l(n,13,0,u.icons.show);l(n,12,0,e),l(n,15,0,"Delete");var t=l(n,19,0,u.icons.destroy);l(n,18,0,t)}),(function(l,n){l(n,4,0,e["ɵinlineInterpolate"](1,"",n.component.icons.key,"")),l(n,5,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.user,""))}))}function ut(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["There are no keys."]))],null,null)}function et(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,14,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,12,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"span",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](6,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),(l()(),e["ɵeld"](7,0,null,null,6,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,16777216,null,null,5,"button",[["class","btn btn-light tc_showSwiftKeyButton"],["tooltip","Show"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showSwiftKeyModal(l.context.index)&&e),e}),null,null)),e["ɵdid"](9,212992,null,0,ne.c,[e.ViewContainerRef,en.a,ne.a,e.ElementRef,e.Renderer2,Hu.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](10,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](12,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](13,1),(l()(),e["ɵeld"](14,0,null,null,0,"span",[["class","form-text text-muted"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,9,0,"Show");var e=l(n,13,0,u.icons.show);l(n,12,0,e)}),(function(l,n){l(n,4,0,e["ɵinlineInterpolate"](1,"",n.component.icons.key,"")),l(n,5,0,e["ɵinlineInterpolate"](1,"",n.context.$implicit.user,""))}))}function tt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,37,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Keys"])),(l()(),e["ɵeld"](3,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](4,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,23,{FormControlNames:1}),e["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["S3"])),(l()(),e["ɵeld"](9,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,lt)),e["ɵdid"](11,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,nt)),e["ɵdid"](13,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](14,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](15,0,null,null,9,"div",[["class","col-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](16,0,null,null,8,"button",[["class","btn btn-light float-right tc_addS3KeyButton"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showS3KeyModal()&&e),e}),null,null)),(l()(),e["ɵeld"](17,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](19,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](20,1),(l()(),e["ɵeld"](21,0,null,null,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](22,null,[""," ",""])),e["ɵppd"](23,1),e["ɵppd"](24,1),(l()(),e["ɵeld"](25,0,null,null,0,"span",[["class","help-block"]],null,null,null,null,null)),(l()(),e["ɵeld"](26,0,null,0,0,"hr",[],null,null,null,null,null)),(l()(),e["ɵeld"](27,0,null,null,10,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](28,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,25,{FormControlNames:1}),e["ɵqud"](603979776,26,{messagesBlock:0}),(l()(),e["ɵeld"](31,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Swift"])),(l()(),e["ɵeld"](33,0,null,0,4,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,ut)),e["ɵdid"](35,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,et)),e["ɵdid"](37,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(l,n){var u=n.component;l(n,4,0),l(n,11,0,0===u.s3Keys.length),l(n,13,0,u.s3Keys);var e=l(n,20,0,u.icons.add);l(n,19,0,e),l(n,28,0),l(n,35,0,0===u.swiftKeys.length),l(n,37,0,u.swiftKeys)}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess);var t=e["ɵunv"](n,22,0,l(n,23,0,e["ɵnov"](n.parent.parent,0),u.actionLabels.CREATE)),a=e["ɵunv"](n,22,1,l(n,24,0,e["ɵnov"](n.parent.parent,1),u.s3keyLabel));l(n,22,0,t,a),l(n,27,0,e["ɵnov"](n,28).hasErrors,e["ɵnov"](n,28).hasSuccess)}))}function at(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["There are no capabilities."]))],null,null)}function it(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,20,"span",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,18,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](2,0,null,null,2,"span",[["class","input-group-prepend"]],null,null,null,null,null)),(l()(),e["ɵeld"](3,0,null,null,1,"div",[["class","input-group-text"]],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,"input",[["class","cd-form-control"],["readonly",""],["type","text"]],[[8,"value",0]],null,null,null,null)),e["ɵdid"](6,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),(l()(),e["ɵeld"](7,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,16777216,null,null,5,"button",[["class","btn btn-light tc_editCapButton"],["tooltip","Edit"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showCapabilityModal(l.context.index)&&e),e}),null,null)),e["ɵdid"](9,212992,null,0,ne.c,[e.ViewContainerRef,en.a,ne.a,e.ElementRef,e.Renderer2,Hu.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](10,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](12,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](13,1),(l()(),e["ɵeld"](14,16777216,null,null,5,"button",[["class","btn btn-light tc_deleteCapButton"],["tooltip","Delete"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.deleteCapability(l.context.index)&&e),e}),null,null)),e["ɵdid"](15,212992,null,0,ne.c,[e.ViewContainerRef,en.a,ne.a,e.ElementRef,e.Renderer2,Hu.a],{tooltip:[0,"tooltip"]},null),(l()(),e["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](18,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](19,1),(l()(),e["ɵeld"](20,0,null,null,0,"span",[["class","form-text text-muted"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,9,0,"Edit");var e=l(n,13,0,u.icons.edit);l(n,12,0,e),l(n,15,0,"Delete");var t=l(n,19,0,u.icons.destroy);l(n,18,0,t)}),(function(l,n){l(n,4,0,e["ɵinlineInterpolate"](1,"",n.component.icons.share,"")),l(n,5,0,e["ɵinlineInterpolate"](2,"",n.context.$implicit.type,":",n.context.$implicit.perm,""))}))}function ot(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,24,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Capabilities"])),(l()(),e["ɵeld"](3,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](4,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,27,{FormControlNames:1}),e["ɵqud"](603979776,28,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,17,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,at)),e["ɵdid"](9,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,it)),e["ɵdid"](11,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵeld"](12,0,null,null,11,"div",[["class","row"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,10,"div",[["class","col-12"]],null,null,null,null,null)),(l()(),e["ɵeld"](14,16777216,null,null,9,"button",[["class","btn btn-light float-right tc_addCapButton"],["tooltip","All capabilities are already added."],["triggers","pointerenter pointerleave"],["type","button"]],[[8,"disabled",0]],[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.showCapabilityModal()&&e),e}),null,null)),e["ɵdid"](15,212992,null,0,ne.c,[e.ViewContainerRef,en.a,ne.a,e.ElementRef,e.Renderer2,Hu.a],{tooltip:[0,"tooltip"],triggers:[1,"triggers"],isDisabled:[2,"isDisabled"]},null),(l()(),e["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](18,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),e["ɵpad"](19,1),(l()(),e["ɵeld"](20,0,null,null,3,null,null,null,null,null,null,null)),(l()(),e["ɵted"](21,null,[""," ",""])),e["ɵppd"](22,1),e["ɵppd"](23,1),(l()(),e["ɵeld"](24,0,null,null,0,"span",[["class","help-block"]],null,null,null,null,null))],(function(l,n){var u=n.component;l(n,4,0),l(n,9,0,0===u.capabilities.length),l(n,11,0,u.capabilities),l(n,15,0,"All capabilities are already added.","pointerenter pointerleave",!u.hasAllCapabilities());var e=l(n,19,0,u.icons.add);l(n,18,0,e)}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,14,0,u.hasAllCapabilities());var t=e["ɵunv"](n,21,0,l(n,22,0,e["ɵnov"](n.parent.parent,0),u.actionLabels.ADD)),a=e["ɵunv"](n,21,1,l(n,23,0,e["ɵnov"](n.parent.parent,1),u.capabilityLabel));l(n,21,0,t,a)}))}function st(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,31,{FormControlNames:1}),e["ɵqud"](603979776,32,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","user_quota_max_size_unlimited"],["id","user_quota_max_size_unlimited"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[31,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","user_quota_max_size_unlimited"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited size"]))],(function(l,n){l(n,1,0),l(n,10,0,"user_quota_max_size_unlimited"),l(n,13,0,"user_quota_max_size_unlimited")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function dt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function rt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function ct(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,33,{FormControlNames:1}),e["ɵqud"](603979776,34,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","user_quota_max_size"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. size"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["formControlName","user_quota_max_size"],["id","user_quota_max_size"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,8)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,8)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,8)._compositionEnd(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,12).onBlur(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](10,671744,[[33,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,81920,null,0,xe.a,[e.ElementRef,o.q,S.a,z.a],null,null),e["ɵdid"](13,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,dt)),e["ɵdid"](17,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,rt)),e["ɵdid"](19,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,10,0,"user_quota_max_size"),l(n,12,0),l(n,15,0,"user_quota_max_size"),l(n,17,0,u.userForm.showError("user_quota_max_size",e["ɵnov"](n.parent,3),"required")),l(n,19,0,u.userForm.showError("user_quota_max_size",e["ɵnov"](n.parent,3),"quotaMaxSize"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function mt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,35,{FormControlNames:1}),e["ɵqud"](603979776,36,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","user_quota_max_objects_unlimited"],["id","user_quota_max_objects_unlimited"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[35,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","user_quota_max_objects_unlimited"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited objects"]))],(function(l,n){l(n,1,0),l(n,10,0,"user_quota_max_objects_unlimited"),l(n,13,0,"user_quota_max_objects_unlimited")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function ft(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function gt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be >= 0."]))],null,null)}function pt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,37,{FormControlNames:1}),e["ɵqud"](603979776,38,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","user_quota_max_objects"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. objects"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["class","form-control"],["formControlName","user_quota_max_objects"],["id","user_quota_max_objects"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,10).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,10).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](10,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](12,671744,[[37,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ft)),e["ɵdid"](17,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,gt)),e["ɵdid"](19,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"user_quota_max_objects"),l(n,15,0,"user_quota_max_objects"),l(n,17,0,u.userForm.showError("user_quota_max_objects",e["ɵnov"](n.parent,3),"required")),l(n,19,0,u.userForm.showError("user_quota_max_objects",e["ɵnov"](n.parent,3),"min"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function vt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,41,{FormControlNames:1}),e["ɵqud"](603979776,42,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","bucket_quota_max_size_unlimited"],["id","bucket_quota_max_size_unlimited"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[41,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","bucket_quota_max_size_unlimited"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited size"]))],(function(l,n){l(n,1,0),l(n,10,0,"bucket_quota_max_size_unlimited"),l(n,13,0,"bucket_quota_max_size_unlimited")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function ht(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function bt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function Ct(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,43,{FormControlNames:1}),e["ɵqud"](603979776,44,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","bucket_quota_max_size"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. size"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["formControlName","bucket_quota_max_size"],["id","bucket_quota_max_size"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,8)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,8)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,8)._compositionEnd(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,12).onBlur(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](10,671744,[[43,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,81920,null,0,xe.a,[e.ElementRef,o.q,S.a,z.a],null,null),e["ɵdid"](13,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ht)),e["ɵdid"](17,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,bt)),e["ɵdid"](19,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,10,0,"bucket_quota_max_size"),l(n,12,0),l(n,15,0,"bucket_quota_max_size"),l(n,17,0,u.userForm.showError("bucket_quota_max_size",e["ɵnov"](n.parent,3),"required")),l(n,19,0,u.userForm.showError("bucket_quota_max_size",e["ɵnov"](n.parent,3),"quotaMaxSize"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function _t(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,45,{FormControlNames:1}),e["ɵqud"](603979776,46,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","bucket_quota_max_objects_unlimited"],["id","bucket_quota_max_objects_unlimited"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,8).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,8).onTouched()&&t),t}),null,null)),e["ɵdid"](7,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](8,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](10,671744,[[45,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](13,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","bucket_quota_max_objects_unlimited"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Unlimited objects"]))],(function(l,n){l(n,1,0),l(n,10,0,"bucket_quota_max_objects_unlimited"),l(n,13,0,"bucket_quota_max_objects_unlimited")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,12).ngClassUntouched,e["ɵnov"](n,12).ngClassTouched,e["ɵnov"](n,12).ngClassPristine,e["ɵnov"](n,12).ngClassDirty,e["ɵnov"](n,12).ngClassValid,e["ɵnov"](n,12).ngClassInvalid,e["ɵnov"](n,12).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function Rt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function kt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be >= 0."]))],null,null)}function yt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,47,{FormControlNames:1}),e["ɵqud"](603979776,48,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","bucket_quota_max_objects"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. objects"])),(l()(),e["ɵeld"](6,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,8,"input",[["class","form-control"],["formControlName","bucket_quota_max_objects"],["id","bucket_quota_max_objects"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,10).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,10).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,10).onTouched()&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](10,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](12,671744,[[47,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](14,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](15,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Rt)),e["ɵdid"](17,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,kt)),e["ɵdid"](19,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,12,0,"bucket_quota_max_objects"),l(n,15,0,"bucket_quota_max_objects"),l(n,17,0,u.userForm.showError("bucket_quota_max_objects",e["ɵnov"](n.parent,3),"required")),l(n,19,0,u.userForm.showError("bucket_quota_max_objects",e["ɵnov"](n.parent,3),"min"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,14).ngClassUntouched,e["ɵnov"](n,14).ngClassTouched,e["ɵnov"](n,14).ngClassPristine,e["ɵnov"](n,14).ngClassDirty,e["ɵnov"](n,14).ngClassValid,e["ɵnov"](n,14).ngClassInvalid,e["ɵnov"](n,14).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function It(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,209,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,208,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,3).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,3).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,6).onSubmit()&&t),t}),null,null)),e["ɵdid"](2,16384,null,0,o.G,[],null,null),e["ɵdid"](3,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](5,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](6,16384,null,0,An.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](7,0,null,null,202,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,[""," ",""])),e["ɵppd"](10,1),e["ɵppd"](11,1),(l()(),e["ɵeld"](12,0,null,null,188,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](14,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](17,0,null,0,4,"label",[["class","cd-col-form-label"],["for","user_id"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](19,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](20,{required:0}),(l()(),e["ɵted"](-1,null,["User ID"])),(l()(),e["ɵeld"](22,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](23,0,null,null,7,"input",[["class","form-control"],["formControlName","user_id"],["id","user_id"],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,25)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,25).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,25)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,25)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](24,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](25,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](27,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](29,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](30,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Fe)),e["ɵdid"](32,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,je)),e["ɵdid"](34,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Be)),e["ɵdid"](36,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](37,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](38,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](41,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](42,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](43,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","show_tenant"],["id","show_tenant"],["type","checkbox"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"click"],[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0,a=l.component;return"change"===n&&(t=!1!==e["ɵnov"](l,45).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,45).onTouched()&&t),"click"===n&&(t=!1!==a.updateFieldsWhenTenanted()&&t),t}),null,null)),e["ɵdid"](44,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](45,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](47,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](49,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](50,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](51,0,null,null,1,"label",[["class","custom-control-label"],["for","show_tenant"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Show Tenant"])),(l()(),e["ɵand"](16777216,null,null,1,null,Ue)),e["ɵdid"](54,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](55,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](56,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](59,0,null,0,4,"label",[["class","cd-col-form-label"],["for","display_name"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](61,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](62,{required:0}),(l()(),e["ɵted"](-1,null,["Full name"])),(l()(),e["ɵeld"](64,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](65,0,null,null,7,"input",[["class","form-control"],["formControlName","display_name"],["id","display_name"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,67)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,67).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,67)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,67)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](66,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](67,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](69,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](71,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](72,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Me)),e["ɵdid"](74,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](75,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](76,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](79,0,null,0,1,"label",[["class","cd-col-form-label"],["for","email"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Email address"])),(l()(),e["ɵeld"](81,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](82,0,null,null,7,"input",[["class","form-control"],["formControlName","email"],["id","email"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,84)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,84).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,84)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,84)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](83,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](84,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](86,671744,[[9,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](88,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](89,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Oe)),e["ɵdid"](91,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ze)),e["ɵdid"](93,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](94,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](95,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,11,{FormControlNames:1}),e["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),e["ɵeld"](98,0,null,0,1,"label",[["class","cd-col-form-label"],["for","max_buckets_mode"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Max. buckets"])),(l()(),e["ɵeld"](100,0,null,0,20,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](101,0,null,null,19,"select",[["class","form-control custom-select"],["formControlName","max_buckets_mode"],["id","max_buckets_mode"],["name","max_buckets_mode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0,a=l.component;return"change"===n&&(t=!1!==e["ɵnov"](l,103).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,103).onTouched()&&t),"change"===n&&(t=!1!==a.onMaxBucketsModeChange(u.target.value)&&t),t}),null,null)),e["ɵdid"](102,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](103,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](105,671744,[[11,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](107,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](108,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](109,0,null,null,3,"option",[["value","-1"]],null,null,null,null,null)),e["ɵdid"](110,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](111,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Disabled"])),(l()(),e["ɵeld"](113,0,null,null,3,"option",[["value","0"]],null,null,null,null,null)),e["ɵdid"](114,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](115,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Unlimited"])),(l()(),e["ɵeld"](117,0,null,null,3,"option",[["value","1"]],null,null,null,null,null)),e["ɵdid"](118,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](119,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Custom"])),(l()(),e["ɵand"](16777216,null,null,1,null,Ke)),e["ɵdid"](122,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](123,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](124,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,15,{FormControlNames:1}),e["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),e["ɵeld"](127,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](128,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](129,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","suspended"],["id","suspended"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,131).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,131).onTouched()&&t),t}),null,null)),e["ɵdid"](130,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](131,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](133,671744,[[15,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](135,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](136,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](137,0,null,null,1,"label",[["class","custom-control-label"],["for","suspended"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Suspended"])),(l()(),e["ɵand"](16777216,null,null,1,null,Ye)),e["ɵdid"](140,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,He)),e["ɵdid"](142,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,tt)),e["ɵdid"](144,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ot)),e["ɵdid"](146,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](147,0,null,null,26,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](148,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User quota"])),(l()(),e["ɵeld"](150,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](151,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,29,{FormControlNames:1}),e["ɵqud"](603979776,30,{messagesBlock:0}),(l()(),e["ɵeld"](154,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](155,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](156,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","user_quota_enabled"],["id","user_quota_enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,158).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,158).onTouched()&&t),t}),null,null)),e["ɵdid"](157,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](158,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](160,671744,[[29,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](162,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](163,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](164,0,null,null,1,"label",[["class","custom-control-label"],["for","user_quota_enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵand"](16777216,null,null,1,null,st)),e["ɵdid"](167,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ct)),e["ɵdid"](169,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,mt)),e["ɵdid"](171,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pt)),e["ɵdid"](173,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](174,0,null,null,26,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](175,0,null,null,1,"legend",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Bucket quota"])),(l()(),e["ɵeld"](177,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](178,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,39,{FormControlNames:1}),e["ɵqud"](603979776,40,{messagesBlock:0}),(l()(),e["ɵeld"](181,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](182,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](183,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","bucket_quota_enabled"],["id","bucket_quota_enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,185).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,185).onTouched()&&t),t}),null,null)),e["ɵdid"](184,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](185,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](187,671744,[[39,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](189,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](190,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](191,0,null,null,1,"label",[["class","custom-control-label"],["for","bucket_quota_enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵand"](16777216,null,null,1,null,vt)),e["ɵdid"](194,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ct)),e["ɵdid"](196,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,_t)),e["ɵdid"](198,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,yt)),e["ɵdid"](200,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](201,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](202,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](203,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.onSubmit()&&e),e}),Jn.b,Jn.a)),e["ɵdid"](204,114688,null,0,Xn.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](205,0,[""," ",""])),e["ɵppd"](206,1),e["ɵppd"](207,1),(l()(),e["ɵeld"](208,0,null,null,1,"cd-back-button",[],null,null,null,Gn.b,Gn.a)),e["ɵdid"](209,49152,null,0,Kn.a,[Dl.Location,t.b],null,null)],(function(l,n){var u=n.component;l(n,3,0,u.userForm),l(n,6,0,u.userForm),l(n,14,0);var t=l(n,20,0,!u.editing);l(n,19,0,"cd-col-form-label",t),l(n,27,0,"user_id"),l(n,30,0,"user_id"),l(n,32,0,u.userForm.showError("user_id",e["ɵnov"](n,3),"required")),l(n,34,0,u.userForm.showError("user_id",e["ɵnov"](n,3),"pattern")),l(n,36,0,!u.userForm.getValue("show_tenant")&&u.userForm.showError("user_id",e["ɵnov"](n,3),"notUnique")),l(n,38,0),l(n,47,0,"show_tenant"),l(n,50,0,"show_tenant"),l(n,54,0,u.userForm.getValue("show_tenant")),l(n,56,0);var a=l(n,62,0,!u.editing);l(n,61,0,"cd-col-form-label",a),l(n,69,0,"display_name"),l(n,72,0,"display_name"),l(n,74,0,u.userForm.showError("display_name",e["ɵnov"](n,3),"required")),l(n,76,0),l(n,86,0,"email"),l(n,89,0,"email"),l(n,91,0,u.userForm.showError("email",e["ɵnov"](n,3),"email")),l(n,93,0,u.userForm.showError("email",e["ɵnov"](n,3),"notUnique")),l(n,95,0),l(n,105,0,"max_buckets_mode"),l(n,108,0,"max_buckets_mode"),l(n,110,0,"-1"),l(n,111,0,"-1"),l(n,114,0,"0"),l(n,115,0,"0"),l(n,118,0,"1"),l(n,119,0,"1"),l(n,122,0,1==u.userForm.get("max_buckets_mode").value),l(n,124,0),l(n,133,0,"suspended"),l(n,136,0,"suspended"),l(n,140,0,!u.editing),l(n,142,0,u.editing),l(n,144,0,u.editing),l(n,146,0,u.editing),l(n,151,0),l(n,160,0,"user_quota_enabled"),l(n,163,0,"user_quota_enabled"),l(n,167,0,u.userForm.controls.user_quota_enabled.value),l(n,169,0,u.userForm.controls.user_quota_enabled.value&&!u.userForm.getValue("user_quota_max_size_unlimited")),l(n,171,0,u.userForm.controls.user_quota_enabled.value),l(n,173,0,u.userForm.controls.user_quota_enabled.value&&!u.userForm.getValue("user_quota_max_objects_unlimited")),l(n,178,0),l(n,187,0,"bucket_quota_enabled"),l(n,190,0,"bucket_quota_enabled"),l(n,194,0,u.userForm.controls.bucket_quota_enabled.value),l(n,196,0,u.userForm.controls.bucket_quota_enabled.value&&!u.userForm.getValue("bucket_quota_max_size_unlimited")),l(n,198,0,u.userForm.controls.bucket_quota_enabled.value),l(n,200,0,u.userForm.controls.bucket_quota_enabled.value&&!u.userForm.getValue("bucket_quota_max_objects_unlimited")),l(n,204,0,u.userForm)}),(function(l,n){var u=n.component;l(n,1,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending);var t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent,0),u.action)),a=e["ɵunv"](n,9,1,l(n,11,0,e["ɵnov"](n.parent,1),u.resource));l(n,9,0,t,a),l(n,13,0,e["ɵnov"](n,14).hasErrors,e["ɵnov"](n,14).hasSuccess),l(n,23,0,u.editing,e["ɵnov"](n,29).ngClassUntouched,e["ɵnov"](n,29).ngClassTouched,e["ɵnov"](n,29).ngClassPristine,e["ɵnov"](n,29).ngClassDirty,e["ɵnov"](n,29).ngClassValid,e["ɵnov"](n,29).ngClassInvalid,e["ɵnov"](n,29).ngClassPending,e["ɵnov"](n,30).validClass,e["ɵnov"](n,30).invalidClass),l(n,37,0,e["ɵnov"](n,38).hasErrors,e["ɵnov"](n,38).hasSuccess),l(n,43,0,!0,e["ɵnov"](n,49).ngClassUntouched,e["ɵnov"](n,49).ngClassTouched,e["ɵnov"](n,49).ngClassPristine,e["ɵnov"](n,49).ngClassDirty,e["ɵnov"](n,49).ngClassValid,e["ɵnov"](n,49).ngClassInvalid,e["ɵnov"](n,49).ngClassPending,e["ɵnov"](n,50).validClass,e["ɵnov"](n,50).invalidClass),l(n,55,0,e["ɵnov"](n,56).hasErrors,e["ɵnov"](n,56).hasSuccess),l(n,65,0,e["ɵnov"](n,71).ngClassUntouched,e["ɵnov"](n,71).ngClassTouched,e["ɵnov"](n,71).ngClassPristine,e["ɵnov"](n,71).ngClassDirty,e["ɵnov"](n,71).ngClassValid,e["ɵnov"](n,71).ngClassInvalid,e["ɵnov"](n,71).ngClassPending,e["ɵnov"](n,72).validClass,e["ɵnov"](n,72).invalidClass),l(n,75,0,e["ɵnov"](n,76).hasErrors,e["ɵnov"](n,76).hasSuccess),l(n,82,0,e["ɵnov"](n,88).ngClassUntouched,e["ɵnov"](n,88).ngClassTouched,e["ɵnov"](n,88).ngClassPristine,e["ɵnov"](n,88).ngClassDirty,e["ɵnov"](n,88).ngClassValid,e["ɵnov"](n,88).ngClassInvalid,e["ɵnov"](n,88).ngClassPending,e["ɵnov"](n,89).validClass,e["ɵnov"](n,89).invalidClass),l(n,94,0,e["ɵnov"](n,95).hasErrors,e["ɵnov"](n,95).hasSuccess),l(n,101,0,e["ɵnov"](n,107).ngClassUntouched,e["ɵnov"](n,107).ngClassTouched,e["ɵnov"](n,107).ngClassPristine,e["ɵnov"](n,107).ngClassDirty,e["ɵnov"](n,107).ngClassValid,e["ɵnov"](n,107).ngClassInvalid,e["ɵnov"](n,107).ngClassPending,e["ɵnov"](n,108).validClass,e["ɵnov"](n,108).invalidClass),l(n,123,0,e["ɵnov"](n,124).hasErrors,e["ɵnov"](n,124).hasSuccess),l(n,129,0,e["ɵnov"](n,135).ngClassUntouched,e["ɵnov"](n,135).ngClassTouched,e["ɵnov"](n,135).ngClassPristine,e["ɵnov"](n,135).ngClassDirty,e["ɵnov"](n,135).ngClassValid,e["ɵnov"](n,135).ngClassInvalid,e["ɵnov"](n,135).ngClassPending,e["ɵnov"](n,136).validClass,e["ɵnov"](n,136).invalidClass),l(n,150,0,e["ɵnov"](n,151).hasErrors,e["ɵnov"](n,151).hasSuccess),l(n,156,0,e["ɵnov"](n,162).ngClassUntouched,e["ɵnov"](n,162).ngClassTouched,e["ɵnov"](n,162).ngClassPristine,e["ɵnov"](n,162).ngClassDirty,e["ɵnov"](n,162).ngClassValid,e["ɵnov"](n,162).ngClassInvalid,e["ɵnov"](n,162).ngClassPending,e["ɵnov"](n,163).validClass,e["ɵnov"](n,163).invalidClass),l(n,177,0,e["ɵnov"](n,178).hasErrors,e["ɵnov"](n,178).hasSuccess),l(n,183,0,e["ɵnov"](n,189).ngClassUntouched,e["ɵnov"](n,189).ngClassTouched,e["ɵnov"](n,189).ngClassPristine,e["ɵnov"](n,189).ngClassDirty,e["ɵnov"](n,189).ngClassValid,e["ɵnov"](n,189).ngClassInvalid,e["ɵnov"](n,189).ngClassPending,e["ɵnov"](n,190).validClass,e["ɵnov"](n,190).invalidClass);var i=e["ɵunv"](n,205,0,l(n,206,0,e["ɵnov"](n.parent,0),u.action)),o=e["ɵunv"](n,205,1,l(n,207,0,e["ɵnov"](n.parent,1),u.resource));l(n,205,0,i,o)}))}function wt(l){return e["ɵvid"](0,[e["ɵpid"](0,Dl.TitleCasePipe,[]),e["ɵpid"](0,jn.a,[]),(l()(),e["ɵand"](16777216,null,null,1,null,Se)),e["ɵdid"](3,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,De)),e["ɵdid"](5,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,It)),e["ɵdid"](7,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.editing&&u.loading&&!u.error),l(n,5,0,u.editing&&u.error),l(n,7,0,!u.loading&&!u.error)}),null)}function Et(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-user-form",[],null,null,null,wt,Ve)),e["ɵdid"](1,114688,null,0,Y,[_.a,ee.a,ee.m,h.a,sn.b,k.a,wl.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var qt=e["ɵccf"]("cd-rgw-user-form",Y,Et,{},{},[]),Nt=u("xSw7"),Tt=u("GgAd"),xt=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Vt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["size","slim"],["type","warning"]],null,null,null,Ce.b,Ce.a)),e["ɵdid"](1,114688,null,0,_e.a,[wl.a],{type:[0,"type"],size:[1,"size"]},null),(l()(),e["ɵted"](-1,0,["The bucket list data might be stale. If needed, you can manually reload it."]))],(function(l,n){l(n,1,0,"warning","slim")}),null)}function St(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-usage-bar",[],null,null,null,Nt.b,Nt.a)),e["ɵdid"](1,573440,null,0,Tt.a,[],{total:[0,"total"],used:[1,"used"]},null)],(function(l,n){l(n,1,0,n.parent.context.row.bucket_quota.max_size,n.parent.context.row.bucket_size)}),null)}function Dt(l){return e["ɵvid"](0,[(l()(),e["ɵted"](-1,null,["No Limit"]))],null,null)}function Ft(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,St)),e["ɵdid"](1,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(l()(),e["ɵand"](0,[["noSizeQuota",2]],null,0,null,Dt))],(function(l,n){l(n,1,0,n.context.row.bucket_quota.max_size>0&&n.context.row.bucket_quota.enabled,e["ɵnov"](n,2))}),null)}function jt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-usage-bar",[],null,null,null,Nt.b,Nt.a)),e["ɵdid"](1,573440,null,0,Tt.a,[],{total:[0,"total"],used:[1,"used"],isBinary:[2,"isBinary"]},null)],(function(l,n){l(n,1,0,n.parent.context.row.bucket_quota.max_objects,n.parent.context.row.num_objects,!1)}),null)}function Bt(l){return e["ɵvid"](0,[(l()(),e["ɵted"](-1,null,["No Limit"]))],null,null)}function Pt(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,jt)),e["ɵdid"](1,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(l()(),e["ɵand"](0,[["noObjectQuota",2]],null,0,null,Bt))],(function(l,n){l(n,1,0,n.context.row.bucket_quota.max_objects>0&&n.context.row.bucket_quota.enabled,e["ɵnov"](n,2))}),null)}function At(l){return e["ɵvid"](0,[e["ɵqud"](402653184,1,{table:0}),e["ɵqud"](402653184,2,{bucketSizeTpl:0}),e["ɵqud"](402653184,3,{bucketObjectTpl:0}),(l()(),e["ɵand"](16777216,null,null,1,null,Vt)),e["ɵdid"](4,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](5,0,null,null,5,"cd-table",[["columnMode","flex"],["identifier","bid"],["selectionType","multiClick"]],null,[[null,"setExpandedRow"],[null,"updateSelection"],[null,"fetchData"]],(function(l,n,u){var e=!0,t=l.component;return"setExpandedRow"===n&&(e=!1!==t.setExpandedRow(u)&&e),"updateSelection"===n&&(e=!1!==t.updateSelection(u)&&e),"fetchData"===n&&(e=!1!==t.getBucketList(u)&&e),e}),nn.b,nn.a)),e["ɵdid"](6,2867200,[[1,4],["table",4]],0,x.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](7,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Re.b,Re.a)),e["ɵdid"](8,114688,null,0,ke.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](9,0,null,3,1,"cd-rgw-bucket-details",[["cdTableDetail",""]],null,null,null,Xl,Ll)),e["ɵdid"](10,573440,null,0,zl,[p],{selection:[0,"selection"]},null),(l()(),e["ɵand"](0,[[2,2],["bucketSizeTpl",2]],null,0,null,Ft)),(l()(),e["ɵand"](0,[[3,2],["bucketObjectTpl",2]],null,0,null,Pt))],(function(l,n){var u=n.component;l(n,4,0,u.isStale),l(n,6,0,u.buckets,u.columns,"flex",!0,!1,"bid","multiClick"),l(n,8,0,u.permission,u.selection,u.tableActions),l(n,10,0,u.expandedRow)}),null)}function Ut(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-rgw-bucket-list",[],null,null,null,At,xt)),e["ɵprd"](256,null,j.a,B,[]),e["ɵdid"](2,114688,null,0,P,[F.a,S.a,D.a,p,sn.b,wl.a,j.a,t.b,e.NgZone,e.ChangeDetectorRef],null,null)],(function(l,n){l(n,2,0)}),null)}var Mt=e["ɵccf"]("cd-rgw-bucket-list",P,Ut,{},{},[]),Ot=u("4HWh"),zt=u("p4Cf"),Lt=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Gt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,Ne.b,Ne.a)),e["ɵdid"](1,49152,null,0,Te.a,[],null,null),(l()(),e["ɵted"](-1,0,["Loading bucket data..."]))],null,null)}function Kt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,1,{FormControlNames:1}),e["ɵqud"](603979776,2,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","id"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Id"])),(l()(),e["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","id"],["id","id"],["name","id"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](11,671744,[[1,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,1,0),l(n,11,0,"id"),l(n,14,0,"id")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function $t(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Zt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The value is not valid."]))],null,null)}function Qt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen name is already in use."]))],null,null)}function Wt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Yt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a user --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function Jt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit),l(n,2,0,n.context.$implicit)}),(function(l,n){l(n,3,0,n.context.$implicit)}))}function Xt(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ht(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["Loading..."]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function la(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{ngValue:[0,"ngValue"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(l()(),e["ɵted"](-1,null,["-- Select a placement target --"]))],(function(l,n){l(n,1,0,null),l(n,2,0,null)}),null)}function na(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),e["ɵdid"](1,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](2,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](3,null,["",""]))],(function(l,n){l(n,1,0,n.context.$implicit.name),l(n,2,0,n.context.$implicit.name)}),(function(l,n){l(n,3,0,n.context.$implicit.description)}))}function ua(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function ea(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","placement-target"],["id","placement-target"],["name","placement-target"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,2).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,2).onTouched()&&t),t}),null,null)),e["ɵdid"](1,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](2,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](4,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](6,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](7,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ht)),e["ɵdid"](9,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,la)),e["ɵdid"](11,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,na)),e["ɵdid"](13,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ua)),e["ɵdid"](15,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){var u=n.component;l(n,4,0,"placement-target"),l(n,7,0,"placement-target"),l(n,9,0,null===u.placementTargets),l(n,11,0,null!==u.placementTargets),l(n,13,0,u.placementTargets),l(n,15,0,u.bucketForm.showError("placement-target",e["ɵnov"](n.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,6).ngClassUntouched,e["ɵnov"](n,6).ngClassTouched,e["ɵnov"](n,6).ngClassPristine,e["ɵnov"](n,6).ngClassDirty,e["ɵnov"](n,6).ngClassValid,e["ɵnov"](n,6).ngClassInvalid,e["ɵnov"](n,6).ngClassPending,e["ɵnov"](n,7).validClass,e["ɵnov"](n,7).invalidClass)}))}function ta(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,null,null,null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,7,"input",[["class","form-control"],["formControlName","placement-target"],["id","placement-target"],["name","placement-target"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,3)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,3).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,3)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,3)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](2,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](5,671744,[[7,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](7,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](8,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null)],(function(l,n){l(n,5,0,"placement-target"),l(n,8,0,"placement-target")}),(function(l,n){l(n,1,0,e["ɵnov"](n,7).ngClassUntouched,e["ɵnov"](n,7).ngClassTouched,e["ɵnov"](n,7).ngClassPristine,e["ɵnov"](n,7).ngClassDirty,e["ɵnov"](n,7).ngClassValid,e["ɵnov"](n,7).ngClassInvalid,e["ɵnov"](n,7).ngClassPending,e["ɵnov"](n,8).validClass,e["ɵnov"](n,8).invalidClass)}))}function aa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Versioning"])),(l()(),e["ɵeld"](3,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](4,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,9,{FormControlNames:1}),e["ɵqud"](603979776,10,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,15,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,14,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","versioning"],["id","versioning"],["name","versioning"],["type","checkbox"]],[[8,"checked",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0,a=l.component;return"change"===n&&(t=!1!==e["ɵnov"](l,11).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,11).onTouched()&&t),"change"===n&&(t=!1!==a.updateVersioning()&&t),t}),null,null)),e["ɵdid"](10,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](11,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](13,671744,[[9,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](15,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](16,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](17,0,null,null,1,"label",[["class","custom-control-label"],["for","versioning"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](19,0,null,null,3,"cd-helper",[],null,null,null,Ot.b,Ot.a)),e["ɵdid"](20,49152,null,0,zt.a,[],null,null),(l()(),e["ɵeld"](21,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enables versioning for the objects in the bucket."]))],(function(l,n){l(n,4,0),l(n,13,0,"versioning"),l(n,16,0,"versioning")}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,9,0,u.isVersioningEnabled,e["ɵnov"](n,15).ngClassUntouched,e["ɵnov"](n,15).ngClassTouched,e["ɵnov"](n,15).ngClassPristine,e["ɵnov"](n,15).ngClassDirty,e["ɵnov"](n,15).ngClassValid,e["ɵnov"](n,15).ngClassInvalid,e["ɵnov"](n,15).ngClassPending,e["ɵnov"](n,16).validClass,e["ɵnov"](n,16).invalidClass)}))}function ia(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function oa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,13,{FormControlNames:1}),e["ɵqud"](603979776,14,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mfa-token-serial"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Token Serial Number"])),(l()(),e["ɵeld"](6,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","mfa-token-serial"],["id","mfa-token-serial"],["name","mfa-token-serial"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](11,671744,[[13,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ia)),e["ɵdid"](16,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,11,0,"mfa-token-serial"),l(n,14,0,"mfa-token-serial"),l(n,16,0,u.bucketForm.showError("mfa-token-serial",e["ɵnov"](n.parent.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function sa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function da(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,15,{FormControlNames:1}),e["ɵqud"](603979776,16,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","mfa-token-pin"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Token PIN"])),(l()(),e["ɵeld"](6,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","mfa-token-pin"],["id","mfa-token-pin"],["name","mfa-token-pin"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,9)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](11,671744,[[15,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,sa)),e["ɵdid"](16,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,11,0,"mfa-token-pin"),l(n,14,0,"mfa-token-pin"),l(n,16,0,u.bucketForm.showError("mfa-token-pin",e["ɵnov"](n.parent.parent,3),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function ra(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,26,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Multi-Factor Authentication"])),(l()(),e["ɵeld"](3,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](4,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,11,{FormControlNames:1}),e["ɵqud"](603979776,12,{messagesBlock:0}),(l()(),e["ɵeld"](7,0,null,0,15,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,14,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](9,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","mfa-delete"],["id","mfa-delete"],["name","mfa-delete"],["type","checkbox"]],[[8,"checked",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0,a=l.component;return"change"===n&&(t=!1!==e["ɵnov"](l,11).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,11).onTouched()&&t),"change"===n&&(t=!1!==a.updateMfaDelete()&&t),t}),null,null)),e["ɵdid"](10,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](11,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](13,671744,[[11,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](15,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](16,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](17,0,null,null,1,"label",[["class","custom-control-label"],["for","mfa-delete"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Delete enabled"])),(l()(),e["ɵeld"](19,0,null,null,3,"cd-helper",[],null,null,null,Ot.b,Ot.a)),e["ɵdid"](20,49152,null,0,zt.a,[],null,null),(l()(),e["ɵeld"](21,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state."])),(l()(),e["ɵand"](16777216,null,null,1,null,oa)),e["ɵdid"](24,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,da)),e["ɵdid"](26,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,4,0),l(n,13,0,"mfa-delete"),l(n,16,0,"mfa-delete"),l(n,24,0,u.areMfaCredentialsRequired()),l(n,26,0,u.areMfaCredentialsRequired())}),(function(l,n){var u=n.component;l(n,3,0,e["ɵnov"](n,4).hasErrors,e["ɵnov"](n,4).hasSuccess),l(n,9,0,u.isMfaDeleteEnabled,e["ɵnov"](n,15).ngClassUntouched,e["ɵnov"](n,15).ngClassTouched,e["ɵnov"](n,15).ngClassPristine,e["ɵnov"](n,15).ngClassDirty,e["ɵnov"](n,15).ngClassValid,e["ɵnov"](n,15).ngClassInvalid,e["ɵnov"](n,15).ngClassPending,e["ɵnov"](n,16).validClass,e["ɵnov"](n,16).invalidClass)}))}function ca(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,19,{FormControlNames:1}),e["ɵqud"](603979776,20,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","lock_mode"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Mode"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","lock_mode"],["id","lock_mode"],["name","lock_mode"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,9).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,9).onTouched()&&t),t}),null,null)),e["ɵdid"](8,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](9,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](11,671744,[[19,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](13,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](14,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](15,0,null,null,3,"option",[["value","COMPLIANCE"]],null,null,null,null,null)),e["ɵdid"](16,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](17,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Compliance"])),(l()(),e["ɵeld"](19,0,null,null,3,"option",[["value","GOVERNANCE"]],null,null,null,null,null)),e["ɵdid"](20,147456,null,0,o.v,[e.ElementRef,e.Renderer2,[2,o.A]],{value:[0,"value"]},null),e["ɵdid"](21,147456,null,0,o.F,[e.ElementRef,e.Renderer2,[8,null]],{value:[0,"value"]},null),(l()(),e["ɵted"](-1,null,["Governance"]))],(function(l,n){l(n,1,0),l(n,11,0,"lock_mode"),l(n,14,0,"lock_mode"),l(n,16,0,"COMPLIANCE"),l(n,17,0,"COMPLIANCE"),l(n,20,0,"GOVERNANCE"),l(n,21,0,"GOVERNANCE")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,7,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,14).validClass,e["ɵnov"](n,14).invalidClass)}))}function ma(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be a positive integer."]))],null,null)}function fa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Retention period requires either Days or Years."]))],null,null)}function ga(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,21,{FormControlNames:1}),e["ɵqud"](603979776,22,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","lock_retention_period_days"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Days"])),(l()(),e["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,Ot.b,Ot.a)),e["ɵdid"](8,49152,null,0,zt.a,[],null,null),(l()(),e["ɵted"](-1,0,["The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket."])),(l()(),e["ɵeld"](10,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,8,"input",[["class","form-control"],["formControlName","lock_retention_period_days"],["id","lock_retention_period_days"],["min","0"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,14).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,14).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,14).onTouched()&&t),t}),null,null)),e["ɵdid"](12,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](14,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](16,671744,[[21,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](18,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](19,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ma)),e["ɵdid"](21,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,fa)),e["ɵdid"](23,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,16,0,"lock_retention_period_days"),l(n,19,0,"lock_retention_period_days"),l(n,21,0,u.bucketForm.showError("lock_retention_period_days",e["ɵnov"](n.parent,3),"pattern")),l(n,23,0,u.bucketForm.showError("lock_retention_period_days",e["ɵnov"](n.parent,3),"eitherDaysOrYears"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,e["ɵnov"](n,18).ngClassUntouched,e["ɵnov"](n,18).ngClassTouched,e["ɵnov"](n,18).ngClassPristine,e["ɵnov"](n,18).ngClassDirty,e["ɵnov"](n,18).ngClassValid,e["ɵnov"](n,18).ngClassInvalid,e["ɵnov"](n,18).ngClassPending,e["ɵnov"](n,19).validClass,e["ɵnov"](n,19).invalidClass)}))}function pa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The entered value must be a positive integer."]))],null,null)}function va(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Retention period requires either Days or Years."]))],null,null)}function ha(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](1,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,23,{FormControlNames:1}),e["ɵqud"](603979776,24,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","lock_retention_period_years"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Years"])),(l()(),e["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,Ot.b,Ot.a)),e["ɵdid"](8,49152,null,0,zt.a,[],null,null),(l()(),e["ɵted"](-1,0,["The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket."])),(l()(),e["ɵeld"](10,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,8,"input",[["class","form-control"],["formControlName","lock_retention_period_years"],["id","lock_retention_period_years"],["min","0"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,13)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,13).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,13)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,13)._compositionEnd(u.target.value)&&t),"change"===n&&(t=!1!==e["ɵnov"](l,14).onChange(u.target.value)&&t),"input"===n&&(t=!1!==e["ɵnov"](l,14).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,14).onTouched()&&t),t}),null,null)),e["ɵdid"](12,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵdid"](14,16384,null,0,o.w,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l,n){return[l,n]}),[o.e,o.w]),e["ɵdid"](16,671744,[[23,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](18,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](19,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pa)),e["ɵdid"](21,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,va)),e["ɵdid"](23,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,16,0,"lock_retention_period_years"),l(n,19,0,"lock_retention_period_years"),l(n,21,0,u.bucketForm.showError("lock_retention_period_days",e["ɵnov"](n.parent,3),"pattern")),l(n,23,0,u.bucketForm.showError("lock_retention_period_years",e["ɵnov"](n.parent,3),"eitherDaysOrYears"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,e["ɵnov"](n,18).ngClassUntouched,e["ɵnov"](n,18).ngClassTouched,e["ɵnov"](n,18).ngClassPristine,e["ɵnov"](n,18).ngClassDirty,e["ɵnov"](n,18).ngClassValid,e["ɵnov"](n,18).ngClassInvalid,e["ɵnov"](n,18).ngClassPending,e["ɵnov"](n,19).validClass,e["ɵnov"](n,19).invalidClass)}))}function ba(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,118,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,117,"form",[["name","bucketForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var t=!0;return"submit"===n&&(t=!1!==e["ɵnov"](l,3).onSubmit(u)&&t),"reset"===n&&(t=!1!==e["ɵnov"](l,3).onReset()&&t),"submit"===n&&(t=!1!==e["ɵnov"](l,6).onSubmit()&&t),t}),null,null)),e["ɵdid"](2,16384,null,0,o.G,[],null,null),e["ɵdid"](3,540672,[["frm",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,o.d,null,[o.l]),e["ɵdid"](5,16384,null,0,o.s,[[4,o.d]],null,null),e["ɵdid"](6,16384,null,0,An.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](7,0,null,null,111,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](9,null,[""," ",""])),e["ɵppd"](10,1),e["ɵppd"](11,1),(l()(),e["ɵeld"](12,0,null,null,97,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Kt)),e["ɵdid"](14,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](15,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](16,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,3,{FormControlNames:1}),e["ɵqud"](603979776,4,{messagesBlock:0}),(l()(),e["ɵeld"](19,0,null,0,4,"label",[["class","cd-col-form-label"],["for","bid"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](21,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](22,{required:0}),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](24,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](25,0,null,null,8,"input",[["class","form-control"],["formControlName","bid"],["id","bid"],["name","bid"],["placeholder","Name..."],["type","text"]],[[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var t=!0;return"input"===n&&(t=!1!==e["ɵnov"](l,28)._handleInput(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,28).onTouched()&&t),"compositionstart"===n&&(t=!1!==e["ɵnov"](l,28)._compositionStart()&&t),"compositionend"===n&&(t=!1!==e["ɵnov"](l,28)._compositionEnd(u.target.value)&&t),t}),null,null)),e["ɵdid"](26,4210688,null,0,Yn.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](27,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](28,16384,null,0,o.e,[e.Renderer2,e.ElementRef,[2,o.b]],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.e]),e["ɵdid"](30,671744,[[3,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](32,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](33,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,$t)),e["ɵdid"](35,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Zt)),e["ɵdid"](37,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Qt)),e["ɵdid"](39,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](40,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](41,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,5,{FormControlNames:1}),e["ɵqud"](603979776,6,{messagesBlock:0}),(l()(),e["ɵeld"](44,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","owner"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Owner"])),(l()(),e["ɵeld"](46,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](47,0,null,null,14,"select",[["class","form-control custom-select"],["formControlName","owner"],["id","owner"],["name","owner"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,50).onChange(u.target.value)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,50).onTouched()&&t),t}),null,null)),e["ɵdid"](48,4210688,null,0,Yn.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](49,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](50,16384,null,0,o.A,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.A]),e["ɵdid"](52,671744,[[5,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](54,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](55,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Wt)),e["ɵdid"](57,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Yt)),e["ɵdid"](59,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Jt)),e["ɵdid"](61,278528,null,0,Dl.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Xt)),e["ɵdid"](63,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](64,0,null,null,12,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](65,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,7,{FormControlNames:1}),e["ɵqud"](603979776,8,{messagesBlock:0}),(l()(),e["ɵeld"](68,0,null,0,4,"label",[["class","cd-col-form-label"],["for","placement-target"]],null,null,null,null,null)),e["ɵprd"](512,null,Dl["ɵNgClassImpl"],Dl["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](70,278528,null,0,Dl.NgClass,[Dl["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](71,{required:0}),(l()(),e["ɵted"](-1,null,["Placement target"])),(l()(),e["ɵeld"](73,0,null,0,3,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](0,[["placementTargetSelect",2]],null,0,null,ea)),(l()(),e["ɵand"](16777216,null,null,1,null,ta)),e["ɵdid"](76,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,aa)),e["ɵdid"](78,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ra)),e["ɵdid"](80,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](81,0,null,null,28,"fieldset",[],null,null,null,null,null)),(l()(),e["ɵeld"](82,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Locking"])),(l()(),e["ɵeld"](84,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Pn.b,Pn.a)),e["ɵdid"](85,1163264,null,2,An.c,[e.ElementRef,An.g],null,null),e["ɵqud"](603979776,17,{FormControlNames:1}),e["ɵqud"](603979776,18,{messagesBlock:0}),(l()(),e["ɵeld"](88,0,null,0,15,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](89,0,null,null,14,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](90,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","lock_enabled"],["id","lock_enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var t=!0;return"change"===n&&(t=!1!==e["ɵnov"](l,92).onChange(u.target.checked)&&t),"blur"===n&&(t=!1!==e["ɵnov"](l,92).onTouched()&&t),t}),null,null)),e["ɵdid"](91,4210688,null,0,Un.a,[[2,Mn.a],F.a,e.ElementRef],null,null),e["ɵdid"](92,16384,null,0,o.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,o.p,(function(l){return[l]}),[o.c]),e["ɵdid"](94,671744,[[17,4]],0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,o.q,null,[o.j]),e["ɵdid"](96,16384,null,0,o.r,[[4,o.q]],null,null),e["ɵdid"](97,16384,null,0,An.h,[[3,o.d],An.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](98,0,null,null,1,"label",[["class","custom-control-label"],["for","lock_enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"])),(l()(),e["ɵeld"](100,0,null,null,3,"cd-helper",[],null,null,null,Ot.b,Ot.a)),e["ɵdid"](101,49152,null,0,zt.a,[],null,null),(l()(),e["ɵeld"](102,0,null,0,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket."])),(l()(),e["ɵand"](16777216,null,null,1,null,ca)),e["ɵdid"](105,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ga)),e["ɵdid"](107,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ha)),e["ɵdid"](109,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](110,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](111,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](112,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),Jn.b,Jn.a)),e["ɵdid"](113,114688,null,0,Xn.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](114,0,[""," ",""])),e["ɵppd"](115,1),e["ɵppd"](116,1),(l()(),e["ɵeld"](117,0,null,null,1,"cd-back-button",[],null,null,null,Gn.b,Gn.a)),e["ɵdid"](118,49152,null,0,Kn.a,[Dl.Location,t.b],null,null)],(function(l,n){var u=n.component;l(n,3,0,u.bucketForm),l(n,6,0,u.bucketForm),l(n,14,0,u.editing),l(n,16,0);var t=l(n,22,0,!u.editing);l(n,21,0,"cd-col-form-label",t),l(n,26,0,!u.editing),l(n,30,0,"bid"),l(n,33,0,"bid"),l(n,35,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"required")),l(n,37,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"bucketNameInvalid")),l(n,39,0,u.bucketForm.showError("bid",e["ɵnov"](n,3),"bucketNameExists")),l(n,41,0),l(n,48,0,u.editing),l(n,52,0,"owner"),l(n,55,0,"owner"),l(n,57,0,null===u.owners),l(n,59,0,null!==u.owners),l(n,61,0,u.owners),l(n,63,0,u.bucketForm.showError("owner",e["ɵnov"](n,3),"required")),l(n,65,0);var a=l(n,71,0,!u.editing);l(n,70,0,"cd-col-form-label",a),l(n,76,0,u.editing,e["ɵnov"](n,74)),l(n,78,0,u.editing),l(n,80,0,u.editing),l(n,85,0),l(n,94,0,"lock_enabled"),l(n,97,0,"lock_enabled"),l(n,105,0,u.bucketForm.getValue("lock_enabled")),l(n,107,0,u.bucketForm.getValue("lock_enabled")),l(n,109,0,u.bucketForm.getValue("lock_enabled")),l(n,113,0,u.bucketForm)}),(function(l,n){var u=n.component;l(n,1,0,e["ɵnov"](n,5).ngClassUntouched,e["ɵnov"](n,5).ngClassTouched,e["ɵnov"](n,5).ngClassPristine,e["ɵnov"](n,5).ngClassDirty,e["ɵnov"](n,5).ngClassValid,e["ɵnov"](n,5).ngClassInvalid,e["ɵnov"](n,5).ngClassPending);var t=e["ɵunv"](n,9,0,l(n,10,0,e["ɵnov"](n.parent,0),u.action)),a=e["ɵunv"](n,9,1,l(n,11,0,e["ɵnov"](n.parent,1),u.resource));l(n,9,0,t,a),l(n,15,0,e["ɵnov"](n,16).hasErrors,e["ɵnov"](n,16).hasSuccess),l(n,25,0,u.editing,e["ɵnov"](n,32).ngClassUntouched,e["ɵnov"](n,32).ngClassTouched,e["ɵnov"](n,32).ngClassPristine,e["ɵnov"](n,32).ngClassDirty,e["ɵnov"](n,32).ngClassValid,e["ɵnov"](n,32).ngClassInvalid,e["ɵnov"](n,32).ngClassPending,e["ɵnov"](n,33).validClass,e["ɵnov"](n,33).invalidClass),l(n,40,0,e["ɵnov"](n,41).hasErrors,e["ɵnov"](n,41).hasSuccess),l(n,47,0,e["ɵnov"](n,54).ngClassUntouched,e["ɵnov"](n,54).ngClassTouched,e["ɵnov"](n,54).ngClassPristine,e["ɵnov"](n,54).ngClassDirty,e["ɵnov"](n,54).ngClassValid,e["ɵnov"](n,54).ngClassInvalid,e["ɵnov"](n,54).ngClassPending,e["ɵnov"](n,55).validClass,e["ɵnov"](n,55).invalidClass),l(n,64,0,e["ɵnov"](n,65).hasErrors,e["ɵnov"](n,65).hasSuccess),l(n,84,0,e["ɵnov"](n,85).hasErrors,e["ɵnov"](n,85).hasSuccess),l(n,90,0,e["ɵnov"](n,96).ngClassUntouched,e["ɵnov"](n,96).ngClassTouched,e["ɵnov"](n,96).ngClassPristine,e["ɵnov"](n,96).ngClassDirty,e["ɵnov"](n,96).ngClassValid,e["ɵnov"](n,96).ngClassInvalid,e["ɵnov"](n,96).ngClassPending,e["ɵnov"](n,97).validClass,e["ɵnov"](n,97).invalidClass);var i=e["ɵunv"](n,114,0,l(n,115,0,e["ɵnov"](n.parent,0),u.action)),o=e["ɵunv"](n,114,1,l(n,116,0,e["ɵnov"](n.parent,1),u.resource));l(n,114,0,i,o)}))}function Ca(l){return e["ɵvid"](0,[e["ɵpid"](0,Dl.TitleCasePipe,[]),e["ɵpid"](0,jn.a,[]),(l()(),e["ɵand"](16777216,null,null,1,null,Gt)),e["ɵdid"](3,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,ba)),e["ɵdid"](5,16384,null,0,Dl.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,3,0,u.editing&&u.loading&&!u.error),l(n,5,0,!u.loading&&!u.error)}),null)}function _a(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-bucket-form",[],null,null,null,Ca,Lt)),e["ɵdid"](1,114688,null,0,w,[ee.a,ee.m,_.a,p,v,h.a,k.a,wl.a,t.b],null,null)],(function(l,n){l(n,1,0)}),null)}var Ra=e["ɵccf"]("cd-rgw-bucket-form",w,_a,{},{},[]),ka=u("i4WA"),ya=u("6qls"),Ia=u("tz6c"),wa=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ea(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,8,"cd-alert-panel",[["type","info"]],null,null,null,Ce.b,Ce.a)),e["ɵdid"](1,114688,null,0,_e.a,[wl.a],{type:[0,"type"]},null),(l()(),e["ɵted"](2,0,[" ",""])),(l()(),e["ɵeld"](3,0,null,0,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,0,4,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Please consult the "])),(l()(),e["ɵeld"](6,0,null,null,1,"cd-doc",[["section","rgw"]],null,null,null,ka.b,ka.a)),e["ɵdid"](7,114688,null,0,ya.a,[Ia.a,wl.a],{section:[0,"section"]},null),(l()(),e["ɵted"](-1,null,[" on how to configure and enable the Object Gateway management functionality."]))],(function(l,n){l(n,1,0,"info"),l(n,7,0,"rgw")}),(function(l,n){l(n,2,0,n.component.message)}))}function qa(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-rgw-501",[],null,null,null,Ea,wa)),e["ɵdid"](1,245760,null,0,i,[ee.a],null,null)],(function(l,n){l(n,1,0)}),null)}var Na=e["ɵccf"]("cd-rgw-501",i,qa,{},{},[]);u.d(n,"RgwModuleNgFactory",(function(){return Ta})),u.d(n,"RoutedRgwModuleNgFactory",(function(){return xa}));var Ta=e["ɵcmf"](ll,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[rl.a,cl.a,ml.a,fl.a,fl.b,gl.a,pl.a,vl.a,hl.a,bl.a,Cl.a,Ml,ln,Fn,Wn,fu,Iu,ju]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,Dl.NgLocalization,Dl.NgLocaleLocalization,[e.LOCALE_ID,[2,Dl["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,Bu.a,Bu.a,[]),e["ɵmpd"](4608,Pu.a,Pu.a,[]),e["ɵmpd"](4608,Ol.a,Ol.a,[wl.a]),e["ɵmpd"](4608,Dl.DatePipe,Dl.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,Au.a,Au.a,[]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,S.a,S.a,[z.a]),e["ɵmpd"](4608,Uu.a,Uu.a,[z.a]),e["ɵmpd"](4608,D.a,D.a,[z.a]),e["ɵmpd"](4608,Mu.a,Mu.a,[]),e["ɵmpd"](4608,Ou.a,Ou.a,[]),e["ɵmpd"](4608,zu.a,zu.a,[]),e["ɵmpd"](4608,Lu.a,Lu.a,[]),e["ɵmpd"](4608,Tl.a,Tl.a,[Dl.DatePipe]),e["ɵmpd"](4608,Gu.a,Gu.a,[]),e["ɵmpd"](4608,Ku.a,Ku.a,[]),e["ɵmpd"](4608,$u.a,$u.a,[]),e["ɵmpd"](4608,Zu.a,Zu.a,[]),e["ɵmpd"](4608,Qu.a,Qu.a,[]),e["ɵmpd"](4608,Wu.a,Wu.a,[wl.a]),e["ɵmpd"](4608,jn.a,jn.a,[]),e["ɵmpd"](4608,an.a,an.a,[]),e["ɵmpd"](4608,Yu.a,Yu.a,[]),e["ɵmpd"](4608,o.D,o.D,[]),e["ɵmpd"](4608,o.h,o.h,[]),e["ɵmpd"](4608,Ju.b,Ju.b,[]),e["ɵmpd"](4608,Xu.a,Xu.a,[]),e["ɵmpd"](4608,Hu.a,Hu.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,en.a,en.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,Hu.a,e.ApplicationRef]),e["ɵmpd"](4608,le.c,le.c,[]),e["ɵmpd"](4608,ne.a,ne.a,[]),e["ɵmpd"](4608,sn.b,sn.b,[e.RendererFactory2,en.a]),e["ɵmpd"](4608,ue.y,ue.y,[Dl.DOCUMENT]),e["ɵmpd"](4608,ue.r,ue.r,[]),e["ɵmpd"](4608,ue.a,ue.a,[]),e["ɵmpd"](4608,un.f,un.f,[]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,a.a,a.a,[ee.m,F.a]),e["ɵmpd"](4608,_l.f,_l.f,[]),e["ɵmpd"](1073742336,Dl.CommonModule,Dl.CommonModule,[]),e["ɵmpd"](1073742336,te.a,te.a,[]),e["ɵmpd"](1073742336,o.C,o.C,[]),e["ɵmpd"](1073742336,o.n,o.n,[]),e["ɵmpd"](1073742336,o.y,o.y,[]),e["ɵmpd"](1073742336,Ju.c,Ju.c,[]),e["ɵmpd"](1073742336,Xu.d,Xu.d,[]),e["ɵmpd"](1073742336,le.d,le.d,[]),e["ɵmpd"](1073742336,ne.d,ne.d,[]),e["ɵmpd"](1073742336,ae.b,ae.b,[]),e["ɵmpd"](1073742336,sn.e,sn.e,[]),e["ɵmpd"](1073742336,ie.a,ie.a,[]),e["ɵmpd"](1073742336,un.e,un.e,[]),e["ɵmpd"](1073742336,An.f,An.f,[]),e["ɵmpd"](1073742336,oe.ClickOutsideModule,oe.ClickOutsideModule,[]),e["ɵmpd"](1073742336,se.b,se.b,[]),e["ɵmpd"](1073742336,ee.q,ee.q,[[2,ee.v],[2,ee.m]]),e["ɵmpd"](1073742336,de.a,de.a,[]),e["ɵmpd"](1073742336,ue.u,ue.u,[]),e["ɵmpd"](1073742336,re.a,re.a,[]),e["ɵmpd"](1073742336,g.a,g.a,[]),e["ɵmpd"](1073742336,ce.a,ce.a,[]),e["ɵmpd"](1073742336,me.a,me.a,[]),e["ɵmpd"](1073742336,_l.d,_l.d,[]),e["ɵmpd"](1073742336,ll,ll,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,un.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])})),xa=e["ɵcmf"](dl,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[rl.a,cl.a,ml.a,fl.a,fl.b,gl.a,pl.a,vl.a,hl.a,bl.a,Cl.a,Ml,ln,Fn,Wn,fu,Iu,ju,be,qe,qt,Mt,Ra,Na]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,Dl.NgLocalization,Dl.NgLocaleLocalization,[e.LOCALE_ID,[2,Dl["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,Bu.a,Bu.a,[]),e["ɵmpd"](4608,Pu.a,Pu.a,[]),e["ɵmpd"](4608,Ol.a,Ol.a,[wl.a]),e["ɵmpd"](4608,Dl.DatePipe,Dl.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,Au.a,Au.a,[]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,S.a,S.a,[z.a]),e["ɵmpd"](4608,Uu.a,Uu.a,[z.a]),e["ɵmpd"](4608,D.a,D.a,[z.a]),e["ɵmpd"](4608,Mu.a,Mu.a,[]),e["ɵmpd"](4608,Ou.a,Ou.a,[]),e["ɵmpd"](4608,zu.a,zu.a,[]),e["ɵmpd"](4608,Lu.a,Lu.a,[]),e["ɵmpd"](4608,Tl.a,Tl.a,[Dl.DatePipe]),e["ɵmpd"](4608,Gu.a,Gu.a,[]),e["ɵmpd"](4608,Ku.a,Ku.a,[]),e["ɵmpd"](4608,$u.a,$u.a,[]),e["ɵmpd"](4608,Zu.a,Zu.a,[]),e["ɵmpd"](4608,Qu.a,Qu.a,[]),e["ɵmpd"](4608,Wu.a,Wu.a,[wl.a]),e["ɵmpd"](4608,jn.a,jn.a,[]),e["ɵmpd"](4608,an.a,an.a,[]),e["ɵmpd"](4608,Yu.a,Yu.a,[]),e["ɵmpd"](4608,o.D,o.D,[]),e["ɵmpd"](4608,o.h,o.h,[]),e["ɵmpd"](4608,Ju.b,Ju.b,[]),e["ɵmpd"](4608,Xu.a,Xu.a,[]),e["ɵmpd"](4608,Hu.a,Hu.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,en.a,en.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,Hu.a,e.ApplicationRef]),e["ɵmpd"](4608,le.c,le.c,[]),e["ɵmpd"](4608,ne.a,ne.a,[]),e["ɵmpd"](4608,sn.b,sn.b,[e.RendererFactory2,en.a]),e["ɵmpd"](4608,ue.y,ue.y,[Dl.DOCUMENT]),e["ɵmpd"](4608,ue.r,ue.r,[]),e["ɵmpd"](4608,ue.a,ue.a,[]),e["ɵmpd"](4608,un.f,un.f,[]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,a.a,a.a,[ee.m,F.a]),e["ɵmpd"](4608,_l.f,_l.f,[]),e["ɵmpd"](1073742336,Dl.CommonModule,Dl.CommonModule,[]),e["ɵmpd"](1073742336,te.a,te.a,[]),e["ɵmpd"](1073742336,o.C,o.C,[]),e["ɵmpd"](1073742336,o.n,o.n,[]),e["ɵmpd"](1073742336,o.y,o.y,[]),e["ɵmpd"](1073742336,Ju.c,Ju.c,[]),e["ɵmpd"](1073742336,Xu.d,Xu.d,[]),e["ɵmpd"](1073742336,le.d,le.d,[]),e["ɵmpd"](1073742336,ne.d,ne.d,[]),e["ɵmpd"](1073742336,ae.b,ae.b,[]),e["ɵmpd"](1073742336,sn.e,sn.e,[]),e["ɵmpd"](1073742336,ie.a,ie.a,[]),e["ɵmpd"](1073742336,un.e,un.e,[]),e["ɵmpd"](1073742336,An.f,An.f,[]),e["ɵmpd"](1073742336,oe.ClickOutsideModule,oe.ClickOutsideModule,[]),e["ɵmpd"](1073742336,se.b,se.b,[]),e["ɵmpd"](1073742336,ee.q,ee.q,[[2,ee.v],[2,ee.m]]),e["ɵmpd"](1073742336,de.a,de.a,[]),e["ɵmpd"](1073742336,ue.u,ue.u,[]),e["ɵmpd"](1073742336,re.a,re.a,[]),e["ɵmpd"](1073742336,g.a,g.a,[]),e["ɵmpd"](1073742336,ce.a,ce.a,[]),e["ɵmpd"](1073742336,me.a,me.a,[]),e["ɵmpd"](1073742336,_l.d,_l.d,[]),e["ɵmpd"](1073742336,ll,ll,[]),e["ɵmpd"](1073742336,dl,dl,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,un.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](1024,ee.k,(function(){return[[{path:"",redirectTo:"daemon",pathMatch:"full"},{path:"daemon",component:M,data:nl},{path:"user",data:ul,children:[{path:"",component:H},{path:"create",component:Y,data:el},{path:"edit/:uid",component:Y,data:tl}]},{path:"bucket",data:al,children:[{path:"",component:P},{path:"create",component:w,data:il},{path:"edit/:bid",component:w,data:ol}]},{path:"501/:message",component:i,canActivate:[a.a],data:sl}]]}),[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])}))}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/8.a5d6e73e48ae0cf89ca6.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/8.a5d6e73e48ae0cf89ca6.js
deleted file mode 100644 (file)
index 0bc16b0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{DY6s:function(l,n,u){"use strict";u.r(n);var e=u("8Y7J"),o=u("LceX"),a=u("ES0t"),d=u("MdoF"),t=u("Xg1U"),s=u("z5nN"),i=u("iutN"),r=u("pMnS"),c=u("EEJc"),m=u("PEr+"),p=u("a40w"),f=u("hfeG"),v=u("atuK"),g=u("SVse"),h=u("s7LF"),b=u("yT6U"),C=u("4DD9"),R=u("iExv"),w=u("GiVz"),I=u("85J/"),E=u("+0ag"),y=u("aXbf"),N=u("Fgil"),x=u("IzCI"),T=u("o4+5"),k=u("Dwqy"),D=u("uYzU"),S=u("FFMq"),q=u("E2fk"),P=u("a0VL"),F=u("nSDx"),_=u("SB+Q"),V=u("TYzs"),U=u("BQkM"),M=u("dEH0"),L=u("G1/K"),A=u("8xTl"),O=u("TJUb"),j=u("efK2"),B=u("CNMR"),z=u("KOzp"),G=u("2uy1"),Z=u("z/SZ"),K=u("38Bd"),H=u("978R"),X=u("LqlI"),J=u("w9WL"),Y=u("FE24"),Q=u("aexS"),W=u("Avrn"),$=u("iInd"),ll=u("2ZVE"),nl=u("ienR"),ul=u("aHM3"),el=u("9Xeq"),ol=u("hrfs"),al=u("yGOH"),dl=u("+gVj"),tl=u("bxSN"),sl=u("WF9J"),il=u("V/fk"),rl=u("ChqD"),cl=u("pL04"),ml=u("PCNd"),pl=u("pKUh");class fl{constructor(l){this.router=l}ngOnInit(){this.url=this.router.url}navigateTo(l){this.router.navigate([l])}}var vl=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function gl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,pl.b,pl.a)),e["ɵdid"](1,180224,null,0,ll.e,[ll.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,1,"tab",[["heading","Users"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/user-management/users")&&e),e}),null,null)),e["ɵdid"](3,212992,null,0,ll.b,[ll.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵeld"](4,0,null,0,1,"tab",[["heading","Roles"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/user-management/roles")&&e),e}),null,null)),e["ɵdid"](5,212992,null,0,ll.b,[ll.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"})],(function(l,n){var u=n.component;l(n,3,0,"Users","/user-management/users"===u.url),l(n,5,0,"Roles","/user-management/roles"===u.url)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby),l(n,4,0,e["ɵnov"](n,5).id,e["ɵnov"](n,5).active,e["ɵnov"](n,5).addClass,e["ɵnov"](n,5).role,e["ɵnov"](n,5).ariaLabelledby)}))}var hl=u("25BL"),bl=u("uIqm"),Cl=u("NUGo"),Rl=u("S7zO"),wl=u("EgGo"),Il=u("ZEkX"),El=u("Mxhz"),yl=u("9nlD"),Nl=u("sne2"),xl=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Tl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" ",""," "]))],null,(function(l,n){l(n,1,0,n.context.$implicit,n.context.last?"":", ")}))}function kl(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Tl)),e["ɵdid"](1,278528,null,0,g.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,n.context.value)}),null)}function Dl(l){return e["ɵvid"](0,[e["ɵqud"](402653184,1,{userRolesTpl:0}),(l()(),e["ɵeld"](1,0,null,null,1,"cd-user-tabs",[],null,null,null,gl,vl)),e["ɵdid"](2,114688,null,0,fl,[$.m],null,null),(l()(),e["ɵeld"](3,0,null,null,3,"cd-table",[["columnMode","flex"],["identifier","username"],["selectionType","single"]],null,[[null,"fetchData"],[null,"updateSelection"]],(function(l,n,u){var e=!0,o=l.component;return"fetchData"===n&&(e=!1!==o.getUsers()&&e),"updateSelection"===n&&(e=!1!==o.updateSelection(u)&&e),e}),hl.b,hl.a)),e["ɵdid"](4,2867200,null,0,bl.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],identifier:[3,"identifier"],selectionType:[4,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection"}),(l()(),e["ɵeld"](5,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Cl.b,Cl.a)),e["ɵdid"](6,114688,null,0,Rl.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵand"](0,[[1,2],["userRolesTpl",2]],null,0,null,kl))],(function(l,n){var u=n.component;l(n,2,0),l(n,4,0,u.users,u.columns,"flex","username","single"),l(n,6,0,u.permission,u.selection,u.tableActions)}),null)}function Sl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-user-list",[],null,null,null,Dl,xl)),e["ɵprd"](256,null,wl.a,Il.b,[]),e["ɵdid"](2,114688,null,0,Il.a,[El.a,F.a,X.b,yl.a,Q.a,w.a,wl.a,P.a,Nl.b],null,null)],(function(l,n){l(n,2,0)}),null)}var ql=e["ɵccf"]("cd-user-list",Il.a,Sl,{},{},[]),Pl=u("QC43"),Fl=u("XFyV"),_l=u("4HWh"),Vl=u("p4Cf"),Ul=u("mXUL"),Ml=u("ANnk"),Ll=u("f/UV"),Al=u("D4zM"),Ol=u("pYKc"),jl=u("ppaS"),Bl=u("IZUe"),zl=u("gp3X"),Gl=u("sb0X"),Zl=u("KVJa"),Kl=u("Z21x"),Hl=u("V3my"),Xl=u("DSvg"),Jl=u("SgmB"),Yl=u("1nQr"),Ql=u("2EZI"),Wl=u("20UP"),$l=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ln(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,Pl.b,Pl.a)),e["ɵdid"](1,49152,null,0,Fl.a,[],null,null),(l()(),e["ɵted"](-1,0,["Loading..."]))],null,null)}function nn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function un(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The username already exists."]))],null,null)}function en(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-helper",[["class","text-pre-wrap"]],null,null,null,_l.b,_l.a)),e["ɵdid"](1,49152,null,0,Vl.a,[],{class:[0,"class"],html:[1,"html"]},null)],(function(l,n){l(n,1,0,"text-pre-wrap",e["ɵinlineInterpolate"](1,"",n.component.passwordPolicyHelpText,""))}),null)}function on(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function an(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.passwordValuation)}))}function dn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,27,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](1,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,4,{FormControlNames:1}),e["ɵqud"](603979776,5,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","password"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password"])),(l()(),e["ɵand"](16777216,null,null,1,null,en)),e["ɵdid"](8,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](9,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,11,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","password"],["id","password"],["name","password"],["placeholder","Password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var o=!0;return"input"===n&&(o=!1!==e["ɵnov"](l,12)._handleInput(u.target.value)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,12).onTouched()&&o),"compositionstart"===n&&(o=!1!==e["ɵnov"](l,12)._compositionStart()&&o),"compositionend"===n&&(o=!1!==e["ɵnov"](l,12)._compositionEnd(u.target.value)&&o),o}),null,null)),e["ɵdid"](12,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](14,671744,[[4,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](16,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](17,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](18,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](19,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](20,0,null,null,1,"button",[["cdPasswordButton","password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var o=!0;return"click"===n&&(o=!1!==e["ɵnov"](l,21).onClick()&&o),o}),null,null)),e["ɵdid"](21,81920,null,0,Al.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](22,0,null,null,1,"div",[["class","password-strength-level"]],null,null,null,null,null)),(l()(),e["ɵeld"](23,0,null,null,0,"div",[["data-toggle","tooltip"]],[[8,"className",0],[8,"title",0]],null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,on)),e["ɵdid"](25,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,an)),e["ɵdid"](27,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,8,0,u.passwordPolicyHelpText.length>0),l(n,14,0,"password"),l(n,18,0,"password"),l(n,21,0,"password"),l(n,25,0,u.userForm.showError("password",e["ɵnov"](n.parent,2),"required")),l(n,27,0,u.userForm.showError("password",e["ɵnov"](n.parent,2),"passwordPolicy"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,e["ɵnov"](n,16).ngClassUntouched,e["ɵnov"](n,16).ngClassTouched,e["ɵnov"](n,16).ngClassPristine,e["ɵnov"](n,16).ngClassDirty,e["ɵnov"](n,16).ngClassValid,e["ɵnov"](n,16).ngClassInvalid,e["ɵnov"](n,16).ngClassPending,e["ɵnov"](n,18).validClass,e["ɵnov"](n,18).invalidClass),l(n,23,0,e["ɵinlineInterpolate"](1,"",u.passwordStrengthLevelClass,""),e["ɵinlineInterpolate"](1,"",u.passwordValuation,""))}))}function tn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password confirmation doesn't match the password."]))],null,null)}function sn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function rn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](1,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,6,{FormControlNames:1}),e["ɵqud"](603979776,7,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","confirmpassword"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Confirm password"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","confirmpassword"],["id","confirmpassword"],["name","confirmpassword"],["placeholder","Confirm password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var o=!0;return"input"===n&&(o=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,9).onTouched()&&o),"compositionstart"===n&&(o=!1!==e["ɵnov"](l,9)._compositionStart()&&o),"compositionend"===n&&(o=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&o),o}),null,null)),e["ɵdid"](9,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](11,671744,[[6,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](13,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](14,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](15,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](17,0,null,null,1,"button",[["cdPasswordButton","confirmpassword"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var o=!0;return"click"===n&&(o=!1!==e["ɵnov"](l,18).onClick()&&o),o}),null,null)),e["ɵdid"](18,81920,null,0,Al.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,tn)),e["ɵdid"](20,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,sn)),e["ɵdid"](22,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,11,0,"confirmpassword"),l(n,15,0,"confirmpassword"),l(n,18,0,"confirmpassword"),l(n,20,0,u.userForm.showError("confirmpassword",e["ɵnov"](n.parent,2),"match")),l(n,22,0,u.userForm.showError("confirmpassword",e["ɵnov"](n.parent,2),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,8,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,12,"cd-helper",[["class","text-pre-wrap"]],null,null,null,_l.b,_l.a)),e["ɵdid"](1,49152,null,0,Vl.a,[],{class:[0,"class"]},null),(l()(),e["ɵeld"](2,0,null,0,4,"p",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" The Dashboard setting defining the expiration interval of passwords is currently set to "])),(l()(),e["ɵeld"](4,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["0"])),(l()(),e["ɵted"](-1,null,[". This means if a date is set, the user password will only expire once. "])),(l()(),e["ɵeld"](7,0,null,0,5,"p",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" Consider configuring the Dashboard setting "])),(l()(),e["ɵeld"](9,0,null,null,2,"a",[["class","alert-link"],["routerLink","/mgr-modules/edit/dashboard"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(l,n,u){var o=!0;return"click"===n&&(o=!1!==e["ɵnov"](l,10).onClick(u.button,u.ctrlKey,u.metaKey,u.shiftKey)&&o),o}),null,null)),e["ɵdid"](10,671744,null,0,$.p,[$.m,$.a,g.LocationStrategy],{routerLink:[0,"routerLink"]},null),(l()(),e["ɵted"](-1,null,["USER_PWD_EXPIRATION_SPAN"])),(l()(),e["ɵted"](-1,null,[" in order to let passwords expire periodically. "]))],(function(l,n){l(n,1,0,"text-pre-wrap"),l(n,10,0,"/mgr-modules/edit/dashboard")}),(function(l,n){l(n,9,0,e["ɵnov"](n,10).target,e["ɵnov"](n,10).href)}))}function mn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function pn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](1,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,8,{FormControlNames:1}),e["ɵqud"](603979776,9,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,7,"label",[["class","cd-col-form-label"],["for","pwdExpirationDate"]],null,null,null,null,null)),e["ɵprd"](512,null,g["ɵNgClassImpl"],g["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](6,278528,null,0,g.NgClass,[g["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](7,{required:0}),(l()(),e["ɵeld"](8,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password expiration date"])),(l()(),e["ɵand"](16777216,null,null,1,null,cn)),e["ɵdid"](11,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](12,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,16,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](14,16777216,null,null,10,"input",[["bsDatepicker",""],["class","form-control"],["formControlName","pwdExpirationDate"],["id","pwdExpirationDate"],["name","pwdExpirationDate"],["placeholder","Password expiration date..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(l,n,u){var o=!0;return"input"===n&&(o=!1!==e["ɵnov"](l,15)._handleInput(u.target.value)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,15).onTouched()&&o),"compositionstart"===n&&(o=!1!==e["ɵnov"](l,15)._compositionStart()&&o),"compositionend"===n&&(o=!1!==e["ɵnov"](l,15)._compositionEnd(u.target.value)&&o),"change"===n&&(o=!1!==e["ɵnov"](l,17).onChange(u)&&o),"keyup.esc"===n&&(o=!1!==e["ɵnov"](l,17).hide()&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,17).onBlur()&&o),o}),null,null)),e["ɵdid"](15,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵdid"](16,737280,null,0,nl.c,[nl.a,e.ElementRef,e.Renderer2,e.ViewContainerRef,Z.a],{bsConfig:[0,"bsConfig"],minDate:[1,"minDate"]},null),e["ɵdid"](17,16384,null,0,nl.f,[nl.c,nl.l,e.Renderer2,e.ElementRef,e.ChangeDetectorRef],null,null),e["ɵprd"](1024,null,h.o,(function(l){return[l]}),[nl.f]),e["ɵprd"](1024,null,h.p,(function(l,n){return[l,n]}),[h.e,nl.f]),e["ɵdid"](20,671744,[[8,4]],0,h.j,[[3,h.d],[6,h.o],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](22,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](23,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](24,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](25,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](26,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.clearExpirationDate()&&e),e}),null,null)),(l()(),e["ɵeld"](27,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,mn)),e["ɵdid"](29,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0);var o=l(n,7,0,u.pwdExpirationSettings.pwdExpirationSpan>0);l(n,6,0,"cd-col-form-label",o),l(n,11,0,0==u.pwdExpirationSettings.pwdExpirationSpan),l(n,16,0,u.bsConfig,u.minDate),l(n,20,0,"pwdExpirationDate"),l(n,24,0,"pwdExpirationDate"),l(n,29,0,u.userForm.showError("pwdExpirationDate",e["ɵnov"](n.parent,2),"required"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,14,0,e["ɵnov"](n,22).ngClassUntouched,e["ɵnov"](n,22).ngClassTouched,e["ɵnov"](n,22).ngClassPristine,e["ɵnov"](n,22).ngClassDirty,e["ɵnov"](n,22).ngClassValid,e["ɵnov"](n,22).ngClassInvalid,e["ɵnov"](n,22).ngClassPending,e["ɵnov"](n,24).validClass,e["ɵnov"](n,24).invalidClass),l(n,27,0,e["ɵinlineInterpolate"](1,"icon-prepend ",u.icons.destroy,""))}))}function fn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Invalid email."]))],null,null)}function vn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border full-height"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"cd-select-badges",[],null,null,null,Ol.b,Ol.a)),e["ɵdid"](2,49152,null,0,jl.a,[w.a],{data:[0,"data"],options:[1,"options"],messages:[2,"messages"]},null)],(function(l,n){var u=n.component;l(n,2,0,u.userForm.controls.roles.value,u.allRoles,u.messages)}),null)}function gn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](1,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,16,{FormControlNames:1}),e["ɵqud"](603979776,17,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","enabled"],["id","enabled"],["name","enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var o=!0;return"change"===n&&(o=!1!==e["ɵnov"](l,7).onChange(u.target.checked)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,7).onTouched()&&o),o}),null,null)),e["ɵdid"](7,16384,null,0,h.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.c]),e["ɵdid"](9,671744,[[16,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](11,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](12,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"]))],(function(l,n){l(n,1,0),l(n,9,0,"enabled"),l(n,13,0,"enabled")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,11).ngClassUntouched,e["ɵnov"](n,11).ngClassTouched,e["ɵnov"](n,11).ngClassPristine,e["ɵnov"](n,11).ngClassDirty,e["ɵnov"](n,11).ngClassValid,e["ɵnov"](n,11).ngClassInvalid,e["ɵnov"](n,11).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function hn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](1,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,18,{FormControlNames:1}),e["ɵqud"](603979776,19,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","pwdUpdateRequired"],["id","pwdUpdateRequired"],["name","pwdUpdateRequired"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var o=!0;return"change"===n&&(o=!1!==e["ɵnov"](l,7).onChange(u.target.checked)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,7).onTouched()&&o),o}),null,null)),e["ɵdid"](7,16384,null,0,h.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.c]),e["ɵdid"](9,671744,[[18,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](11,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](12,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","pwdUpdateRequired"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User must change password at next logon"]))],(function(l,n){l(n,1,0),l(n,9,0,"pwdUpdateRequired"),l(n,13,0,"pwdUpdateRequired")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,11).ngClassUntouched,e["ɵnov"](n,11).ngClassTouched,e["ɵnov"](n,11).ngClassPristine,e["ɵnov"](n,11).ngClassDirty,e["ɵnov"](n,11).ngClassValid,e["ɵnov"](n,11).ngClassInvalid,e["ɵnov"](n,11).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function bn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,94,"form",[["name","userForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var o=!0;return"submit"===n&&(o=!1!==e["ɵnov"](l,2).onSubmit(u)&&o),"reset"===n&&(o=!1!==e["ɵnov"](l,2).onReset()&&o),"submit"===n&&(o=!1!==e["ɵnov"](l,5).onSubmit()&&o),o}),null,null)),e["ɵdid"](1,16384,null,0,h.G,[],null,null),e["ɵdid"](2,540672,[["formDir",4]],0,h.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,h.d,null,[h.l]),e["ɵdid"](4,16384,null,0,h.s,[[4,h.d]],null,null),e["ɵdid"](5,16384,null,0,dl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](6,0,null,null,88,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](8,null,[""," ",""])),e["ɵppd"](9,1),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,74,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](13,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,2,{FormControlNames:1}),e["ɵqud"](603979776,3,{messagesBlock:0}),(l()(),e["ɵeld"](16,0,null,0,4,"label",[["class","cd-col-form-label"],["for","username"]],null,null,null,null,null)),e["ɵprd"](512,null,g["ɵNgClassImpl"],g["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](18,278528,null,0,g.NgClass,[g["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](19,{required:0}),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](21,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](22,0,null,null,8,"input",[["autocomplete","off"],["autofocus",""],["class","form-control"],["formControlName","username"],["id","username"],["name","username"],["placeholder","Username..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var o=!0;return"input"===n&&(o=!1!==e["ɵnov"](l,23)._handleInput(u.target.value)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,23).onTouched()&&o),"compositionstart"===n&&(o=!1!==e["ɵnov"](l,23)._compositionStart()&&o),"compositionend"===n&&(o=!1!==e["ɵnov"](l,23)._compositionEnd(u.target.value)&&o),o}),null,null)),e["ɵdid"](23,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](25,671744,[[2,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](27,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](28,4210688,null,0,Bl.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](29,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](30,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,nn)),e["ɵdid"](32,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,un)),e["ɵdid"](34,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,dn)),e["ɵdid"](36,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,rn)),e["ɵdid"](38,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,pn)),e["ɵdid"](40,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](41,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](42,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,10,{FormControlNames:1}),e["ɵqud"](603979776,11,{messagesBlock:0}),(l()(),e["ɵeld"](45,0,null,0,1,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Full name"])),(l()(),e["ɵeld"](47,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](48,0,null,null,7,"input",[["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Full name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var o=!0;return"input"===n&&(o=!1!==e["ɵnov"](l,49)._handleInput(u.target.value)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,49).onTouched()&&o),"compositionstart"===n&&(o=!1!==e["ɵnov"](l,49)._compositionStart()&&o),"compositionend"===n&&(o=!1!==e["ɵnov"](l,49)._compositionEnd(u.target.value)&&o),o}),null,null)),e["ɵdid"](49,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](51,671744,[[10,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](53,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](54,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](55,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](56,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](57,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,12,{FormControlNames:1}),e["ɵqud"](603979776,13,{messagesBlock:0}),(l()(),e["ɵeld"](60,0,null,0,1,"label",[["class","cd-col-form-label"],["for","email"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Email"])),(l()(),e["ɵeld"](62,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](63,0,null,null,7,"input",[["class","form-control"],["formControlName","email"],["id","email"],["name","email"],["placeholder","Email..."],["type","email"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var o=!0;return"input"===n&&(o=!1!==e["ɵnov"](l,64)._handleInput(u.target.value)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,64).onTouched()&&o),"compositionstart"===n&&(o=!1!==e["ɵnov"](l,64)._compositionStart()&&o),"compositionend"===n&&(o=!1!==e["ɵnov"](l,64)._compositionEnd(u.target.value)&&o),o}),null,null)),e["ɵdid"](64,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](66,671744,[[12,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](68,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](69,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](70,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,fn)),e["ɵdid"](72,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](73,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](74,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,14,{FormControlNames:1}),e["ɵqud"](603979776,15,{messagesBlock:0}),(l()(),e["ɵeld"](77,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Roles"])),(l()(),e["ɵeld"](79,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,vn)),e["ɵdid"](81,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,gn)),e["ɵdid"](83,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,hn)),e["ɵdid"](85,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](86,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](87,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](88,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),zl.b,zl.a)),e["ɵdid"](89,114688,null,0,Gl.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](90,0,[""," ",""])),e["ɵppd"](91,1),e["ɵppd"](92,1),(l()(),e["ɵeld"](93,0,null,null,1,"cd-back-button",[],null,null,null,Zl.b,Zl.a)),e["ɵdid"](94,49152,null,0,Kl.a,[g.Location,Nl.b],null,null)],(function(l,n){var u=n.component;l(n,2,0,u.userForm),l(n,5,0,u.userForm),l(n,13,0);var o=l(n,19,0,u.mode!==u.userFormMode.editing);l(n,18,0,"cd-col-form-label",o),l(n,25,0,"username"),l(n,28,0,""),l(n,30,0,"username"),l(n,32,0,u.userForm.showError("username",e["ɵnov"](n,2),"required")),l(n,34,0,u.userForm.showError("username",e["ɵnov"](n,2),"notUnique")),l(n,36,0,!u.authStorageService.isSSO()),l(n,38,0,!u.authStorageService.isSSO()),l(n,40,0,!u.authStorageService.isSSO()),l(n,42,0),l(n,51,0,"name"),l(n,55,0,"name"),l(n,57,0),l(n,66,0,"email"),l(n,70,0,"email"),l(n,72,0,u.userForm.showError("email",e["ɵnov"](n,2),"email")),l(n,74,0),l(n,81,0,u.allRoles),l(n,83,0,!u.isCurrentUser()),l(n,85,0,!u.isCurrentUser()&&!u.authStorageService.isSSO()),l(n,89,0,e["ɵnov"](n,2))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,4).ngClassUntouched,e["ɵnov"](n,4).ngClassTouched,e["ɵnov"](n,4).ngClassPristine,e["ɵnov"](n,4).ngClassDirty,e["ɵnov"](n,4).ngClassValid,e["ɵnov"](n,4).ngClassInvalid,e["ɵnov"](n,4).ngClassPending);var o=e["ɵunv"](n,8,0,l(n,9,0,e["ɵnov"](n.parent,0),u.action)),a=e["ɵunv"](n,8,1,l(n,10,0,e["ɵnov"](n.parent,1),u.resource));l(n,8,0,o,a),l(n,12,0,e["ɵnov"](n,13).hasErrors,e["ɵnov"](n,13).hasSuccess),l(n,22,0,e["ɵnov"](n,27).ngClassUntouched,e["ɵnov"](n,27).ngClassTouched,e["ɵnov"](n,27).ngClassPristine,e["ɵnov"](n,27).ngClassDirty,e["ɵnov"](n,27).ngClassValid,e["ɵnov"](n,27).ngClassInvalid,e["ɵnov"](n,27).ngClassPending,e["ɵnov"](n,30).validClass,e["ɵnov"](n,30).invalidClass),l(n,41,0,e["ɵnov"](n,42).hasErrors,e["ɵnov"](n,42).hasSuccess),l(n,48,0,e["ɵnov"](n,53).ngClassUntouched,e["ɵnov"](n,53).ngClassTouched,e["ɵnov"](n,53).ngClassPristine,e["ɵnov"](n,53).ngClassDirty,e["ɵnov"](n,53).ngClassValid,e["ɵnov"](n,53).ngClassInvalid,e["ɵnov"](n,53).ngClassPending,e["ɵnov"](n,55).validClass,e["ɵnov"](n,55).invalidClass),l(n,56,0,e["ɵnov"](n,57).hasErrors,e["ɵnov"](n,57).hasSuccess),l(n,63,0,e["ɵnov"](n,68).ngClassUntouched,e["ɵnov"](n,68).ngClassTouched,e["ɵnov"](n,68).ngClassPristine,e["ɵnov"](n,68).ngClassDirty,e["ɵnov"](n,68).ngClassValid,e["ɵnov"](n,68).ngClassInvalid,e["ɵnov"](n,68).ngClassPending,e["ɵnov"](n,70).validClass,e["ɵnov"](n,70).invalidClass),l(n,73,0,e["ɵnov"](n,74).hasErrors,e["ɵnov"](n,74).hasSuccess);var d=e["ɵunv"](n,90,0,l(n,91,0,e["ɵnov"](n.parent,0),u.action)),t=e["ɵunv"](n,90,1,l(n,92,0,e["ɵnov"](n.parent,1),u.resource));l(n,90,0,d,t)}))}function Cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"p",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,['You are about to remove "user read / update" permissions from your own user.'])),(l()(),e["ɵeld"](3,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,1,"p",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["If you continue, you will no longer be able to add or remove roles from any user."])),(l()(),e["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Are you sure you want to continue?"]))],null,null)}function Rn(l){return e["ɵvid"](0,[e["ɵpid"](0,g.TitleCasePipe,[]),e["ɵpid"](0,A.a,[]),e["ɵqud"](402653184,1,{removeSelfUserReadUpdatePermissionTpl:0}),(l()(),e["ɵand"](16777216,null,null,1,null,ln)),e["ɵdid"](4,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](5,0,null,null,2,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,bn)),e["ɵdid"](7,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,[[1,2],["removeSelfUserReadUpdatePermissionTpl",2]],null,0,null,Cn))],(function(l,n){var u=n.component;l(n,4,0,!u.pwdExpirationSettings),l(n,7,0,u.pwdExpirationSettings)}),null)}function wn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-user-form",[],null,null,null,Rn,$l)),e["ɵdid"](1,114688,null,0,Hl.a,[Xl.a,Q.a,$.a,$.m,X.b,Jl.a,El.a,yl.a,w.a,Nl.b,Yl.a,Ql.a,Wl.a],null,null)],(function(l,n){l(n,1,0)}),null)}var In=e["ɵccf"]("cd-user-form",Hl.a,wn,{},{},[]),En=u("LvDl"),yn=u("x38r");class Nn{constructor(l){this.i18n=l,this.scopes_permissions=[]}ngOnInit(){this.columns=[{prop:"scope",name:this.i18n("Scope"),flexGrow:2},{prop:"read",name:this.i18n("Read"),flexGrow:1,cellClass:"text-center",cellTransformation:yn.a.checkIcon},{prop:"create",name:this.i18n("Create"),flexGrow:1,cellClass:"text-center",cellTransformation:yn.a.checkIcon},{prop:"update",name:this.i18n("Update"),flexGrow:1,cellClass:"text-center",cellTransformation:yn.a.checkIcon},{prop:"delete",name:this.i18n("Delete"),flexGrow:1,cellClass:"text-center",cellTransformation:yn.a.checkIcon}]}ngOnChanges(){if(this.selection){this.selectedItem=this.selection;const l=[];En.each(this.scopes,n=>{const u={read:!1,create:!1,update:!1,delete:!1};u.scope=n,n in this.selectedItem.scopes_permissions&&En.each(this.selectedItem.scopes_permissions[n],l=>{u[l]=!0}),l.push(u)}),this.scopes_permissions=l}}}var xn=e["ɵcrt"]({encapsulation:0,styles:[["thead[_ngcontent-%COMP%]{background-color:#f5f5f5}.fa[_ngcontent-%COMP%]{font-size:large}.fa.fa-square-o[_ngcontent-%COMP%]{color:#d1d1d1}"]],data:{}});function Tn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,pl.b,pl.a)),e["ɵdid"](1,180224,null,0,ll.e,[ll.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,ll.b,[ll.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](4,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,hl.b,hl.a)),e["ɵdid"](5,2867200,null,0,bl.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],toolHeader:[3,"toolHeader"],footer:[4,"footer"],limit:[5,"limit"],autoReload:[6,"autoReload"],autoSave:[7,"autoSave"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Details"),l(n,5,0,u.scopes_permissions,u.columns,"flex",!1,!1,0,!1,!1)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby)}))}function kn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Tn)),e["ɵdid"](1,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,1,0,n.component.selection)}),null)}var Dn=u("n/D3"),Sn=u("ZDA6"),qn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Pn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-user-tabs",[],null,null,null,gl,vl)),e["ɵdid"](1,114688,null,0,fl,[$.m],null,null),(l()(),e["ɵeld"](2,0,null,null,5,"cd-table",[["columnMode","flex"],["identifier","name"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"fetchData"],[null,"updateSelection"]],(function(l,n,u){var e=!0,o=l.component;return"setExpandedRow"===n&&(e=!1!==o.setExpandedRow(u)&&e),"fetchData"===n&&(e=!1!==o.getRoles()&&e),"updateSelection"===n&&(e=!1!==o.updateSelection(u)&&e),e}),hl.b,hl.a)),e["ɵdid"](3,2867200,null,0,bl.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],selectionType:[5,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Cl.b,Cl.a)),e["ɵdid"](5,114688,null,0,Rl.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](6,0,null,3,1,"cd-role-details",[["cdTableDetail",""]],null,null,null,kn,xn)),e["ɵdid"](7,638976,null,0,Nn,[w.a],{selection:[0,"selection"],scopes:[1,"scopes"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,3,0,u.roles,u.columns,"flex",!0,"name","single"),l(n,5,0,u.permission,u.selection,u.tableActions),l(n,7,0,u.expandedRow,u.scopes)}),null)}function Fn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-role-list",[],null,null,null,Pn,qn)),e["ɵprd"](256,null,wl.a,Dn.b,[]),e["ɵdid"](2,114688,null,0,Dn.a,[Jl.a,Sn.a,F.a,Q.a,X.b,yl.a,w.a,wl.a,Nl.b],null,null)],(function(l,n){l(n,2,0)}),null)}var _n=e["ɵccf"]("cd-role-list",Dn.a,Fn,{},{},[]),Vn=u("eTJe"),Un=e["ɵcrt"]({encapsulation:0,styles:[[".datatable-permissions-header-cell-label[_ngcontent-%COMP%], .datatable-permissions-scope-cell-label[_ngcontent-%COMP%]{font-weight:700}"]],data:{}});function Mn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function Ln(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen name is already in use."]))],null,null)}function An(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"checked",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(l,n,u){var e=!0;return"change"===n&&(e=!1!==l.component.onClickCellCheckbox(l.context.row.scope,l.context.column.prop,u)&&e),e}),null,null)),e["ɵdid"](2,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,dl.h,[[8,null],dl.a],null,null),(l()(),e["ɵeld"](4,0,null,null,1,"label",[["class","datatable-permissions-scope-cell-label custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),e["ɵted"](5,null,["",""]))],null,(function(l,n){var u=n.component;l(n,1,0,e["ɵinlineInterpolate"](1,"scope_",n.context.row.scope,""),u.isRowChecked(n.context.row.scope),e["ɵnov"](n,3).validClass,e["ɵnov"](n,3).invalidClass),l(n,4,0,e["ɵinlineInterpolate"](1,"scope_",n.context.row.scope,"")),l(n,5,0,n.context.value)}))}function On(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"checked",0],[8,"id",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(l,n,u){var e=!0;return"change"===n&&(e=!1!==l.component.onClickCellCheckbox(l.context.row.scope,l.context.column.prop,u)&&e),e}),null,null)),e["ɵdid"](2,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,dl.h,[[8,null],dl.a],null,null),(l()(),e["ɵeld"](4,0,null,null,0,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null))],null,(function(l,n){l(n,1,0,n.context.value,n.context.row.scope+"-"+n.context.column.prop,e["ɵnov"](n,3).validClass,e["ɵnov"](n,3).invalidClass),l(n,4,0,n.context.row.scope+"-"+n.context.column.prop)}))}function jn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"checked",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(l,n,u){var e=!0;return"change"===n&&(e=!1!==l.component.onClickHeaderCheckbox(l.context.column.prop,u)&&e),e}),null,null)),e["ɵdid"](2,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,dl.h,[[8,null],dl.a],null,null),(l()(),e["ɵeld"](4,0,null,null,1,"label",[["class","datatable-permissions-header-cell-label custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),e["ɵted"](5,null,["",""]))],null,(function(l,n){var u=n.component;l(n,1,0,e["ɵinlineInterpolate"](1,"header_",n.context.column.prop,""),u.isHeaderChecked(n.context.column.prop),e["ɵnov"](n,3).validClass,e["ɵnov"](n,3).invalidClass),l(n,4,0,e["ɵinlineInterpolate"](1,"header_",n.context.column.prop,"")),l(n,5,0,n.context.column.name)}))}function Bn(l){return e["ɵvid"](0,[e["ɵpid"](0,g.TitleCasePipe,[]),e["ɵpid"](0,A.a,[]),e["ɵqud"](402653184,1,{headerPermissionCheckboxTpl:0}),e["ɵqud"](402653184,2,{cellScopeCheckboxTpl:0}),e["ɵqud"](402653184,3,{cellPermissionCheckboxTpl:0}),(l()(),e["ɵeld"](5,0,null,null,68,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,67,"form",[["name","roleForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var o=!0;return"submit"===n&&(o=!1!==e["ɵnov"](l,8).onSubmit(u)&&o),"reset"===n&&(o=!1!==e["ɵnov"](l,8).onReset()&&o),"submit"===n&&(o=!1!==e["ɵnov"](l,11).onSubmit()&&o),o}),null,null)),e["ɵdid"](7,16384,null,0,h.G,[],null,null),e["ɵdid"](8,540672,[["formDir",4]],0,h.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,h.d,null,[h.l]),e["ɵdid"](10,16384,null,0,h.s,[[4,h.d]],null,null),e["ɵdid"](11,16384,null,0,dl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](12,0,null,null,61,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](14,null,[""," ",""])),e["ɵppd"](15,1),e["ɵppd"](16,1),(l()(),e["ɵeld"](17,0,null,null,47,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](18,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](19,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,4,{FormControlNames:1}),e["ɵqud"](603979776,5,{messagesBlock:0}),(l()(),e["ɵeld"](22,0,null,0,4,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),e["ɵprd"](512,null,g["ɵNgClassImpl"],g["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](24,278528,null,0,g.NgClass,[g["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](25,{required:0}),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](27,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](28,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var o=!0;return"input"===n&&(o=!1!==e["ɵnov"](l,29)._handleInput(u.target.value)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,29).onTouched()&&o),"compositionstart"===n&&(o=!1!==e["ɵnov"](l,29)._compositionStart()&&o),"compositionend"===n&&(o=!1!==e["ɵnov"](l,29)._compositionEnd(u.target.value)&&o),o}),null,null)),e["ɵdid"](29,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](31,671744,[[4,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](33,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](34,4210688,null,0,Bl.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](35,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](36,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Mn)),e["ɵdid"](38,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Ln)),e["ɵdid"](40,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](41,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](42,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,6,{FormControlNames:1}),e["ɵqud"](603979776,7,{messagesBlock:0}),(l()(),e["ɵeld"](45,0,null,0,1,"label",[["class","cd-col-form-label"],["for","description"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Description"])),(l()(),e["ɵeld"](47,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](48,0,null,null,7,"input",[["class","form-control"],["formControlName","description"],["id","description"],["name","description"],["placeholder","Description..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var o=!0;return"input"===n&&(o=!1!==e["ɵnov"](l,49)._handleInput(u.target.value)&&o),"blur"===n&&(o=!1!==e["ɵnov"](l,49).onTouched()&&o),"compositionstart"===n&&(o=!1!==e["ɵnov"](l,49)._compositionStart()&&o),"compositionend"===n&&(o=!1!==e["ɵnov"](l,49)._compositionEnd(u.target.value)&&o),o}),null,null)),e["ɵdid"](49,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](51,671744,[[6,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](53,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](54,4210688,null,0,Ml.a,[[2,Ll.a],Q.a,e.ElementRef],null,null),e["ɵdid"](55,16384,null,0,dl.h,[[3,h.d],dl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](56,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ul.b,Ul.a)),e["ɵdid"](57,1163264,null,2,dl.c,[e.ElementRef,dl.g],null,null),e["ɵqud"](603979776,8,{FormControlNames:1}),e["ɵqud"](603979776,9,{messagesBlock:0}),(l()(),e["ɵeld"](60,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Permissions"])),(l()(),e["ɵeld"](62,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](63,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,hl.b,hl.a)),e["ɵdid"](64,2867200,null,0,bl.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],toolHeader:[3,"toolHeader"],footer:[4,"footer"],limit:[5,"limit"],autoReload:[6,"autoReload"],autoSave:[7,"autoSave"]},null),(l()(),e["ɵeld"](65,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](66,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](67,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),zl.b,zl.a)),e["ɵdid"](68,114688,null,0,Gl.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](69,0,[""," ",""])),e["ɵppd"](70,1),e["ɵppd"](71,1),(l()(),e["ɵeld"](72,0,null,null,1,"cd-back-button",[],null,null,null,Zl.b,Zl.a)),e["ɵdid"](73,49152,null,0,Kl.a,[g.Location,Nl.b],null,null),(l()(),e["ɵand"](0,[[2,2],["cellScopeCheckboxTpl",2]],null,0,null,An)),(l()(),e["ɵand"](0,[[3,2],["cellPermissionCheckboxTpl",2]],null,0,null,On)),(l()(),e["ɵand"](0,[[1,2],["headerPermissionCheckboxTpl",2]],null,0,null,jn))],(function(l,n){var u=n.component;l(n,8,0,u.roleForm),l(n,11,0,u.roleForm),l(n,19,0);var o=l(n,25,0,u.mode!==u.roleFormMode.editing);l(n,24,0,"cd-col-form-label",o),l(n,31,0,"name"),l(n,34,0,""),l(n,36,0,"name"),l(n,38,0,u.roleForm.showError("name",e["ɵnov"](n,8),"required")),l(n,40,0,u.roleForm.showError("name",e["ɵnov"](n,8),"notUnique")),l(n,42,0),l(n,51,0,"description"),l(n,55,0,"description"),l(n,57,0),l(n,64,0,u.scopes_permissions,u.columns,"flex",!1,!1,0,!1,!1),l(n,68,0,e["ɵnov"](n,8))}),(function(l,n){var u=n.component;l(n,6,0,e["ɵnov"](n,10).ngClassUntouched,e["ɵnov"](n,10).ngClassTouched,e["ɵnov"](n,10).ngClassPristine,e["ɵnov"](n,10).ngClassDirty,e["ɵnov"](n,10).ngClassValid,e["ɵnov"](n,10).ngClassInvalid,e["ɵnov"](n,10).ngClassPending);var o=e["ɵunv"](n,14,0,l(n,15,0,e["ɵnov"](n,0),u.action)),a=e["ɵunv"](n,14,1,l(n,16,0,e["ɵnov"](n,1),u.resource));l(n,14,0,o,a),l(n,18,0,e["ɵnov"](n,19).hasErrors,e["ɵnov"](n,19).hasSuccess),l(n,28,0,e["ɵnov"](n,33).ngClassUntouched,e["ɵnov"](n,33).ngClassTouched,e["ɵnov"](n,33).ngClassPristine,e["ɵnov"](n,33).ngClassDirty,e["ɵnov"](n,33).ngClassValid,e["ɵnov"](n,33).ngClassInvalid,e["ɵnov"](n,33).ngClassPending,e["ɵnov"](n,36).validClass,e["ɵnov"](n,36).invalidClass),l(n,41,0,e["ɵnov"](n,42).hasErrors,e["ɵnov"](n,42).hasSuccess),l(n,48,0,e["ɵnov"](n,53).ngClassUntouched,e["ɵnov"](n,53).ngClassTouched,e["ɵnov"](n,53).ngClassPristine,e["ɵnov"](n,53).ngClassDirty,e["ɵnov"](n,53).ngClassValid,e["ɵnov"](n,53).ngClassInvalid,e["ɵnov"](n,53).ngClassPending,e["ɵnov"](n,55).validClass,e["ɵnov"](n,55).invalidClass),l(n,56,0,e["ɵnov"](n,57).hasErrors,e["ɵnov"](n,57).hasSuccess);var d=e["ɵunv"](n,69,0,l(n,70,0,e["ɵnov"](n,0),u.action)),t=e["ɵunv"](n,69,1,l(n,71,0,e["ɵnov"](n,1),u.resource));l(n,69,0,d,t)}))}function zn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-role-form",[],null,null,null,Bn,Un)),e["ɵdid"](1,114688,null,0,Vn.a,[$.a,$.m,Jl.a,Sn.a,yl.a,w.a,Nl.b],null,null)],(function(l,n){l(n,1,0)}),null)}var Gn=e["ɵccf"]("cd-role-form",Vn.a,zn,{},{},[]);u.d(n,"AuthModuleNgFactory",(function(){return Zn})),u.d(n,"RoutedAuthModuleNgFactory",(function(){return Kn}));var Zn=e["ɵcmf"](o.a,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[a.a,d.a,t.a,s.a,s.b,i.a,r.a,c.a,m.a,p.a,f.a,v.a,v.c,v.b,v.d]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,g.NgLocalization,g.NgLocaleLocalization,[e.LOCALE_ID,[2,g["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,h.D,h.D,[]),e["ɵmpd"](4608,h.h,h.h,[]),e["ɵmpd"](4608,b.a,b.a,[]),e["ɵmpd"](4608,C.a,C.a,[]),e["ɵmpd"](4608,R.a,R.a,[w.a]),e["ɵmpd"](4608,g.DatePipe,g.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,I.a,I.a,[]),e["ɵmpd"](4608,E.a,E.a,[]),e["ɵmpd"](4608,y.a,y.a,[]),e["ɵmpd"](4608,N.a,N.a,[y.a]),e["ɵmpd"](4608,x.a,x.a,[y.a]),e["ɵmpd"](4608,T.a,T.a,[y.a]),e["ɵmpd"](4608,k.a,k.a,[]),e["ɵmpd"](4608,D.a,D.a,[]),e["ɵmpd"](4608,S.a,S.a,[]),e["ɵmpd"](4608,q.a,q.a,[]),e["ɵmpd"](4608,P.a,P.a,[g.DatePipe]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,_.a,_.a,[]),e["ɵmpd"](4608,V.a,V.a,[]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,M.a,M.a,[]),e["ɵmpd"](4608,L.a,L.a,[w.a]),e["ɵmpd"](4608,A.a,A.a,[]),e["ɵmpd"](4608,O.a,O.a,[]),e["ɵmpd"](4608,j.a,j.a,[]),e["ɵmpd"](4608,B.b,B.b,[]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,G.a,G.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,Z.a,Z.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,G.a,e.ApplicationRef]),e["ɵmpd"](4608,K.c,K.c,[]),e["ɵmpd"](4608,H.a,H.a,[]),e["ɵmpd"](4608,X.b,X.b,[e.RendererFactory2,Z.a]),e["ɵmpd"](4608,J.y,J.y,[g.DOCUMENT]),e["ɵmpd"](4608,J.r,J.r,[]),e["ɵmpd"](4608,J.a,J.a,[]),e["ɵmpd"](4608,Y.f,Y.f,[]),e["ɵmpd"](4608,Q.a,Q.a,[]),e["ɵmpd"](4608,W.a,W.a,[$.m,Q.a]),e["ɵmpd"](4608,ll.f,ll.f,[]),e["ɵmpd"](4608,nl.t,nl.t,[]),e["ɵmpd"](4608,nl.v,nl.v,[]),e["ɵmpd"](4608,nl.a,nl.a,[]),e["ɵmpd"](4608,nl.h,nl.h,[]),e["ɵmpd"](4608,nl.d,nl.d,[]),e["ɵmpd"](4608,nl.j,nl.j,[]),e["ɵmpd"](4608,nl.l,nl.l,[]),e["ɵmpd"](4608,nl.u,nl.u,[nl.v,nl.l]),e["ɵmpd"](1073742336,ul.a,ul.a,[]),e["ɵmpd"](1073742336,g.CommonModule,g.CommonModule,[]),e["ɵmpd"](1073742336,h.C,h.C,[]),e["ɵmpd"](1073742336,h.n,h.n,[]),e["ɵmpd"](1073742336,z.d,z.d,[]),e["ɵmpd"](1073742336,h.y,h.y,[]),e["ɵmpd"](1073742336,el.a,el.a,[]),e["ɵmpd"](1073742336,B.c,B.c,[]),e["ɵmpd"](1073742336,K.d,K.d,[]),e["ɵmpd"](1073742336,H.d,H.d,[]),e["ɵmpd"](1073742336,ol.b,ol.b,[]),e["ɵmpd"](1073742336,X.e,X.e,[]),e["ɵmpd"](1073742336,al.a,al.a,[]),e["ɵmpd"](1073742336,Y.e,Y.e,[]),e["ɵmpd"](1073742336,dl.f,dl.f,[]),e["ɵmpd"](1073742336,tl.ClickOutsideModule,tl.ClickOutsideModule,[]),e["ɵmpd"](1073742336,sl.b,sl.b,[]),e["ɵmpd"](1073742336,$.q,$.q,[[2,$.v],[2,$.m]]),e["ɵmpd"](1073742336,il.a,il.a,[]),e["ɵmpd"](1073742336,J.u,J.u,[]),e["ɵmpd"](1073742336,rl.a,rl.a,[]),e["ɵmpd"](1073742336,cl.a,cl.a,[]),e["ɵmpd"](1073742336,ml.a,ml.a,[]),e["ɵmpd"](1073742336,ll.d,ll.d,[]),e["ɵmpd"](1073742336,nl.g,nl.g,[]),e["ɵmpd"](1073742336,o.a,o.a,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,Y.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])})),Kn=e["ɵcmf"](o.b,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[a.a,d.a,t.a,s.a,s.b,i.a,r.a,c.a,m.a,p.a,f.a,v.a,v.c,v.b,v.d,ql,In,_n,Gn]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,g.NgLocalization,g.NgLocaleLocalization,[e.LOCALE_ID,[2,g["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,h.D,h.D,[]),e["ɵmpd"](4608,h.h,h.h,[]),e["ɵmpd"](4608,b.a,b.a,[]),e["ɵmpd"](4608,C.a,C.a,[]),e["ɵmpd"](4608,R.a,R.a,[w.a]),e["ɵmpd"](4608,g.DatePipe,g.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,I.a,I.a,[]),e["ɵmpd"](4608,E.a,E.a,[]),e["ɵmpd"](4608,y.a,y.a,[]),e["ɵmpd"](4608,N.a,N.a,[y.a]),e["ɵmpd"](4608,x.a,x.a,[y.a]),e["ɵmpd"](4608,T.a,T.a,[y.a]),e["ɵmpd"](4608,k.a,k.a,[]),e["ɵmpd"](4608,D.a,D.a,[]),e["ɵmpd"](4608,S.a,S.a,[]),e["ɵmpd"](4608,q.a,q.a,[]),e["ɵmpd"](4608,P.a,P.a,[g.DatePipe]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,_.a,_.a,[]),e["ɵmpd"](4608,V.a,V.a,[]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,M.a,M.a,[]),e["ɵmpd"](4608,L.a,L.a,[w.a]),e["ɵmpd"](4608,A.a,A.a,[]),e["ɵmpd"](4608,O.a,O.a,[]),e["ɵmpd"](4608,j.a,j.a,[]),e["ɵmpd"](4608,B.b,B.b,[]),e["ɵmpd"](4608,z.a,z.a,[]),e["ɵmpd"](4608,G.a,G.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,Z.a,Z.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,G.a,e.ApplicationRef]),e["ɵmpd"](4608,K.c,K.c,[]),e["ɵmpd"](4608,H.a,H.a,[]),e["ɵmpd"](4608,X.b,X.b,[e.RendererFactory2,Z.a]),e["ɵmpd"](4608,J.y,J.y,[g.DOCUMENT]),e["ɵmpd"](4608,J.r,J.r,[]),e["ɵmpd"](4608,J.a,J.a,[]),e["ɵmpd"](4608,Y.f,Y.f,[]),e["ɵmpd"](4608,Q.a,Q.a,[]),e["ɵmpd"](4608,W.a,W.a,[$.m,Q.a]),e["ɵmpd"](4608,ll.f,ll.f,[]),e["ɵmpd"](4608,nl.t,nl.t,[]),e["ɵmpd"](4608,nl.v,nl.v,[]),e["ɵmpd"](4608,nl.a,nl.a,[]),e["ɵmpd"](4608,nl.h,nl.h,[]),e["ɵmpd"](4608,nl.d,nl.d,[]),e["ɵmpd"](4608,nl.j,nl.j,[]),e["ɵmpd"](4608,nl.l,nl.l,[]),e["ɵmpd"](4608,nl.u,nl.u,[nl.v,nl.l]),e["ɵmpd"](1073742336,ul.a,ul.a,[]),e["ɵmpd"](1073742336,g.CommonModule,g.CommonModule,[]),e["ɵmpd"](1073742336,h.C,h.C,[]),e["ɵmpd"](1073742336,h.n,h.n,[]),e["ɵmpd"](1073742336,z.d,z.d,[]),e["ɵmpd"](1073742336,h.y,h.y,[]),e["ɵmpd"](1073742336,el.a,el.a,[]),e["ɵmpd"](1073742336,B.c,B.c,[]),e["ɵmpd"](1073742336,K.d,K.d,[]),e["ɵmpd"](1073742336,H.d,H.d,[]),e["ɵmpd"](1073742336,ol.b,ol.b,[]),e["ɵmpd"](1073742336,X.e,X.e,[]),e["ɵmpd"](1073742336,al.a,al.a,[]),e["ɵmpd"](1073742336,Y.e,Y.e,[]),e["ɵmpd"](1073742336,dl.f,dl.f,[]),e["ɵmpd"](1073742336,tl.ClickOutsideModule,tl.ClickOutsideModule,[]),e["ɵmpd"](1073742336,sl.b,sl.b,[]),e["ɵmpd"](1073742336,$.q,$.q,[[2,$.v],[2,$.m]]),e["ɵmpd"](1073742336,il.a,il.a,[]),e["ɵmpd"](1073742336,J.u,J.u,[]),e["ɵmpd"](1073742336,rl.a,rl.a,[]),e["ɵmpd"](1073742336,cl.a,cl.a,[]),e["ɵmpd"](1073742336,ml.a,ml.a,[]),e["ɵmpd"](1073742336,ll.d,ll.d,[]),e["ɵmpd"](1073742336,nl.g,nl.g,[]),e["ɵmpd"](1073742336,o.a,o.a,[]),e["ɵmpd"](1073742336,o.b,o.b,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,Y.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](1024,$.k,(function(){return[[{path:"",redirectTo:"users",pathMatch:"full"},{path:"users",data:o.c,children:[{path:"",component:Il.a},{path:"create",component:Hl.a,data:o.d},{path:"edit/:username",component:Hl.a,data:o.e}]},{path:"roles",data:o.f,children:[{path:"",component:Dn.a},{path:"create",component:Vn.a,data:o.g},{path:"edit/:name",component:Vn.a,data:o.h}]}]]}),[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])}))}}]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/8.d45d4eb6e6f206518908.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/8.d45d4eb6e6f206518908.js
new file mode 100644 (file)
index 0000000..531d0da
--- /dev/null
@@ -0,0 +1 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{DY6s:function(l,n,u){"use strict";u.r(n);var e=u("8Y7J"),a=u("LceX"),o=u("ES0t"),d=u("MdoF"),t=u("Xg1U"),s=u("z5nN"),i=u("iutN"),r=u("pMnS"),c=u("EEJc"),m=u("PEr+"),p=u("a40w"),f=u("hfeG"),v=u("atuK"),g=u("SVse"),h=u("s7LF"),b=u("yT6U"),C=u("4DD9"),R=u("iExv"),w=u("GiVz"),I=u("85J/"),E=u("+0ag"),y=u("aXbf"),N=u("Fgil"),x=u("IzCI"),T=u("o4+5"),k=u("Dwqy"),D=u("uYzU"),S=u("FFMq"),q=u("E2fk"),P=u("a0VL"),F=u("nSDx"),_=u("SB+Q"),V=u("TYzs"),U=u("BQkM"),M=u("dEH0"),L=u("G1/K"),A=u("8xTl"),O=u("TJUb"),j=u("efK2"),B=u("Yrry"),z=u("cUpR"),G=u("CNMR"),Z=u("KOzp"),K=u("2uy1"),H=u("z/SZ"),X=u("38Bd"),J=u("978R"),Y=u("LqlI"),Q=u("w9WL"),W=u("FE24"),$=u("aexS"),ll=u("Avrn"),nl=u("iInd"),ul=u("2ZVE"),el=u("ienR"),al=u("aHM3"),ol=u("9Xeq"),dl=u("hrfs"),tl=u("yGOH"),sl=u("+gVj"),il=u("bxSN"),rl=u("WF9J"),cl=u("V/fk"),ml=u("ChqD"),pl=u("pL04"),fl=u("PCNd"),vl=u("pKUh");class gl{constructor(l){this.router=l}ngOnInit(){this.url=this.router.url}navigateTo(l){this.router.navigate([l])}}var hl=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function bl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,vl.b,vl.a)),e["ɵdid"](1,180224,null,0,ul.e,[ul.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,1,"tab",[["heading","Users"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/user-management/users")&&e),e}),null,null)),e["ɵdid"](3,212992,null,0,ul.b,[ul.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"}),(l()(),e["ɵeld"](4,0,null,0,1,"tab",[["heading","Roles"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(l,n,u){var e=!0;return"selectTab"===n&&(e=!1!==l.component.navigateTo("/user-management/roles")&&e),e}),null,null)),e["ɵdid"](5,212992,null,0,ul.b,[ul.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"],active:[1,"active"]},{selectTab:"selectTab"})],(function(l,n){var u=n.component;l(n,3,0,"Users","/user-management/users"===u.url),l(n,5,0,"Roles","/user-management/roles"===u.url)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby),l(n,4,0,e["ɵnov"](n,5).id,e["ɵnov"](n,5).active,e["ɵnov"](n,5).addClass,e["ɵnov"](n,5).role,e["ɵnov"](n,5).ariaLabelledby)}))}var Cl=u("25BL"),Rl=u("uIqm"),wl=u("NUGo"),Il=u("S7zO"),El=u("EgGo"),yl=u("ZEkX"),Nl=u("Mxhz"),xl=u("9nlD"),Tl=u("sne2"),kl=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Dl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" ",""," "]))],null,(function(l,n){l(n,1,0,n.context.$implicit,n.context.last?"":", ")}))}function Sl(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Dl)),e["ɵdid"](1,278528,null,0,g.NgForOf,[e.ViewContainerRef,e.TemplateRef,e.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(l()(),e["ɵand"](0,null,null,0))],(function(l,n){l(n,1,0,n.context.value)}),null)}function ql(l){return e["ɵvid"](0,[e["ɵqud"](402653184,1,{userRolesTpl:0}),(l()(),e["ɵeld"](1,0,null,null,1,"cd-user-tabs",[],null,null,null,bl,hl)),e["ɵdid"](2,114688,null,0,gl,[nl.m],null,null),(l()(),e["ɵeld"](3,0,null,null,3,"cd-table",[["columnMode","flex"],["identifier","username"],["selectionType","single"]],null,[[null,"fetchData"],[null,"updateSelection"]],(function(l,n,u){var e=!0,a=l.component;return"fetchData"===n&&(e=!1!==a.getUsers()&&e),"updateSelection"===n&&(e=!1!==a.updateSelection(u)&&e),e}),Cl.b,Cl.a)),e["ɵdid"](4,2867200,null,0,Rl.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],identifier:[3,"identifier"],selectionType:[4,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection"}),(l()(),e["ɵeld"](5,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,wl.b,wl.a)),e["ɵdid"](6,114688,null,0,Il.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵand"](0,[[1,2],["userRolesTpl",2]],null,0,null,Sl))],(function(l,n){var u=n.component;l(n,2,0),l(n,4,0,u.users,u.columns,"flex","username","single"),l(n,6,0,u.permission,u.selection,u.tableActions)}),null)}function Pl(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-user-list",[],null,null,null,ql,kl)),e["ɵprd"](256,null,El.a,yl.b,[]),e["ɵdid"](2,114688,null,0,yl.a,[Nl.a,F.a,Y.b,xl.a,$.a,w.a,El.a,P.a,Tl.b],null,null)],(function(l,n){l(n,2,0)}),null)}var Fl=e["ɵccf"]("cd-user-list",yl.a,Pl,{},{},[]),_l=u("QC43"),Vl=u("XFyV"),Ul=u("4HWh"),Ml=u("p4Cf"),Ll=u("mXUL"),Al=u("ANnk"),Ol=u("f/UV"),jl=u("D4zM"),Bl=u("pYKc"),zl=u("ppaS"),Gl=u("IZUe"),Zl=u("gp3X"),Kl=u("sb0X"),Hl=u("KVJa"),Xl=u("Z21x"),Jl=u("V3my"),Yl=u("DSvg"),Ql=u("SgmB"),Wl=u("1nQr"),$l=u("2EZI"),ln=u("20UP"),nn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function un(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,_l.b,_l.a)),e["ɵdid"](1,49152,null,0,Vl.a,[],null,null),(l()(),e["ɵted"](-1,0,["Loading..."]))],null,null)}function en(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function an(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The username already exists."]))],null,null)}function on(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-helper",[["class","text-pre-wrap"]],null,null,null,Ul.b,Ul.a)),e["ɵdid"](1,49152,null,0,Ml.a,[],{class:[0,"class"],html:[1,"html"]},null)],(function(l,n){l(n,1,0,"text-pre-wrap",e["ɵinlineInterpolate"](1,"",n.component.passwordPolicyHelpText,""))}),null)}function dn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function tn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](1,null,[" "," "]))],null,(function(l,n){l(n,1,0,n.component.passwordValuation)}))}function sn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,27,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](1,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,4,{FormControlNames:1}),e["ɵqud"](603979776,5,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","password"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password"])),(l()(),e["ɵand"](16777216,null,null,1,null,on)),e["ɵdid"](8,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](9,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](10,0,null,null,11,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](11,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","password"],["id","password"],["name","password"],["placeholder","Password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,12)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,12).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,12)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,12)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](12,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](14,671744,[[4,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](16,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](17,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](18,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](19,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](20,0,null,null,1,"button",[["cdPasswordButton","password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,21).onClick()&&a),a}),null,null)),e["ɵdid"](21,81920,null,0,jl.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵeld"](22,0,null,null,1,"div",[["class","password-strength-level"]],null,null,null,null,null)),(l()(),e["ɵeld"](23,0,null,null,0,"div",[["data-toggle","tooltip"]],[[8,"className",0],[8,"title",0]],null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,dn)),e["ɵdid"](25,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,tn)),e["ɵdid"](27,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,8,0,u.passwordPolicyHelpText.length>0),l(n,14,0,"password"),l(n,18,0,"password"),l(n,21,0,"password"),l(n,25,0,u.userForm.showError("password",e["ɵnov"](n.parent,2),"required")),l(n,27,0,u.userForm.showError("password",e["ɵnov"](n.parent,2),"passwordPolicy"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,11,0,e["ɵnov"](n,16).ngClassUntouched,e["ɵnov"](n,16).ngClassTouched,e["ɵnov"](n,16).ngClassPristine,e["ɵnov"](n,16).ngClassDirty,e["ɵnov"](n,16).ngClassValid,e["ɵnov"](n,16).ngClassInvalid,e["ɵnov"](n,16).ngClassPending,e["ɵnov"](n,18).validClass,e["ɵnov"](n,18).invalidClass),l(n,23,0,e["ɵinlineInterpolate"](1,"",u.passwordStrengthLevelClass,""),e["ɵinlineInterpolate"](1,"",u.passwordValuation,""))}))}function rn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password confirmation doesn't match the password."]))],null,null)}function cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function mn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](1,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,6,{FormControlNames:1}),e["ɵqud"](603979776,7,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","confirmpassword"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Confirm password"])),(l()(),e["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,13,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](8,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","confirmpassword"],["id","confirmpassword"],["name","confirmpassword"],["placeholder","Confirm password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,9)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,9).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,9)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,9)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](9,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](11,671744,[[6,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](13,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](14,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](15,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](16,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](17,0,null,null,1,"button",[["cdPasswordButton","confirmpassword"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,18).onClick()&&a),a}),null,null)),e["ɵdid"](18,81920,null,0,jl.a,[e.ElementRef,e.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,rn)),e["ɵdid"](20,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,cn)),e["ɵdid"](22,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,11,0,"confirmpassword"),l(n,15,0,"confirmpassword"),l(n,18,0,"confirmpassword"),l(n,20,0,u.userForm.showError("confirmpassword",e["ɵnov"](n.parent,2),"match")),l(n,22,0,u.userForm.showError("confirmpassword",e["ɵnov"](n.parent,2),"required"))}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,8,0,e["ɵnov"](n,13).ngClassUntouched,e["ɵnov"](n,13).ngClassTouched,e["ɵnov"](n,13).ngClassPristine,e["ɵnov"](n,13).ngClassDirty,e["ɵnov"](n,13).ngClassValid,e["ɵnov"](n,13).ngClassInvalid,e["ɵnov"](n,13).ngClassPending,e["ɵnov"](n,15).validClass,e["ɵnov"](n,15).invalidClass)}))}function pn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,12,"cd-helper",[["class","text-pre-wrap"]],null,null,null,Ul.b,Ul.a)),e["ɵdid"](1,49152,null,0,Ml.a,[],{class:[0,"class"]},null),(l()(),e["ɵeld"](2,0,null,0,4,"p",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" The Dashboard setting defining the expiration interval of passwords is currently set to "])),(l()(),e["ɵeld"](4,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["0"])),(l()(),e["ɵted"](-1,null,[". This means if a date is set, the user password will only expire once. "])),(l()(),e["ɵeld"](7,0,null,0,5,"p",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,[" Consider configuring the Dashboard setting "])),(l()(),e["ɵeld"](9,0,null,null,2,"a",[["class","alert-link"],["routerLink","/mgr-modules/edit/dashboard"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(l,n,u){var a=!0;return"click"===n&&(a=!1!==e["ɵnov"](l,10).onClick(u.button,u.ctrlKey,u.metaKey,u.shiftKey)&&a),a}),null,null)),e["ɵdid"](10,671744,null,0,nl.p,[nl.m,nl.a,g.LocationStrategy],{routerLink:[0,"routerLink"]},null),(l()(),e["ɵted"](-1,null,["USER_PWD_EXPIRATION_SPAN"])),(l()(),e["ɵted"](-1,null,[" in order to let passwords expire periodically. "]))],(function(l,n){l(n,1,0,"text-pre-wrap"),l(n,10,0,"/mgr-modules/edit/dashboard")}),(function(l,n){l(n,9,0,e["ɵnov"](n,10).target,e["ɵnov"](n,10).href)}))}function fn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function vn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](1,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,8,{FormControlNames:1}),e["ɵqud"](603979776,9,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,7,"label",[["class","cd-col-form-label"],["for","pwdExpirationDate"]],null,null,null,null,null)),e["ɵprd"](512,null,g["ɵNgClassImpl"],g["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](6,278528,null,0,g.NgClass,[g["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](7,{required:0}),(l()(),e["ɵeld"](8,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Password expiration date"])),(l()(),e["ɵand"](16777216,null,null,1,null,pn)),e["ɵdid"](11,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](12,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,16,"div",[["class","input-group"]],null,null,null,null,null)),(l()(),e["ɵeld"](14,16777216,null,null,10,"input",[["bsDatepicker",""],["class","form-control"],["formControlName","pwdExpirationDate"],["id","pwdExpirationDate"],["name","pwdExpirationDate"],["placeholder","Password expiration date..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,15)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,15).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,15)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,15)._compositionEnd(u.target.value)&&a),"change"===n&&(a=!1!==e["ɵnov"](l,17).onChange(u)&&a),"keyup.esc"===n&&(a=!1!==e["ɵnov"](l,17).hide()&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,17).onBlur()&&a),a}),null,null)),e["ɵdid"](15,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵdid"](16,737280,null,0,el.c,[el.a,e.ElementRef,e.Renderer2,e.ViewContainerRef,H.a],{bsConfig:[0,"bsConfig"],minDate:[1,"minDate"]},null),e["ɵdid"](17,16384,null,0,el.f,[el.c,el.l,e.Renderer2,e.ElementRef,e.ChangeDetectorRef],null,null),e["ɵprd"](1024,null,h.o,(function(l){return[l]}),[el.f]),e["ɵprd"](1024,null,h.p,(function(l,n){return[l,n]}),[h.e,el.f]),e["ɵdid"](20,671744,[[8,4]],0,h.j,[[3,h.d],[6,h.o],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](22,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](23,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](24,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](25,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(l()(),e["ɵeld"](26,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(l,n,u){var e=!0;return"click"===n&&(e=!1!==l.component.clearExpirationDate()&&e),e}),null,null)),(l()(),e["ɵeld"](27,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,fn)),e["ɵdid"](29,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){var u=n.component;l(n,1,0);var a=l(n,7,0,u.pwdExpirationSettings.pwdExpirationSpan>0);l(n,6,0,"cd-col-form-label",a),l(n,11,0,0==u.pwdExpirationSettings.pwdExpirationSpan),l(n,16,0,u.bsConfig,u.minDate),l(n,20,0,"pwdExpirationDate"),l(n,24,0,"pwdExpirationDate"),l(n,29,0,u.userForm.showError("pwdExpirationDate",e["ɵnov"](n.parent,2),"required"))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,14,0,e["ɵnov"](n,22).ngClassUntouched,e["ɵnov"](n,22).ngClassTouched,e["ɵnov"](n,22).ngClassPristine,e["ɵnov"](n,22).ngClassDirty,e["ɵnov"](n,22).ngClassValid,e["ɵnov"](n,22).ngClassInvalid,e["ɵnov"](n,22).ngClassPending,e["ɵnov"](n,24).validClass,e["ɵnov"](n,24).invalidClass),l(n,27,0,e["ɵinlineInterpolate"](1,"icon-prepend ",u.icons.destroy,""))}))}function gn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Invalid email."]))],null,null)}function hn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"span",[["class","no-border full-height"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"cd-select-badges",[],null,null,null,Bl.b,Bl.a)),e["ɵdid"](2,49152,null,0,zl.a,[w.a],{data:[0,"data"],options:[1,"options"],messages:[2,"messages"]},null)],(function(l,n){var u=n.component;l(n,2,0,u.userForm.controls.roles.value,u.allRoles,u.messages)}),null)}function bn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](1,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,16,{FormControlNames:1}),e["ɵqud"](603979776,17,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","enabled"],["id","enabled"],["name","enabled"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,7).onChange(u.target.checked)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,7).onTouched()&&a),a}),null,null)),e["ɵdid"](7,16384,null,0,h.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.c]),e["ɵdid"](9,671744,[[16,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](11,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](12,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","enabled"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Enabled"]))],(function(l,n){l(n,1,0),l(n,9,0,"enabled"),l(n,13,0,"enabled")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,11).ngClassUntouched,e["ɵnov"](n,11).ngClassTouched,e["ɵnov"](n,11).ngClassPristine,e["ɵnov"](n,11).ngClassDirty,e["ɵnov"](n,11).ngClassValid,e["ɵnov"](n,11).ngClassInvalid,e["ɵnov"](n,11).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function Cn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](1,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,18,{FormControlNames:1}),e["ɵqud"](603979776,19,{messagesBlock:0}),(l()(),e["ɵeld"](4,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(l()(),e["ɵeld"](5,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","pwdUpdateRequired"],["id","pwdUpdateRequired"],["name","pwdUpdateRequired"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(l,n,u){var a=!0;return"change"===n&&(a=!1!==e["ɵnov"](l,7).onChange(u.target.checked)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,7).onTouched()&&a),a}),null,null)),e["ɵdid"](7,16384,null,0,h.c,[e.Renderer2,e.ElementRef],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.c]),e["ɵdid"](9,671744,[[18,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](11,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](12,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](13,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](14,0,null,null,1,"label",[["class","custom-control-label"],["for","pwdUpdateRequired"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["User must change password at next logon"]))],(function(l,n){l(n,1,0),l(n,9,0,"pwdUpdateRequired"),l(n,13,0,"pwdUpdateRequired")}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).hasErrors,e["ɵnov"](n,1).hasSuccess),l(n,6,0,e["ɵnov"](n,11).ngClassUntouched,e["ɵnov"](n,11).ngClassTouched,e["ɵnov"](n,11).ngClassPristine,e["ɵnov"](n,11).ngClassDirty,e["ɵnov"](n,11).ngClassValid,e["ɵnov"](n,11).ngClassInvalid,e["ɵnov"](n,11).ngClassPending,e["ɵnov"](n,13).validClass,e["ɵnov"](n,13).invalidClass)}))}function Rn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,94,"form",[["name","userForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var a=!0;return"submit"===n&&(a=!1!==e["ɵnov"](l,2).onSubmit(u)&&a),"reset"===n&&(a=!1!==e["ɵnov"](l,2).onReset()&&a),"submit"===n&&(a=!1!==e["ɵnov"](l,5).onSubmit()&&a),a}),null,null)),e["ɵdid"](1,16384,null,0,h.G,[],null,null),e["ɵdid"](2,540672,[["formDir",4]],0,h.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,h.d,null,[h.l]),e["ɵdid"](4,16384,null,0,h.s,[[4,h.d]],null,null),e["ɵdid"](5,16384,null,0,sl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](6,0,null,null,88,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](7,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](8,null,[""," ",""])),e["ɵppd"](9,1),e["ɵppd"](10,1),(l()(),e["ɵeld"](11,0,null,null,74,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](12,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](13,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,2,{FormControlNames:1}),e["ɵqud"](603979776,3,{messagesBlock:0}),(l()(),e["ɵeld"](16,0,null,0,4,"label",[["class","cd-col-form-label"],["for","username"]],null,null,null,null,null)),e["ɵprd"](512,null,g["ɵNgClassImpl"],g["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](18,278528,null,0,g.NgClass,[g["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](19,{required:0}),(l()(),e["ɵted"](-1,null,["Username"])),(l()(),e["ɵeld"](21,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](22,0,null,null,8,"input",[["autocomplete","off"],["autofocus",""],["class","form-control"],["formControlName","username"],["id","username"],["name","username"],["placeholder","Username..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,23)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,23).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,23)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,23)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](23,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](25,671744,[[2,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](27,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](28,4210688,null,0,Gl.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](29,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](30,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,en)),e["ɵdid"](32,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,an)),e["ɵdid"](34,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,sn)),e["ɵdid"](36,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,mn)),e["ɵdid"](38,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,vn)),e["ɵdid"](40,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](41,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](42,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,10,{FormControlNames:1}),e["ɵqud"](603979776,11,{messagesBlock:0}),(l()(),e["ɵeld"](45,0,null,0,1,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Full name"])),(l()(),e["ɵeld"](47,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](48,0,null,null,7,"input",[["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Full name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,49)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,49).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,49)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,49)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](49,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](51,671744,[[10,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](53,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](54,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](55,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](56,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](57,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,12,{FormControlNames:1}),e["ɵqud"](603979776,13,{messagesBlock:0}),(l()(),e["ɵeld"](60,0,null,0,1,"label",[["class","cd-col-form-label"],["for","email"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Email"])),(l()(),e["ɵeld"](62,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](63,0,null,null,7,"input",[["class","form-control"],["formControlName","email"],["id","email"],["name","email"],["placeholder","Email..."],["type","email"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,64)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,64).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,64)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,64)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](64,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](66,671744,[[12,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](68,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](69,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](70,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,gn)),e["ɵdid"](72,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](73,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](74,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,14,{FormControlNames:1}),e["ɵqud"](603979776,15,{messagesBlock:0}),(l()(),e["ɵeld"](77,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Roles"])),(l()(),e["ɵeld"](79,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,hn)),e["ɵdid"](81,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,bn)),e["ɵdid"](83,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,Cn)),e["ɵdid"](85,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](86,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](87,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](88,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),Zl.b,Zl.a)),e["ɵdid"](89,114688,null,0,Kl.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](90,0,[""," ",""])),e["ɵppd"](91,1),e["ɵppd"](92,1),(l()(),e["ɵeld"](93,0,null,null,1,"cd-back-button",[],null,null,null,Hl.b,Hl.a)),e["ɵdid"](94,49152,null,0,Xl.a,[g.Location,Tl.b],null,null)],(function(l,n){var u=n.component;l(n,2,0,u.userForm),l(n,5,0,u.userForm),l(n,13,0);var a=l(n,19,0,u.mode!==u.userFormMode.editing);l(n,18,0,"cd-col-form-label",a),l(n,25,0,"username"),l(n,28,0,""),l(n,30,0,"username"),l(n,32,0,u.userForm.showError("username",e["ɵnov"](n,2),"required")),l(n,34,0,u.userForm.showError("username",e["ɵnov"](n,2),"notUnique")),l(n,36,0,!u.authStorageService.isSSO()),l(n,38,0,!u.authStorageService.isSSO()),l(n,40,0,!u.authStorageService.isSSO()),l(n,42,0),l(n,51,0,"name"),l(n,55,0,"name"),l(n,57,0),l(n,66,0,"email"),l(n,70,0,"email"),l(n,72,0,u.userForm.showError("email",e["ɵnov"](n,2),"email")),l(n,74,0),l(n,81,0,u.allRoles),l(n,83,0,!u.isCurrentUser()),l(n,85,0,!u.isCurrentUser()&&!u.authStorageService.isSSO()),l(n,89,0,e["ɵnov"](n,2))}),(function(l,n){var u=n.component;l(n,0,0,e["ɵnov"](n,4).ngClassUntouched,e["ɵnov"](n,4).ngClassTouched,e["ɵnov"](n,4).ngClassPristine,e["ɵnov"](n,4).ngClassDirty,e["ɵnov"](n,4).ngClassValid,e["ɵnov"](n,4).ngClassInvalid,e["ɵnov"](n,4).ngClassPending);var a=e["ɵunv"](n,8,0,l(n,9,0,e["ɵnov"](n.parent,0),u.action)),o=e["ɵunv"](n,8,1,l(n,10,0,e["ɵnov"](n.parent,1),u.resource));l(n,8,0,a,o),l(n,12,0,e["ɵnov"](n,13).hasErrors,e["ɵnov"](n,13).hasSuccess),l(n,22,0,e["ɵnov"](n,27).ngClassUntouched,e["ɵnov"](n,27).ngClassTouched,e["ɵnov"](n,27).ngClassPristine,e["ɵnov"](n,27).ngClassDirty,e["ɵnov"](n,27).ngClassValid,e["ɵnov"](n,27).ngClassInvalid,e["ɵnov"](n,27).ngClassPending,e["ɵnov"](n,30).validClass,e["ɵnov"](n,30).invalidClass),l(n,41,0,e["ɵnov"](n,42).hasErrors,e["ɵnov"](n,42).hasSuccess),l(n,48,0,e["ɵnov"](n,53).ngClassUntouched,e["ɵnov"](n,53).ngClassTouched,e["ɵnov"](n,53).ngClassPristine,e["ɵnov"](n,53).ngClassDirty,e["ɵnov"](n,53).ngClassValid,e["ɵnov"](n,53).ngClassInvalid,e["ɵnov"](n,53).ngClassPending,e["ɵnov"](n,55).validClass,e["ɵnov"](n,55).invalidClass),l(n,56,0,e["ɵnov"](n,57).hasErrors,e["ɵnov"](n,57).hasSuccess),l(n,63,0,e["ɵnov"](n,68).ngClassUntouched,e["ɵnov"](n,68).ngClassTouched,e["ɵnov"](n,68).ngClassPristine,e["ɵnov"](n,68).ngClassDirty,e["ɵnov"](n,68).ngClassValid,e["ɵnov"](n,68).ngClassInvalid,e["ɵnov"](n,68).ngClassPending,e["ɵnov"](n,70).validClass,e["ɵnov"](n,70).invalidClass),l(n,73,0,e["ɵnov"](n,74).hasErrors,e["ɵnov"](n,74).hasSuccess);var d=e["ɵunv"](n,90,0,l(n,91,0,e["ɵnov"](n.parent,0),u.action)),t=e["ɵunv"](n,90,1,l(n,92,0,e["ɵnov"](n.parent,1),u.resource));l(n,90,0,d,t)}))}function wn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"p",[],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,1,"strong",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,['You are about to remove "user read / update" permissions from your own user.'])),(l()(),e["ɵeld"](3,0,null,null,0,"br",[],null,null,null,null,null)),(l()(),e["ɵeld"](4,0,null,null,1,"p",[],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["If you continue, you will no longer be able to add or remove roles from any user."])),(l()(),e["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Are you sure you want to continue?"]))],null,null)}function In(l){return e["ɵvid"](0,[e["ɵpid"](0,g.TitleCasePipe,[]),e["ɵpid"](0,A.a,[]),e["ɵqud"](402653184,1,{removeSelfUserReadUpdatePermissionTpl:0}),(l()(),e["ɵand"](16777216,null,null,1,null,un)),e["ɵdid"](4,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](5,0,null,null,2,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵand"](16777216,null,null,1,null,Rn)),e["ɵdid"](7,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](0,[[1,2],["removeSelfUserReadUpdatePermissionTpl",2]],null,0,null,wn))],(function(l,n){var u=n.component;l(n,4,0,!u.pwdExpirationSettings),l(n,7,0,u.pwdExpirationSettings)}),null)}function En(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-user-form",[],null,null,null,In,nn)),e["ɵdid"](1,114688,null,0,Jl.a,[Yl.a,$.a,nl.a,nl.m,Y.b,Ql.a,Nl.a,xl.a,w.a,Tl.b,Wl.a,$l.a,ln.a],null,null)],(function(l,n){l(n,1,0)}),null)}var yn=e["ɵccf"]("cd-user-form",Jl.a,En,{},{},[]),Nn=u("LvDl"),xn=u("x38r");class Tn{constructor(l){this.i18n=l,this.scopes_permissions=[]}ngOnInit(){this.columns=[{prop:"scope",name:this.i18n("Scope"),flexGrow:2},{prop:"read",name:this.i18n("Read"),flexGrow:1,cellClass:"text-center",cellTransformation:xn.a.checkIcon},{prop:"create",name:this.i18n("Create"),flexGrow:1,cellClass:"text-center",cellTransformation:xn.a.checkIcon},{prop:"update",name:this.i18n("Update"),flexGrow:1,cellClass:"text-center",cellTransformation:xn.a.checkIcon},{prop:"delete",name:this.i18n("Delete"),flexGrow:1,cellClass:"text-center",cellTransformation:xn.a.checkIcon}]}ngOnChanges(){if(this.selection){this.selectedItem=this.selection;const l=[];Nn.each(this.scopes,n=>{const u={read:!1,create:!1,update:!1,delete:!1};u.scope=n,n in this.selectedItem.scopes_permissions&&Nn.each(this.selectedItem.scopes_permissions[n],l=>{u[l]=!0}),l.push(u)}),this.scopes_permissions=l}}}var kn=e["ɵcrt"]({encapsulation:0,styles:[["thead[_ngcontent-%COMP%]{background-color:#f5f5f5}.fa[_ngcontent-%COMP%]{font-size:large}.fa.fa-square-o[_ngcontent-%COMP%]{color:#d1d1d1}"]],data:{}});function Dn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,vl.b,vl.a)),e["ɵdid"](1,180224,null,0,ul.e,[ul.f,e.Renderer2,e.ElementRef],null,null),(l()(),e["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),e["ɵdid"](3,212992,null,0,ul.b,[ul.e,e.ElementRef,e.Renderer2],{heading:[0,"heading"]},null),(l()(),e["ɵeld"](4,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,Cl.b,Cl.a)),e["ɵdid"](5,2867200,null,0,Rl.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],toolHeader:[3,"toolHeader"],footer:[4,"footer"],limit:[5,"limit"],autoReload:[6,"autoReload"],autoSave:[7,"autoSave"]},null)],(function(l,n){var u=n.component;l(n,3,0,"Details"),l(n,5,0,u.scopes_permissions,u.columns,"flex",!1,!1,0,!1,!1)}),(function(l,n){l(n,0,0,e["ɵnov"](n,1).clazz),l(n,2,0,e["ɵnov"](n,3).id,e["ɵnov"](n,3).active,e["ɵnov"](n,3).addClass,e["ɵnov"](n,3).role,e["ɵnov"](n,3).ariaLabelledby)}))}function Sn(l){return e["ɵvid"](0,[(l()(),e["ɵand"](16777216,null,null,1,null,Dn)),e["ɵdid"](1,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(l,n){l(n,1,0,n.component.selection)}),null)}var qn=u("n/D3"),Pn=u("ZDA6"),Fn=e["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function _n(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-user-tabs",[],null,null,null,bl,hl)),e["ɵdid"](1,114688,null,0,gl,[nl.m],null,null),(l()(),e["ɵeld"](2,0,null,null,5,"cd-table",[["columnMode","flex"],["identifier","name"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"fetchData"],[null,"updateSelection"]],(function(l,n,u){var e=!0,a=l.component;return"setExpandedRow"===n&&(e=!1!==a.setExpandedRow(u)&&e),"fetchData"===n&&(e=!1!==a.getRoles()&&e),"updateSelection"===n&&(e=!1!==a.updateSelection(u)&&e),e}),Cl.b,Cl.a)),e["ɵdid"](3,2867200,null,0,Rl.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],selectionType:[5,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(l()(),e["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,wl.b,wl.a)),e["ɵdid"](5,114688,null,0,Il.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(l()(),e["ɵeld"](6,0,null,3,1,"cd-role-details",[["cdTableDetail",""]],null,null,null,Sn,kn)),e["ɵdid"](7,638976,null,0,Tn,[w.a],{selection:[0,"selection"],scopes:[1,"scopes"]},null)],(function(l,n){var u=n.component;l(n,1,0),l(n,3,0,u.roles,u.columns,"flex",!0,"name","single"),l(n,5,0,u.permission,u.selection,u.tableActions),l(n,7,0,u.expandedRow,u.scopes)}),null)}function Vn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,2,"cd-role-list",[],null,null,null,_n,Fn)),e["ɵprd"](256,null,El.a,qn.b,[]),e["ɵdid"](2,114688,null,0,qn.a,[Ql.a,Pn.a,F.a,$.a,Y.b,xl.a,w.a,El.a,Tl.b],null,null)],(function(l,n){l(n,2,0)}),null)}var Un=e["ɵccf"]("cd-role-list",qn.a,Vn,{},{},[]),Mn=u("eTJe"),Ln=e["ɵcrt"]({encapsulation:0,styles:[[".datatable-permissions-header-cell-label[_ngcontent-%COMP%], .datatable-permissions-scope-cell-label[_ngcontent-%COMP%]{font-weight:700}"]],data:{}});function An(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["This field is required."]))],null,null)}function On(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["The chosen name is already in use."]))],null,null)}function jn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"checked",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(l,n,u){var e=!0;return"change"===n&&(e=!1!==l.component.onClickCellCheckbox(l.context.row.scope,l.context.column.prop,u)&&e),e}),null,null)),e["ɵdid"](2,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,sl.h,[[8,null],sl.a],null,null),(l()(),e["ɵeld"](4,0,null,null,1,"label",[["class","datatable-permissions-scope-cell-label custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),e["ɵted"](5,null,["",""]))],null,(function(l,n){var u=n.component;l(n,1,0,e["ɵinlineInterpolate"](1,"scope_",n.context.row.scope,""),u.isRowChecked(n.context.row.scope),e["ɵnov"](n,3).validClass,e["ɵnov"](n,3).invalidClass),l(n,4,0,e["ɵinlineInterpolate"](1,"scope_",n.context.row.scope,"")),l(n,5,0,n.context.value)}))}function Bn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,4,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"checked",0],[8,"id",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(l,n,u){var e=!0;return"change"===n&&(e=!1!==l.component.onClickCellCheckbox(l.context.row.scope,l.context.column.prop,u)&&e),e}),null,null)),e["ɵdid"](2,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,sl.h,[[8,null],sl.a],null,null),(l()(),e["ɵeld"](4,0,null,null,0,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null))],null,(function(l,n){l(n,1,0,n.context.value,n.context.row.scope+"-"+n.context.column.prop,e["ɵnov"](n,3).validClass,e["ɵnov"](n,3).invalidClass),l(n,4,0,n.context.row.scope+"-"+n.context.column.prop)}))}function zn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,5,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(l()(),e["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"checked",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(l,n,u){var e=!0;return"change"===n&&(e=!1!==l.component.onClickHeaderCheckbox(l.context.column.prop,u)&&e),e}),null,null)),e["ɵdid"](2,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](3,16384,null,0,sl.h,[[8,null],sl.a],null,null),(l()(),e["ɵeld"](4,0,null,null,1,"label",[["class","datatable-permissions-header-cell-label custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(l()(),e["ɵted"](5,null,["",""]))],null,(function(l,n){var u=n.component;l(n,1,0,e["ɵinlineInterpolate"](1,"header_",n.context.column.prop,""),u.isHeaderChecked(n.context.column.prop),e["ɵnov"](n,3).validClass,e["ɵnov"](n,3).invalidClass),l(n,4,0,e["ɵinlineInterpolate"](1,"header_",n.context.column.prop,"")),l(n,5,0,n.context.column.name)}))}function Gn(l){return e["ɵvid"](0,[e["ɵpid"](0,g.TitleCasePipe,[]),e["ɵpid"](0,A.a,[]),e["ɵqud"](402653184,1,{headerPermissionCheckboxTpl:0}),e["ɵqud"](402653184,2,{cellScopeCheckboxTpl:0}),e["ɵqud"](402653184,3,{cellPermissionCheckboxTpl:0}),(l()(),e["ɵeld"](5,0,null,null,68,"div",[["class","cd-col-form"]],null,null,null,null,null)),(l()(),e["ɵeld"](6,0,null,null,67,"form",[["name","roleForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(l,n,u){var a=!0;return"submit"===n&&(a=!1!==e["ɵnov"](l,8).onSubmit(u)&&a),"reset"===n&&(a=!1!==e["ɵnov"](l,8).onReset()&&a),"submit"===n&&(a=!1!==e["ɵnov"](l,11).onSubmit()&&a),a}),null,null)),e["ɵdid"](7,16384,null,0,h.G,[],null,null),e["ɵdid"](8,540672,[["formDir",4]],0,h.l,[[8,null],[8,null]],{form:[0,"form"]},null),e["ɵprd"](2048,null,h.d,null,[h.l]),e["ɵdid"](10,16384,null,0,h.s,[[4,h.d]],null,null),e["ɵdid"](11,16384,null,0,sl.d,[],{formGroup:[0,"formGroup"]},null),(l()(),e["ɵeld"](12,0,null,null,61,"div",[["class","card"]],null,null,null,null,null)),(l()(),e["ɵeld"](13,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(l()(),e["ɵted"](14,null,[""," ",""])),e["ɵppd"](15,1),e["ɵppd"](16,1),(l()(),e["ɵeld"](17,0,null,null,47,"div",[["class","card-body"]],null,null,null,null,null)),(l()(),e["ɵeld"](18,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](19,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,4,{FormControlNames:1}),e["ɵqud"](603979776,5,{messagesBlock:0}),(l()(),e["ɵeld"](22,0,null,0,4,"label",[["class","cd-col-form-label"],["for","name"]],null,null,null,null,null)),e["ɵprd"](512,null,g["ɵNgClassImpl"],g["ɵNgClassR2Impl"],[e.IterableDiffers,e.KeyValueDiffers,e.ElementRef,e.Renderer2]),e["ɵdid"](24,278528,null,0,g.NgClass,[g["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),e["ɵpod"](25,{required:0}),(l()(),e["ɵted"](-1,null,["Name"])),(l()(),e["ɵeld"](27,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](28,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","name"],["id","name"],["name","name"],["placeholder","Name..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,29)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,29).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,29)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,29)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](29,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](31,671744,[[4,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](33,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](34,4210688,null,0,Gl.a,[e.ElementRef],{autofocus:[0,"autofocus"]},null),e["ɵdid"](35,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](36,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,An)),e["ɵdid"](38,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵand"](16777216,null,null,1,null,On)),e["ɵdid"](40,16384,null,0,g.NgIf,[e.ViewContainerRef,e.TemplateRef],{ngIf:[0,"ngIf"]},null),(l()(),e["ɵeld"](41,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](42,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,6,{FormControlNames:1}),e["ɵqud"](603979776,7,{messagesBlock:0}),(l()(),e["ɵeld"](45,0,null,0,1,"label",[["class","cd-col-form-label"],["for","description"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Description"])),(l()(),e["ɵeld"](47,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](48,0,null,null,7,"input",[["class","form-control"],["formControlName","description"],["id","description"],["name","description"],["placeholder","Description..."],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(l,n,u){var a=!0;return"input"===n&&(a=!1!==e["ɵnov"](l,49)._handleInput(u.target.value)&&a),"blur"===n&&(a=!1!==e["ɵnov"](l,49).onTouched()&&a),"compositionstart"===n&&(a=!1!==e["ɵnov"](l,49)._compositionStart()&&a),"compositionend"===n&&(a=!1!==e["ɵnov"](l,49)._compositionEnd(u.target.value)&&a),a}),null,null)),e["ɵdid"](49,16384,null,0,h.e,[e.Renderer2,e.ElementRef,[2,h.b]],null,null),e["ɵprd"](1024,null,h.p,(function(l){return[l]}),[h.e]),e["ɵdid"](51,671744,[[6,4]],0,h.j,[[3,h.d],[8,null],[8,null],[6,h.p],[2,h.E]],{name:[0,"name"]},null),e["ɵprd"](2048,null,h.q,null,[h.j]),e["ɵdid"](53,16384,null,0,h.r,[[4,h.q]],null,null),e["ɵdid"](54,4210688,null,0,Al.a,[[2,Ol.a],$.a,e.ElementRef],null,null),e["ɵdid"](55,16384,null,0,sl.h,[[3,h.d],sl.a],{formControlName:[0,"formControlName"]},null),(l()(),e["ɵeld"](56,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ll.b,Ll.a)),e["ɵdid"](57,1163264,null,2,sl.c,[e.ElementRef,sl.g],null,null),e["ɵqud"](603979776,8,{FormControlNames:1}),e["ɵqud"](603979776,9,{messagesBlock:0}),(l()(),e["ɵeld"](60,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(l()(),e["ɵted"](-1,null,["Permissions"])),(l()(),e["ɵeld"](62,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(l()(),e["ɵeld"](63,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,Cl.b,Cl.a)),e["ɵdid"](64,2867200,null,0,Rl.a,[e.NgZone,e.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],toolHeader:[3,"toolHeader"],footer:[4,"footer"],limit:[5,"limit"],autoReload:[6,"autoReload"],autoSave:[7,"autoSave"]},null),(l()(),e["ɵeld"](65,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(l()(),e["ɵeld"](66,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(l()(),e["ɵeld"](67,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(l,n,u){var e=!0;return"submitAction"===n&&(e=!1!==l.component.submit()&&e),e}),Zl.b,Zl.a)),e["ɵdid"](68,114688,null,0,Kl.a,[e.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(l()(),e["ɵted"](69,0,[""," ",""])),e["ɵppd"](70,1),e["ɵppd"](71,1),(l()(),e["ɵeld"](72,0,null,null,1,"cd-back-button",[],null,null,null,Hl.b,Hl.a)),e["ɵdid"](73,49152,null,0,Xl.a,[g.Location,Tl.b],null,null),(l()(),e["ɵand"](0,[[2,2],["cellScopeCheckboxTpl",2]],null,0,null,jn)),(l()(),e["ɵand"](0,[[3,2],["cellPermissionCheckboxTpl",2]],null,0,null,Bn)),(l()(),e["ɵand"](0,[[1,2],["headerPermissionCheckboxTpl",2]],null,0,null,zn))],(function(l,n){var u=n.component;l(n,8,0,u.roleForm),l(n,11,0,u.roleForm),l(n,19,0);var a=l(n,25,0,u.mode!==u.roleFormMode.editing);l(n,24,0,"cd-col-form-label",a),l(n,31,0,"name"),l(n,34,0,""),l(n,36,0,"name"),l(n,38,0,u.roleForm.showError("name",e["ɵnov"](n,8),"required")),l(n,40,0,u.roleForm.showError("name",e["ɵnov"](n,8),"notUnique")),l(n,42,0),l(n,51,0,"description"),l(n,55,0,"description"),l(n,57,0),l(n,64,0,u.scopes_permissions,u.columns,"flex",!1,!1,0,!1,!1),l(n,68,0,e["ɵnov"](n,8))}),(function(l,n){var u=n.component;l(n,6,0,e["ɵnov"](n,10).ngClassUntouched,e["ɵnov"](n,10).ngClassTouched,e["ɵnov"](n,10).ngClassPristine,e["ɵnov"](n,10).ngClassDirty,e["ɵnov"](n,10).ngClassValid,e["ɵnov"](n,10).ngClassInvalid,e["ɵnov"](n,10).ngClassPending);var a=e["ɵunv"](n,14,0,l(n,15,0,e["ɵnov"](n,0),u.action)),o=e["ɵunv"](n,14,1,l(n,16,0,e["ɵnov"](n,1),u.resource));l(n,14,0,a,o),l(n,18,0,e["ɵnov"](n,19).hasErrors,e["ɵnov"](n,19).hasSuccess),l(n,28,0,e["ɵnov"](n,33).ngClassUntouched,e["ɵnov"](n,33).ngClassTouched,e["ɵnov"](n,33).ngClassPristine,e["ɵnov"](n,33).ngClassDirty,e["ɵnov"](n,33).ngClassValid,e["ɵnov"](n,33).ngClassInvalid,e["ɵnov"](n,33).ngClassPending,e["ɵnov"](n,36).validClass,e["ɵnov"](n,36).invalidClass),l(n,41,0,e["ɵnov"](n,42).hasErrors,e["ɵnov"](n,42).hasSuccess),l(n,48,0,e["ɵnov"](n,53).ngClassUntouched,e["ɵnov"](n,53).ngClassTouched,e["ɵnov"](n,53).ngClassPristine,e["ɵnov"](n,53).ngClassDirty,e["ɵnov"](n,53).ngClassValid,e["ɵnov"](n,53).ngClassInvalid,e["ɵnov"](n,53).ngClassPending,e["ɵnov"](n,55).validClass,e["ɵnov"](n,55).invalidClass),l(n,56,0,e["ɵnov"](n,57).hasErrors,e["ɵnov"](n,57).hasSuccess);var d=e["ɵunv"](n,69,0,l(n,70,0,e["ɵnov"](n,0),u.action)),t=e["ɵunv"](n,69,1,l(n,71,0,e["ɵnov"](n,1),u.resource));l(n,69,0,d,t)}))}function Zn(l){return e["ɵvid"](0,[(l()(),e["ɵeld"](0,0,null,null,1,"cd-role-form",[],null,null,null,Gn,Ln)),e["ɵdid"](1,114688,null,0,Mn.a,[nl.a,nl.m,Ql.a,Pn.a,xl.a,w.a,Tl.b],null,null)],(function(l,n){l(n,1,0)}),null)}var Kn=e["ɵccf"]("cd-role-form",Mn.a,Zn,{},{},[]);u.d(n,"AuthModuleNgFactory",(function(){return Hn})),u.d(n,"RoutedAuthModuleNgFactory",(function(){return Xn}));var Hn=e["ɵcmf"](a.a,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[o.a,d.a,t.a,s.a,s.b,i.a,r.a,c.a,m.a,p.a,f.a,v.a,v.c,v.b,v.d]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,g.NgLocalization,g.NgLocaleLocalization,[e.LOCALE_ID,[2,g["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,h.D,h.D,[]),e["ɵmpd"](4608,h.h,h.h,[]),e["ɵmpd"](4608,b.a,b.a,[]),e["ɵmpd"](4608,C.a,C.a,[]),e["ɵmpd"](4608,R.a,R.a,[w.a]),e["ɵmpd"](4608,g.DatePipe,g.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,I.a,I.a,[]),e["ɵmpd"](4608,E.a,E.a,[]),e["ɵmpd"](4608,y.a,y.a,[]),e["ɵmpd"](4608,N.a,N.a,[y.a]),e["ɵmpd"](4608,x.a,x.a,[y.a]),e["ɵmpd"](4608,T.a,T.a,[y.a]),e["ɵmpd"](4608,k.a,k.a,[]),e["ɵmpd"](4608,D.a,D.a,[]),e["ɵmpd"](4608,S.a,S.a,[]),e["ɵmpd"](4608,q.a,q.a,[]),e["ɵmpd"](4608,P.a,P.a,[g.DatePipe]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,_.a,_.a,[]),e["ɵmpd"](4608,V.a,V.a,[]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,M.a,M.a,[]),e["ɵmpd"](4608,L.a,L.a,[w.a]),e["ɵmpd"](4608,A.a,A.a,[]),e["ɵmpd"](4608,O.a,O.a,[]),e["ɵmpd"](4608,j.a,j.a,[]),e["ɵmpd"](4608,B.a,B.a,[z.b]),e["ɵmpd"](4608,G.b,G.b,[]),e["ɵmpd"](4608,Z.a,Z.a,[]),e["ɵmpd"](4608,K.a,K.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,H.a,H.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,K.a,e.ApplicationRef]),e["ɵmpd"](4608,X.c,X.c,[]),e["ɵmpd"](4608,J.a,J.a,[]),e["ɵmpd"](4608,Y.b,Y.b,[e.RendererFactory2,H.a]),e["ɵmpd"](4608,Q.y,Q.y,[g.DOCUMENT]),e["ɵmpd"](4608,Q.r,Q.r,[]),e["ɵmpd"](4608,Q.a,Q.a,[]),e["ɵmpd"](4608,W.f,W.f,[]),e["ɵmpd"](4608,$.a,$.a,[]),e["ɵmpd"](4608,ll.a,ll.a,[nl.m,$.a]),e["ɵmpd"](4608,ul.f,ul.f,[]),e["ɵmpd"](4608,el.t,el.t,[]),e["ɵmpd"](4608,el.v,el.v,[]),e["ɵmpd"](4608,el.a,el.a,[]),e["ɵmpd"](4608,el.h,el.h,[]),e["ɵmpd"](4608,el.d,el.d,[]),e["ɵmpd"](4608,el.j,el.j,[]),e["ɵmpd"](4608,el.l,el.l,[]),e["ɵmpd"](4608,el.u,el.u,[el.v,el.l]),e["ɵmpd"](1073742336,al.a,al.a,[]),e["ɵmpd"](1073742336,g.CommonModule,g.CommonModule,[]),e["ɵmpd"](1073742336,h.C,h.C,[]),e["ɵmpd"](1073742336,h.n,h.n,[]),e["ɵmpd"](1073742336,Z.d,Z.d,[]),e["ɵmpd"](1073742336,h.y,h.y,[]),e["ɵmpd"](1073742336,ol.a,ol.a,[]),e["ɵmpd"](1073742336,G.c,G.c,[]),e["ɵmpd"](1073742336,X.d,X.d,[]),e["ɵmpd"](1073742336,J.d,J.d,[]),e["ɵmpd"](1073742336,dl.b,dl.b,[]),e["ɵmpd"](1073742336,Y.e,Y.e,[]),e["ɵmpd"](1073742336,tl.a,tl.a,[]),e["ɵmpd"](1073742336,W.e,W.e,[]),e["ɵmpd"](1073742336,sl.f,sl.f,[]),e["ɵmpd"](1073742336,il.ClickOutsideModule,il.ClickOutsideModule,[]),e["ɵmpd"](1073742336,rl.b,rl.b,[]),e["ɵmpd"](1073742336,nl.q,nl.q,[[2,nl.v],[2,nl.m]]),e["ɵmpd"](1073742336,cl.a,cl.a,[]),e["ɵmpd"](1073742336,Q.u,Q.u,[]),e["ɵmpd"](1073742336,ml.a,ml.a,[]),e["ɵmpd"](1073742336,pl.a,pl.a,[]),e["ɵmpd"](1073742336,fl.a,fl.a,[]),e["ɵmpd"](1073742336,ul.d,ul.d,[]),e["ɵmpd"](1073742336,el.g,el.g,[]),e["ɵmpd"](1073742336,a.a,a.a,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,W.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])})),Xn=e["ɵcmf"](a.b,[],(function(l){return e["ɵmod"]([e["ɵmpd"](512,e.ComponentFactoryResolver,e["ɵCodegenComponentFactoryResolver"],[[8,[o.a,d.a,t.a,s.a,s.b,i.a,r.a,c.a,m.a,p.a,f.a,v.a,v.c,v.b,v.d,Fl,yn,Un,Kn]],[3,e.ComponentFactoryResolver],e.NgModuleRef]),e["ɵmpd"](4608,g.NgLocalization,g.NgLocaleLocalization,[e.LOCALE_ID,[2,g["ɵangular_packages_common_common_a"]]]),e["ɵmpd"](4608,h.D,h.D,[]),e["ɵmpd"](4608,h.h,h.h,[]),e["ɵmpd"](4608,b.a,b.a,[]),e["ɵmpd"](4608,C.a,C.a,[]),e["ɵmpd"](4608,R.a,R.a,[w.a]),e["ɵmpd"](4608,g.DatePipe,g.DatePipe,[e.LOCALE_ID]),e["ɵmpd"](4608,I.a,I.a,[]),e["ɵmpd"](4608,E.a,E.a,[]),e["ɵmpd"](4608,y.a,y.a,[]),e["ɵmpd"](4608,N.a,N.a,[y.a]),e["ɵmpd"](4608,x.a,x.a,[y.a]),e["ɵmpd"](4608,T.a,T.a,[y.a]),e["ɵmpd"](4608,k.a,k.a,[]),e["ɵmpd"](4608,D.a,D.a,[]),e["ɵmpd"](4608,S.a,S.a,[]),e["ɵmpd"](4608,q.a,q.a,[]),e["ɵmpd"](4608,P.a,P.a,[g.DatePipe]),e["ɵmpd"](4608,F.a,F.a,[]),e["ɵmpd"](4608,_.a,_.a,[]),e["ɵmpd"](4608,V.a,V.a,[]),e["ɵmpd"](4608,U.a,U.a,[]),e["ɵmpd"](4608,M.a,M.a,[]),e["ɵmpd"](4608,L.a,L.a,[w.a]),e["ɵmpd"](4608,A.a,A.a,[]),e["ɵmpd"](4608,O.a,O.a,[]),e["ɵmpd"](4608,j.a,j.a,[]),e["ɵmpd"](4608,B.a,B.a,[z.b]),e["ɵmpd"](4608,G.b,G.b,[]),e["ɵmpd"](4608,Z.a,Z.a,[]),e["ɵmpd"](4608,K.a,K.a,[e.NgZone,e.RendererFactory2,e.PLATFORM_ID]),e["ɵmpd"](4608,H.a,H.a,[e.ComponentFactoryResolver,e.NgZone,e.Injector,K.a,e.ApplicationRef]),e["ɵmpd"](4608,X.c,X.c,[]),e["ɵmpd"](4608,J.a,J.a,[]),e["ɵmpd"](4608,Y.b,Y.b,[e.RendererFactory2,H.a]),e["ɵmpd"](4608,Q.y,Q.y,[g.DOCUMENT]),e["ɵmpd"](4608,Q.r,Q.r,[]),e["ɵmpd"](4608,Q.a,Q.a,[]),e["ɵmpd"](4608,W.f,W.f,[]),e["ɵmpd"](4608,$.a,$.a,[]),e["ɵmpd"](4608,ll.a,ll.a,[nl.m,$.a]),e["ɵmpd"](4608,ul.f,ul.f,[]),e["ɵmpd"](4608,el.t,el.t,[]),e["ɵmpd"](4608,el.v,el.v,[]),e["ɵmpd"](4608,el.a,el.a,[]),e["ɵmpd"](4608,el.h,el.h,[]),e["ɵmpd"](4608,el.d,el.d,[]),e["ɵmpd"](4608,el.j,el.j,[]),e["ɵmpd"](4608,el.l,el.l,[]),e["ɵmpd"](4608,el.u,el.u,[el.v,el.l]),e["ɵmpd"](1073742336,al.a,al.a,[]),e["ɵmpd"](1073742336,g.CommonModule,g.CommonModule,[]),e["ɵmpd"](1073742336,h.C,h.C,[]),e["ɵmpd"](1073742336,h.n,h.n,[]),e["ɵmpd"](1073742336,Z.d,Z.d,[]),e["ɵmpd"](1073742336,h.y,h.y,[]),e["ɵmpd"](1073742336,ol.a,ol.a,[]),e["ɵmpd"](1073742336,G.c,G.c,[]),e["ɵmpd"](1073742336,X.d,X.d,[]),e["ɵmpd"](1073742336,J.d,J.d,[]),e["ɵmpd"](1073742336,dl.b,dl.b,[]),e["ɵmpd"](1073742336,Y.e,Y.e,[]),e["ɵmpd"](1073742336,tl.a,tl.a,[]),e["ɵmpd"](1073742336,W.e,W.e,[]),e["ɵmpd"](1073742336,sl.f,sl.f,[]),e["ɵmpd"](1073742336,il.ClickOutsideModule,il.ClickOutsideModule,[]),e["ɵmpd"](1073742336,rl.b,rl.b,[]),e["ɵmpd"](1073742336,nl.q,nl.q,[[2,nl.v],[2,nl.m]]),e["ɵmpd"](1073742336,cl.a,cl.a,[]),e["ɵmpd"](1073742336,Q.u,Q.u,[]),e["ɵmpd"](1073742336,ml.a,ml.a,[]),e["ɵmpd"](1073742336,pl.a,pl.a,[]),e["ɵmpd"](1073742336,fl.a,fl.a,[]),e["ɵmpd"](1073742336,ul.d,ul.d,[]),e["ɵmpd"](1073742336,el.g,el.g,[]),e["ɵmpd"](1073742336,a.a,a.a,[]),e["ɵmpd"](1073742336,a.b,a.b,[]),e["ɵmpd"](256,e.LOCALE_ID,"en-US",[]),e["ɵmpd"](256,W.a,{autoClose:!0,insideClick:!1},[]),e["ɵmpd"](1024,nl.k,(function(){return[[{path:"",redirectTo:"users",pathMatch:"full"},{path:"users",data:a.c,children:[{path:"",component:yl.a},{path:"create",component:Jl.a,data:a.d},{path:"edit/:username",component:Jl.a,data:a.e}]},{path:"roles",data:a.f,children:[{path:"",component:qn.a},{path:"create",component:Mn.a,data:a.g},{path:"edit/:name",component:Mn.a,data:a.h}]}]]}),[]),e["ɵmpd"](256,e.TRANSLATIONS_FORMAT,"xlf",[])])}))}}]);
\ No newline at end of file
index c6a785a1d48f978f434326d50edf685e340b1ae6..8a45f06a70a34556bf94500f4a2c0139e5e29250 100644 (file)
@@ -24,5 +24,5 @@
   </noscript>
 
   <cd-root></cd-root>
-<script src="runtime.47bc076fdcd8bde0c19f.js" defer></script><script src="polyfills.14628a6f4ca10d3018fd.js" defer></script><script src="scripts.76632aba1e576c7cc54a.js" defer></script><script src="main.6fdc1558ba9057d093e0.js" defer></script></body>
+<script src="runtime.aa14b459a46eea461c85.js" defer></script><script src="polyfills.14628a6f4ca10d3018fd.js" defer></script><script src="scripts.76632aba1e576c7cc54a.js" defer></script><script src="main.8f0b1a650c943458f796.js" defer></script></body>
 </html>
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.6fdc1558ba9057d093e0.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.6fdc1558ba9057d093e0.js
deleted file mode 100644 (file)
index 1f23e41..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/*! For license information please see main.6fdc1558ba9057d093e0.js.LICENSE.txt */
-(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{"+0ag":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){const e=/ceph version\s+[^ ]+\s+\(.+\)\s+(.+)\s+\((.+)\)/.exec(t);return e?"dev"===e[2]?"master":e[1]:t}}},"+FhV":function(t,e,n){var a=n("IMTC")(Object.getPrototypeOf,Object);t.exports=a},"+GvH":function(t,e,n){var a=n("rk81"),r=n("ezUo"),i=n("w4fU"),s=n("2bSy"),u=n("qwH+"),o=n("0GLT"),l=n("y/5f"),d=n("uPDw"),c="[object Object]",f=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,h,g,p){var b=o(t),m=o(e),y=b?"[object Array]":u(t),v=m?"[object Array]":u(e),x=(y="[object Arguments]"==y?c:y)==c,_=(v="[object Arguments]"==v?c:v)==c,T=y==v;if(T&&l(t)){if(!l(e))return!1;b=!0,x=!1}if(T&&!x)return p||(p=new a),b||d(t)?r(t,e,n,h,g,p):i(t,e,y,n,h,g,p);if(!(1&n)){var w=x&&f.call(t,"__wrapped__"),O=_&&f.call(e,"__wrapped__");if(w||O){var S=w?t.value():t,I=O?e.value():e;return p||(p=new a),g(S,I,n,h,p)}}return!!T&&(p||(p=new a),s(t,e,n,h,g,p))}},"+GxX":function(t,e,n){var a=n("77kF"),r=n("1Yk6");t.exports=function(t,e){return a(t,r(t),e)}},"+NyF":function(t,e){t.exports=function(t,e){return null!=t&&e in Object(t)}},"+Wg/":function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="pt-BR">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Alternar navegação</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Painel de controle</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Cluster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hosts</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitores</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Serviços</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSDs</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Configuração</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>Mapa CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Módulos do gerenciador</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Registros</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pools</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Bloco</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Imagens</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Espelhamento</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Sistemas de arquivos</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Gateway de Objetos</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemons</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Usuários</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Compartimentos</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Selecionar Idioma</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Carregando dados do painel...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Seletor de Horário do Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Redefinir Configurações</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Voltar</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Falha ao carregar dados.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>selecionado(s)</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>encontrado(s)</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>total</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nome</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Descrição</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Descrição extensa</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Padrão</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Padrão do daemon</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Valores</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Salvar</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Visualizador de mapa CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Carregando...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nome de host</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Este campo é obrigatório.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Sim, desejo.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Cancelar</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Fechar</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Lista de Hosts</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Desempenho Geral</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Nenhuma entrada encontrada</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Registros do Cluster</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Registros de Auditoria</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Carregando configuração...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Não foi possível carregar a configuração.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Editar módulo do gerenciador</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>O valor inserido não é um UUID válido. Ex.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>O valor inserido precisa ser um endereço IP válido.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>O valor inserido precisa ser um número.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>O valor inserido precisa ser um número ou decimal.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Atualizar</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Status</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID do Cluster</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap modificado</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>época de monmap</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>con obrigatório</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>mon obrigatório</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>No Quorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Não está no Quorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Adicionar</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Recursos</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Flags OSD de todo o Cluster</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Enviar</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Avançado...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Prioridade de Recuperação de OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Prioridade</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Personalizar valores de prioridade</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Este campo é obrigatório!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>O valor precisa ser entre 0 e 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Reponderar</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Profundo } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {profundo} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Lista de OSDs</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Valor</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Editar</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Excluir</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Saúde</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Estatísticas</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Clientes</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Qualquer cliente pode acessar</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Endereços</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Campo obrigatório</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Deve conter um ou mais valores separados por vírgula</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Por exemplo:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Tipo de Acesso</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Executar Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Adicionar clientes</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Não há clusters disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Selecionar cluster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Adicionar daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Backend de Armazenamento</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Não há pools de dados disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Selecionar backend de armazenamento --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Usuário do Gateway de Objetos</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Não há usuários disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Selecionar usuário do gateway de objetos --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID de Usuário do CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Não há clientes disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Selecionar cliente do cephx --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nome do CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Rótulo de Segurança</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Habilitar rótulo de segurança</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Caminho do CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>O caminho precisa começar com \'/\' e pode ser seguido de uma palavra</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Novo diretório será criado</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Caminho</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>O caminho pode ser apenas uma \'/\' ou uma palavra</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Novo compartimento será criado</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protocolo NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Tag NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Clientes não podem montar subdiretórios (ou seja, se Tag = foo, o cliente não poderá montar foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Ao usar opções diferentes de Tag, o mesmo Caminho pode ser exportado várias vezes.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Ao usar opções diferentes de Pseudo, o mesmo Caminho pode ser exportado várias vezes.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Não há tipos de acesso disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Selecionar tipo de acesso --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Não há squashes disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>--Selecionar que tipo de squash de ID de usuário será executado --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protocolo de Transporte</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Bem-vindo ao Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nome de usuário é obrigatório</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Senha é obrigatória</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Login</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>O usuário não existe no Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Proibido</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Você não tem permissão para ver o que está procurando.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Configuração de RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Remova o valor de configuração local. No lugar dele, o valor de configuração pai será herdado e usado.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>O valor mínimo é 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Lista de Pools</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>O nome pode conter apenas caracteres alfanuméricos, traços e sublinhados.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>O nome do perfil de código de eliminação escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plug-in</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Pacotes de dados (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Deve ser igual ou maior do que 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Pacotes de codificação (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Deve ser igual ou maior do que 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Estimador de durabilidade (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Localidade (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Domínio de falha do Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Localidade do Crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Nenhum</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Técnica</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Tamanho do pacote</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Raiz do Crush</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Classe do dispositivo do Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>qualquer</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Diretório</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nome...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>O nome do pool do Ceph escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Tipo de pool</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Selecionar tipo de pool --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Grupos de posicionamento</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Pelo menos um grupo de posicionamento é necessário!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Seu cluster não pode processar tantos PGs. Recalcule a quantidade de PG necessária.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Ajuda no cálculo</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Tamanho replicado</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flags</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>Sobregravações de EC</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Aplicativos</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Perfil do código de eliminação</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Não há perfis de código de eliminação disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Selecionar perfil do código de eliminação --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Conjunto de regras do Crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Selecionar regra de crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Regra de Crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Etapas do Crush</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Compactação</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Modo</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritmo</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Não há algoritmos de compactação de eliminação disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Tamanho mínimo do blob</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>ex. 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>O valor deve ser maior do que 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Tamanho máximo do blob</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>ex. 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>O valor deve ser maior do que o tamanho mínimo do blob</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Taxa</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Taxa de compactação</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>O valor deve ser entre 0.0 e 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>ex. 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Detalhes</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Detalhes de Desempenho</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Detalhes das Camadas do Cache</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Mover imagem para o lixo</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Vencimento da proteção em</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NÃO PROTEGIDO</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Formato de data incorreto. Use "AAAA-MM-DD HH:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>A proteção já venceu. Escolha uma data no futuro ou deixe-a vazia.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Mover Imagem</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Visão geral</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Destinos</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Autenticação de Descoberta</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Usuário</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Os nomes de usuário devem ter entre 8 e 64 caracteres e\n              apenas podem conter letras, \'.\', \'@\', \'-\', \'_\' ou \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Senha</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Usuário Mútuo</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Senha Mútua</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informações disponíveis:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>Destinos iSCSI não disponíveis</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Pool de Dados</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Criado</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Tamanho</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objetos</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Tamanho do objeto</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Aprovisionado</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/A</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Total aprovisionado</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unidade de distribuição</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Total de distribuições</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Pai</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Prefixo do nome do bloco</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Ordem</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Instantâneos</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Imagem</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Esta configuração substitui o valor global</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Este é o valor global. Nenhum valor para esta opção foi definido para esta imagem.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' e \'@\' não são permitidos.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Não há pools de RBD disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Selecionar pool --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Usar pool de dados dedicado</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Pool de dados</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Pool dedicado que armazena os dados de objetos do RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Você precisa aumentar o tamanho.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Avançado</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Distribuição</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unidade de distribuição</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Selecionar unidade de distribuição --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Este campo é obrigatório porque o total de distribuições foi definido!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>A unidade de distribuição é maior do que o tamanho do objeto.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Total de distribuições</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Este campo é obrigatório porque a unidade de distribuição foi definida!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>O total de distribuições deve ser maior do que 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Você está prestes a fazer rollback</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Purgar Lixo</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Tudo</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pool:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nome do pool...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Restaurar Imagem</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Para restaurar</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>digite o novo nome da imagem e clique em</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Novo Nome</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Venceu em</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Protegido até</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologia iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Não costuma ser necessário mudar o valor padrão destes parâmetros.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Configurações</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Confirmar</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Configurações Avançadas</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN de Destino</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN tem padrão incorreto.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Por exemplo: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Mais informações</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Este destino tem configurações avançadas modificadas.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portais</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Adicionar portal</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Esta imagem tem configurações modificadas.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Adicionar imagem</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Autenticação ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Iniciadores</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Iniciador</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN do Cliente</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>O IQN do Iniciador precisa ser exclusivo.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Os nomes de usuário devem ter entre 8 e 64 caracteres e\n                        apenas podem conter letras, \'.\', \'@\', \'-\', \'_\' ou \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>O iniciador pertence a um grupo. As imagens serão configuradas no grupo.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Nenhum item adicionado.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Adicionar iniciador</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Grupos</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Grupo</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Adicionar grupo</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Lixo</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Problemas</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Sincronizando</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Pronto</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Editar modo de espelho do pool</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Clusters de peer devem ser removidos antes de desabilitar o espelho.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Editar} other {Adicionar} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nome do Cluster</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>O nome do cluster não é válido.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>ID do CephX</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>ID do CephX...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>O ID do CephX não é válido.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Endereços do Monitor</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Endereços delimitados por vírgula...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>O endereço de monitoria não é válido.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Chave do CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Chave codificada com base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>A chave do CephX deve ser codificada com base64.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Contadores de desempenho não disponíveis</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Lista de Daemons</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Contadores de Desempenho</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Carregando dados do compartimento...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>O valor não é válido.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>O nome escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Proprietário</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Selecionar usuário --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Habilitado</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Tipo de índice</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Regra de posicionamento</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Marcador</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Marcador máximo</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Versão</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Versão master</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Horário da modificação</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Grupo de zonas</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Cota do compartimento</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Tamanho máximo</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Ilimitado</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Máximo de objetos</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nome de usuário</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Selecionar nome de usuário --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Gerar chave automaticamente</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Chave de acesso</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Chave secreta</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nome completo</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Endereço de e-mail</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Suspenso</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Sistema</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Máximo de compartimentos</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Subusuários</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Recursos</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Cota do usuário</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Mostrar</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Chaves</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Tipo</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Selecionar tipo --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Permissão</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Selecionar permissão --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Subusuário</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>O ID de subusuário escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>leitura, gravação</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>completo</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Chave Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Gerar segredo automaticamente</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Carregando dados do usuário...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Não foi possível carregar os dados do usuário.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>O ID de usuário escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Este não é um endereço de e-mail válido.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>O endereço de e-mail escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Máx. de compartimentos</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Desabilitado</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Personalizado</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Chave S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Não há subusuários.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Não há chaves.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Não há recursos.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Tamanho ilimitado</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Tamanho máx.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Objetos ilimitados</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Máx. de objetos</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>O valor inserido deve ser &gt;= 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Descrição...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Permissões</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Funções</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Confirmar senha</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>A confirmação de senha não corresponde à senha.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>E-mail</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>E-mail inválido.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Você está prestes a remover as permissões de "leitura/atualização de usuário" do seu próprio usuário.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Se você continuar, não poderá mais adicionar ou remover funções de nenhum usuário.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Deseja realmente continuar?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Ajuda</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Documentação</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Sobre</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Configurações do Painel de Controle</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Gerenciamento de usuários</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Usuário que efetuou login</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Efetuar logout</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atributos (mapa OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadados não disponíveis</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadados</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Contador de desempenho</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Gravações</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Leituras</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histograma</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Valores atuais</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Mín.</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Máx.</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Origem</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Nível</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Pode ser atualizado em tempo de execução (editável)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tags</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Valores de enum</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Consulte também</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Status do Cluster</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Daemons do Gerenciador</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Gateways de Objetos</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Servidores de Metadados</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Gateways iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS do Cliente</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Throughput do Cliente</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Leitura/Gravação do Cliente</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Throughput de Recuperação</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Remoção</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Desempenho</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Capacidade Bruta</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>PGs por OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Status do PG</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Capacidade</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Posições</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Atual</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Autenticação de descoberta atualizada</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Não há portais disponíveis.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Não há imagens disponíveis.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Não há imagens disponíveis. Adicione uma imagem ao destino.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Não há iniciadores disponíveis. Adicione um iniciador ao destino.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Destino</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Estado</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Bytes de Leitura</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Bytes de Gravação</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Op. de Leitura</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Op. de Gravação</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O Desde</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instância</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problema</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Andamento</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Modo de Edição</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Adicionar Peer</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Editar Peer</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Excluir Peer</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>Nº Local</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>Nº Remoto</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>espelhar peer</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Chave</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Nivelamento profundo</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Disposição em camadas</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Bloqueio exclusivo</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mapa de objetos (requer bloqueio exclusivo)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Registro em diário (requer bloqueio exclusivo)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NÃO PROTEGIDO</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Rollback de instantâneo do RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Fazer Rollback</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Instantâneo do RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Excluído à(s)</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>tipo</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>estado</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>versão</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>raiz</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemons de standby</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Posição</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Atividade</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inodes</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Uso</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Atualizado</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>É possível atualizar o valor em temo de execução.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Daemons/clientes não extraem este valor do\n      banco de dados de configuração do monitor. A configuração desta opção não é permitida por meio de \'ceph config\n      set ...\'. Essa opção deve ser configurada por meio do ceph.conf ou da\n      linha de comando.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>A opção entra em vigor apenas durante a inicialização do daemon.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>A opção afeta apenas a criação do cluster.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>A opção afeta apenas a criação do daemon.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Serviço</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Valor atual</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Editável</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Habilitar</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Desabilitar</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Reconectando, aguarde...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Endereço Público</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Sessões Abertas</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Não Entrada</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>Os OSDs que já foram marcados como saída não serão remarcados como entrada ao serem iniciados</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Não Saída</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>Os OSDs não serão automaticamente marcados como saída após o intervalo configurado</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Não Ativo</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>Os OSDs não podem ser iniciados</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Não Inativo</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Os relatórios de falha de OSD estão sendo ignorados, portanto, os monitores não marcarão os OSDs como inativos</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pausar</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Pausa leituras e gravações</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Sem Remoção</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Remoção desabilitada</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Sem Remoção Profunda</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Remoção Profunda desabilitada</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Sem Provisionamento</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Provisionamento de PGs suspenso</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Sem Recuperação</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Recuperação de PGs suspensa</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Classificação Bit a Bit</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Usar classificação bit a bit</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Snapdirs Purgados</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSDs converteram snapsets</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Exclusões de Recuperação</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Exclusões realizadas durante a recuperação, e não o emparelhamento</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Limite Físico do Registro de PG</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Atribui um limite físico ao tamanho do registro de PG</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Flags OSD Atualizadas</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>saída</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>entrada</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>inativo</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Marcar</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD perdido</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>marcado como perdido</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Purgar</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>purgado</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>destruir</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>destruído</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>excluir</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PGs</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Bytes de leitura</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Bytes de gravação</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Op. de leitura</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Op. de gravação</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Máx. de Provisionamentos</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Máx. Recuperação Ativo</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Máx. Recuperação Inicialização Única</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Suspensão de Recuperação</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Tarefa</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Gravidade</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Iniciado</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Usado</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Disp.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Limpar</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>Em funcionamento</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Aviso</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Desconhecido</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>ativo</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>sem sistemas de arquivos</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>ativo</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>standby</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/a</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon ativo</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>O serviço NFS Ganesha não está configurado.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transporte</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Usuário do CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Sistema de Arquivos do CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(herdado da configuração global)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>herdado da configuração global</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Selecionar que tipo de squash de ID de usuário será executado --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Não há daemons disponíveis.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Modo de Cache</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Tempo Mín. Expulsão</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Tempo Mín. Descarregamento</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Máx. de Bytes de Destino</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Máx. de Objetos de Destino</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Nenhum aplicativo adicionado</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Limite de aplicativos atingido</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Um pool apenas pode ter até quatro definições de aplicativos.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Caracteres permitidos: \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Tamanho máximo de 128 caracteres</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtrar ou adicionar aplicativos</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Adicionar aplicativo</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>perfil de código de eliminação</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Tamanho da Réplica</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Última Alteração</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Perfil Codificado para Eliminação</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Conjunto de Regras do Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>compartimento</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>compartimentos</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>usuário</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>usuários</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Escopo</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Leitura</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Criar</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Função do Sistema</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Atualizar usuário</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Continuar</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Você foi automaticamente desconectado porque suas funções foram alteradas.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Cada objeto é dividido em partes de pacotes de dados, cada uma armazenada em um OSD diferente.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Calcule os pacotes de codificação de cada objeto e armazene-os em diferentes OSDs.\n      O número de pacotes de codificação é também o número de OSDs que podem ficar inativos sem perda de dados.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>O plug-in jerasure é o mais genérico e flexível,\n          além de ser o padrão para pools codificados para eliminação do Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>A técnica mais flexível é reed_sol_van: ela é suficiente para definir k\n          e m. A técnica cauchy_good pode ser mais rápida, mas você precisa escolher o tamanho do pacote\n          com cuidado. Todos os reed_sol_r6_op, liberation, blaum_roth e liber8tion são equivalentes ao RAID6\n          no sentido de que só podem ser configurados com m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>A codificação será feita em pacotes de tamanho de bytes um de cada vez.\n          A escolha do tamanho do pacote certo é difícil.\n          A documentação do jerasure contém informações completas sobre este tópico.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Com o plug-in jerasure, quando um objeto codificado para eliminação é armazenado em\n          vários OSDs, a recuperação após a perda de um OSD requer a leitura de todos os outros.\n          Por exemplo, se o jerasure for configurado com k=8 e m=4, a perda de um OSD exigirá a leitura\n          dos outros onze para fazer o reparo.\n\n          O plug-in de código de eliminação lrc cria pacotes locais de paridade para conseguir recuperar usando\n          menos OSDs. Por exemplo, se o lrc for configurado com k=8, m=4 e l=4, ele criará\n          um pacote de paridade adicional para cada quatro OSDs. Quando um único OSD é perdido, ele pode ser\n          recuperado apenas com quatro OSDs, em vez de onze.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Agrupe os pacotes de codificação e dados em conjuntos de localidades com tamanho. Por exemplo,\n          no caso de k=4 e m=2, quando locality=3, dois grupos de três são criados. Cada conjunto pode\n          ser recuperado sem a leitura dos pacotes do outro conjunto.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>O tipo do compartimento de crush em que cada conjunto de pacotes definido\n          por l será armazenado. Por exemplo, se isso for definido como rack, cada grupo de pacotes l será\n          colocado em um rack diferente. Isso é usado para criar uma etapa da regra CRUSH, como a etapa de escolha do\n          rack. Se isso não for definido, esse tipo de agrupamento não será feito.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>O plug-in isa encapsula a biblioteca ISA. Ele apenas é executado em processadores Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>O plug-in ISA vem em dois formatos de Reed Solomon.\n          Se reed_sol_van for definido, ele será Vandermonde, se cauchy for definido, ele será Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>O plug-in shec encapsula a biblioteca múltipla SHEC.\n          Ele permite ao ceph recuperar dados com mais eficiência do que os códigos de Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>O número de pacotes de paridade, em que cada um inclui cada pacote de dados em sua\n          faixa de cálculo. O número é usado como estimador de durabilidade. Por exemplo, se c=2,\n          2 OSDs podem ficar inativos sem perda de dados.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>O nome do compartimento de crush usado para a primeira etapa da regra CRUSH.\n      Por exemplo, a etapa assumir o padrão.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Verifique se não há dois pacotes em um compartimento com o mesmo domínio de\n      falha. Por exemplo, se o domínio de falha for um host, não armazene dois pacotes no mesmo\n      host. Isso é usado para criar uma etapa da regra CRUSH, como a etapa de escolha do host folha.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Restrinja o posicionamento a dispositivos de uma classe específica\n      (ex. ssd ou hdd), usando nomes de classe de dispositivo crush no mapa CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Defina o nome do diretório do qual o plug-in de código de eliminação é carregado.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Permite todas as operações</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Permite apenas as operações que não modificam o servidor</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Não permite operações de leitura ou gravação, mas permite qualquer outra operação</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Não permite leitura, gravação ou qualquer operação que modifica os atributos do arquivo ou o conteúdo do diretório</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Não permite nenhum tipo de acesso</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Selecionar prioridade --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Baixa</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Alta</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informações</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Últimos 5 minutos</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Últimos 15 minutos</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Últimos 30 minutos</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Última 1 hora (Padrão)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Últimas 3 horas</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Últimas 6 horas</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Últimas 12 horas</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Últimas 24 horas</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Ontem</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Hoje</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Até agora hoje</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Antes de ontem</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Últimos 2 dias</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Este dia na semana passada</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Semana anterior</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Esta semana</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Até agora nesta semana</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Últimos 7 dias</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Mês anterior</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Este mês</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Até agora neste mês</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Últimos 30 dias</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Últimos 90 dias</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Últimos 6 meses</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Último ano</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Ano anterior</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Este ano</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Até agora neste ano</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Últimos 2 anos</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Últimos 5 anos</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Nenhum item selecionado.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Desmarcar item para selecionar novamente</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Limite de seleção atingido</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Tags de filtro</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Adicionar selo</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Não há itens disponíveis.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Clonar</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Copiar</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Remoção Profunda</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Destruir</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Nivelar</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Marcar como Inativo</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Marcar como Entrada</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Marcar como Perdido</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Marcar como Saída</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Proteger</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Renomear</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Restaurar</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Mover para Lixo</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Cancelar proteção</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Excluído</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Clonado</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Copiado</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Nivelado</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Purgado</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Restaurado</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Rollback feito</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Sim</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Não</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Qualidade do Serviço</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limite de BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>O limite de bytes por segundo de E/S desejado.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limite de IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>O limite de operações por segundo de E/S desejado.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limite de BPS de Leitura</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>O limite de bytes por segundo de leitura desejado.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limite de IOPS de Leitura</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>O limite de operações por segundo de leitura desejado.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limite de BPS de Gravação</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>O limite de bytes por segundo de gravação desejado.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limite de IOPS de Gravação</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>O limite de operações por segundo de gravação desejado.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Intermitência de BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>O limite de bytes de E/S de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Intermitência de IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>O limite de operações de E/S de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Intermitência de BPS de Leitura</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>O limite de bytes de leitura de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Intermitência de IOPS de Leitura</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>O limite de operações de leitura de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Intermitência de BPS de Gravação</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>O limite de bytes de gravação de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Intermitência de IOPS de Gravação</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>O limite de operações de gravação de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Executando</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>executar</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Executado</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>tarefa desconhecida</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Criando</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>criar</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Atualizando</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>atualizar</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Excluindo</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Clonando</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>clonar</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Copiando</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>copiar</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Nivelando</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>nivelar</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Fazendo rollback</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>rollback</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Movendo</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>mover</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Movido</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Imagem não encontrada.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Restaurando</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>restaurar</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Purgando</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>purgar</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>todos os pools</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Impossível desabilitar espelhamento porque ele contém um peer.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"+Z6c":function(t,e,n){var a=n("TbD+"),r=n("LJNh")((function(t,e){return null==t?{}:a(t,e)}));t.exports=r},"+fVR":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{setExpandedRow(t){this.expandedRow=t}}},"+gVj":function(t,e,n){"use strict";n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return u})),n.d(e,"c",(function(){return f})),n.d(e,"d",(function(){return i})),n.d(e,"e",(function(){return l})),n.d(e,"f",(function(){return g})),n.d(e,"g",(function(){return c})),n.d(e,"h",(function(){return h}));var a=n("8Y7J"),r=n("s7LF");class i{constructor(){this.validSubmit=new a.EventEmitter}onSubmit(){this.markAsTouchedAndDirty(this.formGroup),this.formGroup.valid&&this.validSubmit.emit(this.formGroup.value)}markAsTouchedAndDirty(t){t instanceof r.k?Object.keys(t.controls).forEach(e=>this.markAsTouchedAndDirty(t.controls[e])):t instanceof r.f?t.controls.forEach(t=>this.markAsTouchedAndDirty(t)):t instanceof r.i&&t.enabled&&(t.markAsDirty(),t.markAsTouched(),t.updateValueAndValidity())}}const s=function(){var t={Three:0,Four:1};return t[t.Three]="Three",t[t.Four]="Four",t}(),u=new a.InjectionToken("ng-bootstrap-form-validation custom error messages"),o=new a.InjectionToken("ng-bootstrap-form-validation module options");class l{constructor(t){this.bootstrapVersion=t,this.messages=()=>[]}get className(){switch(this.bootstrapVersion){case s.Three:return"help-block";case s.Four:return"invalid-feedback"}}}const d=[{error:"required",format:t=>t+" is required"},{error:"pattern",format:t=>t+" is invalid"},{error:"minlength",format:(t,e)=>`${t} must be at least ${e.requiredLength} characters`},{error:"maxlength",format:(t,e)=>`${t} must be no longer than ${e.requiredLength} characters`},{error:"requiredTrue",format:(t,e)=>t+" is required"},{error:"email",format:(t,e)=>"Invalid email address"},{error:"max",format:(t,e)=>`${t} must be no greater than ${e.max}`},{error:"min",format:(t,e)=>`${t} must be no less than ${e.min}`}];let c=(()=>{class t{constructor(t){this.customErrorMessages=t,this.defaultErrors=d,this.errorMessages=t.reduce((t,e)=>t.concat(e),this.defaultErrors)}}return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t(Object(a["ɵɵinject"])(u))},token:t,providedIn:"root"}),t})();class f{constructor(t,e){this.elRef=t,this.errorMessageService=e,this.customErrorMessages=[],this.validationDisabled=!1,this.messages=()=>this.getMessages()}get hasErrors(){return this.FormControlNames.some(t=>!t.valid&&t.dirty&&t.touched)&&!this.validationDisabled}get hasSuccess(){return!this.FormControlNames.some(t=>!t.valid)&&this.FormControlNames.some(t=>t.dirty&&t.touched)&&!this.validationDisabled}ngAfterContentInit(){this.messagesBlock&&(this.messagesBlock.messages=this.messages)}ngOnInit(){this.errorMessages=this.errorMessageService.errorMessages.concat(this.customErrorMessages).reverse()}get label(){const t=this.elRef.nativeElement.querySelector("label");return t&&t.textContent?t.textContent.trim():"This field"}get isDirtyAndTouched(){return this.FormControlNames.some(t=>t.dirty&&t.touched)}getMessages(){const t=[];if(!this.isDirtyAndTouched||this.validationDisabled)return t;const e=this.FormControlNames.map(t=>t.name);return this.FormControlNames.filter((t,n)=>!t.valid&&!!t.errors&&e.indexOf(t.name)===n).forEach(e=>{Object.keys(e.errors).forEach(n=>{const a=this.errorMessages.find(t=>t.error===n);a&&t.push(a.format(this.label,e.errors[n]))})}),t}}class h{constructor(t,e){this.parent=t,this.bootstrapVersion=e}get validClass(){return!!this.control&&this.bootstrapFour&&this.control.valid&&(this.control.touched||this.control.dirty)}get invalidClass(){return!!this.control&&this.bootstrapFour&&this.control.invalid&&this.control.touched&&this.control.dirty}get path(){return[...this.parent.path,this.formControlName]}get control(){return this.formDirective&&this.formDirective.getControl(this)}get formDirective(){return this.parent?this.parent.formDirective:null}get bootstrapFour(){return this.bootstrapVersion===s.Four}}class g{static forRoot(t={bootstrapVersion:s.Four}){return{ngModule:g,providers:[{provide:u,useValue:t.customErrorMessages||[],multi:!0},{provide:o,useValue:t.bootstrapVersion},c]}}}},"+s0g":function(t,e,n){!function(t){"use strict";var e="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),n="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),a=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],r=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;t.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}})}(n("wd/R"))},"+xYL":function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(e){}try{return t+""}catch(e){}}return""}},"//9w":function(t,e,n){!function(t){"use strict";t.defineLocale("se",{months:"ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"),monthsShort:"ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov".split("_"),weekdays:"sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"),weekdaysShort:"sotn_vuos_maŋ_gask_duor_bear_láv".split("_"),weekdaysMin:"s_v_m_g_d_b_L".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"MMMM D. [b.] YYYY",LLL:"MMMM D. [b.] YYYY [ti.] HH:mm",LLLL:"dddd, MMMM D. [b.] YYYY [ti.] HH:mm"},calendar:{sameDay:"[otne ti] LT",nextDay:"[ihttin ti] LT",nextWeek:"dddd [ti] LT",lastDay:"[ikte ti] LT",lastWeek:"[ovddit] dddd [ti] LT",sameElse:"L"},relativeTime:{future:"%s geažes",past:"maŋit %s",s:"moadde sekunddat",ss:"%d sekunddat",m:"okta minuhta",mm:"%d minuhtat",h:"okta diimmu",hh:"%d diimmut",d:"okta beaivi",dd:"%d beaivvit",M:"okta mánnu",MM:"%d mánut",y:"okta jahki",yy:"%d jagit"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},"/F2L":function(t,e,n){var a=n("emnf"),r=n("G3uG")(a);t.exports=r},"/GqU":function(t,e,n){var a=n("RK3t"),r=n("HYAF");t.exports=function(t){return a(r(t))}},"/Gx3":function(t,e,n){var a=n("aHcz"),r=n("8V0S"),i=n("/F2L");t.exports=function(t,e){return i(r(t,e,a),t+"")}},"/NlG":function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("8Y7J"),r=n("oxzT");class i{constructor(t){this.i18n=t,this.title="",this.bootstrapClass="",this.backAction=new a.EventEmitter,this.size="normal",this.showIcon=!0,this.showTitle=!0,this.icons=r.a}ngOnInit(){switch(this.type){case"warning":this.title=this.title||this.i18n("Warning"),this.typeIcon=this.typeIcon||r.a.warning,this.bootstrapClass=this.bootstrapClass||"warning";break;case"error":this.title=this.title||this.i18n("Error"),this.typeIcon=this.typeIcon||r.a.destroyCircle,this.bootstrapClass=this.bootstrapClass||"danger";break;case"info":this.title=this.title||this.i18n("Information"),this.typeIcon=this.typeIcon||r.a.infoCircle,this.bootstrapClass=this.bootstrapClass||"info";break;case"success":this.title=this.title||this.i18n("Success"),this.typeIcon=this.typeIcon||r.a.check,this.bootstrapClass=this.bootstrapClass||"success"}}}},"/X5v":function(t,e,n){!function(t){"use strict";t.defineLocale("x-pseudo",{months:"J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér".split("_"),monthsShort:"J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc".split("_"),monthsParseExact:!0,weekdays:"S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý".split("_"),weekdaysShort:"S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát".split("_"),weekdaysMin:"S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[T~ódá~ý át] LT",nextDay:"[T~ómó~rró~w át] LT",nextWeek:"dddd [át] LT",lastDay:"[Ý~ést~érdá~ý át] LT",lastWeek:"[L~ást] dddd [át] LT",sameElse:"L"},relativeTime:{future:"í~ñ %s",past:"%s á~gó",s:"á ~féw ~sécó~ñds",ss:"%d s~écóñ~ds",m:"á ~míñ~úté",mm:"%d m~íñú~tés",h:"á~ñ hó~úr",hh:"%d h~óúrs",d:"á ~dáý",dd:"%d d~áýs",M:"á ~móñ~th",MM:"%d m~óñt~hs",y:"á ~ýéár",yy:"%d ý~éárs"},dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},"/b8u":function(t,e,n){var a=n("STAE");t.exports=a&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},"/byt":function(t,e){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},"/rd/":function(t,e,n){var a=n("im1V"),r=n("x3F9");t.exports=function(t){return r(t)&&a(t)}},0:function(t,e,n){t.exports=n("zUnb")},"0+/T":function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("s7LF"),r=n("QFaf");n("sb0X");class i{constructor(t){this.modalRef=t,this.actionDescription="delete"}ngOnInit(){const t={confirmation:new a.i(!1,[a.B.requiredTrue])};if(this.childFormGroup&&(t.child=this.childFormGroup),this.deletionForm=new r.a(t),!this.submitAction&&!this.submitActionObservable)throw new Error("No submit action defined")}callSubmitAction(){this.submitActionObservable?this.submitActionObservable().subscribe(null,this.stopLoadingSpinner.bind(this),this.hideModal.bind(this)):this.submitAction()}hideModal(){this.modalRef.hide()}stopLoadingSpinner(){this.deletionForm.setErrors({cdSubmitButton:!0})}}},"02OF":function(t,e,n){var a=n("IfUl"),r=n("j09V"),i=n("lEOU"),s=n("Y3RO"),u=n("pcUq"),o=n("PHub"),l=n("0GLT"),d=n("/rd/"),c=n("y/5f"),f=n("Q7RW"),h=n("hmSm"),g=n("CslI"),p=n("uPDw"),b=n("dCge"),m=n("eAIQ");t.exports=function(t,e,n,y,v,x,_){var T=b(t,n),w=b(e,n),O=_.get(w);if(O)a(t,n,O);else{var S=x?x(T,w,n+"",t,e,_):void 0,I=void 0===S;if(I){var N=l(w),C=!N&&c(w),R=!N&&!C&&p(w);S=w,N||C||R?l(T)?S=T:d(T)?S=s(T):C?(I=!1,S=r(w,!0)):R?(I=!1,S=i(w,!0)):S=[]:g(w)||o(w)?(S=T,o(T)?S=m(T):h(T)&&!f(T)||(S=u(w))):I=!1}I&&(_.set(w,S),v(S,w,y,x,_),_.delete(w)),a(t,n,S)}}},"07d7":function(t,e,n){var a=n("AO7/"),r=n("busE"),i=n("sEFX");a||r(Object.prototype,"toString",i,{unsafe:!0})},"0BK2":function(t,e){t.exports={}},"0BcO":function(t,e,n){var a=n("KFwg")(n("Wa4q"),"WeakMap");t.exports=a},"0Dky":function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},"0EUg":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("bHdf");function r(){return Object(a.a)(1)}},"0GLT":function(t,e){t.exports=Array.isArray},"0GbY":function(t,e,n){var a=n("Qo9l"),r=n("2oRo"),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(a[t])||i(r[t]):a[t]&&a[t][e]||r[t]&&r[t][e]}},"0eef":function(t,e,n){"use strict";var a={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,i=r&&!a.call({1:2},1);e.f=i?function(t){var e=r(this,t);return!!e&&e.enumerable}:a},"0mo+":function(t,e,n){!function(t){"use strict";var e={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},n={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};t.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",ss:"%d སྐར་ཆ།",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(t){return t.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,meridiemHour:function(t,e){return 12===t&&(t=0),"མཚན་མོ"===e&&t>=4||"ཉིན་གུང"===e&&t<5||"དགོང་དག"===e?t+12:t},meridiem:function(t,e,n){return t<4?"མཚན་མོ":t<10?"ཞོགས་ཀས":t<17?"ཉིན་གུང":t<20?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}(n("wd/R"))},"0nKi":function(t,e){t.exports=function(t){return function(e){return t(e)}}},"0rEg":function(t,e){t.exports=function(t,e,n){for(var a=n-1,r=t.length;++a<r;)if(t[a]===e)return a;return-1}},"0rvr":function(t,e,n){var a=n("glrk"),r=n("O741");t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(i){}return function(n,i){return a(n),r(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},"0tRk":function(t,e,n){!function(t){"use strict";t.defineLocale("pt-br",{months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº"})}(n("wd/R"))},"128B":function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("Kqap"),r=n("BFxc"),i=n("xbPD"),s=n("mCNh");function u(t,e){return arguments.length>=2?function(n){return Object(s.a)(Object(a.a)(t,e),Object(r.a)(1),Object(i.a)(e))(n)}:function(e){return Object(s.a)(Object(a.a)((e,n,a)=>t(e,n,a+1)),Object(r.a)(1))(e)}}},"14R3":function(t,e){"undefined"!=typeof Element&&("function"!=typeof Element.prototype.matches&&(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.webkitMatchesSelector||function(t){for(var e=(this.document||this.ownerDocument).querySelectorAll(t),n=0;e[n]&&e[n]!==this;)++n;return Boolean(e[n])}),"function"!=typeof Element.prototype.closest&&(Element.prototype.closest=function(t){for(var e=this;e&&1===e.nodeType;){if(e.matches(t))return e;e=e.parentNode}return null}))},"14Sl":function(t,e,n){"use strict";n("rB9j");var a=n("busE"),r=n("0Dky"),i=n("tiKp"),s=n("kmMV"),u=n("kRJp"),o=i("species"),l=!r((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),d="$0"==="a".replace(/./,"$0"),c=i("replace"),f=!!/./[c]&&""===/./[c]("a","$0"),h=!r((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,c){var g=i(t),p=!r((function(){var e={};return e[g]=function(){return 7},7!=""[t](e)})),b=p&&!r((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[o]=function(){return n},n.flags="",n[g]=/./[g]),n.exec=function(){return e=!0,null},n[g](""),!e}));if(!p||!b||"replace"===t&&(!l||!d||f)||"split"===t&&!h){var m=/./[g],y=n(g,""[t],(function(t,e,n,a,r){return e.exec===s?p&&!r?{done:!0,value:m.call(e,n,a)}:{done:!0,value:t.call(n,e,a)}:{done:!1}}),{REPLACE_KEEPS_$0:d,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:f}),v=y[1];a(String.prototype,t,y[0]),a(RegExp.prototype,g,2==e?function(t,e){return v.call(t,this,e)}:function(t){return v.call(t,this)})}c&&u(RegExp.prototype[g],"sham",!0)}},"1E5z":function(t,e,n){var a=n("m/L8").f,r=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,i)&&a(t,i,{configurable:!0,value:e})}},"1Ni5":function(t,e,n){"use strict";var a=n("s7LF"),r=n("LvDl"),i=n("LRne"),s=n("PqYM"),u=n("eIep");function o(t,e){return e?Object(u.a)(()=>t,e):Object(u.a)(()=>t)}var l=n("lJxs"),d=n("IzEk"),c=n("Fgil"),f=n("aXbf");function h(t){return null==t||0===t.length}n.d(e,"b",(function(){return h})),n.d(e,"a",(function(){return g}));class g{static email(t){return h(t.value)?null:a.B.email(t)}static ip(t=0){const e=/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i,n=/^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}$/i;return a.B.pattern(4===t?e:6===t?n:new RegExp(e.source+"|"+n.source))}static number(t=!0){return a.B.pattern(t?/^-?[0-9]+$/i:/^[0-9]+$/i)}static decimalNumber(t=!0){return a.B.pattern(t?/^-?[0-9]+(.[0-9]+)?$/i:/^[0-9]+(.[0-9]+)?$/i)}static sslCert(){return a.B.pattern(/^-----BEGIN CERTIFICATE-----(\n|\r|\f)((.+)?((\n|\r|\f).+)*)(\n|\r|\f)-----END CERTIFICATE-----[\n\r\f]*$/)}static sslPrivKey(){return a.B.pattern(/^-----BEGIN RSA PRIVATE KEY-----(\n|\r|\f)((.+)?((\n|\r|\f).+)*)(\n|\r|\f)-----END RSA PRIVATE KEY-----[\n\r\f]*$/)}static requiredIf(t,e){let n=!1;return a=>(!n&&a.parent&&(Object.keys(t).forEach(t=>{a.parent.get(t).valueChanges.subscribe(()=>{a.updateValueAndValidity({emitEvent:!1})})}),n=!0),Object.keys(t).every(e=>{if(!a.parent)return!1;const n=a.parent.get(e).value,i=t[e];if(r.isObjectLike(i)){let t=!1;switch(i.op){case"empty":t=r.isEmpty(n);break;case"!empty":t=!r.isEmpty(n);break;case"equal":t=n===i.arg1;break;case"!equal":t=n!==i.arg1;break;case"minLength":r.isString(n)&&(t=n.length>=i.arg1)}return t}return n===i})&&(r.isFunction(e)?e.call(e,a.value):h(a.value))?{required:!0}:null)}static composeIf(t,e){let n=!1;return r=>(!n&&r.parent&&(Object.keys(t).forEach(t=>{r.parent.get(t).valueChanges.subscribe(()=>{r.updateValueAndValidity({emitEvent:!1})})}),n=!0),Object.keys(t).every(e=>r.parent&&r.parent.get(e).value===t[e])?a.B.compose(e)(r):null)}static custom(t,e){return n=>{const a=e.call(this,n.value);return a?{[t]:a}:null}}static validateIf(t,e,n,r=[],i=[]){n=n.concat(r),t.setValidators(t=>e.call(this)?a.B.compose(n)(t):r.length>0?a.B.compose(r)(t):null),i.forEach(e=>{e.valueChanges.subscribe(()=>{t.updateValueAndValidity({emitEvent:!1})})})}static match(t,e){return n=>{const a=n.get(t),i=n.get(e);if(!a||!i)return null;if(a.value!==i.value)i.setErrors({match:!0});else if(i.hasError("match")){const t=i.errors;r.unset(t,"match"),i.setErrors(r.isEmpty(r.keys(t))?null:t)}return null}}static unique(t,e=null,n,a=!1,u=500){let c;return f=>f.pristine||h(f.value)?Object(i.a)(null):(c=f.value,r.isFunction(n)&&null!==n()&&""!==n()&&(c=a?`${f.value}$${n()}`:`${n()}$${f.value}`),Object(s.a)(u).pipe(o(t.call(e,c)),Object(l.a)(t=>t?{notUnique:!0}:null),Object(d.a)(1)))}static uuid(t=!1){const e=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;return n=>n.pristine&&n.untouched?null:t||n.value?e.test(n.value)?null:{invalidUuid:"This is not a valid UUID"}:null}static binaryMin(t){return e=>{const n=new f.a,a=(new f.a).toBytes(e.value);if(t<=a)return null;const r=new c.a(n).transform(t);return{binaryMin:t=>t("Size has to be at least {{value}} or more",{value:r})}}}static binaryMax(t){return e=>{const n=new f.a,a=n.toBytes(e.value);if(t>=a)return null;const r=new c.a(n).transform(t);return{binaryMax:t=>t("Size has to be at most {{value}} or less",{value:r})}}}static passwordPolicy(t,e,n){return a=>{if(a.pristine||""===a.value)return r.isFunction(n)&&n(!0,0),Object(i.a)(null);let u;return r.isFunction(e)&&(u=e()),Object(s.a)(500).pipe(o(r.invoke(t,"validatePassword",a.value,u)),Object(l.a)(t=>(r.isFunction(n)&&n(t.valid,t.credits,t.valuation),t.valid?null:{passwordPolicy:!0})),Object(d.a)(1))}}}},"1Y/n":function(t,e,n){var a=n("HAuM"),r=n("ewvW"),i=n("RK3t"),s=n("UMSQ"),u=function(t){return function(e,n,u,o){a(n);var l=r(e),d=i(l),c=s(l.length),f=t?c-1:0,h=t?-1:1;if(u<2)for(;;){if(f in d){o=d[f],f+=h;break}if(f+=h,t?f<0:c<=f)throw TypeError("Reduce of empty array with no initial value")}for(;t?f>=0:c>f;f+=h)f in d&&(o=n(o,d[f],f,l));return o}};t.exports={left:u(!1),right:u(!0)}},"1Yk6":function(t,e,n){var a=n("IyEx"),r=n("kA6G"),i=Object.prototype.propertyIsEnumerable,s=Object.getOwnPropertySymbols;t.exports=s?function(t){return null==t?[]:(t=Object(t),a(s(t),(function(e){return i.call(t,e)})))}:r},"1nQr":function(t,e,n){"use strict";var a=n("LvDl"),r=n("lJxs"),i=n("20UP");class s{constructor(t){this.pwdPolicyEnabled=t.pwd_policy_enabled,this.pwdPolicyMinLength=t.pwd_policy_min_length,this.pwdPolicyCheckLengthEnabled=t.pwd_policy_check_length_enabled,this.pwdPolicyCheckOldpwdEnabled=t.pwd_policy_check_oldpwd_enabled,this.pwdPolicyCheckUsernameEnabled=t.pwd_policy_check_username_enabled,this.pwdPolicyCheckExclusionListEnabled=t.pwd_policy_check_exclusion_list_enabled,this.pwdPolicyCheckRepetitiveCharsEnabled=t.pwd_policy_check_repetitive_chars_enabled,this.pwdPolicyCheckSequentialCharsEnabled=t.pwd_policy_check_sequential_chars_enabled,this.pwdPolicyCheckComplexityEnabled=t.pwd_policy_check_complexity_enabled}}var u=n("8Y7J"),o=n("GiVz");n.d(e,"a",(function(){return l}));let l=(()=>{class t{constructor(t,e){this.i18n=t,this.settingsService=e}getHelpText(){return this.settingsService.getStandardSettings().pipe(Object(r.a)(t=>{const e=new s(t);let n=[];if(e.pwdPolicyEnabled){n.push(this.i18n("Required rules for passwords:"));const t={pwdPolicyCheckLengthEnabled:this.i18n("Must contain at least {{length}} characters",{length:e.pwdPolicyMinLength}),pwdPolicyCheckOldpwdEnabled:this.i18n("Must not be the same as the previous one"),pwdPolicyCheckUsernameEnabled:this.i18n("Cannot contain the username"),pwdPolicyCheckExclusionListEnabled:this.i18n("Cannot contain any configured keyword"),pwdPolicyCheckRepetitiveCharsEnabled:this.i18n('Cannot contain any repetitive characters e.g. "aaa"'),pwdPolicyCheckSequentialCharsEnabled:this.i18n('Cannot contain any sequential characters e.g. "abc"'),pwdPolicyCheckComplexityEnabled:this.i18n("Must consist of characters from the following groups:\n  * Alphabetic a-z, A-Z\n  * Numbers 0-9\n  * Special chars: !\"#$%& '()*+,-./:;<=>?@[\\]^_`{{|}}~\n  * Any other characters (signs)")};n=n.concat(a.keys(t).filter(t=>a.get(e,t)).map(e=>"- "+a.get(t,e)))}return n.join("\n")}))}mapCreditsToCssClass(t){let e="very-strong";return t<10?e="too-weak":t<15?e="weak":t<20?e="ok":t<25&&(e="strong"),e}}return t.ngInjectableDef=u["ɵɵdefineInjectable"]({factory:function(){return new t(u["ɵɵinject"](o.a),u["ɵɵinject"](i.a))},token:t,providedIn:"root"}),t})()},"1rYy":function(t,e,n){!function(t){"use strict";t.defineLocale("hy-am",{months:{format:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_"),standalone:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_")},monthsShort:"հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_"),weekdays:"կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_"),weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., HH:mm",LLLL:"dddd, D MMMM YYYY թ., HH:mm"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",ss:"%d վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(t){return/^(ցերեկվա|երեկոյան)$/.test(t)},meridiem:function(t){return t<4?"գիշերվա":t<12?"առավոտվա":t<17?"ցերեկվա":"երեկոյան"},dayOfMonthOrdinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(t,e){switch(e){case"DDD":case"w":case"W":case"DDDo":return 1===t?t+"-ին":t+"-րդ";default:return t}},week:{dow:1,doy:7}})}(n("wd/R"))},"1xZ4":function(t,e,n){!function(t){"use strict";t.defineLocale("ca",{months:{standalone:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),format:"de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.".split("_"),monthsParseExact:!0,weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dt_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a les] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a les] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"d'aquí %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(t,e){var n=1===t?"r":2===t?"n":3===t?"r":4===t?"t":"è";return"w"!==e&&"W"!==e||(n="a"),t+n},week:{dow:1,doy:4}})}(n("wd/R"))},"20UP":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("LvDl"),r=n("lJxs"),i=n("8Y7J"),s=n("IheW"),u=n("pL04");let o=(()=>{class t{constructor(t){this.http=t,this.settings={}}getValues(t){return a.isArray(t)&&(t=t.join(",")),this.http.get("api/settings?names="+t).pipe(Object(r.a)(t=>{const e={};return a.forEach(t,t=>{a.set(e,t.name,t.value)}),e}))}ifSettingConfigured(t,e,n){const a=this.settings[t];void 0===a?this.http.get(t).subscribe(a=>{this.settings[t]=this.getSettingsValue(a),this.ifSettingConfigured(t,e,n)},e=>{401!==e.status&&(this.settings[t]="")}):""!==a?e(a):n&&n()}disableSetting(t){this.settings[t]=""}getSettingsValue(t){return t.value||t.instance||""}validateGrafanaDashboardUrl(t){return this.http.get("api/grafana/validation/"+t)}getStandardSettings(){return this.http.get("ui-api/standard_settings")}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](s.c))},token:t,providedIn:u.a}),t})()},2316:function(t,e,n){var a=n("LWR0"),r=n("hmSm");t.exports=function(t,e,n){var i=!0,s=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return r(n)&&(i="leading"in n?!!n.leading:i,s="trailing"in n?!!n.trailing:s),a(t,e,{leading:i,maxWait:e,trailing:s})}},"25BL":function(t,e,n){"use strict";var a=n("8Y7J"),r=n("DqMs"),i=n("/NlG"),s=n("GiVz"),u=n("SVse"),o=n("FE24"),l=n("z/SZ"),d=n("GS7A"),c=n("s7LF"),f=n("w9WL"),h=a["ɵcrt"]({encapsulation:2,styles:[".ngx-datatable{display:block;overflow:hidden;justify-content:center;position:relative;-webkit-transform:translate3d(0,0,0)}.ngx-datatable [hidden]{display:none!important}.ngx-datatable *,.ngx-datatable :after,.ngx-datatable :before{box-sizing:border-box}.ngx-datatable.scroll-vertical .datatable-body{overflow-y:auto}.ngx-datatable.scroll-vertical.virtualized .datatable-body .datatable-row-wrapper{position:absolute}.ngx-datatable.scroll-horz .datatable-body{overflow-x:auto;-webkit-overflow-scrolling:touch}.ngx-datatable.fixed-header .datatable-header .datatable-header-inner{white-space:nowrap}.ngx-datatable.fixed-header .datatable-header .datatable-header-inner .datatable-header-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ngx-datatable.fixed-row .datatable-scroll,.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row{white-space:nowrap}.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row .datatable-body-cell,.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row .datatable-body-group-cell{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ngx-datatable .datatable-body-row,.ngx-datatable .datatable-header-inner,.ngx-datatable .datatable-row-center{display:flex;flex-direction:row;-o-flex-flow:row;flex-flow:row}.ngx-datatable .datatable-body-cell,.ngx-datatable .datatable-header-cell{overflow-x:hidden;vertical-align:top;display:inline-block;line-height:1.625}.ngx-datatable .datatable-body-cell:focus,.ngx-datatable .datatable-header-cell:focus{outline:0}.ngx-datatable .datatable-row-left,.ngx-datatable .datatable-row-right{z-index:9}.ngx-datatable .datatable-row-center,.ngx-datatable .datatable-row-group,.ngx-datatable .datatable-row-left,.ngx-datatable .datatable-row-right{position:relative}.ngx-datatable .datatable-header{display:block;overflow:hidden}.ngx-datatable .datatable-header .datatable-header-inner{align-items:stretch;-webkit-align-items:stretch}.ngx-datatable .datatable-header .datatable-header-cell{position:relative;display:inline-block}.ngx-datatable .datatable-header .datatable-header-cell.sortable .datatable-header-cell-wrapper{cursor:pointer}.ngx-datatable .datatable-header .datatable-header-cell.longpress .datatable-header-cell-wrapper{cursor:move}.ngx-datatable .datatable-header .datatable-header-cell .sort-btn{line-height:100%;vertical-align:middle;display:inline-block;cursor:pointer}.ngx-datatable .datatable-header .datatable-header-cell .resize-handle,.ngx-datatable .datatable-header .datatable-header-cell .resize-handle--not-resizable{display:inline-block;position:absolute;right:0;top:0;bottom:0;width:5px;padding:0 4px;visibility:hidden}.ngx-datatable .datatable-header .datatable-header-cell .resize-handle{cursor:ew-resize}.ngx-datatable .datatable-header .datatable-header-cell.resizeable:hover .resize-handle,.ngx-datatable .datatable-header .datatable-header-cell:hover .resize-handle--not-resizable{visibility:visible}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker{position:absolute;top:0;bottom:0}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker.dragFromLeft{right:0}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker.dragFromRight{left:0}.ngx-datatable .datatable-header .datatable-header-cell .datatable-header-cell-template-wrap{height:inherit}.ngx-datatable .datatable-body{position:relative;z-index:10;display:block}.ngx-datatable .datatable-body .datatable-scroll{display:inline-block}.ngx-datatable .datatable-body .datatable-row-detail{overflow-y:hidden}.ngx-datatable .datatable-body .datatable-row-wrapper{display:flex;flex-direction:column}.ngx-datatable .datatable-body .datatable-body-row{outline:0}.ngx-datatable .datatable-body .datatable-body-row>div{display:flex}.ngx-datatable .datatable-footer{display:block;width:100%;overflow:auto}.ngx-datatable .datatable-footer .datatable-footer-inner{display:flex;align-items:center;width:100%}.ngx-datatable .datatable-footer .selected-count .page-count{flex:1 1 40%}.ngx-datatable .datatable-footer .selected-count .datatable-pager{flex:1 1 60%}.ngx-datatable .datatable-footer .page-count{flex:1 1 20%}.ngx-datatable .datatable-footer .datatable-pager{flex:1 1 80%;text-align:right}.ngx-datatable .datatable-footer .datatable-pager .pager,.ngx-datatable .datatable-footer .datatable-pager .pager li{padding:0;margin:0;display:inline-block;list-style:none}.ngx-datatable .datatable-footer .datatable-pager .pager li,.ngx-datatable .datatable-footer .datatable-pager .pager li a{outline:0}.ngx-datatable .datatable-footer .datatable-pager .pager li a{cursor:pointer;display:inline-block}.ngx-datatable .datatable-footer .datatable-pager .pager li.disabled a{cursor:not-allowed}"],data:{}});function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"datatable-header",[["class","datatable-header"]],[[4,"height",null],[4,"width",null]],[[null,"sort"],[null,"resize"],[null,"reorder"],[null,"select"],[null,"columnContextmenu"]],(function(t,e,n){var a=!0,r=t.component;return"sort"===e&&(a=!1!==r.onColumnSort(n)&&a),"resize"===e&&(a=!1!==r.onColumnResize(n)&&a),"reorder"===e&&(a=!1!==r.onColumnReorder(n)&&a),"select"===e&&(a=!1!==r.onHeaderSelect(n)&&a),"columnContextmenu"===e&&(a=!1!==r.onColumnContextmenu(n)&&a),a}),x,m)),a["ɵdid"](1,180224,[[2,4]],0,f.i,[a.ChangeDetectorRef],{sortAscendingIcon:[0,"sortAscendingIcon"],sortDescendingIcon:[1,"sortDescendingIcon"],scrollbarH:[2,"scrollbarH"],dealsWithGroup:[3,"dealsWithGroup"],targetMarkerTemplate:[4,"targetMarkerTemplate"],innerWidth:[5,"innerWidth"],sorts:[6,"sorts"],sortType:[7,"sortType"],allRowsSelected:[8,"allRowsSelected"],selectionType:[9,"selectionType"],reorderable:[10,"reorderable"],headerHeight:[11,"headerHeight"],columns:[12,"columns"],offsetX:[13,"offsetX"]},{sort:"sort",reorder:"reorder",resize:"resize",select:"select",columnContextmenu:"columnContextmenu"}),a["ɵpid"](131072,u.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,1,[n.cssClasses.sortAscending,n.cssClasses.sortDescending,n.scrollbarH,void 0!==n.groupedRows,n.targetMarkerTemplate,n._innerWidth,n.sorts,n.sortType,n.allRowsSelected,n.selectionType,n.reorderable,n.headerHeight,n._internalColumns,a["ɵunv"](e,1,13,a["ɵnov"](e,2).transform(n._offsetX))])}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).headerHeight,a["ɵnov"](e,1).headerWidth)}))}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-footer",[["class","datatable-footer"]],null,[[null,"page"]],(function(t,e,n){var a=!0;return"page"===e&&(a=!1!==t.component.onFooterPage(n)&&a),a}),Nt,_t)),a["ɵdid"](1,49152,null,0,f.f,[],{footerHeight:[0,"footerHeight"],rowCount:[1,"rowCount"],pageSize:[2,"pageSize"],offset:[3,"offset"],pagerLeftArrowIcon:[4,"pagerLeftArrowIcon"],pagerRightArrowIcon:[5,"pagerRightArrowIcon"],pagerPreviousIcon:[6,"pagerPreviousIcon"],pagerNextIcon:[7,"pagerNextIcon"],totalMessage:[8,"totalMessage"],footerTemplate:[9,"footerTemplate"],selectedCount:[10,"selectedCount"],selectedMessage:[11,"selectedMessage"]},{page:"page"})],(function(t,e){var n=e.component;t(e,1,1,[n.footerHeight,n.rowCount,n.pageSize,n.offset,n.cssClasses.pagerLeftArrow,n.cssClasses.pagerRightArrow,n.cssClasses.pagerPrevious,n.cssClasses.pagerNext,n.messages.totalMessage,n.footer,n.selected.length,!!n.selectionType&&n.messages.selectedMessage])}),null)}function b(t){return a["ɵvid"](2,[a["ɵqud"](671088640,1,{bodyComponent:0}),a["ɵqud"](671088640,2,{headerComponent:0}),(t()(),a["ɵeld"](2,0,null,null,8,"div",[["visibilityObserver",""]],[[2,"visible",null]],[[null,"visible"]],(function(t,e,n){var a=!0;return"visible"===e&&(a=!1!==t.component.recalculate()&&a),a}),null,null)),a["ɵdid"](3,212992,null,0,f.B,[a.ElementRef,a.NgZone],null,{visible:"visible"}),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](6,0,null,null,2,"datatable-body",[["class","datatable-body"]],[[4,"width",null],[4,"height",null]],[[null,"page"],[null,"activate"],[null,"rowContextmenu"],[null,"select"],[null,"scroll"],[null,"treeAction"]],(function(t,e,n){var a=!0,r=t.component;return"page"===e&&(a=!1!==r.onBodyPage(n)&&a),"activate"===e&&(a=!1!==r.activate.emit(n)&&a),"rowContextmenu"===e&&(a=!1!==r.onRowContextmenu(n)&&a),"select"===e&&(a=!1!==r.onBodySelect(n)&&a),"scroll"===e&&(a=!1!==r.onBodyScroll(n)&&a),"treeAction"===e&&(a=!1!==r.onTreeAction(n)&&a),a}),F,R)),a["ɵdid"](7,245760,[[1,4]],0,f.c,[a.ChangeDetectorRef],{scrollbarV:[0,"scrollbarV"],scrollbarH:[1,"scrollbarH"],loadingIndicator:[2,"loadingIndicator"],externalPaging:[3,"externalPaging"],rowHeight:[4,"rowHeight"],offsetX:[5,"offsetX"],emptyMessage:[6,"emptyMessage"],selectionType:[7,"selectionType"],selected:[8,"selected"],rowIdentity:[9,"rowIdentity"],rowDetail:[10,"rowDetail"],groupHeader:[11,"groupHeader"],selectCheck:[12,"selectCheck"],displayCheck:[13,"displayCheck"],trackByProp:[14,"trackByProp"],rowClass:[15,"rowClass"],groupedRows:[16,"groupedRows"],groupExpansionDefault:[17,"groupExpansionDefault"],innerWidth:[18,"innerWidth"],groupRowsBy:[19,"groupRowsBy"],virtualization:[20,"virtualization"],summaryRow:[21,"summaryRow"],summaryPosition:[22,"summaryPosition"],summaryHeight:[23,"summaryHeight"],pageSize:[24,"pageSize"],rows:[25,"rows"],columns:[26,"columns"],offset:[27,"offset"],rowCount:[28,"rowCount"],bodyHeight:[29,"bodyHeight"]},{scroll:"scroll",page:"page",activate:"activate",select:"select",rowContextmenu:"rowContextmenu",treeAction:"treeAction"}),a["ɵpid"](131072,u.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](10,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0),t(e,5,0,n.headerHeight),t(e,7,1,[n.scrollbarV,n.scrollbarH,n.loadingIndicator,n.externalPaging,n.rowHeight,a["ɵunv"](e,7,5,a["ɵnov"](e,8).transform(n._offsetX)),n.messages.emptyMessage,n.selectionType,n.selected,n.rowIdentity,n.rowDetail,n.groupHeader,n.selectCheck,n.displayCheck,n.trackByProp,n.rowClass,n.groupedRows,n.groupExpansionDefault,n._innerWidth,n.groupRowsBy,n.virtualization,n.summaryRow,n.summaryPosition,n.summaryHeight,n.pageSize,n._internalRows,n._internalColumns,n.offset,n.rowCount,n.bodyHeight]),t(e,10,0,n.footerHeight)}),(function(t,e){t(e,2,0,a["ɵnov"](e,3).isVisible),t(e,6,0,a["ɵnov"](e,7).bodyWidth,a["ɵnov"](e,7).bodyHeight)}))}var m=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"datatable-header-cell",[["class","datatable-header-cell"],["draggable",""],["long-press",""],["resizeable",""]],[[2,"resizeable",null],[2,"press",null],[2,"longpress",null],[4,"height","px"],[8,"className",0],[1,"title",0],[4,"minWidth","px"],[4,"maxWidth","px"],[4,"width","px"]],[[null,"resize"],[null,"longPressStart"],[null,"longPressEnd"],[null,"sort"],[null,"select"],[null,"columnContextmenu"],[null,"mousedown"],[null,"contextmenu"]],(function(t,e,n){var r=!0,i=t.component;return"mousedown"===e&&(r=!1!==a["ɵnov"](t,2).onMousedown(n)&&r),"mousedown"===e&&(r=!1!==a["ɵnov"](t,3).onMouseDown(n)&&r),"contextmenu"===e&&(r=!1!==a["ɵnov"](t,4).onContextmenu(n)&&r),"resize"===e&&(r=!1!==i.onColumnResized(n,t.context.$implicit)&&r),"longPressStart"===e&&(r=!1!==i.onLongPressStart(n)&&r),"longPressEnd"===e&&(r=!1!==i.onLongPressEnd(n)&&r),"sort"===e&&(r=!1!==i.onSort(n)&&r),"select"===e&&(r=!1!==i.select.emit(n)&&r),"columnContextmenu"===e&&(r=!1!==i.columnContextmenu.emit(n)&&r),r}),C,_)),a["ɵdid"](1,671744,[[1,4]],0,f.s,[a.ElementRef],{dragEventTarget:[0,"dragEventTarget"],dragModel:[1,"dragModel"],dragX:[2,"dragX"],dragY:[3,"dragY"]},null),a["ɵdid"](2,4341760,null,0,f.x,[a.ElementRef,a.Renderer2],{resizeEnabled:[0,"resizeEnabled"]},{resize:"resize"}),a["ɵdid"](3,147456,null,0,f.t,[],{pressEnabled:[0,"pressEnabled"],pressModel:[1,"pressModel"]},{longPressStart:"longPressStart",longPressEnd:"longPressEnd"}),a["ɵdid"](4,49152,null,0,f.h,[a.ChangeDetectorRef],{sortType:[0,"sortType"],sortAscendingIcon:[1,"sortAscendingIcon"],sortDescendingIcon:[2,"sortDescendingIcon"],isTarget:[3,"isTarget"],targetMarkerTemplate:[4,"targetMarkerTemplate"],targetMarkerContext:[5,"targetMarkerContext"],allRowsSelected:[6,"allRowsSelected"],selectionType:[7,"selectionType"],column:[8,"column"],headerHeight:[9,"headerHeight"],sorts:[10,"sorts"]},{sort:"sort",select:"select",columnContextmenu:"columnContextmenu"})],(function(t,e){var n=e.component;t(e,1,0,n.dragEventTarget,e.context.$implicit,n.reorderable&&e.context.$implicit.draggable&&e.context.$implicit.dragging,!1),t(e,2,0,e.context.$implicit.resizeable),t(e,3,0,n.reorderable&&e.context.$implicit.draggable,e.context.$implicit),t(e,4,1,[n.sortType,n.sortAscendingIcon,n.sortDescendingIcon,e.context.$implicit.isTarget,n.targetMarkerTemplate,e.context.$implicit.targetMarkerContext,n.allRowsSelected,n.selectionType,e.context.$implicit,n.headerHeight,n.sorts])}),(function(t,e){t(e,0,0,a["ɵnov"](e,2).resizeEnabled,a["ɵnov"](e,3).press,a["ɵnov"](e,3).isLongPress,a["ɵnov"](e,4).headerHeight,a["ɵnov"](e,4).columnCssClasses,a["ɵnov"](e,4).name,a["ɵnov"](e,4).minWidth,a["ɵnov"](e,4).maxWidth,a["ɵnov"](e,4).width)}))}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[],[[8,"className",0]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](4,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,2,0,n._styleByGroup[e.context.$implicit.type]),t(e,4,0,e.context.$implicit.columns,n.columnTrackingFn)}),(function(t,e){t(e,0,0,"datatable-row-"+e.context.$implicit.type)}))}function x(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","datatable-header-inner"],["orderable",""]],[[4,"width","px"]],[[null,"reorder"],[null,"targetChanged"]],(function(t,e,n){var a=!0,r=t.component;return"reorder"===e&&(a=!1!==r.onColumnReordered(n)&&a),"targetChanged"===e&&(a=!1!==r.onTargetChanged(n)&&a),a}),null,null)),a["ɵdid"](1,1196032,null,1,f.v,[a.KeyValueDiffers,u.DOCUMENT],null,{reorder:"reorder",targetChanged:"targetChanged"}),a["ɵqud"](603979776,1,{draggables:1}),(t()(),a["ɵand"](16777216,null,null,1,null,v)),a["ɵdid"](4,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,4,0,n._columnsByPin,n.trackByGroups)}),(function(t,e){t(e,0,0,e.component._columnGroupWidths.total)}))}var _=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function T(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function w(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.targetMarkerContext,n.targetMarkerTemplate)}),null)}function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"label",[["class","datatable-checkbox"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"input",[["type","checkbox"]],[[8,"checked",0]],[[null,"change"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==r.select.emit(!r.allRowsSelected)&&a),a}),null,null))],null,(function(t,e){t(e,1,0,e.component.allRowsSelected)}))}function S(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","datatable-header-cell-wrapper"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"span",[["class","datatable-header-cell-label draggable"]],[[8,"innerHTML",1]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onSort()&&a),a}),null,null))],null,(function(t,e){t(e,1,0,e.component.name)}))}function I(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function N(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,I)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.cellContext,n.column.headerTemplate)}),null)}function C(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,9,"div",[["class","datatable-header-cell-template-wrap"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,w)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,S)),a["ɵdid"](6,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,N)),a["ɵdid"](8,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](9,0,null,null,0,"span",[],[[8,"className",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onSort()&&a),a}),null,null))],(function(t,e){var n=e.component;t(e,2,0,n.isTarget),t(e,4,0,n.isCheckboxable),t(e,6,0,!n.column.headerTemplate),t(e,8,0,n.column.headerTemplate)}),(function(t,e){t(e,9,0,e.component.sortClass)}))}var R=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function A(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-progress",[],null,null,null,rt,at)),a["ɵdid"](1,49152,null,0,f.w,[],null,null)],null,null)}function k(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-summary-row",[["class","datatable-summary-row"]],null,null,null,xt,yt)),a["ɵdid"](1,573440,null,0,f.m,[],{rows:[0,"rows"],columns:[1,"columns"],rowHeight:[2,"rowHeight"],offsetX:[3,"offsetX"],innerWidth:[4,"innerWidth"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.rows,n.columns,n.summaryHeight,n.offsetX,n.innerWidth)}),null)}function E(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-body-row",[["tabindex","-1"]],[[8,"className",0],[4,"height","px"],[4,"width","px"]],[[null,"treeAction"],[null,"activate"],[null,"keydown"],[null,"mouseenter"]],(function(t,e,n){var r=!0,i=t.component;return"keydown"===e&&(r=!1!==a["ɵnov"](t,1).onKeyDown(n)&&r),"mouseenter"===e&&(r=!1!==a["ɵnov"](t,1).onMouseenter(n)&&r),"treeAction"===e&&(r=!1!==i.onTreeAction(t.parent.context.$implicit)&&r),"activate"===e&&(r=!1!==a["ɵnov"](t.parent.parent.parent,2).onActivate(n,i.indexes.first+t.parent.context.index)&&r),r}),nt,X)),a["ɵdid"](1,311296,null,0,f.d,[a.KeyValueDiffers,[1,f.y],a.ChangeDetectorRef,a.ElementRef],{columns:[0,"columns"],innerWidth:[1,"innerWidth"],expanded:[2,"expanded"],rowClass:[3,"rowClass"],row:[4,"row"],isSelected:[5,"isSelected"],rowIndex:[6,"rowIndex"],displayCheck:[7,"displayCheck"],treeStatus:[8,"treeStatus"],offsetX:[9,"offsetX"],rowHeight:[10,"rowHeight"]},{activate:"activate",treeAction:"treeAction"})],(function(t,e){var n=e.component;t(e,1,1,[n.columns,n.innerWidth,n.getRowExpanded(e.parent.context.$implicit),n.rowClass,e.parent.context.$implicit,a["ɵnov"](e.parent.parent.parent,2).getRowSelected(e.parent.context.$implicit),n.getRowIndex(e.parent.context.$implicit),n.displayCheck,e.parent.context.$implicit.treeStatus,n.offsetX,n.getRowHeight(e.parent.context.$implicit)])}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).cssClass,a["ɵnov"](e,1).rowHeight,a["ɵnov"](e,1).columnsTotalWidths)}))}function L(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-body-row",[["tabindex","-1"]],[[8,"className",0],[4,"height","px"],[4,"width","px"]],[[null,"activate"],[null,"keydown"],[null,"mouseenter"]],(function(t,e,n){var r=!0;return"keydown"===e&&(r=!1!==a["ɵnov"](t,1).onKeyDown(n)&&r),"mouseenter"===e&&(r=!1!==a["ɵnov"](t,1).onMouseenter(n)&&r),"activate"===e&&(r=!1!==a["ɵnov"](t.parent.parent.parent.parent,2).onActivate(n,t.context.index)&&r),r}),nt,X)),a["ɵdid"](1,311296,null,0,f.d,[a.KeyValueDiffers,[1,f.y],a.ChangeDetectorRef,a.ElementRef],{columns:[0,"columns"],innerWidth:[1,"innerWidth"],expanded:[2,"expanded"],rowClass:[3,"rowClass"],row:[4,"row"],group:[5,"group"],isSelected:[6,"isSelected"],rowIndex:[7,"rowIndex"],offsetX:[8,"offsetX"],rowHeight:[9,"rowHeight"]},{activate:"activate"})],(function(t,e){var n=e.component;t(e,1,0,n.columns,n.innerWidth,n.getRowExpanded(e.context.$implicit),n.rowClass,e.context.$implicit,e.parent.parent.context.$implicit.value,a["ɵnov"](e.parent.parent.parent.parent,2).getRowSelected(e.context.$implicit),n.getRowIndex(e.context.$implicit),n.offsetX,n.getRowHeight(e.context.$implicit))}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).cssClass,a["ɵnov"](e,1).rowHeight,a["ɵnov"](e,1).columnsTotalWidths)}))}function D(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,L)),a["ɵdid"](1,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.parent.context.$implicit.value,e.component.rowTrackingFn)}),null)}function P(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"datatable-row-wrapper",[["class","datatable-row-wrapper"]],null,[[null,"rowContextmenu"],[null,"contextmenu"]],(function(t,e,n){var r=!0,i=t.component;return"contextmenu"===e&&(r=!1!==a["ɵnov"](t,3).onContextmenu(n)&&r),"rowContextmenu"===e&&(r=!1!==i.rowContextmenu.emit(n)&&r),r}),pt,ut)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),a["ɵdid"](3,311296,null,0,f.k,[a.ChangeDetectorRef,a.KeyValueDiffers],{innerWidth:[0,"innerWidth"],rowDetail:[1,"rowDetail"],groupHeader:[2,"groupHeader"],offsetX:[3,"offsetX"],detailRowHeight:[4,"detailRowHeight"],row:[5,"row"],groupedRows:[6,"groupedRows"],rowIndex:[7,"rowIndex"],expanded:[8,"expanded"]},{rowContextmenu:"rowContextmenu"}),(t()(),a["ɵand"](16777216,null,0,1,null,E)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["groupedRowsTemplate",2]],0,0,null,D))],(function(t,e){var n=e.component;t(e,2,0,n.getRowsStyles(e.context.$implicit)),t(e,3,0,n.innerWidth,n.rowDetail,n.groupHeader,n.offsetX,n.getDetailRowHeight(e.context.$implicit[e.context.index],e.context.index),e.context.$implicit,n.groupedRows,n.getRowIndex(e.context.$implicit[e.context.index]),n.getRowExpanded(e.context.$implicit)),t(e,5,0,!n.groupedRows,a["ɵnov"](e,6))}),null)}function M(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"datatable-summary-row",[["class","datatable-summary-row"]],null,null,null,xt,yt)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),a["ɵdid"](3,573440,null,0,f.m,[],{rows:[0,"rows"],columns:[1,"columns"],rowHeight:[2,"rowHeight"],offsetX:[3,"offsetX"],innerWidth:[4,"innerWidth"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.getBottomSummaryRowStyles()),t(e,3,0,n.rows,n.columns,n.summaryHeight,n.offsetX,n.innerWidth)}),null)}function q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"datatable-scroller",[["class","datatable-scroll"]],[[4,"height","px"],[4,"width","px"]],[[null,"scroll"]],(function(t,e,n){var a=!0;return"scroll"===e&&(a=!1!==t.component.onBodyScroll(n)&&a),a}),st,it)),a["ɵdid"](1,245760,[[1,4]],0,f.z,[a.NgZone,a.ElementRef,a.Renderer2],{scrollbarV:[0,"scrollbarV"],scrollbarH:[1,"scrollbarH"],scrollHeight:[2,"scrollHeight"],scrollWidth:[3,"scrollWidth"]},{scroll:"scroll"}),(t()(),a["ɵand"](16777216,null,0,1,null,k)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,P)),a["ɵdid"](5,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,M)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.scrollbarV,n.scrollbarH,n.scrollHeight,null==n.columnGroupWidths?null:n.columnGroupWidths.total),t(e,3,0,n.summaryRow&&"top"===n.summaryPosition),t(e,5,0,n.temp,n.rowTrackingFn),t(e,7,0,n.summaryRow&&"bottom"===n.summaryPosition)}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).scrollHeight,a["ɵnov"](e,1).scrollWidth)}))}function j(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"div",[["class","empty-row"]],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,0,0,e.component.emptyMessage)}))}function F(t){return a["ɵvid"](2,[a["ɵqud"](671088640,1,{scroller:0}),(t()(),a["ɵeld"](1,0,null,null,7,"datatable-selection",[],null,[[null,"select"],[null,"activate"]],(function(t,e,n){var a=!0,r=t.component;return"select"===e&&(a=!1!==r.select.emit(n)&&a),"activate"===e&&(a=!1!==r.activate.emit(n)&&a),a}),mt,bt)),a["ɵdid"](2,49152,[["selector",4]],0,f.l,[],{rows:[0,"rows"],selected:[1,"selected"],selectEnabled:[2,"selectEnabled"],selectionType:[3,"selectionType"],rowIdentity:[4,"rowIdentity"],selectCheck:[5,"selectCheck"]},{activate:"activate",select:"select"}),(t()(),a["ɵand"](16777216,null,0,1,null,A)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,q)),a["ɵdid"](6,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,j)),a["ɵdid"](8,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.rows,n.selected,n.selectEnabled,n.selectionType,n.rowIdentity,n.selectCheck),t(e,4,0,n.loadingIndicator),t(e,6,0,null==n.rows?null:n.rows.length),t(e,8,0,!(null!=n.rows&&n.rows.length||n.loadingIndicator))}),null)}var V=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function G(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"label",[["class","datatable-checkbox"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"input",[["type","checkbox"]],[[8,"checked",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onCheckboxChange(n)&&a),a}),null,null))],null,(function(t,e){t(e,1,0,e.component.isSelected)}))}function B(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"i",[["class","icon datatable-icon-collapse"]],null,null,null,null,null))],null,null)}function z(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"i",[["class","icon datatable-icon-up"]],null,null,null,null,null))],null,null)}function Y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"i",[["class","icon datatable-icon-down"]],null,null,null,null,null))],null,null)}function H(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"button",[["class","datatable-tree-button"]],[[8,"disabled",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onTreeAction()&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,B)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,z)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Y)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,"loading"===n.treeStatus),t(e,5,0,"collapsed"===n.treeStatus),t(e,7,0,"expanded"===n.treeStatus||"disabled"===n.treeStatus)}),(function(t,e){t(e,0,0,"disabled"===e.component.treeStatus)}))}function U(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function W(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,U)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](2,{cellContext:0}),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=t(e,2,0,n.cellContext);t(e,1,0,a,n.column.treeToggleTemplate)}),null)}function K(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,H)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,W)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,!n.column.treeToggleTemplate),t(e,4,0,n.column.treeToggleTemplate)}),null)}function $(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"span",[],[[8,"title",0],[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.sanitizedValue,n.value)}))}function Z(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function J(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,[[1,3],["cellTemplate",2]],null,1,null,Z)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.cellContext,n.column.cellTemplate)}),null)}function Q(t){return a["ɵvid"](2,[a["ɵqud"](402653184,1,{cellTemplate:0}),(t()(),a["ɵeld"](1,0,null,null,8,"div",[["class","datatable-body-cell-label"]],[[4,"margin-left","px"]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,G)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,K)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,$)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,J)),a["ɵdid"](9,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.column.checkboxable&&(!n.displayCheck||n.displayCheck(n.row,n.column,n.value))),t(e,5,0,n.column.isTreeColumn),t(e,7,0,!n.column.cellTemplate),t(e,9,0,n.column.cellTemplate)}),(function(t,e){var n=e.component;t(e,1,0,n.calcLeftMargin(n.column,n.row))}))}var X=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function tt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-body-cell",[["tabindex","-1"]],[[8,"className",0],[4,"width","px"],[4,"minWidth","px"],[4,"maxWidth","px"],[4,"height",null]],[[null,"activate"],[null,"treeAction"],[null,"focus"],[null,"blur"],[null,"click"],[null,"dblclick"],[null,"keydown"]],(function(t,e,n){var r=!0,i=t.component;return"focus"===e&&(r=!1!==a["ɵnov"](t,1).onFocus()&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,1).onBlur()&&r),"click"===e&&(r=!1!==a["ɵnov"](t,1).onClick(n)&&r),"dblclick"===e&&(r=!1!==a["ɵnov"](t,1).onDblClick(n)&&r),"keydown"===e&&(r=!1!==a["ɵnov"](t,1).onKeyDown(n)&&r),"activate"===e&&(r=!1!==i.onActivate(n,t.context.index)&&r),"treeAction"===e&&(r=!1!==i.onTreeAction()&&r),r}),Q,V)),a["ɵdid"](1,442368,null,0,f.b,[a.ElementRef,a.ChangeDetectorRef],{displayCheck:[0,"displayCheck"],group:[1,"group"],rowHeight:[2,"rowHeight"],isSelected:[3,"isSelected"],expanded:[4,"expanded"],rowIndex:[5,"rowIndex"],column:[6,"column"],row:[7,"row"],treeStatus:[8,"treeStatus"]},{activate:"activate",treeAction:"treeAction"})],(function(t,e){var n=e.component;t(e,1,0,n.displayCheck,n.group,n.rowHeight,n.isSelected,n.expanded,n.rowIndex,e.context.$implicit,n.row,n.treeStatus)}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).columnCssClasses,a["ɵnov"](e,1).width,a["ɵnov"](e,1).minWidth,a["ɵnov"](e,1).maxWidth,a["ɵnov"](e,1).height)}))}function et(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[],[[8,"className",0]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,tt)),a["ɵdid"](4,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,2,0,n._groupStyles[e.context.$implicit.type]),t(e,4,0,e.context.$implicit.columns,n.columnTrackingFn)}),(function(t,e){t(e,0,0,a["ɵinlineInterpolate"](1,"datatable-row-",e.context.$implicit.type," datatable-row-group"))}))}function nt(t){return a["ɵvid"](2,[(t()(),a["ɵand"](16777216,null,null,1,null,et)),a["ɵdid"](1,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,1,0,n._columnsByPin,n.trackByGroups)}),null)}var at=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function rt(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","progress-linear"],["role","progressbar"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","container"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,0,"div",[["class","bar"]],null,null,null,null,null))],null,null)}var it=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function st(t){return a["ɵvid"](2,[a["ɵncd"](null,0)],null,null)}var ut=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function ot(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function lt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,ot)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.groupContext,n.groupHeader.template)}),null)}function dt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","datatable-group-header"]],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,lt)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.getGroupHeaderStyle()),t(e,4,0,n.groupHeader&&n.groupHeader.template)}),null)}function ct(t){return a["ɵvid"](0,[a["ɵncd"](null,0),(t()(),a["ɵand"](0,null,null,0))],null,null)}function ft(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function ht(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,ft)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.rowContext,n.rowDetail.template)}),null)}function gt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","datatable-row-detail"]],[[4,"height","px"]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ht)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.rowDetail&&n.rowDetail.template)}),(function(t,e){t(e,0,0,e.component.detailRowHeight)}))}function pt(t){return a["ɵvid"](2,[(t()(),a["ɵand"](16777216,null,null,1,null,dt)),a["ɵdid"](1,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ct)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,gt)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.groupHeader&&n.groupHeader.template),t(e,3,0,n.groupHeader&&n.groupHeader.template&&n.expanded||!n.groupHeader||!n.groupHeader.template),t(e,5,0,n.rowDetail&&n.rowDetail.template&&n.expanded)}),null)}var bt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function mt(t){return a["ɵvid"](2,[a["ɵncd"](null,0)],null,null)}var yt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function vt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-body-row",[["tabindex","-1"]],[[8,"className",0],[4,"height","px"],[4,"width","px"]],[[null,"keydown"],[null,"mouseenter"]],(function(t,e,n){var r=!0;return"keydown"===e&&(r=!1!==a["ɵnov"](t,1).onKeyDown(n)&&r),"mouseenter"===e&&(r=!1!==a["ɵnov"](t,1).onMouseenter(n)&&r),r}),nt,X)),a["ɵdid"](1,311296,null,0,f.d,[a.KeyValueDiffers,[1,f.y],a.ChangeDetectorRef,a.ElementRef],{columns:[0,"columns"],innerWidth:[1,"innerWidth"],row:[2,"row"],rowIndex:[3,"rowIndex"],offsetX:[4,"offsetX"],rowHeight:[5,"rowHeight"]},null)],(function(t,e){var n=e.component;t(e,1,0,n._internalColumns,n.innerWidth,n.summaryRow,-1,n.offsetX,n.rowHeight)}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).cssClass,a["ɵnov"](e,1).rowHeight,a["ɵnov"](e,1).columnsTotalWidths)}))}function xt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,vt)),a["ɵdid"](1,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.summaryRow&&n._internalColumns)}),null)}var _t=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Tt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function wt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,Tt)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](2,{rowCount:0,pageSize:1,selectedCount:2,curPage:3,offset:4}),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=t(e,2,0,n.rowCount,n.pageSize,n.selectedCount,n.curPage,n.offset);t(e,1,0,a,n.footerTemplate.template)}),null)}function Ot(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "," / "]))],null,(function(t,e){var n=e.component;t(e,1,0,null==n.selectedCount?null:n.selectedCount.toLocaleString(),n.selectedMessage)}))}function St(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","page-count"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Ot)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](3,null,[" "," "," "]))],(function(t,e){t(e,2,0,e.component.selectedMessage)}),(function(t,e){var n=e.component;t(e,3,0,null==n.rowCount?null:n.rowCount.toLocaleString(),n.totalMessage)}))}function It(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-pager",[["class","datatable-pager"]],[[8,"hidden",0]],[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.page.emit(n)&&a),a}),At,Ct)),a["ɵdid"](1,49152,null,0,f.j,[],{pagerLeftArrowIcon:[0,"pagerLeftArrowIcon"],pagerRightArrowIcon:[1,"pagerRightArrowIcon"],pagerPreviousIcon:[2,"pagerPreviousIcon"],pagerNextIcon:[3,"pagerNextIcon"],size:[4,"size"],count:[5,"count"],page:[6,"page"]},{change:"change"})],(function(t,e){var n=e.component;t(e,1,0,n.pagerLeftArrowIcon,n.pagerRightArrowIcon,n.pagerPreviousIcon,n.pagerNextIcon,n.pageSize,n.rowCount,n.curPage)}),(function(t,e){t(e,0,0,!e.component.isVisible)}))}function Nt(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,9,"div",[["class","datatable-footer-inner"]],[[4,"height","px"]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](3,{"selected-count":0}),(t()(),a["ɵand"](16777216,null,null,1,null,wt)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,St)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,It)),a["ɵdid"](9,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component,a=t(e,3,0,n.selectedMessage);t(e,2,0,"datatable-footer-inner",a),t(e,5,0,n.footerTemplate),t(e,7,0,!n.footerTemplate),t(e,9,0,!n.footerTemplate)}),(function(t,e){t(e,0,0,e.component.footerHeight)}))}var Ct=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Rt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"li",[["class","pages"],["role","button"]],[[1,"aria-label",0],[2,"active",null]],null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"a",[["href","javascript:void(0)"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.selectPage(t.context.$implicit.number)&&a),a}),null,null)),(t()(),a["ɵted"](2,null,[" "," "]))],null,(function(t,e){t(e,0,0,"page "+e.context.$implicit.number,e.context.$implicit.number===e.component.page),t(e,2,0,e.context.$implicit.text)}))}function At(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,14,"ul",[["class","pager"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,2,"li",[],[[2,"disabled",null]],null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"a",[["aria-label","go to first page"],["href","javascript:void(0)"],["role","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.selectPage(1)&&a),a}),null,null)),(t()(),a["ɵeld"](3,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵeld"](4,0,null,null,2,"li",[],[[2,"disabled",null]],null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,1,"a",[["aria-label","go to previous page"],["href","javascript:void(0)"],["role","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.prevPage()&&a),a}),null,null)),(t()(),a["ɵeld"](6,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Rt)),a["ɵdid"](8,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](9,0,null,null,2,"li",[],[[2,"disabled",null]],null,null,null,null)),(t()(),a["ɵeld"](10,0,null,null,1,"a",[["aria-label","go to next page"],["href","javascript:void(0)"],["role","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.nextPage()&&a),a}),null,null)),(t()(),a["ɵeld"](11,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵeld"](12,0,null,null,2,"li",[],[[2,"disabled",null]],null,null,null,null)),(t()(),a["ɵeld"](13,0,null,null,1,"a",[["aria-label","go to last page"],["href","javascript:void(0)"],["role","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.selectPage(r.totalPages)&&a),a}),null,null)),(t()(),a["ɵeld"](14,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],(function(t,e){t(e,8,0,e.component.pages)}),(function(t,e){var n=e.component;t(e,1,0,!n.canPrevious()),t(e,3,0,a["ɵinlineInterpolate"](1,"",n.pagerPreviousIcon,"")),t(e,4,0,!n.canPrevious()),t(e,6,0,a["ɵinlineInterpolate"](1,"",n.pagerLeftArrowIcon,"")),t(e,9,0,!n.canNext()),t(e,11,0,a["ɵinlineInterpolate"](1,"",n.pagerRightArrowIcon,"")),t(e,12,0,!n.canNext()),t(e,14,0,a["ɵinlineInterpolate"](1,"",n.pagerNextIcon,""))}))}var kt=n("JxMD"),Et=n("dgut"),Lt=n("Fgil"),Dt=n("iInd"),Pt=n("4DD9"),Mt=n("yT6U"),qt=n("TJUb"),jt=n("efK2");n("uIqm"),n.d(e,"a",(function(){return Ft})),n.d(e,"b",(function(){return Oe}));var Ft=a["ɵcrt"]({encapsulation:0,styles:[['@charset "UTF-8";.dataTables_wrapper[_ngcontent-%COMP%]{margin-bottom:25px}.dataTables_wrapper[_ngcontent-%COMP%]   .separator[_ngcontent-%COMP%]{height:30px;border-left:1px solid rgba(0,0,0,.09);padding-left:5px;margin-left:5px;display:inline-block;vertical-align:middle}.dataTables_wrapper[_ngcontent-%COMP%]   .widget-toolbar[_ngcontent-%COMP%]{float:right;border-left:1px solid rgba(0,0,0,.09);padding:0 8px}.dataTables_wrapper[_ngcontent-%COMP%]   .widget-toolbar[_ngcontent-%COMP%]   .form-check[_ngcontent-%COMP%]{padding-left:0}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]{white-space:nowrap}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]{cursor:default}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{width:100%;margin-bottom:0;padding-left:0;padding-right:0;cursor:pointer}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:hover{background-color:#f5f5f5}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]{cursor:pointer}.dataTables_wrapper[_ngcontent-%COMP%]   .dataTables_length[_ngcontent-%COMP%] > input[_ngcontent-%COMP%]{line-height:25px;text-align:right}.dataTables_header[_ngcontent-%COMP%]{background-color:#f5f5f5;border:1px solid #d1d1d1;border-bottom:none;padding:5px;position:relative}.dataTables_header[_ngcontent-%COMP%]   .cd-datatable-actions[_ngcontent-%COMP%]{float:left}.dataTables_header[_ngcontent-%COMP%]     .table-filters{float:right;border-left:1px solid rgba(0,0,0,.09);padding-left:8px}.dataTables_header[_ngcontent-%COMP%]     .table-filters label{margin-right:4px}.dataTables_header[_ngcontent-%COMP%]   .form-group[_ngcontent-%COMP%]{padding-left:8px}.dataTables_header[_ngcontent-%COMP%]   .input-group[_ngcontent-%COMP%]{float:right;border-left:1px solid rgba(0,0,0,.09);padding-left:8px;padding-right:8px;width:40%;max-width:250px}.dataTables_header[_ngcontent-%COMP%]   .input-group[_ngcontent-%COMP%]   .form-control[_ngcontent-%COMP%]{height:30px}.dataTables_header[_ngcontent-%COMP%]   .input-group.dataTables_paginate[_ngcontent-%COMP%]{width:8%;min-width:85px;padding-right:8px}.dataTables_header[_ngcontent-%COMP%]   .filter-chips[_ngcontent-%COMP%]{float:right;padding:0 8px}  .cd-datatable{border:1px solid #d1d1d1;margin-bottom:0;max-width:none!important}  .cd-datatable .progress-linear{display:block;position:relative;width:100%;height:5px;padding:0;margin:0}  .cd-datatable .progress-linear .container{background-color:#afd9ee}  .cd-datatable .progress-linear .container .bar{left:0;height:100%;width:100%;position:absolute;overflow:hidden;background-color:#afd9ee}  .cd-datatable .progress-linear .container .bar:before{display:block;position:absolute;content:"";left:-200px;width:200px;height:100%;background-color:#2b99a8;animation:3s linear infinite progress-loading}  .cd-datatable .datatable-header{background-clip:padding-box;background-color:#f5f5f5;background-image:linear-gradient(to bottom,#f5f5f5 0,#ededed 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#fffafafa", endColorstr="#ffededed", GradientType=0)}  .cd-datatable .datatable-header .sort-asc,   .cd-datatable .datatable-header .sort-desc{color:#2b99a8}  .cd-datatable .datatable-header .datatable-header-cell{padding:5px;border:none;border-left:1px solid #d1d1d1;border-bottom:1px solid #d1d1d1;text-align:left;font-weight:700}  .cd-datatable .datatable-header .datatable-header-cell .datatable-header-cell-label:after{font-family:ForkAwesome;font-weight:400;height:9px;left:10px;line-height:12px;position:relative;vertical-align:baseline;width:12px}  .cd-datatable .datatable-header .datatable-header-cell.sortable .datatable-header-cell-label:after{content:" "}  .cd-datatable .datatable-header .datatable-header-cell.sortable.sort-active.sort-asc .datatable-header-cell-label:after{content:" "}  .cd-datatable .datatable-header .datatable-header-cell.sortable.sort-active.sort-desc .datatable-header-cell-label:after{content:" "}  .cd-datatable .datatable-header .datatable-header-cell:first-child{border-left:none}  .cd-datatable .datatable-body{margin-bottom:-6px}  .cd-datatable .datatable-body .empty-row{background-color:#fff3cd;text-align:center;font-weight:700;font-style:italic;padding-top:5px;padding-bottom:5px}  .cd-datatable .datatable-body .datatable-body-row.clickable:hover .datatable-row-group{background-color:#eee;transition-property:background;transition-duration:.3s;transition-timing-function:linear}  .cd-datatable .datatable-body .datatable-body-row.datatable-row-even{background-color:#fff}  .cd-datatable .datatable-body .datatable-body-row.datatable-row-odd{background-color:#f5f5f5}  .cd-datatable .datatable-body .datatable-body-row.active,   .cd-datatable .datatable-body .datatable-body-row.active:hover{background-color:#d1ecf1}  .cd-datatable .datatable-body .datatable-body-row .datatable-body-cell{padding:5px;border:none;border-left:1px solid #d1d1d1;border-bottom:1px solid #d1d1d1}  .cd-datatable .datatable-body .datatable-body-row .datatable-body-cell:first-child{border-left:none}  .cd-datatable .datatable-body .datatable-body-row .datatable-body-cell .datatable-body-cell-label{display:block;height:100%}  .cd-datatable .datatable-body .datatable-row-detail{padding:20px;border-bottom:2px solid #d1d1d1;overflow-y:visible!important}  .cd-datatable .datatable-body .expand-collapse-icon{display:block;height:100%;text-align:center}  .cd-datatable .datatable-body .expand-collapse-icon:hover{text-decoration:none}  .cd-datatable .datatable-body .expand-collapse-icon-right:before{font-family:ForkAwesome,sans-serif;font-size:1rem;color:#212529;line-height:1;content:""}  .cd-datatable .datatable-body .expand-collapse-icon-down:before{font-family:ForkAwesome,sans-serif;font-size:1rem;color:#212529;line-height:1;content:""}  .cd-datatable .datatable-footer{display:unset!important}  .cd-datatable .datatable-footer .page-count,   .cd-datatable .datatable-footer .selected-count{font-style:italic;padding-left:5px}  .cd-datatable .cd-datatable-checkbox{text-align:center}@keyframes progress-loading{from{left:-200px;width:15%}50%{width:30%}70%{width:70%}80%{left:50%}95%{left:120%}to{left:100%}}']],data:{}});function Vt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,r.b,r.a)),a["ɵdid"](1,114688,null,0,i.a,[s.a],{type:[0,"type"]},null),(t()(),a["ɵted"](-1,0,["Failed to load data."]))],(function(t,e){t(e,1,0,"error")}),null)}function Gt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","dataTables_header clearfix"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","cd-datatable-actions"]],null,null,null,null,null)),a["ɵncd"](null,0)],null,null)}function Bt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"li",[["role","menuitem"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"a",[["class","dropdown-item"],["href",""]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.onSelectFilter(t.context.$implicit),a=!1),a}),null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit.column.name)}))}function zt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"ul",[["class","dropdown-menu dropdown-menu-right px-1"],["role","menu"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Bt)),a["ɵdid"](2,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.columnFilters)}),null)}function Yt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,1)],(function(t,e){var n=t(e,3,0,e.component.icons.check);t(e,2,0,n)}),null)}function Ht(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"li",[["role","menuitem"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,3,"a",[["class","dropdown-item"],["href",""]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(r.onChangeFilter(r.selectedFilter,t.context.$implicit),a=!1),a}),null,null)),(t()(),a["ɵted"](2,null,[""," "])),(t()(),a["ɵand"](16777216,null,null,1,null,Yt)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,4,0,void 0!==n.selectedFilter.value&&n.selectedFilter.value.raw===e.context.$implicit.raw)}),(function(t,e){t(e,2,0,e.context.$implicit.formatted)}))}function Ut(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"ul",[["class","dropdown-menu dropdown-menu-right px-1"],["role","menu"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Ht)),a["ɵdid"](2,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.selectedFilter.options)}),null)}function Wt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,20,"div",[["class","btn-group widget-toolbar"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,16777216,null,null,11,"div",[["class","btn-group tc_filter_name"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),a["ɵprd"](512,null,o.f,o.f,[]),a["ɵdid"](3,212992,null,0,o.c,[a.ElementRef,a.Renderer2,a.ViewContainerRef,l.a,o.f,o.a,d.b],null,null),(t()(),a["ɵeld"](4,0,null,null,6,"a",[["class","btn btn-light dropdown-toggle"],["data-toggle","dropdown"],["dropdownToggle",""]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,5).onClick()&&r),r}),null,null)),a["ɵdid"](5,147456,null,0,o.g,[a.ChangeDetectorRef,o.c,a.ElementRef,a.Renderer2,o.f],null,null),(t()(),a["ɵeld"](6,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](8,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](9,2),(t()(),a["ɵted"](10,null,[" "," "])),(t()(),a["ɵand"](16777216,null,null,1,null,zt)),a["ɵdid"](12,16384,null,0,o.d,[o.f,a.ViewContainerRef,a.TemplateRef],null,null),(t()(),a["ɵeld"](13,16777216,null,null,7,"div",[["class","btn-group tc_filter_option"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),a["ɵprd"](512,null,o.f,o.f,[]),a["ɵdid"](15,212992,null,0,o.c,[a.ElementRef,a.Renderer2,a.ViewContainerRef,l.a,o.f,o.a,d.b],null,null),(t()(),a["ɵeld"](16,0,null,null,2,"a",[["class","btn btn-light dropdown-toggle"],["data-toggle","dropdown"],["dropdownToggle",""]],[[2,"disabled",null],[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,17).onClick()&&r),r}),null,null)),a["ɵdid"](17,147456,null,0,o.g,[a.ChangeDetectorRef,o.c,a.ElementRef,a.Renderer2,o.f],null,null),(t()(),a["ɵted"](18,null,[" "," "])),(t()(),a["ɵand"](16777216,null,null,1,null,Ut)),a["ɵdid"](20,16384,null,0,o.d,[o.f,a.ViewContainerRef,a.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,3,0);var a=t(e,9,0,n.icons.large,n.icons.filter);t(e,8,0,a),t(e,15,0)}),(function(t,e){var n=e.component;t(e,1,0,a["ɵnov"](e,3).dropup,a["ɵnov"](e,3).isOpen,a["ɵnov"](e,3).isOpen&&a["ɵnov"](e,3).isBs4),t(e,4,0,!0,a["ɵnov"](e,5).isDisabled,a["ɵnov"](e,5).isOpen),t(e,10,0,n.selectedFilter.column.name),t(e,13,0,a["ɵnov"](e,15).dropup,a["ɵnov"](e,15).isOpen,a["ɵnov"](e,15).isOpen&&a["ɵnov"](e,15).isBs4),t(e,16,0,0===n.selectedFilter.options.length,!0,a["ɵnov"](e,17).isDisabled,a["ɵnov"](e,17).isOpen),t(e,18,0,n.selectedFilter.value?n.selectedFilter.value.formatted:"Any")}))}function Kt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,15,"div",[["class","input-group search"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,5,"span",[["class","input-group-prepend"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,4,"span",[["class","input-group-text"]],null,null,null,null,null)),(t()(),a["ɵeld"](3,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](5,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](6,1),(t()(),a["ɵeld"](7,0,null,null,5,"input",[["class","form-control"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"keyup"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var r=!0,i=t.component;return"input"===e&&(r=!1!==a["ɵnov"](t,8)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,8).onTouched()&&r),"compositionstart"===e&&(r=!1!==a["ɵnov"](t,8)._compositionStart()&&r),"compositionend"===e&&(r=!1!==a["ɵnov"](t,8)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(i.search=n)&&r),"keyup"===e&&(r=!1!==i.updateFilter()&&r),r}),null,null)),a["ɵdid"](8,16384,null,0,c.e,[a.Renderer2,a.ElementRef,[2,c.b]],null,null),a["ɵprd"](1024,null,c.p,(function(t){return[t]}),[c.e]),a["ɵdid"](10,671744,null,0,c.u,[[8,null],[8,null],[8,null],[6,c.p]],{model:[0,"model"]},{update:"ngModelChange"}),a["ɵprd"](2048,null,c.q,null,[c.u]),a["ɵdid"](12,16384,null,0,c.r,[[4,c.q]],null,null),(t()(),a["ɵeld"](13,0,null,null,2,"div",[["class","input-group-append"]],null,null,null,null,null)),(t()(),a["ɵeld"](14,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onClearSearch()&&a),a}),null,null)),(t()(),a["ɵeld"](15,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],(function(t,e){var n=e.component,a=t(e,6,0,n.icons.search);t(e,5,0,a),t(e,10,0,n.search)}),(function(t,e){var n=e.component;t(e,7,0,a["ɵnov"](e,12).ngClassUntouched,a["ɵnov"](e,12).ngClassTouched,a["ɵnov"](e,12).ngClassPristine,a["ɵnov"](e,12).ngClassDirty,a["ɵnov"](e,12).ngClassValid,a["ɵnov"](e,12).ngClassInvalid,a["ɵnov"](e,12).ngClassPending),t(e,15,0,a["ɵinlineInterpolate"](1,"icon-prepend ",n.icons.destroy,""))}))}function $t(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"div",[["class","input-group dataTables_paginate"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"input",[["class","form-control"],["max","9999"],["min","1"],["type","number"]],[[8,"value",0]],[[null,"click"],[null,"keyup"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.setLimit(n)&&a),"keyup"===e&&(a=!1!==r.setLimit(n)&&a),"blur"===e&&(a=!1!==r.setLimit(n)&&a),a}),null,null))],null,(function(t,e){t(e,1,0,e.component.userConfig.limit)}))}function Zt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"li",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,3,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,0,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"name",0],[8,"id",0],[8,"checked",0]],[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.toggleColumn(n)&&a),a}),null,null)),(t()(),a["ɵeld"](3,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),a["ɵted"](4,null,["",""]))],null,(function(t,e){t(e,2,0,e.parent.context.$implicit.prop,e.parent.context.$implicit.prop,!e.parent.context.$implicit.isHidden),t(e,3,0,e.parent.context.$implicit.prop),t(e,4,0,e.parent.context.$implicit.name)}))}function Jt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Zt)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,2,0,""!==e.context.$implicit.name)}),null)}function Qt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"ul",[["class","dropdown-menu px-3"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Jt)),a["ɵdid"](2,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.columns)}),null)}function Xt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"div",[["class","widget-toolbar tc_refreshBtn"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.refreshBtn()&&a),a}),null,null)),(t()(),a["ɵeld"](2,0,null,null,3,"i",[],[[2,"fa-spin",null]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](4,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](5,2)],(function(t,e){var n=e.component,a=t(e,5,0,n.icons.large,n.icons.refresh);t(e,4,0,a)}),(function(t,e){var n=e.component;t(e,2,0,n.updating||n.loadingIndicator)}))}function te(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,23,"div",[["class","dataTables_header clearfix"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","cd-datatable-actions"]],null,null,null,null,null)),a["ɵncd"](null,1),a["ɵncd"](null,2),(t()(),a["ɵand"](16777216,null,null,1,null,Wt)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Kt)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,$t)),a["ɵdid"](9,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](10,0,null,null,11,"div",[["class","widget-toolbar"]],null,null,null,null,null)),(t()(),a["ɵeld"](11,16777216,null,null,10,"div",[["class","dropdown tc_menuitem tc_menuitem_cluster"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),a["ɵprd"](512,null,o.f,o.f,[]),a["ɵdid"](13,212992,null,0,o.c,[a.ElementRef,a.Renderer2,a.ViewContainerRef,l.a,o.f,o.a,d.b],{insideClick:[0,"insideClick"]},null),(t()(),a["ɵeld"](14,0,null,null,5,"a",[["class","btn btn-light dropdown-toggle tc_columnBtn"],["data-toggle","dropdown"],["dropdownToggle",""]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,15).onClick()&&r),r}),null,null)),a["ɵdid"](15,147456,null,0,o.g,[a.ChangeDetectorRef,o.c,a.ElementRef,a.Renderer2,o.f],null,null),(t()(),a["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](18,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](19,2),(t()(),a["ɵand"](16777216,null,null,1,null,Qt)),a["ɵdid"](21,16384,null,0,o.d,[o.f,a.ViewContainerRef,a.TemplateRef],null,null),(t()(),a["ɵand"](16777216,null,null,1,null,Xt)),a["ɵdid"](23,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,5,0,0!==n.columnFilters.length),t(e,7,0,n.searchField),t(e,9,0,n.limit),t(e,13,0,!0);var a=t(e,19,0,n.icons.large,n.icons.table);t(e,18,0,a),t(e,23,0,n.fetchData.observers.length>0)}),(function(t,e){t(e,11,0,a["ɵnov"](e,13).dropup,a["ɵnov"](e,13).isOpen,a["ɵnov"](e,13).isOpen&&a["ɵnov"](e,13).isBs4),t(e,14,0,!0,a["ɵnov"](e,15).isDisabled,a["ɵnov"](e,15).isOpen)}))}function ee(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"span",[["class","badge badge-info mr-2"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[["class","mr-2"]],null,null,null,null,null)),(t()(),a["ɵted"](2,null,["",": ",""])),(t()(),a["ɵeld"](3,0,null,null,4,"a",[["class","badge-remove"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.onChangeFilter(t.parent.context.$implicit),a=!1),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](6,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](7,1)],(function(t,e){var n=t(e,7,0,e.component.icons.destroy);t(e,6,0,n)}),(function(t,e){t(e,2,0,e.parent.context.$implicit.column.name,e.parent.context.$implicit.value.formatted)}))}function ne(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ee)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit.value)}),null)}function ae(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"div",[["class","dataTables_header clearfix"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,5,"div",[["class","filter-chips"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ne)),a["ɵdid"](3,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](4,0,null,null,2,"a",[["class","tc_clearSelections"],["href",""]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.onClearFilters(),a=!1),a}),null,null)),(t()(),a["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Clear filters"]))],(function(t,e){t(e,3,0,e.component.columnFilters)}),null)}function re(t){return a["ɵvid"](0,[a["ɵncd"](null,3),(t()(),a["ɵand"](0,null,null,0))],null,null)}function ie(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "])),(t()(),a["ɵeld"](2,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["selected"])),(t()(),a["ɵted"](-1,null,[" / "]))],null,(function(t,e){t(e,1,0,e.parent.context.selectedCount)}))}function se(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "])),(t()(),a["ɵeld"](2,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["found"])),(t()(),a["ɵted"](-1,null,[" / "]))],null,(function(t,e){t(e,1,0,e.parent.context.rowCount)}))}function ue(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"div",[["class","page-count"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ie)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,se)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](5,0,null,null,3,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](6,null,[" "," "])),(t()(),a["ɵeld"](7,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["total"])),(t()(),a["ɵeld"](9,0,null,null,1,"datatable-pager",[["class","datatable-pager"]],[[8,"hidden",0]],[[null,"change"]],(function(t,e,n){var r=!0;return"change"===e&&(r=!1!==a["ɵnov"](t.parent,26).onFooterPage(n)&&r),r}),At,Ct)),a["ɵdid"](10,49152,null,0,f.j,[],{pagerLeftArrowIcon:[0,"pagerLeftArrowIcon"],pagerRightArrowIcon:[1,"pagerRightArrowIcon"],pagerPreviousIcon:[2,"pagerPreviousIcon"],pagerNextIcon:[3,"pagerNextIcon"],size:[4,"size"],count:[5,"count"],page:[6,"page"]},{change:"change"})],(function(t,e){var n=e.component;t(e,2,0,n.selectionType),t(e,4,0,e.context.rowCount!=(null==n.data?null:n.data.length)),t(e,10,0,n.paginationClasses.pagerLeftArrow,n.paginationClasses.pagerRightArrow,n.paginationClasses.pagerPrevious,n.paginationClasses.pagerNext,e.context.pageSize,e.context.rowCount,e.context.curPage)}),(function(t,e){var n=e.component;t(e,6,0,(null==n.data?null:n.data.length)||0),t(e,9,0,!(e.context.rowCount/e.context.pageSize>1))}))}function oe(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.value)}))}function le(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-sparkline",[],null,null,null,kt.b,kt.a)),a["ɵdid"](1,638976,null,0,Et.a,[Lt.a],{data:[0,"data"],isBinary:[1,"isBinary"]},null)],(function(t,e){t(e,1,0,e.context.value,e.context.row.cdIsBinary)}),null)}function de(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"a",[],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,1).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&r),r}),null,null)),a["ɵdid"](1,671744,null,0,Dt.p,[Dt.m,Dt.a,u.LocationStrategy],{queryParams:[0,"queryParams"],routerLink:[1,"routerLink"]},null),a["ɵpad"](2,1),(t()(),a["ɵted"](3,null,["",""]))],(function(t,e){var n=e.context.row.cdParams,a=t(e,2,0,e.context.row.cdLink);t(e,1,0,n,a)}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).target,a["ɵnov"](e,1).href),t(e,3,0,e.context.value)}))}function ce(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"i",[],[[8,"hidden",0]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,1),a["ɵppd"](4,1)],(function(t,e){var n=t(e,3,0,e.component.icons.check);t(e,2,0,n)}),(function(t,e){var n=!a["ɵunv"](e,0,0,t(e,4,0,a["ɵnov"](e.parent,0),e.context.value));t(e,0,0,n)}))}function fe(t){return a["ɵvid"](0,[(t()(),a["ɵted"](0,null,[" "," /s\n"]))],null,(function(t,e){t(e,0,0,e.context.value)}))}function he(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,2)],(function(t,e){var n=e.component,a=t(e,3,0,n.icons.spinner,n.icons.spin);t(e,2,0,a)}),null)}function ge(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","text-muted italic"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["(",")"]))],null,(function(t,e){t(e,1,0,e.parent.context.row.cdExecuting)}))}function pe(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,he)),a["ɵdid"](1,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](2,null,[" "," "])),(t()(),a["ɵand"](16777216,null,null,1,null,ge)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.row.cdExecuting),t(e,4,0,e.context.row.cdExecuting)}),(function(t,e){t(e,2,0,e.context.value)}))}function be(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,0,0,a["ɵinlineInterpolate"](1,"",e.component.useCustomClass(e.context.value),"")),t(e,1,0,e.context.value)}))}function me(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"span",[["class","badge"]],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,"badge",null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&e.parent.parent.context.column.customTemplateConfig.map&&null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&null!=e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit]&&e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit].class?e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit].class:null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&e.parent.parent.context.column.customTemplateConfig.class?e.parent.parent.context.column.customTemplateConfig.class:"badge-primary")}),(function(t,e){t(e,3,0,null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&e.parent.parent.context.column.customTemplateConfig.map&&null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&null!=e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit]&&e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit].value?e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit].value:null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&e.parent.parent.context.column.customTemplateConfig.prefix?e.parent.parent.context.column.customTemplateConfig.prefix+e.parent.context.$implicit:e.parent.context.$implicit)}))}function ye(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,[" "]))],null,null)}function ve(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,me)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ye)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,null!=e.parent.context.column&&null!=e.parent.context.column.customTemplateConfig&&e.parent.context.column.customTemplateConfig.map&&null!=e.parent.context.column&&null!=e.parent.context.column.customTemplateConfig&&null!=e.parent.context.column.customTemplateConfig.map[e.context.$implicit]&&e.parent.context.column.customTemplateConfig.map[e.context.$implicit].value?e.parent.context.column.customTemplateConfig.map[e.context.$implicit].value:null!=e.parent.context.column&&null!=e.parent.context.column.customTemplateConfig&&e.parent.context.column.customTemplateConfig.prefix?e.parent.context.column.customTemplateConfig.prefix+e.context.$implicit:e.context.$implicit),t(e,4,0,!e.context.last)}),null)}function xe(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,ve)),a["ɵdid"](1,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵppd"](2,1),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent,1),e.context.value));t(e,1,0,n)}),null)}function _e(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""])),a["ɵppd"](2,2)],null,(function(t,e){var n=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent,2),e.context.value,null==e.context.column?null:e.context.column.customTemplateConfig));t(e,1,0,n)}))}function Te(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[["data-toggle","tooltip"]],[[8,"title",0]],null,null,null,null)),(t()(),a["ɵted"](1,null,["",""])),a["ɵppd"](2,3)],null,(function(t,e){t(e,0,0,e.context.value);var n=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent,3),e.context.value,null==e.context.column||null==e.context.column.customTemplateConfig?null:e.context.column.customTemplateConfig.length,null==e.context.column||null==e.context.column.customTemplateConfig?null:e.context.column.customTemplateConfig.omission));t(e,1,0,n)}))}function we(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"a",[["class","expand-collapse-icon tc_expand-collapse"],["href","javascript:void(0)"],["title","Expand/Collapse Row"]],[[2,"expand-collapse-icon-right",null],[2,"expand-collapse-icon-down",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleExpandRow(t.context.row,t.context.expanded,n)&&a),a}),null,null))],null,(function(t,e){t(e,0,0,!e.context.expanded,e.context.expanded)}))}function Oe(t){return a["ɵvid"](2,[a["ɵpid"](0,Pt.a,[]),a["ɵpid"](0,Mt.a,[]),a["ɵpid"](0,qt.a,[]),a["ɵpid"](0,jt.a,[]),a["ɵqud"](402653184,1,{table:0}),a["ɵqud"](402653184,2,{tableCellBoldTpl:0}),a["ɵqud"](402653184,3,{sparklineTpl:0}),a["ɵqud"](402653184,4,{routerLinkTpl:0}),a["ɵqud"](402653184,5,{checkIconTpl:0}),a["ɵqud"](402653184,6,{perSecondTpl:0}),a["ɵqud"](402653184,7,{executingTpl:0}),a["ɵqud"](402653184,8,{classAddingTpl:0}),a["ɵqud"](402653184,9,{badgeTpl:0}),a["ɵqud"](402653184,10,{mapTpl:0}),a["ɵqud"](402653184,11,{truncateTpl:0}),a["ɵqud"](402653184,12,{rowDetailsTpl:0}),(t()(),a["ɵand"](16777216,null,null,1,null,Vt)),a["ɵdid"](17,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](18,0,null,null,22,"div",[["class","dataTables_wrapper"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Gt)),a["ɵdid"](20,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,te)),a["ɵdid"](22,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ae)),a["ɵdid"](24,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](25,0,null,null,15,"ngx-datatable",[["class","bootstrap cd-datatable ngx-datatable"]],[[2,"fixed-header",null],[2,"fixed-row",null],[2,"scroll-vertical",null],[2,"virtualized",null],[2,"scroll-horz",null],[2,"selectable",null],[2,"checkbox-selection",null],[2,"cell-selection",null],[2,"single-selection",null],[2,"multi-selection",null],[2,"multi-click-selection",null]],[[null,"select"],[null,"sort"],["window","resize"]],(function(t,e,n){var r=!0,i=t.component;return"window:resize"===e&&(r=!1!==a["ɵnov"](t,26).onWindowResize()&&r),"select"===e&&(r=!1!==i.onSelect(n)&&r),"sort"===e&&(r=!1!==i.changeSorting(n)&&r),r}),b,h)),a["ɵdid"](26,5750784,[[1,4],["table",4]],4,f.n,[[1,f.y],[1,f.r],a.ChangeDetectorRef,a.ElementRef,a.KeyValueDiffers,f.a,[2,"configuration"]],{rows:[0,"rows"],columns:[1,"columns"],selected:[2,"selected"],rowHeight:[3,"rowHeight"],columnMode:[4,"columnMode"],headerHeight:[5,"headerHeight"],footerHeight:[6,"footerHeight"],limit:[7,"limit"],loadingIndicator:[8,"loadingIndicator"],selectionType:[9,"selectionType"],sorts:[10,"sorts"],cssClasses:[11,"cssClasses"],rowClass:[12,"rowClass"],rowIdentity:[13,"rowIdentity"]},{select:"select",sort:"sort"}),a["ɵqud"](603979776,13,{columnTemplates:1}),a["ɵqud"](603979776,14,{rowDetail:0}),a["ɵqud"](603979776,15,{groupHeader:0}),a["ɵqud"](603979776,16,{footer:0}),(t()(),a["ɵeld"](31,0,[["detailRow",1]],null,4,"ngx-datatable-row-detail",[["rowHeight","auto"]],null,null,null,null,null)),a["ɵdid"](32,16384,[[14,4]],1,f.p,[],{rowHeight:[0,"rowHeight"]},null),a["ɵqud"](335544320,17,{_templateQuery:0}),(t()(),a["ɵand"](0,[[17,2]],null,1,null,re)),a["ɵdid"](35,16384,null,0,f.q,[a.TemplateRef],null,null),(t()(),a["ɵeld"](36,0,null,null,4,"ngx-datatable-footer",[],null,null,null,null,null)),a["ɵdid"](37,16384,[[16,4]],1,f.o,[],null,null),a["ɵqud"](603979776,18,{_templateQuery:0}),(t()(),a["ɵand"](0,[[18,2]],null,1,null,ue)),a["ɵdid"](40,16384,null,0,f.g,[a.TemplateRef],null,null),(t()(),a["ɵand"](0,[[2,2],["tableCellBoldTpl",2]],null,0,null,oe)),(t()(),a["ɵand"](0,[[3,2],["sparklineTpl",2]],null,0,null,le)),(t()(),a["ɵand"](0,[[4,2],["routerLinkTpl",2]],null,0,null,de)),(t()(),a["ɵand"](0,[[5,2],["checkIconTpl",2]],null,0,null,ce)),(t()(),a["ɵand"](0,[[6,2],["perSecondTpl",2]],null,0,null,fe)),(t()(),a["ɵand"](0,[[7,2],["executingTpl",2]],null,0,null,pe)),(t()(),a["ɵand"](0,[[8,2],["classAddingTpl",2]],null,0,null,be)),(t()(),a["ɵand"](0,[[9,2],["badgeTpl",2]],null,0,null,xe)),(t()(),a["ɵand"](0,[[10,2],["mapTpl",2]],null,0,null,_e)),(t()(),a["ɵand"](0,[[11,2],["truncateTpl",2]],null,0,null,Te)),(t()(),a["ɵand"](0,[[12,2],["rowDetailsTpl",2]],null,1,null,we)),a["ɵdid"](52,16384,null,0,f.e,[a.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,17,0,n.loadingError),t(e,20,0,n.onlyActionHeader),t(e,22,0,n.toolHeader),t(e,24,0,n.toolHeader&&n.columnFiltered),t(e,26,1,[n.rows,n.tableColumns,n.selection.selected,"auto",n.columnMode,n.header?"auto":0,n.footer?"auto":0,n.userConfig.limit>0?n.userConfig.limit:void 0,n.loadingIndicator,n.selectionType,n.userConfig.sorts,n.paginationClasses,n.getRowClass(),n.rowIdentity()]),t(e,32,0,"auto")}),(function(t,e){t(e,25,1,[a["ɵnov"](e,26).isFixedHeader,a["ɵnov"](e,26).isFixedRow,a["ɵnov"](e,26).isVertScroll,a["ɵnov"](e,26).isVirtualized,a["ɵnov"](e,26).isHorScroll,a["ɵnov"](e,26).isSelectable,a["ɵnov"](e,26).isCheckboxSelection,a["ɵnov"](e,26).isCellSelection,a["ɵnov"](e,26).isSingleSelection,a["ɵnov"](e,26).isMultiSelection,a["ɵnov"](e,26).isMultiClickSelection])}))}},"2EZI":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("s7LF"),r=n("QFaf"),i=n("8Y7J");let s=(()=>{class t extends a.h{group(t,e=null){const n=super.group(t,e);return new r.a(n.controls,n.validator,n.asyncValidator)}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})()},"2QA8":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())()},"2Vo4":function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("XNiG"),r=n("9ppp");class i extends a.a{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new r.a;return this._value}next(t){super.next(this._value=t)}}},"2ZVE":function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return u})),n.d(e,"c",(function(){return o})),n.d(e,"d",(function(){return l})),n.d(e,"e",(function(){return s})),n.d(e,"f",(function(){return i}));var a=n("8Y7J");class r{constructor(t){this.viewRef=t}set ngTransclude(t){this._ngTransclude=t,t&&this.viewRef.createEmbeddedView(t)}get ngTransclude(){return this._ngTransclude}}class i{constructor(){this.type="tabs",this.ariaLabel="Tabs"}}class s{constructor(t,e,n){this.renderer=e,this.elementRef=n,this.clazz=!0,this.tabs=[],this.classMap={},Object.assign(this,t)}get vertical(){return this._vertical}set vertical(t){this._vertical=t,this.setClassMap()}get justified(){return this._justified}set justified(t){this._justified=t,this.setClassMap()}get type(){return this._type}set type(t){this._type=t,this.setClassMap()}ngOnDestroy(){this.isDestroyed=!0}addTab(t){this.tabs.push(t),t.active=1===this.tabs.length&&void 0===t.active}removeTab(t,e={reselect:!0,emit:!0}){const n=this.tabs.indexOf(t);if(-1!==n&&!this.isDestroyed){if(e.reselect&&t.active&&this.hasAvailableTabs(n)){const t=this.getClosestTabIndex(n);this.tabs[t].active=!0}e.emit&&t.removed.emit(t),this.tabs.splice(n,1),t.elementRef.nativeElement.parentNode&&this.renderer.removeChild(t.elementRef.nativeElement.parentNode,t.elementRef.nativeElement)}}keyNavActions(t,e){const n=Array.from(this.elementRef.nativeElement.querySelectorAll(".nav-link"));if(13!==t.keyCode&&"Enter"!==t.key&&32!==t.keyCode&&"Space"!==t.key)if(39!==t.keyCode&&"RightArrow"!==t.key)if(37!==t.keyCode&&"LeftArrow"!==t.key)if(36!==t.keyCode&&"Home"!==t.key)if(35!==t.keyCode&&"End"!==t.key){if((46===t.keyCode||"Delete"===t.key)&&this.tabs[e].removable){if(this.removeTab(this.tabs[e]),n[e+1])return void n[(e+1)%n.length].focus();n[n.length-1]&&n[0].focus()}}else{let a;t.preventDefault();let r=1,i=e;do{i-r<0?(i=n.length-1,a=n[i],r=0):a=n[i-r],r++}while(a.classList.contains("disabled"));a.focus()}else{let e;t.preventDefault();let a=0;do{e=n[a%n.length],a++}while(e.classList.contains("disabled"));e.focus()}else{let t,a=1,r=e;do{r-a<0?(r=n.length-1,t=n[r],a=0):t=n[r-a],a++}while(t.classList.contains("disabled"));t.focus()}else{let t,a=1;do{t=n[(e+a)%n.length],a++}while(t.classList.contains("disabled"));t.focus()}else t.preventDefault(),n[e%n.length].click()}getClosestTabIndex(t){const e=this.tabs.length;if(!e)return-1;for(let n=1;n<=e;n+=1){const e=t-n,a=t+n;if(this.tabs[e]&&!this.tabs[e].disabled)return e;if(this.tabs[a]&&!this.tabs[a].disabled)return a}return-1}hasAvailableTabs(t){const e=this.tabs.length;if(!e)return!1;for(let n=0;n<e;n+=1)if(!this.tabs[n].disabled&&n!==t)return!0;return!1}setClassMap(){this.classMap={"nav-stacked":this.vertical,"flex-column":this.vertical,"nav-justified":this.justified,["nav-"+this.type]:!0}}}class u{constructor(t,e,n){this.elementRef=e,this.renderer=n,this.selectTab=new a.EventEmitter,this.deselect=new a.EventEmitter,this.removed=new a.EventEmitter,this.addClass=!0,this.role="tabpanel",this.tabset=t,this.tabset.addTab(this)}get customClass(){return this._customClass}set customClass(t){this.customClass&&this.customClass.split(" ").forEach(t=>{this.renderer.removeClass(this.elementRef.nativeElement,t)}),this._customClass=t?t.trim():null,this.customClass&&this.customClass.split(" ").forEach(t=>{this.renderer.addClass(this.elementRef.nativeElement,t)})}get active(){return this._active}set active(t){this._active!==t&&(this.disabled&&t||!t?this._active&&!t&&(this.deselect.emit(this),this._active=t):(this._active=t,this.selectTab.emit(this),this.tabset.tabs.forEach(t=>{t!==this&&(t.active=!1)})))}get ariaLabelledby(){return this.id?this.id+"-link":""}ngOnInit(){this.removable=this.removable}ngOnDestroy(){this.tabset.removeTab(this,{reselect:!1,emit:!1})}}class o{constructor(t,e){e.headingRef=t}}class l{static forRoot(){return{ngModule:l,providers:[i]}}}},"2bSy":function(t,e,n){var a=n("iQ+a"),r=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,i,s,u){var o=1&n,l=a(t),d=l.length;if(d!=a(e).length&&!o)return!1;for(var c=d;c--;){var f=l[c];if(!(o?f in e:r.call(e,f)))return!1}var h=u.get(t),g=u.get(e);if(h&&g)return h==e&&g==t;var p=!0;u.set(t,e),u.set(e,t);for(var b=o;++c<d;){var m=t[f=l[c]],y=e[f];if(i)var v=o?i(y,m,f,e,t,u):i(m,y,f,t,e,u);if(!(void 0===v?m===y||s(m,y,n,i,u):v)){p=!1;break}b||(b="constructor"==f)}if(p&&!b){var x=t.constructor,_=e.constructor;x==_||!("constructor"in t)||!("constructor"in e)||"function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _||(p=!1)}return u.delete(t),u.delete(e),p}},"2fFW":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));let a=!1;const r={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else a&&console.log("RxJS: Back to a better error behavior. Thank you. <3");a=t},get useDeprecatedSynchronousErrorHandling(){return a}}},"2fjn":function(t,e,n){!function(t){"use strict";t.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(t,e){switch(e){default:case"M":case"Q":case"D":case"DDD":case"d":return t+(1===t?"er":"e");case"w":case"W":return t+(1===t?"re":"e")}}})}(n("wd/R"))},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"2oum":function(t,e){t.exports=function(t){return this.__data__.has(t)}},"2uy1":function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("XNiG"),s=n("VRyK"),u=n("xgIS"),o=n("LRne"),l=n("3N8a");class d extends l.a{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}var c=n("IjjT");class f extends c.a{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,a=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++a<r&&(t=e.shift()));if(this.active=!1,n){for(;++a<r&&(t=e.shift());)t.unsubscribe();throw n}}}const h=new f(d);function g(t,e){if(1!==t.nodeType)return[];const n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function p(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function b(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}const{overflow:e,overflowX:n,overflowY:a}=g(t);return/(auto|scroll|overlay)/.test(String(e)+String(a)+String(n))?t:b(p(t))}n.d(e,"a",(function(){return U}));const m="undefined"!=typeof window&&"undefined"!=typeof document,y=m&&!(!window.MSInputMethodContext||!document.documentMode),v=m&&!(!window.MSInputMethodContext||!/MSIE 10/.test(navigator.userAgent));function x(t){return 11===t?y:10===t?v:y||v}function _(t){if(!t)return document.documentElement;const e=x(10)?document.body:null;let n,a=t.offsetParent||null;for(;a===e&&t.nextElementSibling&&n!==t.nextElementSibling;)n=t.nextElementSibling,a=n.offsetParent;const r=a&&a.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(a.nodeName)&&"static"===g(a,"position")?_(a):a:n?n.ownerDocument.documentElement:document.documentElement}function T(t){return null!==t.parentNode?T(t.parentNode):t}function w(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;const n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,a=n?t:e,r=n?e:t,i=document.createRange();i.setStart(a,0),i.setEnd(r,0);const{commonAncestorContainer:s}=i;if(t!==s&&e!==s||a.contains(r))return function(t){const{nodeName:e}=t;return"BODY"!==e&&("HTML"===e||_(t.firstElementChild)===t)}(s)?s:_(s);const u=T(t);return u.host?w(u.host,e):w(t,T(e).host)}function O(t,e){const n="x"===e?"Left":"Top",a="Left"===n?"Right":"Bottom";return parseFloat(t[`border${n}Width`])+parseFloat(t[`border${a}Width`])}function S(t,e,n,a){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],x(10)?parseInt(n["offset"+t],10)+parseInt(a["margin"+("Height"===t?"Top":"Left")],10)+parseInt(a["margin"+("Height"===t?"Bottom":"Right")],10):0)}function I(t){const e=t.body,n=t.documentElement,a=x(10)&&getComputedStyle(n);return{height:S("Height",e,n,a),width:S("Width",e,n,a)}}function N(t,e="top"){const n="top"===e?"scrollTop":"scrollLeft",a=t.nodeName;if("BODY"===a||"HTML"===a){const e=t.ownerDocument.documentElement;return(t.ownerDocument.scrollingElement||e)[n]}return t[n]}function C(t){return Object.assign({},t,{right:t.left+t.width,bottom:t.top+t.height})}function R(t){let e={};try{if(x(10)){e=t.getBoundingClientRect();const n=N(t,"top"),a=N(t,"left");e.top+=n,e.left+=a,e.bottom+=n,e.right+=a}else e=t.getBoundingClientRect()}catch(s){return}const n={left:e.left,top:e.top,width:e.right-e.left,height:e.bottom-e.top},a="HTML"===t.nodeName?I(t.ownerDocument):{};let r=t.offsetWidth-(a.width||t.clientWidth||n.right-n.left),i=t.offsetHeight-(a.height||t.clientHeight||n.bottom-n.top);if(r||i){const e=g(t);r-=O(e,"x"),i-=O(e,"y"),n.width-=r,n.height-=i}return C(n)}function A(t,e,n=!1){const a=x(10),r="HTML"===e.nodeName,i=R(t),s=R(e),u=b(t),o=g(e),l=parseFloat(o.borderTopWidth),d=parseFloat(o.borderLeftWidth);n&&r&&(s.top=Math.max(s.top,0),s.left=Math.max(s.left,0));let c=C({top:i.top-s.top-l,left:i.left-s.left-d,width:i.width,height:i.height});if(c.marginTop=0,c.marginLeft=0,!a&&r){const t=parseFloat(o.marginTop),e=parseFloat(o.marginLeft);c.top-=l-t,c.bottom-=l-t,c.left-=d-e,c.right-=d-e,c.marginTop=t,c.marginLeft=e}return(a&&!n?e.contains(u):e===u&&"BODY"!==u.nodeName)&&(c=function(t,e,n=!1){const a=N(e,"top"),r=N(e,"left"),i=n?-1:1;return t.top+=a*i,t.bottom+=a*i,t.left+=r*i,t.right+=r*i,t}(c,e)),c}function k(t){if(!t||!t.parentElement||x())return document.documentElement;let e=t.parentElement;for(;e&&"none"===g(e,"transform");)e=e.parentElement;return e||document.documentElement}function E(t,e,n=0,a,r=!1){let i={top:0,left:0};const s=r?k(t):w(t,e);if("viewport"===a)i=function(t,e=!1){const n=t.ownerDocument.documentElement,a=A(t,n),r=Math.max(n.clientWidth,window.innerWidth||0),i=Math.max(n.clientHeight,window.innerHeight||0),s=e?0:N(n),u=e?0:N(n,"left");return C({top:s-Number(a.top)+Number(a.marginTop),left:u-Number(a.left)+Number(a.marginLeft),width:r,height:i})}(s,r);else{let n;"scrollParent"===a?(n=b(p(e)),"BODY"===n.nodeName&&(n=t.ownerDocument.documentElement)):n="window"===a?t.ownerDocument.documentElement:a;const u=A(n,s,r);if("HTML"!==n.nodeName||function t(e){const n=e.nodeName;return"BODY"!==n&&"HTML"!==n&&("fixed"===g(e,"position")||t(p(e)))}(s))i=u;else{const{height:e,width:n}=I(t.ownerDocument);i.top+=u.top-u.marginTop,i.bottom=Number(e)+Number(u.top),i.left+=u.left-u.marginLeft,i.right=Number(n)+Number(u.left)}}return i.left+=n,i.top+=n,i.right-=n,i.bottom-=n,i}function L({width:t,height:e}){return t*e}function D(t,e,n,a,r=["top","bottom","right","left"],i="viewport",s=0){if(-1===t.indexOf("auto"))return t;const u=E(n,a,s,i),o={top:{width:u.width,height:e.top-u.top},right:{width:u.right-e.right,height:u.height},bottom:{width:u.width,height:u.bottom-e.bottom},left:{width:e.left-u.left,height:u.height}},l=Object.keys(o).map(t=>Object.assign({key:t},o[t],{area:L(o[t])})).sort((t,e)=>e.area-t.area);let d=l.filter(({width:t,height:e})=>t>=n.clientWidth&&e>=n.clientHeight);d=d.filter(t=>r.some(e=>e===t.key));const c=d.length>0?d[0].key:l[0].key,f=t.split(" ")[1];return n.className=n.className.replace(/bs-tooltip-auto/g,"bs-tooltip-"+c),c+(f?"-"+f:"")}function P(t){const e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),a=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:Number(t.offsetWidth)+a,height:Number(t.offsetHeight)+n}}function M(t,e,n=null){return A(e,n?k(t):w(t,e),n)}function q(t,e,n){const a=n.split(" ")[0],r=P(t),i={width:r.width,height:r.height},s=-1!==["right","left"].indexOf(a),u=s?"top":"left",o=s?"left":"top",l=s?"height":"width",d=s?"width":"height";return i[u]=e[u]+e[l]/2-r[l]/2,i[o]=a===o?e[o]-r[d]:e[function(t){const e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,t=>e[t])}(o)],i}function j(t,e){return t&&t.modifiers&&t.modifiers[e]&&t.modifiers[e].enabled}function F(t,e,n){Object.keys(e).forEach(a=>{let r="";var i;-1!==["width","height","top","right","bottom","left"].indexOf(a)&&""!==(i=e[a])&&!isNaN(parseFloat(i))&&isFinite(i)&&(r="px"),n?n.setStyle(t,a,`${String(e[a])}${r}`):t.style[a]=String(e[a])+r})}function V(t){let e=t.offsets.target;const n=t.instance.target.querySelector(".arrow");if(!n)return t;const a=-1!==["left","right"].indexOf(t.placement),r=a?"height":"width",i=a?"Top":"Left",s=i.toLowerCase(),u=a?"left":"top",o=a?"bottom":"right",l=P(n)[r];t.offsets.host[o]-l<e[s]&&(e[s]-=e[s]-(t.offsets.host[o]-l)),Number(t.offsets.host[s])+Number(l)>e[o]&&(e[s]+=Number(t.offsets.host[s])+Number(l)-Number(e[o])),e=C(e);const d=Number(t.offsets.host[s])+Number(t.offsets.host[r]/2-l/2),c=g(t.instance.target),f=parseFloat(c["margin"+i]),h=parseFloat(c[`border${i}Width`]);let p=d-e[s]-f-h;return p=Math.max(Math.min(e[r]-l,p),0),t.offsets.arrow={[s]:Math.round(p),[u]:""},t.instance.arrow=n,t}function G(t){if(t.offsets.target=C(t.offsets.target),!j(t.options,"flip"))return t.offsets.target=Object.assign({},t.offsets.target,q(t.instance.target,t.offsets.host,t.placement)),t;const e=E(t.instance.target,t.instance.host,0,"viewport",!1);let n=t.placement.split(" ")[0],a=t.placement.split(" ")[1]||"";const r=D("auto",t.offsets.host,t.instance.target,t.instance.host,t.options.allowedPositions),i=[n,r];return i.forEach((r,s)=>{if(n!==r||i.length===s+1)return t;n=t.placement.split(" ")[0];const u="left"===n&&Math.floor(t.offsets.target.right)>Math.floor(t.offsets.host.left)||"right"===n&&Math.floor(t.offsets.target.left)<Math.floor(t.offsets.host.right)||"top"===n&&Math.floor(t.offsets.target.bottom)>Math.floor(t.offsets.host.top)||"bottom"===n&&Math.floor(t.offsets.target.top)<Math.floor(t.offsets.host.bottom),o=Math.floor(t.offsets.target.left)<Math.floor(e.left),l=Math.floor(t.offsets.target.right)>Math.floor(e.right),d=Math.floor(t.offsets.target.top)<Math.floor(e.top),c=Math.floor(t.offsets.target.bottom)>Math.floor(e.bottom),f="left"===n&&o||"right"===n&&l||"top"===n&&d||"bottom"===n&&c,h=-1!==["top","bottom"].indexOf(n),g=h&&"left"===a&&o||h&&"right"===a&&l||!h&&"left"===a&&d||!h&&"right"===a&&c;(u||f||g)&&((u||f)&&(n=i[s+1]),g&&(a=function(t){return"right"===t?"left":"left"===t?"right":t}(a)),t.placement=n+(a?" "+a:""),t.offsets.target=Object.assign({},t.offsets.target,q(t.instance.target,t.offsets.host,t.placement)))}),t}function B(t){if(!j(t.options,"preventOverflow"))return t;const e="transform",n=t.instance.target.style,{top:a,left:r,[e]:i}=n;n.top="",n.left="",n[e]="";const s=E(t.instance.target,t.instance.host,0,"scrollParent",!1);n.top=a,n.left=r,n[e]=i;const u={primary(e){let n=t.offsets.target[e];return t.offsets.target[e]<s[e]&&(n=Math.max(t.offsets.target[e],s[e])),{[e]:n}},secondary(e){const n="right"===e?"left":"top";let a=t.offsets.target[n];return t.offsets.target[e]>s[e]&&(a=Math.min(t.offsets.target[n],s[e]-("right"===e?t.offsets.target.width:t.offsets.target.height))),{[n]:a}}};let o;return["left","right","top","bottom"].forEach(e=>{o=-1!==["left","top"].indexOf(e)?"primary":"secondary",t.offsets.target=Object.assign({},t.offsets.target,u[o](e))}),t}function z(t){const e=t.placement,n=e.split(" ")[0],a=e.split(" ")[1];if(a){const{host:e,target:r}=t.offsets,i=-1!==["bottom","top"].indexOf(n),s=i?"left":"top",u=i?"width":"height";t.offsets.target=Object.assign({},r,{start:{[s]:e[s]},end:{[s]:e[s]+e[u]-r[u]}}[a])}return t}class Y{position(t,e,n=!0){return this.offset(t,e,!1)}offset(t,e,n=!0){return M(e,t)}positionElements(t,e,n,a,r){return[G,z,B,V].reduce((t,e)=>e(t),function(t,e,n,a){const r=M(t,e);n.match(/^(auto)*\s*(left|right|top|bottom)*$/)||n.match(/^(left|right|top|bottom)*\s*(start|end)*$/)||(n="auto");const i=!!n.match(/auto/g);let s=n.match(/auto\s(left|right|top|bottom)/)?n.split(" ")[1]||"auto":n;const u=q(t,r,s);return s=D(s,r,t,e,a?a.allowedPositions:void 0),{options:a,instance:{target:t,host:e,arrow:null},offsets:{target:u,host:r,arrow:null},positionFixed:!1,placement:s,placementAuto:i}}(e,t,n,r))}}const H=new Y;class U{constructor(t,e,n){this.update$$=new i.a,this.positionElements=new Map,this.isDisabled=!1,Object(r.isPlatformBrowser)(n)&&t.runOutsideAngular(()=>{this.triggerEvent$=Object(s.a)(Object(u.a)(window,"scroll",{passive:!0}),Object(u.a)(window,"resize",{passive:!0}),Object(o.a)(0,h),this.update$$),this.triggerEvent$.subscribe(()=>{this.isDisabled||this.positionElements.forEach(t=>{!function(t,e,n,a,r,i){const s=H.positionElements(t,e,n,a,r),u=function(t){return{width:t.offsets.target.width,height:t.offsets.target.height,left:Math.floor(t.offsets.target.left),top:Math.round(t.offsets.target.top),bottom:Math.round(t.offsets.target.bottom),right:Math.floor(t.offsets.target.right)}}(s);F(e,{"will-change":"transform",top:"0px",left:"0px",transform:`translate3d(${u.left}px, ${u.top}px, 0px)`},i),s.instance.arrow&&F(s.instance.arrow,s.offsets.arrow,i),function(t,e){const n=t.instance.target;let a=n.className;t.placementAuto&&(a=a.replace(/bs-popover-auto/g,"bs-popover-"+t.placement),a=a.replace(/bs-tooltip-auto/g,"bs-tooltip-"+t.placement),a=a.replace(/\sauto/g," "+t.placement),-1!==a.indexOf("popover")&&-1===a.indexOf("popover-auto")&&(a+=" popover-auto"),-1!==a.indexOf("tooltip")&&-1===a.indexOf("tooltip-auto")&&(a+=" tooltip-auto")),a=a.replace(/left|right|top|bottom/g,""+t.placement.split(" ")[0]),e?e.setAttribute(n,"class",a):n.className=a}(s,i)}(W(t.target),W(t.element),t.attachment,t.appendToBody,this.options,e.createRenderer(null,null))})})})}position(t){this.addPositionElement(t)}get event$(){return this.triggerEvent$}disable(){this.isDisabled=!0}enable(){this.isDisabled=!1}addPositionElement(t){this.positionElements.set(W(t.element),t)}calcPosition(){this.update$$.next()}deletePositionElement(t){this.positionElements.delete(W(t))}setOptions(t){this.options=t}}function W(t){return"string"==typeof t?document.querySelector(t):t instanceof a.ElementRef?t.nativeElement:t}},"2vnA":function(t,e,n){"use strict";n.d(e,"a",(function(){return Zt})),n.d(e,"b",(function(){return Qt})),n.d(e,"c",(function(){return it})),n.d(e,"d",(function(){return et})),n.d(e,"e",(function(){return ee}));var a=[];Object.freeze(a);var r={};Object.freeze(r);var i={};function s(){return"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:i}function u(){return++kt.mobxGuid}function o(t){throw l(!1,t),"X"}function l(t,e){if(!t)throw new Error("[mobx] "+(e||"An invariant failed, however the error is obfuscated because this is an production build."))}function d(t){var e=!1;return function(){if(!e)return e=!0,t.apply(this,arguments)}}var c=function(){};function f(t){return null!==t&&"object"==typeof t}function h(t){if(null===t||"object"!=typeof t)return!1;var e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}function g(t,e,n){Object.defineProperty(t,e,{enumerable:!1,writable:!0,configurable:!0,value:n})}function p(t,e,n){Object.defineProperty(t,e,{enumerable:!1,writable:!1,configurable:!0,value:n})}function b(t,e){var n="isMobX"+t;return e.prototype[n]=!0,function(t){return f(t)&&!0===t[n]}}function m(t){return void 0!==s().Map&&t instanceof s().Map}function y(t){return t instanceof Set}function v(t){for(var e=[];;){var n=t.next();if(n.done)break;e.push(n.value)}return e}function x(){return"function"==typeof Symbol&&Symbol.toPrimitive||"@@toPrimitive"}function _(t){return null===t?null:"object"==typeof t?""+t:t}function T(t,e){for(var n=t.next();!n.done;)e(n.value),n=t.next()}function w(){return"function"==typeof Symbol&&Symbol.iterator||"@@iterator"}function O(t,e){p(t,w(),e)}function S(t){return t[w()]=N,t}function I(){return"function"==typeof Symbol&&Symbol.toStringTag||"@@toStringTag"}function N(){return this}var C=function(){function t(t){void 0===t&&(t="Atom@"+u()),this.name=t,this.isPendingUnobservation=!1,this.isBeingObserved=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.lastAccessedBy=0,this.lowestObserverState=st.NOT_TRACKING}return t.prototype.onBecomeUnobserved=function(){},t.prototype.onBecomeObserved=function(){},t.prototype.reportObserved=function(){return qt(this)},t.prototype.reportChanged=function(){Pt(),function(t){if(t.lowestObserverState!==st.STALE){t.lowestObserverState=st.STALE;for(var e=t.observers,n=e.length;n--;){var a=e[n];a.dependenciesState===st.UP_TO_DATE&&(a.isTracing!==ut.NONE&&jt(a,t),a.onBecomeStale()),a.dependenciesState=st.STALE}}}(this),Mt()},t.prototype.toString=function(){return this.name},t}(),R=b("Atom",C);function A(t,e,n){void 0===e&&(e=c),void 0===n&&(n=c);var a=new C(t);return ae("onBecomeObserved",a,e,void 0),ne(a,n),a}function k(t,e){return t===e}var E={identity:k,structural:function(t,e){return We(t,e)},default:function(t,e){return function(t,e){return"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)}(t,e)||k(t,e)},shallow:function(t,e){return We(t,e,1)}},L=function(t,e){return(L=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function D(t,e){function n(){this.constructor=t}L(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var P=function(){return(P=Object.assign||function(t){for(var e,n=1,a=arguments.length;n<a;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function M(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var a,r,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(a=i.next()).done;)s.push(a.value)}catch(u){r={error:u}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return s}function q(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(M(arguments[e]));return t}var j={},F={};function V(t,e){var n=e?j:F;return n[t]||(n[t]={configurable:!0,enumerable:e,get:function(){return G(this),this[t]},set:function(e){G(this),this[t]=e}})}function G(t){if(!0!==t.__mobxDidRunLazyInitializers){var e=t.__mobxDecorators;if(e)for(var n in g(t,"__mobxDidRunLazyInitializers",!0),e){var a=e[n];a.propertyCreator(t,a.prop,a.descriptor,a.decoratorTarget,a.decoratorArguments)}}}function B(t,e){return function(){var n,r=function(a,r,i,s){return!0===s?(e(a,r,i,a,n),null):(Object.prototype.hasOwnProperty.call(a,"__mobxDecorators")||g(a,"__mobxDecorators",P({},a.__mobxDecorators)),a.__mobxDecorators[r]={prop:r,propertyCreator:e,descriptor:i,decoratorTarget:a,decoratorArguments:n},V(r,t))};return z(arguments)?(n=a,r.apply(null,arguments)):(n=Array.prototype.slice.call(arguments),r)}}function z(t){return(2===t.length||3===t.length)&&"string"==typeof t[1]||4===t.length&&!0===t[3]}function Y(t,e,n){return ue(t)?t:Array.isArray(t)?et.array(t,{name:n}):h(t)?et.object(t,void 0,{name:n}):m(t)?et.map(t,{name:n}):y(t)?et.set(t,{name:n}):t}function H(t){return t}function U(t){l(t);var e=B(!0,(function(e,n,a,r,i){!function(t,e,n,a){var r=Fe(t);if(de(r)){var i=fe(r,{object:t,name:e,type:"add",newValue:n});if(!i)return;n=i.newValue}n=(r.values[e]=new It(n,a,r.name+"."+e,!1)).value,Object.defineProperty(t,e,function(t){return Ve[t]||(Ve[t]={configurable:!0,enumerable:!0,get:function(){return this.$mobx.read(this,t)},set:function(e){this.$mobx.write(this,t,e)}})}(e)),r.keys&&r.keys.push(e),function(t,e,n,a){var r=he(t),i=Bt(),s=r||i?{type:"add",object:e,name:n,newValue:a}:null;i&&Yt(P(P({},s),{name:t.name,key:n})),r&&pe(t,s),i&&Ut()}(r,t,e,n)}(e,n,a?a.initializer?a.initializer.call(e):a.value:void 0,t)})),n=("undefined"!=typeof process&&process,e);return n.enhancer=t,n}var W={deep:!0,name:void 0,defaultDecorator:void 0};function K(t){return null==t?W:"string"==typeof t?{name:t,deep:!0}:t}function $(t){return t.defaultDecorator?t.defaultDecorator.enhancer:!1===t.deep?H:Y}Object.freeze(W),Object.freeze({deep:!1,name:void 0,defaultDecorator:void 0});var Z=U(Y),J=U((function(t,e,n){return null==t||Ye(t)||Ae(t)||De(t)||qe(t)?t:Array.isArray(t)?et.array(t,{name:n,deep:!1}):h(t)?et.object(t,void 0,{name:n,deep:!1}):m(t)?et.map(t,{name:n,deep:!1}):y(t)?et.set(t,{name:n,deep:!1}):o(!1)})),Q=U(H),X=U((function(t,e,n){return We(t,e)?e:t})),tt={box:function(t,e){arguments.length>2&&nt("box");var n=K(e);return new It(t,$(n),n.name,!0,n.equals)},shallowBox:function(t,e){return arguments.length>2&&nt("shallowBox"),et.box(t,{name:e,deep:!1})},array:function(t,e){arguments.length>2&&nt("array");var n=K(e);return new Oe(t,$(n),n.name)},shallowArray:function(t,e){return arguments.length>2&&nt("shallowArray"),et.array(t,{name:e,deep:!1})},map:function(t,e){arguments.length>2&&nt("map");var n=K(e);return new Ee(t,$(n),n.name)},shallowMap:function(t,e){return arguments.length>2&&nt("shallowMap"),et.map(t,{name:e,deep:!1})},set:function(t,e){arguments.length>2&&nt("set");var n=K(e);return new Me(t,$(n),n.name)},object:function(t,e,n){"string"==typeof arguments[1]&&nt("object");var a=K(n);return re({},t,e,a)},shallowObject:function(t,e){return"string"==typeof arguments[1]&&nt("shallowObject"),et.object(t,{},{name:e,deep:!1})},ref:Q,shallow:J,deep:Z,struct:X},et=function(t,e,n){if("string"==typeof arguments[1])return Z.apply(null,arguments);if(ue(t))return t;var a=h(t)?et.object(t,e,n):Array.isArray(t)?et.array(t,e):m(t)?et.map(t,e):y(t)?et.set(t,e):t;if(a!==t)return a;o(!1)};function nt(t){o("Expected one or two arguments to observable."+t+". Did you accidentally try to use observable."+t+" as decorator?")}Object.keys(tt).forEach((function(t){return et[t]=tt[t]}));var at=B(!1,(function(t,e,n,a,r){var i,s,u,o;i=t,s=e,u=P({get:n.get,set:n.set},r[0]||{}),o=Fe(i),u.name=o.name+"."+s,u.context=i,o.values[s]=new Nt(u),Object.defineProperty(i,s,function(t){return Ge[t]||(Ge[t]={configurable:kt.computedConfigurable,enumerable:!1,get:function(){return Be(this).read(this,t)},set:function(e){Be(this).write(this,t,e)}})}(s))})),rt=at({equals:E.structural}),it=function(t,e,n){if("string"==typeof e)return at.apply(null,arguments);if(null!==t&&"object"==typeof t&&1===arguments.length)return at.apply(null,arguments);var a="object"==typeof e?e:{};return a.get=t,a.set="function"==typeof e?e:a.set,a.name=a.name||t.name||"",new Nt(a)};it.struct=rt;var st=function(t){return t[t.NOT_TRACKING=-1]="NOT_TRACKING",t[t.UP_TO_DATE=0]="UP_TO_DATE",t[t.POSSIBLY_STALE=1]="POSSIBLY_STALE",t[t.STALE=2]="STALE",t}({}),ut=function(t){return t[t.NONE=0]="NONE",t[t.LOG=1]="LOG",t[t.BREAK=2]="BREAK",t}({}),ot=function(){return function(t){this.cause=t}}();function lt(t){return t instanceof ot}function dt(t){switch(t.dependenciesState){case st.UP_TO_DATE:return!1;case st.NOT_TRACKING:case st.STALE:return!0;case st.POSSIBLY_STALE:for(var e=mt(!0),n=pt(),a=t.observing,r=a.length,i=0;i<r;i++){var s=a[i];if(Ct(s)){if(kt.disableErrorBoundaries)s.get();else try{s.get()}catch(u){return bt(n),yt(e),!0}if(t.dependenciesState===st.STALE)return bt(n),yt(e),!0}}return vt(t),bt(n),yt(e),!1}}function ct(t){var e=t.observers.length>0;kt.computationDepth>0&&e&&o(!1),kt.allowStateChanges||!e&&"strict"!==kt.enforceActions||o(!1)}function ft(t,e,n){var a=mt(!0);vt(t),t.newObserving=new Array(t.observing.length+100),t.unboundDepsCount=0,t.runId=++kt.runId;var r,i=kt.trackingDerivation;if(kt.trackingDerivation=t,!0===kt.disableErrorBoundaries)r=e.call(n);else try{r=e.call(n)}catch(s){r=new ot(s)}return kt.trackingDerivation=i,function(t){for(var e=t.observing,n=t.observing=t.newObserving,a=st.UP_TO_DATE,r=0,i=t.unboundDepsCount,s=0;s<i;s++)0===(u=n[s]).diffValue&&(u.diffValue=1,r!==s&&(n[r]=u),r++),u.dependenciesState>a&&(a=u.dependenciesState);for(n.length=r,t.newObserving=null,i=e.length;i--;)0===(u=e[i]).diffValue&&Lt(u,t),u.diffValue=0;for(;r--;){var u;1===(u=n[r]).diffValue&&(u.diffValue=0,Et(u,t))}a!==st.UP_TO_DATE&&(t.dependenciesState=a,t.onBecomeStale())}(t),yt(a),r}function ht(t){var e=t.observing;t.observing=[];for(var n=e.length;n--;)Lt(e[n],t);t.dependenciesState=st.NOT_TRACKING}function gt(t){var e=pt(),n=t();return bt(e),n}function pt(){var t=kt.trackingDerivation;return kt.trackingDerivation=null,t}function bt(t){kt.trackingDerivation=t}function mt(t){var e=kt.allowStateReads;return kt.allowStateReads=t,e}function yt(t){kt.allowStateReads=t}function vt(t){if(t.dependenciesState!==st.UP_TO_DATE){t.dependenciesState=st.UP_TO_DATE;for(var e=t.observing,n=e.length;n--;)e[n].lowestObserverState=st.UP_TO_DATE}}var xt=0,_t=1;function Tt(t,e){var n=function(){return wt(t,e,this,arguments)};return n.isMobxAction=!0,n}function wt(t,e,n,a){var r=function(t,e,n){var a=Bt()&&!!t,r=0;if(a){r=Date.now();var i=n&&n.length||0,s=new Array(i);if(i>0)for(var u=0;u<i;u++)s[u]=n[u];Yt({type:"action",name:t,object:e,arguments:s})}var o=pt();Pt();var l={prevDerivation:o,prevAllowStateChanges:Ot(!0),prevAllowStateReads:mt(!0),notifySpy:a,startTime:r,actionId:_t++,parentActionId:xt};return xt=l.actionId,l}(t,n,a);try{return e.apply(n,a)}catch(i){throw r.error=i,i}finally{!function(t){xt!==t.actionId&&o("invalid action stack. did you forget to finish an action?"),xt=t.parentActionId,void 0!==t.error&&(kt.suppressReactionErrors=!0),St(t.prevAllowStateChanges),yt(t.prevAllowStateReads),Mt(),bt(t.prevDerivation),t.notifySpy&&Ut({time:Date.now()-t.startTime}),kt.suppressReactionErrors=!1}(r)}}function Ot(t){var e=kt.allowStateChanges;return kt.allowStateChanges=t,e}function St(t){kt.allowStateChanges=t}Object.getOwnPropertyDescriptor((function(){}),"name");var It=function(t){function e(e,n,a,r,i){void 0===a&&(a="ObservableValue@"+u()),void 0===r&&(r=!0),void 0===i&&(i=E.default);var s=t.call(this,a)||this;return s.enhancer=n,s.name=a,s.equals=i,s.hasUnreportedChange=!1,s.value=n(e,void 0,a),r&&Bt()&&zt({type:"create",name:s.name,newValue:""+s.value}),s}return D(e,t),e.prototype.dehanceValue=function(t){return void 0!==this.dehancer?this.dehancer(t):t},e.prototype.set=function(t){var e=this.value;if((t=this.prepareNewValue(t))!==kt.UNCHANGED){var n=Bt();n&&Yt({type:"update",name:this.name,newValue:t,oldValue:e}),this.setNewValue(t),n&&Ut()}},e.prototype.prepareNewValue=function(t){if(ct(this),de(this)){var e=fe(this,{object:this,type:"update",newValue:t});if(!e)return kt.UNCHANGED;t=e.newValue}return t=this.enhancer(t,this.value,this.name),this.equals(this.value,t)?kt.UNCHANGED:t},e.prototype.setNewValue=function(t){var e=this.value;this.value=t,this.reportChanged(),he(this)&&pe(this,{type:"update",object:this,newValue:t,oldValue:e})},e.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},e.prototype.intercept=function(t){return ce(this,t)},e.prototype.observe=function(t,e){return e&&t({object:this,type:"update",newValue:this.value,oldValue:void 0}),ge(this,t)},e.prototype.toJSON=function(){return this.get()},e.prototype.toString=function(){return this.name+"["+this.value+"]"},e.prototype.valueOf=function(){return _(this.get())},e}(C);It.prototype[x()]=It.prototype.valueOf,b("ObservableValue",It);var Nt=function(){function t(t){this.dependenciesState=st.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=st.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+u(),this.value=new ot(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=ut.NONE,l(t.get,"missing option for computed: get"),this.derivation=t.get,this.name=t.name||"ComputedValue@"+u(),t.set&&(this.setter=Tt(this.name+"-setter",t.set)),this.equals=t.equals||(t.compareStructural||t.struct?E.structural:E.default),this.scope=t.context,this.requiresReaction=!!t.requiresReaction,this.keepAlive=!!t.keepAlive}return t.prototype.onBecomeStale=function(){!function(t){if(t.lowestObserverState===st.UP_TO_DATE){t.lowestObserverState=st.POSSIBLY_STALE;for(var e=t.observers,n=e.length;n--;){var a=e[n];a.dependenciesState===st.UP_TO_DATE&&(a.dependenciesState=st.POSSIBLY_STALE,a.isTracing!==ut.NONE&&jt(a,t),a.onBecomeStale())}}}(this)},t.prototype.onBecomeUnobserved=function(){},t.prototype.onBecomeObserved=function(){},t.prototype.get=function(){this.isComputing&&o("Cycle detected in computation "+this.name+": "+this.derivation),0!==kt.inBatch||0!==this.observers.length||this.keepAlive?(qt(this),dt(this)&&this.trackAndCompute()&&function(t){if(t.lowestObserverState!==st.STALE){t.lowestObserverState=st.STALE;for(var e=t.observers,n=e.length;n--;){var a=e[n];a.dependenciesState===st.POSSIBLY_STALE?a.dependenciesState=st.STALE:a.dependenciesState===st.UP_TO_DATE&&(t.lowestObserverState=st.UP_TO_DATE)}}}(this)):dt(this)&&(this.warnAboutUntrackedRead(),Pt(),this.value=this.computeValue(!1),Mt());var t=this.value;if(lt(t))throw t.cause;return t},t.prototype.peek=function(){var t=this.computeValue(!1);if(lt(t))throw t.cause;return t},t.prototype.set=function(t){if(this.setter){l(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,t)}finally{this.isRunningSetter=!1}}else l(!1,!1)},t.prototype.trackAndCompute=function(){Bt()&&zt({object:this.scope,type:"compute",name:this.name});var t=this.value,e=this.dependenciesState===st.NOT_TRACKING,n=this.computeValue(!0),a=e||lt(t)||lt(n)||!this.equals(t,n);return a&&(this.value=n),a},t.prototype.computeValue=function(t){var e;if(this.isComputing=!0,kt.computationDepth++,t)e=ft(this,this.derivation,this.scope);else if(!0===kt.disableErrorBoundaries)e=this.derivation.call(this.scope);else try{e=this.derivation.call(this.scope)}catch(n){e=new ot(n)}return kt.computationDepth--,this.isComputing=!1,e},t.prototype.suspend=function(){this.keepAlive||(ht(this),this.value=void 0)},t.prototype.observe=function(t,e){var n=this,a=!0,r=void 0;return Qt((function(){var i=n.get();if(!a||e){var s=pt();t({type:"update",object:n,newValue:i,oldValue:r}),bt(s)}a=!1,r=i}))},t.prototype.warnAboutUntrackedRead=function(){},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},t.prototype.valueOf=function(){return _(this.get())},t}();Nt.prototype[x()]=Nt.prototype.valueOf;var Ct=b("ComputedValue",Nt),Rt=function(){return function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.allowStateReads=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1}}(),At=!0,kt=function(){var t=s();return t.__mobxInstanceCount>0&&!t.__mobxGlobals&&(At=!1),t.__mobxGlobals&&t.__mobxGlobals.version!==(new Rt).version&&(At=!1),At?t.__mobxGlobals?(t.__mobxInstanceCount+=1,t.__mobxGlobals.UNCHANGED||(t.__mobxGlobals.UNCHANGED={}),t.__mobxGlobals):(t.__mobxInstanceCount=1,t.__mobxGlobals=new Rt):(setTimeout((function(){o("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")}),1),new Rt)}();function Et(t,e){var n=t.observers.length;n&&(t.observersIndexes[e.__mapid]=n),t.observers[n]=e,t.lowestObserverState>e.dependenciesState&&(t.lowestObserverState=e.dependenciesState)}function Lt(t,e){if(1===t.observers.length)t.observers.length=0,Dt(t);else{var n=t.observers,a=t.observersIndexes,r=n.pop();if(r!==e){var i=a[e.__mapid]||0;i?a[r.__mapid]=i:delete a[r.__mapid],n[i]=r}delete a[e.__mapid]}}function Dt(t){!1===t.isPendingUnobservation&&(t.isPendingUnobservation=!0,kt.pendingUnobservations.push(t))}function Pt(){kt.inBatch++}function Mt(){if(0==--kt.inBatch){Vt();for(var t=kt.pendingUnobservations,e=0;e<t.length;e++){var n=t[e];n.isPendingUnobservation=!1,0===n.observers.length&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBecomeUnobserved()),n instanceof Nt&&n.suspend())}kt.pendingUnobservations=[]}}function qt(t){var e=kt.trackingDerivation;return null!==e?(e.runId!==t.lastAccessedBy&&(t.lastAccessedBy=e.runId,e.newObserving[e.unboundDepsCount++]=t,t.isBeingObserved||(t.isBeingObserved=!0,t.onBecomeObserved())),!0):(0===t.observers.length&&kt.inBatch>0&&Dt(t),!1)}function jt(t,e){if(console.log("[mobx.trace] '"+t.name+"' is invalidated due to a change in: '"+e.name+"'"),t.isTracing===ut.BREAK){var n=[];!function t(e,n,a){n.length>=1e3?n.push("(and many more)"):(n.push(""+new Array(a).join("\t")+e.name),e.dependencies&&e.dependencies.forEach((function(e){return t(e,n,a+1)})))}((a=t,ie(He(a,void 0))),n,1),new Function("debugger;\n/*\nTracing '"+t.name+"'\n\nYou are entering this break point because derivation '"+t.name+"' is being traced and '"+e.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(t instanceof Nt?t.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+n.join("\n")+"\n*/\n    ")()}var a}var Ft=function(){function t(t,e,n,a){void 0===t&&(t="Reaction@"+u()),void 0===a&&(a=!1),this.name=t,this.onInvalidate=e,this.errorHandler=n,this.requiresObservable=a,this.observing=[],this.newObserving=[],this.dependenciesState=st.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+u(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=ut.NONE}return t.prototype.onBecomeStale=function(){this.schedule()},t.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,kt.pendingReactions.push(this),Vt())},t.prototype.isScheduled=function(){return this._isScheduled},t.prototype.runReaction=function(){if(!this.isDisposed){if(Pt(),this._isScheduled=!1,dt(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending&&Bt()&&zt({name:this.name,type:"scheduled-reaction"})}catch(t){this.reportExceptionInDerivation(t)}}Mt()}},t.prototype.track=function(t){Pt();var e,n=Bt();n&&(e=Date.now(),Yt({name:this.name,type:"reaction"})),this._isRunning=!0;var a=ft(this,t,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&ht(this),lt(a)&&this.reportExceptionInDerivation(a.cause),n&&Ut({time:Date.now()-e}),Mt()},t.prototype.reportExceptionInDerivation=function(t){var e=this;if(this.errorHandler)this.errorHandler(t,this);else{if(kt.disableErrorBoundaries)throw t;var n="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";kt.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(n,t),Bt()&&zt({type:"error",name:this.name,message:n,error:""+t}),kt.globalReactionErrorHandlers.forEach((function(n){return n(t,e)}))}},t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(Pt(),ht(this),Mt()))},t.prototype.getDisposer=function(){var t=this.dispose.bind(this);return t.$mobx=this,t},t.prototype.toString=function(){return"Reaction["+this.name+"]"},t.prototype.trace=function(t){void 0===t&&(t=!1),function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=!1;"boolean"==typeof t[t.length-1]&&(n=t.pop());var a=oe(t);if(!a)return o(!1);a.isTracing===ut.NONE&&console.log("[mobx.trace] '"+a.name+"' tracing enabled"),a.isTracing=n?ut.BREAK:ut.LOG}(this,t)},t}();function Vt(){kt.inBatch>0||kt.isRunningReactions||function(){kt.isRunningReactions=!0;for(var t=kt.pendingReactions,e=0;t.length>0;){100==++e&&(console.error("Reaction doesn't converge to a stable state after 100 iterations. Probably there is a cycle in the reactive function: "+t[0]),t.splice(0));for(var n=t.splice(0),a=0,r=n.length;a<r;a++)n[a].runReaction()}kt.isRunningReactions=!1}()}var Gt=b("Reaction",Ft);function Bt(){return!!kt.spyListeners.length}function zt(t){if(kt.spyListeners.length)for(var e=kt.spyListeners,n=0,a=e.length;n<a;n++)e[n](t)}function Yt(t){zt(P(P({},t),{spyReportStart:!0}))}var Ht={spyReportEnd:!0};function Ut(t){zt(t?P(P({},t),{spyReportEnd:!0}):Ht)}function Wt(){o(!1)}function Kt(t){return function(e,n,a){if(a){if(a.value)return{value:Tt(t,a.value),enumerable:!1,configurable:!0,writable:!0};var r=a.initializer;return{enumerable:!1,configurable:!0,writable:!0,initializer:function(){return Tt(t,r.call(this))}}}return $t(t).apply(this,arguments)}}function $t(t){return function(e,n,a){Object.defineProperty(e,n,{configurable:!0,enumerable:!1,get:function(){},set:function(e){g(this,n,Zt(t,e))}})}}var Zt=function(t,e,n,a){return 1===arguments.length&&"function"==typeof t?Tt(t.name||"<unnamed action>",t):2===arguments.length&&"function"==typeof e?Tt(t,e):1===arguments.length&&"string"==typeof t?Kt(t):!0!==a?Kt(e).apply(null,arguments):void(t[e]=Tt(t.name||e,n.value))};function Jt(t,e,n){g(t,e,Tt(e,n.bind(t)))}function Qt(t,e){void 0===e&&(e=r);var n,a=e&&e.name||t.name||"Autorun@"+u();if(e.scheduler||e.delay){var i=te(e),s=!1;n=new Ft(a,(function(){s||(s=!0,i((function(){s=!1,n.isDisposed||n.track(o)})))}),e.onError,e.requiresObservable)}else n=new Ft(a,(function(){this.track(o)}),e.onError,e.requiresObservable);function o(){t(n)}return n.schedule(),n.getDisposer()}Zt.bound=function(t,e,n,a){return!0===a?(Jt(t,e,n.value),null):n?{configurable:!0,enumerable:!1,get:function(){return Jt(this,e,n.value||n.initializer.call(this)),this[e]},set:Wt}:{enumerable:!1,configurable:!0,set:function(t){Jt(this,e,t)},get:function(){}}};var Xt=function(t){return t()};function te(t){return t.scheduler?t.scheduler:t.delay?function(e){return setTimeout(e,t.delay)}:Xt}function ee(t,e,n){void 0===n&&(n=r),"boolean"==typeof n&&(n={fireImmediately:n});var a,i,s,o=n.name||"Reaction@"+u(),l=Zt(o,n.onError?(a=n.onError,i=e,function(){try{return i.apply(this,arguments)}catch(t){a.call(this,t)}}):e),d=!n.scheduler&&!n.delay,c=te(n),f=!0,h=!1,g=n.compareStructural?E.structural:n.equals||E.default,p=new Ft(o,(function(){f||d?b():h||(h=!0,c(b))}),n.onError,n.requiresObservable);function b(){if(h=!1,!p.isDisposed){var e=!1;p.track((function(){var n=t(p);e=f||!g(s,n),s=n})),f&&n.fireImmediately&&l(s,p),f||!0!==e||l(s,p),f&&(f=!1)}}return p.schedule(),p.getDisposer()}function ne(t,e,n){return ae("onBecomeUnobserved",t,e,n)}function ae(t,e,n,a){var r="function"==typeof a?He(e,n):He(e),i="function"==typeof a?a:n,s=r[t];return"function"!=typeof s?o(!1):(r[t]=function(){s.call(this),i.call(this)},function(){r[t]=s})}function re(t,e,n,a){var r=(a=K(a)).defaultDecorator||(!1===a.deep?Q:Z);G(t),Fe(t,a.name,r.enhancer),Pt();try{for(var i=Object.getOwnPropertyNames(e),s=0,u=i.length;s<u;s++){var o=i[s],l=Object.getOwnPropertyDescriptor(e,o),d=(n&&o in n?n[o]:l.get?at:r)(t,o,l,!0);d&&Object.defineProperty(t,o,d)}}finally{Mt()}return t}function ie(t){var e,n,a={name:t.name};return t.observing&&t.observing.length>0&&(a.dependencies=(e=t.observing,n=[],e.forEach((function(t){-1===n.indexOf(t)&&n.push(t)})),n).map(ie)),a}function se(t,e){if(null==t)return!1;if(void 0!==e){if(Ye(t)){var n=t.$mobx;return n.values&&!!n.values[e]}return!1}return Ye(t)||!!t.$mobx||R(t)||Gt(t)||Ct(t)}function ue(t){return 1!==arguments.length&&o(!1),se(t)}function oe(t){switch(t.length){case 0:return kt.trackingDerivation;case 1:return He(t[0]);case 2:return He(t[0],t[1])}}function le(t,e){void 0===e&&(e=void 0),Pt();try{return t.apply(e)}finally{Mt()}}function de(t){return void 0!==t.interceptors&&t.interceptors.length>0}function ce(t,e){var n=t.interceptors||(t.interceptors=[]);return n.push(e),d((function(){var t=n.indexOf(e);-1!==t&&n.splice(t,1)}))}function fe(t,e){var n=pt();try{var a=t.interceptors;if(a)for(var r=0,i=a.length;r<i&&(l(!(e=a[r](e))||e.type,"Intercept handlers should return nothing or a change object"),e);r++);return e}finally{bt(n)}}function he(t){return void 0!==t.changeListeners&&t.changeListeners.length>0}function ge(t,e){var n=t.changeListeners||(t.changeListeners=[]);return n.push(e),d((function(){var t=n.indexOf(e);-1!==t&&n.splice(t,1)}))}function pe(t,e){var n=pt(),a=t.changeListeners;if(a){for(var r=0,i=(a=a.slice()).length;r<i;r++)a[r](e);bt(n)}}Object.create(Error.prototype);var be,me,ye,ve,xe=(be=!1,me={},Object.defineProperty(me,"0",{set:function(){be=!0}}),Object.create(me)[0]=1,!1===be),_e=0,Te=function(){return function(){}}();ye=Te,ve=Array.prototype,void 0!==Object.setPrototypeOf?Object.setPrototypeOf(ye.prototype,ve):void 0!==ye.prototype.__proto__?ye.prototype.__proto__=ve:ye.prototype=ve,Object.isFrozen(Array)&&["constructor","push","shift","concat","pop","unshift","replace","find","findIndex","splice","reverse","sort"].forEach((function(t){Object.defineProperty(Te.prototype,t,{configurable:!0,writable:!0,value:Array.prototype[t]})}));var we=function(){function t(t,e,n,a){this.array=n,this.owned=a,this.values=[],this.lastKnownLength=0,this.atom=new C(t||"ObservableArray@"+u()),this.enhancer=function(n,a){return e(n,a,t+"[..]")}}return t.prototype.dehanceValue=function(t){return void 0!==this.dehancer?this.dehancer(t):t},t.prototype.dehanceValues=function(t){return void 0!==this.dehancer&&t.length>0?t.map(this.dehancer):t},t.prototype.intercept=function(t){return ce(this,t)},t.prototype.observe=function(t,e){return void 0===e&&(e=!1),e&&t({object:this.array,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),ge(this,t)},t.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},t.prototype.setArrayLength=function(t){if("number"!=typeof t||t<0)throw new Error("[mobx.array] Out of range: "+t);var e=this.values.length;if(t!==e)if(t>e){for(var n=new Array(t-e),a=0;a<t-e;a++)n[a]=void 0;this.spliceWithArray(e,0,n)}else this.spliceWithArray(t,e-t)},t.prototype.updateArrayLength=function(t,e){if(t!==this.lastKnownLength)throw new Error("[mobx] Modification exception: the internal structure of an observable array was changed. Did you use peek() to change it?");this.lastKnownLength+=e,e>0&&t+e+1>_e&&Ce(t+e+1)},t.prototype.spliceWithArray=function(t,e,n){var r=this;ct(this.atom);var i=this.values.length;if(void 0===t?t=0:t>i?t=i:t<0&&(t=Math.max(0,i+t)),e=1===arguments.length?i-t:null==e?0:Math.max(0,Math.min(e,i-t)),void 0===n&&(n=a),de(this)){var s=fe(this,{object:this.array,type:"splice",index:t,removedCount:e,added:n});if(!s)return a;e=s.removedCount,n=s.added}var u=(n=0===n.length?n:n.map((function(t){return r.enhancer(t,void 0)}))).length-e;this.updateArrayLength(i,u);var o=this.spliceItemsIntoValues(t,e,n);return 0===e&&0===n.length||this.notifyArraySplice(t,n,o),this.dehanceValues(o)},t.prototype.spliceItemsIntoValues=function(t,e,n){var a;if(n.length<1e4)return(a=this.values).splice.apply(a,q([t,e],n));var r=this.values.slice(t,t+e);return this.values=this.values.slice(0,t).concat(n,this.values.slice(t+e)),r},t.prototype.notifyArrayChildUpdate=function(t,e,n){var a=!this.owned&&Bt(),r=he(this),i=r||a?{object:this.array,type:"update",index:t,newValue:e,oldValue:n}:null;a&&Yt(P(P({},i),{name:this.atom.name})),this.atom.reportChanged(),r&&pe(this,i),a&&Ut()},t.prototype.notifyArraySplice=function(t,e,n){var a=!this.owned&&Bt(),r=he(this),i=r||a?{object:this.array,type:"splice",index:t,removed:n,added:e,removedCount:n.length,addedCount:e.length}:null;a&&Yt(P(P({},i),{name:this.atom.name})),this.atom.reportChanged(),r&&pe(this,i),a&&Ut()},t}(),Oe=function(t){function e(e,n,a,r){void 0===a&&(a="ObservableArray@"+u()),void 0===r&&(r=!1);var i=t.call(this)||this,s=new we(a,n,i,r);if(p(i,"$mobx",s),e&&e.length){var o=Ot(!0);i.spliceWithArray(0,0,e),St(o)}return xe&&Object.defineProperty(s.array,"0",Se),i}return D(e,t),e.prototype.intercept=function(t){return this.$mobx.intercept(t)},e.prototype.observe=function(t,e){return void 0===e&&(e=!1),this.$mobx.observe(t,e)},e.prototype.clear=function(){return this.splice(0)},e.prototype.concat=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return this.$mobx.atom.reportObserved(),Array.prototype.concat.apply(this.peek(),t.map((function(t){return Ae(t)?t.peek():t})))},e.prototype.replace=function(t){return this.$mobx.spliceWithArray(0,this.$mobx.values.length,t)},e.prototype.toJS=function(){return this.slice()},e.prototype.toJSON=function(){return this.toJS()},e.prototype.peek=function(){return this.$mobx.atom.reportObserved(),this.$mobx.dehanceValues(this.$mobx.values)},e.prototype.find=function(t,e,n){void 0===n&&(n=0);var a=this.findIndex.apply(this,arguments);return-1===a?void 0:this.get(a)},e.prototype.findIndex=function(t,e,n){void 0===n&&(n=0);for(var a=this.peek(),r=a.length,i=n;i<r;i++)if(t.call(e,a[i],i,this))return i;return-1},e.prototype.splice=function(t,e){for(var n=[],a=2;a<arguments.length;a++)n[a-2]=arguments[a];switch(arguments.length){case 0:return[];case 1:return this.$mobx.spliceWithArray(t);case 2:return this.$mobx.spliceWithArray(t,e)}return this.$mobx.spliceWithArray(t,e,n)},e.prototype.spliceWithArray=function(t,e,n){return this.$mobx.spliceWithArray(t,e,n)},e.prototype.push=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=this.$mobx;return n.spliceWithArray(n.values.length,0,t),n.values.length},e.prototype.pop=function(){return this.splice(Math.max(this.$mobx.values.length-1,0),1)[0]},e.prototype.shift=function(){return this.splice(0,1)[0]},e.prototype.unshift=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=this.$mobx;return n.spliceWithArray(0,0,t),n.values.length},e.prototype.reverse=function(){var t=this.slice();return t.reverse.apply(t,arguments)},e.prototype.sort=function(t){var e=this.slice();return e.sort.apply(e,arguments)},e.prototype.remove=function(t){var e=this.$mobx.dehanceValues(this.$mobx.values).indexOf(t);return e>-1&&(this.splice(e,1),!0)},e.prototype.move=function(t,e){function n(t){if(t<0)throw new Error("[mobx.array] Index out of bounds: "+t+" is negative");var e=this.$mobx.values.length;if(t>=e)throw new Error("[mobx.array] Index out of bounds: "+t+" is not smaller than "+e)}if(n.call(this,t),n.call(this,e),t!==e){var a,r=this.$mobx.values;a=t<e?q(r.slice(0,t),r.slice(t+1,e+1),[r[t]],r.slice(e+1)):q(r.slice(0,e),[r[t]],r.slice(e,t),r.slice(t+1)),this.replace(a)}},e.prototype.get=function(t){var e=this.$mobx;if(e){if(t<e.values.length)return e.atom.reportObserved(),e.dehanceValue(e.values[t]);console.warn("[mobx.array] Attempt to read an array index ("+t+") that is out of bounds ("+e.values.length+"). Please check length first. Out of bound indices will not be tracked by MobX")}},e.prototype.set=function(t,e){var n=this.$mobx,a=n.values;if(t<a.length){ct(n.atom);var r=a[t];if(de(n)){var i=fe(n,{type:"update",object:this,index:t,newValue:e});if(!i)return;e=i.newValue}(e=n.enhancer(e,r))!==r&&(a[t]=e,n.notifyArrayChildUpdate(t,e,r))}else{if(t!==a.length)throw new Error("[mobx.array] Index out of bounds, "+t+" is larger than "+a.length);n.spliceWithArray(t,0,[e])}},e}(Te);O(Oe.prototype,(function(){this.$mobx.atom.reportObserved();var t=this,e=0;return S({next:function(){return e<t.length?{value:t[e++],done:!1}:{done:!0,value:void 0}}})})),Object.defineProperty(Oe.prototype,"length",{enumerable:!1,configurable:!0,get:function(){return this.$mobx.getArrayLength()},set:function(t){this.$mobx.setArrayLength(t)}}),g(Oe.prototype,I(),"Array"),["indexOf","join","lastIndexOf","slice","toString","toLocaleString"].forEach((function(t){var e=Array.prototype[t];l("function"==typeof e,"Base function not defined on Array prototype: '"+t+"'"),g(Oe.prototype,t,(function(){return e.apply(this.peek(),arguments)}))})),["every","filter","forEach","map","some"].forEach((function(t){l("function"==typeof Array.prototype[t],"Base function not defined on Array prototype: '"+t+"'"),g(Oe.prototype,t,(function(e,n){var a=this,r=this.$mobx;return r.atom.reportObserved(),r.dehanceValues(r.values)[t]((function(t,r){return e.call(n,t,r,a)}),n)}))})),["reduce","reduceRight"].forEach((function(t){g(Oe.prototype,t,(function(e,n){var a=this,r=this.$mobx;return r.atom.reportObserved(),r.values[t]((function(t,n,i){return n=r.dehanceValue(n),e(t,n,i,a)}),n)}))})),function(t,e){for(var n=0;n<e.length;n++)g(t,e[n],t[e[n]])}(Oe.prototype,["constructor","intercept","observe","clear","concat","get","replace","toJS","toJSON","peek","find","findIndex","splice","spliceWithArray","push","pop","set","shift","unshift","reverse","sort","remove","move","toString","toLocaleString"]);var Se=Ie(0);function Ie(t){return{enumerable:!1,configurable:!1,get:function(){return this.get(t)},set:function(e){this.set(t,e)}}}function Ne(t){Object.defineProperty(Oe.prototype,""+t,Ie(t))}function Ce(t){for(var e=_e;e<t;e++)Ne(e);_e=t}Ce(1e3);var Re=b("ObservableArrayAdministration",we);function Ae(t){return f(t)&&Re(t.$mobx)}var ke={},Ee=function(){function t(t,e,n){if(void 0===e&&(e=Y),void 0===n&&(n="ObservableMap@"+u()),this.enhancer=e,this.name=n,this.$mobx=ke,this._keysAtom=A(this.name+".keys()"),"function"!=typeof Map)throw new Error("mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js");this._data=new Map,this._hasMap=new Map,this.merge(t)}return t.prototype._has=function(t){return this._data.has(t)},t.prototype.has=function(t){var e=this;if(!kt.trackingDerivation)return this._has(t);var n=this._hasMap.get(t);if(!n){var a=n=new It(this._has(t),H,this.name+"."+Le(t)+"?",!1);this._hasMap.set(t,a),ne(a,(function(){return e._hasMap.delete(t)}))}return n.get()},t.prototype.set=function(t,e){var n=this._has(t);if(de(this)){var a=fe(this,{type:n?"update":"add",object:this,newValue:e,name:t});if(!a)return this;e=a.newValue}return n?this._updateValue(t,e):this._addValue(t,e),this},t.prototype.delete=function(t){var e=this;if(ct(this._keysAtom),de(this)&&!(r=fe(this,{type:"delete",object:this,name:t})))return!1;if(this._has(t)){var n=Bt(),a=he(this),r=a||n?{type:"delete",object:this,oldValue:this._data.get(t).value,name:t}:null;return n&&Yt(P(P({},r),{name:this.name,key:t})),le((function(){e._keysAtom.reportChanged(),e._updateHasMapEntry(t,!1),e._data.get(t).setNewValue(void 0),e._data.delete(t)})),a&&pe(this,r),n&&Ut(),!0}return!1},t.prototype._updateHasMapEntry=function(t,e){var n=this._hasMap.get(t);n&&n.setNewValue(e)},t.prototype._updateValue=function(t,e){var n=this._data.get(t);if((e=n.prepareNewValue(e))!==kt.UNCHANGED){var a=Bt(),r=he(this),i=r||a?{type:"update",object:this,oldValue:n.value,name:t,newValue:e}:null;a&&Yt(P(P({},i),{name:this.name,key:t})),n.setNewValue(e),r&&pe(this,i),a&&Ut()}},t.prototype._addValue=function(t,e){var n=this;ct(this._keysAtom),le((function(){var a=new It(e,n.enhancer,n.name+"."+Le(t),!1);n._data.set(t,a),e=a.value,n._updateHasMapEntry(t,!0),n._keysAtom.reportChanged()}));var a=Bt(),r=he(this),i=r||a?{type:"add",object:this,name:t,newValue:e}:null;a&&Yt(P(P({},i),{name:this.name,key:t})),r&&pe(this,i),a&&Ut()},t.prototype.get=function(t){return this.has(t)?this.dehanceValue(this._data.get(t).get()):this.dehanceValue(void 0)},t.prototype.dehanceValue=function(t){return void 0!==this.dehancer?this.dehancer(t):t},t.prototype.keys=function(){return this._keysAtom.reportObserved(),this._data.keys()},t.prototype.values=function(){var t=this,e=this.keys();return S({next:function(){var n=e.next(),a=n.done;return{done:a,value:a?void 0:t.get(n.value)}}})},t.prototype.entries=function(){var t=this,e=this.keys();return S({next:function(){var n=e.next(),a=n.done,r=n.value;return{done:a,value:a?void 0:[r,t.get(r)]}}})},t.prototype.forEach=function(t,e){var n=this;this._keysAtom.reportObserved(),this._data.forEach((function(a,r){return t.call(e,n.get(r),r,n)}))},t.prototype.merge=function(t){var e=this;return De(t)&&(t=t.toJS()),le((function(){var n=Ot(!0);try{h(t)?Object.keys(t).forEach((function(n){return e.set(n,t[n])})):Array.isArray(t)?t.forEach((function(t){var n=M(t,2);return e.set(n[0],n[1])})):m(t)?t.constructor!==Map?o("Cannot initialize from classes that inherit from Map: "+t.constructor.name):t.forEach((function(t,n){return e.set(n,t)})):null!=t&&o("Cannot initialize map from "+t)}finally{St(n)}})),this},t.prototype.clear=function(){var t=this;le((function(){gt((function(){t._data.forEach((function(e,n){return t.delete(n)}))}))}))},t.prototype.replace=function(t){var e=this;return le((function(){var n=function(t){if(m(t)||De(t))return t;if(Array.isArray(t))return new Map(t);if(h(t)){var e=new Map;for(var n in t)e.set(n,t[n]);return e}return o("Cannot convert to map from '"+t+"'")}(t),a=new Map,r=!1;if(T(e._data.keys(),(function(t){if(!n.has(t))if(e.delete(t))r=!0;else{var i=e._data.get(t);a.set(t,i)}})),T(n.entries(),(function(t){var n=M(t,2),i=n[0],s=n[1],u=e._data.has(i);if(e.set(i,s),e._data.has(i)){var o=e._data.get(i);a.set(i,o),u||(r=!0)}})),!r)if(e._data.size!==a.size)e._keysAtom.reportChanged();else for(var i=e._data.keys(),s=a.keys(),u=i.next(),l=s.next();!u.done;){if(u.value!==l.value){e._keysAtom.reportChanged();break}u=i.next(),l=s.next()}e._data=a})),this},Object.defineProperty(t.prototype,"size",{get:function(){return this._keysAtom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),t.prototype.toPOJO=function(){var t=this,e={};return this.forEach((function(n,a){return e["symbol"==typeof a?a:Le(a)]=t.get(a)})),e},t.prototype.toJS=function(){return new Map(this)},t.prototype.toJSON=function(){return this.toPOJO()},t.prototype.toString=function(){var t=this;return this.name+"[{ "+v(this.keys()).map((function(e){return Le(e)+": "+t.get(e)})).join(", ")+" }]"},t.prototype.observe=function(t,e){return ge(this,t)},t.prototype.intercept=function(t){return ce(this,t)},t}();function Le(t){return t&&t.toString?t.toString():new String(t).toString()}O(Ee.prototype,(function(){return this.entries()})),p(Ee.prototype,I(),"Map");var De=b("ObservableMap",Ee),Pe={},Me=function(){function t(t,e,n){if(void 0===e&&(e=Y),void 0===n&&(n="ObservableSet@"+u()),this.name=n,this.$mobx=Pe,this._data=new Set,this._atom=A(this.name),"function"!=typeof Set)throw new Error("mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js");this.enhancer=function(t,a){return e(t,a,n)},t&&this.replace(t)}return t.prototype.dehanceValue=function(t){return void 0!==this.dehancer?this.dehancer(t):t},t.prototype.clear=function(){var t=this;le((function(){gt((function(){t._data.forEach((function(e){t.delete(e)}))}))}))},t.prototype.forEach=function(t,e){var n=this;this._atom.reportObserved(),this._data.forEach((function(a){t.call(e,a,a,n)}))},Object.defineProperty(t.prototype,"size",{get:function(){return this._atom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),t.prototype.add=function(t){var e=this;if(ct(this._atom),de(this)&&!(r=fe(this,{type:"add",object:this,newValue:t})))return this;if(!this.has(t)){le((function(){e._data.add(e.enhancer(t,void 0)),e._atom.reportChanged()}));var n=Bt(),a=he(this),r=a||n?{type:"add",object:this,newValue:t}:null;a&&pe(this,r)}return this},t.prototype.delete=function(t){var e=this;if(de(this)&&!(r=fe(this,{type:"delete",object:this,oldValue:t})))return!1;if(this.has(t)){var n=Bt(),a=he(this),r=a||n?{type:"delete",object:this,oldValue:t}:null;return le((function(){e._atom.reportChanged(),e._data.delete(t)})),a&&pe(this,r),!0}return!1},t.prototype.has=function(t){return this._atom.reportObserved(),this._data.has(this.dehanceValue(t))},t.prototype.entries=function(){var t=0,e=v(this.keys()),n=v(this.values());return S({next:function(){var a=t;return t+=1,a<n.length?{value:[e[a],n[a]],done:!1}:{done:!0}}})},t.prototype.keys=function(){return this.values()},t.prototype.values=function(){this._atom.reportObserved();var t,e=this,n=0;return void 0!==this._data.values?t=v(this._data.values()):(t=[],this._data.forEach((function(e){return t.push(e)}))),S({next:function(){return n<t.length?{value:e.dehanceValue(t[n++]),done:!1}:{done:!0}}})},t.prototype.replace=function(t){var e=this;return qe(t)&&(t=t.toJS()),le((function(){var n=Ot(!0);try{Array.isArray(t)||y(t)?(e.clear(),t.forEach((function(t){return e.add(t)}))):null!=t&&o("Cannot initialize set from "+t)}finally{St(n)}})),this},t.prototype.observe=function(t,e){return ge(this,t)},t.prototype.intercept=function(t){return ce(this,t)},t.prototype.toJS=function(){return new Set(this)},t.prototype.toString=function(){return this.name+"[ "+v(this.keys()).join(", ")+" ]"},t}();O(Me.prototype,(function(){return this.values()})),p(Me.prototype,I(),"Set");var qe=b("ObservableSet",Me),je=function(){function t(t,e,n){this.target=t,this.name=e,this.defaultEnhancer=n,this.values={}}return t.prototype.read=function(t,e){if(this.target===t||(this.illegalAccess(t,e),this.values[e]))return this.values[e].get()},t.prototype.write=function(t,e,n){var a=this.target;a!==t&&this.illegalAccess(t,e);var r=this.values[e];if(r instanceof Nt)r.set(n);else{if(de(this)){if(!(u=fe(this,{type:"update",object:a,name:e,newValue:n})))return;n=u.newValue}if((n=r.prepareNewValue(n))!==kt.UNCHANGED){var i=he(this),s=Bt(),u=i||s?{type:"update",object:a,oldValue:r.value,name:e,newValue:n}:null;s&&Yt(P(P({},u),{name:this.name,key:e})),r.setNewValue(n),i&&pe(this,u),s&&Ut()}}},t.prototype.remove=function(t){if(this.values[t]){var e=this.target;if(de(this)&&!(i=fe(this,{object:e,name:t,type:"remove"})))return;try{Pt();var n=he(this),a=Bt(),r=this.values[t].get();this.keys&&this.keys.remove(t),delete this.values[t],delete this.target[t];var i=n||a?{type:"remove",object:e,oldValue:r,name:t}:null;a&&Yt(P(P({},i),{name:this.name,key:t})),n&&pe(this,i),a&&Ut()}finally{Mt()}}},t.prototype.illegalAccess=function(t,e){console.warn("Property '"+e+"' of '"+t+"' was accessed through the prototype chain. Use 'decorate' instead to declare the prop or access it statically through it's owner")},t.prototype.observe=function(t,e){return ge(this,t)},t.prototype.intercept=function(t){return ce(this,t)},t.prototype.getKeys=function(){var t=this;return void 0===this.keys&&(this.keys=new Oe(Object.keys(this.values).filter((function(e){return t.values[e]instanceof It})),H,"keys("+this.name+")",!0)),this.keys.slice()},t}();function Fe(t,e,n){void 0===e&&(e=""),void 0===n&&(n=Y);var a=t.$mobx;return a||(h(t)||(e=(t.constructor.name||"ObservableObject")+"@"+u()),e||(e="ObservableObject@"+u()),p(t,"$mobx",a=new je(t,e,n)),a)}var Ve=Object.create(null),Ge=Object.create(null);function Be(t){return t.$mobx||(G(t),t.$mobx)}var ze=b("ObservableObjectAdministration",je);function Ye(t){return!!f(t)&&(G(t),ze(t.$mobx))}function He(t,e){if("object"==typeof t&&null!==t){if(Ae(t))return void 0!==e&&o(!1),t.$mobx.atom;if(qe(t))return t.$mobx;if(De(t)){var n=t;return void 0===e?n._keysAtom:((a=n._data.get(e)||n._hasMap.get(e))||o(!1),a)}var a;if(G(t),Ye(t))return e?((a=t.$mobx.values[e])||o(!1),a):o(!1);if(R(t)||Ct(t)||Gt(t))return t}else if("function"==typeof t&&Gt(t.$mobx))return t.$mobx;return o(!1)}var Ue=Object.prototype.toString;function We(t,e,n){return void 0===n&&(n=-1),function t(e,n,a,r,i){if(e===n)return 0!==e||1/e==1/n;if(null==e||null==n)return!1;if(e!=e)return n!=n;var s=typeof e;if("function"!==s&&"object"!==s&&"object"!=typeof n)return!1;e=Ke(e),n=Ke(n);var u=Ue.call(e);if(u!==Ue.call(n))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+e==""+n;case"[object Number]":return+e!=+e?+n!=+n:0==+e?1/+e==1/n:+e==+n;case"[object Date]":case"[object Boolean]":return+e==+n;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(n)}var o="[object Array]"===u;if(!o){if("object"!=typeof e||"object"!=typeof n)return!1;var l=e.constructor,d=n.constructor;if(l!==d&&!("function"==typeof l&&l instanceof l&&"function"==typeof d&&d instanceof d)&&"constructor"in e&&"constructor"in n)return!1}if(0===a)return!1;a<0&&(a=-1),i=i||[];for(var c=(r=r||[]).length;c--;)if(r[c]===e)return i[c]===n;if(r.push(e),i.push(n),o){if((c=e.length)!==n.length)return!1;for(;c--;)if(!t(e[c],n[c],a-1,r,i))return!1}else{var f=Object.keys(e),h=void 0;if(c=f.length,Object.keys(n).length!==c)return!1;for(;c--;)if(!$e(n,h=f[c])||!t(e[h],n[h],a-1,r,i))return!1}return r.pop(),i.pop(),!0}(t,e,n)}function Ke(t){return Ae(t)?t.peek():m(t)||De(t)||y(t)||qe(t)?v(t.entries()):t}function $e(t,e){return Object.prototype.hasOwnProperty.call(t,e)}"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:function(t){return kt.spyListeners.push(t),d((function(){kt.spyListeners=kt.spyListeners.filter((function(e){return e!==t}))}))},extras:{getDebugName:function(t,e){return(void 0!==e?He(t,e):Ye(t)||De(t)||qe(t)?function t(e,n){return e||o("Expecting some object"),void 0!==n?t(He(e,n)):R(e)||Ct(e)||Gt(e)||De(e)||qe(e)?e:(G(e),e.$mobx?e.$mobx:void o(!1))}(t):He(t)).name}},$mobx:"$mobx"})},"2ykv":function(t,e,n){!function(t){"use strict";var e="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),n="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),a=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],r=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;t.defineLocale("nl-be",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}})}(n("wd/R"))},"2zzJ":function(t,e,n){var a=n("MOZO"),r=n("Wv1A");t.exports=function(t,e){for(var n=0,i=(e=a(e,t)).length;null!=t&&n<i;)t=t[r(e[n++])];return n&&n==i?t:void 0}},"3+CB":function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="ko-KR">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>네비게이션 전환</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>현황판</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>클러스터</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>호스트들</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>모니터들</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>서비스들</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD들</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>설정</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>크러쉬맵</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>메니저 모듈들</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>로그들</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>풀들</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>블럭</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>이미지들</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>미러링</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>파일시스템들</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>오브젝트게이트웨이</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>데몬들</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>사용자</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>버킷들</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>언어선택</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>패널 데이타 로딩 중...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>그라파나 타임 픽커</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>설정 초기화</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>뒤로</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>데이타 로딩 실폐</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>선택된</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>발견된</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>전체</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>이름</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>설명</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>자세한 설명</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>기본값</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>데모 기본값</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>값들</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>저장하기</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>크러쉬맵 보기</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>로딩중...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>호스트이름</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>이 필드는 필수적입니다.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>예, 확실합니다.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>취소</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>닫기</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>호스트 목록들</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>통합 성능치</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>항목들을 찾을 수 없음</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>클러스터 로그들</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>감사 로그들</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>설정 로딩 중</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>설정을 로드할 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>관리모듈 편집하기</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>입력된 값이 유효한 UUID가 아닙니다, 예.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>입력된 값은 유효한 IP주소 여야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>입력된 값은 적어도 하나의 숫자를 필요로 합니다.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>입력 된 값은 숫자 또는 십진수여야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>갱신</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>상태</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>클러스터 ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>몬맵 변경시간</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>몬맵 변경번호</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>정족수 일치번호</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>정족수 모니터상태</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>요구되는 일치번호</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>요구되는 모니터상태</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>정족수에 포함</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>정족수 미포함</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>추가</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>특징들</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>클러스터-수준의 OSD 플레그들</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>제출</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>자세한 옵션...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD 복구 우선순위</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>우선순위</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>우선 순위 값 맞춤 설정</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>이 필드는 요구됩니다!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>값은 0과 1사이어야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>재-조정</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, 선택, 1 {깊이 } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, 선택, 1 {깊이 } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSD 목록들</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>값</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>편집</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>삭제</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>건강상태</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>통계들</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>클라이언트들</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>모든 클라이언트 접근가능</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>주소들</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>필수 입력란</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>반드시 하나 이상의 쉼표로 구분 된 값을 포함해야 함</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>예를들면:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>접근형태</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>클라이언트들 추가</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- 사용가능 클러스터 없음 --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- 클러스터 선택 --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>데몬 추가하기</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>스토리지 백엔드</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- 이용가능한 데이타풀 없음 --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- 스토리지 백엔드 선택 --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>객체 게이트웨이 사용자</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- 사용가능한 사용자들 없음 --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- 객체 게이트웨이 사용자 선택 --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS 사용자 ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- 사용가능한 클라이언트 없음 --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- cephx 클라이언트 선택 --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS 이름</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>보안 레이블</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>보안 레이블 사용</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS 경로</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>경로는 \'/\'로 시작해야하며 그 뒤에 단어가 올 수 있습니다</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>새로운 디렉토리가 만들어 질 것입니다</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>경로</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>경로는 하나의 \'/\' 또는 하나의 단어 일 수 있습니다</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>새로운 버킷이 만들어 질 것입니다</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS 프로토콜</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS 태크</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>클라이언트는 하위 디렉토리를 마운트 할 수 없습니다 (즉, Tag = foo 인 경우 클라이언트가 foo / baz를 마운트하지 못할 수 있습니다).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>다른 태그 옵션을 사용하면 같은 경로를 여러 번 내보낼 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>다른 Pseudo 옵션을 사용하면 동일한 경로를 여러 번 내보낼 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- 사용가능한 접근형태 없음 --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- 접근형태 선택 --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- 사용가능한 squash 없음 --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- 어떤 종류의 사용자 ID 스쿼시가 수행되는지 선택하세요 --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>전송프로토콜</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Ceph 사용을 환영합니다.</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>사용자이름이 필요합니다</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>암호가 필요합니다</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>로그인</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>미안합니다. 사용자가 Ceph내에 존재하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>금지됨</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>미안합니다. 당신이 요청할 것을 열람하는 것이 허락되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD 설정들</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>로컬 구성 값을 제거하십시오. 상위 구성 값은 계승되고 대신 사용됩니다.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>최소값은 0입니다.</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>풀 목록들</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>이름은 영숫자, 대시 및 밑줄로만 구성 될 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>선택한 Erasure Code 프로파일 이름이 이미 사용 중입니다.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>플러그인</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>데이터 덩어리들 (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>반드시 2보다 크거나 같아야합니다.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>코딩 덩어리들 (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>반드시 1보다 크거나 같아야합니다.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>내구성 평가(c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>지역 (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>크러쉬 실패 도메인</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>크러쉬 지역</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>없음</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>기술</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>패킷크기</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>크러쉬루트</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>크러쉬 장치 클래스</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>모든</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>디렉토리</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>이름...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>선택한 Ceph 풀이름이 이미 사용중입니다.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>풀 형태</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- 풀 형태 선택 --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>게재위치 그룹</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>적어도 하나의 게재위치 그룹이 필요함!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>클러스터는 이 많은 PG들를 처리 할 수 없습니다. 필요한 PG 양을 다시 계산하십시오.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>계산 도움말</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>복제되는 크기</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>플레그들</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC 덮어쓰기</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>응용프로그램들</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Erasure Code 프로파일</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- 사용가능한 Erasure Code 프로파일 없음 --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- 한개의 Erasure Code 프로파일 선택 --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>크러쉬 룰셋</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- 크러쉬 룰 선택 --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>크러쉬 룰</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>크러쉬 단계들</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>압축</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>양식</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>알고리즘</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- 이용가능한 Erasure 압축알고리즘 없음 --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>최소 blob 크기</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>예) 128KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>값은 0보다 커야합니다</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>최대 blob 크기</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>예) 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>값은 최소 blob 크기보다 커야 합니다</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>비율</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>압축율</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>값은 0.0과 1.0 사이 여야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>예., 100 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>세부설명</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>성능 세부정보들</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>케쉬 계층들 상세설명들</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>이미지를 휴지통에 이동</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>보호가 만료되는 </target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>보호되지 않음</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>날짜 형식 오류. "YYYY-MM-DD HH:mm:ss" 형식으로 지정하세요.</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>보호기간이 이미 만료되었습니다. 더 미래의 날짜를 선택하거나 공란으로 남겨두세요.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>이미지 옮기기</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>개관</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>타겟들</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>인증 탐색</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>사용자</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>사용자이름은 8~64자까지 길이의 문자들을 가져야 하며 그리고, 오직 , \'.\', \'@\', \'-\', \'_\', \':\' 등의 특수 문자들만을 포함가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>암호</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>공동 사용자</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>공통 암호</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>이용가능한 정보:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>iSCSI 타겟이 이용 불가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>풀</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>데이타 풀</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>생성된</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>크기</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>오브젝트들</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>객체크기</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>준비된</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>이용불가</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>준비된 총계</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>스트라이핑 단위</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>스트라이핑 횟수</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>상위</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>블록 이름 접두사</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>순서</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>스냅삿</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>이미지</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>이 설정은 전역 값을 덮어씁니다.</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>글로벌</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>이것은 전역 값입니다. 이 이미지에 대해 이 옵션의 값이 설정되지 않았습니다.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' 와 \'@\' 문자는 사용불가입니다.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- 이용가능한 rbd풀 없음 --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- 풀 선택 --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>전용 데이타 풀들을 사용하세요</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>데이타 풀</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>RBD의 객체-데이타를 저장하고 있는 전용 풀</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>사이즈를 증가시켜야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>자세한</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>분산저장</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>분산저장단위</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- 분산저장단위 선택 --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>분산저장 개수가 정의되어 있으므로 이 필드는 필수입니다!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>분산저장단위는 객체크기보다 커야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>분산저장 갯수</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>분산저장 단위가 정의되어 있으므로 이 필드는 필수입니다!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>분산저장 갯수는 반드시 0보다 커야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>롤백하려고 합니다.</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>휴지통 비우기</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>모든</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>풀:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>풀 이름:</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>이미지 복구하기</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>복구를 위해</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>이미지들의 새로운 이름을 입력하고 클릭하세요</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>새로운 이름</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>폐기될</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>까지 보호됨</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSI 토폴로지</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>기본설정 값들로 부터 인자를 변경하는 것은 일반적으로 필요하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>설정들</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>백스토어</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>확인</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>고급설정들</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>타겟 IQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN이 잘못된 패턴을 가지고 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Key\n예를들면: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>추가 정보</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>이 타겟은 고급설정들을 수정했습니다.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>포털</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>포털 추가</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>이 이미지는 설정들을 수정했습니다. </target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>이미지 추가</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL 인증</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>개시자들</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>개시자들</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>클라이언트 IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>개시자 IQN은 유일해야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>사용자이름은 8~64자까지 길이의 문자들을 가져야 하며 그리고, 오직 , \'.\', \'@\', \'-\', \'_\', \':\' 등의 특수 문자들만 포함이 가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>개시자는 하나의 그룹에 속해야 하고, 이미지는 그룹안에서 설정합니다.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>추가된 아이템들이 없음</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>게시자 추가</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>그룹들</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>그룹</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>그룹추가</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>휴지통</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>이슈들</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>동기화중</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>준비됨</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>풀 미러모드를 편집하기</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>상대방 클러스터들은 미러를 단절하기 전에 반드시 제거되어야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>클러스터 이름</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>클러스터 이름이 유효하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX 아이디</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX 아이디...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX 아이디가 유효하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>모니터 주소들</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>콤마로 분리된 주소들...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>모니터 주소가 유효하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX 키</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64로 인코딩 된 키 ...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephX 키는 반드시 base64로 인코드 되어야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>성능 카운터들을 사용 할 수 없음</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>데몬 목록들</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>성능 카운터</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>버킷데이타 적재 중</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>아이디</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>값이 유효하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>선택한 이름이 이미 사용중입니다.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>소유자</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- 사용자 선택 --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>이용가능</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>아이디</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>색인형식</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>위치규칙</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>표시</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>최대 마커</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>버젼</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>마스터 버젼</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>수정된 시간</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>제로그룹</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>버킷 할당량</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>최대 크기</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>무제한</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>최대 객체들</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>사용자명</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- 사용자명 선택 --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>자동생성된 키</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>접근 키</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>비밀 키</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>전체 이름</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>전자우편 주소</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>유예되다.</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>시스템</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>최대 버킷들</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>보조사용자들</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>능력치들</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>사용자 할당량</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>보기</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>키들</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>형태</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- 형태 선택 --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>권한</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- 권한 선택 --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>보조사용자</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>선택한 보조사용자 아이디가 이미 사용중입니다.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>읽기, 쓰기</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>가득찬</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>스위프트 키</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>자동생선된 비밀</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>사용자 데이타 적재 중...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>사용자 데이타를 적재할 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>선택된 사용자 아이디가 이미 사용 중입니다.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>이것은 유효한 전자우편 주소가 아닙니다.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>선택한 전자우편 주소가 이미 사용 중입니다.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>최대 버킷들</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>설정해제됨</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>커스텀</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3 키</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>보조사용자가 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>키가 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>스위프트</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>능력치가 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>무제한 크기</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>최대 크기</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>무제한 객체들</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>최대 객체들</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>입력된 값은 반드시 0보다 커야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>세부설명...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>권한들</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>역할들</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>암호 확인</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>암호 확인이 암호와 일치하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>전자우편</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>유효하지않는 전자우편.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>당신의 사용자로부터 "사용자 읽기 / 업데이트"권한을 제거하려고합니다.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>계속하면 모든 사용자에게 역할을 추가하거나 제거 할 수 없게됩니다.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>계속 진행하기를 원하십니까?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>도움말</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>문서</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>대하여</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>대쉬보드 설정</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>사용자 관리</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>로그인된 사용자</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>로그아웃</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>속성들 (OSD 맵)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>메타데이타 사용할 수 없음</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>메타데이타</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>성능 카운터</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>쓰기</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>읽기</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>히스토그램</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>현재 값들</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>최소</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>최대</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>소스</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>수준</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>수행시간에 갱신가능함(편집가능)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>테크들</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>열거형 값들</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>추가로 더보기</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>클러스터 상태</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>관리자 데몬들</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>오브젝트 게이트웨이들</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>메타데이타 서버들</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI 게이트웨이들</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>클라이언트 IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>클라이언트 처리량</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>클라이언트 읽기/쓰기</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>복구 처리량</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>세정작업</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>성능</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>원시용량</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>OSD당 PG들</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>PG 상태들</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>용량</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>순위</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>현재</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>업데이트된 검색 인증</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>사용가능한 포탈들이 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>사용가능한 이미지들이 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>사용할 수있는 이미지가 없습니다. 대상에 이미지를 추가했는지 확인하십시오.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>사용할 수있는 개시자가 없습니다. 대상에 개시자를 추가했는지 확인하십시오.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>타겟</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>상태</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>읽은 바이트들</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>쓰기 바이트들</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>읽기 Ops</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>쓰기 Ops</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O 이래로</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>인스탄스</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>이슈</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>진행중</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>편집모드</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>상대방 추가</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>상대방 편집</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>상대방 삭제</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>리더</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># 로컬</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># 원격</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>상대방 미러</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>키</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>딥 패턴</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>계층화</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>배타적인 락</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>오프젝트-맵(배타적인-락을 요구한다)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>저널링(배탁적인-락을 요구합니다.)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>보호안됨</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>RBD 스냅샷 롤백</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>롤백</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBD 스냅샷</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>삭제될 </target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>아이디</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>형태</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>상태</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>버젼</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>호스트</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>루트</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>대기 데몬들</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>순위</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>데몬</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>활동</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>덴트리들</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>아이노드들</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>사용량</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>갱신된</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>이 값은 런타임에 업데이트 할 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>데몬들 / 클라이언트들은 모니터 구성 데이터베이스에서이 값을 가져 오지 않습니다. \'ceph config set ...\'을 통해이 옵션을 설정하는 것은 허락되지 않습니다. 이 옵션은 ceph.conf 또는 명령 줄을 통해 구성해야합니다.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>옵션은 데몬 시작 중에 만 적용됩니다.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>옵션은 클러스터 생성할 때 만 영향을 줍니다.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>옵션은 데몬 생성할 때만 영향을줍니다.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>서비스</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>현재값</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>편집가능</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>사용가능</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>사용불가</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>재-접속 중, 기다려 주세요...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>공개 주소</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>열린 세션들</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>들어올 수 없는</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>이전에 마크 아웃 된 OSD는 시작시 다시 표시되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>나갈 수 없는</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD들은 구성된 간격 후에는 자동으로 표시되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>살아나지 않는</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSD는 시작할 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>죽일 수 없는</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>모니터가 OSD들의 다운을 표시하지 않도록 OSD 장애 보고서가 무시되고 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>멈출</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>읽기와 쓰기를 멈춤</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>스크러빙 않됨</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>스크러빙이 비활성화되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>딥 스크럽 안됨</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>딥 스크러빙이 비활성되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>백필 없음</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>PG들의 백필이 일시중지 되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>복구 않됨</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>PG들의 복구가 일시중지 되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>비트단위 정렬</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>비트단위 정렬을 사용하세요</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>완전삭제된 스냅디렉토리들</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD들이 변화된 스냅셋을 가지고 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>삭제된 복구들</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>피어링 대신 복구 중에 수행된 삭제물들</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>PG 로그 하드 한계</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>pg 로그 길이에 하드 한계를 넣으세요</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>갱신된 OSD 플래그들</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>아웃</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>인</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>다운</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>표시</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD 손실</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>손실 표시</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>완전제거</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>완전제거된</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>파괴됨</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>파괴된</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>삭제</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>파괴됨</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>읽은 바이트들</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>쓰여진 바이트들</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>읽기 ops</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>쓰기 ops</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>최대 백필들</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>최대 활성화를 복구하기</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>최대 단일 시작을 복구하기</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>잠자기를 복구하기</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>일</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>심각도</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>시작된</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>사용된</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>이용가능:</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>깨끗한</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>정상동작중</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>경고</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>알려지지 않은</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>정상</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>파일시스템들 없음</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>활성화된</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>대기중인</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>이용불가</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>활성화된 데몬들</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>정족수</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>NFS Ganesha 서비스가 설정되지 않음</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>전송</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS 사용자</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFS 파일시스템</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(전역 구성에서 상속)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>전역 구성에서 상속</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>- 어떤 종류의 사용자 ID 스쿼시가 수행되는지 선택 -</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>사용가능한 데몬이 없읍니다.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>캐쉬모드</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>최소 퇴거 연령</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>최소 플러시 연령</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>목표 최대 바이트들</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>목표 최대 오브젝트들</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>추가된 응용프로그램 없음</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>응용프로그램 한계에 도달함</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>하나의 풀은 오직 네개의 응용프로그램 정의들을 가질 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target> \'_a-zA-Z0-9\' 문자들만 허락됨</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>최대 길이는 128글자이다.</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>필터 또는 추가된 응용프로그램들</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>응용프로그램 추가</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>Erasure 코드 프로파일</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>복제 크기</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>마지막 변경</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Erasure 코드화된 프로파일</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>크러쉬 룰셋</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>버킷</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>버킷들</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>사용자</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>사용자들</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>범위</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>읽기</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>만들기</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>시스템 롤</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>갱신된 사용자</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>계속</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>당신의 롤들이 변경되어 당신은 자동적으로 로그아웃되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>각각의 오브젝트들은 데이타-청크 부분들로 분리되어, 각기 다른 OSD에 보관됩니다.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>각 오브젝트들에 대한 코딩 청크를 계산하고 서로 다른 OSD에 저장합니다. \n코딩된 청크의 수는 데이터 손실없이 작동중지 되어 질 수있는 OSD의 숫자이기도합니다.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Jerasure 플러그인은 가장 일반적이고 유연한 플러그인으로,\n또한 Ceph erasure 코드 풀의 기본값이기도합니다.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>보다 유연한 기술은 reed_sol_van입니다 : k와 m을 설정하면 충분합니다. \ncauchy_good 기술은 빠를 수 있지만 패킷크기를 주의깊게 선택해야합니다. \nreed_sol_r6_op, liberation, blaum_roth, liber8tion은 모두 m = 2로만 구성 할 수 있다는 점에서 RAID-6에 해당합니다.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>인코딩은 한번에 바이트들 크기의 패킷에 대해 수행됩니다. 올바른 패킷 크기를 선택하는 것은 어렵습니다. jerasure 문서에는이 주제에 대한 광범위한 정보가 들어 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>jerasure 플러그인을 사용하면 삭제 된 코딩 된 객체가 여러 OSD에 저장 될 때 하나의 OSD가 손실되는 것을 복구하려면 다른 모든 OSD를 읽어야합니다. 예를 들어 jerasure가 k = 8 및 m = 4로 구성되어있는 경우 하나의 OSD를 잃어 버리면 11 명의 다른 사람들이 수리해야합니다.\nlrc erasure code plugin은 적은 양의 OSD를 사용하여 복구 할 수 있도록 로컬 패리티 청크를 만듭니다. 예를 들어, lrc가 k = 8, m = 4 및 l = 4로 구성된 경우 4 개의 OSD마다 추가 패리티 덩어리가 생성됩니다. 단일 OSD가 손실되면 11 개 대신 4 개의 OSD만으로 복구 할 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>코딩 및 데이터 청크를 크기 지역 집합으로 그룹화합니다. 예를 들어, k = 4 및 m = 2에 대해, 지역성 = 3 일 때 두 개의 세 그룹이 생성됩니다. 각 세트는 다른 세트의 청크를 읽지 않고도 복구 될 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>l로 정의 된 각 청크 집합이 저장되는 크러시 버킷의 유형입니다. 예를 들어 랙으로 설정하면 l 개의 청크 그룹이 각각 다른 랙에 배치됩니다. \n랙 선택 단계와 같은 CRUSH 규칙 단계를 만드는 데 사용됩니다. 설정되어 있지 않으면, 그러한 그룹화가 수행되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>isa 플러그인은 ISA 라이브러리를 캡슐화합니다. 인텔 프로세서에서만 실행됩니다.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>ISA 플러그인은 두 개의 리드 솔로몬 형식으로 제공됩니다.\nreed_sol_van이 설정되면 Vandermonde, cauchy가 설정되면 Cauchy입니다.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>shec plugin은 다중 SHEC 라이브러리를 캡슐화합니다.\n           ceph가 리드 솔로몬 코드보다 더 효율적으로 데이터를 복구 할 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>각 데이터 청크가 계산 범위에 포함되는 패리티 청크의 수입니다. 이 수치는 내구성 측정기로 사용됩니다. 예를 들어, c = 2 인 경우 2 개의 OSD가 데이터 손실없이 중단 될 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>CRUSH 규칙의 첫 번째 단계에 사용 된 크러시 버킷의 이름입니다. 예를 들어 step은 기본값을 취합니다.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>동일한 실패 도메인을 가진 양동이에 두 개의 청크가 없는지 확인하십시오. 예를 들어 실패 도메인이 호스트 인 경우 두 개의 청크가 동일한 호스트에 저장되지 않습니다. 이 단계는 리프 호스트를 선택하는 단계와 같은 CRUSH 규칙 단계를 만드는 데 사용됩니다.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>CRUSH지도에서 크래시 장치 클래스 이름을 사용하여 특정 클래스 (예 : ssd 또는 hdd)의 장치로 배치를 제한합니다.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>삭제 코드 플러그인이로드되는 디렉토리 이름을 설정하십시오.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>모든 작업들 허용</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>오직 서버를 수정하지 않는 작업들만 가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>읽기와 쓰기 작업은 허용되지 않지만, 그외 모든 작업이 가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>파일의 속성과 디렉토리 내용을 변경하는 읽기, 쓰기 또는 어떠한 작업은 허용되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>전혀 어떠한 접근도 허용되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- 우선순위 선택 --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>낮음</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>높음</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>정보</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>마지막 5분</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>지난 15분</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>지난 30분</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>지난 1시간(기본)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>지난 3시간</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>지난 6시간</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>지난 12시간</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>지난 24시간</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>어제</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>오늘</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>오늘 지금까지</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>그저께</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>지난 2일</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>이번 주 마지막날</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>전주</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>이번주</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>이번주 지금까지</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>지난 7일</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>지난 달</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>이번 달</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>이번 달 지금까지</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>지난 30일</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>지난 90일</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>지난 6개월</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>지난 1년</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>전년도</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>금년도</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>금년 지금까지</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>지난 2년</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>지난 5년</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>선택된 아이템 없음</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>다시 선택하기 위해 아이템 선택을 취소</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>선택 한계에 도달함</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>필터 테그들</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>베찌 추가</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>사용가능한 아이템 없음</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>복제</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>복사</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>딥 스크럽</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>파괴됨</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>단조로움</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>다운 표시</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>인 표시</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>손실 표시</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>아웃 표시</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>보호</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>이름변경</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>복구</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>휴지통으로 옮기기</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>보호않됨</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>삭제돔</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>복제된</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>복사된</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>평평하게 됨</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>완전삭제됨</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>복구됨</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>롤백됨</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>예</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>아니오</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>서비스 량</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS 한계</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>원하는 초당 IO 바이트 수 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS 제한</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>원하는 초당 IO 작업 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>읽기 BPS 제한</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>원하는 초당 읽기 바이스 수 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>읽기 IOPS 한도</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>원하는 초당 읽기 작업 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>쓰기 BPS 한도</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>원하는 초당 쓰기 바이트 수 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>쓰기 IOPS 제한</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>원하는 초당 쓰기 작업 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>원하는 버스트 IO 바이트 한도 입니다.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>원하는 IO 작업의 버스트 한계입니다.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>읽기 BPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>원하는 읽기 버스트 한계입니다.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>읽기 IOPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>원하는 읽기 작업의 버스트 한도입니다.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>쓰기 BPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>쓰기 바이트의 원하는 버스트 한도.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>쓰기 IOPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>쓰기 바이트의 원하는 버스트 한도.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>수행중</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>수행</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>수행된</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>알려지지 않는 작업</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>생성하는 중</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>생성</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>갱신 중</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>갱신</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>삭제 중</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>복제중</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>복제</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>복사중</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>복사</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>평평하게 하는 중</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>평평함</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>롤백 중</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>롤백</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>옮기는 중</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>옮기기</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>옮겨짐</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>이미지를 찾을 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>복구중</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>복구</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>완전삭제 중</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>완전삭제</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>모든 풀들</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>피어가 포함되어 있기 때문에 미러링을 비활성화 할 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"33Wh":function(t,e,n){var a=n("yoRg"),r=n("eDl+");t.exports=Object.keys||function(t){return a(t,r)}},"372+":function(t,e,n){var a=n("LaC8"),r=n("0GLT"),i=n("x3F9");t.exports=function(t){return"string"==typeof t||!r(t)&&i(t)&&"[object String]"==a(t)}},"38Bd":function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return i})),n.d(e,"c",(function(){return r})),n.d(e,"d",(function(){return u}));var a=n("hpHm");class r{constructor(){this.animate=!1,this.max=100}}class i{constructor(t){this.isStacked=!1,this.addClass=!0,this.bars=[],this._max=100,Object.assign(this,t)}set animate(t){this._animate=t,this.bars.forEach(e=>{e.animate=t})}set striped(t){this._striped=t,this.bars.forEach(e=>{e.striped=t})}set value(t){this.isStacked=Array.isArray(t),this._value=t}get isBs3(){return Object(a.d)()}get max(){return this._max}set max(t){this._max=t,this.bars.forEach(t=>{t.recalculatePercentage()})}addBar(t){t.animate=this._animate,t.striped=this._striped,this.bars.push(t)}removeBar(t){this.bars.splice(this.bars.indexOf(t),1)}}class s{constructor(t,e,n){this.el=t,this.renderer=n,this.addClass=!0,this.percent=0,this.progress=e}get type(){return this._type}set type(t){this._type=t,this.applyTypeClasses()}get value(){return this._value}set value(t){(t||0===t)&&(this._value=t,this.recalculatePercentage())}get setBarWidth(){return this.recalculatePercentage(),this.percent}get isBs3(){return Object(a.d)()}ngOnInit(){this.progress.addBar(this)}ngOnDestroy(){this.progress.removeBar(this)}recalculatePercentage(){this.percent=+(this.value/this.progress.max*100).toFixed(2);const t=this.progress.bars.reduce((function(t,e){return t+e.percent}),0);t>100&&(this.percent-=t-100)}applyTypeClasses(){if(this._prevType){const t="bg-"+this._prevType;this.renderer.removeClass(this.el.nativeElement,"progress-bar-"+this._prevType),this.renderer.removeClass(this.el.nativeElement,t),this._prevType=null}if(this._type){const t="bg-"+this._type;this.renderer.addClass(this.el.nativeElement,"progress-bar-"+this._type),this.renderer.addClass(this.el.nativeElement,t),this._prevType=this._type}}}class u{static forRoot(){return{ngModule:u,providers:[r]}}}},"3E1r":function(t,e,n){!function(t){"use strict";var e={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};t.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",LTS:"A h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm बजे",LLLL:"dddd, D MMMM YYYY, A h:mm बजे"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",ss:"%d सेकंड",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(t){return t.replace(/[१२३४५६७८९०]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(t,e){return 12===t&&(t=0),"रात"===e?t<4?t:t+12:"सुबह"===e?t:"दोपहर"===e?t>=10?t:t+12:"शाम"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"रात":t<10?"सुबह":t<17?"दोपहर":t<20?"शाम":"रात"},week:{dow:0,doy:6}})}(n("wd/R"))},"3ENo":function(t,e,n){var a=n("Ytn0");t.exports=function(t){return a(this,t).has(t)}},"3N8a":function(t,e,n){"use strict";var a=n("quSY");class r extends a.a{constructor(t,e){super()}schedule(t,e=0){return this}}n.d(e,"a",(function(){return i}));class i extends r{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,a=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(a,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(a,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,a=void 0;try{this.work(t)}catch(r){n=!0,a=!!r&&r||new Error(r)}if(n)return this.unsubscribe(),a}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,a=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==a&&n.splice(a,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}},"3a3P":function(t,e,n){var a=n("2zzJ");t.exports=function(t){return function(e){return a(e,t)}}},"3bBZ":function(t,e,n){var a=n("2oRo"),r=n("/byt"),i=n("4mDm"),s=n("kRJp"),u=n("tiKp"),o=u("iterator"),l=u("toStringTag"),d=i.values;for(var c in r){var f=a[c],h=f&&f.prototype;if(h){if(h[o]!==d)try{s(h,o,d)}catch(p){h[o]=d}if(h[l]||s(h,l,c),r[c])for(var g in i)if(h[g]!==i[g])try{s(h,g,i[g])}catch(p){h[g]=i[g]}}}},"43VP":function(t,e,n){var a=n("SDUG"),r=n("TAQX")(a);t.exports=r},"4DD9":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){let e=!1;switch(t){case!0:case 1:case"y":case"yes":case"t":case"true":case"on":case"1":e=!0}return e}}},"4Dmd":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},i=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},s=function(){function t(t,e,n){this.renderer=t,this.templateRef=e,this.viewContainerRef=n}return Object.defineProperty(t.prototype,"isOpen",{set:function(t){t?(this._show(),this.isEnabled&&!1===this._isOpen&&this._animateOpen()):this.isEnabled?this._animateClose():this._hide(),this._isOpen=!!t},enumerable:!0,configurable:!0}),t.prototype._show=function(){this.innerElement||(this.innerElement=this.viewContainerRef.createEmbeddedView(this.templateRef).rootNodes[0])},t.prototype._hide=function(){this.viewContainerRef.clear(),this.innerElement=null},t.prototype._animateOpen=function(){var t=this,e=this.animateSpeed,n=this.animateAcceleration,a=0;this.renderer.setStyle(this.innerElement,"max-height","0"),setTimeout((function(){var r=setInterval((function(){if(!t._isOpen||!t.innerElement)return clearInterval(r);var i=Math.round(a+=e);t.renderer.setStyle(t.innerElement,"max-height",i+"px");var s=t.innerElement.getBoundingClientRect?t.innerElement.getBoundingClientRect().height:0;e*=n,n*=1.005,s<i&&(t.renderer.setStyle(t.innerElement,"max-height",null),clearInterval(r))}),17)}))},t.prototype._animateClose=function(){var t=this;if(this.innerElement)var e=this.animateSpeed,n=this.animateAcceleration,a=this.innerElement.getBoundingClientRect().height,r=setInterval((function(){if(t._isOpen||!t.innerElement)return clearInterval(r);t.renderer.setStyle(t.innerElement,"max-height",(a-=e)+"px"),e*=n,n*=1.005,a<=0&&(t.viewContainerRef.clear(),t.innerElement=null,clearInterval(r))}),17)},r([Object(a.Input)("treeAnimateOpenSpeed"),i("design:type",Number)],t.prototype,"animateSpeed",void 0),r([Object(a.Input)("treeAnimateOpenAcceleration"),i("design:type",Number)],t.prototype,"animateAcceleration",void 0),r([Object(a.Input)("treeAnimateOpenEnabled"),i("design:type",Boolean)],t.prototype,"isEnabled",void 0),r([Object(a.Input)("treeAnimateOpen"),i("design:type",Boolean),i("design:paramtypes",[Boolean])],t.prototype,"isOpen",null),r([Object(a.Directive)({selector:"[treeAnimateOpen]"}),i("design:paramtypes",[a.Renderer2,a.TemplateRef,a.ViewContainerRef])],t)}()},"4HWh":function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("KOzp"),s=n("z/SZ"),u=n("2uy1");n("p4Cf"),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return d}));var o=a["ɵcrt"]({encapsulation:0,styles:[["i[_ngcontent-%COMP%]{color:#2b99a8;cursor:pointer;padding-left:4px}"]],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"div",[],[[8,"className",0],[8,"innerHTML",1]],null,null,null,null)),a["ɵncd"](null,0),(t()(),a["ɵand"](0,null,null,0))],null,(function(t,e){var n=e.component;t(e,0,0,n.class,n.html)}))}function d(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,[["popoverTpl",2]],null,0,null,l)),(t()(),a["ɵeld"](1,16777216,null,null,4,"i",[["aria-hidden","true"],["container","body"],["placement","bottom"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==n.preventDefault()&&a),a}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](3,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](4,1),a["ɵdid"](5,212992,null,0,i.c,[i.a,a.ElementRef,a.Renderer2,a.ViewContainerRef,s.a,u.a],{popover:[0,"popover"],placement:[1,"placement"],outsideClick:[2,"outsideClick"],container:[3,"container"]},null)],(function(t,e){var n=t(e,4,0,e.component.icons.questionCircle);t(e,3,0,n),t(e,5,0,a["ɵnov"](e,0),"bottom",!0,"body")}),null)}},"4I5i":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>{function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t})()},"4MV3":function(t,e,n){!function(t){"use strict";var e={1:"૧",2:"૨",3:"૩",4:"૪",5:"૫",6:"૬",7:"૭",8:"૮",9:"૯",0:"૦"},n={"૧":"1","૨":"2","૩":"3","૪":"4","૫":"5","૬":"6","૭":"7","૮":"8","૯":"9","૦":"0"};t.defineLocale("gu",{months:"જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર".split("_"),monthsShort:"જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.".split("_"),monthsParseExact:!0,weekdays:"રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર".split("_"),weekdaysShort:"રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ".split("_"),weekdaysMin:"ર_સો_મં_બુ_ગુ_શુ_શ".split("_"),longDateFormat:{LT:"A h:mm વાગ્યે",LTS:"A h:mm:ss વાગ્યે",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm વાગ્યે",LLLL:"dddd, D MMMM YYYY, A h:mm વાગ્યે"},calendar:{sameDay:"[આજ] LT",nextDay:"[કાલે] LT",nextWeek:"dddd, LT",lastDay:"[ગઇકાલે] LT",lastWeek:"[પાછલા] dddd, LT",sameElse:"L"},relativeTime:{future:"%s મા",past:"%s પેહલા",s:"અમુક પળો",ss:"%d સેકંડ",m:"એક મિનિટ",mm:"%d મિનિટ",h:"એક કલાક",hh:"%d કલાક",d:"એક દિવસ",dd:"%d દિવસ",M:"એક મહિનો",MM:"%d મહિનો",y:"એક વર્ષ",yy:"%d વર્ષ"},preparse:function(t){return t.replace(/[૧૨૩૪૫૬૭૮૯૦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/રાત|બપોર|સવાર|સાંજ/,meridiemHour:function(t,e){return 12===t&&(t=0),"રાત"===e?t<4?t:t+12:"સવાર"===e?t:"બપોર"===e?t>=10?t:t+12:"સાંજ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"રાત":t<10?"સવાર":t<17?"બપોર":t<20?"સાંજ":"રાત"},week:{dow:0,doy:6}})}(n("wd/R"))},"4WOD":function(t,e,n){var a=n("UTVS"),r=n("ewvW"),i=n("93I0"),s=n("4Xet"),u=i("IE_PROTO"),o=Object.prototype;t.exports=s?Object.getPrototypeOf:function(t){return t=r(t),a(t,u)?t[u]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?o:null}},"4Xet":function(t,e,n){var a=n("0Dky");t.exports=!a((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4a5m":function(t,e,n){var a=n("zAeO");t.exports=function(t){var e=a(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}},"4dOw":function(t,e,n){!function(t){"use strict";t.defineLocale("en-ie",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},"4l63":function(t,e,n){var a=n("I+eb"),r=n("wg0c");a({global:!0,forced:parseInt!=r},{parseInt:r})},"4mDm":function(t,e,n){"use strict";var a=n("/GqU"),r=n("RNIs"),i=n("P4y1"),s=n("afO8"),u=n("fdAy"),o=s.set,l=s.getterFor("Array Iterator");t.exports=u(Array,"Array",(function(t,e){o(this,{type:"Array Iterator",target:a(t),index:0,kind:e})}),(function(){var t=l(this),e=t.target,n=t.kind,a=t.index++;return!e||a>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:a,done:!1}:"values"==n?{value:e[a],done:!1}:{value:[a,e[a]],done:!1}}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},"4syw":function(t,e,n){var a=n("busE");t.exports=function(t,e,n){for(var r in e)a(t,r,e[r],n);return t}},"5+tZ":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("ZUHj"),r=n("l7GE"),i=n("51Dv"),s=n("lJxs"),u=n("Cfvw");function o(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?a=>a.pipe(o((n,a)=>Object(u.a)(t(n,a)).pipe(Object(s.a)((t,r)=>e(n,t,a,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new l(t,n)))}class l{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new d(t,this.project,this.concurrent))}}class d extends r.a{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active<this.concurrent?this._tryNext(t):this.buffer.push(t)}_tryNext(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(a){return void this.destination.error(a)}this.active++,this._innerSub(e,t,n)}_innerSub(t,e,n){const r=new i.a(this,e,n),s=this.destination;s.add(r);const u=Object(a.a)(this,t,void 0,void 0,r);u!==r&&s.add(u)}_complete(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}notifyNext(t,e,n,a,r){this.destination.next(e)}notifyComplete(t){const e=this.buffer;this.remove(t),this.active--,e.length>0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}},"51Dv":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");class r extends a.a{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}},"5DBd":function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length;++n<a&&!1!==e(t[n],n,t););return t}},"5EpR":function(t,e,n){var a=n("jNLg");t.exports=function(t){return t?(t=a(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}},"5itS":function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},"6+QB":function(t,e,n){!function(t){"use strict";t.defineLocale("ms",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(t,e){return 12===t&&(t=0),"pagi"===e?t:"tengahari"===e?t>=11?t:t+12:"petang"===e||"malam"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"pagi":t<15?"tengahari":t<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n("wd/R"))},"6B0Y":function(t,e,n){!function(t){"use strict";var e={1:"១",2:"២",3:"៣",4:"៤",5:"៥",6:"៦",7:"៧",8:"៨",9:"៩",0:"០"},n={"១":"1","២":"2","៣":"3","៤":"4","៥":"5","៦":"6","៧":"7","៨":"8","៩":"9","០":"0"};t.defineLocale("km",{months:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),weekdaysMin:"អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/ព្រឹក|ល្ងាច/,isPM:function(t){return"ល្ងាច"===t},meridiem:function(t,e,n){return t<12?"ព្រឹក":"ល្ងាច"},calendar:{sameDay:"[ថ្ងៃនេះ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",ss:"%d វិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},dayOfMonthOrdinalParse:/ទី\d{1,2}/,ordinal:"ទី%d",preparse:function(t){return t.replace(/[១២៣៤៥៦៧៨៩០]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},week:{dow:1,doy:4}})}(n("wd/R"))},"6II+":function(t,e,n){var a=n("R8cQ");t.exports=function(t){return null==t?"":a(t)}},"6JNq":function(t,e,n){var a=n("UTVS"),r=n("Vu81"),i=n("Bs8V"),s=n("m/L8");t.exports=function(t,e){for(var n=r(e),u=s.f,o=i.f,l=0;l<n.length;l++){var d=n[l];a(t,d)||u(t,d,o(e,d))}}},"6LWA":function(t,e,n){var a=n("xrYK");t.exports=Array.isArray||function(t){return"Array"==a(t)}},"6MU2":function(t,e){t.exports=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}},"6VoE":function(t,e,n){var a=n("tiKp"),r=n("P4y1"),i=a("iterator"),s=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||s[i]===t)}},"6eui":function(t,e,n){var a=n("hmSm"),r=n("5itS"),i=n("l2xC"),s=Object.prototype.hasOwnProperty;t.exports=function(t){if(!a(t))return i(t);var e=r(t),n=[];for(var u in t)("constructor"!=u||!e&&s.call(t,u))&&n.push(u);return n}},"6qls":function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("tz6c");class a{constructor(t,e){this.docService=t,this.i18n=e,this.docText=this.i18n("documentation")}ngOnInit(){this.docService.subscribeOnce(this.section,t=>{this.docUrl=t})}}},"7+rY":function(t,e,n){var a=n("bQrF"),r=n("MOZO"),i=n("Uies"),s=n("hmSm"),u=n("Wv1A");t.exports=function(t,e,n,o){if(!s(t))return t;for(var l=-1,d=(e=r(e,t)).length,c=d-1,f=t;null!=f&&++l<d;){var h=u(e[l]),g=n;if("__proto__"===h||"constructor"===h||"prototype"===h)return t;if(l!=c){var p=f[h];void 0===(g=o?o(p,h,f):void 0)&&(g=s(p)?p:i(e[l+1])?[]:{})}a(f,h,g),f=f[h]}return t}},"77kF":function(t,e,n){var a=n("bQrF"),r=n("ZPW6");t.exports=function(t,e,n,i){var s=!n;n||(n={});for(var u=-1,o=e.length;++u<o;){var l=e[u],d=i?i(n[l],t[l],l,n,t):void 0;void 0===d&&(d=t[l]),s?r(n,l,d):a(n,l,d)}return n}},"7BjC":function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={s:["mõne sekundi","mõni sekund","paar sekundit"],ss:[t+"sekundi",t+"sekundit"],m:["ühe minuti","üks minut"],mm:[t+" minuti",t+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[t+" tunni",t+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[t+" kuu",t+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[t+" aasta",t+" aastat"]};return e?r[n][2]?r[n][2]:r[n][1]:a?r[n][0]:r[n][1]}t.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:"%d päeva",M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},"7Igq":function(t,e){t.exports=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}},"7Nlv":function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(!e(t[n],n,t))return!1;return!0}},"7VGY":function(t,e,n){var a=n("7Nlv"),r=n("BkBO"),i=n("l9nr"),s=n("0GLT"),u=n("QUkU");t.exports=function(t,e,n){var o=s(t)?a:r;return n&&u(t,e,n)&&(e=void 0),o(t,i(e,3))}},"7aV9":function(t,e,n){!function(t){"use strict";t.defineLocale("si",{months:"ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්".split("_"),monthsShort:"ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ".split("_"),weekdays:"ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා".split("_"),weekdaysShort:"ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන".split("_"),weekdaysMin:"ඉ_ස_අ_බ_බ්‍ර_සි_සෙ".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"a h:mm",LTS:"a h:mm:ss",L:"YYYY/MM/DD",LL:"YYYY MMMM D",LLL:"YYYY MMMM D, a h:mm",LLLL:"YYYY MMMM D [වැනි] dddd, a h:mm:ss"},calendar:{sameDay:"[අද] LT[ට]",nextDay:"[හෙට] LT[ට]",nextWeek:"dddd LT[ට]",lastDay:"[ඊයේ] LT[ට]",lastWeek:"[පසුගිය] dddd LT[ට]",sameElse:"L"},relativeTime:{future:"%sකින්",past:"%sකට පෙර",s:"තත්පර කිහිපය",ss:"තත්පර %d",m:"මිනිත්තුව",mm:"මිනිත්තු %d",h:"පැය",hh:"පැය %d",d:"දිනය",dd:"දින %d",M:"මාසය",MM:"මාස %d",y:"වසර",yy:"වසර %d"},dayOfMonthOrdinalParse:/\d{1,2} වැනි/,ordinal:function(t){return t+" වැනි"},meridiemParse:/පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,isPM:function(t){return"ප.ව."===t||"පස් වරු"===t},meridiem:function(t,e,n){return t>11?n?"ප.ව.":"පස් වරු":n?"පෙ.ව.":"පෙර වරු"}})}(n("wd/R"))},"7o/Q":function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("n6bG"),r=n("gRHU"),i=n("quSY"),s=n("2QA8"),u=n("2fFW"),o=n("NJ4a");class l extends i.a{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=r.a;break;case 1:if(!t){this.destination=r.a;break}if("object"==typeof t){t instanceof l?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new d(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new d(this,t,e,n)}}[s.a](){return this}static create(t,e,n){const a=new l(t,e,n);return a.syncErrorThrowable=!1,a}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class d extends l{constructor(t,e,n,i){let s;super(),this._parentSubscriber=t;let u=this;Object(a.a)(e)?s=e:e&&(s=e.next,n=e.error,i=e.complete,e!==r.a&&(u=Object.create(e),Object(a.a)(u.unsubscribe)&&this.add(u.unsubscribe.bind(u)),u.unsubscribe=this.unsubscribe.bind(this))),this._context=u,this._next=s,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;u.a.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=u.a;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):Object(o.a)(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;Object(o.a)(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);u.a.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),u.a.useDeprecatedSynchronousErrorHandling)throw n;Object(o.a)(n)}}__tryOrSetError(t,e,n){if(!u.a.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(a){return u.a.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=a,t.syncErrorThrown=!0,!0):(Object(o.a)(a),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}},"7qid":function(t,e,n){"use strict";n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return f}));var a=n("8Y7J"),r=n("38Bd"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function u(t){return a["ɵvid"](0,[a["ɵncd"](null,0)],null,null)}var o=a["ɵcrt"]({encapsulation:0,styles:["[_nghost-%COMP%] {\n      width: 100%;\n      display: flex;\n    }"],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bar",[["aria-valuemin","0"],["role","progressbar"]],[[2,"progress-bar-animated",null],[2,"progress-bar-striped",null],[2,"active",null],[1,"aria-valuenow",0],[1,"aria-valuetext",0],[1,"aria-valuemax",0],[4,"height","%"],[4,"width","%"],[2,"progress-bar",null]],null,null,u,s)),a["ɵdid"](1,245760,null,0,r.a,[a.ElementRef,r.b,a.Renderer2],{type:[0,"type"],value:[1,"value"]},null),a["ɵncd"](0,0)],(function(t,e){var n=e.component;t(e,1,0,n.type,n._value)}),(function(t,e){t(e,0,0,!a["ɵnov"](e,1).isBs3&&a["ɵnov"](e,1).animate,a["ɵnov"](e,1).striped,a["ɵnov"](e,1).isBs3&&a["ɵnov"](e,1).animate,a["ɵnov"](e,1).value,a["ɵnov"](e,1).percent?a["ɵnov"](e,1).percent.toFixed(0)+"%":"",a["ɵnov"](e,1).max,"100",a["ɵnov"](e,1).setBarWidth,a["ɵnov"](e,1).addClass)}))}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bar",[["aria-valuemin","0"],["role","progressbar"]],[[2,"progress-bar-animated",null],[2,"progress-bar-striped",null],[2,"active",null],[1,"aria-valuenow",0],[1,"aria-valuetext",0],[1,"aria-valuemax",0],[4,"height","%"],[4,"width","%"],[2,"progress-bar",null]],null,null,u,s)),a["ɵdid"](1,245760,null,0,r.a,[a.ElementRef,r.b,a.Renderer2],{type:[0,"type"],value:[1,"value"]},null),(t()(),a["ɵted"](2,0,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.type,e.context.$implicit.value)}),(function(t,e){t(e,0,0,!a["ɵnov"](e,1).isBs3&&a["ɵnov"](e,1).animate,a["ɵnov"](e,1).striped,a["ɵnov"](e,1).isBs3&&a["ɵnov"](e,1).animate,a["ɵnov"](e,1).value,a["ɵnov"](e,1).percent?a["ɵnov"](e,1).percent.toFixed(0)+"%":"",a["ɵnov"](e,1).max,"100",a["ɵnov"](e,1).setBarWidth,a["ɵnov"](e,1).addClass),t(e,2,0,e.context.$implicit.label)}))}function c(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](1,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component._value)}),null)}function f(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](3,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,!n.isStacked),t(e,3,0,n.isStacked)}),null)}},"8+Q7":function(t,e){var n=Object.prototype.hasOwnProperty;t.exports=function(t){var e=t.length,a=new t.constructor(e);return e&&"string"==typeof t[0]&&n.call(t,"index")&&(a.index=t.index,a.input=t.input),a}},"8+is":function(t,e,n){var a=n("IWUC"),r=n("0nKi"),i=n("L0Z1"),s=i&&i.isSet,u=s?r(s):a;t.exports=u},"8/+R":function(t,e,n){!function(t){"use strict";var e={1:"੧",2:"੨",3:"੩",4:"੪",5:"੫",6:"੬",7:"੭",8:"੮",9:"੯",0:"੦"},n={"੧":"1","੨":"2","੩":"3","੪":"4","੫":"5","੬":"6","੭":"7","੮":"8","੯":"9","੦":"0"};t.defineLocale("pa-in",{months:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),monthsShort:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),weekdays:"ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ".split("_"),weekdaysShort:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),weekdaysMin:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),longDateFormat:{LT:"A h:mm ਵਜੇ",LTS:"A h:mm:ss ਵਜੇ",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm ਵਜੇ",LLLL:"dddd, D MMMM YYYY, A h:mm ਵਜੇ"},calendar:{sameDay:"[ਅਜ] LT",nextDay:"[ਕਲ] LT",nextWeek:"[ਅਗਲਾ] dddd, LT",lastDay:"[ਕਲ] LT",lastWeek:"[ਪਿਛਲੇ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ਵਿੱਚ",past:"%s ਪਿਛਲੇ",s:"ਕੁਝ ਸਕਿੰਟ",ss:"%d ਸਕਿੰਟ",m:"ਇਕ ਮਿੰਟ",mm:"%d ਮਿੰਟ",h:"ਇੱਕ ਘੰਟਾ",hh:"%d ਘੰਟੇ",d:"ਇੱਕ ਦਿਨ",dd:"%d ਦਿਨ",M:"ਇੱਕ ਮਹੀਨਾ",MM:"%d ਮਹੀਨੇ",y:"ਇੱਕ ਸਾਲ",yy:"%d ਸਾਲ"},preparse:function(t){return t.replace(/[੧੨੩੪੫੬੭੮੯੦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,meridiemHour:function(t,e){return 12===t&&(t=0),"ਰਾਤ"===e?t<4?t:t+12:"ਸਵੇਰ"===e?t:"ਦੁਪਹਿਰ"===e?t>=10?t:t+12:"ਸ਼ਾਮ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"ਰਾਤ":t<10?"ਸਵੇਰ":t<17?"ਦੁਪਹਿਰ":t<20?"ਸ਼ਾਮ":"ਰਾਤ"},week:{dow:0,doy:6}})}(n("wd/R"))},"85J/":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){const e=/ceph version\s+([^ ]+)\s+\(.+\)/.exec(t);return e?e[1]:t}}},"8SuI":function(t,e,n){t.exports=n("K3g9")},"8Tpr":function(t,e,n){var a=n("r2+u"),r=n("0nKi"),i=n("L0Z1"),s=i&&i.isMap,u=s?r(s):a;t.exports=u},"8V0S":function(t,e,n){var a=n("6MU2"),r=Math.max;t.exports=function(t,e,n){return e=r(void 0===e?t.length-1:e,0),function(){for(var i=arguments,s=-1,u=r(i.length-e,0),o=Array(u);++s<u;)o[s]=i[e+s];s=-1;for(var l=Array(e+1);++s<e;)l[s]=i[s];return l[e]=n(o),a(t,this,l)}}},"8Y7J":function(t,e,n){"use strict";n.r(e);var a=n("XNiG"),r=n("quSY"),i=n("HDdC"),s=n("VRyK"),u=n("7o/Q");function o(){return function(t){return t.lift(new l(t))}}class l{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const a=new d(t,n),r=e.subscribe(a);return a.closed||(a.connection=n.connect()),r}}class d extends u.a{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,a=t._connection;this.connection=null,!a||n&&a!==n||a.unsubscribe()}}class c extends i.a{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new r.a,t.add(this.source.subscribe(new h(this.getSubject(),this))),t.closed&&(this._connection=null,t=r.a.EMPTY)),t}refCount(){return o()(this)}}const f=(()=>{const t=c.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class h extends a.b{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function g(){return new a.a}n.d(e,"ɵangular_packages_core_core_q",(function(){return fv})),n.d(e,"ɵangular_packages_core_core_n",(function(){return lv})),n.d(e,"ɵangular_packages_core_core_o",(function(){return dv})),n.d(e,"ɵangular_packages_core_core_p",(function(){return cv})),n.d(e,"ɵangular_packages_core_core_r",(function(){return hv})),n.d(e,"ɵangular_packages_core_core_f",(function(){return xm})),n.d(e,"ɵangular_packages_core_core_l",(function(){return lf})),n.d(e,"ɵangular_packages_core_core_m",(function(){return bf})),n.d(e,"ɵangular_packages_core_core_k",(function(){return Wy})),n.d(e,"ɵangular_packages_core_core_j",(function(){return Uy})),n.d(e,"ɵangular_packages_core_core_b",(function(){return ot})),n.d(e,"ɵangular_packages_core_core_a",(function(){return at})),n.d(e,"ɵangular_packages_core_core_c",(function(){return yo})),n.d(e,"ɵangular_packages_core_core_d",(function(){return io})),n.d(e,"ɵangular_packages_core_core_e",(function(){return fo})),n.d(e,"ɵangular_packages_core_core_i",(function(){return Py})),n.d(e,"ɵangular_packages_core_core_s",(function(){return ty})),n.d(e,"ɵangular_packages_core_core_u",(function(){return Zm})),n.d(e,"ɵangular_packages_core_core_t",(function(){return $m})),n.d(e,"ɵangular_packages_core_core_x",(function(){return Xm})),n.d(e,"ɵangular_packages_core_core_v",(function(){return Jm})),n.d(e,"ɵangular_packages_core_core_w",(function(){return Qm})),n.d(e,"ɵangular_packages_core_core_ba",(function(){return Sg})),n.d(e,"ɵangular_packages_core_core_bb",(function(){return xa})),n.d(e,"ɵangular_packages_core_core_bc",(function(){return Ae})),n.d(e,"ɵangular_packages_core_core_bd",(function(){return Ge})),n.d(e,"ɵangular_packages_core_core_be",(function(){return rn})),n.d(e,"ɵangular_packages_core_core_bm",(function(){return ca})),n.d(e,"ɵangular_packages_core_core_bl",(function(){return ve})),n.d(e,"ɵangular_packages_core_core_g",(function(){return $s})),n.d(e,"ɵangular_packages_core_core_h",(function(){return Zs})),n.d(e,"ɵangular_packages_core_core_bg",(function(){return Cr})),n.d(e,"ɵangular_packages_core_core_bk",(function(){return Ot})),n.d(e,"ɵangular_packages_core_core_bh",(function(){return x})),n.d(e,"ɵangular_packages_core_core_bi",(function(){return _})),n.d(e,"ɵangular_packages_core_core_bn",(function(){return R})),n.d(e,"ɵangular_packages_core_core_y",(function(){return dg})),n.d(e,"ɵangular_packages_core_core_z",(function(){return Vf})),n.d(e,"createPlatform",(function(){return Sy})),n.d(e,"assertPlatform",(function(){return Ny})),n.d(e,"destroyPlatform",(function(){return Cy})),n.d(e,"getPlatform",(function(){return Ry})),n.d(e,"PlatformRef",(function(){return Ay})),n.d(e,"ApplicationRef",(function(){return Ey})),n.d(e,"createPlatformFactory",(function(){return Iy})),n.d(e,"NgProbeToken",(function(){return Oy})),n.d(e,"enableProdMode",(function(){return Ka})),n.d(e,"isDevMode",(function(){return Wa})),n.d(e,"APP_ID",(function(){return vm})),n.d(e,"PACKAGE_ROOT_URL",(function(){return Im})),n.d(e,"PLATFORM_INITIALIZER",(function(){return wm})),n.d(e,"PLATFORM_ID",(function(){return Om})),n.d(e,"APP_BOOTSTRAP_LISTENER",(function(){return Sm})),n.d(e,"APP_INITIALIZER",(function(){return mm})),n.d(e,"ApplicationInitStatus",(function(){return ym})),n.d(e,"DebugElement",(function(){return uv})),n.d(e,"DebugEventListener",(function(){return Hy})),n.d(e,"DebugNode",(function(){return sv})),n.d(e,"asNativeElements",(function(){return Ky})),n.d(e,"getDebugNode",(function(){return rv})),n.d(e,"Testability",(function(){return py})),n.d(e,"TestabilityRegistry",(function(){return by})),n.d(e,"setTestabilityGetter",(function(){return yy})),n.d(e,"TRANSLATIONS",(function(){return Rm})),n.d(e,"TRANSLATIONS_FORMAT",(function(){return Am})),n.d(e,"LOCALE_ID",(function(){return Cm})),n.d(e,"MissingTranslationStrategy",(function(){return km})),n.d(e,"ApplicationModule",(function(){return gv})),n.d(e,"wtfCreateScope",(function(){return ny})),n.d(e,"wtfLeave",(function(){return ay})),n.d(e,"wtfStartTimeRange",(function(){return ry})),n.d(e,"wtfEndTimeRange",(function(){return iy})),n.d(e,"Type",(function(){return nu})),n.d(e,"EventEmitter",(function(){return tb})),n.d(e,"ErrorHandler",(function(){return Da})),n.d(e,"Sanitizer",(function(){return vr})),n.d(e,"SecurityContext",(function(){return yr})),n.d(e,"Attribute",(function(){return N})),n.d(e,"ANALYZE_FOR_ENTRY_COMPONENTS",(function(){return vo})),n.d(e,"ContentChild",(function(){return To})),n.d(e,"ContentChildren",(function(){return _o})),n.d(e,"Query",(function(){return xo})),n.d(e,"ViewChild",(function(){return Oo})),n.d(e,"ViewChildren",(function(){return wo})),n.d(e,"Component",(function(){return nm})),n.d(e,"Directive",(function(){return em})),n.d(e,"HostBinding",(function(){return sm})),n.d(e,"HostListener",(function(){return um})),n.d(e,"Input",(function(){return rm})),n.d(e,"Output",(function(){return im})),n.d(e,"Pipe",(function(){return am})),n.d(e,"NgModule",(function(){return gm})),n.d(e,"CUSTOM_ELEMENTS_SCHEMA",(function(){return Pa})),n.d(e,"NO_ERRORS_SCHEMA",(function(){return Ma})),n.d(e,"ViewEncapsulation",(function(){return wt})),n.d(e,"Version",(function(){return uf})),n.d(e,"VERSION",(function(){return of})),n.d(e,"InjectFlags",(function(){return C})),n.d(e,"ɵɵdefineInjectable",(function(){return k})),n.d(e,"defineInjectable",(function(){return E})),n.d(e,"ɵɵdefineInjector",(function(){return L})),n.d(e,"forwardRef",(function(){return V})),n.d(e,"resolveForwardRef",(function(){return G})),n.d(e,"Injectable",(function(){return Ou})),n.d(e,"Injector",(function(){return Bu})),n.d(e,"ɵɵinject",(function(){return rt})),n.d(e,"inject",(function(){return it})),n.d(e,"INJECTOR",(function(){return $})),n.d(e,"ReflectiveInjector",(function(){return mo})),n.d(e,"ResolvedReflectiveFactory",(function(){return oo})),n.d(e,"ReflectiveKey",(function(){return to})),n.d(e,"InjectionToken",(function(){return K})),n.d(e,"Inject",(function(){return T})),n.d(e,"Optional",(function(){return w})),n.d(e,"Self",(function(){return O})),n.d(e,"SkipSelf",(function(){return S})),n.d(e,"Host",(function(){return I})),n.d(e,"NgZone",(function(){return oy})),n.d(e,"ɵNoopNgZone",(function(){return gy})),n.d(e,"RenderComponentType",(function(){return Jc})),n.d(e,"Renderer",(function(){return Xc})),n.d(e,"Renderer2",(function(){return af})),n.d(e,"RendererFactory2",(function(){return ef})),n.d(e,"RendererStyleFlags2",(function(){return nf})),n.d(e,"RootRenderer",(function(){return tf})),n.d(e,"COMPILER_OPTIONS",(function(){return Hm})),n.d(e,"Compiler",(function(){return Ym})),n.d(e,"CompilerFactory",(function(){return Um})),n.d(e,"ModuleWithComponentFactories",(function(){return Dm})),n.d(e,"ComponentFactory",(function(){return Vc})),n.d(e,"ɵComponentFactory",(function(){return Vc})),n.d(e,"ComponentRef",(function(){return Fc})),n.d(e,"ComponentFactoryResolver",(function(){return Yc})),n.d(e,"ElementRef",(function(){return Kc})),n.d(e,"NgModuleFactory",(function(){return ht})),n.d(e,"NgModuleRef",(function(){return ft})),n.d(e,"NgModuleFactoryLoader",(function(){return Dy})),n.d(e,"getModuleFactory",(function(){return qy})),n.d(e,"QueryList",(function(){return nb})),n.d(e,"SystemJsNgModuleLoader",(function(){return Gy})),n.d(e,"SystemJsNgModuleLoaderConfig",(function(){return Fy})),n.d(e,"TemplateRef",(function(){return Of})),n.d(e,"ViewContainerRef",(function(){return Nf})),n.d(e,"EmbeddedViewRef",(function(){return Yy})),n.d(e,"ViewRef",(function(){return zy})),n.d(e,"ChangeDetectionStrategy",(function(){return xt})),n.d(e,"ChangeDetectorRef",(function(){return Xs})),n.d(e,"DefaultIterableDiffer",(function(){return cf})),n.d(e,"IterableDiffers",(function(){return vf})),n.d(e,"KeyValueDiffers",(function(){return xf})),n.d(e,"SimpleChange",(function(){return Tc})),n.d(e,"WrappedValue",(function(){return Mo})),n.d(e,"platformCore",(function(){return ov})),n.d(e,"ɵALLOW_MULTIPLE_PLATFORMS",(function(){return wy})),n.d(e,"ɵAPP_ID_RANDOM_PROVIDER",(function(){return _m})),n.d(e,"ɵdefaultIterableDiffers",(function(){return Tf})),n.d(e,"ɵdefaultKeyValueDiffers",(function(){return wf})),n.d(e,"ɵdevModeEqual",(function(){return Po})),n.d(e,"ɵisListLikeIterable",(function(){return qo})),n.d(e,"ɵChangeDetectorStatus",(function(){return _t})),n.d(e,"ɵisDefaultChangeDetectionStrategy",(function(){return Tt})),n.d(e,"ɵConsole",(function(){return Nm})),n.d(e,"ɵsetCurrentInjector",(function(){return et})),n.d(e,"ɵgetInjectableDef",(function(){return D})),n.d(e,"ɵAPP_ROOT",(function(){return Nu})),n.d(e,"ɵDEFAULT_LOCALE_ID",(function(){return Dg})),n.d(e,"ɵivyEnabled",(function(){return Lm})),n.d(e,"ɵCodegenComponentFactoryResolver",(function(){return Hc})),n.d(e,"ɵclearResolutionOfComponentResourcesQueue",(function(){return Ro})),n.d(e,"ɵresolveComponentResources",(function(){return So})),n.d(e,"ɵReflectionCapabilities",(function(){return ou})),n.d(e,"ɵRenderDebugInfo",(function(){return Qc})),n.d(e,"ɵ_sanitizeHtml",(function(){return br})),n.d(e,"ɵ_sanitizeStyle",(function(){return Tr})),n.d(e,"ɵ_sanitizeUrl",(function(){return Qa})),n.d(e,"ɵglobal",(function(){return U})),n.d(e,"ɵlooseIdentical",(function(){return Do})),n.d(e,"ɵstringify",(function(){return j})),n.d(e,"ɵmakeDecorator",(function(){return y})),n.d(e,"ɵisObservable",(function(){return ed})),n.d(e,"ɵisPromise",(function(){return td})),n.d(e,"ɵclearOverrides",(function(){return zx})),n.d(e,"ɵinitServicesIfNeeded",(function(){return rx})),n.d(e,"ɵoverrideComponentView",(function(){return Bx})),n.d(e,"ɵoverrideProvider",(function(){return Gx})),n.d(e,"ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR",(function(){return mg})),n.d(e,"ɵgetLocalePluralCase",(function(){return Eg})),n.d(e,"ɵfindLocaleData",(function(){return Lg})),n.d(e,"ɵLOCALE_DATA",(function(){return Cg})),n.d(e,"ɵLocaleDataIndex",(function(){return Rg})),n.d(e,"ɵɵattribute",(function(){return Wo})),n.d(e,"ɵɵattributeInterpolate1",(function(){return al})),n.d(e,"ɵɵattributeInterpolate2",(function(){return rl})),n.d(e,"ɵɵattributeInterpolate3",(function(){return il})),n.d(e,"ɵɵattributeInterpolate4",(function(){return sl})),n.d(e,"ɵɵattributeInterpolate5",(function(){return ul})),n.d(e,"ɵɵattributeInterpolate6",(function(){return ol})),n.d(e,"ɵɵattributeInterpolate7",(function(){return ll})),n.d(e,"ɵɵattributeInterpolate8",(function(){return dl})),n.d(e,"ɵɵattributeInterpolateV",(function(){return cl})),n.d(e,"ɵɵdefineBase",(function(){return Bt})),n.d(e,"ɵɵdefineComponent",(function(){return Pt})),n.d(e,"ɵɵdefineDirective",(function(){return zt})),n.d(e,"ɵɵdefinePipe",(function(){return Yt})),n.d(e,"ɵɵdefineNgModule",(function(){return Ft})),n.d(e,"ɵdetectChanges",(function(){return fl})),n.d(e,"ɵrenderComponent",(function(){return bc})),n.d(e,"ɵRender3ComponentFactory",(function(){return Ig})),n.d(e,"ɵRender3ComponentRef",(function(){return Ng})),n.d(e,"ɵɵdirectiveInject",(function(){return Tl})),n.d(e,"ɵɵinjectAttribute",(function(){return wl})),n.d(e,"ɵɵinjectPipeChangeDetectorRef",(function(){return Sb})),n.d(e,"ɵɵgetFactoryOf",(function(){return Ra})),n.d(e,"ɵɵgetInheritedFactory",(function(){return Aa})),n.d(e,"ɵɵsetComponentScope",(function(){return Mt})),n.d(e,"ɵɵsetNgModuleScope",(function(){return Vt})),n.d(e,"ɵɵtemplateRefExtractor",(function(){return Ob})),n.d(e,"ɵɵProvidersFeature",(function(){return jc})),n.d(e,"ɵɵInheritDefinitionFeature",(function(){return Nc})),n.d(e,"ɵɵNgOnChangesFeature",(function(){return wc})),n.d(e,"ɵLifecycleHooksFeature",(function(){return xc})),n.d(e,"ɵRender3NgModuleRef",(function(){return Lp})),n.d(e,"ɵmarkDirty",(function(){return hl})),n.d(e,"ɵNgModuleFactory",(function(){return Dp})),n.d(e,"ɵNO_CHANGE",(function(){return ci})),n.d(e,"ɵɵcontainer",(function(){return gl})),n.d(e,"ɵɵnextContext",(function(){return ud})),n.d(e,"ɵɵelementStart",(function(){return zl})),n.d(e,"ɵɵnamespaceHTML",(function(){return gn})),n.d(e,"ɵɵnamespaceMathML",(function(){return hn})),n.d(e,"ɵɵnamespaceSVG",(function(){return fn})),n.d(e,"ɵɵelement",(function(){return Hl})),n.d(e,"ɵɵlistener",(function(){return nd})),n.d(e,"ɵɵtext",(function(){return wd})),n.d(e,"ɵɵtextInterpolate",(function(){return Sd})),n.d(e,"ɵɵtextInterpolate1",(function(){return Id})),n.d(e,"ɵɵtextInterpolate2",(function(){return Nd})),n.d(e,"ɵɵtextInterpolate3",(function(){return Cd})),n.d(e,"ɵɵtextInterpolate4",(function(){return Rd})),n.d(e,"ɵɵtextInterpolate5",(function(){return Ad})),n.d(e,"ɵɵtextInterpolate6",(function(){return kd})),n.d(e,"ɵɵtextInterpolate7",(function(){return Ed})),n.d(e,"ɵɵtextInterpolate8",(function(){return Ld})),n.d(e,"ɵɵtextInterpolateV",(function(){return Dd})),n.d(e,"ɵɵembeddedViewStart",(function(){return Jl})),n.d(e,"ɵɵprojection",(function(){return fd})),n.d(e,"ɵɵpipeBind1",(function(){return Wp})),n.d(e,"ɵɵpipeBind2",(function(){return Kp})),n.d(e,"ɵɵpipeBind3",(function(){return $p})),n.d(e,"ɵɵpipeBind4",(function(){return Zp})),n.d(e,"ɵɵpipeBindV",(function(){return Jp})),n.d(e,"ɵɵpureFunction0",(function(){return Mp})),n.d(e,"ɵɵpureFunction1",(function(){return qp})),n.d(e,"ɵɵpureFunction2",(function(){return jp})),n.d(e,"ɵɵpureFunction3",(function(){return Fp})),n.d(e,"ɵɵpureFunction4",(function(){return Vp})),n.d(e,"ɵɵpureFunction5",(function(){return Gp})),n.d(e,"ɵɵpureFunction6",(function(){return Bp})),n.d(e,"ɵɵpureFunction7",(function(){return zp})),n.d(e,"ɵɵpureFunction8",(function(){return Yp})),n.d(e,"ɵɵpureFunctionV",(function(){return Hp})),n.d(e,"ɵɵgetCurrentView",(function(){return Xl})),n.d(e,"ɵgetDirectives",(function(){return sc})),n.d(e,"ɵgetHostElement",(function(){return oc})),n.d(e,"ɵɵrestoreView",(function(){return Ve})),n.d(e,"ɵɵcontainerRefreshStart",(function(){return bl})),n.d(e,"ɵɵcontainerRefreshEnd",(function(){return ml})),n.d(e,"ɵɵqueryRefresh",(function(){return cb})),n.d(e,"ɵɵviewQuery",(function(){return hb})),n.d(e,"ɵɵstaticViewQuery",(function(){return fb})),n.d(e,"ɵɵstaticContentQuery",(function(){return mb})),n.d(e,"ɵɵloadViewQuery",(function(){return pb})),n.d(e,"ɵɵcontentQuery",(function(){return bb})),n.d(e,"ɵɵloadContentQuery",(function(){return vb})),n.d(e,"ɵɵelementEnd",(function(){return Yl})),n.d(e,"ɵɵhostProperty",(function(){return Xd})),n.d(e,"ɵɵproperty",(function(){return Ho})),n.d(e,"ɵɵpropertyInterpolate",(function(){return hd})),n.d(e,"ɵɵpropertyInterpolate1",(function(){return gd})),n.d(e,"ɵɵpropertyInterpolate2",(function(){return pd})),n.d(e,"ɵɵpropertyInterpolate3",(function(){return bd})),n.d(e,"ɵɵpropertyInterpolate4",(function(){return md})),n.d(e,"ɵɵpropertyInterpolate5",(function(){return yd})),n.d(e,"ɵɵpropertyInterpolate6",(function(){return vd})),n.d(e,"ɵɵpropertyInterpolate7",(function(){return xd})),n.d(e,"ɵɵpropertyInterpolate8",(function(){return _d})),n.d(e,"ɵɵpropertyInterpolateV",(function(){return Td})),n.d(e,"ɵɵupdateSyntheticHostBinding",(function(){return tc})),n.d(e,"ɵɵcomponentHostSyntheticListener",(function(){return ad})),n.d(e,"ɵɵprojectionDef",(function(){return ld})),n.d(e,"ɵɵreference",(function(){return xl})),n.d(e,"ɵɵenableBindings",(function(){return Ce})),n.d(e,"ɵɵdisableBindings",(function(){return Re})),n.d(e,"ɵɵallocHostVars",(function(){return ko})),n.d(e,"ɵɵelementContainerStart",(function(){return Kl})),n.d(e,"ɵɵelementContainerEnd",(function(){return $l})),n.d(e,"ɵɵelementContainer",(function(){return Zl})),n.d(e,"ɵɵstyling",(function(){return Ol})),n.d(e,"ɵɵstyleMap",(function(){return Al})),n.d(e,"ɵɵstyleSanitizer",(function(){return Sl})),n.d(e,"ɵɵclassMap",(function(){return kl})),n.d(e,"ɵɵclassMapInterpolate1",(function(){return Pd})),n.d(e,"ɵɵclassMapInterpolate2",(function(){return Md})),n.d(e,"ɵɵclassMapInterpolate3",(function(){return qd})),n.d(e,"ɵɵclassMapInterpolate4",(function(){return jd})),n.d(e,"ɵɵclassMapInterpolate5",(function(){return Fd})),n.d(e,"ɵɵclassMapInterpolate6",(function(){return Vd})),n.d(e,"ɵɵclassMapInterpolate7",(function(){return Gd})),n.d(e,"ɵɵclassMapInterpolate8",(function(){return Bd})),n.d(e,"ɵɵclassMapInterpolateV",(function(){return zd})),n.d(e,"ɵɵstyleProp",(function(){return Il})),n.d(e,"ɵɵstylePropInterpolate1",(function(){return Yd})),n.d(e,"ɵɵstylePropInterpolate2",(function(){return Hd})),n.d(e,"ɵɵstylePropInterpolate3",(function(){return Ud})),n.d(e,"ɵɵstylePropInterpolate4",(function(){return Wd})),n.d(e,"ɵɵstylePropInterpolate5",(function(){return Kd})),n.d(e,"ɵɵstylePropInterpolate6",(function(){return $d})),n.d(e,"ɵɵstylePropInterpolate7",(function(){return Zd})),n.d(e,"ɵɵstylePropInterpolate8",(function(){return Jd})),n.d(e,"ɵɵstylePropInterpolateV",(function(){return Qd})),n.d(e,"ɵɵstylingApply",(function(){return Pl})),n.d(e,"ɵɵclassProp",(function(){return Cl})),n.d(e,"ɵɵelementHostAttrs",(function(){return Ul})),n.d(e,"ɵɵselect",(function(){return wi})),n.d(e,"ɵɵtextBinding",(function(){return Od})),n.d(e,"ɵɵtemplate",(function(){return pl})),n.d(e,"ɵɵembeddedViewEnd",(function(){return Ql})),n.d(e,"ɵstore",(function(){return vl})),n.d(e,"ɵɵload",(function(){return _l})),n.d(e,"ɵɵpipe",(function(){return Up})),n.d(e,"ɵwhenRendered",(function(){return _c})),n.d(e,"ɵɵi18n",(function(){return dp})),n.d(e,"ɵɵi18nAttributes",(function(){return cp})),n.d(e,"ɵɵi18nExp",(function(){return gp})),n.d(e,"ɵɵi18nStart",(function(){return np})),n.d(e,"ɵɵi18nEnd",(function(){return sp})),n.d(e,"ɵɵi18nApply",(function(){return pp})),n.d(e,"ɵɵi18nPostprocess",(function(){return ip})),n.d(e,"ɵi18nConfigureLocalize",(function(){return Tp})),n.d(e,"ɵɵi18nLocalize",(function(){return Op})),n.d(e,"ɵsetLocaleId",(function(){return Ip})),n.d(e,"ɵsetClassMetadata",(function(){return Pp})),n.d(e,"ɵɵresolveWindow",(function(){return Tn})),n.d(e,"ɵɵresolveDocument",(function(){return wn})),n.d(e,"ɵɵresolveBody",(function(){return On})),n.d(e,"ɵcompileComponent",(function(){return Bb})),n.d(e,"ɵcompileDirective",(function(){return zb})),n.d(e,"ɵcompileNgModule",(function(){return Eb})),n.d(e,"ɵcompileNgModuleDefs",(function(){return Lb})),n.d(e,"ɵpatchComponentDefWithScope",(function(){return jb})),n.d(e,"ɵresetCompiledComponents",(function(){return Mb})),n.d(e,"ɵflushModuleScopingQueueAsMuchAsPossible",(function(){return Ab})),n.d(e,"ɵtransitiveScopesFor",(function(){return Fb})),n.d(e,"ɵcompilePipe",(function(){return tm})),n.d(e,"ɵɵsanitizeHtml",(function(){return wr})),n.d(e,"ɵɵsanitizeStyle",(function(){return Or})),n.d(e,"ɵɵdefaultStyleSanitizer",(function(){return Ar})),n.d(e,"ɵɵsanitizeScript",(function(){return Nr})),n.d(e,"ɵɵsanitizeUrl",(function(){return Sr})),n.d(e,"ɵɵsanitizeResourceUrl",(function(){return Ir})),n.d(e,"ɵɵsanitizeUrlOrResourceUrl",(function(){return Rr})),n.d(e,"ɵbypassSanitizationTrustHtml",(function(){return Fa})),n.d(e,"ɵbypassSanitizationTrustStyle",(function(){return Va})),n.d(e,"ɵbypassSanitizationTrustScript",(function(){return Ga})),n.d(e,"ɵbypassSanitizationTrustUrl",(function(){return Ba})),n.d(e,"ɵbypassSanitizationTrustResourceUrl",(function(){return za})),n.d(e,"ɵgetLContext",(function(){return Dr})),n.d(e,"ɵNG_ELEMENT_ID",(function(){return Lt})),n.d(e,"ɵNG_COMPONENT_DEF",(function(){return Nt})),n.d(e,"ɵNG_DIRECTIVE_DEF",(function(){return Ct})),n.d(e,"ɵNG_PIPE_DEF",(function(){return Rt})),n.d(e,"ɵNG_MODULE_DEF",(function(){return At})),n.d(e,"ɵNG_BASE_DEF",(function(){return Et})),n.d(e,"ɵNG_INJECTABLE_DEF",(function(){return M})),n.d(e,"ɵNG_INJECTOR_DEF",(function(){return q})),n.d(e,"ɵcompileNgModuleFactory__POST_R3__",(function(){return _y})),n.d(e,"ɵisBoundToModule__POST_R3__",(function(){return Ty})),n.d(e,"ɵSWITCH_COMPILE_COMPONENT__POST_R3__",(function(){return om})),n.d(e,"ɵSWITCH_COMPILE_DIRECTIVE__POST_R3__",(function(){return lm})),n.d(e,"ɵSWITCH_COMPILE_PIPE__POST_R3__",(function(){return dm})),n.d(e,"ɵSWITCH_COMPILE_NGMODULE__POST_R3__",(function(){return pm})),n.d(e,"ɵgetDebugNode__POST_R3__",(function(){return av})),n.d(e,"ɵSWITCH_COMPILE_INJECTABLE__POST_R3__",(function(){return Su})),n.d(e,"ɵSWITCH_IVY_ENABLED__POST_R3__",(function(){return Em})),n.d(e,"ɵSWITCH_CHANGE_DETECTOR_REF_FACTORY__POST_R3__",(function(){return tu})),n.d(e,"ɵCompiler_compileModuleSync__POST_R3__",(function(){return Mm})),n.d(e,"ɵCompiler_compileModuleAsync__POST_R3__",(function(){return jm})),n.d(e,"ɵCompiler_compileModuleAndAllComponentsSync__POST_R3__",(function(){return Vm})),n.d(e,"ɵCompiler_compileModuleAndAllComponentsAsync__POST_R3__",(function(){return Bm})),n.d(e,"ɵSWITCH_ELEMENT_REF_FACTORY__POST_R3__",(function(){return $c})),n.d(e,"ɵSWITCH_TEMPLATE_REF_FACTORY__POST_R3__",(function(){return Sf})),n.d(e,"ɵSWITCH_VIEW_CONTAINER_REF_FACTORY__POST_R3__",(function(){return Cf})),n.d(e,"ɵSWITCH_RENDERER2_FACTORY__POST_R3__",(function(){return rf})),n.d(e,"ɵgetModuleFactory__POST_R3__",(function(){return My})),n.d(e,"ɵregisterNgModuleType",(function(){return Ap})),n.d(e,"ɵpublishGlobalUtil",(function(){return pc})),n.d(e,"ɵpublishDefaultGlobalUtils",(function(){return gc})),n.d(e,"ɵcreateInjector",(function(){return Lu})),n.d(e,"ɵINJECTOR_IMPL__POST_R3__",(function(){return Vu})),n.d(e,"ɵregisterModuleFactory",(function(){return Cp})),n.d(e,"ɵEMPTY_ARRAY",(function(){return Th})),n.d(e,"ɵEMPTY_MAP",(function(){return wh})),n.d(e,"ɵand",(function(){return pv})),n.d(e,"ɵccf",(function(){return Mh})),n.d(e,"ɵcmf",(function(){return Yx})),n.d(e,"ɵcrt",(function(){return Uf})),n.d(e,"ɵdid",(function(){return ug})),n.d(e,"ɵeld",(function(){return bv})),n.d(e,"ɵgetComponentViewDefinitionFactory",(function(){return qh})),n.d(e,"ɵinlineInterpolate",(function(){return xh})),n.d(e,"ɵinterpolate",(function(){return vh})),n.d(e,"ɵmod",(function(){return Rh})),n.d(e,"ɵmpd",(function(){return Ch})),n.d(e,"ɵncd",(function(){return Iv})),n.d(e,"ɵnov",(function(){return Kh})),n.d(e,"ɵpid",(function(){return og})),n.d(e,"ɵprd",(function(){return lg})),n.d(e,"ɵpad",(function(){return Rv})),n.d(e,"ɵpod",(function(){return Av})),n.d(e,"ɵppd",(function(){return Cv})),n.d(e,"ɵqud",(function(){return _v})),n.d(e,"ɵted",(function(){return Ev})),n.d(e,"ɵunv",(function(){return Hf})),n.d(e,"ɵvid",(function(){return Pv}));const p="__annotations__",b="__parameters__",m="__prop__metadata__";function y(t,e,n,a,r){const i=v(e);function s(...t){if(this instanceof s)return i.call(this,...t),this;const e=new s(...t);return function(n){return r&&r(n,...t),(n.hasOwnProperty(p)?n[p]:Object.defineProperty(n,p,{value:[]})[p]).push(e),a&&a(n),n}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s}function v(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}function x(t,e,n){const a=v(e);function r(...t){if(this instanceof r)return a.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,a){const r=t.hasOwnProperty(b)?t[b]:Object.defineProperty(t,b,{value:[]})[b];for(;r.length<=a;)r.push(null);return(r[a]=r[a]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r}function _(t,e,n,a){const r=v(e);function i(...t){if(this instanceof i)return r.apply(this,t),this;const e=new i(...t);return function(n,r){const i=n.constructor,s=i.hasOwnProperty(m)?i[m]:Object.defineProperty(i,m,{value:{}})[m];s[r]=s.hasOwnProperty(r)&&s[r]||[],s[r].unshift(e),a&&a(n,r,...t)}}return n&&(i.prototype=Object.create(n.prototype)),i.prototype.ngMetadataName=t,i.annotationCls=i,i}const T=x("Inject",t=>({token:t})),w=x("Optional"),O=x("Self"),S=x("SkipSelf"),I=x("Host"),N=x("Attribute",t=>({attributeName:t}));var C=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});function R(t){for(let e in t)if(t[e]===R)return e;throw Error("Could not find renamed property on target object.")}function A(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function k(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}const E=k;function L(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function D(t){const e=t[M];return e&&e.token===t?e:null}function P(t){return t&&t.hasOwnProperty(q)?t[q]:null}const M=R({ngInjectableDef:R}),q=R({ngInjectorDef:R});function j(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(j).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const F=R({__forward_ref__:R});function V(t){return t.__forward_ref__=V,t.toString=function(){return j(this())},t}function G(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(F)&&e.__forward_ref__===V?e():t}const B="undefined"!=typeof globalThis&&globalThis,z="undefined"!=typeof window&&window,Y="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,H="undefined"!=typeof global&&global,U=B||H||z||Y;function W(){const t=U.ng;if(!t||!t.ɵcompilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n  - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n  - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n  - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return t.ɵcompilerFacade}class K{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=k({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}const $=new K("INJECTOR",-1),Z=new Object,J=/\n/gm,Q=R({provide:String,useValue:R});let X,tt=void 0;function et(t){const e=tt;return tt=t,e}function nt(t){const e=X;return X=t,e}function at(t,e=C.Default){if(void 0===tt)throw new Error("inject() must be called from an injection context");return null===tt?st(t,void 0,e):tt.get(t,e&C.Optional?null:void 0,e)}function rt(t,e=C.Default){return(X||at)(t,e)}const it=rt;function st(t,e,n){const a=D(t);if(a&&"root"==a.providedIn)return void 0===a.value?a.value=a.factory():a.value;if(n&C.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${j(t)}]`)}function ut(t){const e=[];for(let n=0;n<t.length;n++){const a=G(t[n]);if(Array.isArray(a)){if(0===a.length)throw new Error("Arguments array must have arguments.");let t=void 0,n=C.Default;for(let e=0;e<a.length;e++){const r=a[e];r instanceof w||"Optional"===r.ngMetadataName||r===w?n|=C.Optional:r instanceof S||"SkipSelf"===r.ngMetadataName||r===S?n|=C.SkipSelf:r instanceof O||"Self"===r.ngMetadataName||r===O?n|=C.Self:t=r instanceof T||r===T?r.token:r}e.push(rt(t,n))}else e.push(rt(a))}return e}class ot{get(t,e=Z){if(e===Z){const e=new Error(`NullInjectorError: No provider for ${j(t)}!`);throw e.name="NullInjectorError",e}return e}}function lt(t,e,n,a){const r=t.ngTempTokenPath;throw e.__source&&r.unshift(e.__source),t.message=dt("\n"+t.message,r,n,a),t.ngTokenPath=r,t.ngTempTokenPath=null,t}function dt(t,e,n,a=null){t=t&&"\n"===t.charAt(0)&&"ɵ"==t.charAt(1)?t.substr(2):t;let r=j(e);if(e instanceof Array)r=e.map(j).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let a=e[n];t.push(n+":"+("string"==typeof a?JSON.stringify(a):j(a)))}r=`{${t.join(", ")}}`}return`${n}${a?"("+a+")":""}[${r}]: ${t.replace(J,"\n  ")}`}const ct={"ɵɵdefineInjectable":k,"ɵɵdefineInjector":L,"ɵɵinject":rt,"ɵɵgetFactoryOf":function(t){const e=t,n=D(e)||P(e);return n&&void 0!==n.factory?n.factory:null}};class ft{}class ht{}function gt(t,e){for(let n=0;n<t.length;n++)e.push(t[n])}function pt(t,e){void 0===e&&(e=t);for(let n=0;n<t.length;n++){let a=t[n];Array.isArray(a)?(e===t&&(e=t.slice(0,n)),pt(a,e)):e!==t&&e.push(a)}return e}function bt(t,e){t.forEach(t=>Array.isArray(t)?bt(t,e):e(t))}function mt(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function yt(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function vt(t){throw new Error("ASSERTION ERROR: "+t)}const xt=function(){var t={OnPush:0,Default:1};return t[t.OnPush]="OnPush",t[t.Default]="Default",t}(),_t=function(){var t={CheckOnce:0,Checked:1,CheckAlways:2,Detached:3,Errored:4,Destroyed:5};return t[t.CheckOnce]="CheckOnce",t[t.Checked]="Checked",t[t.CheckAlways]="CheckAlways",t[t.Detached]="Detached",t[t.Errored]="Errored",t[t.Destroyed]="Destroyed",t}();function Tt(t){return null==t||t===xt.Default}const wt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}();function Ot(t){return""+{toString:t}}const St={},It=[],Nt=R({ngComponentDef:R}),Ct=R({ngDirectiveDef:R}),Rt=R({ngPipeDef:R}),At=R({ngModuleDef:R}),kt=R({ngLocaleIdDef:R}),Et=R({ngBaseDef:R}),Lt=R({__NG_ELEMENT_ID__:R});let Dt=0;function Pt(t){const e=t.type,n=e.prototype,a={},r={type:e,providersResolver:null,consts:t.consts,vars:t.vars,factory:t.factory,template:t.template||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,contentQueries:t.contentQueries||null,declaredInputs:a,inputs:null,outputs:null,exportAs:t.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:t.changeDetection===xt.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||wt.Emulated,id:"c",styles:t.styles||It,_:null,setInput:null,schemas:t.schemas||null,tView:null};return r._=Ot(()=>{const n=t.directives,i=t.features,s=t.pipes;r.id+=Dt++,r.inputs=Gt(t.inputs,a),r.outputs=Gt(t.outputs),i&&i.forEach(t=>t(r)),r.directiveDefs=n?()=>("function"==typeof n?n():n).map(qt):null,r.pipeDefs=s?()=>("function"==typeof s?s():s).map(jt):null,e.hasOwnProperty(M)||(e[M]=k({token:e,factory:t.factory}))}),r}function Mt(t,e,n){const a=t.ngComponentDef;a.directiveDefs=()=>e.map(qt),a.pipeDefs=()=>n.map(jt)}function qt(t){return Ht(t)||Ut(t)}function jt(t){return Wt(t)}function Ft(t){return{type:t.type,bootstrap:t.bootstrap||It,declarations:t.declarations||It,imports:t.imports||It,exports:t.exports||It,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null}}function Vt(t,e){return Ot(()=>{const n=$t(t,!0);n.declarations=e.declarations||It,n.imports=e.imports||It,n.exports=e.exports||It})}function Gt(t,e){if(null==t)return St;const n={};for(const a in t)if(t.hasOwnProperty(a)){let r=t[a],i=r;Array.isArray(r)&&(i=r[1],r=r[0]),n[r]=a,e&&(e[r]=i)}return n}function Bt(t){const e={};return{inputs:Gt(t.inputs,e),declaredInputs:e,outputs:Gt(t.outputs),viewQuery:t.viewQuery||null,contentQueries:t.contentQueries||null,hostBindings:t.hostBindings||null}}const zt=Pt;function Yt(t){return{name:t.name,factory:t.factory,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function Ht(t){return t[Nt]||null}function Ut(t){return t[Ct]||null}function Wt(t){return t[Rt]||null}function Kt(t){return t[Et]||null}function $t(t,e){const n=t[At]||null;if(!n&&!0===e)throw new Error(`Type ${j(t)} does not have 'ngModuleDef' property.`);return n}function Zt(t){return Array.isArray(t)&&"object"==typeof t[1]}function Jt(t){return Array.isArray(t)&&!0===t[1]}function Qt(t){return 0!=(4&t.flags)}function Xt(t){return 1==(1&t.flags)}function te(t){return null!==t.template}function ee(t){return 0!=(512&t[2])}class ne{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function ae(t,e,n,a,r,i){const{onChanges:s,onInit:u,doCheck:o}=e;r>=0&&(!n.preOrderHooks||r===n.preOrderHooks.length)&&(s||u||o)&&(n.preOrderHooks||(n.preOrderHooks=[])).push(a),i>=0&&(!n.preOrderCheckHooks||i===n.preOrderCheckHooks.length)&&(s||o)&&(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(a),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,s)),u&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-t,u),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}function re(t,e){if(t.firstTemplatePass)for(let n=e.directiveStart,a=e.directiveEnd;n<a;n++){const e=t.data[n];e.afterContentInit&&(t.contentHooks||(t.contentHooks=[])).push(-n,e.afterContentInit),e.afterContentChecked&&((t.contentHooks||(t.contentHooks=[])).push(n,e.afterContentChecked),(t.contentCheckHooks||(t.contentCheckHooks=[])).push(n,e.afterContentChecked)),e.afterViewInit&&(t.viewHooks||(t.viewHooks=[])).push(-n,e.afterViewInit),e.afterViewChecked&&((t.viewHooks||(t.viewHooks=[])).push(n,e.afterViewChecked),(t.viewCheckHooks||(t.viewCheckHooks=[])).push(n,e.afterViewChecked)),null!=e.onDestroy&&(t.destroyHooks||(t.destroyHooks=[])).push(n,e.onDestroy)}}function ie(t,e,n,a){n||se(t,e.preOrderHooks,e.preOrderCheckHooks,n,0,void 0!==a?a:null)}function se(t,e,n,a,r,i){if(a)return;const s=(3&t[2])===r?e:n;s&&function(t,e,n,a){const r=null!=a?a:-1;let i=0;for(let s=void 0!==a?65535&t[18]:0;s<e.length;s++)if("number"==typeof e[s+1]){if(i=e[s],null!=a&&i>=a)break}else e[s]<0&&(t[18]+=65536),(i<r||-1==r)&&(ue(t,n,e,s),t[18]=(4294901760&t[18])+s+2),s++}(t,s,r,i),null==i&&(3&t[2])===r&&3!==r&&(t[2]&=1023,t[2]+=1)}function ue(t,e,n,a){const r=n[a]<0,i=n[a+1],s=t[r?-n[a]:n[a]];r?t[2]>>10<t[18]>>16&&(3&t[2])===e&&(t[2]+=1024,i.call(s)):i.call(s)}let oe=null;const le=new Map;let de,ce=null;function fe(t,e){return ce&&t===ce||(ce=t,e&&(oe=le.get(t)||null),oe=oe||{classesBitMask:0,classesIndex:1,stylesBitMask:0,stylesIndex:1}),oe}function he(){oe=null,ce=null}function ge(t){for(;Array.isArray(t);)t=t[0];return t}function pe(t,e){return ge(e[t+19])}function be(t,e){return ge(e[t.index])}function me(t,e){const n=t.index;return-1==n?null:ge(e[n])}function ye(t,e){return e[1].data[t+19]}function ve(t,e){return t[e+19]}function xe(t,e){const n=e[t];return Zt(n)?n:n[0]}function _e(t){return t.__ngContext__}function Te(t){const e=_e(t);return e?Array.isArray(e)?e:e.lView:null}function we(t){t[18]=0}let Oe,Se=null;function Ie(t){Se=t}function Ne(){return Oe}function Ce(){Oe=!0}function Re(){Oe=!1}function Ae(){return Le}let ke,Ee,Le,De=1,Pe=0,Me=0;function qe(t=null){un!==t&&(ln(null==t?-1:t),De=null==t?0:1,Pe=0,Me=0)}function je(){De+=1+Me,Pe=0,Me=0}function Fe(t){Pe+=t,Me=Math.max(Me,Pe)}function Ve(t){We=t}function Ge(){return ke}function Be(t,e){ke=t,Ee=e}function ze(t,e){ke=t,Le=e}function Ye(){return Ee}function He(){Ee=!1}function Ue(t=Le){return 4==(4&t[2])}let We=null,Ke=!1;function $e(){return Ke}function Ze(t){Ke=t}let Je=-1;function Qe(){return Je}function Xe(t){Je=t}let tn=0;function en(){return tn}function nn(t){tn=t}function an(t,e){const n=Le;return t&&(Je=t[1].bindingStartIndex),ke=e,Ee=!0,Le=We=t,n}function rn(t=1){return We=function(t,e){for(;t>0;)e=e[16],t--;return e}(t,We),We[9]}function sn(t,e){const n=Le[1];if(Ue(Le))Le[2]&=-5;else try{we(Le),e&&se(Le,n.viewHooks,n.viewCheckHooks,Ke,2,void 0)}finally{Le[2]&=-73,Le[7]=n.bindingStartIndex}an(t,null)}let un=-1;function on(){return un}function ln(t){un=t,he()}let dn,cn=null;function fn(){cn="http://www.w3.org/2000/svg"}function hn(){cn="http://www.w3.org/1998/MathML/"}function gn(){pn()}function pn(){cn=null}function bn(t){dn=t}function mn(){return dn}function yn(t,e){return!(t!=t&&e!=e)&&t!==e}function vn(t){return"string"==typeof t?t:null==t?"":""+t}function xn(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():vn(t)}const _n=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(U))();function Tn(t){return{name:"window",target:t.ownerDocument.defaultView}}function wn(t){return{name:"document",target:t.ownerDocument}}function On(t){return{name:"body",target:t.ownerDocument.body}}function Sn(t){return t.indexOf("�")>=0}function In(t){return t instanceof Function?t():t}function Nn(t,e){0===e?t[2]>0&&function(t){Rn(t,2|Cn(t))}(t):t[2]=e}function Cn(t){return t[1]}function Rn(t,e){t[1]=e}function An(t,e){return t[e+2]}function kn(t,e){return 1&t[e+0]}function En(t,e){return(1&kn(t,e))>0}function Ln(t,e){return t[e+0]>>1}function Dn(t,e,n){const a=kn(t,e);t[e+0]=a|n<<1}function Pn(t,e){return t[e+1]}function Mn(t,e,n){return t[e+3+n]}function qn(t,e){return!(!t||e!==t[2])}function jn(t){return(1&Cn(t))>0}function Fn(t){return(2&Cn(t))>0}function Vn(t){return 6+t[4]}function Gn(t,e){let n=Array.isArray(t)?t[0]:t,a=Array.isArray(e)?e[0]:e;return n instanceof String&&(n=n.toString()),a instanceof String&&(a=a.toString()),yn(n,a)}function Bn(t){return null!=t&&""!==t}function zn(t,e,n=" "){return t+(e.length&&t.length?n:"")+e}function Yn(t){return t.replace(/[a-z][A-Z]/g,t=>t.charAt(0)+"-"+t.charAt(1)).toLowerCase()}function Hn(t){return Un(t)?t[0]:t}function Un(t){return Array.isArray(t)&&t.length>=6&&"string"!=typeof t[1]}function Wn(t){const e=Hn(t);return e&&e[0]||""}function Kn(t){return 0!=(8&t.flags)}function $n(t){return 0!=(16&t.flags)}function Zn(t,e){return t[e+0]}function Jn(t,e,n){t[e+1]=n}function Qn(t,e){return t[e+1]}const Xn=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}();function ta(t){return!!t.listen}const ea={createRenderer:(t,e)=>document};function na(t,e){const n=Ae()[12],a=ta(n);let r=0;for(;r<e.length;){const i=e[r];if("number"==typeof i){if(0!==i)break;r++;const s=e[r++],u=e[r++],o=e[r++];a?n.setAttribute(t,u,o,s):t.setAttributeNS(s,u,o)}else{const s=i,u=e[++r];ra(s)?a&&n.setProperty(t,s,u):a?n.setAttribute(t,s,u):t.setAttribute(s,u),r++}}return r}function aa(t){return 3===t||4===t||6===t}function ra(t){return"@"===t[0]}function ia(t){return-1!==t}function sa(t){return 32767&t}function ua(t){return t>>16}function oa(t,e){let n=ua(t),a=e;for(;n>0;)a=a[16],n--;return a}function la(t){const e=t[3];return Jt(e)?e[3]:e}function da(t){let e=t[6];for(;null!==e&&2===e.type;)e=(t=t[16])[6];return t}function ca(t){return function(t){let e=Zt(t)?t:Te(t);for(;e&&!(512&e[2]);)e=la(e);return e}(t)[9]}let fa=!0;function ha(t){const e=fa;return fa=t,e}let ga=0;function pa(t,e){const n=ma(t,e);if(-1!==n)return n;const a=e[1];a.firstTemplatePass&&(t.injectorIndex=e.length,ba(a.data,t),ba(e,null),ba(a.blueprint,null));const r=ya(t,e),i=sa(r),s=oa(r,e),u=t.injectorIndex;if(ia(r)){const t=s[1].data;for(let n=0;n<8;n++)e[u+n]=s[i+n]|t[i+n]}return e[u+8]=r,u}function ba(t,e){t.push(0,0,0,0,0,0,0,0,e)}function ma(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null==e[t.injectorIndex+8]?-1:t.injectorIndex}function ya(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=e[6],a=1;for(;n&&-1===n.injectorIndex;)n=(e=e[16])?e[6]:null,a++;return n?n.injectorIndex|a<<16:-1}function va(t,e,n){!function(t,e,n){let a="string"!=typeof n?n[Lt]:n.charCodeAt(0)||0;null==a&&(a=n[Lt]=ga++);const r=255&a,i=1<<r,s=64&r,u=32&r,o=e.data;128&r?s?u?o[t+7]|=i:o[t+6]|=i:u?o[t+5]|=i:o[t+4]|=i:s?u?o[t+3]|=i:o[t+2]|=i:u?o[t+1]|=i:o[t]|=i}(t,e,n)}function xa(t,e){if("class"===e)return Wn(t.classes);if("style"===e)return Wn(t.styles);const n=t.attrs;if(n){const t=n.length;let a=0;for(;a<t;){const r=n[a];if(aa(r))break;if(0===r)a+=2;else if("number"==typeof r)for(a++;a<t&&"string"==typeof n[a];)a++;else{if(r===e)return n[a+1];a+=2}}}return null}function _a(t,e,n,a=C.Default,r){if(t){const r=function(t){if("string"==typeof t)return t.charCodeAt(0)||0;const e=t[Lt];return"number"==typeof e&&e>0?255&e:e}(n);if("function"==typeof r){const i=Ge(),s=Ae();ze(t,e);try{const t=r();if(null!=t||a&C.Optional)return t;throw new Error(`No provider for ${xn(n)}!`)}finally{ze(i,s)}}else if("number"==typeof r){if(-1===r)return new Ca(t,e);let i=null,s=ma(t,e),u=-1,o=a&C.Host?da(e)[6]:null;for((-1===s||a&C.SkipSelf)&&(u=-1===s?ya(t,e):e[s+8],Na(a,!1)?(i=e[1],s=sa(u),e=oa(u,e)):s=-1);-1!==s;){u=e[s+8];const t=e[1];if(Ia(r,s,t.data)){const t=wa(s,e,n,i,a,o);if(t!==Ta)return t}Na(a,e[1].data[s+8]===o)&&Ia(r,s,e)?(i=t,s=sa(u),e=oa(u,e)):s=-1}}}if(a&C.Optional&&void 0===r&&(r=null),0==(a&(C.Self|C.Host))){const t=e[10],i=nt(void 0);try{return t?t.get(n,r,a&C.Optional):st(n,r,a&C.Optional)}finally{nt(i)}}if(a&C.Optional)return r;throw new Error(`NodeInjector: NOT_FOUND [${xn(n)}]`)}const Ta={};function wa(t,e,n,a,r,i){const s=e[1],u=s.data[t+8],o=Oa(u,s,n,null==a?Xt(u)&&fa:a!=s&&3===u.type,r&C.Host&&i===u);return null!==o?Sa(s.data,e,o,u):Ta}function Oa(t,e,n,a,r){const i=t.providerIndexes,s=e.data,u=65535&i,o=t.directiveStart,l=i>>16,d=r?u+l:t.directiveEnd;for(let c=a?u:u+l;c<d;c++){const t=s[c];if(c<o&&n===t||c>=o&&t.type===n)return c}if(r){const t=s[o];if(t&&te(t)&&t.type===n)return o}return null}function Sa(t,e,n,a){let r=e[n];if(null!==(i=r)&&"object"==typeof i&&Object.getPrototypeOf(i)==ne.prototype){const i=r;if(i.resolving)throw new Error("Circular dep for "+xn(t[n]));const s=ha(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=nt(i.injectImpl));const o=Ge(),l=Ae();ze(a,e);try{r=e[n]=i.factory(void 0,t,e,a)}finally{i.injectImpl&&nt(u),ha(s),i.resolving=!1,ze(o,l)}}var i;return r}function Ia(t,e,n){const a=64&t,r=32&t;let i;return i=128&t?a?r?n[e+7]:n[e+6]:r?n[e+5]:n[e+4]:a?r?n[e+3]:n[e+2]:r?n[e+1]:n[e],!!(i&1<<t)}function Na(t,e){return!(t&C.Self||t&C.Host&&e)}class Ca{constructor(t,e){this._tNode=t,this._lView=e}get(t,e){return _a(this._tNode,this._lView,t,void 0,e)}}function Ra(t){const e=t,n=Ht(e)||Ut(e)||Wt(e)||D(e)||P(e);return n&&void 0!==n.factory?n.factory:null}function Aa(t){const e=Ra(Object.getPrototypeOf(t.prototype).constructor);return null!==e?e:t=>new t}function ka(t){return t.ngDebugContext}function Ea(t){return t.ngOriginalError}function La(t,...e){t.error(...e)}class Da{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),a=function(t){return t.ngErrorLogger||La}(t);a(this._console,"ERROR",t),e&&a(this._console,"ORIGINAL ERROR",e),n&&a(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ka(t)?ka(t):this._findContext(Ea(t)):null}_findOriginalError(t){let e=Ea(t);for(;e&&Ea(e);)e=Ea(e);return e}}const Pa={name:"custom-elements"},Ma={name:"no-errors-schema"},qa="__SANITIZER_TRUSTED_BRAND__";function ja(t,e){return t instanceof String&&t[qa]===e}function Fa(t){return Ya(t,"Html")}function Va(t){return Ya(t,"Style")}function Ga(t){return Ya(t,"Script")}function Ba(t){return Ya(t,"Url")}function za(t){return Ya(t,"ResourceUrl")}function Ya(t,e){const n=new String(t);return n[qa]=e,n}let Ha=!0,Ua=!1;function Wa(){return Ua=!0,Ha}function Ka(){if(Ua)throw new Error("Cannot enable prod mode after platform setup.");Ha=!1}class $a{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='<svg><g onload="this.parentNode.remove()"></g></svg>',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='<svg><p><style><img src="</style><img src=x onerror=alert(1)//">',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t="<body><remove></remove>"+t+"</body>";try{t=encodeURI(t)}catch(a){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t="<body><remove></remove>"+t+"</body>";try{const e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let a=e.length-1;0<a;a--){const n=e.item(a).name;"xmlns:ns1"!==n&&0!==n.indexOf("ns1:")||t.removeAttribute(n)}let n=t.firstChild;for(;n;)n.nodeType===Node.ELEMENT_NODE&&this.stripCustomNsAttrs(n),n=n.nextSibling}}const Za=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,Ja=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+\/]+=*$/i;function Qa(t){return(t=String(t)).match(Za)||t.match(Ja)?t:(Wa()&&console.warn(`WARNING: sanitizing unsafe URL value ${t} (see http://g.co/ng/security#xss)`),"unsafe:"+t)}function Xa(t){return(t=String(t)).split(",").map(t=>Qa(t.trim())).join(", ")}function tr(t){const e={};for(const n of t.split(","))e[n]=!0;return e}function er(...t){const e={};for(const n of t)for(const t in n)n.hasOwnProperty(t)&&(e[t]=!0);return e}const nr=tr("area,br,col,hr,img,wbr"),ar=tr("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),rr=tr("rp,rt"),ir=er(rr,ar),sr=er(nr,er(ar,tr("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),er(rr,tr("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),ir),ur=tr("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),or=tr("srcset"),lr=er(ur,or,tr("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),tr("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),dr=tr("script,style,template");class cr{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let e=t.firstChild,n=!0;for(;e;)if(e.nodeType===Node.ELEMENT_NODE?n=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,n&&e.firstChild)e=e.firstChild;else for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let t=this.checkClobberedElement(e,e.nextSibling);if(t){e=t;break}e=this.checkClobberedElement(e,e.parentNode)}return this.buf.join("")}startElement(t){const e=t.nodeName.toLowerCase();if(!sr.hasOwnProperty(e))return this.sanitizedSomething=!0,!dr.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);const n=t.attributes;for(let a=0;a<n.length;a++){const t=n.item(a),e=t.name,r=e.toLowerCase();if(!lr.hasOwnProperty(r)){this.sanitizedSomething=!0;continue}let i=t.value;ur[r]&&(i=Qa(i)),or[r]&&(i=Xa(i)),this.buf.push(" ",e,'="',gr(i),'"')}return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();sr.hasOwnProperty(e)&&!nr.hasOwnProperty(e)&&(this.buf.push("</"),this.buf.push(e),this.buf.push(">"))}chars(t){this.buf.push(gr(t))}checkClobberedElement(t,e){if(e&&(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+t.outerHTML);return e}}const fr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,hr=/([^\#-~ |!])/g;function gr(t){return t.replace(/&/g,"&amp;").replace(fr,(function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"})).replace(hr,(function(t){return"&#"+t.charCodeAt(0)+";"})).replace(/</g,"&lt;").replace(/>/g,"&gt;")}let pr;function br(t,e){let n=null;try{pr=pr||new $a(t);let a=e?String(e):"";n=pr.getInertBodyElement(a);let r=5,i=a;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,a=i,i=n.innerHTML,n=pr.getInertBodyElement(a)}while(a!==i);const s=new cr,u=s.sanitizeChildren(mr(n)||n);return Wa()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),u}finally{if(n){const t=mr(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function mr(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const yr=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class vr{}const xr=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|Z|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),_r=/^url\(([^)]+)\)$/;function Tr(t){if(!(t=String(t).trim()))return"";const e=t.match(_r);return e&&Qa(e[1])===e[1]||t.match(xr)&&function(t){let e=!0,n=!0;for(let a=0;a<t.length;a++){const r=t.charAt(a);"'"===r&&n?e=!e:'"'===r&&e&&(n=!n)}return e&&n}(t)?t:(Wa()&&console.warn(`WARNING: sanitizing unsafe style value ${t} (see http://g.co/ng/security#xss).`),"unsafe")}function wr(t){const e=kr();return e?e.sanitize(yr.HTML,t)||"":ja(t,"Html")?t.toString():br(document,vn(t))}function Or(t){const e=kr();return e?e.sanitize(yr.STYLE,t)||"":ja(t,"Style")?t.toString():Tr(vn(t))}function Sr(t){const e=kr();return e?e.sanitize(yr.URL,t)||"":ja(t,"Url")?t.toString():Qa(vn(t))}function Ir(t){const e=kr();if(e)return e.sanitize(yr.RESOURCE_URL,t)||"";if(ja(t,"ResourceUrl"))return t.toString();throw new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)")}function Nr(t){const e=kr();if(e)return e.sanitize(yr.SCRIPT,t)||"";if(ja(t,"Script"))return t.toString();throw new Error("unsafe value used in a script context")}function Cr(t,e){return"src"===e&&("embed"===t||"frame"===t||"iframe"===t||"media"===t||"script"===t)||"href"===e&&("base"===t||"link"===t)?Ir:Sr}function Rr(t,e,n){return Cr(e,n)(t)}const Ar=function(t,e,n){let a=!0;return 1&(n=n||3)&&(a="background-image"===t||"background"===t||"border-image"===t||"filter"===t||"list-style"===t||"list-style-image"===t||"clip-path"===t),2&n?a?Or(e):e:a};function kr(){const t=Ae();return t&&t[13]}const Er=/([A-Z])/g;function Lr(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Dr(t){let e=_e(t);if(e){if(Array.isArray(e)){const a=e;let r,i=void 0,s=void 0;if((n=t)&&n.constructor&&n.constructor.ngComponentDef){if(r=Vr(a,t),-1==r)throw new Error("The provided component was not found in the application");i=t}else if(function(t){return t&&t.constructor&&t.constructor.ngDirectiveDef}(t)){if(r=function(t,e){let n=t[1].firstChild;for(;n;){const a=n.directiveEnd;for(let r=n.directiveStart;r<a;r++)if(t[r]===e)return n.index;n=Fr(n)}return-1}(a,t),-1==r)throw new Error("The provided directive was not found in the application");s=Gr(r,a,!1)}else if(r=jr(a,t),-1==r)return null;const u=ge(a[r]),o=_e(u),l=o&&!Array.isArray(o)?o:Pr(a,r,u);if(i&&void 0===l.component&&(l.component=i,qr(l.component,l)),s&&void 0===l.directives){l.directives=s;for(let t=0;t<s.length;t++)qr(s[t],l)}qr(l.native,l),e=l}}else{const n=t;let a=n;for(;a=a.parentNode;){const t=_e(a);if(t){let a;if(a=Array.isArray(t)?t:t.lView,!a)return null;const r=jr(a,n);if(r>=0){const t=ge(a[r]),n=Pr(a,r,t);qr(t,n),e=n;break}}}}var n;return e||null}function Pr(t,e,n){return{lView:t,nodeIndex:e,native:n,component:void 0,directives:void 0,localRefs:void 0}}function Mr(t){let e,n=_e(t);if(Array.isArray(n)){const a=Vr(n,t);e=xe(a,n);const r=Pr(n,a,e[0]);r.component=t,qr(t,r),qr(r.native,r)}else e=xe(n.nodeIndex,n.lView);return e}function qr(t,e){t.__ngContext__=e}function jr(t,e){let n=t[1].firstChild;for(;n;){if(me(n,t)===e)return n.index;n=Fr(n)}return-1}function Fr(t){if(t.child)return t.child;if(t.next)return t.next;for(;t.parent&&!t.parent.next;)t=t.parent;return t.parent&&t.parent.next}function Vr(t,e){const n=t[1].components;if(n)for(let a=0;a<n.length;a++){const r=n[a];if(xe(r,t)[9]===e)return r}else if(xe(19,t)[9]===e)return 19;return-1}function Gr(t,e,n){const a=e[1].data[t];let r=a.directiveStart;return 0==r?It:(!n&&1&a.flags&&r++,e.slice(r,a.directiveEnd))}function Br(t){throw new Error("Multiple components match node with tagname "+t.tagName)}function zr(){throw new Error("Cannot mix multi providers and regular providers")}function Yr(t,e){const n=t.length,a=t.indexOf(e),r=a+e.length;return!(-1===a||a>0&&" "!==t[a-1]||r<n&&" "!==t[r])}function Hr(t,e,n){return e===(0!==t.type||n?t.tagName:"ng-template")}function Ur(t,e,n){let a=4;const r=t.attrs||[],i=function(t){for(let e=0;e<t.length;e++)if(aa(t[e]))return e;return t.length}(r);let s=!1;for(let u=0;u<e.length;u++){const o=e[u];if("number"!=typeof o){if(!s)if(4&a){if(a=2|1&a,""!==o&&!Hr(t,o,n)||""===o&&1===e.length){if(Wr(a))return!1;s=!0}}else{const l=8&a?o:e[++u];if(8&a&&t.classes){if(!Yr(Wn(t.classes),l)){if(Wr(a))return!1;s=!0}continue}const d=Kr(8&a?"class":o,r,0==t.type&&"ng-template"!==t.tagName,n);if(-1===d){if(Wr(a))return!1;s=!0;continue}if(""!==l){let t;t=d>i?"":r[d+1];const e=8&a?t:null;if(e&&!Yr(e,l)||2&a&&l!==t){if(Wr(a))return!1;s=!0}}}}else{if(!s&&!Wr(a)&&!Wr(o))return!1;if(s&&Wr(o))continue;s=!1,a=o|1&a}}return Wr(a)||s}function Wr(t){return 0==(1&t)}function Kr(t,e,n,a){if(null===e)return-1;let r=0;if(a||!n){let n=!1;for(;r<e.length;){const a=e[r];if(a===t)return r;if(3===a||6===a)n=!0;else{if(1===a){let t=e[++r];for(;"string"==typeof t;)t=e[++r];continue}if(4===a)break;if(0===a){r+=4;continue}}r+=n?1:2}return-1}return function(t,e){let n=t.indexOf(4);if(n>-1)for(n++;n<t.length;){if(t[n]===e)return n;n++}return-1}(e,t)}function $r(t,e,n=!1){for(let a=0;a<e.length;a++)if(Ur(t,e[a],n))return!0;return!1}function Zr(t,e){t:for(let n=0;n<e.length;n++){const a=e[n];if(t.length===a.length){for(let e=0;e<t.length;e++)if(t[e]!==a[e])continue t;return!0}}return!1}let Jr=[];function Qr(t,e,n,a,r,i,s,u){const o=!a,l=fe(n,Fn(t)),d=o?0:l.classesIndex++;return!(!ti(t,e,d,a,r,i,s,u,!1)&&!u||(l.classesBitMask|=1<<d,0))}function Xr(t,e,n,a,r,i,s,u,o){const l=!a,d=fe(n,Fn(t)),c=l?0:d.stylesIndex++;return!(!ti(t,e,c,a,r,i,u,o,!!l||!!s&&s(a,null,1))&&!o||(d.stylesBitMask|=1<<c,0))}function ti(t,e,n,a,r,i,s,u,o){jn(t)||(s?function(t,e,n,a,r){Jr.unshift(t,e,n,a,r)}(t,n,a,r,o):(Jr.length&&ei(),ni(t,n,a,r,o)));const l=u||Gn(e[r],i);return l&&(e[r]=i),l}function ei(){let t=0;for(;t<Jr.length;)ni(Jr[t++],Jr[t++],Jr[t++],Jr[t++],Jr[t++]);Jr.length=0}function ni(t,e,n,a,r){let i=!1;if(n){let s=!1,u=Vn(t);for(;u<t.length;){const i=Pn(t,u),o=An(t,u);if(s=n<=o,s){n<o&&ai(t,u,n,r),ri(t,!1,u,a,e);break}u+=3+i}s||(ai(t,t.length,n,r),ri(t,!1,u,a,e),i=!0)}else ri(t,!0,3,a,e),i=!0;return i}function ai(t,e,n,a){t.splice(e,0,a?1:0,1,n,null),Dn(t,e,1)}function ri(t,e,n,a,r){const i=n+3;let s=i+Pn(t,n);if(e||s--,"number"==typeof a){for(let e=i;e<=s;e++)if(t[e]===a)return;t.splice(s,0,a),t[n+1]++,Dn(t,n,Ln(t,n)|1<<r)}else null!==a&&null==t[s]&&(t[s]=a)}function ii(t,e,n,a,r,i,s,u){return r&&a&&(function(t){if(!jn(t)){const e=Hn(t);e&&function(t,e){for(let n=1;n<e.length;n+=2){const a=Qn(e,n);a&&ni(t,-1,Zn(e,n),a,!1)}}(t,e),function(t){Rn(t,1|Cn(t))}(t)}}(a),function(t,e){return t&&e>0}(a,i))?(si(a,t,e,n,i,s,u),!0):r}function si(t,e,n,a,r,i,s){const u=!0===(o=r)?-1:!1===o?0:o;var o;const l=ui,d=(u&Ln(t,3))>0?1:0;let c=Vn(t);for(;c<t.length;){const r=Pn(t,c);if(u&Ln(t,c)){let u=!1;const o=An(t,c),f=r-1,h=Mn(t,c,f);for(let r=0;r<f;r++){const l=Mn(t,c,r),d=a[l];if(Bn(d)){i(e,n,o,s&&En(t,c)?s(o,d,2):d,l),u=!0;break}}if(l){const r=l(t,e,n,a,i,s,d|(u?4:2),o,h);u=u||r}u||i(e,n,o,h)}c+=3+r}l&&l(t,e,n,a,i,s,d)}let ui=null;const oi=(t,e,n,a)=>{const r=e.style;a?(a=a.toString(),t&&ta(t)?t.setStyle(e,n,a,Xn.DashCase):r&&r.setProperty(n,a)):t&&ta(t)?t.removeStyle(e,n,Xn.DashCase):r&&r.removeProperty(n)},li=(t,e,n,a)=>{if(""!==n){const r=e.classList;a?t&&ta(t)?t.addClass(e,n):r&&r.add(n):t&&ta(t)?t.removeClass(e,n):r&&r.remove(n)}};function di(t,e,n,a){const r=Hn(n);if(r)for(let i=1;i<r.length;i+=2){const n=Zn(r,i),s=Qn(r,i);a?li(t,e,n,s):oi(t,e,n,s)}}const ci={},fi={marker:"element"},hi={marker:"comment"},gi=(t,e,n,a,r,i,s,u,o)=>{let l=!1;if(Pn(t,3)){let d=!0;const c=!u;c&&-2&s&&(d=!1,l=!0),d&&(l=function t(e,n,a,r,i,s,u,o,l,d){let c=!1;if(l<Pn(e,3)){const f=Mn(e,3,l),h=r[f];let g=function(t){return t>=yi.length&&yi.push(1),yi[t]}(l);for(;g<h.length;){const p=Zn(h,g),b=o&&p>o,m=!b&&p===o,y=Qn(h,g),v=Bn(y);let x=t(e,n,a,r,i,s,b?u:bi(u,v,m),b?o:p,l+1,d);if(b){c||(c=x);break}if(!x&&mi(u,m)){const t=m&&!v,e=t?d:y,r=t?f:null;i(n,a,p,s?s(p,e,3):e,r),x=!0}c=x&&m,g+=2}if(yi[l]=g,1===h.length||!o)return t(e,n,a,r,i,s,u,o,l+1,d)}return c}(t,e,n,a,r,i,s,u||null,0,o||null)),c&&function(){for(let t=0;t<yi.length;t++)yi[t]=1}()}return l};function pi(){ui=gi}function bi(t,e,n){let a=t;return e||4&t||!(n||1&t)?(a|=4,a&=-3):(a|=2,a&=-5),a}function mi(t,e){let n=(1&t)>0;return n?4&t&&e&&(n=!1):2&t&&(n=e),n}const yi=[];function vi(t,e,n,a){for(let r=1;r<t.length;r+=2){const i=Zn(t,r);if(e<=i){let s=!1;if(i===e){const e=t[r];!a&&Bn(e)||(s=!0,Jn(t,r,n))}else s=!0,t.splice(r,0,e,n);return s}}return t.push(e,n),!0}function xi(t,e){let n="";for(let a=1;a<t.length;a+=2){const r=Zn(t,a),i=Qn(t,a),s=zn(r,e?"":i,":");n=zn(n,s,e?" ":"; ")}return n}function _i(t){let e={};if(t)for(let n=1;n<t.length;n+=2){const a=Zn(t,n),r=Qn(t,n);e[a]=r}return e}class Ti{constructor(t,e,n){this.context=t,this._data=e,this._isClassBased=n,this._sanitizer=null}overrideSanitizer(t){this._sanitizer=t}get summary(){const t={};return this._mapValues((e,n,a)=>{t[e]={prop:e,value:n,bindingIndex:a}}),t}get values(){const t={};return this._mapValues((e,n)=>{t[e]=n}),t}_mapValues(t){Pn(this.context,3)>0&&pi();const e=this._isClassBased?null:this._sanitizer||mn();si(this.context,null,{},this._data,!0,(e,n,a,r,i)=>{t(a,r,i||null)},e)}}function wi(t){Oi(Ae(),t)}function Oi(t,e){ie(t,t[1],$e(),e),ln(e)}const Si=(()=>Promise.resolve(null))();function Ii(t){const e=t[1],n=Ue(t);if(e.firstTemplatePass=!1,t[7]=e.bindingStartIndex,!n){const n=$e();ie(t,e,n,void 0),function(t){for(let e=t[14];null!==e;e=e[4])if(-1===e[2]&&Jt(e))for(let t=9;t<e.length;t++){const n=e[t];Ei(n,n[1],n[9])}}(t),Ni(e,t),we(t),se(t,e.contentHooks,e.contentCheckHooks,n,1,void 0),function(t,e){const n=on();try{if(t.expandoInstructions){let n=e[7]=t.expandoStartIndex;Xe(n);let a=-1,r=-1;for(let i=0;i<t.expandoInstructions.length;i++){const s=t.expandoInstructions[i];"number"==typeof s?(s<=0?(r=-s,qe(r),n+=9+t.expandoInstructions[++i],a=n):n+=s,Xe(n)):(null!==s&&(e[7]=n,s(2,ge(e[a]),r),je()),a++)}}}finally{qe(n)}}(e,t)}n&&e.staticContentQueries&&Ni(e,t),n&&!e.staticViewQueries||ds(2,e,t[9]),function(t,e){if(null!=e)for(let n=0;n<e.length;n++)as(t,e[n])}(t,e.components)}function Ni(t,e){const n=t.contentQueries;if(null!==n)for(let a=0;a<n.length;a+=2){const r=n[a],i=n[a+1];if(-1!==i){const n=t.data[i];nn(r),n.contentQueries(2,e[i],i)}}}function Ci(t,e){let n;const a=e||Ae()[12],r=cn;return n=ta(a)?a.createElement(t,r):null===r?a.createElement(t):a.createElementNS(r,t),n}function Ri(t,e,n,a,r,i,s,u,o,l){const d=e.blueprint.slice();return d[0]=r,d[2]=140|a,we(d),d[3]=d[16]=t,d[9]=n,d[11]=s||t&&t[11],d[12]=u||t&&t[12],d[13]=o||t&&t[13]||null,d[10]=l||t&&t[10]||null,d[6]=i,d}function Ai(t,e,n,a,r,i){const s=n+19,u=t.data[s]||function(t,e,n,a,r,i,s){const u=Ge(),o=Ye(),l=o?u:u&&u.parent,d=t.data[n]=Gi(0,l&&l!==e?l:null,a,n,r,i);return 0!==s&&t.firstChild||(t.firstChild=d),u&&(!o||null!=u.child||null===d.parent&&2!==u.type?o||(u.next=d):u.child=d),d}(t,e,s,a,r,i,n);return Be(u,!0),u}function ki(t,e,n,a){let r=t.node;return null==r&&(t.node=r=Gi(0,e,2,n,null,null)),a[6]=r}function Ei(t,e,n){const a=Ye(),r=Ge();let i;if(512&t[2])ss(ca(t));else{let s=!1;try{Be(null,!0),i=an(t,t[6]),we(t),Di(t,e.template,Pi(t),n),e.firstTemplatePass=!1,Ii(t),s=!0}finally{sn(i,s),Be(r,a)}}}function Li(t,e,n){const a=t[11],r=an(t,t[6]),i=!$e(),s=Ue(t);let u=!1;try{i&&!s&&a.begin&&a.begin(),s&&(n&&Di(t,n,1,e),Ii(t),t[2]&=-5),we(t),n&&Di(t,n,2,e),Ii(t),u=!0}finally{i&&!s&&a.end&&a.end(),sn(r,u)}}function Di(t,e,n,a){pn();const r=on();try{qe(null),2&n&&Oi(t,0),e(n,a)}finally{ln(r)}}function Pi(t){return Ue(t)?1:2}function Mi(t,e,n){if(Qt(e)){const a=e.directiveEnd;for(let r=e.directiveStart;r<a;r++){const e=t.data[r];e.contentQueries&&e.contentQueries(1,n[r],r)}}}function qi(t,e,n,a=be){Ne()&&(function(t,e,n){const a=n.directiveStart,r=n.directiveEnd;!t.firstTemplatePass&&a<r&&pa(n,e);for(let i=a;i<r;i++){const a=t.data[i];te(a)&&ts(e,n,a),Ki(e,Sa(t.data,e,i,n),a,i)}}(t,e,n),function(t,e,n){const a=n.directiveStart,r=n.directiveEnd,i=t.expandoInstructions,s=t.firstTemplatePass,u=n.index-19,o=on();try{qe(u);for(let u=a;u<r;u++){const a=t.data[u],r=e[u];a.hostBindings?(Ui(a,i,r,n,s),je()):s&&i.push(null)}}finally{qe(o)}}(t,e,n),function(t,e,n){const a=e.localNames;if(a){let r=e.index+1;for(let i=0;i<a.length;i+=2){const s=a[i+1],u=-1===s?n(e,t):t[s];t[r++]=u}}}(e,n,a),qe(null))}function ji(t){return t.tView||(t.tView=Fi(-1,t.template,t.consts,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas))}function Fi(t,e,n,a,r,i,s,u){const o=19+n,l=o+a,d=function(t,e){const n=new Array(e).fill(null,0,t).fill(ci,t);return n[7]=t,n}(o,l);return d[1]={id:t,blueprint:d,template:e,queries:null,viewQuery:s,node:null,data:d.slice().fill(null,o),bindingStartIndex:o,expandoStartIndex:l,expandoInstructions:null,firstTemplatePass:!0,staticViewQueries:!1,staticContentQueries:!1,preOrderHooks:null,preOrderCheckHooks:null,contentHooks:null,contentCheckHooks:null,viewHooks:null,viewCheckHooks:null,destroyHooks:null,cleanup:null,contentQueries:null,components:null,directiveRegistry:"function"==typeof r?r():r,pipeRegistry:"function"==typeof i?i():i,firstChild:null,schemas:u}}function Vi(t,e){const n=t.createRenderer(null,null);return"string"==typeof e?ta(n)?n.selectRootElement(e):n.querySelector(e):e}function Gi(t,e,n,a,r,i){return{type:n,index:a,injectorIndex:e?e.injectorIndex:-1,directiveStart:-1,directiveEnd:-1,propertyMetadataStartIndex:-1,propertyMetadataEndIndex:-1,flags:0,providerIndexes:0,tagName:r,attrs:i,localNames:null,initialInputs:void 0,inputs:void 0,outputs:void 0,tViews:null,next:null,projectionNext:null,child:null,parent:e,projection:null,styles:null,classes:null}}function Bi(t,e){const n=Ae()[1];let a=null;const r=t.directiveStart,i=t.directiveEnd;if(i>r){const t=0===e,s=n.data;for(let e=r;e<i;e++){const n=s[e],r=t?n.inputs:n.outputs;for(let t in r)if(r.hasOwnProperty(t)){a=a||{};const n=r[t];a.hasOwnProperty(t)?a[t].push(e,t,n):a[t]=[e,t,n]}}}return a}const zi={class:"className",for:"htmlFor",formaction:"formAction",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"};function Yi(t,e,n,a,r,i){const s=Ae(),u=pe(t,s),o=ye(t,s);let l,d;if(!r&&(l=hs(o))&&(d=l[e]))ys(s,d,n),Xt(o)&&function(t,e){const n=xe(e,t);16&n[2]||(n[2]|=64)}(s,t+19);else if(3===o.type){!function(t,e,n,a,r){const i=e[7]-1,s=a[i];"�"==s[0]&&(a[i]=n+s,r||(-1==t.propertyMetadataStartIndex&&(t.propertyMetadataStartIndex=i),t.propertyMetadataEndIndex=i+1))}(o,s,e=zi[e]||e,s[1].data,r);const t=i?i(o,s):s[12];n=null!=a?a(n,o.tagName||"",e):n,ta(t)?t.setProperty(u,e,n):ra(e)||(u.setProperty?u.setProperty(e,n):u[e]=n)}}function Hi(t,e,n,a){if(!Ne())return;const r=function(t,e,n){const a=t.directiveRegistry;let r=null;if(a)for(let i=0;i<a.length;i++){const s=a[i];$r(n,s.selectors,!1)&&(r||(r=[]),va(pa(n,e),t,s.type),te(s)?(1&n.flags&&Br(n),n.flags=1,r.unshift(s)):r.push(s))}return r}(t,e,n),i=a?{"":-1}:null;if(r){Qi(n,t.data.length,r.length);for(let t=0;t<r.length;t++){const e=r[t];e.providersResolver&&e.providersResolver(e)}Wi(t,n,r.length);const a=t.preOrderHooks&&t.preOrderHooks.length||0,s=t.preOrderCheckHooks&&t.preOrderCheckHooks.length||0,u=n.index-19;for(let n=0;n<r.length;n++){const o=r[n],l=t.data.length;Xi(t,e,o,o.factory),Ji(t.data.length-1,o,i),ae(l,o,t,u,a,s)}}i&&function(t,e,n){if(e){const a=t.localNames=[];for(let t=0;t<e.length;t+=2){const r=n[e[t+1]];if(null==r)throw new Error(`Export of name '${e[t+1]}' not found!`);a.push(e[t],r)}}}(n,a,i)}function Ui(t,e,n,a,r){const i=e.length;Ie(t),t.hostBindings(1,n,a.index-19),Ie(null),i===e.length&&r&&e.push(t.hostBindings)}function Wi(t,e,n){const a=-(e.index-19),r=t.data.length-(65535&e.providerIndexes);(t.expandoInstructions||(t.expandoInstructions=[])).push(a,r,n)}function Ki(t,e,n,a){const r=Ge();$i(t,r,e),r&&r.attrs&&function(t,e,n,a){let r=a.initialInputs;(void 0===r||t>=r.length)&&(r=function(t,e,n){const a=n.initialInputs||(n.initialInputs=[]);for(let s=a.length;s<=t;s++)a.push(null);const r=n.attrs;let i=0;for(;i<r.length;){const n=r[i];if(0===n){i+=4;continue}if(5===n){i+=2;continue}if("number"==typeof n)break;const s=e[n],u=r[i+1];void 0!==s&&(a[t]||(a[t]=[])).push(n,s,u),i+=2}return a}(t,n.inputs,a));const i=r[t];if(i){const t=n.setInput;for(let a=0;a<i.length;){const r=i[a++],s=i[a++],u=i[a++];t?n.setInput(e,u,r,s):e[s]=u}}}(a,e,n,r),t[1].firstTemplatePass&&n.contentQueries&&(r.flags|=4),te(n)&&(xe(r.index,t)[9]=e)}function $i(t,e,n){const a=be(e,t);qr(n,t),a&&qr(a,t)}function Zi(t){const e=Ae()[1];(e.components||(e.components=[])).push(t.index)}function Ji(t,e,n){if(n){if(e.exportAs)for(let a=0;a<e.exportAs.length;a++)n[e.exportAs[a]]=t;e.template&&(n[""]=t)}}function Qi(t,e,n){t.flags=1&t.flags,t.directiveStart=e,t.directiveEnd=e+n,t.providerIndexes=e}function Xi(t,e,n,a){t.data.push(n);const r=new ne(a,te(n),null);t.blueprint.push(r),e.push(r)}function ts(t,e,n){const a=be(e,t),r=ji(n),i=t[11],s=rs(t,Ri(t,r,null,n.onPush?64:16,t[e.index],e,i,i.createRenderer(a,n)));s[6]=e,t[e.index]=s,t[1].firstTemplatePass&&Zi(e)}function es(t,e,n,a,r,i){const s=pe(t,a),u=a[12];if(null==n)ta(u)?u.removeAttribute(s,e,i):s.removeAttribute(e);else{const o=ye(t,a),l=null==r?vn(n):r(n,o.tagName||"",e);ta(u)?u.setAttribute(s,e,l,i):i?s.setAttributeNS(i,e,l):s.setAttribute(e,l)}}function ns(t,e,n,a,r){return new Array(t,!0,r?-1:0,e,null,null,a,n,null)}function as(t,e){const n=xe(e,t);(128==(128&n[2])||Ue(t))&&80&n[2]&&(function(t){const e=t[1];for(let n=t.length;n<e.blueprint.length;n++)t[n]=e.blueprint[n]}(n),ls(n,n[9]))}function rs(t,e){return t[14]?t[15][4]=e:t[14]=e,t[15]=e,e}function is(t){for(;t;){t[2]|=64;const e=la(t);if(ee(t)&&!e)return t;t=e}return null}function ss(t){for(let e=0;e<t.components.length;e++){const n=t.components[e];Li(Te(n),n)}}function us(t,e){const n=t[11];n.begin&&n.begin();try{Ue(t)&&ls(t,e),ls(t,e)}catch(a){throw ms(t,a),a}finally{n.end&&n.end()}}function os(t){ss(t[9])}function ls(t,e){const n=t[1],a=an(t,t[6]),r=n.template,i=Ue(t);let s=!1;try{we(t),i&&ds(1,n,e),Di(t,r,Pi(t),e),Ii(t),s=!0}finally{sn(a,s)}}function ds(t,e,n){const a=e.viewQuery;null!==a&&(nn(0),a(t,n))}function cs(t,e="",n=""){const a=t[1].data,r=t[7]-1;return null==a[r]?a[r]="�"+e+"�"+n:null}const fs=Si;function hs(t){return void 0===t.inputs&&(t.inputs=Bi(t,0)),t.inputs}function gs(t){return t[8]||(t[8]=[])}function ps(t){return t[1].cleanup||(t[1].cleanup=[])}function bs(t,e){return e[t.index][12]}function ms(t,e){const n=t[10],a=n?n.get(Da,null):null;a&&a.handleError(e)}function ys(t,e,n){const a=t[1];for(let r=0;r<e.length;){const i=e[r++],s=e[r++],u=e[r++],o=t[i],l=a.data[i];l.setInput?l.setInput(o,n,s,u):o[u]=n}}function vs(t,e,n){const a=pe(e,t),r=t[12];ta(r)?r.setValue(a,n):a.textContent=n}function xs(t,e,n){di(t,e,n.classes,!0),di(t,e,n.styles,!1)}function _s(t,e){const n=e[3];return-1===t.index?Jt(n)?n:null:n}function Ts(t,e){const n=_s(t,e);return n?Ps(e[12],n[7]):null}function ws(t,e,n,a,r){if(null!=a){let i,s=!1;Jt(a)?i=a:Zt(a)&&(s=!0,a=a[0]);const u=ge(a);0===t?Ls(e,n,u,r||null):1===t?js(e,u,s):2===t&&e.destroyNode(u),null!=i&&function(t,e,n,a,r){const i=n[7];i!==ge(n)&&ws(e,t,a,i,r);for(let s=9;s<n.length;s++)Bs(t,e,n[s],a,i)}(e,t,i,n,r)}}function Os(t,e){return ta(e)?e.createText(vn(t)):e.createTextNode(vn(t))}function Ss(t,e,n){const a=Ts(t[1].node,t);a&&Bs(t[12],e?0:1,t,a,n)}function Is(t,e,n){const a=9+n,r=e.length;n>0&&(e[a-1][4]=t),n<r-9?(t[4]=e[a],mt(e,9+n,t)):(e.push(t),t[4]=null),t[3]=e;const i=t[17];null!==i&&e!==i&&function(t,e){const n=t[5];null===n?t[5]=[e]:n.push(e)}(i,t);const s=t[5];null!==s&&s.insertView(t[1]),t[2]|=128}function Ns(t,e){const n=t[5],a=n.indexOf(e);n.splice(a,1)}function Cs(t,e){if(t.length<=9)return;const n=9+e,a=t[n];if(a){const r=a[17];null!==r&&r!==t&&Ns(r,a),e>0&&(t[n-1][4]=a[4]);const i=yt(t,9+e);Ss(a,!1);const s=i[5];null!==s&&s.detachView(i[1]),a[3]=null,a[4]=null,a[2]&=-129}return a}function Rs(t,e){const n=Cs(t,e);n&&As(n)}function As(t){if(!(256&t[2])){const e=t[12];ta(e)&&e.destroyNode&&Bs(e,2,t,null,null),function(t){let e=t[14];if(!e)return Es(t);for(;e;){let n=null;if(Zt(e))n=e[14];else{const t=e[9];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Es(e),e=ks(e,t);Es(e||t),n=e&&e[4]}e=n}}(t)}}function ks(t,e){let n;return Zt(t)&&(n=t[6])&&2===n.type?_s(n,t):t[3]===e?null:t[3]}function Es(t){if(Zt(t)&&!(256&t[2])){t[2]&=-129,t[2]|=256,function(t){const e=t[1];let n;if(null!=e&&null!=(n=e.destroyHooks))for(let a=0;a<n.length;a+=2){const e=t[n[a]];e instanceof ne||n[a+1].call(e)}}(t),function(t){const e=t[1].cleanup;if(null!==e){const n=t[8];for(let a=0;a<e.length-1;a+=2)if("string"==typeof e[a]){const r=e[a+1],i="function"==typeof r?r(t):ge(t[r]),s=n[e[a+2]],u=e[a+3];"boolean"==typeof u?i.removeEventListener(e[a],s,u):u>=0?n[u]():n[-u].unsubscribe(),a+=2}else e[a].call(n[e[a+1]]);t[8]=null}}(t);const e=t[6];e&&3===e.type&&ta(t[12])&&t[12].destroy();const n=t[17];if(null!==n&&Jt(t[3])){n!==t[3]&&Ns(n,t);const e=t[5];null!==e&&e.detachView(t[1])}}}function Ls(t,e,n,a){ta(t)?t.insertBefore(e,n,a):e.insertBefore(n,a,!0)}function Ds(t,e,n,a){null!==a?Ls(t,e,n,a):function(t,e,n){ta(t)?t.appendChild(e,n):e.appendChild(n)}(t,e,n)}function Ps(t,e){return ta(t)?t.parentNode(e):e.parentNode}function Ms(t,e,n){const a=function(t,e){if(ee(e))return Ps(e[12],be(t,e));const n=function(t){for(;null!=t.parent&&(4===t.parent.type||5===t.parent.type);)t=t.parent;return t}(t),a=n.parent;if(null==a){const t=e[6];return 2===t.type?Ts(t,e):function(t){const e=t[6];return e&&3===e.type?be(e,la(t)):null}(e)}{const t=n&&5===n.type;if(t&&2&n.flags)return be(n,e).parentNode;if(1&a.flags&&!t){const t=e[1].data,n=t[t[a.index].directiveStart].encapsulation;if(n!==wt.ShadowDom&&n!==wt.Native)return null}return be(a,e)}}(e,n);if(null!=a){const r=n[12],i=function(t,e){if(2===t.type){const n=_s(t,e);return qs(n.indexOf(e,9)-9,n)}return 4===t.type||5===t.type?be(t,e):null}(e.parent||n[6],n);if(Array.isArray(t))for(let e of t)Ds(r,a,e,i);else Ds(r,a,t,i)}}function qs(t,e){const n=9+t+1;if(n<e.length){const t=e[n],a=t[6].child;return null!==a?me(a,t):e[7]}return e[7]}function js(t,e,n){const a=Ps(t,e);a&&function(t,e,n,a){ta(t)?t.removeChild(e,n,a):e.removeChild(n)}(t,a,e,n)}function Fs(t,e,n,a){const r=a[3];let i=a[6].projection[n];if(Array.isArray(i))Ms(i,e,t);else for(;i;)32&i.flags||(1===i.type?Fs(t,e,i.projection,da(r)):(i.flags|=2,Gs(i,e,t,r))),i=i.projectionNext}function Vs(t,e,n,a){for(;t;)Gs(t,e,n,a),t=t.next}function Gs(t,e,n,a){const r=be(t,a);Ms(r,e,n),qr(r,a);const i=a[t.index];if(0===t.type)for(let s=9;s<i.length;s++)Ss(i[s],!0,i[7]);else if(5===t.type){let e=t.child;Vs(e,e,a,a)}else 4===t.type&&Vs(t.child,e,n,a),Jt(i)&&Ms(i[7],e,n)}function Bs(t,e,n,a,r){let i=n[1].node.child;for(;null!==i;)zs(t,e,n,i,a,r),i=i.next}function zs(t,e,n,a,r,i){const s=a.type;32&a.flags||(4===s||5===s?function(t,e,n,a,r,i){ws(e,t,r,n[a.index],i);let s=a.child;for(;s;)zs(t,e,n,s,r,i),s=s.next}(t,e,n,a,r,i):1===s?function(t,e,n,a,r,i){const s=da(n),u=s[6].projection[a.projection];if(void 0!==u)if(Array.isArray(u))for(let o=0;o<u.length;o++)ws(e,t,r,u[o],i);else{let n=u;const a=s[3];for(;null!==n;)zs(t,e,a,n,r,i),n=n.projectionNext}}(t,e,n,a,r,i):ws(e,t,r,n[a.index],i))}class Ys{constructor(t,e,n){this._context=e,this._componentIndex=n,this._appRef=null,this._viewContainerRef=null,this._tViewNode=null,this._lView=t}get rootNodes(){return null==this._lView[0]?function t(e,n,a){let r=n.child;for(;r;){const n=me(r,e);if(n&&a.push(n),4===r.type)t(e,r,a);else if(1===r.type){const t=da(e),n=t[6],i=la(t);let s=n.projection[r.projection];for(;s&&i;)a.push(be(s,i)),s=s.next}r=r.next}return a}(this._lView,this._lView[6],[]):[]}get context(){return this._context?this._context:this._lookUpContext()}get destroyed(){return 256==(256&this._lView[2])}destroy(){if(this._appRef)this._appRef.detachView(this);else if(this._viewContainerRef){const t=this._viewContainerRef.indexOf(this);t>-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}As(this._lView)}onDestroy(t){var e,n;n=t,gs(e=this._lView).push(n),e[1].firstTemplatePass&&ps(e).push(e[8].length-1,null)}markForCheck(){is(this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){us(this._lView,this.context)}checkNoChanges(){!function(t,e){Ze(!0);try{us(t,e)}finally{Ze(!1)}}(this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){this._appRef=null,function(t){Bs(t[12],1,t,null,null)}(this._lView)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}_lookUpContext(){return this._context=la(this._lView)[this._componentIndex]}}class Hs extends Ys{constructor(t){super(t,null,-1),this._view=t}detectChanges(){os(this._view)}checkNoChanges(){!function(t){Ze(!0);try{os(t)}finally{Ze(!1)}}(this._view)}get context(){return null}}let Us,Ws,Ks;function $s(t,e,n){return Us||(Us=class extends t{}),new Us(be(e,n))}function Zs(t,e,n,a){return Ws||(Ws=class extends t{constructor(t,e,n){super(),this._declarationView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=function(t,e,n,a){const r=Ye(),i=Ge();Be(null,!0);const s=Ri(n,t,e,16,null,null);return s[16]=n,ki(t,null,-1,s),t.firstTemplatePass&&(t.node.injectorIndex=a),Be(i,r),s}(e,t,this._declarationView,this._declarationTContainer.injectorIndex);n[17]=this._declarationView[this._declarationTContainer.index];const a=this._declarationView[5];null!==a&&(n[5]=a.createEmbeddedView(e)),Ei(n,e,t);const r=new Ys(n,t,-1);return r._tViewNode=n[6],r}}),0===n.type?new Ws(a,n,$s(e,n,a)):null}function Js(t,e,n,a){let r;Ks||(Ks=class extends t{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostView=n}get element(){return $s(e,this._hostTNode,this._hostView)}get injector(){return new Ca(this._hostTNode,this._hostView)}get parentInjector(){const t=ya(this._hostTNode,this._hostView),e=oa(t,this._hostView),n=function(t,e,n){if(n.parent&&-1!==n.parent.injectorIndex){const t=n.parent.injectorIndex;let e=n.parent;for(;null!=e.parent&&t==e.injectorIndex;)e=e.parent;return e}let a=ua(t),r=e,i=e[6];for(;a>1;)r=r[16],i=r[6],a--;return i}(t,this._hostView,this._hostTNode);return ia(t)&&null!=n?new Ca(n,e):new Ca(null,this._hostView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){return null!==this._lContainer[8]&&this._lContainer[8][t]||null}get length(){return this._lContainer.length-9}createEmbeddedView(t,e,n){const a=t.createEmbeddedView(e||{});return this.insert(a,n),a}createComponent(t,e,n,a,r){const i=n||this.parentInjector;!r&&null==t.ngModule&&i&&(r=i.get(ft,null));const s=t.create(i,a,void 0,r);return this.insert(s.hostView,e),s}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");this.allocateContainerIfNeeded();const n=t._lView,a=this._adjustIndex(e);return Jt(n[3])?this.move(t,a):(Is(n,this._lContainer,a),Ss(n,!0,qs(a,this._lContainer)),t.attachToViewContainerRef(this),mt(this._lContainer[8],a,t),t)}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this.indexOf(t);return-1!==n&&this.detach(n),this.insert(t,e),t}indexOf(t){return null!==this._lContainer[8]?this._lContainer[8].indexOf(t):0}remove(t){this.allocateContainerIfNeeded();const e=this._adjustIndex(t,-1);Rs(this._lContainer,e),yt(this._lContainer[8],e)}detach(t){this.allocateContainerIfNeeded();const e=this._adjustIndex(t,-1),n=Cs(this._lContainer,e);return n&&null!=yt(this._lContainer[8],e)?new Ys(n,n[9],-1):null}_adjustIndex(t,e=0){return null==t?this.length+e:t}allocateContainerIfNeeded(){null===this._lContainer[8]&&(this._lContainer[8]=[])}});const i=a[n.index];if(Jt(i))r=i,r[2]=-1;else{let t;if(t=4===n.type?ge(i):a[12].createComment(""),ee(a)){const e=a[12],r=be(n,a);Ls(e,Ps(e,r),t,function(t,e){return ta(t)?t.nextSibling(e):e.nextSibling}(e,r))}else Ms(t,n,a);a[n.index]=r=ns(i,a,t,n,!0),rs(a,r)}return new Ks(r,n,a)}function Qs(t=!1){return function(t,e,n){if(Xt(t)&&!n){const n=t.directiveStart,a=xe(t.index,e);return new Ys(a,null,n)}if(3===t.type||0===t.type||4===t.type){const t=da(e);return new Ys(t,t[9],-1)}return null}(Ge(),Ae(),t)}let Xs=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>eu(),t})();const tu=Qs,eu=(...t)=>{},nu=Function;function au(t){return"function"==typeof t}const ru=/^function\s+\S+\(\)\s*{[\s\S]+\.apply\(this,\s*arguments\)/,iu=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{/,su=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{[\s\S]*constructor\s*\(/,uu=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{[\s\S]*constructor\s*\(\)\s*{\s+super\(\.\.\.arguments\)/;class ou{constructor(t){this._reflect=t||U.Reflect}isReflectionEnabled(){return!0}factory(t){return(...e)=>new t(...e)}_zipTypesAndAnnotations(t,e){let n;n=new Array(void 0===t?e.length:t.length);for(let a=0;a<n.length;a++)n[a]=void 0===t?[]:t[a]&&t[a]!=Object?[t[a]]:[],e&&null!=e[a]&&(n[a]=n[a].concat(e[a]));return n}_ownParameters(t,e){if(n=t.toString(),ru.test(n)||uu.test(n)||iu.test(n)&&!su.test(n))return null;var n;if(t.parameters&&t.parameters!==e.parameters)return t.parameters;const a=t.ctorParameters;if(a&&a!==e.ctorParameters){const t="function"==typeof a?a():a,e=t.map(t=>t&&t.type),n=t.map(t=>t&&lu(t.decorators));return this._zipTypesAndAnnotations(e,n)}const r=t.hasOwnProperty(b)&&t[b],i=this._reflect&&this._reflect.getOwnMetadata&&this._reflect.getOwnMetadata("design:paramtypes",t);return i||r?this._zipTypesAndAnnotations(i,r):new Array(t.length).fill(void 0)}parameters(t){if(!au(t))return[];const e=du(t);let n=this._ownParameters(t,e);return n||e===Object||(n=this.parameters(e)),n||[]}_ownAnnotations(t,e){if(t.annotations&&t.annotations!==e.annotations){let e=t.annotations;return"function"==typeof e&&e.annotations&&(e=e.annotations),e}return t.decorators&&t.decorators!==e.decorators?lu(t.decorators):t.hasOwnProperty(p)?t[p]:null}annotations(t){if(!au(t))return[];const e=du(t),n=this._ownAnnotations(t,e)||[];return(e!==Object?this.annotations(e):[]).concat(n)}_ownPropMetadata(t,e){if(t.propMetadata&&t.propMetadata!==e.propMetadata){let e=t.propMetadata;return"function"==typeof e&&e.propMetadata&&(e=e.propMetadata),e}if(t.propDecorators&&t.propDecorators!==e.propDecorators){const e=t.propDecorators,n={};return Object.keys(e).forEach(t=>{n[t]=lu(e[t])}),n}return t.hasOwnProperty(m)?t[m]:null}propMetadata(t){if(!au(t))return{};const e=du(t),n={};if(e!==Object){const t=this.propMetadata(e);Object.keys(t).forEach(e=>{n[e]=t[e]})}const a=this._ownPropMetadata(t,e);return a&&Object.keys(a).forEach(t=>{const e=[];n.hasOwnProperty(t)&&e.push(...n[t]),e.push(...a[t]),n[t]=e}),n}ownPropMetadata(t){return au(t)&&this._ownPropMetadata(t,du(t))||{}}hasLifecycleHook(t,e){return t instanceof nu&&e in t.prototype}guards(t){return{}}getter(t){return new Function("o","return o."+t+";")}setter(t){return new Function("o","v","return o."+t+" = v;")}method(t){return new Function("o","args",`if (!o.${t}) throw new Error('"${t}" is undefined');\n        return o.${t}.apply(o, args);`)}importUri(t){return"object"==typeof t&&t.filePath?t.filePath:"./"+j(t)}resourceUri(t){return"./"+j(t)}resolveIdentifier(t,e,n,a){return a}resolveEnum(t,e){return t[e]}}function lu(t){return t?t.map(t=>new(0,t.type.annotationCls)(...t.args?t.args:[])):[]}function du(t){const e=t.prototype?Object.getPrototypeOf(t.prototype):null;return(e?e.constructor:null)||Object}let cu=null;function fu(){return cu=cu||new ou}function hu(t){return gu(fu().parameters(t))}function gu(t){const e=W();return t.map(t=>function(t,e){const n={token:null,host:!1,optional:!1,resolved:t.R3ResolvedDependencyType.Token,self:!1,skipSelf:!1};function a(e){n.resolved=t.R3ResolvedDependencyType.Token,n.token=e}if(Array.isArray(e)){if(0===e.length)throw new Error("Dependency array must have arguments.");for(let r=0;r<e.length;r++){const i=e[r];if(void 0!==i)if(i instanceof w||"Optional"===i.__proto__.ngMetadataName)n.optional=!0;else if(i instanceof S||"SkipSelf"===i.__proto__.ngMetadataName)n.skipSelf=!0;else if(i instanceof O||"Self"===i.__proto__.ngMetadataName)n.self=!0;else if(i instanceof I||"Host"===i.__proto__.ngMetadataName)n.host=!0;else if(i instanceof T)n.token=i.token;else if(i instanceof N){if(void 0===i.attributeName)throw new Error("Attribute name must be defined.");n.token=i.attributeName,n.resolved=t.R3ResolvedDependencyType.Attribute}else i===Xs?(n.token=i,n.resolved=t.R3ResolvedDependencyType.ChangeDetectorRef):a(i)}}else a(e);return n}(e,t))}function pu(t,e){let n=null;t.hasOwnProperty(M)||Object.defineProperty(t,M,{get:()=>{if(null===n){const a=e||{providedIn:null},r=mu(a)||vu(a)||yu(a)||xu(a),i={name:t.name,type:t,typeArgumentCount:0,providedIn:a.providedIn,ctorDeps:hu(t),userDeps:void 0};if((mu(a)||vu(a))&&void 0!==a.deps&&(i.userDeps=gu(a.deps)),r)if(mu(a))i.useClass=a.useClass;else if(yu(a))i.useValue=a.useValue;else if(vu(a))i.useFactory=a.useFactory;else{if(!xu(a))throw new Error("Unreachable state.");i.useExisting=a.useExisting}else i.useClass=t;n=W().compileInjectable(ct,`ng:///${t.name}/ngInjectableDef.js`,i)}return n}})}const bu=R({provide:String,useValue:R});function mu(t){return void 0!==t.useClass}function yu(t){return bu in t}function vu(t){return void 0!==t.useFactory}function xu(t){return void 0!==t.useExisting}const _u=R({provide:String,useValue:R}),Tu=[];function wu(t,e){if(!e){const e=(new ou).parameters(t);return()=>new t(...ut(e))}if(_u in e){const t=e;return()=>t.useValue}if(e.useExisting){const t=e;return()=>rt(t.useExisting)}if(e.useFactory){const t=e;return()=>t.useFactory(...ut(t.deps||Tu))}if(e.useClass){const n=e;let a=e.deps;if(!a){const e=new ou;a=e.parameters(t)}return()=>new n.useClass(...ut(a))}{let n=e.deps;if(!n){const e=new ou;n=e.parameters(t)}return()=>new t(...ut(n))}}const Ou=y("Injectable",void 0,void 0,void 0,(t,e)=>Iu(t,e)),Su=pu,Iu=function(t,e){e&&void 0!==e.providedIn&&!D(t)&&(t.ngInjectableDef=k({token:t,providedIn:e.providedIn,factory:wu(t,e)}))},Nu=new K("The presence of this token marks an injector as being the root injector."),Cu={},Ru={},Au=[];let ku=void 0;function Eu(){return void 0===ku&&(ku=new ot),ku}function Lu(t,e=null,n=null,a){return e=e||Eu(),new Du(t,n,e,a)}class Du{constructor(t,e,n,a=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const r=[];bt([t],t=>this.processInjectorType(t,[],r)),e&&bt(e,n=>this.processProvider(n,t,e)),this.records.set($,qu(void 0,this)),this.isRootInjector=this.records.has(Nu),this.injectorDefTypes.forEach(t=>this.get(t)),this.source=a||("object"==typeof t?null:j(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Z,n=C.Default){this.assertNotDestroyed();const a=et(this);try{if(!(n&C.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(r=t)||"object"==typeof r&&r instanceof K)&&D(t);n&&this.injectableDefInScope(n)&&(e=qu(Pu(t),Cu),this.records.set(t,e))}if(void 0!==e)return this.hydrate(t,e)}return(n&C.Self?Eu():this.parent).get(t,n&C.Optional?null:e)}catch(i){if("NullInjectorError"===i.name){if((i.ngTempTokenPath=i.ngTempTokenPath||[]).unshift(j(t)),a)throw i;return lt(i,t,"R3InjectorError",this.source)}throw i}finally{et(a)}var r}toString(){const t=[];return this.records.forEach((e,n)=>t.push(j(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=G(t)))return!1;let a=P(t);const r=null==a&&t.ngModule||void 0,i=void 0===r?t:r,s=-1!==n.indexOf(i);if(void 0!==r&&(a=P(r)),null==a)return!1;if(this.injectorDefTypes.add(i),this.records.set(i,qu(a.factory,Cu)),null!=a.imports&&!s){let t;n.push(i);try{bt(a.imports,a=>{this.processInjectorType(a,e,n)&&(void 0===t&&(t=[]),t.push(a))})}finally{}if(void 0!==t)for(let e=0;e<t.length;e++){const{ngModule:n,providers:a}=t[e];bt(a,t=>this.processProvider(t,n,a||Au))}}const u=a.providers;if(null!=u&&!s){const e=t;bt(u,t=>this.processProvider(t,e,u))}return void 0!==r&&void 0!==t.providers}processProvider(t,e,n){let a=Fu(t=G(t))?t:G(t&&t.provide);const r=function(t,e,n){let a=Mu(t,e,n);return ju(t)?qu(void 0,t.useValue):qu(a,Cu)}(t,e,n);if(Fu(t)||!0!==t.multi){const t=this.records.get(a);t&&void 0!==t.multi&&zr()}else{let e=this.records.get(a);e?void 0===e.multi&&zr():(e=qu(void 0,Cu,!0),e.factory=()=>ut(e.multi),this.records.set(a,e)),a=t,e.multi.push(t)}this.records.set(a,r)}hydrate(t,e){var n;return e.value===Ru?function(t){throw new Error("Cannot instantiate cyclic dependency! "+t)}(j(t)):e.value===Cu&&(e.value=Ru,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||"root"===t.providedIn&&this.isRootInjector:this.injectorDefTypes.has(t.providedIn))}}function Pu(t){const e=D(t);if(null!==e)return e.factory;const n=P(t);if(null!==n)return n.factory;if(t instanceof K)throw new Error(`Token ${j(t)} is missing an ngInjectableDef definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=new Array(e).fill("?");throw new Error(`Can't resolve all parameters for ${j(t)}: (${n.join(", ")}).`)}const n=(a=t)&&a[M]?(console.warn(`DEPRECATED: DI is instantiating a token "${a.name}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in v10. Please add @Injectable() to the "${a.name}" class.`),a[M]):null;var a;return null!==n?()=>n.factory(t):()=>new t}(t);throw new Error("unreachable")}function Mu(t,e,n){let a=void 0;if(Fu(t))return Pu(G(t));if(ju(t))a=()=>G(t.useValue);else if((r=t)&&r.useExisting)a=()=>rt(G(t.useExisting));else if(function(t){return!(!t||!t.useFactory)}(t))a=()=>t.useFactory(...ut(t.deps||[]));else{const r=G(t&&(t.useClass||t.provide));if(r||function(t,e,n){let a="";throw t&&e&&(a=` - only instances of Provider and Type are allowed, got: [${e.map(t=>t==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${j(t)}'`+a)}(e,n,t),!function(t){return!!t.deps}(t))return Pu(r);a=()=>new r(...ut(t.deps))}var r;return a}function qu(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function ju(t){return null!==t&&"object"==typeof t&&Q in t}function Fu(t){return"function"==typeof t}function Vu(t,e,n){return Lu({name:n},e,t,n)}const Gu=function(t,e,n){return new Wu(t,e,n)};let Bu=(()=>{class t{static create(t,e){return Array.isArray(t)?Gu(t,e,""):Gu(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Z,t.NULL=new ot,t.ngInjectableDef=k({token:t,providedIn:"any",factory:()=>rt($)}),t.__NG_ELEMENT_ID__=-1,t})();const zu=function(t){return t},Yu=[],Hu=zu,Uu=function(){return Array.prototype.slice.call(arguments)};class Wu{constructor(t,e=Bu.NULL,n=null){this.parent=e,this.source=n;const a=this._records=new Map;a.set(Bu,{token:Bu,fn:zu,deps:Yu,value:this,useNew:!1}),a.set($,{token:$,fn:zu,deps:Yu,value:this,useNew:!1}),function t(e,n){if(n)if((n=G(n))instanceof Array)for(let a=0;a<n.length;a++)t(e,n[a]);else{if("function"==typeof n)throw $u("Function/Class not supported",n);if(!n||"object"!=typeof n||!n.provide)throw $u("Unexpected provider",n);{let t=G(n.provide);const a=function(t){const e=function(t){let e=Yu;const n=t.deps;if(n&&n.length){e=[];for(let t=0;t<n.length;t++){let a=6,r=G(n[t]);if(r instanceof Array)for(let t=0,e=r;t<e.length;t++){const n=e[t];n instanceof w||n==w?a|=1:n instanceof S||n==S?a&=-3:n instanceof O||n==O?a&=-5:r=n instanceof T?n.token:G(n)}e.push({token:r,options:a})}}else if(t.useExisting)e=[{token:G(t.useExisting),options:6}];else if(!n&&!(Q in t))throw $u("'deps' required",t);return e}(t);let n=zu,a=Yu,r=!1,i=G(t.provide);if(Q in t)a=t.useValue;else if(t.useFactory)n=t.useFactory;else if(t.useExisting);else if(t.useClass)r=!0,n=G(t.useClass);else{if("function"!=typeof i)throw $u("StaticProvider does not have [useValue|useFactory|useExisting|useClass] or [provide] is not newable",t);r=!0,n=i}return{deps:e,fn:n,useNew:r,value:a}}(n);if(!0===n.multi){let a=e.get(t);if(a){if(a.fn!==Uu)throw Ku(t)}else e.set(t,a={token:n.provide,deps:[],useNew:!1,fn:Uu,value:Yu});t=n,a.deps.push({token:t,options:6})}const r=e.get(t);if(r&&r.fn==Uu)throw Ku(t);e.set(t,a)}}}(a,t)}get(t,e,n=C.Default){const a=this._records.get(t);try{return function t(e,n,a,r,i,s){try{return function(e,n,a,r,i,s){let u;if(!n||s&C.SkipSelf)s&C.Self||(u=r.get(e,i,C.Default));else{if(u=n.value,u==Hu)throw Error("ɵCircular dependency");if(u===Yu){n.value=Hu;let e=void 0,i=n.useNew,s=n.fn,o=n.deps,l=Yu;if(o.length){l=[];for(let e=0;e<o.length;e++){const n=o[e],i=n.options,s=2&i?a.get(n.token):void 0;l.push(t(n.token,s,a,s||4&i?r:Bu.NULL,1&i?null:Bu.THROW_IF_NOT_FOUND,C.Default))}}n.value=u=i?new s(...l):s.apply(e,l)}}return u}(e,n,a,r,i,s)}catch(u){throw u instanceof Error||(u=new Error(u)),(u.ngTempTokenPath=u.ngTempTokenPath||[]).unshift(e),n&&n.value==Hu&&(n.value=Yu),u}}(t,a,this._records,this.parent,e,n)}catch(r){return lt(r,t,"StaticInjectorError",this.source)}}toString(){const t=[];return this._records.forEach((e,n)=>t.push(j(n))),`StaticInjector[${t.join(", ")}]`}}function Ku(t){return $u("Cannot mix multi providers and regular providers",t)}function $u(t,e){return new Error(dt(t,e,"StaticInjectorError"))}function Zu(t){return t.length>1?" ("+function(t){const e=[];for(let n=0;n<t.length;++n){if(e.indexOf(t[n])>-1)return e.push(t[n]),e;e.push(t[n])}return e}(t.slice().reverse()).map(t=>j(t.token)).join(" -> ")+")":""}function Ju(t,e,n,a){const r=[e],i=n(r),s=a?function(t,e){const n=`${t} caused by: ${e instanceof Error?e.message:e}`,a=Error(n);return a.ngOriginalError=e,a}(i,a):Error(i);return s.addKey=Qu,s.keys=r,s.injectors=[t],s.constructResolvingMessage=n,s.ngOriginalError=a,s}function Qu(t,e){this.injectors.push(t),this.keys.push(e),this.message=this.constructResolvingMessage(this.keys)}function Xu(t,e){const n=[];for(let a=0,r=e.length;a<r;a++){const t=e[a];n.push(t&&0!=t.length?t.map(j).join(" "):"?")}return Error("Cannot resolve all parameters for '"+j(t)+"'("+n.join(", ")+"). Make sure that all the parameters are decorated with Inject or have valid type annotations and that '"+j(t)+"' is decorated with Injectable.")}class to{constructor(t,e){if(this.token=t,this.id=e,!t)throw new Error("Token must be defined!");this.displayName=j(this.token)}static get(t){return no.get(G(t))}static get numberOfKeys(){return no.numberOfKeys}}class eo{constructor(){this._allKeys=new Map}get(t){if(t instanceof to)return t;if(this._allKeys.has(t))return this._allKeys.get(t);const e=new to(t,to.numberOfKeys);return this._allKeys.set(t,e),e}get numberOfKeys(){return this._allKeys.size}}const no=new eo;class ao{constructor(t){this.reflectionCapabilities=t}updateCapabilities(t){this.reflectionCapabilities=t}factory(t){return this.reflectionCapabilities.factory(t)}parameters(t){return this.reflectionCapabilities.parameters(t)}annotations(t){return this.reflectionCapabilities.annotations(t)}propMetadata(t){return this.reflectionCapabilities.propMetadata(t)}hasLifecycleHook(t,e){return this.reflectionCapabilities.hasLifecycleHook(t,e)}getter(t){return this.reflectionCapabilities.getter(t)}setter(t){return this.reflectionCapabilities.setter(t)}method(t){return this.reflectionCapabilities.method(t)}importUri(t){return this.reflectionCapabilities.importUri(t)}resourceUri(t){return this.reflectionCapabilities.resourceUri(t)}resolveIdentifier(t,e,n,a){return this.reflectionCapabilities.resolveIdentifier(t,e,n,a)}resolveEnum(t,e){return this.reflectionCapabilities.resolveEnum(t,e)}}const ro=new ao(new ou);class io{constructor(t,e,n){this.key=t,this.optional=e,this.visibility=n}static fromKey(t){return new io(t,!1,null)}}const so=[];class uo{constructor(t,e,n){this.key=t,this.resolvedFactories=e,this.multiProvider=n,this.resolvedFactory=this.resolvedFactories[0]}}class oo{constructor(t,e){this.factory=t,this.dependencies=e}}function lo(t){let e,n;if(t.useClass){const a=G(t.useClass);e=ro.factory(a),n=ho(a)}else t.useExisting?(e=t=>t,n=[io.fromKey(to.get(t.useExisting))]):t.useFactory?(e=t.useFactory,n=function(t,e){if(e){const n=e.map(t=>[t]);return e.map(e=>go(t,e,n))}return ho(t)}(t.useFactory,t.deps)):(e=()=>t.useValue,n=so);return new oo(e,n)}function co(t){return new uo(to.get(t.provide),[lo(t)],t.multi||!1)}function fo(t){const e=function(t,e){for(let n=0;n<t.length;n++){const a=t[n],r=e.get(a.key.id);if(r){if(a.multiProvider!==r.multiProvider)throw Error(`Cannot mix multi providers and regular providers, got: ${r} ${a}`);if(a.multiProvider)for(let t=0;t<a.resolvedFactories.length;t++)r.resolvedFactories.push(a.resolvedFactories[t]);else e.set(a.key.id,a)}else{let t;t=a.multiProvider?new uo(a.key,a.resolvedFactories.slice(),a.multiProvider):a,e.set(a.key.id,t)}}return e}(function t(e,n){return e.forEach(e=>{if(e instanceof nu)n.push({provide:e,useClass:e});else if(e&&"object"==typeof e&&void 0!==e.provide)n.push(e);else{if(!(e instanceof Array))throw Error("Invalid provider - only instances of Provider and Type are allowed, got: "+e);t(e,n)}}),n}(t,[]).map(co),new Map);return Array.from(e.values())}function ho(t){const e=ro.parameters(t);if(!e)return[];if(e.some(t=>null==t))throw Xu(t,e);return e.map(n=>go(t,n,e))}function go(t,e,n){let a=null,r=!1;if(!Array.isArray(e))return po(e instanceof T?e.token:e,r,null);let i=null;for(let s=0;s<e.length;++s){const t=e[s];t instanceof nu?a=t:t instanceof T?a=t.token:t instanceof w?r=!0:t instanceof O||t instanceof S?i=t:t instanceof K&&(a=t)}if(a=G(a),null!=a)return po(a,r,i);throw Xu(t,n)}function po(t,e,n){return new io(to.get(t),e,n)}const bo=new Object;class mo{static resolve(t){return fo(t)}static resolveAndCreate(t,e){const n=mo.resolve(t);return mo.fromResolvedProviders(n,e)}static fromResolvedProviders(t,e){return new yo(t,e)}}let yo=(()=>{class t{constructor(t,e){this._constructionCounter=0,this._providers=t,this.parent=e||null;const n=t.length;this.keyIds=new Array(n),this.objs=new Array(n);for(let a=0;a<n;a++)this.keyIds[a]=t[a].key.id,this.objs[a]=bo}get(t,e=Z){return this._getByKey(to.get(t),null,e)}resolveAndCreateChild(t){const e=mo.resolve(t);return this.createChildFromResolved(e)}createChildFromResolved(e){const n=new t(e);return n.parent=this,n}resolveAndInstantiate(t){return this.instantiateResolved(mo.resolve([t])[0])}instantiateResolved(t){return this._instantiateProvider(t)}getProviderAtIndex(t){if(t<0||t>=this._providers.length)throw function(t){return Error(`Index ${t} is out-of-bounds.`)}(t);return this._providers[t]}_new(t){if(this._constructionCounter++>this._getMaxNumberOfObjects())throw Ju(this,t.key,(function(t){return"Cannot instantiate cyclic dependency!"+Zu(t)}));return this._instantiateProvider(t)}_getMaxNumberOfObjects(){return this.objs.length}_instantiateProvider(t){if(t.multiProvider){const e=new Array(t.resolvedFactories.length);for(let n=0;n<t.resolvedFactories.length;++n)e[n]=this._instantiate(t,t.resolvedFactories[n]);return e}return this._instantiate(t,t.resolvedFactories[0])}_instantiate(t,e){const n=e.factory;let a,r;try{a=e.dependencies.map(t=>this._getByReflectiveDependency(t))}catch(s){throw s.addKey&&s.addKey(this,t.key),s}try{r=n(...a)}catch(s){throw Ju(this,t.key,(function(t){const e=j(t[0].token);return`${i.message}: Error during instantiation of ${e}!${Zu(t)}.`}),i=s)}var i;return r}_getByReflectiveDependency(t){return this._getByKey(t.key,t.visibility,t.optional?null:Z)}_getByKey(e,n,a){return e===t.INJECTOR_KEY?this:n instanceof O?this._getByKeySelf(e,a):this._getByKeyDefault(e,a,n)}_getObjByKeyId(t){for(let e=0;e<this.keyIds.length;e++)if(this.keyIds[e]===t)return this.objs[e]===bo&&(this.objs[e]=this._new(this._providers[e])),this.objs[e];return bo}_throwOrNull(t,e){if(e!==Z)return e;throw function(t,e){return Ju(t,e,(function(t){return`No provider for ${j(t[0].token)}!${Zu(t)}`}))}(this,t)}_getByKeySelf(t,e){const n=this._getObjByKeyId(t.id);return n!==bo?n:this._throwOrNull(t,e)}_getByKeyDefault(e,n,a){let r;for(r=a instanceof S?this.parent:this;r instanceof t;){const t=r,n=t._getObjByKeyId(e.id);if(n!==bo)return n;r=t.parent}return null!==r?r.get(e.token,n):this._throwOrNull(e,n)}get displayName(){return`ReflectiveInjector(providers: [${function(t,e){const n=new Array(t._providers.length);for(let a=0;a<t._providers.length;++a)n[a]=e(t.getProviderAtIndex(a));return n}(this,t=>' "'+t.key.displayName+'" ').join(", ")}])`}toString(){return this.displayName}}return t.INJECTOR_KEY=to.get(Bu),t})();const vo=new K("AnalyzeForEntryComponents");class xo{}const _o=_("ContentChildren",(t,e={})=>Object.assign({selector:t,first:!1,isViewQuery:!1,descendants:!1},e),xo),To=_("ContentChild",(t,e={})=>Object.assign({selector:t,first:!0,isViewQuery:!1,descendants:!0},e),xo),wo=_("ViewChildren",(t,e={})=>Object.assign({selector:t,first:!1,isViewQuery:!0,descendants:!0},e),xo),Oo=_("ViewChild",(t,e)=>Object.assign({selector:t,first:!0,isViewQuery:!0,descendants:!0},e),xo);function So(t){const e=[],n=new Map;function a(e){let a=n.get(e);if(!a){const r=t(e);n.set(e,a=r.then(Ao))}return a}return Io.forEach((t,n)=>{const r=[];t.templateUrl&&r.push(a(t.templateUrl).then(e=>{t.template=e}));const i=t.styleUrls,s=t.styles||(t.styles=[]),u=t.styles.length;i&&i.forEach((e,n)=>{s.push(""),r.push(a(e).then(a=>{s[u+n]=a,i.splice(i.indexOf(e),1),0==i.length&&(t.styleUrls=void 0)}))});const o=Promise.all(r).then(()=>function(t){No.delete(t)}(n));e.push(o)}),Ro(),Promise.all(e).then(()=>{})}let Io=new Map;const No=new Set;function Co(t){return!!(t.templateUrl&&!t.hasOwnProperty("template")||t.styleUrls&&t.styleUrls.length)}function Ro(){const t=Io;return Io=new Map,t}function Ao(t){return"string"==typeof t?t:t.text()}function ko(t){const e=Ae(),n=e[1];n.firstTemplatePass&&(function(t,e,n){const a=t.expandoInstructions,r=a.length;r>=2&&a[r-2]===e.hostBindings?a[r-1]=a[r-1]+n:a.push(e.hostBindings,n)}(n,Se,t),function(t,e,n){for(let a=0;a<n;a++)e.push(ci),t.blueprint.push(ci),t.data.push(null)}(n,e,t))}let Eo=null;function Lo(){if(!Eo){const t=U.Symbol;if(t&&t.iterator)Eo=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e<t.length;++e){const n=t[e];"entries"!==n&&"size"!==n&&Map.prototype[n]===Map.prototype.entries&&(Eo=n)}}}return Eo}function Do(t,e){return t===e||"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)}function Po(t,e){const n=qo(t),a=qo(e);if(n&&a)return function(t,e,n){const a=t[Lo()](),r=e[Lo()]();for(;;){const t=a.next(),e=r.next();if(t.done&&e.done)return!0;if(t.done||e.done)return!1;if(!n(t.value,e.value))return!1}}(t,e,Po);{const r=t&&("object"==typeof t||"function"==typeof t),i=e&&("object"==typeof e||"function"==typeof e);return!(n||!r||a||!i)||Do(t,e)}}class Mo{constructor(t){this.wrapped=t}static wrap(t){return new Mo(t)}static unwrap(t){return Mo.isWrapped(t)?t.wrapped:t}static isWrapped(t){return t instanceof Mo}}function qo(t){return!!jo(t)&&(Array.isArray(t)||!(t instanceof Map)&&Lo()in t)}function jo(t){return null!==t&&("function"==typeof t||"object"==typeof t)}function Fo(t,e,n){return t[e]=n}function Vo(t,e){return t[e]}function Go(t,e,n){return!!yn(t[e],n)&&(t[e]=n,!0)}function Bo(t,e,n,a){const r=Go(t,e,n);return Go(t,e+1,a)||r}function zo(t,e,n,a,r){const i=Bo(t,e,n,a);return Go(t,e+2,r)||i}function Yo(t,e,n,a,r,i){const s=Bo(t,e,n,a);return Bo(t,e+2,r,i)||s}function Ho(t,e,n){const a=on(),r=Uo(Ae(),e);return r!==ci&&Yi(a,t,r,n),Ho}function Uo(t,e){const n=t[7]++;return cs(t),Go(t,n,e)?e:ci}function Wo(t,e,n,a){const r=on(),i=Ae(),s=Uo(i,e);return s!==ci&&es(r,t,s,i,n,a),Wo}function Ko(t,e){let n=!1;const a=t[1].data;let r=t[7];if(null==a[r]){for(let t=2;t<e.length;t+=2)a[r++]=e[t];r=t[7]}for(let s=1;s<e.length;s+=2)n=Go(t,r++,e[s])||n;if(t[7]=r,cs(t,e[0],e[e.length-1]),!n)return ci;let i=e[0];for(let s=1;s<e.length;s+=2)i+=vn(e[s])+e[s+1];return i}function $o(t,e,n,a){const r=Go(t,t[7]++,n);return cs(t,e,a),r?e+vn(n)+a:ci}function Zo(t,e,n,a,r,i){const s=t[7],u=Bo(t,s,n,r);return t[7]+=2,cs(t,e,i)&&(t[1].data[s]=a),u?e+vn(n)+a+vn(r)+i:ci}function Jo(t,e,n,a,r,i,s,u){const o=t[7],l=zo(t,o,n,r,s);if(t[7]+=3,cs(t,e,u)){const e=t[1].data;e[o]=a,e[o+1]=i}return l?e+vn(n)+a+vn(r)+i+vn(s)+u:ci}function Qo(t,e,n,a,r,i,s,u,o,l){const d=t[7],c=Yo(t,d,n,r,s,o);if(t[7]+=4,cs(t,e,l)){const e=t[1].data;e[d]=a,e[d+1]=i,e[d+2]=u}return c?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l:ci}function Xo(t,e,n,a,r,i,s,u,o,l,d,c){const f=t[7];let h=Yo(t,f,n,r,s,o);if(h=Go(t,f+4,d)||h,t[7]+=5,cs(t,e,c)){const e=t[1].data;e[f]=a,e[f+1]=i,e[f+2]=u,e[f+3]=l}return h?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l+vn(d)+c:ci}function tl(t,e,n,a,r,i,s,u,o,l,d,c,f,h){const g=t[7];let p=Yo(t,g,n,r,s,o);if(p=Bo(t,g+4,d,f)||p,t[7]+=6,cs(t,e,h)){const e=t[1].data;e[g]=a,e[g+1]=i,e[g+2]=u,e[g+3]=l,e[g+4]=c}return p?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l+vn(d)+c+vn(f)+h:ci}function el(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p){const b=t[7];let m=Yo(t,b,n,r,s,o);if(m=zo(t,b+4,d,f,g)||m,t[7]+=7,cs(t,e,p)){const e=t[1].data;e[b]=a,e[b+1]=i,e[b+2]=u,e[b+3]=l,e[b+4]=c,e[b+5]=h}return m?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l+vn(d)+c+vn(f)+h+vn(g)+p:ci}function nl(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m){const y=t[7];let v=Yo(t,y,n,r,s,o);if(v=Yo(t,y+4,d,f,g,b)||v,t[7]+=8,cs(t,e,m)){const e=t[1].data;e[y]=a,e[y+1]=i,e[y+2]=u,e[y+3]=l,e[y+4]=c,e[y+5]=h,e[y+6]=p}return v?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l+vn(d)+c+vn(f)+h+vn(g)+p+vn(b)+m:ci}function al(t,e,n,a,r,i){const s=on(),u=Ae(),o=$o(u,e,n,a);return o!==ci&&es(s,t,o,u,r,i),al}function rl(t,e,n,a,r,i,s,u){const o=on(),l=Ae(),d=Zo(l,e,n,a,r,i);return d!==ci&&es(o,t,d,l,s,u),rl}function il(t,e,n,a,r,i,s,u,o,l){const d=on(),c=Ae(),f=Jo(c,e,n,a,r,i,s,u);return f!==ci&&es(d,t,f,c,o,l),il}function sl(t,e,n,a,r,i,s,u,o,l,d,c){const f=on(),h=Ae(),g=Qo(h,e,n,a,r,i,s,u,o,l);return g!==ci&&es(f,t,g,h,d,c),sl}function ul(t,e,n,a,r,i,s,u,o,l,d,c,f,h){const g=on(),p=Ae(),b=Xo(p,e,n,a,r,i,s,u,o,l,d,c);return b!==ci&&es(g,t,b,p,f,h),ul}function ol(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p){const b=on(),m=Ae(),y=tl(m,e,n,a,r,i,s,u,o,l,d,c,f,h);return y!==ci&&es(b,t,y,m,g,p),ol}function ll(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m){const y=on(),v=Ae(),x=el(v,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p);return x!==ci&&es(y,t,x,v,b,m),ll}function dl(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m,y,v){const x=on(),_=Ae(),T=nl(_,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m);return T!==ci&&es(x,t,T,_,y,v),dl}function cl(t,e,n,a){const r=on(),i=Ae(),s=Ko(i,e);return s!==ci&&es(r,t,s,i,n,a),cl}function fl(t){us(Mr(t),t)}function hl(t){!function(t,e){const n=0===t.flags;if(t.flags|=1,n&&t.clean==Si){let e;t.clean=new Promise(t=>e=t),t.scheduler(()=>{if(1&t.flags&&(t.flags&=-2,ss(t)),2&t.flags){t.flags&=-3;const e=t.playerHandler;e&&e.flushPlayers()}t.clean=Si,e(null)})}}(is(Mr(t))[9])}function gl(t){const e=Ae(),n=yl(e,t,null,null);e[1].firstTemplatePass&&(n.tViews=[]),He()}function pl(t,e,n,a,r,i,s,u){const o=Ae(),l=o[1],d=yl(o,t,r||null,i||null);if(l.firstTemplatePass){Hi(l,o,d,s||null);const t=d.tViews=Fi(-1,e,n,a,l.directiveRegistry,l.pipeRegistry,null,null);null!==l.queries&&(l.queries.template(l,d),t.queries=l.queries.embeddedTView(d))}qi(l,o,d,u),qr(be(d,o),o),re(l,d),He()}function bl(t){const e=Ae(),n=e[1];Be(ve(n.data,t),!0),e[t+19][2]=0,ie(e,n,$e(),void 0)}function ml(){let t=Ge();Ye()?He():(t=t.parent,Be(t,!1));const e=Ae()[t.index],n=e[2];for(;n<e.length-9;)Rs(e,n)}function yl(t,e,n,a){const r=e+19,i=t[r]=t[12].createComment(""),s=Ai(t[1],t[6],e,0,n,a),u=t[r]=ns(i,t,i,s);return Ms(i,s,t),rs(t,u),s}function vl(t,e){const n=Ae(),a=n[1],r=t+19;r>=a.data.length&&(a.data[r]=null,a.blueprint[r]=null),n[r]=e}function xl(t){return ve(We,t)}function _l(t){return ve(Ae(),t)}function Tl(t,e=C.Default){t=G(t);const n=Ae();return null==n?rt(t,e):_a(Ge(),n,t,e)}function wl(t){return xa(Ge(),t)}function Ol(){var t,e;Ae()[1].firstTemplatePass&&(t=Ge(),e=jl(),Nn(Vl(t),e),Nn(Fl(t),e))}function Sl(t){bn(t)}function Il(t,e,n){Nl(on(),t,e,n)}function Nl(t,e,n,a){Rl(t,Ae()[7]++,e,function(t,e){if(t===ci)return t;let n=null;return null!==t&&(n=e?vn(t)+e:t),n}(n,a),!1,Bl())}function Cl(t,e){const n=Ae()[7]++;Rl(on(),n,t,e,!0,Bl())}function Rl(t,e,n,a,r,i){const s=Ae(),u=ye(t,s),o=be(u,s);let l=!1;if(a!==ci)if(r)l=Qr(Vl(u),s,o,n,e,a,i,!1);else{const t=mn();l=Xr(Fl(u),s,o,n,e,a,t,i,!1)}return l}function Al(t){const e=on(),n=Ae(),a=ye(e,n),r=Fl(a),i=jl(),s=n[7]++;!i&&$n(a)&&t!==ci&&(Dl(r,n,a,s,t,!1),t=ci),Ll(e,r,s,t,!1,Bl())}function kl(t){El(on(),t)}function El(t,e){const n=Ae(),a=ye(t,n),r=Vl(a),i=jl(),s=n[7]++;!i&&Kn(a)&&e!==ci&&(Dl(r,n,a,s,e,!0),e=ci),Ll(t,r,s,e,!0,Bl())}function Ll(t,e,n,a,r,i){pi();const s=Ae();let u=!1;if(a!==ci){const o=be(ye(t,s),s),l=s[n];u=Gn(l,a);const d=function(t,e,n){const a=Array.isArray(t)?t:[null];a[0]=e||null;for(let u=1;u<a.length;u+=2)Jn(a,u,null);let r,i=null,s=!1;if("string"==typeof e?e.length&&(i=e.split(/\s+/),s=!0):(i=e?Object.keys(e):null,r=e),i)for(let u=0;u<i.length;u++){const t=i[u];vi(a,n?Yn(t):t,!!s||r[t],!0)}return a}(l,a,!r);r?Qr(e,s,o,null,n,d,i,u):Xr(e,s,o,null,n,d,mn(),i,u)}return u}function Dl(t,e,n,a,r,i){e[a]!==r&&((r||jn(t))&&ys(e,n.inputs[i?"class":"style"],function(t,e,n){let a=e;var r;return t.length>0&&(a=n?zn(t,((r=e)&&"string"!=typeof r&&(r=Object.keys(r).join(" ")),r||"")):zn(t,function(t){let e="";if(t){const n=Object.keys(t);for(let a=0;a<n.length;a++){const r=n[a];e=zn(e,`${r}:${t[r]}`,";")}}return e}(e),";")),a}(Wn(t),r,i)),e[a]=r)}function Pl(){const t=on(),e=Ae(),n=ye(t,e),a=function(t,e){return 3===t.type?e[12]:null}(n,e),r=be(n,e),i=jl(),s=mn();(function(t,e,n,a,r,i,s){const u=n?Fn(n):!!a&&Fn(a),o=qn(n,i),l=qn(a,i);Jr.length&&(o||l)&&ei();const d=fe(r,u),c=ii(t,r,e,n,o,d.classesBitMask,li,null),f=ii(t,r,e,a,l,d.stylesBitMask,oi,s);c&&f?(he(),u&&function(t){le.delete(t)}(r)):u&&function(t,e){le.set(t,e)}(r,d)})(a,e,Vl(n),Fl(n),r,i,s),bn(null)}function Ml(t,e,n){let a=!1,r=Hn(t.styles),i=Hn(t.classes),s=-1;for(let u=n;u<e.length;u++){const t=e[u];"number"==typeof t?s=t:1==s?(i=i||[""],vi(i,t,!0),a=!0):2==s&&(r=r||[""],vi(r,t,e[++u]),a=!0)}return i&&i.length>1&&(t.classes||(t.classes=i),ql(t.classes,xi(i,!0))),r&&r.length>1&&(t.styles||(t.styles=r),ql(t.styles,xi(r,!1))),a}function ql(t,e){Hn(t)[0]=e}function jl(){return De+Pe}function Fl(t){return Gl(t,!1)}function Vl(t){return Gl(t,!0)}function Gl(t,e){let n=e?t.classes:t.styles;return Un(n)||(n=[n||[""],0,0,1,0,"--MAP--"],e?t.classes=n:t.styles=n),n}function Bl(){return Me>0}function zl(t,e,n,a){const r=Ae(),i=r[1],s=r[t+19]=Ci(e),u=r[12],o=Ai(i,r[6],t,3,e,n||null);if(null!=n){const t=na(s,n);i.firstTemplatePass&&Ml(o,n,t)}if(xs(u,s,o),Ms(s,o,r),0===de&&qr(s,r),de++,i.firstTemplatePass){Hi(i,r,o,a||null);const t=hs(o);t&&t.hasOwnProperty("class")&&(o.flags|=8),t&&t.hasOwnProperty("style")&&(o.flags|=16),null!==i.queries&&i.queries.elementStart(i,o)}qi(i,r,o),Mi(i,o,r)}function Yl(){let t=Ge();Ye()?He():(t=t.parent,Be(t,!1));const e=t,n=Ae(),a=n[1];re(a,t),de--,a.firstTemplatePass&&null!==a.queries&&Qt(t)&&a.queries.elementEnd(t),Kn(e)&&e.classes&&Wl(e.classes,n,e.inputs.class),$n(e)&&e.styles&&Wl(e.styles,n,e.inputs.style)}function Hl(t,e,n,a){zl(t,e,n,a),Yl()}function Ul(t){const e=on(),n=Ae(),a=n[1],r=ye(e,n);if(3===r.type){const e=be(r,n),i=na(e,t);a.firstTemplatePass&&Ml(r,t,i)&&xs(n[12],e,r)}}function Wl(t,e,n){ys(e,n,Wn(t)||null)}function Kl(t,e,n){const a=Ae(),r=a[1],i=a[t+19]=a[12].createComment(""),s=Ai(r,a[6],t,4,"ng-container",e||null);e&&r.firstTemplatePass&&Ml(s,e,0),Ms(i,s,a),r.firstTemplatePass&&(Hi(r,a,s,n||null),r.queries&&r.queries.elementStart(r,s)),qi(r,a,s),qr(i,a),Mi(r,s,a)}function $l(){let t=Ge();const e=Ae()[1];Ye()?He():(t=t.parent,Be(t,!1)),re(e,t),e.firstTemplatePass&&null!==e.queries&&Qt(t)&&e.queries.elementEnd(t)}function Zl(t,e,n){Kl(t,e,n),$l()}function Jl(t,e,n){const a=Ae(),r=Ge(),i=2===r.type?r.parent:r,s=a[i.index];let u=function(t,e,n){for(let a=e+9;a<t.length;a++){const e=t[a][1].id;if(e===n)return t[a];if(!(e<n))break;Rs(t,a-9)}return null}(s,s[2],t);if(u)Ee=!0,an(u,u[1].node);else{u=Ri(a,function(t,e,n,a){const r=Ae()[1],i=a.tViews;return(t>=i.length||null==i[t])&&(i[t]=Fi(t,null,e,n,r.directiveRegistry,r.pipeRegistry,null,null)),i[t]}(t,e,n,i),null,16,null,null);const s=Ye()?r:r&&r.parent;ki(u[1],s,t,u),an(u,u[1].node)}return s&&(Ue(u)&&Is(u,s,s[2]),s[2]++),Ue(u)?3:2}function Ql(){const t=Ae(),e=t[6];Ue(t)&&(Ii(t),t[2]&=-5),we(t),Ii(t),sn(t[3][3],!0),Be(e,!1)}function Xl(){return Ae()}function td(t){return!!t&&"function"==typeof t.then}function ed(t){return!!t&&"function"==typeof t.subscribe}function nd(t,e,n=!1,a){rd(t,e,n,a)}function ad(t,e,n=!1,a){rd(t,e,n,a,bs)}function rd(t,e,n=!1,a,r){const i=Ae(),s=Ge(),u=i[1],o=u.firstTemplatePass&&(u.cleanup||(u.cleanup=[]));let l=!0;if(3===s.type){const u=be(s,i),d=a?a(u):St,c=d.target||u,f=r?r(s,i):i[12],h=gs(i),g=h.length,p=a?t=>a(ge(t[s.index])).target:s.index;if(ta(f)){let n=null;if(!a&&function(t){return t.directiveEnd>t.directiveStart}(s)&&(n=function(t,e,n){const a=t[1].cleanup;if(null!=a)for(let r=0;r<a.length-1;r+=2){const i=a[r];if(i===e&&a[r+1]===n){const e=t[8],n=a[r+2];return e.length>n?e[n]:null}"string"==typeof i&&(r+=2)}return null}(i,t,s.index)),null!==n)e.__ngNextListenerFn__=n.__ngNextListenerFn__,n.__ngNextListenerFn__=e,l=!1;else{e=sd(s,i,e,!1);const n=f.listen(d.name||c,t,e);h.push(e,n),o&&o.push(t,p,g,g+1)}}else e=sd(s,i,e,!0),c.addEventListener(t,e,n),h.push(e),o&&o.push(t,p,g,n)}void 0===s.outputs&&(s.outputs=Bi(s,1));const d=s.outputs;let c;if(l&&d&&(c=d[t])){const n=c.length;if(n){const a=gs(i);for(let r=0;r<n;r+=3){const n=i[c[r]][c[r+2]].subscribe(e),u=a.length;a.push(e,n),o&&o.push(t,s.index,u,-(u+1))}}}}function id(t,e,n){try{return!1!==e(n)}catch(a){return ms(t,a),!1}}function sd(t,e,n,a){return function r(i){const s=1&t.flags?xe(t.index,e):e;0==(32&e[2])&&is(s);let u=id(e,n,i),o=r.__ngNextListenerFn__;for(;o;)u=id(e,o,i)&&u,o=o.__ngNextListenerFn__;return a&&!1===u&&(i.preventDefault(),i.returnValue=!1),u}}function ud(t=1){return rn(t)}function od(t,e){let n=null;const a=function(t){const e=t.attrs;if(null!=e){const t=e.indexOf(5);if(0==(1&t))return e[t+1]}return null}(t);for(let r=0;r<e.length;r++){const i=e[r];if("*"!==i){if(null===a?$r(t,i,!0):Zr(a,i))return r}else n=r}return n}function ld(t){const e=da(Ae())[6];if(!e.projection){const n=e.projection=new Array(t?t.length:1).fill(null),a=n.slice();let r=e.child;for(;null!==r;){const e=t?od(r,t):0;null!==e&&(a[e]?a[e].projectionNext=r:n[e]=r,a[e]=r),r=r.next}}}let dd=!1;function cd(t){dd=t}function fd(t,e=0,n){const a=Ae(),r=Ai(a[1],a[6],t,1,null,n||null);null===r.projection&&(r.projection=e),He(),dd||Fs(a,r,e,da(a))}function hd(t,e,n){return gd(t,"",e,"",n),hd}function gd(t,e,n,a,r){const i=on(),s=$o(Ae(),e,n,a);return s!==ci&&Yi(i,t,s,r),gd}function pd(t,e,n,a,r,i,s){const u=on(),o=Zo(Ae(),e,n,a,r,i);return o!==ci&&Yi(u,t,o,s),pd}function bd(t,e,n,a,r,i,s,u,o){const l=on(),d=Jo(Ae(),e,n,a,r,i,s,u);return d!==ci&&Yi(l,t,d,o),bd}function md(t,e,n,a,r,i,s,u,o,l,d){const c=on(),f=Qo(Ae(),e,n,a,r,i,s,u,o,l);return f!==ci&&Yi(c,t,f,d),md}function yd(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=on(),g=Xo(Ae(),e,n,a,r,i,s,u,o,l,d,c);return g!==ci&&Yi(h,t,g,f),yd}function vd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g){const p=on(),b=tl(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h);return b!==ci&&Yi(p,t,b,g),vd}function xd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b){const m=on(),y=el(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h,g,p);return y!==ci&&Yi(m,t,y,b),xd}function _d(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m,y){const v=on(),x=nl(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m);return x!==ci&&Yi(v,t,x,y),_d}function Td(t,e,n){const a=on(),r=Ko(Ae(),e);return r!==ci&&Yi(a,t,r,n),Td}function wd(t,e){const n=Ae(),a=n[t+19]=Os(e,n[12]),r=Ai(n[1],n[6],t,3,null,null);He(),Ms(a,r,n)}function Od(t){const e=Ae(),n=on(),a=Uo(e,t);a!==ci&&vs(e,n,vn(a))}function Sd(t){return Id("",t,""),Sd}function Id(t,e,n){const a=on(),r=Ae(),i=$o(r,t,e,n);return i!==ci&&vs(r,a,i),Id}function Nd(t,e,n,a,r){const i=on(),s=Ae(),u=Zo(s,t,e,n,a,r);return u!==ci&&vs(s,i,u),Nd}function Cd(t,e,n,a,r,i,s){const u=on(),o=Ae(),l=Jo(o,t,e,n,a,r,i,s);return l!==ci&&vs(o,u,l),Cd}function Rd(t,e,n,a,r,i,s,u,o){const l=on(),d=Ae(),c=Qo(d,t,e,n,a,r,i,s,u,o);return c!==ci&&vs(d,l,c),Rd}function Ad(t,e,n,a,r,i,s,u,o,l,d){const c=on(),f=Ae(),h=Xo(f,t,e,n,a,r,i,s,u,o,l,d);return h!==ci&&vs(f,c,h),Ad}function kd(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=on(),g=Ae(),p=tl(g,t,e,n,a,r,i,s,u,o,l,d,c,f);return p!==ci&&vs(g,h,p),kd}function Ed(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g){const p=on(),b=Ae(),m=el(b,t,e,n,a,r,i,s,u,o,l,d,c,f,h,g);return m!==ci&&vs(b,p,m),Ed}function Ld(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b){const m=on(),y=Ae(),v=nl(y,t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b);return v!==ci&&vs(y,m,v),Ld}function Dd(t){const e=on(),n=Ae(),a=Ko(n,t);return a!==ci&&vs(n,e,a),Dd}function Pd(t,e,n){const a=$o(Ae(),t,e,n);El(on(),a)}function Md(t,e,n,a,r){const i=Zo(Ae(),t,e,n,a,r);El(on(),i)}function qd(t,e,n,a,r,i,s){const u=Jo(Ae(),t,e,n,a,r,i,s);El(on(),u)}function jd(t,e,n,a,r,i,s,u,o){const l=Qo(Ae(),t,e,n,a,r,i,s,u,o);El(on(),l)}function Fd(t,e,n,a,r,i,s,u,o,l,d){const c=Xo(Ae(),t,e,n,a,r,i,s,u,o,l,d);El(on(),c)}function Vd(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=tl(Ae(),t,e,n,a,r,i,s,u,o,l,d,c,f);El(on(),h)}function Gd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g){const p=el(Ae(),t,e,n,a,r,i,s,u,o,l,d,c,f,h,g);El(on(),p)}function Bd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b){const m=nl(Ae(),t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b);El(on(),m)}function zd(t){const e=Ko(Ae(),t);El(on(),e)}function Yd(t,e,n,a,r){const i=$o(Ae(),e,n,a);return Nl(on(),t,i,r),Yd}function Hd(t,e,n,a,r,i,s){const u=Zo(Ae(),e,n,a,r,i);return Nl(on(),t,u,s),Hd}function Ud(t,e,n,a,r,i,s,u,o){const l=Jo(Ae(),e,n,a,r,i,s,u);return Nl(on(),t,l,o),Ud}function Wd(t,e,n,a,r,i,s,u,o,l,d){const c=Qo(Ae(),e,n,a,r,i,s,u,o,l);return Nl(on(),t,c,d),Wd}function Kd(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=Xo(Ae(),e,n,a,r,i,s,u,o,l,d,c);return Nl(on(),t,h,f),Kd}function $d(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g){const p=tl(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h);return Nl(on(),t,p,g),$d}function Zd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b){const m=el(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h,g,p);return Nl(on(),t,m,b),Zd}function Jd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m,y){const v=nl(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m);return Nl(on(),t,v,y),Jd}function Qd(t,e,n){const a=Ko(Ae(),e);return Nl(on(),t,a,n),Qd}function Xd(t,e,n){const a=on(),r=Uo(Ae(),e);return r!==ci&&Yi(a,t,r,n,!0),Xd}function tc(t,e,n){const a=on(),r=Uo(Ae(),e);return r!==ci&&Yi(a,t,r,n,!0,bs),tc}function ec(t){const e=lc(t);return void 0===e.component&&(e.component=function(t,e){const n=e[1].data[t];return 1&n.flags?e[n.directiveStart]:null}(e.nodeIndex,e.lView)),e.component}function nc(t){return lc(t).lView[9]}function ac(t){let e,n=uc(t).lView;for(;null===n[0]&&(e=la(n));)n=e;return 512&n[2]?null:n[9]}function rc(t){return[...ca(t).components]}function ic(t){const e=uc(t);return new Ca(e.lView[1].data[e.nodeIndex],e.lView)}function sc(t){const e=uc(t);return void 0===e.directives&&(e.directives=Gr(e.nodeIndex,e.lView,!1)),e.directives||[]}function uc(t,e=!0){const n=Dr(t);if(!n&&e)throw new Error("Invalid ng target");return n}function oc(t){return Dr(t).native}function lc(t){if(!(t instanceof Node))throw new Error("Expecting instance of DOM Node");return uc(t)}function dc(t){return"boolean"==typeof t.useCapture}function cc(t){const e=lc(t).lView,n=e[8],a=e[1].cleanup,r=[];if(a&&n)for(let i=0;i<a.length;){const s=a[i++],u=a[i++];if("string"==typeof s){const o=s,l=ge(e[u]),d=n[a[i++]],c=a[i++],f="boolean"==typeof c?c:!(c>=0)&&null;t==l&&r.push({element:t,name:o,callback:d,useCapture:f})}}return r.sort(fc),r}function fc(t,e){return t.name==e.name?0:t.name<e.name?-1:1}let hc=!1;function gc(){hc||(hc=!0,pc("getComponent",ec),pc("getContext",nc),pc("getListeners",cc),pc("getViewComponent",ac),pc("getHostElement",oc),pc("getInjector",ic),pc("getRootComponents",rc),pc("getDirectives",sc),pc("markDirty",hl))}function pc(t,e){if(U){let n=U.ng;n||(n=U.ng={}),n[t]=e}}function bc(t,e={}){qe(null);const n=e.rendererFactory||ea,a=e.sanitizer||null,r=Ht(t);r.type!=t&&(r.type=t);const i=Vi(n,e.host||r.selectors[0][0]),s=r.onPush?576:528,u=vc(e.scheduler,e.playerHandler),o=n.createRenderer(i,r),l=Ri(null,Fi(-1,null,1,0,null,null,null,null),u,s,null,null,n,o,void 0,e.injector||null),d=an(l,null);let c,f=!1;try{n.begin&&n.begin();const t=mc(i,r,l,n,o,a);c=yc(t,r,l,u,e.hostFeatures||null),rs(l,t),Ii(l),l[2]&=-5,we(l),Ii(l),f=!0}finally{sn(d,f),n.end&&n.end()}return c}function mc(t,e,n,a,r,i){Ee=!1,ke=null,de=0,Oe=!0,bn(null),he(),le.clear();const s=n[1];n[19]=t;const u=Ai(s,null,0,3,null,null),o=Ri(n,ji(e),null,e.onPush?64:16,n[19],u,a,r,i);return s.firstTemplatePass&&(va(pa(u,n),s,e.type),u.flags=1,Qi(u,n.length,1),Zi(u)),n[19]=o}function yc(t,e,n,a,r){const i=n[1],s=function(t,e,n){const a=Ge();t.firstTemplatePass&&(n.providersResolver&&n.providersResolver(n),Wi(t,a,1),Xi(t,e,n,n.factory));const r=Sa(t.data,e,e.length-1,a);return $i(e,a,r),r}(i,n,e);a.components.push(s),t[9]=s,r&&r.forEach(t=>t(s,e)),e.contentQueries&&e.contentQueries(1,s,n.length-1);const u=Ge();return i.firstTemplatePass&&e.hostBindings&&(qe(u.index-19),Ui(e,i.expandoInstructions,s,u,i.firstTemplatePass),qe(null)),s}function vc(t,e){return{components:[],scheduler:t||_n,clean:fs,playerHandler:e||null,flags:0}}function xc(t,e){const n=Te(t)[1],a=n.data.length-1;ae(a,e,n,-1,-1,-1),re(n,{directiveStart:a,directiveEnd:a+1})}function _c(t){return ca(t).clean}class Tc{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function wc(){return Oc.ngInherit=!0,Oc}function Oc(t){t.type.prototype.ngOnChanges&&(t.setInput=Sc,t.onChanges=function(){const t=Ic(this),e=t&&t.current;if(e){const n=t.previous;if(n===St)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}})}function Sc(t,e,n,a){const r=Ic(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:St,current:null}),i=r.current||(r.current={}),s=r.previous,u=this.declaredInputs[n],o=s[u];i[u]=new Tc(o&&o.currentValue,e,s===St),t[a]=e}function Ic(t){return t.__ngSimpleChanges__||null}function Nc(t){let e=Object.getPrototypeOf(t.type.prototype).constructor;for(;e;){let n=void 0;if(te(t))n=e.ngComponentDef||e.ngDirectiveDef;else{if(e.ngComponentDef)throw new Error("Directives cannot inherit Components");n=e.ngDirectiveDef}const a=e.ngBaseDef;if(a||n){const e=t;e.inputs=Cc(t.inputs),e.declaredInputs=Cc(t.declaredInputs),e.outputs=Cc(t.outputs)}if(a){const e=a.viewQuery,n=a.contentQueries,r=a.hostBindings;r&&kc(t,r),e&&Rc(t,e),n&&Ac(t,n),A(t.inputs,a.inputs),A(t.declaredInputs,a.declaredInputs),A(t.outputs,a.outputs)}if(n){const e=n.hostBindings;e&&kc(t,e);const a=n.viewQuery,r=n.contentQueries;a&&Rc(t,a),r&&Ac(t,r),A(t.inputs,n.inputs),A(t.declaredInputs,n.declaredInputs),A(t.outputs,n.outputs),t.afterContentChecked=t.afterContentChecked||n.afterContentChecked,t.afterContentInit=t.afterContentInit||n.afterContentInit,t.afterViewChecked=t.afterViewChecked||n.afterViewChecked,t.afterViewInit=t.afterViewInit||n.afterViewInit,t.doCheck=t.doCheck||n.doCheck,t.onDestroy=t.onDestroy||n.onDestroy,t.onInit=t.onInit||n.onInit;const i=n.features;if(i)for(const n of i)n&&n.ngInherit&&n(t)}else{const n=e.prototype;n&&(t.afterContentChecked=t.afterContentChecked||n.ngAfterContentChecked,t.afterContentInit=t.afterContentInit||n.ngAfterContentInit,t.afterViewChecked=t.afterViewChecked||n.ngAfterViewChecked,t.afterViewInit=t.afterViewInit||n.ngAfterViewInit,t.doCheck=t.doCheck||n.ngDoCheck,t.onDestroy=t.onDestroy||n.ngOnDestroy,t.onInit=t.onInit||n.ngOnInit,n.ngOnChanges&&wc()(t))}e=Object.getPrototypeOf(e)}}function Cc(t){return t===St?{}:t===It?[]:t}function Rc(t,e){const n=t.viewQuery;t.viewQuery=n?(t,a)=>{e(t,a),n(t,a)}:e}function Ac(t,e){const n=t.contentQueries;t.contentQueries=n?(t,a,r)=>{e(t,a,r),n(t,a,r)}:e}function kc(t,e){const n=t.hostBindings;e!==n&&(t.hostBindings=n?(t,a,r)=>{Fe(1);try{e(t,a,r)}finally{Fe(-1)}n(t,a,r)}:e)}function Ec(t,e,n,a,r){if(t=G(t),Array.isArray(t))for(let i=0;i<t.length;i++)Ec(t[i],e,n,a,r);else{const i=Ae(),s=i[1];let u=Fu(t)?t:G(t.provide),o=Mu(t);const l=Ge(),d=65535&l.providerIndexes,c=l.directiveStart,f=l.providerIndexes>>16;if(t.useClass||Fu(t)){const n=(t.useClass||t).prototype.ngOnDestroy;n&&(s.destroyHooks||(s.destroyHooks=[])).push(e.length,n)}if(Fu(t)||!t.multi){const t=new ne(o,r,Tl),a=Dc(u,e,r?d:d+f,c);-1==a?(va(pa(l,i),s,u),e.push(u),l.directiveStart++,l.directiveEnd++,r&&(l.providerIndexes+=65536),n.push(t),i.push(t)):(n[a]=t,i[a]=t)}else{const t=Dc(u,e,d+f,c),h=Dc(u,e,d,d+f),g=t>=0&&n[t],p=h>=0&&n[h];if(r&&!p||!r&&!g){va(pa(l,i),s,u);const t=function(t,e,n,a,r){const i=new ne(t,n,Tl);return i.multi=[],i.index=e,i.componentProviders=0,Lc(i,r,a&&!n),i}(r?Mc:Pc,n.length,r,a,o);!r&&p&&(n[h].providerFactory=t),e.push(u),l.directiveStart++,l.directiveEnd++,r&&(l.providerIndexes+=65536),n.push(t),i.push(t)}else Lc(n[r?h:t],o,!r&&a);!r&&a&&p&&n[h].componentProviders++}}}function Lc(t,e,n){t.multi.push(e),n&&t.componentProviders++}function Dc(t,e,n,a){for(let r=n;r<a;r++)if(e[r]===t)return r;return-1}function Pc(t,e,n,a){return qc(this.multi,[])}function Mc(t,e,n,a){const r=this.multi;let i;if(this.providerFactory){const t=this.providerFactory.componentProviders,s=Sa(e,n,this.providerFactory.index,a);i=s.slice(0,t),qc(r,i);for(let e=t;e<s.length;e++)i.push(s[e])}else i=[],qc(r,i);return i}function qc(t,e){for(let n=0;n<t.length;n++)e.push((0,t[n])());return e}function jc(t,e=[]){return n=>{n.providersResolver=(n,a)=>function(t,e,n){const a=Ae()[1];if(a.firstTemplatePass){const r=te(t);Ec(n,a.data,a.blueprint,r,!0),Ec(e,a.data,a.blueprint,r,!1)}}(n,a?a(t):t,e)}}class Fc{}class Vc{}function Gc(t){const e=Error(`No component factory found for ${j(t)}. Did you add it to @NgModule.entryComponents?`);return e[Bc]=t,e}const Bc="ngComponent";class zc{resolveComponentFactory(t){throw Gc(t)}}let Yc=(()=>{class t{}return t.NULL=new zc,t})();class Hc{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let a=0;a<t.length;a++){const e=t[a];this._factories.set(e.componentType,e)}}resolveComponentFactory(t){let e=this._factories.get(t);if(!e&&this._parent&&(e=this._parent.resolveComponentFactory(t)),!e)throw Gc(t);return new Uc(e,this._ngModule)}}class Uc extends Vc{constructor(t,e){super(),this.factory=t,this.ngModule=e,this.selector=t.selector,this.componentType=t.componentType,this.ngContentSelectors=t.ngContentSelectors,this.inputs=t.inputs,this.outputs=t.outputs}create(t,e,n,a){return this.factory.create(t,e,n,a||this.ngModule)}}function Wc(...t){}let Kc=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=()=>Zc(t),t})();const $c=function(t){return $s(t,Ge(),Ae())},Zc=Wc;class Jc{constructor(t,e,n,a,r,i){this.id=t,this.templateUrl=e,this.slotCount=n,this.encapsulation=a,this.styles=r,this.animations=i}}class Qc{}class Xc{}class tf{}class ef{}const nf=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}();let af=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>sf(),t})();const rf=function(){const t=Ae(),e=xe(Ge().index,t);return function(t){const e=t[12];if(ta(e))return e;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(Zt(e)?e:t)},sf=Wc;class uf{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const of=new uf("8.2.14");class lf{constructor(){}supports(t){return qo(t)}create(t){return new cf(t)}}const df=(t,e)=>e;class cf{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||df}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,a=0,r=null;for(;e||n;){const i=!n||e&&e.currentIndex<pf(n,a,r)?e:n,s=pf(i,a,r),u=i.currentIndex;if(i===n)a--,n=n._nextRemoved;else if(e=e._next,null==i.previousIndex)a++;else{r||(r=[]);const t=s-a,e=u-a;if(t!=e){for(let n=0;n<t;n++){const a=n<r.length?r[n]:r[n]=0,i=a+n;e<=i&&i<t&&(r[n]=a+1)}r[i.previousIndex]=e-t}}s!==u&&t(i,s,u)}}forEachPreviousItem(t){let e;for(e=this._previousItHead;null!==e;e=e._nextPrevious)t(e)}forEachAddedItem(t){let e;for(e=this._additionsHead;null!==e;e=e._nextAdded)t(e)}forEachMovedItem(t){let e;for(e=this._movesHead;null!==e;e=e._nextMoved)t(e)}forEachRemovedItem(t){let e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)t(e)}forEachIdentityChange(t){let e;for(e=this._identityChangesHead;null!==e;e=e._nextIdentityChange)t(e)}diff(t){if(null==t&&(t=[]),!qo(t))throw new Error(`Error trying to diff '${j(t)}'. Only arrays and iterables are allowed`);return this.check(t)?this:null}onDestroy(){}check(t){this._reset();let e,n,a,r=this._itHead,i=!1;if(Array.isArray(t)){this.length=t.length;for(let e=0;e<this.length;e++)n=t[e],a=this._trackByFn(e,n),null!==r&&Do(r.trackById,a)?(i&&(r=this._verifyReinsertion(r,n,a,e)),Do(r.item,n)||this._addIdentityChange(r,n)):(r=this._mismatch(r,n,a,e),i=!0),r=r._next}else e=0,function(t,e){if(Array.isArray(t))for(let n=0;n<t.length;n++)e(t[n]);else{const n=t[Lo()]();let a;for(;!(a=n.next()).done;)e(a.value)}}(t,t=>{a=this._trackByFn(e,t),null!==r&&Do(r.trackById,a)?(i&&(r=this._verifyReinsertion(r,t,a,e)),Do(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,a,e),i=!0),r=r._next,e++}),this.length=e;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=e)t.previousIndex=t.currentIndex,e=t._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,a){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,a))?(Do(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,a)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Do(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,a)):t=this._addAfter(new ff(e,n),r,a),t}_verifyReinsertion(t,e,n,a){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,t._prev,a):t.currentIndex!=a&&(t.currentIndex=a,this._addToMoves(t,a)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const a=t._prevRemoved,r=t._nextRemoved;return null===a?this._removalsHead=r:a._nextRemoved=r,null===r?this._removalsTail=a:r._prevRemoved=a,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const a=null===e?this._itHead:e._next;return t._next=a,t._prev=e,null===a?this._itTail=t:a._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new gf),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new gf),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class ff{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class hf{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Do(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class gf{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new hf,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function pf(t,e,n){const a=t.previousIndex;if(null===a)return a;let r=0;return n&&a<n.length&&(r=n[a]),a+e+r}class bf{constructor(){}supports(t){return t instanceof Map||jo(t)}create(){return new mf}}class mf{constructor(){this._records=new Map,this._mapHead=null,this._appendAfter=null,this._previousMapHead=null,this._changesHead=null,this._changesTail=null,this._additionsHead=null,this._additionsTail=null,this._removalsHead=null,this._removalsTail=null}get isDirty(){return null!==this._additionsHead||null!==this._changesHead||null!==this._removalsHead}forEachItem(t){let e;for(e=this._mapHead;null!==e;e=e._next)t(e)}forEachPreviousItem(t){let e;for(e=this._previousMapHead;null!==e;e=e._nextPrevious)t(e)}forEachChangedItem(t){let e;for(e=this._changesHead;null!==e;e=e._nextChanged)t(e)}forEachAddedItem(t){let e;for(e=this._additionsHead;null!==e;e=e._nextAdded)t(e)}forEachRemovedItem(t){let e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)t(e)}diff(t){if(t){if(!(t instanceof Map||jo(t)))throw new Error(`Error trying to diff '${j(t)}'. Only maps and objects are allowed`)}else t=new Map;return this.check(t)?this:null}onDestroy(){}check(t){this._reset();let e=this._mapHead;if(this._appendAfter=null,this._forEach(t,(t,n)=>{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const a=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,a)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const a=n._prev,r=n._next;return a&&(a._next=r),r&&(r._prev=a),n._next=null,n._prev=null,n}const n=new yf(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Do(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class yf{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let vf=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new S,new w]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=k({token:t,providedIn:"root",factory:()=>new t([new lf])}),t})(),xf=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new S,new w]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=k({token:t,providedIn:"root",factory:()=>new t([new bf])}),t})();const _f=[new bf],Tf=new vf([new lf]),wf=new xf(_f);let Of=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>If(t,Kc),t})();const Sf=function(t,e){return Zs(t,e,Ge(),Ae())},If=Wc;let Nf=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Rf(t,Kc),t})();const Cf=function(t,e){return Js(t,e,Ge(),Ae())},Rf=Wc;function Af(t,e,n,a){let r=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return a&&(r+=" It seems like the view has been created after its parent and its children have been dirty checked. Has it been created in a change detection hook ?"),function(t,e){const n=new Error(t);return kf(n,e),n}(r,t)}function kf(t,e){t.ngDebugContext=e,t.ngErrorLogger=e.logError.bind(e)}function Ef(t){return new Error("ViewDestroyedError: Attempt to use a destroyed view: "+t)}function Lf(t,e,n){const a=t.state,r=1792&a;return r===e?(t.state=-1793&a|n,t.initIndex=-1,!0):r===n}function Df(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function Pf(t,e){return t.nodes[e]}function Mf(t,e){return t.nodes[e]}function qf(t,e){return t.nodes[e]}function jf(t,e){return t.nodes[e]}function Ff(t,e){return t.nodes[e]}class Vf{}const Gf={setCurrentNode:void 0,createRootView:void 0,createEmbeddedView:void 0,createComponentView:void 0,createNgModuleRef:void 0,overrideProvider:void 0,overrideComponentView:void 0,clearOverrides:void 0,checkAndUpdateView:void 0,checkNoChangesView:void 0,destroyView:void 0,resolveDep:void 0,createDebugContext:void 0,handleEvent:void 0,updateDirectives:void 0,updateRenderer:void 0,dirtyParentQueries:void 0},Bf=()=>{},zf=new Map;function Yf(t){let e=zf.get(t);return e||(e=j(t)+"_"+zf.size,zf.set(t,e)),e}function Hf(t,e,n,a){if(Mo.isWrapped(a)){a=Mo.unwrap(a);const r=t.def.nodes[e].bindingIndex+n,i=Mo.unwrap(t.oldValues[r]);t.oldValues[r]=new Mo(i)}return a}function Uf(t){return{id:"$$undefined",styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Wf=0;function Kf(t,e,n,a){return!(!(2&t.state)&&Do(t.oldValues[e.bindingIndex+n],a))}function $f(t,e,n,a){return!!Kf(t,e,n,a)&&(t.oldValues[e.bindingIndex+n]=a,!0)}function Zf(t,e,n,a){const r=t.oldValues[e.bindingIndex+n];if(1&t.state||!Po(r,a)){const i=e.bindings[n].name;throw Af(Gf.createDebugContext(t,e.nodeIndex),`${i}: ${r}`,`${i}: ${a}`,0!=(1&t.state))}}function Jf(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function Qf(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function Xf(t,e,n,a){try{return Jf(33554432&t.def.nodes[e].flags?Mf(t,e).componentView:t),Gf.handleEvent(t,e,n,a)}catch(r){t.root.errorHandler.handleError(r)}}function th(t){return t.parent?Mf(t.parent,t.parentNodeDef.nodeIndex):null}function eh(t){return t.parent?t.parentNodeDef.parent:null}function nh(t,e){switch(201347067&e.flags){case 1:return Mf(t,e.nodeIndex).renderElement;case 2:return Pf(t,e.nodeIndex).renderText}}function ah(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function rh(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function ih(t){return 1<<t%32}function sh(t){const e={};let n=0;const a={};return t&&t.forEach(([t,r])=>{"number"==typeof t?(e[t]=r,n|=ih(t)):a[t]=r}),{matchedQueries:e,references:a,matchedQueryIds:n}}function uh(t,e){return t.map(t=>{let n,a;return Array.isArray(t)?[a,n]=t:(a=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,"__source",{value:e,configurable:!0}),{flags:a,token:n,tokenKey:Yf(n)}})}function oh(t,e,n){let a=n.renderParent;return a?0==(1&a.flags)||0==(33554432&a.flags)||a.element.componentRendererType&&a.element.componentRendererType.encapsulation===wt.Native?Mf(t,n.renderParent.nodeIndex).renderElement:void 0:e}const lh=new WeakMap;function dh(t){let e=lh.get(t);return e||(e=t(()=>Bf),e.factory=t,lh.set(t,e)),e}function ch(t,e,n,a,r){3===e&&(n=t.renderer.parentNode(nh(t,t.def.lastRenderRootNode))),fh(t,e,0,t.def.nodes.length-1,n,a,r)}function fh(t,e,n,a,r,i,s){for(let u=n;u<=a;u++){const n=t.def.nodes[u];11&n.flags&&gh(t,n,e,r,i,s),u+=n.childCount}}function hh(t,e,n,a,r,i){let s=t;for(;s&&!ah(s);)s=s.parent;const u=s.parent,o=eh(s),l=o.nodeIndex+o.childCount;for(let d=o.nodeIndex+1;d<=l;d++){const t=u.def.nodes[d];t.ngContentIndex===e&&gh(u,t,n,a,r,i),d+=t.childCount}if(!u.parent){const s=t.root.projectableNodes[e];if(s)for(let e=0;e<s.length;e++)ph(t,s[e],n,a,r,i)}}function gh(t,e,n,a,r,i){if(8&e.flags)hh(t,e.ngContent.index,n,a,r,i);else{const s=nh(t,e);if(3===n&&33554432&e.flags&&48&e.bindingFlags?(16&e.bindingFlags&&ph(t,s,n,a,r,i),32&e.bindingFlags&&ph(Mf(t,e.nodeIndex).componentView,s,n,a,r,i)):ph(t,s,n,a,r,i),16777216&e.flags){const s=Mf(t,e.nodeIndex).viewContainer._embeddedViews;for(let t=0;t<s.length;t++)ch(s[t],n,a,r,i)}1&e.flags&&!e.element.name&&fh(t,n,e.nodeIndex+1,e.nodeIndex+e.childCount,a,r,i)}}function ph(t,e,n,a,r,i){const s=t.renderer;switch(n){case 1:s.appendChild(a,e);break;case 2:s.insertBefore(a,e,r);break;case 3:s.removeChild(a,e);break;case 0:i.push(e)}}const bh=/^:([^:]+):(.+)$/;function mh(t){if(":"===t[0]){const e=t.match(bh);return[e[1],e[2]]}return["",t]}function yh(t){let e=0;for(let n=0;n<t.length;n++)e|=t[n].flags;return e}function vh(t,e){let n="";for(let a=0;a<2*t;a+=2)n=n+e[a]+_h(e[a+1]);return n+e[2*t]}function xh(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m,y,v){switch(t){case 1:return e+_h(n)+a;case 2:return e+_h(n)+a+_h(r)+i;case 3:return e+_h(n)+a+_h(r)+i+_h(s)+u;case 4:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l;case 5:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c;case 6:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c+_h(f)+h;case 7:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c+_h(f)+h+_h(g)+p;case 8:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c+_h(f)+h+_h(g)+p+_h(b)+m;case 9:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c+_h(f)+h+_h(g)+p+_h(b)+m+_h(y)+v;default:throw new Error("Does not support more than 9 expressions")}}function _h(t){return null!=t?t.toString():""}const Th=[],wh={},Oh=new Object,Sh=Yf(Bu),Ih=Yf($),Nh=Yf(ft);function Ch(t,e,n,a){return n=G(n),{index:-1,deps:uh(a,j(e)),flags:t,token:e,value:n}}function Rh(t){const e={},n=[];let a=!1;for(let r=0;r<t.length;r++){const i=t[r];i.token===Nu&&!0===i.value&&(a=!0),1073741824&i.flags&&n.push(i.token),i.index=r,e[Yf(i.token)]=i}return{factory:null,providersByKey:e,providers:t,modules:n,isRoot:a}}function Ah(t,e,n=Bu.THROW_IF_NOT_FOUND){const a=et(t);try{if(8&e.flags)return e.token;if(2&e.flags&&(n=null),1&e.flags)return t._parent.get(e.token,n);const s=e.tokenKey;switch(s){case Sh:case Ih:case Nh:return t}const u=t._def.providersByKey[s];let o;if(u){let e=t._providers[u.index];return void 0===e&&(e=t._providers[u.index]=kh(t,u)),e===Oh?void 0:e}if((o=D(e.token))&&(r=t,null!=(i=o).providedIn&&(function(t,e){return t._def.modules.indexOf(e)>-1}(r,i.providedIn)||"root"===i.providedIn&&r._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:o.factory,deps:[],index:n,token:e.token},t._providers[n]=Oh,t._providers[n]=kh(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{et(a)}var r,i}function kh(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const a=n.length;switch(a){case 0:return new e;case 1:return new e(Ah(t,n[0]));case 2:return new e(Ah(t,n[0]),Ah(t,n[1]));case 3:return new e(Ah(t,n[0]),Ah(t,n[1]),Ah(t,n[2]));default:const r=new Array(a);for(let e=0;e<a;e++)r[e]=Ah(t,n[e]);return new e(...r)}}(t,e.value,e.deps);break;case 1024:n=function(t,e,n){const a=n.length;switch(a){case 0:return e();case 1:return e(Ah(t,n[0]));case 2:return e(Ah(t,n[0]),Ah(t,n[1]));case 3:return e(Ah(t,n[0]),Ah(t,n[1]),Ah(t,n[2]));default:const r=Array(a);for(let e=0;e<a;e++)r[e]=Ah(t,n[e]);return e(...r)}}(t,e.value,e.deps);break;case 2048:n=Ah(t,e.deps[0]);break;case 256:n=e.value}return n===Oh||null===n||"object"!=typeof n||131072&e.flags||"function"!=typeof n.ngOnDestroy||(e.flags|=131072),void 0===n?Oh:n}function Eh(t,e){const n=t.viewContainer._embeddedViews;if((null==e||e>=n.length)&&(e=n.length-1),e<0)return null;const a=n[e];return a.viewContainerParent=null,yt(n,e),Gf.dirtyParentQueries(a),Dh(a),a}function Lh(t,e,n){const a=e?nh(e,e.def.lastRenderRootNode):t.renderElement,r=n.renderer.parentNode(a),i=n.renderer.nextSibling(a);ch(n,2,r,i,void 0)}function Dh(t){ch(t,3,null,null,void 0)}const Ph=new Object;function Mh(t,e,n,a,r,i){return new jh(t,e,n,a,r,i)}function qh(t){return t.viewDefFactory}class jh extends Vc{constructor(t,e,n,a,r,i){super(),this.selector=t,this.componentType=e,this._inputs=a,this._outputs=r,this.ngContentSelectors=i,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,a){if(!a)throw new Error("ngModule should be provided");const r=dh(this.viewDefFactory),i=r.nodes[0].element.componentProvider.nodeIndex,s=Gf.createRootView(t,e||[],n,r,a,Ph),u=qf(s,i).instance;return n&&s.renderer.setAttribute(Mf(s,0).renderElement,"ng-version",of.full),new Fh(s,new zh(s),u)}}class Fh extends Fc{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new Kc(Mf(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new Wh(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function Vh(t,e,n){return new Gh(t,e,n)}class Gh{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new Kc(this._data.renderElement)}get injector(){return new Wh(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=eh(t),t=t.parent;return t?new Wh(t,e):new Wh(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=Eh(this._data,t);Gf.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new zh(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const a=t.createEmbeddedView(e||{});return this.insert(a,n),a}createComponent(t,e,n,a,r){const i=n||this.parentInjector;r||t instanceof Uc||(r=i.get(ft));const s=t.create(i,a,void 0,r);return this.insert(s.hostView,e),s}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,a){let r=e.viewContainer._embeddedViews;null==n&&(n=r.length),a.viewContainerParent=t,mt(r,n,a),function(t,e){const n=th(e);if(!n||n===t||16&e.state)return;e.state|=16;let a=n.template._projectedViews;a||(a=n.template._projectedViews=[]),a.push(e),function(t,e){if(4&e.flags)return;t.nodeFlags|=4,e.flags|=4;let n=e.parent;for(;n;)n.childFlags|=4,n=n.parent}(e.parent.def,e.parentNodeDef)}(e,a),Gf.dirtyParentQueries(a),Lh(e,n>0?r[n-1]:null,a)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,n){const a=t.viewContainer._embeddedViews,r=a[e];yt(a,e),null==n&&(n=a.length),mt(a,n,r),Gf.dirtyParentQueries(r),Dh(r),Lh(t,n>0?a[n-1]:null,r)}(this._data,n,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=Eh(this._data,t);e&&Gf.destroyView(e)}detach(t){const e=Eh(this._data,t);return e?new zh(e):null}}function Bh(t){return new zh(t)}class zh{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return ch(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){Jf(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Gf.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Gf.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Gf.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Dh(this._view),Gf.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Yh(t,e){return new Hh(t,e)}class Hh extends Of{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new zh(Gf.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new Kc(Mf(this._parentView,this._def.nodeIndex).renderElement)}}function Uh(t,e){return new Wh(t,e)}class Wh{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Bu.THROW_IF_NOT_FOUND){return Gf.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yf(t)},e)}}function Kh(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Mf(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return Pf(t,n.nodeIndex).renderText;if(20240&n.flags)return qf(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function $h(t){return new Zh(t.renderer)}class Zh{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,a]=mh(e),r=this.delegate.createElement(a,n);return t&&this.delegate.appendChild(t,r),r}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;n<e.length;n++)this.delegate.appendChild(t,e[n])}attachViewAfter(t,e){const n=this.delegate.parentNode(t),a=this.delegate.nextSibling(t);for(let r=0;r<e.length;r++)this.delegate.insertBefore(n,e[r],a)}detachView(t){for(let e=0;e<t.length;e++){const n=t[e],a=this.delegate.parentNode(n);this.delegate.removeChild(a,n)}}destroyView(t,e){for(let n=0;n<e.length;n++)this.delegate.destroyNode(e[n])}listen(t,e,n){return this.delegate.listen(t,e,n)}listenGlobal(t,e,n){return this.delegate.listen(t,e,n)}setElementProperty(t,e,n){this.delegate.setProperty(t,e,n)}setElementAttribute(t,e,n){const[a,r]=mh(e);null!=n?this.delegate.setAttribute(t,r,n,a):this.delegate.removeAttribute(t,r,a)}setBindingDebugInfo(t,e,n){}setElementClass(t,e,n){n?this.delegate.addClass(t,e):this.delegate.removeClass(t,e)}setElementStyle(t,e,n){null!=n?this.delegate.setStyle(t,e,n):this.delegate.removeStyle(t,e)}invokeElementMethod(t,e,n){t[e].apply(t,n)}setText(t,e){this.delegate.setValue(t,e)}animate(){throw new Error("Renderer.animate is no longer supported!")}}function Jh(t,e,n,a){return new Qh(t,e,n,a)}class Qh{constructor(t,e,n,a){this._moduleType=t,this._parent=e,this._bootstrapComponents=n,this._def=a,this._destroyListeners=[],this._destroyed=!1,this.injector=this,function(t){const e=t._def,n=t._providers=new Array(e.providers.length);for(let a=0;a<e.providers.length;a++){const r=e.providers[a];4096&r.flags||void 0===n[a]&&(n[a]=kh(t,r))}}(this)}get(t,e=Bu.THROW_IF_NOT_FOUND,n=C.Default){let a=0;return n&C.SkipSelf?a|=1:n&C.Self&&(a|=4),Ah(this,{token:t,tokenKey:Yf(t),flags:a},e)}get instance(){return this.get(this._moduleType)}get componentFactoryResolver(){return this.get(Yc)}destroy(){if(this._destroyed)throw new Error(`The ng module ${j(this.instance.constructor)} has already been destroyed.`);this._destroyed=!0,function(t,e){const n=t._def,a=new Set;for(let r=0;r<n.providers.length;r++)if(131072&n.providers[r].flags){const e=t._providers[r];if(e&&e!==Oh){const t=e.ngOnDestroy;"function"!=typeof t||a.has(e)||(t.apply(e),a.add(e))}}}(this),this._destroyListeners.forEach(t=>t())}onDestroy(t){this._destroyListeners.push(t)}}const Xh=Yf(Xc),tg=Yf(af),eg=Yf(Kc),ng=Yf(Nf),ag=Yf(Of),rg=Yf(Xs),ig=Yf(Bu),sg=Yf($);function ug(t,e,n,a,r,i,s,u){const o=[];if(s)for(let d in s){const[t,e]=s[d];o[t]={flags:8,name:d,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const l=[];if(u)for(let d in u)l.push({type:1,propName:d,target:null,eventName:u[d]});return dg(t,e|=16384,n,a,r,r,i,o,l)}function og(t,e,n){return dg(-1,t|=16,null,0,e,e,n)}function lg(t,e,n,a,r){return dg(-1,t,e,0,n,a,r)}function dg(t,e,n,a,r,i,s,u,o){const{matchedQueries:l,references:d,matchedQueryIds:c}=sh(n);o||(o=[]),u||(u=[]),i=G(i);const f=uh(s,j(r));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:l,matchedQueryIds:c,references:d,ngContentIndex:-1,childCount:a,bindings:u,bindingFlags:yh(u),outputs:o,element:null,provider:{token:r,value:i,deps:f},text:null,query:null,ngContent:null}}function cg(t,e){return pg(t,e)}function fg(t,e){let n=t;for(;n.parent&&!ah(n);)n=n.parent;return bg(n.parent,eh(n),!0,e.provider.value,e.provider.deps)}function hg(t,e){const n=bg(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let a=0;a<e.outputs.length;a++){const r=e.outputs[a],i=n[r.propName];if(!ed(i))throw new Error(`@Output ${r.propName} not initialized in '${n.constructor.name}'.`);{const n=i.subscribe(gg(t,e.parent.nodeIndex,r.eventName));t.disposables[e.outputIndex+a]=n.unsubscribe.bind(n)}}return n}function gg(t,e,n){return a=>Xf(t,e,n,a)}function pg(t,e){const n=(8192&e.flags)>0,a=e.provider;switch(201347067&e.flags){case 512:return bg(t,e.parent,n,a.value,a.deps);case 1024:return function(t,e,n,a,r){const i=r.length;switch(i){case 0:return a();case 1:return a(yg(t,e,n,r[0]));case 2:return a(yg(t,e,n,r[0]),yg(t,e,n,r[1]));case 3:return a(yg(t,e,n,r[0]),yg(t,e,n,r[1]),yg(t,e,n,r[2]));default:const s=Array(i);for(let a=0;a<i;a++)s[a]=yg(t,e,n,r[a]);return a(...s)}}(t,e.parent,n,a.value,a.deps);case 2048:return yg(t,e.parent,n,a.deps[0]);case 256:return a.value}}function bg(t,e,n,a,r){const i=r.length;switch(i){case 0:return new a;case 1:return new a(yg(t,e,n,r[0]));case 2:return new a(yg(t,e,n,r[0]),yg(t,e,n,r[1]));case 3:return new a(yg(t,e,n,r[0]),yg(t,e,n,r[1]),yg(t,e,n,r[2]));default:const s=new Array(i);for(let a=0;a<i;a++)s[a]=yg(t,e,n,r[a]);return new a(...s)}}const mg={};function yg(t,e,n,a,r=Bu.THROW_IF_NOT_FOUND){if(8&a.flags)return a.token;const i=t;2&a.flags&&(r=null);const s=a.tokenKey;s===rg&&(n=!(!e||!e.element.componentView)),e&&1&a.flags&&(n=!1,e=e.parent);let u=t;for(;u;){if(e)switch(s){case Xh:return $h(vg(u,e,n));case tg:return vg(u,e,n).renderer;case eg:return new Kc(Mf(u,e.nodeIndex).renderElement);case ng:return Mf(u,e.nodeIndex).viewContainer;case ag:if(e.element.template)return Mf(u,e.nodeIndex).template;break;case rg:return Bh(vg(u,e,n));case ig:case sg:return Uh(u,e);default:const t=(n?e.element.allProviders:e.element.publicProviders)[s];if(t){let e=qf(u,t.nodeIndex);return e||(e={instance:pg(u,t)},u.nodes[t.nodeIndex]=e),e.instance}}n=ah(u),e=eh(u),u=u.parent,4&a.flags&&(u=null)}const o=i.root.injector.get(a.token,mg);return o!==mg||r===mg?o:i.root.ngModule.injector.get(a.token,r)}function vg(t,e,n){let a;if(n)a=Mf(t,e.nodeIndex).componentView;else for(a=t;a.parent&&!ah(a);)a=a.parent;return a}function xg(t,e,n,a,r,i){if(32768&n.flags){const e=Mf(t,n.parent.nodeIndex).componentView;2&e.def.flags&&(e.state|=8)}if(e.instance[n.bindings[a].name]=r,524288&n.flags){i=i||{};const e=Mo.unwrap(t.oldValues[n.bindingIndex+a]);i[n.bindings[a].nonMinifiedName]=new Tc(e,r,0!=(2&t.state))}return t.oldValues[n.bindingIndex+a]=r,i}function _g(t,e){if(!(t.def.nodeFlags&e))return;const n=t.def.nodes;let a=0;for(let r=0;r<n.length;r++){const i=n[r];let s=i.parent;for(!s&&i.flags&e&&wg(t,r,i.flags&e,a++),0==(i.childFlags&e)&&(r+=i.childCount);s&&1&s.flags&&r===s.nodeIndex+s.childCount;)s.directChildFlags&e&&(a=Tg(t,s,e,a)),s=s.parent}}function Tg(t,e,n,a){for(let r=e.nodeIndex+1;r<=e.nodeIndex+e.childCount;r++){const e=t.def.nodes[r];e.flags&n&&wg(t,r,e.flags&n,a++),r+=e.childCount}return a}function wg(t,e,n,a){const r=qf(t,e);if(!r)return;const i=r.instance;i&&(Gf.setCurrentNode(t,e),1048576&n&&Df(t,512,a)&&i.ngAfterContentInit(),2097152&n&&i.ngAfterContentChecked(),4194304&n&&Df(t,768,a)&&i.ngAfterViewInit(),8388608&n&&i.ngAfterViewChecked(),131072&n&&i.ngOnDestroy())}function Og(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const Sg=new K("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>_n});class Ig extends Vc{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors[0][0]||"div",this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Og(this.componentDef.inputs)}get outputs(){return Og(this.componentDef.outputs)}create(t,e,n,a){const r=(a=a||this.ngModule)?function(t,e){return{get:(n,a,r)=>{const i=t.get(n,mg,r);return i!==mg||a===mg?i:e.get(n,a,r)}}}(t,a.injector):t,i=r.get(ef,ea),s=r.get(vr,null);pn();const u=n?Vi(i,n):Ci(this.selector,i.createRenderer(null,this.componentDef)),o=this.componentDef.onPush?576:528,l="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d=vc(),c=i.createRenderer(u,this.componentDef);n&&u&&(ta(c)?c.setAttribute(u,"ng-version",of.full):u.setAttribute("ng-version",of.full));const f=Ri(null,Fi(-1,null,1,0,null,null,null,null),d,o,null,null,i,c,s,r),h=an(f,null);let g,p,b=!1;try{const t=mc(u,this.componentDef,f,i,c);p=ye(0,f),e&&(p.projection=e.map(t=>Array.from(t))),g=yc(t,this.componentDef,f,d,[xc]),rs(f,t),Ii(f),b=!0}finally{sn(h,b)}const m=new Ng(this.componentType,g,$s(Kc,p,f),f,p);return n&&!l||(m.hostView._tViewNode.child=p),m}}class Ng extends Fc{constructor(t,e,n,a,r){super(),this.location=n,this._rootLView=a,this._tNode=r,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Hs(a),this.hostView._tViewNode=ki(a[1],null,-1,a),this.componentType=t}get injector(){return new Ca(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const Cg={},Rg=function(){var t={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencySymbol:15,CurrencyName:16,Currencies:17,PluralCase:18,ExtraData:19};return t[t.LocaleId]="LocaleId",t[t.DayPeriodsFormat]="DayPeriodsFormat",t[t.DayPeriodsStandalone]="DayPeriodsStandalone",t[t.DaysFormat]="DaysFormat",t[t.DaysStandalone]="DaysStandalone",t[t.MonthsFormat]="MonthsFormat",t[t.MonthsStandalone]="MonthsStandalone",t[t.Eras]="Eras",t[t.FirstDayOfWeek]="FirstDayOfWeek",t[t.WeekendRange]="WeekendRange",t[t.DateFormat]="DateFormat",t[t.TimeFormat]="TimeFormat",t[t.DateTimeFormat]="DateTimeFormat",t[t.NumberSymbols]="NumberSymbols",t[t.NumberFormats]="NumberFormats",t[t.CurrencySymbol]="CurrencySymbol",t[t.CurrencyName]="CurrencyName",t[t.Currencies]="Currencies",t[t.PluralCase]="PluralCase",t[t.ExtraData]="ExtraData",t}(),Ag=void 0;var kg=["en",[["a","p"],["AM","PM"],Ag],[["AM","PM"],Ag,Ag],[["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"]],Ag,[["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"]],Ag,[["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}",Ag,"{1} 'at' {0}",Ag],[".",",",";","%","+","-","E","×","‰","∞","NaN",":"],["#,##0.###","#,##0%","¤#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];function Eg(t){return Lg(t)[Rg.PluralCase]}function Lg(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Cg[e];if(n)return n;const a=e.split("-")[0];if(n=Cg[a],n)return n;if("en"===a)return kg;throw new Error(`Missing locale data for the locale "${t}".`)}const Dg="en-US",Pg=/^\s*(�\d+:?\d*�)\s*,\s*(select|plural)\s*,/,Mg=/�\/?\*(\d+:\d+)�/gi,qg=/�(\/?[#*!]\d+):?\d*�/gi,jg=/�(\d+):?\d*�/gi,Fg=/({\s*�\d+:?\d*�\s*,\s*\S{6}\s*,[\s\S]*})/gi,Vg=/\[(�.+?�?)\]/,Gg=/\[(�.+?�?)\]|(�\/?\*\d+:\d+�)/g,Bg=/({\s*)(VAR_(PLURAL|SELECT)(_\d+)?)(\s*,)/g,zg=/{([A-Z0-9_]+)}/g,Yg=/�I18N_EXP_(ICU(_\d+)?)�/g,Hg=/\/\*/,Ug=/\d+\:(\d+)/;function Wg(t){if(!t)return[];let e=0;const n=[],a=[],r=/[{}]/g;let i;for(r.lastIndex=0;i=r.exec(t);){const r=i.index;if("}"==i[0]){if(n.pop(),0==n.length){const n=t.substring(e,r);Pg.test(n)?a.push(Kg(n)):a.push(n),e=r+1}}else{if(0==n.length){const n=t.substring(e,r);a.push(n),e=r+1}n.push("{")}}const s=t.substring(e);return a.push(s),a}function Kg(t){const e=[],n=[];let a=1,r=0;const i=Wg(t=t.replace(Pg,(function(t,e,n){return a="select"===n?0:1,r=parseInt(e.substr(1),10),""})));for(let s=0;s<i.length;){let t=i[s++].trim();1===a&&(t=t.replace(/\s*(?:=)?(\w+)\s*/,"$1")),t.length&&e.push(t);const r=Wg(i[s++]);e.length>n.length&&n.push(r)}return'Missing key "other" in ICU statement.',e.indexOf("other")<=-1&&vt('Missing key "other" in ICU statement.'),{type:a,mainBinding:r,cases:e,values:n}}function $g(t){let e,n,a="",r=0,i=!1;for(;null!==(e=Mg.exec(t));)i?e[0]===`�/*${n}�`&&(r=e.index,i=!1):(a+=t.substring(r,e.index+e[0].length),n=e[1],i=!0);return a+=t.substr(r),a}function Zg(t,e,n,a=null){const r=[null,null],i=t.split(jg);let s=0;for(let u=0;u<i.length;u++){const t=i[u];if(1&u){const e=parseInt(t,10);r.push(-1-e),s|=tp(e)}else""!==t&&r.push(t)}return r.push(e<<2|(n?1:0)),n&&r.push(n,a),r[0]=s,r[1]=r.length-2,r}function Jg(t,e=0){let n;e|=tp(t.mainBinding);for(let a=0;a<t.values.length;a++){const r=t.values[a];for(let t=0;t<r.length;t++){const a=r[t];if("string"==typeof a)for(;n=jg.exec(a);)e|=tp(parseInt(n[1],10));else e=Jg(a,e)}}return e}const Qg=[];let Xg=-1;function tp(t){return 1<<Math.min(t,31)}const ep=[];function np(t,e,n){const a=Ae()[1];Qg[++Xg]=t,cd(!0),a.firstTemplatePass&&null===a.data[t+19]&&function(t,e,n,a){const r=Ae(),i=t.blueprint.length-19;ap=0;const s=Ge(),u=Ye()?Ge():s&&s.parent;let o=u&&u!==r[6]?u.index-19:e,l=0;ep[l]=o;const d=[];e>0&&s!==u&&d.push(s.index<<3|0);const c=[],f=[],h=(g=function(t,e){if("number"!=typeof e)return $g(t);{const n=t.indexOf(`:${e}�`)+2+e.toString().length,a=t.search(new RegExp(`�\\/\\*\\d+:${e}�`));return $g(t.substring(n,a))}}(n,a),g.replace(xp," ")).split(qg);var g;for(let p=0;p<h.length;p++){let t=h[p];if(1&p)if("/"===t.charAt(0)){if("#"===t.charAt(1)){const e=parseInt(t.substr(2),10);o=ep[--l],d.push(e<<3|5)}}else{const e=parseInt(t.substr(1),10);d.push(e<<3|0,o<<17|1),"#"===t.charAt(0)&&(ep[++l]=o=e)}else{const e=Wg(t);for(let t=0;t<e.length;t++)if(1&t){const n=i+ap++;d.push(hi,"",n,o<<17|1);const a=e[t],r=Jg(a);mp(f,a,n,n);const s=f.length-1;c.push(tp(a.mainBinding),3,-1-a.mainBinding,n<<2|2,s,r,2,n<<2|3,s)}else if(""!==e[t]){const n=e[t],a=n.match(jg),r=i+ap++;d.push(a?"":n,r,o<<17|1),a&&gt(Zg(n,r),c)}}}ap>0&&function(t,e){if(e>0){const n=t[1];if(n.firstTemplatePass){for(let a=0;a<e;a++)n.blueprint.push(null),n.data.push(null),t.push(null);n.expandoInstructions?n.expandoInstructions.push(e):n.expandoStartIndex+=e}}}(r,ap),t.data[e+19]={vars:ap,create:d,update:c,icus:f.length?f:null}}(a,t,e,n)}let ap;function rp(t,e,n,a){const r=t.next;n||(n=e),n===e&&t!==e.child?(t.next=e.child,e.child=t):n!==e&&t!==n.next?(t.next=n.next,n.next=t):t.next=null,e!==a[6]&&(t.parent=e);let i=t.next;for(;i;)i.next===t&&(i.next=r),i=i.next;if(1===t.type)return Fs(a,t,t.projection,da(a)),t;Ms(be(t,a),t,a);const s=a[t.index];return 0!==t.type&&Jt(s)&&Ms(s[7],t,a),t}function ip(t,e={}){let n=t;if(Vg.test(t)){const t={},e=[0];n=n.replace(Gg,(n,a,r)=>{const i=a||r,s=t[i]||[];if(s.length||(i.split("|").forEach(t=>{const e=t.match(Ug),n=e?parseInt(e[1],10):0,a=Hg.test(t);s.push([n,a,t])}),t[i]=s),!s.length)throw new Error("i18n postprocess: unmatched placeholder - "+i);const u=e[e.length-1];let o=0;for(let t=0;t<s.length;t++)if(s[t][0]===u){o=t;break}const[l,d,c]=s[o];return d?e.pop():u!==l&&e.push(l),s.splice(o,1),c})}return Object.keys(e).length?(n=n.replace(Bg,(t,n,a,r,i,s)=>e.hasOwnProperty(a)?`${n}${e[a]}${s}`:t),n=n.replace(zg,(t,n)=>e.hasOwnProperty(n)?e[n]:t),n=n.replace(Yg,(t,n)=>{if(e.hasOwnProperty(n)){const a=e[n];if(!a.length)throw new Error(`i18n postprocess: unmatched ICU - ${t} with key: ${n}`);return a.shift()}return t}),n):n}function sp(){!function(t){const e=Ae(),n=Qg[Xg--],a=t.data[n+19];let r=Ge();const i=op(n,a.create,0,e);for(let s=n+1;s<=r.index-19;s++)-1===i.indexOf(s)&&lp(s,e)}(Ae()[1]),cd(!1)}function up(t,e,n,a,r){const i=Ge();t[e+19]=a;const s=Ai(t[1],t[6],e,n,r,null);return i.next===s&&(i.next=null),s}function op(t,e,n,a){const r=Ae()[12];let i=null,s=null;const u=[];for(let o=0;o<e.length;o++){const n=e[o];if("string"==typeof n){const t=Os(n,r),l=e[++o];s=i,i=up(a,l,3,t,null),u.push(l),He()}else if("number"==typeof n)switch(7&n){case 1:const r=n>>>17;let l;l=r===t?a[6]:ye(r,a),s=rp(i,l,s,a);break;case 0:const d=n>>>3;u.push(d),s=i,i=ye(d,a),i&&Be(i,3===i.type);break;case 5:s=i=ye(n>>>3,a),Be(i,!1);break;case 4:es(n>>>3,e[++o],e[++o],a);break;default:throw new Error(`Unable to determine the type of mutate operation for "${n}"`)}else switch(n){case hi:const t=e[++o],l=e[++o],d=r.createComment(t);s=i,i=up(a,l,5,d,null),u.push(l),qr(d,a),i.activeCaseIndex=null,He();break;case fi:const c=e[++o],f=e[++o];s=i,i=up(a,f,3,r.createElement(c),c),u.push(f);break;default:throw new Error(`Unable to determine the type of mutate operation for "${n}"`)}}return He(),u}function lp(t,e){const n=ye(t,e),a=pe(t,e);a&&js(e[12],a);const r=_l(t);if(Jt(r)){const t=r;0!==n.type&&js(e[12],t[7])}n.flags|=32}function dp(t,e,n){np(t,e,n),sp()}function cp(t,e){!function(t,e,n){const a=Ge().index-19,r=[];for(let i=0;i<n.length;i+=2){const s=n[i],u=n[i+1].split(Fg);for(let n=0;n<u.length;n++){const i=u[n];if(1&n)throw new Error("ICU expressions are not yet supported in attributes");if(""!==i)if(i.match(jg))t.firstTemplatePass&&null===t.data[e+19]&&gt(Zg(i,a,s),r);else{const t=Ae();es(a,s,i,t);const e=ye(a,t),n=e.inputs&&e.inputs[s];n&&ys(t,n,i)}}}t.firstTemplatePass&&null===t.data[e+19]&&(t.data[e+19]=r)}(Ae()[1],t,e)}let fp=0,hp=0;function gp(t){return Uo(Ae(),t)!==ci&&(fp|=1<<hp),hp++,gp}function pp(t){if(hp){const e=Ae(),n=e[1].data[t+19];let a,r=null;Array.isArray(n)?a=n:(a=n.update,r=n.icus),function t(e,n,a,r,i,s=!1){let u=!1;for(let o=0;o<e.length;o++){const l=e[o],d=e[++o];if(s||l&r){let s="";for(let l=o+1;l<=o+d;l++){const o=e[l];if("string"==typeof o)s+=o;else if("number"==typeof o)if(o<0)s+=vn(i[a-o]);else{const d=o>>>2;let c,f,h;switch(3&o){case 1:Yi(d,e[++l],s,e[++l]);break;case 0:vs(i,d,s);break;case 2:if(c=e[++l],f=n[c],h=ye(d,i),null!==h.activeCaseIndex){const t=f.remove[h.activeCaseIndex];for(let e=0;e<t.length;e++){const a=t[e];switch(7&a){case 3:lp(a>>>3,i);break;case 6:const r=ye(t[e+1]>>>3,i).activeCaseIndex;null!==r&&gt(n[a>>>3].remove[r],t)}}}const o=bp(f,s);h.activeCaseIndex=-1!==o?o:null,op(-1,f.create[o],0,i),u=!0;break;case 3:c=e[++l],f=n[c],h=ye(d,i),t(f.update[h.activeCaseIndex],n,a,r,i,u)}}}}o+=d}}(a,r,e[7]-hp-1,fp,e),fp=0,hp=0}}function bp(t,e){let n=t.cases.indexOf(e);if(-1===n)switch(t.type){case 1:{const a=function(t,e){switch(Eg(e)(t)){case 0:return"zero";case 1:return"one";case 2:return"two";case 3:return"few";case 4:return"many";default:return"other"}}(e,Sp);n=t.cases.indexOf(a),-1===n&&"other"!==a&&(n=t.cases.indexOf("other"));break}case 0:n=t.cases.indexOf("other")}return n}function mp(t,e,n,a){const r=[],i=[],s=[],u=[],o=[];for(let l=0;l<e.values.length;l++){const d=e.values[l],c=[];for(let t=0;t<d.length;t++){const e=d[t];if("string"!=typeof e){const n=c.push(e)-1;d[t]=`\x3c!--�${n}�--\x3e`}}const f=yp(d.join(""),n,c,t,a);r.push(f.create),i.push(f.remove),s.push(f.update),u.push(f.vars),o.push(f.childIcus)}t.push({type:e.type,vars:u,childIcus:o,cases:e.cases,create:r,remove:i,update:s}),ap+=Math.max(...u)}function yp(t,e,n,a,r){const i=new $a(document).getInertBodyElement(t);if(!i)throw new Error("Unable to generate inert body element");const s={vars:0,childIcus:[],create:[],remove:[],update:[]};return function t(e,n,a,r,i,s){if(e){const u=[];for(;e;){const o=e.nextSibling,l=s+ ++n.vars;switch(e.nodeType){case Node.ELEMENT_NODE:const o=e,d=o.tagName.toLowerCase();if(sr.hasOwnProperty(d)){n.create.push(fi,d,l,a<<17|1);const u=o.attributes;for(let t=0;t<u.length;t++){const e=u.item(t),a=e.name.toLowerCase();e.value.match(jg)?lr.hasOwnProperty(a)&&gt(ur[a]?Zg(e.value,l,e.name,Qa):or[a]?Zg(e.value,l,e.name,Xa):Zg(e.value,l,e.name),n.update):n.create.push(l<<3|4,e.name,e.value)}t(e.firstChild,n,l,r,i,s),n.remove.push(l<<3|3)}else n.vars--;break;case Node.TEXT_NODE:const c=e.textContent||"",f=c.match(jg);n.create.push(f?"":c,l,a<<17|1),n.remove.push(l<<3|3),f&&gt(Zg(c,l),n.update);break;case Node.COMMENT_NODE:const h=vp.exec(e.textContent||"");if(h){const t=parseInt(h[1],10);n.create.push(hi,"",l,a<<17|1),u.push([r[t],l])}else n.vars--;break;default:n.vars--}e=o}for(let t=0;t<u.length;t++){const e=u[t][0],a=u[t][1];mp(i,e,a,s+n.vars);const r=i.length-1;n.vars+=Math.max(...i[r].vars),n.childIcus.push(r);const o=Jg(e);n.update.push(tp(e.mainBinding),3,-1-e.mainBinding,a<<2|2,r,o,2,a<<2|3,r),n.remove.push(r<<3|6,a<<3|3)}}}((mr(i)||i).firstChild,s,e,n,a,r),s}const vp=/�(\d+)�/,xp=/\uE500/g;let _p={};function Tp(t={translations:{}}){_p=t.translations}const wp=/\{\$(.*?)\}/g;function Op(t,e){return void 0!==_p[t]&&(t=_p[t]),void 0!==e&&Object.keys(e).length?t.replace(wp,(t,n)=>e[n]||""):t}let Sp=Dg;function Ip(t){null==t&&vt("Expected localeId to be defined"),"string"==typeof t&&(Sp=t.toLowerCase().replace(/_/g,"-"))}const Np=new Map;function Cp(t,e){const n=Np.get(t);Rp(t,n&&n.moduleType,e.moduleType),Np.set(t,e)}function Rp(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${j(e)} vs ${j(e.name)}`)}function Ap(t){if(null!==t.ngModuleDef.id){const e=t.ngModuleDef.id;Rp(e,Np.get(e),t),Np.set(e,t)}let e=t.ngModuleDef.imports;e instanceof Function&&(e=e()),e&&e.forEach(t=>Ap(t))}function kp(t){return Np.get(t)}const Ep={provide:Yc,useClass:class extends Yc{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Ht(t);return new Ig(e,this.ngModule)}},deps:[ft]};class Lp extends ft{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=$t(t),a=t[kt]||null;a&&Ip(a),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Lu(t,e,[{provide:ft,useValue:this},Ep],j(t)),this.instance=this.get(t)}get(t,e=Bu.THROW_IF_NOT_FOUND,n=C.Default){return t===Bu||t===ft||t===$?this:this._r3Injector.get(t,e,n)}get componentFactoryResolver(){return this.get(Yc)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Dp extends ht{constructor(t){super(),this.moduleType=t,null!==$t(t)&&Ap(t)}create(t){return new Lp(this.moduleType,t)}}function Pp(t,e,n,a){return Ot(()=>{const r=t,i=r.prototype?Object.getPrototypeOf(r.prototype):null,s=i&&i.constructor;null!==e&&(void 0===r.decorators||s&&s.decorators===r.decorators?r.decorators=e:r.decorators.push(...e)),null!==n&&(r.ctorParameters=n),null!==a&&(r.propDecorators=void 0===r.propDecorators||s&&s.propDecorators===r.propDecorators?a:Object.assign({},r.propDecorators,a))})}function Mp(t,e,n){const a=Qe()+t,r=Ae();return Ue()?Fo(r,a,n?e.call(n):e()):Vo(r,a)}function qp(t,e,n,a){const r=Ae(),i=Qe()+t;return Go(r,i,n)?Fo(r,i+1,a?e.call(a,n):e(n)):Vo(r,i+1)}function jp(t,e,n,a,r){const i=Qe()+t,s=Ae();return Bo(s,i,n,a)?Fo(s,i+2,r?e.call(r,n,a):e(n,a)):Vo(s,i+2)}function Fp(t,e,n,a,r,i){const s=Qe()+t,u=Ae();return zo(u,s,n,a,r)?Fo(u,s+3,i?e.call(i,n,a,r):e(n,a,r)):Vo(u,s+3)}function Vp(t,e,n,a,r,i,s){const u=Qe()+t,o=Ae();return Yo(o,u,n,a,r,i)?Fo(o,u+4,s?e.call(s,n,a,r,i):e(n,a,r,i)):Vo(o,u+4)}function Gp(t,e,n,a,r,i,s,u){const o=Qe()+t,l=Ae(),d=Yo(l,o,n,a,r,i);return Go(l,o+4,s)||d?Fo(l,o+5,u?e.call(u,n,a,r,i,s):e(n,a,r,i,s)):Vo(l,o+5)}function Bp(t,e,n,a,r,i,s,u,o){const l=Qe()+t,d=Ae(),c=Yo(d,l,n,a,r,i);return Bo(d,l+4,s,u)||c?Fo(d,l+6,o?e.call(o,n,a,r,i,s,u):e(n,a,r,i,s,u)):Vo(d,l+6)}function zp(t,e,n,a,r,i,s,u,o,l){const d=Qe()+t,c=Ae();let f=Yo(c,d,n,a,r,i);return zo(c,d+4,s,u,o)||f?Fo(c,d+7,l?e.call(l,n,a,r,i,s,u,o):e(n,a,r,i,s,u,o)):Vo(c,d+7)}function Yp(t,e,n,a,r,i,s,u,o,l,d){const c=Qe()+t,f=Ae(),h=Yo(f,c,n,a,r,i);return Yo(f,c+4,s,u,o,l)||h?Fo(f,c+8,d?e.call(d,n,a,r,i,s,u,o,l):e(n,a,r,i,s,u,o,l)):Vo(f,c+8)}function Hp(t,e,n,a){let r=Qe()+t,i=!1;const s=Ae();for(let u=0;u<n.length;u++)Go(s,r++,n[u])&&(i=!0);return i?Fo(s,r,e.apply(a,n)):Vo(s,r)}function Up(t,e){const n=Ae()[1];let a;const r=t+19;n.firstTemplatePass?(a=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const a=e[n];if(t===a.name)return a}throw new Error(`The pipe '${t}' could not be found!`)}(e,n.pipeRegistry),n.data[r]=a,a.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(r,a.onDestroy)):a=n.data[r];const i=a.factory();return vl(t,i),i}function Wp(t,e,n){const a=_l(t);return Xp(Qp(t)?qp(e,a.transform,n,a):a.transform(n))}function Kp(t,e,n,a){const r=_l(t);return Xp(Qp(t)?jp(e,r.transform,n,a,r):r.transform(n,a))}function $p(t,e,n,a,r){const i=_l(t);return Xp(Qp(t)?Fp(e,i.transform,n,a,r,i):i.transform(n,a,r))}function Zp(t,e,n,a,r,i){const s=_l(t);return Xp(Qp(t)?Vp(e,s.transform,n,a,r,i,s):s.transform(n,a,r,i))}function Jp(t,e,n){const a=_l(t);return Xp(Qp(t)?Hp(e,a.transform,n,a):a.transform.apply(a,n))}function Qp(t){return Ae()[1].data[t+19].pure}function Xp(t){if(Mo.isWrapped(t)){t=Mo.unwrap(t);const e=Ae();e[e[7]]=ci}return t}class tb extends a.a{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let a,i=t=>null,s=()=>null;t&&"object"==typeof t?(a=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(i=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(s=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(a=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(i=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const u=super.subscribe(a,i,s);return t instanceof r.a&&t.add(u),u}}function eb(){return this._results[Lo()]()}class nb{constructor(){this.dirty=!0,this._results=[],this.changes=new tb,this.length=0;const t=Lo(),e=nb.prototype;e[t]||(e[t]=eb)}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t){this._results=pt(t),this.dirty=!1,this.length=this._results.length,this.last=this._results[this.length-1],this.first=this._results[0]}notifyOnChanges(){this.changes.emit(this)}setDirty(){this.dirty=!0}destroy(){this.changes.complete(),this.changes.unsubscribe()}}class ab{constructor(t){this.queryList=t,this.matches=null}clone(){return new ab(this.queryList)}setDirty(){this.queryList.setDirty()}}class rb{constructor(t=[]){this.queries=t}createEmbeddedView(t){const e=t.queries;if(null!==e){const n=null!==t.contentQueries?t.contentQueries[0]:e.length,a=new Array(n);for(let t=0;t<n;t++){const n=e.getByIndex(t);a[t]=this.queries[n.indexInDeclarationView].clone()}return new rb(a)}return null}insertView(t){this.dirtyQueriesWithMatches(t)}detachView(t){this.dirtyQueriesWithMatches(t)}dirtyQueriesWithMatches(t){for(let e=0;e<this.queries.length;e++)null!==wb(t,e).matches&&this.queries[e].setDirty()}}class ib{constructor(t,e,n,a=null){this.predicate=t,this.descendants=e,this.isStatic=n,this.read=a}}class sb{constructor(t=[]){this.queries=t}elementStart(t,e){for(let n of this.queries)n.elementStart(t,e)}elementEnd(t){for(let e of this.queries)e.elementEnd(t)}embeddedTView(t){let e=null;for(let n=0;n<this.length;n++){const a=null!==e?e.length:0,r=this.getByIndex(n).embeddedTView(t,a);r&&(r.indexInDeclarationView=n,null!==e?e.push(r):e=[r])}return null!==e?new sb(e):null}template(t,e){for(let n of this.queries)n.template(t,e)}getByIndex(t){return this.queries[t]}get length(){return this.queries.length}track(t){this.queries.push(t)}}class ub{constructor(t,e=-1){this.metadata=t,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=e}elementStart(t,e){this.isApplyingToNode(e)&&this.matchTNode(t,e)}elementEnd(t){this._declarationNodeIndex===t.index&&(this._appliesToNextNode=!1)}template(t,e){this.elementStart(t,e)}embeddedTView(t,e){return this.isApplyingToNode(t)?(this.crossesNgTemplate=!0,this.addMatch(-t.index,e),new ub(this.metadata)):null}isApplyingToNode(t){return this._appliesToNextNode&&!1===this.metadata.descendants?this._declarationNodeIndex===(t.parent?t.parent.index:-1):this._appliesToNextNode}matchTNode(t,e){if(Array.isArray(this.metadata.predicate)){const n=this.metadata.predicate;for(let a=0;a<n.length;a++)this.matchTNodeWithReadOption(t,e,ob(e,n[a]))}else{const n=this.metadata.predicate;n===Of?0===e.type&&this.matchTNodeWithReadOption(t,e,-1):this.matchTNodeWithReadOption(t,e,Oa(e,t,n,!1,!1))}}matchTNodeWithReadOption(t,e,n){if(null!==n){const a=this.metadata.read;if(null!==a)if(a===Kc||a===Nf||a===Of&&0===e.type)this.addMatch(e.index,-2);else{const n=Oa(e,t,a,!1,!1);null!==n&&this.addMatch(e.index,n)}else this.addMatch(e.index,n)}}addMatch(t,e){null===this.matches?this.matches=[t,e]:this.matches.push(t,e)}}function ob(t,e){const n=t.localNames;if(null!==n)for(let a=0;a<n.length;a+=2)if(n[a]===e)return n[a+1];return null}function lb(t,e,n,a){return-1===n?function(t,e){return 3===t.type||4===t.type?$s(Kc,t,e):0===t.type?Zs(Of,Kc,t,e):null}(e,t):-2===n?function(t,e,n){return n===Kc?$s(Kc,e,t):n===Of?Zs(Of,Kc,e,t):n===Nf?Js(Nf,Kc,e,t):void 0}(t,e,a):Sa(t[1].data,t,n,e)}function db(t,e,n){const a=t[5].queries[n];if(null===a.matches){const n=t[1].data,r=e.matches,i=new Array(r.length/2);for(let a=0;a<r.length;a+=2){const s=r[a];i[a/2]=s<0?null:lb(t,n[s],r[a+1],e.metadata.read)}a.matches=i}return a.matches}function cb(t){const e=Ae(),n=en();nn(n+1);const a=wb(e[1],n);if(t.dirty&&Ue()===a.metadata.isStatic){if(null===a.matches)t.reset([]);else{const r=a.crossesNgTemplate?function t(e,n,a){const r=e[1].queries.getByIndex(n),i=r.matches;if(null!==i){const s=db(e,r,n);for(let n=0;n<i.length;n+=2){const r=i[n];if(r>0)a.push(s[n/2]);else{const s=i[n+1],u=e[-r];for(let e=9;e<u.length;e++){const n=u[e];n[17]===n[3]&&t(n,s,a)}if(null!==u[5])for(let e of u[5])t(e,s,a)}}}return a}(e,n,[]):db(e,a,n);t.reset(r),t.notifyOnChanges()}return!0}return!1}function fb(t,e,n){gb(Ae(),t,e,n,!0)}function hb(t,e,n){gb(Ae(),t,e,n,!1)}function gb(t,e,n,a,r){const i=t[1];i.firstTemplatePass&&(Tb(i,new ib(e,n,r,a),-1),r&&(i.staticViewQueries=!0)),_b(t)}function pb(){return xb(Ae(),en())}function bb(t,e,n,a){yb(Ae(),e,n,a,!1,Ge(),t)}function mb(t,e,n,a){yb(Ae(),e,n,a,!0,Ge(),t)}function yb(t,e,n,a,r,i,s){const u=t[1];u.firstTemplatePass&&(Tb(u,new ib(e,n,r,a),i.index),function(t,e){const n=t.contentQueries||(t.contentQueries=[]);e!==(t.contentQueries.length?n[n.length-1]:-1)&&n.push(t.queries.length-1,e)}(u,s),r&&(u.staticContentQueries=!0)),_b(t)}function vb(){return xb(Ae(),en())}function xb(t,e){return t[5].queries[e].queryList}function _b(t){const e=new nb;!function(t,e,n){const a=gs(t);a.push(e),t[1].firstTemplatePass&&ps(t).push(n,a.length-1)}(t,e,e.destroy),null===t[5]&&(t[5]=new rb),t[5].queries.push(new ab(e))}function Tb(t,e,n){null===t.queries&&(t.queries=new sb),t.queries.track(new ub(e,n))}function wb(t,e){return t.queries.getByIndex(e)}function Ob(t,e){return Zs(Of,Kc,t,e)}function Sb(t=C.Default){const e=Qs(!0);if(null!=e||t&C.Optional)return e;throw new Error("No provider for ChangeDetectorRef!")}const Ib=(()=>({"ɵɵattribute":Wo,"ɵɵattributeInterpolate1":al,"ɵɵattributeInterpolate2":rl,"ɵɵattributeInterpolate3":il,"ɵɵattributeInterpolate4":sl,"ɵɵattributeInterpolate5":ul,"ɵɵattributeInterpolate6":ol,"ɵɵattributeInterpolate7":ll,"ɵɵattributeInterpolate8":dl,"ɵɵattributeInterpolateV":cl,"ɵɵdefineBase":Bt,"ɵɵdefineComponent":Pt,"ɵɵdefineDirective":zt,"ɵɵdefineInjectable":k,"ɵɵdefineInjector":L,"ɵɵdefineNgModule":Ft,"ɵɵdefinePipe":Yt,"ɵɵdirectiveInject":Tl,"ɵɵgetFactoryOf":Ra,"ɵɵgetInheritedFactory":Aa,"ɵɵinject":rt,"ɵɵinjectAttribute":wl,"ɵɵinjectPipeChangeDetectorRef":Sb,"ɵɵtemplateRefExtractor":Ob,"ɵɵNgOnChangesFeature":wc,"ɵɵProvidersFeature":jc,"ɵɵInheritDefinitionFeature":Nc,"ɵɵcontainer":gl,"ɵɵnextContext":ud,"ɵɵcontainerRefreshStart":bl,"ɵɵcontainerRefreshEnd":ml,"ɵɵnamespaceHTML":gn,"ɵɵnamespaceMathML":hn,"ɵɵnamespaceSVG":fn,"ɵɵenableBindings":Ce,"ɵɵdisableBindings":Re,"ɵɵallocHostVars":ko,"ɵɵelementStart":zl,"ɵɵelementEnd":Yl,"ɵɵelement":Hl,"ɵɵelementContainerStart":Kl,"ɵɵelementContainerEnd":$l,"ɵɵelementContainer":Zl,"ɵɵpureFunction0":Mp,"ɵɵpureFunction1":qp,"ɵɵpureFunction2":jp,"ɵɵpureFunction3":Fp,"ɵɵpureFunction4":Vp,"ɵɵpureFunction5":Gp,"ɵɵpureFunction6":Bp,"ɵɵpureFunction7":zp,"ɵɵpureFunction8":Yp,"ɵɵpureFunctionV":Hp,"ɵɵgetCurrentView":Xl,"ɵɵrestoreView":Ve,"ɵɵlistener":nd,"ɵɵload":_l,"ɵɵprojection":fd,"ɵɵupdateSyntheticHostBinding":tc,"ɵɵcomponentHostSyntheticListener":ad,"ɵɵpipeBind1":Wp,"ɵɵpipeBind2":Kp,"ɵɵpipeBind3":$p,"ɵɵpipeBind4":Zp,"ɵɵpipeBindV":Jp,"ɵɵprojectionDef":ld,"ɵɵhostProperty":Xd,"ɵɵproperty":Ho,"ɵɵpropertyInterpolate":hd,"ɵɵpropertyInterpolate1":gd,"ɵɵpropertyInterpolate2":pd,"ɵɵpropertyInterpolate3":bd,"ɵɵpropertyInterpolate4":md,"ɵɵpropertyInterpolate5":yd,"ɵɵpropertyInterpolate6":vd,"ɵɵpropertyInterpolate7":xd,"ɵɵpropertyInterpolate8":_d,"ɵɵpropertyInterpolateV":Td,"ɵɵpipe":Up,"ɵɵqueryRefresh":cb,"ɵɵviewQuery":hb,"ɵɵstaticViewQuery":fb,"ɵɵstaticContentQuery":mb,"ɵɵloadViewQuery":pb,"ɵɵcontentQuery":bb,"ɵɵloadContentQuery":vb,"ɵɵreference":xl,"ɵɵelementHostAttrs":Ul,"ɵɵclassMap":kl,"ɵɵclassMapInterpolate1":Pd,"ɵɵclassMapInterpolate2":Md,"ɵɵclassMapInterpolate3":qd,"ɵɵclassMapInterpolate4":jd,"ɵɵclassMapInterpolate5":Fd,"ɵɵclassMapInterpolate6":Vd,"ɵɵclassMapInterpolate7":Gd,"ɵɵclassMapInterpolate8":Bd,"ɵɵclassMapInterpolateV":zd,"ɵɵstyling":Ol,"ɵɵstyleMap":Al,"ɵɵstyleProp":Il,"ɵɵstylePropInterpolate1":Yd,"ɵɵstylePropInterpolate2":Hd,"ɵɵstylePropInterpolate3":Ud,"ɵɵstylePropInterpolate4":Wd,"ɵɵstylePropInterpolate5":Kd,"ɵɵstylePropInterpolate6":$d,"ɵɵstylePropInterpolate7":Zd,"ɵɵstylePropInterpolate8":Jd,"ɵɵstylePropInterpolateV":Qd,"ɵɵstyleSanitizer":Sl,"ɵɵstylingApply":Pl,"ɵɵclassProp":Cl,"ɵɵselect":wi,"ɵɵtemplate":pl,"ɵɵtext":wd,"ɵɵtextBinding":Od,"ɵɵtextInterpolate":Sd,"ɵɵtextInterpolate1":Id,"ɵɵtextInterpolate2":Nd,"ɵɵtextInterpolate3":Cd,"ɵɵtextInterpolate4":Rd,"ɵɵtextInterpolate5":Ad,"ɵɵtextInterpolate6":kd,"ɵɵtextInterpolate7":Ed,"ɵɵtextInterpolate8":Ld,"ɵɵtextInterpolateV":Dd,"ɵɵembeddedViewStart":Jl,"ɵɵembeddedViewEnd":Ql,"ɵɵi18n":dp,"ɵɵi18nAttributes":cp,"ɵɵi18nExp":gp,"ɵɵi18nStart":np,"ɵɵi18nEnd":sp,"ɵɵi18nApply":pp,"ɵɵi18nPostprocess":ip,"ɵɵi18nLocalize":Op,"ɵɵresolveWindow":Tn,"ɵɵresolveDocument":wn,"ɵɵresolveBody":On,"ɵɵsetComponentScope":Mt,"ɵɵsetNgModuleScope":Vt,"ɵɵsanitizeHtml":wr,"ɵɵsanitizeStyle":Or,"ɵɵdefaultStyleSanitizer":Ar,"ɵɵsanitizeResourceUrl":Ir,"ɵɵsanitizeScript":Nr,"ɵɵsanitizeUrl":Sr,"ɵɵsanitizeUrlOrResourceUrl":Rr}))(),Nb=[],Cb=[];let Rb=!1;function Ab(){if(!Rb){Rb=!0;try{for(let t=Cb.length-1;t>=0;t--){const{moduleType:e,ngModule:n}=Cb[t];n.declarations&&n.declarations.every(kb)&&(Cb.splice(t,1),qb(e,n))}}finally{Rb=!1}}}function kb(t){return Array.isArray(t)?t.every(kb):!!G(t)}function Eb(t,e={}){Lb(t,e),function(t,e){Cb.push({moduleType:t,ngModule:e})}(t,e)}function Lb(t,e,n=!1){const a=pt(e.declarations||Nb);let r=null;Object.defineProperty(t,At,{configurable:!0,get:()=>(null===r&&(r=W().compileNgModule(Ib,`ng:///${t.name}/ngModuleDef.js`,{type:t,bootstrap:pt(e.bootstrap||Nb).map(G),declarations:a.map(G),imports:pt(e.imports||Nb).map(G).map(Vb),exports:pt(e.exports||Nb).map(G).map(Vb),emitInline:!0,schemas:e.schemas?pt(e.schemas):null,id:e.id||null})),r)});let i=null;Object.defineProperty(t,q,{get:()=>{if(null===i){const n={name:t.name,type:t,deps:hu(t),providers:e.providers||Nb,imports:[(e.imports||Nb).map(G),(e.exports||Nb).map(G)]};i=W().compileInjector(Ib,`ng:///${t.name}/ngInjectorDef.js`,n)}return i},configurable:!1})}let Db=new Map,Pb=new Map;function Mb(){Db=new Map,Pb=new Map,Cb.length=0}function qb(t,e){const n=pt(e.declarations||Nb),a=Fb(t);n.forEach(e=>{e.hasOwnProperty(Nt)?jb(Ht(e),a):e.hasOwnProperty(Ct)||e.hasOwnProperty(Rt)||(e.ngSelectorScope=t)})}function jb(t,e){t.directiveDefs=()=>Array.from(e.compilation.directives).map(t=>t.hasOwnProperty(Nt)?Ht(t):Ut(t)).filter(t=>!!t),t.pipeDefs=()=>Array.from(e.compilation.pipes).map(t=>Wt(t)),t.schemas=e.schemas,t.tView=null}function Fb(t,e){if(!Gb(t))throw new Error(t.name+" does not have an ngModuleDef");const n=$t(t);if(null!==n.transitiveCompileScopes)return n.transitiveCompileScopes;const a={schemas:n.schemas||null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set,pipes:new Set}};return In(n.declarations).forEach(t=>{Wt(t)?a.compilation.pipes.add(t):a.compilation.directives.add(t)}),In(n.imports).forEach(t=>{const n=t;if(!Gb(n))throw new Error(`Importing ${n.name} which does not have an ngModuleDef`);e&&e(n);const r=Fb(n,e);r.exported.directives.forEach(t=>a.compilation.directives.add(t)),r.exported.pipes.forEach(t=>a.compilation.pipes.add(t))}),In(n.exports).forEach(t=>{const n=t;if(Gb(n)){const t=Fb(n,e);t.exported.directives.forEach(t=>{a.compilation.directives.add(t),a.exported.directives.add(t)}),t.exported.pipes.forEach(t=>{a.compilation.pipes.add(t),a.exported.pipes.add(t)})}else Wt(n)?a.exported.pipes.add(n):a.exported.directives.add(n)}),n.transitiveCompileScopes=a,a}function Vb(t){return function(t){return void 0!==t.ngModule}(t)?t.ngModule:t}function Gb(t){return!!$t(t)}function Bb(t,e){let n=null;!function(t,e){Co(e)&&(Io.set(t,e),No.add(t))}(t,e),Object.defineProperty(t,Nt,{get:()=>{const a=W();if(null===n){if(Co(e)){const n=[`Component '${t.name}' is not resolved:`];throw e.templateUrl&&n.push(" - templateUrl: "+e.templateUrl),e.styleUrls&&e.styleUrls.length&&n.push(" - styleUrls: "+JSON.stringify(e.styleUrls)),n.push("Did you run and wait for 'resolveComponentResources()'?"),new Error(n.join("\n"))}const r=e.templateUrl||`ng:///${t.name}/template.html`,i=Object.assign({},Hb(t,e),{typeSourceSpan:a.createParseSourceSpan("Component",t.name,r),template:e.template||"",preserveWhitespaces:e.preserveWhitespaces||!1,styles:e.styles||It,animations:e.animations,directives:[],changeDetection:e.changeDetection,pipes:new Map,encapsulation:e.encapsulation||wt.Emulated,interpolation:e.interpolation,viewProviders:e.viewProviders||null});if(i.usesInheritance&&Ub(t),n=a.compileComponent(Ib,r,i),Ab(),void 0!==t.ngSelectorScope){const e=Fb(t.ngSelectorScope);jb(n,e)}}return n},configurable:!1}),pu(t)}function zb(t,e){let n=null;Object.defineProperty(t,Ct,{get:()=>{if(null===n){const a=t&&t.name,r=`ng:///${a}/ngDirectiveDef.js`,i=W(),s=Hb(t,e);s.typeSourceSpan=i.createParseSourceSpan("Directive",a,r),s.usesInheritance&&Ub(t),n=i.compileDirective(Ib,r,s)}return n},configurable:!1}),pu(t)}function Yb(t){return Object.getPrototypeOf(t.prototype)===Object.prototype}function Hb(t,e){const n=fu().ownPropMetadata(t);return{name:t.name,type:t,typeArgumentCount:0,selector:e.selector,deps:hu(t),host:e.host||St,propMetadata:n,inputs:e.inputs||It,outputs:e.outputs||It,queries:Zb(t,n,Jb),lifecycle:{usesOnChanges:t.prototype.hasOwnProperty("ngOnChanges")},typeSourceSpan:null,usesInheritance:!Yb(t),exportAs:(a=e.exportAs,void 0===a?null:a.split(",").map(t=>t.trim())),providers:e.providers||null,viewQueries:Zb(t,n,Qb)};var a}function Ub(t){const e=Object.prototype;let n=Object.getPrototypeOf(t);for(;n&&n!==e;){if(!Ut(n)&&!Ht(n)&&!Kt(n)){const t=Kb(n);t&&Wb(n,t)}n=Object.getPrototypeOf(n)}}function Wb(t,e){let n=null;Object.defineProperty(t,Et,{get:()=>{if(null===n){const a=`ng://${t&&t.name}/ngBaseDef.js`,r=W();n=r.compileBase(Ib,a,e)}return n},configurable:!1})}function Kb(t){const e=fu().ownPropMetadata(t),n=Zb(t,e,Qb),a=Zb(t,e,Jb);let r,i,s=!1;for(const u in e)e[u].forEach(t=>{const e=t.ngMetadataName;"Input"===e?(r=r||{},r[u]=t.bindingPropertyName?[t.bindingPropertyName,u]:u):"Output"===e?(i=i||{},i[u]=t.bindingPropertyName||u):"HostBinding"!==e&&"HostListener"!==e||(s=!0)});return r||i||n.length||a.length||s?{name:t.name,type:t,inputs:r,outputs:i,viewQueries:n,queries:a,propMetadata:e}:null}function $b(t,e){return{propertyName:t,predicate:(n=e.selector,"string"==typeof n?n.split(",").map(t=>t.trim()):G(n)),descendants:e.descendants,first:e.first,read:e.read?e.read:null,static:!!e.static};var n}function Zb(t,e,n){const a=[];for(const r in e)if(e.hasOwnProperty(r)){const i=e[r];i.forEach(e=>{if(n(e)){if(!e.selector)throw new Error(`Can't construct a query for the property "${r}" of "${xn(t)}" since the query selector wasn't defined.`);if(i.some(Xb))throw new Error("Cannot combine @Input decorators with query decorators");a.push($b(r,e))}})}return a}function Jb(t){const e=t.ngMetadataName;return"ContentChild"===e||"ContentChildren"===e}function Qb(t){const e=t.ngMetadataName;return"ViewChild"===e||"ViewChildren"===e}function Xb(t){return"Input"===t.ngMetadataName}function tm(t,e){let n=null;Object.defineProperty(t,Rt,{get:()=>{if(null===n){const a=t.name;n=W().compilePipe(Ib,`ng:///${a}/ngPipeDef.js`,{type:t,typeArgumentCount:0,name:a,deps:hu(t),pipeName:e.name,pure:void 0===e.pure||e.pure})}return n},configurable:!1})}const em=y("Directive",(t={})=>t,void 0,void 0,(t,e)=>fm(t,e)),nm=y("Component",(t={})=>Object.assign({changeDetection:xt.Default},t),em,void 0,(t,e)=>cm(t,e)),am=y("Pipe",t=>Object.assign({pure:!0},t),void 0,void 0,(t,e)=>hm(t,e)),rm=_("Input",t=>({bindingPropertyName:t})),im=_("Output",t=>({bindingPropertyName:t})),sm=_("HostBinding",t=>({hostPropertyName:t})),um=_("HostListener",(t,e)=>({eventName:t,args:e})),om=Bb,lm=zb,dm=tm,cm=Wc,fm=Wc,hm=Wc,gm=y("NgModule",t=>t,void 0,void 0,(t,e)=>bm(t,e)),pm=Eb,bm=function(t,e){let n=e&&e.imports||[];e&&e.exports&&(n=[...n,e.exports]),t.ngInjectorDef=L({factory:wu(t,{useClass:t}),providers:e&&e.providers,imports:n})},mm=new K("Application Initializer");class ym{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n<this.appInits.length;n++){const e=this.appInits[n]();td(e)&&t.push(e)}Promise.all(t).then(()=>{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}const vm=new K("AppId");function xm(){return`${Tm()}${Tm()}${Tm()}`}const _m={provide:vm,useFactory:xm,deps:[]};function Tm(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const wm=new K("Platform Initializer"),Om=new K("Platform ID"),Sm=new K("appBootstrapListener"),Im=new K("Application Packages Root URL");class Nm{log(t){console.log(t)}warn(t){console.warn(t)}}const Cm=new K("LocaleId"),Rm=new K("Translations"),Am=new K("TranslationsFormat"),km=function(){var t={Error:0,Warning:1,Ignore:2};return t[t.Error]="Error",t[t.Warning]="Warning",t[t.Ignore]="Ignore",t}(),Em=!0,Lm=!1;class Dm{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}function Pm(){throw new Error("Runtime compiler is not loaded")}const Mm=function(t){return new Dp(t)},qm=Pm,jm=function(t){return Promise.resolve(Mm(t))},Fm=Pm,Vm=function(t){const e=Mm(t),n=In($t(t).declarations).reduce((t,e)=>{const n=Ht(e);return n&&t.push(new Ig(n)),t},[]);return new Dm(e,n)},Gm=Pm,Bm=function(t){return Promise.resolve(Vm(t))},zm=Pm;class Ym{constructor(){this.compileModuleSync=qm,this.compileModuleAsync=Fm,this.compileModuleAndAllComponentsSync=Gm,this.compileModuleAndAllComponentsAsync=zm}clearCache(){}clearCacheFor(t){}getModuleId(t){}}const Hm=new K("compilerOptions");class Um{}let Wm,Km;function $m(){const t=U.wtf;return!(!t||(Wm=t.trace,!Wm)||(Km=Wm.events,0))}function Zm(t,e=null){return Km.createScope(t,e)}function Jm(t,e){return Wm.leaveScope(t,e),e}function Qm(t,e){return Wm.beginTimeRange(t,e)}function Xm(t){Wm.endTimeRange(t)}const ty=$m();function ey(t,e){return null}const ny=ty?Zm:(t,e)=>ey,ay=ty?Jm:(t,e)=>e,ry=ty?Qm:(t,e)=>null,iy=ty?Xm:t=>null,sy=(()=>Promise.resolve(0))();function uy(t){"undefined"==typeof Zone?sy.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class oy{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new tb(!1),this.onMicrotaskEmpty=new tb(!1),this.onStable=new tb(!1),this.onError=new tb(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,a,r,i,s)=>{try{return fy(e),t.invokeTask(a,r,i,s)}finally{hy(e)}},onInvoke:(t,n,a,r,i,s,u)=>{try{return fy(e),t.invoke(a,r,i,s,u)}finally{hy(e)}},onHasTask:(t,n,a,r)=>{t.hasTask(a,r),n===a&&("microTask"==r.change?(e.hasPendingMicrotasks=r.microTask,cy(e)):"macroTask"==r.change&&(e.hasPendingMacrotasks=r.macroTask))},onHandleError:(t,n,a,r)=>(t.handleError(a,r),e.runOutsideAngular(()=>e.onError.emit(r)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!oy.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(oy.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,a){const r=this._inner,i=r.scheduleEventTask("NgZoneEvent: "+a,t,dy,ly,ly);try{return r.runTask(i,e,n)}finally{r.cancelTask(i)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function ly(){}const dy={};function cy(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function fy(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function hy(t){t._nesting--,cy(t)}class gy{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new tb,this.onMicrotaskEmpty=new tb,this.onStable=new tb,this.onError=new tb}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}class py{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{oy.assertNotInAngularZone(),uy(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())uy(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let a=-1;e&&e>0&&(a=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==a),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:a,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}class by{constructor(){this._applications=new Map,xy.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return xy.findTestabilityInTree(this,t,e)}}class my{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}function yy(t){xy=t}let vy,xy=new my;function _y(t,e,n){const a=new Dp(n);if(0===Io.size)return Promise.resolve(a);const r=function(t){const e=[];return t.forEach(t=>t&&e.push(...t)),e}(t.get(Hm,[]).concat(e).map(t=>t.providers));if(0===r.length)return Promise.resolve(a);const i=W(),s=Bu.create({providers:r}).get(i.ResourceLoader);return So(t=>Promise.resolve(s.get(t))).then(()=>a)}function Ty(t){return t.isBoundToModule}const wy=new K("AllowMultipleToken");class Oy{constructor(t,e){this.name=t,this.token=e}}function Sy(t){if(vy&&!vy.destroyed&&!vy.injector.get(wy,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");vy=t.get(Ay);const e=t.get(wm,null);return e&&e.forEach(t=>t()),vy}function Iy(t,e,n=[]){const a="Platform: "+e,r=new K(a);return(e=[])=>{let i=Ry();if(!i||i.injector.get(wy,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0});Sy(Bu.create({providers:t,name:a}))}return Ny(r)}}function Ny(t){const e=Ry();if(!e)throw new Error("No platform exists!");if(!e.injector.get(t,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return e}function Cy(){vy&&!vy.destroyed&&vy.destroy()}function Ry(){return vy&&!vy.destroyed?vy:null}class Ay{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t){let e;return e="noop"===t?new gy:("zone.js"===t?void 0:t)||new oy({enableLongStackTrace:Wa()}),e}(e?e.ngZone:void 0),a=[{provide:oy,useValue:n}];return n.run(()=>{const e=Bu.create({providers:a,parent:this.injector,name:t.moduleType.name}),r=t.create(e),i=r.injector.get(Da,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return Lm&&Ip(r.injector.get(Cm,Dg)||Dg),r.onDestroy(()=>Ly(this._modules,r)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{i.handleError(t)}})),function(t,e,n){try{const a=n();return td(a)?a.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):a}catch(a){throw e.runOutsideAngular(()=>t.handleError(a)),a}}(i,n,()=>{const t=r.injector.get(ym);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(r),r))})})}bootstrapModule(t,e=[]){const n=ky({},e);return function(t,e,n){return t.get(Um).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Ey);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${j(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}function ky(t,e){return Array.isArray(e)?e.reduce(ky,t):Object.assign({},t,e)}let Ey=(()=>{class t{constructor(t,e,n,a,r,u){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=a,this._componentFactoryResolver=r,this._initStatus=u,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Wa(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const l=new i.a(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),d=new i.a(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{oy.assertNotInAngularZone(),uy(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{oy.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=Object(s.a)(l,d.pipe(t=>{return o()((e=g,function(t){let n;n="function"==typeof e?e:function(){return e};const a=Object.create(t,f);return a.source=t,a.subjectFactory=n,a})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof Vc?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const a=n instanceof Uc?null:this._injector.get(ft),r=n.create(Bu.NULL,[],e||n.selector,a);r.onDestroy(()=>{this._unloadComponent(r)});const i=r.injector.get(py,null);return i&&r.injector.get(by).registerApplication(r.location.nativeElement,i),this._loadComponent(r),Wa()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,ay(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Ly(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Sm,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Ly(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=ny("ApplicationRef#tick()"),t})();function Ly(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class Dy{}function Py(t){const e=kp(t);if(!e)throw jy(t);return e}function My(t){const e=kp(t);if(!e)throw jy(t);return new Dp(e)}const qy=Py;function jy(t){return new Error(`No module with ID ${t} loaded`)}class Fy{}const Vy={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"};class Gy{constructor(t,e){this._compiler=t,this._config=e||Vy}load(t){return!Lm&&this._compiler instanceof Ym?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,a]=t.split("#");return void 0===a&&(a="default"),n("crnd")(e).then(t=>t[a]).then(t=>By(t,e,a)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,a]=t.split("#"),r="NgFactory";return void 0===a&&(a="default",r=""),n("crnd")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[a+r]).then(t=>By(t,e,a))}}function By(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class zy extends Xs{}class Yy extends zy{}class Hy{constructor(t,e){this.name=t,this.callback=e}}class Uy{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Wy&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class Wy extends Uy{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const n=this.childNodes.indexOf(t);-1===n?this.addChild(e):(e.parent&&e.parent.removeChild(e),e.parent=this,this.childNodes.splice(n,0,e))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,a){e.childNodes.forEach(e=>{e instanceof Wy&&(n(e)&&a.push(e),t(e,n,a))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,a){e instanceof Wy&&e.childNodes.forEach(e=>{n(e)&&a.push(e),e instanceof Wy&&t(e,n,a)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof Wy)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}function Ky(t){return t.map(t=>t.nativeElement)}class $y{constructor(t){this.nativeNode=t}get parent(){const t=this.nativeNode.parentNode;return t?new Zy(t):null}get injector(){return ic(this.nativeNode)}get componentInstance(){const t=this.nativeNode;return t&&(ec(t)||ac(t))}get context(){return ec(this.nativeNode)||nc(this.nativeNode)}get listeners(){return cc(this.nativeNode).filter(dc)}get references(){return function(t){const e=uc(t);return void 0===e.localRefs&&(e.localRefs=function(t,e){const n=t[1].data[e];if(n&&n.localNames){const e={};let a=n.index+1;for(let r=0;r<n.localNames.length;r+=2)e[n.localNames[r]]=t[a],a++;return e}return null}(e.lView,e.nodeIndex)),e.localRefs||{}}(this.nativeNode)}get providerTokens(){return function(t){const e=uc(t,!1);if(!e)return[];const n=e.lView[1],a=n.data[e.nodeIndex],r=[],i=a.directiveEnd;for(let u=65535&a.providerIndexes;u<i;u++){let t=n.data[u];void 0!==(s=t).type&&void 0!==s.template&&void 0!==s.declaredInputs&&(t=t.type),r.push(t)}var s;return r}(this.nativeNode)}}class Zy extends $y{constructor(t){super(t)}get nativeElement(){return this.nativeNode.nodeType==Node.ELEMENT_NODE?this.nativeNode:null}get name(){return this.nativeElement.nodeName}get properties(){const t=uc(this.nativeNode),e=t.lView,n=e[1].data,a=n[t.nodeIndex],r=function(t,e,n){const a={};let r=function(t,e){let n=t-1,a=e[n];for(;"string"==typeof a&&!Sn(a);)a=e[--n];return n+1}(t.propertyMetadataStartIndex,n);for(;r<t.propertyMetadataEndIndex;){let t,i=n[r];for(;!Sn(i);)t=(t||"")+vn(e[r])+n[r],i=n[++r];t=void 0===t?e[r]:t+=e[r];const s=i.split("�"),u=s[0];u&&(a[u]=s[1]&&s[2]?s[1]+t+s[2]:t),r++}return a}(a,e,n),i=function(t,e,n){const a={};let r=t.directiveEnd,i=n[r];for(;"string"==typeof i;)a[i.split("�")[0]]=e[r],i=n[++r];return a}(a,e,n),s=function(t){const e=t.classes;let n="";for(const a of Object.keys(e))e[a]&&(n=n?n+" "+a:a);return n}(this),u=Object.assign({},r,i);return s&&(u.className=u.className?u.className+" "+s:s),u}get attributes(){const t={},e=this.nativeElement;if(!e)return t;const n=uc(e),a=n.lView[1].data[n.nodeIndex].attrs,r=[];if(a){let e=0;for(;e<a.length;){const n=a[e];if("string"!=typeof n)break;t[n]=a[e+1],r.push(n.toLowerCase()),e+=2}}const i=e.attributes;for(let s=0;s<i.length;s++){const e=i[s];-1===r.indexOf(e.name)&&(t[e.name]=e.value)}return t}get styles(){return Jy(this.nativeElement,!1)}get classes(){return Jy(this.nativeElement,!0)}get childNodes(){const t=this.nativeNode.childNodes,e=[];for(let n=0;n<t.length;n++)e.push(av(t[n]));return e}get children(){const t=this.nativeElement;if(!t)return[];const e=t.children,n=[];for(let a=0;a<e.length;a++)n.push(av(e[a]));return n}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return Qy(this,t,e,!0),e}queryAllNodes(t){const e=[];return Qy(this,t,e,!1),e}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name===t&&n.callback(e)})}}function Jy(t,e){if(t){const n=lc(t),a=n.lView,r=a[1].data[n.nodeIndex];return e?Un(r.classes)?new Ti(r.classes,a,!0).values:_i(r.classes):Un(r.styles)?new Ti(r.styles,a,!1).values:_i(r.styles)}return{}}function Qy(t,e,n,a){const r=uc(t.nativeNode);Xy(r.lView[1].data[r.nodeIndex],r.lView,e,n,a,t.nativeNode)}function Xy(t,e,n,a,r,i){const s=me(t,e);if(3===t.type||4===t.type){if(ev(s,n,a,r,i),Xt(t)){const s=xe(t.index,e);s&&s[1].firstChild&&Xy(s[1].firstChild,s,n,a,r,i)}else t.child&&Xy(t.child,e,n,a,r,i),s&&function t(e,n,a,r){const i=e.childNodes,s=i.length;for(let u=0;u<s;u++){const e=i[u],s=rv(e);s&&((r&&s instanceof Zy&&n(s)&&-1===a.indexOf(s)||!r&&n(s)&&-1===a.indexOf(s))&&a.push(s),t(e,n,a,r))}}(s,n,a,r);const u=e[t.index];Jt(u)&&tv(u,n,a,r,i)}else if(0===t.type){const s=e[t.index];ev(s[7],n,a,r,i),tv(s,n,a,r,i)}else if(1===t.type){const s=da(e),u=s[6].projection[t.projection];if(Array.isArray(u))for(let t of u)ev(t,n,a,r,i);else if(u){const t=s[3];Xy(t[1].data[u.index],t,n,a,r,i)}}else t.child&&Xy(t.child,e,n,a,r,i);if(i!==s){const s=2&t.flags?t.projectionNext:t.next;s&&Xy(s,e,n,a,r,i)}}function tv(t,e,n,a,r){for(let i=9;i<t.length;i++){const s=t[i];Xy(s[1].node,s,e,n,a,r)}}function ev(t,e,n,a,r){if(r!==t){const r=rv(t);if(!r)return;(a&&r instanceof Zy&&e(r)&&-1===n.indexOf(r)||!a&&e(r)&&-1===n.indexOf(r))&&n.push(r)}}const nv=new Map;function av(t){return t instanceof Node?(t.hasOwnProperty("__ng_debug__")||(t.__ng_debug__=t.nodeType==Node.ELEMENT_NODE?new Zy(t):new $y(t)),t.__ng_debug__):null}const rv=function(t){return nv.get(t)||null};function iv(t){nv.set(t.nativeNode,t)}const sv=Uy,uv=Wy,ov=Iy(null,"core",[{provide:Om,useValue:"unknown"},{provide:Ay,deps:[Bu]},{provide:by,deps:[]},{provide:Nm,deps:[]}]);function lv(){return Tf}function dv(){return wf}function cv(t){return t?(Lm&&Ip(t),t):Dg}const fv=[{provide:Ey,useClass:Ey,deps:[oy,Nm,Bu,Da,Yc,ym]},{provide:Sg,deps:[oy],useFactory:hv},{provide:ym,useClass:ym,deps:[[new w,mm]]},{provide:Ym,useClass:Ym,deps:[]},_m,{provide:vf,useFactory:lv,deps:[]},{provide:xf,useFactory:dv,deps:[]},{provide:Cm,useFactory:cv,deps:[[new T(Cm),new w,new S]]}];function hv(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}class gv{constructor(t){}}function pv(t,e,n,a,r,i){t|=1;const{matchedQueries:s,references:u,matchedQueryIds:o}=sh(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s,matchedQueryIds:o,references:u,ngContentIndex:n,childCount:a,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?dh(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:r||Bf},provider:null,text:null,query:null,ngContent:null}}function bv(t,e,n,a,r,i,s=[],u,o,l,d,c){l||(l=Bf);const{matchedQueries:f,references:h,matchedQueryIds:g}=sh(n);let p=null,b=null;i&&([p,b]=mh(i)),u=u||[];const m=new Array(u.length);for(let x=0;x<u.length;x++){const[t,e,n]=u[x],[a,r]=mh(e);let i=void 0,s=void 0;switch(15&t){case 4:s=n;break;case 1:case 8:i=n}m[x]={flags:t,ns:a,name:r,nonMinifiedName:r,securityContext:i,suffix:s}}o=o||[];const y=new Array(o.length);for(let x=0;x<o.length;x++){const[t,e]=o[x];y[x]={type:0,target:t,eventName:e,propName:null}}const v=(s=s||[]).map(([t,e])=>{const[n,a]=mh(t);return[n,a,e]});return c=function(t){if(t&&"$$undefined"===t.id){const e=null!=t.encapsulation&&t.encapsulation!==wt.None||t.styles.length||Object.keys(t.data).length;t.id=e?"c"+Wf++:"$$empty"}return t&&"$$empty"===t.id&&(t=null),t||null}(c),d&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:f,matchedQueryIds:g,references:h,ngContentIndex:a,childCount:r,bindings:m,bindingFlags:yh(m),outputs:y,element:{ns:p,name:b,attrs:v,template:null,componentProvider:null,componentView:d||null,componentRendererType:c,publicProviders:null,allProviders:null,handleEvent:l||Bf},provider:null,text:null,query:null,ngContent:null}}function mv(t,e,n){const a=n.element,r=t.root.selectorOrNode,i=t.renderer;let s;if(t.parent||!r){s=a.name?i.createElement(a.name,a.ns):i.createComment("");const r=oh(t,e,n);r&&i.appendChild(r,s)}else s=i.selectRootElement(r,!!a.componentRendererType&&a.componentRendererType.encapsulation===wt.ShadowDom);if(a.attrs)for(let u=0;u<a.attrs.length;u++){const[t,e,n]=a.attrs[u];i.setAttribute(s,e,n,t)}return s}function yv(t,e,n,a){for(let s=0;s<n.outputs.length;s++){const u=n.outputs[s],o=vv(t,n.nodeIndex,(i=u.eventName,(r=u.target)?`${r}:${i}`:i));let l=u.target,d=t;"component"===u.target&&(l=null,d=e);const c=d.renderer.listen(l||a,u.eventName,o);t.disposables[n.outputIndex+s]=c}var r,i}function vv(t,e,n){return a=>Xf(t,e,n,a)}function xv(t,e,n,a){if(!$f(t,e,n,a))return!1;const r=e.bindings[n],i=Mf(t,e.nodeIndex),s=i.renderElement,u=r.name;switch(15&r.flags){case 1:!function(t,e,n,a,r,i){const s=e.securityContext;let u=s?t.root.sanitizer.sanitize(s,i):i;u=null!=u?u.toString():null;const o=t.renderer;null!=i?o.setAttribute(n,r,u,a):o.removeAttribute(n,r,a)}(t,r,s,r.ns,u,a);break;case 2:!function(t,e,n,a){const r=t.renderer;a?r.addClass(e,n):r.removeClass(e,n)}(t,s,u,a);break;case 4:!function(t,e,n,a,r){let i=t.root.sanitizer.sanitize(yr.STYLE,r);if(null!=i){i=i.toString();const t=e.suffix;null!=t&&(i+=t)}else i=null;const s=t.renderer;null!=i?s.setStyle(n,a,i):s.removeStyle(n,a)}(t,r,s,u,a);break;case 8:!function(t,e,n,a,r){const i=e.securityContext;let s=i?t.root.sanitizer.sanitize(i,r):r;t.renderer.setProperty(n,a,s)}(33554432&e.flags&&32&r.flags?i.componentView:t,r,s,u,a)}return!0}function _v(t,e,n){let a=[];for(let r in n)a.push({propName:r,bindingType:n[r]});return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:-1,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,ngContentIndex:-1,matchedQueries:{},matchedQueryIds:0,references:{},childCount:0,bindings:[],bindingFlags:0,outputs:[],element:null,provider:null,text:null,query:{id:e,filterId:ih(e),bindings:a},ngContent:null}}function Tv(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&rh(t);){let n=t.parentNodeDef;t=t.parent;const a=n.nodeIndex+n.childCount;for(let r=0;r<=a;r++){const a=t.def.nodes[r];67108864&a.flags&&536870912&a.flags&&(a.query.filterId&e)===a.query.filterId&&Ff(t,r).setDirty(),!(1&a.flags&&r+a.childCount<n.nodeIndex)&&67108864&a.childFlags&&536870912&a.childFlags||(r+=a.childCount)}}if(134217728&t.def.nodeFlags)for(let n=0;n<t.def.nodes.length;n++){const e=t.def.nodes[n];134217728&e.flags&&536870912&e.flags&&Ff(t,n).setDirty(),n+=e.childCount}}function wv(t,e){const n=Ff(t,e.nodeIndex);if(!n.dirty)return;let a,r=void 0;if(67108864&e.flags){const n=e.parent.parent;r=Ov(t,n.nodeIndex,n.nodeIndex+n.childCount,e.query,[]),a=qf(t,e.parent.nodeIndex).instance}else 134217728&e.flags&&(r=Ov(t,0,t.def.nodes.length-1,e.query,[]),a=t.component);n.reset(r);const i=e.query.bindings;let s=!1;for(let u=0;u<i.length;u++){const t=i[u];let e;switch(t.bindingType){case 0:e=n.first;break;case 1:e=n,s=!0}a[t.propName]=e}s&&n.notifyOnChanges()}function Ov(t,e,n,a,r){for(let i=e;i<=n;i++){const e=t.def.nodes[i],n=e.matchedQueries[a.id];if(null!=n&&r.push(Sv(t,e,n)),1&e.flags&&e.element.template&&(e.element.template.nodeMatchedQueries&a.filterId)===a.filterId){const n=Mf(t,i);if((e.childMatchedQueries&a.filterId)===a.filterId&&(Ov(t,i+1,i+e.childCount,a,r),i+=e.childCount),16777216&e.flags){const t=n.viewContainer._embeddedViews;for(let e=0;e<t.length;e++){const i=t[e],s=th(i);s&&s===n&&Ov(i,0,i.def.nodes.length-1,a,r)}}const s=n.template._projectedViews;if(s)for(let t=0;t<s.length;t++){const e=s[t];Ov(e,0,e.def.nodes.length-1,a,r)}}(e.childMatchedQueries&a.filterId)!==a.filterId&&(i+=e.childCount)}return r}function Sv(t,e,n){if(null!=n)switch(n){case 1:return Mf(t,e.nodeIndex).renderElement;case 0:return new Kc(Mf(t,e.nodeIndex).renderElement);case 2:return Mf(t,e.nodeIndex).template;case 3:return Mf(t,e.nodeIndex).viewContainer;case 4:return qf(t,e.nodeIndex).instance}}function Iv(t,e){return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:-1,flags:8,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:t,childCount:0,bindings:[],bindingFlags:0,outputs:[],element:null,provider:null,text:null,query:null,ngContent:{index:e}}}function Nv(t,e,n){const a=oh(t,e,n);a&&hh(t,n.ngContent.index,1,a,null,void 0)}function Cv(t,e){return kv(128,t,new Array(e+1))}function Rv(t,e){return kv(32,t,new Array(e))}function Av(t,e){const n=Object.keys(e),a=n.length,r=new Array(a);for(let i=0;i<a;i++){const t=n[i];r[e[t]]=t}return kv(64,t,r)}function kv(t,e,n){const a=new Array(n.length);for(let r=0;r<n.length;r++){const t=n[r];a[r]={flags:8,name:t,ns:null,nonMinifiedName:t,securityContext:null,suffix:null}}return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:e,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:-1,childCount:0,bindings:a,bindingFlags:yh(a),outputs:[],element:null,provider:null,text:null,query:null,ngContent:null}}function Ev(t,e,n){const a=new Array(n.length-1);for(let r=1;r<n.length;r++)a[r-1]={flags:8,name:null,ns:null,nonMinifiedName:null,securityContext:null,suffix:n[r]};return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:2,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:e,childCount:0,bindings:a,bindingFlags:8,outputs:[],element:null,provider:null,text:{prefix:n[0]},query:null,ngContent:null}}function Lv(t,e,n){let a;const r=t.renderer;a=r.createText(n.text.prefix);const i=oh(t,e,n);return i&&r.appendChild(i,a),{renderText:a}}function Dv(t,e){return(null!=t?t.toString():"")+e.suffix}function Pv(t,e,n,a){let r=0,i=0,s=0,u=0,o=0,l=null,d=null,c=!1,f=!1,h=null;for(let g=0;g<e.length;g++){const t=e[g];if(t.nodeIndex=g,t.parent=l,t.bindingIndex=r,t.outputIndex=i,t.renderParent=d,s|=t.flags,o|=t.matchedQueryIds,t.element){const e=t.element;e.publicProviders=l?l.element.publicProviders:Object.create(null),e.allProviders=e.publicProviders,c=!1,f=!1,t.element.template&&(o|=t.element.template.nodeMatchedQueries)}if(qv(l,t,e.length),r+=t.bindings.length,i+=t.outputs.length,!d&&3&t.flags&&(h=t),20224&t.flags){c||(c=!0,l.element.publicProviders=Object.create(l.element.publicProviders),l.element.allProviders=l.element.publicProviders);const e=0!=(32768&t.flags);0==(8192&t.flags)||e?l.element.publicProviders[Yf(t.provider.token)]=t:(f||(f=!0,l.element.allProviders=Object.create(l.element.publicProviders)),l.element.allProviders[Yf(t.provider.token)]=t),e&&(l.element.componentProvider=t)}if(l?(l.childFlags|=t.flags,l.directChildFlags|=t.flags,l.childMatchedQueries|=t.matchedQueryIds,t.element&&t.element.template&&(l.childMatchedQueries|=t.element.template.nodeMatchedQueries)):u|=t.flags,t.childCount>0)l=t,Mv(t)||(d=t);else for(;l&&g===l.nodeIndex+l.childCount;){const t=l.parent;t&&(t.childFlags|=l.childFlags,t.childMatchedQueries|=l.childMatchedQueries),l=t,d=l&&Mv(l)?l.renderParent:l}}return{factory:null,nodeFlags:s,rootNodeFlags:u,nodeMatchedQueries:o,flags:t,nodes:e,updateDirectives:n||Bf,updateRenderer:a||Bf,handleEvent:(t,n,a,r)=>e[n].element.handleEvent(t,a,r),bindingCount:r,outputCount:i,lastRenderRootNode:h}}function Mv(t){return 0!=(1&t.flags)&&null===t.element.name}function qv(t,e,n){const a=e.element&&e.element.template;if(a){if(!a.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(a.lastRenderRootNode&&16777216&a.lastRenderRootNode.flags)throw new Error(`Illegal State: Last root node of a template can't have embedded views, at index ${e.nodeIndex}!`)}if(20224&e.flags&&0==(1&(t?t.flags:0)))throw new Error(`Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index ${e.nodeIndex}!`);if(e.query){if(67108864&e.flags&&(!t||0==(16384&t.flags)))throw new Error(`Illegal State: Content Query nodes need to be children of directives, at index ${e.nodeIndex}!`);if(134217728&e.flags&&t)throw new Error(`Illegal State: View Query nodes have to be top level nodes, at index ${e.nodeIndex}!`)}if(e.childCount){const a=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=a&&e.nodeIndex+e.childCount>a)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function jv(t,e,n,a){const r=Gv(t.root,t.renderer,t,e,n);return Bv(r,t.component,a),zv(r),r}function Fv(t,e,n){const a=Gv(t,t.renderer,null,null,e);return Bv(a,n,n),zv(a),a}function Vv(t,e,n,a){const r=e.element.componentRendererType;let i;return i=r?t.root.rendererFactory.createRenderer(a,r):t.root.renderer,Gv(t.root,i,t,e.element.componentProvider,n)}function Gv(t,e,n,a,r){const i=new Array(r.nodes.length),s=r.outputCount?new Array(r.outputCount):null;return{def:r,parent:n,viewContainerParent:null,parentNodeDef:a,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(r.bindingCount),disposables:s,initIndex:-1}}function Bv(t,e,n){t.component=e,t.context=n}function zv(t){let e;ah(t)&&(e=Mf(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,a=t.nodes;for(let r=0;r<n.nodes.length;r++){const i=n.nodes[r];let s;switch(Gf.setCurrentNode(t,r),201347067&i.flags){case 1:const n=mv(t,e,i);let u=void 0;if(33554432&i.flags){const e=dh(i.element.componentView);u=Gf.createComponentView(t,i,e,n)}yv(t,u,i,n),s={renderElement:n,componentView:u,viewContainer:null,template:i.element.template?Yh(t,i):void 0},16777216&i.flags&&(s.viewContainer=Vh(t,i,s));break;case 2:s=Lv(t,e,i);break;case 512:case 1024:case 2048:case 256:s=a[r],s||4096&i.flags||(s={instance:cg(t,i)});break;case 16:s={instance:fg(t,i)};break;case 16384:s=a[r],s||(s={instance:hg(t,i)}),32768&i.flags&&Bv(Mf(t,i.parent.nodeIndex).componentView,s.instance,s.instance);break;case 32:case 64:case 128:s={value:void 0};break;case 67108864:case 134217728:s=new nb;break;case 8:Nv(t,e,i),s=void 0}a[r]=s}Qv(t,Jv.CreateViewNodes),nx(t,201326592,268435456,0)}function Yv(t){Wv(t),Gf.updateDirectives(t,1),Xv(t,Jv.CheckNoChanges),Gf.updateRenderer(t,1),Qv(t,Jv.CheckNoChanges),t.state&=-97}function Hv(t){1&t.state?(t.state&=-2,t.state|=2):t.state&=-3,Lf(t,0,256),Wv(t),Gf.updateDirectives(t,0),Xv(t,Jv.CheckAndUpdate),nx(t,67108864,536870912,0);let e=Lf(t,256,512);_g(t,2097152|(e?1048576:0)),Gf.updateRenderer(t,0),Qv(t,Jv.CheckAndUpdate),nx(t,134217728,536870912,0),e=Lf(t,512,768),_g(t,8388608|(e?4194304:0)),2&t.def.flags&&(t.state&=-9),t.state&=-97,Lf(t,768,1024)}function Uv(t,e,n,a,r,i,s,u,o,l,d,c,f){return 0===n?function(t,e,n,a,r,i,s,u,o,l,d,c){switch(201347067&e.flags){case 1:return function(t,e,n,a,r,i,s,u,o,l,d,c){const f=e.bindings.length;let h=!1;return f>0&&xv(t,e,0,n)&&(h=!0),f>1&&xv(t,e,1,a)&&(h=!0),f>2&&xv(t,e,2,r)&&(h=!0),f>3&&xv(t,e,3,i)&&(h=!0),f>4&&xv(t,e,4,s)&&(h=!0),f>5&&xv(t,e,5,u)&&(h=!0),f>6&&xv(t,e,6,o)&&(h=!0),f>7&&xv(t,e,7,l)&&(h=!0),f>8&&xv(t,e,8,d)&&(h=!0),f>9&&xv(t,e,9,c)&&(h=!0),h}(t,e,n,a,r,i,s,u,o,l,d,c);case 2:return function(t,e,n,a,r,i,s,u,o,l,d,c){let f=!1;const h=e.bindings,g=h.length;if(g>0&&$f(t,e,0,n)&&(f=!0),g>1&&$f(t,e,1,a)&&(f=!0),g>2&&$f(t,e,2,r)&&(f=!0),g>3&&$f(t,e,3,i)&&(f=!0),g>4&&$f(t,e,4,s)&&(f=!0),g>5&&$f(t,e,5,u)&&(f=!0),g>6&&$f(t,e,6,o)&&(f=!0),g>7&&$f(t,e,7,l)&&(f=!0),g>8&&$f(t,e,8,d)&&(f=!0),g>9&&$f(t,e,9,c)&&(f=!0),f){let f=e.text.prefix;g>0&&(f+=Dv(n,h[0])),g>1&&(f+=Dv(a,h[1])),g>2&&(f+=Dv(r,h[2])),g>3&&(f+=Dv(i,h[3])),g>4&&(f+=Dv(s,h[4])),g>5&&(f+=Dv(u,h[5])),g>6&&(f+=Dv(o,h[6])),g>7&&(f+=Dv(l,h[7])),g>8&&(f+=Dv(d,h[8])),g>9&&(f+=Dv(c,h[9]));const p=Pf(t,e.nodeIndex).renderText;t.renderer.setValue(p,f)}return f}(t,e,n,a,r,i,s,u,o,l,d,c);case 16384:return function(t,e,n,a,r,i,s,u,o,l,d,c){const f=qf(t,e.nodeIndex),h=f.instance;let g=!1,p=void 0;const b=e.bindings.length;return b>0&&Kf(t,e,0,n)&&(g=!0,p=xg(t,f,e,0,n,p)),b>1&&Kf(t,e,1,a)&&(g=!0,p=xg(t,f,e,1,a,p)),b>2&&Kf(t,e,2,r)&&(g=!0,p=xg(t,f,e,2,r,p)),b>3&&Kf(t,e,3,i)&&(g=!0,p=xg(t,f,e,3,i,p)),b>4&&Kf(t,e,4,s)&&(g=!0,p=xg(t,f,e,4,s,p)),b>5&&Kf(t,e,5,u)&&(g=!0,p=xg(t,f,e,5,u,p)),b>6&&Kf(t,e,6,o)&&(g=!0,p=xg(t,f,e,6,o,p)),b>7&&Kf(t,e,7,l)&&(g=!0,p=xg(t,f,e,7,l,p)),b>8&&Kf(t,e,8,d)&&(g=!0,p=xg(t,f,e,8,d,p)),b>9&&Kf(t,e,9,c)&&(g=!0,p=xg(t,f,e,9,c,p)),p&&h.ngOnChanges(p),65536&e.flags&&Df(t,256,e.nodeIndex)&&h.ngOnInit(),262144&e.flags&&h.ngDoCheck(),g}(t,e,n,a,r,i,s,u,o,l,d,c);case 32:case 64:case 128:return function(t,e,n,a,r,i,s,u,o,l,d,c){const f=e.bindings;let h=!1;const g=f.length;if(g>0&&$f(t,e,0,n)&&(h=!0),g>1&&$f(t,e,1,a)&&(h=!0),g>2&&$f(t,e,2,r)&&(h=!0),g>3&&$f(t,e,3,i)&&(h=!0),g>4&&$f(t,e,4,s)&&(h=!0),g>5&&$f(t,e,5,u)&&(h=!0),g>6&&$f(t,e,6,o)&&(h=!0),g>7&&$f(t,e,7,l)&&(h=!0),g>8&&$f(t,e,8,d)&&(h=!0),g>9&&$f(t,e,9,c)&&(h=!0),h){const h=jf(t,e.nodeIndex);let p;switch(201347067&e.flags){case 32:p=new Array(f.length),g>0&&(p[0]=n),g>1&&(p[1]=a),g>2&&(p[2]=r),g>3&&(p[3]=i),g>4&&(p[4]=s),g>5&&(p[5]=u),g>6&&(p[6]=o),g>7&&(p[7]=l),g>8&&(p[8]=d),g>9&&(p[9]=c);break;case 64:p={},g>0&&(p[f[0].name]=n),g>1&&(p[f[1].name]=a),g>2&&(p[f[2].name]=r),g>3&&(p[f[3].name]=i),g>4&&(p[f[4].name]=s),g>5&&(p[f[5].name]=u),g>6&&(p[f[6].name]=o),g>7&&(p[f[7].name]=l),g>8&&(p[f[8].name]=d),g>9&&(p[f[9].name]=c);break;case 128:const t=n;switch(g){case 1:p=t.transform(n);break;case 2:p=t.transform(a);break;case 3:p=t.transform(a,r);break;case 4:p=t.transform(a,r,i);break;case 5:p=t.transform(a,r,i,s);break;case 6:p=t.transform(a,r,i,s,u);break;case 7:p=t.transform(a,r,i,s,u,o);break;case 8:p=t.transform(a,r,i,s,u,o,l);break;case 9:p=t.transform(a,r,i,s,u,o,l,d);break;case 10:p=t.transform(a,r,i,s,u,o,l,d,c)}}h.value=p}return h}(t,e,n,a,r,i,s,u,o,l,d,c);default:throw"unreachable"}}(t,e,a,r,i,s,u,o,l,d,c,f):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let a=!1;for(let r=0;r<n.length;r++)xv(t,e,r,n[r])&&(a=!0);return a}(t,e,n);case 2:return function(t,e,n){const a=e.bindings;let r=!1;for(let i=0;i<n.length;i++)$f(t,e,i,n[i])&&(r=!0);if(r){let r="";for(let t=0;t<n.length;t++)r+=Dv(n[t],a[t]);r=e.text.prefix+r;const i=Pf(t,e.nodeIndex).renderText;t.renderer.setValue(i,r)}return r}(t,e,n);case 16384:return function(t,e,n){const a=qf(t,e.nodeIndex),r=a.instance;let i=!1,s=void 0;for(let u=0;u<n.length;u++)Kf(t,e,u,n[u])&&(i=!0,s=xg(t,a,e,u,n[u],s));return s&&r.ngOnChanges(s),65536&e.flags&&Df(t,256,e.nodeIndex)&&r.ngOnInit(),262144&e.flags&&r.ngDoCheck(),i}(t,e,n);case 32:case 64:case 128:return function(t,e,n){const a=e.bindings;let r=!1;for(let i=0;i<n.length;i++)$f(t,e,i,n[i])&&(r=!0);if(r){const r=jf(t,e.nodeIndex);let i;switch(201347067&e.flags){case 32:i=n;break;case 64:i={};for(let r=0;r<n.length;r++)i[a[r].name]=n[r];break;case 128:const t=n[0],e=n.slice(1);i=t.transform(...e)}r.value=i}return r}(t,e,n);default:throw"unreachable"}}(t,e,a)}function Wv(t){const e=t.def;if(4&e.nodeFlags)for(let n=0;n<e.nodes.length;n++){const a=e.nodes[n];if(4&a.flags){const e=Mf(t,n).template._projectedViews;if(e)for(let n=0;n<e.length;n++){const a=e[n];a.state|=32,Qf(a,t)}}else 0==(4&a.childFlags)&&(n+=a.childCount)}}function Kv(t,e,n,a,r,i,s,u,o,l,d,c,f){return 0===n?function(t,e,n,a,r,i,s,u,o,l,d,c){const f=e.bindings.length;f>0&&Zf(t,e,0,n),f>1&&Zf(t,e,1,a),f>2&&Zf(t,e,2,r),f>3&&Zf(t,e,3,i),f>4&&Zf(t,e,4,s),f>5&&Zf(t,e,5,u),f>6&&Zf(t,e,6,o),f>7&&Zf(t,e,7,l),f>8&&Zf(t,e,8,d),f>9&&Zf(t,e,9,c)}(t,e,a,r,i,s,u,o,l,d,c,f):function(t,e,n){for(let a=0;a<n.length;a++)Zf(t,e,a,n[a])}(t,e,a),!1}function $v(t,e){if(Ff(t,e.nodeIndex).dirty)throw Af(Gf.createDebugContext(t,e.nodeIndex),`Query ${e.query.id} not dirty`,`Query ${e.query.id} dirty`,0!=(1&t.state))}function Zv(t){if(!(128&t.state)){if(Xv(t,Jv.Destroy),Qv(t,Jv.Destroy),_g(t,131072),t.disposables)for(let e=0;e<t.disposables.length;e++)t.disposables[e]();!function(t){if(!(16&t.state))return;const e=th(t);if(e){const n=e.template._projectedViews;n&&(yt(n,n.indexOf(t)),Gf.dirtyParentQueries(t))}}(t),t.renderer.destroyNode&&function(t){const e=t.def.nodes.length;for(let n=0;n<e;n++){const e=t.def.nodes[n];1&e.flags?t.renderer.destroyNode(Mf(t,n).renderElement):2&e.flags?t.renderer.destroyNode(Pf(t,n).renderText):(67108864&e.flags||134217728&e.flags)&&Ff(t,n).destroy()}}(t),ah(t)&&t.renderer.destroy(),t.state|=128}}const Jv=function(){var t={CreateViewNodes:0,CheckNoChanges:1,CheckNoChangesProjectedViews:2,CheckAndUpdate:3,CheckAndUpdateProjectedViews:4,Destroy:5};return t[t.CreateViewNodes]="CreateViewNodes",t[t.CheckNoChanges]="CheckNoChanges",t[t.CheckNoChangesProjectedViews]="CheckNoChangesProjectedViews",t[t.CheckAndUpdate]="CheckAndUpdate",t[t.CheckAndUpdateProjectedViews]="CheckAndUpdateProjectedViews",t[t.Destroy]="Destroy",t}();function Qv(t,e){const n=t.def;if(33554432&n.nodeFlags)for(let a=0;a<n.nodes.length;a++){const r=n.nodes[a];33554432&r.flags?tx(Mf(t,a).componentView,e):0==(33554432&r.childFlags)&&(a+=r.childCount)}}function Xv(t,e){const n=t.def;if(16777216&n.nodeFlags)for(let a=0;a<n.nodes.length;a++){const r=n.nodes[a];if(16777216&r.flags){const n=Mf(t,a).viewContainer._embeddedViews;for(let t=0;t<n.length;t++)tx(n[t],e)}else 0==(16777216&r.childFlags)&&(a+=r.childCount)}}function tx(t,e){const n=t.state;switch(e){case Jv.CheckNoChanges:0==(128&n)&&(12==(12&n)?Yv(t):64&n&&ex(t,Jv.CheckNoChangesProjectedViews));break;case Jv.CheckNoChangesProjectedViews:0==(128&n)&&(32&n?Yv(t):64&n&&ex(t,e));break;case Jv.CheckAndUpdate:0==(128&n)&&(12==(12&n)?Hv(t):64&n&&ex(t,Jv.CheckAndUpdateProjectedViews));break;case Jv.CheckAndUpdateProjectedViews:0==(128&n)&&(32&n?Hv(t):64&n&&ex(t,e));break;case Jv.Destroy:Zv(t);break;case Jv.CreateViewNodes:zv(t)}}function ex(t,e){Xv(t,e),Qv(t,e)}function nx(t,e,n,a){if(!(t.def.nodeFlags&e&&t.def.nodeFlags&n))return;const r=t.def.nodes.length;for(let i=0;i<r;i++){const r=t.def.nodes[i];if(r.flags&e&&r.flags&n)switch(Gf.setCurrentNode(t,r.nodeIndex),a){case 0:wv(t,r);break;case 1:$v(t,r)}r.childFlags&e&&r.childFlags&n||(i+=r.childCount)}}let ax=!1;function rx(){if(ax)return;ax=!0;const t=Wa()?{setCurrentNode:Nx,createRootView:sx,createEmbeddedView:ox,createComponentView:lx,createNgModuleRef:dx,overrideProvider:gx,overrideComponentView:px,clearOverrides:bx,checkAndUpdateView:xx,checkNoChangesView:_x,destroyView:Tx,createDebugContext:(t,e)=>new Px(t,e),handleEvent:Cx,updateDirectives:Rx,updateRenderer:Ax}:{setCurrentNode:()=>{},createRootView:ix,createEmbeddedView:jv,createComponentView:Vv,createNgModuleRef:Jh,overrideProvider:Bf,overrideComponentView:Bf,clearOverrides:Bf,checkAndUpdateView:Hv,checkNoChangesView:Yv,destroyView:Zv,createDebugContext:(t,e)=>new Px(t,e),handleEvent:(t,e,n,a)=>t.def.handleEvent(t,e,n,a),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?yx:vx,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?yx:vx,t)};Gf.setCurrentNode=t.setCurrentNode,Gf.createRootView=t.createRootView,Gf.createEmbeddedView=t.createEmbeddedView,Gf.createComponentView=t.createComponentView,Gf.createNgModuleRef=t.createNgModuleRef,Gf.overrideProvider=t.overrideProvider,Gf.overrideComponentView=t.overrideComponentView,Gf.clearOverrides=t.clearOverrides,Gf.checkAndUpdateView=t.checkAndUpdateView,Gf.checkNoChangesView=t.checkNoChangesView,Gf.destroyView=t.destroyView,Gf.resolveDep=yg,Gf.createDebugContext=t.createDebugContext,Gf.handleEvent=t.handleEvent,Gf.updateDirectives=t.updateDirectives,Gf.updateRenderer=t.updateRenderer,Gf.dirtyParentQueries=Tv}function ix(t,e,n,a,r,i){const s=r.injector.get(ef);return Fv(ux(t,r,s,e,n),a,i)}function sx(t,e,n,a,r,i){const s=r.injector.get(ef),u=ux(t,r,new Fx(s),e,n),o=mx(a);return qx(wx.create,Fv,null,[u,o,i])}function ux(t,e,n,a,r){const i=e.injector.get(vr),s=e.injector.get(Da),u=n.createRenderer(null,null);return{ngModule:e,injector:t,projectableNodes:a,selectorOrNode:r,sanitizer:i,rendererFactory:n,renderer:u,errorHandler:s}}function ox(t,e,n,a){const r=mx(n);return qx(wx.create,jv,null,[t,e,r,a])}function lx(t,e,n,a){return n=hx.get(e.element.componentProvider.provider.token)||mx(n),qx(wx.create,Vv,null,[t,e,n,a])}function dx(t,e,n,a){return Jh(t,e,n,function(t){const{hasOverrides:e,hasDeprecatedOverrides:n}=function(t){let e=!1,n=!1;return 0===cx.size||(t.providers.forEach(t=>{const a=cx.get(t.token);3840&t.flags&&a&&(e=!0,n=n||a.deprecatedBehavior)}),t.modules.forEach(t=>{fx.forEach((a,r)=>{D(r).providedIn===t&&(e=!0,n=n||a.deprecatedBehavior)})})),{hasOverrides:e,hasDeprecatedOverrides:n}}(t);return e?(function(t){for(let e=0;e<t.providers.length;e++){const a=t.providers[e];n&&(a.flags|=4096);const r=cx.get(a.token);r&&(a.flags=-3841&a.flags|r.flags,a.deps=uh(r.deps),a.value=r.value)}if(fx.size>0){let e=new Set(t.modules);fx.forEach((a,r)=>{if(e.has(D(r).providedIn)){let e={token:r,flags:a.flags|(n?4096:0),deps:uh(a.deps),value:a.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yf(r)]=e}})}}(t=t.factory(()=>Bf)),t):t}(a))}const cx=new Map,fx=new Map,hx=new Map;function gx(t){let e;cx.set(t.token,t),"function"==typeof t.token&&(e=D(t.token))&&"function"==typeof e.providedIn&&fx.set(t.token,t)}function px(t,e){const n=dh(qh(e)),a=dh(n.nodes[0].element.componentView);hx.set(t,a)}function bx(){cx.clear(),fx.clear(),hx.clear()}function mx(t){if(0===cx.size)return t;const e=function(t){const e=[];let n=null;for(let a=0;a<t.nodes.length;a++){const r=t.nodes[a];1&r.flags&&(n=r),n&&3840&r.flags&&cx.has(r.provider.token)&&(e.push(n.nodeIndex),n=null)}return e}(t);if(0===e.length)return t;t=t.factory(()=>Bf);for(let a=0;a<e.length;a++)n(t,e[a]);return t;function n(t,e){for(let n=e+1;n<t.nodes.length;n++){const e=t.nodes[n];if(1&e.flags)return;if(3840&e.flags){const t=e.provider,n=cx.get(t.token);n&&(e.flags=-3841&e.flags|n.flags,t.deps=uh(n.deps),t.value=n.value)}}}}function yx(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=t.def.nodes[e];return Uv(t,h,n,a,r,i,s,u,o,l,d,c,f),224&h.flags?jf(t,e).value:void 0}function vx(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=t.def.nodes[e];return Kv(t,h,n,a,r,i,s,u,o,l,d,c,f),224&h.flags?jf(t,e).value:void 0}function xx(t){return qx(wx.detectChanges,Hv,null,[t])}function _x(t){return qx(wx.checkNoChanges,Yv,null,[t])}function Tx(t){return qx(wx.destroy,Zv,null,[t])}const wx=function(){var t={create:0,detectChanges:1,checkNoChanges:2,destroy:3,handleEvent:4};return t[t.create]="create",t[t.detectChanges]="detectChanges",t[t.checkNoChanges]="checkNoChanges",t[t.destroy]="destroy",t[t.handleEvent]="handleEvent",t}();let Ox,Sx,Ix;function Nx(t,e){Sx=t,Ix=e}function Cx(t,e,n,a){return Nx(t,e),qx(wx.handleEvent,t.def.handleEvent,null,[t,e,n,a])}function Rx(t,e){if(128&t.state)throw Ef(wx[Ox]);return Nx(t,Lx(t,0)),t.def.updateDirectives((function(t,n,a,...r){const i=t.def.nodes[n];return 0===e?kx(t,i,a,r):Ex(t,i,a,r),16384&i.flags&&Nx(t,Lx(t,n)),224&i.flags?jf(t,i.nodeIndex).value:void 0}),t)}function Ax(t,e){if(128&t.state)throw Ef(wx[Ox]);return Nx(t,Dx(t,0)),t.def.updateRenderer((function(t,n,a,...r){const i=t.def.nodes[n];return 0===e?kx(t,i,a,r):Ex(t,i,a,r),3&i.flags&&Nx(t,Dx(t,n)),224&i.flags?jf(t,i.nodeIndex).value:void 0}),t)}function kx(t,e,n,a){if(Uv(t,e,n,...a)){const i=1===n?a[0]:a;if(16384&e.flags){const n={};for(let t=0;t<e.bindings.length;t++){const a=e.bindings[t],s=i[t];8&a.flags&&(n[(r=a.nonMinifiedName,"ng-reflect-"+r.replace(/[$@]/g,"_").replace(Er,(...t)=>"-"+t[1].toLowerCase()))]=Lr(s))}const a=e.parent,s=Mf(t,a.nodeIndex).renderElement;if(a.element.name)for(let e in n){const a=n[e];null!=a?t.renderer.setAttribute(s,e,a):t.renderer.removeAttribute(s,e)}else t.renderer.setValue(s,"bindings="+JSON.stringify(n,null,2))}}var r}function Ex(t,e,n,a){Kv(t,e,n,...a)}function Lx(t,e){for(let n=e;n<t.def.nodes.length;n++){const e=t.def.nodes[n];if(16384&e.flags&&e.bindings&&e.bindings.length)return n}return null}function Dx(t,e){for(let n=e;n<t.def.nodes.length;n++){const e=t.def.nodes[n];if(3&e.flags&&e.bindings&&e.bindings.length)return n}return null}class Px{constructor(t,e){this.view=t,this.nodeIndex=e,null==e&&(this.nodeIndex=e=0),this.nodeDef=t.def.nodes[e];let n=this.nodeDef,a=t;for(;n&&0==(1&n.flags);)n=n.parent;if(!n)for(;!n&&a;)n=eh(a),a=a.parent;this.elDef=n,this.elView=a}get elOrCompView(){return Mf(this.elView,this.elDef.nodeIndex).componentView||this.view}get injector(){return Uh(this.elView,this.elDef)}get component(){return this.elOrCompView.component}get context(){return this.elOrCompView.context}get providerTokens(){const t=[];if(this.elDef)for(let e=this.elDef.nodeIndex+1;e<=this.elDef.nodeIndex+this.elDef.childCount;e++){const n=this.elView.def.nodes[e];20224&n.flags&&t.push(n.provider.token),e+=n.childCount}return t}get references(){const t={};if(this.elDef){Mx(this.elView,this.elDef,t);for(let e=this.elDef.nodeIndex+1;e<=this.elDef.nodeIndex+this.elDef.childCount;e++){const n=this.elView.def.nodes[e];20224&n.flags&&Mx(this.elView,n,t),e+=n.childCount}}return t}get componentRenderElement(){const t=function(t){for(;t&&!ah(t);)t=t.parent;return t.parent?Mf(t.parent,eh(t).nodeIndex):null}(this.elOrCompView);return t?t.renderElement:void 0}get renderNode(){return 2&this.nodeDef.flags?nh(this.view,this.nodeDef):nh(this.elView,this.elDef)}logError(t,...e){let n,a;2&this.nodeDef.flags?(n=this.view.def,a=this.nodeDef.nodeIndex):(n=this.elView.def,a=this.elDef.nodeIndex);const r=function(t,e){let n=-1;for(let a=0;a<=e;a++)3&t.nodes[a].flags&&n++;return n}(n,a);let i=-1;n.factory(()=>(i++,i===r?t.error.bind(t,...e):Bf)),i<r&&(t.error("Illegal state: the ViewDefinitionFactory did not call the logger!"),t.error(...e))}}function Mx(t,e,n){for(let a in e.references)n[a]=Sv(t,e,e.references[a])}function qx(t,e,n,a){const r=Ox,i=Sx,s=Ix;try{Ox=t;const u=e.apply(n,a);return Sx=i,Ix=s,Ox=r,u}catch(u){if(ka(u)||!Sx)throw u;throw function(t,e){return t instanceof Error||(t=new Error(t.toString())),kf(t,e),t}(u,jx())}}function jx(){return Sx?new Px(Sx,Ix):null}class Fx{constructor(t){this.delegate=t}createRenderer(t,e){return new Vx(this.delegate.createRenderer(t,e))}begin(){this.delegate.begin&&this.delegate.begin()}end(){this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.delegate.whenRenderingDone?this.delegate.whenRenderingDone():Promise.resolve(null)}}class Vx{constructor(t){this.delegate=t,this.debugContextFactory=jx,this.data=this.delegate.data}createDebugContext(t){return this.debugContextFactory(t)}destroyNode(t){const e=rv(t);!function(t){nv.delete(t.nativeNode)}(e),e instanceof Uy&&(e.listeners.length=0),this.delegate.destroyNode&&this.delegate.destroyNode(t)}destroy(){this.delegate.destroy()}createElement(t,e){const n=this.delegate.createElement(t,e),a=this.createDebugContext(n);if(a){const e=new Wy(n,null,a);e.name=t,iv(e)}return n}createComment(t){const e=this.delegate.createComment(t),n=this.createDebugContext(e);return n&&iv(new Uy(e,null,n)),e}createText(t){const e=this.delegate.createText(t),n=this.createDebugContext(e);return n&&iv(new Uy(e,null,n)),e}appendChild(t,e){const n=rv(t),a=rv(e);n&&a&&n instanceof Wy&&n.addChild(a),this.delegate.appendChild(t,e)}insertBefore(t,e,n){const a=rv(t),r=rv(e),i=rv(n);a&&r&&a instanceof Wy&&a.insertBefore(i,r),this.delegate.insertBefore(t,e,n)}removeChild(t,e){const n=rv(t),a=rv(e);n&&a&&n instanceof Wy&&n.removeChild(a),this.delegate.removeChild(t,e)}selectRootElement(t,e){const n=this.delegate.selectRootElement(t,e),a=jx();return a&&iv(new Wy(n,null,a)),n}setAttribute(t,e,n,a){const r=rv(t);r&&r instanceof Wy&&(r.attributes[a?a+":"+e:e]=n),this.delegate.setAttribute(t,e,n,a)}removeAttribute(t,e,n){const a=rv(t);a&&a instanceof Wy&&(a.attributes[n?n+":"+e:e]=null),this.delegate.removeAttribute(t,e,n)}addClass(t,e){const n=rv(t);n&&n instanceof Wy&&(n.classes[e]=!0),this.delegate.addClass(t,e)}removeClass(t,e){const n=rv(t);n&&n instanceof Wy&&(n.classes[e]=!1),this.delegate.removeClass(t,e)}setStyle(t,e,n,a){const r=rv(t);r&&r instanceof Wy&&(r.styles[e]=n),this.delegate.setStyle(t,e,n,a)}removeStyle(t,e,n){const a=rv(t);a&&a instanceof Wy&&(a.styles[e]=null),this.delegate.removeStyle(t,e,n)}setProperty(t,e,n){const a=rv(t);a&&a instanceof Wy&&(a.properties[e]=n),this.delegate.setProperty(t,e,n)}listen(t,e,n){if("string"!=typeof t){const a=rv(t);a&&a.listeners.push(new Hy(e,n))}return this.delegate.listen(t,e,n)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setValue(t,e){return this.delegate.setValue(t,e)}}function Gx(t){return rx(),Gf.overrideProvider(t)}function Bx(t,e){return rx(),Gf.overrideComponentView(t,e)}function zx(){return rx(),Gf.clearOverrides()}function Yx(t,e,n){return new Hx(t,e,n)}class Hx extends ht{constructor(t,e,n){super(),this.moduleType=t,this._bootstrapComponents=e,this._ngModuleDefFactory=n}create(t){rx();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),a={};for(const r in t.providersByKey)a[r]=t.providersByKey[r];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:a}}(dh(this._ngModuleDefFactory));return Gf.createNgModuleRef(this.moduleType,t||Bu.NULL,this._bootstrapComponents,e)}}},"8YOa":function(t,e,n){var a=n("0BK2"),r=n("hh1v"),i=n("UTVS"),s=n("m/L8").f,u=n("kOOl"),o=n("uy83"),l=u("meta"),d=0,c=Object.isExtensible||function(){return!0},f=function(t){s(t,l,{value:{objectID:"O"+ ++d,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!r(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,l)){if(!c(t))return"F";if(!e)return"E";f(t)}return t[l].objectID},getWeakData:function(t,e){if(!i(t,l)){if(!c(t))return!0;if(!e)return!1;f(t)}return t[l].weakData},onFreeze:function(t){return o&&h.REQUIRED&&c(t)&&!i(t,l)&&f(t),t}};a[l]=!0},"8a/S":function(t,e){t.exports=function(t){return function(e){return null==e?void 0:e[t]}}},"8j5A":function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="it-IT">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Attiva/Disattiva barra di navigazione</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Dashboard</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Cluster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitor</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Servizi</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Configurazione</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>Mappa CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Moduli Manager</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Log</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Blocco</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Immagini</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Esecuzione della copia speculare</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI </target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>File system</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Utenti</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Compartimenti</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Selezionare una lingua</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Caricamento pannello dati in corso...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Selezione ora di Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Impostazioni di ripristino</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Indietro</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Non è stato possibile caricare i dati.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>selezionato</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>trovato</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>totale</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nome</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Descrizione</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Descrizione lunga</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Default</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Default del daemon</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Valori</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Salva</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Visualizzatore mappa CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Caricamento in corso...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nome host</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Questo campo è obbligatorio.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Sì.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Annulla</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Chiudi</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Elenco degli host</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Prestazioni complessive</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Nessuna voce trovata</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Log dei cluster</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Log delle revisioni</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Caricamento della configurazione in corso...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Impossibile caricare la configurazione.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Modifica modulo Manager</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Il valore immesso non è un UUID valido, ad es.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Il valore immesso deve essere un indirizzo IP valido.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Il valore immesso deve essere un numero.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Il valore immesso deve essere un numero o un decimale.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Aggiorna</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Stato</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID cluster</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>mappa mon modificata</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>epoca mappa mon</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>con richiesta</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>mon richiesto</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>Nel quorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Non nel quorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Aggiungi</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Funzioni</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Flag OSD in tutto il cluster</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Invia</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Avanzate...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Priorità di recupero OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorità</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Personalizza valori di priorità</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Questo campo è obbligatorio.</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Il valore deve essere compreso tra 0 e 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Ripesa</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Deep } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {deep } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Elenco degli OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Valore</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Modifica</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Elimina</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Stato</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistiche</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Client</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Può accedere qualsiasi client</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Indirizzi</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Campo obbligatorio</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Deve contenere uno o più valori delimitati da virgole</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Ad esempio:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Tipo di accesso</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Esegui squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Aggiungi client</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Nessun cluster disponibile --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Selezionare il cluster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Aggiungi daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Backend di storage</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Nessun pool di dati disponibile --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Selezionare il backend di storage --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Utente Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Nessun utente disponibile --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Selezionare l\'utente Object Gateway --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID utente CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Nessun client disponibile --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Selezionare il client Cephx --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nome CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Etichetta di sicurezza</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Abilita etichetta di sicurezza</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Percorso CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Il percorso deve iniziare con una barra \'/\' e può essere seguito da una parola</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Viene creata la nuova directory</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Percorso</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Il percorso può essere solo una singola barra \'/\' o parola</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Viene creato il nuovo compartimento</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protocollo NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Tag NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>I client non possono montare le sottodirectory (ad es. se Tag = foo, il client non può montare foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Utilizzando diverse opzioni Tag, è possibile esportare più volte lo stesso percorso.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Utilizzando diverse opzioni Pseudo, è possibile esportare più volte lo stesso percorso.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Nessun tipo di accesso disponibile --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Selezionare il tipo di accesso --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Nessuno squash disponibile --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>--Selezionare il tipo di squash dell\'ID utente da eseguire --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protocollo di trasporto</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Benvenuto in Ceph.</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nome utente necessario</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Password richiesta</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Login</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Spiacenti, l\'utente non esiste in Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Non consentito</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Spiacenti, non è consentito visualizzare ciò che si stava cercando.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Configurazione RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Rimuovere il valore della configurazione locale. Al suo posto verrà ereditato e utilizzato il valore della configurazione superiore.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Il valore minimo è 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Elenco dei pool</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Il nome può contenere solo caratteri alfanumerici, trattini e caratteri di sottolineatura.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Il nome del profilo del codice di cancellazione selezionato è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plugin</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Porzioni di dati (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Deve essere uguale o maggiore di 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Porzioni di codice (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Deve essere uguale o maggiore di 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Stima durata (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Località (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Dominio di errore Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Località Crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Nessuno</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Tecnica</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Dimensione del pacchetto</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Radice Crush</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Classe dispositivo Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>qualsiasi</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Directory</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nome...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Il nome del pool Ceph scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Tipo di pool</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Selezionare un tipo di pool --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Gruppi di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>È necessario almeno un gruppo di posizionamento.</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Il cluster non può gestire questo numero eccessivo di gruppi di posizionamento. Ricalcolare il numero di gruppi di posizionamento necessari.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Guida per il calcolo</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Dimensioni replicate</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flag</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>Sovrascritture EC</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Applicazioni</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Profilo del codice di cancellazione</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Nessun profilo del codice di cancellazione disponibile --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Selezionare un profilo del codice di cancellazione --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Set di regole Crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Selezionare una regola Crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Regola Crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Passaggi Crush</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Compressione</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Modalità</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritmo</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Nessun algoritmo di compressione della cancellazione disponibile --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Dimensioni minime del blob</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>ad es. 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Il valore deve essere maggiore di 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Dimensioni massime del blob</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>ad es. 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Il valore deve essere maggiore delle dimensioni minime del blob</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Rapporto</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Rapporto di compressione</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Il valore deve essere compreso tra 0,0 e 1,0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>ad es. 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Dettagli</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Dettagli sulle prestazioni</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Dettagli livelli cache</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Sposta un\'immagine nel cestino</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>La protezione scade alle</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NON PROTETTO</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Formato data errato. Utilizzare "AAAA-MM-GG HH:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>La protezione è già scaduta. Selezionare una data futura o lasciarla vuota.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Sposta immagine</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Panoramica</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Destinazioni</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Autenticazione rilevazione</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Utente</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>I nomi utente devono avere una lunghezza compresa tra 8 e 64 caratteri e\n              possono contenere solo lettere, \'.\', \'@\', \'-\', \'_\' o \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Password</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Utente reciproco</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Password reciproca</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informazioni disponibili:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>Destinazioni iSCSI non disponibili</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Pool di dati</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Creato</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Dimensioni</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Oggetti</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Dimensioni oggetto</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Soggetto al provisioning</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/D</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Totale soggetto al provisioning</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unità di striping</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Conteggio di striping</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Superiore</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Prefisso nome blocco</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Ordine</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Snapshot</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Immagine</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Questa impostazione sostituisce il valore globale</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Globale</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Questo è il valore globale. Nessun valore di opzione è stato impostato per questa immagine.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' e \'@\' non sono consentiti.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Nessun pool rbd disponibile --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Selezionare un pool --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Utilizza un pool di dati dedicato</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Pool di dati</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Pool dedicato che archivia i dati oggetto dell\'RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>È necessario aumentare le dimensioni.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Avanzate</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Striping</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unità di striping</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Selezionare l\'unità di striping --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Questo campo è obbligatorio perché è specificato il numero di striping.</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>L\'unità di striping è maggiore delle dimensioni dell\'oggetto.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Numero di striping</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Questo campo è obbligatorio perché è specificata l\'unità di striping.</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Il numero di striping deve essere maggiore di 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Si sta per eseguire il rollback</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Elimina definitivamente contenuto del cestino</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Tutto</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pool:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nome pool...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Ripristina immagine</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Per ripristinare,</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>digitare il nuovo nome dell\'immagine e fare clic su</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nuovo nome</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Scaduto alle</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Protetto fino alle</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologia iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Di solito non è necessario modificare questi parametri rispetto ai valori di default.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Impostazioni</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Conferma</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Impostazioni avanzate</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN di destinazione</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN contiene un modello errato.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Ad esempio: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Ulteriori informazioni</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Questa destinazione contiene impostazioni avanzate modificate.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portali</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Aggiungi portale</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Questa immagine contiene impostazioni modificate.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Aggiungi immagine</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Autenticazione ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Iniziatori</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Iniziatore</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN client</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>L\'IQN dell\'iniziatore deve essere univoco.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>I nomi utente devono avere una lunghezza compresa tra 8 e 64 caratteri e\n                        possono contenere solo lettere, \'.\', \'@\', \'-\', \'_\' o \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>L\'iniziatore appartiene a un gruppo. Le immagini verranno configurate nel gruppo.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Nessun elemento aggiunto.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Aggiungi iniziatore</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Gruppi</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Gruppo</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Aggiungi gruppo</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Cestino</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Problemi</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Sincronizzazione in corso</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Pronto</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Modifica modalità speculare per il pool</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>È necessario rimuovere i cluster peer prima di disabilitare la copia speculare.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nome cluster</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Il nome del cluster non è valido.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>ID CephX</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>ID CephX...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>L\'ID CephX non è valido.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Indirizzi dei monitor</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Indirizzi con valori delimitati da virgole...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>L\'indirizzo del monitor non è valido.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Chiave CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Chiave con codifica Base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>La chiave CephX deve essere con codifica Base64.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Contatori delle prestazioni non disponibili</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Elenco dei daemon</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Contatori delle prestazioni</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Caricamento dati compartimento in corso...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Il valore non è valido.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Il nome scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Proprietario</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Selezionare un utente --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Abilitato</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Tipo di indice</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Regola di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Contrassegno</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Contrassegno massimo</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Versione</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Versione master</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Ora di modifica</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Gruppo di zone</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Quota compartimenti</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Dimensioni massime</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Illimitato</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Numero massimo di oggetti</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nome utente</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Selezionare un nome utente --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Generazione automatica chiave</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Chiave di accesso</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Chiave segreta</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nome completo</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Indirizzo e-mail</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Sospeso</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Sistema</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Numero massimo di compartimenti</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Sottoutenti</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Capacità</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Quota utenti</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Mostra</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Chiavi</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Tipo</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Selezionare un tipo --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Autorizzazione</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Selezionare un\'autorizzazione --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Sottoutente</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>L\'ID del sottoutente scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>lettura, scrittura</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>pieno</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Chiave Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Generazione automatica segreto</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Caricamento dati utente in corso...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Impossibile caricare i dati utente.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>L\'ID utente scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Non è un indirizzo e-mail valido.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>L\'indirizzo e-mail scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Numero max. di compartimenti</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Disabilitato</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Personalizzato</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Chiave S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Non esistono sottoutenti.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Non esistono chiavi.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Non esistono capacità.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Dimensioni illimitate</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Dimensione max.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Oggetti illimitati</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Numero max. di oggetti</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Il valore immesso deve essere &gt;= a 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Descrizione...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Autorizzazioni</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Ruoli</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Conferma password</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>La password di conferma non corrisponde alla password.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>E-mail</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>E-mail non valida.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Si stanno per rimuovere le autorizzazioni di "lettura/aggiornamento utente" dal proprio utente.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Se si continua, non è più possibile aggiungere o rimuovere ruoli da qualsiasi utente.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Continuare?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Guida</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Documentazione</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Informazioni su</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Impostazioni del dashboard</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Gestione utenti</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Utente connesso</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Disconnetti</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Attributi (mappa OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadati non disponibili</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadati</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Contatore delle prestazioni</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Scritture</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Letture</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Istogramma</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Valori attuali</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Max</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Origine</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Livello</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Può essere aggiornato al runtime (modificabile)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tag</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Valori di enumerazione</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Vedere anche</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Stato del cluster</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Manager Daemon</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Server di metadati</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI Gateway</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS client</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Velocità effettiva client</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Lettura/scrittura client</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Velocità effettiva di recupero</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Pulitura</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Prestazioni</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Capacità di base</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Gruppi di posizionamento per OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Stato gruppo di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Capacità</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Classificazioni</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Attuale</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Autenticazione rilevazione aggiornata</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Non sono disponibili pool.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Non sono disponibili immagini.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Non sono disponibili immagini. Assicurarsi di aggiungere un\'immagine alla destinazione.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Non sono disponibili iniziatori. Assicurarsi di aggiungere un iniziatore alla destinazione.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Destinazione</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Stato</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Byte letti</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Byte scritti</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Operazioni di lettura</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Operazioni di scrittura</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O da</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Istanza</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problema</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Avanzamento</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Modalità di modifica</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Aggiungi peer</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Modifica peer</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Elimina peer</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Sequenza iniziale</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># Locale</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># Remoto</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>peer copia speculare</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Chiave</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Appiattimento profondo</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Su strati</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Blocco esclusivo</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mappa oggetti (richiede il blocco escluso)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Journaling (richiede il blocco esclusivo)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NON PROTETTO</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Rollback snapshot RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Esegui rollback</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Snapshot RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Eliminato alle</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>tipo</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>stato</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>versione</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>root</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemon in standby</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Classificazione</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Task</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentry</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inode</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Utilizzo</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Aggiornato</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>È possibile aggiornare il valore al runtime.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>I daemon/client non estraggono questo valore dal\n      database della configurazione di monitoraggio. Non è consentito impostare questa opzione tramite \'ceph config\n      set ...\'. È necessario configurare questa opzione tramite ceph.conf o dalla\n      riga di comando.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>L\'opzione diventa attiva solo all\'avvio del daemon.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>L\'opzione interessa solo la creazione del cluster.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>L\'opzione interessa solo la creazione del daemon.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Servizio</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Valore attuale</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Modificabile</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Abilita</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Disabilita</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Riconnessione in corso. Attendere.</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Indirizzo pubblico</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Sessioni aperte</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Nessuno in entrata</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>Gli OSD che sono stati contrassegnati come disattivi in precedenza non verranno contrassegnati nuovamente come attivi all\'avvio</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Nessuno in uscita</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>Gli OSD non verranno disattivati automaticamente dopo l\'intervallo configurato</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Nessuno attivo</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>Non è consentito l\'avvio degli OSD</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Nessuno disattivo</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>I rapporti di errore degli OSD vengono ignorati in modo che i monitor non disattivino gli OSD</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Sospendi</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Sospende le operazioni di lettura e scrittura</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Nessuna pulitura</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Pulitura disabilitata</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Nessun pulitura approfondita</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Pulitura approfondita disabilitata</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Nessuna operazione di recupero</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Recupero dei gruppi di posizionamento sospeso</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Nessun recupero</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Recupero dei gruppi di posizionamento sospeso</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Ordinamento bitwise</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Usa ordinamento bitwise</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Snapdir eliminate definitivamente</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>Gli OSD contengono set di snap convertiti</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Eliminazioni recuperi</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Eliminazioni eseguite durante il recupero invece del peering</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Limite rigido log gruppo di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Inserisce un limite rigido alla lunghezza del log del gruppo di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Flag OSD aggiornati</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>esterno</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>interno</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>in basso</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Contrassegna</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD perso</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>contrassegnato come perso</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Elimina definitivamente</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>eliminato definitivamente</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>elimina definitivamente</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>eliminato definitivamente</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>elimina</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>Gruppi di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Byte letti</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Byte scritti</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Operazioni di lettura</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Operazioni di scrittura</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Numero max di recuperi informazioni</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Numero max di recuperi attivi</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Avvio singolo numero max di recuperi</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Sospensione recupero</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Lavoro</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Gravità</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Avviato</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Utilizzato</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Dispon.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Pulisci</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>In funzione</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Avviso</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Sconosciuto</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>su</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>nessun file system</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>attivo</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>standby</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/d</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon attivo</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target> quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Il servizio NFS Ganesha non è configurato.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Trasporto</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Utente CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>File system CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(ereditato dalla configurazione globale)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>importato dalla configurazione globale</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Selezionare il tipo di squash dell\'ID utente che viene eseguito --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Non vi sono daemon disponibili.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Modalità cache</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Numero minimo di giorni per la rimozione</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Numero minimo di giorni per la cancellazione</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Numero max di byte di destinazione</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Numero max di oggetti di destinazione</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Non sono state aggiunte applicazioni.</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Raggiunto il limite di applicazioni</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Un pool può contenere solo fino a quattro definizioni delle applicazioni.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Caratteri consentiti \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>La lunghezza massima è di 128 caratteri</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtra o aggiungi applicazioni</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Aggiungi applicazione</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>profilo del codice di cancellazione</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Dimensioni della replica</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Ultima modifica</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Profilo con codice di cancellazione</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Set di regole Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>compartimento</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>compartimenti</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>utente</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>utenti</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Ambito</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Lettura</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Crea</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Ruolo di sistema</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Aggiorna utente</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Continua</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Si è stati automaticamente disconnessi perché i ruoli sono stati modificati.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Ogni oggetto è suddiviso in porzioni di dati, ciascuna delle quali è memorizzata su un diverso OSD.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Calcola le porzioni di codice relative a ciascun oggetto e le memorizza su diversi OSD.\n      Il numero di porzioni di codice è anche il numero degli OSD che è possibile disattivare senza perdere i dati.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Il plugin jerasure è il plugin più generico e flessibile,\n          ed è anche il plugin di default dei pool con codice di cancellazione di Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>La tecnica più flessibile è reed_sol_van: è sufficiente impostare k\n          ed m. La tecnica cauchy_good può essere più rapida ma occorre selezionare attentamente la dimensione del\n          pacchetto. reed_sol_r6_op, liberation, blaum_roth, liber8tion sono tutti equivalenti a RAID6,\n          nel senso che è possibile configurarli solo con m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>La codifica viene eseguita su pacchetti di dimensioni in byte, uno alla volta.\n          È difficile scegliere la dimensione del pacchetto corretta.\n          La documentazione su jerasure fornisce informazioni esaustive su questo argomento.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Con il plugin di jerasure, quando un oggetto con codice di cancellazione viene memorizzato su\n          più OSD, il recupero della perdita di un OSD richiede la lettura di tutti gli altri.\n          Ad esempio, se jerasure è configurato con k=8 e m=4, la perdita di un OSD richiede la lettura\n          degli altri undici per il ripristino.\n\n          Il plugin del codice di cancellazione lrc crea porzioni di parità locali che è possibile recuperare utilizzando un\n          minor numero di OSD. Ad esempio, se lrc è configurato con k=8, m=4 e l=4, crea\n          una porzione di parità aggiuntiva ogni quattro OSD. Quando si perde un singolo OSD, è possibile\n          recuperarlo solo con quattro OSD invece che con undici.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Raggruppa le porzioni di codice e dati in set di località dimensione. Ad esempio,\n          per k=4 e m=2, se località=3 vengono creati due gruppi su tre. È possibile recuperare ciascun set\n          senza leggere le porzioni di un altro set.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Il tipo di compartimento Crush in cui viene memorizzato ciascun set di porzioni definito\n          dall\'utente. Ad esempio, se è impostato su rack, ciascun gruppo di porzioni viene\n          posizionato in un diverso rack. Viene utilizzato per creare un passaggio della regola CRUSH come il passaggio choose\n          rack. Se non è impostato, il raggruppamento non viene eseguito.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Il plugin ISA incapsula la libreria ISA. Viene eseguito solo su processori Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Il plugin ISA è disponibile in due formati Reed Solomon.\n          Se è impostato reed_sol_van, il formato è Vandermonde, se è impostato cauchy, il formato è Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Il plugin shec incapsula la libreria SHEC multipla.\n          Consente a Ceph di recuperare i dati in modo più efficiente rispetto ai codici Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Il numero di compartimenti di parità, ciascuno dei quali include i singoli compartimenti di dati\n          nell\'intervallo di calcolo. Il numero viene utilizzato come strumento di stima della durabilità. Ad esempio, se c=2,\n          è possibile disattivare 2 OSD senza perdere i dati.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Il nome del compartimento Crush utilizzato per il primo passaggio della regola CRUSH.\n      Ad esempio il passaggio take default.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Assicurarsi che non esistano due porzioni in un compartimento con lo stesso dominio\n      di errore. Ad esempio, se il dominio di errore è l\'host, non verranno memorizzate due porzioni sullo stesso\n      host. Viene utilizzato per creare un passaggio della regola CRUSH come passaggio chooseleaf host.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Limitare il posizionamento ai dispositivi di una classe specifica\n      (ad es. ssd o hdd) usando i nomi delle classi di dispositivi Crush nella mappa CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Impostare il nome della directory da cui viene caricato il plugin del codice di cancellazione.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Consente tutte le operazioni</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Consente solo le operazioni che non modificano il server</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Non consente operazioni di lettura o scrittura, ma consente qualsiasi altra operazione</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Non consente operazioni di lettura o scrittura o qualsiasi operazione che modifichi gli attributi dei file o il contenuto della directory</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Non consente alcun accesso</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Selezionare la priorità --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Bassa</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Alta</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informazioni</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Ultimi 5 minuti</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Ultimi 15 minuti</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Ultimi 30 minuti</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Ultima ora (Default)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Ultime 3 ore</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Ultime 6 ore</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Ultime 12 ore</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Ultime 24 ore</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Ieri</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Oggi</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Fino a oggi</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Giorno prima di ieri</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Ultimi 2 giorni</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Questo giorno della scorsa settimana</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Settimana precedente</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Questa settimana</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Fino a questa settimana</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Ultimi 7 giorni</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Mese precedente</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Questo mese</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Fino a questo mese</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Ultimi 30 giorni</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Ultimi 90 giorni</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Ultimi 6 mesi</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Ultimo anno</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Anno precedente</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Quest\'anno</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Fino a quest\'anno</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Ultimi 2 anni</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Ultimi 5 anni</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Nessun elemento selezionato.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Deselezionare l\'elemento per selezionare di nuovo</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target> Raggiunto il limite per la selezione</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Filtra tag</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Aggiungi badge</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Non vi sono elementi disponibili.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Clona</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Copia</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Pulitura approfondita</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Eliminazione definitiva</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Appiattisci</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Declassa</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Attiva</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Contrassegna come perso</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Disattiva</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Proteggi</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Rinomina</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Ripristina</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Sposta nel cestino</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Rimuovi protezione</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Eliminato</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Clonato</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Copiato</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Appiattito</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Eliminato definitivamente</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Ripristinato</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Rollback eseguito</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Sì</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>No</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Qualità di servizio</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limite di BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Il limite desiderato di byte I/O al secondo.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limite di IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Il limite desiderato di operazioni I/O al secondo.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limite BPS in lettura</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Il limite desiderato dei byte letti al secondo.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limite di IOPS in lettura</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Il limite desiderato di operazioni di lettura al secondo.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limite di BPS in scrittura</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Il limite desiderato di byte scritti al secondo.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limite di IOPS in scrittura</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Il limite desiderato di operazioni di scrittura al secondo.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Burst BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Il limite di burst desiderato dei byte di I/O.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Burst IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Il limite di burst desiderato delle operazioni di I/O.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Burst BPS in lettura</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Il limite di burst desiderato dei byte letti.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Burst IOPS in lettura</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Il limite di burst desiderato delle operazioni di lettura.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Burst BPS in scrittura</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Il limite di burst desiderato dei byte scritti.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Burst di IOPS in scrittura</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Il limite di burst desiderato delle operazioni di scrittura.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>In esecuzione</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>esegui</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Eseguito</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>task sconosciuto</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Creazione in corso</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>crea</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Aggiornamento in corso</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>aggiorna</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Eliminazione in corso</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Clonazione in corso</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>clona</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Copia in corso</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>copia</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Appiattimento</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>appiattisci</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Rollback in corso</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>rollback</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Spostamento in corso</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>sposta</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Spostato</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Impossibile trovare l\'immagine.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Ripristino in corso</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>ripristina</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Eliminazione in corso</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>elimina definitivamente</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>tutti i pool</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Impossibile disabilitare l\'esecuzione della copia speculare perché contiene un peer.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"8mBD":function(t,e,n){!function(t){"use strict";t.defineLocale("pt",{months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},"8rQ2":function(t,e,n){var a=n("6MU2"),r=n("/Gx3"),i=n("Uqmq"),s=n("qjUL"),u=r((function(t){return t.push(void 0,i),a(s,void 0,t)}));t.exports=u},"8xTl":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t){return a.upperFirst(t)}}},"9/5/":function(t,e){var n=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,r=/^0b[01]+$/i,i=/^0o[0-7]+$/i,s=parseInt,u="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,l=u||o||Function("return this")(),d=Object.prototype.toString,c=Math.max,f=Math.min,h=function(){return l.Date.now()};function g(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function p(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&"[object Symbol]"==d.call(t)}(t))return NaN;if(g(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=g(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(n,"");var u=r.test(t);return u||i.test(t)?s(t.slice(2),u?2:8):a.test(t)?NaN:+t}t.exports=function(t,e,n){var a,r,i,s,u,o,l=0,d=!1,b=!1,m=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function y(e){var n=a,i=r;return a=r=void 0,l=e,s=t.apply(i,n)}function v(t){return l=t,u=setTimeout(_,e),d?y(t):s}function x(t){var n=t-o;return void 0===o||n>=e||n<0||b&&t-l>=i}function _(){var t=h();if(x(t))return T(t);u=setTimeout(_,function(t){var n=e-(t-o);return b?f(n,i-(t-l)):n}(t))}function T(t){return u=void 0,m&&a?y(t):(a=r=void 0,s)}function w(){var t=h(),n=x(t);if(a=arguments,r=this,o=t,n){if(void 0===u)return v(o);if(b)return u=setTimeout(_,e),y(o)}return void 0===u&&(u=setTimeout(_,e)),s}return e=p(e)||0,g(n)&&(d=!!n.leading,i=(b="maxWait"in n)?c(p(n.maxWait)||0,e):i,m="trailing"in n?!!n.trailing:m),w.cancel=function(){void 0!==u&&clearTimeout(u),l=0,a=o=r=u=void 0},w.flush=function(){return void 0===u?s:T(h())},w}},"93I0":function(t,e,n){var a=n("VpIT"),r=n("kOOl"),i=a("keys");t.exports=function(t){return i[t]||(i[t]=r(t))}},"978R":function(t,e,n){"use strict";n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return d})),n.d(e,"c",(function(){return f})),n.d(e,"d",(function(){return h}));var a=n("8Y7J"),r=n("hpHm"),i=n("mrSG"),s=n("z/SZ"),u=n("2uy1"),o=n("PqYM");class l{constructor(){this.adaptivePosition=!0,this.placement="top",this.triggers="hover focus",this.delay=0}}class d{constructor(t){Object.assign(this,t)}get isBs3(){return Object(r.d)()}ngAfterViewInit(){this.classMap={in:!1,fade:!1},this.classMap[this.placement]=!0,this.classMap["tooltip-"+this.placement]=!0,this.classMap.in=!0,this.animation&&(this.classMap.fade=!0),this.containerClass&&(this.classMap[this.containerClass]=!0)}}let c=0,f=(()=>{class t{constructor(t,e,n,r,i,s){this._elementRef=r,this._renderer=i,this._positionService=s,this.tooltipId=c++,this.tooltipChange=new a.EventEmitter,this.containerClass="",this.tooltipAnimation=!0,this.tooltipFadeDuration=150,this.tooltipStateChanged=new a.EventEmitter,this._tooltip=e.createLoader(this._elementRef,t,this._renderer).provide({provide:l,useValue:n}),Object.assign(this,n),this.onShown=this._tooltip.onShown,this.onHidden=this._tooltip.onHidden}get isOpen(){return this._tooltip.isShown}set isOpen(t){t?this.show():this.hide()}set htmlContent(t){Object(r.i)("tooltipHtml was deprecated, please use `tooltip` instead"),this.tooltip=t}set _placement(t){Object(r.i)("tooltipPlacement was deprecated, please use `placement` instead"),this.placement=t}set _isOpen(t){Object(r.i)("tooltipIsOpen was deprecated, please use `isOpen` instead"),this.isOpen=t}get _isOpen(){return Object(r.i)("tooltipIsOpen was deprecated, please use `isOpen` instead"),this.isOpen}set _enable(t){Object(r.i)("tooltipEnable was deprecated, please use `isDisabled` instead"),this.isDisabled=!t}get _enable(){return Object(r.i)("tooltipEnable was deprecated, please use `isDisabled` instead"),this.isDisabled}set _appendToBody(t){Object(r.i)('tooltipAppendToBody was deprecated, please use `container="body"` instead'),this.container=t?"body":this.container}get _appendToBody(){return Object(r.i)('tooltipAppendToBody was deprecated, please use `container="body"` instead'),"body"===this.container}set _popupClass(t){Object(r.i)("tooltipClass deprecated")}set _tooltipContext(t){Object(r.i)("tooltipContext deprecated")}set _tooltipPopupDelay(t){Object(r.i)("tooltipPopupDelay is deprecated, use `delay` instead"),this.delay=t}get _tooltipTrigger(){return Object(r.i)("tooltipTrigger was deprecated, please use `triggers` instead"),this.triggers}set _tooltipTrigger(t){Object(r.i)("tooltipTrigger was deprecated, please use `triggers` instead"),this.triggers=(t||"").toString()}ngOnInit(){this._tooltip.listen({triggers:this.triggers,show:()=>this.show()}),this.tooltipChange.subscribe(t=>{t||this._tooltip.hide()}),this.onShown.subscribe(()=>{this.setAriaDescribedBy()}),this.onHidden.subscribe(()=>{this.setAriaDescribedBy()})}setAriaDescribedBy(){this._ariaDescribedby=this.isOpen?"tooltip-"+this.tooltipId:null,this._ariaDescribedby?this._renderer.setAttribute(this._elementRef.nativeElement,"aria-describedby",this._ariaDescribedby):this._renderer.removeAttribute(this._elementRef.nativeElement,"aria-describedby")}toggle(){if(this.isOpen)return this.hide();this.show()}show(){if(this._positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition},preventOverflow:{enabled:this.adaptivePosition}}}),this.isOpen||this.isDisabled||this._delayTimeoutId||!this.tooltip)return;const t=()=>{this._delayTimeoutId&&(this._delayTimeoutId=void 0),this._tooltip.attach(d).to(this.container).position({attachment:this.placement}).show({content:this.tooltip,placement:this.placement,containerClass:this.containerClass,id:"tooltip-"+this.tooltipId})},e=()=>{this._tooltipCancelShowFn&&this._tooltipCancelShowFn()};if(this.delay){const n=Object(o.a)(this.delay).subscribe(()=>{t(),e()});this.triggers&&Object(r.f)(this.triggers).forEach(t=>{this._tooltipCancelShowFn=this._renderer.listen(this._elementRef.nativeElement,t.close,()=>{n.unsubscribe(),e()})})}else t()}hide(){this._delayTimeoutId&&(clearTimeout(this._delayTimeoutId),this._delayTimeoutId=void 0),this._tooltip.isShown&&(this._tooltip.instance.classMap.in=!1,setTimeout(()=>{this._tooltip.hide()},this.tooltipFadeDuration))}ngOnDestroy(){this._tooltip.dispose(),this.tooltipChange.unsubscribe(),this.onShown.unsubscribe(),this.onHidden.unsubscribe()}}return Object(i.__decorate)([Object(r.a)(),Object(i.__metadata)("design:type",Object)],t.prototype,"tooltip",void 0),t})();class h{static forRoot(){return{ngModule:h,providers:[l,s.a,u.a]}}}},"9Xeq":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},"9d/t":function(t,e,n){var a=n("AO7/"),r=n("xrYK"),i=n("tiKp")("toStringTag"),s="Arguments"==r(function(){return arguments}());t.exports=a?r:function(t){var e,n,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:s?r(e):"Object"==(a=r(e))&&"function"==typeof e.callee?"Arguments":a}},"9nlD":function(t,e,n){"use strict";n.d(e,"a",(function(){return f}));var a=n("LvDl"),r=n("2Vo4"),i=n("XNiG"),s=n("mtw6"),u=n("G1I9"),o=n("a0VL"),l=n("ufoC"),d=n("8Y7J"),c=n("EApP");let f=(()=>{class t{constructor(t,e,n){this.toastr=t,this.taskMessageService=e,this.cdDatePipe=n,this.hideToasties=!1,this.dataSource=new r.a([]),this.data$=this.dataSource.asObservable(),this.sidebarSubject=new i.a,this.queued=[],this.KEY="cdNotifications";const s=localStorage.getItem(this.KEY);let o=[];a.isString(s)&&(o=JSON.parse(s,(t,e)=>a.isPlainObject(e)?a.assign(new u.a,e):e)),this.dataSource.next(o)}removeAll(){localStorage.removeItem(this.KEY),this.dataSource.next([])}remove(t){const e=this.dataSource.getValue();e.splice(t,1),this.dataSource.next(e),localStorage.setItem(this.KEY,JSON.stringify(e))}save(t){const e=this.dataSource.getValue();for(e.push(t),e.sort((t,e)=>t.timestamp>e.timestamp?-1:1);e.length>10;)e.pop();this.dataSource.next(e),localStorage.setItem(this.KEY,JSON.stringify(e))}show(t,e,n,r,i){return window.setTimeout(()=>{let s;s=a.isFunction(t)?t():a.isObject(t)?t:new u.b(t,e,n,r,i),this.queueToShow(s)},10)}queueToShow(t){this.cancel(this.queuedTimeoutId),this.queued.find(e=>a.isEqual(e,t))||this.queued.push(t),this.queuedTimeoutId=window.setTimeout(()=>{this.showQueued()},500)}showQueued(){this.getUnifiedTitleQueue().forEach(t=>{const e=new u.a(t);e.isFinishedTask||this.save(e),this.showToasty(e)})}getUnifiedTitleQueue(){return Object.values(this.queueShiftByTitle()).map(t=>{const e=t[0];return t.length>1&&(e.message="<ul>"+t.map(t=>`<li>${t.message}</li>`).join("")+"</ul>"),e})}queueShiftByTitle(){const t={};let e;for(;e=this.queued.shift();)t[e.title]||(t[e.title]=[]),t[e.title].push(e);return t}showToasty(t){this.hideToasties||this.toastr[["error","info","success"][t.type]]((t.message?t.message+"<br>":"")+this.renderTimeAndApplicationHtml(t),t.title,t.options)}renderTimeAndApplicationHtml(t){return`<small class="date">${this.cdDatePipe.transform(t.timestamp)}</small><i class="float-right custom-icon ${t.applicationClass}" title="${t.application}"></i>`}notifyTask(t,e=!0){const n=this.finishedTaskToNotification(t,e);return n.isFinishedTask=!0,this.show(n)}finishedTaskToNotification(t,e=!0){let n;return n=t.success&&e?new u.b(s.a.success,this.taskMessageService.getSuccessTitle(t)):new u.b(s.a.error,this.taskMessageService.getErrorTitle(t),this.taskMessageService.getErrorMessage(t)),n.isFinishedTask=!0,n}cancel(t){window.clearTimeout(t)}suspendToasties(t){this.hideToasties=t}toggleSidebar(t=!1){this.sidebarSubject.next(t)}}return t.ngInjectableDef=d["ɵɵdefineInjectable"]({factory:function(){return new t(d["ɵɵinject"](c.j),d["ɵɵinject"](l.a),d["ɵɵinject"](o.a))},token:t,providedIn:"root"}),t})()},"9ppp":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})()},"9rRi":function(t,e,n){!function(t){"use strict";t.defineLocale("gd",{months:["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd"],monthsShort:["Faoi","Gear","Màrt","Gibl","Cèit","Ògmh","Iuch","Lùn","Sult","Dàmh","Samh","Dùbh"],monthsParseExact:!0,weekdays:["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],weekdaysShort:["Did","Dil","Dim","Dic","Dia","Dih","Dis"],weekdaysMin:["Dò","Lu","Mà","Ci","Ar","Ha","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[An-diugh aig] LT",nextDay:"[A-màireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-dè aig] LT",lastWeek:"dddd [seo chaidh] [aig] LT",sameElse:"L"},relativeTime:{future:"ann an %s",past:"bho chionn %s",s:"beagan diogan",ss:"%d diogan",m:"mionaid",mm:"%d mionaidean",h:"uair",hh:"%d uairean",d:"latha",dd:"%d latha",M:"mìos",MM:"%d mìosan",y:"bliadhna",yy:"%d bliadhna"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(t){return t+(1===t?"d":t%10==2?"na":"mh")},week:{dow:1,doy:4}})}(n("wd/R"))},"A+xa":function(t,e,n){!function(t){"use strict";t.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(t){return t+(/сехет$/i.exec(t)?"рен":/ҫул$/i.exec(t)?"тан":"ран")},past:"%s каялла",s:"пӗр-ик ҫеккунт",ss:"%d ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},dayOfMonthOrdinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}})}(n("wd/R"))},A2ZE:function(t,e,n){var a=n("HAuM");t.exports=function(t,e,n){if(a(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,a){return t.call(e,n,a)};case 3:return function(n,a,r){return t.call(e,n,a,r)}}return function(){return t.apply(e,arguments)}}},ANnk:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("aexS"),n("f/UV");class a{constructor(t,e,n){this.formScope=t,this.authStorageService=e,this.elementRef=n}ngAfterViewInit(){this.permissions=this.authStorageService.getPermissions(),null!==this.formScope&&(this.service_name=this.formScope.cdFormScope),this.service_name&&!this.permissions[this.service_name].update&&(this.elementRef.nativeElement.disabled=!0)}}},"AO7/":function(t,e,n){var a={};a[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(a)},AQ68:function(t,e,n){!function(t){"use strict";t.defineLocale("uz-latn",{months:"Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr".split("_"),monthsShort:"Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek".split("_"),weekdays:"Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba".split("_"),weekdaysShort:"Yak_Dush_Sesh_Chor_Pay_Jum_Shan".split("_"),weekdaysMin:"Ya_Du_Se_Cho_Pa_Ju_Sha".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Bugun soat] LT [da]",nextDay:"[Ertaga] LT [da]",nextWeek:"dddd [kuni soat] LT [da]",lastDay:"[Kecha soat] LT [da]",lastWeek:"[O'tgan] dddd [kuni soat] LT [da]",sameElse:"L"},relativeTime:{future:"Yaqin %s ichida",past:"Bir necha %s oldin",s:"soniya",ss:"%d soniya",m:"bir daqiqa",mm:"%d daqiqa",h:"bir soat",hh:"%d soat",d:"bir kun",dd:"%d kun",M:"bir oy",MM:"%d oy",y:"bir yil",yy:"%d yil"},week:{dow:1,doy:7}})}(n("wd/R"))},AWcq:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("yJti");class r{constructor(){this.vcs=a.a}ngOnInit(){}}},AfCQ:function(t,e,n){"use strict";var a=n("2Vo4"),r=n("qgXg"),i=n("HDdC"),s=n("pxpQ"),u=n("Kqap"),o=n("lJxs"),l=n("7o/Q");class d{constructor(t,e){this.compare=t,this.keySelector=e}call(t,e){return e.subscribe(new c(t,this.compare,this.keySelector))}}class c extends l.a{constructor(t,e,n){super(t),this.keySelector=n,this.hasKey=!1,"function"==typeof e&&(this.compare=e)}compare(t,e){return t===e}_next(t){let e;try{const{keySelector:n}=this;e=n?n(t):t}catch(a){return this.destination.error(a)}let n=!1;if(this.hasKey)try{const{compare:t}=this;n=t(this.key,e)}catch(a){return this.destination.error(a)}else this.hasKey=!0;n||(this.key=e,this.destination.next(t))}}n.d(e,"a",(function(){return f})),n.d(e,"b",(function(){return h}));class f extends a.a{constructor(t,e,n){super(t),e.pipe(Object(s.b)(r.a)).pipe(Object(u.a)((t,e)=>e?n(t,e):t,t)).subscribe(t=>this.next(t))}}class h extends i.a{constructor(t,e,n){super(),this._dispatcher=t,this._reducer=e,this.source=n}select(t){return this.source.pipe(Object(o.a)(t)).pipe(t=>t.lift(new d(void 0,void 0)))}lift(t){const e=new h(this._dispatcher,this._reducer,this);return e.operator=t,e}dispatch(t){this._dispatcher.next(t)}next(t){this._dispatcher.next(t)}error(t){this._dispatcher.error(t)}complete(){}}},AiMb:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="zh-CN">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>切换导航</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>仪表盘</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>集群</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>主机</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitor</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>对应的服务</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>配置项</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH 索引</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Manager 扩展模块</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>日志</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>存储池</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>块设备</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>映像</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>镜像</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>文件系统</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>对象网关</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>守护进程</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>用户</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>存储桶</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>请选择语言</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>正在加载面板的相关数据…</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Grafana 时间选择工具</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>重新设置</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>返回</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>无法加载数据。</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>选中个数</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>命中个数</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>总数</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>名称</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>解释</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>更详尽的解释</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>缺省值</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>守护进程的缺省值</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>可选值</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>保存</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>检查 CRUSH 索引图</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>正在加载…</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>主机名</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>请填写此栏目!</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>是的,我确定。</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>取消</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>关闭</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>主机列表</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>总体性能</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>无法找到相关条目</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>集群日志</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>审计日志</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>正在加载相关配置信息...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>配置信息无法加载。</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>编辑 Manager 扩展模块</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>输入值不是有效的 UUID,如:67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>输入的应该是个有效的 IP 地址。</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>输入须为数字。</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>输入的应该是一个浮点数或者十进制整数。</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>状态</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>集群 ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap 修改时间</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap epoch</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con </target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>required con</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>required mon</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>仲裁成员</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>非仲裁成员</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>添加</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>特性</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>集群范围的 OSD 标志</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>提交</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>高级设置…</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD 恢复优先级</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>优先级</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>自定义优先级</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>这个字段是必填的!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>权重值必须在 0 和 1 之间</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>重设权重</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {深度}}</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {深度} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSD 列表</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>值</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>编辑</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>删除</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>健康状况</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>统计数据</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>客户端</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>任何客户端均可访问</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>地址</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>必填项</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>必须包含一个或多个逗号分隔值</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>例如:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>访问类型</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>添加客户端</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- 无可用集群 --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- 请选择一个集群 --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>添加守护进程</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>存储后端</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- 没有可用的数据存储池 --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- 请选择存储后端 --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>对象网关用户</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- 无可选用户 --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- 请选择对象网关用户 --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS 用户 ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- 无可用客户端 --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- 请选择 cephx 客户端 --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS 名称</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>安全标签</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>启用安全标签</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS 路径</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>路径需以“/”开头,后面可跟单词</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>将创建新文件夹</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>路径</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>路径只能是单个“/”或单词</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>将创建新的桶</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS 协议</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS 标签</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>客户端不能装入子目录(即如果标记为 foo,则客户端无法装入 foo/baz)。</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>通过使用不同标记选项,可将同一路径导出多次。</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>伪</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>通过使用不同伪选项,可将同一路径导出多次。</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- 没有可用的访问类型 --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- 选择访问类型 --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- 没有可用的 squash --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- 选择执行哪种类型的用户 ID 匿名访问 --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>传输协议</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>欢迎使用 Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>请输入用户名</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>请输入密码</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>登录</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>抱歉,此用户不存在。</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>禁止访问</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>抱歉,您无权访问这个页面。</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD 配置</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>删除本地的配置项,改用更高作用域的配置值。</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>最小值为 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>存储池列表</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>名称只能由字母、数字、短划线和下划线组成。</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>此纠删码配置名称已被使用。</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>纠删码算法</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>数据块 (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>必须大于等于 2</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>校验块 (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>必须大于等于 1</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>持久因子 (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>局部性因子 (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>CRUSH 故障域</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>CRUSH 局部性</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>无</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>算法</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>packetsize</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>CRUSH 根</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>CRUSH 设备类型</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>任意</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>目录</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>名称…</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>此 Ceph 存储池名称已被使用。</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>存储池类型</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- 请选择存储池的类型 --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>归置组 (PG)</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>至少需要一个归置组!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>您的集群没法支持这么多的 PG。请重新计算需要的 PG 个数。</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>在线 PG 计算器</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>副本个数</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>标志</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC 重写 (overwrite)</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>应用类型</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>纠删码配置</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- 无纠删码配置可选 --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- 请选择一个纠删码配置 --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>CRUSH 算法规则组</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- 选择 CRUSH 规则 --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>CRUSH 规则</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>CRUSH 步骤</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>压缩</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>模式</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>算法</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- 无可用的纠删码压缩算法 --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>blob 大小下限</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>比如 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>取值必须大于 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>blob 大小上限</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>如 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>取值必须大于 blob 大小下限</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>比例</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>压缩率</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>取值必须在 0.0 和 1.0 之间</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>如 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>详情</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>性能详情</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>缓存层详细信息</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>将映像移至回收站</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>保护期一直到</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>无保护</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>日期格式有问题。请使用“YYYY-MM-DD HH:mm:ss”。</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>保护期限已经过了。请设置一个将来的日期,或者清空不填。</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>移动映像</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>概览</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>目标</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>发现身份验证</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>用户</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>用户名长度必须在 8 到 64 个字符之间,且只能包含\n以下字符:英文字母、“.”、“@”、“-”、“_”或“:”。</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>密码</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>互认证用户</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>互认证密码</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>可用信息:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>无可用 iSCSI 目标</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>存储池</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>数据存储池</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>创建</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>容量</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>对象数</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>对象大小</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>供给容量</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/A</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>总供给容量</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>条带单元</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>条带个数</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>父节点</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>块存储名字前缀</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>order</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>快照</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>映像</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>此设置会覆盖全局值</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>全局</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>该值为全局值。没有为此映像设置此选项的值。</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>不允许使用“/”和“@”。</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- 没有可用的 RBD 存储池 --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- 请选择存储池 --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>使用一个专用的数据池</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>数据池</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>为保存 RBD 的对象数据单独分配的存储池。</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>您需要设置大一些的容量。</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>高级设置</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>条带</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>条带单元大小</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- 选择条带单元大小 --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>因为设置了条带个数,所以这个字段是必选的!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>条带单元大小超过了对象大小。</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>条带个数</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>因为设置了条带单元大小,所以这个字段是必选的!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>条带的个数必须大于 0。</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>您即将进行回滚操作</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>清空回收站</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>全选</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>存储池:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>存储池名称…</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>恢复映像</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>要恢复</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>输入映像的新名称,并点击</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>新名称</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>过期时间</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>保护期限</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSI 结构图</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>通常无须改变这些默认参数值。</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>设置</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>后备存储</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>确认</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>高级设置</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>目标限定名</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN 格式错误。</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>例如:iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>更多信息</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>此目标的高级设置项存在修改。</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>端口</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>添加端口</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>此映像的设置项存在修改。</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>添加映像</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL 身份验证</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>授权人</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>授权人</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>客户端 IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>授权人 IQN 必须唯一。</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>用户名长度必须在 8 到 64 个字符之间,且只能包含\n以下字符:英文字母、“.”、“@”、“-”、“_”或“:”。</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>授权人属于群组。映像须在群组中进行设置。</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>无项目添加。</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>添加授权人</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>群组</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>群组</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>添加群组</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>回收站</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>问题</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>正在同步</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>已就绪</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>编辑存储池镜像模式</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>在禁用镜像功能前必须先移除同伴集群。</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {编辑} other {添加} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>集群名称</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>集群名称无效。</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX ID 无效。</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Monitor 地址</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>逗号分割的地址...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Monitor 地址无效。</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX 密钥</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64 编码的密钥...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephX 密钥必须是 base64 编码的。</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>无法读取性能计数器</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>守护进程列表</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>性能计数器</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>正在加载存储桶数据…</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>输入值无效。</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>所选名称已经被使用。</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>所有者</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- 请选择一个用户 --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>开启</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>索引类型</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>归置规则</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>标识</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>max marker</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>版本</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>主版本</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>修改时间</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>zonegroup</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>存储桶配额</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>最大数目</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>无限制</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>最大对象数目</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>用户名</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- 请选择用户名 --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>自动生成密钥</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>访问密钥</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>秘密密钥</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>全名</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>邮箱</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>冻结</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>系统</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>最大存储桶数目</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>子用户</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>用户权限</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>用户配额</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>显示</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>密钥</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>类型</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- 请选择一个类型 --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>权限</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- 请选择权限类型 --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>子用户</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>所选的子用户 ID 已被使用。</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>读、写</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>全部</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Swift 密钥</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>自动生成密钥</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>正在加载用户数据…</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>用户数据无法加载。 </target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>所选的用户 ID 已被使用。</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>无效的邮箱地址。</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>此邮箱地址已被使用。</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>存储桶个数的上限</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>禁用</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>自定义</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3 密钥</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>没有子用户。</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>没有任何密钥。</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>权限为空。</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>空间无限制</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>空间上限</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>对象个数无限制</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>对象个数上限</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>设置的值必须 &gt;= 0。</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>描述…</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>权限</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>角色</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>确认密码</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>密码和之前的输入不匹配。</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>邮箱</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>邮箱地址无效。</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>您即将取消您自己用户的 "user read / update" 权限。</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>如果您继续的话,您以后就没办法为其他用户添加或者删除角色了。</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>您确实要继续吗?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>帮助</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>文档</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>关于</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>仪表盘设置</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>用户管理</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>登录的用户</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>登出</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>OSD map</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>元数据不可用</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>相关元数据</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>性能计数器</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>写入请求</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>读取请求</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>直方图</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>当前值</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>下限</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>上限</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>来源</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>级别</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>可在运行时更新(可编辑)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>标记</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>可选项</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>参见</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>集群状态</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>manager 守护进程</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>对象网关</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>metadata 服务器</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI 网关</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>客户端 IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>客户端吞吐量</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>客户端读/写</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>恢复吞吐量</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>洗刷</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>性能</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>基本容量</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>每个 OSD 的 PG 数</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>PG 状态</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>容量</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>排位</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>当前</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>已更新发现身份验证</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>无可用端口。</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>无可用映像。</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>无可用映像。请确保为目标添加一个映像。</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>无可用授权人。请确保为目标添加一个授权人。</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>目标</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>状态</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>读字节数</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>写字节数</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>读请求数</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>写请求数</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>活动/优化自</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>实例</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>问题</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>进度</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>编辑模式</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>添加 peer</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>编辑 peer</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>删除 peer</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># 本地</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># 远程</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>镜像 peer</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>密钥</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>完全展开</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>分层</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>互斥锁</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>object map(要求互斥锁支持)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>日志(要求互斥锁支持)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>无保护的</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>RBD 快照回滚</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>回滚</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBD 快照</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>定点删除</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>类型</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>状态</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>版本</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>主机</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>根</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>备用服务</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>排位</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>守护进程</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>活跃度</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>inodes</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>使用率</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>更新完成</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>该值可在运行时更新。</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>服务器或客户端不会主动从 monitor 的配置数据库读取这个配置。\n 所以不能用“ceph config set ...”设置它。但是可以通过\n ceph.conf 或者用命令行进行配置。</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>该配置只有在服务启动的时候才会生效。</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>该配置只在创建集群的时候才会生效。</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>该配置只在服务创建的时候才会生效。</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>服务</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>当前值</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>可编辑</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>启用</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>禁用</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>正在重新连接,请稍候…</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>外部地址</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>活动会话</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>禁止加入</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>之前被除名的 OSD 在启动之后,不会被加入集群</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>禁止除名</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>在发现 OSD 没有响应之后一段时间,该 OSD 会被踢出集群。该标志会禁止这个功能。</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>禁止启用</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>不允许 OSD 启动</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>禁止停用</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>当前不受理对 OSD 的失效报告,因而 monitor 不会停用 OSD</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>暂停</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>暂停读写</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>禁止洗刷</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>洗刷已禁止</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>禁止深层洗刷</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>深层洗刷已禁止</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>禁止回填</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>PG 回填已推迟</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>禁止恢复</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>PG 恢复已推迟</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>逐位排序</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>使用逐位排序</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>老版本的快照已全部升级</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD 上的快照已全部转换完毕</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>在恢复时进行删除操作</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>在恢复时,而非对齐阶段进行删除</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>PG 日志硬限制</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>为 pg 日志长度添加硬限制</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>已更新 OSD 标志</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>除名</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>加入</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>停用</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>标记</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD 丢失</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>已标记丢失</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>清除</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>已清除</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>销毁</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>已销毁</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>删除</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PG</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>读字节数</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>写字节数</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>读请求数</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>写请求数</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>最大回填量</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>最大活跃恢复请求数</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>最大单次恢复操作数</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>恢复/回填操作间隔睡眠时间</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>任务</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>严重程度</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>已启动</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>已使用</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>空闲</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>正常</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>运行中</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>警报</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>未知</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>启用中</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>无文件系统</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>工作</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>待机</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/a</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>工作的守护进程</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>NFS Ganesha 服务的配置还没有完成。</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>传输</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS 用户</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFS 文件系统</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(继承自全局配置)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>继承自全局配置</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- 选择执行哪种类型的用户 ID 匿名访问 --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>没有可用的守护进程。</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>缓存模式</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>最少延迟赶出时间</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>最少延迟刷回时间</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>目标器最大字节数</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>目标器最大对象数</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>还没有任何应用标记</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>应用标记到了上限</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>一个存储池最多能有四个应用标记。</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>可用的字符为“_a-zA-Z0-9”</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>长度限制为 128 个字符</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>添加应用标记或根据其进行筛选</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>添加应用标记</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>纠删码配置</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>副本个数</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>最后修改时间</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>纠删码配置</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>CRUSH 规则集</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>存储桶</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>存储桶</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>用户</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>用户</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>作用范围</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>读权限</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>新建</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>系统角色</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>更新用户</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>继续</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>您被自动登出,因为您的角色有了变动。</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target> 各对象都被分割为数据块,分别存储于不同 OSD 。</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>计算各对象的编码块、并存储于不同 OSD 。\n编码块的数量等同于在不丢数据的前提下允许同时失效的 OSD 数量。</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>jerasure 插件是最通用、最灵活的插件,\n也是 Ceph 纠删码存储池的默认插件。</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>reed_sol_van 技术更灵活:它足以设置 k 和 m 值。 \ncauchy_good 技术更快,但你得谨慎地选择 packetsize 值。\nreed_sol_r6_op 、 liberation 、 blaum_roth 、 liber8tion 都是与 RAID6 等价的技术,\n它们只能配置为 m=2 。</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target> 以 bytes 大小的包为单位进行编码。\n确定合适的包尺寸很难, \njerasure 文档对此有很详细的描述。</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>用 jerasure 插件时,纠删码编码的对象存储在多个 OSD 上,\n丢失一个 OSD 的恢复过程需读取所有其他的 OSD 。\n比如 jerasure 的配置为 k=8 且 m=4 ,丢失一个 OSD 后需读取其他 11 个 OSD 才能恢复。\n\nlrc 纠删码插件创建的是局部校验块,这样只需较少的 OSD 即可恢复。\n比如 lrc 的配置为 k=8 、 m=4 且 l=4 ,它将为每四个 OSD 创建额外的校验块,\n当一个 OSD 丢失时,它只需四个 OSD 即可恢复,而不需要十一个。</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>把编码块和数据块分组为大小为 locality 的集合。\n比如, k=4 且 m=2 时,若设置 locality=3 ,将会分组为大小为三的两组,\n这样各组都能自行恢复,无需从另一组读数据块。</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>由 l 定义的块集合将按哪种 crush 桶类型存储。\n比如,若设置为 rack ,大小为 l 块的各组将被存入不同的机架,\n此值会被用于创建类似 step choose rack 的规则集。\n如果没设置,就不会这样分组。</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>isa 插件封装了 ISA 库。它只能运行在 Intel 处理器上。</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>ISA 插件包含两种 Reed Solomon 编码形式。\n设置为 reed_sol_van 表示用 Vandermonde 算法,设置为 cauchy 表示用 Cauchy 算法。</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>shec 插件封装了 multiple SHEC 库。\n与 Reed Solomon 编码相比,它能使 Ceph 更高效地恢复数据。</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target> 奇偶校验块数量,它们在各自的计算范围内包含了各数据块。\n此数值被用作持久性估值。\n例如,假设 c=2 ,就是说不丟数据的情况下可损失 2 个 OSD 。</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>规则集第一步所指向的 CRUSH 桶之名,\n如 step take default 。</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>确保两个编码块不会存在于同一故障域的桶里面。\n比如,假设故障域是 host ,就不会有两个编码块存储到同一主机;\n此值用于在规则集中创建类似 step chooseleaf host 的步骤。</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>使用 CRUSH 索引中的 crush 设备类名,\n将归置限制于特定类的设备(例如,ssd 或 hdd)。</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>设置纠删码插件所在目录。</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>允许所有操作</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>只允许不修改服务器端数据的操作</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>禁止读写,但是允许其他的操作</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>禁止读、写以及任何可能修改文件内容的操作</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>完全禁止访问</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- 选择优先级 --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>低</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>高</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>信息</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>过去 5 分钟</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>过去 15 分钟</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>过去 30 分钟</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>过去 1 小时(默认)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>过去 3 小时</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>过去 6 小时</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>过去 12 小时</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>过去 24 小时</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>昨天</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>今天</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>今天到现在为止</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>前天</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>过去 2 天</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>上周的今天</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>上个星期</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>本周</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>本周以来</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>过去 7 天</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>上个月</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>当月</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>本月以来</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>过去 30 天</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>过去 90 天</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>过去 6 个月</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>过去 1 年</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>去年</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>今年</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>今年以来</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>过去 2 年</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>过去 5 年</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>无选中项目。</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>取消选择</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>达到选择项数上限。</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>过滤标签</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>添加 badge</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>无可选项目。</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>克隆</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>复制</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>深层洗刷</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>销毁</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>展开</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>标记为停用</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>标记为加入</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>标记为丢失</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>标记为已除名</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>保护</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>重命名</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>恢复</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>移至回收站</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>解除保护</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>删除完成</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>克隆完成</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>复制完成</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>展开完成</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>已清除</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>已经把</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>回滚完成</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>是</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>否</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>服务质量 (QoS)</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>指定的每秒 IO 字节数上限。</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>指定的每秒 IO 操作次数上限。</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>读 BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>指定的每秒内读取的字节数上限。</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>读 IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>指定的每秒读操作次数上限。</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>写 BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>指定的每秒内写入的字节数上限。</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>写 IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>指定的每秒写操作次数上限。</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS 突发</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>指定的 IO 字节数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS 突发</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>指定的 IO 操作次数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>读 BPS 突发</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>指定的读取的字节数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>读 IOPS 突发</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>指定的读操作次数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>写 BPS 突发</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>指定的写入的字节数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>写 IOPS 突发</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>指定的写操作次数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>正在执行</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>执行</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>执行完毕</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>未知任务</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>正在创建</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>创建</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>正在更新</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>正在删除</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>正在克隆</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>克隆</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>正在复制</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>复制</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>正在展开</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>展开</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>正在回滚</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>回滚</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>正在把</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>把</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>已经把</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>无法找到映像。</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>正在把</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>把</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>正在清除</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>清除</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>所有存储池</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>因为包含同伴集群,无法禁用镜像功能</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},Avrn:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("aexS"),r=n("8Y7J"),i=n("iInd");let s=(()=>{class t{constructor(t,e){this.router=t,this.authStorageService=e}canActivate(t,e){return!!this.authStorageService.isLoggedIn()||(this.router.navigate(["/login"],{queryParams:{returnUrl:e.url}}),!1)}canActivateChild(t,e){return this.canActivate(t,e)}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t(r["ɵɵinject"](i.m),r["ɵɵinject"](a.a))},token:t,providedIn:"root"}),t})()},AvvY:function(t,e,n){!function(t){"use strict";t.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),monthsParseExact:!0,weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",LTS:"A h:mm:ss -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -നു",LLLL:"dddd, D MMMM YYYY, A h:mm -നു"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",ss:"%d സെക്കൻഡ്",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,meridiemHour:function(t,e){return 12===t&&(t=0),"രാത്രി"===e&&t>=4||"ഉച്ച കഴിഞ്ഞ്"===e||"വൈകുന്നേരം"===e?t+12:t},meridiem:function(t,e,n){return t<4?"രാത്രി":t<12?"രാവിലെ":t<17?"ഉച്ച കഴിഞ്ഞ്":t<20?"വൈകുന്നേരം":"രാത്രി"}})}(n("wd/R"))},AxL3:function(t,e){var n=!("undefined"==typeof window||!window.document||!window.document.createElement);t.exports=n},B55N:function(t,e,n){!function(t){"use strict";t.defineLocale("ja",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiemParse:/午前|午後/i,isPM:function(t){return"午後"===t},meridiem:function(t,e,n){return t<12?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:function(t){return t.week()<this.week()?"[来週]dddd LT":"dddd LT"},lastDay:"[昨日] LT",lastWeek:function(t){return this.week()<t.week()?"[先週]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";default:return t}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}(n("wd/R"))},BFxc:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("7o/Q"),r=n("4I5i"),i=n("EY2u");function s(t){return function(e){return 0===t?Object(i.b)():e.lift(new u(t))}}class u{constructor(t){if(this.total=t,this.total<0)throw new r.a}call(t,e){return e.subscribe(new o(t,this.total))}}class o extends a.a{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,a=this.count++;e.length<n?e.push(t):e[a%n]=t}_complete(){const t=this.destination;let e=this.count;if(e>0){const n=this.count>=this.total?this.total:this.count,a=this.ring;for(let r=0;r<n;r++){const r=e++%n;t.next(a[r])}}t.complete()}}},BJMh:function(t,e,n){var a=n("KFwg")(n("Wa4q"),"Promise");t.exports=a},BQkM:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return t+" IOPS"}}},BVg3:function(t,e,n){!function(t){"use strict";function e(t){return t%100==11||t%10!=1}function n(t,n,a,r){var i=t+" ";switch(a){case"s":return n||r?"nokkrar sekúndur":"nokkrum sekúndum";case"ss":return e(t)?i+(n||r?"sekúndur":"sekúndum"):i+"sekúnda";case"m":return n?"mínúta":"mínútu";case"mm":return e(t)?i+(n||r?"mínútur":"mínútum"):n?i+"mínúta":i+"mínútu";case"hh":return e(t)?i+(n||r?"klukkustundir":"klukkustundum"):i+"klukkustund";case"d":return n?"dagur":r?"dag":"degi";case"dd":return e(t)?n?i+"dagar":i+(r?"daga":"dögum"):n?i+"dagur":i+(r?"dag":"degi");case"M":return n?"mánuður":r?"mánuð":"mánuði";case"MM":return e(t)?n?i+"mánuðir":i+(r?"mánuði":"mánuðum"):n?i+"mánuður":i+(r?"mánuð":"mánuði");case"y":return n||r?"ár":"ári";case"yy":return e(t)?i+(n||r?"ár":"árum"):i+(n||r?"ár":"ári")}}t.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:n,ss:n,m:n,mm:n,h:"klukkustund",hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},BVkS:function(t,e,n){var a=n("2zzJ"),r=n("Eey9");t.exports=function(t,e){return e.length<2?t:a(t,r(e,0,-1))}},BkBO:function(t,e,n){var a=n("43VP");t.exports=function(t,e){var n=!0;return a(t,(function(t,a,r){return n=!!e(t,a,r)})),n}},Bs8V:function(t,e,n){var a=n("g6v/"),r=n("0eef"),i=n("XGwC"),s=n("/GqU"),u=n("wE6v"),o=n("UTVS"),l=n("DPsx"),d=Object.getOwnPropertyDescriptor;e.f=a?d:function(t,e){if(t=s(t),e=u(e,!0),l)try{return d(t,e)}catch(n){}if(o(t,e))return i(!r.f.call(t,e),t[e])}},ByF4:function(t,e,n){!function(t){"use strict";t.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaður",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},C523:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("gk6K"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(t,e,n,a){this.el=t,this.renderer=e,this.treeDraggedElement=n,this.ngZone=a,this.dragEventHandler=this.onDrag.bind(this)}return t.prototype.ngAfterViewInit=function(){var t=this,e=this.el.nativeElement;this.ngZone.runOutsideAngular((function(){e.addEventListener("drag",t.dragEventHandler)}))},t.prototype.ngDoCheck=function(){this.renderer.setAttribute(this.el.nativeElement,"draggable",this.treeDragEnabled?"true":"false")},t.prototype.ngOnDestroy=function(){this.el.nativeElement.removeEventListener("drag",this.dragEventHandler)},t.prototype.onDragStart=function(t){t.dataTransfer.setData("text",t.target.id),this.treeDraggedElement.set(this.draggedElement),this.draggedElement.mouseAction&&this.draggedElement.mouseAction("dragStart",t)},t.prototype.onDrag=function(t){this.draggedElement.mouseAction&&this.draggedElement.mouseAction("drag",t)},t.prototype.onDragEnd=function(){this.draggedElement.mouseAction&&this.draggedElement.mouseAction("dragEnd"),this.treeDraggedElement.set(null)},i([Object(a.Input)("treeDrag"),s("design:type",Object)],t.prototype,"draggedElement",void 0),i([Object(a.Input)(),s("design:type",Object)],t.prototype,"treeDragEnabled",void 0),i([Object(a.HostListener)("dragstart",["$event"]),s("design:type",Function),s("design:paramtypes",[Object]),s("design:returntype",void 0)],t.prototype,"onDragStart",null),i([Object(a.HostListener)("dragend"),s("design:type",Function),s("design:paramtypes",[]),s("design:returntype",void 0)],t.prototype,"onDragEnd",null),i([Object(a.Directive)({selector:"[treeDrag]"}),s("design:paramtypes",[a.ElementRef,a.Renderer2,r.a,a.NgZone])],t)}()},C6Ij:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("DqMs"),i=n("/NlG"),s=n("GiVz"),u=n("SVse");n("AWcq"),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return p}));var o=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,[" for "])),(t()(),a["ɵeld"](2,0,null,null,0,"span",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,2,0,e.component.statusFor)}))}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"cd-alert-panel",[["type","info"]],null,null,null,r.b,r.a)),a["ɵdid"](1,114688,null,0,i.a,[s.a],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,4,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Retrieving data"])),(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,[". Please wait..."]))],(function(t,e){var n=e.component;t(e,1,0,"info"),t(e,5,0,n.statusFor)}),null)}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,[" for "])),(t()(),a["ɵeld"](2,0,null,null,0,"span",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,2,0,e.component.statusFor)}))}function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"cd-alert-panel",[["type","warning"]],null,null,null,r.b,r.a)),a["ɵdid"](1,114688,null,0,i.a,[s.a],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,4,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Displaying previously cached data"])),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,["."]))],(function(t,e){var n=e.component;t(e,1,0,"warning"),t(e,5,0,n.statusFor)}),null)}function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,[" for "])),(t()(),a["ɵeld"](2,0,null,null,0,"span",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,2,0,e.component.statusFor)}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"cd-alert-panel",[["type","error"]],null,null,null,r.b,r.a)),a["ɵdid"](1,114688,null,0,i.a,[s.a],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,4,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Could not load data"])),(t()(),a["ɵand"](16777216,null,null,1,null,h)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,[". Please check the cluster health."]))],(function(t,e){var n=e.component;t(e,1,0,"error"),t(e,5,0,n.statusFor)}),null)}function p(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](1,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,f)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.status===n.vcs.ValueNone),t(e,3,0,n.status===n.vcs.ValueStale),t(e,5,0,n.status===n.vcs.ValueException)}),null)}},CFvb:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a={LEFT:37,UP:38,RIGHT:39,DOWN:40,ENTER:13,SPACE:32,CONTEXT_MENU:32}},CNMR:function(t,e,n){"use strict";n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return s})),n.d(e,"c",(function(){return o}));var a=n("mrSG"),r=n("8Y7J"),i=n("hpHm");class s{constructor(){this.type="warning",this.dismissible=!1,this.dismissOnTimeout=void 0}}let u=(()=>{class t{constructor(t,e){this.changeDetection=e,this.type="warning",this.dismissible=!1,this.isOpen=!0,this.onClose=new r.EventEmitter,this.onClosed=new r.EventEmitter,this.classes="",this.dismissibleChange=new r.EventEmitter,Object.assign(this,t),this.dismissibleChange.subscribe(t=>{this.classes=this.dismissible?"alert-dismissible":"",this.changeDetection.markForCheck()})}ngOnInit(){this.dismissOnTimeout&&setTimeout(()=>this.close(),parseInt(this.dismissOnTimeout,10))}close(){this.isOpen&&(this.onClose.emit(this),this.isOpen=!1,this.changeDetection.markForCheck(),this.onClosed.emit(this))}}return Object(a.__decorate)([Object(i.a)(),Object(a.__metadata)("design:type",Object)],t.prototype,"dismissible",void 0),t})();class o{static forRoot(){return{ngModule:o,providers:[s]}}}},CNUl:function(t,e,n){var a=n("XhiP");t.exports=function(t){var e=new t.constructor(t.byteLength);return new a(e).set(new a(t)),e}},CUJ1:function(t,e,n){var a=n("xAZD"),r=n("J9xi"),i=n("kna9"),s=n("MOZO"),u=n("77kF"),o=n("tpUd"),l=n("LJNh"),d=n("mOnh"),c=l((function(t,e){var n={};if(null==t)return n;var l=!1;e=a(e,(function(e){return e=s(e,t),l||(l=e.length>1),e})),u(t,d(t),n),l&&(n=r(n,7,o));for(var c=e.length;c--;)i(n,e[c]);return n}));t.exports=c},Cfvw:function(t,e,n){"use strict";var a=n("HDdC"),r=n("SeVD"),i=n("quSY"),s=n("kJWO"),u=n("jZKg"),o=n("Lhse"),l=n("c2HN"),d=n("I55L");function c(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[s.a]}(t))return function(t,e){return new a.a(n=>{const a=new i.a;return a.add(e.schedule(()=>{const r=t[s.a]();a.add(r.subscribe({next(t){a.add(e.schedule(()=>n.next(t)))},error(t){a.add(e.schedule(()=>n.error(t)))},complete(){a.add(e.schedule(()=>n.complete()))}}))})),a})}(t,e);if(Object(l.a)(t))return function(t,e){return new a.a(n=>{const a=new i.a;return a.add(e.schedule(()=>t.then(t=>{a.add(e.schedule(()=>{n.next(t),a.add(e.schedule(()=>n.complete()))}))},t=>{a.add(e.schedule(()=>n.error(t)))}))),a})}(t,e);if(Object(d.a)(t))return Object(u.a)(t,e);if(function(t){return t&&"function"==typeof t[o.a]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new a.a(n=>{const a=new i.a;let r;return a.add(()=>{r&&"function"==typeof r.return&&r.return()}),a.add(e.schedule(()=>{r=t[o.a](),a.add(e.schedule((function(){if(n.closed)return;let t,e;try{const n=r.next();t=n.value,e=n.done}catch(a){return void n.error(a)}e?n.complete():(n.next(t),this.schedule())})))})),a})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}(t,e):t instanceof a.a?t:new a.a(Object(r.a)(t))}n.d(e,"a",(function(){return c}))},ChqD:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},CjzT:function(t,e,n){!function(t){"use strict";var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;t.defineLocale("es-do",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},CoRJ:function(t,e,n){!function(t){"use strict";t.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})}(n("wd/R"))},CoVI:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("2vnA"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(t,e){this.templateRef=t,this.viewContainer=e,this.templateBindings={}}return t.prototype.ngOnInit=function(){this.view=this.viewContainer.createEmbeddedView(this.templateRef),this.dispose&&this.dispose(),this.shouldDetach()&&this.view.detach(),this.autoDetect(this.view)},t.prototype.shouldDetach=function(){return this.treeMobxAutorun&&this.treeMobxAutorun.detach},t.prototype.autoDetect=function(t){this.dispose=Object(r.b)((function(){return t.detectChanges()}))},t.prototype.ngOnDestroy=function(){this.dispose&&this.dispose()},i([Object(a.Input)(),s("design:type",Object)],t.prototype,"treeMobxAutorun",void 0),i([Object(a.Directive)({selector:"[treeMobxAutorun]"}),s("design:paramtypes",[a.TemplateRef,a.ViewContainerRef])],t)}()},CqXF:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t){return e=>e.lift(new i(t))}class i{constructor(t){this.value=t}call(t,e){return e.subscribe(new s(t,this.value))}}class s extends a.a{constructor(t,e){super(t),this.value=e}_next(t){this.destination.next(this.value)}}},CslI:function(t,e,n){var a=n("LaC8"),r=n("+FhV"),i=n("x3F9"),s=Function.prototype.toString,u=Object.prototype.hasOwnProperty,o=s.call(Object);t.exports=function(t){if(!i(t)||"[object Object]"!=a(t))return!1;var e=r(t);if(null===e)return!0;var n=u.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&s.call(n)==o}},CwBR:function(t,e,n){var a=n("pMcL"),r=n("PHub"),i=n("0GLT"),s=a?a.isConcatSpreadable:void 0;t.exports=function(t){return i(t)||r(t)||!!(s&&t&&t[s])}},"D/JM":function(t,e,n){!function(t){"use strict";t.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),monthsParseExact:!0,weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",ss:"%d segundo",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},D0XW:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("3N8a");const r=new(n("IjjT").a)(a.a)},D4zM:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e){this.elementRef=t,this.renderer=e}ngOnInit(){this.renderer.setAttribute(this.elementRef.nativeElement,"tabindex","-1"),this.iElement=this.renderer.createElement("i"),this.renderer.addClass(this.iElement,"fa"),this.renderer.appendChild(this.elementRef.nativeElement,this.iElement),this.update()}getInputElement(){return document.getElementById(this.cdPasswordButton)}update(){const t=this.getInputElement();t&&"text"===t.type?(this.renderer.removeClass(this.iElement,"fa-eye"),this.renderer.addClass(this.iElement,"fa-eye-slash")):(this.renderer.removeClass(this.iElement,"fa-eye-slash"),this.renderer.addClass(this.iElement,"fa-eye"))}onClick(){const t=this.getInputElement();t.type="password"===t.type?"text":"password",this.update()}}},DH7j:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))()},"DKr+":function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={s:["thodde secondanim","thodde second"],ss:[t+" secondanim",t+" second"],m:["eka mintan","ek minute"],mm:[t+" mintanim",t+" mintam"],h:["eka voran","ek vor"],hh:[t+" voranim",t+" voram"],d:["eka disan","ek dis"],dd:[t+" disanim",t+" dis"],M:["eka mhoinean","ek mhoino"],MM:[t+" mhoineanim",t+" mhoine"],y:["eka vorsan","ek voros"],yy:[t+" vorsanim",t+" vorsam"]};return e?r[n][0]:r[n][1]}t.defineLocale("gom-latn",{months:"Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),monthsShort:"Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Aitar_Somar_Mongllar_Budvar_Brestar_Sukrar_Son'var".split("_"),weekdaysShort:"Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),weekdaysMin:"Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [vazta]",LTS:"A h:mm:ss [vazta]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [vazta]",LLLL:"dddd, MMMM[achea] Do, YYYY, A h:mm [vazta]",llll:"ddd, D MMM YYYY, A h:mm [vazta]"},calendar:{sameDay:"[Aiz] LT",nextDay:"[Faleam] LT",nextWeek:"[Ieta to] dddd[,] LT",lastDay:"[Kal] LT",lastWeek:"[Fatlo] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s adim",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(t,e){switch(e){case"D":return t+"er";default:case"M":case"Q":case"DDD":case"d":case"w":case"W":return t}},week:{dow:1,doy:4},meridiemParse:/rati|sokalli|donparam|sanje/,meridiemHour:function(t,e){return 12===t&&(t=0),"rati"===e?t<4?t:t+12:"sokalli"===e?t:"donparam"===e?t>12?t:t+12:"sanje"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"rati":t<12?"sokalli":t<16?"donparam":t<20?"sanje":"rati"}})}(n("wd/R"))},DNAf:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{constructor(t,e){this.customValidations={},this.i18n=e,this.empty=this.i18n("No items selected."),this.selectionLimit={tooltip:this.i18n("Deselect item to select again"),text:this.i18n("Selection limit reached")},this.filter=this.i18n("Filter tags"),this.add=this.i18n("Add badge"),this.noOptions=this.i18n("There are no items available."),a.merge(this,t)}}},DPsx:function(t,e,n){var a=n("g6v/"),r=n("0Dky"),i=n("zBJ4");t.exports=!a&&!r((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DSvg:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("vkgz"),r=n("aexS"),i=n("8Y7J"),s=n("IheW"),u=n("iInd"),o=n("pL04");let l=(()=>{class t{constructor(t,e,n){this.authStorageService=t,this.http=e,this.router=n}check(t){return this.http.post("api/auth/check",{token:t})}login(t){return this.http.post("api/auth",t).pipe(Object(a.a)(t=>{this.authStorageService.set(t.username,t.permissions,t.sso,t.pwdExpirationDate,t.pwdUpdateRequired)}))}logout(t=null){return this.http.post("api/auth/logout",null).subscribe(e=>{this.authStorageService.remove(),this.router.navigate(["/login"],{skipLocationChange:!0}),t&&t(),window.location.replace(e.redirect_url)})}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](r.a),i["ɵɵinject"](s.c),i["ɵɵinject"](u.m))},token:t,providedIn:o.a}),t})()},Dd78:function(t,e,n){var a=n("qG07"),r=n("aT2Y"),i=n("Gf4A");t.exports=function(){this.size=0,this.__data__={hash:new a,map:new(i||r),string:new a}}},Dkky:function(t,e,n){!function(t){"use strict";t.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(t,e){switch(e){default:case"M":case"Q":case"D":case"DDD":case"d":return t+(1===t?"er":"e");case"w":case"W":return t+(1===t?"re":"e")}},week:{dow:1,doy:4}})}(n("wd/R"))},Dmvi:function(t,e,n){!function(t){"use strict";t.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},DoHr:function(t,e,n){!function(t){"use strict";var e={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};t.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(t,n){switch(n){case"d":case"D":case"Do":case"DD":return t;default:if(0===t)return t+"'ıncı";var a=t%10;return t+(e[a]||e[t%100-a]||e[t>=100?100:null])}},week:{dow:1,doy:7}})}(n("wd/R"))},DqMs:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("IZUe"),s=n("MdoF"),u=n("CNMR");n("/NlG"),n("GiVz"),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return v}));var o=a["ɵcrt"]({encapsulation:0,styles:[[".alert-panel-icon[_ngcontent-%COMP%]{vertical-align:top;padding-right:.5em}.alert-panel-title[_ngcontent-%COMP%]{font-weight:700}"]],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"td",[["class","alert-panel-icon"],["rowspan","2"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](3,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpad"](4,1)],(function(t,e){var n=e.component,r=a["ɵinlineInterpolate"](2,"alert-",n.bootstrapClass," ",n.typeIcon,""),i=t(e,4,0,n.icons.large3x);t(e,3,0,r,i)}),null)}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"td",[["class","alert-panel-title"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.title)}))}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](3,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](5,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](6,0,null,null,3,"tr",[],null,null,null,null,null)),(t()(),a["ɵeld"](7,0,null,null,2,"td",[["class","alert-panel-text"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](9,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.showIcon),t(e,5,0,n.showTitle),t(e,9,0,a["ɵnov"](e.parent,6))}),null)}function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"td",[["class","alert-panel-icon"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"i",[["aria-hidden","true"]],[[8,"className",0]],null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,a["ɵinlineInterpolate"](2,"alert-",n.bootstrapClass," ",n.typeIcon,""))}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"td",[["class","alert-panel-title"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.title)}))}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function b(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,h)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](4,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](5,0,null,null,2,"td",[["class","alert-panel-text"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](7,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.showIcon),t(e,4,0,n.showTitle),t(e,7,0,a["ɵnov"](e.parent,6))}),null)}function m(t){return a["ɵvid"](0,[a["ɵncd"](null,0),(t()(),a["ɵand"](0,null,null,0))],null,null)}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,2,"button",[["autofocus",""],["class","btn btn-light tc_backButton"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.backAction.emit()&&a),a}),null,null)),a["ɵdid"](2,4210688,null,0,i.a,[a.ElementRef],{autofocus:[0,"autofocus"]},null),(t()(),a["ɵted"](-1,null,["Back"]))],(function(t,e){t(e,2,0,"")}),null)}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"alert",[],null,null,null,s.c,s.b)),a["ɵdid"](1,114688,null,0,u.a,[u.b,a.ChangeDetectorRef],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,3,"table",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,f)),a["ɵdid"](4,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["slim",2]],null,0,null,b)),(t()(),a["ɵand"](0,[["content",2]],null,0,null,m)),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](8,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,a["ɵinlineInterpolate"](1,"",n.bootstrapClass,"")),t(e,4,0,"normal"===n.size,a["ɵnov"](e,5)),t(e,8,0,n.backAction.observers.length>0)}),null)}},Dwqy:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("wd/R");class r{constructor(){}transform(t){return t?a(1e3*t).fromNow():"unknown"}}},DxQv:function(t,e,n){!function(t){"use strict";t.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"på dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",ss:"%d sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},Dzi0:function(t,e,n){!function(t){"use strict";t.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(t){return t},week:{dow:1,doy:4}})}(n("wd/R"))},"E+lV":function(t,e,n){!function(t){"use strict";var e={words:{ss:["секунда","секунде","секунди"],m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(t,e){return 1===t?e[0]:t>=2&&t<=4?e[1]:e[2]},translate:function(t,n,a){var r=e.words[a];return 1===a.length?n?r[0]:r[1]:t+" "+e.correctGrammaticalCase(t,r)}};t.defineLocale("sr-cyrl",{months:"јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар".split("_"),monthsShort:"јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.".split("_"),monthsParseExact:!0,weekdays:"недеља_понедељак_уторак_среда_четвртак_петак_субота".split("_"),weekdaysShort:"нед._пон._уто._сре._чет._пет._суб.".split("_"),weekdaysMin:"не_по_ут_ср_че_пе_су".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){return["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",ss:e.translate,m:e.translate,mm:e.translate,h:e.translate,hh:e.translate,d:"дан",dd:e.translate,M:"месец",MM:e.translate,y:"годину",yy:e.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},E2fk:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return"[INF]"===t?"info":"[WRN]"===t?"warn":"[ERR]"===t?"err":""}}},E9XD:function(t,e,n){"use strict";var a=n("I+eb"),r=n("1Y/n").left,i=n("pkCn"),s=n("rkAj"),u=i("reduce"),o=s("reduce",{1:0});a({target:"Array",proto:!0,forced:!u||!o},{reduce:function(t){return r(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},EApP:function(t,e,n){"use strict";n.d(e,"a",(function(){return _})),n.d(e,"b",(function(){return d})),n.d(e,"c",(function(){return v})),n.d(e,"d",(function(){return u})),n.d(e,"e",(function(){return S})),n.d(e,"f",(function(){return N})),n.d(e,"g",(function(){return o})),n.d(e,"h",(function(){return w})),n.d(e,"i",(function(){return T})),n.d(e,"j",(function(){return y}));var a=n("8Y7J"),r=n("XNiG"),i=n("cUpR"),s=n("SVse");let u=class{};class o{constructor(t,e,n,a,i,s){this.toastId=t,this.config=e,this.message=n,this.title=a,this.toastType=i,this.toastRef=s,this._onTap=new r.a,this._onAction=new r.a,this.toastRef.afterClosed().subscribe(()=>{this._onAction.complete(),this._onTap.complete()})}triggerTap(){this._onTap.next(),this.config.tapToDismiss&&this._onTap.complete()}onTap(){return this._onTap.asObservable()}triggerAction(t){this._onAction.next(t)}onAction(){return this._onAction.asObservable()}}const l={maxOpened:0,autoDismiss:!1,newestOnTop:!0,preventDuplicates:!1,countDuplicates:!1,resetTimeoutOnDuplicate:!1,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},closeButton:!1,disableTimeOut:!1,timeOut:5e3,extendedTimeOut:1e3,enableHtml:!1,progressBar:!1,toastClass:"ngx-toastr",positionClass:"toast-top-right",titleClass:"toast-title",messageClass:"toast-message",easing:"ease-in",easeTime:300,tapToDismiss:!0,onActivateTick:!1,progressAnimation:"decreasing"},d=new a.InjectionToken("ToastConfig");class c{constructor(t,e){this.component=t,this.injector=e}attach(t,e){return this._attachedHost=t,t.attach(this,e)}detach(){const t=this._attachedHost;if(t)return this._attachedHost=void 0,t.detach()}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class f extends class{attach(t,e){return this._attachedPortal=t,this.attachComponentPortal(t,e)}detach(){this._attachedPortal&&this._attachedPortal.setAttachedHost(),this._attachedPortal=void 0,this._disposeFn&&(this._disposeFn(),this._disposeFn=void 0)}setDisposeFn(t){this._disposeFn=t}}{constructor(t,e,n){super(),this._hostDomElement=t,this._componentFactoryResolver=e,this._appRef=n}attachComponentPortal(t,e){const n=this._componentFactoryResolver.resolveComponentFactory(t.component);let a;return a=n.create(t.injector),this._appRef.attachView(a.hostView),this.setDisposeFn(()=>{this._appRef.detachView(a.hostView),a.destroy()}),e?this._hostDomElement.insertBefore(this._getComponentRootNode(a),this._hostDomElement.firstChild):this._hostDomElement.appendChild(this._getComponentRootNode(a)),a}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}let h=(()=>{let t=class{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("overlay-container"),this._document.body.appendChild(t),this._containerElement=t}};return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t(Object(a["ɵɵinject"])(s.DOCUMENT))},token:t,providedIn:"root"}),t})();class g{constructor(t){this._portalHost=t}attach(t,e=!0){return this._portalHost.attach(t,e)}detach(){return this._portalHost.detach()}}let p=(()=>{let t=class{constructor(t,e,n,a){this._overlayContainer=t,this._componentFactoryResolver=e,this._appRef=n,this._document=a,this._paneElements=new Map}create(t,e){return this._createOverlayRef(this.getPaneElement(t,e))}getPaneElement(t="",e){return this._paneElements.get(e)||this._paneElements.set(e,{}),this._paneElements.get(e)[t]||(this._paneElements.get(e)[t]=this._createPaneElement(t,e)),this._paneElements.get(e)[t]}_createPaneElement(t,e){const n=this._document.createElement("div");return n.id="toast-container",n.classList.add(t),n.classList.add("toast-container"),e?e.getContainerElement().appendChild(n):this._overlayContainer.getContainerElement().appendChild(n),n}_createPortalHost(t){return new f(t,this._componentFactoryResolver,this._appRef)}_createOverlayRef(t){return new g(this._createPortalHost(t))}};return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t(Object(a["ɵɵinject"])(h),Object(a["ɵɵinject"])(a.ComponentFactoryResolver),Object(a["ɵɵinject"])(a.ApplicationRef),Object(a["ɵɵinject"])(s.DOCUMENT))},token:t,providedIn:"root"}),t})();class b{constructor(t){this._overlayRef=t,this.duplicatesCount=0,this._afterClosed=new r.a,this._activate=new r.a,this._manualClose=new r.a,this._resetTimeout=new r.a,this._countDuplicate=new r.a}manualClose(){this._manualClose.next(),this._manualClose.complete()}manualClosed(){return this._manualClose.asObservable()}timeoutReset(){return this._resetTimeout.asObservable()}countDuplicate(){return this._countDuplicate.asObservable()}close(){this._overlayRef.detach(),this._afterClosed.next(),this._manualClose.next(),this._afterClosed.complete(),this._manualClose.complete(),this._activate.complete(),this._resetTimeout.complete(),this._countDuplicate.complete()}afterClosed(){return this._afterClosed.asObservable()}isInactive(){return this._activate.isStopped}activate(){this._activate.next(),this._activate.complete()}afterActivate(){return this._activate.asObservable()}onDuplicate(t,e){t&&this._resetTimeout.next(),e&&this._countDuplicate.next(++this.duplicatesCount)}}class m{constructor(t,e){this._toastPackage=t,this._parentInjector=e}get(t,e,n){return t===o?this._toastPackage:this._parentInjector.get(t,e,n)}}let y=(()=>{let t=class{constructor(t,e,n,a,r){this.overlay=e,this._injector=n,this.sanitizer=a,this.ngZone=r,this.currentlyActive=0,this.toasts=[],this.index=0,this.toastrConfig=Object.assign({},t.default,t.config),t.config.iconClasses&&(this.toastrConfig.iconClasses=Object.assign({},t.default.iconClasses,t.config.iconClasses))}show(t,e,n={},a=""){return this._preBuildNotification(a,t,e,this.applyConfig(n))}success(t,e,n={}){return this._preBuildNotification(this.toastrConfig.iconClasses.success||"",t,e,this.applyConfig(n))}error(t,e,n={}){return this._preBuildNotification(this.toastrConfig.iconClasses.error||"",t,e,this.applyConfig(n))}info(t,e,n={}){return this._preBuildNotification(this.toastrConfig.iconClasses.info||"",t,e,this.applyConfig(n))}warning(t,e,n={}){return this._preBuildNotification(this.toastrConfig.iconClasses.warning||"",t,e,this.applyConfig(n))}clear(t){for(const e of this.toasts)if(void 0!==t){if(e.toastId===t)return void e.toastRef.manualClose()}else e.toastRef.manualClose()}remove(t){const e=this._findToast(t);if(!e)return!1;if(e.activeToast.toastRef.close(),this.toasts.splice(e.index,1),this.currentlyActive=this.currentlyActive-1,!this.toastrConfig.maxOpened||!this.toasts.length)return!1;if(this.currentlyActive<this.toastrConfig.maxOpened&&this.toasts[this.currentlyActive]){const t=this.toasts[this.currentlyActive].toastRef;t.isInactive()||(this.currentlyActive=this.currentlyActive+1,t.activate())}return!0}findDuplicate(t,e,n){for(const a of this.toasts)if(a.message===t)return a.toastRef.onDuplicate(e,n),a;return null}applyConfig(t={}){return Object.assign({},this.toastrConfig,t)}_findToast(t){for(let e=0;e<this.toasts.length;e++)if(this.toasts[e].toastId===t)return{index:e,activeToast:this.toasts[e]};return null}_preBuildNotification(t,e,n,a){return a.onActivateTick?this.ngZone.run(()=>this._buildNotification(t,e,n,a)):this._buildNotification(t,e,n,a)}_buildNotification(t,e,n,r){if(!r.toastComponent)throw new Error("toastComponent required");const i=this.findDuplicate(e,this.toastrConfig.resetTimeoutOnDuplicate&&r.timeOut>0,this.toastrConfig.countDuplicates);if(e&&this.toastrConfig.preventDuplicates&&null!==i)return i;this.previousToastMessage=e;let s=!1;this.toastrConfig.maxOpened&&this.currentlyActive>=this.toastrConfig.maxOpened&&(s=!0,this.toastrConfig.autoDismiss&&this.clear(this.toasts[0].toastId));const u=this.overlay.create(r.positionClass,this.overlayContainer);this.index=this.index+1;let l=e;e&&r.enableHtml&&(l=this.sanitizer.sanitize(a.SecurityContext.HTML,e));const d=new b(u),f=new o(this.index,r,l,n,t,d),h=new m(f,this._injector),g=new c(r.toastComponent,h),p=u.attach(g,this.toastrConfig.newestOnTop);d.componentInstance=p._component;const y={toastId:this.index,message:e||"",toastRef:d,onShown:d.afterActivate(),onHidden:d.afterClosed(),onTap:f.onTap(),onAction:f.onAction(),portal:p};return s||(this.currentlyActive=this.currentlyActive+1,setTimeout(()=>{y.toastRef.activate()})),this.toasts.push(y),y}};return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t(Object(a["ɵɵinject"])(d),Object(a["ɵɵinject"])(p),Object(a["ɵɵinject"])(a.INJECTOR),Object(a["ɵɵinject"])(i.b),Object(a["ɵɵinject"])(a.NgZone))},token:t,providedIn:"root"}),t})(),v=class{constructor(t,e,n){this.toastrService=t,this.toastPackage=e,this.ngZone=n,this.width=-1,this.toastClasses="",this.state={value:"inactive",params:{easeTime:this.toastPackage.config.easeTime,easing:"ease-in"}},this.message=e.message,this.title=e.title,this.options=e.config,this.originalTimeout=e.config.timeOut,this.toastClasses=`${e.toastType} ${e.config.toastClass}`,this.sub=e.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=e.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=e.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=e.toastRef.countDuplicate().subscribe(t=>{this.duplicatesCount=t})}get displayStyle(){if("inactive"===this.state.value)return"none"}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state=Object.assign({},this.state,{value:"active"}),!0!==this.options.disableTimeOut&&"timeOut"!==this.options.disableTimeOut&&this.options.timeOut&&(this.outsideTimeout(()=>this.remove(),this.options.timeOut),this.hideTime=(new Date).getTime()+this.options.timeOut,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}updateProgress(){if(0===this.width||100===this.width||!this.options.timeOut)return;const t=(new Date).getTime();this.width=(this.hideTime-t)/this.options.timeOut*100,"increasing"===this.options.progressAnimation&&(this.width=100-this.width),this.width<=0&&(this.width=0),this.width>=100&&(this.width=100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state=Object.assign({},this.state,{value:"active"}),this.outsideTimeout(()=>this.remove(),this.originalTimeout),this.options.timeOut=this.originalTimeout,this.hideTime=(new Date).getTime()+(this.options.timeOut||0),this.width=-1,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10)}remove(){"removed"!==this.state.value&&(clearTimeout(this.timeout),this.state=Object.assign({},this.state,{value:"removed"}),this.outsideTimeout(()=>this.toastrService.remove(this.toastPackage.toastId),+this.toastPackage.config.easeTime))}tapToast(){"removed"!==this.state.value&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){"removed"!==this.state.value&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width=0)}delayedHideToast(){!0!==this.options.disableTimeOut&&"extendedTimeOut"!==this.options.disableTimeOut&&0!==this.options.extendedTimeOut&&"removed"!==this.state.value&&(this.outsideTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=(new Date).getTime()+(this.options.timeOut||0),this.width=-1,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}outsideTimeout(t,e){this.ngZone?this.ngZone.runOutsideAngular(()=>this.timeout=setTimeout(()=>this.runInsideAngular(t),e)):this.timeout=setTimeout(()=>t(),e)}outsideInterval(t,e){this.ngZone?this.ngZone.runOutsideAngular(()=>this.intervalId=setInterval(()=>this.runInsideAngular(t),e)):this.intervalId=setInterval(()=>t(),e)}runInsideAngular(t){this.ngZone?this.ngZone.run(()=>t()):t()}};var x;const _=Object.assign({},l,{toastComponent:v});let T=x=class{static forRoot(t={}){return{ngModule:x,providers:[{provide:d,useValue:{default:_,config:t}}]}}},w=class{static forRoot(t={}){return{ngModule:T,providers:[{provide:d,useValue:{default:l,config:t}}]}}};var O;let S=class{constructor(t,e,n){this.toastrService=t,this.toastPackage=e,this.appRef=n,this.width=-1,this.toastClasses="",this.state="inactive",this.message=e.message,this.title=e.title,this.options=e.config,this.originalTimeout=e.config.timeOut,this.toastClasses=`${e.toastType} ${e.config.toastClass}`,this.sub=e.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=e.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=e.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=e.toastRef.countDuplicate().subscribe(t=>{this.duplicatesCount=t})}get displayStyle(){if("inactive"===this.state)return"none"}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state="active",!0!==this.options.disableTimeOut&&"timeOut"!==this.options.disableTimeOut&&this.options.timeOut&&(this.timeout=setTimeout(()=>{this.remove()},this.options.timeOut),this.hideTime=(new Date).getTime()+this.options.timeOut,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))),this.options.onActivateTick&&this.appRef.tick()}updateProgress(){if(0===this.width||100===this.width||!this.options.timeOut)return;const t=(new Date).getTime();this.width=(this.hideTime-t)/this.options.timeOut*100,"increasing"===this.options.progressAnimation&&(this.width=100-this.width),this.width<=0&&(this.width=0),this.width>=100&&(this.width=100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state="active",this.options.timeOut=this.originalTimeout,this.timeout=setTimeout(()=>this.remove(),this.originalTimeout),this.hideTime=(new Date).getTime()+(this.originalTimeout||0),this.width=-1,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))}remove(){"removed"!==this.state&&(clearTimeout(this.timeout),this.state="removed",this.timeout=setTimeout(()=>this.toastrService.remove(this.toastPackage.toastId)))}tapToast(){"removed"!==this.state&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){"removed"!==this.state&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width=0)}delayedHideToast(){!0!==this.options.disableTimeOut&&"extendedTimeOut"!==this.options.disableTimeOut&&0!==this.options.extendedTimeOut&&"removed"!==this.state&&(this.timeout=setTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=(new Date).getTime()+(this.options.timeOut||0),this.width=-1,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10)))}};const I=Object.assign({},l,{toastComponent:S});let N=O=class{static forRoot(t={}){return{ngModule:O,providers:[{provide:d,useValue:{default:I,config:t}}]}}}},EEJc:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("ajRT");n.d(e,"b",(function(){return i})),n.d(e,"c",(function(){return s})),n.d(e,"a",(function(){return o}));var i=a["ɵcrt"]({encapsulation:0,styles:[[".modal-header[_ngcontent-%COMP%]{border-bottom:1px solid #d1d1d1;background-color:#f5f5f5;border-radius:5px 5px 0 0}  .modal-footer{border-bottom:1px solid #d1d1d1;background-color:#f5f5f5;border-radius:0 0 5px 5px}  .modal-body{max-height:70vh;overflow-y:auto;overflow-x:hidden}"]],data:{}});function s(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"div",[["class","modal-header"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"h4",[["class","modal-title float-left"]],null,null,null,null,null)),a["ɵncd"](null,0),(t()(),a["ɵeld"](3,0,null,null,2,"button",[["aria-label","Close"],["class","close float-right"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.close()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["×"])),a["ɵncd"](null,1)],null,null)}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-modal",[],null,null,null,s,i)),a["ɵdid"](1,49152,null,0,r.a,[],null,null)],null,null)}var o=a["ɵccf"]("cd-modal",r.a,u,{modalRef:"modalRef"},{hide:"hide"},[".modal-title",".modal-content"])},ENF9:function(t,e,n){"use strict";var a,r=n("2oRo"),i=n("4syw"),s=n("8YOa"),u=n("bWFh"),o=n("rKzb"),l=n("hh1v"),d=n("afO8").enforce,c=n("f5p1"),f=!r.ActiveXObject&&"ActiveXObject"in r,h=Object.isExtensible,g=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},p=t.exports=u("WeakMap",g,o);if(c&&f){a=o.getConstructor(g,"WeakMap",!0),s.REQUIRED=!0;var b=p.prototype,m=b.delete,y=b.has,v=b.get,x=b.set;i(b,{delete:function(t){if(l(t)&&!h(t)){var e=d(this);return e.frozen||(e.frozen=new a),m.call(this,t)||e.frozen.delete(t)}return m.call(this,t)},has:function(t){if(l(t)&&!h(t)){var e=d(this);return e.frozen||(e.frozen=new a),y.call(this,t)||e.frozen.has(t)}return y.call(this,t)},get:function(t){if(l(t)&&!h(t)){var e=d(this);return e.frozen||(e.frozen=new a),y.call(this,t)?v.call(this,t):e.frozen.get(t)}return v.call(this,t)},set:function(t,e){if(l(t)&&!h(t)){var n=d(this);n.frozen||(n.frozen=new a),y.call(this,t)?x.call(this,t,e):n.frozen.set(t,e)}else x.call(this,t,e);return this}})}},EOgW:function(t,e,n){!function(t){"use strict";t.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.".split("_"),monthsParseExact:!0,weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา H:mm",LLLL:"วันddddที่ D MMMM YYYY เวลา H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(t){return"หลังเที่ยง"===t},meridiem:function(t,e,n){return t<12?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",ss:"%d วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}(n("wd/R"))},ES0t:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("8Y7J"),r=n("KOzp"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:0,styles:[".bs3.popover-top[_nghost-%COMP%] {\n      margin-bottom: 10px;\n    }\n    .bs3.popover.top[_nghost-%COMP%] > .arrow[_ngcontent-%COMP%] {\n      margin-left: -2px;\n    }\n    .bs3.popover.top[_nghost-%COMP%] {\n      margin-bottom: 10px;\n    }\n    .popover.bottom[_nghost-%COMP%] > .arrow[_ngcontent-%COMP%] {\n      margin-left: -4px;\n    }\n    .bs3.bs-popover-left[_nghost-%COMP%] {\n      margin-right: .5rem;\n    }\n    .bs3.bs-popover-right[_nghost-%COMP%]   .arrow[_ngcontent-%COMP%], .bs3.bs-popover-left[_nghost-%COMP%]   .arrow[_ngcontent-%COMP%]{\n      margin: .3rem 0;\n    }"],data:{}});function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"h3",[["class","popover-title popover-header"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.title)}))}function o(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,0,"div",[["class","popover-arrow arrow"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,u)),a["ɵdid"](2,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](3,0,null,null,1,"div",[["class","popover-content popover-body"]],null,null,null,null,null)),a["ɵncd"](null,0)],(function(t,e){t(e,2,0,e.component.title)}),null)}function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"popover-container",[["role","tooltip"],["style","display:block;"]],[[8,"className",0],[2,"show",null],[2,"bs3",null]],null,null,o,s)),a["ɵdid"](1,49152,null,0,r.b,[r.a],null,null)],null,(function(t,e){t(e,0,0,"popover in popover-"+a["ɵnov"](e,1).placement+" bs-popover-"+a["ɵnov"](e,1).placement+" "+a["ɵnov"](e,1).placement+" "+a["ɵnov"](e,1).containerClass,!a["ɵnov"](e,1).isBs3,a["ɵnov"](e,1).isBs3)}))}var d=a["ɵccf"]("popover-container",r.b,l,{placement:"placement",title:"title"},{},["*"])},EWmY:function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},EY2u:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var a=n("HDdC");const r=new a.a(t=>t.complete());function i(t){return t?function(t){return new a.a(e=>t.schedule(()=>e.complete()))}(t):r}},Eey9:function(t,e){t.exports=function(t,e,n){var a=-1,r=t.length;e<0&&(e=-e>r?0:r+e),(n=n>r?r:n)<0&&(n+=r),r=e>n?0:n-e>>>0,e>>>=0;for(var i=Array(r);++a<r;)i[a]=t[a+e];return i}},EgGo:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("SVse"),r=n("sne2");class i{constructor(t){this.base=t}static concatURLSegments(t){return t.reduce(a.Location.joinWithSlash)}static buildURL(t,...e){return i.concatURLSegments([...t?["/"]:[],...e])}getURL(t,e=!0,...n){return i.buildURL(e,this.base,t,...n)}getCreate(t=!0){return this.getURL(r.e.CREATE,t)}getCreateFrom(t,e=!0){return this.getURL(r.e.CREATE,e,t)}getDelete(t=!0){return this.getURL(r.e.DELETE,t)}getEdit(t,e=!0){return this.getURL(r.e.EDIT,e,t)}getUpdate(t,e=!0){return this.getURL(r.e.UPDATE,e,t)}getAdd(t=!0){return this.getURL(r.e.ADD,t)}getRemove(t=!0){return this.getURL(r.e.REMOVE,t)}getRecreate(t,e=!0){return this.getURL(r.e.RECREATE,e,t)}}},EiPl:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="de-DE">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Navigation umschalten</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Dashboard</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Cluster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hosts</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Verzeichnis</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitore</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Services</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSDs</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Konfiguration</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH-Zuordnung</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Manager-Module</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Protokolle</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Überwachung</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pools</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Block</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Images</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Spiegelung</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Dateisysteme</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Objektgateway</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemons</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Benutzer</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Buckets</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Daten \n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> für\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>werden abgerufen. Bitte warten...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Zuvor zwischengespeicherte Daten\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  für \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/> werden angezeigt.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Daten\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> für\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/> konnten nicht geladen werden.\n  Prüfen Sie die Clusterintegrität.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Benachrichtigungen löschen</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Benachrichtigungen entfernen</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Dauer:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>Es sind keine Benachrichtigungen verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Aufträge und Benachrichtigungen</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Sprache auswählen</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Bereichsdaten werden geladen...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Lesen Sie die\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zum\n  Konfigurieren und Aktivieren der Überwachungsfunktion.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Das Grafana-Dashboard ist nicht vorhanden. In der\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> wird beschrieben,\n  wie Grafana Dashboards hinzugefügt werden.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Grafana-Zeitauswahl</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Einstellungen für Zurücksetzungen</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Aktualisieren</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Entfernen Sie den aktuellen Konfigurationswert. Stattdessen wird der Standard-Konfigurationswert übernommen und verwendet.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu hoch! Er darf nicht größer als \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu niedrig! Er darf nicht kleiner als \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Zurück</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Das Passwort läuft in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>weniger als 1 \n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>Tag ab. Klicken Sie \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> hier \n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>, um es jetzt zu ändern.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Das Passwort läuft in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>Tag(en) ab. Klicken Sie \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> hier \n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>, um es jetzt zu ändern.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Das Modul "Orchestrator" ist nicht verfügbar. Lesen Sie die \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation \n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>zum Konfigurieren und Aktivieren dieses Moduls.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Daten konnten nicht geladen werden.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Filter löschen</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>ausgewählt</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>gefunden</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>insgesamt</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Name</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Beschreibung</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Detaillierte Beschreibung</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Standard</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Daemon-Standard</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Werte</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Standard --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>wahr</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>falsch</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu hoch! Er darf nicht größer als \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu niedrig! Er darf nicht kleiner als \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Speichern</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>CRUSH-Betrachter</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Laden...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Hostname</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Dies ist ein Pflichtfeld.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>Der ausgewählte Hostname wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Sind Sie sicher dass Sie die ausgewählten Einträge \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> möchten?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Sind Sie sicher dass Sie die ausgewählten \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> möchten?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Ja, ich bin sicher.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Abbrechen</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Schließen</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Liste mit Hosts</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Gesamtleistung</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Laufwerke</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Keine Einträge gefunden</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Clusterprotokolle</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Revisionsprotokoll</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priorität:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Schlüsselwort:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Datum:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datumsauswahl</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Zeitraum:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Konfiguration wird geladen...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Die Konfiguration konnte nicht geladen werden.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Manager-Modul bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Der eingegebene Wert ist kein gültiger UUID, z. B.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Der eingegebene Wert muss eine gültige IP-Adresse sein.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu hoch! Er muss kleiner als \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/> sein oder diesem Wert entsprechen.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu niedrig! Er muss größer als \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/> sein oder diesem Wert entsprechen.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Der eingegebene Wert muss eine Zahl sein.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Der eingegebene Wert muss eine Zahl oder Dezimalzahl sein.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Aktualisiere</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Status</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>Cluster-ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>Monmap geändert</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>Monmap-Epoche</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>erforderliche Verbindung</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>erforderliche Überwachung</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>In Quorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Nicht in Quorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>Vorschau der OSD-Erstellung</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> Laufwerke\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Löschen</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Geteilte Laufwerke</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL Slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>Wie viele OSDs pro WAL-Laufwerk.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Geben Sie 0 an, um das Orchestrator-Backend entscheiden zu lassen.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Der Wert sollte größer als oder gleich 0 sein</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB Slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>Wie viele OSDs pro DB-Laufwerk.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Funktionen</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Vorschau</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Clusterweite OSD-Flags</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Absenden</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Erweitert...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Erweiterte Konfigurationsoptionen</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD-Wiederherstellungspriorität</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorität</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Prioritätswerte anpassen</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Dies ist ein Pflichtfeld!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu hoch! Er darf nicht größer als \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu niedrig! Er darf nicht kleiner als \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Der Wert muss zwischen 0 und 1 liegen.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Neu gewichten</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Tief } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {tief } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSD-Liste</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Aktive Warnungen</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>Alle Warnungen</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Wählen Sie das zu vergleichende Attribut --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Wert</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Regulären Ausdruck verwenden</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Löschen</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Das Bearbeiten einer Stummschaltung löscht die Vorherige und legt eine neue Stummschaltung an.</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Ersteller</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Kommentar</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Startzeit</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>Wenn die Startzeit in der Vergangenheit liegt, wird die Erstellungszeit verwendet</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Dauer</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>Ende</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Integrität</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistiken</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Lesen Sie die \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zum\n  Konfigurieren und Aktivieren der Verwaltungsfunktion für NFS Ganesha.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Clients</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Jeder Client hat Zugriff</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Adressen</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Pflichtfeld</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Muss mindestens einen kommagetrennten Wert enthalten</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Beispielsweise:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Zugriffstyp</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Clients hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Kein Cluster verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Cluster auswählen --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Daemon hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Speicher-Back-End</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Keine Datenpools verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Speicher-Back-End auswählen --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Objektgatewaybenutzer</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Keine Benutzer verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Objektgatewaybenutzer auswählen --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS-Benutzer-ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- keine Clients verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- cephx-Client auswählen --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS-Name</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- Kein CephFS Dateisystem verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- CephFS Dateisystem auswählen --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Sicherheitsbezeichnung</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Sicherheitsbezeichnung aktivieren</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS-Pfad</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Pfad muss mit einem \'/\' beginnen und kann von einem Wort gefolgt werden</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Neues Verzeichnis wird erstellt</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Pfad</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Pfad darf nur ein einzelner \'/\' oder ein Wort sein</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Neuer Bucket wird erstellt</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS-Protokoll</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS-Tag</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternativer Zugriff für \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>-Mountpunkte (dürfen keinen führenden / enthalten)\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Clients können Unterverzeichnisse möglicherweise nicht mounten (d. h. wenn der Pfad = foo ist, kann der Client foo/baz möglicherweise nicht mounten).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Wenn unterschiedliche Tag-Optionen verwendet werden, wird derselbe Pfad möglicherweise mehrfach exportiert.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>Die Position dieses \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>-Exports\n                auf dem \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo-Dateisystem\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (muss eindeutig sein).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Wenn unterschiedliche Pseudo-Optionen verwendet werden, wird derselbe Pfad möglicherweise mehrfach exportiert.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Kein Zugriffstyp verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Zugriffstyp auswählen --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>Das NFS-Backend für das Objektgateway besitzt eine Reihe von\n Einschränkungen, die Schreibvorgänge von Anwendungen auf diese\n Freigaben ernsthaft beeinträchtigen. Bitte konsultieren Sie die\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> Dokumentation \n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> für weitere Informationen, bevor Sie den Schreibzugriff aktivieren.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Kein Squash verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Durchzuführende Benutzer-ID-Squashing-Art auswählen --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Transportprotokoll</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Altes Passwort</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>Das alte und neue Passwort müssen unterschiedlich sein.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>Neues Passwort</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Neues Passwort bestätigen</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Passwortbestätigung stimmt nicht mit dem neuen Passwort überein.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Bitte legen Sie ein neues Passwort fest.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>Sie werden anschließend auf die Login-Seite weitergeleitet.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Willkommen bei Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Benutzername ist erforderlich</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Passwort ist erforderlich</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Anmeldung</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Der Benutzer ist in Ceph leider nicht enthalten.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Kehren Sie zur \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Anmeldeseite\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zurück. Sie werden vom Identitätsanbieter abgemeldet, wenn Sie versuchen, sich erneut anzumelden.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Verboten</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Leider sind Sie nicht berechtigt, den gewünschten Inhalt anzuzeigen.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Leider konnte der gewünschte Inhalt nicht gefunden werden.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Weder Hostname noch OSD ID angegeben</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>bestanden</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>fehlgeschlagen</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Laufwerksinformationen</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>Keine SMART-Daten für dieses Laufwerk verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART-Daten werden geladen.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD-Konfiguration</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Entfernen Sie den lokalen Konfigurationswert. Stattdessen wird der übergeordnete Konfigurationswert übernommen und verwendet.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Der Mindestwert lautet 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Pool-Liste</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Der Name darf nur alphanumerische Zeichen, Bindestriche und Unterstriche enthalten.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Der ausgewählte Erasure-Coding-Profilname wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Laufwerksklasse</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plugin</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Datenblöcke (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Muss größer oder gleich 2 sein.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Datenblöcke für die Codierung (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Muss größer oder gleich 1 sein.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Dauerhaftigkeitsschätzung (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Standort (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Crush-Ausfalldomäne</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Crush-Standort</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Keine</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Technik</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Paketgröße</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Crush-Stamm</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Crush-Geräteklasse</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>beliebig</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Verzeichnis</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Name...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Der ausgewählte Poolname wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Pooltyp</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Pooltyp auswählen --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoskalierung</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Platzierungsgruppen</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Es wird mindestens eine Platzierungsgruppe benötigt.</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Ihr Cluster kann nicht so viele Platzierungsgruppen verarbeiten. Berechnen Sie die benötigte Anzahl an Platzierungsgruppen.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Hilfe zur Berechnung</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>Die aktuellen Einstellungen für die Platzierungsgruppen wurden für Sie berechnet.\n                    Stellen Sie vor dem Senden sicher, dass die Werte Ihren Anforderungen entsprechen.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Reproduzierte Größe</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>Die angegebene Größe liegt außerhalb des Bereichs. Gültige Werte liegen zwischen\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> und \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flags</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC-Überschreibungen</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Anwendungen</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Erasure-Coding-Profil</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Kein Erasure-Coding-Profil verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Erasure-Coding-Profil auswählen --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Crush-Regelsatz</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>Ein neuer CRUSH Regelsatz wird implizit erstellt.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>Keine Regeln vorhanden.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Crush-Regel auswählen --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Crush-Regel</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Crush-Schritte</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Komprimierung</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Modus</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algorithmus</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Kein Komprimierungsalgorithmus für Erasure-Coding verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Minimale Blobgröße</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>z. B. 128KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Wert sollte größer als 0 sein</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Wert sollte niedriger als die maximale Blobgröße sein</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Maximale Blobgröße</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>z. B. 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Wert sollte größer als die minimale Blobgröße sein</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Verhältnis</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Komprimierungsverhältnis</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Wert sollte zwischen 0,0 und 1,0 liegen</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Kontingente</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max. Bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Lassen Sie das Feld leer oder geben Sie 0 an, um dieses Quota zu deaktivieren.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>Ein gültiges Kontingent sollte größer als 0 sein.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>z. B. 10GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max. Objekte</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>Der Wert sollte größer als oder gleich 0 sein</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Details</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Leistungsdetails</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Details zu den Cache-Ebenen</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Bootstrap-Token erstellen</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site-Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>Mindestens ein Pool ist erforderlich.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Erzeugen</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Erzeugtes Token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Bootstrap-Token importieren</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Richtung</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>Der Token ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Site-Namen bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site-Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Image in Papierkorb verschieben</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Schutz läuft ab am</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NICHT GESCHÜTZT</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Falsches Datumsformat. Verwenden Sie "TT.MM.JJJJ HH:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>Schutz ist bereits abgelaufen. Wählen Sie ein künftiges Datum aus oder lassen Sie es leer.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Image verschieben</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Muss grösser oder gleich \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Muss kleiner oder gleich \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Übersicht</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Ziele</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Ermittlungsauthentifizierung</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Benutzer</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Benutzernamen müssen zwischen 8 und 64 Zeichen lang sein und\n              dürfen nur Buchstaben, \'.\', \'@\', \'-\', \'_\' oder \':\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Passwort</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Gemeinsamer Benutzer</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Gemeinsames Passwort</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Lesen Sie die\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zum\n  Konfigurieren und Aktivieren der Verwaltungsfunktion für iSCSI-Ziele.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Verfügbare Informationen:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>iSCSI-Ziele nicht verfügbar</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Ermittlungsauthentifizierung</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Nur für RBD-Images verfügbar, bei denen \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> aktiviert ist\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Datenpool</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Erstellt</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Größe</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objekte</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Objektgröße</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Bereitgestellt</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>n. v.</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Bereitgestellt gesamt</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Striping-Einheit</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Striping-Anzahl</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Übergeordnet</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Präfix für Blockname</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Reihenfolge</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Snapshots</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Image</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Diese Einstellung überschreibt den globalen Wert</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Dies ist der globale Wert. Kein Wert für diese Option wurde für dieses Image festgelegt.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' und \'@\' sind nicht zulässig.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Keine rbd-Pools verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Pool auswählen --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- Keine Namensräume verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Namensraum auswählen --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Dedizierten Datenpool verwenden</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Datenpool</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Dedizierter Pool zur Speicherung von RBD-Objektdaten.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Sie müssen die Größe erhöhen.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Erweitert</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Striping</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Stripe-Einheit</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Stripe-Einheit auswählen --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Dies ist ein Pflichtfeld, da eine Stripe-Anzahl definiert wurde!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>Die Stripe-Einheit ist größer als die Objektgröße.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Stripe-Anzahl</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Dies ist ein Pflichtfeld, da eine Stripe-Einheit definiert wurde!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Die Stripe-Anzahl muss größer als 0 sein.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Namensraum anlegen</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namensraum existiert bereits.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Sie sind dabei, ein Rollback durchzuführen</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Papierkorb bereinigen</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Alle</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pool:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Poolname...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Image wiederherstellen</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Zum Wiederherstellen</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>Neuen Namen des Images eingeben und klicken</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Neuer Name</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Abgelaufen am</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Geschützt bis</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>Dieses Image ist geschützt bis \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSI-Topologie</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Konfigurieren</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Eine Änderung dieser Parameter von ihren Standardwerten ist in der Regel nicht erforderlich.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Bezeichner</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Einstellungen</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Bestätigen</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Erweiterte Einstellungen</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>Ziel-IQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN hat ein fehlerhaftes Muster.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>Eine IQN hat die folgende Notation \n\'iqn.$jahr-$monat.$umkehradresse:$definierterName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Zum Beispiel: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Weitere Informationen</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Erweiterte Einstellungen bei diesem Ziel wurden geändert.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portale</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Portal hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>Es sind mindestens \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> Gateways erforderlich.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Einstellungen bei diesem Image wurden geändert.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Image hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL-Authentifizierung</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Initiatoren</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Initiator</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>Client-IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>Initiator-IQN muss eindeutig sein.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Benutzernamen müssen zwischen 8 und 64 Zeichen lang sein und\n                        dürfen nur Buchstaben, \'.\', \'@\', \'-\', \'_\' oder \':\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>Der Initiator gehört zu einer Gruppe. Images werden in der Gruppe konfiguriert.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Keine Elemente hinzugefügt.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Initiator hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Gruppen</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Gruppe</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Gruppe hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namensräume</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Papierkorb</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Probleme</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Wird synchronisiert</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Fertig</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Spiegelungsmodus für Pool bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Wählen Sie zum Bearbeiten des Spiegelungsmodus für den Pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> einen neuen Modus aus der Liste aus und klicken Sie auf \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Aktualisieren\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Vor dem Deaktivieren der Spiegelung müssen Peer-Cluster entfernt werden.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  Peer für Poolspiegelung\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Bearbeiten} other {Hinzufügen} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Clustername</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Der Clustername ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX-ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX-ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>Die CephX ID ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Adressen der Monitore</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Kommagetrennte Adressen...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Die Anrede ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64-codierter Schlüssel...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephX-Schlüssel muss base64-codiert sein.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Leistungsindikatoren nicht verfügbar</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Lesen Sie die \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zum\n  Konfigurieren und Aktivieren der Verwaltungsfunktion für das Objektgateway.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Liste der Daemons</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Leistungsindikatoren</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Bucket-Daten werden geladen...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Der Wert ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Der ausgewählte Name wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Inhaber</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Benutzer auswählen --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Aktiviert</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Indextyp</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Platzierungsregel</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Marker</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Maximum für Marker</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Version</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Masterversion</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Änderungszeit</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Zonengruppe</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Bucket-Quote</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Maximale Größe</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Unbegrenzt</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Maximale Objekte</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Benutzername</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Benutzername auswählen --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Schlüssel automatisch generieren</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Zugriffsschlüssel</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Geheimer Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Vollständiger Name</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>E-Mail-Adresse</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Angehalten</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>System</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Maximale Buckets</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Unterbenutzer</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Befähigungen</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Benutzerquote</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Anzeigen</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Typ</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Typ auswählen --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Berechtigung</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Berechtigung auswählen --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Unterbenutzer</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>Die ausgewählte Unterbenutzer-ID wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>lesen, schreiben</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>voll</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Swift-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Geheimnis automatisch generieren</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Benutzerdaten werden geladen...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Die Benutzerdaten konnten nicht geladen werden.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>Die ausgewählte Benutzer-ID wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Dies ist keine gültige E-Mail-Adresse.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>Die ausgewählte E-Mail-Adresse wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Max. Buckets</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Deaktiviert</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Benutzerdefiniert</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Keine Unterbenutzer vorhanden.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Keine Schlüssel vorhanden.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Keine Befähigungen vorhanden.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Unbegrenzte Größe</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Max. Größe</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Unbegrenzte Objekte</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Max. Objekte</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Der eingegebene Wert muss &gt;=0 sein.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Beschreibung...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Berechtigungen</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Rollen</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Passwort bestätigen</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Passwortbestätigung stimmt nicht mit dem Passwort überein.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Ablaufdatum des Passworts</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Ablaufdatum des Passworts...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>E-Mail-Adresse</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Ungültige E-Mail-Adresse.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>Benutzer muss das Passwort bei der nächsten Anmeldung ändern</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Sie sind dabei, die Lese-/Aktualisierungsberechtigungen für Benutzer von Ihrem eigenen Benutzer zu entfernen.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Wenn Sie den Vorgang fortsetzen, können Sie Benutzerrollen nicht mehr hinzufügen oder entfernen.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Möchten Sie den Vorgang wirklich fortsetzen?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Hilfe</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Dokumentation</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Über</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Dashboard-Einstellungen</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Benutzerverwaltung</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Angemeldeter Benutzer</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Angemeldet als\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Passwort ändern</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Abmelden</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Attribute (OSD-Zuordnung)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadaten nicht verfügbar</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadaten</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Laufwerkszustand</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Leistungsindikator</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogramm nicht verfügbar: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Schreiben</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Lesen</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogramm</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>Hostname nicht gefunden.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Aktuelle Werte</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min.</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Max.</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Quelle</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Ebene</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Kann zur Laufzeit aktualisiert werden (bearbeitbar)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tags</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Auflistungswerte</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Siehe auch</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Clusterstatus</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Manager-Daemons</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Objektgateways</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Metadatenserver</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI-Gateways</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>Client-IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Clientdurchsatz</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Client-Lese-/Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Wiederherstellungsdurchsatz</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Scrub</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Leistung</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Rohkapazität</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Platzierungsgruppen pro OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Platzierungsgruppenstatus</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Kapazität</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> Weitere Details finden Sie in den \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Protokollen\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Ränge</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS Leistungsindikatoren</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Verzeichnisse</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Aktuell</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target> Ermittlungsauthentifizierung aktualisiert</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Keine Portale verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Keine Images verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Keine Images verfügbar. Fügen Sie dem Ziel ein Image hinzu.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Keine Initiatoren verfügen. Fügen Sie dem Ziel einen Initiator hinzu.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Ziel</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Zustand</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Bytes für Lesevorgang</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Bytes für Schreibvorgang</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O seit</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instanz</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problem</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Fortschritt</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Bearbeitungsmodus</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Peer hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Peer bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Peer löschen</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># lokal</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># remote</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>Peer spiegeln</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Umfassende Vereinfachung</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Schichtung</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Exklusive Sperre</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Objektzuordnung (erfordert exklusive Sperre)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Journaling (erfordert exklusive Sperre)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namensraum</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Images insgesamt</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namensraum enthält Images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NICHT GESCHÜTZT</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Rollback für RBD-Snapshot</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Rollback</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBD-Snapshot</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Gelöscht am</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>Typ</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>Zustand</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>Version</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>Stamm</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Standby-Daemons</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Rang</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Aktivität</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inodes</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Nutzung</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Aktualisiert</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>Der Wert kann zur Laufzeit aktualisiert werden.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Daemons/Clients rufen diesen Wert nicht aus der\n      Datenbank \'monitor config\' ab. Es ist nicht zulässig, diese Option über \'ceph config\n      set ...\' festzulegen. Diese Option sollte über \'ceph.conf\' oder an der\n      Befehlszeile konfiguriert werden.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>Die Option wird nur während des Daemon-Starts wirksam.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>Die Option wirkt sich nur auf die Cluster-Erstellung aus.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>Die Option wirkt sich nur auf die Daemon-Erstellung aus.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Aktualisierte Konfigurationsoption \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Service</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Aktueller Wert</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Bearbeitbar</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Laufwerkspfad</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identifiziere Laufwerk \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifikation von \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' auf Host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\' gestartet\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Aktivieren</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Deaktivieren</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Verbindung wird erneut hergestellt, bitte warten...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Öffentliche Adresse</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Offene Sitzungen</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Kein In-Vorgang</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>OSDs, die zuvor als \'out\' markiert wurden, werden beim Start nicht wieder markiert</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Kein Out-Vorgang</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSDs werden nach dem konfigurierten Intervall nicht automatisch als \'out\' markiert</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Kein Up-Vorgang</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSDs dürfen nicht gestartet werden</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Kein Down-Vorgang</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>OSD-Fehlerberichte werden ignoriert, sodass die Monitore die OSDs nicht als ausgefallen markieren</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pause</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Hält Lese- und Schreibvorgänge an</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Kein Scrub</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Scrubbing ist deaktiviert</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Kein umfassender Scrub</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Umfassendes Scrubbing ist deaktiviert</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Kein Abgleich</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Abgleich der Platzierungsgruppen ist ausgesetzt</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Keine Wiederherstellung</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Wiederherstellung der Platzierungsgruppen ist ausgesetzt</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Bitweise Sortierung</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Bitweise Sortierung verwenden</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Bereinigte Snapdirs</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSDs besitzen konvertierte Snapsets</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Löschvorgänge bei Wiederherstellungen</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Bei der Wiederherstellung anstelle des Peerings durchgeführte Löschvorgänge</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Hardlimit für Platzierungsgruppen-Protokoll</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Legt ein Hardlimit für die Platzierungsgruppen-Protokolllänge fest</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Aktualisierte OSD-Flags</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>aus</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>ein</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>ausgefallen</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Markieren</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD verloren</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>markierter Verlust</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Bereinigen</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>bereinigt</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>vernichten</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>vernichtet</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>löschen</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Wiederherstellungspriorität</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG Scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>Platzierungsgruppen</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Bytes für Lesevorgang</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Bytes für Schreibvorgang</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/> markieren\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/> markieren\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG Scrub-Optionen</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Aktualisierte PG Scrub-Optionen</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Max. Abgleiche</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Wiederherstellung, max. aktiv</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Wiederherstellung, max. - einzelner Start</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Wiederherstellung - Inaktivität</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Auftrag</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Schweregrad</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Gestartet</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attributname</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regulärer Ausdruck</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Bitte fügen Sie Ihren Prometheus-Host zur Dashboard-Konfiguration hinzu und aktualisieren die Seite</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Erstellt von</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Endet</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Verwendet</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Verf.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Bereinigen</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>In Bearbeitung</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Warnung</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Unbekannt</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>aktiv</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>keine Dateisysteme</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>aktiv</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>Standby</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n. v.</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>aktiver Daemon</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>Quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Der NFS Ganesha-Dienst ist nicht konfiguriert.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS-Benutzer</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFS-Dateisystem</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(aus globaler Konfiguration übernommen)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>aus globaler Konfiguration übernommen</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Durchzuführende Benutzer-ID-Squashing-Art auswählen --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Keine Daemons verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS-Export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC-Profil</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Cache-Modus</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Min. Alter für Vertreibung</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Min. Alter für Leerung</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Max. Bytes für Ziel</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Max. Objekte für Ziel</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Keine Anwendungen hinzugefügt</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Anwendungslimit erreicht</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Ein Pool kann nur bis zu vier Anwendungsdefinitionen aufweisen.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Zulässige Zeichen \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Maximale Länge beträgt 128 Zeichen</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Anwendungen filtern oder hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Anwendung hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>Erasure-Coding-Profil</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Größe des Replikats</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Letzte Änderung</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Erasure-Coding-Profil</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Crush-Regelsatz</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Das Löschen des Pools ist durch die Konfigurationsoption mon_allow_pool_delete deaktiviert.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>Bucket</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>Buckets</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>Benutzer</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>Unterbenutzer</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>Benutzer</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Laufwerks-ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Laufwerksname</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Bereich</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Lesen</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Erstelle</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>Rolle</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Rolle \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\' erstellt\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Rolle \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\' aktualisiert\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Systemrolle</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Rolle \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\' gelöscht\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Benutzer aktualisieren</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Fortfahren</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Sie wurden automatisch abgemeldet, da Ihre Rollen geändert wurden.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>Passwort</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Benutzerpasswort aktualisiert</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Jedes Objekt wird in Datenblöcke aufgeteilt und jeweils auf einem anderen OSD gespeichert.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Berechnen Sie Codierungsdatenblöcke für jedes Objekt und speichern Sie sie auf unterschiedlichen OSDs.\n      Die Anzahl der Codierungsdatenblöcke entspricht auch der Anzahl der OSDs, die ausfallen können, ohne dass Daten verloren gehen.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Das jerasure-Modul ist das allgemeinste und flexibelste Modul\n          und fungiert auch als der Standard für Ceph-Pools mit Löschcodierung.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Die flexiblere Technik ist \'reed_sol_van :\', wobei es ausreicht, k\n          und m festzulegen. Die Technik \'cauchy_good\' kann schneller sein. Sie müssen jedoch die Paketgröße sorgfältig\n          auswählen. Sämtliche \'reed_sol_r6_op\'-, \'liberation\'-, \'blaum_roth\'- und \'liber8tion\'-Vorgänge sind dahingehend RAID6-Entsprechungen,\n          dass sie nur mit \'m=2\' konfiguriert werden können.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>Die Codierung wird jeweils für Pakete auf Bytes-Größe vorgenommen.\n          Die Auswahl der richtigen Paketgröße ist schwierig.\n          In der Jerasure-Dokumentation sind ausführliche Informationen zu diesem Thema enthalten.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Bei Verwendung des Jerasure-Moduls, wenn ein Objekt mit Löschcodierung auf mehreren OSDs gespeichert ist,\n          müssen alle anderen OSDs gelesen werden, um die verloren gegangenen Daten eines OSDs wiederherzustellen.\n          Wenn jerasure beispielsweise mit \'k=8\' und \'m=4\' konfiguriert ist,\n          müssen bei Verlust eines OSDs zum Reparieren die elf anderen gelesen werden.\n\n          Das lrc-Löschcode-Modul erstellt lokale Paritätsdatenblöcke, um die Wiederherstellung mit weniger OSDs auszuführen.\n          Wenn lrc beispielsweise mit \'k=8\', \'m=4\' und \'l=4\' konfiguriert ist, wird ein zusätzlicher Paritätsdatenblock für jeweils vier OSDs erstellt.\n          Geht ein einzelnes OSD verloren, kann es mit nur vier OSDs anstelle\n          von elf wiederhergestellt werden.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Gruppieren Sie die Codierungs- und Datenblöcke in Sätze entsprechend dem Speicherort.\n          Beispielsweise werden für \'k=4\' und \'m=2\', wenn der Speicherort \'3\' entspricht, zwei Dreiergruppen erstellt.\n          Jeder Satz kann wiederhergestellt werden, ohne dass Datenblöcke aus einem anderen Satz gelesen werden.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Der Typ des Crush-Buckets, in dem jeder durch l definierte Satz von Datenblöcken gespeichert wird.\n          Wenn er beispielsweise auf \'rack\' festgelegt ist, wird jede Gruppe an l-Datenblöcken in einem anderen Rack platziert.\n          Er wird zum Erstellen eines CRUSH-Regelschritts verwendet, beispielsweise für einen Schritt zum Auswählen des Racks.\n          Wenn er nicht festgelegt ist, wird keine solche Gruppierung vorgenommen.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Das isa-Modul kapselt die ISA-Bibliothek und wird nur auf Intel-Prozessoren ausgeführt.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Das ISA-Modul wird in zwei Reed Solomon-Formularen bereitgestellt.\n          Wenn \'reed_sol_van\' festgelegt ist, entspricht dies Vandermonde. Ist \'cauchy\' festgelegt, entspricht dies \'Cauchy\'.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Das shec-Modul kapselt die SHEC-Mehrfachbibliothek.\n          Dadurch kann ceph Daten effizienter wiederherstellen als Reed Solomon-Codes.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Die Anzahl der Paritätsdatenblöcke, von denen jeder jeden Datenblock in seinem Berechnungsbereich enthält.\n          Die Anzahl wird als eine Dauerhaftigkeitsschätzung verwendet. Wenn beispielsweise \'c=2\' vorliegt,\n          können 2 OSDs ausfallen, ohne dass Daten verloren gehen.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Der Name des für den ersten Schritt der CRUSH-Regel verwendeten Crush-Buckets.\n      Beispielsweise \'step take default\'.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Stellen Sie sicher, dass sich keine zwei Datenblöcke in einem Bucket mit derselben Ausfalldomäne befinden.\n      Wenn die Ausfalldomäne beispielsweise als Host fungiert, werden keine zwei Datenblöcke auf demselben Host gespeichert.\n      Er wird zum Erstellen eines CRUSH-Regelschritts verwendet, beispielsweise \'step chooseleaf host\'.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Schränken Sie mithilfe der Klassennamen für Crush-Geräte in der CRUSH-Zuordnung die Platzierung\n      auf Geräte einer bestimmten Klasse (z. B. SSD oder HDD) ein.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Legen Sie den Verzeichnisnamen fest, über den das Löschcode-Modul geladen wird.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Lässt alle Vorgänge zu</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Lässt nur Vorgänge zu, die den Server nicht ändern</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Lässt weder Lese- noch Schreibvorgänge zu, jedoch alle anderen Vorgänge</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Lässt Lese-/Schreibvorgänge und andere Vorgänge nicht zu, die Dateiattribute oder Verzeichnisinhalte ändern</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Lässt überhaupt keinen Zugriff zu</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Priorität auswählen --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Niedrig</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Hoch</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informationen</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Letzte 5 Minuten</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Letzte 15 Minuten</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Letzte 30 Minuten</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Letzte Stunde (Standard)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Letzte 3 Stunden</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Letzte 6 Stunden</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Letzte 12 Stunden</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Letzte 24 Stunden</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Gestern</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Heute</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Heute bisher</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Vorgestern</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Letzte 2 Tage</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Dieser Tag letzte Woche</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Vorwoche</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Diese Woche</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Diese Woche bisher</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Letzte 7 Tage</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Vormonat</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Dieser Monat</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Dieser Monat bisher</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Letzte 30 Tage</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Letzte 90 Tage</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Letzte 6 Monate</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Letztes Jahr</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Vorjahr</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Dieses Jahr</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Dieses Jahr bisher</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Letzte 2 Jahre</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Letzte 5 Jahre</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Keine Elemente ausgewählt.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Elementauswahl zum erneuten Auswählen aufheben</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Auswahllimit erreicht</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Tags filtern</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Badge hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Keine Elemente verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Entfernen</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Klonen</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Kopieren</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Umfassender Scrub</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Vernichten</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Vereinfachen</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Als ausgefallen markieren</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Mit Befehl \'In\' markieren</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Als verloren markieren</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Mit Befehl \'Out\' markieren</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Schützen</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Umbenennen</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Wiederherstellen</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>In Papierkorb verschieben</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Schutz aufheben</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Ändern</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Gelöscht</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Hinzugefügt</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Entfernt</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Bearbeitet</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Abgebrochen</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Geklont</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Kopiert</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Vereinfacht</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Geschützt</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Bereinigt</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Umbenannt</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Wiederhergestellt</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Rollback wurde ausgeführt</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>In den Papierkorb verschoben</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Schutz aufgehoben</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Abgelaufen</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Ja</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Nein</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Erforderliche Regeln für Passwörter:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>keine aktiven Warnungen</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 aktive Warnung</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> aktive Warnungen\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> mit \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Quality of Service</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS-Limit</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Das gewünschte Limit der E/A-Bytes pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS-Limit</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Das gewünschte Limit der E/A-Vorgänge pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>BPS-Limit für Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Das gewünschte Limit der gelesenen Bytes pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>IOPS-Limit für Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Das gewünschte Limit für Lesevorgänge pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>BPS-Limit für Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Das gewünschte Limit der geschriebenen Bytes pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>IOPS-Limit für Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Das gewünschte Limit für Schreibvorgänge pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS-Block</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Das gewünschte Blocklimit der E/A-Bytes.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS-Block</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Das gewünschte Blocklimit der E/A-Vorgänge.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>BPS-Block für Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Das gewünschte Blocklimit der gelesenen Bytes.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>IOPS-Block für Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Das gewünschte Blocklimit der Lesevorgänge.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>BPS-Block für Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Das gewünschte Blocklimit der geschriebenen Bytes.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>IOPS-Block für Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Das gewünschte Blocklimit der Schreibvorgänge.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Wird ausgeführt</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>ausführen</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Ausgeführt</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>Unbekannte Aufgabe</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Wird erstellt</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>erstellen</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Wird aktualisiert</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>aktualisieren</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Wird gelöscht</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD-Snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>Spiegelungsmodus für Pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>Alle Dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name wird bereits von \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/> verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name wird bereits von \n          <x id="INTERPOLATION" equiv-text="{{name}}"/> verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name wird bereits von \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> enthält Snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Wird geklont</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>klonen</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot von \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> muss geschützt sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Wird kopiert</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>kopieren</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Wird vereinfacht</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>vereinfachen</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name wird bereits von \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Der Schutz von \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> kann aufgrund untergeordneter Images nicht aufgehoben werden.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> kann nicht gelöscht werden, da es geschützt ist.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Rollback wird ausgeführt</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>Rollback</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Wird verschoben</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>verschieben</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Verschoben</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>Image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' in Papierkorb verschieben\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Image konnte nicht gefunden werden.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Wird wiederhergestellt</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>wiederherstellen</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>Image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' in \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\' verschieben\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image-Name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' wird bereits verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>Image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Wird bereinigt</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>bereinigen</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>alle Pools</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>Images von \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Spiegelung kann nicht deaktiviert werden, da sie einen Peer enthält.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>Pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>Erasure-Coding-Profil \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>Ziel \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},Ekvf:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("mrSG"),r=n("IheW"),i=n("lJxs"),s=n("xTzq"),u=n("o8EM"),o=n("8Y7J"),l=n("pL04");let d=(()=>{let t=class{constructor(t,e){this.http=t,this.rbdConfigurationService=e,this.apiPath="api/pool"}create(t){return this.http.post(this.apiPath,t,{observe:"response"})}update(t){let e;return t.hasOwnProperty("srcpool")?(e=t.srcpool,delete t.srcpool):(e=t.pool,delete t.pool),this.http.put(`${this.apiPath}/${encodeURIComponent(e)}`,t,{observe:"response"})}delete(t){return this.http.delete(`${this.apiPath}/${t}`,{observe:"response"})}get(t){return this.http.get(`${this.apiPath}/${t}`)}getList(){return this.http.get(this.apiPath+"?stats=true")}getConfiguration(t){return this.http.get(`${this.apiPath}/${t}/configuration`).pipe(Object(i.a)(t=>t.map(t=>Object.assign(t,this.rbdConfigurationService.getOptionByName(t.name)))))}getInfo(){return this.http.get(`ui-${this.apiPath}/info`)}list(t=[]){const e=t.join(",");return this.http.get(`${this.apiPath}?attrs=${e}`).toPromise().then(t=>t)}};return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](r.c),o["ɵɵinject"](u.a))},token:t,providedIn:l.a}),t=a.__decorate([s.a,a.__metadata("design:paramtypes",[r.c,u.a])],t),t})()},EmSq:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("8Y7J"),r=n("LvDl");n("Fgil"),n("aXbf");class i{constructor(t,e,n,r){this.elementRef=t,this.control=e,this.dimlessBinaryPipe=n,this.formatter=r,this.ngModelChange=new a.EventEmitter,this.el=this.elementRef.nativeElement}ngOnInit(){this.setValue(this.el.value)}setValue(t){/^[\d.]+$/.test(t)&&(t+=this.defaultUnit||"m");const e=this.formatter.toBytes(t),n=this.round(e);this.el.value=this.dimlessBinaryPipe.transform(n),null!==e?(this.ngModelChange.emit(this.el.value),this.control.control.setValue(this.el.value)):(this.ngModelChange.emit(null),this.control.control.setValue(null))}round(t){if(null!==t&&0!==t){if(!r.isUndefined(this.minBytes)&&t<this.minBytes)return this.minBytes;if(!r.isUndefined(this.maxBytes)&&t>this.maxBytes)return this.maxBytes;if(!r.isUndefined(this.roundPower)){const e=Math.round(Math.log(t)/Math.log(this.roundPower));return Math.pow(this.roundPower,e)}}return t}onBlur(t){this.setValue(t)}}},"F+uO":function(t,e,n){var a={"./messages.cs.xlf":"ViD7","./messages.de-DE.xlf":"EiPl","./messages.es-ES.xlf":"yt+r","./messages.fr-FR.xlf":"V5SL","./messages.id-ID.xlf":"jqst","./messages.it-IT.xlf":"8j5A","./messages.ja-JP.xlf":"bN42","./messages.ko-KR.xlf":"3+CB","./messages.pl-PL.xlf":"SPu7","./messages.pt-BR.xlf":"+Wg/","./messages.zh-CN.xlf":"AiMb","./messages.zh-TW.xlf":"HjS5"};function r(t){var e=i(t);return n(e)}function i(t){if(!n.o(a,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return a[t]}r.keys=function(){return Object.keys(a)},r.resolve=i,t.exports=r,r.id="F+uO"},F8JR:function(t,e,n){"use strict";var a=n("tycR").forEach,r=n("pkCn"),i=n("rkAj"),s=r("forEach"),u=i("forEach");t.exports=s&&u?[].forEach:function(t){return a(this,t,arguments.length>1?arguments[1]:void 0)}},FE24:function(t,e,n){"use strict";n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return f})),n.d(e,"c",(function(){return h})),n.d(e,"d",(function(){return g})),n.d(e,"e",(function(){return b})),n.d(e,"f",(function(){return d})),n.d(e,"g",(function(){return p}));var a=n("8Y7J"),r=n("pLZG"),i=n("z/SZ"),s=n("hpHm"),u=n("GS7A"),o=n("2uy1");class l{constructor(){this.autoClose=!0,this.insideClick=!1,this.isAnimated=!1}}class d{constructor(){this.direction="down",this.isOpenChange=new a.EventEmitter,this.isDisabledChange=new a.EventEmitter,this.toggleClick=new a.EventEmitter,this.dropdownMenu=new Promise(t=>{this.resolveDropdownMenu=t})}}const c=[Object(u.h)({height:0,overflow:"hidden"}),Object(u.e)("220ms cubic-bezier(0, 0, 0.2, 1)",Object(u.h)({height:"*",overflow:"hidden"}))];class f{constructor(t,e,n,a,r){this._state=t,this.cd=e,this._renderer=n,this._element=a,this.isOpen=!1,this._factoryDropDownAnimation=r.build(c),this._subscription=t.isOpenChange.subscribe(t=>{this.isOpen=t;const e=this._element.nativeElement.querySelector(".dropdown-menu");this._renderer.addClass(this._element.nativeElement.querySelector("div"),"open"),e&&!Object(s.d)()&&(this._renderer.addClass(e,"show"),e.classList.contains("dropdown-menu-right")&&(this._renderer.setStyle(e,"left","auto"),this._renderer.setStyle(e,"right","0")),"up"===this.direction&&(this._renderer.setStyle(e,"top","auto"),this._renderer.setStyle(e,"transform","translateY(-101%)"))),e&&this._state.isAnimated&&this._factoryDropDownAnimation.create(e).play(),this.cd.markForCheck(),this.cd.detectChanges()})}get direction(){return this._state.direction}_contains(t){return this._element.nativeElement.contains(t)}ngOnDestroy(){this._subscription.unsubscribe()}}class h{constructor(t,e,n,a,r,i,s){this._elementRef=t,this._renderer=e,this._viewContainerRef=n,this._cis=a,this._state=r,this._config=i,this._isInlineOpen=!1,this._subscriptions=[],this._isInited=!1,this._state.autoClose=this._config.autoClose,this._state.insideClick=this._config.insideClick,this._state.isAnimated=this._config.isAnimated,this._factoryDropDownAnimation=s.build(c),this._dropdown=this._cis.createLoader(this._elementRef,this._viewContainerRef,this._renderer).provide({provide:d,useValue:this._state}),this.onShown=this._dropdown.onShown,this.onHidden=this._dropdown.onHidden,this.isOpenChange=this._state.isOpenChange}set autoClose(t){this._state.autoClose=t}get autoClose(){return this._state.autoClose}set isAnimated(t){this._state.isAnimated=t}get isAnimated(){return this._state.isAnimated}set insideClick(t){this._state.insideClick=t}get insideClick(){return this._state.insideClick}set isDisabled(t){this._isDisabled=t,this._state.isDisabledChange.emit(t),t&&this.hide()}get isDisabled(){return this._isDisabled}get isOpen(){return this._showInline?this._isInlineOpen:this._dropdown.isShown}set isOpen(t){t?this.show():this.hide()}get isBs4(){return!Object(s.d)()}get _showInline(){return!this.container}ngOnInit(){this._isInited||(this._isInited=!0,this._dropdown.listen({outsideClick:!1,triggers:this.triggers,show:()=>this.show()}),this._subscriptions.push(this._state.toggleClick.subscribe(t=>this.toggle(t))),this._subscriptions.push(this._state.isDisabledChange.pipe(Object(r.a)(t=>t)).subscribe(t=>this.hide())))}show(){if(!this.isOpen&&!this.isDisabled)return this._showInline?(this._inlinedMenu||this._state.dropdownMenu.then(t=>{this._dropdown.attachInline(t.viewContainer,t.templateRef),this._inlinedMenu=this._dropdown._inlineViewRef,this.addBs4Polyfills(),this._renderer.addClass(this._inlinedMenu.rootNodes[0].parentNode,"open"),this.playAnimation()}).catch(),this.addBs4Polyfills(),this._isInlineOpen=!0,this.onShown.emit(!0),this._state.isOpenChange.emit(!0),void this.playAnimation()):void this._state.dropdownMenu.then(t=>{const e=this.dropup||void 0!==this.dropup&&this.dropup;this._state.direction=e?"up":"down";const n=this.placement||(e?"top start":"bottom start");this._dropdown.attach(f).to(this.container).position({attachment:n}).show({content:t.templateRef,placement:n}),this._state.isOpenChange.emit(!0)}).catch()}hide(){this.isOpen&&(this._showInline?(this.removeShowClass(),this.removeDropupStyles(),this._isInlineOpen=!1,this.onHidden.emit(!0)):this._dropdown.hide(),this._state.isOpenChange.emit(!1))}toggle(t){return this.isOpen||!t?this.hide():this.show()}_contains(t){return this._elementRef.nativeElement.contains(t.target)||this._dropdown.instance&&this._dropdown.instance._contains(t.target)}ngOnDestroy(){for(const t of this._subscriptions)t.unsubscribe();this._dropdown.dispose()}addBs4Polyfills(){Object(s.d)()||(this.addShowClass(),this.checkRightAlignment(),this.addDropupStyles())}playAnimation(){this._state.isAnimated&&this._inlinedMenu&&this._factoryDropDownAnimation.create(this._inlinedMenu.rootNodes[0]).play()}addShowClass(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&this._renderer.addClass(this._inlinedMenu.rootNodes[0],"show")}removeShowClass(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&this._renderer.removeClass(this._inlinedMenu.rootNodes[0],"show")}checkRightAlignment(){if(this._inlinedMenu&&this._inlinedMenu.rootNodes[0]){const t=this._inlinedMenu.rootNodes[0].classList.contains("dropdown-menu-right");this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"left",t?"auto":"0"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"right",t?"0":"auto")}}addDropupStyles(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&(this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"top",this.dropup?"auto":"100%"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"transform",this.dropup?"translateY(-101%)":"translateY(0)"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"bottom","auto"))}removeDropupStyles(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&(this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"top"),this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"transform"),this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"bottom"))}}class g{constructor(t,e,n){t.resolveDropdownMenu({templateRef:n,viewContainer:e})}}class p{constructor(t,e,n,a,r){this._changeDetectorRef=t,this._dropdown=e,this._element=n,this._renderer=a,this._state=r,this.isDisabled=null,this._subscriptions=[],this._subscriptions.push(this._state.isOpenChange.subscribe(t=>{this.isOpen=t,t?(this._documentClickListener=this._renderer.listen("document","click",t=>{!this._state.autoClose||2===t.button||this._element.nativeElement.contains(t.target)||this._state.insideClick&&this._dropdown._contains(t)||(this._state.toggleClick.emit(!1),this._changeDetectorRef.detectChanges())}),this._escKeyUpListener=this._renderer.listen(this._element.nativeElement,"keyup.esc",()=>{this._state.autoClose&&(this._state.toggleClick.emit(!1),this._changeDetectorRef.detectChanges())})):(this._documentClickListener(),this._escKeyUpListener())})),this._subscriptions.push(this._state.isDisabledChange.subscribe(t=>this.isDisabled=t||null))}onClick(){this.isDisabled||this._state.toggleClick.emit(!0)}ngOnDestroy(){this._documentClickListener&&this._documentClickListener(),this._escKeyUpListener&&this._escKeyUpListener();for(const t of this._subscriptions)t.unsubscribe()}}class b{static forRoot(t){return{ngModule:b,providers:[i.a,o.a,d,{provide:l,useValue:t||{autoClose:!0,insideClick:!1}}]}}}},FFMq:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return t.join(", ")}}},FGWQ:function(t,e,n){var a=n("pmjB"),r=n("p33Q"),i=n("im1V");t.exports=function(t){return i(t)?a(t):r(t)}},FMNM:function(t,e,n){var a=n("xrYK"),r=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==a(t))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(t,e)}},FSuO:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=n("LvDl"),i=n("x38r");n("a0VL"),n("uIqm");class s{constructor(t){this.datePipe=t,this.autoReload=5e3,this.renderObjects=!1,this.appendParentKey=!0,this.hideEmpty=!1,this.hideKeys=[],this.columns=[],this.fetchData=new a.EventEmitter}ngOnInit(){this.columns=[{prop:"key",flexGrow:1,cellTransformation:i.a.bold},{prop:"value",flexGrow:3}],this.customCss&&(this.columns[1].cellTransformation=i.a.classAdding),this.fetchData.observers.length>0&&this.table.fetchData.subscribe(()=>{this.fetchData.emit()}),this.useData()}ngOnChanges(){this.useData()}useData(){if(!this.data)return;let t=this.makePairs(this.data);this.hideKeys&&(t=t.filter(t=>!this.hideKeys.includes(t.key))),this.tableData=t}makePairs(t){let e=[];if(t){if(r.isArray(t))e=this.makePairsFromArray(t);else{if(!r.isObject(t))throw new Error("Wrong data format");e=this.makePairsFromObject(t)}return e=e.map(t=>(t.value=this.convertValue(t.value),t)).filter(t=>null!==t.value),r.sortBy(this.renderObjects?this.insertFlattenObjects(e):e,"key")}}makePairsFromArray(t){let e=[];const n=t[0];if(r.isArray(n)){if(2!==n.length)throw new Error(`Array contains too many elements (${n.length}). Needs to be of type [string, any][]`);e=t.map(t=>({key:t[0],value:t[1]}))}else r.isObject(n)&&(e=r.has(n,"key")&&r.has(n,"value")?[...t]:t.reduce((t,e)=>t.concat(this.makePairsFromObject(e)),e));return e}makePairsFromObject(t){return Object.keys(t).map(e=>({key:e,value:t[e]}))}insertFlattenObjects(t){return r.flattenDeep(t.map(t=>{const e=t.value,n=r.isObject(e);return!n||r.isEmpty(e)?(n&&(t.value=""),t):this.splitItemIntoItems(t)}))}splitItemIntoItems(t){return this.makePairs(t.value).map(e=>(this.appendParentKey&&(e.key=t.key+" "+e.key),e))}convertValue(t){if(r.isArray(t)){if(r.isEmpty(t)&&this.hideEmpty)return null;t=t.map(t=>r.isObject(t)?JSON.stringify(t):t).join(", ")}else if(r.isObject(t)){if(this.hideEmpty&&r.isEmpty(t)||!this.renderObjects)return null}else if(r.isString(t)){if(""===t&&this.hideEmpty)return null;this.isDate(t)&&(t=this.datePipe.transform(t)||t)}return t}isDate(t){const e="\\d{2}[ -:.TZ]";return t.match(new RegExp("^\\d{4}[ -:.TZ]"+e+e+e+e+e+"\\d*Z?$"))}}},FZtP:function(t,e,n){var a=n("2oRo"),r=n("/byt"),i=n("F8JR"),s=n("kRJp");for(var u in r){var o=a[u],l=o&&o.prototype;if(l&&l.forEach!==i)try{s(l,"forEach",i)}catch(d){l.forEach=i}}},Fgil:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("aXbf");class a{constructor(t){this.formatter=t}transform(t){return this.formatter.format_number(t,1024,["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"])}}},Fwy9:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("gk6K"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(t,e,n,r){this.el=t,this.renderer=e,this.treeDraggedElement=n,this.ngZone=r,this.allowDragoverStyling=!0,this.onDropCallback=new a.EventEmitter,this.onDragOverCallback=new a.EventEmitter,this.onDragLeaveCallback=new a.EventEmitter,this.onDragEnterCallback=new a.EventEmitter,this._allowDrop=function(t,e){return!0},this.dragOverEventHandler=this.onDragOver.bind(this),this.dragEnterEventHandler=this.onDragEnter.bind(this),this.dragLeaveEventHandler=this.onDragLeave.bind(this)}return Object.defineProperty(t.prototype,"treeAllowDrop",{set:function(t){this._allowDrop=t instanceof Function?t:function(e,n){return t}},enumerable:!0,configurable:!0}),t.prototype.allowDrop=function(t){return this._allowDrop(this.treeDraggedElement.get(),t)},t.prototype.ngAfterViewInit=function(){var t=this,e=this.el.nativeElement;this.ngZone.runOutsideAngular((function(){e.addEventListener("dragover",t.dragOverEventHandler),e.addEventListener("dragenter",t.dragEnterEventHandler),e.addEventListener("dragleave",t.dragLeaveEventHandler)}))},t.prototype.ngOnDestroy=function(){var t=this.el.nativeElement;t.removeEventListener("dragover",this.dragOverEventHandler),t.removeEventListener("dragenter",this.dragEnterEventHandler),t.removeEventListener("dragleave",this.dragLeaveEventHandler)},t.prototype.onDragOver=function(t){if(!this.allowDrop(t))return this.allowDragoverStyling?this.addDisabledClass():void 0;this.onDragOverCallback.emit({event:t,element:this.treeDraggedElement.get()}),t.preventDefault(),this.allowDragoverStyling&&this.addClass()},t.prototype.onDragEnter=function(t){this.allowDrop(t)&&(t.preventDefault(),this.onDragEnterCallback.emit({event:t,element:this.treeDraggedElement.get()}))},t.prototype.onDragLeave=function(t){if(!this.allowDrop(t))return this.allowDragoverStyling?this.removeDisabledClass():void 0;this.onDragLeaveCallback.emit({event:t,element:this.treeDraggedElement.get()}),this.allowDragoverStyling&&this.removeClass()},t.prototype.onDrop=function(t){this.allowDrop(t)&&(t.preventDefault(),this.onDropCallback.emit({event:t,element:this.treeDraggedElement.get()}),this.allowDragoverStyling&&this.removeClass(),this.treeDraggedElement.set(null))},t.prototype.addClass=function(){this.renderer.addClass(this.el.nativeElement,"is-dragging-over")},t.prototype.removeClass=function(){this.renderer.removeClass(this.el.nativeElement,"is-dragging-over")},t.prototype.addDisabledClass=function(){this.renderer.addClass(this.el.nativeElement,"is-dragging-over-disabled")},t.prototype.removeDisabledClass=function(){this.renderer.removeClass(this.el.nativeElement,"is-dragging-over-disabled")},i([Object(a.Input)(),s("design:type",Object)],t.prototype,"allowDragoverStyling",void 0),i([Object(a.Output)("treeDrop"),s("design:type",Object)],t.prototype,"onDropCallback",void 0),i([Object(a.Output)("treeDropDragOver"),s("design:type",Object)],t.prototype,"onDragOverCallback",void 0),i([Object(a.Output)("treeDropDragLeave"),s("design:type",Object)],t.prototype,"onDragLeaveCallback",void 0),i([Object(a.Output)("treeDropDragEnter"),s("design:type",Object)],t.prototype,"onDragEnterCallback",void 0),i([Object(a.Input)(),s("design:type",Object),s("design:paramtypes",[Object])],t.prototype,"treeAllowDrop",null),i([Object(a.HostListener)("drop",["$event"]),s("design:type",Function),s("design:paramtypes",[Object]),s("design:returntype",void 0)],t.prototype,"onDrop",null),i([Object(a.Directive)({selector:"[treeDrop]"}),s("design:paramtypes",[a.ElementRef,a.Renderer2,r.a,a.NgZone])],t)}()},"G+Rx":function(t,e,n){var a=n("0GbY");t.exports=a("document","documentElement")},G0Uy:function(t,e,n){!function(t){"use strict";t.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ".split("_"),weekdays:"Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt".split("_"),weekdaysShort:"Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib".split("_"),weekdaysMin:"Ħa_Tn_Tl_Er_Ħa_Ġi_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Illum fil-]LT",nextDay:"[Għada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-bieraħ fil-]LT",lastWeek:"dddd [li għadda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f’ %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"siegħa",hh:"%d siegħat",d:"ġurnata",dd:"%d ġranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},"G1/K":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this.i18n=t}transform(t){return""===t?this.i18n("n/a"):t}}},G1I9:function(t,e,n){"use strict";n.d(e,"b",(function(){return i})),n.d(e,"a",(function(){return s}));var a=n("oxzT"),r=n("mtw6");class i{constructor(t=r.a.info,e,n,a,i="Ceph"){this.type=t,this.title=e,this.message=n,this.options=a,this.application=i,this.isFinishedTask=!1,this.classes={Ceph:"ceph-icon",Prometheus:"prometheus-icon"},this.applicationClass=this.classes[this.application]}}class s extends i{constructor(t=new i){super(t.type,t.title,t.message,t.options,t.application),this.config=t,this.textClasses=["text-danger","text-info","text-success"],this.iconClasses=[a.a.warning,a.a.info,a.a.check],delete this.config,this.timestamp=(new Date).toJSON(),this.iconClass=this.iconClasses[this.type],this.textClass=this.textClasses[this.type],this.isFinishedTask=t.isFinishedTask}}},G3dZ:function(t,e,n){var a=n("77kF"),r=n("Z2DA");t.exports=function(t,e){return a(t,r(t),e)}},G3uG:function(t,e){var n=Date.now;t.exports=function(t){var e=0,a=0;return function(){var r=n(),i=16-(r-a);if(a=r,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}},"G6Q+":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},GS7A:function(t,e,n){"use strict";n.d(e,"b",(function(){return a})),n.d(e,"c",(function(){return r})),n.d(e,"a",(function(){return i})),n.d(e,"e",(function(){return u})),n.d(e,"f",(function(){return o})),n.d(e,"g",(function(){return d})),n.d(e,"h",(function(){return l})),n.d(e,"i",(function(){return c})),n.d(e,"j",(function(){return s})),n.d(e,"d",(function(){return h})),n.d(e,"k",(function(){return g})),n.d(e,"l",(function(){return p}));class a{}class r{}const i="*";function s(t,e){return{type:7,name:t,definitions:e,options:{}}}function u(t,e=null){return{type:4,styles:e,timings:t}}function o(t,e=null){return{type:2,steps:t,options:e}}function l(t){return{type:6,styles:t,offset:null}}function d(t,e,n){return{type:0,name:t,styles:e,options:n}}function c(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function f(t){Promise.resolve(null).then(t)}class h{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this.parentPlayer=null,this.totalTime=t+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){f(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){}setPosition(t){}getPosition(){return 0}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class g{constructor(t){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;let e=0,n=0,a=0;const r=this.players.length;0==r?f(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==r&&this._onFinish()}),t.onDestroy(()=>{++n==r&&this._onDestroy()}),t.onStart(()=>{++a==r&&this._onStart()})}),this.totalTime=this.players.reduce((t,e)=>Math.max(t,e.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this.players.forEach(t=>t.init())}onStart(t){this._onStartFns.push(t)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(t=>t()),this._onStartFns=[])}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(t=>t.play())}pause(){this.players.forEach(t=>t.pause())}restart(){this.players.forEach(t=>t.restart())}finish(){this._onFinish(),this.players.forEach(t=>t.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(t=>t.destroy()),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){this.players.forEach(t=>t.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(t){const e=t*this.totalTime;this.players.forEach(t=>{const n=t.totalTime?Math.min(1,e/t.totalTime):1;t.setPosition(n)})}getPosition(){let t=0;return this.players.forEach(e=>{const n=e.getPosition();t=Math.min(n,t)}),t}beforeDestroy(){this.players.forEach(t=>{t.beforeDestroy&&t.beforeDestroy()})}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}const p="!"},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},Gf4A:function(t,e,n){var a=n("KFwg")(n("Wa4q"),"Map");t.exports=a},GgAd:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(){this.isBinary=!0,this.decimals=0}ngOnChanges(){this.usedPercentage=this.total>0?this.used/this.total*100:0,this.freePercentage=100-this.usedPercentage}}},GiVz:function(t,e,n){"use strict";n.d(e,"a",(function(){return We})),n.d(e,"b",(function(){return Ue}));var a=n("SVse"),r=n("8Y7J");class i{constructor(t,e){this.value=t,this.sourceSpan=e}visit(t,e){return t.visitText(this,e)}}class s{constructor(t,e,n,a,r){this.switchValue=t,this.type=e,this.cases=n,this.sourceSpan=a,this.switchValueSourceSpan=r}visit(t,e){return t.visitExpansion(this,e)}}class u{constructor(t,e,n,a,r){this.value=t,this.expression=e,this.sourceSpan=n,this.valueSourceSpan=a,this.expSourceSpan=r}visit(t,e){return t.visitExpansionCase(this,e)}}class o{constructor(t,e,n,a){this.name=t,this.value=e,this.sourceSpan=n,this.valueSpan=a}visit(t,e){return t.visitAttribute(this,e)}}class l{constructor(t,e,n,a,r=null,i=null){this.name=t,this.attrs=e,this.children=n,this.sourceSpan=a,this.startSourceSpan=r,this.endSourceSpan=i}visit(t,e){return t.visitElement(this,e)}}class d{constructor(t,e){this.value=t,this.sourceSpan=e}visit(t,e){return t.visitComment(this,e)}}function c(t,e,n=null){const a=[],r=t.visit?e=>t.visit(e,n)||e.visit(t,n):e=>e.visit(t,n);return e.forEach(t=>{const e=r(t);e&&a.push(e)}),a}class f{constructor(t,e,n,a,r,i){this.nodes=t,this.placeholders=e,this.placeholderToMessage=n,this.meaning=a,this.description=r,this.id=i,this.sources=t.length?[{filePath:t[0].sourceSpan.start.file.url,startLine:t[0].sourceSpan.start.line+1,startCol:t[0].sourceSpan.start.col+1,endLine:t[t.length-1].sourceSpan.end.line+1,endCol:t[0].sourceSpan.start.col+1}]:[]}}class h{constructor(t,e){this.value=t,this.sourceSpan=e}visit(t,e){return t.visitText(this,e)}}class g{constructor(t,e){this.children=t,this.sourceSpan=e}visit(t,e){return t.visitContainer(this,e)}}class p{constructor(t,e,n,a){this.expression=t,this.type=e,this.cases=n,this.sourceSpan=a}visit(t,e){return t.visitIcu(this,e)}}class b{constructor(t,e,n,a,r,i,s){this.tag=t,this.attrs=e,this.startName=n,this.closeName=a,this.children=r,this.isVoid=i,this.sourceSpan=s}visit(t,e){return t.visitTagPlaceholder(this,e)}}class m{constructor(t,e,n){this.value=t,this.name=e,this.sourceSpan=n}visit(t,e){return t.visitPlaceholder(this,e)}}class y{constructor(t,e,n){this.value=t,this.name=e,this.sourceSpan=n}visit(t,e){return t.visitIcuPlaceholder(this,e)}}class v{constructor(t,e,n,a){this.file=t,this.offset=e,this.line=n,this.col=a}toString(){return null!=this.offset?`${this.line}:${this.col}`:""}getContext(t,e){const n=this.file.content;let a=this.offset;if(null!=a){a>n.length-1&&(a=n.length-1);let r=a,i=0,s=0;for(;i<t&&a>0&&(a--,i++,"\n"!==n[a]||++s!==e););for(i=0,s=0;i<t&&r<n.length-1&&(r++,i++,"\n"!==n[r]||++s!==e););return{before:n.substring(a,this.offset),after:n.substring(this.offset,r+1)}}return null}}class x{constructor(t,e=""){this.content=t,this.url=e}}class _{constructor(t,e,n=null){this.start=t,this.end=e,this.details=n}toString(){return this.start.file.content.substring(this.start.offset,this.end.offset)}}const T=function(){var t={WARNING:0,ERROR:1};return t[t.WARNING]="WARNING",t[t.ERROR]="ERROR",t}();class w{constructor(t,e,n=T.ERROR){this.span=t,this.msg=e,this.level=n}contextualMessage(){const t=this.span.start.getContext(100,3);return t?` ("${t.before}[${T[this.level]} ->]${t.after}")`:""}toString(){const t=this.span.details?", "+this.span.details:"";return`${this.msg}${this.contextualMessage()}: ${this.span.start}${t}`}}class O extends w{constructor(t,e){super(t,e)}}function S(t){return t.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}class I{constructor(t,e){this.start=t,this.end=e}}const N=new I("{{","}}");function C(t){return t>=9&&t<=32||160===t}function R(t){return 48<=t&&t<=57}function A(t){return t>=97&&t<=122||t>=65&&t<=90}const k=function(){var t={RAW_TEXT:0,ESCAPABLE_RAW_TEXT:1,PARSABLE_DATA:2};return t[t.RAW_TEXT]="RAW_TEXT",t[t.ESCAPABLE_RAW_TEXT]="ESCAPABLE_RAW_TEXT",t[t.PARSABLE_DATA]="PARSABLE_DATA",t}();function E(t){if(":"!==t[0])return[null,t];const e=t.indexOf(":",1);if(-1===e)throw new Error(`Unsupported format "${t}" expecting ":namespace:name"`);return[t.slice(1,e),t.slice(e+1)]}function L(t){return null===t?null:E(t)[0]}function D(t,e){return t?`:${t}:${e}`:e}const P={Aacute:"Á",aacute:"á",Acirc:"Â",acirc:"â",acute:"´",AElig:"Æ",aelig:"æ",Agrave:"À",agrave:"à",alefsym:"ℵ",Alpha:"Α",alpha:"α",amp:"&",and:"∧",ang:"∠",apos:"'",Aring:"Å",aring:"å",asymp:"≈",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",bdquo:"„",Beta:"Β",beta:"β",brvbar:"¦",bull:"•",cap:"∩",Ccedil:"Ç",ccedil:"ç",cedil:"¸",cent:"¢",Chi:"Χ",chi:"χ",circ:"ˆ",clubs:"♣",cong:"≅",copy:"©",crarr:"↵",cup:"∪",curren:"¤",dagger:"†",Dagger:"‡",darr:"↓",dArr:"⇓",deg:"°",Delta:"Δ",delta:"δ",diams:"♦",divide:"÷",Eacute:"É",eacute:"é",Ecirc:"Ê",ecirc:"ê",Egrave:"È",egrave:"è",empty:"∅",emsp:" ",ensp:" ",Epsilon:"Ε",epsilon:"ε",equiv:"≡",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",exist:"∃",fnof:"ƒ",forall:"∀",frac12:"½",frac14:"¼",frac34:"¾",frasl:"⁄",Gamma:"Γ",gamma:"γ",ge:"≥",gt:">",harr:"↔",hArr:"⇔",hearts:"♥",hellip:"…",Iacute:"Í",iacute:"í",Icirc:"Î",icirc:"î",iexcl:"¡",Igrave:"Ì",igrave:"ì",image:"ℑ",infin:"∞",int:"∫",Iota:"Ι",iota:"ι",iquest:"¿",isin:"∈",Iuml:"Ï",iuml:"ï",Kappa:"Κ",kappa:"κ",Lambda:"Λ",lambda:"λ",lang:"⟨",laquo:"«",larr:"←",lArr:"⇐",lceil:"⌈",ldquo:"“",le:"≤",lfloor:"⌊",lowast:"∗",loz:"◊",lrm:"‎",lsaquo:"‹",lsquo:"‘",lt:"<",macr:"¯",mdash:"—",micro:"µ",middot:"·",minus:"−",Mu:"Μ",mu:"μ",nabla:"∇",nbsp:" ",ndash:"–",ne:"≠",ni:"∋",not:"¬",notin:"∉",nsub:"⊄",Ntilde:"Ñ",ntilde:"ñ",Nu:"Ν",nu:"ν",Oacute:"Ó",oacute:"ó",Ocirc:"Ô",ocirc:"ô",OElig:"Œ",oelig:"œ",Ograve:"Ò",ograve:"ò",oline:"‾",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",oplus:"⊕",or:"∨",ordf:"ª",ordm:"º",Oslash:"Ø",oslash:"ø",Otilde:"Õ",otilde:"õ",otimes:"⊗",Ouml:"Ö",ouml:"ö",para:"¶",permil:"‰",perp:"⊥",Phi:"Φ",phi:"φ",Pi:"Π",pi:"π",piv:"ϖ",plusmn:"±",pound:"£",prime:"′",Prime:"″",prod:"∏",prop:"∝",Psi:"Ψ",psi:"ψ",quot:'"',radic:"√",rang:"⟩",raquo:"»",rarr:"→",rArr:"⇒",rceil:"⌉",rdquo:"”",real:"ℜ",reg:"®",rfloor:"⌋",Rho:"Ρ",rho:"ρ",rlm:"‏",rsaquo:"›",rsquo:"’",sbquo:"‚",Scaron:"Š",scaron:"š",sdot:"⋅",sect:"§",shy:"­",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sim:"∼",spades:"♠",sub:"⊂",sube:"⊆",sum:"∑",sup:"⊃",sup1:"¹",sup2:"²",sup3:"³",supe:"⊇",szlig:"ß",Tau:"Τ",tau:"τ",there4:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thinsp:" ",THORN:"Þ",thorn:"þ",tilde:"˜",times:"×",trade:"™",Uacute:"Ú",uacute:"ú",uarr:"↑",uArr:"⇑",Ucirc:"Û",ucirc:"û",Ugrave:"Ù",ugrave:"ù",uml:"¨",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",Uuml:"Ü",uuml:"ü",weierp:"℘",Xi:"Ξ",xi:"ξ",Yacute:"Ý",yacute:"ý",yen:"¥",yuml:"ÿ",Yuml:"Ÿ",Zeta:"Ζ",zeta:"ζ",zwj:"‍",zwnj:"‌",ngsp:""},M=function(){var t={TAG_OPEN_START:0,TAG_OPEN_END:1,TAG_OPEN_END_VOID:2,TAG_CLOSE:3,TEXT:4,ESCAPABLE_RAW_TEXT:5,RAW_TEXT:6,COMMENT_START:7,COMMENT_END:8,CDATA_START:9,CDATA_END:10,ATTR_NAME:11,ATTR_VALUE:12,DOC_TYPE:13,EXPANSION_FORM_START:14,EXPANSION_CASE_VALUE:15,EXPANSION_CASE_EXP_START:16,EXPANSION_CASE_EXP_END:17,EXPANSION_FORM_END:18,EOF:19};return t[t.TAG_OPEN_START]="TAG_OPEN_START",t[t.TAG_OPEN_END]="TAG_OPEN_END",t[t.TAG_OPEN_END_VOID]="TAG_OPEN_END_VOID",t[t.TAG_CLOSE]="TAG_CLOSE",t[t.TEXT]="TEXT",t[t.ESCAPABLE_RAW_TEXT]="ESCAPABLE_RAW_TEXT",t[t.RAW_TEXT]="RAW_TEXT",t[t.COMMENT_START]="COMMENT_START",t[t.COMMENT_END]="COMMENT_END",t[t.CDATA_START]="CDATA_START",t[t.CDATA_END]="CDATA_END",t[t.ATTR_NAME]="ATTR_NAME",t[t.ATTR_VALUE]="ATTR_VALUE",t[t.DOC_TYPE]="DOC_TYPE",t[t.EXPANSION_FORM_START]="EXPANSION_FORM_START",t[t.EXPANSION_CASE_VALUE]="EXPANSION_CASE_VALUE",t[t.EXPANSION_CASE_EXP_START]="EXPANSION_CASE_EXP_START",t[t.EXPANSION_CASE_EXP_END]="EXPANSION_CASE_EXP_END",t[t.EXPANSION_FORM_END]="EXPANSION_FORM_END",t[t.EOF]="EOF",t}();class q{constructor(t,e,n){this.type=t,this.parts=e,this.sourceSpan=n}}class j extends w{constructor(t,e,n){super(n,t),this.tokenType=e}}class F{constructor(t,e){this.tokens=t,this.errors=e}}const V=/\r\n?/g;function G(t){return`Unexpected character "${0===t?"EOF":String.fromCharCode(t)}"`}function B(t){return`Unknown entity "${t}" - use the "&#<decimal>;" or  "&#x<hex>;" syntax`}class z{constructor(t){this.error=t}}class Y{constructor(t,e,n,a=N){this._file=t,this._getTagDefinition=e,this._tokenizeIcu=n,this._interpolationConfig=a,this._peek=-1,this._nextPeek=-1,this._index=-1,this._line=0,this._column=-1,this._expansionCaseStack=[],this._inInterpolation=!1,this.tokens=[],this.errors=[],this._input=t.content,this._length=t.content.length,this._advance()}_processCarriageReturns(t){return t.replace(V,"\n")}tokenize(){for(;0!==this._peek;){const e=this._getLocation();try{this._attemptCharCode(60)?this._attemptCharCode(33)?this._attemptCharCode(91)?this._consumeCdata(e):this._attemptCharCode(45)?this._consumeComment(e):this._consumeDocType(e):this._attemptCharCode(47)?this._consumeTagClose(e):this._consumeTagOpen(e):this._tokenizeIcu&&this._tokenizeExpansionForm()||this._consumeText()}catch(t){if(!(t instanceof z))throw t;this.errors.push(t.error)}}return this._beginToken(M.EOF),this._endToken([]),new F(function(t){const e=[];let n=void 0;for(let a=0;a<t.length;a++){const r=t[a];n&&n.type===M.TEXT&&r.type===M.TEXT?(n.parts[0]+=r.parts[0],n.sourceSpan.end=r.sourceSpan.end):(n=r,e.push(n))}return e}(this.tokens),this.errors)}_tokenizeExpansionForm(){if($(this._input,this._index,this._interpolationConfig))return this._consumeExpansionFormStart(),!0;if((61===(t=this._peek)||A(t)||R(t))&&this._isInExpansionForm())return this._consumeExpansionCaseStart(),!0;var t;if(125===this._peek){if(this._isInExpansionCase())return this._consumeExpansionCaseEnd(),!0;if(this._isInExpansionForm())return this._consumeExpansionFormEnd(),!0}return!1}_getLocation(){return new v(this._file,this._index,this._line,this._column)}_getSpan(t=this._getLocation(),e=this._getLocation()){return new _(t,e)}_beginToken(t,e=this._getLocation()){this._currentTokenStart=e,this._currentTokenType=t}_endToken(t,e=this._getLocation()){const n=new q(this._currentTokenType,t,new _(this._currentTokenStart,e));return this.tokens.push(n),this._currentTokenStart=null,this._currentTokenType=null,n}_createError(t,e){this._isInExpansionForm()&&(t+=' (Do you have an unescaped "{" in your template? Use "{{ \'{\' }}") to escape it.)');const n=new j(t,this._currentTokenType,e);return this._currentTokenStart=null,this._currentTokenType=null,new z(n)}_advance(){if(this._index>=this._length)throw this._createError(G(0),this._getSpan());10===this._peek?(this._line++,this._column=0):10!==this._peek&&13!==this._peek&&this._column++,this._index++,this._peek=this._index>=this._length?0:this._input.charCodeAt(this._index),this._nextPeek=this._index+1>=this._length?0:this._input.charCodeAt(this._index+1)}_attemptCharCode(t){return this._peek===t&&(this._advance(),!0)}_attemptCharCodeCaseInsensitive(t){return e=t,Z(this._peek)===Z(e)&&(this._advance(),!0);var e}_requireCharCode(t){const e=this._getLocation();if(!this._attemptCharCode(t))throw this._createError(G(this._peek),this._getSpan(e,e))}_attemptStr(t){const e=t.length;if(this._index+e>this._length)return!1;const n=this._savePosition();for(let a=0;a<e;a++)if(!this._attemptCharCode(t.charCodeAt(a)))return this._restorePosition(n),!1;return!0}_attemptStrCaseInsensitive(t){for(let e=0;e<t.length;e++)if(!this._attemptCharCodeCaseInsensitive(t.charCodeAt(e)))return!1;return!0}_requireStr(t){const e=this._getLocation();if(!this._attemptStr(t))throw this._createError(G(this._peek),this._getSpan(e))}_attemptCharCodeUntilFn(t){for(;!t(this._peek);)this._advance()}_requireCharCodeUntilFn(t,e){const n=this._getLocation();if(this._attemptCharCodeUntilFn(t),this._index-n.offset<e)throw this._createError(G(this._peek),this._getSpan(n,n))}_attemptUntilChar(t){for(;this._peek!==t;)this._advance()}_readChar(t){if(t&&38===this._peek)return this._decodeEntity();{const t=this._index;return this._advance(),this._input[t]}}_decodeEntity(){const t=this._getLocation();if(this._advance(),!this._attemptCharCode(35)){const e=this._savePosition();if(this._attemptCharCodeUntilFn(K),59!==this._peek)return this._restorePosition(e),"&";this._advance();const n=this._input.substring(t.offset+1,this._index-1),a=P[n];if(!a)throw this._createError(B(n),this._getSpan(t));return a}{const n=this._attemptCharCode(120)||this._attemptCharCode(88),a=this._getLocation().offset;if(this._attemptCharCodeUntilFn(W),59!==this._peek)throw this._createError(G(this._peek),this._getSpan());this._advance();const r=this._input.substring(a,this._index-1);try{const t=parseInt(r,n?16:10);return String.fromCharCode(t)}catch(e){const n=this._input.substring(t.offset+1,this._index-1);throw this._createError(B(n),this._getSpan(t))}}}_consumeRawText(t,e,n){let a;const r=this._getLocation();this._beginToken(t?M.ESCAPABLE_RAW_TEXT:M.RAW_TEXT,r);const i=[];for(;a=this._getLocation(),!this._attemptCharCode(e)||!n();)for(this._index>a.offset&&i.push(this._input.substring(a.offset,this._index));this._peek!==e;)i.push(this._readChar(t));return this._endToken([this._processCarriageReturns(i.join(""))],a)}_consumeComment(t){this._beginToken(M.COMMENT_START,t),this._requireCharCode(45),this._endToken([]);const e=this._consumeRawText(!1,45,()=>this._attemptStr("->"));this._beginToken(M.COMMENT_END,e.sourceSpan.end),this._endToken([])}_consumeCdata(t){this._beginToken(M.CDATA_START,t),this._requireStr("CDATA["),this._endToken([]);const e=this._consumeRawText(!1,93,()=>this._attemptStr("]>"));this._beginToken(M.CDATA_END,e.sourceSpan.end),this._endToken([])}_consumeDocType(t){this._beginToken(M.DOC_TYPE,t),this._attemptUntilChar(62),this._advance(),this._endToken([this._input.substring(t.offset+2,this._index-1)])}_consumePrefixAndName(){const t=this._index;let e=null;for(;58!==this._peek&&!(((n=this._peek)<97||122<n)&&(n<65||90<n)&&(n<48||n>57));)this._advance();var n;let a;return 58===this._peek?(this._advance(),e=this._input.substring(t,this._index-1),a=this._index):a=t,this._requireCharCodeUntilFn(U,this._index===a?1:0),[e,this._input.substring(a,this._index)]}_consumeTagOpen(t){const e=this._savePosition();let n,a;try{if(!A(this._peek))throw this._createError(G(this._peek),this._getSpan());const e=this._index;for(this._consumeTagOpenStart(t),n=this._input.substring(e,this._index),a=n.toLowerCase(),this._attemptCharCodeUntilFn(H);47!==this._peek&&62!==this._peek;)this._consumeAttributeName(),this._attemptCharCodeUntilFn(H),this._attemptCharCode(61)&&(this._attemptCharCodeUntilFn(H),this._consumeAttributeValue()),this._attemptCharCodeUntilFn(H);this._consumeTagOpenEnd()}catch(i){if(i instanceof z)return this._restorePosition(e),this._beginToken(M.TEXT,t),void this._endToken(["<"]);throw i}const r=this._getTagDefinition(n).contentType;r===k.RAW_TEXT?this._consumeRawTextWithTagClose(a,!1):r===k.ESCAPABLE_RAW_TEXT&&this._consumeRawTextWithTagClose(a,!0)}_consumeRawTextWithTagClose(t,e){const n=this._consumeRawText(e,60,()=>!!this._attemptCharCode(47)&&(this._attemptCharCodeUntilFn(H),!!this._attemptStrCaseInsensitive(t)&&(this._attemptCharCodeUntilFn(H),this._attemptCharCode(62))));this._beginToken(M.TAG_CLOSE,n.sourceSpan.end),this._endToken([null,t])}_consumeTagOpenStart(t){this._beginToken(M.TAG_OPEN_START,t);const e=this._consumePrefixAndName();this._endToken(e)}_consumeAttributeName(){this._beginToken(M.ATTR_NAME);const t=this._consumePrefixAndName();this._endToken(t)}_consumeAttributeValue(){let t;if(this._beginToken(M.ATTR_VALUE),39===this._peek||34===this._peek){const e=this._peek;this._advance();const n=[];for(;this._peek!==e;)n.push(this._readChar(!0));t=n.join(""),this._advance()}else{const e=this._index;this._requireCharCodeUntilFn(U,1),t=this._input.substring(e,this._index)}this._endToken([this._processCarriageReturns(t)])}_consumeTagOpenEnd(){const t=this._attemptCharCode(47)?M.TAG_OPEN_END_VOID:M.TAG_OPEN_END;this._beginToken(t),this._requireCharCode(62),this._endToken([])}_consumeTagClose(t){this._beginToken(M.TAG_CLOSE,t),this._attemptCharCodeUntilFn(H);const e=this._consumePrefixAndName();this._attemptCharCodeUntilFn(H),this._requireCharCode(62),this._endToken(e)}_consumeExpansionFormStart(){this._beginToken(M.EXPANSION_FORM_START,this._getLocation()),this._requireCharCode(123),this._endToken([]),this._expansionCaseStack.push(M.EXPANSION_FORM_START),this._beginToken(M.RAW_TEXT,this._getLocation());const t=this._readUntil(44);this._endToken([t],this._getLocation()),this._requireCharCode(44),this._attemptCharCodeUntilFn(H),this._beginToken(M.RAW_TEXT,this._getLocation());const e=this._readUntil(44);this._endToken([e],this._getLocation()),this._requireCharCode(44),this._attemptCharCodeUntilFn(H)}_consumeExpansionCaseStart(){this._beginToken(M.EXPANSION_CASE_VALUE,this._getLocation());const t=this._readUntil(123).trim();this._endToken([t],this._getLocation()),this._attemptCharCodeUntilFn(H),this._beginToken(M.EXPANSION_CASE_EXP_START,this._getLocation()),this._requireCharCode(123),this._endToken([],this._getLocation()),this._attemptCharCodeUntilFn(H),this._expansionCaseStack.push(M.EXPANSION_CASE_EXP_START)}_consumeExpansionCaseEnd(){this._beginToken(M.EXPANSION_CASE_EXP_END,this._getLocation()),this._requireCharCode(125),this._endToken([],this._getLocation()),this._attemptCharCodeUntilFn(H),this._expansionCaseStack.pop()}_consumeExpansionFormEnd(){this._beginToken(M.EXPANSION_FORM_END,this._getLocation()),this._requireCharCode(125),this._endToken([]),this._expansionCaseStack.pop()}_consumeText(){const t=this._getLocation();this._beginToken(M.TEXT,t);const e=[];do{this._interpolationConfig&&this._attemptStr(this._interpolationConfig.start)?(e.push(this._interpolationConfig.start),this._inInterpolation=!0):this._interpolationConfig&&this._inInterpolation&&this._attemptStr(this._interpolationConfig.end)?(e.push(this._interpolationConfig.end),this._inInterpolation=!1):e.push(this._readChar(!0))}while(!this._isTextEnd());this._endToken([this._processCarriageReturns(e.join(""))])}_isTextEnd(){if(60===this._peek||0===this._peek)return!0;if(this._tokenizeIcu&&!this._inInterpolation){if($(this._input,this._index,this._interpolationConfig))return!0;if(125===this._peek&&this._isInExpansionCase())return!0}return!1}_savePosition(){return[this._peek,this._index,this._column,this._line,this.tokens.length]}_readUntil(t){const e=this._index;return this._attemptUntilChar(t),this._input.substring(e,this._index)}_restorePosition(t){this._peek=t[0],this._index=t[1],this._column=t[2],this._line=t[3];const e=t[4];e<this.tokens.length&&(this.tokens=this.tokens.slice(0,e))}_isInExpansionCase(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===M.EXPANSION_CASE_EXP_START}_isInExpansionForm(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===M.EXPANSION_FORM_START}}function H(t){return!C(t)||0===t}function U(t){return C(t)||62===t||47===t||39===t||34===t||61===t}function W(t){return 59===t||0===t||!function(t){return t>=97&&t<=102||t>=65&&t<=70||R(t)}(t)}function K(t){return 59===t||0===t||!A(t)}function $(t,e,n){const a=!!n&&t.indexOf(n.start,e)===e;return 123===t.charCodeAt(e)&&!a}function Z(t){return t>=97&&t<=122?t-97+65:t}class J extends w{constructor(t,e,n){super(e,n),this.elementName=t}static create(t,e,n){return new J(t,e,n)}}class Q{constructor(t,e){this.rootNodes=t,this.errors=e}}class X{constructor(t){this.getTagDefinition=t}parse(t,e,n=!1,a=N){const r=function(t,e,n,a=!1,r=N){return new Y(new x(t,e),n,a,r).tokenize()}(t,e,this.getTagDefinition,n,a),i=new tt(r.tokens,this.getTagDefinition).build();return new Q(i.rootNodes,r.errors.concat(i.errors))}}class tt{constructor(t,e){this.tokens=t,this.getTagDefinition=e,this._index=-1,this._rootNodes=[],this._errors=[],this._elementStack=[],this._advance()}build(){for(;this._peek.type!==M.EOF;)this._peek.type===M.TAG_OPEN_START?this._consumeStartTag(this._advance()):this._peek.type===M.TAG_CLOSE?this._consumeEndTag(this._advance()):this._peek.type===M.CDATA_START?(this._closeVoidElement(),this._consumeCdata(this._advance())):this._peek.type===M.COMMENT_START?(this._closeVoidElement(),this._consumeComment(this._advance())):this._peek.type===M.TEXT||this._peek.type===M.RAW_TEXT||this._peek.type===M.ESCAPABLE_RAW_TEXT?(this._closeVoidElement(),this._consumeText(this._advance())):this._peek.type===M.EXPANSION_FORM_START?this._consumeExpansion(this._advance()):this._advance();return new Q(this._rootNodes,this._errors)}_advance(){const t=this._peek;return this._index<this.tokens.length-1&&this._index++,this._peek=this.tokens[this._index],t}_advanceIf(t){return this._peek.type===t?this._advance():null}_consumeCdata(t){this._consumeText(this._advance()),this._advanceIf(M.CDATA_END)}_consumeComment(t){const e=this._advanceIf(M.RAW_TEXT);this._advanceIf(M.COMMENT_END);const n=null!==e?e.parts[0].trim():null;this._addToParent(new d(n,t.sourceSpan))}_consumeExpansion(t){const e=this._advance(),n=this._advance(),a=[];for(;this._peek.type===M.EXPANSION_CASE_VALUE;){const t=this._parseExpansionCase();if(!t)return;a.push(t)}if(this._peek.type!==M.EXPANSION_FORM_END)return void this._errors.push(J.create(null,this._peek.sourceSpan,"Invalid ICU message. Missing '}'."));const r=new _(t.sourceSpan.start,this._peek.sourceSpan.end);this._addToParent(new s(e.parts[0],n.parts[0],a,r,e.sourceSpan)),this._advance()}_parseExpansionCase(){const t=this._advance();if(this._peek.type!==M.EXPANSION_CASE_EXP_START)return this._errors.push(J.create(null,this._peek.sourceSpan,"Invalid ICU message. Missing '{'.")),null;const e=this._advance(),n=this._collectExpansionExpTokens(e);if(!n)return null;const a=this._advance();n.push(new q(M.EOF,[],a.sourceSpan));const r=new tt(n,this.getTagDefinition).build();if(r.errors.length>0)return this._errors=this._errors.concat(r.errors),null;const i=new _(t.sourceSpan.start,a.sourceSpan.end),s=new _(e.sourceSpan.start,a.sourceSpan.end);return new u(t.parts[0],r.rootNodes,i,t.sourceSpan,s)}_collectExpansionExpTokens(t){const e=[],n=[M.EXPANSION_CASE_EXP_START];for(;;){if(this._peek.type!==M.EXPANSION_FORM_START&&this._peek.type!==M.EXPANSION_CASE_EXP_START||n.push(this._peek.type),this._peek.type===M.EXPANSION_CASE_EXP_END){if(!et(n,M.EXPANSION_CASE_EXP_START))return this._errors.push(J.create(null,t.sourceSpan,"Invalid ICU message. Missing '}'.")),null;if(n.pop(),0===n.length)return e}if(this._peek.type===M.EXPANSION_FORM_END){if(!et(n,M.EXPANSION_FORM_START))return this._errors.push(J.create(null,t.sourceSpan,"Invalid ICU message. Missing '}'.")),null;n.pop()}if(this._peek.type===M.EOF)return this._errors.push(J.create(null,t.sourceSpan,"Invalid ICU message. Missing '}'.")),null;e.push(this._advance())}}_consumeText(t){let e=t.parts[0];if(e.length>0&&"\n"===e[0]){const t=this._getParentElement();null!==t&&0===t.children.length&&this.getTagDefinition(t.name).ignoreFirstLf&&(e=e.substring(1))}e.length>0&&this._addToParent(new i(e,t.sourceSpan))}_closeVoidElement(){const t=this._getParentElement();t&&this.getTagDefinition(t.name).isVoid&&this._elementStack.pop()}_consumeStartTag(t){const e=t.parts[0],n=t.parts[1],a=[];for(;this._peek.type===M.ATTR_NAME;)a.push(this._consumeAttr(this._advance()));const r=this._getElementFullName(e,n,this._getParentElement());let i=!1;if(this._peek.type===M.TAG_OPEN_END_VOID){this._advance(),i=!0;const e=this.getTagDefinition(r);e.canSelfClose||null!==L(r)||e.isVoid||this._errors.push(J.create(r,t.sourceSpan,`Only void and foreign elements can be self closed "${t.parts[1]}"`))}else this._peek.type===M.TAG_OPEN_END&&(this._advance(),i=!1);const s=new _(t.sourceSpan.start,this._peek.sourceSpan.start),u=new l(r,a,[],s,s,void 0);this._pushElement(u),i&&(this._popElement(r),u.endSourceSpan=s)}_pushElement(t){const e=this._getParentElement();e&&this.getTagDefinition(e.name).isClosedByChild(t.name)&&this._elementStack.pop();const n=this.getTagDefinition(t.name),{parent:a,container:r}=this._getParentElementSkippingContainers();if(a&&n.requireExtraParent(a.name)){const e=new l(n.parentToAdd,[],[],t.sourceSpan,t.startSourceSpan,t.endSourceSpan);this._insertBeforeContainer(a,r,e)}this._addToParent(t),this._elementStack.push(t)}_consumeEndTag(t){const e=this._getElementFullName(t.parts[0],t.parts[1],this._getParentElement());this._getParentElement()&&(this._getParentElement().endSourceSpan=t.sourceSpan),this.getTagDefinition(e).isVoid?this._errors.push(J.create(e,t.sourceSpan,`Void elements do not have end tags "${t.parts[1]}"`)):this._popElement(e)||this._errors.push(J.create(e,t.sourceSpan,`Unexpected closing tag "${e}". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.html#closing-elements-that-have-implied-end-tags`))}_popElement(t){for(let e=this._elementStack.length-1;e>=0;e--){const n=this._elementStack[e];if(n.name===t)return this._elementStack.splice(e,this._elementStack.length-e),!0;if(!this.getTagDefinition(n.name).closedByParent)return!1}return!1}_consumeAttr(t){const e=D(t.parts[0],t.parts[1]);let n=t.sourceSpan.end,a="",r=void 0;if(this._peek.type===M.ATTR_VALUE){const t=this._advance();a=t.parts[0],n=t.sourceSpan.end,r=t.sourceSpan}return new o(e,a,new _(t.sourceSpan.start,n),r)}_getParentElement(){return this._elementStack.length>0?this._elementStack[this._elementStack.length-1]:null}_getParentElementSkippingContainers(){let t=null;for(let e=this._elementStack.length-1;e>=0;e--){if("ng-container"!==E(this._elementStack[e].name)[1])return{parent:this._elementStack[e],container:t};t=this._elementStack[e]}return{parent:null,container:t}}_addToParent(t){const e=this._getParentElement();null!==e?e.children.push(t):this._rootNodes.push(t)}_insertBeforeContainer(t,e,n){if(e){if(t){const a=t.children.indexOf(e);t.children[a]=n}else this._rootNodes.push(n);n.children.push(e),this._elementStack.splice(this._elementStack.indexOf(e),0,n)}else this._addToParent(n),this._elementStack.push(n)}_getElementFullName(t,e,n){return null===t&&null===(t=this.getTagDefinition(e).implicitNamespacePrefix)&&null!==n&&(t=L(n.name)),D(t,e)}}function et(t,e){return t.length>0&&t[t.length-1]===e}class nt{constructor(){this.closedByParent=!1,this.contentType=k.PARSABLE_DATA,this.isVoid=!1,this.ignoreFirstLf=!1,this.canSelfClose=!0}requireExtraParent(t){return!1}isClosedByChild(t){return!1}}const at=new nt;function rt(t){return at}class it{constructor({closedByChildren:t,requiredParents:e,implicitNamespacePrefix:n,contentType:a=k.PARSABLE_DATA,closedByParent:r=!1,isVoid:i=!1,ignoreFirstLf:s=!1}={}){this.closedByChildren={},this.closedByParent=!1,this.canSelfClose=!1,t&&t.length>0&&t.forEach(t=>this.closedByChildren[t]=!0),this.isVoid=i,this.closedByParent=r||i,e&&e.length>0&&(this.requiredParents={},this.parentToAdd=e[0],e.forEach(t=>this.requiredParents[t]=!0)),this.implicitNamespacePrefix=n||null,this.contentType=a,this.ignoreFirstLf=s}requireExtraParent(t){if(!this.requiredParents)return!1;if(!t)return!0;const e=t.toLowerCase();return!("template"===e||"ng-template"===t)&&!0!==this.requiredParents[e]}isClosedByChild(t){return this.isVoid||t.toLowerCase()in this.closedByChildren}}const st={base:new it({isVoid:!0}),meta:new it({isVoid:!0}),area:new it({isVoid:!0}),embed:new it({isVoid:!0}),link:new it({isVoid:!0}),img:new it({isVoid:!0}),input:new it({isVoid:!0}),param:new it({isVoid:!0}),hr:new it({isVoid:!0}),br:new it({isVoid:!0}),source:new it({isVoid:!0}),track:new it({isVoid:!0}),wbr:new it({isVoid:!0}),p:new it({closedByChildren:["address","article","aside","blockquote","div","dl","fieldset","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","main","nav","ol","p","pre","section","table","ul"],closedByParent:!0}),thead:new it({closedByChildren:["tbody","tfoot"]}),tbody:new it({closedByChildren:["tbody","tfoot"],closedByParent:!0}),tfoot:new it({closedByChildren:["tbody"],closedByParent:!0}),tr:new it({closedByChildren:["tr"],requiredParents:["tbody","tfoot","thead"],closedByParent:!0}),td:new it({closedByChildren:["td","th"],closedByParent:!0}),th:new it({closedByChildren:["td","th"],closedByParent:!0}),col:new it({requiredParents:["colgroup"],isVoid:!0}),svg:new it({implicitNamespacePrefix:"svg"}),math:new it({implicitNamespacePrefix:"math"}),li:new it({closedByChildren:["li"],closedByParent:!0}),dt:new it({closedByChildren:["dt","dd"]}),dd:new it({closedByChildren:["dt","dd"],closedByParent:!0}),rb:new it({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),rt:new it({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),rtc:new it({closedByChildren:["rb","rtc","rp"],closedByParent:!0}),rp:new it({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),optgroup:new it({closedByChildren:["optgroup"],closedByParent:!0}),option:new it({closedByChildren:["option","optgroup"],closedByParent:!0}),pre:new it({ignoreFirstLf:!0}),listing:new it({ignoreFirstLf:!0}),style:new it({contentType:k.RAW_TEXT}),script:new it({contentType:k.RAW_TEXT}),title:new it({contentType:k.ESCAPABLE_RAW_TEXT}),textarea:new it({contentType:k.ESCAPABLE_RAW_TEXT,ignoreFirstLf:!0})},ut=new it;function ot(t){return st[t.toLowerCase()]||ut}class lt extends class{visitText(t,e){}visitContainer(t,e){t.children.forEach(t=>t.visit(this))}visitIcu(t,e){Object.keys(t.cases).forEach(e=>{t.cases[e].visit(this)})}visitTagPlaceholder(t,e){t.children.forEach(t=>t.visit(this))}visitPlaceholder(t,e){}visitIcuPlaceholder(t,e){}}{constructor(t,e){super(),this.mapName=e,this.internalToPublic={},this.publicToNextId={},this.publicToInternal={},t.nodes.forEach(t=>t.visit(this))}toPublicName(t){return this.internalToPublic.hasOwnProperty(t)?this.internalToPublic[t]:null}toInternalName(t){return this.publicToInternal.hasOwnProperty(t)?this.publicToInternal[t]:null}visitText(t,e){return null}visitTagPlaceholder(t,e){this.visitPlaceholderName(t.startName),super.visitTagPlaceholder(t,e),this.visitPlaceholderName(t.closeName)}visitPlaceholder(t,e){this.visitPlaceholderName(t.name)}visitIcuPlaceholder(t,e){this.visitPlaceholderName(t.name)}visitPlaceholderName(t){if(!t||this.internalToPublic.hasOwnProperty(t))return;let e=this.mapName(t);if(this.publicToInternal.hasOwnProperty(e)){const t=this.publicToNextId[e];this.publicToNextId[e]=t+1,e=`${e}_${t}`}else this.publicToNextId[e]=1;this.internalToPublic[t]=e,this.publicToInternal[e]=t}}const dt=new a.I18nSelectPipe;class ct{constructor(t,e){this.params=e,this.i18nPluralPipe=new a.I18nPluralPipe(new a.NgLocaleLocalization(t))}visitElement(t,e){return ot(t.name).isVoid?`<${t.name}${this.serializeNodes(t.attrs," ")}/>`:`<${t.name}${this.serializeNodes(t.attrs," ")}>${this.serializeNodes(t.children)}</${t.name}>`}visitAttribute(t,e){return`${t.name}="${t.value}"`}visitText(t,e){return t.value}visitComment(t,e){return`\x3c!--${t.value}--\x3e`}visitExpansion(t,e){const n={};switch(t.cases.forEach(t=>n[t.value]=this.serializeNodes(t.expression)),t.type){case"select":return dt.transform(this.params[t.switchValue]||"",n);case"plural":return this.i18nPluralPipe.transform(this.params[t.switchValue],n)}throw new Error(`Unknown expansion type "${t.type}"`)}visitExpansionCase(t,e){return` ${t.value} {${this.serializeNodes(t.expression)}}`}serializeNodes(t,e=""){return 0===t.length?"":e+t.map(t=>t.visit(this,null)).join(e)}}function ft(t){return t.id||function(t){const e=At(t),n=function(t,e){const n=Array(t.length+3>>>2);for(let a=0;a<n.length;a++)n[a]=It(t,4*a,e);return n}(e,xt.Big),a=8*e.length,r=new Array(80);let[i,s,u,o,l]=[1732584193,4023233417,2562383102,271733878,3285377520];n[a>>5]|=128<<24-a%32,n[15+(a+64>>9<<4)]=a;for(let d=0;d<n.length;d+=16){const[t,e,a,c,f]=[i,s,u,o,l];for(let h=0;h<80;h++){r[h]=h<16?n[d+h]:Ot(r[h-3]^r[h-8]^r[h-14]^r[h-16],1);const[t,e]=bt(h,s,u,o),a=[Ot(i,5),t,l,e,r[h]].reduce(_t);[l,o,u,s,i]=[o,u,Ot(s,30),i,a]}[i,s,u,o,l]=[_t(i,t),_t(s,e),_t(u,a),_t(o,c),_t(l,f)]}return function(t){let e="";for(let n=0;n<t.length;n++){const a=St(t,n);e+=(a>>>4).toString(16)+(15&a).toString(16)}return e.toLowerCase()}(Nt([i,s,u,o,l]))}((e=t.nodes,e.map(t=>t.visit(gt,null))).join("")+`[${t.meaning}]`);var e}class ht{visitText(t,e){return t.value}visitContainer(t,e){return`[${t.children.map(t=>t.visit(this)).join(", ")}]`}visitIcu(t,e){const n=Object.keys(t.cases).map(e=>`${e} {${t.cases[e].visit(this)}}`);return`{${t.expression}, ${t.type}, ${n.join(", ")}}`}visitTagPlaceholder(t,e){return t.isVoid?`<ph tag name="${t.startName}"/>`:`<ph tag name="${t.startName}">${t.children.map(t=>t.visit(this)).join(", ")}</ph name="${t.closeName}">`}visitPlaceholder(t,e){return t.value?`<ph name="${t.name}">${t.value}</ph>`:`<ph name="${t.name}"/>`}visitIcuPlaceholder(t,e){return`<ph icu name="${t.name}">${t.value.visit(this)}</ph>`}}const gt=new ht;class pt extends ht{visitIcu(t,e){const n=Object.keys(t.cases).map(e=>`${e} {${t.cases[e].visit(this)}}`);return`{${t.type}, ${n.join(", ")}}`}}function bt(t,e,n,a){return t<20?[e&n|~e&a,1518500249]:t<40?[e^n^a,1859775393]:t<60?[e&n|e&a|n&a,2400959708]:[e^n^a,3395469782]}function mt(t){const e=At(t);let[n,a]=[yt(e,0),yt(e,102072)];return 0!==n||0!==a&&1!==a||(n^=319790063,a^=-1801410264),[n,a]}function yt(t,e){let n,[a,r]=[2654435769,2654435769];const i=t.length;for(n=0;n+12<=i;n+=12)a=_t(a,It(t,n,xt.Little)),r=_t(r,It(t,n+4,xt.Little)),e=_t(e,It(t,n+8,xt.Little)),[a,r,e]=vt([a,r,e]);return a=_t(a,It(t,n,xt.Little)),r=_t(r,It(t,n+4,xt.Little)),e=_t(e,i),vt([a,r,e=_t(e,It(t,n+8,xt.Little)<<8)])[2]}function vt([t,e,n]){return t=wt(t,e),t=wt(t,n),t^=n>>>13,e=wt(e,n),e=wt(e,t),e^=t<<8,n=wt(n,t),n=wt(n,e),n^=e>>>13,t=wt(t,e),t=wt(t,n),t^=n>>>12,e=wt(e,n),e=wt(e,t),e^=t<<16,n=wt(n,t),n=wt(n,e),n^=e>>>5,t=wt(t,e),t=wt(t,n),t^=n>>>3,e=wt(e,n),e=wt(e,t),e^=t<<10,n=wt(n,t),n=wt(n,e),[t,e,n^=e>>>15]}const xt=function(){var t={Little:0,Big:1};return t[t.Little]="Little",t[t.Big]="Big",t}();function _t(t,e){return Tt(t,e)[1]}function Tt(t,e){const n=(65535&t)+(65535&e),a=(t>>>16)+(e>>>16)+(n>>>16);return[a>>>16,a<<16|65535&n]}function wt(t,e){const n=(65535&t)-(65535&e);return(t>>16)-(e>>16)+(n>>16)<<16|65535&n}function Ot(t,e){return t<<e|t>>>32-e}function St(t,e){return e>=t.length?0:255&t.charCodeAt(e)}function It(t,e,n){let a=0;if(n===xt.Big)for(let r=0;r<4;r++)a+=St(t,e+r)<<24-8*r;else for(let r=0;r<4;r++)a+=St(t,e+r)<<8*r;return a}function Nt(t){return t.reduce((t,e)=>t+function(t){let e="";for(let n=0;n<4;n++)e+=String.fromCharCode(t>>>8*(3-n)&255);return e}(e),"")}function Ct(t,e){let n="";const a=Math.max(t.length,e.length);for(let r=0,i=0;r<a||i;r++){const a=i+ +(t[r]||0)+ +(e[r]||0);a>=10?(i=1,n+=a-10):(i=0,n+=a)}return n}function Rt(t,e){let n="",a=e;for(;0!==t;t>>>=1)1&t&&(n=Ct(n,a)),a=Ct(a,a);return n}function At(t){let e="";for(let n=0;n<t.length;n++){let a=t.charCodeAt(n);if(a>=55296&&a<=56319&&t.length>n+1){const e=t.charCodeAt(n+1);e>=56320&&e<=57343&&(n++,a=(a-55296<<10)+e-56320+65536)}a<=127?e+=String.fromCharCode(a):a<=2047?e+=String.fromCharCode(a>>6&31|192,63&a|128):a<=65535?e+=String.fromCharCode(a>>12|224,a>>6&63|128,63&a|128):a<=2097151&&(e+=String.fromCharCode(a>>18&7|240,a>>12&63|128,a>>6&63|128,63&a|128))}return e}function kt(t){const e=new Lt,{msgIdToHtml:n,errors:a}=e.parse(t),r={},i=new Dt;if(Object.keys(n).forEach(t=>{const{i18nNodes:e,errors:s}=i.convert(n[t]);a.push(...s),r[t]=e}),a.length)throw new Error("xliff parse errors:\n"+a.join("\n"));return r}const Et=ft;class Lt{parse(t){this._unitMlString=null,this._msgIdToHtml={};const e=new X(rt).parse(t,"",!1);return this._errors=e.errors,c(this,e.rootNodes,null),{msgIdToHtml:this._msgIdToHtml,errors:this._errors}}visitElement(t,e){switch(t.name){case"trans-unit":this._unitMlString=null;const e=t.attrs.find(t=>"id"===t.name);if(e){const n=e.value;this._msgIdToHtml.hasOwnProperty(n)?this._addError(t,"Duplicated translations for msg "+n):(c(this,t.children,null),"string"==typeof this._unitMlString?this._msgIdToHtml[n]=this._unitMlString:this._addError(t,`Message ${n} misses a translation`))}else this._addError(t,'<trans-unit> misses the "id" attribute');break;case"source":break;case"target":const n=t.startSourceSpan.start.file.content.slice(t.startSourceSpan.end.offset,t.endSourceSpan.start.offset);this._unitMlString=n;break;case"file":c(this,t.children,null);break;default:c(this,t.children,null)}}visitAttribute(t,e){}visitText(t,e){}visitComment(t,e){}visitExpansion(t,e){}visitExpansionCase(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}class Dt{convert(t){const e=new X(rt).parse(t,"",!0);return this._errors=e.errors,{i18nNodes:this._errors.length>0||0===e.rootNodes.length?[]:c(this,e.rootNodes),errors:this._errors}}visitText(t,e){return new h(t.value,t.sourceSpan)}visitElement(t,e){if("x"===t.name){const e=t.attrs.find(t=>"id"===t.name);if(e)return new m("",e.value,t.sourceSpan);this._addError(t,'<x> misses the "id" attribute')}else this._addError(t,"Unexpected tag");return null}visitExpansion(t,e){const n={};return c(this,t.cases).forEach(e=>{n[e.value]=new g(e.nodes,t.sourceSpan)}),new p(t.switchValue,t.type,n,t.sourceSpan)}visitExpansionCase(t,e){return{value:t.value,nodes:c(this,t.expression)}}visitComment(t,e){}visitAttribute(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}function Pt(t){const e=new qt,{msgIdToHtml:n,errors:a}=e.parse(t),r={},i=new jt;if(Object.keys(n).forEach(t=>{const{i18nNodes:e,errors:s}=i.convert(n[t]);a.push(...s),r[t]=e}),a.length)throw new Error("xliff2 parse errors:\n"+a.join("\n"));return r}const Mt=function(t){if(t.id)return t.id;const e=new pt;return function(t,e){let[n,a]=mt(t);if(e){const[t,r]=mt(e);[n,a]=function([t,e],[n,a]){const[r,i]=Tt(e,a);return[_t(_t(t,n),r),i]}(function([t,e],n){return[t<<n|e>>>32-n,e<<n|t>>>32-n]}([n,a],1),[t,r])}return function(t){let e="",n="1";for(let a=t.length-1;a>=0;a--)e=Ct(e,Rt(St(t,a),n)),n=Rt(256,n);return e.split("").reverse().join("")}(Nt([2147483647&n,a]))}(t.nodes.map(t=>t.visit(e,null)).join(""),t.meaning)};class qt{parse(t){this._unitMlString=null,this._msgIdToHtml={};const e=new X(rt).parse(t,"",!1);return this._errors=e.errors,c(this,e.rootNodes,null),{msgIdToHtml:this._msgIdToHtml,errors:this._errors}}visitElement(t,e){switch(t.name){case"unit":this._unitMlString=null;const e=t.attrs.find(t=>"id"===t.name);if(e){const n=e.value;this._msgIdToHtml.hasOwnProperty(n)?this._addError(t,"Duplicated translations for msg "+n):(c(this,t.children,null),"string"==typeof this._unitMlString?this._msgIdToHtml[n]=this._unitMlString:this._addError(t,`Message ${n} misses a translation`))}else this._addError(t,'<unit> misses the "id" attribute');break;case"source":break;case"target":const n=t.startSourceSpan.start.file.content.slice(t.startSourceSpan.end.offset,t.endSourceSpan.start.offset);this._unitMlString=n;break;case"xliff":const a=t.attrs.find(t=>"version"===t.name);if(a){const e=a.value;"2.0"!==e?this._addError(t,`The XLIFF file version ${e} is not compatible with XLIFF 2.0 serializer`):c(this,t.children,null)}break;default:c(this,t.children,null)}}visitAttribute(t,e){}visitText(t,e){}visitComment(t,e){}visitExpansion(t,e){}visitExpansionCase(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}class jt{convert(t){const e=new X(rt).parse(t,"",!0);return this._errors=e.errors,{i18nNodes:this._errors.length>0||0===e.rootNodes.length?[]:[].concat(...c(this,e.rootNodes)),errors:this._errors}}visitText(t,e){return new h(t.value,t.sourceSpan)}visitElement(t,e){switch(t.name){case"ph":const e=t.attrs.find(t=>"equiv"===t.name);if(e)return[new m("",e.value,t.sourceSpan)];this._addError(t,'<ph> misses the "equiv" attribute');break;case"pc":const n=t.attrs.find(t=>"equivStart"===t.name),a=t.attrs.find(t=>"equivEnd"===t.name);if(n){if(a){const e=a.value;return[].concat(new m("",n.value,t.sourceSpan),...t.children.map(t=>t.visit(this,null)),new m("",e,t.sourceSpan))}this._addError(t,'<ph> misses the "equivEnd" attribute')}else this._addError(t,'<ph> misses the "equivStart" attribute');break;default:this._addError(t,"Unexpected tag")}return null}visitExpansion(t,e){const n={};return c(this,t.cases).forEach(e=>{n[e.value]=new g(e.nodes,t.sourceSpan)}),new p(t.switchValue,t.type,n,t.sourceSpan)}visitExpansionCase(t,e){return{value:t.value,nodes:[].concat(...c(this,t.expression))}}visitComment(t,e){}visitAttribute(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}function Ft(t){return t.toUpperCase().replace(/[^A-Z0-9_]/g,"_")}function Vt(t){const e=new zt,{msgIdToHtml:n,errors:a}=e.parse(t);if(a.length)throw new Error("xtb parse errors:\n"+a.join("\n"));const r={},i=new Yt;return Object.keys(n).forEach(t=>{var e,a;e=r,a=t,Object.defineProperty(e,a,{configurable:!0,enumerable:!0,get:()=>{const r=(()=>{const{i18nNodes:e,errors:a}=i.convert(n[t]);if(a.length)throw new Error("xtb parse errors:\n"+a.join("\n"));return e})();return Object.defineProperty(e,a,{enumerable:!0,value:r}),r},set:t=>{throw new Error("Could not overwrite an XTB translation")}})}),r}const Gt=ft,Bt=function(t){return new lt(t,Ft)};class zt{parse(t){this._bundleDepth=0,this._msgIdToHtml={};const e=new X(rt).parse(t,"",!1);return this._errors=e.errors,c(this,e.rootNodes),{msgIdToHtml:this._msgIdToHtml,errors:this._errors}}visitElement(t,e){switch(t.name){case"translationbundle":this._bundleDepth++,this._bundleDepth>1&&this._addError(t,"<translationbundle> elements can not be nested"),c(this,t.children,null),this._bundleDepth--;break;case"translation":const e=t.attrs.find(t=>"id"===t.name);if(e){const n=e.value;if(this._msgIdToHtml.hasOwnProperty(n))this._addError(t,"Duplicated translations for msg "+n);else{const e=t.startSourceSpan.start.file.content.slice(t.startSourceSpan.end.offset,t.endSourceSpan.start.offset);this._msgIdToHtml[n]=e}}else this._addError(t,'<translation> misses the "id" attribute');break;default:this._addError(t,"Unexpected tag")}}visitAttribute(t,e){}visitText(t,e){}visitComment(t,e){}visitExpansion(t,e){}visitExpansionCase(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}class Yt{convert(t){const e=new X(rt).parse(t,"",!0);return this._errors=e.errors,{i18nNodes:this._errors.length>0||0===e.rootNodes.length?[]:c(this,e.rootNodes),errors:this._errors}}visitText(t,e){return new h(t.value,t.sourceSpan)}visitExpansion(t,e){const n={};return c(this,t.cases).forEach(e=>{n[e.value]=new g(e.nodes,t.sourceSpan)}),new p(t.switchValue,t.type,n,t.sourceSpan)}visitExpansionCase(t,e){return{value:t.value,nodes:c(this,t.expression)}}visitElement(t,e){if("ph"===t.name){const e=t.attrs.find(t=>"name"===t.name);if(e)return new m("",e.value,t.sourceSpan);this._addError(t,'<ph> misses the "name" attribute')}else this._addError(t,"Unexpected tag");return null}visitComment(t,e){}visitAttribute(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}class Ht{constructor(t,e,n,a){this.input=e,this.errLocation=n,this.ctxLocation=a,this.message=`Parser Error: ${t} ${n} [${e}] in ${a}`}}class Ut{constructor(t,e){this.start=t,this.end=e}}class Wt{constructor(t){this.span=t}visit(t,e=null){return null}toString(){return"AST"}}class Kt extends Wt{constructor(t,e,n,a){super(t),this.prefix=e,this.uninterpretedExpression=n,this.location=a}visit(t,e=null){return t.visitQuote(this,e)}toString(){return"Quote"}}class $t extends Wt{visit(t,e=null){}}class Zt extends Wt{visit(t,e=null){return t.visitImplicitReceiver(this,e)}}class Jt extends Wt{constructor(t,e){super(t),this.expressions=e}visit(t,e=null){return t.visitChain(this,e)}}class Qt extends Wt{constructor(t,e,n,a){super(t),this.condition=e,this.trueExp=n,this.falseExp=a}visit(t,e=null){return t.visitConditional(this,e)}}class Xt extends Wt{constructor(t,e,n){super(t),this.receiver=e,this.name=n}visit(t,e=null){return t.visitPropertyRead(this,e)}}class te extends Wt{constructor(t,e,n,a){super(t),this.receiver=e,this.name=n,this.value=a}visit(t,e=null){return t.visitPropertyWrite(this,e)}}class ee extends Wt{constructor(t,e,n){super(t),this.receiver=e,this.name=n}visit(t,e=null){return t.visitSafePropertyRead(this,e)}}class ne extends Wt{constructor(t,e,n){super(t),this.obj=e,this.key=n}visit(t,e=null){return t.visitKeyedRead(this,e)}}class ae extends Wt{constructor(t,e,n,a){super(t),this.obj=e,this.key=n,this.value=a}visit(t,e=null){return t.visitKeyedWrite(this,e)}}class re extends Wt{constructor(t,e,n,a){super(t),this.exp=e,this.name=n,this.args=a}visit(t,e=null){return t.visitPipe(this,e)}}class ie extends Wt{constructor(t,e){super(t),this.value=e}visit(t,e=null){return t.visitLiteralPrimitive(this,e)}}class se extends Wt{constructor(t,e){super(t),this.expressions=e}visit(t,e=null){return t.visitLiteralArray(this,e)}}class ue extends Wt{constructor(t,e,n){super(t),this.keys=e,this.values=n}visit(t,e=null){return t.visitLiteralMap(this,e)}}class oe extends Wt{constructor(t,e,n){super(t),this.strings=e,this.expressions=n}visit(t,e=null){return t.visitInterpolation(this,e)}}class le extends Wt{constructor(t,e,n,a){super(t),this.operation=e,this.left=n,this.right=a}visit(t,e=null){return t.visitBinary(this,e)}}class de extends Wt{constructor(t,e){super(t),this.expression=e}visit(t,e=null){return t.visitPrefixNot(this,e)}}class ce extends Wt{constructor(t,e){super(t),this.expression=e}visit(t,e=null){return t.visitNonNullAssert(this,e)}}class fe extends Wt{constructor(t,e,n,a){super(t),this.receiver=e,this.name=n,this.args=a}visit(t,e=null){return t.visitMethodCall(this,e)}}class he extends Wt{constructor(t,e,n,a){super(t),this.receiver=e,this.name=n,this.args=a}visit(t,e=null){return t.visitSafeMethodCall(this,e)}}class ge extends Wt{constructor(t,e,n){super(t),this.target=e,this.args=n}visit(t,e=null){return t.visitFunctionCall(this,e)}}class pe extends Wt{constructor(t,e,n,a){super(new Ut(0,null==e?0:e.length)),this.ast=t,this.source=e,this.location=n,this.errors=a}visit(t,e=null){return this.ast.visit(t,e)}toString(){return`${this.source} in ${this.location}`}}class be{constructor(t,e,n,a,r){this.span=t,this.key=e,this.keyIsVar=n,this.name=a,this.expression=r}}const me=function(){var t={Character:0,Identifier:1,Keyword:2,String:3,Operator:4,Number:5,Error:6};return t[t.Character]="Character",t[t.Identifier]="Identifier",t[t.Keyword]="Keyword",t[t.String]="String",t[t.Operator]="Operator",t[t.Number]="Number",t[t.Error]="Error",t}(),ye=["var","let","as","null","undefined","true","false","if","else","this"];class ve{tokenize(t){const e=new Oe(t),n=[];let a=e.scanToken();for(;null!=a;)n.push(a),a=e.scanToken();return n}}class xe{constructor(t,e,n,a){this.index=t,this.type=e,this.numValue=n,this.strValue=a}isCharacter(t){return this.type===me.Character&&this.numValue===t}isNumber(){return this.type===me.Number}isString(){return this.type===me.String}isOperator(t){return this.type===me.Operator&&this.strValue===t}isIdentifier(){return this.type===me.Identifier}isKeyword(){return this.type===me.Keyword}isKeywordLet(){return this.type===me.Keyword&&"let"===this.strValue}isKeywordAs(){return this.type===me.Keyword&&"as"===this.strValue}isKeywordNull(){return this.type===me.Keyword&&"null"===this.strValue}isKeywordUndefined(){return this.type===me.Keyword&&"undefined"===this.strValue}isKeywordTrue(){return this.type===me.Keyword&&"true"===this.strValue}isKeywordFalse(){return this.type===me.Keyword&&"false"===this.strValue}isKeywordThis(){return this.type===me.Keyword&&"this"===this.strValue}isError(){return this.type===me.Error}toNumber(){return this.type===me.Number?this.numValue:-1}toString(){switch(this.type){case me.Character:case me.Identifier:case me.Keyword:case me.Operator:case me.String:case me.Error:return this.strValue;case me.Number:return this.numValue.toString();default:return null}}}function _e(t,e){return new xe(t,me.Character,e,String.fromCharCode(e))}function Te(t,e){return new xe(t,me.Operator,0,e)}const we=new xe(-1,me.Character,0,"");class Oe{constructor(t){this.input=t,this.peek=0,this.index=-1,this.length=t.length,this.advance()}advance(){this.peek=++this.index>=this.length?0:this.input.charCodeAt(this.index)}scanToken(){const t=this.input,e=this.length;let n=this.peek,a=this.index;for(;n<=32;){if(++a>=e){n=0;break}n=t.charCodeAt(a)}if(this.peek=n,this.index=a,a>=e)return null;if(Se(n))return this.scanIdentifier();if(R(n))return this.scanNumber(a);const r=a;switch(n){case 46:return this.advance(),R(this.peek)?this.scanNumber(r):_e(r,46);case 40:case 41:case 123:case 125:case 91:case 93:case 44:case 58:case 59:return this.scanCharacter(r,n);case 39:case 34:return this.scanString();case 35:case 43:case 45:case 42:case 47:case 37:case 94:return this.scanOperator(r,String.fromCharCode(n));case 63:return this.scanComplexOperator(r,"?",46,".");case 60:case 62:return this.scanComplexOperator(r,String.fromCharCode(n),61,"=");case 33:case 61:return this.scanComplexOperator(r,String.fromCharCode(n),61,"=",61,"=");case 38:return this.scanComplexOperator(r,"&",38,"&");case 124:return this.scanComplexOperator(r,"|",124,"|");case 160:for(;C(this.peek);)this.advance();return this.scanToken()}return this.advance(),this.error(`Unexpected character [${String.fromCharCode(n)}]`,0)}scanCharacter(t,e){return this.advance(),_e(t,e)}scanOperator(t,e){return this.advance(),Te(t,e)}scanComplexOperator(t,e,n,a,r,i){this.advance();let s=e;return this.peek===n&&(this.advance(),s+=a),null!=r&&this.peek===r&&(this.advance(),s+=i),Te(t,s)}scanIdentifier(){const t=this.index;for(this.advance();Ie(this.peek);)this.advance();const e=this.input.substring(t,this.index);return ye.indexOf(e)>-1?new xe(t,me.Keyword,0,e):function(t,e){return new xe(t,me.Identifier,0,e)}(t,e)}scanNumber(t){let e=this.index===t;for(this.advance();;){if(R(this.peek));else if(46===this.peek)e=!1;else{if(101!==(n=this.peek)&&69!==n)break;if(this.advance(),Ne(this.peek)&&this.advance(),!R(this.peek))return this.error("Invalid exponent",-1);e=!1}this.advance()}var n;const a=this.input.substring(t,this.index),r=e?function(t){const e=parseInt(t,10);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+t);return e}(a):parseFloat(a);return new xe(t,me.Number,r,"")}scanString(){const t=this.index,e=this.peek;this.advance();let n="",a=this.index;const r=this.input;for(;this.peek!==e;)if(92===this.peek){let t;if(n+=r.substring(a,this.index),this.advance(),this.peek=this.peek,117===this.peek){const e=r.substring(this.index+1,this.index+5);if(!/^[0-9a-f]+$/i.test(e))return this.error(`Invalid unicode escape [\\u${e}]`,0);t=parseInt(e,16);for(let t=0;t<5;t++)this.advance()}else t=Ce(this.peek),this.advance();n+=String.fromCharCode(t),a=this.index}else{if(0===this.peek)return this.error("Unterminated quote",0);this.advance()}const i=r.substring(a,this.index);return this.advance(),new xe(t,me.String,0,n+i)}error(t,e){const n=this.index+e;return function(t,e){return new xe(t,me.Error,0,e)}(n,`Lexer Error: ${t} at column ${n} in expression [${this.input}]`)}}function Se(t){return 97<=t&&t<=122||65<=t&&t<=90||95===t||36===t}function Ie(t){return A(t)||R(t)||95===t||36===t}function Ne(t){return 45===t||43===t}function Ce(t){switch(t){case 110:return 10;case 102:return 12;case 114:return 13;case 116:return 9;case 118:return 11;default:return t}}class Re{constructor(t,e,n){this.strings=t,this.expressions=e,this.offsets=n}}class Ae{constructor(t,e,n){this.templateBindings=t,this.warnings=e,this.errors=n}}function ke(t){const e=S(t.start)+"([\\s\\S]*?)"+S(t.end);return new RegExp(e,"g")}class Ee{constructor(t){this._lexer=t,this.errors=[]}parseAction(t,e,n=N){this._checkNoInterpolation(t,e,n);const a=this._stripComments(t),r=this._lexer.tokenize(this._stripComments(t)),i=new Le(t,e,r,a.length,!0,this.errors,t.length-a.length).parseChain();return new pe(i,t,e,this.errors)}parseBinding(t,e,n=N){const a=this._parseBindingAst(t,e,n);return new pe(a,t,e,this.errors)}parseSimpleBinding(t,e,n=N){const a=this._parseBindingAst(t,e,n),r=De.check(a);return r.length>0&&this._reportError("Host binding expression cannot contain "+r.join(" "),t,e),new pe(a,t,e,this.errors)}_reportError(t,e,n,a){this.errors.push(new Ht(t,e,n,a))}_parseBindingAst(t,e,n){const a=this._parseQuote(t,e);if(null!=a)return a;this._checkNoInterpolation(t,e,n);const r=this._stripComments(t),i=this._lexer.tokenize(r);return new Le(t,e,i,r.length,!1,this.errors,t.length-r.length).parseChain()}_parseQuote(t,e){if(null===t)return null;const n=t.indexOf(":");if(-1===n)return null;const a=t.substring(0,n).trim();if(!function(t){if(0===t.length)return!1;const e=new Oe(t);if(!Se(e.peek))return!1;for(e.advance();0!==e.peek;){if(!Ie(e.peek))return!1;e.advance()}return!0}(a))return null;const r=t.substring(n+1);return new Kt(new Ut(0,t.length),a,r,e)}parseTemplateBindings(t,e,n){const a=this._lexer.tokenize(e);if(t){const e=this._lexer.tokenize(t).map(t=>(t.index=0,t));a.unshift(...e)}return new Le(e,n,a,e.length,!1,this.errors,0).parseTemplateBindings()}parseInterpolation(t,e,n=N){const a=this.splitInterpolation(t,e,n);if(null===a)return null;const r=[];for(let i=0;i<a.expressions.length;++i){const n=a.expressions[i],s=this._stripComments(n),u=this._lexer.tokenize(s),o=new Le(t,e,u,s.length,!1,this.errors,a.offsets[i]+(n.length-s.length)).parseChain();r.push(o)}return new pe(new oe(new Ut(0,null===t?0:t.length),a.strings,r),t,e,this.errors)}splitInterpolation(t,e,n=N){const a=ke(n),r=t.split(a);if(r.length<=1)return null;const i=[],s=[],u=[];let o=0;for(let l=0;l<r.length;l++){const a=r[l];l%2==0?(i.push(a),o+=a.length):a.trim().length>0?(o+=n.start.length,s.push(a),u.push(o),o+=a.length+n.end.length):(this._reportError("Blank expressions are not allowed in interpolated strings",t,`at column ${this._findInterpolationErrorColumn(r,l,n)} in`,e),s.push("$implict"),u.push(o))}return new Re(i,s,u)}wrapLiteralPrimitive(t,e){return new pe(new ie(new Ut(0,null===t?0:t.length),t),t,e,this.errors)}_stripComments(t){const e=this._commentStart(t);return null!=e?t.substring(0,e).trim():t}_commentStart(t){let e=null;for(let a=0;a<t.length-1;a++){const r=t.charCodeAt(a),i=t.charCodeAt(a+1);if(47===r&&47===i&&null===e)return a;e===r?e=null:null===e&&(39===(n=r)||34===n||96===n)&&(e=r)}var n;return null}_checkNoInterpolation(t,e,n){const a=ke(n),r=t.split(a);r.length>1&&this._reportError(`Got interpolation (${n.start}${n.end}) where expression was expected`,t,`at column ${this._findInterpolationErrorColumn(r,1,n)} in`,e)}_findInterpolationErrorColumn(t,e,n){let a="";for(let r=0;r<e;r++)a+=r%2==0?t[r]:`${n.start}${t[r]}${n.end}`;return a.length}}class Le{constructor(t,e,n,a,r,i,s){this.input=t,this.location=e,this.tokens=n,this.inputLength=a,this.parseAction=r,this.errors=i,this.offset=s,this.rparensExpected=0,this.rbracketsExpected=0,this.rbracesExpected=0,this.index=0}peek(t){const e=this.index+t;return e<this.tokens.length?this.tokens[e]:we}get next(){return this.peek(0)}get inputIndex(){return this.index<this.tokens.length?this.next.index+this.offset:this.inputLength+this.offset}span(t){return new Ut(t,this.inputIndex)}advance(){this.index++}optionalCharacter(t){return!!this.next.isCharacter(t)&&(this.advance(),!0)}peekKeywordLet(){return this.next.isKeywordLet()}peekKeywordAs(){return this.next.isKeywordAs()}expectCharacter(t){this.optionalCharacter(t)||this.error("Missing expected "+String.fromCharCode(t))}optionalOperator(t){return!!this.next.isOperator(t)&&(this.advance(),!0)}expectOperator(t){this.optionalOperator(t)||this.error("Missing expected operator "+t)}expectIdentifierOrKeyword(){const t=this.next;return t.isIdentifier()||t.isKeyword()?(this.advance(),t.toString()):(this.error(`Unexpected token ${t}, expected identifier or keyword`),"")}expectIdentifierOrKeywordOrString(){const t=this.next;return t.isIdentifier()||t.isKeyword()||t.isString()?(this.advance(),t.toString()):(this.error(`Unexpected token ${t}, expected identifier, keyword, or string`),"")}parseChain(){const t=[],e=this.inputIndex;for(;this.index<this.tokens.length;){const e=this.parsePipe();if(t.push(e),this.optionalCharacter(59))for(this.parseAction||this.error("Binding expression cannot contain chained expression");this.optionalCharacter(59););else this.index<this.tokens.length&&this.error(`Unexpected token '${this.next}'`)}return 0===t.length?new $t(this.span(e)):1===t.length?t[0]:new Jt(this.span(e),t)}parsePipe(){let t=this.parseExpression();if(this.optionalOperator("|")){this.parseAction&&this.error("Cannot have a pipe in an action expression");do{const e=this.expectIdentifierOrKeyword(),n=[];for(;this.optionalCharacter(58);)n.push(this.parseExpression());t=new re(this.span(t.span.start),t,e,n)}while(this.optionalOperator("|"))}return t}parseExpression(){return this.parseConditional()}parseConditional(){const t=this.inputIndex,e=this.parseLogicalOr();if(this.optionalOperator("?")){const n=this.parsePipe();let a;if(this.optionalCharacter(58))a=this.parsePipe();else{const e=this.input.substring(t,this.inputIndex);this.error(`Conditional expression ${e} requires all 3 expressions`),a=new $t(this.span(t))}return new Qt(this.span(t),e,n,a)}return e}parseLogicalOr(){let t=this.parseLogicalAnd();for(;this.optionalOperator("||");){const e=this.parseLogicalAnd();t=new le(this.span(t.span.start),"||",t,e)}return t}parseLogicalAnd(){let t=this.parseEquality();for(;this.optionalOperator("&&");){const e=this.parseEquality();t=new le(this.span(t.span.start),"&&",t,e)}return t}parseEquality(){let t=this.parseRelational();for(;this.next.type===me.Operator;){const e=this.next.strValue;switch(e){case"==":case"===":case"!=":case"!==":this.advance();const n=this.parseRelational();t=new le(this.span(t.span.start),e,t,n);continue}break}return t}parseRelational(){let t=this.parseAdditive();for(;this.next.type===me.Operator;){const e=this.next.strValue;switch(e){case"<":case">":case"<=":case">=":this.advance();const n=this.parseAdditive();t=new le(this.span(t.span.start),e,t,n);continue}break}return t}parseAdditive(){let t=this.parseMultiplicative();for(;this.next.type===me.Operator;){const e=this.next.strValue;switch(e){case"+":case"-":this.advance();const n=this.parseMultiplicative();t=new le(this.span(t.span.start),e,t,n);continue}break}return t}parseMultiplicative(){let t=this.parsePrefix();for(;this.next.type===me.Operator;){const e=this.next.strValue;switch(e){case"*":case"%":case"/":this.advance();const n=this.parsePrefix();t=new le(this.span(t.span.start),e,t,n);continue}break}return t}parsePrefix(){if(this.next.type===me.Operator){const t=this.inputIndex,e=this.next.strValue;let n;switch(e){case"+":return this.advance(),this.parsePrefix();case"-":return this.advance(),n=this.parsePrefix(),new le(this.span(t),e,new ie(new Ut(t,t),0),n);case"!":return this.advance(),n=this.parsePrefix(),new de(this.span(t),n)}}return this.parseCallChain()}parseCallChain(){let t=this.parsePrimary();for(;;)if(this.optionalCharacter(46))t=this.parseAccessMemberOrMethodCall(t,!1);else if(this.optionalOperator("?."))t=this.parseAccessMemberOrMethodCall(t,!0);else if(this.optionalCharacter(91)){this.rbracketsExpected++;const e=this.parsePipe();if(this.rbracketsExpected--,this.expectCharacter(93),this.optionalOperator("=")){const n=this.parseConditional();t=new ae(this.span(t.span.start),t,e,n)}else t=new ne(this.span(t.span.start),t,e)}else if(this.optionalCharacter(40)){this.rparensExpected++;const e=this.parseCallArguments();this.rparensExpected--,this.expectCharacter(41),t=new ge(this.span(t.span.start),t,e)}else{if(!this.optionalOperator("!"))return t;t=new ce(this.span(t.span.start),t)}}parsePrimary(){const t=this.inputIndex;if(this.optionalCharacter(40)){this.rparensExpected++;const t=this.parsePipe();return this.rparensExpected--,this.expectCharacter(41),t}if(this.next.isKeywordNull())return this.advance(),new ie(this.span(t),null);if(this.next.isKeywordUndefined())return this.advance(),new ie(this.span(t),void 0);if(this.next.isKeywordTrue())return this.advance(),new ie(this.span(t),!0);if(this.next.isKeywordFalse())return this.advance(),new ie(this.span(t),!1);if(this.next.isKeywordThis())return this.advance(),new Zt(this.span(t));if(this.optionalCharacter(91)){this.rbracketsExpected++;const e=this.parseExpressionList(93);return this.rbracketsExpected--,this.expectCharacter(93),new se(this.span(t),e)}if(this.next.isCharacter(123))return this.parseLiteralMap();if(this.next.isIdentifier())return this.parseAccessMemberOrMethodCall(new Zt(this.span(t)),!1);if(this.next.isNumber()){const e=this.next.toNumber();return this.advance(),new ie(this.span(t),e)}if(this.next.isString()){const e=this.next.toString();return this.advance(),new ie(this.span(t),e)}return this.index>=this.tokens.length?(this.error("Unexpected end of expression: "+this.input),new $t(this.span(t))):(this.error("Unexpected token "+this.next),new $t(this.span(t)))}parseExpressionList(t){const e=[];if(!this.next.isCharacter(t))do{e.push(this.parsePipe())}while(this.optionalCharacter(44));return e}parseLiteralMap(){const t=[],e=[],n=this.inputIndex;if(this.expectCharacter(123),!this.optionalCharacter(125)){this.rbracesExpected++;do{const n=this.next.isString(),a=this.expectIdentifierOrKeywordOrString();t.push({key:a,quoted:n}),this.expectCharacter(58),e.push(this.parsePipe())}while(this.optionalCharacter(44));this.rbracesExpected--,this.expectCharacter(125)}return new ue(this.span(n),t,e)}parseAccessMemberOrMethodCall(t,e=!1){const n=t.span.start,a=this.expectIdentifierOrKeyword();if(this.optionalCharacter(40)){this.rparensExpected++;const r=this.parseCallArguments();this.expectCharacter(41),this.rparensExpected--;const i=this.span(n);return e?new he(i,t,a,r):new fe(i,t,a,r)}if(e)return this.optionalOperator("=")?(this.error("The '?.' operator cannot be used in the assignment"),new $t(this.span(n))):new ee(this.span(n),t,a);if(this.optionalOperator("=")){if(!this.parseAction)return this.error("Bindings cannot contain assignments"),new $t(this.span(n));const e=this.parseConditional();return new te(this.span(n),t,a,e)}return new Xt(this.span(n),t,a)}parseCallArguments(){if(this.next.isCharacter(41))return[];const t=[];do{t.push(this.parsePipe())}while(this.optionalCharacter(44));return t}expectTemplateBindingKey(){let t="",e=!1;do{t+=this.expectIdentifierOrKeywordOrString(),e=this.optionalOperator("-"),e&&(t+="-")}while(e);return t.toString()}parseTemplateBindings(){const t=[];let e=null;for(;this.index<this.tokens.length;){const n=this.inputIndex;let a=this.peekKeywordLet();a&&this.advance();const r=this.expectTemplateBindingKey();let i=r;a||(null===e?e=i:i=e+i[0].toUpperCase()+i.substring(1)),this.optionalCharacter(58);let s=null,u=null;if(a)s=this.optionalOperator("=")?this.expectTemplateBindingKey():"$implicit";else if(this.peekKeywordAs())this.advance(),s=r,i=this.expectTemplateBindingKey(),a=!0;else if(this.next!==we&&!this.peekKeywordLet()){const t=this.inputIndex,e=this.parsePipe(),n=this.input.substring(t-this.offset,this.inputIndex-this.offset);u=new pe(e,n,this.location,this.errors)}if(t.push(new be(this.span(n),i,a,s,u)),this.peekKeywordAs()&&!a){const e=this.inputIndex;this.advance();const n=this.expectTemplateBindingKey();t.push(new be(this.span(e),n,!0,i,null))}this.optionalCharacter(59)||this.optionalCharacter(44)}return new Ae(t,[],this.errors)}error(t,e=null){this.errors.push(new Ht(t,this.input,this.locationText(e),this.location)),this.skip()}locationText(t=null){return null===t&&(t=this.index),t<this.tokens.length?`at column ${this.tokens[t].index+1} in`:"at the end of the expression"}skip(){let t=this.next;for(;this.index<this.tokens.length&&!t.isCharacter(59)&&(this.rparensExpected<=0||!t.isCharacter(41))&&(this.rbracesExpected<=0||!t.isCharacter(125))&&(this.rbracketsExpected<=0||!t.isCharacter(93));)this.next.isError()&&this.errors.push(new Ht(this.next.toString(),this.input,this.locationText(),this.location)),this.advance(),t=this.next}}class De{constructor(){this.errors=[]}static check(t){const e=new De;return t.visit(e),e.errors}visitImplicitReceiver(t,e){}visitInterpolation(t,e){}visitLiteralPrimitive(t,e){}visitPropertyRead(t,e){}visitPropertyWrite(t,e){}visitSafePropertyRead(t,e){}visitMethodCall(t,e){}visitSafeMethodCall(t,e){}visitFunctionCall(t,e){}visitLiteralArray(t,e){this.visitAll(t.expressions)}visitLiteralMap(t,e){this.visitAll(t.values)}visitBinary(t,e){}visitPrefixNot(t,e){}visitNonNullAssert(t,e){}visitConditional(t,e){}visitPipe(t,e){this.errors.push("pipes")}visitKeyedRead(t,e){}visitKeyedWrite(t,e){}visitAll(t){return t.map(t=>t.visit(this))}visitChain(t,e){}visitQuote(t,e){}}const Pe={A:"LINK",B:"BOLD_TEXT",BR:"LINE_BREAK",EM:"EMPHASISED_TEXT",H1:"HEADING_LEVEL1",H2:"HEADING_LEVEL2",H3:"HEADING_LEVEL3",H4:"HEADING_LEVEL4",H5:"HEADING_LEVEL5",H6:"HEADING_LEVEL6",HR:"HORIZONTAL_RULE",I:"ITALIC_TEXT",LI:"LIST_ITEM",LINK:"MEDIA_LINK",OL:"ORDERED_LIST",P:"PARAGRAPH",Q:"QUOTATION",S:"STRIKETHROUGH_TEXT",SMALL:"SMALL_TEXT",SUB:"SUBSTRIPT",SUP:"SUPERSCRIPT",TBODY:"TABLE_BODY",TD:"TABLE_CELL",TFOOT:"TABLE_FOOTER",TH:"TABLE_HEADER_CELL",THEAD:"TABLE_HEADER",TR:"TABLE_ROW",TT:"MONOSPACED_TEXT",U:"UNDERLINED_TEXT",UL:"UNORDERED_LIST"};class Me{constructor(){this._placeHolderNameCounts={},this._signatureToName={}}getStartTagPlaceholderName(t,e,n){const a=this._hashTag(t,e,n);if(this._signatureToName[a])return this._signatureToName[a];const r=t.toUpperCase(),i=Pe[r]||"TAG_"+r,s=this._generateUniqueName(n?i:"START_"+i);return this._signatureToName[a]=s,s}getCloseTagPlaceholderName(t){const e=this._hashClosingTag(t);if(this._signatureToName[e])return this._signatureToName[e];const n=t.toUpperCase(),a=this._generateUniqueName("CLOSE_"+(Pe[n]||"TAG_"+n));return this._signatureToName[e]=a,a}getPlaceholderName(t,e){const n=t.toUpperCase(),a=`PH: ${n}=${e}`;if(this._signatureToName[a])return this._signatureToName[a];const r=this._generateUniqueName(n);return this._signatureToName[a]=r,r}getUniquePlaceholder(t){return this._generateUniqueName(t.toUpperCase())}_hashTag(t,e,n){return"<"+t+Object.keys(e).sort().map(t=>` ${t}=${e[t]}`).join("")+(n?"/>":`></${t}>`)}_hashClosingTag(t){return this._hashTag("/"+t,{},!1)}_generateUniqueName(t){if(!this._placeHolderNameCounts.hasOwnProperty(t))return this._placeHolderNameCounts[t]=1,t;const e=this._placeHolderNameCounts[t];return this._placeHolderNameCounts[t]=e+1,`${t}_${e}`}}const qe=new Ee(new ve);class je{constructor(t,e){this._expressionParser=t,this._interpolationConfig=e}toI18nMessage(t,e,n,a){this._isIcu=1===t.length&&t[0]instanceof s,this._icuDepth=0,this._placeholderRegistry=new Me,this._placeholderToContent={},this._placeholderToMessage={};const r=c(this,t,{});return new f(r,this._placeholderToContent,this._placeholderToMessage,e,n,a)}visitElement(t,e){const n=c(this,t.children),a={};t.attrs.forEach(t=>{a[t.name]=t.value});const r=ot(t.name).isVoid,i=this._placeholderRegistry.getStartTagPlaceholderName(t.name,a,r);this._placeholderToContent[i]=t.sourceSpan?t.sourceSpan.toString():"";let s="";return r||(s=this._placeholderRegistry.getCloseTagPlaceholderName(t.name),this._placeholderToContent[s]=`</${t.name}>`),new b(t.name,a,i,s,n,r,t.sourceSpan)}visitAttribute(t,e){return this._visitTextWithInterpolation(t.value,t.sourceSpan)}visitText(t,e){return this._visitTextWithInterpolation(t.value,t.sourceSpan)}visitComment(t,e){return null}visitExpansion(t,e){this._icuDepth++;const n={},a=new p(t.switchValue,t.type,n,t.sourceSpan);if(t.cases.forEach(t=>{n[t.value]=new g(t.expression.map(t=>t.visit(this,{})),t.expSourceSpan)}),this._icuDepth--,this._isIcu||this._icuDepth>0){const e=this._placeholderRegistry.getUniquePlaceholder("VAR_"+t.type);return a.expressionPlaceholder=e,this._placeholderToContent[e]=t.switchValue,a}const r=this._placeholderRegistry.getPlaceholderName("ICU",t.sourceSpan.toString()),i=new je(this._expressionParser,this._interpolationConfig);return this._placeholderToMessage[r]=i.toI18nMessage([t],"","",""),new y(a,r,t.sourceSpan)}visitExpansionCase(t,e){throw new Error("Unreachable code")}_visitTextWithInterpolation(t,e){const n=this._expressionParser.splitInterpolation(t,e.start.toString(),this._interpolationConfig);if(!n)return new h(t,e);const a=[],r=new g(a,e),{start:i,end:s}=this._interpolationConfig;for(let o=0;o<n.strings.length-1;o++){const t=n.expressions[o],r=t.split(Fe)[2]||"INTERPOLATION",u=this._placeholderRegistry.getPlaceholderName(r,t);n.strings[o].length&&a.push(new h(n.strings[o],e)),a.push(new m(t,u,e)),this._placeholderToContent[u]=i+t+s}const u=n.strings.length-1;return n.strings[u].length&&a.push(new h(n.strings[u],e)),r}}const Fe=/\/\/[\s\S]*i18n[\s\S]*\([\s\S]*ph[\s\S]*=[\s\S]*("|')([\s\S]*?)\1[\s\S]*\)/g;class Ve extends X{constructor(t=N){super(ot),this.interpolationConfig=t}parse(t,e,n=!1){return super.parse(t,e,n,this.interpolationConfig)}extractMessages(t){const e=new He(["wrapper"]),n=new l("wrapper",[],t,void 0,void 0,void 0);return e.extract(n,this.interpolationConfig)}mergeTranslations(t,e,n,a,r=[]){const i=new He(r),s=new l("wrapper",[],t,void 0,void 0,void 0);return i.merge(s,e,this.interpolationConfig,n,a)}}class Ge{constructor(t,e){this.messages=t,this.errors=e}}class Be{constructor(t={},e,n,a,r,i){this.i18nNodesByMsgId=t,this.digest=e,this.mapperFactory=r,this.i18nToHtml=new ze(t,e,r,a,n,i)}static load(t,e,n,a,r,i,s=N){const u=r(t,e);return new Be(u,t=>n(t),s,i,t=>a(t),console)}get(t,e){const n=this.i18nToHtml.convert(t,e);if(n.errors.length)throw new Error(n.errors.join("\n"));return n.nodes}has(t){return this.digest(t)in this.i18nNodesByMsgId}}class ze{constructor(t={},e,n,a,r,i){this._i18nNodesByMsgId=t,this._digest=e,this._mapperFactory=n,this._missingTranslationStrategy=a,this._interpolationConfig=r,this._console=i,this._contextStack=[],this._errors=[]}convert(t,e){this._contextStack.length=0,this._errors.length=0,this._params=e,this._paramKeys=Object.keys(e);const n=this.convertToText(t),a=t.nodes[0].sourceSpan.start.file.url,r=(new Ve).parse(n,a,!0);return{nodes:r.rootNodes,errors:[...this._errors,...r.errors]}}visitText(t,e){return t.value}visitContainer(t,e){return t.children.map(t=>t.visit(this)).join("")}visitIcu(t,e){const n=Object.keys(t.cases).map(e=>`${e} {${t.cases[e].visit(this)}}`);return`{${this._srcMsg.placeholders.hasOwnProperty(t.expression)?this._srcMsg.placeholders[t.expression]:t.expression}, ${t.type}, ${n.join(" ")}}`}visitPlaceholder(t,e){const n=this._mapper(t.name);return this._srcMsg.placeholders.hasOwnProperty(n)?this.convertToValue(this._srcMsg.placeholders[n]):this._srcMsg.placeholderToMessage.hasOwnProperty(n)?this.convertToText(this._srcMsg.placeholderToMessage[n]):(this._addError(t,`Unknown placeholder "${t.name}"`),"")}visitTagPlaceholder(t,e){const n=""+t.tag,a=Object.keys(t.attrs).map(e=>`${e}="${t.attrs[e]}"`).join(" ");return t.isVoid?`<${n} ${a}/>`:`<${n} ${a}>${t.children.map(t=>t.visit(this)).join("")}</${n}>`}visitIcuPlaceholder(t,e){return this.convertToText(this._srcMsg.placeholderToMessage[t.name])}convertToText(t){const e=this._digest(t),n=this._mapperFactory?this._mapperFactory(t):null;let a;this._contextStack.push({msg:this._srcMsg,mapper:this._mapper}),this._srcMsg=t,this._i18nNodesByMsgId.hasOwnProperty(e)?(a=this._i18nNodesByMsgId[e],this._mapper=t=>n?n.toInternalName(t):t):(this._missingTranslationStrategy===r.MissingTranslationStrategy.Error?this._addError(t.nodes[0],`Missing translation for message "${e}"`):this._console&&this._missingTranslationStrategy===r.MissingTranslationStrategy.Warning&&this._console.warn(`Missing translation for message "${e}"`),a=t.nodes,this._mapper=t=>t);const i=a.map(t=>t.visit(this)).join(""),s=this._contextStack.pop();return this._srcMsg=s.msg,this._mapper=s.mapper,i}convertToValue(t){const e=t.replace(this._interpolationConfig.start,"").replace(this._interpolationConfig.end,"");return-1!==this._paramKeys.indexOf(e)?this._params[e]:t}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}const Ye=function(){var t={Extract:0,Merge:1};return t[t.Extract]="Extract",t[t.Merge]="Merge",t}();class He{constructor(t=[]){this._implicitTags=t,this.blockChildren=[]}extract(t,e){return this.init(Ye.Extract,e),t.visit(this,null),this.inI18nBlock&&this._reportError(t,"Unclosed block"),new Ge(this.messages,this.errors)}merge(t,e,n,a,r={}){this.init(Ye.Merge,n,a),this.translations=e,this.metadata=r;const i=t.visit(this,null);return this.inI18nBlock&&this._reportError(t,"Unclosed block"),new Q(i.children,this.errors)}visitExpansionCase(t,e){const n=c(this,t.expression,e);if(this.mode===Ye.Merge)return new u(t.value,n,t.sourceSpan,t.valueSourceSpan,t.expSourceSpan)}visitExpansion(t,e){this.mayBeAddBlockChildren(t);const n=this.inIcu;this.inIcu||(this.isInTranslatableSection&&this.addMessage([t]),this.inIcu=!0);const a=c(this,t.cases,e);return this.mode===Ye.Merge&&(t=new s(t.switchValue,t.type,a,t.sourceSpan,t.switchValueSourceSpan)),this.inIcu=n,t}visitComment(t,e){}visitText(t,e){return this.isInTranslatableSection&&this.mayBeAddBlockChildren(t),t}visitElement(t,e){this.mayBeAddBlockChildren(t),this.depth++;const n=this.inI18nNode,a=this.inImplicitNode;let r=[],i=void 0;const s=t.attrs.find(t=>"i18n"===t.name)||null,u=this._implicitTags.some(e=>t.name===e)&&!this.inIcu&&!this.isInTranslatableSection,o=!a&&u;if(this.inImplicitNode=a||u,this.isInTranslatableSection||this.inIcu)(s||o)&&this._reportError(t,"Could not mark an element as translatable inside a translatable section"),this.mode===Ye.Extract&&c(this,t.children);else{if(s||o){this.inI18nNode=!0;const e=this.addMessage(t.children,this.metadata);i=this.translateMessage(t,e)}if(this.mode===Ye.Extract){const e=s||o;e&&this.openTranslatableSection(t),c(this,t.children),e&&this._closeTranslatableSection(t,t.children)}}return this.mode===Ye.Merge&&(i||t.children).forEach(t=>{const n=t.visit(this,e);n&&!this.isInTranslatableSection&&(r=r.concat(n))}),this.depth--,this.inI18nNode=n,this.inImplicitNode=a,this.mode===Ye.Merge?new l(t.name,[],r,t.sourceSpan,t.startSourceSpan,t.endSourceSpan):null}visitAttribute(t,e){throw new Error("unreachable code")}init(t,e,n={}){this.mode=t,this.inI18nBlock=!1,this.inI18nNode=!1,this.depth=0,this.inIcu=!1,this.msgCountAtSectionStart=void 0,this.errors=[],this.messages=[],this.inImplicitNode=!1,this.createI18nMessage=function(t){const e=new je(qe,t);return(t,n,a,r)=>e.toI18nMessage(t,n,a,r)}(e),this.params=n}addMessage(t,{meaning:e="",description:n="",id:a=""}={}){if(0===t.length||1===t.length&&t[0]instanceof o&&!t[0].value)return null;const r=this.createI18nMessage(t,e,n,a);return this.messages.push(r),r}translateMessage(t,e){if(e&&this.mode===Ye.Merge){const n=this.translations.get(e,this.params);if(n)return n;this._reportError(t,`Translation unavailable for message id="${this.translations.digest(e)}"`)}return[]}mayBeAddBlockChildren(t){this.inI18nBlock&&!this.inIcu&&this.depth===this.blockStartDepth&&this.blockChildren.push(t)}openTranslatableSection(t){this.isInTranslatableSection?this._reportError(t,"Unexpected section start"):this.msgCountAtSectionStart=this.messages.length}get isInTranslatableSection(){return void 0!==this.msgCountAtSectionStart}_closeTranslatableSection(t,e){if(!this.isInTranslatableSection)return void this._reportError(t,"Unexpected section end");const n=this.msgCountAtSectionStart;if(1===e.reduce((t,e)=>t+(e instanceof d?0:1),0))for(let a=this.messages.length-1;a>=n;a--){const t=this.messages[a].nodes;if(!(1===t.length&&t[0]instanceof h)){this.messages.splice(a,1);break}}this.msgCountAtSectionStart=void 0}_reportError(t,e){this.errors.push(new O(t.sourceSpan,e))}}const Ue=new r.InjectionToken("MissingTranslationStrategy");class We{constructor(t,e,n,a=r.MissingTranslationStrategy.Warning){let i,s,u=t=>null;switch(t=(t||"xlf").toLowerCase()){case"xtb":i=Vt,s=Gt,u=Bt;break;case"xliff2":case"xlf2":i=Pt,s=Mt;break;case"xliff":case"xlf":i=kt,s=Et;break;default:throw new Error("Unknown translations format "+t)}const o=new Ve,l=Be.load(e,"i18n",s,u,i,a);return(t,e={})=>{const a="string"==typeof t?t:t.value,r={};"object"==typeof t&&(r.id=t.id,r.meaning=t.meaning,r.description=t.description);const i=o.parse(a,"",!0);if(i.errors.length)throw i.errors;return function(t,e,n){return t.map(t=>t.visit(new ct(e,n),null))}(o.mergeTranslations(i.rootNodes,l,e,r,["wrapper"]).rootNodes,n,e).join("")}}}},GyhO:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("LRne"),r=n("0EUg");function i(...t){return Object(r.a)()(Object(a.a)(...t))}},"H+zY":function(t,e,n){var a=n("5EpR");t.exports=function(t){var e=a(t),n=e%1;return e==e?n?e-n:e:0}},H8ED:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a,r;return"m"===n?e?"хвіліна":"хвіліну":"h"===n?e?"гадзіна":"гадзіну":t+" "+(a=+t,r={ss:e?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:e?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:e?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}t.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:e,mm:e,h:e,hh:e,d:"дзень",dd:e,M:"месяц",MM:e,y:"год",yy:e},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(t){return/^(дня|вечара)$/.test(t)},meridiem:function(t,e,n){return t<4?"ночы":t<12?"раніцы":t<17?"дня":"вечара"},dayOfMonthOrdinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(t,e){switch(e){case"M":case"d":case"DDD":case"w":case"W":return t%10!=2&&t%10!=3||t%100==12||t%100==13?t+"-ы":t+"-і";case"D":return t+"-га";default:return t}},week:{dow:1,doy:7}})}(n("wd/R"))},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HDdC:function(t,e,n){"use strict";var a=n("7o/Q"),r=n("2QA8"),i=n("gRHU"),s=n("kJWO"),u=n("mCNh"),o=n("2fFW");n.d(e,"a",(function(){return l}));let l=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,u=function(t,e,n){if(t){if(t instanceof a.a)return t;if(t[r.a])return t[r.a]()}return t||e||n?new a.a(t,e,n):new a.a(i.a)}(t,e,n);if(u.add(s?s.call(u,this.source):this.source||o.a.useDeprecatedSynchronousErrorHandling&&!u.syncErrorThrowable?this._subscribe(u):this._trySubscribe(u)),o.a.useDeprecatedSynchronousErrorHandling&&u.syncErrorThrowable&&(u.syncErrorThrowable=!1,u.syncErrorThrown))throw u.syncErrorValue;return u}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.a.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof a.a?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=d(e))((e,n)=>{let a;a=this.subscribe(e=>{try{t(e)}catch(r){n(r),a&&a.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[s.a](){return this}pipe(...t){return 0===t.length?this:Object(u.b)(t)(this)}toPromise(t){return new(t=d(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function d(t){if(t||(t=o.a.Promise||Promise),!t)throw new Error("no Promise impl found");return t}},HH4o:function(t,e,n){var a=n("tiKp")("iterator"),r=!1;try{var i=0,s={next:function(){return{done:!!i++}},return:function(){r=!0}};s[a]=function(){return this},Array.from(s,(function(){throw 2}))}catch(u){}t.exports=function(t,e){if(!e&&!r)return!1;var n=!1;try{var i={};i[a]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(u){}return n}},HIU9:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("8Y7J"),r=n("dApe"),i=n("X+05"),s=n("2316"),u=n.n(s),o=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},l=function(){function t(t,e,n){var a=this;this.elementRef=t,this.ngZone=e,this.virtualScroll=n,this.setViewport=u()((function(){a.virtualScroll.setViewport(a.elementRef.nativeElement)}),17),this.scrollEventHandler=this.setViewport.bind(this)}return t.prototype.ngOnInit=function(){this.virtualScroll.init()},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout((function(){t.setViewport(),t.virtualScroll.fireEvent({eventName:i.a.initialized})}));var e=this.elementRef.nativeElement;this.ngZone.runOutsideAngular((function(){e.addEventListener("scroll",t.scrollEventHandler)}))},t.prototype.ngOnDestroy=function(){this.virtualScroll.clear(),this.elementRef.nativeElement.removeEventListener("scroll",this.scrollEventHandler)},t.prototype.getTotalHeight=function(){return this.virtualScroll.isEnabled()&&this.virtualScroll.totalHeight+"px"||"auto"},function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}([Object(a.Component)({selector:"tree-viewport",styles:[],providers:[r.a],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <div [style.height]="getTotalHeight()">\n        <ng-content></ng-content>\n      </div>\n    </ng-container>\n  '}),o("design:paramtypes",[a.ElementRef,a.NgZone,r.a])],t)}()},HP3h:function(t,e,n){!function(t){"use strict";var e={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},n=function(t){return 0===t?0:1===t?1:2===t?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},a={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},r=function(t){return function(e,r,i,s){var u=n(e),o=a[t][n(e)];return 2===u&&(o=o[r?0:1]),o.replace(/%d/i,e)}},i=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];t.defineLocale("ar-ly",{months:i,monthsShort:i,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(t){return"م"===t},meridiem:function(t,e,n){return t<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:r("s"),ss:r("s"),m:r("m"),mm:r("m"),h:r("h"),hh:r("h"),d:r("d"),dd:r("d"),M:r("M"),MM:r("M"),y:r("y"),yy:r("y")},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n("wd/R"))},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var a=n("0Dky"),r=n("tiKp"),i=n("LQDL"),s=r("species");t.exports=function(t){return i>=51||!a((function(){var e=[];return(e.constructor={})[s]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HjS5:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="zh-TW">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>切換導覽</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>儀表板</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>叢集</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>主機</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>監控程式</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>服務</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>組態</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH 地圖</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>管理員模組</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>記錄</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>池</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>區塊</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>影像</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>鏡像</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>檔案系統</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>物件閘道</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>精靈</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>使用者</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>桶</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>刪除通知</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>沒有通知。</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>任務與通知</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>選取語言</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>正在載入面板資料...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Grafana 時間選擇器</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>重設設定</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>刷新</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>返回</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>無法載入資料。</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>選取的數目</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>找到的數目</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>總計</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>名稱</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>描述</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>詳細描述</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>預設值</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>精靈預設值</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>值</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>儲存</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>CRUSH 地圖檢視器</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>正在載入...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>主機名稱</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>此欄位為必填欄位。</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>是的,我確定。</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>取消</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>關閉</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>主機清單</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>整體效能</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>找不到項目</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>叢集記錄</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>稽核記錄</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>正在載入組態...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>無法載入組態。</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>編輯管理員模組</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>輸入的值不是有效的 UUID,例如 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>輸入的值必須是有效的  IP 位址。</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>輸入的值必須為數字。</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>輸入的值必須為數字或小數。</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>狀態</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>叢集 ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap 修改時間</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap 版本編號</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>required con</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>required mon</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>仲裁成員</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>非仲裁成員</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>新增</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>功能</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>叢集範圍的 OSD 旗標</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>提交</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>進階...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD 復原優先程度</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>優先程度</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>自訂優先程度值</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>此欄位為必填欄位!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>該值必須介於 0 至 1 之間。</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>重新設定權數</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {深層} }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {深層} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSD 清單</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>值</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>編輯</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>刪除</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>狀態</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>統計資料</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>用戶端</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>任何用戶端均可存取</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>位址</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>必填欄位</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>必須包含一或多個逗號分隔值</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>例如︰</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>存取類型</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>新增用戶端</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- 沒有可用的叢集 --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- 選取叢集 --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>新增精靈</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>儲存後端</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- 沒有可用的資料池 --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- 選取儲存後端 --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>物件閘道使用者</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- 沒有可用的使用者 --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- 選取物件閘道使用者 --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS 使用者 ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- 沒有可用的用戶端 --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- 選取 cephx 用戶端 --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS 名稱</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>安全標籤</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>啟用安全標籤</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS 路徑</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>路徑必須以「/」開頭,後面可接單詞</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>將建立新目錄</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>路徑</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>路徑只能以單一「/」或單詞開頭</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>將建立新桶</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS 通訊協定</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS 標記</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>用戶端不能掛接子目錄 (即如果標記為 foo,則用戶端無法掛接 foo/baz)。</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>透過使用不同標記選項,可將同一路徑輸出多次。</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>虛擬</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>透過使用不同虛擬選項,可將同一路徑輸出多次。</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- 沒有可用的存取類型 --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- 選取存取類型 --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- 沒有可用的 squash --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- 選取執行哪種類型的使用者 ID 匿名存取 --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>傳輸通訊協定</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>歡迎使用 Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>需要指定使用者名稱</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>需要指定密碼</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>登入</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>抱歉,該使用者不存在於 Ceph 中。</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>已禁止</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>抱歉,您無權查看您要尋找的內容。</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD 組態</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>移除本地組態值。將繼承並使用父組態值。</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>最小值為 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>池清單</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>名稱只能由英數字元、破折號和底線組成。</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>所選的糾刪碼設定檔名稱已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>外掛程式</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>資料區塊 (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>必須大於或等於 2。</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>編碼區塊 (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>必須大於或等於 1。</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>持久性估值 (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>本地性 (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>CRUSH 故障網域</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>CRUSH 本地性</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>無</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>技術</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>封包大小</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>CRUSH 根</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>CRUSH 裝置類別</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>任何</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>目錄</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>名稱...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>所選的 Ceph 池名稱已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>池類型</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- 選取池類型 --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>放置群組</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>至少需要一個放置群組!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>您的叢集無法處理這麼多的 PG。請重新計算所需的 PG 數量。</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>計算說明</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>複製大小</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>旗標</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC 覆寫</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>應用程式</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>糾刪碼設定檔</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- 沒有可用的糾刪碼設定檔 --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- 選取糾刪碼設定檔 --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>CRUSH 規則集</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- 選取 CRUSH 規則 --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>CRUSH 規則</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>CRUSH 步驟</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>壓縮</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>模式</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>演算法</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- 沒有可用的糾刪壓縮演算法 --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Blob 最小大小</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>例如 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>值應大於 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Blob 最大大小</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>例如 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>值應大於 blob 最小大小</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>比率</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>壓縮率</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>值應介於 0.0 至 1.0 之間</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>例如 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>詳細資料</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>效能詳細資料</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>快取層詳細資料</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>將影像移至垃圾桶</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>保護的過期日為</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>無保護</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>日期格式錯誤。請使用「YYYY-MM-DD HH:mm:ss」。</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>保護已過期。請選取一個未來的日期或保留空白。</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>移動影像</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>綜覽</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>目標</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>探查驗證</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>使用者</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>使用者名稱的長度必須介於 8 至 64 個字元之間,並且只能包含以下\n                        字元︰字母、「.」、「@」、「-」、「_」或「:」。</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>密碼</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>雙向驗證使用者</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>雙向驗證密碼</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>可用資訊︰</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>無法使用 iSCSI 目標</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>池</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>資料池</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>已建立</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>大小</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>物件</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>物件大小</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>已佈建</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>無</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>總佈建數</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>分割單位</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>分割計數</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>父</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>區塊名稱字首</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>順序</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>快照</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>影像</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>此設定會覆寫全域值</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>全域</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>此值為全域值。未為此影像設定此選項的值。</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>不允許使用「/」和「@」。</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- 沒有可用的 RBD 池 --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- 選取池 --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>使用專屬的資料池</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>資料池</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>專用於儲存 RBD 的物件資料的池</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>您必須增加大小。</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>進階</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>分割</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>分割單位</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- 選取分割單位 --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>由於已定義分割計數,因此必須填寫此欄位!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>分割單位大於物件大小。</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>分割計數</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>由於已定義分割單位,因此必須填寫此欄位!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>分割計數必須大於 0。</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>您正要復原</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>清除垃圾桶</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>全部</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>池︰</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>池名稱...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>回存影像</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>若要回存</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>鍵入影像的新名稱并按一下</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>新名稱</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>過期日為</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>保護過期日為</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSI 拓撲</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>通常不需要變更這些參數的預設值。</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>設定</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>支援儲存</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>確認</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>進階設定</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>目標 IQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN 模式錯誤。</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>例如:iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>更多資訊</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>此目標的進階設定存在修改。</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>入口網站</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>新增入口網站</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>此影像的設定存在修改。</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>新增影像</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL 驗證</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>啟動器</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>啟動器</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>用戶端 IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>啟動器 IQN 必須唯一。</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>使用者名稱的長度必須介於 8 至 64 個字元之間,並且只能包含以下\n                        字元︰字母、「.」、「@」、「-」、「_」或「:」。</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>啟動器屬於群組。影像須在群組中進行設定。 </target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>未新增項目。</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>新增啟動器</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>群組</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>群組</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>新增群組</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>垃圾桶</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>問題</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>正在同步</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>準備就緒</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>編輯池鏡像模式</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>在停用鏡像之前,必須先移除對等叢集。</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {編輯} other {新增} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>叢集名稱</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>叢集名稱無效。</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX ID 無效。</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>監控程式位址</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>逗號分隔的位址...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>監控程式位址無效。</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX 金鑰</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64 編碼的金鑰...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephX 金鑰必須為 Base64 編碼的金鑰。</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>沒有可用的效能計數器</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>精靈清單</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>效能計數器</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>正在載入桶資料...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>該值無效。</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>所選的名稱已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>擁有者</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- 選取使用者 --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>已啟用</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>索引類型</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>放置規則</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>標記</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>最大標記數</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>版本</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>主版本</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>修改時間</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>區域群組</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>桶定額</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>最大大小</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>無限制</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>最大物件數</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>使用者名稱</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- 選取使用者名稱 --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>自動產生金鑰</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>存取金鑰</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>機密金鑰</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>全名</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>電子郵件地址</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>已暫停</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>系統</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>最大桶數</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>子使用者</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>功能</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>使用者定額</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>顯示</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>金鑰</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>類型</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- 選取類型 --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>許可權</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- 選取許可權 --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>子使用者</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>所選的子使用者 ID 已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>讀取、寫入</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>完整</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Swift 金鑰</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>自動產生機密金鑰</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>正在載入使用者資料...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>無法載入使用者資料。</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>所選的使用者 ID 已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>電子郵件地址無效。</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>所選的電子郵件地址已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>最大桶數</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>已停用</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>自訂</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3 金鑰</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>沒有子使用者。</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>沒有金鑰。</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>沒有功能。</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>大小不限</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>最大大小</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>物件數不限</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>最大物件數</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>輸入的值必須大於或等於 0。</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>描述...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>許可權</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>角色</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>確認密碼</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>確認的密碼與之前輸入的密碼不符。</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>電子郵件</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>電子郵件無效。</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>您正要為您自己的使用者移除「使用者讀取/寫入」許可權。</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>若繼續,您將再也無法為任何使用者新增或移除角色。</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>確定要繼續嗎?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>說明</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>文件</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>關於</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>儀表板設定</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>使用者管理</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>登入的使用者</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>登出</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>屬性 (OSD 地圖)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>無法使用中繼資料</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>中繼資料</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>效能計數器</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>寫入</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>讀取</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>長條圖</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>目前的值</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>最小值</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>最大值</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>來源</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>層級</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>可在執行時期更新 (可編輯)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>標記</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>列舉值</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>另請參閱</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>叢集狀態</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>管理員精靈</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>物件閘道</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>中繼資料伺服器</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI 閘道</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>用戶端 IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>用戶端輸送量</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>用戶端讀取/寫入</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>復原輸送量</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>整理</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>效能</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>原始容量</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>每個 OSD 的 PG 數</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>PG 狀態</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>容量</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>階層</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>目前</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>已更新探查驗證</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>沒有可用的入口網站。</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>沒有可用的影像。</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>沒有可用的影像。請確定為目標新增一個影像。</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>沒有可用的啟動器。請確定為目標新增一個啟動器。</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>目標</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>狀態</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>讀取位元組數</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>寫入位元組數</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>讀取操作數</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>寫入操作數</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>使用中/最佳化開始時間</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>例項</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>問題</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>進度</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>編輯模式</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>新增對等</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>編輯對等</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>刪除對等</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>本地數量</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>遠端數量</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>鏡像對等</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>金鑰</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>深層壓平</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>分層</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>獨佔鎖定</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>物件對應 (需要獨佔鎖定)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>記錄 (需要獨佔鎖定)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>未受保護</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>RBD 快照復原</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>復原</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBD 快照</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>刪除位置</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>類型</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>狀態</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>版本</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>主機</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>根</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>待命精靈</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>階層</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>精靈</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>活動</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentry</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inode</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>使用率</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>已更新</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>該值可在執行時期更新。</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>精靈/用戶端不會從監控程式組態資料庫\n      提取此值。我們不允許透過「ceph config set ...」\n      設定此選項。應透過 ceph.conf 或使用指令行\n      進行設定。</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>該選項僅在精靈啟動期間生效。</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>該選項僅影響叢集建立。</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>該選項僅影響精靈建立。</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>服務</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>目前的值</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>可編輯</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>啟用</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>停用</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>正在重新連接,請稍候...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>公用位址</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>開啟的工作階段</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>禁止標示為 In</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>之前標示為 out 的 OSD 在啟動時將不會重新標示為 in</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>禁止標示為 Out</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD 在設定的間隔過後將不會自動標示為 out</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>禁止標示為 Up</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>不允許 OSD 啟動</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>禁止標示為 Down</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>將會忽略 OSD 故障報告,如此監控程式便不會將 OSD 標示為 down</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>暫停</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>暫停讀取和寫入</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>禁止整理</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>整理已停用</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>禁止深層整理</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>深層整理已停用</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>禁止回填</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>PG 回填已暫停</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>禁止復原</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>PG 復原已暫停</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>按位元排序</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>使用按位元排序</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>已清除 Snapdir</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD 已轉換 snapset</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>復原刪除</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>在復原期間,而非在建立互聯時執行刪除</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>PG 記錄硬限制</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>為 pg 記錄長度設定硬限制</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>已更新 OSD 旗標</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>out</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>in</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>down</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>標示</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD 遺失</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>已標示為遺失</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>清除</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>已清除</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>損毀</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>已損毀</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>刪除</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PG</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>讀取位元組數</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>寫入位元組數</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>讀取操作數</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>寫入操作數</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>最大回填數</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>處於使用中狀態的最大復原操作數</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>單次啟動的最大復原操作數</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>復原操作間隔睡眠時間</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>工作</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>嚴重性</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>已啟動</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>已使用</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>可用</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>乾淨</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>工作中</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>警告</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>未知</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>啟用中</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>無檔案系統</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>使用中</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>待命</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>無</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>使用中的精靈</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>未設定 NFS Ganesha 服務。</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>傳輸</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS 使用者</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFS 檔案系統</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(繼承自全域組態)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>繼承自全域組態</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- 選取執行哪種類型的使用者 ID 匿名存取 --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>沒有可用的精靈。</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>快取模式</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>逐出前至少可留存的時間</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>衝洗前至少可留存的時間</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>目標最大位元組數</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>目標最大物件數</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>未新增應用程式</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>已達到應用程式上限</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>一個池最多只能四個應用程式定義。</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>允許的字元為「_a-zA-Z0-9」</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>最大長度為 128 個字元</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>過濾或新增應用程式</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>新增應用程式</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>糾刪碼設定檔</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>複本大小</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>上次變更時間</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>糾刪碼設定檔</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>CRUSH 規則集</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>桶</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>桶</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>使用者</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>使用者</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>範圍</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>讀取</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>建立</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>系統角色</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>更新使用者</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>繼續</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>您已被自動登出,因為您的角色發生了變更。</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>各物件都被分割成資料區塊部分,分別儲存於不同的 OSD。</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>運算各物件的編碼區塊并將它們儲存到不同的 OSD。\n      編碼區塊的數量等同於在不遺失資料的前提下,可停機的 OSD 數量。</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Jerasure 外掛程式是最一般、最靈活的外掛程式,\n          也是 Ceph 糾刪碼池的預設外掛程式。</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Reed_sol_van 方法更靈活︰它足以設定 k\n          和 m。Cauchy_good 方法更快,但您需要小心選取封包大小。\n          所有 reed_sol_r6_op、liberation、blaum_roth、liber8tion 都\n          等同於 RAID6,它們只能設定為 m=2。</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>將以位元組大小的封包為單位進行編碼。\n          選取合適的封包大小很難。\n          Jerasure 文件包含有關此主題的詳細資訊。</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>使用 jerasure 外掛程式時,若糾刪碼物件儲存於\n          多個 OSD 上,則復原一個遺失的 OSD 時需要讀取所有其他 OSD。\n          例如,若 jerasure 設定為 k=8 且 m=4,則遺失一個 OSD 後需讀取\n          其他十一個 OSD 才能修復。\n\n          lrc 糾刪碼外掛程式會建立本地同位區塊,因此只需較少的 OSD 即\n          可復原。例如,若 lrc 設定為 k=8、m=4 且 l=4,它將為每四個 OSD\n          建立額外的同位區塊。這樣,當一個 OSD 遺失時,它只需四個 OSD\n          即可復原,而不需要十一個。</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>將編碼區塊和資料區塊分組為大小為 locality 的集合。例如,\n          k=4 且 m=2 時,若 locality=3,則會建立 2 個大小為 3 的組。這樣,各組都能\n          自行復原,而無需從另一組讀取區塊。</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>由 l 定義的區塊集將按哪種 CRUSH 桶類型儲存。\n          例如,若設定為機架,則各組 l 區塊將會被放置到不同的\n          機架中。該值用於建立類似 step choose rack 的 CRUSH\n          規則步驟。若未設定,則不會進行此類分組。</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>isa 外掛程式封包了 ISA 程式庫。它只能在 Intel 處理器上執行。</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>ISA 外掛程式包含兩種 Reed Solomon 格式。\n          若設定為 reed_sol_van,則為 Vandermonde。若設定為 cauchy,則為 Cauchy。</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>shec 外掛程式封包了多個 SHEC 程式庫。\n          與 Reed Solomon 代碼相比,它能更有效地復原資料。</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>同位區塊的數量,它們在各自的計算範圍內包含了\n          各資料區塊。該數值被用做持久性估值。例如,若 c=2,\n          則在不遺失資料的前提下,可有 2 個 OSD 停機。</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>CRUSH 規則的第一步所指向的 CRUSH 桶名稱。\n      例如 step take default。</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>確定兩個區塊不會存在於同一故障網域的桶中。\n      例如,若故障網域為主機,則不會有兩個區塊儲存於同一主機中。\n      該值用於建立類似 step chooseleaf host 的 CRUSH 規則步驟。</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>使用 CRUSH 地圖中的 crush 裝置類別名稱,\n      將放置限制於特定類別的裝置 (例如 ssd 或 hdd)。</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>設定糾刪碼外掛程式所在目錄。</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>允許所有操作</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>僅允許不修改伺服器的操作</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>不允許讀取或寫入操作,但是允許任何其他操作</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>不允許讀取、寫入或任何可能修改檔案屬性或目錄內容的操作</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>完全禁止存取</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- 選取優先程度 --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>低</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>高</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>資訊</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>過去 5 分鐘</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>過去 15 分鐘</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>過去 30 分鐘</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>過去 1 小時 (預設值)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>過去 3 小時</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>過去 6 小時</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>過去 12 小時</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>過去 24 小時</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>昨天</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>今天</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>今天到目前為止</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>前天</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>過去 2 天</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>上週的今天</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>上週</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>本週</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>本週目前為止</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>過去 7 天</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>上個月</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>本月</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>本月目前為止</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>過去 30 天</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>過去 90 天</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>過去 6 個月</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>過去 1 年</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>去年</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>今年</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>今年目前為止</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>過去 2 年</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>過去 5 年</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>未選取項目。</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>取消選取項目以再次選取</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>已達到選取上限</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>過濾標記</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>新增徽章</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>沒有可用的項目。</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>克隆</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>複製</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>深層整理</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>損毀</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>壓平</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>標示為 Down</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>標示為 In</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>標示為遺失</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>標示為 Out</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>保護</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>重新命名</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>還原</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>移至垃圾桶</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>取消保護</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>已刪除</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>已克隆</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>已複製</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>已壓平</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>已清除</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>已還原</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>已復原</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>是</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>否</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>服務品質</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>指定的每秒 IO 位元組數上限。</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>指定的每秒 IO 操作次數上限。</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>讀取 BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>指定的每秒內讀取的位元組數上限。</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>讀取 IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>指定的每秒讀取操作次數上限。</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>寫入 BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>指定的每秒內寫入的位元組數上限。</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>寫入 IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>指定的每秒寫入操作次數上限。</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS 高載</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>指定的 IO 位元組數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS 高載</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>指定的 IO 操作次數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>讀取 BPS 高載</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>指定的讀取的位元組數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>讀取 IOPS 高載</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>指定的讀取操作次數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>寫入 BPS 高載</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>指定的寫入的位元組數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>寫入 IOPS 高載</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>指定的寫入操作次數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>正在執行</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>執行</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>已執行</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>未知任務</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>正在建立</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>建立</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>正在更新</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>正在刪除</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>正在克隆</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>克隆</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>正在複製</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>複製</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>正在壓平</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>壓平</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>正在復原</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>復原</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>正在移動</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>移動</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>已移動</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>找不到影像。</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>正在還原</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>還原</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>正在清除</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>清除</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>所有池</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>無法停用鏡像,因為其包含對等。</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"I+eb":function(t,e,n){var a=n("2oRo"),r=n("Bs8V").f,i=n("kRJp"),s=n("busE"),u=n("zk60"),o=n("6JNq"),l=n("lMq5");t.exports=function(t,e){var n,d,c,f,h,g=t.target,p=t.global,b=t.stat;if(n=p?a:b?a[g]||u(g,{}):(a[g]||{}).prototype)for(d in e){if(f=e[d],c=t.noTargetGet?(h=r(n,d))&&h.value:n[d],!l(p?d:g+(b?".":"#")+d,t.forced)&&void 0!==c){if(typeof f==typeof c)continue;o(f,c)}(t.sham||c&&c.sham)&&i(f,"sham",!0),s(n,d,f,t)}}},I55L:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=t=>t&&"number"==typeof t.length&&"function"!=typeof t},I8vh:function(t,e,n){var a=n("ppGB"),r=Math.max,i=Math.min;t.exports=function(t,e){var n=a(t);return n<0?r(n+e,0):i(n,e)}},IBtZ:function(t,e,n){!function(t){"use strict";t.defineLocale("ka",{months:{standalone:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),format:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(t){return/(წამი|წუთი|საათი|წელი)/.test(t)?t.replace(/ი$/,"ში"):t+"ში"},past:function(t){return/(წამი|წუთი|საათი|დღე|თვე)/.test(t)?t.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(t)?t.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",ss:"%d წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(t){return 0===t?t:1===t?t+"-ლი":t<20||t<=100&&t%20==0||t%100==0?"მე-"+t:t+"-ე"},week:{dow:1,doy:7}})}(n("wd/R"))},IMTC:function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},IWUC:function(t,e,n){var a=n("qwH+"),r=n("x3F9");t.exports=function(t){return r(t)&&"[object Set]"==a(t)}},IZUe:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{constructor(t){this.elementRef=t,this.focus=!0}ngAfterViewInit(){const t=this.elementRef.nativeElement;this.focus&&a.isFunction(t.focus)&&t.focus()}set autofocus(t){a.isBoolean(t)?this.focus=t:a.isFunction(t)&&(this.focus=t())}}},Iab2:function(t,e,n){var a,r;void 0===(r="function"==typeof(a=function(){"use strict";function e(t,e,n){var a=new XMLHttpRequest;a.open("GET",t),a.responseType="blob",a.onload=function(){i(a.response,e,n)},a.onerror=function(){console.error("could not download file")},a.send()}function n(t){var e=new XMLHttpRequest;e.open("HEAD",t,!1);try{e.send()}catch(t){}return 200<=e.status&&299>=e.status}function a(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(e){var n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(n)}}var r="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,i=r.saveAs||("object"!=typeof window||window!==r?function(){}:"download"in HTMLAnchorElement.prototype?function(t,i,s){var u=r.URL||r.webkitURL,o=document.createElement("a");o.download=i=i||t.name||"download",o.rel="noopener","string"==typeof t?(o.href=t,o.origin===location.origin?a(o):n(o.href)?e(t,i,s):a(o,o.target="_blank")):(o.href=u.createObjectURL(t),setTimeout((function(){u.revokeObjectURL(o.href)}),4e4),setTimeout((function(){a(o)}),0))}:"msSaveOrOpenBlob"in navigator?function(t,r,i){if(r=r||t.name||"download","string"!=typeof t)navigator.msSaveOrOpenBlob(function(t,e){return void 0===e?e={autoBom:!1}:"object"!=typeof e&&(console.warn("Deprecated: Expected third argument to be a object"),e={autoBom:!e}),e.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob(["\ufeff",t],{type:t.type}):t}(t,i),r);else if(n(t))e(t,r,i);else{var s=document.createElement("a");s.href=t,s.target="_blank",setTimeout((function(){a(s)}))}}:function(t,n,a,i){if((i=i||open("","_blank"))&&(i.document.title=i.document.body.innerText="downloading..."),"string"==typeof t)return e(t,n,a);var s="application/octet-stream"===t.type,u=/constructor/i.test(r.HTMLElement)||r.safari,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||s&&u)&&"object"==typeof FileReader){var l=new FileReader;l.onloadend=function(){var t=l.result;t=o?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),i?i.location.href=t:location=t,i=null},l.readAsDataURL(t)}else{var d=r.URL||r.webkitURL,c=d.createObjectURL(t);i?i.location=c:location.href=c,i=null,setTimeout((function(){d.revokeObjectURL(c)}),4e4)}});r.saveAs=i.saveAs=i,t.exports=i})?a.apply(e,[]):a)||(t.exports=r)},IeEY:function(t,e,n){var a=n("vJUC"),r=n("CwBR");t.exports=function t(e,n,i,s,u){var o=-1,l=e.length;for(i||(i=r),u||(u=[]);++o<l;){var d=e[o];n>0&&i(d)?n>1?t(d,n-1,i,s,u):a(u,d):s||(u[u.length]=d)}return u}},IfUl:function(t,e,n){var a=n("ZPW6"),r=n("JEWA");t.exports=function(t,e,n){(void 0!==n&&!r(t[e],n)||void 0===n&&!(e in t))&&a(t,e,n)}},IheW:function(t,e,n){"use strict";n.d(e,"m",(function(){return E})),n.d(e,"p",(function(){return q})),n.d(e,"q",(function(){return j})),n.d(e,"n",(function(){return D})),n.d(e,"o",(function(){return P})),n.d(e,"b",(function(){return c})),n.d(e,"g",(function(){return d})),n.d(e,"c",(function(){return I})),n.d(e,"a",(function(){return C})),n.d(e,"d",(function(){return G})),n.d(e,"e",(function(){return V})),n.d(e,"l",(function(){return F})),n.d(e,"h",(function(){return p})),n.d(e,"f",(function(){return O})),n.d(e,"i",(function(){return L})),n.d(e,"k",(function(){return k})),n.d(e,"j",(function(){return M}));var a=n("8Y7J"),r=n("LRne"),i=n("HDdC"),s=n("bOdf"),u=n("pLZG"),o=n("lJxs"),l=n("SVse");class d{}class c{}class f{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),a=n.toLowerCase(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,a),this.headers.has(a)?this.headers.get(a).push(r):this.headers.set(a,[r])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const a=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(a,n),this.maybeSetNormalizedName(e,a))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof f?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new f;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof f?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const a=("a"===t.op?this.headers.get(e):void 0)||[];a.push(...n),this.headers.set(e,a);break;case"d":const r=t.value;if(r){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===r.indexOf(t)),0===t.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class h{encodeKey(t){return g(t)}encodeValue(t){return g(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function g(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class p{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new h,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const a=t.indexOf("="),[r,i]=-1==a?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,a)),e.decodeValue(t.slice(a+1))],s=n.get(r)||[];s.push(i),n.set(r,s)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new p({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function b(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function m(t){return"undefined"!=typeof Blob&&t instanceof Blob}function y(t){return"undefined"!=typeof FormData&&t instanceof FormData}class v{constructor(t,e,n,a){let r;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||a?(this.body=void 0!==n?n:null,r=a):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.params&&(this.params=r.params)),this.headers||(this.headers=new f),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":n<e.length-1?"&":"")+t}}else this.params=new p,this.urlWithParams=e}serializeBody(){return null===this.body?null:b(this.body)||m(this.body)||y(this.body)||"string"==typeof this.body?this.body:this.body instanceof p?this.body.toString():"object"==typeof this.body||"boolean"==typeof this.body||Array.isArray(this.body)?JSON.stringify(this.body):this.body.toString()}detectContentTypeHeader(){return null===this.body||y(this.body)?null:m(this.body)?this.body.type||null:b(this.body)?null:"string"==typeof this.body?"text/plain":this.body instanceof p?"application/x-www-form-urlencoded;charset=UTF-8":"object"==typeof this.body||"number"==typeof this.body||Array.isArray(this.body)?"application/json":null}clone(t={}){const e=t.method||this.method,n=t.url||this.url,a=t.responseType||this.responseType,r=void 0!==t.body?t.body:this.body,i=void 0!==t.withCredentials?t.withCredentials:this.withCredentials,s=void 0!==t.reportProgress?t.reportProgress:this.reportProgress;let u=t.headers||this.headers,o=t.params||this.params;return void 0!==t.setHeaders&&(u=Object.keys(t.setHeaders).reduce((e,n)=>e.set(n,t.setHeaders[n]),u)),t.setParams&&(o=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),o)),new v(e,n,r,{params:o,headers:u,reportProgress:s,responseType:a,withCredentials:i})}}const x=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class _{constructor(t,e=200,n="OK"){this.headers=t.headers||new f,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class T extends _{constructor(t={}){super(t),this.type=x.ResponseHeader}clone(t={}){return new T({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class w extends _{constructor(t={}){super(t),this.type=x.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new w({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class O extends _{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?"Http failure during parsing for "+(t.url||"(unknown url)"):`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function S(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}class I{constructor(t){this.handler=t}request(t,e,n={}){let a;if(t instanceof v)a=t;else{let r=void 0;r=n.headers instanceof f?n.headers:new f(n.headers);let i=void 0;n.params&&(i=n.params instanceof p?n.params:new p({fromObject:n.params})),a=new v(t,e,void 0!==n.body?n.body:null,{headers:r,params:i,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const i=Object(r.a)(a).pipe(Object(s.a)(t=>this.handler.handle(t)));if(t instanceof v||"events"===n.observe)return i;const l=i.pipe(Object(u.a)(t=>t instanceof w));switch(n.observe||"body"){case"body":switch(a.responseType){case"arraybuffer":return l.pipe(Object(o.a)(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(Object(o.a)(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(Object(o.a)(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(Object(o.a)(t=>t.body))}case"response":return l;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new p).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,S(n,e))}post(t,e,n={}){return this.request("POST",t,S(n,e))}put(t,e,n={}){return this.request("PUT",t,S(n,e))}}class N{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const C=new a.InjectionToken("HTTP_INTERCEPTORS");class R{intercept(t,e){return e.handle(t)}}const A=/^\)\]\}',?\n/;class k{}class E{constructor(){}build(){return new XMLHttpRequest}}class L{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new i.a(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const a=t.serializeBody();let r=null;const i=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,a=n.statusText||"OK",i=new f(n.getAllResponseHeaders()),s=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new T({headers:i,status:e,statusText:a,url:s}),r},s=()=>{let{headers:a,status:r,statusText:s,url:u}=i(),o=null;204!==r&&(o=void 0===n.response?n.responseText:n.response),0===r&&(r=o?200:0);let l=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof o){const t=o;o=o.replace(A,"");try{o=""!==o?JSON.parse(o):null}catch(d){o=t,l&&(l=!1,o={error:d,text:o})}}l?(e.next(new w({body:o,headers:a,status:r,statusText:s,url:u||void 0})),e.complete()):e.error(new O({error:o,headers:a,status:r,statusText:s,url:u||void 0}))},u=t=>{const{url:a}=i(),r=new O({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:a||void 0});e.error(r)};let o=!1;const l=a=>{o||(e.next(i()),o=!0);let r={type:x.DownloadProgress,loaded:a.loaded};a.lengthComputable&&(r.total=a.total),"text"===t.responseType&&n.responseText&&(r.partialText=n.responseText),e.next(r)},d=t=>{let n={type:x.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",s),n.addEventListener("error",u),t.reportProgress&&(n.addEventListener("progress",l),null!==a&&n.upload&&n.upload.addEventListener("progress",d)),n.send(a),e.next({type:x.Sent}),()=>{n.removeEventListener("error",u),n.removeEventListener("load",s),t.reportProgress&&(n.removeEventListener("progress",l),null!==a&&n.upload&&n.upload.removeEventListener("progress",d)),n.abort()}})}}const D=new a.InjectionToken("XSRF_COOKIE_NAME"),P=new a.InjectionToken("XSRF_HEADER_NAME");class M{}class q{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Object(l["ɵparseCookieValue"])(t,this.cookieName),this.lastCookieString=t),this.lastToken}}class j{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const a=this.tokenService.getToken();return null===a||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,a)})),e.handle(t)}}class F{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(C,[]);this.chain=t.reduceRight((t,e)=>new N(t,e),this.backend)}return this.chain.handle(t)}}class V{static disable(){return{ngModule:V,providers:[{provide:j,useClass:R}]}}static withOptions(t={}){return{ngModule:V,providers:[t.cookieName?{provide:D,useValue:t.cookieName}:[],t.headerName?{provide:P,useValue:t.headerName}:[]]}}}class G{}},IjjT:function(t,e,n){"use strict";let a=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=()=>Date.now(),t})();n.d(e,"a",(function(){return r}));class r extends a{constructor(t,e=a.now){super(t,()=>r.delegate&&r.delegate!==this?r.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return r.delegate&&r.delegate!==this?r.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let n;this.active=!0;do{if(n=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,n){for(;t=e.shift();)t.unsubscribe();throw n}}}},ImZN:function(t,e,n){var a=n("glrk"),r=n("6VoE"),i=n("UMSQ"),s=n("A2ZE"),u=n("NaFW"),o=n("m92n"),l=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,d,c){var f,h,g,p,b,m,y,v=s(e,n,d?2:1);if(c)f=t;else{if("function"!=typeof(h=u(t)))throw TypeError("Target is not iterable");if(r(h)){for(g=0,p=i(t.length);p>g;g++)if((b=d?v(a(y=t[g])[0],y[1]):v(t[g]))&&b instanceof l)return b;return new l(!1)}f=h.call(t)}for(m=f.next;!(y=m.call(f)).done;)if("object"==typeof(b=o(f,v,y.value,d))&&b&&b instanceof l)return b;return new l(!1)}).stop=function(t){return new l(!0,t)}},"Ivi+":function(t,e,n){!function(t){"use strict";t.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h:mm",LLLL:"YYYY년 MMMM D일 dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",ss:"%d초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"일";case"M":return t+"월";case"w":case"W":return t+"주";default:return t}},meridiemParse:/오전|오후/,isPM:function(t){return"오후"===t},meridiem:function(t,e,n){return t<12?"오전":"오후"}})}(n("wd/R"))},IyEx:function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length,r=0,i=[];++n<a;){var s=t[n];e(s,n,t)&&(i[r++]=s)}return i}},IzCI:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("aXbf");class a{constructor(t){this.formatter=t}transform(t){return this.formatter.format_number(t,1024,["B/s","kB/s","MB/s","GB/s","TB/s","PB/s","EB/s","ZB/s","YB/s"])}}},IzEk:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("7o/Q"),r=n("4I5i"),i=n("EY2u");function s(t){return e=>0===t?Object(i.b)():e.lift(new u(t))}class u{constructor(t){if(this.total=t,this.total<0)throw new r.a}call(t,e){return e.subscribe(new o(t,this.total))}}class o extends a.a{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}},J3wx:function(t,e,n){var a=n("qN6l");t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=a&&void 0===e?"__lodash_hash_undefined__":e,this}},J9xi:function(t,e,n){var a=n("rk81"),r=n("5DBd"),i=n("bQrF"),s=n("xOlK"),u=n("pYe4"),o=n("j09V"),l=n("Y3RO"),d=n("+GxX"),c=n("G3dZ"),f=n("iQ+a"),h=n("mOnh"),g=n("qwH+"),p=n("8+Q7"),b=n("hTsC"),m=n("pcUq"),y=n("0GLT"),v=n("y/5f"),x=n("8Tpr"),_=n("hmSm"),T=n("8+is"),w=n("FGWQ"),O=n("MBcj"),S={};S["[object Arguments]"]=S["[object Array]"]=S["[object ArrayBuffer]"]=S["[object DataView]"]=S["[object Boolean]"]=S["[object Date]"]=S["[object Float32Array]"]=S["[object Float64Array]"]=S["[object Int8Array]"]=S["[object Int16Array]"]=S["[object Int32Array]"]=S["[object Map]"]=S["[object Number]"]=S["[object Object]"]=S["[object RegExp]"]=S["[object Set]"]=S["[object String]"]=S["[object Symbol]"]=S["[object Uint8Array]"]=S["[object Uint8ClampedArray]"]=S["[object Uint16Array]"]=S["[object Uint32Array]"]=!0,S["[object Error]"]=S["[object Function]"]=S["[object WeakMap]"]=!1,t.exports=function t(e,n,I,N,C,R){var A,k=1&n,E=2&n,L=4&n;if(I&&(A=C?I(e,N,C,R):I(e)),void 0!==A)return A;if(!_(e))return e;var D=y(e);if(D){if(A=p(e),!k)return l(e,A)}else{var P=g(e),M="[object Function]"==P||"[object GeneratorFunction]"==P;if(v(e))return o(e,k);if("[object Object]"==P||"[object Arguments]"==P||M&&!C){if(A=E||M?{}:m(e),!k)return E?c(e,u(A,e)):d(e,s(A,e))}else{if(!S[P])return C?e:{};A=b(e,P,k)}}R||(R=new a);var q=R.get(e);if(q)return q;R.set(e,A),T(e)?e.forEach((function(a){A.add(t(a,n,I,a,e,R))})):x(e)&&e.forEach((function(a,r){A.set(r,t(a,n,I,r,e,R))}));var j=D?void 0:(L?E?h:f:E?O:w)(e);return r(j||e,(function(a,r){j&&(a=e[r=a]),i(A,r,t(a,n,I,r,e,R))})),A}},JBy8:function(t,e,n){var a=n("yoRg"),r=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return a(t,r)}},"JCF/":function(t,e,n){!function(t){"use strict";var e={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},a=["کانونی دووەم","شوبات","ئازار","نیسان","ئایار","حوزەیران","تەمموز","ئاب","ئەیلوول","تشرینی یەكەم","تشرینی دووەم","كانونی یەکەم"];t.defineLocale("ku",{months:a,monthsShort:a,weekdays:"یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌".split("_"),weekdaysShort:"یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌".split("_"),weekdaysMin:"ی_د_س_چ_پ_ه_ش".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/ئێواره‌|به‌یانی/,isPM:function(t){return/ئێواره‌/.test(t)},meridiem:function(t,e,n){return t<12?"به‌یانی":"ئێواره‌"},calendar:{sameDay:"[ئه‌مرۆ كاتژمێر] LT",nextDay:"[به‌یانی كاتژمێر] LT",nextWeek:"dddd [كاتژمێر] LT",lastDay:"[دوێنێ كاتژمێر] LT",lastWeek:"dddd [كاتژمێر] LT",sameElse:"L"},relativeTime:{future:"له‌ %s",past:"%s",s:"چه‌ند چركه‌یه‌ك",ss:"چركه‌ %d",m:"یه‌ك خوله‌ك",mm:"%d خوله‌ك",h:"یه‌ك كاتژمێر",hh:"%d كاتژمێر",d:"یه‌ك ڕۆژ",dd:"%d ڕۆژ",M:"یه‌ك مانگ",MM:"%d مانگ",y:"یه‌ك ساڵ",yy:"%d ساڵ"},preparse:function(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n("wd/R"))},JEWA:function(t,e){t.exports=function(t,e){return t===e||t!=t&&e!=e}},JIr8:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("l7GE"),r=n("51Dv"),i=n("ZUHj");function s(t){return function(e){const n=new u(t),a=e.lift(n);return n.caught=a}}class u{constructor(t){this.selector=t}call(t,e){return e.subscribe(new o(t,this.selector,this.caught))}}class o extends a.a{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const a=new r.a(this,void 0,void 0);this.add(a);const s=Object(i.a)(this,n,void 0,void 0,a);s!==a&&this.add(s)}}}},JTPl:function(t,e,n){var a,r=n("isl5"),i=(a=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||""))?"Symbol(src)_1."+a:"";t.exports=function(t){return!!i&&i in t}},JVSJ:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a=t+" ";switch(n){case"ss":return a+(1===t?"sekunda":2===t||3===t||4===t?"sekunde":"sekundi");case"m":return e?"jedna minuta":"jedne minute";case"mm":return a+(1===t?"minuta":2===t||3===t||4===t?"minute":"minuta");case"h":return e?"jedan sat":"jednog sata";case"hh":return a+(1===t?"sat":2===t||3===t||4===t?"sata":"sati");case"dd":return a+(1===t?"dan":"dana");case"MM":return a+(1===t?"mjesec":2===t||3===t||4===t?"mjeseca":"mjeseci");case"yy":return a+(1===t?"godina":2===t||3===t||4===t?"godine":"godina")}}t.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:e,m:e,mm:e,h:e,hh:e,d:"dan",dd:e,M:"mjesec",MM:e,y:"godinu",yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},JvlW:function(t,e,n){!function(t){"use strict";var e={ss:"sekundė_sekundžių_sekundes",m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"};function n(t,e,n,a){return e?r(n)[0]:a?r(n)[1]:r(n)[2]}function a(t){return t%10==0||t>10&&t<20}function r(t){return e[t].split("_")}function i(t,e,i,s){var u=t+" ";return 1===t?u+n(0,e,i[0],s):e?u+(a(t)?r(i)[1]:r(i)[0]):s?u+r(i)[1]:u+(a(t)?r(i)[1]:r(i)[2])}t.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:function(t,e,n,a){return e?"kelios sekundės":a?"kelių sekundžių":"kelias sekundes"},ss:i,m:n,mm:i,h:n,hh:i,d:n,dd:i,M:n,MM:i,y:n,yy:i},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(t){return t+"-oji"},week:{dow:1,doy:4}})}(n("wd/R"))},JxMD:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("hrfs");n("dgut"),n("Fgil"),n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return u}));var s=a["ɵcrt"]({encapsulation:0,styles:[['canvas[_ngcontent-%COMP%]{-moz-user-select:none;user-select:none}.chartjs-tooltip[_ngcontent-%COMP%]{opacity:0;position:absolute;background:rgba(0,0,0,.7);color:#fff;border-radius:3px;transition:all .1s ease;pointer-events:none;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;transform:translate(-50%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]{transform:translate(-10%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]::after{left:10%}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]{transform:translate(-90%,0)}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]::after{left:90%}.chartjs-tooltip[_ngcontent-%COMP%]::after{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#000 transparent transparent}  .chartjs-tooltip-key{display:inline-block;width:10px;height:10px;margin-right:10px}.chart-container[_ngcontent-%COMP%]{margin:auto;cursor:pointer;overflow:visible;position:static!important}']],data:{}});function u(t){return a["ɵvid"](0,[a["ɵqud"](402653184,1,{chartCanvasRef:0}),a["ɵqud"](402653184,2,{chartTooltipRef:0}),(t()(),a["ɵeld"](2,0,null,null,6,"div",[["class","chart-container"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgStyleImpl"],r["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](4,278528,null,0,r.NgStyle,[r["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),a["ɵeld"](5,0,[[1,0],["sparkCanvas",1]],null,1,"canvas",[["baseChart",""]],null,null,null,null,null)),a["ɵdid"](6,999424,null,0,i.a,[a.ElementRef,i.c],{datasets:[0,"datasets"],labels:[1,"labels"],options:[2,"options"],chartType:[3,"chartType"],colors:[4,"colors"]},null),(t()(),a["ɵeld"](7,0,[[2,0],["sparkTooltip",1]],null,1,"div",[["class","chartjs-tooltip"]],null,null,null,null,null)),(t()(),a["ɵeld"](8,0,null,null,0,"table",[],null,null,null,null,null))],(function(t,e){var n=e.component;t(e,4,0,n.style),t(e,6,0,n.datasets,n.labels,n.options,"line",n.colors)}),null)}},"K/tc":function(t,e,n){!function(t){"use strict";t.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(t){return/^nm$/i.test(t)},meridiem:function(t,e,n){return t<12?n?"vm":"VM":n?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}})}(n("wd/R"))},K1DE:function(t,e){t.exports=function(t,e){return t.has(e)}},K3g9:function(t,e){t.exports=function(t){return t&&t.length?t[0]:void 0}},KFwg:function(t,e,n){var a=n("r467"),r=n("k9+3");t.exports=function(t,e){var n=r(t,e);return a(n)?n:void 0}},KNDS:function(t,e){t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},KOzp:function(t,e,n){"use strict";n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return o})),n.d(e,"c",(function(){return l})),n.d(e,"d",(function(){return d}));var a=n("z/SZ"),r=n("hpHm"),i=n("2uy1"),s=n("PqYM");class u{constructor(){this.adaptivePosition=!0,this.placement="top",this.triggers="click",this.outsideClick=!1,this.delay=0}}class o{constructor(t){Object.assign(this,t)}get isBs3(){return Object(r.d)()}}class l{constructor(t,e,n,a,r,i){this._elementRef=e,this._renderer=n,this._positionService=i,this.outsideClick=!1,this.containerClass="",this._isInited=!1,this._popover=r.createLoader(e,a,n).provide({provide:u,useValue:t}),Object.assign(this,t),this.onShown=this._popover.onShown,this.onHidden=this._popover.onHidden,"undefined"!=typeof window&&e.nativeElement.addEventListener("click",(function(){try{e.nativeElement.focus()}catch(t){return}}))}get isOpen(){return this._popover.isShown}set isOpen(t){t?this.show():this.hide()}show(){if(this._popover.isShown||!this.popover||this._delayTimeoutId)return;this._positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition},preventOverflow:{enabled:this.adaptivePosition}}});const t=()=>{this._delayTimeoutId&&(this._delayTimeoutId=void 0),this._popover.attach(o).to(this.container).position({attachment:this.placement}).show({content:this.popover,context:this.popoverContext,placement:this.placement,title:this.popoverTitle,containerClass:this.containerClass}),this.adaptivePosition||(this._positionService.calcPosition(),this._positionService.deletePositionElement(this._popover._componentRef.location)),this.isOpen=!0},e=()=>{this._popoverCancelShowFn&&this._popoverCancelShowFn()};if(this.delay){const n=Object(s.a)(this.delay).subscribe(()=>{t(),e()});this.triggers&&Object(r.f)(this.triggers).forEach(t=>{this._popoverCancelShowFn=this._renderer.listen(this._elementRef.nativeElement,t.close,()=>{n.unsubscribe(),e()})})}else t()}hide(){this._delayTimeoutId&&(clearTimeout(this._delayTimeoutId),this._delayTimeoutId=void 0),this.isOpen&&(this._popover.hide(),this.isOpen=!1)}toggle(){if(this.isOpen)return this.hide();this.show()}ngOnInit(){this._isInited||(this._isInited=!0,this._popover.listen({triggers:this.triggers,outsideClick:this.outsideClick,show:()=>this.show()}))}ngOnDestroy(){this._popover.dispose()}}class d{static forRoot(){return{ngModule:d,providers:[u,a.a,i.a]}}}},KQir:function(t,e){t.exports=function(){return!1}},KSF8:function(t,e,n){!function(t){"use strict";t.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),monthsParseExact:!0,weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM:function(t){return/^ch$/i.test(t)},meridiem:function(t,e,n){return t<12?n?"sa":"SA":n?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",ss:"%d giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(t){return t},week:{dow:1,doy:4}})}(n("wd/R"))},KTz0:function(t,e,n){!function(t){"use strict";var e={words:{ss:["sekund","sekunda","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(t,e){return 1===t?e[0]:t>=2&&t<=4?e[1]:e[2]},translate:function(t,n,a){var r=e.words[a];return 1===a.length?n?r[0]:r[1]:t+" "+e.correctGrammaticalCase(t,r)}};t.defineLocale("me",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){return["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:e.translate,m:e.translate,mm:e.translate,h:e.translate,hh:e.translate,d:"dan",dd:e.translate,M:"mjesec",MM:e.translate,y:"godinu",yy:e.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},KVJa:function(t,e,n){"use strict";var a=n("8Y7J");n("Z21x"),n("SVse"),n("sne2"),n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var r=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function i(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"button",[["class","btn btn-light tc_backButton"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.back()&&a),a}),null,null)),(t()(),a["ɵted"](1,null,[" ","\n"]))],null,(function(t,e){t(e,1,0,e.component.name)}))}},Kqap:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(a){return a.lift(new i(t,e,n))}}class i{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new s(t,this.accumulator,this.seed,this.hasSeed))}}class s extends a.a{constructor(t,e,n,a){super(t),this.accumulator=e,this._seed=n,this.hasSeed=a,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(a){this.destination.error(a)}this.seed=n,this.destination.next(n)}}},KqfI:function(t,e,n){"use strict";function a(){}n.d(e,"a",(function(){return a}))},L0Z1:function(t,e,n){(function(t){var a=n("qzZ1"),r=e&&!e.nodeType&&e,i=r&&"object"==typeof t&&t&&!t.nodeType&&t,s=i&&i.exports===r&&a.process,u=function(){try{return i&&i.require&&i.require("util").types||s&&s.binding&&s.binding("util")}catch(t){}}();t.exports=u}).call(this,n("YuTi")(t))},LJNh:function(t,e,n){var a=n("zDBQ"),r=n("8V0S"),i=n("/F2L");t.exports=function(t){return i(r(t,void 0,a),t+"")}},LOMR:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("Fwy9"),i=n("gk6K"),s=n("woSy"),u=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"div",[["class","node-drop-slot"]],null,[[null,"treeDrop"],[null,"drop"]],(function(t,e,n){var r=!0,i=t.component;return"drop"===e&&(r=!1!==a["ɵnov"](t,1).onDrop(n)&&r),"treeDrop"===e&&(r=!1!==i.onDrop(n)&&r),r}),null,null)),a["ɵdid"](1,4341760,null,0,r.a,[a.ElementRef,a.Renderer2,i.a,a.NgZone],{allowDragoverStyling:[0,"allowDragoverStyling"],treeAllowDrop:[1,"treeAllowDrop"]},{onDropCallback:"treeDrop"})],(function(t,e){var n=e.component;t(e,1,0,!0,n.allowDrop.bind(n))}),null)}var l=n("SVse"),d=n("CoVI"),c=n("uNpg"),f=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"input",[["class","tree-node-checkbox"],["type","checkbox"]],[[8,"checked",0],[8,"indeterminate",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.node.mouseAction("checkboxClick",n)&&a),a}),null,null))],null,(function(t,e){var n=e.component;t(e,1,0,n.node.isSelected,n.node.isPartiallySelected)}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,h)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var p=n("jV1L"),b=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function m(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","toggle-children-wrapper"]],[[2,"toggle-children-wrapper-expanded",null],[2,"toggle-children-wrapper-collapsed",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.node.mouseAction("expanderClick",n)&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"span",[["class","toggle-children"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.node.isExpanded,n.node.isCollapsed)}))}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"span",[["class","toggle-children-placeholder"]],null,null,null,null,null))],null,null)}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,m)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](4,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.node.hasChildren),t(e,4,0,!n.node.hasChildren)}),null)}function x(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,v)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var _=n("C523"),T=n("rZud"),w=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.node.displayField)}))}function S(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](1,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](2,16777216,null,null,2,null,null,null,null,null,null,null)),a["ɵdid"](3,540672,null,0,l.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](4,{$implicit:0,node:1,index:2})],(function(t,e){var n=e.component;t(e,1,0,!n.template);var a=t(e,4,0,n.node,n.node,n.index);t(e,3,0,a,n.template)}),null)}var I=n("OIDT"),N=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function C(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node-checkbox",[],null,null,null,g,f)),a["ɵdid"](1,49152,null,0,c.a,[],{node:[0,"node"]},null)],(function(t,e){t(e,1,0,e.component.node)}),null)}function R(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,9,"div",[["class","node-wrapper"]],[[4,"padding-left",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,C)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](3,0,null,null,1,"tree-node-expander",[],null,null,null,x,b)),a["ɵdid"](4,49152,null,0,p.a,[],{node:[0,"node"]},null),(t()(),a["ɵeld"](5,0,null,null,4,"div",[["class","node-content-wrapper"]],[[2,"node-content-wrapper-active",null],[2,"node-content-wrapper-focused",null]],[[null,"click"],[null,"dblclick"],[null,"mouseover"],[null,"mouseout"],[null,"contextmenu"],[null,"treeDrop"],[null,"treeDropDragOver"],[null,"treeDropDragLeave"],[null,"treeDropDragEnter"],[null,"drop"],[null,"dragstart"],[null,"dragend"]],(function(t,e,n){var r=!0,i=t.component;return"drop"===e&&(r=!1!==a["ɵnov"](t,6).onDrop(n)&&r),"dragstart"===e&&(r=!1!==a["ɵnov"](t,7).onDragStart(n)&&r),"dragend"===e&&(r=!1!==a["ɵnov"](t,7).onDragEnd()&&r),"click"===e&&(r=!1!==i.node.mouseAction("click",n)&&r),"dblclick"===e&&(r=!1!==i.node.mouseAction("dblClick",n)&&r),"mouseover"===e&&(r=!1!==i.node.mouseAction("mouseOver",n)&&r),"mouseout"===e&&(r=!1!==i.node.mouseAction("mouseOut",n)&&r),"contextmenu"===e&&(r=!1!==i.node.mouseAction("contextMenu",n)&&r),"treeDrop"===e&&(r=!1!==i.node.onDrop(n)&&r),"treeDropDragOver"===e&&(r=!1!==i.node.mouseAction("dragOver",n)&&r),"treeDropDragLeave"===e&&(r=!1!==i.node.mouseAction("dragLeave",n)&&r),"treeDropDragEnter"===e&&(r=!1!==i.node.mouseAction("dragEnter",n)&&r),r}),null,null)),a["ɵdid"](6,4341760,null,0,r.a,[a.ElementRef,a.Renderer2,i.a,a.NgZone],{allowDragoverStyling:[0,"allowDragoverStyling"],treeAllowDrop:[1,"treeAllowDrop"]},{onDropCallback:"treeDrop",onDragOverCallback:"treeDropDragOver",onDragLeaveCallback:"treeDropDragLeave",onDragEnterCallback:"treeDropDragEnter"}),a["ɵdid"](7,4603904,null,0,_.a,[a.ElementRef,a.Renderer2,i.a,a.NgZone],{draggedElement:[0,"draggedElement"],treeDragEnabled:[1,"treeDragEnabled"]},null),(t()(),a["ɵeld"](8,0,null,null,1,"tree-node-content",[],null,null,null,S,w)),a["ɵdid"](9,49152,null,0,T.a,[],{node:[0,"node"],index:[1,"index"],template:[2,"template"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.node.options.useCheckbox),t(e,4,0,n.node),t(e,6,0,n.node.allowDragoverStyling(),n.node.allowDrop),t(e,7,0,n.node,n.node.allowDrag()),t(e,9,0,n.node,n.index,n.templates.treeNodeTemplate)}),(function(t,e){var n=e.component;t(e,0,0,n.node.getNodePadding()),t(e,5,0,n.node.isActive,n.node.isFocused)}))}function A(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,R)),a["ɵdid"](1,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](2,16777216,null,null,2,null,null,null,null,null,null,null)),a["ɵdid"](3,540672,null,0,l.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](4,{$implicit:0,node:1,index:2,templates:3})],(function(t,e){var n=e.component;t(e,1,0,!n.templates.treeNodeWrapperTemplate);var a=t(e,4,0,n.node,n.node,n.index,n.templates);t(e,3,0,a,n.templates.treeNodeWrapperTemplate)}),null)}var k=n("WaXT"),E=n("ZhuC"),L=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function D(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["loading..."]))],null,null)}function P(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,D)),a["ɵdid"](1,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](2,16777216,null,null,2,null,null,null,null,null,null,null)),a["ɵdid"](3,540672,null,0,l.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](4,{$implicit:0})],(function(t,e){var n=e.component;t(e,1,0,!n.template);var a=t(e,4,0,n.node);t(e,3,0,a,n.template)}),null)}var M=n("4Dmd"),q=n("pcHL"),j=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function F(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node-collection",[],null,null,null,X,Z)),a["ɵdid"](1,245760,null,0,k.a,[],{nodes:[0,"nodes"],treeModel:[1,"treeModel"],templates:[2,"templates"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.node.children,n.node.treeModel,n.templates)}),null)}function V(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-loading-component",[["class","tree-node-loading"]],[[4,"padding-left",null]],null,null,P,L)),a["ɵdid"](1,49152,null,0,E.a,[],{template:[0,"template"],node:[1,"node"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.templates.loadingTemplate,n.node)}),(function(t,e){t(e,0,0,e.component.node.getNodePadding())}))}function G(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[],[[2,"tree-children",null],[2,"tree-children-no-padding",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,F)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,V)),a["ɵdid"](4,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.node.children),t(e,4,0,!n.node.children)}),(function(t,e){t(e,0,0,!0,e.component.node.options.levelPadding)}))}function B(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,G)),a["ɵdid"](2,16384,null,0,M.a,[a.Renderer2,a.TemplateRef,a.ViewContainerRef],{animateSpeed:[0,"animateSpeed"],animateAcceleration:[1,"animateAcceleration"],isEnabled:[2,"isEnabled"],isOpen:[3,"isOpen"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.node.options.animateSpeed,n.node.options.animateAcceleration,n.node.options.animateExpand,n.node.isExpanded)}),null)}function z(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,B)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var Y=n("TNUL"),H=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function U(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node-drop-slot",[],null,null,null,o,u)),a["ɵdid"](1,49152,null,0,s.a,[],{node:[0,"node"],dropIndex:[1,"dropIndex"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.node.parent,n.node.index)}),null)}function W(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"div",[],[[8,"className",0],[2,"tree-node",null],[2,"tree-node-expanded",null],[2,"tree-node-collapsed",null],[2,"tree-node-leaf",null],[2,"tree-node-active",null],[2,"tree-node-focused",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,U)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](3,0,null,null,1,"tree-node-wrapper",[],null,null,null,A,N)),a["ɵdid"](4,49152,null,0,I.a,[],{node:[0,"node"],index:[1,"index"],templates:[2,"templates"]},null),(t()(),a["ɵeld"](5,0,null,null,1,"tree-node-children",[],null,null,null,z,j)),a["ɵdid"](6,49152,null,0,q.a,[],{node:[0,"node"],templates:[1,"templates"]},null),(t()(),a["ɵeld"](7,0,null,null,1,"tree-node-drop-slot",[],null,null,null,o,u)),a["ɵdid"](8,49152,null,0,s.a,[],{node:[0,"node"],dropIndex:[1,"dropIndex"]},null)],(function(t,e){var n=e.component;t(e,2,0,0===n.index),t(e,4,0,n.node,n.index,n.templates),t(e,6,0,n.node,n.templates),t(e,8,0,n.node.parent,n.node.index+1)}),(function(t,e){var n=e.component;t(e,0,0,n.node.getClass(),!0,n.node.isExpanded&&n.node.hasChildren,n.node.isCollapsed&&n.node.hasChildren,n.node.isLeaf,n.node.isActive,n.node.isFocused)}))}function K(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,W)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](3,16777216,null,null,2,null,null,null,null,null,null,null)),a["ɵdid"](4,540672,null,0,l.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](5,{$implicit:0,node:1,index:2,templates:3}),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,!n.templates.treeNodeFullTemplate);var a=t(e,5,0,n.node,n.node,n.index,n.templates);t(e,4,0,a,n.templates.treeNodeFullTemplate)}),null)}function $(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,K)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var Z=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function J(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node",[],null,null,null,$,H)),a["ɵdid"](1,49152,null,0,Y.a,[],{node:[0,"node"],index:[1,"index"],templates:[2,"templates"]},null)],(function(t,e){t(e,1,0,e.context.$implicit,e.context.index,e.component.templates)}),null)}function Q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,2,"div",[],[[4,"margin-top",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,J)),a["ɵdid"](3,278528,null,0,l.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.viewportNodes,n.trackNode)}),(function(t,e){t(e,1,0,e.component.marginTop)}))}function X(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,Q)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var tt=n("dApe"),et=n("MP8s"),nt=n("HIU9"),at=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function rt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[],[[4,"height",null]],null,null,null,null)),a["ɵncd"](null,0)],null,(function(t,e){t(e,1,0,e.component.getTotalHeight())}))}function it(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,rt)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}n("fxL3"),n.d(e,"a",(function(){return st})),n.d(e,"b",(function(){return lt}));var st=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function ut(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"tree-node-collection",[],null,null,null,X,Z)),a["ɵdid"](1,245760,null,0,k.a,[],{nodes:[0,"nodes"],treeModel:[1,"treeModel"],templates:[2,"templates"]},null),a["ɵpod"](2,{loadingTemplate:0,treeNodeTemplate:1,treeNodeWrapperTemplate:2,treeNodeFullTemplate:3})],(function(t,e){var n=e.component,a=n.treeModel.roots,r=n.treeModel,i=t(e,2,0,n.loadingTemplate,n.treeNodeTemplate,n.treeNodeWrapperTemplate,n.treeNodeFullTemplate);t(e,1,0,a,r,i)}),null)}function ot(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node-drop-slot",[["class","empty-tree-drop-slot"]],null,null,null,o,u)),a["ɵdid"](1,49152,null,0,s.a,[],{node:[0,"node"],dropIndex:[1,"dropIndex"]},null)],(function(t,e){t(e,1,0,e.component.treeModel.virtualRoot,0)}),null)}function lt(t){return a["ɵvid"](0,[a["ɵqud"](671088640,1,{viewportComponent:0}),(t()(),a["ɵeld"](1,0,null,null,7,"tree-viewport",[],null,null,null,it,at)),a["ɵprd"](512,null,tt.a,tt.a,[et.a]),a["ɵdid"](3,4440064,[[1,4],["viewport",4]],0,nt.a,[a.ElementRef,a.NgZone,tt.a],null,null),(t()(),a["ɵeld"](4,0,null,0,4,"div",[["class","angular-tree-component"]],[[2,"node-dragging",null],[2,"angular-tree-component-rtl",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ut)),a["ɵdid"](6,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ot)),a["ɵdid"](8,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0),t(e,6,0,n.treeModel.roots),t(e,8,0,n.treeModel.isEmptyTree())}),(function(t,e){var n=e.component;t(e,4,0,n.treeDraggedElement.isDragging(),n.treeModel.options.rtl)}))}},LQDL:function(t,e,n){var a,r,i=n("2oRo"),s=n("NC/Y"),u=i.process,o=u&&u.versions,l=o&&o.v8;l?r=(a=l.split("."))[0]+a[1]:s&&(!(a=s.match(/Edge\/(\d+)/))||a[1]>=74)&&(a=s.match(/Chrome\/(\d+)/))&&(r=a[1]),t.exports=r&&+r},LRne:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("z+Ro"),r=n("yCtX"),i=n("jZKg");function s(...t){let e=t[t.length-1];return Object(a.a)(e)?(t.pop(),Object(i.a)(t,e)):Object(r.a)(t)}},LWR0:function(t,e,n){var a=n("hmSm"),r=n("fIUv"),i=n("jNLg"),s=Math.max,u=Math.min;t.exports=function(t,e,n){var o,l,d,c,f,h,g=0,p=!1,b=!1,m=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function y(e){var n=o,a=l;return o=l=void 0,g=e,c=t.apply(a,n)}function v(t){return g=t,f=setTimeout(_,e),p?y(t):c}function x(t){var n=t-h;return void 0===h||n>=e||n<0||b&&t-g>=d}function _(){var t=r();if(x(t))return T(t);f=setTimeout(_,function(t){var n=e-(t-h);return b?u(n,d-(t-g)):n}(t))}function T(t){return f=void 0,m&&o?y(t):(o=l=void 0,c)}function w(){var t=r(),n=x(t);if(o=arguments,l=this,h=t,n){if(void 0===f)return v(h);if(b)return clearTimeout(f),f=setTimeout(_,e),y(h)}return void 0===f&&(f=setTimeout(_,e)),c}return e=i(e)||0,a(n)&&(p=!!n.leading,d=(b="maxWait"in n)?s(i(n.maxWait)||0,e):d,m="trailing"in n?!!n.trailing:m),w.cancel=function(){void 0!==f&&clearTimeout(f),g=0,o=h=l=f=void 0},w.flush=function(){return void 0===f?c:T(r())},w}},LaC8:function(t,e,n){var a=n("pMcL"),r=n("sA22"),i=n("eNG0"),s=a?a.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":s&&s in Object(t)?r(t):i(t)}},LceX:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return c})),n.d(e,"c",(function(){return i})),n.d(e,"d",(function(){return s})),n.d(e,"e",(function(){return u})),n.d(e,"f",(function(){return o})),n.d(e,"g",(function(){return l})),n.d(e,"h",(function(){return d}));var a=n("sne2");n("eTJe"),n("n/D3"),n("V3my"),n("ZEkX");class r{}const i={breadcrumbs:"Users"},s={breadcrumbs:a.a.CREATE},u={breadcrumbs:a.a.EDIT},o={breadcrumbs:"Roles"},l={breadcrumbs:a.a.CREATE},d={breadcrumbs:a.a.EDIT};class c{}},LgIp:function(t,e){t.exports=function(t){for(var e=-1,n=null==t?0:t.length,a=0,r=[];++e<n;){var i=t[e];i&&(r[a++]=i)}return r}},Lhse:function(t,e,n){"use strict";function a(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}n.d(e,"a",(function(){return r}));const r=a()},Loxo:function(t,e,n){!function(t){"use strict";t.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",ss:"%d фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}(n("wd/R"))},LqlI:function(t,e,n){"use strict";n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return f})),n.d(e,"c",(function(){return c})),n.d(e,"d",(function(){return d})),n.d(e,"e",(function(){return h})),n.d(e,"f",(function(){return o}));var a=n("8Y7J"),r=n("hpHm"),i=n("z/SZ"),s=n("2uy1");class u{constructor(){this.hide=Function,this.setClass=Function}}class o{}const l={backdrop:!0,keyboard:!0,focus:!0,show:!1,ignoreBackdropClick:!1,class:"",animated:!0,initialState:{}};class d{constructor(t,e,n){this._element=e,this._renderer=n,this.isShown=!1,this.isModalHiding=!1,this.clickStartedInContent=!1,this.config=Object.assign({},t)}ngOnInit(){this.isAnimated&&this._renderer.addClass(this._element.nativeElement,"fade"),this._renderer.setStyle(this._element.nativeElement,"display","block"),setTimeout(()=>{this.isShown=!0,this._renderer.addClass(this._element.nativeElement,Object(r.d)()?"in":"show")},this.isAnimated?150:0),document&&document.body&&(1===this.bsModalService.getModalsCount()&&(this.bsModalService.checkScrollbar(),this.bsModalService.setScrollbar()),this._renderer.addClass(document.body,"modal-open")),this._element.nativeElement&&this._element.nativeElement.focus()}onClickStarted(t){this.clickStartedInContent=t.target!==this._element.nativeElement}onClickStop(t){this.config.ignoreBackdropClick||"static"===this.config.backdrop||t.target!==this._element.nativeElement||this.clickStartedInContent?this.clickStartedInContent=!1:(this.bsModalService.setDismissReason("backdrop-click"),this.hide())}onEsc(t){this.isShown&&(27!==t.keyCode&&"Escape"!==t.key||t.preventDefault(),this.config.keyboard&&this.level===this.bsModalService.getModalsCount()&&(this.bsModalService.setDismissReason("esc"),this.hide()))}ngOnDestroy(){this.isShown&&this.hide()}hide(){!this.isModalHiding&&this.isShown&&(this.isModalHiding=!0,this._renderer.removeClass(this._element.nativeElement,Object(r.d)()?"in":"show"),setTimeout(()=>{this.isShown=!1,document&&document.body&&1===this.bsModalService.getModalsCount()&&this._renderer.removeClass(document.body,"modal-open"),this.bsModalService.hide(this.level),this.isModalHiding=!1},this.isAnimated?300:0))}}class c{constructor(t,e){this._isShown=!1,this.element=t,this.renderer=e}get isAnimated(){return this._isAnimated}set isAnimated(t){this._isAnimated=t}get isShown(){return this._isShown}set isShown(t){this._isShown=t,t?this.renderer.addClass(this.element.nativeElement,"in"):this.renderer.removeClass(this.element.nativeElement,"in"),Object(r.d)()||(t?this.renderer.addClass(this.element.nativeElement,"show"):this.renderer.removeClass(this.element.nativeElement,"show"))}ngOnInit(){this.isAnimated&&(this.renderer.addClass(this.element.nativeElement,"fade"),r.b.reflow(this.element.nativeElement)),this.isShown=!0}}class f{constructor(t,e){this.clf=e,this.config=l,this.onShow=new a.EventEmitter,this.onShown=new a.EventEmitter,this.onHide=new a.EventEmitter,this.onHidden=new a.EventEmitter,this.isBodyOverflowing=!1,this.originalBodyPadding=0,this.scrollbarWidth=0,this.modalsCount=0,this.lastDismissReason="",this.loaders=[],this._backdropLoader=this.clf.createLoader(null,null,null),this._renderer=t.createRenderer(null,null)}show(t,e){return this.modalsCount++,this._createLoaders(),this.config=Object.assign({},l,e),this._showBackdrop(),this.lastDismissReason=null,this._showModal(t)}hide(t){1===this.modalsCount&&(this._hideBackdrop(),this.resetScrollbar()),this.modalsCount=this.modalsCount>=1?this.modalsCount-1:0,setTimeout(()=>{this._hideModal(t),this.removeLoaders(t)},this.config.animated?150:0)}_showBackdrop(){const t=this.config.backdrop||"static"===this.config.backdrop,e=!this.backdropRef||!this.backdropRef.instance.isShown;1===this.modalsCount&&(this.removeBackdrop(),t&&e&&(this._backdropLoader.attach(c).to("body").show({isAnimated:this.config.animated}),this.backdropRef=this._backdropLoader._componentRef))}_hideBackdrop(){this.backdropRef&&(this.backdropRef.instance.isShown=!1,setTimeout(()=>this.removeBackdrop(),this.config.animated?150:0))}_showModal(t){const e=this.loaders[this.loaders.length-1],n=new u,a=e.provide({provide:o,useValue:this.config}).provide({provide:u,useValue:n}).attach(d).to("body").show({content:t,isAnimated:this.config.animated,initialState:this.config.initialState,bsModalService:this});return a.instance.level=this.getModalsCount(),n.hide=()=>{setTimeout(()=>a.instance.hide(),this.config.animated?300:0)},n.content=e.getInnerComponent()||null,n.setClass=t=>{a.instance.config.class=t},n}_hideModal(t){const e=this.loaders[t-1];e&&e.hide()}getModalsCount(){return this.modalsCount}setDismissReason(t){this.lastDismissReason=t}removeBackdrop(){this._backdropLoader.hide(),this.backdropRef=null}checkScrollbar(){this.isBodyOverflowing=document.body.clientWidth<window.innerWidth,this.scrollbarWidth=this.getScrollbarWidth()}setScrollbar(){document&&(this.originalBodyPadding=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")||"0",10),this.isBodyOverflowing&&(document.body.style.paddingRight=this.originalBodyPadding+this.scrollbarWidth+"px"))}resetScrollbar(){document.body.style.paddingRight=this.originalBodyPadding+"px"}getScrollbarWidth(){const t=this._renderer.createElement("div");this._renderer.addClass(t,"modal-scrollbar-measure"),this._renderer.appendChild(document.body,t);const e=t.offsetWidth-t.clientWidth;return this._renderer.removeChild(document.body,t),e}_createLoaders(){const t=this.clf.createLoader(null,null,null);this.copyEvent(t.onBeforeShow,this.onShow),this.copyEvent(t.onShown,this.onShown),this.copyEvent(t.onBeforeHide,this.onHide),this.copyEvent(t.onHidden,this.onHidden),this.loaders.push(t)}removeLoaders(t){this.loaders.splice(t-1,1),this.loaders.forEach((t,e)=>{t.instance.level=e+1})}copyEvent(t,e){t.subscribe(()=>{e.emit(this.lastDismissReason)})}}class h{static forRoot(){return{ngModule:h,providers:[f,i.a,s.a]}}static forChild(){return{ngModule:h,providers:[f,i.a,s.a]}}}},LvDl:function(t,e,n){(function(t){var a;(function(){var r="Expected a function",i="__lodash_placeholder__",s=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],u="[object Arguments]",o="[object Array]",l="[object Boolean]",d="[object Date]",c="[object Error]",f="[object Function]",h="[object GeneratorFunction]",g="[object Map]",p="[object Number]",b="[object Object]",m="[object RegExp]",y="[object Set]",v="[object String]",x="[object Symbol]",_="[object WeakMap]",T="[object ArrayBuffer]",w="[object DataView]",O="[object Float32Array]",S="[object Float64Array]",I="[object Int8Array]",N="[object Int16Array]",C="[object Int32Array]",R="[object Uint8Array]",A="[object Uint16Array]",k="[object Uint32Array]",E=/\b__p \+= '';/g,L=/\b(__p \+=) '' \+/g,D=/(__e\(.*?\)|\b__t\)) \+\n'';/g,P=/&(?:amp|lt|gt|quot|#39);/g,M=/[&<>"']/g,q=RegExp(P.source),j=RegExp(M.source),F=/<%-([\s\S]+?)%>/g,V=/<%([\s\S]+?)%>/g,G=/<%=([\s\S]+?)%>/g,B=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,z=/^\w*$/,Y=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,H=/[\\^$.*+?()[\]{}|]/g,U=RegExp(H.source),W=/^\s+|\s+$/g,K=/^\s+/,$=/\s+$/,Z=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,J=/\{\n\/\* \[wrapped with (.+)\] \*/,Q=/,? & /,X=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,tt=/\\(\\)?/g,et=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,nt=/\w*$/,at=/^[-+]0x[0-9a-f]+$/i,rt=/^0b[01]+$/i,it=/^\[object .+?Constructor\]$/,st=/^0o[0-7]+$/i,ut=/^(?:0|[1-9]\d*)$/,ot=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,lt=/($^)/,dt=/['\n\r\u2028\u2029\\]/g,ct="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ft="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ht="["+ft+"]",gt="["+ct+"]",pt="\\d+",bt="[a-z\\xdf-\\xf6\\xf8-\\xff]",mt="[^\\ud800-\\udfff"+ft+pt+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",yt="\\ud83c[\\udffb-\\udfff]",vt="[^\\ud800-\\udfff]",xt="(?:\\ud83c[\\udde6-\\uddff]){2}",_t="[\\ud800-\\udbff][\\udc00-\\udfff]",Tt="[A-Z\\xc0-\\xd6\\xd8-\\xde]",wt="(?:"+bt+"|"+mt+")",Ot="(?:"+Tt+"|"+mt+")",St="(?:"+gt+"|"+yt+")?",It="[\\ufe0e\\ufe0f]?"+St+"(?:\\u200d(?:"+[vt,xt,_t].join("|")+")[\\ufe0e\\ufe0f]?"+St+")*",Nt="(?:"+["[\\u2700-\\u27bf]",xt,_t].join("|")+")"+It,Ct="(?:"+[vt+gt+"?",gt,xt,_t,"[\\ud800-\\udfff]"].join("|")+")",Rt=RegExp("['’]","g"),At=RegExp(gt,"g"),kt=RegExp(yt+"(?="+yt+")|"+Ct+It,"g"),Et=RegExp([Tt+"?"+bt+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ht,Tt,"$"].join("|")+")",Ot+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ht,Tt+wt,"$"].join("|")+")",Tt+"?"+wt+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Tt+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",pt,Nt].join("|"),"g"),Lt=RegExp("[\\u200d\\ud800-\\udfff"+ct+"\\ufe0e\\ufe0f]"),Dt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Pt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Mt=-1,qt={};qt[O]=qt[S]=qt[I]=qt[N]=qt[C]=qt[R]=qt["[object Uint8ClampedArray]"]=qt[A]=qt[k]=!0,qt[u]=qt[o]=qt[T]=qt[l]=qt[w]=qt[d]=qt[c]=qt[f]=qt[g]=qt[p]=qt[b]=qt[m]=qt[y]=qt[v]=qt[_]=!1;var jt={};jt[u]=jt[o]=jt[T]=jt[w]=jt[l]=jt[d]=jt[O]=jt[S]=jt[I]=jt[N]=jt[C]=jt[g]=jt[p]=jt[b]=jt[m]=jt[y]=jt[v]=jt[x]=jt[R]=jt["[object Uint8ClampedArray]"]=jt[A]=jt[k]=!0,jt[c]=jt[f]=jt[_]=!1;var Ft={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Vt=parseFloat,Gt=parseInt,Bt="object"==typeof global&&global&&global.Object===Object&&global,zt="object"==typeof self&&self&&self.Object===Object&&self,Yt=Bt||zt||Function("return this")(),Ht=e&&!e.nodeType&&e,Ut=Ht&&"object"==typeof t&&t&&!t.nodeType&&t,Wt=Ut&&Ut.exports===Ht,Kt=Wt&&Bt.process,$t=function(){try{return Ut&&Ut.require&&Ut.require("util").types||Kt&&Kt.binding&&Kt.binding("util")}catch(t){}}(),Zt=$t&&$t.isArrayBuffer,Jt=$t&&$t.isDate,Qt=$t&&$t.isMap,Xt=$t&&$t.isRegExp,te=$t&&$t.isSet,ee=$t&&$t.isTypedArray;function ne(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function ae(t,e,n,a){for(var r=-1,i=null==t?0:t.length;++r<i;){var s=t[r];e(a,s,n(s),t)}return a}function re(t,e){for(var n=-1,a=null==t?0:t.length;++n<a&&!1!==e(t[n],n,t););return t}function ie(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}function se(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(!e(t[n],n,t))return!1;return!0}function ue(t,e){for(var n=-1,a=null==t?0:t.length,r=0,i=[];++n<a;){var s=t[n];e(s,n,t)&&(i[r++]=s)}return i}function oe(t,e){return!(null==t||!t.length)&&ye(t,e,0)>-1}function le(t,e,n){for(var a=-1,r=null==t?0:t.length;++a<r;)if(n(e,t[a]))return!0;return!1}function de(t,e){for(var n=-1,a=null==t?0:t.length,r=Array(a);++n<a;)r[n]=e(t[n],n,t);return r}function ce(t,e){for(var n=-1,a=e.length,r=t.length;++n<a;)t[r+n]=e[n];return t}function fe(t,e,n,a){var r=-1,i=null==t?0:t.length;for(a&&i&&(n=t[++r]);++r<i;)n=e(n,t[r],r,t);return n}function he(t,e,n,a){var r=null==t?0:t.length;for(a&&r&&(n=t[--r]);r--;)n=e(n,t[r],r,t);return n}function ge(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(e(t[n],n,t))return!0;return!1}var pe=Te("length");function be(t,e,n){var a;return n(t,(function(t,n,r){if(e(t,n,r))return a=n,!1})),a}function me(t,e,n,a){for(var r=t.length,i=n+(a?1:-1);a?i--:++i<r;)if(e(t[i],i,t))return i;return-1}function ye(t,e,n){return e==e?function(t,e,n){for(var a=n-1,r=t.length;++a<r;)if(t[a]===e)return a;return-1}(t,e,n):me(t,xe,n)}function ve(t,e,n,a){for(var r=n-1,i=t.length;++r<i;)if(a(t[r],e))return r;return-1}function xe(t){return t!=t}function _e(t,e){var n=null==t?0:t.length;return n?Se(t,e)/n:NaN}function Te(t){return function(e){return null==e?void 0:e[t]}}function we(t){return function(e){return null==t?void 0:t[e]}}function Oe(t,e,n,a,r){return r(t,(function(t,r,i){n=a?(a=!1,t):e(n,t,r,i)})),n}function Se(t,e){for(var n,a=-1,r=t.length;++a<r;){var i=e(t[a]);void 0!==i&&(n=void 0===n?i:n+i)}return n}function Ie(t,e){for(var n=-1,a=Array(t);++n<t;)a[n]=e(n);return a}function Ne(t){return function(e){return t(e)}}function Ce(t,e){return de(e,(function(e){return t[e]}))}function Re(t,e){return t.has(e)}function Ae(t,e){for(var n=-1,a=t.length;++n<a&&ye(e,t[n],0)>-1;);return n}function ke(t,e){for(var n=t.length;n--&&ye(e,t[n],0)>-1;);return n}function Ee(t,e){for(var n=t.length,a=0;n--;)t[n]===e&&++a;return a}var Le=we({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),De=we({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function Pe(t){return"\\"+Ft[t]}function Me(t){return Lt.test(t)}function qe(t){var e=-1,n=Array(t.size);return t.forEach((function(t,a){n[++e]=[a,t]})),n}function je(t,e){return function(n){return t(e(n))}}function Fe(t,e){for(var n=-1,a=t.length,r=0,s=[];++n<a;){var u=t[n];u!==e&&u!==i||(t[n]=i,s[r++]=n)}return s}function Ve(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}function Ge(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=[t,t]})),n}function Be(t){return Me(t)?function(t){for(var e=kt.lastIndex=0;kt.test(t);)++e;return e}(t):pe(t)}function ze(t){return Me(t)?function(t){return t.match(kt)||[]}(t):function(t){return t.split("")}(t)}var Ye=we({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),He=function t(e){var n,a=(e=null==e?Yt:He.defaults(Yt.Object(),e,He.pick(Yt,Pt))).Array,ct=e.Date,ft=e.Error,ht=e.Function,gt=e.Math,pt=e.Object,bt=e.RegExp,mt=e.String,yt=e.TypeError,vt=a.prototype,xt=pt.prototype,_t=e["__core-js_shared__"],Tt=ht.prototype.toString,wt=xt.hasOwnProperty,Ot=0,St=(n=/[^.]+$/.exec(_t&&_t.keys&&_t.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",It=xt.toString,Nt=Tt.call(pt),Ct=Yt._,kt=bt("^"+Tt.call(wt).replace(H,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Lt=Wt?e.Buffer:void 0,Ft=e.Symbol,Bt=e.Uint8Array,zt=Lt?Lt.allocUnsafe:void 0,Ht=je(pt.getPrototypeOf,pt),Ut=pt.create,Kt=xt.propertyIsEnumerable,$t=vt.splice,pe=Ft?Ft.isConcatSpreadable:void 0,we=Ft?Ft.iterator:void 0,Ue=Ft?Ft.toStringTag:void 0,We=function(){try{var t=Jr(pt,"defineProperty");return t({},"",{}),t}catch(e){}}(),Ke=e.clearTimeout!==Yt.clearTimeout&&e.clearTimeout,$e=ct&&ct.now!==Yt.Date.now&&ct.now,Ze=e.setTimeout!==Yt.setTimeout&&e.setTimeout,Je=gt.ceil,Qe=gt.floor,Xe=pt.getOwnPropertySymbols,tn=Lt?Lt.isBuffer:void 0,en=e.isFinite,nn=vt.join,an=je(pt.keys,pt),rn=gt.max,sn=gt.min,un=ct.now,on=e.parseInt,ln=gt.random,dn=vt.reverse,cn=Jr(e,"DataView"),fn=Jr(e,"Map"),hn=Jr(e,"Promise"),gn=Jr(e,"Set"),pn=Jr(e,"WeakMap"),bn=Jr(pt,"create"),mn=pn&&new pn,yn={},vn=Ii(cn),xn=Ii(fn),_n=Ii(hn),Tn=Ii(gn),wn=Ii(pn),On=Ft?Ft.prototype:void 0,Sn=On?On.valueOf:void 0,In=On?On.toString:void 0;function Nn(t){if(zs(t)&&!Es(t)&&!(t instanceof kn)){if(t instanceof An)return t;if(wt.call(t,"__wrapped__"))return Ni(t)}return new An(t)}var Cn=function(){function t(){}return function(e){if(!Bs(e))return{};if(Ut)return Ut(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();function Rn(){}function An(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=void 0}function kn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function En(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Ln(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Dn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Pn(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new Dn;++e<n;)this.add(t[e])}function Mn(t){var e=this.__data__=new Ln(t);this.size=e.size}function qn(t,e){var n=Es(t),a=!n&&ks(t),r=!n&&!a&&Ms(t),i=!n&&!a&&!r&&Js(t),s=n||a||r||i,u=s?Ie(t.length,mt):[],o=u.length;for(var l in t)!e&&!wt.call(t,l)||s&&("length"==l||r&&("offset"==l||"parent"==l)||i&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||ri(l,o))||u.push(l);return u}function jn(t){var e=t.length;return e?t[Da(0,e-1)]:void 0}function Fn(t,e){return _i(pr(t),Kn(e,0,t.length))}function Vn(t){return _i(pr(t))}function Gn(t,e,n){(void 0!==n&&!Cs(t[e],n)||void 0===n&&!(e in t))&&Un(t,e,n)}function Bn(t,e,n){var a=t[e];wt.call(t,e)&&Cs(a,n)&&(void 0!==n||e in t)||Un(t,e,n)}function zn(t,e){for(var n=t.length;n--;)if(Cs(t[n][0],e))return n;return-1}function Yn(t,e,n,a){return Xn(t,(function(t,r,i){e(a,t,n(t),i)})),a}function Hn(t,e){return t&&br(e,vu(e),t)}function Un(t,e,n){"__proto__"==e&&We?We(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function Wn(t,e){for(var n=-1,r=e.length,i=a(r),s=null==t;++n<r;)i[n]=s?void 0:gu(t,e[n]);return i}function Kn(t,e,n){return t==t&&(void 0!==n&&(t=t<=n?t:n),void 0!==e&&(t=t>=e?t:e)),t}function $n(t,e,n,a,r,i){var s,o=1&e,c=2&e,_=4&e;if(n&&(s=r?n(t,a,r,i):n(t)),void 0!==s)return s;if(!Bs(t))return t;var E=Es(t);if(E){if(s=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&wt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!o)return pr(t,s)}else{var L=ti(t),D=L==f||L==h;if(Ms(t))return lr(t,o);if(L==b||L==u||D&&!r){if(s=c||D?{}:ni(t),!o)return c?function(t,e){return br(t,Xr(t),e)}(t,function(t,e){return t&&br(e,xu(e),t)}(s,t)):function(t,e){return br(t,Qr(t),e)}(t,Hn(s,t))}else{if(!jt[L])return r?t:{};s=function(t,e,n){var a=t.constructor;switch(e){case T:return dr(t);case l:case d:return new a(+t);case w:return function(t,e){var n=e?dr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case O:case S:case I:case N:case C:case R:case"[object Uint8ClampedArray]":case A:case k:return cr(t,n);case g:return new a;case p:case v:return new a(t);case m:return function(t){var e=new t.constructor(t.source,nt.exec(t));return e.lastIndex=t.lastIndex,e}(t);case y:return new a;case x:return Sn?pt(Sn.call(t)):{}}}(t,L,o)}}i||(i=new Mn);var P=i.get(t);if(P)return P;i.set(t,s),Ks(t)?t.forEach((function(a){s.add($n(a,e,n,a,t,i))})):Ys(t)&&t.forEach((function(a,r){s.set(r,$n(a,e,n,r,t,i))}));var M=E?void 0:(_?c?Yr:zr:c?xu:vu)(t);return re(M||t,(function(a,r){M&&(a=t[r=a]),Bn(s,r,$n(a,e,n,r,t,i))})),s}function Zn(t,e,n){var a=n.length;if(null==t)return!a;for(t=pt(t);a--;){var r=n[a],i=t[r];if(void 0===i&&!(r in t)||!(0,e[r])(i))return!1}return!0}function Jn(t,e,n){if("function"!=typeof t)throw new yt(r);return mi((function(){t.apply(void 0,n)}),e)}function Qn(t,e,n,a){var r=-1,i=oe,s=!0,u=t.length,o=[],l=e.length;if(!u)return o;n&&(e=de(e,Ne(n))),a?(i=le,s=!1):e.length>=200&&(i=Re,s=!1,e=new Pn(e));t:for(;++r<u;){var d=t[r],c=null==n?d:n(d);if(d=a||0!==d?d:0,s&&c==c){for(var f=l;f--;)if(e[f]===c)continue t;o.push(d)}else i(e,c,a)||o.push(d)}return o}Nn.templateSettings={escape:F,evaluate:V,interpolate:G,variable:"",imports:{_:Nn}},(Nn.prototype=Rn.prototype).constructor=Nn,(An.prototype=Cn(Rn.prototype)).constructor=An,(kn.prototype=Cn(Rn.prototype)).constructor=kn,En.prototype.clear=function(){this.__data__=bn?bn(null):{},this.size=0},En.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},En.prototype.get=function(t){var e=this.__data__;if(bn){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return wt.call(e,t)?e[t]:void 0},En.prototype.has=function(t){var e=this.__data__;return bn?void 0!==e[t]:wt.call(e,t)},En.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=bn&&void 0===e?"__lodash_hash_undefined__":e,this},Ln.prototype.clear=function(){this.__data__=[],this.size=0},Ln.prototype.delete=function(t){var e=this.__data__,n=zn(e,t);return!(n<0||(n==e.length-1?e.pop():$t.call(e,n,1),--this.size,0))},Ln.prototype.get=function(t){var e=this.__data__,n=zn(e,t);return n<0?void 0:e[n][1]},Ln.prototype.has=function(t){return zn(this.__data__,t)>-1},Ln.prototype.set=function(t,e){var n=this.__data__,a=zn(n,t);return a<0?(++this.size,n.push([t,e])):n[a][1]=e,this},Dn.prototype.clear=function(){this.size=0,this.__data__={hash:new En,map:new(fn||Ln),string:new En}},Dn.prototype.delete=function(t){var e=$r(this,t).delete(t);return this.size-=e?1:0,e},Dn.prototype.get=function(t){return $r(this,t).get(t)},Dn.prototype.has=function(t){return $r(this,t).has(t)},Dn.prototype.set=function(t,e){var n=$r(this,t),a=n.size;return n.set(t,e),this.size+=n.size==a?0:1,this},Pn.prototype.add=Pn.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Pn.prototype.has=function(t){return this.__data__.has(t)},Mn.prototype.clear=function(){this.__data__=new Ln,this.size=0},Mn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Mn.prototype.get=function(t){return this.__data__.get(t)},Mn.prototype.has=function(t){return this.__data__.has(t)},Mn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Ln){var a=n.__data__;if(!fn||a.length<199)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new Dn(a)}return n.set(t,e),this.size=n.size,this};var Xn=vr(ua),ta=vr(oa,!0);function ea(t,e){var n=!0;return Xn(t,(function(t,a,r){return n=!!e(t,a,r)})),n}function na(t,e,n){for(var a=-1,r=t.length;++a<r;){var i=t[a],s=e(i);if(null!=s&&(void 0===u?s==s&&!Zs(s):n(s,u)))var u=s,o=i}return o}function aa(t,e){var n=[];return Xn(t,(function(t,a,r){e(t,a,r)&&n.push(t)})),n}function ra(t,e,n,a,r){var i=-1,s=t.length;for(n||(n=ai),r||(r=[]);++i<s;){var u=t[i];e>0&&n(u)?e>1?ra(u,e-1,n,a,r):ce(r,u):a||(r[r.length]=u)}return r}var ia=xr(),sa=xr(!0);function ua(t,e){return t&&ia(t,e,vu)}function oa(t,e){return t&&sa(t,e,vu)}function la(t,e){return ue(e,(function(e){return Fs(t[e])}))}function da(t,e){for(var n=0,a=(e=ir(e,t)).length;null!=t&&n<a;)t=t[Si(e[n++])];return n&&n==a?t:void 0}function ca(t,e,n){var a=e(t);return Es(t)?a:ce(a,n(t))}function fa(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":Ue&&Ue in pt(t)?function(t){var e=wt.call(t,Ue),n=t[Ue];try{t[Ue]=void 0;var a=!0}catch(i){}var r=It.call(t);return a&&(e?t[Ue]=n:delete t[Ue]),r}(t):function(t){return It.call(t)}(t)}function ha(t,e){return t>e}function ga(t,e){return null!=t&&wt.call(t,e)}function pa(t,e){return null!=t&&e in pt(t)}function ba(t,e,n){for(var r=n?le:oe,i=t[0].length,s=t.length,u=s,o=a(s),l=1/0,d=[];u--;){var c=t[u];u&&e&&(c=de(c,Ne(e))),l=sn(c.length,l),o[u]=!n&&(e||i>=120&&c.length>=120)?new Pn(u&&c):void 0}c=t[0];var f=-1,h=o[0];t:for(;++f<i&&d.length<l;){var g=c[f],p=e?e(g):g;if(g=n||0!==g?g:0,!(h?Re(h,p):r(d,p,n))){for(u=s;--u;){var b=o[u];if(!(b?Re(b,p):r(t[u],p,n)))continue t}h&&h.push(p),d.push(g)}}return d}function ma(t,e,n){var a=null==(t=hi(t,e=ir(e,t)))?t:t[Si(ji(e))];return null==a?void 0:ne(a,t,n)}function ya(t){return zs(t)&&fa(t)==u}function va(t,e,n,a,r){return t===e||(null==t||null==e||!zs(t)&&!zs(e)?t!=t&&e!=e:function(t,e,n,a,r,i){var s=Es(t),f=Es(e),h=s?o:ti(t),_=f?o:ti(e),O=(h=h==u?b:h)==b,S=(_=_==u?b:_)==b,I=h==_;if(I&&Ms(t)){if(!Ms(e))return!1;s=!0,O=!1}if(I&&!O)return i||(i=new Mn),s||Js(t)?Gr(t,e,n,a,r,i):function(t,e,n,a,r,i,s){switch(n){case w:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case T:return!(t.byteLength!=e.byteLength||!i(new Bt(t),new Bt(e)));case l:case d:case p:return Cs(+t,+e);case c:return t.name==e.name&&t.message==e.message;case m:case v:return t==e+"";case g:var u=qe;case y:if(u||(u=Ve),t.size!=e.size&&!(1&a))return!1;var o=s.get(t);if(o)return o==e;a|=2,s.set(t,e);var f=Gr(u(t),u(e),a,r,i,s);return s.delete(t),f;case x:if(Sn)return Sn.call(t)==Sn.call(e)}return!1}(t,e,h,n,a,r,i);if(!(1&n)){var N=O&&wt.call(t,"__wrapped__"),C=S&&wt.call(e,"__wrapped__");if(N||C){var R=N?t.value():t,A=C?e.value():e;return i||(i=new Mn),r(R,A,n,a,i)}}return!!I&&(i||(i=new Mn),function(t,e,n,a,r,i){var s=1&n,u=zr(t),o=u.length;if(o!=zr(e).length&&!s)return!1;for(var l=o;l--;){var d=u[l];if(!(s?d in e:wt.call(e,d)))return!1}var c=i.get(t),f=i.get(e);if(c&&f)return c==e&&f==t;var h=!0;i.set(t,e),i.set(e,t);for(var g=s;++l<o;){var p=t[d=u[l]],b=e[d];if(a)var m=s?a(b,p,d,e,t,i):a(p,b,d,t,e,i);if(!(void 0===m?p===b||r(p,b,n,a,i):m)){h=!1;break}g||(g="constructor"==d)}if(h&&!g){var y=t.constructor,v=e.constructor;y==v||!("constructor"in t)||!("constructor"in e)||"function"==typeof y&&y instanceof y&&"function"==typeof v&&v instanceof v||(h=!1)}return i.delete(t),i.delete(e),h}(t,e,n,a,r,i))}(t,e,n,a,va,r))}function xa(t,e,n,a){var r=n.length,i=r,s=!a;if(null==t)return!i;for(t=pt(t);r--;){var u=n[r];if(s&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++r<i;){var o=(u=n[r])[0],l=t[o],d=u[1];if(s&&u[2]){if(void 0===l&&!(o in t))return!1}else{var c=new Mn;if(a)var f=a(l,d,o,t,e,c);if(!(void 0===f?va(d,l,3,a,c):f))return!1}}return!0}function _a(t){return!(!Bs(t)||(e=t,St&&St in e))&&(Fs(t)?kt:it).test(Ii(t));var e}function Ta(t){return"function"==typeof t?t:null==t?Hu:"object"==typeof t?Es(t)?Na(t[0],t[1]):Ia(t):to(t)}function wa(t){if(!li(t))return an(t);var e=[];for(var n in pt(t))wt.call(t,n)&&"constructor"!=n&&e.push(n);return e}function Oa(t,e){return t<e}function Sa(t,e){var n=-1,r=Ds(t)?a(t.length):[];return Xn(t,(function(t,a,i){r[++n]=e(t,a,i)})),r}function Ia(t){var e=Zr(t);return 1==e.length&&e[0][2]?ci(e[0][0],e[0][1]):function(n){return n===t||xa(n,t,e)}}function Na(t,e){return si(t)&&di(e)?ci(Si(t),e):function(n){var a=gu(n,t);return void 0===a&&a===e?pu(n,t):va(e,a,3)}}function Ca(t,e,n,a,r){t!==e&&ia(e,(function(i,s){if(r||(r=new Mn),Bs(i))!function(t,e,n,a,r,i,s){var u=pi(t,n),o=pi(e,n),l=s.get(o);if(l)Gn(t,n,l);else{var d=i?i(u,o,n+"",t,e,s):void 0,c=void 0===d;if(c){var f=Es(o),h=!f&&Ms(o),g=!f&&!h&&Js(o);d=o,f||h||g?Es(u)?d=u:Ps(u)?d=pr(u):h?(c=!1,d=lr(o,!0)):g?(c=!1,d=cr(o,!0)):d=[]:Us(o)||ks(o)?(d=u,ks(u)?d=iu(u):Bs(u)&&!Fs(u)||(d=ni(o))):c=!1}c&&(s.set(o,d),r(d,o,a,i,s),s.delete(o)),Gn(t,n,d)}}(t,e,s,n,Ca,a,r);else{var u=a?a(pi(t,s),i,s+"",t,e,r):void 0;void 0===u&&(u=i),Gn(t,s,u)}}),xu)}function Ra(t,e){var n=t.length;if(n)return ri(e+=e<0?n:0,n)?t[e]:void 0}function Aa(t,e,n){e=e.length?de(e,(function(t){return Es(t)?function(e){return da(e,1===t.length?t[0]:t)}:t})):[Hu];var a=-1;return e=de(e,Ne(Kr())),function(t,e){var a=t.length;for(t.sort((function(t,e){return function(t,e,n){for(var a=-1,r=t.criteria,i=e.criteria,s=r.length,u=n.length;++a<s;){var o=fr(r[a],i[a]);if(o)return a>=u?o:o*("desc"==n[a]?-1:1)}return t.index-e.index}(t,e,n)}));a--;)t[a]=t[a].value;return t}(Sa(t,(function(t,n,r){return{criteria:de(e,(function(e){return e(t)})),index:++a,value:t}})))}function ka(t,e,n){for(var a=-1,r=e.length,i={};++a<r;){var s=e[a],u=da(t,s);n(u,s)&&Fa(i,ir(s,t),u)}return i}function Ea(t,e,n,a){var r=a?ve:ye,i=-1,s=e.length,u=t;for(t===e&&(e=pr(e)),n&&(u=de(t,Ne(n)));++i<s;)for(var o=0,l=e[i],d=n?n(l):l;(o=r(u,d,o,a))>-1;)u!==t&&$t.call(u,o,1),$t.call(t,o,1);return t}function La(t,e){for(var n=t?e.length:0,a=n-1;n--;){var r=e[n];if(n==a||r!==i){var i=r;ri(r)?$t.call(t,r,1):Ja(t,r)}}return t}function Da(t,e){return t+Qe(ln()*(e-t+1))}function Pa(t,e){var n="";if(!t||e<1||e>9007199254740991)return n;do{e%2&&(n+=t),(e=Qe(e/2))&&(t+=t)}while(e);return n}function Ma(t,e){return yi(fi(t,e,Hu),t+"")}function qa(t){return jn(Cu(t))}function ja(t,e){var n=Cu(t);return _i(n,Kn(e,0,n.length))}function Fa(t,e,n,a){if(!Bs(t))return t;for(var r=-1,i=(e=ir(e,t)).length,s=i-1,u=t;null!=u&&++r<i;){var o=Si(e[r]),l=n;if("__proto__"===o||"constructor"===o||"prototype"===o)return t;if(r!=s){var d=u[o];void 0===(l=a?a(d,o,u):void 0)&&(l=Bs(d)?d:ri(e[r+1])?[]:{})}Bn(u,o,l),u=u[o]}return t}var Va=mn?function(t,e){return mn.set(t,e),t}:Hu,Ga=We?function(t,e){return We(t,"toString",{configurable:!0,enumerable:!1,value:Bu(e),writable:!0})}:Hu;function Ba(t){return _i(Cu(t))}function za(t,e,n){var r=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var s=a(i);++r<i;)s[r]=t[r+e];return s}function Ya(t,e){var n;return Xn(t,(function(t,a,r){return!(n=e(t,a,r))})),!!n}function Ha(t,e,n){var a=0,r=null==t?a:t.length;if("number"==typeof e&&e==e&&r<=2147483647){for(;a<r;){var i=a+r>>>1,s=t[i];null!==s&&!Zs(s)&&(n?s<=e:s<e)?a=i+1:r=i}return r}return Ua(t,e,Hu,n)}function Ua(t,e,n,a){var r=0,i=null==t?0:t.length;if(0===i)return 0;for(var s=(e=n(e))!=e,u=null===e,o=Zs(e),l=void 0===e;r<i;){var d=Qe((r+i)/2),c=n(t[d]),f=void 0!==c,h=null===c,g=c==c,p=Zs(c);if(s)var b=a||g;else b=l?g&&(a||f):u?g&&f&&(a||!h):o?g&&f&&!h&&(a||!p):!h&&!p&&(a?c<=e:c<e);b?r=d+1:i=d}return sn(i,4294967294)}function Wa(t,e){for(var n=-1,a=t.length,r=0,i=[];++n<a;){var s=t[n],u=e?e(s):s;if(!n||!Cs(u,o)){var o=u;i[r++]=0===s?0:s}}return i}function Ka(t){return"number"==typeof t?t:Zs(t)?NaN:+t}function $a(t){if("string"==typeof t)return t;if(Es(t))return de(t,$a)+"";if(Zs(t))return In?In.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Za(t,e,n){var a=-1,r=oe,i=t.length,s=!0,u=[],o=u;if(n)s=!1,r=le;else if(i>=200){var l=e?null:Pr(t);if(l)return Ve(l);s=!1,r=Re,o=new Pn}else o=e?[]:u;t:for(;++a<i;){var d=t[a],c=e?e(d):d;if(d=n||0!==d?d:0,s&&c==c){for(var f=o.length;f--;)if(o[f]===c)continue t;e&&o.push(c),u.push(d)}else r(o,c,n)||(o!==u&&o.push(c),u.push(d))}return u}function Ja(t,e){return null==(t=hi(t,e=ir(e,t)))||delete t[Si(ji(e))]}function Qa(t,e,n,a){return Fa(t,e,n(da(t,e)),a)}function Xa(t,e,n,a){for(var r=t.length,i=a?r:-1;(a?i--:++i<r)&&e(t[i],i,t););return n?za(t,a?0:i,a?i+1:r):za(t,a?i+1:0,a?r:i)}function tr(t,e){var n=t;return n instanceof kn&&(n=n.value()),fe(e,(function(t,e){return e.func.apply(e.thisArg,ce([t],e.args))}),n)}function er(t,e,n){var r=t.length;if(r<2)return r?Za(t[0]):[];for(var i=-1,s=a(r);++i<r;)for(var u=t[i],o=-1;++o<r;)o!=i&&(s[i]=Qn(s[i]||u,t[o],e,n));return Za(ra(s,1),e,n)}function nr(t,e,n){for(var a=-1,r=t.length,i=e.length,s={};++a<r;)n(s,t[a],a<i?e[a]:void 0);return s}function ar(t){return Ps(t)?t:[]}function rr(t){return"function"==typeof t?t:Hu}function ir(t,e){return Es(t)?t:si(t,e)?[t]:Oi(su(t))}var sr=Ma;function ur(t,e,n){var a=t.length;return n=void 0===n?a:n,!e&&n>=a?t:za(t,e,n)}var or=Ke||function(t){return Yt.clearTimeout(t)};function lr(t,e){if(e)return t.slice();var n=t.length,a=zt?zt(n):new t.constructor(n);return t.copy(a),a}function dr(t){var e=new t.constructor(t.byteLength);return new Bt(e).set(new Bt(t)),e}function cr(t,e){var n=e?dr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function fr(t,e){if(t!==e){var n=void 0!==t,a=null===t,r=t==t,i=Zs(t),s=void 0!==e,u=null===e,o=e==e,l=Zs(e);if(!u&&!l&&!i&&t>e||i&&s&&o&&!u&&!l||a&&s&&o||!n&&o||!r)return 1;if(!a&&!i&&!l&&t<e||l&&n&&r&&!a&&!i||u&&n&&r||!s&&r||!o)return-1}return 0}function hr(t,e,n,r){for(var i=-1,s=t.length,u=n.length,o=-1,l=e.length,d=rn(s-u,0),c=a(l+d),f=!r;++o<l;)c[o]=e[o];for(;++i<u;)(f||i<s)&&(c[n[i]]=t[i]);for(;d--;)c[o++]=t[i++];return c}function gr(t,e,n,r){for(var i=-1,s=t.length,u=-1,o=n.length,l=-1,d=e.length,c=rn(s-o,0),f=a(c+d),h=!r;++i<c;)f[i]=t[i];for(var g=i;++l<d;)f[g+l]=e[l];for(;++u<o;)(h||i<s)&&(f[g+n[u]]=t[i++]);return f}function pr(t,e){var n=-1,r=t.length;for(e||(e=a(r));++n<r;)e[n]=t[n];return e}function br(t,e,n,a){var r=!n;n||(n={});for(var i=-1,s=e.length;++i<s;){var u=e[i],o=a?a(n[u],t[u],u,n,t):void 0;void 0===o&&(o=t[u]),r?Un(n,u,o):Bn(n,u,o)}return n}function mr(t,e){return function(n,a){var r=Es(n)?ae:Yn,i=e?e():{};return r(n,t,Kr(a,2),i)}}function yr(t){return Ma((function(e,n){var a=-1,r=n.length,i=r>1?n[r-1]:void 0,s=r>2?n[2]:void 0;for(i=t.length>3&&"function"==typeof i?(r--,i):void 0,s&&ii(n[0],n[1],s)&&(i=r<3?void 0:i,r=1),e=pt(e);++a<r;){var u=n[a];u&&t(e,u,a,i)}return e}))}function vr(t,e){return function(n,a){if(null==n)return n;if(!Ds(n))return t(n,a);for(var r=n.length,i=e?r:-1,s=pt(n);(e?i--:++i<r)&&!1!==a(s[i],i,s););return n}}function xr(t){return function(e,n,a){for(var r=-1,i=pt(e),s=a(e),u=s.length;u--;){var o=s[t?u:++r];if(!1===n(i[o],o,i))break}return e}}function _r(t){return function(e){var n=Me(e=su(e))?ze(e):void 0,a=n?n[0]:e.charAt(0),r=n?ur(n,1).join(""):e.slice(1);return a[t]()+r}}function Tr(t){return function(e){return fe(Fu(ku(e).replace(Rt,"")),t,"")}}function wr(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=Cn(t.prototype),a=t.apply(n,e);return Bs(a)?a:n}}function Or(t){return function(e,n,a){var r=pt(e);if(!Ds(e)){var i=Kr(n,3);e=vu(e),n=function(t){return i(r[t],t,r)}}var s=t(e,n,a);return s>-1?r[i?e[s]:s]:void 0}}function Sr(t){return Br((function(e){var n=e.length,a=n,i=An.prototype.thru;for(t&&e.reverse();a--;){var s=e[a];if("function"!=typeof s)throw new yt(r);if(i&&!u&&"wrapper"==Ur(s))var u=new An([],!0)}for(a=u?a:n;++a<n;){var o=Ur(s=e[a]),l="wrapper"==o?Hr(s):void 0;u=l&&ui(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?u[Ur(l[0])].apply(u,l[3]):1==s.length&&ui(s)?u[o]():u.thru(s)}return function(){var t=arguments,a=t[0];if(u&&1==t.length&&Es(a))return u.plant(a).value();for(var r=0,i=n?e[r].apply(this,t):a;++r<n;)i=e[r].call(this,i);return i}}))}function Ir(t,e,n,r,i,s,u,o,l,d){var c=128&e,f=1&e,h=2&e,g=24&e,p=512&e,b=h?void 0:wr(t);return function m(){for(var y=arguments.length,v=a(y),x=y;x--;)v[x]=arguments[x];if(g)var _=Wr(m),T=Ee(v,_);if(r&&(v=hr(v,r,i,g)),s&&(v=gr(v,s,u,g)),y-=T,g&&y<d){var w=Fe(v,_);return Lr(t,e,Ir,m.placeholder,n,v,w,o,l,d-y)}var O=f?n:this,S=h?O[t]:t;return y=v.length,o?v=gi(v,o):p&&y>1&&v.reverse(),c&&l<y&&(v.length=l),this&&this!==Yt&&this instanceof m&&(S=b||wr(S)),S.apply(O,v)}}function Nr(t,e){return function(n,a){return function(t,e,n,a){return ua(t,(function(t,r,i){e(a,n(t),r,i)})),a}(n,t,e(a),{})}}function Cr(t,e){return function(n,a){var r;if(void 0===n&&void 0===a)return e;if(void 0!==n&&(r=n),void 0!==a){if(void 0===r)return a;"string"==typeof n||"string"==typeof a?(n=$a(n),a=$a(a)):(n=Ka(n),a=Ka(a)),r=t(n,a)}return r}}function Rr(t){return Br((function(e){return e=de(e,Ne(Kr())),Ma((function(n){var a=this;return t(e,(function(t){return ne(t,a,n)}))}))}))}function Ar(t,e){var n=(e=void 0===e?" ":$a(e)).length;if(n<2)return n?Pa(e,t):e;var a=Pa(e,Je(t/Be(e)));return Me(e)?ur(ze(a),0,t).join(""):a.slice(0,t)}function kr(t){return function(e,n,r){return r&&"number"!=typeof r&&ii(e,n,r)&&(n=r=void 0),e=eu(e),void 0===n?(n=e,e=0):n=eu(n),function(t,e,n,r){for(var i=-1,s=rn(Je((e-t)/(n||1)),0),u=a(s);s--;)u[r?s:++i]=t,t+=n;return u}(e,n,r=void 0===r?e<n?1:-1:eu(r),t)}}function Er(t){return function(e,n){return"string"==typeof e&&"string"==typeof n||(e=ru(e),n=ru(n)),t(e,n)}}function Lr(t,e,n,a,r,i,s,u,o,l){var d=8&e;e|=d?32:64,4&(e&=~(d?64:32))||(e&=-4);var c=[t,e,r,d?i:void 0,d?s:void 0,d?void 0:i,d?void 0:s,u,o,l],f=n.apply(void 0,c);return ui(t)&&bi(f,c),f.placeholder=a,vi(f,t,e)}function Dr(t){var e=gt[t];return function(t,n){if(t=ru(t),(n=null==n?0:sn(nu(n),292))&&en(t)){var a=(su(t)+"e").split("e");return+((a=(su(e(a[0]+"e"+(+a[1]+n)))+"e").split("e"))[0]+"e"+(+a[1]-n))}return e(t)}}var Pr=gn&&1/Ve(new gn([,-0]))[1]==1/0?function(t){return new gn(t)}:Zu;function Mr(t){return function(e){var n=ti(e);return n==g?qe(e):n==y?Ge(e):function(t,e){return de(e,(function(e){return[e,t[e]]}))}(e,t(e))}}function qr(t,e,n,s,u,o,l,d){var c=2&e;if(!c&&"function"!=typeof t)throw new yt(r);var f=s?s.length:0;if(f||(e&=-97,s=u=void 0),l=void 0===l?l:rn(nu(l),0),d=void 0===d?d:nu(d),f-=u?u.length:0,64&e){var h=s,g=u;s=u=void 0}var p=c?void 0:Hr(t),b=[t,e,n,s,u,h,g,o,l,d];if(p&&function(t,e){var n=t[1],a=e[1],r=n|a;if(!(r<131||128==a&&8==n||128==a&&256==n&&t[7].length<=e[8]||384==a&&e[7].length<=e[8]&&8==n))return t;1&a&&(t[2]=e[2],r|=1&n?0:4);var s=e[3];if(s){var u=t[3];t[3]=u?hr(u,s,e[4]):s,t[4]=u?Fe(t[3],i):e[4]}(s=e[5])&&(t[5]=(u=t[5])?gr(u,s,e[6]):s,t[6]=u?Fe(t[5],i):e[6]),(s=e[7])&&(t[7]=s),128&a&&(t[8]=null==t[8]?e[8]:sn(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=r}(b,p),t=b[0],e=b[1],n=b[2],s=b[3],u=b[4],!(d=b[9]=void 0===b[9]?c?0:t.length:rn(b[9]-f,0))&&24&e&&(e&=-25),e&&1!=e)m=8==e||16==e?function(t,e,n){var r=wr(t);return function i(){for(var s=arguments.length,u=a(s),o=s,l=Wr(i);o--;)u[o]=arguments[o];var d=s<3&&u[0]!==l&&u[s-1]!==l?[]:Fe(u,l);if((s-=d.length)<n)return Lr(t,e,Ir,i.placeholder,void 0,u,d,void 0,void 0,n-s);var c=this&&this!==Yt&&this instanceof i?r:t;return ne(c,this,u)}}(t,e,d):32!=e&&33!=e||u.length?Ir.apply(void 0,b):function(t,e,n,r){var i=1&e,s=wr(t);return function e(){for(var u=-1,o=arguments.length,l=-1,d=r.length,c=a(d+o),f=this&&this!==Yt&&this instanceof e?s:t;++l<d;)c[l]=r[l];for(;o--;)c[l++]=arguments[++u];return ne(f,i?n:this,c)}}(t,e,n,s);else var m=function(t,e,n){var a=1&e,r=wr(t);return function e(){var i=this&&this!==Yt&&this instanceof e?r:t;return i.apply(a?n:this,arguments)}}(t,e,n);return vi((p?Va:bi)(m,b),t,e)}function jr(t,e,n,a){return void 0===t||Cs(t,xt[n])&&!wt.call(a,n)?e:t}function Fr(t,e,n,a,r,i){return Bs(t)&&Bs(e)&&(i.set(e,t),Ca(t,e,void 0,Fr,i),i.delete(e)),t}function Vr(t){return Us(t)?void 0:t}function Gr(t,e,n,a,r,i){var s=1&n,u=t.length,o=e.length;if(u!=o&&!(s&&o>u))return!1;var l=i.get(t),d=i.get(e);if(l&&d)return l==e&&d==t;var c=-1,f=!0,h=2&n?new Pn:void 0;for(i.set(t,e),i.set(e,t);++c<u;){var g=t[c],p=e[c];if(a)var b=s?a(p,g,c,e,t,i):a(g,p,c,t,e,i);if(void 0!==b){if(b)continue;f=!1;break}if(h){if(!ge(e,(function(t,e){if(!Re(h,e)&&(g===t||r(g,t,n,a,i)))return h.push(e)}))){f=!1;break}}else if(g!==p&&!r(g,p,n,a,i)){f=!1;break}}return i.delete(t),i.delete(e),f}function Br(t){return yi(fi(t,void 0,Li),t+"")}function zr(t){return ca(t,vu,Qr)}function Yr(t){return ca(t,xu,Xr)}var Hr=mn?function(t){return mn.get(t)}:Zu;function Ur(t){for(var e=t.name+"",n=yn[e],a=wt.call(yn,e)?n.length:0;a--;){var r=n[a],i=r.func;if(null==i||i==t)return r.name}return e}function Wr(t){return(wt.call(Nn,"placeholder")?Nn:t).placeholder}function Kr(){var t=Nn.iteratee||Uu;return t=t===Uu?Ta:t,arguments.length?t(arguments[0],arguments[1]):t}function $r(t,e){var n,a,r=t.__data__;return("string"==(a=typeof(n=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function Zr(t){for(var e=vu(t),n=e.length;n--;){var a=e[n],r=t[a];e[n]=[a,r,di(r)]}return e}function Jr(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return _a(n)?n:void 0}var Qr=Xe?function(t){return null==t?[]:(t=pt(t),ue(Xe(t),(function(e){return Kt.call(t,e)})))}:ao,Xr=Xe?function(t){for(var e=[];t;)ce(e,Qr(t)),t=Ht(t);return e}:ao,ti=fa;function ei(t,e,n){for(var a=-1,r=(e=ir(e,t)).length,i=!1;++a<r;){var s=Si(e[a]);if(!(i=null!=t&&n(t,s)))break;t=t[s]}return i||++a!=r?i:!!(r=null==t?0:t.length)&&Gs(r)&&ri(s,r)&&(Es(t)||ks(t))}function ni(t){return"function"!=typeof t.constructor||li(t)?{}:Cn(Ht(t))}function ai(t){return Es(t)||ks(t)||!!(pe&&t&&t[pe])}function ri(t,e){var n=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==n||"symbol"!=n&&ut.test(t))&&t>-1&&t%1==0&&t<e}function ii(t,e,n){if(!Bs(n))return!1;var a=typeof e;return!!("number"==a?Ds(n)&&ri(e,n.length):"string"==a&&e in n)&&Cs(n[e],t)}function si(t,e){if(Es(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!Zs(t))||z.test(t)||!B.test(t)||null!=e&&t in pt(e)}function ui(t){var e=Ur(t),n=Nn[e];if("function"!=typeof n||!(e in kn.prototype))return!1;if(t===n)return!0;var a=Hr(n);return!!a&&t===a[0]}(cn&&ti(new cn(new ArrayBuffer(1)))!=w||fn&&ti(new fn)!=g||hn&&"[object Promise]"!=ti(hn.resolve())||gn&&ti(new gn)!=y||pn&&ti(new pn)!=_)&&(ti=function(t){var e=fa(t),n=e==b?t.constructor:void 0,a=n?Ii(n):"";if(a)switch(a){case vn:return w;case xn:return g;case _n:return"[object Promise]";case Tn:return y;case wn:return _}return e});var oi=_t?Fs:ro;function li(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||xt)}function di(t){return t==t&&!Bs(t)}function ci(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in pt(n))}}function fi(t,e,n){return e=rn(void 0===e?t.length-1:e,0),function(){for(var r=arguments,i=-1,s=rn(r.length-e,0),u=a(s);++i<s;)u[i]=r[e+i];i=-1;for(var o=a(e+1);++i<e;)o[i]=r[i];return o[e]=n(u),ne(t,this,o)}}function hi(t,e){return e.length<2?t:da(t,za(e,0,-1))}function gi(t,e){for(var n=t.length,a=sn(e.length,n),r=pr(t);a--;){var i=e[a];t[a]=ri(i,n)?r[i]:void 0}return t}function pi(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}var bi=xi(Va),mi=Ze||function(t,e){return Yt.setTimeout(t,e)},yi=xi(Ga);function vi(t,e,n){var a=e+"";return yi(t,function(t,e){var n=e.length;if(!n)return t;var a=n-1;return e[a]=(n>1?"& ":"")+e[a],e=e.join(n>2?", ":" "),t.replace(Z,"{\n/* [wrapped with "+e+"] */\n")}(a,function(t,e){return re(s,(function(n){var a="_."+n[0];e&n[1]&&!oe(t,a)&&t.push(a)})),t.sort()}(function(t){var e=t.match(J);return e?e[1].split(Q):[]}(a),n)))}function xi(t){var e=0,n=0;return function(){var a=un(),r=16-(a-n);if(n=a,r>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function _i(t,e){var n=-1,a=t.length,r=a-1;for(e=void 0===e?a:e;++n<e;){var i=Da(n,r),s=t[i];t[i]=t[n],t[n]=s}return t.length=e,t}var Ti,wi,Oi=(Ti=Ts((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(Y,(function(t,n,a,r){e.push(a?r.replace(tt,"$1"):n||t)})),e}),(function(t){return 500===wi.size&&wi.clear(),t})),wi=Ti.cache,Ti);function Si(t){if("string"==typeof t||Zs(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Ii(t){if(null!=t){try{return Tt.call(t)}catch(e){}try{return t+""}catch(e){}}return""}function Ni(t){if(t instanceof kn)return t.clone();var e=new An(t.__wrapped__,t.__chain__);return e.__actions__=pr(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}var Ci=Ma((function(t,e){return Ps(t)?Qn(t,ra(e,1,Ps,!0)):[]})),Ri=Ma((function(t,e){var n=ji(e);return Ps(n)&&(n=void 0),Ps(t)?Qn(t,ra(e,1,Ps,!0),Kr(n,2)):[]})),Ai=Ma((function(t,e){var n=ji(e);return Ps(n)&&(n=void 0),Ps(t)?Qn(t,ra(e,1,Ps,!0),void 0,n):[]}));function ki(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=null==n?0:nu(n);return r<0&&(r=rn(a+r,0)),me(t,Kr(e,3),r)}function Ei(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=a-1;return void 0!==n&&(r=nu(n),r=n<0?rn(a+r,0):sn(r,a-1)),me(t,Kr(e,3),r,!0)}function Li(t){return null!=t&&t.length?ra(t,1):[]}function Di(t){return t&&t.length?t[0]:void 0}var Pi=Ma((function(t){var e=de(t,ar);return e.length&&e[0]===t[0]?ba(e):[]})),Mi=Ma((function(t){var e=ji(t),n=de(t,ar);return e===ji(n)?e=void 0:n.pop(),n.length&&n[0]===t[0]?ba(n,Kr(e,2)):[]})),qi=Ma((function(t){var e=ji(t),n=de(t,ar);return(e="function"==typeof e?e:void 0)&&n.pop(),n.length&&n[0]===t[0]?ba(n,void 0,e):[]}));function ji(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}var Fi=Ma(Vi);function Vi(t,e){return t&&t.length&&e&&e.length?Ea(t,e):t}var Gi=Br((function(t,e){var n=null==t?0:t.length,a=Wn(t,e);return La(t,de(e,(function(t){return ri(t,n)?+t:t})).sort(fr)),a}));function Bi(t){return null==t?t:dn.call(t)}var zi=Ma((function(t){return Za(ra(t,1,Ps,!0))})),Yi=Ma((function(t){var e=ji(t);return Ps(e)&&(e=void 0),Za(ra(t,1,Ps,!0),Kr(e,2))})),Hi=Ma((function(t){var e=ji(t);return e="function"==typeof e?e:void 0,Za(ra(t,1,Ps,!0),void 0,e)}));function Ui(t){if(!t||!t.length)return[];var e=0;return t=ue(t,(function(t){if(Ps(t))return e=rn(t.length,e),!0})),Ie(e,(function(e){return de(t,Te(e))}))}function Wi(t,e){if(!t||!t.length)return[];var n=Ui(t);return null==e?n:de(n,(function(t){return ne(e,void 0,t)}))}var Ki=Ma((function(t,e){return Ps(t)?Qn(t,e):[]})),$i=Ma((function(t){return er(ue(t,Ps))})),Zi=Ma((function(t){var e=ji(t);return Ps(e)&&(e=void 0),er(ue(t,Ps),Kr(e,2))})),Ji=Ma((function(t){var e=ji(t);return e="function"==typeof e?e:void 0,er(ue(t,Ps),void 0,e)})),Qi=Ma(Ui),Xi=Ma((function(t){var e=t.length,n=e>1?t[e-1]:void 0;return n="function"==typeof n?(t.pop(),n):void 0,Wi(t,n)}));function ts(t){var e=Nn(t);return e.__chain__=!0,e}function es(t,e){return e(t)}var ns=Br((function(t){var e=t.length,n=e?t[0]:0,a=this.__wrapped__,r=function(e){return Wn(e,t)};return!(e>1||this.__actions__.length)&&a instanceof kn&&ri(n)?((a=a.slice(n,+n+(e?1:0))).__actions__.push({func:es,args:[r],thisArg:void 0}),new An(a,this.__chain__).thru((function(t){return e&&!t.length&&t.push(void 0),t}))):this.thru(r)})),as=mr((function(t,e,n){wt.call(t,n)?++t[n]:Un(t,n,1)})),rs=Or(ki),is=Or(Ei);function ss(t,e){return(Es(t)?re:Xn)(t,Kr(e,3))}function us(t,e){return(Es(t)?ie:ta)(t,Kr(e,3))}var os=mr((function(t,e,n){wt.call(t,n)?t[n].push(e):Un(t,n,[e])})),ls=Ma((function(t,e,n){var r=-1,i="function"==typeof e,s=Ds(t)?a(t.length):[];return Xn(t,(function(t){s[++r]=i?ne(e,t,n):ma(t,e,n)})),s})),ds=mr((function(t,e,n){Un(t,n,e)}));function cs(t,e){return(Es(t)?de:Sa)(t,Kr(e,3))}var fs=mr((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]})),hs=Ma((function(t,e){if(null==t)return[];var n=e.length;return n>1&&ii(t,e[0],e[1])?e=[]:n>2&&ii(e[0],e[1],e[2])&&(e=[e[0]]),Aa(t,ra(e,1),[])})),gs=$e||function(){return Yt.Date.now()};function ps(t,e,n){return e=n?void 0:e,qr(t,128,void 0,void 0,void 0,void 0,e=t&&null==e?t.length:e)}function bs(t,e){var n;if("function"!=typeof e)throw new yt(r);return t=nu(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=void 0),n}}var ms=Ma((function(t,e,n){var a=1;if(n.length){var r=Fe(n,Wr(ms));a|=32}return qr(t,a,e,n,r)})),ys=Ma((function(t,e,n){var a=3;if(n.length){var r=Fe(n,Wr(ys));a|=32}return qr(e,a,t,n,r)}));function vs(t,e,n){var a,i,s,u,o,l,d=0,c=!1,f=!1,h=!0;if("function"!=typeof t)throw new yt(r);function g(e){var n=a,r=i;return a=i=void 0,d=e,u=t.apply(r,n)}function p(t){return d=t,o=mi(m,e),c?g(t):u}function b(t){var n=t-l;return void 0===l||n>=e||n<0||f&&t-d>=s}function m(){var t=gs();if(b(t))return y(t);o=mi(m,function(t){var n=e-(t-l);return f?sn(n,s-(t-d)):n}(t))}function y(t){return o=void 0,h&&a?g(t):(a=i=void 0,u)}function v(){var t=gs(),n=b(t);if(a=arguments,i=this,l=t,n){if(void 0===o)return p(l);if(f)return or(o),o=mi(m,e),g(l)}return void 0===o&&(o=mi(m,e)),u}return e=ru(e)||0,Bs(n)&&(c=!!n.leading,s=(f="maxWait"in n)?rn(ru(n.maxWait)||0,e):s,h="trailing"in n?!!n.trailing:h),v.cancel=function(){void 0!==o&&or(o),d=0,a=l=i=o=void 0},v.flush=function(){return void 0===o?u:y(gs())},v}var xs=Ma((function(t,e){return Jn(t,1,e)})),_s=Ma((function(t,e,n){return Jn(t,ru(e)||0,n)}));function Ts(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new yt(r);var n=function(){var a=arguments,r=e?e.apply(this,a):a[0],i=n.cache;if(i.has(r))return i.get(r);var s=t.apply(this,a);return n.cache=i.set(r,s)||i,s};return n.cache=new(Ts.Cache||Dn),n}function ws(t){if("function"!=typeof t)throw new yt(r);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Ts.Cache=Dn;var Os=sr((function(t,e){var n=(e=1==e.length&&Es(e[0])?de(e[0],Ne(Kr())):de(ra(e,1),Ne(Kr()))).length;return Ma((function(a){for(var r=-1,i=sn(a.length,n);++r<i;)a[r]=e[r].call(this,a[r]);return ne(t,this,a)}))})),Ss=Ma((function(t,e){return qr(t,32,void 0,e,Fe(e,Wr(Ss)))})),Is=Ma((function(t,e){return qr(t,64,void 0,e,Fe(e,Wr(Is)))})),Ns=Br((function(t,e){return qr(t,256,void 0,void 0,void 0,e)}));function Cs(t,e){return t===e||t!=t&&e!=e}var Rs=Er(ha),As=Er((function(t,e){return t>=e})),ks=ya(function(){return arguments}())?ya:function(t){return zs(t)&&wt.call(t,"callee")&&!Kt.call(t,"callee")},Es=a.isArray,Ls=Zt?Ne(Zt):function(t){return zs(t)&&fa(t)==T};function Ds(t){return null!=t&&Gs(t.length)&&!Fs(t)}function Ps(t){return zs(t)&&Ds(t)}var Ms=tn||ro,qs=Jt?Ne(Jt):function(t){return zs(t)&&fa(t)==d};function js(t){if(!zs(t))return!1;var e=fa(t);return e==c||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!Us(t)}function Fs(t){if(!Bs(t))return!1;var e=fa(t);return e==f||e==h||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Vs(t){return"number"==typeof t&&t==nu(t)}function Gs(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function Bs(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function zs(t){return null!=t&&"object"==typeof t}var Ys=Qt?Ne(Qt):function(t){return zs(t)&&ti(t)==g};function Hs(t){return"number"==typeof t||zs(t)&&fa(t)==p}function Us(t){if(!zs(t)||fa(t)!=b)return!1;var e=Ht(t);if(null===e)return!0;var n=wt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Tt.call(n)==Nt}var Ws=Xt?Ne(Xt):function(t){return zs(t)&&fa(t)==m},Ks=te?Ne(te):function(t){return zs(t)&&ti(t)==y};function $s(t){return"string"==typeof t||!Es(t)&&zs(t)&&fa(t)==v}function Zs(t){return"symbol"==typeof t||zs(t)&&fa(t)==x}var Js=ee?Ne(ee):function(t){return zs(t)&&Gs(t.length)&&!!qt[fa(t)]},Qs=Er(Oa),Xs=Er((function(t,e){return t<=e}));function tu(t){if(!t)return[];if(Ds(t))return $s(t)?ze(t):pr(t);if(we&&t[we])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[we]());var e=ti(t);return(e==g?qe:e==y?Ve:Cu)(t)}function eu(t){return t?(t=ru(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function nu(t){var e=eu(t),n=e%1;return e==e?n?e-n:e:0}function au(t){return t?Kn(nu(t),0,4294967295):0}function ru(t){if("number"==typeof t)return t;if(Zs(t))return NaN;if(Bs(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Bs(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(W,"");var n=rt.test(t);return n||st.test(t)?Gt(t.slice(2),n?2:8):at.test(t)?NaN:+t}function iu(t){return br(t,xu(t))}function su(t){return null==t?"":$a(t)}var uu=yr((function(t,e){if(li(e)||Ds(e))br(e,vu(e),t);else for(var n in e)wt.call(e,n)&&Bn(t,n,e[n])})),ou=yr((function(t,e){br(e,xu(e),t)})),lu=yr((function(t,e,n,a){br(e,xu(e),t,a)})),du=yr((function(t,e,n,a){br(e,vu(e),t,a)})),cu=Br(Wn),fu=Ma((function(t,e){t=pt(t);var n=-1,a=e.length,r=a>2?e[2]:void 0;for(r&&ii(e[0],e[1],r)&&(a=1);++n<a;)for(var i=e[n],s=xu(i),u=-1,o=s.length;++u<o;){var l=s[u],d=t[l];(void 0===d||Cs(d,xt[l])&&!wt.call(t,l))&&(t[l]=i[l])}return t})),hu=Ma((function(t){return t.push(void 0,Fr),ne(Tu,void 0,t)}));function gu(t,e,n){var a=null==t?void 0:da(t,e);return void 0===a?n:a}function pu(t,e){return null!=t&&ei(t,e,pa)}var bu=Nr((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=It.call(e)),t[e]=n}),Bu(Hu)),mu=Nr((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=It.call(e)),wt.call(t,e)?t[e].push(n):t[e]=[n]}),Kr),yu=Ma(ma);function vu(t){return Ds(t)?qn(t):wa(t)}function xu(t){return Ds(t)?qn(t,!0):function(t){if(!Bs(t))return function(t){var e=[];if(null!=t)for(var n in pt(t))e.push(n);return e}(t);var e=li(t),n=[];for(var a in t)("constructor"!=a||!e&&wt.call(t,a))&&n.push(a);return n}(t)}var _u=yr((function(t,e,n){Ca(t,e,n)})),Tu=yr((function(t,e,n,a){Ca(t,e,n,a)})),wu=Br((function(t,e){var n={};if(null==t)return n;var a=!1;e=de(e,(function(e){return e=ir(e,t),a||(a=e.length>1),e})),br(t,Yr(t),n),a&&(n=$n(n,7,Vr));for(var r=e.length;r--;)Ja(n,e[r]);return n})),Ou=Br((function(t,e){return null==t?{}:function(t,e){return ka(t,e,(function(e,n){return pu(t,n)}))}(t,e)}));function Su(t,e){if(null==t)return{};var n=de(Yr(t),(function(t){return[t]}));return e=Kr(e),ka(t,n,(function(t,n){return e(t,n[0])}))}var Iu=Mr(vu),Nu=Mr(xu);function Cu(t){return null==t?[]:Ce(t,vu(t))}var Ru=Tr((function(t,e,n){return e=e.toLowerCase(),t+(n?Au(e):e)}));function Au(t){return ju(su(t).toLowerCase())}function ku(t){return(t=su(t))&&t.replace(ot,Le).replace(At,"")}var Eu=Tr((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),Lu=Tr((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Du=_r("toLowerCase"),Pu=Tr((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()})),Mu=Tr((function(t,e,n){return t+(n?" ":"")+ju(e)})),qu=Tr((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),ju=_r("toUpperCase");function Fu(t,e,n){return t=su(t),void 0===(e=n?void 0:e)?function(t){return Dt.test(t)}(t)?function(t){return t.match(Et)||[]}(t):function(t){return t.match(X)||[]}(t):t.match(e)||[]}var Vu=Ma((function(t,e){try{return ne(t,void 0,e)}catch(n){return js(n)?n:new ft(n)}})),Gu=Br((function(t,e){return re(e,(function(e){e=Si(e),Un(t,e,ms(t[e],t))})),t}));function Bu(t){return function(){return t}}var zu=Sr(),Yu=Sr(!0);function Hu(t){return t}function Uu(t){return Ta("function"==typeof t?t:$n(t,1))}var Wu=Ma((function(t,e){return function(n){return ma(n,t,e)}})),Ku=Ma((function(t,e){return function(n){return ma(t,n,e)}}));function $u(t,e,n){var a=vu(e),r=la(e,a);null!=n||Bs(e)&&(r.length||!a.length)||(n=e,e=t,t=this,r=la(e,vu(e)));var i=!(Bs(n)&&"chain"in n&&!n.chain),s=Fs(t);return re(r,(function(n){var a=e[n];t[n]=a,s&&(t.prototype[n]=function(){var e=this.__chain__;if(i||e){var n=t(this.__wrapped__),r=n.__actions__=pr(this.__actions__);return r.push({func:a,args:arguments,thisArg:t}),n.__chain__=e,n}return a.apply(t,ce([this.value()],arguments))})})),t}function Zu(){}var Ju=Rr(de),Qu=Rr(se),Xu=Rr(ge);function to(t){return si(t)?Te(Si(t)):function(t){return function(e){return da(e,t)}}(t)}var eo=kr(),no=kr(!0);function ao(){return[]}function ro(){return!1}var io,so=Cr((function(t,e){return t+e}),0),uo=Dr("ceil"),oo=Cr((function(t,e){return t/e}),1),lo=Dr("floor"),co=Cr((function(t,e){return t*e}),1),fo=Dr("round"),ho=Cr((function(t,e){return t-e}),0);return Nn.after=function(t,e){if("function"!=typeof e)throw new yt(r);return t=nu(t),function(){if(--t<1)return e.apply(this,arguments)}},Nn.ary=ps,Nn.assign=uu,Nn.assignIn=ou,Nn.assignInWith=lu,Nn.assignWith=du,Nn.at=cu,Nn.before=bs,Nn.bind=ms,Nn.bindAll=Gu,Nn.bindKey=ys,Nn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Es(t)?t:[t]},Nn.chain=ts,Nn.chunk=function(t,e,n){e=(n?ii(t,e,n):void 0===e)?1:rn(nu(e),0);var r=null==t?0:t.length;if(!r||e<1)return[];for(var i=0,s=0,u=a(Je(r/e));i<r;)u[s++]=za(t,i,i+=e);return u},Nn.compact=function(t){for(var e=-1,n=null==t?0:t.length,a=0,r=[];++e<n;){var i=t[e];i&&(r[a++]=i)}return r},Nn.concat=function(){var t=arguments.length;if(!t)return[];for(var e=a(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return ce(Es(n)?pr(n):[n],ra(e,1))},Nn.cond=function(t){var e=null==t?0:t.length,n=Kr();return t=e?de(t,(function(t){if("function"!=typeof t[1])throw new yt(r);return[n(t[0]),t[1]]})):[],Ma((function(n){for(var a=-1;++a<e;){var r=t[a];if(ne(r[0],this,n))return ne(r[1],this,n)}}))},Nn.conforms=function(t){return function(t){var e=vu(t);return function(n){return Zn(n,t,e)}}($n(t,1))},Nn.constant=Bu,Nn.countBy=as,Nn.create=function(t,e){var n=Cn(t);return null==e?n:Hn(n,e)},Nn.curry=function t(e,n,a){var r=qr(e,8,void 0,void 0,void 0,void 0,void 0,n=a?void 0:n);return r.placeholder=t.placeholder,r},Nn.curryRight=function t(e,n,a){var r=qr(e,16,void 0,void 0,void 0,void 0,void 0,n=a?void 0:n);return r.placeholder=t.placeholder,r},Nn.debounce=vs,Nn.defaults=fu,Nn.defaultsDeep=hu,Nn.defer=xs,Nn.delay=_s,Nn.difference=Ci,Nn.differenceBy=Ri,Nn.differenceWith=Ai,Nn.drop=function(t,e,n){var a=null==t?0:t.length;return a?za(t,(e=n||void 0===e?1:nu(e))<0?0:e,a):[]},Nn.dropRight=function(t,e,n){var a=null==t?0:t.length;return a?za(t,0,(e=a-(e=n||void 0===e?1:nu(e)))<0?0:e):[]},Nn.dropRightWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!0,!0):[]},Nn.dropWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!0):[]},Nn.fill=function(t,e,n,a){var r=null==t?0:t.length;return r?(n&&"number"!=typeof n&&ii(t,e,n)&&(n=0,a=r),function(t,e,n,a){var r=t.length;for((n=nu(n))<0&&(n=-n>r?0:r+n),(a=void 0===a||a>r?r:nu(a))<0&&(a+=r),a=n>a?0:au(a);n<a;)t[n++]=e;return t}(t,e,n,a)):[]},Nn.filter=function(t,e){return(Es(t)?ue:aa)(t,Kr(e,3))},Nn.flatMap=function(t,e){return ra(cs(t,e),1)},Nn.flatMapDeep=function(t,e){return ra(cs(t,e),1/0)},Nn.flatMapDepth=function(t,e,n){return n=void 0===n?1:nu(n),ra(cs(t,e),n)},Nn.flatten=Li,Nn.flattenDeep=function(t){return null!=t&&t.length?ra(t,1/0):[]},Nn.flattenDepth=function(t,e){return null!=t&&t.length?ra(t,e=void 0===e?1:nu(e)):[]},Nn.flip=function(t){return qr(t,512)},Nn.flow=zu,Nn.flowRight=Yu,Nn.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,a={};++e<n;){var r=t[e];a[r[0]]=r[1]}return a},Nn.functions=function(t){return null==t?[]:la(t,vu(t))},Nn.functionsIn=function(t){return null==t?[]:la(t,xu(t))},Nn.groupBy=os,Nn.initial=function(t){return null!=t&&t.length?za(t,0,-1):[]},Nn.intersection=Pi,Nn.intersectionBy=Mi,Nn.intersectionWith=qi,Nn.invert=bu,Nn.invertBy=mu,Nn.invokeMap=ls,Nn.iteratee=Uu,Nn.keyBy=ds,Nn.keys=vu,Nn.keysIn=xu,Nn.map=cs,Nn.mapKeys=function(t,e){var n={};return e=Kr(e,3),ua(t,(function(t,a,r){Un(n,e(t,a,r),t)})),n},Nn.mapValues=function(t,e){var n={};return e=Kr(e,3),ua(t,(function(t,a,r){Un(n,a,e(t,a,r))})),n},Nn.matches=function(t){return Ia($n(t,1))},Nn.matchesProperty=function(t,e){return Na(t,$n(e,1))},Nn.memoize=Ts,Nn.merge=_u,Nn.mergeWith=Tu,Nn.method=Wu,Nn.methodOf=Ku,Nn.mixin=$u,Nn.negate=ws,Nn.nthArg=function(t){return t=nu(t),Ma((function(e){return Ra(e,t)}))},Nn.omit=wu,Nn.omitBy=function(t,e){return Su(t,ws(Kr(e)))},Nn.once=function(t){return bs(2,t)},Nn.orderBy=function(t,e,n,a){return null==t?[]:(Es(e)||(e=null==e?[]:[e]),Es(n=a?void 0:n)||(n=null==n?[]:[n]),Aa(t,e,n))},Nn.over=Ju,Nn.overArgs=Os,Nn.overEvery=Qu,Nn.overSome=Xu,Nn.partial=Ss,Nn.partialRight=Is,Nn.partition=fs,Nn.pick=Ou,Nn.pickBy=Su,Nn.property=to,Nn.propertyOf=function(t){return function(e){return null==t?void 0:da(t,e)}},Nn.pull=Fi,Nn.pullAll=Vi,Nn.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?Ea(t,e,Kr(n,2)):t},Nn.pullAllWith=function(t,e,n){return t&&t.length&&e&&e.length?Ea(t,e,void 0,n):t},Nn.pullAt=Gi,Nn.range=eo,Nn.rangeRight=no,Nn.rearg=Ns,Nn.reject=function(t,e){return(Es(t)?ue:aa)(t,ws(Kr(e,3)))},Nn.remove=function(t,e){var n=[];if(!t||!t.length)return n;var a=-1,r=[],i=t.length;for(e=Kr(e,3);++a<i;){var s=t[a];e(s,a,t)&&(n.push(s),r.push(a))}return La(t,r),n},Nn.rest=function(t,e){if("function"!=typeof t)throw new yt(r);return Ma(t,e=void 0===e?e:nu(e))},Nn.reverse=Bi,Nn.sampleSize=function(t,e,n){return e=(n?ii(t,e,n):void 0===e)?1:nu(e),(Es(t)?Fn:ja)(t,e)},Nn.set=function(t,e,n){return null==t?t:Fa(t,e,n)},Nn.setWith=function(t,e,n,a){return a="function"==typeof a?a:void 0,null==t?t:Fa(t,e,n,a)},Nn.shuffle=function(t){return(Es(t)?Vn:Ba)(t)},Nn.slice=function(t,e,n){var a=null==t?0:t.length;return a?(n&&"number"!=typeof n&&ii(t,e,n)?(e=0,n=a):(e=null==e?0:nu(e),n=void 0===n?a:nu(n)),za(t,e,n)):[]},Nn.sortBy=hs,Nn.sortedUniq=function(t){return t&&t.length?Wa(t):[]},Nn.sortedUniqBy=function(t,e){return t&&t.length?Wa(t,Kr(e,2)):[]},Nn.split=function(t,e,n){return n&&"number"!=typeof n&&ii(t,e,n)&&(e=n=void 0),(n=void 0===n?4294967295:n>>>0)?(t=su(t))&&("string"==typeof e||null!=e&&!Ws(e))&&!(e=$a(e))&&Me(t)?ur(ze(t),0,n):t.split(e,n):[]},Nn.spread=function(t,e){if("function"!=typeof t)throw new yt(r);return e=null==e?0:rn(nu(e),0),Ma((function(n){var a=n[e],r=ur(n,0,e);return a&&ce(r,a),ne(t,this,r)}))},Nn.tail=function(t){var e=null==t?0:t.length;return e?za(t,1,e):[]},Nn.take=function(t,e,n){return t&&t.length?za(t,0,(e=n||void 0===e?1:nu(e))<0?0:e):[]},Nn.takeRight=function(t,e,n){var a=null==t?0:t.length;return a?za(t,(e=a-(e=n||void 0===e?1:nu(e)))<0?0:e,a):[]},Nn.takeRightWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!1,!0):[]},Nn.takeWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3)):[]},Nn.tap=function(t,e){return e(t),t},Nn.throttle=function(t,e,n){var a=!0,i=!0;if("function"!=typeof t)throw new yt(r);return Bs(n)&&(a="leading"in n?!!n.leading:a,i="trailing"in n?!!n.trailing:i),vs(t,e,{leading:a,maxWait:e,trailing:i})},Nn.thru=es,Nn.toArray=tu,Nn.toPairs=Iu,Nn.toPairsIn=Nu,Nn.toPath=function(t){return Es(t)?de(t,Si):Zs(t)?[t]:pr(Oi(su(t)))},Nn.toPlainObject=iu,Nn.transform=function(t,e,n){var a=Es(t),r=a||Ms(t)||Js(t);if(e=Kr(e,4),null==n){var i=t&&t.constructor;n=r?a?new i:[]:Bs(t)&&Fs(i)?Cn(Ht(t)):{}}return(r?re:ua)(t,(function(t,a,r){return e(n,t,a,r)})),n},Nn.unary=function(t){return ps(t,1)},Nn.union=zi,Nn.unionBy=Yi,Nn.unionWith=Hi,Nn.uniq=function(t){return t&&t.length?Za(t):[]},Nn.uniqBy=function(t,e){return t&&t.length?Za(t,Kr(e,2)):[]},Nn.uniqWith=function(t,e){return e="function"==typeof e?e:void 0,t&&t.length?Za(t,void 0,e):[]},Nn.unset=function(t,e){return null==t||Ja(t,e)},Nn.unzip=Ui,Nn.unzipWith=Wi,Nn.update=function(t,e,n){return null==t?t:Qa(t,e,rr(n))},Nn.updateWith=function(t,e,n,a){return a="function"==typeof a?a:void 0,null==t?t:Qa(t,e,rr(n),a)},Nn.values=Cu,Nn.valuesIn=function(t){return null==t?[]:Ce(t,xu(t))},Nn.without=Ki,Nn.words=Fu,Nn.wrap=function(t,e){return Ss(rr(e),t)},Nn.xor=$i,Nn.xorBy=Zi,Nn.xorWith=Ji,Nn.zip=Qi,Nn.zipObject=function(t,e){return nr(t||[],e||[],Bn)},Nn.zipObjectDeep=function(t,e){return nr(t||[],e||[],Fa)},Nn.zipWith=Xi,Nn.entries=Iu,Nn.entriesIn=Nu,Nn.extend=ou,Nn.extendWith=lu,$u(Nn,Nn),Nn.add=so,Nn.attempt=Vu,Nn.camelCase=Ru,Nn.capitalize=Au,Nn.ceil=uo,Nn.clamp=function(t,e,n){return void 0===n&&(n=e,e=void 0),void 0!==n&&(n=(n=ru(n))==n?n:0),void 0!==e&&(e=(e=ru(e))==e?e:0),Kn(ru(t),e,n)},Nn.clone=function(t){return $n(t,4)},Nn.cloneDeep=function(t){return $n(t,5)},Nn.cloneDeepWith=function(t,e){return $n(t,5,e="function"==typeof e?e:void 0)},Nn.cloneWith=function(t,e){return $n(t,4,e="function"==typeof e?e:void 0)},Nn.conformsTo=function(t,e){return null==e||Zn(t,e,vu(e))},Nn.deburr=ku,Nn.defaultTo=function(t,e){return null==t||t!=t?e:t},Nn.divide=oo,Nn.endsWith=function(t,e,n){t=su(t),e=$a(e);var a=t.length,r=n=void 0===n?a:Kn(nu(n),0,a);return(n-=e.length)>=0&&t.slice(n,r)==e},Nn.eq=Cs,Nn.escape=function(t){return(t=su(t))&&j.test(t)?t.replace(M,De):t},Nn.escapeRegExp=function(t){return(t=su(t))&&U.test(t)?t.replace(H,"\\$&"):t},Nn.every=function(t,e,n){var a=Es(t)?se:ea;return n&&ii(t,e,n)&&(e=void 0),a(t,Kr(e,3))},Nn.find=rs,Nn.findIndex=ki,Nn.findKey=function(t,e){return be(t,Kr(e,3),ua)},Nn.findLast=is,Nn.findLastIndex=Ei,Nn.findLastKey=function(t,e){return be(t,Kr(e,3),oa)},Nn.floor=lo,Nn.forEach=ss,Nn.forEachRight=us,Nn.forIn=function(t,e){return null==t?t:ia(t,Kr(e,3),xu)},Nn.forInRight=function(t,e){return null==t?t:sa(t,Kr(e,3),xu)},Nn.forOwn=function(t,e){return t&&ua(t,Kr(e,3))},Nn.forOwnRight=function(t,e){return t&&oa(t,Kr(e,3))},Nn.get=gu,Nn.gt=Rs,Nn.gte=As,Nn.has=function(t,e){return null!=t&&ei(t,e,ga)},Nn.hasIn=pu,Nn.head=Di,Nn.identity=Hu,Nn.includes=function(t,e,n,a){t=Ds(t)?t:Cu(t),n=n&&!a?nu(n):0;var r=t.length;return n<0&&(n=rn(r+n,0)),$s(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&ye(t,e,n)>-1},Nn.indexOf=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=null==n?0:nu(n);return r<0&&(r=rn(a+r,0)),ye(t,e,r)},Nn.inRange=function(t,e,n){return e=eu(e),void 0===n?(n=e,e=0):n=eu(n),function(t,e,n){return t>=sn(e,n)&&t<rn(e,n)}(t=ru(t),e,n)},Nn.invoke=yu,Nn.isArguments=ks,Nn.isArray=Es,Nn.isArrayBuffer=Ls,Nn.isArrayLike=Ds,Nn.isArrayLikeObject=Ps,Nn.isBoolean=function(t){return!0===t||!1===t||zs(t)&&fa(t)==l},Nn.isBuffer=Ms,Nn.isDate=qs,Nn.isElement=function(t){return zs(t)&&1===t.nodeType&&!Us(t)},Nn.isEmpty=function(t){if(null==t)return!0;if(Ds(t)&&(Es(t)||"string"==typeof t||"function"==typeof t.splice||Ms(t)||Js(t)||ks(t)))return!t.length;var e=ti(t);if(e==g||e==y)return!t.size;if(li(t))return!wa(t).length;for(var n in t)if(wt.call(t,n))return!1;return!0},Nn.isEqual=function(t,e){return va(t,e)},Nn.isEqualWith=function(t,e,n){var a=(n="function"==typeof n?n:void 0)?n(t,e):void 0;return void 0===a?va(t,e,void 0,n):!!a},Nn.isError=js,Nn.isFinite=function(t){return"number"==typeof t&&en(t)},Nn.isFunction=Fs,Nn.isInteger=Vs,Nn.isLength=Gs,Nn.isMap=Ys,Nn.isMatch=function(t,e){return t===e||xa(t,e,Zr(e))},Nn.isMatchWith=function(t,e,n){return n="function"==typeof n?n:void 0,xa(t,e,Zr(e),n)},Nn.isNaN=function(t){return Hs(t)&&t!=+t},Nn.isNative=function(t){if(oi(t))throw new ft("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return _a(t)},Nn.isNil=function(t){return null==t},Nn.isNull=function(t){return null===t},Nn.isNumber=Hs,Nn.isObject=Bs,Nn.isObjectLike=zs,Nn.isPlainObject=Us,Nn.isRegExp=Ws,Nn.isSafeInteger=function(t){return Vs(t)&&t>=-9007199254740991&&t<=9007199254740991},Nn.isSet=Ks,Nn.isString=$s,Nn.isSymbol=Zs,Nn.isTypedArray=Js,Nn.isUndefined=function(t){return void 0===t},Nn.isWeakMap=function(t){return zs(t)&&ti(t)==_},Nn.isWeakSet=function(t){return zs(t)&&"[object WeakSet]"==fa(t)},Nn.join=function(t,e){return null==t?"":nn.call(t,e)},Nn.kebabCase=Eu,Nn.last=ji,Nn.lastIndexOf=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=a;return void 0!==n&&(r=(r=nu(n))<0?rn(a+r,0):sn(r,a-1)),e==e?function(t,e,n){for(var a=n+1;a--;)if(t[a]===e)return a;return a}(t,e,r):me(t,xe,r,!0)},Nn.lowerCase=Lu,Nn.lowerFirst=Du,Nn.lt=Qs,Nn.lte=Xs,Nn.max=function(t){return t&&t.length?na(t,Hu,ha):void 0},Nn.maxBy=function(t,e){return t&&t.length?na(t,Kr(e,2),ha):void 0},Nn.mean=function(t){return _e(t,Hu)},Nn.meanBy=function(t,e){return _e(t,Kr(e,2))},Nn.min=function(t){return t&&t.length?na(t,Hu,Oa):void 0},Nn.minBy=function(t,e){return t&&t.length?na(t,Kr(e,2),Oa):void 0},Nn.stubArray=ao,Nn.stubFalse=ro,Nn.stubObject=function(){return{}},Nn.stubString=function(){return""},Nn.stubTrue=function(){return!0},Nn.multiply=co,Nn.nth=function(t,e){return t&&t.length?Ra(t,nu(e)):void 0},Nn.noConflict=function(){return Yt._===this&&(Yt._=Ct),this},Nn.noop=Zu,Nn.now=gs,Nn.pad=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;if(!e||a>=e)return t;var r=(e-a)/2;return Ar(Qe(r),n)+t+Ar(Je(r),n)},Nn.padEnd=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;return e&&a<e?t+Ar(e-a,n):t},Nn.padStart=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;return e&&a<e?Ar(e-a,n)+t:t},Nn.parseInt=function(t,e,n){return n||null==e?e=0:e&&(e=+e),on(su(t).replace(K,""),e||0)},Nn.random=function(t,e,n){if(n&&"boolean"!=typeof n&&ii(t,e,n)&&(e=n=void 0),void 0===n&&("boolean"==typeof e?(n=e,e=void 0):"boolean"==typeof t&&(n=t,t=void 0)),void 0===t&&void 0===e?(t=0,e=1):(t=eu(t),void 0===e?(e=t,t=0):e=eu(e)),t>e){var a=t;t=e,e=a}if(n||t%1||e%1){var r=ln();return sn(t+r*(e-t+Vt("1e-"+((r+"").length-1))),e)}return Da(t,e)},Nn.reduce=function(t,e,n){var a=Es(t)?fe:Oe,r=arguments.length<3;return a(t,Kr(e,4),n,r,Xn)},Nn.reduceRight=function(t,e,n){var a=Es(t)?he:Oe,r=arguments.length<3;return a(t,Kr(e,4),n,r,ta)},Nn.repeat=function(t,e,n){return e=(n?ii(t,e,n):void 0===e)?1:nu(e),Pa(su(t),e)},Nn.replace=function(){var t=arguments,e=su(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Nn.result=function(t,e,n){var a=-1,r=(e=ir(e,t)).length;for(r||(r=1,t=void 0);++a<r;){var i=null==t?void 0:t[Si(e[a])];void 0===i&&(a=r,i=n),t=Fs(i)?i.call(t):i}return t},Nn.round=fo,Nn.runInContext=t,Nn.sample=function(t){return(Es(t)?jn:qa)(t)},Nn.size=function(t){if(null==t)return 0;if(Ds(t))return $s(t)?Be(t):t.length;var e=ti(t);return e==g||e==y?t.size:wa(t).length},Nn.snakeCase=Pu,Nn.some=function(t,e,n){var a=Es(t)?ge:Ya;return n&&ii(t,e,n)&&(e=void 0),a(t,Kr(e,3))},Nn.sortedIndex=function(t,e){return Ha(t,e)},Nn.sortedIndexBy=function(t,e,n){return Ua(t,e,Kr(n,2))},Nn.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var a=Ha(t,e);if(a<n&&Cs(t[a],e))return a}return-1},Nn.sortedLastIndex=function(t,e){return Ha(t,e,!0)},Nn.sortedLastIndexBy=function(t,e,n){return Ua(t,e,Kr(n,2),!0)},Nn.sortedLastIndexOf=function(t,e){if(null!=t&&t.length){var n=Ha(t,e,!0)-1;if(Cs(t[n],e))return n}return-1},Nn.startCase=Mu,Nn.startsWith=function(t,e,n){return t=su(t),n=null==n?0:Kn(nu(n),0,t.length),e=$a(e),t.slice(n,n+e.length)==e},Nn.subtract=ho,Nn.sum=function(t){return t&&t.length?Se(t,Hu):0},Nn.sumBy=function(t,e){return t&&t.length?Se(t,Kr(e,2)):0},Nn.template=function(t,e,n){var a=Nn.templateSettings;n&&ii(t,e,n)&&(e=void 0),t=su(t),e=lu({},e,a,jr);var r,i,s=lu({},e.imports,a.imports,jr),u=vu(s),o=Ce(s,u),l=0,d=e.interpolate||lt,c="__p += '",f=bt((e.escape||lt).source+"|"+d.source+"|"+(d===G?et:lt).source+"|"+(e.evaluate||lt).source+"|$","g"),h="//# sourceURL="+(wt.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Mt+"]")+"\n";t.replace(f,(function(e,n,a,s,u,o){return a||(a=s),c+=t.slice(l,o).replace(dt,Pe),n&&(r=!0,c+="' +\n__e("+n+") +\n'"),u&&(i=!0,c+="';\n"+u+";\n__p += '"),a&&(c+="' +\n((__t = ("+a+")) == null ? '' : __t) +\n'"),l=o+e.length,e})),c+="';\n";var g=wt.call(e,"variable")&&e.variable;g||(c="with (obj) {\n"+c+"\n}\n"),c=(i?c.replace(E,""):c).replace(L,"$1").replace(D,"$1;"),c="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(r?", __e = _.escape":"")+(i?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+c+"return __p\n}";var p=Vu((function(){return ht(u,h+"return "+c).apply(void 0,o)}));if(p.source=c,js(p))throw p;return p},Nn.times=function(t,e){if((t=nu(t))<1||t>9007199254740991)return[];var n=4294967295,a=sn(t,4294967295);t-=4294967295;for(var r=Ie(a,e=Kr(e));++n<t;)e(n);return r},Nn.toFinite=eu,Nn.toInteger=nu,Nn.toLength=au,Nn.toLower=function(t){return su(t).toLowerCase()},Nn.toNumber=ru,Nn.toSafeInteger=function(t){return t?Kn(nu(t),-9007199254740991,9007199254740991):0===t?t:0},Nn.toString=su,Nn.toUpper=function(t){return su(t).toUpperCase()},Nn.trim=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace(W,"");if(!t||!(e=$a(e)))return t;var a=ze(t),r=ze(e);return ur(a,Ae(a,r),ke(a,r)+1).join("")},Nn.trimEnd=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace($,"");if(!t||!(e=$a(e)))return t;var a=ze(t);return ur(a,0,ke(a,ze(e))+1).join("")},Nn.trimStart=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace(K,"");if(!t||!(e=$a(e)))return t;var a=ze(t);return ur(a,Ae(a,ze(e))).join("")},Nn.truncate=function(t,e){var n=30,a="...";if(Bs(e)){var r="separator"in e?e.separator:r;n="length"in e?nu(e.length):n,a="omission"in e?$a(e.omission):a}var i=(t=su(t)).length;if(Me(t)){var s=ze(t);i=s.length}if(n>=i)return t;var u=n-Be(a);if(u<1)return a;var o=s?ur(s,0,u).join(""):t.slice(0,u);if(void 0===r)return o+a;if(s&&(u+=o.length-u),Ws(r)){if(t.slice(u).search(r)){var l,d=o;for(r.global||(r=bt(r.source,su(nt.exec(r))+"g")),r.lastIndex=0;l=r.exec(d);)var c=l.index;o=o.slice(0,void 0===c?u:c)}}else if(t.indexOf($a(r),u)!=u){var f=o.lastIndexOf(r);f>-1&&(o=o.slice(0,f))}return o+a},Nn.unescape=function(t){return(t=su(t))&&q.test(t)?t.replace(P,Ye):t},Nn.uniqueId=function(t){var e=++Ot;return su(t)+e},Nn.upperCase=qu,Nn.upperFirst=ju,Nn.each=ss,Nn.eachRight=us,Nn.first=Di,$u(Nn,(io={},ua(Nn,(function(t,e){wt.call(Nn.prototype,e)||(io[e]=t)})),io),{chain:!1}),Nn.VERSION="4.17.20",re(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Nn[t].placeholder=Nn})),re(["drop","take"],(function(t,e){kn.prototype[t]=function(n){n=void 0===n?1:rn(nu(n),0);var a=this.__filtered__&&!e?new kn(this):this.clone();return a.__filtered__?a.__takeCount__=sn(n,a.__takeCount__):a.__views__.push({size:sn(n,4294967295),type:t+(a.__dir__<0?"Right":"")}),a},kn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),re(["filter","map","takeWhile"],(function(t,e){var n=e+1,a=1==n||3==n;kn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Kr(t,3),type:n}),e.__filtered__=e.__filtered__||a,e}})),re(["head","last"],(function(t,e){var n="take"+(e?"Right":"");kn.prototype[t]=function(){return this[n](1).value()[0]}})),re(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");kn.prototype[t]=function(){return this.__filtered__?new kn(this):this[n](1)}})),kn.prototype.compact=function(){return this.filter(Hu)},kn.prototype.find=function(t){return this.filter(t).head()},kn.prototype.findLast=function(t){return this.reverse().find(t)},kn.prototype.invokeMap=Ma((function(t,e){return"function"==typeof t?new kn(this):this.map((function(n){return ma(n,t,e)}))})),kn.prototype.reject=function(t){return this.filter(ws(Kr(t)))},kn.prototype.slice=function(t,e){t=nu(t);var n=this;return n.__filtered__&&(t>0||e<0)?new kn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),void 0!==e&&(n=(e=nu(e))<0?n.dropRight(-e):n.take(e-t)),n)},kn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},kn.prototype.toArray=function(){return this.take(4294967295)},ua(kn.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),a=/^(?:head|last)$/.test(e),r=Nn[a?"take"+("last"==e?"Right":""):e],i=a||/^find/.test(e);r&&(Nn.prototype[e]=function(){var e=this.__wrapped__,s=a?[1]:arguments,u=e instanceof kn,o=s[0],l=u||Es(e),d=function(t){var e=r.apply(Nn,ce([t],s));return a&&c?e[0]:e};l&&n&&"function"==typeof o&&1!=o.length&&(u=l=!1);var c=this.__chain__,f=!!this.__actions__.length,h=i&&!c,g=u&&!f;if(!i&&l){e=g?e:new kn(this);var p=t.apply(e,s);return p.__actions__.push({func:es,args:[d],thisArg:void 0}),new An(p,c)}return h&&g?t.apply(this,s):(p=this.thru(d),h?a?p.value()[0]:p.value():p)})})),re(["pop","push","shift","sort","splice","unshift"],(function(t){var e=vt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",a=/^(?:pop|shift)$/.test(t);Nn.prototype[t]=function(){var t=arguments;if(a&&!this.__chain__){var r=this.value();return e.apply(Es(r)?r:[],t)}return this[n]((function(n){return e.apply(Es(n)?n:[],t)}))}})),ua(kn.prototype,(function(t,e){var n=Nn[e];if(n){var a=n.name+"";wt.call(yn,a)||(yn[a]=[]),yn[a].push({name:e,func:n})}})),yn[Ir(void 0,2).name]=[{name:"wrapper",func:void 0}],kn.prototype.clone=function(){var t=new kn(this.__wrapped__);return t.__actions__=pr(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=pr(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=pr(this.__views__),t},kn.prototype.reverse=function(){if(this.__filtered__){var t=new kn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},kn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Es(t),a=e<0,r=n?t.length:0,i=function(t,e,n){for(var a=-1,r=n.length;++a<r;){var i=n[a],s=i.size;switch(i.type){case"drop":t+=s;break;case"dropRight":e-=s;break;case"take":e=sn(e,t+s);break;case"takeRight":t=rn(t,e-s)}}return{start:t,end:e}}(0,r,this.__views__),s=i.start,u=i.end,o=u-s,l=a?u:s-1,d=this.__iteratees__,c=d.length,f=0,h=sn(o,this.__takeCount__);if(!n||!a&&r==o&&h==o)return tr(t,this.__actions__);var g=[];t:for(;o--&&f<h;){for(var p=-1,b=t[l+=e];++p<c;){var m=d[p],y=m.type,v=(0,m.iteratee)(b);if(2==y)b=v;else if(!v){if(1==y)continue t;break t}}g[f++]=b}return g},Nn.prototype.at=ns,Nn.prototype.chain=function(){return ts(this)},Nn.prototype.commit=function(){return new An(this.value(),this.__chain__)},Nn.prototype.next=function(){void 0===this.__values__&&(this.__values__=tu(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?void 0:this.__values__[this.__index__++]}},Nn.prototype.plant=function(t){for(var e,n=this;n instanceof Rn;){var a=Ni(n);a.__index__=0,a.__values__=void 0,e?r.__wrapped__=a:e=a;var r=a;n=n.__wrapped__}return r.__wrapped__=t,e},Nn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof kn){var e=t;return this.__actions__.length&&(e=new kn(this)),(e=e.reverse()).__actions__.push({func:es,args:[Bi],thisArg:void 0}),new An(e,this.__chain__)}return this.thru(Bi)},Nn.prototype.toJSON=Nn.prototype.valueOf=Nn.prototype.value=function(){return tr(this.__wrapped__,this.__actions__)},Nn.prototype.first=Nn.prototype.head,we&&(Nn.prototype[we]=function(){return this}),Nn}();Yt._=He,void 0===(a=(function(){return He}).call(e,n,e,t))||(t.exports=a)}).call(this)}).call(this,n("YuTi")(t))},LxgN:function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(e(t[n],n,t))return!0;return!1}},"M+Mf":function(t,e,n){var a=n("rk81"),r=n("IfUl"),i=n("PjNX"),s=n("02OF"),u=n("hmSm"),o=n("MBcj"),l=n("dCge");t.exports=function t(e,n,d,c,f){e!==n&&i(n,(function(i,o){if(f||(f=new a),u(i))s(e,n,o,d,t,c,f);else{var h=c?c(l(e,o),i,o+"",e,n,f):void 0;void 0===h&&(h=i),r(e,o,h)}}),o)}},MBcj:function(t,e,n){var a=n("pmjB"),r=n("6eui"),i=n("im1V");t.exports=function(t){return i(t)?a(t,!0):r(t)}},"MO+k":function(t,e,n){t.exports=function(t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var e={rgb2hsl:n,rgb2hsv:a,rgb2hwb:i,rgb2cmyk:s,rgb2keyword:u,rgb2xyz:o,rgb2lab:l,rgb2lch:function(t){return v(l(t))},hsl2rgb:d,hsl2hsv:function(t){var e=t[1]/100,n=t[2]/100;return 0===n?[0,0,0]:[t[0],2*(e*=(n*=2)<=1?n:2-n)/(n+e)*100,(n+e)/2*100]},hsl2hwb:function(t){return i(d(t))},hsl2cmyk:function(t){return s(d(t))},hsl2keyword:function(t){return u(d(t))},hsv2rgb:c,hsv2hsl:function(t){var e,n,a=t[1]/100,r=t[2]/100;return e=a*r,[t[0],100*(e=(e/=(n=(2-a)*r)<=1?n:2-n)||0),100*(n/=2)]},hsv2hwb:function(t){return i(c(t))},hsv2cmyk:function(t){return s(c(t))},hsv2keyword:function(t){return u(c(t))},hwb2rgb:f,hwb2hsl:function(t){return n(f(t))},hwb2hsv:function(t){return a(f(t))},hwb2cmyk:function(t){return s(f(t))},hwb2keyword:function(t){return u(f(t))},cmyk2rgb:h,cmyk2hsl:function(t){return n(h(t))},cmyk2hsv:function(t){return a(h(t))},cmyk2hwb:function(t){return i(h(t))},cmyk2keyword:function(t){return u(h(t))},keyword2rgb:T,keyword2hsl:function(t){return n(T(t))},keyword2hsv:function(t){return a(T(t))},keyword2hwb:function(t){return i(T(t))},keyword2cmyk:function(t){return s(T(t))},keyword2lab:function(t){return l(T(t))},keyword2xyz:function(t){return o(T(t))},xyz2rgb:p,xyz2lab:m,xyz2lch:function(t){return v(m(t))},lab2xyz:y,lab2rgb:x,lab2lch:v,lch2lab:_,lch2xyz:function(t){return y(_(t))},lch2rgb:function(t){return x(_(t))}};function n(t){var e,n,a=t[0]/255,r=t[1]/255,i=t[2]/255,s=Math.min(a,r,i),u=Math.max(a,r,i),o=u-s;return u==s?e=0:a==u?e=(r-i)/o:r==u?e=2+(i-a)/o:i==u&&(e=4+(a-r)/o),(e=Math.min(60*e,360))<0&&(e+=360),n=(s+u)/2,[e,100*(u==s?0:n<=.5?o/(u+s):o/(2-u-s)),100*n]}function a(t){var e,n,a=t[0],r=t[1],i=t[2],s=Math.min(a,r,i),u=Math.max(a,r,i),o=u-s;return n=0==u?0:o/u*1e3/10,u==s?e=0:a==u?e=(r-i)/o:r==u?e=2+(i-a)/o:i==u&&(e=4+(a-r)/o),(e=Math.min(60*e,360))<0&&(e+=360),[e,n,u/255*1e3/10]}function i(t){var e=t[0],a=t[1],r=t[2];return[n(t)[0],1/255*Math.min(e,Math.min(a,r))*100,100*(r=1-1/255*Math.max(e,Math.max(a,r)))]}function s(t){var e,n=t[0]/255,a=t[1]/255,r=t[2]/255;return[100*((1-n-(e=Math.min(1-n,1-a,1-r)))/(1-e)||0),100*((1-a-e)/(1-e)||0),100*((1-r-e)/(1-e)||0),100*e]}function u(t){return O[JSON.stringify(t)]}function o(t){var e=t[0]/255,n=t[1]/255,a=t[2]/255;return[100*(.4124*(e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92)+.3576*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)+.1805*(a=a>.04045?Math.pow((a+.055)/1.055,2.4):a/12.92)),100*(.2126*e+.7152*n+.0722*a),100*(.0193*e+.1192*n+.9505*a)]}function l(t){var e=o(t),n=e[0],a=e[1],r=e[2];return a/=100,r/=108.883,n=(n/=95.047)>.008856?Math.pow(n,1/3):7.787*n+16/116,[116*(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116)-16,500*(n-a),200*(a-(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116))]}function d(t){var e,n,a,r,i,s=t[0]/360,u=t[1]/100,o=t[2]/100;if(0==u)return[i=255*o,i,i];e=2*o-(n=o<.5?o*(1+u):o+u-o*u),r=[0,0,0];for(var l=0;l<3;l++)(a=s+1/3*-(l-1))<0&&a++,a>1&&a--,r[l]=255*(i=6*a<1?e+6*(n-e)*a:2*a<1?n:3*a<2?e+(n-e)*(2/3-a)*6:e);return r}function c(t){var e=t[0]/60,n=t[1]/100,a=t[2]/100,r=Math.floor(e)%6,i=e-Math.floor(e),s=255*a*(1-n),u=255*a*(1-n*i),o=255*a*(1-n*(1-i));switch(a*=255,r){case 0:return[a,o,s];case 1:return[u,a,s];case 2:return[s,a,o];case 3:return[s,u,a];case 4:return[o,s,a];case 5:return[a,s,u]}}function f(t){var e,n,a,i,s=t[0]/360,u=t[1]/100,o=t[2]/100,l=u+o;switch(l>1&&(u/=l,o/=l),a=6*s-(e=Math.floor(6*s)),0!=(1&e)&&(a=1-a),i=u+a*((n=1-o)-u),e){default:case 6:case 0:r=n,g=i,b=u;break;case 1:r=i,g=n,b=u;break;case 2:r=u,g=n,b=i;break;case 3:r=u,g=i,b=n;break;case 4:r=i,g=u,b=n;break;case 5:r=n,g=u,b=i}return[255*r,255*g,255*b]}function h(t){var e=t[1]/100,n=t[2]/100,a=t[3]/100;return[255*(1-Math.min(1,t[0]/100*(1-a)+a)),255*(1-Math.min(1,e*(1-a)+a)),255*(1-Math.min(1,n*(1-a)+a))]}function p(t){var e,n,a,r=t[0]/100,i=t[1]/100,s=t[2]/100;return n=-.9689*r+1.8758*i+.0415*s,a=.0557*r+-.204*i+1.057*s,e=(e=3.2406*r+-1.5372*i+-.4986*s)>.0031308?1.055*Math.pow(e,1/2.4)-.055:e*=12.92,n=n>.0031308?1.055*Math.pow(n,1/2.4)-.055:n*=12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*=12.92,[255*(e=Math.min(Math.max(0,e),1)),255*(n=Math.min(Math.max(0,n),1)),255*(a=Math.min(Math.max(0,a),1))]}function m(t){var e=t[0],n=t[1],a=t[2];return n/=100,a/=108.883,e=(e/=95.047)>.008856?Math.pow(e,1/3):7.787*e+16/116,[116*(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116)-16,500*(e-n),200*(n-(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116))]}function y(t){var e,n,a,r,i=t[0],s=t[1],u=t[2];return i<=8?r=(n=100*i/903.3)/100*7.787+16/116:(n=100*Math.pow((i+16)/116,3),r=Math.pow(n/100,1/3)),[e=e/95.047<=.008856?e=95.047*(s/500+r-16/116)/7.787:95.047*Math.pow(s/500+r,3),n,a=a/108.883<=.008859?a=108.883*(r-u/200-16/116)/7.787:108.883*Math.pow(r-u/200,3)]}function v(t){var e,n=t[0],a=t[1],r=t[2];return(e=360*Math.atan2(r,a)/2/Math.PI)<0&&(e+=360),[n,Math.sqrt(a*a+r*r),e]}function x(t){return p(y(t))}function _(t){var e,n=t[1];return e=t[2]/360*2*Math.PI,[t[0],n*Math.cos(e),n*Math.sin(e)]}function T(t){return w[t]}var w={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},O={};for(var S in w)O[JSON.stringify(w[S])]=S;var I=function(){return new k};for(var N in e){I[N+"Raw"]=function(t){return function(n){return"number"==typeof n&&(n=Array.prototype.slice.call(arguments)),e[t](n)}}(N);var C=/(\w+)2(\w+)/.exec(N),R=C[1],A=C[2];(I[R]=I[R]||{})[A]=I[N]=function(t){return function(n){"number"==typeof n&&(n=Array.prototype.slice.call(arguments));var a=e[t](n);if("string"==typeof a||void 0===a)return a;for(var r=0;r<a.length;r++)a[r]=Math.round(a[r]);return a}}(N)}var k=function(){this.convs={}};k.prototype.routeSpace=function(t,e){var n=e[0];return void 0===n?this.getValues(t):("number"==typeof n&&(n=Array.prototype.slice.call(e)),this.setValues(t,n))},k.prototype.setValues=function(t,e){return this.space=t,this.convs={},this.convs[t]=e,this},k.prototype.getValues=function(t){var e=this.convs[t];if(!e){var n=this.space;e=I[n][t](this.convs[n]),this.convs[t]=e}return e},["rgb","hsl","hsv","cmyk","keyword"].forEach((function(t){k.prototype[t]=function(e){return this.routeSpace(t,arguments)}}));var E=I,L={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},D={getRgba:P,getHsla:M,getRgb:function(t){var e=P(t);return e&&e.slice(0,3)},getHsl:function(t){var e=M(t);return e&&e.slice(0,3)},getHwb:q,getAlpha:function(t){var e=P(t);return e||(e=M(t))||(e=q(t))?e[3]:void 0},hexString:function(t,e){return e=void 0!==e&&3===t.length?e:t[3],"#"+B(t[0])+B(t[1])+B(t[2])+(e>=0&&e<1?B(Math.round(255*e)):"")},rgbString:function(t,e){return e<1||t[3]&&t[3]<1?j(t,e):"rgb("+t[0]+", "+t[1]+", "+t[2]+")"},rgbaString:j,percentString:function(t,e){return e<1||t[3]&&t[3]<1?F(t,e):"rgb("+Math.round(t[0]/255*100)+"%, "+Math.round(t[1]/255*100)+"%, "+Math.round(t[2]/255*100)+"%)"},percentaString:F,hslString:function(t,e){return e<1||t[3]&&t[3]<1?V(t,e):"hsl("+t[0]+", "+t[1]+"%, "+t[2]+"%)"},hslaString:V,hwbString:function(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"hwb("+t[0]+", "+t[1]+"%, "+t[2]+"%"+(void 0!==e&&1!==e?", "+e:"")+")"},keyword:function(t){return z[t.slice(0,3)]}};function P(t){if(t){var e=[0,0,0],n=1,a=t.match(/^#([a-fA-F0-9]{3,4})$/i),r="";if(a){r=(a=a[1])[3];for(var i=0;i<e.length;i++)e[i]=parseInt(a[i]+a[i],16);r&&(n=Math.round(parseInt(r+r,16)/255*100)/100)}else if(a=t.match(/^#([a-fA-F0-9]{6}([a-fA-F0-9]{2})?)$/i)){for(r=a[2],a=a[1],i=0;i<e.length;i++)e[i]=parseInt(a.slice(2*i,2*i+2),16);r&&(n=Math.round(parseInt(r,16)/255*100)/100)}else if(a=t.match(/^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)){for(i=0;i<e.length;i++)e[i]=parseInt(a[i+1]);n=parseFloat(a[4])}else if(a=t.match(/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)){for(i=0;i<e.length;i++)e[i]=Math.round(2.55*parseFloat(a[i+1]));n=parseFloat(a[4])}else if(a=t.match(/(\w+)/)){if("transparent"==a[1])return[0,0,0,0];if(!(e=L[a[1]]))return}for(i=0;i<e.length;i++)e[i]=G(e[i],0,255);return n=n||0==n?G(n,0,1):1,e[3]=n,e}}function M(t){if(t){var e=t.match(/^hsla?\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/);if(e){var n=parseFloat(e[4]);return[G(parseInt(e[1]),0,360),G(parseFloat(e[2]),0,100),G(parseFloat(e[3]),0,100),G(isNaN(n)?1:n,0,1)]}}}function q(t){if(t){var e=t.match(/^hwb\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/);if(e){var n=parseFloat(e[4]);return[G(parseInt(e[1]),0,360),G(parseFloat(e[2]),0,100),G(parseFloat(e[3]),0,100),G(isNaN(n)?1:n,0,1)]}}}function j(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+e+")"}function F(t,e){return"rgba("+Math.round(t[0]/255*100)+"%, "+Math.round(t[1]/255*100)+"%, "+Math.round(t[2]/255*100)+"%, "+(e||t[3]||1)+")"}function V(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"hsla("+t[0]+", "+t[1]+"%, "+t[2]+"%, "+e+")"}function G(t,e,n){return Math.min(Math.max(e,t),n)}function B(t){var e=t.toString(16).toUpperCase();return e.length<2?"0"+e:e}var z={};for(var Y in L)z[L[Y]]=Y;var H=function(t){return t instanceof H?t:this instanceof H?(this.valid=!1,this.values={rgb:[0,0,0],hsl:[0,0,0],hsv:[0,0,0],hwb:[0,0,0],cmyk:[0,0,0,0],alpha:1},void("string"==typeof t?(e=D.getRgba(t))?this.setValues("rgb",e):(e=D.getHsla(t))?this.setValues("hsl",e):(e=D.getHwb(t))&&this.setValues("hwb",e):"object"==typeof t&&(void 0!==(e=t).r||void 0!==e.red?this.setValues("rgb",e):void 0!==e.l||void 0!==e.lightness?this.setValues("hsl",e):void 0!==e.v||void 0!==e.value?this.setValues("hsv",e):void 0!==e.w||void 0!==e.whiteness?this.setValues("hwb",e):void 0===e.c&&void 0===e.cyan||this.setValues("cmyk",e)))):new H(t);var e};H.prototype={isValid:function(){return this.valid},rgb:function(){return this.setSpace("rgb",arguments)},hsl:function(){return this.setSpace("hsl",arguments)},hsv:function(){return this.setSpace("hsv",arguments)},hwb:function(){return this.setSpace("hwb",arguments)},cmyk:function(){return this.setSpace("cmyk",arguments)},rgbArray:function(){return this.values.rgb},hslArray:function(){return this.values.hsl},hsvArray:function(){return this.values.hsv},hwbArray:function(){var t=this.values;return 1!==t.alpha?t.hwb.concat([t.alpha]):t.hwb},cmykArray:function(){return this.values.cmyk},rgbaArray:function(){var t=this.values;return t.rgb.concat([t.alpha])},hslaArray:function(){var t=this.values;return t.hsl.concat([t.alpha])},alpha:function(t){return void 0===t?this.values.alpha:(this.setValues("alpha",t),this)},red:function(t){return this.setChannel("rgb",0,t)},green:function(t){return this.setChannel("rgb",1,t)},blue:function(t){return this.setChannel("rgb",2,t)},hue:function(t){return t&&(t=(t%=360)<0?360+t:t),this.setChannel("hsl",0,t)},saturation:function(t){return this.setChannel("hsl",1,t)},lightness:function(t){return this.setChannel("hsl",2,t)},saturationv:function(t){return this.setChannel("hsv",1,t)},whiteness:function(t){return this.setChannel("hwb",1,t)},blackness:function(t){return this.setChannel("hwb",2,t)},value:function(t){return this.setChannel("hsv",2,t)},cyan:function(t){return this.setChannel("cmyk",0,t)},magenta:function(t){return this.setChannel("cmyk",1,t)},yellow:function(t){return this.setChannel("cmyk",2,t)},black:function(t){return this.setChannel("cmyk",3,t)},hexString:function(){return D.hexString(this.values.rgb)},rgbString:function(){return D.rgbString(this.values.rgb,this.values.alpha)},rgbaString:function(){return D.rgbaString(this.values.rgb,this.values.alpha)},percentString:function(){return D.percentString(this.values.rgb,this.values.alpha)},hslString:function(){return D.hslString(this.values.hsl,this.values.alpha)},hslaString:function(){return D.hslaString(this.values.hsl,this.values.alpha)},hwbString:function(){return D.hwbString(this.values.hwb,this.values.alpha)},keyword:function(){return D.keyword(this.values.rgb,this.values.alpha)},rgbNumber:function(){var t=this.values.rgb;return t[0]<<16|t[1]<<8|t[2]},luminosity:function(){for(var t=this.values.rgb,e=[],n=0;n<t.length;n++){var a=t[n]/255;e[n]=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4)}return.2126*e[0]+.7152*e[1]+.0722*e[2]},contrast:function(t){var e=this.luminosity(),n=t.luminosity();return e>n?(e+.05)/(n+.05):(n+.05)/(e+.05)},level:function(t){var e=this.contrast(t);return e>=7.1?"AAA":e>=4.5?"AA":""},dark:function(){var t=this.values.rgb;return(299*t[0]+587*t[1]+114*t[2])/1e3<128},light:function(){return!this.dark()},negate:function(){for(var t=[],e=0;e<3;e++)t[e]=255-this.values.rgb[e];return this.setValues("rgb",t),this},lighten:function(t){var e=this.values.hsl;return e[2]+=e[2]*t,this.setValues("hsl",e),this},darken:function(t){var e=this.values.hsl;return e[2]-=e[2]*t,this.setValues("hsl",e),this},saturate:function(t){var e=this.values.hsl;return e[1]+=e[1]*t,this.setValues("hsl",e),this},desaturate:function(t){var e=this.values.hsl;return e[1]-=e[1]*t,this.setValues("hsl",e),this},whiten:function(t){var e=this.values.hwb;return e[1]+=e[1]*t,this.setValues("hwb",e),this},blacken:function(t){var e=this.values.hwb;return e[2]+=e[2]*t,this.setValues("hwb",e),this},greyscale:function(){var t=this.values.rgb,e=.3*t[0]+.59*t[1]+.11*t[2];return this.setValues("rgb",[e,e,e]),this},clearer:function(t){var e=this.values.alpha;return this.setValues("alpha",e-e*t),this},opaquer:function(t){var e=this.values.alpha;return this.setValues("alpha",e+e*t),this},rotate:function(t){var e=this.values.hsl,n=(e[0]+t)%360;return e[0]=n<0?360+n:n,this.setValues("hsl",e),this},mix:function(t,e){var n=t,a=void 0===e?.5:e,r=2*a-1,i=this.alpha()-n.alpha(),s=((r*i==-1?r:(r+i)/(1+r*i))+1)/2,u=1-s;return this.rgb(s*this.red()+u*n.red(),s*this.green()+u*n.green(),s*this.blue()+u*n.blue()).alpha(this.alpha()*a+n.alpha()*(1-a))},toJSON:function(){return this.rgb()},clone:function(){var t,e,n=new H,a=this.values,r=n.values;for(var i in a)a.hasOwnProperty(i)&&("[object Array]"===(e={}.toString.call(t=a[i]))?r[i]=t.slice(0):"[object Number]"===e?r[i]=t:console.error("unexpected color value:",t));return n}},H.prototype.spaces={rgb:["red","green","blue"],hsl:["hue","saturation","lightness"],hsv:["hue","saturation","value"],hwb:["hue","whiteness","blackness"],cmyk:["cyan","magenta","yellow","black"]},H.prototype.maxes={rgb:[255,255,255],hsl:[360,100,100],hsv:[360,100,100],hwb:[360,100,100],cmyk:[100,100,100,100]},H.prototype.getValues=function(t){for(var e=this.values,n={},a=0;a<t.length;a++)n[t.charAt(a)]=e[t][a];return 1!==e.alpha&&(n.a=e.alpha),n},H.prototype.setValues=function(t,e){var n,a,r=this.values,i=this.spaces,s=this.maxes,u=1;if(this.valid=!0,"alpha"===t)u=e;else if(e.length)r[t]=e.slice(0,t.length),u=e[t.length];else if(void 0!==e[t.charAt(0)]){for(n=0;n<t.length;n++)r[t][n]=e[t.charAt(n)];u=e.a}else if(void 0!==e[i[t][0]]){var o=i[t];for(n=0;n<t.length;n++)r[t][n]=e[o[n]];u=e.alpha}if(r.alpha=Math.max(0,Math.min(1,void 0===u?r.alpha:u)),"alpha"===t)return!1;for(n=0;n<t.length;n++)a=Math.max(0,Math.min(s[t][n],r[t][n])),r[t][n]=Math.round(a);for(var l in i)l!==t&&(r[l]=E[t][l](r[t]));return!0},H.prototype.setSpace=function(t,e){var n=e[0];return void 0===n?this.getValues(t):("number"==typeof n&&(n=Array.prototype.slice.call(e)),this.setValues(t,n),this)},H.prototype.setChannel=function(t,e,n){var a=this.values[t];return void 0===n?a[e]:(n===a[e]||(a[e]=n,this.setValues(t,a)),this)},"undefined"!=typeof window&&(window.Color=H);var U,W=H,K={noop:function(){},uid:(U=0,function(){return U++}),isNullOrUndef:function(t){return null==t},isArray:function(t){if(Array.isArray&&Array.isArray(t))return!0;var e=Object.prototype.toString.call(t);return"[object"===e.substr(0,7)&&"Array]"===e.substr(-6)},isObject:function(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)},isFinite:function(t){return("number"==typeof t||t instanceof Number)&&isFinite(t)},valueOrDefault:function(t,e){return void 0===t?e:t},valueAtIndexOrDefault:function(t,e,n){return K.valueOrDefault(K.isArray(t)?t[e]:t,n)},callback:function(t,e,n){if(t&&"function"==typeof t.call)return t.apply(n,e)},each:function(t,e,n,a){var r,i,s;if(K.isArray(t))if(i=t.length,a)for(r=i-1;r>=0;r--)e.call(n,t[r],r);else for(r=0;r<i;r++)e.call(n,t[r],r);else if(K.isObject(t))for(i=(s=Object.keys(t)).length,r=0;r<i;r++)e.call(n,t[s[r]],s[r])},arrayEquals:function(t,e){var n,a,r,i;if(!t||!e||t.length!==e.length)return!1;for(n=0,a=t.length;n<a;++n)if(i=e[n],(r=t[n])instanceof Array&&i instanceof Array){if(!K.arrayEquals(r,i))return!1}else if(r!==i)return!1;return!0},clone:function(t){if(K.isArray(t))return t.map(K.clone);if(K.isObject(t)){for(var e={},n=Object.keys(t),a=n.length,r=0;r<a;++r)e[n[r]]=K.clone(t[n[r]]);return e}return t},_merger:function(t,e,n,a){var r=e[t],i=n[t];K.isObject(r)&&K.isObject(i)?K.merge(r,i,a):e[t]=K.clone(i)},_mergerIf:function(t,e,n){var a=e[t],r=n[t];K.isObject(a)&&K.isObject(r)?K.mergeIf(a,r):e.hasOwnProperty(t)||(e[t]=K.clone(r))},merge:function(t,e,n){var a,r,i,s,u,o=K.isArray(e)?e:[e],l=o.length;if(!K.isObject(t))return t;for(a=(n=n||{}).merger||K._merger,r=0;r<l;++r)if(K.isObject(e=o[r]))for(u=0,s=(i=Object.keys(e)).length;u<s;++u)a(i[u],t,e,n);return t},mergeIf:function(t,e){return K.merge(t,e,{merger:K._mergerIf})},extend:function(t){for(var e=function(e,n){t[n]=e},n=1,a=arguments.length;n<a;++n)K.each(arguments[n],e);return t},inherits:function(t){var e=this,n=t&&t.hasOwnProperty("constructor")?t.constructor:function(){return e.apply(this,arguments)},a=function(){this.constructor=n};return a.prototype=e.prototype,n.prototype=new a,n.extend=K.inherits,t&&K.extend(n.prototype,t),n.__super__=e.prototype,n}},$=K;K.callCallback=K.callback,K.indexOf=function(t,e,n){return Array.prototype.indexOf.call(t,e,n)},K.getValueOrDefault=K.valueOrDefault,K.getValueAtIndexOrDefault=K.valueAtIndexOrDefault;var Z={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return-t*(t-2)},easeInOutQuad:function(t){return(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1)},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return(t-=1)*t*t+1},easeInOutCubic:function(t){return(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return-((t-=1)*t*t*t-1)},easeInOutQuart:function(t){return(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return(t-=1)*t*t*t*t+1},easeInOutQuint:function(t){return(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},easeInSine:function(t){return 1-Math.cos(t*(Math.PI/2))},easeOutSine:function(t){return Math.sin(t*(Math.PI/2))},easeInOutSine:function(t){return-.5*(Math.cos(Math.PI*t)-1)},easeInExpo:function(t){return 0===t?0:Math.pow(2,10*(t-1))},easeOutExpo:function(t){return 1===t?1:1-Math.pow(2,-10*t)},easeInOutExpo:function(t){return 0===t?0:1===t?1:(t/=.5)<1?.5*Math.pow(2,10*(t-1)):.5*(2-Math.pow(2,-10*--t))},easeInCirc:function(t){return t>=1?t:-(Math.sqrt(1-t*t)-1)},easeOutCirc:function(t){return Math.sqrt(1-(t-=1)*t)},easeInOutCirc:function(t){return(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},easeInElastic:function(t){var e=1.70158,n=0,a=1;return 0===t?0:1===t?1:(n||(n=.3),a<1?(a=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/a),-a*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n))},easeOutElastic:function(t){var e=1.70158,n=0,a=1;return 0===t?0:1===t?1:(n||(n=.3),a<1?(a=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/a),a*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/n)+1)},easeInOutElastic:function(t){var e=1.70158,n=0,a=1;return 0===t?0:2==(t/=.5)?1:(n||(n=.45),a<1?(a=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/a),t<1?a*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n)*-.5:a*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n)*.5+1)},easeInBack:function(t){var e=1.70158;return t*t*((e+1)*t-e)},easeOutBack:function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack:function(t){var e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:function(t){return 1-Z.easeOutBounce(1-t)},easeOutBounce:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},easeInOutBounce:function(t){return t<.5?.5*Z.easeInBounce(2*t):.5*Z.easeOutBounce(2*t-1)+.5}},J={effects:Z};$.easingEffects=Z;var Q=Math.PI,X=Q/180,tt=2*Q,et=Q/2,nt=Q/4,at=2*Q/3,rt={clear:function(t){t.ctx.clearRect(0,0,t.width,t.height)},roundedRect:function(t,e,n,a,r,i){if(i){var s=Math.min(i,r/2,a/2),u=e+s,o=n+s,l=e+a-s,d=n+r-s;t.moveTo(e,o),u<l&&o<d?(t.arc(u,o,s,-Q,-et),t.arc(l,o,s,-et,0),t.arc(l,d,s,0,et),t.arc(u,d,s,et,Q)):u<l?(t.moveTo(u,n),t.arc(l,o,s,-et,et),t.arc(u,o,s,et,Q+et)):o<d?(t.arc(u,o,s,-Q,0),t.arc(u,d,s,0,Q)):t.arc(u,o,s,-Q,Q),t.closePath(),t.moveTo(e,n)}else t.rect(e,n,a,r)},drawPoint:function(t,e,n,a,r,i){var s,u,o,l,d,c=(i||0)*X;if(!e||"object"!=typeof e||"[object HTMLImageElement]"!==(s=e.toString())&&"[object HTMLCanvasElement]"!==s){if(!(isNaN(n)||n<=0)){switch(t.beginPath(),e){default:t.arc(a,r,n,0,tt),t.closePath();break;case"triangle":t.moveTo(a+Math.sin(c)*n,r-Math.cos(c)*n),c+=at,t.lineTo(a+Math.sin(c)*n,r-Math.cos(c)*n),c+=at,t.lineTo(a+Math.sin(c)*n,r-Math.cos(c)*n),t.closePath();break;case"rectRounded":l=n-(d=.516*n),u=Math.cos(c+nt)*l,o=Math.sin(c+nt)*l,t.arc(a-u,r-o,d,c-Q,c-et),t.arc(a+o,r-u,d,c-et,c),t.arc(a+u,r+o,d,c,c+et),t.arc(a-o,r+u,d,c+et,c+Q),t.closePath();break;case"rect":if(!i){l=Math.SQRT1_2*n,t.rect(a-l,r-l,2*l,2*l);break}c+=nt;case"rectRot":u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+o,r-u),t.lineTo(a+u,r+o),t.lineTo(a-o,r+u),t.closePath();break;case"crossRot":c+=nt;case"cross":u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+u,r+o),t.moveTo(a+o,r-u),t.lineTo(a-o,r+u);break;case"star":u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+u,r+o),t.moveTo(a+o,r-u),t.lineTo(a-o,r+u),c+=nt,u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+u,r+o),t.moveTo(a+o,r-u),t.lineTo(a-o,r+u);break;case"line":u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+u,r+o);break;case"dash":t.moveTo(a,r),t.lineTo(a+Math.cos(c)*n,r+Math.sin(c)*n)}t.fill(),t.stroke()}}else t.drawImage(e,a-e.width/2,r-e.height/2,e.width,e.height)},_isPointInArea:function(t,e){return t.x>e.left-1e-6&&t.x<e.right+1e-6&&t.y>e.top-1e-6&&t.y<e.bottom+1e-6},clipArea:function(t,e){t.save(),t.beginPath(),t.rect(e.left,e.top,e.right-e.left,e.bottom-e.top),t.clip()},unclipArea:function(t){t.restore()},lineTo:function(t,e,n,a){var r=n.steppedLine;if(r){if("middle"===r){var i=(e.x+n.x)/2;t.lineTo(i,a?n.y:e.y),t.lineTo(i,a?e.y:n.y)}else"after"===r&&!a||"after"!==r&&a?t.lineTo(e.x,n.y):t.lineTo(n.x,e.y);t.lineTo(n.x,n.y)}else n.tension?t.bezierCurveTo(a?e.controlPointPreviousX:e.controlPointNextX,a?e.controlPointPreviousY:e.controlPointNextY,a?n.controlPointNextX:n.controlPointPreviousX,a?n.controlPointNextY:n.controlPointPreviousY,n.x,n.y):t.lineTo(n.x,n.y)}},it=rt;$.clear=rt.clear,$.drawRoundedRectangle=function(t){t.beginPath(),rt.roundedRect.apply(rt,arguments)};var st={_set:function(t,e){return $.merge(this[t]||(this[t]={}),e)}};st._set("global",{defaultColor:"rgba(0,0,0,0.1)",defaultFontColor:"#666",defaultFontFamily:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",defaultFontSize:12,defaultFontStyle:"normal",defaultLineHeight:1.2,showLines:!0});var ut=st,ot=$.valueOrDefault,lt={toLineHeight:function(t,e){var n=(""+t).match(/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/);if(!n||"normal"===n[1])return 1.2*e;switch(t=+n[2],n[3]){case"px":return t;case"%":t/=100}return e*t},toPadding:function(t){var e,n,a,r;return $.isObject(t)?(e=+t.top||0,n=+t.right||0,a=+t.bottom||0,r=+t.left||0):e=n=a=r=+t||0,{top:e,right:n,bottom:a,left:r,height:e+a,width:r+n}},_parseFont:function(t){var e=ut.global,n=ot(t.fontSize,e.defaultFontSize),a={family:ot(t.fontFamily,e.defaultFontFamily),lineHeight:$.options.toLineHeight(ot(t.lineHeight,e.defaultLineHeight),n),size:n,style:ot(t.fontStyle,e.defaultFontStyle),weight:null,string:""};return a.string=function(t){return!t||$.isNullOrUndef(t.size)||$.isNullOrUndef(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}(a),a},resolve:function(t,e,n){var a,r,i;for(a=0,r=t.length;a<r;++a)if(void 0!==(i=t[a])&&(void 0!==e&&"function"==typeof i&&(i=i(e)),void 0!==n&&$.isArray(i)&&(i=i[n]),void 0!==i))return i}},dt=$,ct=it,ft=lt;dt.easing=J,dt.canvas=ct,dt.options=ft;var ht=function(t){dt.extend(this,t),this.initialize.apply(this,arguments)};dt.extend(ht.prototype,{initialize:function(){this.hidden=!1},pivot:function(){var t=this;return t._view||(t._view=dt.clone(t._model)),t._start={},t},transition:function(t){var e=this,n=e._model,a=e._start,r=e._view;return n&&1!==t?(r||(r=e._view={}),a||(a=e._start={}),function(t,e,n,a){var r,i,s,u,o,l,d,c,f,h=Object.keys(n);for(r=0,i=h.length;r<i;++r)if(l=n[s=h[r]],e.hasOwnProperty(s)||(e[s]=l),(u=e[s])!==l&&"_"!==s[0]){if(t.hasOwnProperty(s)||(t[s]=u),(d=typeof l)==typeof(o=t[s]))if("string"===d){if((c=W(o)).valid&&(f=W(l)).valid){e[s]=f.mix(c,a).rgbString();continue}}else if(dt.isFinite(o)&&dt.isFinite(l)){e[s]=o+(l-o)*a;continue}e[s]=l}}(a,r,n,t),e):(e._view=n,e._start=null,e)},tooltipPosition:function(){return{x:this._model.x,y:this._model.y}},hasValue:function(){return dt.isNumber(this._model.x)&&dt.isNumber(this._model.y)}}),ht.extend=dt.inherits;var gt=ht,pt=gt.extend({chart:null,currentStep:0,numSteps:60,easing:"",render:null,onAnimationProgress:null,onAnimationComplete:null}),bt=pt;Object.defineProperty(pt.prototype,"animationObject",{get:function(){return this}}),Object.defineProperty(pt.prototype,"chartInstance",{get:function(){return this.chart},set:function(t){this.chart=t}}),ut._set("global",{animation:{duration:1e3,easing:"easeOutQuart",onProgress:dt.noop,onComplete:dt.noop}});var mt={animations:[],request:null,addAnimation:function(t,e,n,a){var r,i,s=this.animations;for(e.chart=t,e.startTime=Date.now(),e.duration=n,a||(t.animating=!0),r=0,i=s.length;r<i;++r)if(s[r].chart===t)return void(s[r]=e);s.push(e),1===s.length&&this.requestAnimationFrame()},cancelAnimation:function(t){var e=dt.findIndex(this.animations,(function(e){return e.chart===t}));-1!==e&&(this.animations.splice(e,1),t.animating=!1)},requestAnimationFrame:function(){var t=this;null===t.request&&(t.request=dt.requestAnimFrame.call(window,(function(){t.request=null,t.startDigest()})))},startDigest:function(){this.advance(),this.animations.length>0&&this.requestAnimationFrame()},advance:function(){for(var t,e,n,a,r=this.animations,i=0;i<r.length;)e=(t=r[i]).chart,n=t.numSteps,a=Math.floor((Date.now()-t.startTime)/t.duration*n)+1,t.currentStep=Math.min(a,n),dt.callback(t.render,[e,t],e),dt.callback(t.onAnimationProgress,[t],e),t.currentStep>=n?(dt.callback(t.onAnimationComplete,[t],e),e.animating=!1,r.splice(i,1)):++i}},yt=dt.options.resolve,vt=["push","pop","shift","splice","unshift"];function xt(t,e){var n=t._chartjs;if(n){var a=n.listeners,r=a.indexOf(e);-1!==r&&a.splice(r,1),a.length>0||(vt.forEach((function(e){delete t[e]})),delete t._chartjs)}}var _t=function(t,e){this.initialize(t,e)};dt.extend(_t.prototype,{datasetElementType:null,dataElementType:null,initialize:function(t,e){this.chart=t,this.index=e,this.linkScales(),this.addElements()},updateIndex:function(t){this.index=t},linkScales:function(){var t=this,e=t.getMeta(),n=t.getDataset();null!==e.xAxisID&&e.xAxisID in t.chart.scales||(e.xAxisID=n.xAxisID||t.chart.options.scales.xAxes[0].id),null!==e.yAxisID&&e.yAxisID in t.chart.scales||(e.yAxisID=n.yAxisID||t.chart.options.scales.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)},getScaleForId:function(t){return this.chart.scales[t]},_getValueScaleId:function(){return this.getMeta().yAxisID},_getIndexScaleId:function(){return this.getMeta().xAxisID},_getValueScale:function(){return this.getScaleForId(this._getValueScaleId())},_getIndexScale:function(){return this.getScaleForId(this._getIndexScaleId())},reset:function(){this.update(!0)},destroy:function(){this._data&&xt(this._data,this)},createMetaDataset:function(){var t=this.datasetElementType;return t&&new t({_chart:this.chart,_datasetIndex:this.index})},createMetaData:function(t){var e=this.dataElementType;return e&&new e({_chart:this.chart,_datasetIndex:this.index,_index:t})},addElements:function(){var t,e,n=this.getMeta(),a=this.getDataset().data||[],r=n.data;for(t=0,e=a.length;t<e;++t)r[t]=r[t]||this.createMetaData(t);n.dataset=n.dataset||this.createMetaDataset()},addElementAndReset:function(t){var e=this.createMetaData(t);this.getMeta().data.splice(t,0,e),this.updateElement(e,t,!0)},buildOrUpdateElements:function(){var t,e,n=this,a=n.getDataset(),r=a.data||(a.data=[]);n._data!==r&&(n._data&&xt(n._data,n),r&&Object.isExtensible(r)&&(e=n,(t=r)._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),vt.forEach((function(e){var n="onData"+e.charAt(0).toUpperCase()+e.slice(1),a=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value:function(){var e=Array.prototype.slice.call(arguments),r=a.apply(this,e);return dt.each(t._chartjs.listeners,(function(t){"function"==typeof t[n]&&t[n].apply(t,e)})),r}})})))),n._data=r),n.resyncElements()},update:dt.noop,transition:function(t){for(var e=this.getMeta(),n=e.data||[],a=n.length,r=0;r<a;++r)n[r].transition(t);e.dataset&&e.dataset.transition(t)},draw:function(){var t=this.getMeta(),e=t.data||[],n=e.length,a=0;for(t.dataset&&t.dataset.draw();a<n;++a)e[a].draw()},removeHoverStyle:function(t){dt.merge(t._model,t.$previousStyle||{}),delete t.$previousStyle},setHoverStyle:function(t){var e=this.chart.data.datasets[t._datasetIndex],n=t._index,a=t.custom||{},r=t._model,i=dt.getHoverColor;t.$previousStyle={backgroundColor:r.backgroundColor,borderColor:r.borderColor,borderWidth:r.borderWidth},r.backgroundColor=yt([a.hoverBackgroundColor,e.hoverBackgroundColor,i(r.backgroundColor)],void 0,n),r.borderColor=yt([a.hoverBorderColor,e.hoverBorderColor,i(r.borderColor)],void 0,n),r.borderWidth=yt([a.hoverBorderWidth,e.hoverBorderWidth,r.borderWidth],void 0,n)},resyncElements:function(){var t=this.getMeta(),e=this.getDataset().data,n=t.data.length,a=e.length;a<n?t.data.splice(a,n-a):a>n&&this.insertElements(n,a-n)},insertElements:function(t,e){for(var n=0;n<e;++n)this.addElementAndReset(t+n)},onDataPush:function(){var t=arguments.length;this.insertElements(this.getDataset().data.length-t,t)},onDataPop:function(){this.getMeta().data.pop()},onDataShift:function(){this.getMeta().data.shift()},onDataSplice:function(t,e){this.getMeta().data.splice(t,e),this.insertElements(t,arguments.length-2)},onDataUnshift:function(){this.insertElements(0,arguments.length)}}),_t.extend=dt.inherits;var Tt=_t;ut._set("global",{elements:{arc:{backgroundColor:ut.global.defaultColor,borderColor:"#fff",borderWidth:2,borderAlign:"center"}}});var wt=gt.extend({inLabelRange:function(t){var e=this._view;return!!e&&Math.pow(t-e.x,2)<Math.pow(e.radius+e.hoverRadius,2)},inRange:function(t,e){var n=this._view;if(n){for(var a=dt.getAngleFromPoint(n,{x:t,y:e}),r=a.angle,i=a.distance,s=n.startAngle,u=n.endAngle;u<s;)u+=2*Math.PI;for(;r>u;)r-=2*Math.PI;for(;r<s;)r+=2*Math.PI;return r>=s&&r<=u&&i>=n.innerRadius&&i<=n.outerRadius}return!1},getCenterPoint:function(){var t=this._view,e=(t.startAngle+t.endAngle)/2,n=(t.innerRadius+t.outerRadius)/2;return{x:t.x+Math.cos(e)*n,y:t.y+Math.sin(e)*n}},getArea:function(){var t=this._view;return Math.PI*((t.endAngle-t.startAngle)/(2*Math.PI))*(Math.pow(t.outerRadius,2)-Math.pow(t.innerRadius,2))},tooltipPosition:function(){var t=this._view,e=t.startAngle+(t.endAngle-t.startAngle)/2,n=(t.outerRadius-t.innerRadius)/2+t.innerRadius;return{x:t.x+Math.cos(e)*n,y:t.y+Math.sin(e)*n}},draw:function(){var t,e=this._chart.ctx,n=this._view,a=n.startAngle,r=n.endAngle,i="inner"===n.borderAlign?.33:0;e.save(),e.beginPath(),e.arc(n.x,n.y,Math.max(n.outerRadius-i,0),a,r),e.arc(n.x,n.y,n.innerRadius,r,a,!0),e.closePath(),e.fillStyle=n.backgroundColor,e.fill(),n.borderWidth&&("inner"===n.borderAlign?(e.beginPath(),e.arc(n.x,n.y,n.outerRadius,a-(t=i/n.outerRadius),r+t),n.innerRadius>i?e.arc(n.x,n.y,n.innerRadius-i,r+(t=i/n.innerRadius),a-t,!0):e.arc(n.x,n.y,i,r+Math.PI/2,a-Math.PI/2),e.closePath(),e.clip(),e.beginPath(),e.arc(n.x,n.y,n.outerRadius,a,r),e.arc(n.x,n.y,n.innerRadius,r,a,!0),e.closePath(),e.lineWidth=2*n.borderWidth,e.lineJoin="round"):(e.lineWidth=n.borderWidth,e.lineJoin="bevel"),e.strokeStyle=n.borderColor,e.stroke()),e.restore()}}),Ot=dt.valueOrDefault,St=ut.global.defaultColor;ut._set("global",{elements:{line:{tension:.4,backgroundColor:St,borderWidth:3,borderColor:St,borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",capBezierPoints:!0,fill:!0}}});var It=gt.extend({draw:function(){var t,e,n,a,r=this._view,i=this._chart.ctx,s=r.spanGaps,u=this._children.slice(),o=ut.global,l=o.elements.line,d=-1;for(this._loop&&u.length&&u.push(u[0]),i.save(),i.lineCap=r.borderCapStyle||l.borderCapStyle,i.setLineDash&&i.setLineDash(r.borderDash||l.borderDash),i.lineDashOffset=Ot(r.borderDashOffset,l.borderDashOffset),i.lineJoin=r.borderJoinStyle||l.borderJoinStyle,i.lineWidth=Ot(r.borderWidth,l.borderWidth),i.strokeStyle=r.borderColor||o.defaultColor,i.beginPath(),d=-1,t=0;t<u.length;++t)e=u[t],n=dt.previousItem(u,t),a=e._view,0===t?a.skip||(i.moveTo(a.x,a.y),d=t):(n=-1===d?n:u[d],a.skip||(d!==t-1&&!s||-1===d?i.moveTo(a.x,a.y):dt.canvas.lineTo(i,n._view,e._view),d=t));i.stroke(),i.restore()}}),Nt=dt.valueOrDefault,Ct=ut.global.defaultColor;function Rt(t){var e=this._view;return!!e&&Math.abs(t-e.x)<e.radius+e.hitRadius}ut._set("global",{elements:{point:{radius:3,pointStyle:"circle",backgroundColor:Ct,borderColor:Ct,borderWidth:1,hitRadius:1,hoverRadius:4,hoverBorderWidth:1}}});var At=gt.extend({inRange:function(t,e){var n=this._view;return!!n&&Math.pow(t-n.x,2)+Math.pow(e-n.y,2)<Math.pow(n.hitRadius+n.radius,2)},inLabelRange:Rt,inXRange:Rt,inYRange:function(t){var e=this._view;return!!e&&Math.abs(t-e.y)<e.radius+e.hitRadius},getCenterPoint:function(){var t=this._view;return{x:t.x,y:t.y}},getArea:function(){return Math.PI*Math.pow(this._view.radius,2)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y,padding:t.radius+t.borderWidth}},draw:function(t){var e=this._view,n=this._chart.ctx,a=e.pointStyle,r=e.rotation,i=e.radius,s=e.x,u=e.y,o=ut.global,l=o.defaultColor;e.skip||(void 0===t||dt.canvas._isPointInArea(e,t))&&(n.strokeStyle=e.borderColor||l,n.lineWidth=Nt(e.borderWidth,o.elements.point.borderWidth),n.fillStyle=e.backgroundColor||l,dt.canvas.drawPoint(n,a,i,s,u,r))}}),kt=ut.global.defaultColor;function Et(t){return t&&void 0!==t.width}function Lt(t){var e,n,a,r,i;return Et(t)?(e=t.x-(i=t.width/2),n=t.x+i,a=Math.min(t.y,t.base),r=Math.max(t.y,t.base)):(i=t.height/2,e=Math.min(t.x,t.base),n=Math.max(t.x,t.base),a=t.y-i,r=t.y+i),{left:e,top:a,right:n,bottom:r}}function Dt(t,e,n){return t===e?n:t===n?e:t}function Pt(t,e,n){var a=null===e,r=null===n,i=!(!t||a&&r)&&Lt(t);return i&&(a||e>=i.left&&e<=i.right)&&(r||n>=i.top&&n<=i.bottom)}ut._set("global",{elements:{rectangle:{backgroundColor:kt,borderColor:kt,borderSkipped:"bottom",borderWidth:0}}});var Mt=gt.extend({draw:function(){var t=this._chart.ctx,e=this._view,n=function(t){var e=Lt(t),n=e.right-e.left,a=e.bottom-e.top,r=function(t,e,n){var a,r,i,s,u=t.borderWidth,o=function(t){var e=t.borderSkipped,n={};return e?(t.horizontal?t.base>t.x&&(e=Dt(e,"left","right")):t.base<t.y&&(e=Dt(e,"bottom","top")),n[e]=!0,n):n}(t);return dt.isObject(u)?(a=+u.top||0,r=+u.right||0,i=+u.bottom||0,s=+u.left||0):a=r=i=s=+u||0,{t:o.top||a<0?0:a>n?n:a,r:o.right||r<0?0:r>e?e:r,b:o.bottom||i<0?0:i>n?n:i,l:o.left||s<0?0:s>e?e:s}}(t,n/2,a/2);return{outer:{x:e.left,y:e.top,w:n,h:a},inner:{x:e.left+r.l,y:e.top+r.t,w:n-r.l-r.r,h:a-r.t-r.b}}}(e),a=n.outer,r=n.inner;t.fillStyle=e.backgroundColor,t.fillRect(a.x,a.y,a.w,a.h),a.w===r.w&&a.h===r.h||(t.save(),t.beginPath(),t.rect(a.x,a.y,a.w,a.h),t.clip(),t.fillStyle=e.borderColor,t.rect(r.x,r.y,r.w,r.h),t.fill("evenodd"),t.restore())},height:function(){var t=this._view;return t.base-t.y},inRange:function(t,e){return Pt(this._view,t,e)},inLabelRange:function(t,e){var n=this._view;return Et(n)?Pt(n,t,null):Pt(n,null,e)},inXRange:function(t){return Pt(this._view,t,null)},inYRange:function(t){return Pt(this._view,null,t)},getCenterPoint:function(){var t,e,n=this._view;return Et(n)?(t=n.x,e=(n.y+n.base)/2):(t=(n.x+n.base)/2,e=n.y),{x:t,y:e}},getArea:function(){var t=this._view;return Et(t)?t.width*Math.abs(t.y-t.base):t.height*Math.abs(t.x-t.base)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y}}}),qt={},jt=It,Ft=At,Vt=Mt;qt.Arc=wt,qt.Line=jt,qt.Point=Ft,qt.Rectangle=Vt;var Gt=dt.options.resolve;ut._set("bar",{hover:{mode:"label"},scales:{xAxes:[{type:"category",categoryPercentage:.8,barPercentage:.9,offset:!0,gridLines:{offsetGridLines:!0}}],yAxes:[{type:"linear"}]}});var Bt=Tt.extend({dataElementType:qt.Rectangle,initialize:function(){var t,e=this;Tt.prototype.initialize.apply(e,arguments),(t=e.getMeta()).stack=e.getDataset().stack,t.bar=!0},update:function(t){var e,n,a=this.getMeta().data;for(this._ruler=this.getRuler(),e=0,n=a.length;e<n;++e)this.updateElement(a[e],e,t)},updateElement:function(t,e,n){var a=this,r=a.getMeta(),i=a.getDataset(),s=a._resolveElementOptions(t,e);t._xScale=a.getScaleForId(r.xAxisID),t._yScale=a.getScaleForId(r.yAxisID),t._datasetIndex=a.index,t._index=e,t._model={backgroundColor:s.backgroundColor,borderColor:s.borderColor,borderSkipped:s.borderSkipped,borderWidth:s.borderWidth,datasetLabel:i.label,label:a.chart.data.labels[e]},a._updateElementGeometry(t,e,n),t.pivot()},_updateElementGeometry:function(t,e,n){var a=this,r=t._model,i=a._getValueScale(),s=i.getBasePixel(),u=i.isHorizontal(),o=a._ruler||a.getRuler(),l=a.calculateBarValuePixels(a.index,e),d=a.calculateBarIndexPixels(a.index,e,o);r.horizontal=u,r.base=n?s:l.base,r.x=u?n?s:l.head:d.center,r.y=u?d.center:n?s:l.head,r.height=u?d.size:void 0,r.width=u?void 0:d.size},_getStacks:function(t){var e,n,a=this.chart,r=this._getIndexScale().options.stacked,i=void 0===t?a.data.datasets.length:t+1,s=[];for(e=0;e<i;++e)(n=a.getDatasetMeta(e)).bar&&a.isDatasetVisible(e)&&(!1===r||!0===r&&-1===s.indexOf(n.stack)||void 0===r&&(void 0===n.stack||-1===s.indexOf(n.stack)))&&s.push(n.stack);return s},getStackCount:function(){return this._getStacks().length},getStackIndex:function(t,e){var n=this._getStacks(t),a=void 0!==e?n.indexOf(e):-1;return-1===a?n.length-1:a},getRuler:function(){var t,e,n=this._getIndexScale(),a=this.getStackCount(),r=this.index,i=n.isHorizontal(),s=i?n.left:n.top,u=s+(i?n.width:n.height),o=[];for(t=0,e=this.getMeta().data.length;t<e;++t)o.push(n.getPixelForValue(null,t,r));return{min:dt.isNullOrUndef(n.options.barThickness)?function(t,e){var n,a,r,i,s=t.isHorizontal()?t.width:t.height,u=t.getTicks();for(r=1,i=e.length;r<i;++r)s=Math.min(s,Math.abs(e[r]-e[r-1]));for(r=0,i=u.length;r<i;++r)a=t.getPixelForTick(r),s=r>0?Math.min(s,a-n):s,n=a;return s}(n,o):-1,pixels:o,start:s,end:u,stackCount:a,scale:n}},calculateBarValuePixels:function(t,e){var n,a,r,i,s,u,o=this.chart,l=this.getMeta(),d=this._getValueScale(),c=d.isHorizontal(),f=o.data.datasets,h=+d.getRightValue(f[t].data[e]),g=d.options.minBarLength,p=d.options.stacked,b=l.stack,m=0;if(p||void 0===p&&void 0!==b)for(n=0;n<t;++n)(a=o.getDatasetMeta(n)).bar&&a.stack===b&&a.controller._getValueScaleId()===d.id&&o.isDatasetVisible(n)&&(r=+d.getRightValue(f[n].data[e]),(h<0&&r<0||h>=0&&r>0)&&(m+=r));return i=d.getPixelForValue(m),u=(s=d.getPixelForValue(m+h))-i,void 0!==g&&Math.abs(u)<g&&(u=g,s=h>=0&&!c||h<0&&c?i-g:i+g),{size:u,base:i,head:s,center:s+u/2}},calculateBarIndexPixels:function(t,e,n){var a=n.scale.options,r="flex"===a.barThickness?function(t,e,n){var a,r=e.pixels,i=r[t],s=t>0?r[t-1]:null,u=t<r.length-1?r[t+1]:null,o=n.categoryPercentage;return null===s&&(s=i-(null===u?e.end-e.start:u-i)),null===u&&(u=i+i-s),a=i-(i-Math.min(s,u))/2*o,{chunk:Math.abs(u-s)/2*o/e.stackCount,ratio:n.barPercentage,start:a}}(e,n,a):function(t,e,n){var a,r,i=n.barThickness,s=e.stackCount,u=e.pixels[t];return dt.isNullOrUndef(i)?(a=e.min*n.categoryPercentage,r=n.barPercentage):(a=i*s,r=1),{chunk:a/s,ratio:r,start:u-a/2}}(e,n,a),i=this.getStackIndex(t,this.getMeta().stack),s=r.start+r.chunk*i+r.chunk/2,u=Math.min(dt.valueOrDefault(a.maxBarThickness,1/0),r.chunk*r.ratio);return{base:s-u/2,head:s+u/2,center:s,size:u}},draw:function(){var t=this.chart,e=this._getValueScale(),n=this.getMeta().data,a=this.getDataset(),r=n.length,i=0;for(dt.canvas.clipArea(t.ctx,t.chartArea);i<r;++i)isNaN(e.getRightValue(a.data[i]))||n[i].draw();dt.canvas.unclipArea(t.ctx)},_resolveElementOptions:function(t,e){var n,a,r,i=this.chart,s=i.data.datasets[this.index],u=t.custom||{},o=i.options.elements.rectangle,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c=["backgroundColor","borderColor","borderSkipped","borderWidth"];for(n=0,a=c.length;n<a;++n)l[r=c[n]]=Gt([u[r],s[r],o[r]],d,e);return l}}),zt=dt.valueOrDefault,Yt=dt.options.resolve;ut._set("bubble",{hover:{mode:"single"},scales:{xAxes:[{type:"linear",position:"bottom",id:"x-axis-0"}],yAxes:[{type:"linear",position:"left",id:"y-axis-0"}]},tooltips:{callbacks:{title:function(){return""},label:function(t,e){return(e.datasets[t.datasetIndex].label||"")+": ("+t.xLabel+", "+t.yLabel+", "+e.datasets[t.datasetIndex].data[t.index].r+")"}}}});var Ht=Tt.extend({dataElementType:qt.Point,update:function(t){var e=this,n=e.getMeta();dt.each(n.data,(function(n,a){e.updateElement(n,a,t)}))},updateElement:function(t,e,n){var a=this,r=a.getMeta(),i=t.custom||{},s=a.getScaleForId(r.xAxisID),u=a.getScaleForId(r.yAxisID),o=a._resolveElementOptions(t,e),l=a.getDataset().data[e],d=a.index,c=n?s.getPixelForDecimal(.5):s.getPixelForValue("object"==typeof l?l:NaN,e,d),f=n?u.getBasePixel():u.getPixelForValue(l,e,d);t._xScale=s,t._yScale=u,t._options=o,t._datasetIndex=d,t._index=e,t._model={backgroundColor:o.backgroundColor,borderColor:o.borderColor,borderWidth:o.borderWidth,hitRadius:o.hitRadius,pointStyle:o.pointStyle,rotation:o.rotation,radius:n?0:o.radius,skip:i.skip||isNaN(c)||isNaN(f),x:c,y:f},t.pivot()},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=zt(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=zt(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=zt(n.hoverBorderWidth,n.borderWidth),e.radius=n.radius+n.hoverRadius},_resolveElementOptions:function(t,e){var n,a,r,i=this.chart,s=i.data.datasets[this.index],u=t.custom||{},o=i.options.elements.point,l=s.data[e],d={},c={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},f=["backgroundColor","borderColor","borderWidth","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth","hoverRadius","hitRadius","pointStyle","rotation"];for(n=0,a=f.length;n<a;++n)d[r=f[n]]=Yt([u[r],s[r],o[r]],c,e);return d.radius=Yt([u.radius,l?l.r:void 0,s.radius,o.radius],c,e),d}}),Ut=dt.options.resolve,Wt=dt.valueOrDefault;ut._set("doughnut",{animation:{animateRotate:!0,animateScale:!1},hover:{mode:"single"},legendCallback:function(t){var e=[];e.push('<ul class="'+t.id+'-legend">');var n=t.data,a=n.datasets,r=n.labels;if(a.length)for(var i=0;i<a[0].data.length;++i)e.push('<li><span style="background-color:'+a[0].backgroundColor[i]+'"></span>'),r[i]&&e.push(r[i]),e.push("</li>");return e.push("</ul>"),e.join("")},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map((function(n,a){var r=t.getDatasetMeta(0),i=e.datasets[0],s=r.data[a],u=s&&s.custom||{},o=t.options.elements.arc;return{text:n,fillStyle:Ut([u.backgroundColor,i.backgroundColor,o.backgroundColor],void 0,a),strokeStyle:Ut([u.borderColor,i.borderColor,o.borderColor],void 0,a),lineWidth:Ut([u.borderWidth,i.borderWidth,o.borderWidth],void 0,a),hidden:isNaN(i.data[a])||r.data[a].hidden,index:a}})):[]}},onClick:function(t,e){var n,a,r,i=e.index,s=this.chart;for(n=0,a=(s.data.datasets||[]).length;n<a;++n)(r=s.getDatasetMeta(n)).data[i]&&(r.data[i].hidden=!r.data[i].hidden);s.update()}},cutoutPercentage:50,rotation:-.5*Math.PI,circumference:2*Math.PI,tooltips:{callbacks:{title:function(){return""},label:function(t,e){var n=e.labels[t.index],a=": "+e.datasets[t.datasetIndex].data[t.index];return dt.isArray(n)?(n=n.slice())[0]+=a:n+=a,n}}}});var Kt=Tt.extend({dataElementType:qt.Arc,linkScales:dt.noop,getRingIndex:function(t){for(var e=0,n=0;n<t;++n)this.chart.isDatasetVisible(n)&&++e;return e},update:function(t){var e,n,a=this,r=a.chart,i=r.chartArea,s=r.options,u=i.right-i.left,o=i.bottom-i.top,l=Math.min(u,o),d={x:0,y:0},c=a.getMeta(),f=c.data,h=s.cutoutPercentage,g=s.circumference,p=a._getRingWeight(a.index);if(g<2*Math.PI){var b=s.rotation%(2*Math.PI),m=(b+=2*Math.PI*(b>=Math.PI?-1:b<-Math.PI?1:0))+g,y={x:Math.cos(b),y:Math.sin(b)},v={x:Math.cos(m),y:Math.sin(m)},x=b<=0&&m>=0||b<=2*Math.PI&&2*Math.PI<=m,_=b<=.5*Math.PI&&.5*Math.PI<=m||b<=2.5*Math.PI&&2.5*Math.PI<=m,T=b<=-Math.PI&&-Math.PI<=m||b<=Math.PI&&Math.PI<=m,w=b<=.5*-Math.PI&&.5*-Math.PI<=m||b<=1.5*Math.PI&&1.5*Math.PI<=m,O=h/100,S={x:T?-1:Math.min(y.x*(y.x<0?1:O),v.x*(v.x<0?1:O)),y:w?-1:Math.min(y.y*(y.y<0?1:O),v.y*(v.y<0?1:O))},I={x:x?1:Math.max(y.x*(y.x>0?1:O),v.x*(v.x>0?1:O)),y:_?1:Math.max(y.y*(y.y>0?1:O),v.y*(v.y>0?1:O))},N={width:.5*(I.x-S.x),height:.5*(I.y-S.y)};l=Math.min(u/N.width,o/N.height),d={x:-.5*(I.x+S.x),y:-.5*(I.y+S.y)}}for(e=0,n=f.length;e<n;++e)f[e]._options=a._resolveElementOptions(f[e],e);for(r.borderWidth=a.getMaxBorderWidth(),r.outerRadius=Math.max((l-r.borderWidth)/2,0),r.innerRadius=Math.max(h?r.outerRadius/100*h:0,0),r.radiusLength=(r.outerRadius-r.innerRadius)/(a._getVisibleDatasetWeightTotal()||1),r.offsetX=d.x*r.outerRadius,r.offsetY=d.y*r.outerRadius,c.total=a.calculateTotal(),a.outerRadius=r.outerRadius-r.radiusLength*a._getRingWeightOffset(a.index),a.innerRadius=Math.max(a.outerRadius-r.radiusLength*p,0),e=0,n=f.length;e<n;++e)a.updateElement(f[e],e,t)},updateElement:function(t,e,n){var a=this,r=a.chart,i=r.chartArea,s=r.options,u=s.animation,o=(i.left+i.right)/2,l=(i.top+i.bottom)/2,d=s.rotation,c=s.rotation,f=a.getDataset(),h=n&&u.animateRotate||t.hidden?0:a.calculateCircumference(f.data[e])*(s.circumference/(2*Math.PI)),g=t._options||{};dt.extend(t,{_datasetIndex:a.index,_index:e,_model:{backgroundColor:g.backgroundColor,borderColor:g.borderColor,borderWidth:g.borderWidth,borderAlign:g.borderAlign,x:o+r.offsetX,y:l+r.offsetY,startAngle:d,endAngle:c,circumference:h,outerRadius:n&&u.animateScale?0:a.outerRadius,innerRadius:n&&u.animateScale?0:a.innerRadius,label:dt.valueAtIndexOrDefault(f.label,e,r.data.labels[e])}});var p=t._model;n&&u.animateRotate||(p.startAngle=0===e?s.rotation:a.getMeta().data[e-1]._model.endAngle,p.endAngle=p.startAngle+p.circumference),t.pivot()},calculateTotal:function(){var t,e=this.getDataset(),n=this.getMeta(),a=0;return dt.each(n.data,(function(n,r){t=e.data[r],isNaN(t)||n.hidden||(a+=Math.abs(t))})),a},calculateCircumference:function(t){var e=this.getMeta().total;return e>0&&!isNaN(t)?2*Math.PI*(Math.abs(t)/e):0},getMaxBorderWidth:function(t){var e,n,a,r,i,s,u,o,l=0,d=this.chart;if(!t)for(e=0,n=d.data.datasets.length;e<n;++e)if(d.isDatasetVisible(e)){t=(a=d.getDatasetMeta(e)).data,e!==this.index&&(i=a.controller);break}if(!t)return 0;for(e=0,n=t.length;e<n;++e)r=t[e],"inner"!==(s=i?i._resolveElementOptions(r,e):r._options).borderAlign&&(l=(o=s.hoverBorderWidth)>(l=(u=s.borderWidth)>l?u:l)?o:l);return l},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=Wt(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=Wt(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=Wt(n.hoverBorderWidth,n.borderWidth)},_resolveElementOptions:function(t,e){var n,a,r,i=this.chart,s=this.getDataset(),u=t.custom||{},o=i.options.elements.arc,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c=["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"];for(n=0,a=c.length;n<a;++n)l[r=c[n]]=Ut([u[r],s[r],o[r]],d,e);return l},_getRingWeightOffset:function(t){for(var e=0,n=0;n<t;++n)this.chart.isDatasetVisible(n)&&(e+=this._getRingWeight(n));return e},_getRingWeight:function(t){return Math.max(Wt(this.chart.data.datasets[t].weight,1),0)},_getVisibleDatasetWeightTotal:function(){return this._getRingWeightOffset(this.chart.data.datasets.length)}});ut._set("horizontalBar",{hover:{mode:"index",axis:"y"},scales:{xAxes:[{type:"linear",position:"bottom"}],yAxes:[{type:"category",position:"left",categoryPercentage:.8,barPercentage:.9,offset:!0,gridLines:{offsetGridLines:!0}}]},elements:{rectangle:{borderSkipped:"left"}},tooltips:{mode:"index",axis:"y"}});var $t=Bt.extend({_getValueScaleId:function(){return this.getMeta().xAxisID},_getIndexScaleId:function(){return this.getMeta().yAxisID}}),Zt=dt.valueOrDefault,Jt=dt.options.resolve,Qt=dt.canvas._isPointInArea;function Xt(t,e){return Zt(t.showLine,e.showLines)}ut._set("line",{showLines:!0,spanGaps:!1,hover:{mode:"label"},scales:{xAxes:[{type:"category",id:"x-axis-0"}],yAxes:[{type:"linear",id:"y-axis-0"}]}});var te=Tt.extend({datasetElementType:qt.Line,dataElementType:qt.Point,update:function(t){var e,n,a=this,r=a.getMeta(),i=r.dataset,s=r.data||[],u=a.getScaleForId(r.yAxisID),o=a.getDataset(),l=Xt(o,a.chart.options);for(l&&(void 0!==o.tension&&void 0===o.lineTension&&(o.lineTension=o.tension),i._scale=u,i._datasetIndex=a.index,i._children=s,i._model=a._resolveLineOptions(i),i.pivot()),e=0,n=s.length;e<n;++e)a.updateElement(s[e],e,t);for(l&&0!==i._model.tension&&a.updateBezierControlPoints(),e=0,n=s.length;e<n;++e)s[e].pivot()},updateElement:function(t,e,n){var a,r,i=this,s=i.getMeta(),u=t.custom||{},o=i.getDataset(),l=i.index,d=o.data[e],c=i.getScaleForId(s.yAxisID),f=i.getScaleForId(s.xAxisID),h=s.dataset._model,g=i._resolvePointOptions(t,e);a=f.getPixelForValue("object"==typeof d?d:NaN,e,l),r=n?c.getBasePixel():i.calculatePointY(d,e,l),t._xScale=f,t._yScale=c,t._options=g,t._datasetIndex=l,t._index=e,t._model={x:a,y:r,skip:u.skip||isNaN(a)||isNaN(r),radius:g.radius,pointStyle:g.pointStyle,rotation:g.rotation,backgroundColor:g.backgroundColor,borderColor:g.borderColor,borderWidth:g.borderWidth,tension:Zt(u.tension,h?h.tension:0),steppedLine:!!h&&h.steppedLine,hitRadius:g.hitRadius}},_resolvePointOptions:function(t,e){var n,a,r,i=this.chart,s=i.data.datasets[this.index],u=t.custom||{},o=i.options.elements.point,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c={backgroundColor:"pointBackgroundColor",borderColor:"pointBorderColor",borderWidth:"pointBorderWidth",hitRadius:"pointHitRadius",hoverBackgroundColor:"pointHoverBackgroundColor",hoverBorderColor:"pointHoverBorderColor",hoverBorderWidth:"pointHoverBorderWidth",hoverRadius:"pointHoverRadius",pointStyle:"pointStyle",radius:"pointRadius",rotation:"pointRotation"},f=Object.keys(c);for(n=0,a=f.length;n<a;++n)l[r=f[n]]=Jt([u[r],s[c[r]],s[r],o[r]],d,e);return l},_resolveLineOptions:function(t){var e,n,a,r=this.chart,i=r.data.datasets[this.index],s=t.custom||{},u=r.options,o=u.elements.line,l={},d=["backgroundColor","borderWidth","borderColor","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","fill","cubicInterpolationMode"];for(e=0,n=d.length;e<n;++e)l[a=d[e]]=Jt([s[a],i[a],o[a]]);return l.spanGaps=Zt(i.spanGaps,u.spanGaps),l.tension=Zt(i.lineTension,o.tension),l.steppedLine=Jt([s.steppedLine,i.steppedLine,o.stepped]),l},calculatePointY:function(t,e,n){var a,r,i,s=this.chart,u=this.getMeta(),o=this.getScaleForId(u.yAxisID),l=0,d=0;if(o.options.stacked){for(a=0;a<n;a++)if(r=s.data.datasets[a],"line"===(i=s.getDatasetMeta(a)).type&&i.yAxisID===o.id&&s.isDatasetVisible(a)){var c=Number(o.getRightValue(r.data[e]));c<0?d+=c||0:l+=c||0}var f=Number(o.getRightValue(t));return o.getPixelForValue(f<0?d+f:l+f)}return o.getPixelForValue(t)},updateBezierControlPoints:function(){var t,e,n,a,r=this.chart,i=this.getMeta(),s=i.dataset._model,u=r.chartArea,o=i.data||[];function l(t,e,n){return Math.max(Math.min(t,n),e)}if(s.spanGaps&&(o=o.filter((function(t){return!t._model.skip}))),"monotone"===s.cubicInterpolationMode)dt.splineCurveMonotone(o);else for(t=0,e=o.length;t<e;++t)n=o[t]._model,a=dt.splineCurve(dt.previousItem(o,t)._model,n,dt.nextItem(o,t)._model,s.tension),n.controlPointPreviousX=a.previous.x,n.controlPointPreviousY=a.previous.y,n.controlPointNextX=a.next.x,n.controlPointNextY=a.next.y;if(r.options.elements.line.capBezierPoints)for(t=0,e=o.length;t<e;++t)Qt(n=o[t]._model,u)&&(t>0&&Qt(o[t-1]._model,u)&&(n.controlPointPreviousX=l(n.controlPointPreviousX,u.left,u.right),n.controlPointPreviousY=l(n.controlPointPreviousY,u.top,u.bottom)),t<o.length-1&&Qt(o[t+1]._model,u)&&(n.controlPointNextX=l(n.controlPointNextX,u.left,u.right),n.controlPointNextY=l(n.controlPointNextY,u.top,u.bottom)))},draw:function(){var t,e=this.chart,n=this.getMeta(),a=n.data||[],r=e.chartArea,i=a.length,s=0;for(Xt(this.getDataset(),e.options)&&(dt.canvas.clipArea(e.ctx,{left:r.left,right:r.right,top:r.top-(t=(n.dataset._model.borderWidth||0)/2),bottom:r.bottom+t}),n.dataset.draw(),dt.canvas.unclipArea(e.ctx));s<i;++s)a[s].draw(r)},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=Zt(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=Zt(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=Zt(n.hoverBorderWidth,n.borderWidth),e.radius=Zt(n.hoverRadius,n.radius)}}),ee=dt.options.resolve;ut._set("polarArea",{scale:{type:"radialLinear",angleLines:{display:!1},gridLines:{circular:!0},pointLabels:{display:!1},ticks:{beginAtZero:!0}},animation:{animateRotate:!0,animateScale:!0},startAngle:-.5*Math.PI,legendCallback:function(t){var e=[];e.push('<ul class="'+t.id+'-legend">');var n=t.data,a=n.datasets,r=n.labels;if(a.length)for(var i=0;i<a[0].data.length;++i)e.push('<li><span style="background-color:'+a[0].backgroundColor[i]+'"></span>'),r[i]&&e.push(r[i]),e.push("</li>");return e.push("</ul>"),e.join("")},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map((function(n,a){var r=t.getDatasetMeta(0),i=e.datasets[0],s=r.data[a].custom||{},u=t.options.elements.arc;return{text:n,fillStyle:ee([s.backgroundColor,i.backgroundColor,u.backgroundColor],void 0,a),strokeStyle:ee([s.borderColor,i.borderColor,u.borderColor],void 0,a),lineWidth:ee([s.borderWidth,i.borderWidth,u.borderWidth],void 0,a),hidden:isNaN(i.data[a])||r.data[a].hidden,index:a}})):[]}},onClick:function(t,e){var n,a,r,i=e.index,s=this.chart;for(n=0,a=(s.data.datasets||[]).length;n<a;++n)(r=s.getDatasetMeta(n)).data[i].hidden=!r.data[i].hidden;s.update()}},tooltips:{callbacks:{title:function(){return""},label:function(t,e){return e.labels[t.index]+": "+t.yLabel}}}});var ne=Tt.extend({dataElementType:qt.Arc,linkScales:dt.noop,update:function(t){var e,n,a,r=this,i=r.getDataset(),s=r.getMeta(),u=r.chart.options.startAngle||0,o=r._starts=[],l=r._angles=[],d=s.data;for(r._updateRadius(),s.count=r.countVisibleElements(),e=0,n=i.data.length;e<n;e++)o[e]=u,a=r._computeAngle(e),l[e]=a,u+=a;for(e=0,n=d.length;e<n;++e)d[e]._options=r._resolveElementOptions(d[e],e),r.updateElement(d[e],e,t)},_updateRadius:function(){var t=this,e=t.chart,n=e.chartArea,a=e.options,r=Math.min(n.right-n.left,n.bottom-n.top);e.outerRadius=Math.max(r/2,0),e.innerRadius=Math.max(a.cutoutPercentage?e.outerRadius/100*a.cutoutPercentage:1,0),e.radiusLength=(e.outerRadius-e.innerRadius)/e.getVisibleDatasetCount(),t.outerRadius=e.outerRadius-e.radiusLength*t.index,t.innerRadius=t.outerRadius-e.radiusLength},updateElement:function(t,e,n){var a=this,r=a.chart,i=a.getDataset(),s=r.options,u=s.animation,o=r.scale,l=r.data.labels,d=o.xCenter,c=o.yCenter,f=s.startAngle,h=t.hidden?0:o.getDistanceFromCenterForValue(i.data[e]),g=a._starts[e],p=g+(t.hidden?0:a._angles[e]),b=u.animateScale?0:o.getDistanceFromCenterForValue(i.data[e]),m=t._options||{};dt.extend(t,{_datasetIndex:a.index,_index:e,_scale:o,_model:{backgroundColor:m.backgroundColor,borderColor:m.borderColor,borderWidth:m.borderWidth,borderAlign:m.borderAlign,x:d,y:c,innerRadius:0,outerRadius:n?b:h,startAngle:n&&u.animateRotate?f:g,endAngle:n&&u.animateRotate?f:p,label:dt.valueAtIndexOrDefault(l,e,l[e])}}),t.pivot()},countVisibleElements:function(){var t=this.getDataset(),e=this.getMeta(),n=0;return dt.each(e.data,(function(e,a){isNaN(t.data[a])||e.hidden||n++})),n},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor,r=dt.valueOrDefault;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=r(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=r(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=r(n.hoverBorderWidth,n.borderWidth)},_resolveElementOptions:function(t,e){var n,a,r,i=this.chart,s=this.getDataset(),u=t.custom||{},o=i.options.elements.arc,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c=["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"];for(n=0,a=c.length;n<a;++n)l[r=c[n]]=ee([u[r],s[r],o[r]],d,e);return l},_computeAngle:function(t){var e=this,n=this.getMeta().count,a=e.getDataset(),r=e.getMeta();return isNaN(a.data[t])||r.data[t].hidden?0:ee([e.chart.options.elements.arc.angle,2*Math.PI/n],{chart:e.chart,dataIndex:t,dataset:a,datasetIndex:e.index},t)}});ut._set("pie",dt.clone(ut.doughnut)),ut._set("pie",{cutoutPercentage:0});var ae=Kt,re=dt.valueOrDefault,ie=dt.options.resolve;ut._set("radar",{scale:{type:"radialLinear"},elements:{line:{tension:0}}});var se=Tt.extend({datasetElementType:qt.Line,dataElementType:qt.Point,linkScales:dt.noop,update:function(t){var e,n,a=this,r=a.getMeta(),i=r.dataset,s=r.data||[],u=a.chart.scale,o=a.getDataset();for(void 0!==o.tension&&void 0===o.lineTension&&(o.lineTension=o.tension),i._scale=u,i._datasetIndex=a.index,i._children=s,i._loop=!0,i._model=a._resolveLineOptions(i),i.pivot(),e=0,n=s.length;e<n;++e)a.updateElement(s[e],e,t);for(a.updateBezierControlPoints(),e=0,n=s.length;e<n;++e)s[e].pivot()},updateElement:function(t,e,n){var a=this,r=t.custom||{},i=a.getDataset(),s=a.chart.scale,u=s.getPointPositionForValue(e,i.data[e]),o=a._resolvePointOptions(t,e),l=a.getMeta().dataset._model,d=n?s.xCenter:u.x,c=n?s.yCenter:u.y;t._scale=s,t._options=o,t._datasetIndex=a.index,t._index=e,t._model={x:d,y:c,skip:r.skip||isNaN(d)||isNaN(c),radius:o.radius,pointStyle:o.pointStyle,rotation:o.rotation,backgroundColor:o.backgroundColor,borderColor:o.borderColor,borderWidth:o.borderWidth,tension:re(r.tension,l?l.tension:0),hitRadius:o.hitRadius}},_resolvePointOptions:function(t,e){var n,a,r,i=this.chart,s=i.data.datasets[this.index],u=t.custom||{},o=i.options.elements.point,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c={backgroundColor:"pointBackgroundColor",borderColor:"pointBorderColor",borderWidth:"pointBorderWidth",hitRadius:"pointHitRadius",hoverBackgroundColor:"pointHoverBackgroundColor",hoverBorderColor:"pointHoverBorderColor",hoverBorderWidth:"pointHoverBorderWidth",hoverRadius:"pointHoverRadius",pointStyle:"pointStyle",radius:"pointRadius",rotation:"pointRotation"},f=Object.keys(c);for(n=0,a=f.length;n<a;++n)l[r=f[n]]=ie([u[r],s[c[r]],s[r],o[r]],d,e);return l},_resolveLineOptions:function(t){var e,n,a,r=this.chart,i=r.data.datasets[this.index],s=t.custom||{},u=r.options.elements.line,o={},l=["backgroundColor","borderWidth","borderColor","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","fill"];for(e=0,n=l.length;e<n;++e)o[a=l[e]]=ie([s[a],i[a],u[a]]);return o.tension=re(i.lineTension,u.tension),o},updateBezierControlPoints:function(){var t,e,n,a,r=this.getMeta(),i=this.chart.chartArea,s=r.data||[];function u(t,e,n){return Math.max(Math.min(t,n),e)}for(t=0,e=s.length;t<e;++t)n=s[t]._model,a=dt.splineCurve(dt.previousItem(s,t,!0)._model,n,dt.nextItem(s,t,!0)._model,n.tension),n.controlPointPreviousX=u(a.previous.x,i.left,i.right),n.controlPointPreviousY=u(a.previous.y,i.top,i.bottom),n.controlPointNextX=u(a.next.x,i.left,i.right),n.controlPointNextY=u(a.next.y,i.top,i.bottom)},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=re(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=re(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=re(n.hoverBorderWidth,n.borderWidth),e.radius=re(n.hoverRadius,n.radius)}});ut._set("scatter",{hover:{mode:"single"},scales:{xAxes:[{id:"x-axis-1",type:"linear",position:"bottom"}],yAxes:[{id:"y-axis-1",type:"linear",position:"left"}]},showLines:!1,tooltips:{callbacks:{title:function(){return""},label:function(t){return"("+t.xLabel+", "+t.yLabel+")"}}}});var ue={bar:Bt,bubble:Ht,doughnut:Kt,horizontalBar:$t,line:te,polarArea:ne,pie:ae,radar:se,scatter:te};function oe(t,e){return t.native?{x:t.x,y:t.y}:dt.getRelativePosition(t,e)}function le(t,e){var n,a,r,i,s;for(a=0,i=t.data.datasets.length;a<i;++a)if(t.isDatasetVisible(a))for(r=0,s=(n=t.getDatasetMeta(a)).data.length;r<s;++r){var u=n.data[r];u._view.skip||e(u)}}function de(t,e){var n=[];return le(t,(function(t){t.inRange(e.x,e.y)&&n.push(t)})),n}function ce(t,e,n,a){var r=Number.POSITIVE_INFINITY,i=[];return le(t,(function(t){if(!n||t.inRange(e.x,e.y)){var s=t.getCenterPoint(),u=a(e,s);u<r?(i=[t],r=u):u===r&&i.push(t)}})),i}function fe(t){var e=-1!==t.indexOf("x"),n=-1!==t.indexOf("y");return function(t,a){var r=e?Math.abs(t.x-a.x):0,i=n?Math.abs(t.y-a.y):0;return Math.sqrt(Math.pow(r,2)+Math.pow(i,2))}}function he(t,e,n){var a=oe(e,t);n.axis=n.axis||"x";var r=fe(n.axis),i=n.intersect?de(t,a):ce(t,a,!1,r),s=[];return i.length?(t.data.datasets.forEach((function(e,n){if(t.isDatasetVisible(n)){var a=t.getDatasetMeta(n).data[i[0]._index];a&&!a._view.skip&&s.push(a)}})),s):[]}var ge={modes:{single:function(t,e){var n=oe(e,t),a=[];return le(t,(function(t){if(t.inRange(n.x,n.y))return a.push(t),a})),a.slice(0,1)},label:he,index:he,dataset:function(t,e,n){var a=oe(e,t);n.axis=n.axis||"xy";var r=fe(n.axis),i=n.intersect?de(t,a):ce(t,a,!1,r);return i.length>0&&(i=t.getDatasetMeta(i[0]._datasetIndex).data),i},"x-axis":function(t,e){return he(t,e,{intersect:!1})},point:function(t,e){return de(t,oe(e,t))},nearest:function(t,e,n){var a=oe(e,t);n.axis=n.axis||"xy";var r=fe(n.axis);return ce(t,a,n.intersect,r)},x:function(t,e,n){var a=oe(e,t),r=[],i=!1;return le(t,(function(t){t.inXRange(a.x)&&r.push(t),t.inRange(a.x,a.y)&&(i=!0)})),n.intersect&&!i&&(r=[]),r},y:function(t,e,n){var a=oe(e,t),r=[],i=!1;return le(t,(function(t){t.inYRange(a.y)&&r.push(t),t.inRange(a.x,a.y)&&(i=!0)})),n.intersect&&!i&&(r=[]),r}}};function pe(t,e){return dt.where(t,(function(t){return t.position===e}))}function be(t,e){t.forEach((function(t,e){return t._tmpIndex_=e,t})),t.sort((function(t,n){var a=e?n:t,r=e?t:n;return a.weight===r.weight?a._tmpIndex_-r._tmpIndex_:a.weight-r.weight})),t.forEach((function(t){delete t._tmpIndex_}))}function me(t,e){dt.each(t,(function(t){e[t.position]+=t.isHorizontal()?t.height:t.width}))}ut._set("global",{layout:{padding:{top:0,right:0,bottom:0,left:0}}});var ye,ve={defaults:{},addBox:function(t,e){t.boxes||(t.boxes=[]),e.fullWidth=e.fullWidth||!1,e.position=e.position||"top",e.weight=e.weight||0,t.boxes.push(e)},removeBox:function(t,e){var n=t.boxes?t.boxes.indexOf(e):-1;-1!==n&&t.boxes.splice(n,1)},configure:function(t,e,n){for(var a,r=["fullWidth","position","weight"],i=r.length,s=0;s<i;++s)n.hasOwnProperty(a=r[s])&&(e[a]=n[a])},update:function(t,e,n){if(t){var a=dt.options.toPadding((t.options.layout||{}).padding),r=a.left,i=a.right,s=a.top,u=a.bottom,o=pe(t.boxes,"left"),l=pe(t.boxes,"right"),d=pe(t.boxes,"top"),c=pe(t.boxes,"bottom"),f=pe(t.boxes,"chartArea");be(o,!0),be(l,!1),be(d,!0),be(c,!1);var h,g=o.concat(l),p=d.concat(c),b=g.concat(p),m=e-r-i,y=n-s-u,v=(e-m/2)/g.length,x=m,_=y,T={top:s,left:r,bottom:u,right:i},w=[];dt.each(b,(function(t){var e,n=t.isHorizontal();n?(e=t.update(t.fullWidth?m:x,y/2),_-=e.height):(e=t.update(v,_),x-=e.width),w.push({horizontal:n,width:e.width,box:t})})),h=function(t){var e=0,n=0,a=0,r=0;return dt.each(t,(function(t){if(t.getPadding){var i=t.getPadding();e=Math.max(e,i.top),n=Math.max(n,i.left),a=Math.max(a,i.bottom),r=Math.max(r,i.right)}})),{top:e,left:n,bottom:a,right:r}}(b),dt.each(g,A),me(g,T),dt.each(p,A),me(p,T),dt.each(g,(function(t){var e=dt.findNextWhere(w,(function(e){return e.box===t}));e&&t.update(e.width,_,{left:0,right:0,top:T.top,bottom:T.bottom})})),me(b,T={top:s,left:r,bottom:u,right:i});var O=Math.max(h.left-T.left,0);T.left+=O,T.right+=Math.max(h.right-T.right,0);var S=Math.max(h.top-T.top,0);T.top+=S,T.bottom+=Math.max(h.bottom-T.bottom,0);var I=n-T.top-T.bottom,N=e-T.left-T.right;N===x&&I===_||(dt.each(g,(function(t){t.height=I})),dt.each(p,(function(t){t.fullWidth||(t.width=N)})),_=I,x=N);var C=r+O,R=s+S;dt.each(o.concat(d),k),C+=x,R+=_,dt.each(l,k),dt.each(c,k),t.chartArea={left:T.left,top:T.top,right:T.left+x,bottom:T.top+_},dt.each(f,(function(e){e.left=t.chartArea.left,e.top=t.chartArea.top,e.right=t.chartArea.right,e.bottom=t.chartArea.bottom,e.update(x,_)}))}function A(t){var e=dt.findNextWhere(w,(function(e){return e.box===t}));if(e)if(e.horizontal){var n={left:Math.max(T.left,h.left),right:Math.max(T.right,h.right),top:0,bottom:0};t.update(t.fullWidth?m:x,y/2,n)}else t.update(e.width,_)}function k(t){t.isHorizontal()?(t.left=t.fullWidth?r:T.left,t.right=t.fullWidth?e-i:T.left+x,t.top=R,t.bottom=R+t.height,R=t.bottom):(t.left=C,t.right=C+t.width,t.top=T.top,t.bottom=T.top+_,C=t.right)}}},xe=(ye=Object.freeze({default:"/*\n * DOM element rendering detection\n * https://davidwalsh.name/detect-node-insertion\n */\n@keyframes chartjs-render-animation {\n\tfrom { opacity: 0.99; }\n\tto { opacity: 1; }\n}\n\n.chartjs-render-monitor {\n\tanimation: chartjs-render-animation 0.001s;\n}\n\n/*\n * DOM element resizing detection\n * https://github.com/marcj/css-element-queries\n */\n.chartjs-size-monitor,\n.chartjs-size-monitor-expand,\n.chartjs-size-monitor-shrink {\n\tposition: absolute;\n\tdirection: ltr;\n\tleft: 0;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\toverflow: hidden;\n\tpointer-events: none;\n\tvisibility: hidden;\n\tz-index: -1;\n}\n\n.chartjs-size-monitor-expand > div {\n\tposition: absolute;\n\twidth: 1000000px;\n\theight: 1000000px;\n\tleft: 0;\n\ttop: 0;\n}\n\n.chartjs-size-monitor-shrink > div {\n\tposition: absolute;\n\twidth: 200%;\n\theight: 200%;\n\tleft: 0;\n\ttop: 0;\n}\n"}))&&ye.default||ye,_e=["animationstart","webkitAnimationStart"],Te={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"};function we(t,e){var n=dt.getStyle(t,e),a=n&&n.match(/^(\d+)(\.\d+)?px$/);return a?Number(a[1]):void 0}var Oe=!!function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("e",null,e)}catch(n){}return t}()&&{passive:!0};function Se(t,e,n){t.addEventListener(e,n,Oe)}function Ie(t,e,n){t.removeEventListener(e,n,Oe)}function Ne(t,e,n,a,r){return{type:t,chart:e,native:r||null,x:void 0!==n?n:null,y:void 0!==a?a:null}}function Ce(t){var e=document.createElement("div");return e.className=t||"",e}var Re={disableCSSInjection:!1,_enabled:"undefined"!=typeof window&&"undefined"!=typeof document,_ensureLoaded:function(){this._loaded||(this._loaded=!0,this.disableCSSInjection||function(t,e){var n=t._style||document.createElement("style");t._style||(t._style=n,e="/* Chart.js */\n"+e,n.setAttribute("type","text/css"),document.getElementsByTagName("head")[0].appendChild(n)),n.appendChild(document.createTextNode(e))}(this,xe))},acquireContext:function(t,e){"string"==typeof t?t=document.getElementById(t):t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas);var n=t&&t.getContext&&t.getContext("2d");return this._ensureLoaded(),n&&n.canvas===t?(function(t,e){var n=t.style,a=t.getAttribute("height"),r=t.getAttribute("width");if(t.$chartjs={initial:{height:a,width:r,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",null===r||""===r){var i=we(t,"width");void 0!==i&&(t.width=i)}if(null===a||""===a)if(""===t.style.height)t.height=t.width/(e.options.aspectRatio||2);else{var s=we(t,"height");void 0!==i&&(t.height=s)}}(t,e),n):null},releaseContext:function(t){var e=t.canvas;if(e.$chartjs){var n=e.$chartjs.initial;["height","width"].forEach((function(t){var a=n[t];dt.isNullOrUndef(a)?e.removeAttribute(t):e.setAttribute(t,a)})),dt.each(n.style||{},(function(t,n){e.style[n]=t})),e.width=e.width,delete e.$chartjs}},addEventListener:function(t,e,n){var a=t.canvas;if("resize"!==e){var r=n.$chartjs||(n.$chartjs={});Se(a,e,(r.proxies||(r.proxies={}))[t.id+"_"+e]=function(e){n(function(t,e){var n=Te[t.type]||t.type,a=dt.getRelativePosition(t,e);return Ne(n,e,a.x,a.y,t)}(e,t))})}else!function(t,e,n){var a,r,i,s,u=t.$chartjs||(t.$chartjs={}),o=u.resizer=function(t){var e=Ce("chartjs-size-monitor"),n=Ce("chartjs-size-monitor-expand"),a=Ce("chartjs-size-monitor-shrink");n.appendChild(Ce()),a.appendChild(Ce()),e.appendChild(n),e.appendChild(a),e._reset=function(){n.scrollLeft=1e6,n.scrollTop=1e6,a.scrollLeft=1e6,a.scrollTop=1e6};var r=function(){e._reset(),t()};return Se(n,"scroll",r.bind(n,"expand")),Se(a,"scroll",r.bind(a,"shrink")),e}((a=function(){if(u.resizer){var a=n.options.maintainAspectRatio&&t.parentNode,r=a?a.clientWidth:0;e(Ne("resize",n)),a&&a.clientWidth<r&&n.canvas&&e(Ne("resize",n))}},i=!1,s=[],function(){s=Array.prototype.slice.call(arguments),r=r||this,i||(i=!0,dt.requestAnimFrame.call(window,(function(){i=!1,a.apply(r,s)})))}));!function(t,e){var n=t.$chartjs||(t.$chartjs={}),a=n.renderProxy=function(t){"chartjs-render-animation"===t.animationName&&e()};dt.each(_e,(function(e){Se(t,e,a)})),n.reflow=!!t.offsetParent,t.classList.add("chartjs-render-monitor")}(t,(function(){if(u.resizer){var e=t.parentNode;e&&e!==o.parentNode&&e.insertBefore(o,e.firstChild),o._reset()}}))}(a,n,t)},removeEventListener:function(t,e,n){var a,r,i,s=t.canvas;if("resize"!==e){var u=((n.$chartjs||{}).proxies||{})[t.id+"_"+e];u&&Ie(s,e,u)}else i=(r=(a=s).$chartjs||{}).resizer,delete r.resizer,function(t){var e=t.$chartjs||{},n=e.renderProxy;n&&(dt.each(_e,(function(e){Ie(t,e,n)})),delete e.renderProxy),t.classList.remove("chartjs-render-monitor")}(a),i&&i.parentNode&&i.parentNode.removeChild(i)}};dt.addEvent=Se,dt.removeEvent=Ie;var Ae=dt.extend({initialize:function(){},acquireContext:function(){},releaseContext:function(){},addEventListener:function(){},removeEventListener:function(){}},Re._enabled?Re:{acquireContext:function(t){return t&&t.canvas&&(t=t.canvas),t&&t.getContext("2d")||null}});ut._set("global",{plugins:{}});var ke={_plugins:[],_cacheId:0,register:function(t){var e=this._plugins;[].concat(t).forEach((function(t){-1===e.indexOf(t)&&e.push(t)})),this._cacheId++},unregister:function(t){var e=this._plugins;[].concat(t).forEach((function(t){var n=e.indexOf(t);-1!==n&&e.splice(n,1)})),this._cacheId++},clear:function(){this._plugins=[],this._cacheId++},count:function(){return this._plugins.length},getAll:function(){return this._plugins},notify:function(t,e,n){var a,r,i,s,u,o=this.descriptors(t),l=o.length;for(a=0;a<l;++a)if("function"==typeof(u=(i=(r=o[a]).plugin)[e])&&((s=[t].concat(n||[])).push(r.options),!1===u.apply(i,s)))return!1;return!0},descriptors:function(t){var e=t.$plugins||(t.$plugins={});if(e.id===this._cacheId)return e.descriptors;var n=[],a=[],r=t&&t.config||{},i=r.options&&r.options.plugins||{};return this._plugins.concat(r.plugins||[]).forEach((function(t){if(-1===n.indexOf(t)){var e=t.id,r=i[e];!1!==r&&(!0===r&&(r=dt.clone(ut.global.plugins[e])),n.push(t),a.push({plugin:t,options:r||{}}))}})),e.descriptors=a,e.id=this._cacheId,a},_invalidate:function(t){delete t.$plugins}},Ee={constructors:{},defaults:{},registerScaleType:function(t,e,n){this.constructors[t]=e,this.defaults[t]=dt.clone(n)},getScaleConstructor:function(t){return this.constructors.hasOwnProperty(t)?this.constructors[t]:void 0},getScaleDefaults:function(t){return this.defaults.hasOwnProperty(t)?dt.merge({},[ut.scale,this.defaults[t]]):{}},updateScaleDefaults:function(t,e){this.defaults.hasOwnProperty(t)&&(this.defaults[t]=dt.extend(this.defaults[t],e))},addScalesToLayout:function(t){dt.each(t.scales,(function(e){e.fullWidth=e.options.fullWidth,e.position=e.options.position,e.weight=e.options.weight,ve.addBox(t,e)}))}},Le=dt.valueOrDefault;ut._set("global",{tooltips:{enabled:!0,custom:null,mode:"nearest",position:"average",intersect:!0,backgroundColor:"rgba(0,0,0,0.8)",titleFontStyle:"bold",titleSpacing:2,titleMarginBottom:6,titleFontColor:"#fff",titleAlign:"left",bodySpacing:2,bodyFontColor:"#fff",bodyAlign:"left",footerFontStyle:"bold",footerSpacing:2,footerMarginTop:6,footerFontColor:"#fff",footerAlign:"left",yPadding:6,xPadding:6,caretPadding:2,caretSize:5,cornerRadius:6,multiKeyBackground:"#fff",displayColors:!0,borderColor:"rgba(0,0,0,0)",borderWidth:0,callbacks:{beforeTitle:dt.noop,title:function(t,e){var n="",a=e.labels,r=a?a.length:0;if(t.length>0){var i=t[0];i.label?n=i.label:i.xLabel?n=i.xLabel:r>0&&i.index<r&&(n=a[i.index])}return n},afterTitle:dt.noop,beforeBody:dt.noop,beforeLabel:dt.noop,label:function(t,e){var n=e.datasets[t.datasetIndex].label||"";return n&&(n+=": "),dt.isNullOrUndef(t.value)?n+=t.yLabel:n+=t.value,n},labelColor:function(t,e){var n=e.getDatasetMeta(t.datasetIndex).data[t.index]._view;return{borderColor:n.borderColor,backgroundColor:n.backgroundColor}},labelTextColor:function(){return this._options.bodyFontColor},afterLabel:dt.noop,afterBody:dt.noop,beforeFooter:dt.noop,footer:dt.noop,afterFooter:dt.noop}}});var De={average:function(t){if(!t.length)return!1;var e,n,a=0,r=0,i=0;for(e=0,n=t.length;e<n;++e){var s=t[e];if(s&&s.hasValue()){var u=s.tooltipPosition();a+=u.x,r+=u.y,++i}}return{x:a/i,y:r/i}},nearest:function(t,e){var n,a,r,i=e.x,s=e.y,u=Number.POSITIVE_INFINITY;for(n=0,a=t.length;n<a;++n){var o=t[n];if(o&&o.hasValue()){var l=o.getCenterPoint(),d=dt.distanceBetweenPoints(e,l);d<u&&(u=d,r=o)}}if(r){var c=r.tooltipPosition();i=c.x,s=c.y}return{x:i,y:s}}};function Pe(t,e){return e&&(dt.isArray(e)?Array.prototype.push.apply(t,e):t.push(e)),t}function Me(t){return("string"==typeof t||t instanceof String)&&t.indexOf("\n")>-1?t.split("\n"):t}function qe(t){var e=ut.global;return{xPadding:t.xPadding,yPadding:t.yPadding,xAlign:t.xAlign,yAlign:t.yAlign,bodyFontColor:t.bodyFontColor,_bodyFontFamily:Le(t.bodyFontFamily,e.defaultFontFamily),_bodyFontStyle:Le(t.bodyFontStyle,e.defaultFontStyle),_bodyAlign:t.bodyAlign,bodyFontSize:Le(t.bodyFontSize,e.defaultFontSize),bodySpacing:t.bodySpacing,titleFontColor:t.titleFontColor,_titleFontFamily:Le(t.titleFontFamily,e.defaultFontFamily),_titleFontStyle:Le(t.titleFontStyle,e.defaultFontStyle),titleFontSize:Le(t.titleFontSize,e.defaultFontSize),_titleAlign:t.titleAlign,titleSpacing:t.titleSpacing,titleMarginBottom:t.titleMarginBottom,footerFontColor:t.footerFontColor,_footerFontFamily:Le(t.footerFontFamily,e.defaultFontFamily),_footerFontStyle:Le(t.footerFontStyle,e.defaultFontStyle),footerFontSize:Le(t.footerFontSize,e.defaultFontSize),_footerAlign:t.footerAlign,footerSpacing:t.footerSpacing,footerMarginTop:t.footerMarginTop,caretSize:t.caretSize,cornerRadius:t.cornerRadius,backgroundColor:t.backgroundColor,opacity:0,legendColorBackground:t.multiKeyBackground,displayColors:t.displayColors,borderColor:t.borderColor,borderWidth:t.borderWidth}}function je(t,e){return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-t.xPadding:t.x+t.xPadding}function Fe(t){return Pe([],Me(t))}var Ve=gt.extend({initialize:function(){this._model=qe(this._options),this._lastActive=[]},getTitle:function(){var t=this,e=t._options,n=e.callbacks,a=n.beforeTitle.apply(t,arguments),r=n.title.apply(t,arguments),i=n.afterTitle.apply(t,arguments),s=[];return s=Pe(s,Me(a)),s=Pe(s,Me(r)),Pe(s,Me(i))},getBeforeBody:function(){return Fe(this._options.callbacks.beforeBody.apply(this,arguments))},getBody:function(t,e){var n=this,a=n._options.callbacks,r=[];return dt.each(t,(function(t){var i={before:[],lines:[],after:[]};Pe(i.before,Me(a.beforeLabel.call(n,t,e))),Pe(i.lines,a.label.call(n,t,e)),Pe(i.after,Me(a.afterLabel.call(n,t,e))),r.push(i)})),r},getAfterBody:function(){return Fe(this._options.callbacks.afterBody.apply(this,arguments))},getFooter:function(){var t=this,e=t._options.callbacks,n=e.beforeFooter.apply(t,arguments),a=e.footer.apply(t,arguments),r=e.afterFooter.apply(t,arguments),i=[];return i=Pe(i,Me(n)),i=Pe(i,Me(a)),Pe(i,Me(r))},update:function(t){var e,n,a,r,i,s,u,o,l,d,c=this,f=c._options,h=c._model,g=c._model=qe(f),p=c._active,b=c._data,m={xAlign:h.xAlign,yAlign:h.yAlign},y={x:h.x,y:h.y},v={width:h.width,height:h.height},x={x:h.caretX,y:h.caretY};if(p.length){g.opacity=1;var _=[],T=[];x=De[f.position].call(c,p,c._eventPosition);var w=[];for(e=0,n=p.length;e<n;++e)w.push((r=void 0,i=void 0,o=void 0,l=void 0,d=void 0,r=(a=p[e])._xScale,i=a._yScale||a._scale,s=a._index,l=(o=a._chart.getDatasetMeta(u=a._datasetIndex).controller)._getIndexScale(),d=o._getValueScale(),{xLabel:r?r.getLabelForIndex(s,u):"",yLabel:i?i.getLabelForIndex(s,u):"",label:l?""+l.getLabelForIndex(s,u):"",value:d?""+d.getLabelForIndex(s,u):"",index:s,datasetIndex:u,x:a._model.x,y:a._model.y}));f.filter&&(w=w.filter((function(t){return f.filter(t,b)}))),f.itemSort&&(w=w.sort((function(t,e){return f.itemSort(t,e,b)}))),dt.each(w,(function(t){_.push(f.callbacks.labelColor.call(c,t,c._chart)),T.push(f.callbacks.labelTextColor.call(c,t,c._chart))})),g.title=c.getTitle(w,b),g.beforeBody=c.getBeforeBody(w,b),g.body=c.getBody(w,b),g.afterBody=c.getAfterBody(w,b),g.footer=c.getFooter(w,b),g.x=x.x,g.y=x.y,g.caretPadding=f.caretPadding,g.labelColors=_,g.labelTextColors=T,g.dataPoints=w,v=function(t,e){var n=t._chart.ctx,a=2*e.yPadding,r=0,i=e.body,s=i.reduce((function(t,e){return t+e.before.length+e.lines.length+e.after.length}),0),u=e.title.length,o=e.footer.length,l=e.titleFontSize,d=e.bodyFontSize,c=e.footerFontSize;a+=u*l,a+=u?(u-1)*e.titleSpacing:0,a+=u?e.titleMarginBottom:0,a+=(s+=e.beforeBody.length+e.afterBody.length)*d,a+=s?(s-1)*e.bodySpacing:0,a+=o?e.footerMarginTop:0,a+=o*c,a+=o?(o-1)*e.footerSpacing:0;var f=0,h=function(t){r=Math.max(r,n.measureText(t).width+f)};return n.font=dt.fontString(l,e._titleFontStyle,e._titleFontFamily),dt.each(e.title,h),n.font=dt.fontString(d,e._bodyFontStyle,e._bodyFontFamily),dt.each(e.beforeBody.concat(e.afterBody),h),f=e.displayColors?d+2:0,dt.each(i,(function(t){dt.each(t.before,h),dt.each(t.lines,h),dt.each(t.after,h)})),f=0,n.font=dt.fontString(c,e._footerFontStyle,e._footerFontFamily),dt.each(e.footer,h),{width:r+=2*e.xPadding,height:a}}(this,g),y=function(t,e,n,a){var r=t.x,i=t.y,s=t.caretPadding,u=n.xAlign,o=n.yAlign,l=t.caretSize+s,d=t.cornerRadius+s;return"right"===u?r-=e.width:"center"===u&&((r-=e.width/2)+e.width>a.width&&(r=a.width-e.width),r<0&&(r=0)),"top"===o?i+=l:i-="bottom"===o?e.height+l:e.height/2,"center"===o?"left"===u?r+=l:"right"===u&&(r-=l):"left"===u?r-=d:"right"===u&&(r+=d),{x:r,y:i}}(g,v,m=function(t,e){var n,a,r,i,s,u=t._model,o=t._chart,l=t._chart.chartArea,d="center",c="center";u.y<e.height?c="top":u.y>o.height-e.height&&(c="bottom");var f=(l.left+l.right)/2,h=(l.top+l.bottom)/2;"center"===c?(n=function(t){return t<=f},a=function(t){return t>f}):(n=function(t){return t<=e.width/2},a=function(t){return t>=o.width-e.width/2}),r=function(t){return t+e.width+u.caretSize+u.caretPadding>o.width},i=function(t){return t-e.width-u.caretSize-u.caretPadding<0},s=function(t){return t<=h?"top":"bottom"},n(u.x)?(d="left",r(u.x)&&(d="center",c=s(u.y))):a(u.x)&&(d="right",i(u.x)&&(d="center",c=s(u.y)));var g=t._options;return{xAlign:g.xAlign?g.xAlign:d,yAlign:g.yAlign?g.yAlign:c}}(this,v),c._chart)}else g.opacity=0;return g.xAlign=m.xAlign,g.yAlign=m.yAlign,g.x=y.x,g.y=y.y,g.width=v.width,g.height=v.height,g.caretX=x.x,g.caretY=x.y,c._model=g,t&&f.custom&&f.custom.call(c,g),c},drawCaret:function(t,e){var n=this._chart.ctx,a=this.getCaretPosition(t,e,this._view);n.lineTo(a.x1,a.y1),n.lineTo(a.x2,a.y2),n.lineTo(a.x3,a.y3)},getCaretPosition:function(t,e,n){var a,r,i,s,u,o,l=n.caretSize,d=n.cornerRadius,c=n.xAlign,f=n.yAlign,h=t.x,g=t.y,p=e.width,b=e.height;if("center"===f)u=g+b/2,"left"===c?(r=(a=h)-l,i=a,s=u+l,o=u-l):(r=(a=h+p)+l,i=a,s=u-l,o=u+l);else if("left"===c?(a=(r=h+d+l)-l,i=r+l):"right"===c?(a=(r=h+p-d-l)-l,i=r+l):(a=(r=n.caretX)-l,i=r+l),"top"===f)u=(s=g)-l,o=s;else{u=(s=g+b)+l,o=s;var m=i;i=a,a=m}return{x1:a,x2:r,x3:i,y1:s,y2:u,y3:o}},drawTitle:function(t,e,n){var a=e.title;if(a.length){t.x=je(e,e._titleAlign),n.textAlign=e._titleAlign,n.textBaseline="top";var r,i,s=e.titleFontSize,u=e.titleSpacing;for(n.fillStyle=e.titleFontColor,n.font=dt.fontString(s,e._titleFontStyle,e._titleFontFamily),r=0,i=a.length;r<i;++r)n.fillText(a[r],t.x,t.y),t.y+=s+u,r+1===a.length&&(t.y+=e.titleMarginBottom-u)}},drawBody:function(t,e,n){var a,r=e.bodyFontSize,i=e.bodySpacing,s=e._bodyAlign,u=e.body,o=e.displayColors,l=e.labelColors,d=0,c=o?je(e,"left"):0;n.textAlign=s,n.textBaseline="top",n.font=dt.fontString(r,e._bodyFontStyle,e._bodyFontFamily),t.x=je(e,s);var f=function(e){n.fillText(e,t.x+d,t.y),t.y+=r+i};n.fillStyle=e.bodyFontColor,dt.each(e.beforeBody,f),d=o&&"right"!==s?"center"===s?r/2+1:r+2:0,dt.each(u,(function(i,s){n.fillStyle=a=e.labelTextColors[s],dt.each(i.before,f),dt.each(i.lines,(function(i){o&&(n.fillStyle=e.legendColorBackground,n.fillRect(c,t.y,r,r),n.lineWidth=1,n.strokeStyle=l[s].borderColor,n.strokeRect(c,t.y,r,r),n.fillStyle=l[s].backgroundColor,n.fillRect(c+1,t.y+1,r-2,r-2),n.fillStyle=a),f(i)})),dt.each(i.after,f)})),d=0,dt.each(e.afterBody,f),t.y-=i},drawFooter:function(t,e,n){var a=e.footer;a.length&&(t.x=je(e,e._footerAlign),t.y+=e.footerMarginTop,n.textAlign=e._footerAlign,n.textBaseline="top",n.fillStyle=e.footerFontColor,n.font=dt.fontString(e.footerFontSize,e._footerFontStyle,e._footerFontFamily),dt.each(a,(function(a){n.fillText(a,t.x,t.y),t.y+=e.footerFontSize+e.footerSpacing})))},drawBackground:function(t,e,n,a){n.fillStyle=e.backgroundColor,n.strokeStyle=e.borderColor,n.lineWidth=e.borderWidth;var r=e.xAlign,i=e.yAlign,s=t.x,u=t.y,o=a.width,l=a.height,d=e.cornerRadius;n.beginPath(),n.moveTo(s+d,u),"top"===i&&this.drawCaret(t,a),n.lineTo(s+o-d,u),n.quadraticCurveTo(s+o,u,s+o,u+d),"center"===i&&"right"===r&&this.drawCaret(t,a),n.lineTo(s+o,u+l-d),n.quadraticCurveTo(s+o,u+l,s+o-d,u+l),"bottom"===i&&this.drawCaret(t,a),n.lineTo(s+d,u+l),n.quadraticCurveTo(s,u+l,s,u+l-d),"center"===i&&"left"===r&&this.drawCaret(t,a),n.lineTo(s,u+d),n.quadraticCurveTo(s,u,s+d,u),n.closePath(),n.fill(),e.borderWidth>0&&n.stroke()},draw:function(){var t=this._chart.ctx,e=this._view;if(0!==e.opacity){var n={width:e.width,height:e.height},a={x:e.x,y:e.y},r=Math.abs(e.opacity<.001)?0:e.opacity;this._options.enabled&&(e.title.length||e.beforeBody.length||e.body.length||e.afterBody.length||e.footer.length)&&(t.save(),t.globalAlpha=r,this.drawBackground(a,e,t,n),a.y+=e.yPadding,this.drawTitle(a,e,t),this.drawBody(a,e,t),this.drawFooter(a,e,t),t.restore())}},handleEvent:function(t){var e,n=this,a=n._options;return n._lastActive=n._lastActive||[],n._active="mouseout"===t.type?[]:n._chart.getElementsAtEventForMode(t,a.mode,a),(e=!dt.arrayEquals(n._active,n._lastActive))&&(n._lastActive=n._active,(a.enabled||a.custom)&&(n._eventPosition={x:t.x,y:t.y},n.update(!0),n.pivot())),e}});Ve.positioners=De;var Ge=dt.valueOrDefault;function Be(){return dt.merge({},[].slice.call(arguments),{merger:function(t,e,n,a){if("xAxes"===t||"yAxes"===t){var r,i,s,u=n[t].length;for(e[t]||(e[t]=[]),r=0;r<u;++r)i=Ge((s=n[t][r]).type,"xAxes"===t?"category":"linear"),r>=e[t].length&&e[t].push({}),dt.merge(e[t][r],!e[t][r].type||s.type&&s.type!==e[t][r].type?[Ee.getScaleDefaults(i),s]:s)}else dt._merger(t,e,n,a)}})}function ze(){return dt.merge({},[].slice.call(arguments),{merger:function(t,e,n,a){var r=e[t]||{},i=n[t];"scales"===t?e[t]=Be(r,i):"scale"===t?e[t]=dt.merge(r,[Ee.getScaleDefaults(i.type),i]):dt._merger(t,e,n,a)}})}function Ye(t){var e=t.options;dt.each(t.scales,(function(e){ve.removeBox(t,e)})),e=ze(ut.global,ut[t.config.type],e),t.options=t.config.options=e,t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t.tooltip._options=e.tooltips,t.tooltip.initialize()}function He(t){return"top"===t||"bottom"===t}ut._set("global",{elements:{},events:["mousemove","mouseout","click","touchstart","touchmove"],hover:{onHover:null,mode:"nearest",intersect:!0,animationDuration:400},onClick:null,maintainAspectRatio:!0,responsive:!0,responsiveAnimationDuration:0});var Ue=function(t,e){return this.construct(t,e),this};dt.extend(Ue.prototype,{construct:function(t,e){var n=this;e=function(t){var e=(t=t||{}).data=t.data||{};return e.datasets=e.datasets||[],e.labels=e.labels||[],t.options=ze(ut.global,ut[t.type],t.options||{}),t}(e);var a=Ae.acquireContext(t,e),r=a&&a.canvas,i=r&&r.height,s=r&&r.width;n.id=dt.uid(),n.ctx=a,n.canvas=r,n.config=e,n.width=s,n.height=i,n.aspectRatio=i?s/i:null,n.options=e.options,n._bufferedRender=!1,n.chart=n,n.controller=n,Ue.instances[n.id]=n,Object.defineProperty(n,"data",{get:function(){return n.config.data},set:function(t){n.config.data=t}}),a&&r?(n.initialize(),n.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var t=this;return ke.notify(t,"beforeInit"),dt.retinaScale(t,t.options.devicePixelRatio),t.bindEvents(),t.options.responsive&&t.resize(!0),t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t.initToolTip(),ke.notify(t,"afterInit"),t},clear:function(){return dt.canvas.clear(this),this},stop:function(){return mt.cancelAnimation(this),this},resize:function(t){var e=this,n=e.options,a=e.canvas,r=n.maintainAspectRatio&&e.aspectRatio||null,i=Math.max(0,Math.floor(dt.getMaximumWidth(a))),s=Math.max(0,Math.floor(r?i/r:dt.getMaximumHeight(a)));if((e.width!==i||e.height!==s)&&(a.width=e.width=i,a.height=e.height=s,a.style.width=i+"px",a.style.height=s+"px",dt.retinaScale(e,n.devicePixelRatio),!t)){var u={width:i,height:s};ke.notify(e,"resize",[u]),n.onResize&&n.onResize(e,u),e.stop(),e.update({duration:n.responsiveAnimationDuration})}},ensureScalesHaveIDs:function(){var t=this.options,e=t.scales||{},n=t.scale;dt.each(e.xAxes,(function(t,e){t.id=t.id||"x-axis-"+e})),dt.each(e.yAxes,(function(t,e){t.id=t.id||"y-axis-"+e})),n&&(n.id=n.id||"scale")},buildOrUpdateScales:function(){var t=this,e=t.options,n=t.scales||{},a=[],r=Object.keys(n).reduce((function(t,e){return t[e]=!1,t}),{});e.scales&&(a=a.concat((e.scales.xAxes||[]).map((function(t){return{options:t,dtype:"category",dposition:"bottom"}})),(e.scales.yAxes||[]).map((function(t){return{options:t,dtype:"linear",dposition:"left"}})))),e.scale&&a.push({options:e.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"}),dt.each(a,(function(e){var a=e.options,i=a.id,s=Ge(a.type,e.dtype);He(a.position)!==He(e.dposition)&&(a.position=e.dposition),r[i]=!0;var u=null;if(i in n&&n[i].type===s)(u=n[i]).options=a,u.ctx=t.ctx,u.chart=t;else{var o=Ee.getScaleConstructor(s);if(!o)return;u=new o({id:i,type:s,options:a,ctx:t.ctx,chart:t}),n[u.id]=u}u.mergeTicksOptions(),e.isDefault&&(t.scale=u)})),dt.each(r,(function(t,e){t||delete n[e]})),t.scales=n,Ee.addScalesToLayout(this)},buildOrUpdateControllers:function(){var t=this,e=[];return dt.each(t.data.datasets,(function(n,a){var r=t.getDatasetMeta(a),i=n.type||t.config.type;if(r.type&&r.type!==i&&(t.destroyDatasetMeta(a),r=t.getDatasetMeta(a)),r.type=i,r.controller)r.controller.updateIndex(a),r.controller.linkScales();else{var s=ue[r.type];if(void 0===s)throw new Error('"'+r.type+'" is not a chart type.');r.controller=new s(t,a),e.push(r.controller)}}),t),e},resetElements:function(){var t=this;dt.each(t.data.datasets,(function(e,n){t.getDatasetMeta(n).controller.reset()}),t)},reset:function(){this.resetElements(),this.tooltip.initialize()},update:function(t){var e=this;if(t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]}),Ye(e),ke._invalidate(e),!1!==ke.notify(e,"beforeUpdate")){e.tooltip._data=e.data;var n=e.buildOrUpdateControllers();dt.each(e.data.datasets,(function(t,n){e.getDatasetMeta(n).controller.buildOrUpdateElements()}),e),e.updateLayout(),e.options.animation&&e.options.animation.duration&&dt.each(n,(function(t){t.reset()})),e.updateDatasets(),e.tooltip.initialize(),e.lastActive=[],ke.notify(e,"afterUpdate"),e._bufferedRender?e._bufferedRequest={duration:t.duration,easing:t.easing,lazy:t.lazy}:e.render(t)}},updateLayout:function(){!1!==ke.notify(this,"beforeLayout")&&(ve.update(this,this.width,this.height),ke.notify(this,"afterScaleUpdate"),ke.notify(this,"afterLayout"))},updateDatasets:function(){if(!1!==ke.notify(this,"beforeDatasetsUpdate")){for(var t=0,e=this.data.datasets.length;t<e;++t)this.updateDataset(t);ke.notify(this,"afterDatasetsUpdate")}},updateDataset:function(t){var e=this.getDatasetMeta(t),n={meta:e,index:t};!1!==ke.notify(this,"beforeDatasetUpdate",[n])&&(e.controller.update(),ke.notify(this,"afterDatasetUpdate",[n]))},render:function(t){var e=this;t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]});var n=e.options.animation,a=Ge(t.duration,n&&n.duration),r=t.lazy;if(!1!==ke.notify(e,"beforeRender")){var i=function(t){ke.notify(e,"afterRender"),dt.callback(n&&n.onComplete,[t],e)};if(n&&a){var s=new bt({numSteps:a/16.66,easing:t.easing||n.easing,render:function(t,e){var n=e.currentStep,a=n/e.numSteps;t.draw((0,dt.easing.effects[e.easing])(a),a,n)},onAnimationProgress:n.onProgress,onAnimationComplete:i});mt.addAnimation(e,s,a,r)}else e.draw(),i(new bt({numSteps:0,chart:e}));return e}},draw:function(t){var e=this;e.clear(),dt.isNullOrUndef(t)&&(t=1),e.transition(t),e.width<=0||e.height<=0||!1!==ke.notify(e,"beforeDraw",[t])&&(dt.each(e.boxes,(function(t){t.draw(e.chartArea)}),e),e.drawDatasets(t),e._drawTooltip(t),ke.notify(e,"afterDraw",[t]))},transition:function(t){for(var e=0,n=(this.data.datasets||[]).length;e<n;++e)this.isDatasetVisible(e)&&this.getDatasetMeta(e).controller.transition(t);this.tooltip.transition(t)},drawDatasets:function(t){var e=this;if(!1!==ke.notify(e,"beforeDatasetsDraw",[t])){for(var n=(e.data.datasets||[]).length-1;n>=0;--n)e.isDatasetVisible(n)&&e.drawDataset(n,t);ke.notify(e,"afterDatasetsDraw",[t])}},drawDataset:function(t,e){var n=this.getDatasetMeta(t),a={meta:n,index:t,easingValue:e};!1!==ke.notify(this,"beforeDatasetDraw",[a])&&(n.controller.draw(e),ke.notify(this,"afterDatasetDraw",[a]))},_drawTooltip:function(t){var e=this.tooltip,n={tooltip:e,easingValue:t};!1!==ke.notify(this,"beforeTooltipDraw",[n])&&(e.draw(),ke.notify(this,"afterTooltipDraw",[n]))},getElementAtEvent:function(t){return ge.modes.single(this,t)},getElementsAtEvent:function(t){return ge.modes.label(this,t,{intersect:!0})},getElementsAtXAxis:function(t){return ge.modes["x-axis"](this,t,{intersect:!0})},getElementsAtEventForMode:function(t,e,n){var a=ge.modes[e];return"function"==typeof a?a(this,t,n):[]},getDatasetAtEvent:function(t){return ge.modes.dataset(this,t,{intersect:!0})},getDatasetMeta:function(t){var e=this.data.datasets[t];e._meta||(e._meta={});var n=e._meta[this.id];return n||(n=e._meta[this.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null}),n},getVisibleDatasetCount:function(){for(var t=0,e=0,n=this.data.datasets.length;e<n;++e)this.isDatasetVisible(e)&&t++;return t},isDatasetVisible:function(t){var e=this.getDatasetMeta(t);return"boolean"==typeof e.hidden?!e.hidden:!this.data.datasets[t].hidden},generateLegend:function(){return this.options.legendCallback(this)},destroyDatasetMeta:function(t){var e=this.id,n=this.data.datasets[t],a=n._meta&&n._meta[e];a&&(a.controller.destroy(),delete n._meta[e])},destroy:function(){var t,e,n=this,a=n.canvas;for(n.stop(),t=0,e=n.data.datasets.length;t<e;++t)n.destroyDatasetMeta(t);a&&(n.unbindEvents(),dt.canvas.clear(n),Ae.releaseContext(n.ctx),n.canvas=null,n.ctx=null),ke.notify(n,"destroy"),delete Ue.instances[n.id]},toBase64Image:function(){return this.canvas.toDataURL.apply(this.canvas,arguments)},initToolTip:function(){var t=this;t.tooltip=new Ve({_chart:t,_chartInstance:t,_data:t.data,_options:t.options.tooltips},t)},bindEvents:function(){var t=this,e=t._listeners={},n=function(){t.eventHandler.apply(t,arguments)};dt.each(t.options.events,(function(a){Ae.addEventListener(t,a,n),e[a]=n})),t.options.responsive&&(n=function(){t.resize()},Ae.addEventListener(t,"resize",n),e.resize=n)},unbindEvents:function(){var t=this,e=t._listeners;e&&(delete t._listeners,dt.each(e,(function(e,n){Ae.removeEventListener(t,n,e)})))},updateHoverStyle:function(t,e,n){var a,r,i,s=n?"setHoverStyle":"removeHoverStyle";for(r=0,i=t.length;r<i;++r)(a=t[r])&&this.getDatasetMeta(a._datasetIndex).controller[s](a)},eventHandler:function(t){var e=this,n=e.tooltip;if(!1!==ke.notify(e,"beforeEvent",[t])){e._bufferedRender=!0,e._bufferedRequest=null;var a=e.handleEvent(t);n&&(a=n._start?n.handleEvent(t):a|n.handleEvent(t)),ke.notify(e,"afterEvent",[t]);var r=e._bufferedRequest;return r?e.render(r):a&&!e.animating&&(e.stop(),e.render({duration:e.options.hover.animationDuration,lazy:!0})),e._bufferedRender=!1,e._bufferedRequest=null,e}},handleEvent:function(t){var e,n=this,a=n.options||{},r=a.hover;return n.lastActive=n.lastActive||[],n.active="mouseout"===t.type?[]:n.getElementsAtEventForMode(t,r.mode,r),dt.callback(a.onHover||a.hover.onHover,[t.native,n.active],n),"mouseup"!==t.type&&"click"!==t.type||a.onClick&&a.onClick.call(n,t.native,n.active),n.lastActive.length&&n.updateHoverStyle(n.lastActive,r.mode,!1),n.active.length&&r.mode&&n.updateHoverStyle(n.active,r.mode,!0),e=!dt.arrayEquals(n.active,n.lastActive),n.lastActive=n.active,e}}),Ue.instances={};var We=Ue;function Ke(){throw new Error("This method is not implemented: either no adapter can be found or an incomplete integration was provided.")}function $e(t){this.options=t||{}}Ue.Controller=Ue,Ue.types={},dt.configMerge=ze,dt.scaleMerge=Be,dt.extend($e.prototype,{formats:Ke,parse:Ke,format:Ke,add:Ke,diff:Ke,startOf:Ke,endOf:Ke,_create:function(t){return t}}),$e.override=function(t){dt.extend($e.prototype,t)};var Ze={_date:$e},Je={formatters:{values:function(t){return dt.isArray(t)?t:""+t},linear:function(t,e,n){var a=n.length>3?n[2]-n[1]:n[1]-n[0];Math.abs(a)>1&&t!==Math.floor(t)&&(a=t-Math.floor(t));var r=dt.log10(Math.abs(a)),i="";if(0!==t)if(Math.max(Math.abs(n[0]),Math.abs(n[n.length-1]))<1e-4){var s=dt.log10(Math.abs(t));i=t.toExponential(Math.floor(s)-Math.floor(r))}else{var u=-1*Math.floor(r);u=Math.max(Math.min(u,20),0),i=t.toFixed(u)}else i="0";return i},logarithmic:function(t,e,n){var a=t/Math.pow(10,Math.floor(dt.log10(t)));return 0===t?"0":1===a||2===a||5===a||0===e||e===n.length-1?t.toExponential():""}}},Qe=dt.valueOrDefault,Xe=dt.valueAtIndexOrDefault;function tn(t){var e,n,a=[];for(e=0,n=t.length;e<n;++e)a.push(t[e].label);return a}function en(t,e,n){return dt.isArray(e)?dt.longestText(t,n,e):t.measureText(e).width}ut._set("scale",{display:!0,position:"left",offset:!1,gridLines:{display:!0,color:"rgba(0, 0, 0, 0.1)",lineWidth:1,drawBorder:!0,drawOnChartArea:!0,drawTicks:!0,tickMarkLength:10,zeroLineWidth:1,zeroLineColor:"rgba(0,0,0,0.25)",zeroLineBorderDash:[],zeroLineBorderDashOffset:0,offsetGridLines:!1,borderDash:[],borderDashOffset:0},scaleLabel:{display:!1,labelString:"",padding:{top:4,bottom:4}},ticks:{beginAtZero:!1,minRotation:0,maxRotation:50,mirror:!1,padding:0,reverse:!1,display:!0,autoSkip:!0,autoSkipPadding:0,labelOffset:0,callback:Je.formatters.values,minor:{},major:{}}});var nn=gt.extend({getPadding:function(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}},getTicks:function(){return this._ticks},mergeTicksOptions:function(){var t=this.options.ticks;for(var e in!1===t.minor&&(t.minor={display:!1}),!1===t.major&&(t.major={display:!1}),t)"major"!==e&&"minor"!==e&&(void 0===t.minor[e]&&(t.minor[e]=t[e]),void 0===t.major[e]&&(t.major[e]=t[e]))},beforeUpdate:function(){dt.callback(this.options.beforeUpdate,[this])},update:function(t,e,n){var a,r,i,s,u,o,l=this;for(l.beforeUpdate(),l.maxWidth=t,l.maxHeight=e,l.margins=dt.extend({left:0,right:0,top:0,bottom:0},n),l._maxLabelLines=0,l.longestLabelWidth=0,l.longestTextCache=l.longestTextCache||{},l.beforeSetDimensions(),l.setDimensions(),l.afterSetDimensions(),l.beforeDataLimits(),l.determineDataLimits(),l.afterDataLimits(),l.beforeBuildTicks(),u=l.buildTicks()||[],u=l.afterBuildTicks(u)||u,l.beforeTickToLabelConversion(),i=l.convertTicksToLabels(u)||l.ticks,l.afterTickToLabelConversion(),l.ticks=i,a=0,r=i.length;a<r;++a)s=i[a],(o=u[a])?o.label=s:u.push(o={label:s,major:!1});return l._ticks=u,l.beforeCalculateTickRotation(),l.calculateTickRotation(),l.afterCalculateTickRotation(),l.beforeFit(),l.fit(),l.afterFit(),l.afterUpdate(),l.minSize},afterUpdate:function(){dt.callback(this.options.afterUpdate,[this])},beforeSetDimensions:function(){dt.callback(this.options.beforeSetDimensions,[this])},setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0},afterSetDimensions:function(){dt.callback(this.options.afterSetDimensions,[this])},beforeDataLimits:function(){dt.callback(this.options.beforeDataLimits,[this])},determineDataLimits:dt.noop,afterDataLimits:function(){dt.callback(this.options.afterDataLimits,[this])},beforeBuildTicks:function(){dt.callback(this.options.beforeBuildTicks,[this])},buildTicks:dt.noop,afterBuildTicks:function(t){var e=this;return dt.isArray(t)&&t.length?dt.callback(e.options.afterBuildTicks,[e,t]):(e.ticks=dt.callback(e.options.afterBuildTicks,[e,e.ticks])||e.ticks,t)},beforeTickToLabelConversion:function(){dt.callback(this.options.beforeTickToLabelConversion,[this])},convertTicksToLabels:function(){var t=this.options.ticks;this.ticks=this.ticks.map(t.userCallback||t.callback,this)},afterTickToLabelConversion:function(){dt.callback(this.options.afterTickToLabelConversion,[this])},beforeCalculateTickRotation:function(){dt.callback(this.options.beforeCalculateTickRotation,[this])},calculateTickRotation:function(){var t=this,e=t.ctx,n=t.options.ticks,a=tn(t._ticks),r=dt.options._parseFont(n);e.font=r.string;var i=n.minRotation||0;if(a.length&&t.options.display&&t.isHorizontal())for(var s,u=dt.longestText(e,r.string,a,t.longestTextCache),o=u,l=t.getPixelForTick(1)-t.getPixelForTick(0)-6;o>l&&i<n.maxRotation;){var d=dt.toRadians(i);if(s=Math.cos(d),Math.sin(d)*u>t.maxHeight){i--;break}i++,o=s*u}t.labelRotation=i},afterCalculateTickRotation:function(){dt.callback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){dt.callback(this.options.beforeFit,[this])},fit:function(){var t=this,e=t.minSize={width:0,height:0},n=tn(t._ticks),a=t.options,r=a.ticks,i=a.scaleLabel,s=a.gridLines,u=t._isVisible(),o=a.position,l=t.isHorizontal(),d=dt.options._parseFont,c=d(r),f=a.gridLines.tickMarkLength;if(e.width=l?t.isFullWidth()?t.maxWidth-t.margins.left-t.margins.right:t.maxWidth:u&&s.drawTicks?f:0,e.height=l?u&&s.drawTicks?f:0:t.maxHeight,i.display&&u){var h=d(i),g=dt.options.toPadding(i.padding),p=h.lineHeight+g.height;l?e.height+=p:e.width+=p}if(r.display&&u){var b=dt.longestText(t.ctx,c.string,n,t.longestTextCache),m=dt.numberOfLabelLines(n),y=.5*c.size,v=t.options.ticks.padding;if(t._maxLabelLines=m,t.longestLabelWidth=b,l){var x=dt.toRadians(t.labelRotation),_=Math.cos(x),T=Math.sin(x);e.height=Math.min(t.maxHeight,e.height+(T*b+c.lineHeight*m+y)+v),t.ctx.font=c.string;var w,O,S=en(t.ctx,n[0],c.string),I=en(t.ctx,n[n.length-1],c.string),N=t.getPixelForTick(0)-t.left,C=t.right-t.getPixelForTick(n.length-1);0!==t.labelRotation?(w="bottom"===o?_*S:_*y,O="bottom"===o?_*y:_*I):(w=S/2,O=I/2),t.paddingLeft=Math.max(w-N,0)+3,t.paddingRight=Math.max(O-C,0)+3}else r.mirror?b=0:b+=v+y,e.width=Math.min(t.maxWidth,e.width+b),t.paddingTop=c.size/2,t.paddingBottom=c.size/2}t.handleMargins(),t.width=e.width,t.height=e.height},handleMargins:function(){var t=this;t.margins&&(t.paddingLeft=Math.max(t.paddingLeft-t.margins.left,0),t.paddingTop=Math.max(t.paddingTop-t.margins.top,0),t.paddingRight=Math.max(t.paddingRight-t.margins.right,0),t.paddingBottom=Math.max(t.paddingBottom-t.margins.bottom,0))},afterFit:function(){dt.callback(this.options.afterFit,[this])},isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(t){if(dt.isNullOrUndef(t))return NaN;if(("number"==typeof t||t instanceof Number)&&!isFinite(t))return NaN;if(t)if(this.isHorizontal()){if(void 0!==t.x)return this.getRightValue(t.x)}else if(void 0!==t.y)return this.getRightValue(t.y);return t},getLabelForIndex:dt.noop,getPixelForValue:dt.noop,getValueForPixel:dt.noop,getPixelForTick:function(t){var e=this,n=e.options.offset;if(e.isHorizontal()){var a=(e.width-(e.paddingLeft+e.paddingRight))/Math.max(e._ticks.length-(n?0:1),1),r=a*t+e.paddingLeft;return n&&(r+=a/2),e.left+r+(e.isFullWidth()?e.margins.left:0)}return e.top+t*((e.height-(e.paddingTop+e.paddingBottom))/(e._ticks.length-1))},getPixelForDecimal:function(t){var e=this;return e.isHorizontal()?e.left+((e.width-(e.paddingLeft+e.paddingRight))*t+e.paddingLeft)+(e.isFullWidth()?e.margins.left:0):e.top+t*e.height},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var t=this.min,e=this.max;return this.beginAtZero?0:t<0&&e<0?e:t>0&&e>0?t:0},_autoSkip:function(t){var e,n,a=this,r=a.isHorizontal(),i=t.length,s=!1,u=a.options.ticks.minor.maxTicksLimit,o=a._tickSize()*(i-1),l=r?a.width-(a.paddingLeft+a.paddingRight):a.height-(a.paddingTop+a.PaddingBottom),d=[];for(o>l&&(s=1+Math.floor(o/l)),i>u&&(s=Math.max(s,1+Math.floor(i/u))),e=0;e<i;e++)n=t[e],s>1&&e%s>0&&delete n.label,d.push(n);return d},_tickSize:function(){var t=this,e=t.isHorizontal(),n=t.options.ticks.minor,a=dt.toRadians(t.labelRotation),r=Math.abs(Math.cos(a)),i=Math.abs(Math.sin(a)),s=n.autoSkipPadding||0,u=t.longestLabelWidth+s||0,o=dt.options._parseFont(n),l=t._maxLabelLines*o.lineHeight+s||0;return e?l*r>u*i?u/r:l/i:l*i<u*r?l/r:u/i},_isVisible:function(){var t,e,n,a=this.chart,r=this.options.display;if("auto"!==r)return!!r;for(t=0,e=a.data.datasets.length;t<e;++t)if(a.isDatasetVisible(t)&&((n=a.getDatasetMeta(t)).xAxisID===this.id||n.yAxisID===this.id))return!0;return!1},draw:function(t){var e=this,n=e.options;if(e._isVisible()){var a,r,i,s=e.chart,u=e.ctx,o=ut.global.defaultFontColor,l=n.ticks.minor,d=n.ticks.major||l,c=n.gridLines,f=n.scaleLabel,h=n.position,g=0!==e.labelRotation,p=l.mirror,b=e.isHorizontal(),m=dt.options._parseFont,y=l.display&&l.autoSkip?e._autoSkip(e.getTicks()):e.getTicks(),v=Qe(l.fontColor,o),x=m(l),_=x.lineHeight,T=Qe(d.fontColor,o),w=m(d),O=l.padding,S=l.labelOffset,I=c.drawTicks?c.tickMarkLength:0,N=Qe(f.fontColor,o),C=m(f),R=dt.options.toPadding(f.padding),A=dt.toRadians(e.labelRotation),k=[],E=c.drawBorder?Xe(c.lineWidth,0,0):0,L=dt._alignPixel;if("top"===h?(a=L(s,e.bottom,E),r=e.bottom-I,i=a-E/2):"bottom"===h?(a=L(s,e.top,E),r=a+E/2,i=e.top+I):"left"===h?(a=L(s,e.right,E),r=e.right-I,i=a-E/2):(a=L(s,e.left,E),r=a+E/2,i=e.left+I),dt.each(y,(function(a,u){if(!dt.isNullOrUndef(a.label)){var o,l,d,f,m,y,v,x,T,w,N,C,R,D,P,M,q=a.label;u===e.zeroLineIndex&&n.offset===c.offsetGridLines?(o=c.zeroLineWidth,l=c.zeroLineColor,d=c.zeroLineBorderDash||[],f=c.zeroLineBorderDashOffset||0):(o=Xe(c.lineWidth,u),l=Xe(c.color,u),d=c.borderDash||[],f=c.borderDashOffset||0);var j=dt.isArray(q)?q.length:1,F=function(t,e,n){var a=t.getPixelForTick(e);return n&&(1===t.getTicks().length?a-=t.isHorizontal()?Math.max(a-t.left,t.right-a):Math.max(a-t.top,t.bottom-a):a-=0===e?(t.getPixelForTick(1)-a)/2:(a-t.getPixelForTick(e-1))/2),a}(e,u,c.offsetGridLines);if(b){var V=I+O;F<e.left-1e-7&&(l="rgba(0,0,0,0)"),m=v=T=N=L(s,F,o),y=r,x=i,R=e.getPixelForTick(u)+S,"top"===h?(w=L(s,t.top,E)+E/2,C=t.bottom,P=((g?1:.5)-j)*_,M=g?"left":"center",D=e.bottom-V):(w=t.top,C=L(s,t.bottom,E)-E/2,P=(g?0:.5)*_,M=g?"right":"center",D=e.top+V)}else{var G=(p?0:I)+O;F<e.top-1e-7&&(l="rgba(0,0,0,0)"),m=r,v=i,y=x=w=C=L(s,F,o),D=e.getPixelForTick(u)+S,P=(1-j)*_/2,"left"===h?(T=L(s,t.left,E)+E/2,N=t.right,M=p?"left":"right",R=e.right-G):(T=t.left,N=L(s,t.right,E)-E/2,M=p?"right":"left",R=e.left+G)}k.push({tx1:m,ty1:y,tx2:v,ty2:x,x1:T,y1:w,x2:N,y2:C,labelX:R,labelY:D,glWidth:o,glColor:l,glBorderDash:d,glBorderDashOffset:f,rotation:-1*A,label:q,major:a.major,textOffset:P,textAlign:M})}})),dt.each(k,(function(t){var e=t.glWidth,n=t.glColor;if(c.display&&e&&n&&(u.save(),u.lineWidth=e,u.strokeStyle=n,u.setLineDash&&(u.setLineDash(t.glBorderDash),u.lineDashOffset=t.glBorderDashOffset),u.beginPath(),c.drawTicks&&(u.moveTo(t.tx1,t.ty1),u.lineTo(t.tx2,t.ty2)),c.drawOnChartArea&&(u.moveTo(t.x1,t.y1),u.lineTo(t.x2,t.y2)),u.stroke(),u.restore()),l.display){u.save(),u.translate(t.labelX,t.labelY),u.rotate(t.rotation),u.font=t.major?w.string:x.string,u.fillStyle=t.major?T:v,u.textBaseline="middle",u.textAlign=t.textAlign;var a=t.label,r=t.textOffset;if(dt.isArray(a))for(var i=0;i<a.length;++i)u.fillText(""+a[i],0,r),r+=_;else u.fillText(a,0,r);u.restore()}})),f.display){var D,P,M=0,q=C.lineHeight/2;if(b)D=e.left+(e.right-e.left)/2,P="bottom"===h?e.bottom-q-R.bottom:e.top+q+R.top;else{var j="left"===h;D=j?e.left+q+R.top:e.right-q-R.top,P=e.top+(e.bottom-e.top)/2,M=j?-.5*Math.PI:.5*Math.PI}u.save(),u.translate(D,P),u.rotate(M),u.textAlign="center",u.textBaseline="middle",u.fillStyle=N,u.font=C.string,u.fillText(f.labelString,0,0),u.restore()}if(E){var F,V,G,B,z=E,Y=Xe(c.lineWidth,y.length-1,0);b?(F=L(s,e.left,z)-z/2,V=L(s,e.right,Y)+Y/2,G=B=a):(G=L(s,e.top,z)-z/2,B=L(s,e.bottom,Y)+Y/2,F=V=a),u.lineWidth=E,u.strokeStyle=Xe(c.color,0),u.beginPath(),u.moveTo(F,G),u.lineTo(V,B),u.stroke()}}}}),an=nn.extend({getLabels:function(){var t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels},determineDataLimits:function(){var t,e=this,n=e.getLabels();e.minIndex=0,e.maxIndex=n.length-1,void 0!==e.options.ticks.min&&(t=n.indexOf(e.options.ticks.min),e.minIndex=-1!==t?t:e.minIndex),void 0!==e.options.ticks.max&&(t=n.indexOf(e.options.ticks.max),e.maxIndex=-1!==t?t:e.maxIndex),e.min=n[e.minIndex],e.max=n[e.maxIndex]},buildTicks:function(){var t=this,e=t.getLabels();t.ticks=0===t.minIndex&&t.maxIndex===e.length-1?e:e.slice(t.minIndex,t.maxIndex+1)},getLabelForIndex:function(t,e){var n=this,a=n.chart;return a.getDatasetMeta(e).controller._getValueScaleId()===n.id?n.getRightValue(a.data.datasets[e].data[t]):n.ticks[t-n.minIndex]},getPixelForValue:function(t,e){var n,a=this,r=a.options.offset,i=Math.max(a.maxIndex+1-a.minIndex-(r?0:1),1);if(null!=t&&(n=a.isHorizontal()?t.x:t.y),void 0!==n||void 0!==t&&isNaN(e)){var s=a.getLabels().indexOf(t=n||t);e=-1!==s?s:e}if(a.isHorizontal()){var u=a.width/i,o=u*(e-a.minIndex);return r&&(o+=u/2),a.left+o}var l=a.height/i,d=l*(e-a.minIndex);return r&&(d+=l/2),a.top+d},getPixelForTick:function(t){return this.getPixelForValue(this.ticks[t],t+this.minIndex,null)},getValueForPixel:function(t){var e=this,n=e.options.offset,a=Math.max(e._ticks.length-(n?0:1),1),r=e.isHorizontal(),i=(r?e.width:e.height)/a;return t-=r?e.left:e.top,n&&(t-=i/2),(t<=0?0:Math.round(t/i))+e.minIndex},getBasePixel:function(){return this.bottom}});an._defaults={position:"bottom"};var rn=dt.isNullOrUndef,sn=nn.extend({getRightValue:function(t){return"string"==typeof t?+t:nn.prototype.getRightValue.call(this,t)},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;if(e.beginAtZero){var n=dt.sign(t.min),a=dt.sign(t.max);n<0&&a<0?t.max=0:n>0&&a>0&&(t.min=0)}var r=void 0!==e.min||void 0!==e.suggestedMin,i=void 0!==e.max||void 0!==e.suggestedMax;void 0!==e.min?t.min=e.min:void 0!==e.suggestedMin&&(t.min=null===t.min?e.suggestedMin:Math.min(t.min,e.suggestedMin)),void 0!==e.max?t.max=e.max:void 0!==e.suggestedMax&&(t.max=null===t.max?e.suggestedMax:Math.max(t.max,e.suggestedMax)),r!==i&&t.min>=t.max&&(r?t.max=t.min+1:t.min=t.max-1),t.min===t.max&&(t.max++,e.beginAtZero||t.min--)},getTickLimit:function(){var t,e=this.options.ticks,n=e.stepSize,a=e.maxTicksLimit;return n?t=Math.ceil(this.max/n)-Math.floor(this.min/n)+1:(t=this._computeTickLimit(),a=a||11),a&&(t=Math.min(a,t)),t},_computeTickLimit:function(){return Number.POSITIVE_INFINITY},handleDirectionalChanges:dt.noop,buildTicks:function(){var t=this,e=t.options.ticks,n=t.getTickLimit(),a={maxTicks:n=Math.max(2,n),min:e.min,max:e.max,precision:e.precision,stepSize:dt.valueOrDefault(e.fixedStepSize,e.stepSize)},r=t.ticks=function(t,e){var n,a,r,i,s=[],u=t.stepSize,o=u||1,l=t.maxTicks-1,d=t.min,c=t.max,f=t.precision,h=e.min,g=e.max,p=dt.niceNum((g-h)/l/o)*o;if(p<1e-14&&rn(d)&&rn(c))return[h,g];(i=Math.ceil(g/p)-Math.floor(h/p))>l&&(p=dt.niceNum(i*p/l/o)*o),u||rn(f)?n=Math.pow(10,dt._decimalPlaces(p)):(n=Math.pow(10,f),p=Math.ceil(p*n)/n),a=Math.floor(h/p)*p,r=Math.ceil(g/p)*p,u&&(!rn(d)&&dt.almostWhole(d/p,p/1e3)&&(a=d),!rn(c)&&dt.almostWhole(c/p,p/1e3)&&(r=c)),i=dt.almostEquals(i=(r-a)/p,Math.round(i),p/1e3)?Math.round(i):Math.ceil(i),a=Math.round(a*n)/n,r=Math.round(r*n)/n,s.push(rn(d)?a:d);for(var b=1;b<i;++b)s.push(Math.round((a+b*p)*n)/n);return s.push(rn(c)?r:c),s}(a,t);t.handleDirectionalChanges(),t.max=dt.max(r),t.min=dt.min(r),e.reverse?(r.reverse(),t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max)},convertTicksToLabels:function(){var t=this;t.ticksAsNumbers=t.ticks.slice(),t.zeroLineIndex=t.ticks.indexOf(0),nn.prototype.convertTicksToLabels.call(t)}}),un={position:"left",ticks:{callback:Je.formatters.linear}},on=sn.extend({determineDataLimits:function(){var t=this,e=t.options,n=t.chart,a=n.data.datasets,r=t.isHorizontal();function i(e){return r?e.xAxisID===t.id:e.yAxisID===t.id}t.min=null,t.max=null;var s=e.stacked;if(void 0===s&&dt.each(a,(function(t,e){if(!s){var a=n.getDatasetMeta(e);n.isDatasetVisible(e)&&i(a)&&void 0!==a.stack&&(s=!0)}})),e.stacked||s){var u={};dt.each(a,(function(a,r){var s=n.getDatasetMeta(r),o=[s.type,void 0===e.stacked&&void 0===s.stack?r:"",s.stack].join(".");void 0===u[o]&&(u[o]={positiveValues:[],negativeValues:[]});var l=u[o].positiveValues,d=u[o].negativeValues;n.isDatasetVisible(r)&&i(s)&&dt.each(a.data,(function(n,a){var r=+t.getRightValue(n);isNaN(r)||s.data[a].hidden||(l[a]=l[a]||0,d[a]=d[a]||0,e.relativePoints?l[a]=100:r<0?d[a]+=r:l[a]+=r)}))})),dt.each(u,(function(e){var n=e.positiveValues.concat(e.negativeValues),a=dt.min(n),r=dt.max(n);t.min=null===t.min?a:Math.min(t.min,a),t.max=null===t.max?r:Math.max(t.max,r)}))}else dt.each(a,(function(e,a){var r=n.getDatasetMeta(a);n.isDatasetVisible(a)&&i(r)&&dt.each(e.data,(function(e,n){var a=+t.getRightValue(e);isNaN(a)||r.data[n].hidden||((null===t.min||a<t.min)&&(t.min=a),(null===t.max||a>t.max)&&(t.max=a))}))}));t.min=isFinite(t.min)&&!isNaN(t.min)?t.min:0,t.max=isFinite(t.max)&&!isNaN(t.max)?t.max:1,this.handleTickRangeOptions()},_computeTickLimit:function(){var t;return this.isHorizontal()?Math.ceil(this.width/40):(t=dt.options._parseFont(this.options.ticks),Math.ceil(this.height/t.lineHeight))},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},getPixelForValue:function(t){var e=this,n=e.start,a=+e.getRightValue(t),r=e.end-n;return e.isHorizontal()?e.left+e.width/r*(a-n):e.bottom-e.height/r*(a-n)},getValueForPixel:function(t){var e=this,n=e.isHorizontal();return e.start+(n?t-e.left:e.bottom-t)/(n?e.width:e.height)*(e.end-e.start)},getPixelForTick:function(t){return this.getPixelForValue(this.ticksAsNumbers[t])}});on._defaults=un;var ln=dt.valueOrDefault,dn={position:"left",ticks:{callback:Je.formatters.logarithmic}};function cn(t,e){return dt.isFinite(t)&&t>=0?t:e}var fn=nn.extend({determineDataLimits:function(){var t=this,e=t.options,n=t.chart,a=n.data.datasets,r=t.isHorizontal();function i(e){return r?e.xAxisID===t.id:e.yAxisID===t.id}t.min=null,t.max=null,t.minNotZero=null;var s=e.stacked;if(void 0===s&&dt.each(a,(function(t,e){if(!s){var a=n.getDatasetMeta(e);n.isDatasetVisible(e)&&i(a)&&void 0!==a.stack&&(s=!0)}})),e.stacked||s){var u={};dt.each(a,(function(a,r){var s=n.getDatasetMeta(r),o=[s.type,void 0===e.stacked&&void 0===s.stack?r:"",s.stack].join(".");n.isDatasetVisible(r)&&i(s)&&(void 0===u[o]&&(u[o]=[]),dt.each(a.data,(function(e,n){var a=u[o],r=+t.getRightValue(e);isNaN(r)||s.data[n].hidden||r<0||(a[n]=a[n]||0,a[n]+=r)})))})),dt.each(u,(function(e){if(e.length>0){var n=dt.min(e),a=dt.max(e);t.min=null===t.min?n:Math.min(t.min,n),t.max=null===t.max?a:Math.max(t.max,a)}}))}else dt.each(a,(function(e,a){var r=n.getDatasetMeta(a);n.isDatasetVisible(a)&&i(r)&&dt.each(e.data,(function(e,n){var a=+t.getRightValue(e);isNaN(a)||r.data[n].hidden||a<0||((null===t.min||a<t.min)&&(t.min=a),(null===t.max||a>t.max)&&(t.max=a),0!==a&&(null===t.minNotZero||a<t.minNotZero)&&(t.minNotZero=a))}))}));this.handleTickRangeOptions()},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;t.min=cn(e.min,t.min),t.max=cn(e.max,t.max),t.min===t.max&&(0!==t.min&&null!==t.min?(t.min=Math.pow(10,Math.floor(dt.log10(t.min))-1),t.max=Math.pow(10,Math.floor(dt.log10(t.max))+1)):(t.min=1,t.max=10)),null===t.min&&(t.min=Math.pow(10,Math.floor(dt.log10(t.max))-1)),null===t.max&&(t.max=0!==t.min?Math.pow(10,Math.floor(dt.log10(t.min))+1):10),null===t.minNotZero&&(t.minNotZero=t.min>0?t.min:t.max<1?Math.pow(10,Math.floor(dt.log10(t.max))):1)},buildTicks:function(){var t=this,e=t.options.ticks,n=!t.isHorizontal(),a={min:cn(e.min),max:cn(e.max)},r=t.ticks=function(t,e){var n,a,r=[],i=ln(t.min,Math.pow(10,Math.floor(dt.log10(e.min)))),s=Math.floor(dt.log10(e.max)),u=Math.ceil(e.max/Math.pow(10,s));0===i?(n=Math.floor(dt.log10(e.minNotZero)),a=Math.floor(e.minNotZero/Math.pow(10,n)),r.push(i),i=a*Math.pow(10,n)):(n=Math.floor(dt.log10(i)),a=Math.floor(i/Math.pow(10,n)));var o=n<0?Math.pow(10,Math.abs(n)):1;do{r.push(i),10==++a&&(a=1,o=++n>=0?1:o),i=Math.round(a*Math.pow(10,n)*o)/o}while(n<s||n===s&&a<u);var l=ln(t.max,i);return r.push(l),r}(a,t);t.max=dt.max(r),t.min=dt.min(r),e.reverse?(n=!n,t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max),n&&r.reverse()},convertTicksToLabels:function(){this.tickValues=this.ticks.slice(),nn.prototype.convertTicksToLabels.call(this)},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},getPixelForTick:function(t){return this.getPixelForValue(this.tickValues[t])},_getFirstTickValue:function(t){var e=Math.floor(dt.log10(t));return Math.floor(t/Math.pow(10,e))*Math.pow(10,e)},getPixelForValue:function(t){var e,n,a,r,i,s=this,u=s.options.ticks,o=u.reverse,l=dt.log10,d=s._getFirstTickValue(s.minNotZero),c=0;return t=+s.getRightValue(t),o?(a=s.end,r=s.start,i=-1):(a=s.start,r=s.end,i=1),s.isHorizontal()?(e=s.width,n=o?s.right:s.left):(e=s.height,i*=-1,n=o?s.top:s.bottom),t!==a&&(0===a&&(e-=c=ln(u.fontSize,ut.global.defaultFontSize),a=d),0!==t&&(c+=e/(l(r)-l(a))*(l(t)-l(a))),n+=i*c),n},getValueForPixel:function(t){var e,n,a,r,i=this,s=i.options.ticks,u=s.reverse,o=dt.log10,l=i._getFirstTickValue(i.minNotZero);if(u?(n=i.end,a=i.start):(n=i.start,a=i.end),i.isHorizontal()?(e=i.width,r=u?i.right-t:t-i.left):(e=i.height,r=u?t-i.top:i.bottom-t),r!==n){if(0===n){var d=ln(s.fontSize,ut.global.defaultFontSize);r-=d,e-=d,n=l}r*=o(a)-o(n),r/=e,r=Math.pow(10,o(n)+r)}return r}});fn._defaults=dn;var hn=dt.valueOrDefault,gn=dt.valueAtIndexOrDefault,pn=dt.options.resolve,bn={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,color:"rgba(0, 0, 0, 0.1)",lineWidth:1,borderDash:[],borderDashOffset:0},gridLines:{circular:!1},ticks:{showLabelBackdrop:!0,backdropColor:"rgba(255,255,255,0.75)",backdropPaddingY:2,backdropPaddingX:2,callback:Je.formatters.linear},pointLabels:{display:!0,fontSize:10,callback:function(t){return t}}};function mn(t){var e=t.options;return e.angleLines.display||e.pointLabels.display?t.chart.data.labels.length:0}function yn(t){var e=t.ticks;return e.display&&t.display?hn(e.fontSize,ut.global.defaultFontSize)+2*e.backdropPaddingY:0}function vn(t,e,n,a,r){return t===a||t===r?{start:e-n/2,end:e+n/2}:t<a||t>r?{start:e-n,end:e}:{start:e,end:e+n}}function xn(t){return 0===t||180===t?"center":t<180?"left":"right"}function _n(t,e,n,a){var r,i,s=n.y+a/2;if(dt.isArray(e))for(r=0,i=e.length;r<i;++r)t.fillText(e[r],n.x,s),s+=a;else t.fillText(e,n.x,s)}function Tn(t,e,n){90===t||270===t?n.y-=e.h/2:(t>270||t<90)&&(n.y-=e.h)}function wn(t){return dt.isNumber(t)?t:0}var On=sn.extend({setDimensions:function(){var t=this;t.width=t.maxWidth,t.height=t.maxHeight,t.paddingTop=yn(t.options)/2,t.xCenter=Math.floor(t.width/2),t.yCenter=Math.floor((t.height-t.paddingTop)/2),t.drawingArea=Math.min(t.height-t.paddingTop,t.width)/2},determineDataLimits:function(){var t=this,e=t.chart,n=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY;dt.each(e.data.datasets,(function(r,i){if(e.isDatasetVisible(i)){var s=e.getDatasetMeta(i);dt.each(r.data,(function(e,r){var i=+t.getRightValue(e);isNaN(i)||s.data[r].hidden||(n=Math.min(i,n),a=Math.max(i,a))}))}})),t.min=n===Number.POSITIVE_INFINITY?0:n,t.max=a===Number.NEGATIVE_INFINITY?0:a,t.handleTickRangeOptions()},_computeTickLimit:function(){return Math.ceil(this.drawingArea/yn(this.options))},convertTicksToLabels:function(){var t=this;sn.prototype.convertTicksToLabels.call(t),t.pointLabels=t.chart.data.labels.map(t.options.pointLabels.callback,t)},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},fit:function(){var t=this.options;t.display&&t.pointLabels.display?function(t){var e,n,a,r=dt.options._parseFont(t.options.pointLabels),i={l:0,r:t.width,t:0,b:t.height-t.paddingTop},s={};t.ctx.font=r.string,t._pointLabelSizes=[];var u,o,l,d=mn(t);for(e=0;e<d;e++){a=t.getPointPosition(e,t.drawingArea+5),u=t.ctx,o=r.lineHeight,n=dt.isArray(l=t.pointLabels[e]||"")?{w:dt.longestText(u,u.font,l),h:l.length*o}:{w:u.measureText(l).width,h:o},t._pointLabelSizes[e]=n;var c=t.getIndexAngle(e),f=dt.toDegrees(c)%360,h=vn(f,a.x,n.w,0,180),g=vn(f,a.y,n.h,90,270);h.start<i.l&&(i.l=h.start,s.l=c),h.end>i.r&&(i.r=h.end,s.r=c),g.start<i.t&&(i.t=g.start,s.t=c),g.end>i.b&&(i.b=g.end,s.b=c)}t.setReductions(t.drawingArea,i,s)}(this):this.setCenterPoint(0,0,0,0)},setReductions:function(t,e,n){var a=this,r=e.l/Math.sin(n.l),i=Math.max(e.r-a.width,0)/Math.sin(n.r),s=-e.t/Math.cos(n.t),u=-Math.max(e.b-(a.height-a.paddingTop),0)/Math.cos(n.b);r=wn(r),i=wn(i),s=wn(s),u=wn(u),a.drawingArea=Math.min(Math.floor(t-(r+i)/2),Math.floor(t-(s+u)/2)),a.setCenterPoint(r,i,s,u)},setCenterPoint:function(t,e,n,a){var r=this,i=n+r.drawingArea,s=r.height-r.paddingTop-a-r.drawingArea;r.xCenter=Math.floor((t+r.drawingArea+(r.width-e-r.drawingArea))/2+r.left),r.yCenter=Math.floor((i+s)/2+r.top+r.paddingTop)},getIndexAngle:function(t){return t*(2*Math.PI/mn(this))+(this.chart.options&&this.chart.options.startAngle?this.chart.options.startAngle:0)*Math.PI*2/360},getDistanceFromCenterForValue:function(t){var e=this;if(null===t)return 0;var n=e.drawingArea/(e.max-e.min);return e.options.ticks.reverse?(e.max-t)*n:(t-e.min)*n},getPointPosition:function(t,e){var n=this.getIndexAngle(t)-Math.PI/2;return{x:Math.cos(n)*e+this.xCenter,y:Math.sin(n)*e+this.yCenter}},getPointPositionForValue:function(t,e){return this.getPointPosition(t,this.getDistanceFromCenterForValue(e))},getBasePosition:function(){var t=this.min,e=this.max;return this.getPointPositionForValue(0,this.beginAtZero?0:t<0&&e<0?e:t>0&&e>0?t:0)},draw:function(){var t=this,e=t.options,n=e.gridLines,a=e.ticks;if(e.display){var r=t.ctx,i=this.getIndexAngle(0),s=dt.options._parseFont(a);(e.angleLines.display||e.pointLabels.display)&&function(t){var e=t.ctx,n=t.options,a=n.angleLines,r=n.gridLines,i=n.pointLabels,s=hn(a.lineWidth,r.lineWidth),u=hn(a.color,r.color),o=yn(n);e.save(),e.lineWidth=s,e.strokeStyle=u,e.setLineDash&&(e.setLineDash(pn([a.borderDash,r.borderDash,[]])),e.lineDashOffset=pn([a.borderDashOffset,r.borderDashOffset,0]));var l=t.getDistanceFromCenterForValue(n.ticks.reverse?t.min:t.max),d=dt.options._parseFont(i);e.font=d.string,e.textBaseline="middle";for(var c=mn(t)-1;c>=0;c--){if(a.display&&s&&u){var f=t.getPointPosition(c,l);e.beginPath(),e.moveTo(t.xCenter,t.yCenter),e.lineTo(f.x,f.y),e.stroke()}if(i.display){var h=t.getPointPosition(c,l+(0===c?o/2:0)+5),g=gn(i.fontColor,c,ut.global.defaultFontColor);e.fillStyle=g;var p=t.getIndexAngle(c),b=dt.toDegrees(p);e.textAlign=xn(b),Tn(b,t._pointLabelSizes[c],h),_n(e,t.pointLabels[c]||"",h,d.lineHeight)}}e.restore()}(t),dt.each(t.ticks,(function(e,u){if(u>0||a.reverse){var o=t.getDistanceFromCenterForValue(t.ticksAsNumbers[u]);if(n.display&&0!==u&&function(t,e,n,a){var r,i=t.ctx,s=e.circular,u=mn(t),o=gn(e.color,a-1),l=gn(e.lineWidth,a-1);if((s||u)&&o&&l){if(i.save(),i.strokeStyle=o,i.lineWidth=l,i.setLineDash&&(i.setLineDash(e.borderDash||[]),i.lineDashOffset=e.borderDashOffset||0),i.beginPath(),s)i.arc(t.xCenter,t.yCenter,n,0,2*Math.PI);else{r=t.getPointPosition(0,n),i.moveTo(r.x,r.y);for(var d=1;d<u;d++)r=t.getPointPosition(d,n),i.lineTo(r.x,r.y)}i.closePath(),i.stroke(),i.restore()}}(t,n,o,u),a.display){var l=hn(a.fontColor,ut.global.defaultFontColor);if(r.font=s.string,r.save(),r.translate(t.xCenter,t.yCenter),r.rotate(i),a.showLabelBackdrop){var d=r.measureText(e).width;r.fillStyle=a.backdropColor,r.fillRect(-d/2-a.backdropPaddingX,-o-s.size/2-a.backdropPaddingY,d+2*a.backdropPaddingX,s.size+2*a.backdropPaddingY)}r.textAlign="center",r.textBaseline="middle",r.fillStyle=l,r.fillText(e,0,-o),r.restore()}}}))}}});On._defaults=bn;var Sn=dt.valueOrDefault,In=Number.MIN_SAFE_INTEGER||-9007199254740991,Nn=Number.MAX_SAFE_INTEGER||9007199254740991,Cn={millisecond:{common:!0,size:1,steps:[1,2,5,10,20,50,100,250,500]},second:{common:!0,size:1e3,steps:[1,2,5,10,15,30]},minute:{common:!0,size:6e4,steps:[1,2,5,10,15,30]},hour:{common:!0,size:36e5,steps:[1,2,3,6,12]},day:{common:!0,size:864e5,steps:[1,2,5]},week:{common:!1,size:6048e5,steps:[1,2,3,4]},month:{common:!0,size:2628e6,steps:[1,2,3]},quarter:{common:!1,size:7884e6,steps:[1,2,3,4]},year:{common:!0,size:3154e7}},Rn=Object.keys(Cn);function An(t,e){return t-e}function kn(t){var e,n,a,r={},i=[];for(e=0,n=t.length;e<n;++e)r[a=t[e]]||(r[a]=!0,i.push(a));return i}function En(t,e,n,a){var r=function(t,e,n){for(var a,r,i,s=0,u=t.length-1;s>=0&&s<=u;){if(i=t[a=s+u>>1],!(r=t[a-1]||null))return{lo:null,hi:i};if(i[e]<n)s=a+1;else{if(!(r[e]>n))return{lo:r,hi:i};u=a-1}}return{lo:i,hi:null}}(t,e,n),i=r.lo?r.hi?r.lo:t[t.length-2]:t[0],s=r.lo?r.hi?r.hi:t[t.length-1]:t[1],u=s[e]-i[e];return i[a]+(s[a]-i[a])*(u?(n-i[e])/u:0)}function Ln(t,e){var n=t._adapter,a=t.options.time,r=a.parser,i=r||a.format,s=e;return"function"==typeof r&&(s=r(s)),dt.isFinite(s)||(s="string"==typeof i?n.parse(s,i):n.parse(s)),null!==s?+s:(r||"function"!=typeof i||(s=i(e),dt.isFinite(s)||(s=n.parse(s))),s)}function Dn(t,e){if(dt.isNullOrUndef(e))return null;var n=t.options.time,a=Ln(t,t.getRightValue(e));return null===a||n.round&&(a=+t._adapter.startOf(a,n.round)),a}function Pn(t){for(var e=Rn.indexOf(t)+1,n=Rn.length;e<n;++e)if(Cn[Rn[e]].common)return Rn[e]}var Mn=nn.extend({initialize:function(){this.mergeTicksOptions(),nn.prototype.initialize.call(this)},update:function(){var t=this,e=t.options,n=e.time||(e.time={}),a=t._adapter=new Ze._date(e.adapters.date);return n.format&&console.warn("options.time.format is deprecated and replaced by options.time.parser."),dt.mergeIf(n.displayFormats,a.formats()),nn.prototype.update.apply(t,arguments)},getRightValue:function(t){return t&&void 0!==t.t&&(t=t.t),nn.prototype.getRightValue.call(this,t)},determineDataLimits:function(){var t,e,n,a,r,i,s=this,u=s.chart,o=s._adapter,l=s.options.time,d=l.unit||"day",c=Nn,f=In,h=[],g=[],p=[],b=u.data.labels||[];for(t=0,n=b.length;t<n;++t)p.push(Dn(s,b[t]));for(t=0,n=(u.data.datasets||[]).length;t<n;++t)if(u.isDatasetVisible(t))if(dt.isObject((r=u.data.datasets[t].data)[0]))for(g[t]=[],e=0,a=r.length;e<a;++e)i=Dn(s,r[e]),h.push(i),g[t][e]=i;else{for(e=0,a=p.length;e<a;++e)h.push(p[e]);g[t]=p.slice(0)}else g[t]=[];p.length&&(p=kn(p).sort(An),c=Math.min(c,p[0]),f=Math.max(f,p[p.length-1])),h.length&&(h=kn(h).sort(An),c=Math.min(c,h[0]),f=Math.max(f,h[h.length-1])),c=Dn(s,l.min)||c,f=Dn(s,l.max)||f,c=c===Nn?+o.startOf(Date.now(),d):c,f=f===In?+o.endOf(Date.now(),d)+1:f,s.min=Math.min(c,f),s.max=Math.max(c+1,f),s._horizontal=s.isHorizontal(),s._table=[],s._timestamps={data:h,datasets:g,labels:p}},buildTicks:function(){var t,e,n,a=this,r=a.min,i=a.max,s=a.options,u=s.time,o=[],l=[];switch(s.ticks.source){case"data":o=a._timestamps.data;break;case"labels":o=a._timestamps.labels;break;case"auto":default:o=function(t,e,n,a){var r,i=t._adapter,s=t.options,u=s.time,o=u.unit||function(t,e,n,a){var r,i,s=Rn.length;for(r=Rn.indexOf(t);r<s-1;++r)if((i=Cn[Rn[r]]).common&&Math.ceil((n-e)/((i.steps?i.steps[i.steps.length-1]:Nn)*i.size))<=a)return Rn[r];return Rn[s-1]}(u.minUnit,e,n,a),l=Pn(o),d=Sn(u.stepSize,u.unitStepSize),c="week"===o&&u.isoWeekday,f=s.ticks.major.enabled,h=Cn[o],g=e,p=n,b=[];for(d||(d=function(t,e,n,a){var r,i,s,u=e-t,o=Cn[n],l=o.size,d=o.steps;if(!d)return Math.ceil(u/(a*l));for(r=0,i=d.length;r<i&&(s=d[r],!(Math.ceil(u/(l*s))<=a));++r);return s}(e,n,o,a)),c&&(g=+i.startOf(g,"isoWeek",c),p=+i.startOf(p,"isoWeek",c)),g=+i.startOf(g,c?"day":o),(p=+i.startOf(p,c?"day":o))<n&&(p=+i.add(p,1,o)),r=g,f&&l&&!c&&!u.round&&(r=+i.startOf(r,l),r=+i.add(r,~~((g-r)/(h.size*d))*d,o));r<p;r=+i.add(r,d,o))b.push(+r);return b.push(+r),b}(a,r,i,a.getLabelCapacity(r))}for("ticks"===s.bounds&&o.length&&(r=o[0],i=o[o.length-1]),r=Dn(a,u.min)||r,i=Dn(a,u.max)||i,t=0,e=o.length;t<e;++t)(n=o[t])>=r&&n<=i&&l.push(n);return a.min=r,a.max=i,a._unit=u.unit||function(t,e,n,a,r){var i,s;for(i=Rn.length-1;i>=Rn.indexOf(n);i--)if(Cn[s=Rn[i]].common&&t._adapter.diff(r,a,s)>=e.length)return s;return Rn[n?Rn.indexOf(n):0]}(a,l,u.minUnit,a.min,a.max),a._majorUnit=Pn(a._unit),a._table=function(t,e,n,a){if("linear"===a||!t.length)return[{time:e,pos:0},{time:n,pos:1}];var r,i,s,u,o,l=[],d=[e];for(r=0,i=t.length;r<i;++r)(u=t[r])>e&&u<n&&d.push(u);for(d.push(n),r=0,i=d.length;r<i;++r)o=d[r+1],u=d[r],void 0!==(s=d[r-1])&&void 0!==o&&Math.round((o+s)/2)===u||l.push({time:u,pos:r/(i-1)});return l}(a._timestamps.data,r,i,s.distribution),a._offsets=function(t,e,n,a,r){var i,s,u=0,o=0;return r.offset&&e.length&&(r.time.min||(i=En(t,"time",e[0],"pos"),u=1===e.length?1-i:(En(t,"time",e[1],"pos")-i)/2),r.time.max||(s=En(t,"time",e[e.length-1],"pos"),o=1===e.length?s:(s-En(t,"time",e[e.length-2],"pos"))/2)),{start:u,end:o}}(a._table,l,0,0,s),s.ticks.reverse&&l.reverse(),function(t,e,n){var a,r,i,s,u=[];for(a=0,r=e.length;a<r;++a)i=e[a],s=!!n&&i===+t._adapter.startOf(i,n),u.push({value:i,major:s});return u}(a,l,a._majorUnit)},getLabelForIndex:function(t,e){var n=this,a=n._adapter,r=n.chart.data,i=n.options.time,s=r.labels&&t<r.labels.length?r.labels[t]:"",u=r.datasets[e].data[t];return dt.isObject(u)&&(s=n.getRightValue(u)),i.tooltipFormat?a.format(Ln(n,s),i.tooltipFormat):"string"==typeof s?s:a.format(Ln(n,s),i.displayFormats.datetime)},tickFormatFunction:function(t,e,n,a){var r=this._adapter,i=this.options,s=i.time.displayFormats,u=s[this._unit],o=this._majorUnit,l=s[o],d=+r.startOf(t,o),c=i.ticks.major,f=c.enabled&&o&&l&&t===d,h=r.format(t,a||(f?l:u)),g=f?c:i.ticks.minor,p=Sn(g.callback,g.userCallback);return p?p(h,e,n):h},convertTicksToLabels:function(t){var e,n,a=[];for(e=0,n=t.length;e<n;++e)a.push(this.tickFormatFunction(t[e].value,e,t));return a},getPixelForOffset:function(t){var e=this,n=e.options.ticks.reverse,a=e._horizontal?e.width:e.height,r=e._horizontal?n?e.right:e.left:n?e.bottom:e.top,i=En(e._table,"time",t,"pos"),s=a*(e._offsets.start+i)/(e._offsets.start+1+e._offsets.end);return n?r-s:r+s},getPixelForValue:function(t,e,n){var a=null;if(void 0!==e&&void 0!==n&&(a=this._timestamps.datasets[n][e]),null===a&&(a=Dn(this,t)),null!==a)return this.getPixelForOffset(a)},getPixelForTick:function(t){var e=this.getTicks();return t>=0&&t<e.length?this.getPixelForOffset(e[t].value):null},getValueForPixel:function(t){var e=this,n=e._horizontal?e.width:e.height,a=En(e._table,"pos",(n?(t-(e._horizontal?e.left:e.top))/n:0)*(e._offsets.start+1+e._offsets.start)-e._offsets.end,"time");return e._adapter._create(a)},getLabelWidth:function(t){var e=this.options.ticks,n=this.ctx.measureText(t).width,a=dt.toRadians(e.maxRotation),r=Math.cos(a),i=Math.sin(a);return n*r+Sn(e.fontSize,ut.global.defaultFontSize)*i},getLabelCapacity:function(t){var e=this,n=e.tickFormatFunction(t,0,[],e.options.time.displayFormats.millisecond),a=e.getLabelWidth(n),r=e.isHorizontal()?e.width:e.height,i=Math.floor(r/a);return i>0?i:1}});Mn._defaults={position:"bottom",distribution:"linear",bounds:"data",adapters:{},time:{parser:!1,format:!1,unit:!1,round:!1,displayFormat:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{autoSkip:!1,source:"auto",major:{enabled:!1}}};var qn={category:an,linear:on,logarithmic:fn,radialLinear:On,time:Mn},jn={datetime:"MMM D, YYYY, h:mm:ss a",millisecond:"h:mm:ss.SSS a",second:"h:mm:ss a",minute:"h:mm a",hour:"hA",day:"MMM D",week:"ll",month:"MMM YYYY",quarter:"[Q]Q - YYYY",year:"YYYY"};Ze._date.override("function"==typeof t?{_id:"moment",formats:function(){return jn},parse:function(e,n){return"string"==typeof e&&"string"==typeof n?e=t(e,n):e instanceof t||(e=t(e)),e.isValid()?e.valueOf():null},format:function(e,n){return t(e).format(n)},add:function(e,n,a){return t(e).add(n,a).valueOf()},diff:function(e,n,a){return t.duration(t(e).diff(t(n))).as(a)},startOf:function(e,n,a){return e=t(e),"isoWeek"===n?e.isoWeekday(a).valueOf():e.startOf(n).valueOf()},endOf:function(e,n){return t(e).endOf(n).valueOf()},_create:function(e){return t(e)}}:{}),ut._set("global",{plugins:{filler:{propagate:!0}}});var Fn={dataset:function(t){var e=t.fill,n=t.chart,a=n.getDatasetMeta(e),r=a&&n.isDatasetVisible(e)&&a.dataset._children||[],i=r.length||0;return i?function(t,e){return e<i&&r[e]._view||null}:null},boundary:function(t){var e=t.boundary,n=e?e.x:null,a=e?e.y:null;return function(t){return{x:null===n?t.x:n,y:null===a?t.y:a}}}};function Vn(t,e,n){var a,r=t._model||{},i=r.fill;if(void 0===i&&(i=!!r.backgroundColor),!1===i||null===i)return!1;if(!0===i)return"origin";if(a=parseFloat(i,10),isFinite(a)&&Math.floor(a)===a)return"-"!==i[0]&&"+"!==i[0]||(a=e+a),!(a===e||a<0||a>=n)&&a;switch(i){case"bottom":return"start";case"top":return"end";case"zero":return"origin";case"origin":case"start":case"end":return i;default:return!1}}function Gn(t){var e,n=t.el._model||{},a=t.el._scale||{},r=t.fill,i=null;if(isFinite(r))return null;if("start"===r?i=void 0===n.scaleBottom?a.bottom:n.scaleBottom:"end"===r?i=void 0===n.scaleTop?a.top:n.scaleTop:void 0!==n.scaleZero?i=n.scaleZero:a.getBasePosition?i=a.getBasePosition():a.getBasePixel&&(i=a.getBasePixel()),null!=i){if(void 0!==i.x&&void 0!==i.y)return i;if(dt.isFinite(i))return{x:(e=a.isHorizontal())?i:null,y:e?null:i}}return null}function Bn(t,e,n){var a,r=t[e].fill,i=[e];if(!n)return r;for(;!1!==r&&-1===i.indexOf(r);){if(!isFinite(r))return r;if(!(a=t[r]))return!1;if(a.visible)return r;i.push(r),r=a.fill}return!1}function zn(t){var e=t.fill,n="dataset";return!1===e?null:(isFinite(e)||(n="boundary"),Fn[n](t))}function Yn(t){return t&&!t.skip}function Hn(t,e,n,a,r){var i;if(a&&r){for(t.moveTo(e[0].x,e[0].y),i=1;i<a;++i)dt.canvas.lineTo(t,e[i-1],e[i]);for(t.lineTo(n[r-1].x,n[r-1].y),i=r-1;i>0;--i)dt.canvas.lineTo(t,n[i],n[i-1],!0)}}var Un={id:"filler",afterDatasetsUpdate:function(t,e){var n,a,r,i,s=(t.data.datasets||[]).length,u=e.propagate,o=[];for(a=0;a<s;++a)i=null,(r=(n=t.getDatasetMeta(a)).dataset)&&r._model&&r instanceof qt.Line&&(i={visible:t.isDatasetVisible(a),fill:Vn(r,a,s),chart:t,el:r}),n.$filler=i,o.push(i);for(a=0;a<s;++a)(i=o[a])&&(i.fill=Bn(o,a,u),i.boundary=Gn(i),i.mapper=zn(i))},beforeDatasetDraw:function(t,e){var n=e.meta.$filler;if(n){var a=t.ctx,r=n.el,i=r._view,s=r._children||[],u=n.mapper,o=i.backgroundColor||ut.global.defaultColor;u&&o&&s.length&&(dt.canvas.clipArea(a,t.chartArea),function(t,e,n,a,r,i){var s,u,o,l,d,c,f,h=e.length,g=a.spanGaps,p=[],b=[],m=0,y=0;for(t.beginPath(),s=0,u=h+!!i;s<u;++s)d=n(l=e[o=s%h]._view,o,a),c=Yn(l),f=Yn(d),c&&f?(m=p.push(l),y=b.push(d)):m&&y&&(g?(c&&p.push(l),f&&b.push(d)):(Hn(t,p,b,m,y),m=y=0,p=[],b=[]));Hn(t,p,b,m,y),t.closePath(),t.fillStyle=r,t.fill()}(a,s,u,i,o,r._loop),dt.canvas.unclipArea(a))}}},Wn=dt.noop,Kn=dt.valueOrDefault;function $n(t,e){return t.usePointStyle&&t.boxWidth>e?e:t.boxWidth}ut._set("global",{legend:{display:!0,position:"top",fullWidth:!0,reverse:!1,weight:1e3,onClick:function(t,e){var n=e.datasetIndex,a=this.chart,r=a.getDatasetMeta(n);r.hidden=null===r.hidden?!a.data.datasets[n].hidden:null,a.update()},onHover:null,onLeave:null,labels:{boxWidth:40,padding:10,generateLabels:function(t){var e=t.data;return dt.isArray(e.datasets)?e.datasets.map((function(e,n){return{text:e.label,fillStyle:dt.isArray(e.backgroundColor)?e.backgroundColor[0]:e.backgroundColor,hidden:!t.isDatasetVisible(n),lineCap:e.borderCapStyle,lineDash:e.borderDash,lineDashOffset:e.borderDashOffset,lineJoin:e.borderJoinStyle,lineWidth:e.borderWidth,strokeStyle:e.borderColor,pointStyle:e.pointStyle,datasetIndex:n}}),this):[]}}},legendCallback:function(t){var e=[];e.push('<ul class="'+t.id+'-legend">');for(var n=0;n<t.data.datasets.length;n++)e.push('<li><span style="background-color:'+t.data.datasets[n].backgroundColor+'"></span>'),t.data.datasets[n].label&&e.push(t.data.datasets[n].label),e.push("</li>");return e.push("</ul>"),e.join("")}});var Zn=gt.extend({initialize:function(t){dt.extend(this,t),this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1},beforeUpdate:Wn,update:function(t,e,n){var a=this;return a.beforeUpdate(),a.maxWidth=t,a.maxHeight=e,a.margins=n,a.beforeSetDimensions(),a.setDimensions(),a.afterSetDimensions(),a.beforeBuildLabels(),a.buildLabels(),a.afterBuildLabels(),a.beforeFit(),a.fit(),a.afterFit(),a.afterUpdate(),a.minSize},afterUpdate:Wn,beforeSetDimensions:Wn,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:Wn,beforeBuildLabels:Wn,buildLabels:function(){var t=this,e=t.options.labels||{},n=dt.callback(e.generateLabels,[t.chart],t)||[];e.filter&&(n=n.filter((function(n){return e.filter(n,t.chart.data)}))),t.options.reverse&&n.reverse(),t.legendItems=n},afterBuildLabels:Wn,beforeFit:Wn,fit:function(){var t=this,e=t.options,n=e.labels,a=e.display,r=t.ctx,i=dt.options._parseFont(n),s=i.size,u=t.legendHitBoxes=[],o=t.minSize,l=t.isHorizontal();if(l?(o.width=t.maxWidth,o.height=a?10:0):(o.width=a?10:0,o.height=t.maxHeight),a)if(r.font=i.string,l){var d=t.lineWidths=[0],c=0;r.textAlign="left",r.textBaseline="top",dt.each(t.legendItems,(function(t,e){var a=$n(n,s)+s/2+r.measureText(t.text).width;(0===e||d[d.length-1]+a+n.padding>o.width)&&(c+=s+n.padding,d[d.length-(e>0?0:1)]=n.padding),u[e]={left:0,top:0,width:a,height:s},d[d.length-1]+=a+n.padding})),o.height+=c}else{var f=n.padding,h=t.columnWidths=[],g=n.padding,p=0,b=0,m=s+f;dt.each(t.legendItems,(function(t,e){var a=$n(n,s)+s/2+r.measureText(t.text).width;e>0&&b+m>o.height-f&&(g+=p+n.padding,h.push(p),p=0,b=0),p=Math.max(p,a),b+=m,u[e]={left:0,top:0,width:a,height:s}})),g+=p,h.push(p),o.width+=g}t.width=o.width,t.height=o.height},afterFit:Wn,isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},draw:function(){var t=this,e=t.options,n=e.labels,a=ut.global,r=a.defaultColor,i=a.elements.line,s=t.width,u=t.lineWidths;if(e.display){var o,l=t.ctx,d=Kn(n.fontColor,a.defaultFontColor),c=dt.options._parseFont(n),f=c.size;l.textAlign="left",l.textBaseline="middle",l.lineWidth=.5,l.strokeStyle=d,l.fillStyle=d,l.font=c.string;var h=$n(n,f),g=t.legendHitBoxes,p=t.isHorizontal();o=p?{x:t.left+(s-u[0])/2+n.padding,y:t.top+n.padding,line:0}:{x:t.left+n.padding,y:t.top+n.padding,line:0};var b=f+n.padding;dt.each(t.legendItems,(function(a,d){var c=l.measureText(a.text).width,m=h+f/2+c,y=o.x,v=o.y;p?d>0&&y+m+n.padding>t.left+t.minSize.width&&(v=o.y+=b,o.line++,y=o.x=t.left+(s-u[o.line])/2+n.padding):d>0&&v+b>t.top+t.minSize.height&&(y=o.x=y+t.columnWidths[o.line]+n.padding,v=o.y=t.top+n.padding,o.line++),function(t,n,a){if(!(isNaN(h)||h<=0)){l.save();var s=Kn(a.lineWidth,i.borderWidth);if(l.fillStyle=Kn(a.fillStyle,r),l.lineCap=Kn(a.lineCap,i.borderCapStyle),l.lineDashOffset=Kn(a.lineDashOffset,i.borderDashOffset),l.lineJoin=Kn(a.lineJoin,i.borderJoinStyle),l.lineWidth=s,l.strokeStyle=Kn(a.strokeStyle,r),l.setLineDash&&l.setLineDash(Kn(a.lineDash,i.borderDash)),e.labels&&e.labels.usePointStyle){var u=h*Math.SQRT2/2;dt.canvas.drawPoint(l,a.pointStyle,u,t+h/2,n+f/2)}else 0!==s&&l.strokeRect(t,n,h,f),l.fillRect(t,n,h,f);l.restore()}}(y,v,a),g[d].left=y,g[d].top=v,function(t,e,n,a){var r=f/2,i=h+r+t,s=e+r;l.fillText(n.text,i,s),n.hidden&&(l.beginPath(),l.lineWidth=2,l.moveTo(i,s),l.lineTo(i+a,s),l.stroke())}(y,v,a,c),p?o.x+=m+n.padding:o.y+=b}))}},_getLegendItemAt:function(t,e){var n,a,r,i=this;if(t>=i.left&&t<=i.right&&e>=i.top&&e<=i.bottom)for(r=i.legendHitBoxes,n=0;n<r.length;++n)if(t>=(a=r[n]).left&&t<=a.left+a.width&&e>=a.top&&e<=a.top+a.height)return i.legendItems[n];return null},handleEvent:function(t){var e,n=this,a=n.options,r="mouseup"===t.type?"click":t.type;if("mousemove"===r){if(!a.onHover&&!a.onLeave)return}else{if("click"!==r)return;if(!a.onClick)return}e=n._getLegendItemAt(t.x,t.y),"click"===r?e&&a.onClick&&a.onClick.call(n,t.native,e):(a.onLeave&&e!==n._hoveredItem&&(n._hoveredItem&&a.onLeave.call(n,t.native,n._hoveredItem),n._hoveredItem=e),a.onHover&&e&&a.onHover.call(n,t.native,e))}});function Jn(t,e){var n=new Zn({ctx:t.ctx,options:e,chart:t});ve.configure(t,n,e),ve.addBox(t,n),t.legend=n}var Qn={id:"legend",_element:Zn,beforeInit:function(t){var e=t.options.legend;e&&Jn(t,e)},beforeUpdate:function(t){var e=t.options.legend,n=t.legend;e?(dt.mergeIf(e,ut.global.legend),n?(ve.configure(t,n,e),n.options=e):Jn(t,e)):n&&(ve.removeBox(t,n),delete t.legend)},afterEvent:function(t,e){var n=t.legend;n&&n.handleEvent(e)}},Xn=dt.noop;ut._set("global",{title:{display:!1,fontStyle:"bold",fullWidth:!0,padding:10,position:"top",text:"",weight:2e3}});var ta=gt.extend({initialize:function(t){dt.extend(this,t),this.legendHitBoxes=[]},beforeUpdate:Xn,update:function(t,e,n){var a=this;return a.beforeUpdate(),a.maxWidth=t,a.maxHeight=e,a.margins=n,a.beforeSetDimensions(),a.setDimensions(),a.afterSetDimensions(),a.beforeBuildLabels(),a.buildLabels(),a.afterBuildLabels(),a.beforeFit(),a.fit(),a.afterFit(),a.afterUpdate(),a.minSize},afterUpdate:Xn,beforeSetDimensions:Xn,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:Xn,beforeBuildLabels:Xn,buildLabels:Xn,afterBuildLabels:Xn,beforeFit:Xn,fit:function(){var t=this,e=t.options,n=e.display,a=t.minSize,r=dt.isArray(e.text)?e.text.length:1,i=dt.options._parseFont(e),s=n?r*i.lineHeight+2*e.padding:0;t.isHorizontal()?(a.width=t.maxWidth,a.height=s):(a.width=s,a.height=t.maxHeight),t.width=a.width,t.height=a.height},afterFit:Xn,isHorizontal:function(){var t=this.options.position;return"top"===t||"bottom"===t},draw:function(){var t=this,e=t.ctx,n=t.options;if(n.display){var a,r,i,s=dt.options._parseFont(n),u=s.lineHeight,o=u/2+n.padding,l=0,d=t.top,c=t.left,f=t.bottom,h=t.right;e.fillStyle=dt.valueOrDefault(n.fontColor,ut.global.defaultFontColor),e.font=s.string,t.isHorizontal()?(r=c+(h-c)/2,i=d+o,a=h-c):(r="left"===n.position?c+o:h-o,i=d+(f-d)/2,a=f-d,l=Math.PI*("left"===n.position?-.5:.5)),e.save(),e.translate(r,i),e.rotate(l),e.textAlign="center",e.textBaseline="middle";var g=n.text;if(dt.isArray(g))for(var p=0,b=0;b<g.length;++b)e.fillText(g[b],0,p,a),p+=u;else e.fillText(g,0,0,a);e.restore()}}});function ea(t,e){var n=new ta({ctx:t.ctx,options:e,chart:t});ve.configure(t,n,e),ve.addBox(t,n),t.titleBlock=n}var na={},aa=Un,ra=Qn,ia={id:"title",_element:ta,beforeInit:function(t){var e=t.options.title;e&&ea(t,e)},beforeUpdate:function(t){var e=t.options.title,n=t.titleBlock;e?(dt.mergeIf(e,ut.global.title),n?(ve.configure(t,n,e),n.options=e):ea(t,e)):n&&(ve.removeBox(t,n),delete t.titleBlock)}};for(var sa in na.filler=aa,na.legend=ra,na.title=ia,We.helpers=dt,function(){function t(t,e,n){var a;return"string"==typeof t?(a=parseInt(t,10),-1!==t.indexOf("%")&&(a=a/100*e.parentNode[n])):a=t,a}function e(t){return null!=t&&"none"!==t}function n(n,a,r){var i=document.defaultView,s=dt._getParentNode(n),u=i.getComputedStyle(n)[a],o=i.getComputedStyle(s)[a],l=e(u),d=e(o),c=Number.POSITIVE_INFINITY;return l||d?Math.min(l?t(u,n,r):c,d?t(o,s,r):c):"none"}dt.where=function(t,e){if(dt.isArray(t)&&Array.prototype.filter)return t.filter(e);var n=[];return dt.each(t,(function(t){e(t)&&n.push(t)})),n},dt.findIndex=Array.prototype.findIndex?function(t,e,n){return t.findIndex(e,n)}:function(t,e,n){n=void 0===n?t:n;for(var a=0,r=t.length;a<r;++a)if(e.call(n,t[a],a,t))return a;return-1},dt.findNextWhere=function(t,e,n){dt.isNullOrUndef(n)&&(n=-1);for(var a=n+1;a<t.length;a++){var r=t[a];if(e(r))return r}},dt.findPreviousWhere=function(t,e,n){dt.isNullOrUndef(n)&&(n=t.length);for(var a=n-1;a>=0;a--){var r=t[a];if(e(r))return r}},dt.isNumber=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},dt.almostEquals=function(t,e,n){return Math.abs(t-e)<n},dt.almostWhole=function(t,e){var n=Math.round(t);return n-e<t&&n+e>t},dt.max=function(t){return t.reduce((function(t,e){return isNaN(e)?t:Math.max(t,e)}),Number.NEGATIVE_INFINITY)},dt.min=function(t){return t.reduce((function(t,e){return isNaN(e)?t:Math.min(t,e)}),Number.POSITIVE_INFINITY)},dt.sign=Math.sign?function(t){return Math.sign(t)}:function(t){return 0==(t=+t)||isNaN(t)?t:t>0?1:-1},dt.log10=Math.log10?function(t){return Math.log10(t)}:function(t){var e=Math.log(t)*Math.LOG10E,n=Math.round(e);return t===Math.pow(10,n)?n:e},dt.toRadians=function(t){return t*(Math.PI/180)},dt.toDegrees=function(t){return t*(180/Math.PI)},dt._decimalPlaces=function(t){if(dt.isFinite(t)){for(var e=1,n=0;Math.round(t*e)/e!==t;)e*=10,n++;return n}},dt.getAngleFromPoint=function(t,e){var n=e.x-t.x,a=e.y-t.y,r=Math.sqrt(n*n+a*a),i=Math.atan2(a,n);return i<-.5*Math.PI&&(i+=2*Math.PI),{angle:i,distance:r}},dt.distanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},dt.aliasPixel=function(t){return t%2==0?0:.5},dt._alignPixel=function(t,e,n){var a=t.currentDevicePixelRatio,r=n/2;return Math.round((e-r)*a)/a+r},dt.splineCurve=function(t,e,n,a){var r=t.skip?e:t,i=e,s=n.skip?e:n,u=Math.sqrt(Math.pow(i.x-r.x,2)+Math.pow(i.y-r.y,2)),o=Math.sqrt(Math.pow(s.x-i.x,2)+Math.pow(s.y-i.y,2)),l=u/(u+o),d=o/(u+o),c=a*(l=isNaN(l)?0:l),f=a*(d=isNaN(d)?0:d);return{previous:{x:i.x-c*(s.x-r.x),y:i.y-c*(s.y-r.y)},next:{x:i.x+f*(s.x-r.x),y:i.y+f*(s.y-r.y)}}},dt.EPSILON=Number.EPSILON||1e-14,dt.splineCurveMonotone=function(t){var e,n,a,r,i,s,u,o,l,d=(t||[]).map((function(t){return{model:t._model,deltaK:0,mK:0}})),c=d.length;for(e=0;e<c;++e)if(!(a=d[e]).model.skip){if(n=e>0?d[e-1]:null,(r=e<c-1?d[e+1]:null)&&!r.model.skip){var f=r.model.x-a.model.x;a.deltaK=0!==f?(r.model.y-a.model.y)/f:0}a.mK=!n||n.model.skip?a.deltaK:!r||r.model.skip?n.deltaK:this.sign(n.deltaK)!==this.sign(a.deltaK)?0:(n.deltaK+a.deltaK)/2}for(e=0;e<c-1;++e)r=d[e+1],(a=d[e]).model.skip||r.model.skip||(dt.almostEquals(a.deltaK,0,this.EPSILON)?a.mK=r.mK=0:(i=a.mK/a.deltaK,s=r.mK/a.deltaK,(o=Math.pow(i,2)+Math.pow(s,2))<=9||(u=3/Math.sqrt(o),a.mK=i*u*a.deltaK,r.mK=s*u*a.deltaK)));for(e=0;e<c;++e)(a=d[e]).model.skip||(r=e<c-1?d[e+1]:null,(n=e>0?d[e-1]:null)&&!n.model.skip&&(a.model.controlPointPreviousX=a.model.x-(l=(a.model.x-n.model.x)/3),a.model.controlPointPreviousY=a.model.y-l*a.mK),r&&!r.model.skip&&(a.model.controlPointNextX=a.model.x+(l=(r.model.x-a.model.x)/3),a.model.controlPointNextY=a.model.y+l*a.mK))},dt.nextItem=function(t,e,n){return n?e>=t.length-1?t[0]:t[e+1]:e>=t.length-1?t[t.length-1]:t[e+1]},dt.previousItem=function(t,e,n){return n?e<=0?t[t.length-1]:t[e-1]:e<=0?t[0]:t[e-1]},dt.niceNum=function(t,e){var n=Math.floor(dt.log10(t)),a=t/Math.pow(10,n);return(e?a<1.5?1:a<3?2:a<7?5:10:a<=1?1:a<=2?2:a<=5?5:10)*Math.pow(10,n)},dt.requestAnimFrame="undefined"==typeof window?function(t){t()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){return window.setTimeout(t,1e3/60)},dt.getRelativePosition=function(t,e){var n,a,r=t.originalEvent||t,i=t.target||t.srcElement,s=i.getBoundingClientRect(),u=r.touches;u&&u.length>0?(n=u[0].clientX,a=u[0].clientY):(n=r.clientX,a=r.clientY);var o=parseFloat(dt.getStyle(i,"padding-left")),l=parseFloat(dt.getStyle(i,"padding-top")),d=parseFloat(dt.getStyle(i,"padding-right")),c=parseFloat(dt.getStyle(i,"padding-bottom")),f=s.bottom-s.top-l-c;return{x:n=Math.round((n-s.left-o)/(s.right-s.left-o-d)*i.width/e.currentDevicePixelRatio),y:a=Math.round((a-s.top-l)/f*i.height/e.currentDevicePixelRatio)}},dt.getConstraintWidth=function(t){return n(t,"max-width","clientWidth")},dt.getConstraintHeight=function(t){return n(t,"max-height","clientHeight")},dt._calculatePadding=function(t,e,n){return(e=dt.getStyle(t,e)).indexOf("%")>-1?n*parseInt(e,10)/100:parseInt(e,10)},dt._getParentNode=function(t){var e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e},dt.getMaximumWidth=function(t){var e=dt._getParentNode(t);if(!e)return t.clientWidth;var n=e.clientWidth,a=n-dt._calculatePadding(e,"padding-left",n)-dt._calculatePadding(e,"padding-right",n),r=dt.getConstraintWidth(t);return isNaN(r)?a:Math.min(a,r)},dt.getMaximumHeight=function(t){var e=dt._getParentNode(t);if(!e)return t.clientHeight;var n=e.clientHeight,a=n-dt._calculatePadding(e,"padding-top",n)-dt._calculatePadding(e,"padding-bottom",n),r=dt.getConstraintHeight(t);return isNaN(r)?a:Math.min(a,r)},dt.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,null).getPropertyValue(e)},dt.retinaScale=function(t,e){var n=t.currentDevicePixelRatio=e||"undefined"!=typeof window&&window.devicePixelRatio||1;if(1!==n){var a=t.canvas,r=t.height,i=t.width;a.height=r*n,a.width=i*n,t.ctx.scale(n,n),a.style.height||a.style.width||(a.style.height=r+"px",a.style.width=i+"px")}},dt.fontString=function(t,e,n){return e+" "+t+"px "+n},dt.longestText=function(t,e,n,a){var r=(a=a||{}).data=a.data||{},i=a.garbageCollect=a.garbageCollect||[];a.font!==e&&(r=a.data={},i=a.garbageCollect=[],a.font=e),t.font=e;var s=0;dt.each(n,(function(e){null!=e&&!0!==dt.isArray(e)?s=dt.measureText(t,r,i,s,e):dt.isArray(e)&&dt.each(e,(function(e){null==e||dt.isArray(e)||(s=dt.measureText(t,r,i,s,e))}))}));var u=i.length/2;if(u>n.length){for(var o=0;o<u;o++)delete r[i[o]];i.splice(0,u)}return s},dt.measureText=function(t,e,n,a,r){var i=e[r];return i||(i=e[r]=t.measureText(r).width,n.push(r)),i>a&&(a=i),a},dt.numberOfLabelLines=function(t){var e=1;return dt.each(t,(function(t){dt.isArray(t)&&t.length>e&&(e=t.length)})),e},dt.color=W?function(t){return t instanceof CanvasGradient&&(t=ut.global.defaultColor),W(t)}:function(t){return console.error("Color.js not found!"),t},dt.getHoverColor=function(t){return t instanceof CanvasPattern||t instanceof CanvasGradient?t:dt.color(t).saturate(.5).darken(.1).rgbString()}}(),We._adapters=Ze,We.Animation=bt,We.animationService=mt,We.controllers=ue,We.DatasetController=Tt,We.defaults=ut,We.Element=gt,We.elements=qt,We.Interaction=ge,We.layouts=ve,We.platform=Ae,We.plugins=ke,We.Scale=nn,We.scaleService=Ee,We.Ticks=Je,We.Tooltip=Ve,We.helpers.each(qn,(function(t,e){We.scaleService.registerScaleType(e,t,t._defaults)})),na)na.hasOwnProperty(sa)&&We.plugins.register(na[sa]);We.platform.initialize();var ua=We;return"undefined"!=typeof window&&(window.Chart=We),We.Chart=We,We.Legend=na.legend._element,We.Title=na.title._element,We.pluginService=We.plugins,We.PluginBase=We.Element.extend({}),We.canvasHelpers=We.helpers.canvas,We.layoutService=We.layouts,We.LinearScaleBase=sn,We.helpers.each(["Bar","Bubble","Doughnut","Line","PolarArea","Radar","Scatter"],(function(t){We[t]=function(e,n){return new We(e,We.helpers.merge(n||{},{type:t.charAt(0).toLowerCase()+t.slice(1)}))}})),ua}(function(){try{return n("wd/R")}catch(t){}}())},MOZO:function(t,e,n){var a=n("0GLT"),r=n("VLqJ"),i=n("fqHM"),s=n("6II+");t.exports=function(t,e){return a(t)?t:r(t,e)?[t]:i(s(t))}},MP8s:function(t,e,n){"use strict";n.d(e,"a",(function(){return T}));var a=n("8Y7J"),r=n("2vnA"),i=n("f95s"),s=n("mfoh"),u=n("X+05"),o=n("8SuI"),l=n.n(o),d=n("gBXJ"),c=n.n(d),f=n("LgIp"),h=n.n(f),g=n("n9Vz"),p=n.n(g),b=n("372+"),m=n.n(b),y=n("Q7RW"),v=n.n(y),x=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},_=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},T=function(){function t(){this.options=new s.b,this.eventNames=Object.keys(u.a),this.expandedNodeIds={},this.selectedLeafNodeIds={},this.activeNodeIds={},this.hiddenNodeIds={},this.focusedNodeId=null,this.firstUpdate=!0,this.subscriptions=[]}var e;return e=t,t.prototype.fireEvent=function(t){t.treeModel=this,this.events[t.eventName].emit(t),this.events.event.emit(t)},t.prototype.subscribe=function(t,e){var n=this.events[t].subscribe(e);this.subscriptions.push(n)},t.prototype.getFocusedNode=function(){return this.focusedNode},t.prototype.getActiveNode=function(){return this.activeNodes[0]},t.prototype.getActiveNodes=function(){return this.activeNodes},t.prototype.getVisibleRoots=function(){return this.virtualRoot.visibleChildren},t.prototype.getFirstRoot=function(t){return void 0===t&&(t=!1),l()(t?this.getVisibleRoots():this.roots)},t.prototype.getLastRoot=function(t){return void 0===t&&(t=!1),c()(t?this.getVisibleRoots():this.roots)},Object.defineProperty(t.prototype,"isFocused",{get:function(){return e.focusedTree===this},enumerable:!0,configurable:!0}),t.prototype.isNodeFocused=function(t){return this.focusedNode===t},t.prototype.isEmptyTree=function(){return this.roots&&0===this.roots.length},Object.defineProperty(t.prototype,"focusedNode",{get:function(){return this.focusedNodeId?this.getNodeById(this.focusedNodeId):null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"expandedNodes",{get:function(){var t=this,e=Object.keys(this.expandedNodeIds).filter((function(e){return t.expandedNodeIds[e]})).map((function(e){return t.getNodeById(e)}));return h()(e)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"activeNodes",{get:function(){var t=this,e=Object.keys(this.activeNodeIds).filter((function(e){return t.activeNodeIds[e]})).map((function(e){return t.getNodeById(e)}));return h()(e)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hiddenNodes",{get:function(){var t=this,e=Object.keys(this.hiddenNodeIds).filter((function(e){return t.hiddenNodeIds[e]})).map((function(e){return t.getNodeById(e)}));return h()(e)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"selectedLeafNodes",{get:function(){var t=this,e=Object.keys(this.selectedLeafNodeIds).filter((function(e){return t.selectedLeafNodeIds[e]})).map((function(e){return t.getNodeById(e)}));return h()(e)},enumerable:!0,configurable:!0}),t.prototype.getNodeByPath=function(t,e){if(void 0===e&&(e=null),!t)return null;if(e=e||this.virtualRoot,0===t.length)return e;if(!e.children)return null;var n=t.shift(),a=p()(e.children,{id:n});return a?this.getNodeByPath(t,a):null},t.prototype.getNodeById=function(t){var e=t.toString();return this.getNodeBy((function(t){return t.id.toString()===e}))},t.prototype.getNodeBy=function(t,e){if(void 0===e&&(e=null),!(e=e||this.virtualRoot).children)return null;var n=p()(e.children,t);if(n)return n;for(var a=0,r=e.children;a<r.length;a++){var i=this.getNodeBy(t,r[a]);if(i)return i}},t.prototype.isExpanded=function(t){return this.expandedNodeIds[t.id]},t.prototype.isHidden=function(t){return this.hiddenNodeIds[t.id]},t.prototype.isActive=function(t){return this.activeNodeIds[t.id]},t.prototype.isSelected=function(t){return this.selectedLeafNodeIds[t.id]},t.prototype.ngOnDestroy=function(){this.dispose(),this.unsubscribeAll()},t.prototype.dispose=function(){this.virtualRoot&&this.virtualRoot.dispose()},t.prototype.unsubscribeAll=function(){this.subscriptions.forEach((function(t){return t.unsubscribe()})),this.subscriptions=[]},t.prototype.setData=function(t){var e=t.nodes,n=t.options,a=void 0===n?null:n,r=t.events,i=void 0===r?null:r;a&&(this.options=new s.b(a)),i&&(this.events=i),e&&(this.nodes=e),this.update()},t.prototype.update=function(){var t,e=((t={id:this.options.rootId,virtual:!0})[this.options.childrenField]=this.nodes,t);this.dispose(),this.virtualRoot=new i.a(e,null,this,0),this.roots=this.virtualRoot.children,this.firstUpdate?this.roots&&(this.firstUpdate=!1,this._calculateExpandedNodes()):this.fireEvent({eventName:u.a.updateData})},t.prototype.setFocusedNode=function(t){this.focusedNodeId=t?t.id:null},t.prototype.setFocus=function(t){e.focusedTree=t?this:null},t.prototype.doForAll=function(t){this.roots.forEach((function(e){return e.doForAll(t)}))},t.prototype.focusNextNode=function(){var t=this.getFocusedNode(),e=t?t.findNextNode(!0,!0):this.getFirstRoot(!0);e&&e.focus()},t.prototype.focusPreviousNode=function(){var t=this.getFocusedNode(),e=t?t.findPreviousNode(!0):this.getLastRoot(!0);e&&e.focus()},t.prototype.focusDrillDown=function(){var t=this.getFocusedNode();if(t&&t.isCollapsed&&t.hasChildren)t.toggleExpanded();else{var e=t?t.getFirstChild(!0):this.getFirstRoot(!0);e&&e.focus()}},t.prototype.focusDrillUp=function(){var t=this.getFocusedNode();if(t)if(t.isExpanded)t.toggleExpanded();else{var e=t.realParent;e&&e.focus()}},t.prototype.setActiveNode=function(t,e,n){void 0===n&&(n=!1),n?this._setActiveNodeMulti(t,e):this._setActiveNodeSingle(t,e),e?(t.focus(this.options.scrollOnActivate),this.fireEvent({eventName:u.a.activate,node:t}),this.fireEvent({eventName:u.a.nodeActivate,node:t})):(this.fireEvent({eventName:u.a.deactivate,node:t}),this.fireEvent({eventName:u.a.nodeDeactivate,node:t}))},t.prototype.setSelectedNode=function(t,e){var n;this.selectedLeafNodeIds=Object.assign({},this.selectedLeafNodeIds,((n={})[t.id]=e,n)),e?(t.focus(),this.fireEvent({eventName:u.a.select,node:t})):this.fireEvent({eventName:u.a.deselect,node:t})},t.prototype.setExpandedNode=function(t,e){var n;this.expandedNodeIds=Object.assign({},this.expandedNodeIds,((n={})[t.id]=e,n)),this.fireEvent({eventName:u.a.toggleExpanded,node:t,isExpanded:e})},t.prototype.expandAll=function(){this.roots.forEach((function(t){return t.expandAll()}))},t.prototype.collapseAll=function(){this.roots.forEach((function(t){return t.collapseAll()}))},t.prototype.setIsHidden=function(t,e){var n;this.hiddenNodeIds=Object.assign({},this.hiddenNodeIds,((n={})[t.id]=e,n))},t.prototype.setHiddenNodeIds=function(t){this.hiddenNodeIds=t.reduce((function(t,e){var n;return Object.assign(t,((n={})[e]=!0,n))}),{})},t.prototype.performKeyAction=function(t,e){var n=this.options.actionMapping.keys[e.keyCode];return!!n&&(e.preventDefault(),n(this,t,e),!0)},t.prototype.filterNodes=function(t,e){var n,a=this;if(void 0===e&&(e=!0),!t)return this.clearFilter();if(m()(t))n=function(e){return-1!==e.displayField.toLowerCase().indexOf(t.toLowerCase())};else{if(!v()(t))return console.error("Don't know what to do with filter",t),void console.error("Should be either a string or function");n=t}var r={};this.roots.forEach((function(t){return a._filterNode(r,t,n,e)})),this.hiddenNodeIds=r,this.fireEvent({eventName:u.a.changeFilter})},t.prototype.clearFilter=function(){this.hiddenNodeIds={},this.fireEvent({eventName:u.a.changeFilter})},t.prototype.moveNode=function(t,e){var n=t.getIndexInParent(),a=t.parent;if(this.canMoveNode(t,e,n)){var r=a.getField("children");e.parent.getField("children")||e.parent.setField("children",[]);var i=e.parent.getField("children"),s=r.splice(n,1)[0],o=a===e.parent&&e.index>n?e.index-1:e.index;i.splice(o,0,s),a.treeModel.update(),e.parent.treeModel!==a.treeModel&&e.parent.treeModel.update(),this.fireEvent({eventName:u.a.moveNode,node:s,to:{parent:e.parent.data,index:o},from:{parent:a.data,index:n}})}},t.prototype.copyNode=function(t,e){var n=t.getIndexInParent();if(this.canMoveNode(t,e,n)){e.parent.getField("children")||e.parent.setField("children",[]);var a=e.parent.getField("children"),r=this.options.getNodeClone(t);a.splice(e.index,0,r),t.treeModel.update(),e.parent.treeModel!==t.treeModel&&e.parent.treeModel.update(),this.fireEvent({eventName:u.a.copyNode,node:r,to:{parent:e.parent.data,index:e.index}})}},t.prototype.getState=function(){return{expandedNodeIds:this.expandedNodeIds,selectedLeafNodeIds:this.selectedLeafNodeIds,activeNodeIds:this.activeNodeIds,hiddenNodeIds:this.hiddenNodeIds,focusedNodeId:this.focusedNodeId}},t.prototype.setState=function(t){t&&Object.assign(this,{expandedNodeIds:t.expandedNodeIds||{},selectedLeafNodeIds:t.selectedLeafNodeIds||{},activeNodeIds:t.activeNodeIds||{},hiddenNodeIds:t.hiddenNodeIds||{},focusedNodeId:t.focusedNodeId})},t.prototype.subscribeToState=function(t){var e=this;Object(r.b)((function(){return t(e.getState())}))},t.prototype.canMoveNode=function(t,e,n){return void 0===n&&(n=void 0),n||t.getIndexInParent(),(t.parent!==e.parent||n!==e.index)&&!e.parent.isDescendantOf(t)},t.prototype.calculateExpandedNodes=function(){this._calculateExpandedNodes()},t.prototype._filterNode=function(t,e,n,a){var r=this,i=n(e);return e.children&&e.children.forEach((function(e){r._filterNode(t,e,n,a)&&(i=!0)})),i||(t[e.id]=!0),a&&i&&e.ensureVisible(),i},t.prototype._calculateExpandedNodes=function(t){var e,n=this;void 0===t&&(t=null),(t=t||this.virtualRoot).data[this.options.isExpandedField]&&(this.expandedNodeIds=Object.assign({},this.expandedNodeIds,((e={})[t.id]=!0,e))),t.children&&t.children.forEach((function(t){return n._calculateExpandedNodes(t)}))},t.prototype._setActiveNodeSingle=function(t,e){var n,a=this;this.activeNodes.filter((function(e){return e!==t})).forEach((function(t){a.fireEvent({eventName:u.a.deactivate,node:t}),a.fireEvent({eventName:u.a.nodeDeactivate,node:t})})),this.activeNodeIds=e?((n={})[t.id]=!0,n):{}},t.prototype._setActiveNodeMulti=function(t,e){var n;this.activeNodeIds=Object.assign({},this.activeNodeIds,((n={})[t.id]=e,n))},t.focusedTree=null,x([r.d,_("design:type",Array)],t.prototype,"roots",void 0),x([r.d,_("design:type",Object)],t.prototype,"expandedNodeIds",void 0),x([r.d,_("design:type",Object)],t.prototype,"selectedLeafNodeIds",void 0),x([r.d,_("design:type",Object)],t.prototype,"activeNodeIds",void 0),x([r.d,_("design:type",Object)],t.prototype,"hiddenNodeIds",void 0),x([r.d,_("design:type",Object)],t.prototype,"focusedNodeId",void 0),x([r.d,_("design:type",i.a)],t.prototype,"virtualRoot",void 0),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"focusedNode",null),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"expandedNodes",null),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"activeNodes",null),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"hiddenNodes",null),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"selectedLeafNodes",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setData",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"update",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setFocusedNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setFocus",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"doForAll",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"focusNextNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"focusPreviousNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"focusDrillDown",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"focusDrillUp",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object,Object]),_("design:returntype",void 0)],t.prototype,"setActiveNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"setSelectedNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"setExpandedNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"expandAll",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"collapseAll",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"setIsHidden",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setHiddenNodeIds",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"filterNodes",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"clearFilter",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"moveNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"copyNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setState",null),e=x([Object(a.Injectable)()],t)}()},MaPG:function(t,e,n){var a=n("8a/S"),r=n("3a3P"),i=n("VLqJ"),s=n("Wv1A");t.exports=function(t){return i(t)?a(s(t)):r(t)}},MdoF:function(t,e,n){"use strict";n.d(e,"b",(function(){return s})),n.d(e,"c",(function(){return l})),n.d(e,"a",(function(){return c}));var a=n("8Y7J"),r=n("CNMR"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"button",[["aria-label","Close"],["class","close"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.close()&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["×"])),(t()(),a["ɵeld"](3,0,null,null,1,"span",[["class","sr-only"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Close"]))],null,null)}function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"div",[["role","alert"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,u)),a["ɵdid"](4,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵncd"](null,0)],(function(t,e){var n=e.component;t(e,2,0,"alert alert-"+n.type,n.classes),t(e,4,0,n.dismissible)}),null)}function l(t){return a["ɵvid"](2,[(t()(),a["ɵand"](16777216,null,null,1,null,o)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.isOpen)}),null)}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"alert",[],null,null,null,l,s)),a["ɵdid"](1,114688,null,0,r.a,[r.b,a.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}var c=a["ɵccf"]("alert,bs-alert",r.a,d,{type:"type",dismissible:"dismissible",dismissOnTimeout:"dismissOnTimeout",isOpen:"isOpen"},{onClose:"onClose",onClosed:"onClosed"},["*"])},MuvH:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=n("IheW"),i=n("pL04");let s=(()=>{class t{constructor(t){this.http=t}findValue(t,e){if(t.value)return t.value.find(t=>t.section===e)}getValue(t,e){let n=this.findValue(t,e);if(!n){const a=e.indexOf(".");-1!==a&&(n=this.findValue(t,e.substring(0,a)))}return n||(n=this.findValue(t,"global")),n?n.value:t.default}getConfigData(){return this.http.get("api/cluster_conf/")}get(t){return this.http.get("api/cluster_conf/"+t)}filter(t){return this.http.get("api/cluster_conf/filter?names="+t.join(","))}create(t){return this.http.post("api/cluster_conf/",t)}delete(t,e){return this.http.delete(`api/cluster_conf/${t}?section=${e}`)}bulkCreate(t){return this.http.put("api/cluster_conf/",t)}}return t.ngInjectableDef=a["ɵɵdefineInjectable"]({factory:function(){return new t(a["ɵɵinject"](r.c))},token:t,providedIn:i.a}),t})()},Mxhz:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("LRne"),r=n("CqXF"),i=n("JIr8"),s=n("8Y7J"),u=n("IheW"),o=n("pL04");let l=(()=>{class t{constructor(t){this.http=t}list(){return this.http.get("api/user")}delete(t){return this.http.delete("api/user/"+t)}get(t){return this.http.get("api/user/"+t)}create(t){return this.http.post("api/user",t)}update(t){return this.http.put("api/user/"+t.username,t)}changePassword(t,e,n){return this.http.post(`api/user/${t}/change_password`,{old_password:e,new_password:n})}validateUserName(t){return this.get(t).pipe(Object(r.a)(!0),Object(i.a)(t=>(t.preventDefault(),Object(a.a)(!1))))}validatePassword(t,e=null,n=null){return this.http.post("api/user/validate_password",{password:t,username:e,old_password:n})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](u.c))},token:t,providedIn:o.a}),t})()},"N+g0":function(t,e,n){var a=n("g6v/"),r=n("m/L8"),i=n("glrk"),s=n("33Wh");t.exports=a?Object.defineProperties:function(t,e){i(t);for(var n,a=s(e),u=a.length,o=0;u>o;)r.f(t,n=a[o++],e[n]);return t}},"NC/Y":function(t,e,n){var a=n("0GbY");t.exports=a("navigator","userAgent")||""},NEZu:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e,n,a){this.customColors={backgroundColor:void 0,borderColor:void 0},this.checkOffset=!1,this.chartEl=t.nativeElement,this.getStyleLeft=n,this.getStyleTop=a,this.tooltipEl=e.nativeElement}customTooltips(t){if(0===t.opacity)return void(this.tooltipEl.style.opacity=0);if(this.tooltipEl.classList.remove("above","below","no-transform"),this.tooltipEl.classList.add(t.yAlign?t.yAlign:"no-transform"),t.body){const e=t.title||[],n=t.body.map(t=>t.lines);let a="<thead>";e.forEach(t=>{a+="<tr><th>"+this.getTitle(t)+"</th></tr>"}),a+="</thead><tbody>",n.forEach((e,n)=>{const r=t.labelColors[n];let i="background:"+(this.customColors.backgroundColor||r.backgroundColor);i+="; border-color:"+(this.customColors.borderColor||r.borderColor),i+="; border-width: 2px",a+='<tr><td nowrap><span class="chartjs-tooltip-key" style="'+i+'"></span>'+this.getBody(e)+"</td></tr>"}),a+="</tbody>",this.tooltipEl.querySelector("table").innerHTML=a}const e=this.chartEl.offsetTop,n=this.chartEl.offsetLeft;if(this.checkOffset){const e=t.width/2;this.tooltipEl.classList.remove("transform-left"),this.tooltipEl.classList.remove("transform-right"),t.caretX-e<0?this.tooltipEl.classList.add("transform-left"):t.caretX+e>this.chartEl.width&&this.tooltipEl.classList.add("transform-right")}this.tooltipEl.style.left=this.getStyleLeft(t,n),this.tooltipEl.style.top=this.getStyleTop(t,e),this.tooltipEl.style.opacity=1,this.tooltipEl.style.fontFamily=t._fontFamily,this.tooltipEl.style.fontSize=t.fontSize,this.tooltipEl.style.fontStyle=t._fontStyle,this.tooltipEl.style.padding=t.yPadding+"px "+t.xPadding+"px"}getBody(t){return t}getTitle(t){return t}}},NJ4a:function(t,e,n){"use strict";function a(t){setTimeout(()=>{throw t},0)}n.d(e,"a",(function(){return a}))},NJ9Y:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("sVev"),r=n("pLZG"),i=n("BFxc"),s=n("XDbj"),u=n("xbPD"),o=n("SpAZ");function l(t,e){const n=arguments.length>=2;return l=>l.pipe(t?Object(r.a)((e,n)=>t(e,n,l)):o.a,Object(i.a)(1),n?Object(u.a)(e):Object(s.a)(()=>new a.a))}},NSEa:function(t,e,n){var a=n("CNUl");t.exports=function(t,e){var n=e?a(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}},NUGo:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("iInd"),s=n("FE24"),u=n("z/SZ"),o=n("GS7A");n("S7zO"),n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return b}));var l=a["ɵcrt"]({encapsulation:0,styles:[[".dropdown-menu[_ngcontent-%COMP%] > .disabled[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]{pointer-events:auto;cursor:default!important}"]],data:{}});function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,11,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,10,"button",[["type","button"]],null,[[null,"click"]],(function(t,e,n){var r=!0,i=t.component;return"click"===e&&(r=!1!==a["ɵnov"](t,5).onClick()&&r),"click"===e&&(r=!1!==i.useClickAction(t.context.ngIf)&&r),r}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](3,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](4,{disabled:0}),a["ɵdid"](5,16384,null,0,i.n,[i.m,i.a,[8,null],a.Renderer2,a.ElementRef],{preserveFragment:[0,"preserveFragment"],routerLink:[1,"routerLink"]},null),(t()(),a["ɵeld"](6,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](8,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](9,1),(t()(),a["ɵeld"](10,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](11,null,["",""]))],(function(t,e){var n=e.component,r=a["ɵinlineInterpolate"](1,"btn btn-",n.btnColor,""),i=t(e,4,0,n.disableSelectionAction(e.context.ngIf));t(e,3,0,r,i),t(e,5,0,e.context.ngIf.preserveFragment?"":null,n.useRouterLink(e.context.ngIf));var s=t(e,9,0,e.context.ngIf.icon);t(e,8,0,s)}),(function(t,e){t(e,11,0,e.context.ngIf.name)}))}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](1,null,[""," "]))],null,(function(t,e){t(e,1,0,e.component.dropDownOnly)}))}function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"span",[["class","sr-only"]],null,null,null,null,null))],null,null)}function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"button",[["dropdownToggle",""],["type","button"]],[[8,"className",0],[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,1).onClick()&&r),r}),null,null)),a["ɵdid"](1,147456,null,0,s.g,[a.ChangeDetectorRef,s.c,a.ElementRef,a.Renderer2,s.f],null,null),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](3,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,f)),a["ɵdid"](5,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.dropDownOnly),t(e,5,0,!n.dropDownOnly)}),(function(t,e){t(e,0,0,a["ɵinlineInterpolate"](1,"btn btn-",e.component.btnColor," dropdown-toggle dropdown-toggle-split"),!0,a["ɵnov"](e,1).isDisabled,a["ɵnov"](e,1).isOpen)}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,12,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,11,"li",[["data-toggle","tooltip"],["role","menuitem"]],[[8,"className",0],[8,"title",0]],null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,10,"a",[["class","dropdown-item"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var r=!0,i=t.component;return"click"===e&&(r=!1!==a["ɵnov"](t,6).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&r),"click"===e&&(r=!1!==i.useClickAction(t.context.$implicit)&&r),r}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](4,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](5,{disabled:0}),a["ɵdid"](6,671744,null,0,i.p,[i.m,i.a,r.LocationStrategy],{preserveFragment:[0,"preserveFragment"],routerLink:[1,"routerLink"]},null),(t()(),a["ɵeld"](7,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](9,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](10,1),(t()(),a["ɵeld"](11,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](12,null,["",""]))],(function(t,e){var n=e.component,a=t(e,5,0,n.disableSelectionAction(e.context.$implicit));t(e,4,0,"dropdown-item",a),t(e,6,0,e.context.$implicit.preserveFragment?"":null,n.useRouterLink(e.context.$implicit));var r=t(e,10,0,e.context.$implicit.icon);t(e,9,0,r)}),(function(t,e){var n=e.component;t(e,1,0,a["ɵinlineInterpolate"](1,"",n.toClassName(e.context.$implicit.name),""),a["ɵinlineInterpolate"](1,"",n.useDisableDesc(e.context.$implicit),"")),t(e,2,0,a["ɵnov"](e,6).target,a["ɵnov"](e,6).href),t(e,12,0,e.context.$implicit.name)}))}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"ul",[["class","dropdown-menu"],["role","menu"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](2,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.dropDownActions)}),null)}function b(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,16777216,null,null,8,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),a["ɵprd"](512,null,s.f,s.f,[]),a["ɵdid"](2,212992,null,0,s.c,[a.ElementRef,a.Renderer2,a.ViewContainerRef,u.a,s.f,s.a,o.b],null,null),(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](4,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,h)),a["ɵdid"](6,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](8,16384,null,0,s.d,[s.f,a.ViewContainerRef,a.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,2,0),t(e,4,0,n.getCurrentButton()),t(e,6,0,n.showDropDownActions())}),(function(t,e){t(e,0,0,a["ɵnov"](e,2).dropup,a["ɵnov"](e,2).isOpen,a["ɵnov"](e,2).isOpen&&a["ɵnov"](e,2).isBs4)}))}},NaFW:function(t,e,n){var a=n("9d/t"),r=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||r[a(t)]}},NtIB:function(t,e,n){var a=n("uy3s"),r=n("eQba"),i=n("jqoL"),s=n("VLqJ"),u=n("kXVT"),o=n("YLnZ"),l=n("Wv1A");t.exports=function(t,e){return s(t)&&u(e)?o(l(t),e):function(n){var s=r(n,t);return void 0===s&&s===e?i(n,t):a(e,s,3)}}},O741:function(t,e,n){var a=n("hh1v");t.exports=function(t){if(!a(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},O9Tv:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=n("YzqF");e.Mutex=a.default},OIDT:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Number)],t.prototype,"index",void 0),i([Object(a.Input)(),s("design:type",Object)],t.prototype,"templates",void 0),i([Object(a.Component)({selector:"tree-node-wrapper",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n      <div *ngIf="!templates.treeNodeWrapperTemplate" class="node-wrapper" [style.padding-left]="node.getNodePadding()">\n          <tree-node-checkbox *ngIf="node.options.useCheckbox" [node]="node"></tree-node-checkbox>\n          <tree-node-expander [node]="node"></tree-node-expander>\n          <div class="node-content-wrapper"\n               [class.node-content-wrapper-active]="node.isActive"\n               [class.node-content-wrapper-focused]="node.isFocused"\n               (click)="node.mouseAction(\'click\', $event)"\n               (dblclick)="node.mouseAction(\'dblClick\', $event)"\n               (mouseover)="node.mouseAction(\'mouseOver\', $event)"\n               (mouseout)="node.mouseAction(\'mouseOut\', $event)"\n               (contextmenu)="node.mouseAction(\'contextMenu\', $event)"\n               (treeDrop)="node.onDrop($event)"\n               (treeDropDragOver)="node.mouseAction(\'dragOver\', $event)"\n               (treeDropDragLeave)="node.mouseAction(\'dragLeave\', $event)"\n               (treeDropDragEnter)="node.mouseAction(\'dragEnter\', $event)"\n               [treeAllowDrop]="node.allowDrop"\n               [allowDragoverStyling]="node.allowDragoverStyling()"\n               [treeDrag]="node"\n               [treeDragEnabled]="node.allowDrag()">\n\n              <tree-node-content [node]="node" [index]="index" [template]="templates.treeNodeTemplate">\n              </tree-node-content>\n          </div>\n      </div>\n      <ng-container\n              [ngTemplateOutlet]="templates.treeNodeWrapperTemplate"\n              [ngTemplateOutletContext]="{ $implicit: node, node: node, index: index, templates: templates }">\n      </ng-container>\n  '}),s("design:paramtypes",[])],t)}()},OIYi:function(t,e,n){!function(t){"use strict";t.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}})}(n("wd/R"))},OLbh:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("s7LF");class r{constructor(t,e){this.modalRef=t,this.modalService=e,this.boundCancel=this.cancel.bind(this),this.canceled=!1,this.confirmationForm=new a.k({}),this.onHide=this.modalService.onHide.subscribe(t=>{this.onCancel&&(t||this.canceled)&&this.onCancel()})}ngOnInit(){if(this.bodyContext=this.bodyContext||{},this.bodyContext.$implicit=this.bodyData,!this.onSubmit)throw new Error("No submit action defined");if(!this.buttonText)throw new Error("No action name defined");if(!this.titleText)throw new Error("No title defined");if(!this.bodyTpl&&!this.description)throw new Error("No description defined")}ngOnDestroy(){this.onHide.unsubscribe()}cancel(){this.canceled=!0,this.modalRef.hide()}stopLoadingSpinner(){this.confirmationForm.setErrors({cdSubmitButton:!0})}}},Oaa7:function(t,e,n){!function(t){"use strict";t.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},Ob0Z:function(t,e,n){!function(t){"use strict";var e={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};function a(t,e,n,a){var r="";if(e)switch(n){case"s":r="काही सेकंद";break;case"ss":r="%d सेकंद";break;case"m":r="एक मिनिट";break;case"mm":r="%d मिनिटे";break;case"h":r="एक तास";break;case"hh":r="%d तास";break;case"d":r="एक दिवस";break;case"dd":r="%d दिवस";break;case"M":r="एक महिना";break;case"MM":r="%d महिने";break;case"y":r="एक वर्ष";break;case"yy":r="%d वर्षे"}else switch(n){case"s":r="काही सेकंदां";break;case"ss":r="%d सेकंदां";break;case"m":r="एका मिनिटा";break;case"mm":r="%d मिनिटां";break;case"h":r="एका तासा";break;case"hh":r="%d तासां";break;case"d":r="एका दिवसा";break;case"dd":r="%d दिवसां";break;case"M":r="एका महिन्या";break;case"MM":r="%d महिन्यां";break;case"y":r="एका वर्षा";break;case"yy":r="%d वर्षां"}return r.replace(/%d/i,t)}t.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm वाजता",LLLL:"dddd, D MMMM YYYY, A h:mm वाजता"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},preparse:function(t){return t.replace(/[१२३४५६७८९०]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/रात्री|सकाळी|दुपारी|सायंकाळी/,meridiemHour:function(t,e){return 12===t&&(t=0),"रात्री"===e?t<4?t:t+12:"सकाळी"===e?t:"दुपारी"===e?t>=10?t:t+12:"सायंकाळी"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"रात्री":t<10?"सकाळी":t<17?"दुपारी":t<20?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}(n("wd/R"))},OcYo:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("e0ae");class r{constructor(t,e,n,a){this.elementRef=t,this.renderer=e,this.toastr=n,this.i18n=a}ngOnInit(){const t=this.renderer.createElement("i");this.renderer.addClass(t,"fa"),this.renderer.addClass(t,"fa-clipboard"),this.renderer.setAttribute(t,"title",this.i18n("Copy to clipboard")),this.renderer.appendChild(this.elementRef.nativeElement,t)}getText(){return document.getElementById(this.cdCopy2ClipboardButton).value}onClick(){try{const t=Object(a.a)(),e=this.getText(),n=()=>{this.toastr.success("Copied text to the clipboard successfully.")};["firefox","ie","ios","safari"].includes(t.name)?navigator.clipboard.writeText(e).then(()=>n()):navigator.permissions.query({name:"clipboard-write"}).then(t=>{"granted"!==t.state&&"prompt"!==t.state||navigator.clipboard.writeText(e).then(()=>n())})}catch(t){this.toastr.error("Failed to copy text to the clipboard.")}}}},OjkT:function(t,e,n){!function(t){"use strict";var e={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};t.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),monthsParseExact:!0,weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, Aको h:mm बजे",LLLL:"dddd, D MMMM YYYY, Aको h:mm बजे"},preparse:function(t){return t.replace(/[१२३४५६७८९०]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(t,e){return 12===t&&(t=0),"राति"===e?t<4?t:t+12:"बिहान"===e?t:"दिउँसो"===e?t>=10?t:t+12:"साँझ"===e?t+12:void 0},meridiem:function(t,e,n){return t<3?"राति":t<12?"बिहान":t<16?"दिउँसो":t<20?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",ss:"%d सेकेण्ड",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}})}(n("wd/R"))},Oxv6:function(t,e,n){!function(t){"use strict";var e={0:"-ум",1:"-ум",2:"-юм",3:"-юм",4:"-ум",5:"-ум",6:"-ум",7:"-ум",8:"-ум",9:"-ум",10:"-ум",12:"-ум",13:"-ум",20:"-ум",30:"-юм",40:"-ум",50:"-ум",60:"-ум",70:"-ум",80:"-ум",90:"-ум",100:"-ум"};t.defineLocale("tg",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе".split("_"),weekdaysShort:"яшб_дшб_сшб_чшб_пшб_ҷум_шнб".split("_"),weekdaysMin:"яш_дш_сш_чш_пш_ҷм_шб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Имрӯз соати] LT",nextDay:"[Пагоҳ соати] LT",lastDay:"[Дирӯз соати] LT",nextWeek:"dddd[и] [ҳафтаи оянда соати] LT",lastWeek:"dddd[и] [ҳафтаи гузашта соати] LT",sameElse:"L"},relativeTime:{future:"баъди %s",past:"%s пеш",s:"якчанд сония",m:"як дақиқа",mm:"%d дақиқа",h:"як соат",hh:"%d соат",d:"як рӯз",dd:"%d рӯз",M:"як моҳ",MM:"%d моҳ",y:"як сол",yy:"%d сол"},meridiemParse:/шаб|субҳ|рӯз|бегоҳ/,meridiemHour:function(t,e){return 12===t&&(t=0),"шаб"===e?t<4?t:t+12:"субҳ"===e?t:"рӯз"===e?t>=11?t:t+12:"бегоҳ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"шаб":t<11?"субҳ":t<16?"рӯз":t<19?"бегоҳ":"шаб"},dayOfMonthOrdinalParse:/\d{1,2}-(ум|юм)/,ordinal:function(t){return t+(e[t]||e[t%10]||e[t>=100?100:null])},week:{dow:1,doy:7}})}(n("wd/R"))},P4y1:function(t,e){t.exports={}},P8lu:function(t,e,n){"use strict";n.d(e,"a",(function(){return g}));var a=n("mrSG"),r=n("IheW"),i=n("LvDl"),s=n("cp0P"),u=n("LRne"),o=n("5+tZ"),l=n("CqXF"),d=n("JIr8"),c=n("xTzq"),f=n("8Y7J"),h=n("pL04");let g=(()=>{let t=class{constructor(t){this.http=t,this.url="api/rgw/user"}list(){return this.enumerate().pipe(Object(o.a)(t=>t.length>0?Object(s.a)(t.map(t=>this.get(t))):Object(u.a)([])))}enumerate(){return this.http.get(this.url)}enumerateEmail(){return this.http.get(this.url+"/get_emails")}get(t){return this.http.get(`${this.url}/${t}`)}getQuota(t){return this.http.get(`${this.url}/${t}/quota`)}create(t){let e=new r.h;return i.keys(t).forEach(n=>{e=e.append(n,t[n])}),this.http.post(this.url,null,{params:e})}update(t,e){let n=new r.h;return i.keys(e).forEach(t=>{n=n.append(t,e[t])}),this.http.put(`${this.url}/${t}`,null,{params:n})}updateQuota(t,e){let n=new r.h;return i.keys(e).forEach(t=>{n=n.append(t,e[t])}),this.http.put(`${this.url}/${t}/quota`,null,{params:n})}delete(t){return this.http.delete(`${this.url}/${t}`)}createSubuser(t,e){let n=new r.h;return i.keys(e).forEach(t=>{n=n.append(t,e[t])}),this.http.post(`${this.url}/${t}/subuser`,null,{params:n})}deleteSubuser(t,e){return this.http.delete(`${this.url}/${t}/subuser/${e}`)}addCapability(t,e,n){let a=new r.h;return a=a.append("type",e),a=a.append("perm",n),this.http.post(`${this.url}/${t}/capability`,null,{params:a})}deleteCapability(t,e,n){let a=new r.h;return a=a.append("type",e),a=a.append("perm",n),this.http.delete(`${this.url}/${t}/capability`,{params:a})}addS3Key(t,e){let n=new r.h;return n=n.append("key_type","s3"),i.keys(e).forEach(t=>{n=n.append(t,e[t])}),this.http.post(`${this.url}/${t}/key`,null,{params:n})}deleteS3Key(t,e){let n=new r.h;return n=n.append("key_type","s3"),n=n.append("access_key",e),this.http.delete(`${this.url}/${t}/key`,{params:n})}exists(t){return this.get(t).pipe(Object(l.a)(!0),Object(d.a)(t=>(i.isFunction(t.preventDefault)&&t.preventDefault(),Object(u.a)(!1))))}emailExists(t){return t=decodeURIComponent(t),this.enumerateEmail().pipe(Object(o.a)(e=>{const n=i.indexOf(e,t);return Object(u.a)(-1!==n)}))}};return t.ngInjectableDef=f["ɵɵdefineInjectable"]({factory:function(){return new t(f["ɵɵinject"](r.c))},token:t,providedIn:h.a}),t=a.__decorate([c.a,a.__metadata("design:paramtypes",[r.c])],t),t})()},PA2r:function(t,e,n){!function(t){"use strict";var e="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),n="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),a=[/^led/i,/^úno/i,/^bře/i,/^dub/i,/^kvě/i,/^(čvn|červen$|června)/i,/^(čvc|červenec|července)/i,/^srp/i,/^zář/i,/^říj/i,/^lis/i,/^pro/i],r=/^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;function i(t){return t>1&&t<5&&1!=~~(t/10)}function s(t,e,n,a){var r=t+" ";switch(n){case"s":return e||a?"pár sekund":"pár sekundami";case"ss":return e||a?r+(i(t)?"sekundy":"sekund"):r+"sekundami";case"m":return e?"minuta":a?"minutu":"minutou";case"mm":return e||a?r+(i(t)?"minuty":"minut"):r+"minutami";case"h":return e?"hodina":a?"hodinu":"hodinou";case"hh":return e||a?r+(i(t)?"hodiny":"hodin"):r+"hodinami";case"d":return e||a?"den":"dnem";case"dd":return e||a?r+(i(t)?"dny":"dní"):r+"dny";case"M":return e||a?"měsíc":"měsícem";case"MM":return e||a?r+(i(t)?"měsíce":"měsíců"):r+"měsíci";case"y":return e||a?"rok":"rokem";case"yy":return e||a?r+(i(t)?"roky":"let"):r+"lety"}}t.defineLocale("cs",{months:e,monthsShort:n,monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:s,ss:s,m:s,mm:s,h:s,hh:s,d:s,dd:s,M:s,MM:s,y:s,yy:s},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},PCNd:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},"PEr+":function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("EEJc"),s=n("ajRT"),u=n("s7LF"),o=n("+gVj"),l=n("mXUL"),d=n("IZUe"),c=n("ANnk"),f=n("f/UV"),h=n("aexS"),g=n("gp3X"),p=n("sb0X"),b=n("KVJa"),m=n("Z21x"),y=n("sne2"),v=n("0+/T"),x=n("LqlI");n.d(e,"a",(function(){return D}));var _=a["ɵcrt"]({encapsulation:0,styles:[[".modal-body[_ngcontent-%COMP%]   .question[_ngcontent-%COMP%]{margin-top:1em}.modal-body[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{font-weight:700}.modal-body[_ngcontent-%COMP%]   .question[_ngcontent-%COMP%]   .form-check[_ngcontent-%COMP%]{padding-top:7px}"]],data:{}});function T(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function w(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["Are you sure that you want to "," "])),a["ɵppd"](2,1),(t()(),a["ɵeld"](3,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](4,null,["",""])),(t()(),a["ɵted"](-1,null,["?"]))],null,(function(t,e){var n=e.component,r=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent.parent,0),n.actionDescription));t(e,1,0,r),t(e,4,0,n.itemNames[0])}))}function S(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"li",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit)}))}function I(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["Are you sure that you want to "," the selected items?"])),a["ɵppd"](2,1),(t()(),a["ɵeld"](3,0,null,null,2,"ul",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,S)),a["ɵdid"](5,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,5,0,e.component.itemNames)}),(function(t,e){var n=e.component,r=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent.parent,0),n.actionDescription));t(e,1,0,r)}))}function N(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["manyNames",2]],null,0,null,I))],(function(t,e){t(e,2,0,1===e.component.itemNames.length,a["ɵnov"](e,3))}),null)}function C(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["Are you sure that you want to "," the selected ","?"])),a["ɵppd"](2,1)],null,(function(t,e){var n=e.component,r=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent,0),n.actionDescription));t(e,1,0,r,n.itemDescription)}))}function R(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function A(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function k(t){return a["ɵvid"](0,[(t()(),a["ɵted"](0,null,[" "," ","\n"])),a["ɵppd"](1,1)],null,(function(t,e){var n=e.component,r=a["ɵunv"](e,0,0,t(e,1,0,a["ɵnov"](e.parent,1),n.actionDescription));t(e,0,0,r,n.itemDescription)}))}function E(t){return a["ɵvid"](0,[a["ɵpid"](0,r.LowerCasePipe,[]),a["ɵpid"](0,r.TitleCasePipe,[]),a["ɵqud"](402653184,1,{submitButton:0}),(t()(),a["ɵeld"](3,0,null,null,44,"cd-modal",[],null,null,null,i.c,i.b)),a["ɵdid"](4,49152,[["modal",4]],0,s.a,[],{modalRef:[0,"modalRef"]},null),(t()(),a["ɵeld"](5,0,null,0,2,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](7,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),a["ɵeld"](8,0,null,1,39,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](9,0,null,null,38,"form",[["name","deletionForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var r=!0;return"submit"===e&&(r=!1!==a["ɵnov"](t,11).onSubmit(n)&&r),"reset"===e&&(r=!1!==a["ɵnov"](t,11).onReset()&&r),"submit"===e&&(r=!1!==a["ɵnov"](t,14).onSubmit()&&r),r}),null,null)),a["ɵdid"](10,16384,null,0,u.G,[],null,null),a["ɵdid"](11,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),a["ɵprd"](2048,null,u.d,null,[u.l]),a["ɵdid"](13,16384,null,0,u.s,[[4,u.d]],null,null),a["ɵdid"](14,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(t()(),a["ɵeld"](15,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,w)),a["ɵdid"](17,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵeld"](18,0,null,null,22,"div",[["class","question"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,N)),a["ɵdid"](20,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["noNames",2]],null,0,null,C)),(t()(),a["ɵand"](16777216,null,null,2,null,R)),a["ɵdid"](23,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](24,{form:0}),(t()(),a["ɵeld"](25,0,null,null,15,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,l.b,l.a)),a["ɵdid"](26,1163264,null,2,o.c,[a.ElementRef,o.g],null,null),a["ɵqud"](603979776,2,{FormControlNames:1}),a["ɵqud"](603979776,3,{messagesBlock:0}),(t()(),a["ɵeld"](29,0,null,0,11,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),a["ɵeld"](30,0,null,null,8,"input",[["autofocus",""],["class","custom-control-input"],["formControlName","confirmation"],["id","confirmation"],["name","confirmation"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var r=!0;return"change"===e&&(r=!1!==a["ɵnov"](t,31).onChange(n.target.checked)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,31).onTouched()&&r),r}),null,null)),a["ɵdid"](31,16384,null,0,u.c,[a.Renderer2,a.ElementRef],null,null),a["ɵprd"](1024,null,u.p,(function(t){return[t]}),[u.c]),a["ɵdid"](33,671744,[[2,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,u.q,null,[u.j]),a["ɵdid"](35,16384,null,0,u.r,[[4,u.q]],null,null),a["ɵdid"](36,4210688,null,0,d.a,[a.ElementRef],{autofocus:[0,"autofocus"]},null),a["ɵdid"](37,4210688,null,0,c.a,[[2,f.a],h.a,a.ElementRef],null,null),a["ɵdid"](38,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(t()(),a["ɵeld"](39,0,null,null,1,"label",[["class","custom-control-label"],["for","confirmation"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Yes, I am sure."])),(t()(),a["ɵeld"](41,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),a["ɵeld"](42,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.callSubmitAction()&&a),a}),g.b,g.a)),a["ɵdid"](43,114688,[[1,4],["submitButton",4]],0,p.a,[a.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),a["ɵand"](16777216,null,0,1,null,A)),a["ɵdid"](45,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),a["ɵeld"](46,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,b.b,b.a)),a["ɵdid"](47,49152,null,0,m.a,[r.Location,y.b],{name:[0,"name"],back:[1,"back"]},null),(t()(),a["ɵand"](0,[["deletionHeading",2]],null,0,null,k))],(function(t,e){var n=e.component;t(e,4,0,n.modalRef),t(e,7,0,a["ɵnov"](e,48)),t(e,11,0,n.deletionForm),t(e,14,0,n.deletionForm),t(e,17,0,n.bodyContext,n.bodyTemplate),t(e,20,0,n.itemNames,a["ɵnov"](e,21));var r=t(e,24,0,n.deletionForm);t(e,23,0,r,n.childFormGroupTemplate),t(e,26,0),t(e,33,0,"confirmation"),t(e,36,0,""),t(e,38,0,"confirmation"),t(e,43,0,n.deletionForm),t(e,45,0,a["ɵnov"](e,48)),t(e,47,0,"Cancel",n.modalRef.hide)}),(function(t,e){t(e,9,0,a["ɵnov"](e,13).ngClassUntouched,a["ɵnov"](e,13).ngClassTouched,a["ɵnov"](e,13).ngClassPristine,a["ɵnov"](e,13).ngClassDirty,a["ɵnov"](e,13).ngClassValid,a["ɵnov"](e,13).ngClassInvalid,a["ɵnov"](e,13).ngClassPending),t(e,25,0,a["ɵnov"](e,26).hasErrors,a["ɵnov"](e,26).hasSuccess),t(e,30,0,a["ɵnov"](e,35).ngClassUntouched,a["ɵnov"](e,35).ngClassTouched,a["ɵnov"](e,35).ngClassPristine,a["ɵnov"](e,35).ngClassDirty,a["ɵnov"](e,35).ngClassValid,a["ɵnov"](e,35).ngClassInvalid,a["ɵnov"](e,35).ngClassPending,a["ɵnov"](e,38).validClass,a["ɵnov"](e,38).invalidClass)}))}function L(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-deletion-modal",[],null,null,null,E,_)),a["ɵdid"](1,114688,null,0,v.a,[x.a],null,null)],(function(t,e){t(e,1,0)}),null)}var D=a["ɵccf"]("cd-deletion-modal",v.a,L,{},{},[])},PHub:function(t,e,n){var a=n("PnUS"),r=n("x3F9"),i=Object.prototype,s=i.hasOwnProperty,u=i.propertyIsEnumerable,o=a(function(){return arguments}())?a:function(t){return r(t)&&s.call(t,"callee")&&!u.call(t,"callee")};t.exports=o},PKPk:function(t,e,n){"use strict";var a=n("ZUd8").charAt,r=n("afO8"),i=n("fdAy"),s=r.set,u=r.getterFor("String Iterator");i(String,"String",(function(t){s(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=u(this),n=e.string,r=e.index;return r>=n.length?{value:void 0,done:!0}:(t=a(n,r),e.index+=t.length,{value:t,done:!1})}))},PeUW:function(t,e,n){!function(t){"use strict";var e={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},n={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"};t.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",ss:"%d விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},dayOfMonthOrdinalParse:/\d{1,2}வது/,ordinal:function(t){return t+"வது"},preparse:function(t){return t.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(t,e,n){return t<2?" யாமம்":t<6?" வைகறை":t<10?" காலை":t<14?" நண்பகல்":t<18?" எற்பாடு":t<22?" மாலை":" யாமம்"},meridiemHour:function(t,e){return 12===t&&(t=0),"யாமம்"===e?t<2?t:t+12:"வைகறை"===e||"காலை"===e||"நண்பகல்"===e&&t>=10?t:t+12},week:{dow:0,doy:6}})}(n("wd/R"))},PhyI:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return r}));var a=function(t){return t[t.global=0]="global",t[t.pool=1]="pool",t[t.image=2]="image",t}({}),r=function(t){return t[t.bps=0]="bps",t[t.iops=1]="iops",t[t.milliseconds=2]="milliseconds",t}({})},PjNX:function(t,e,n){var a=n("eH2F")();t.exports=a},PnUS:function(t,e,n){var a=n("LaC8"),r=n("x3F9");t.exports=function(t){return r(t)&&"[object Arguments]"==a(t)}},PpIw:function(t,e,n){!function(t){"use strict";var e={1:"೧",2:"೨",3:"೩",4:"೪",5:"೫",6:"೬",7:"೭",8:"೮",9:"೯",0:"೦"},n={"೧":"1","೨":"2","೩":"3","೪":"4","೫":"5","೬":"6","೭":"7","೮":"8","೯":"9","೦":"0"};t.defineLocale("kn",{months:"ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್".split("_"),monthsShort:"ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ".split("_"),monthsParseExact:!0,weekdays:"ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ".split("_"),weekdaysShort:"ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ".split("_"),weekdaysMin:"ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[ಇಂದು] LT",nextDay:"[ನಾಳೆ] LT",nextWeek:"dddd, LT",lastDay:"[ನಿನ್ನೆ] LT",lastWeek:"[ಕೊನೆಯ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ನಂತರ",past:"%s ಹಿಂದೆ",s:"ಕೆಲವು ಕ್ಷಣಗಳು",ss:"%d ಸೆಕೆಂಡುಗಳು",m:"ಒಂದು ನಿಮಿಷ",mm:"%d ನಿಮಿಷ",h:"ಒಂದು ಗಂಟೆ",hh:"%d ಗಂಟೆ",d:"ಒಂದು ದಿನ",dd:"%d ದಿನ",M:"ಒಂದು ತಿಂಗಳು",MM:"%d ತಿಂಗಳು",y:"ಒಂದು ವರ್ಷ",yy:"%d ವರ್ಷ"},preparse:function(t){return t.replace(/[೧೨೩೪೫೬೭೮೯೦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,meridiemHour:function(t,e){return 12===t&&(t=0),"ರಾತ್ರಿ"===e?t<4?t:t+12:"ಬೆಳಿಗ್ಗೆ"===e?t:"ಮಧ್ಯಾಹ್ನ"===e?t>=10?t:t+12:"ಸಂಜೆ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"ರಾತ್ರಿ":t<10?"ಬೆಳಿಗ್ಗೆ":t<17?"ಮಧ್ಯಾಹ್ನ":t<20?"ಸಂಜೆ":"ರಾತ್ರಿ"},dayOfMonthOrdinalParse:/\d{1,2}(ನೇ)/,ordinal:function(t){return t+"ನೇ"},week:{dow:0,doy:6}})}(n("wd/R"))},PqYM:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("HDdC"),r=n("D0XW"),i=n("Y7HM"),s=n("z+Ro");function u(t=0,e,n){let u=-1;return Object(i.a)(e)?u=Number(e)<1?1:Number(e):Object(s.a)(e)&&(n=e),Object(s.a)(n)||(n=r.a),new a.a(e=>{const a=Object(i.a)(t)?t:+t-n.now();return n.schedule(o,a,{index:0,period:u,subscriber:e})})}function o(t){const{index:e,period:n,subscriber:a}=t;if(a.next(e),!a.closed){if(-1===n)return a.complete();t.index=e+1,this.schedule(t,n)}}},Q7RW:function(t,e,n){var a=n("LaC8"),r=n("hmSm");t.exports=function(t){if(!r(t))return!1;var e=a(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},QC43:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("MdoF"),i=n("CNMR"),s=n("SVse");n("XFyV"),n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return o}));var u=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"alert",[["type","info"]],null,null,null,r.c,r.b)),a["ɵdid"](1,114688,null,0,i.a,[i.b,a.ChangeDetectorRef],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,4,"strong",[],null,null,null,null,null)),(t()(),a["ɵeld"](3,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,s["ɵNgClassImpl"],s["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](5,278528,null,0,s.NgClass,[s["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](6,2),a["ɵncd"](0,0)],(function(t,e){var n=e.component;t(e,1,0,"info");var a=t(e,6,0,n.icons.spinner,n.icons.spin);t(e,5,0,a)}),null)}},QCZx:function(t,e,n){var a=n("2zzJ"),r=n("7+rY"),i=n("MOZO");t.exports=function(t,e,n){for(var s=-1,u=e.length,o={};++s<u;){var l=e[s],d=a(t,l);n(d,l)&&r(o,i(l,t),d)}return o}},QFaf:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("s7LF");class r extends a.k{constructor(t,e,n){super(t,e,n),this.controls=t}get(t){const e=this._get(t);if(!e)throw new Error(`Control '${t}' could not be found!`);return e}_get(t){return super.get(t)||Object.values(this.controls).filter(t=>t.get).map(e=>e instanceof r?e._get(t):e.get(t)).find(t=>Boolean(t))}getValue(t){return this.get(t).value}silentSet(t,e){this.get(t).setValue(e,{emitEvent:!1})}showError(t,e,n){const a=this.get(t);return(e.submitted||a.dirty)&&(n?a.hasError(n):a.invalid)}}},QTAa:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("t/zF");class r extends a.a{}},QUkU:function(t,e,n){var a=n("JEWA"),r=n("im1V"),i=n("Uies"),s=n("hmSm");t.exports=function(t,e,n){if(!s(n))return!1;var u=typeof e;return!!("number"==u?r(n)&&i(e,n.length):"string"==u&&e in n)&&a(n[e],t)}},QWBl:function(t,e,n){"use strict";var a=n("I+eb"),r=n("F8JR");a({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},Qj4J:function(t,e,n){!function(t){"use strict";t.defineLocale("ar-kw",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:12}})}(n("wd/R"))},QjCD:function(t,e,n){var a=n("kGkW"),r=n("nC65"),i=n("YLnZ");t.exports=function(t){var e=r(t);return 1==e.length&&e[0][2]?i(e[0][0],e[0][1]):function(n){return n===t||a(n,t,e)}}},Qo9l:function(t,e,n){var a=n("2oRo");t.exports=a},QpVZ:function(t,e,n){var a=n("LaC8"),r=n("x3F9");t.exports=function(t){return"symbol"==typeof t||r(t)&&"[object Symbol]"==a(t)}},QuoE:function(t,e,n){var a=n("bX23"),r=n("vIot"),i=n("0rEg");t.exports=function(t,e,n){return e==e?i(t,e,n):a(t,r,n)}},R2cF:function(t,e){var n=/\w*$/;t.exports=function(t){var e=new t.constructor(t.source,n.exec(t));return e.lastIndex=t.lastIndex,e}},R6RA:function(t,e,n){var a=n("hmSm"),r=Object.create,i=function(){function t(){}return function(e){if(!a(e))return{};if(r)return r(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=i},R8cQ:function(t,e,n){var a=n("pMcL"),r=n("xAZD"),i=n("0GLT"),s=n("QpVZ"),u=a?a.prototype:void 0,o=u?u.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(i(e))return r(e,t)+"";if(s(e))return o?o.call(e):"";var n=e+"";return"0"==n&&1/e==-1/0?"-0":n}},RAwQ:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return e?r[n][0]:r[n][1]}function n(t){if(t=parseInt(t,10),isNaN(t))return!1;if(t<0)return!0;if(t<10)return 4<=t&&t<=7;if(t<100){var e=t%10;return n(0===e?t/10:e)}if(t<1e4){for(;t>=10;)t/=10;return n(t)}return n(t/=1e3)}t.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:function(t){return n(t.substr(0,t.indexOf(" ")))?"a "+t:"an "+t},past:function(t){return n(t.substr(0,t.indexOf(" ")))?"viru "+t:"virun "+t},s:"e puer Sekonnen",ss:"%d Sekonnen",m:e,mm:"%d Minutten",h:e,hh:"%d Stonnen",d:e,dd:"%d Deeg",M:e,MM:"%d Méint",y:e,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},RBUI:function(t,e){t.exports=function(t,e){for(var n=-1,a=Array(t);++n<t;)a[n]=e(n);return a}},RK3t:function(t,e,n){var a=n("0Dky"),r=n("xrYK"),i="".split;t.exports=a((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==r(t)?i.call(t,""):Object(t)}:Object},RNIs:function(t,e,n){var a=n("tiKp"),r=n("fHMY"),i=n("m/L8"),s=a("unscopables"),u=Array.prototype;null==u[s]&&i.f(u,s,{configurable:!0,value:r(null)}),t.exports=function(t){u[s][t]=!0}},Rf2I:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("s7LF"),r=n("LvDl");n("2EZI"),n("Fgil"),n("aXbf");class i{constructor(t,e,n,a,r){this.bsModalRef=t,this.formBuilder=e,this.formatter=n,this.dimlessBinaryPipe=a,this.i18n=r}ngOnInit(){this.createForm()}createForm(){const t={};this.fields.forEach(e=>{t[e.name]=this.createFormControl(e)}),this.formGroup=this.formBuilder.group(t)}createFormControl(t){let e=[];return r.isBoolean(t.required)&&t.required&&e.push(a.B.required),t.validators&&(e=e.concat(t.validators)),new a.i(r.defaultTo("binary"===t.type?this.dimlessBinaryPipe.transform(t.value):t.value,null),{validators:e})}getError(t){const e=this.formGroup.get(t.name).errors;return Object.keys(e).map(n=>this.getErrorMessage(n,e[n],t.errors)).join("<br>")}getErrorMessage(t,e,n){if(n){const e=n[t];if(e)return e}return["binaryMin","binaryMax"].includes(t)?e(this.i18n):this.i18n("required"===t?"This field is required.":"An error occurred.")}onSubmitForm(t){this.fields.filter(t=>"binary"===t.type).map(t=>t.name).forEach(e=>{const n=t[e];n&&(t[e]=this.formatter.toBytes(n))}),this.bsModalRef.hide(),r.isFunction(this.onSubmit)&&this.onSubmit(t)}}},Rm1S:function(t,e,n){"use strict";var a=n("14Sl"),r=n("glrk"),i=n("UMSQ"),s=n("HYAF"),u=n("iqWW"),o=n("FMNM");a("match",1,(function(t,e,n){return[function(e){var n=s(this),a=null==e?void 0:e[t];return void 0!==a?a.call(e,n):new RegExp(e)[t](String(n))},function(t){var a=n(e,t,this);if(a.done)return a.value;var s=r(t),l=String(this);if(!s.global)return o(s,l);var d=s.unicode;s.lastIndex=0;for(var c,f=[],h=0;null!==(c=o(s,l));){var g=String(c[0]);f[h]=g,""===g&&(s.lastIndex=u(l,i(s.lastIndex),d)),h++}return 0===h?null:f}]}))},RnhZ:function(t,e,n){var a={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-SG":"zavE","./en-SG.js":"zavE","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function r(t){var e=i(t);return n(e)}function i(t){if(!n.o(a,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return a[t]}r.keys=function(){return Object.keys(a)},r.resolve=i,t.exports=r,r.id="RnhZ"},RvDp:function(t,e,n){var a=n("MOZO"),r=n("PHub"),i=n("0GLT"),s=n("Uies"),u=n("KNDS"),o=n("Wv1A");t.exports=function(t,e,n){for(var l=-1,d=(e=a(e,t)).length,c=!1;++l<d;){var f=o(e[l]);if(!(c=null!=t&&n(t,f)))break;t=t[f]}return c||++l!=d?c:!!(d=null==t?0:t.length)&&u(d)&&s(f,d)&&(i(t)||r(t))}},S6ln:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a=t+" ";switch(n){case"ss":return a+(1===t?"sekunda":2===t||3===t||4===t?"sekunde":"sekundi");case"m":return e?"jedna minuta":"jedne minute";case"mm":return a+(1===t?"minuta":2===t||3===t||4===t?"minute":"minuta");case"h":return e?"jedan sat":"jednog sata";case"hh":return a+(1===t?"sat":2===t||3===t||4===t?"sata":"sati");case"dd":return a+(1===t?"dan":"dana");case"MM":return a+(1===t?"mjesec":2===t||3===t||4===t?"mjeseca":"mjeseci");case"yy":return a+(1===t?"godina":2===t||3===t||4===t?"godine":"godina")}}t.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:e,m:e,mm:e,h:e,hh:e,d:"dan",dd:e,M:"mjesec",MM:e,y:"godinu",yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},S7zO:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("LvDl"),r=n("oxzT");n("vCyI"),n("jKX/");class i{constructor(){this.btnColor="secondary",this.dropDownActions=[],this.icons=r.a}ngOnInit(){this.removeActionsWithNoPermissions(),this.updateDropDownActions()}toClassName(t){return t.replace(/ /g,"-").replace(/[^a-z-]/gi,"").toLowerCase()}removeActionsWithNoPermissions(){if(!this.permission)return void(this.tableActions=[]);const t=Object.keys(this.permission).filter(t=>this.permission[t]);this.tableActions=this.tableActions.filter(e=>t.includes(e.permission))}updateDropDownActions(){this.dropDownActions=this.tableActions.filter(t=>t.visible?t.visible(this.selection):t)}getCurrentButton(){if(this.dropDownOnly)return;let t=this.dropDownActions.find(t=>this.showableAction(t));return!t&&this.dropDownActions.length>0&&(t=this.dropDownActions[0]),t}showableAction(t){const e=t.canBePrimary,n=this.selection.hasSingleSelection,a="create"===t.permission?!n:n;return e&&e(this.selection)||!e&&a}useRouterLink(t){if(t.routerLink&&!this.disableSelectionAction(t))return a.isString(t.routerLink)?t.routerLink:t.routerLink()}disableSelectionAction(t){const e=t.disable;if(e)return Boolean(e(this.selection));const n=t.permission,a=this.selection.hasSingleSelection&&this.selection.first();return Boolean(["update","delete"].includes(n)&&(!a||a.cdExecuting))}showDropDownActions(){return this.updateDropDownActions(),this.dropDownActions.length>1}useClickAction(t){return!this.disableSelectionAction(t)&&t.click&&t.click()}useDisableDesc(t){if(t.disable){const e=t.disable(this.selection);return a.isString(e)?e:void 0}}}},"SB+Q":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return encodeURIComponent(t)}}},SDUG:function(t,e,n){var a=n("PjNX"),r=n("FGWQ");t.exports=function(t,e){return t&&a(t,e,r)}},SFxW:function(t,e,n){!function(t){"use strict";var e={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};t.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyə",ss:"%d saniyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(t){return/^(gündüz|axşam)$/.test(t)},meridiem:function(t,e,n){return t<4?"gecə":t<12?"səhər":t<17?"gündüz":"axşam"},dayOfMonthOrdinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(t){if(0===t)return t+"-ıncı";var n=t%10;return t+(e[n]||e[t%100-n]||e[t>=100?100:null])},week:{dow:1,doy:7}})}(n("wd/R"))},SPu7:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="pl-PL">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Rozwiń</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Pulpit</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Klaster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hosty</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitory</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Usługi</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD-ki</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Konfiguracja</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH mapa</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Zarządca modułów</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Logi</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pule</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Dostęp blokowy</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Obrazy</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Kopia lustrzana</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>Sieciowy system plików NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Systemy plików</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Dostęp obiektowy</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Demony</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Użytkownicy</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Wiadra</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Wybierz język</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Trwa ładowanie danych...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Wybór czasu Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Zresetuj ustawienia</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Wstecz</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Błąd wczytywania danych.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>Wybrane</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>Znaleziono</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>Razem</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nazwa</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Opis</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Długi opis</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Domyślna</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Domyślny demon</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Wartości</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Zapisz</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>widok CRUSH mapy</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Ładowanie...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nazwa hosta</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Pole jest wymagane.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Tak, jestem pewny.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Anuluj</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Zamknij</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Lista hostów</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Całkowita wydajność</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Nie znaleziono wejść</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Logi z klastra </target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Audyt logów</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Ładowanie konfiguracji.</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Nie można załadować konfiguracji</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Edytuj moduł zarządzania</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Wpisana wartość nie jest poprawnym UUID, np. 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Wpisana wartość musi być poprawnym adresem IP</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Podana wartość musi być liczbą</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Podana wartość musi być liczbą albo dziesiętną.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Zaktualizuj</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Status</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>Klaster ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>Zmodyfikowana monmapa</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>epoka monmap</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>kworum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>kworum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>wymagany con</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>Wymagane mon </target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>W kworum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Nie w kworum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Dodaj</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Funkcje</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Flagi OSD w całym klastrze</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Zatwierdź</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Zaawansowane...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Priorytet odzyskiwania OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorytet</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Dostosuj wartości priorytetowe</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>To pole jest wymagane.</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Wartość powinna być pomiędzy 0 a 1. </target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Ponowne ważenie</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, wybierz, 1 {Głębokość} }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, wybierz, 1 {głębokość} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Lista OSD-ków </target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Wartość</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Edytuj</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Usuń</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Zdrowie</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statystyki</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Klienci</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Każdy klient ma dostęp</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Adresy</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Obowiązkowe pole</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Musi zawierać jedną albo więcej ,rozdzielonych przecinkiem, wartości </target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Na przykład: </target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Typ dostępu</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Dodaj klientów </target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Brak dostępnego klastra -- </target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Wybierz klaster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Dodaj demona</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Pamięć Podręczna</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Brak danych puli -- </target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Wybierz pamięć podręczną -- </target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Użytkownik dostępu obiektowego</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Brak dostępnych użytkowników -- </target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Wybierz użytkownika dostępu obiektowego -- </target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS Użytkownik ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Brak dostępnych klientów -- </target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Wybierz klienta cephx -- </target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nazwa CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Etykieta bezpieczeństwa</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Uruchom etykietę bezpieczeństwa</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Ścieżka CephFS </target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Ścieżka powinna zaczynać się z \'/\' i następne może być słowo</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Nowy katalog będzie stworzony. </target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Ścieżka</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Ścieżką może być tylko \'/\' albo słowo</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Nowe wiadro będzie stworzone </target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protokół NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Tag NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Klient może nie montować podkatalogów ( np. jeśli Tag = foo, klient może nie montować foo/baz) </target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Używając różnych opcji Tagu, ta sama Ścieżka może być wyeksportowana kilka razy.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Używając różnych opcji Pseudo, ta sama Ścieżka może być wyeksportowana kilka razy.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Brak dostępnych typów dostępu --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Wybierz typ dostępu --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>- Brak squasha -</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Wybierz, jakiego rodzaju identyfikacja użytkownika ma być przeprowadzana --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protokół Transportu </target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Witamy w Cephie! </target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nazwa użytkownika jest wymagana</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Hasło jest wymagane.</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Zaloguj</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Przepraszam, użytkownik nie istnieje w  Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Zakazany</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Przepraszam, nie masz dostępu do tego czego szukasz. </target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Konfiguracja RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Usuń wartość konfiguracji lokalnej. Wartość konfiguracji rodzica będzie odziedziczona i zostanie użyta zamiast tej.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Minimalna wartość wynosi 0.</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Lista puli</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Nazwa może składać się z alfanumerycznych znaków, kresek i podkreśleń.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Wybrana nazwa profilu kodu kasowania jest już używana.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Wtyczka</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Ramka danych (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Musi być większa bądź równa 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Kodowanie kawałka (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Musi być większa bądź równa 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Estymator trwałości (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Lokalność  (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Domena niepowodzenia Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Lokalność Crusha</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Nic</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Technika</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Rozmiar pakietu</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>korzeń Crusha</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>urządzenie klasy Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>którykolwiek</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Katalog</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nazwa...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Wybrana nazwa Ceph pula jest już użyta.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Typ pula</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Wybierz typ pula --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Grupa umieszczenia</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Przynajmniej jedna grupa umieszczenia jest wymagana</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Twój klaster nie obsługuje tylu PG. Skalkuluj proszę potrzebną ilość PG.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Pomoc obliczeniowa</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Replikowany rozmiar</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flagi</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC Nadpisuje</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Zastosowania</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Skasuj profil kodu.</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Brak profilu kasowania --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Wybierz profil kodu wymazywania --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>zbiór zasad Crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Wybierz zasadę Crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>zasada Crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Kroki Crush</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Kompresja</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Tryb</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algorytm</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Brak algorytmu kompresji wymazywania --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Minimalny rozmiar blob</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>np. 128 KB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Wartość powinna być większa niż 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Maksymalny rozmiar blob</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>np. 512 KB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Wartość powinna być większa niż minimalny rozmiar blob</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Stosunek</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Skompresowany stosunek</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Wartość powinna być pomiędzy 0.0, a 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>np. 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Szczegóły</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Szczegóły wydajności</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Szczegóły poziomów pamięci podręcznej</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Przenieś obraz do kosza</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Zabezpieczenie wygasa w </target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NIEZABEZPIECZONY </target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Zły format daty. Proszę używać "RRRR-MM-DD GG:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>Ochrona już wygasła. Proszę wybrać przyszłą datę lub zostawić pustą.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Przenieś obraz</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Przegląd</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Obiekty docelowe</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Uwierzytelnianie wykrywania</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Użytkownik</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Nazwy użytkowników muszą mieć długość od 8 do 64 znaków i \nmogą zawierać jedynie litery, \'.\', \'@\', \'-\', \'_\' lub \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Hasło</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Wspólny użytkownik </target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Wspólne hasło</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Dostępne informacje: </target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>obiekty docelowe iSCSI niedostępne </target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pul</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Dane pula</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Utworzony</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Rozmiar</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Obiekty</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Rozmiar obiektu</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Zaopatrzony</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>Niedostępny</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Całkowite rezerwy</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Jednostka maskowana</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Licznik maskowania</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Rodzic</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Prefiks nazwy bloku</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Zamówienie</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Migawki</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Obraz</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>To ustawienie zastępuję wartość globalną.</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Globalne</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>To jest globalna wartość. Dla tego obrazu nie ustawiono żadnej wartości dla tej opcji.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' and \'@\' nie są dozwolone.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Brak dostępnych rbd puli --  </target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Wybierz pul --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Użyj dedykowanych danych pul </target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Dane pul</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Dedykowany pul, który przechowuje dane obiektowe z RBD</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Musisz zwiększyć rozmiar.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Zaawansowane</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Maskowanie</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Jednostka pasków</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Wybierz jednostkę pasków -- </target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Pole jest wymagane, ponieważ licznik pasków jest zdefiniowany. </target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>Jednostka pasków jest większa niż rozmiar obiektu.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Licznik pasków </target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Pole jest wymagane, ponieważ jednostka pasków jest zdefiniowana! </target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Licznik pasków musi być większy od 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Zaraz się wycofasz. </target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Usuń Śmieci</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Wszystkie</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pul:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nazwa pula</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Przywróć obraz</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Przywróć</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>Wpisz nazwe nowego obrazu i kliknij. </target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nowa Nazwa</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Wygasły w</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Zabezpieczony do</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologia iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Zmiana tych parametrów z domyślnych wartości przeważnie nie jest potrzebna.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Ustawienia</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Tylny koniec przechowywania</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Potwierdź</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Ustawienia zaawansowane</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>Nazwa IQN obiektu docelowego iSCSI</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>Błędna składnia nazwy IQN.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Na przykład: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Więcej informacji</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Ten obiekt docelowy  zmodyfikował zaawansowane ustawienia.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portale</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Dodaj portal</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Ten obraz zmodyfikował ustawienia. </target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Dodaj obraz.</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Uwierzytelnianie ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Inicjatory iSCSI</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Inicjator iSCSI</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>Klient IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>Inicjator IQN powinien być unikalny.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Nazwy użytkowników muszą mieć długość od 8 do 64 znaków i mogą zawierać jedynie litery,  \'.\', \'@\', \'-\', \'_\' lub  \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>Inicjator iSCSI należą do grupy. Obrazy będą skonfigurowane w grupie. </target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Brak dodanych pozycji.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Dodaj inicjator iSCSI</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Grupy</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Grupa</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Dodaj grupę</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Kosz</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Zagadnienia</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Synchronizacja</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Gotowy</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Tryb edycji lustrzanego pula</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Sparowany klaster musi być usunięty  przed wyłączeniem lustra. </target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, wybierz, edytuj{Edytuj} inaczej {Dodaj} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nazwa Klastra</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Nazwa klastra jest niepoprawna </target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>ID CephX nie jest poprawne.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Adres monitora </target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Adresy rozdzielane przecinkami... </target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Adres monitora nie jest poprawny.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Klucz CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Klucz zakodowany w Base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>Klucz CephX musi być zakodowany w Base64/</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Liczniki wydajności nie są dostępne</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Lista demonów</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Liczniki wydajności</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Ładowanie wiadra danych</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>Number ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Wartość nie jest poprawna.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Wybrana nazwa już jest użyta.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Właściciel</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Wybierz użytkownika -- </target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Uaktywniony</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Typ indeksu</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Zasada umieszczania</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Znacznik</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Maksymalny znacznik</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Wersja</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Główna wersja</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Czas modyfikacji</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Strefa </target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>kontyngent wiadra</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Maksymalny rozmiar</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Nielimitowany</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Maksimum obiektów</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nazwa użytkownika</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Wybierz nazwę użytkownika -- </target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Auto-generowany klucz</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Klucz dostępu</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Tajny klucz </target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Pełne imię </target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Adres email</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Zawieszony</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>System</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Maksimum wiader</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>pod-użytkownicy</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Zdolności</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Limit użytkownika</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Pokaż</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Klucze</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Typ</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- wybierz typ --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Pozwolenie </target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Wybierz pozwolenie --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>pod-użytkownik</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>Wybrane ID pod-użytkownika jest już użyte.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>odczyt, zapis</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>pełny</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Szybki klucz</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Auto-generowany sekret</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Ładowanie danych użytkownika...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Nie można załadować danych użytkownika.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>Wybrane ID użytkownika jest już użyte.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Ten adres email nie jest poprawny.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>Wybrany adres email jest już użyty.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Max. wiader </target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Wyłączony</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Zwyczaj</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>klucz S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Nie ma pod-użytkowników.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3 (prosty serwis przechowywania) </target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Nie ma kluczy.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Szybki</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Nie ma zdolności. </target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Nielimitowany rozmiar</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Max. rozmiar</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Nielimitowane obiekty</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Max. obiektów</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Podana wartość musi być &gt;= 0</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Opis...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Pozwolenia</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Role</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Potwierdź hasło</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Potwierdzające hasło nie pokrywa się z hasłem.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>Email</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Niepoprawny email.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Zamierzasz usunąć uprawnienia „odczytu / aktualizacji użytkownika” od własnego użytkownika.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Jeśli kontynuujesz, nie będziesz mógł dodawać albo usuwać role od użytkowników.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Jesteś pewny, że chcesz kontynuować? </target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Pomoc</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Dokumentacja</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>Interfejs API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>O</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Ustawienia Pulpitu</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Zarządzanie użytkownikami</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Zalogowany użytkownik</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Wyloguj</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atrybuty (mapa OSD-ków)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Niedostępne metadane</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadane</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Licznik wydajności</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Pisze</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Czyta</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogram</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Obecne wartości </target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Max</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Źródło </target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Poziom</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Może być aktualizowany w czasie wykonywania (edytowalny)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tagi</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Wartości enumerowane </target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Zobacz także </target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Status klastra</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Zarządzanie demonami</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Obiekty bram </target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Serwery metadanych</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Bramy iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>Klient IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Przepustowość klienta</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Odczyt/Zapis klienta</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Przepustowość odzyskiwania</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Szoruj</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Wydajność</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Pojemność rzędu</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>PG-y na OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Status PG</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Pojemność</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Szeregi</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Obecny</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Zaktualizowane uwierzytelnianie wykrywania</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Brak dostępnych portali.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Nie ma dostępnych obrazów. </target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Nie ma dostępnych obrazów. Proszę się upewnić, że dodajesz obraz do obiektu docelowego. </target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Nie ma dostępnych inicjatorów iSCSI. Proszę upewnić się, że dodajesz inicjator iSCSI do obiektu docelowego.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>obiekt docelowy iSCSI</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Stan</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Odczyt bajtów </target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Zapis bajtów</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Odczyt Ops</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Zapis Ops</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O Od</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instancja</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Zagadnienie </target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Progres</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Tryb Edycji</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Dodaj parowanie </target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Edytuj parowanie</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Usuń parowanie</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Lider</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># Lokalny</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># Zdalny</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>lustrzane parowanie</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Klucz</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Głębokie spłaszczenie</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Warstwowanie </target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Wyłączna blokada</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mapa obiektów (wymaga wyłącznej blokady)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Kronikowanie  (wymaga wyłącznej blokady)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NIEZABEZPIECZONY </target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Wycofywanie migawek RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Wycofanie</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>migawka RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Usunięty o </target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>id</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>typ</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>stan</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>wersja</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>administrator</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Czuwanie demona </target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Ranga</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Demon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Aktywność</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>centrale</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>i-węzły</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Użycie</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Zaktualizowany</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>Wartość może być zaktualizowana w czasie wykonywania . </target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Demony/klienci nie pobierają tej wartości z\nbazy danych skonfigurowanego monitora. Nie zezwalamy na ustawienie tej opcji przez \'konfiguracje ceph\nustaw.. \'. Ta opcja powinna być skonfigurowana przez ceph.conf albo przez\nterminal.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>Opcja działa tylko podczas startu demona.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>Opcja dotyczy tylko tworzenia klastra.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>Opcja tylko wpływa na tworzenie demona.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Usługa</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Obecna wartość</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Edytowalny</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Włączyć</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Wyłączyć</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Ponowne łączenie, proszę czekać</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Adres publiczny</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Otwarte sesje</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Nie w </target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>OSD-ki, które zostały oznaczone jako poza, nie będą oznaczone ponownie jako w gdy zostaną uruchomion</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Nie poza</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD-ki nie będą automatycznie oznaczone jako poza po konfiguracji interwału</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Nie powstały </target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSD-ki nie mogą startować</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Nie upadły</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Raport z niepowodzenia OSD jest ignorowany, także monitory nie oznaczą OSD jako upadłego. </target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pauza </target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Pauzuje czytanie i zapisywanie</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Nie szoruj</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Szorowanie jest wyłączone</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Nie ma głębokiego szorowania</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Głębokie szorowanie jest wyłączone</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Brak zasypywania</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Zasypywanie PG jest zawieszone</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Nie przywrócono</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Przywrócenie PGy jest zawieszone </target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Sortuj bitowo</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Użyj sortowania bitowego</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Usuń snap katalogi</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD-ki zmieniły snapsety</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Odzyskaj usunięte</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Podczas zdrowienia zastosowano usunięcie zamiast parowania</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Twardy limit logów PG</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Ustawia twardy limit na długość logów PG</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Zaktualizowane flagi OSD-ków</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD-ik</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>poza</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>w</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>upadły</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Zaznacz</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>Stracony OSD</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>Zaznaczony jako stracony</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Czyść</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>Oczyszczony</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>Zniszcz</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>Zniszczony</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>Usuń</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PG-y</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Czytanie bajtów</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Zapis bajtów </target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Czytanie ops</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Zapis ops</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Max zasypywanie</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Max aktywność wyzdrowienia</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Max pojedynczy start wyzdrowienia</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Uśpienie wyzdrowienia</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Praca</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>surowość</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Wystartowany</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Użyty</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Dostępny</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Czyść</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>Działający</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Ostrzeżenie </target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Nieznany</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>Podniesiony</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>brak systemów plików</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>aktywny</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>Rezerwa</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>niedostępny</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>aktywny demon</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>kworum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Usługa NFS Ganesha nie jest skonfigurowana</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Użytkownik CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>system plików CephFS </target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(Odziedziczyło z globalnej konfiguracji)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>Odziedziczyło z globalnej konfiguracji</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Wybierz, jakiego rodzaju identyfikacja użytkownika ma być przeprowadzana -- </target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Brak dostępnym demonów</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Tryb pamięci podręcznej</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Min wiek eksmisji</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Min wiek wyrównania </target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Max bajtów obiektu docelowego </target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Max obiektów docelowych</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Nie dodano żadnego zastosowania</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Osiągnięto limit zastosowań </target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Pul może mieć maksymalnie 4 definicje aplikacji. </target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Dozwolone znaki \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Maksymalna długość wynosi 128 znaków</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtruj lub dodaj zastosowanie</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Dodaj zastosowanie</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>skasuj profil kodu</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Rozmiar repliki</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Ostatnia zmiana</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Skasuj profil zakodowany</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Zbiór zasad Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>wiadro</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>Wiadra</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>użytkownik</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>użytkownicy</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Zakres</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Czytaj</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Stwórz</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>System roli </target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Zaktualizuj użytkownika</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Kontynuuj </target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Zostałeś automatycznie wylogowany, ponieważ zostały zmienione twoje role.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Każdy obiekt jest podzielony na części fragmentów danych, każdy jest przechowywany na innym OSD.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Oblicz porcje kodu dla każdego obiektu i przechowuj je na różnych OSD.\n Liczba fragmentów kodujących to również liczba OSD, które mogą zostać wyłączone bez utraty danych.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Wtyczka jerasure jest najbardziej uniwersalną i elastyczną wtyczką,\n jest to również domyślne ustawienie dla pui kodowanych przez Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Bardziej elastyczną techniką jest reed_sol_van: wystarczy ustawić k\n oraz m. Technika cauchy_good może być szybsza, ale musisz wybrać rozmiar pakietu\n ostrożnie. Wszystkie reed_sol_r6_op, liberation, blaum_roth, liber8tion są odpowiednikami RAID6\n w tym sensie, że mogą być skonfigurowane tylko z m = 2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>Kodowanie będzie wykonywane na pakietach o rozmiarze bajtów naraz.\n Wybór odpowiedniego rozmiaru pakietu jest trudny.\n Dokumentacja jerasure zawiera obszerne informacje na ten temat.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Z wtyczką jerasure, gdy obiekt zakodowany przy użyciu skasowania jest przechowywany na \n wielu OSD-kach, odzyskiwanie po utracie jednego OSD wymaga odczytu ze wszystkich pozostałych.\n Na przykład, jeśli konfiguracja skryptu ma wartość k = 8 ,m = 4 i l=4, utrata jednego OSD wymaga odczytu\n od jedenastu innych do naprawy.\n\n Wtyczka kodu wymazywania lrc tworzy fragmenty o parzystości lokalnej, aby móc je odzyskać\n mniej OSD. Na przykład, jeśli lrc jest skonfigurowane z k = 8, m = 4 i l = 4, zostanie utworzony\n dodatkowy fragment parzystości na każde cztery OSD. Gdy jeden OSD zostanie utracone, może to być\n odzyskane tylko z czterema OSD zamiast jedenastu.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Grupuj fragmenty kodu i danych w zestawy lokalizacji wielkości. Na przykład,\n dla k = 4 i m = 2, gdy lokalność = 3 tworzone są dwie grupy po trzy. Każdy zestaw może\n odzyskać bez czytania kawałków z innego zestawu.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Typ wiadra CRUSH, w którym zdefiniowano każdy zestaw porcji\n przez l zostaną zapisane. Na przykład, jeśli jest ustawiony na rack, każda grupa l porcji będzie\n umieszczona w innym raku. Służy do utworzenia kroku reguły CRUSH, takiego jak krok wyboru\n racka. Jeśli nie jest ustawiony, nie ma takiego grupowania.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Wtyczka isa zawiera bibliotekę ISA. Działa tylko na procesorach Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Wtyczka ISA jest dostępna w dwóch formach Reed Solomon.\n Jeśli ustawiono reed_sol_van, jest to Vandermonde, jeśli ustawiono cauchy, to jest to Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Wtyczka shec zawiera wiele bibliotek SHEC.\n Pozwala ceph odzyskać dane bardziej efektywnie niż kody Reeda Solomona.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Liczba kawałków parzystości, z których każdy zawiera każdą porcję danych w swoim zakresie obliczeń. Liczba jest używana jako estymator trwałości. Na przykład, jeśli c = 2,\n 2 OSD można wyłączyć bez utraty danych.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Nazwa wiadra crush jest użyte do pierwszego kroku reguły CRUSH.\nNa przykład krok jest domyślny.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Upewnij się, że żadne dwie porcje nie znajdują się w wiadrze z tą samą awarią\n domeny. Na przykład, jeśli domena awarii jest hostem, nie zostaną na niej zapisane dwie porcje\n hosta. Służy do utworzenia kroku reguły CRUSH, takiego jak krok wyboru hosta.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Ogranicz umieszczanie do urządzeń określonej klasy\n (np. ssd lub hdd), używając nazw klas urządzeń zgniatających na mapie CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Ustaw nazwę katalogu, z którego ładowana jest wtyczka kodu kasowania.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Dozwolone są wszystkie operacje</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Dozwolone są operacje, które nie modyfikują serweru</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Operacje odczytu i zapisu są zakazane, wszystkie inne dozwolone</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Operacje odczytu i zapisu, oraz wszystkie operacje modyfikujące atrybuty albo katalogi są zakazane </target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Brak dostępu w ogóle</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- wybierz priorytet -- </target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Niski</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Wysoki</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informacja</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Ostatnie 5 minut</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Ostatnie 15 minut</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Ostatnie 30 minut</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Ostatnia 1 godzina (domyślnie)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Ostatnie 3 godziny</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Ostatnie 6 godzin</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Ostatnie 12 godzin</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Ostatnie 24 godziny</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Wczoraj</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Dzisiaj</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Do tej pory dzisiaj</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Przedwczoraj</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Ostatnie 2 dni</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Tego dnia tydzień temu</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Poprzedni tydzień</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Ten tydzień </target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Do tej pory w tym tygodniu</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Ostatnie 7 dni</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Poprzedniego miesiąca</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>ten miesiąc</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Do tej pory w tym miesiącu</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Ostatnie 30 dni</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Ostatnie 90 dni</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Ostatnie 6 miesięcy</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Ostatni 1 rok</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Poprzedniego roku</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Bieżącego roku</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Do tej pory bieżącego roku</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Ostatnie 2 lata</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Ostatnie 5 lat</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Nie wybrano żadnej pozycji</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Odznacz pozycję, żeby wybrać ponownie</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Osiągnięto limit wyboru. </target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Filtr tagów.</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Dodaj odznakę</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Brak dostępnych pozycji.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Sklonuj</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Kopia</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Szoruj głęboko</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Zniszcz</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Spłaszcz</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>zaznacz jako upadły</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Zaznacz jako w </target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Zaznacz jako stracony</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Zaznacz jako poza</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Zabezpiecz</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Zmień nazwę</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Przywróć</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Przenieś do kosza</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Odbezpiecz </target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Usunięty</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Sklonowano</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Skopiowano </target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Spłaszczony</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Oczyszczony</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Przywrócony</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Wycofaj</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Tak</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Nie</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Jakość serwisu</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limit BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Pożądany limit IO bajtów na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limit IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Pożądany limit operacji IO na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>limit odczytu BPS</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Pożądany limit odczytu bajtów na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>limit  odczytu IOPS</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Pożądany limit operacji odczytu na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limit zapisu BPS</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Pożądany limit zapisu bajtów na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limit zapisu IOPS</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Pożądany limit operacji zapisu na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Wiązka BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Żądana granica serii IO bajtów.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Wiązka IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Żądana granica serii operacji IO.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Odczyt wiązki BPS</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Żądana granica serii odczytanych bajtów.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Odczyt wiązki IOPS</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target> Żądana granica serii operacji odczytu.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Zapis wiązki BPS</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Żądana granica serii bajtów zapisu.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Zapis wiązki IOPS</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Żądana granica serii operacji zapisu.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Wykonywanie </target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>Wykonaj</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Wykonany</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>Nieznane zadanie</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Tworzenie</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>Utwórz</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Aktualizowanie </target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>Zaktualizuj</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Usuwanie</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Klonowanie</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>Sklonuj </target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Kopiowanie </target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>Kopiuj</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Spłaszczanie</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>Spłaszcz</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Wycofywanie </target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>Wycofanie</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Przenoszenie</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>Przenieś</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Przeniesiono</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Nie znaleziono obrazu.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Przywracanie</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>Przywróć </target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>oczyszczać</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>oczyść</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>Wszystkie pule</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Nie można wyłączyć lustrzenia ponieważ zawiera parowanie.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},SQuY:function(t,e,n){var a=n("Dd78"),r=n("Tq0f"),i=n("lPUB"),s=n("3ENo"),u=n("wgvl");function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}o.prototype.clear=a,o.prototype.delete=r,o.prototype.get=i,o.prototype.has=s,o.prototype.set=u,t.exports=o},STAE:function(t,e,n){var a=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!a((function(){return!String(Symbol())}))},SVse:function(t,e,n){"use strict";n.r(e),n.d(e,"ɵangular_packages_common_common_c",(function(){return ae})),n.d(e,"ɵangular_packages_common_common_h",(function(){return At})),n.d(e,"ɵangular_packages_common_common_g",(function(){return Ct})),n.d(e,"ɵangular_packages_common_common_f",(function(){return Nt})),n.d(e,"ɵangular_packages_common_common_k",(function(){return Qt})),n.d(e,"ɵangular_packages_common_common_j",(function(){return Zt})),n.d(e,"ɵangular_packages_common_common_i",(function(){return $t})),n.d(e,"ɵangular_packages_common_common_a",(function(){return ft})),n.d(e,"ɵangular_packages_common_common_b",(function(){return bt})),n.d(e,"ɵangular_packages_common_common_e",(function(){return Se})),n.d(e,"ɵangular_packages_common_common_d",(function(){return Ke})),n.d(e,"ɵregisterLocaleData",(function(){return mt})),n.d(e,"registerLocaleData",(function(){return mt})),n.d(e,"formatDate",(function(){return K})),n.d(e,"formatCurrency",(function(){return ut})),n.d(e,"formatNumber",(function(){return lt})),n.d(e,"formatPercent",(function(){return ot})),n.d(e,"NgLocaleLocalization",(function(){return pt})),n.d(e,"NgLocalization",(function(){return ht})),n.d(e,"Plural",(function(){return g})),n.d(e,"NumberFormatStyle",(function(){return h})),n.d(e,"FormStyle",(function(){return p})),n.d(e,"TranslationWidth",(function(){return b})),n.d(e,"FormatWidth",(function(){return m})),n.d(e,"NumberSymbol",(function(){return y})),n.d(e,"WeekDay",(function(){return v})),n.d(e,"getNumberOfCurrencyDigits",(function(){return G})),n.d(e,"getCurrencySymbol",(function(){return V})),n.d(e,"getLocaleDayPeriods",(function(){return _})),n.d(e,"getLocaleDayNames",(function(){return T})),n.d(e,"getLocaleMonthNames",(function(){return w})),n.d(e,"getLocaleId",(function(){return x})),n.d(e,"getLocaleEraNames",(function(){return O})),n.d(e,"getLocaleWeekEndRange",(function(){return I})),n.d(e,"getLocaleFirstDayOfWeek",(function(){return S})),n.d(e,"getLocaleDateFormat",(function(){return N})),n.d(e,"getLocaleDateTimeFormat",(function(){return R})),n.d(e,"getLocaleExtraDayPeriodRules",(function(){return M})),n.d(e,"getLocaleExtraDayPeriods",(function(){return q})),n.d(e,"getLocalePluralCase",(function(){return D})),n.d(e,"getLocaleTimeFormat",(function(){return C})),n.d(e,"getLocaleNumberSymbol",(function(){return A})),n.d(e,"getLocaleNumberFormat",(function(){return k})),n.d(e,"getLocaleCurrencyName",(function(){return L})),n.d(e,"getLocaleCurrencySymbol",(function(){return E})),n.d(e,"ɵparseCookieValue",(function(){return yt})),n.d(e,"CommonModule",(function(){return $e})),n.d(e,"DeprecatedI18NPipesModule",(function(){return Ze})),n.d(e,"NgClass",(function(){return Lt})),n.d(e,"NgClassBase",(function(){return Et})),n.d(e,"NgForOf",(function(){return Mt})),n.d(e,"NgForOfContext",(function(){return Pt})),n.d(e,"NgIf",(function(){return jt})),n.d(e,"NgIfContext",(function(){return Ft})),n.d(e,"NgPlural",(function(){return Ht})),n.d(e,"NgPluralCase",(function(){return Ut})),n.d(e,"NgStyle",(function(){return ee})),n.d(e,"NgStyleBase",(function(){return te})),n.d(e,"NgSwitch",(function(){return Bt})),n.d(e,"NgSwitchCase",(function(){return zt})),n.d(e,"NgSwitchDefault",(function(){return Yt})),n.d(e,"NgTemplateOutlet",(function(){return ne})),n.d(e,"NgComponentOutlet",(function(){return Dt})),n.d(e,"DOCUMENT",(function(){return Je})),n.d(e,"AsyncPipe",(function(){return Ae})),n.d(e,"DatePipe",(function(){return Pe})),n.d(e,"I18nPluralPipe",(function(){return qe})),n.d(e,"I18nSelectPipe",(function(){return je})),n.d(e,"JsonPipe",(function(){return Fe})),n.d(e,"LowerCasePipe",(function(){return ke})),n.d(e,"CurrencyPipe",(function(){return Ye})),n.d(e,"DecimalPipe",(function(){return Be})),n.d(e,"PercentPipe",(function(){return ze})),n.d(e,"SlicePipe",(function(){return We})),n.d(e,"UpperCasePipe",(function(){return De})),n.d(e,"TitleCasePipe",(function(){return Le})),n.d(e,"KeyValuePipe",(function(){return Ve})),n.d(e,"DeprecatedDatePipe",(function(){return ve})),n.d(e,"DeprecatedCurrencyPipe",(function(){return Oe})),n.d(e,"DeprecatedDecimalPipe",(function(){return Te})),n.d(e,"DeprecatedPercentPipe",(function(){return we})),n.d(e,"ɵPLATFORM_BROWSER_ID",(function(){return Qe})),n.d(e,"ɵPLATFORM_SERVER_ID",(function(){return Xe})),n.d(e,"ɵPLATFORM_WORKER_APP_ID",(function(){return tn})),n.d(e,"ɵPLATFORM_WORKER_UI_ID",(function(){return en})),n.d(e,"isPlatformBrowser",(function(){return nn})),n.d(e,"isPlatformServer",(function(){return an})),n.d(e,"isPlatformWorkerApp",(function(){return rn})),n.d(e,"isPlatformWorkerUi",(function(){return sn})),n.d(e,"VERSION",(function(){return un})),n.d(e,"ViewportScroller",(function(){return on})),n.d(e,"ɵNullViewportScroller",(function(){return dn})),n.d(e,"ɵNgClassImplProvider__POST_R3__",(function(){return Rt})),n.d(e,"ɵNgClassR2Impl",(function(){return It})),n.d(e,"ɵNgClassImpl",(function(){return St})),n.d(e,"ɵNgStyleImplProvider__POST_R3__",(function(){return Jt})),n.d(e,"ɵNgStyleR2Impl",(function(){return Kt})),n.d(e,"ɵNgStyleImpl",(function(){return Wt})),n.d(e,"ɵngStyleDirectiveDef__POST_R3__",(function(){return Xt})),n.d(e,"ɵngClassDirectiveDef__POST_R3__",(function(){return kt})),n.d(e,"PlatformLocation",(function(){return r})),n.d(e,"LOCATION_INITIALIZED",(function(){return i})),n.d(e,"LocationStrategy",(function(){return s})),n.d(e,"APP_BASE_HREF",(function(){return u})),n.d(e,"HashLocationStrategy",(function(){return d})),n.d(e,"PathLocationStrategy",(function(){return c})),n.d(e,"Location",(function(){return o}));var a=n("8Y7J");class r{}const i=new a.InjectionToken("Location Initialized");class s{}const u=new a.InjectionToken("appBaseHref");class o{constructor(t,e){this._subject=new a.EventEmitter,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=o.stripTrailingSlash(l(n)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(t,e=""){return this.path()==this.normalize(t+o.normalizeQueryParams(e))}normalize(t){return o.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,l(t)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+o.normalizeQueryParams(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+o.normalizeQueryParams(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}function l(t){return t.replace(/\/index.html$/,"")}class d extends s{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=o.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,a){let r=this.prepareExternalUrl(n+o.normalizeQueryParams(a));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,a){let r=this.prepareExternalUrl(n+o.normalizeQueryParams(a));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}class c extends s{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return o.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+o.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,a){const r=this.prepareExternalUrl(n+o.normalizeQueryParams(a));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,a){const r=this.prepareExternalUrl(n+o.normalizeQueryParams(a));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}const f={ADP:[void 0,void 0,0],AFN:[void 0,void 0,0],ALL:[void 0,void 0,0],AMD:[void 0,void 0,0],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"৳"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,"р.",2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN¥","¥"],COP:[void 0,"$",0],CRC:[void 0,"₡",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"Kč",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E£"],ESP:[void 0,"₧",0],EUR:["€"],FJD:[void 0,"$"],FKP:[void 0,"£"],GBP:["£"],GEL:[void 0,"₾"],GIP:[void 0,"£"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",0],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",0],ILS:["₪"],INR:["₹"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["¥",void 0,0],KHR:[void 0,"៛"],KMF:[void 0,"CF",0],KPW:[void 0,"₩",0],KRW:["₩",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"₸"],LAK:[void 0,"₭",0],LBP:[void 0,"L£",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"₮",0],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",0],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"₦"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:[void 0,"₱"],PKR:[void 0,"Rs",0],PLN:[void 0,"zł"],PYG:[void 0,"₲",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"₽"],RUR:[void 0,"р."],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"£"],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"£"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"£",0],THB:[void 0,"฿"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"₺"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,0],UAH:[void 0,"₴"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UZS:[void 0,void 0,0],VEF:[void 0,"Bs"],VND:["₫",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["CFA",void 0,0],XPF:["CFPF",void 0,0],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]},h=function(){var t={Decimal:0,Percent:1,Currency:2,Scientific:3};return t[t.Decimal]="Decimal",t[t.Percent]="Percent",t[t.Currency]="Currency",t[t.Scientific]="Scientific",t}(),g=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),p=function(){var t={Format:0,Standalone:1};return t[t.Format]="Format",t[t.Standalone]="Standalone",t}(),b=function(){var t={Narrow:0,Abbreviated:1,Wide:2,Short:3};return t[t.Narrow]="Narrow",t[t.Abbreviated]="Abbreviated",t[t.Wide]="Wide",t[t.Short]="Short",t}(),m=function(){var t={Short:0,Medium:1,Long:2,Full:3};return t[t.Short]="Short",t[t.Medium]="Medium",t[t.Long]="Long",t[t.Full]="Full",t}(),y=function(){var t={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};return t[t.Decimal]="Decimal",t[t.Group]="Group",t[t.List]="List",t[t.PercentSign]="PercentSign",t[t.PlusSign]="PlusSign",t[t.MinusSign]="MinusSign",t[t.Exponential]="Exponential",t[t.SuperscriptingExponent]="SuperscriptingExponent",t[t.PerMille]="PerMille",t[t.Infinity]="Infinity",t[t.NaN]="NaN",t[t.TimeSeparator]="TimeSeparator",t[t.CurrencyDecimal]="CurrencyDecimal",t[t.CurrencyGroup]="CurrencyGroup",t}(),v=function(){var t={Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6};return t[t.Sunday]="Sunday",t[t.Monday]="Monday",t[t.Tuesday]="Tuesday",t[t.Wednesday]="Wednesday",t[t.Thursday]="Thursday",t[t.Friday]="Friday",t[t.Saturday]="Saturday",t}();function x(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].LocaleId]}function _(t,e,n){const r=Object(a["ɵfindLocaleData"])(t),i=j([r[a["ɵLocaleDataIndex"].DayPeriodsFormat],r[a["ɵLocaleDataIndex"].DayPeriodsStandalone]],e);return j(i,n)}function T(t,e,n){const r=Object(a["ɵfindLocaleData"])(t),i=j([r[a["ɵLocaleDataIndex"].DaysFormat],r[a["ɵLocaleDataIndex"].DaysStandalone]],e);return j(i,n)}function w(t,e,n){const r=Object(a["ɵfindLocaleData"])(t),i=j([r[a["ɵLocaleDataIndex"].MonthsFormat],r[a["ɵLocaleDataIndex"].MonthsStandalone]],e);return j(i,n)}function O(t,e){return j(Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].Eras],e)}function S(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].FirstDayOfWeek]}function I(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].WeekendRange]}function N(t,e){return j(Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].DateFormat],e)}function C(t,e){return j(Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].TimeFormat],e)}function R(t,e){return j(Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].DateTimeFormat],e)}function A(t,e){const n=Object(a["ɵfindLocaleData"])(t),r=n[a["ɵLocaleDataIndex"].NumberSymbols][e];if(void 0===r){if(e===y.CurrencyDecimal)return n[a["ɵLocaleDataIndex"].NumberSymbols][y.Decimal];if(e===y.CurrencyGroup)return n[a["ɵLocaleDataIndex"].NumberSymbols][y.Group]}return r}function k(t,e){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].NumberFormats][e]}function E(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].CurrencySymbol]||null}function L(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].CurrencyName]||null}const D=a["ɵgetLocalePluralCase"];function P(t){if(!t[a["ɵLocaleDataIndex"].ExtraData])throw new Error(`Missing extra locale data for the locale "${t[a["ɵLocaleDataIndex"].LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function M(t){const e=Object(a["ɵfindLocaleData"])(t);return P(e),(e[a["ɵLocaleDataIndex"].ExtraData][2]||[]).map(t=>"string"==typeof t?F(t):[F(t[0]),F(t[1])])}function q(t,e,n){const r=Object(a["ɵfindLocaleData"])(t);P(r);const i=j([r[a["ɵLocaleDataIndex"].ExtraData][0],r[a["ɵLocaleDataIndex"].ExtraData][1]],e)||[];return j(i,n)||[]}function j(t,e){for(let n=e;n>-1;n--)if(void 0!==t[n])return t[n];throw new Error("Locale data API: locale data undefined")}function F(t){const[e,n]=t.split(":");return{hours:+e,minutes:+n}}function V(t,e,n="en"){const r=function(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].Currencies]}(n)[t]||f[t]||[],i=r[1];return"narrow"===e&&"string"==typeof i?i:r[0]||t}function G(t){let e;const n=f[t];return n&&(e=n[2]),"number"==typeof e?e:2}const B=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,z={},Y=/((?:[^GyMLwWdEabBhHmsSzZO']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/,H=function(){var t={Short:0,ShortGMT:1,Long:2,Extended:3};return t[t.Short]="Short",t[t.ShortGMT]="ShortGMT",t[t.Long]="Long",t[t.Extended]="Extended",t}(),U=function(){var t={FullYear:0,Month:1,Date:2,Hours:3,Minutes:4,Seconds:5,FractionalSeconds:6,Day:7};return t[t.FullYear]="FullYear",t[t.Month]="Month",t[t.Date]="Date",t[t.Hours]="Hours",t[t.Minutes]="Minutes",t[t.Seconds]="Seconds",t[t.FractionalSeconds]="FractionalSeconds",t[t.Day]="Day",t}(),W=function(){var t={DayPeriods:0,Days:1,Months:2,Eras:3};return t[t.DayPeriods]="DayPeriods",t[t.Days]="Days",t[t.Months]="Months",t[t.Eras]="Eras",t}();function K(t,e,n,a){let r=function(t){if(rt(t))return t;if("number"==typeof t&&!isNaN(t))return new Date(t);if("string"==typeof t){t=t.trim();const e=parseFloat(t);if(!isNaN(t-e))return new Date(e);if(/^(\d{4}-\d{1,2}-\d{1,2})$/.test(t)){const[e,n,a]=t.split("-").map(t=>+t);return new Date(e,n-1,a)}let n;if(n=t.match(B))return at(n)}const e=new Date(t);if(!rt(e))throw new Error(`Unable to convert "${t}" into a date`);return e}(t);e=function t(e,n){const a=x(e);if(z[a]=z[a]||{},z[a][n])return z[a][n];let r="";switch(n){case"shortDate":r=N(e,m.Short);break;case"mediumDate":r=N(e,m.Medium);break;case"longDate":r=N(e,m.Long);break;case"fullDate":r=N(e,m.Full);break;case"shortTime":r=C(e,m.Short);break;case"mediumTime":r=C(e,m.Medium);break;case"longTime":r=C(e,m.Long);break;case"fullTime":r=C(e,m.Full);break;case"short":const n=t(e,"shortTime"),a=t(e,"shortDate");r=$(R(e,m.Short),[n,a]);break;case"medium":const i=t(e,"mediumTime"),s=t(e,"mediumDate");r=$(R(e,m.Medium),[i,s]);break;case"long":const u=t(e,"longTime"),o=t(e,"longDate");r=$(R(e,m.Long),[u,o]);break;case"full":const l=t(e,"fullTime"),d=t(e,"fullDate");r=$(R(e,m.Full),[l,d])}return r&&(z[a][n]=r),r}(n,e)||e;let i,s=[];for(;e;){if(i=Y.exec(e),!i){s.push(e);break}{s=s.concat(i.slice(1));const t=s.pop();if(!t)break;e=t}}let u=r.getTimezoneOffset();a&&(u=nt(a,u),r=function(t,e,n){const a=t.getTimezoneOffset();return function(t,e){return(t=new Date(t.getTime())).setMinutes(t.getMinutes()+e),t}(t,-1*(nt(e,a)-a))}(r,a));let o="";return s.forEach(t=>{const e=function(t){if(et[t])return et[t];let e;switch(t){case"G":case"GG":case"GGG":e=Q(W.Eras,b.Abbreviated);break;case"GGGG":e=Q(W.Eras,b.Wide);break;case"GGGGG":e=Q(W.Eras,b.Narrow);break;case"y":e=J(U.FullYear,1,0,!1,!0);break;case"yy":e=J(U.FullYear,2,0,!0,!0);break;case"yyy":e=J(U.FullYear,3,0,!1,!0);break;case"yyyy":e=J(U.FullYear,4,0,!1,!0);break;case"M":case"L":e=J(U.Month,1,1);break;case"MM":case"LL":e=J(U.Month,2,1);break;case"MMM":e=Q(W.Months,b.Abbreviated);break;case"MMMM":e=Q(W.Months,b.Wide);break;case"MMMMM":e=Q(W.Months,b.Narrow);break;case"LLL":e=Q(W.Months,b.Abbreviated,p.Standalone);break;case"LLLL":e=Q(W.Months,b.Wide,p.Standalone);break;case"LLLLL":e=Q(W.Months,b.Narrow,p.Standalone);break;case"w":e=tt(1);break;case"ww":e=tt(2);break;case"W":e=tt(1,!0);break;case"d":e=J(U.Date,1);break;case"dd":e=J(U.Date,2);break;case"E":case"EE":case"EEE":e=Q(W.Days,b.Abbreviated);break;case"EEEE":e=Q(W.Days,b.Wide);break;case"EEEEE":e=Q(W.Days,b.Narrow);break;case"EEEEEE":e=Q(W.Days,b.Short);break;case"a":case"aa":case"aaa":e=Q(W.DayPeriods,b.Abbreviated);break;case"aaaa":e=Q(W.DayPeriods,b.Wide);break;case"aaaaa":e=Q(W.DayPeriods,b.Narrow);break;case"b":case"bb":case"bbb":e=Q(W.DayPeriods,b.Abbreviated,p.Standalone,!0);break;case"bbbb":e=Q(W.DayPeriods,b.Wide,p.Standalone,!0);break;case"bbbbb":e=Q(W.DayPeriods,b.Narrow,p.Standalone,!0);break;case"B":case"BB":case"BBB":e=Q(W.DayPeriods,b.Abbreviated,p.Format,!0);break;case"BBBB":e=Q(W.DayPeriods,b.Wide,p.Format,!0);break;case"BBBBB":e=Q(W.DayPeriods,b.Narrow,p.Format,!0);break;case"h":e=J(U.Hours,1,-12);break;case"hh":e=J(U.Hours,2,-12);break;case"H":e=J(U.Hours,1);break;case"HH":e=J(U.Hours,2);break;case"m":e=J(U.Minutes,1);break;case"mm":e=J(U.Minutes,2);break;case"s":e=J(U.Seconds,1);break;case"ss":e=J(U.Seconds,2);break;case"S":e=J(U.FractionalSeconds,1);break;case"SS":e=J(U.FractionalSeconds,2);break;case"SSS":e=J(U.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":e=X(H.Short);break;case"ZZZZZ":e=X(H.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":e=X(H.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":e=X(H.Long);break;default:return null}return et[t]=e,e}(t);o+=e?e(r,n,u):"''"===t?"'":t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),o}function $(t,e){return e&&(t=t.replace(/\{([^}]+)}/g,(function(t,n){return null!=e&&n in e?e[n]:t}))),t}function Z(t,e,n="-",a,r){let i="";(t<0||r&&t<=0)&&(r?t=1-t:(t=-t,i=n));let s=String(t);for(;s.length<e;)s="0"+s;return a&&(s=s.substr(s.length-e)),i+s}function J(t,e,n=0,a=!1,r=!1){return function(i,s){let u=function(t,e){switch(t){case U.FullYear:return e.getFullYear();case U.Month:return e.getMonth();case U.Date:return e.getDate();case U.Hours:return e.getHours();case U.Minutes:return e.getMinutes();case U.Seconds:return e.getSeconds();case U.FractionalSeconds:return e.getMilliseconds();case U.Day:return e.getDay();default:throw new Error(`Unknown DateType value "${t}".`)}}(t,i);if((n>0||u>-n)&&(u+=n),t===U.Hours)0===u&&-12===n&&(u=12);else if(t===U.FractionalSeconds)return o=e,Z(u,3).substr(0,o);var o;const l=A(s,y.MinusSign);return Z(u,e,l,a,r)}}function Q(t,e,n=p.Format,a=!1){return function(r,i){return function(t,e,n,a,r,i){switch(n){case W.Months:return w(e,r,a)[t.getMonth()];case W.Days:return T(e,r,a)[t.getDay()];case W.DayPeriods:const s=t.getHours(),u=t.getMinutes();if(i){const t=M(e),n=q(e,r,a);let i;if(t.forEach((t,e)=>{if(Array.isArray(t)){const{hours:a,minutes:r}=t[0],{hours:o,minutes:l}=t[1];s>=a&&u>=r&&(s<o||s===o&&u<l)&&(i=n[e])}else{const{hours:a,minutes:r}=t;a===s&&r===u&&(i=n[e])}}),i)return i}return _(e,r,a)[s<12?0:1];case W.Eras:return O(e,a)[t.getFullYear()<=0?0:1];default:throw new Error("unexpected translation type "+n)}}(r,i,t,e,n,a)}}function X(t){return function(e,n,a){const r=-1*a,i=A(n,y.MinusSign),s=r>0?Math.floor(r/60):Math.ceil(r/60);switch(t){case H.Short:return(r>=0?"+":"")+Z(s,2,i)+Z(Math.abs(r%60),2,i);case H.ShortGMT:return"GMT"+(r>=0?"+":"")+Z(s,1,i);case H.Long:return"GMT"+(r>=0?"+":"")+Z(s,2,i)+":"+Z(Math.abs(r%60),2,i);case H.Extended:return 0===a?"Z":(r>=0?"+":"")+Z(s,2,i)+":"+Z(Math.abs(r%60),2,i);default:throw new Error(`Unknown zone width "${t}"`)}}}function tt(t,e=!1){return function(n,a){let r;if(e){const t=new Date(n.getFullYear(),n.getMonth(),1).getDay()-1,e=n.getDate();r=1+Math.floor((e+t)/7)}else{const t=function(t){const e=new Date(t,0,1).getDay();return new Date(t,0,1+(e<=4?4:11)-e)}(n.getFullYear()),e=(i=n,new Date(i.getFullYear(),i.getMonth(),i.getDate()+(4-i.getDay()))).getTime()-t.getTime();r=1+Math.round(e/6048e5)}var i;return Z(r,t,A(a,y.MinusSign))}}const et={};function nt(t,e){t=t.replace(/:/g,"");const n=Date.parse("Jan 01, 1970 00:00:00 "+t)/6e4;return isNaN(n)?e:n}function at(t){const e=new Date(0);let n=0,a=0;const r=t[8]?e.setUTCFullYear:e.setFullYear,i=t[8]?e.setUTCHours:e.setHours;t[9]&&(n=Number(t[9]+t[10]),a=Number(t[9]+t[11])),r.call(e,Number(t[1]),Number(t[2])-1,Number(t[3]));const s=Number(t[4]||0)-n,u=Number(t[5]||0)-a,o=Number(t[6]||0),l=Math.round(1e3*parseFloat("0."+(t[7]||0)));return i.call(e,s,u,o,l),e}function rt(t){return t instanceof Date&&!isNaN(t.valueOf())}const it=/^(\d+)?\.((\d+)(-(\d+))?)?$/;function st(t,e,n,a,r,i,s=!1){let u="",o=!1;if(isFinite(t)){let l=function(t){let e,n,a,r,i,s=Math.abs(t)+"",u=0;for((n=s.indexOf("."))>-1&&(s=s.replace(".","")),(a=s.search(/e/i))>0?(n<0&&(n=a),n+=+s.slice(a+1),s=s.substring(0,a)):n<0&&(n=s.length),a=0;"0"===s.charAt(a);a++);if(a===(i=s.length))e=[0],n=1;else{for(i--;"0"===s.charAt(i);)i--;for(n-=a,e=[],r=0;a<=i;a++,r++)e[r]=Number(s.charAt(a))}return n>22&&(e=e.splice(0,21),u=n-1,n=1),{digits:e,exponent:u,integerLen:n}}(t);s&&(l=function(t){if(0===t.digits[0])return t;const e=t.digits.length-t.integerLen;return t.exponent?t.exponent+=2:(0===e?t.digits.push(0,0):1===e&&t.digits.push(0),t.integerLen+=2),t}(l));let d=e.minInt,c=e.minFrac,f=e.maxFrac;if(i){const t=i.match(it);if(null===t)throw new Error(i+" is not a valid digit info");const e=t[1],n=t[3],a=t[5];null!=e&&(d=ct(e)),null!=n&&(c=ct(n)),null!=a?f=ct(a):null!=n&&c>f&&(f=c)}!function(t,e,n){if(e>n)throw new Error(`The minimum number of digits after fraction (${e}) is higher than the maximum (${n}).`);let a=t.digits,r=a.length-t.integerLen;const i=Math.min(Math.max(e,r),n);let s=i+t.integerLen,u=a[s];if(s>0){a.splice(Math.max(t.integerLen,s));for(let t=s;t<a.length;t++)a[t]=0}else{r=Math.max(0,r),t.integerLen=1,a.length=Math.max(1,s=i+1),a[0]=0;for(let t=1;t<s;t++)a[t]=0}if(u>=5)if(s-1<0){for(let e=0;e>s;e--)a.unshift(0),t.integerLen++;a.unshift(1),t.integerLen++}else a[s-1]++;for(;r<Math.max(0,i);r++)a.push(0);let o=0!==i;const l=e+t.integerLen,d=a.reduceRight((function(t,e,n,a){return a[n]=(e+=t)<10?e:e-10,o&&(0===a[n]&&n>=l?a.pop():o=!1),e>=10?1:0}),0);d&&(a.unshift(d),t.integerLen++)}(l,c,f);let h=l.digits,g=l.integerLen;const p=l.exponent;let b=[];for(o=h.every(t=>!t);g<d;g++)h.unshift(0);for(;g<0;g++)h.unshift(0);g>0?b=h.splice(g,h.length):(b=h,h=[0]);const m=[];for(h.length>=e.lgSize&&m.unshift(h.splice(-e.lgSize,h.length).join(""));h.length>e.gSize;)m.unshift(h.splice(-e.gSize,h.length).join(""));h.length&&m.unshift(h.join("")),u=m.join(A(n,a)),b.length&&(u+=A(n,r)+b.join("")),p&&(u+=A(n,y.Exponential)+"+"+p)}else u=A(n,y.Infinity);return u=t<0&&!o?e.negPre+u+e.negSuf:e.posPre+u+e.posSuf,u}function ut(t,e,n,a,r){const i=dt(k(e,h.Currency),A(e,y.MinusSign));return i.minFrac=G(a),i.maxFrac=i.minFrac,st(t,i,e,y.CurrencyGroup,y.CurrencyDecimal,r).replace("¤",n).replace("¤","")}function ot(t,e,n){return st(t,dt(k(e,h.Percent),A(e,y.MinusSign)),e,y.Group,y.Decimal,n,!0).replace(new RegExp("%","g"),A(e,y.PercentSign))}function lt(t,e,n){return st(t,dt(k(e,h.Decimal),A(e,y.MinusSign)),e,y.Group,y.Decimal,n)}function dt(t,e="-"){const n={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},a=t.split(";"),r=a[0],i=a[1],s=-1!==r.indexOf(".")?r.split("."):[r.substring(0,r.lastIndexOf("0")+1),r.substring(r.lastIndexOf("0")+1)],u=s[0],o=s[1]||"";n.posPre=u.substr(0,u.indexOf("#"));for(let d=0;d<o.length;d++){const t=o.charAt(d);"0"===t?n.minFrac=n.maxFrac=d+1:"#"===t?n.maxFrac=d+1:n.posSuf+=t}const l=u.split(",");if(n.gSize=l[1]?l[1].length:0,n.lgSize=l[2]||l[1]?(l[2]||l[1]).length:0,i){const t=r.length-n.posPre.length-n.posSuf.length,e=i.indexOf("#");n.negPre=i.substr(0,e).replace(/'/g,""),n.negSuf=i.substr(e+t).replace(/'/g,"")}else n.negPre=e+n.posPre,n.negSuf=n.posSuf;return n}function ct(t){const e=parseInt(t);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+t);return e}const ft=new a.InjectionToken("UseV4Plurals");class ht{}function gt(t,e,n,a){let r="="+t;if(e.indexOf(r)>-1)return r;if(r=n.getPluralCategory(t,a),e.indexOf(r)>-1)return r;if(e.indexOf("other")>-1)return"other";throw new Error(`No plural message found for value "${t}"`)}class pt extends ht{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):D(e||this.locale)(t)){case g.Zero:return"zero";case g.One:return"one";case g.Two:return"two";case g.Few:return"few";case g.Many:return"many";default:return"other"}}}function bt(t,e){"string"==typeof e&&(e=parseInt(e,10));const n=e,a=n.toString().replace(/^[^.]*\.?/,""),r=Math.floor(Math.abs(n)),i=a.length,s=parseInt(a,10),u=parseInt(n.toString().replace(/^[^.]*\.?|0+$/g,""),10)||0;switch(t.split("-")[0].toLowerCase()){case"af":case"asa":case"az":case"bem":case"bez":case"bg":case"brx":case"ce":case"cgg":case"chr":case"ckb":case"ee":case"el":case"eo":case"es":case"eu":case"fo":case"fur":case"gsw":case"ha":case"haw":case"hu":case"jgo":case"jmc":case"ka":case"kk":case"kkj":case"kl":case"ks":case"ksb":case"ky":case"lb":case"lg":case"mas":case"mgo":case"ml":case"mn":case"nb":case"nd":case"ne":case"nn":case"nnh":case"nyn":case"om":case"or":case"os":case"ps":case"rm":case"rof":case"rwk":case"saq":case"seh":case"sn":case"so":case"sq":case"ta":case"te":case"teo":case"tk":case"tr":case"ug":case"uz":case"vo":case"vun":case"wae":case"xog":return 1===n?g.One:g.Other;case"ak":case"ln":case"mg":case"pa":case"ti":return n===Math.floor(n)&&n>=0&&n<=1?g.One:g.Other;case"am":case"as":case"bn":case"fa":case"gu":case"hi":case"kn":case"mr":case"zu":return 0===r||1===n?g.One:g.Other;case"ar":return 0===n?g.Zero:1===n?g.One:2===n?g.Two:n%100===Math.floor(n%100)&&n%100>=3&&n%100<=10?g.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=99?g.Many:g.Other;case"ast":case"ca":case"de":case"en":case"et":case"fi":case"fy":case"gl":case"it":case"nl":case"sv":case"sw":case"ur":case"yi":return 1===r&&0===i?g.One:g.Other;case"be":return n%10==1&&n%100!=11?g.One:n%10===Math.floor(n%10)&&n%10>=2&&n%10<=4&&!(n%100>=12&&n%100<=14)?g.Few:n%10==0||n%10===Math.floor(n%10)&&n%10>=5&&n%10<=9||n%100===Math.floor(n%100)&&n%100>=11&&n%100<=14?g.Many:g.Other;case"br":return n%10==1&&n%100!=11&&n%100!=71&&n%100!=91?g.One:n%10==2&&n%100!=12&&n%100!=72&&n%100!=92?g.Two:n%10===Math.floor(n%10)&&(n%10>=3&&n%10<=4||n%10==9)&&!(n%100>=10&&n%100<=19||n%100>=70&&n%100<=79||n%100>=90&&n%100<=99)?g.Few:0!==n&&n%1e6==0?g.Many:g.Other;case"bs":case"hr":case"sr":return 0===i&&r%10==1&&r%100!=11||s%10==1&&s%100!=11?g.One:0===i&&r%10===Math.floor(r%10)&&r%10>=2&&r%10<=4&&!(r%100>=12&&r%100<=14)||s%10===Math.floor(s%10)&&s%10>=2&&s%10<=4&&!(s%100>=12&&s%100<=14)?g.Few:g.Other;case"cs":case"sk":return 1===r&&0===i?g.One:r===Math.floor(r)&&r>=2&&r<=4&&0===i?g.Few:0!==i?g.Many:g.Other;case"cy":return 0===n?g.Zero:1===n?g.One:2===n?g.Two:3===n?g.Few:6===n?g.Many:g.Other;case"da":return 1===n||0!==u&&(0===r||1===r)?g.One:g.Other;case"dsb":case"hsb":return 0===i&&r%100==1||s%100==1?g.One:0===i&&r%100==2||s%100==2?g.Two:0===i&&r%100===Math.floor(r%100)&&r%100>=3&&r%100<=4||s%100===Math.floor(s%100)&&s%100>=3&&s%100<=4?g.Few:g.Other;case"ff":case"fr":case"hy":case"kab":return 0===r||1===r?g.One:g.Other;case"fil":return 0===i&&(1===r||2===r||3===r)||0===i&&r%10!=4&&r%10!=6&&r%10!=9||0!==i&&s%10!=4&&s%10!=6&&s%10!=9?g.One:g.Other;case"ga":return 1===n?g.One:2===n?g.Two:n===Math.floor(n)&&n>=3&&n<=6?g.Few:n===Math.floor(n)&&n>=7&&n<=10?g.Many:g.Other;case"gd":return 1===n||11===n?g.One:2===n||12===n?g.Two:n===Math.floor(n)&&(n>=3&&n<=10||n>=13&&n<=19)?g.Few:g.Other;case"gv":return 0===i&&r%10==1?g.One:0===i&&r%10==2?g.Two:0!==i||r%100!=0&&r%100!=20&&r%100!=40&&r%100!=60&&r%100!=80?0!==i?g.Many:g.Other:g.Few;case"he":return 1===r&&0===i?g.One:2===r&&0===i?g.Two:0!==i||n>=0&&n<=10||n%10!=0?g.Other:g.Many;case"is":return 0===u&&r%10==1&&r%100!=11||0!==u?g.One:g.Other;case"ksh":return 0===n?g.Zero:1===n?g.One:g.Other;case"kw":case"naq":case"se":case"smn":return 1===n?g.One:2===n?g.Two:g.Other;case"lag":return 0===n?g.Zero:0!==r&&1!==r||0===n?g.Other:g.One;case"lt":return n%10!=1||n%100>=11&&n%100<=19?n%10===Math.floor(n%10)&&n%10>=2&&n%10<=9&&!(n%100>=11&&n%100<=19)?g.Few:0!==s?g.Many:g.Other:g.One;case"lv":case"prg":return n%10==0||n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19||2===i&&s%100===Math.floor(s%100)&&s%100>=11&&s%100<=19?g.Zero:n%10==1&&n%100!=11||2===i&&s%10==1&&s%100!=11||2!==i&&s%10==1?g.One:g.Other;case"mk":return 0===i&&r%10==1||s%10==1?g.One:g.Other;case"mt":return 1===n?g.One:0===n||n%100===Math.floor(n%100)&&n%100>=2&&n%100<=10?g.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19?g.Many:g.Other;case"pl":return 1===r&&0===i?g.One:0===i&&r%10===Math.floor(r%10)&&r%10>=2&&r%10<=4&&!(r%100>=12&&r%100<=14)?g.Few:0===i&&1!==r&&r%10===Math.floor(r%10)&&r%10>=0&&r%10<=1||0===i&&r%10===Math.floor(r%10)&&r%10>=5&&r%10<=9||0===i&&r%100===Math.floor(r%100)&&r%100>=12&&r%100<=14?g.Many:g.Other;case"pt":return n===Math.floor(n)&&n>=0&&n<=2&&2!==n?g.One:g.Other;case"ro":return 1===r&&0===i?g.One:0!==i||0===n||1!==n&&n%100===Math.floor(n%100)&&n%100>=1&&n%100<=19?g.Few:g.Other;case"ru":case"uk":return 0===i&&r%10==1&&r%100!=11?g.One:0===i&&r%10===Math.floor(r%10)&&r%10>=2&&r%10<=4&&!(r%100>=12&&r%100<=14)?g.Few:0===i&&r%10==0||0===i&&r%10===Math.floor(r%10)&&r%10>=5&&r%10<=9||0===i&&r%100===Math.floor(r%100)&&r%100>=11&&r%100<=14?g.Many:g.Other;case"shi":return 0===r||1===n?g.One:n===Math.floor(n)&&n>=2&&n<=10?g.Few:g.Other;case"si":return 0===n||1===n||0===r&&1===s?g.One:g.Other;case"sl":return 0===i&&r%100==1?g.One:0===i&&r%100==2?g.Two:0===i&&r%100===Math.floor(r%100)&&r%100>=3&&r%100<=4||0!==i?g.Few:g.Other;case"tzm":return n===Math.floor(n)&&n>=0&&n<=1||n===Math.floor(n)&&n>=11&&n<=99?g.One:g.Other;default:return g.Other}}function mt(t,e,n){"string"!=typeof e&&(n=e,e=t[a["ɵLocaleDataIndex"].LocaleId]),e=e.toLowerCase().replace(/_/g,"-"),a["ɵLOCALE_DATA"][e]=t,n&&(a["ɵLOCALE_DATA"][e][a["ɵLocaleDataIndex"].ExtraData]=n)}function yt(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[a,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(a.trim()===e)return decodeURIComponent(r)}return null}class vt{constructor(t,e){this._name=t,this._options=e,this.value=null,this._lastSetValue=null,this._lastSetValueType=0,this._lastSetValueIdentityChange=!1}setValue(t){if(Array.isArray(t))this._lastSetValueType=4;else if(t instanceof Set)this._lastSetValueType=8;else if(t&&"string"==typeof t){if(!(4&this._options))throw new Error(this._name+" string values are not allowed");this._lastSetValueType=1}else this._lastSetValueType=t?2:0;this._lastSetValueIdentityChange=!0,this._lastSetValue=t||null}hasValueChanged(){let t=this._lastSetValueIdentityChange;if(!(t||14&this._lastSetValueType))return!1;let e=null;const n=!!(1&this._options),a=!!(8&this._options),r=!!(2&this._options);switch(this._lastSetValueType){case 1:const i=this._lastSetValue.split(/\s+/g);16&this._options?(e={},i.forEach((t,n)=>e[t]=!0)):e=i.reduce((t,e,n)=>t+(n?" ":"")+e);break;case 2:const s=this._lastSetValue,u=Object.keys(s);t||(t=!this.value||function(t,e,n){const a=t;if(!Ot(Object.keys(e),a))return!0;for(let r=0;r<a.length;r++){const t=a[r];if(e[t]!==n[t])return!0}return!1}(u,this.value,s)),t&&(e=xt(this._name,n,a,r,s,u));break;case 4:case 8:const o=Array.from(this._lastSetValue);t||(t=!Ot(Object.keys(this.value),o)),t&&(e=xt(this._name,n,a,r,o));break;default:e=null}return t&&(this.value=e),t}}function xt(t,e,n,a,r,i){const s={};if(i)for(let u=0;u<i.length;u++){let t=i[u];t=e?t.trim():t,Tt(s,t,r[t],n,a)}else for(let u=0;u<r.length;u++){let n=r[u];_t(t,n),n=e?n.trim():n,Tt(s,n,!0,!1,a)}return s}function _t(t,e){if("string"!=typeof e)throw new Error(`${t} can only toggle CSS classes expressed as strings, got ${e}`)}function Tt(t,e,n,a,r){if(r&&e.indexOf(" ")>0){const r=e.split(/\s+/g);for(let e=0;e<r.length;e++)wt(t,r[e],n,a)}else wt(t,e,n,a)}function wt(t,e,n,a){if(a){const t=function(t,e){const n=t.indexOf(".");if(n>0){const a=t.substr(n+1);t=t.substring(0,n),null!=e&&(e+=a)}return{key:t,value:e}}(e,n);n=t.value,e=t.key}t[e]=n}function Ot(t,e){if(t&&e){if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(-1===e.indexOf(t[n]))return!1;return!0}return!1}class St{}class It{constructor(t,e,n,a){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=a,this._initialClasses=[]}getValue(){return null}setClass(t){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}setNgClass(t){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(Object(a["ɵisListLikeIterable"])(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}applyChanges(){if(this._iterableDiffer){const t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){const t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}_applyKeyValueChanges(t){t.forEachAddedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachChangedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachRemovedItem(t=>{t.previousValue&&this._toggleClass(t.key,!1)})}_applyIterableChanges(t){t.forEachAddedItem(t=>{if("string"!=typeof t.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got "+Object(a["ɵstringify"])(t.item));this._toggleClass(t.item,!0)}),t.forEachRemovedItem(t=>this._toggleClass(t.item,!1))}_applyClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!0)):Object.keys(t).forEach(e=>this._toggleClass(e,!!t[e])))}_removeClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!1)):Object.keys(t).forEach(t=>this._toggleClass(t,!1)))}_toggleClass(t,e){(t=t.trim())&&t.split(/\s+/g).forEach(t=>{e?this._renderer.addClass(this._ngEl.nativeElement,t):this._renderer.removeClass(this._ngEl.nativeElement,t)})}}class Nt{constructor(){this._value=null,this._ngClassDiffer=new vt("NgClass",23),this._classStringDiffer=null}getValue(){return this._value}setClass(t){(t||this._classStringDiffer)&&(this._classStringDiffer=this._classStringDiffer||new vt("class",20),this._classStringDiffer.setValue(t))}setNgClass(t){this._ngClassDiffer.setValue(t)}applyChanges(){const t=!!this._classStringDiffer&&this._classStringDiffer.hasValueChanged(),e=this._ngClassDiffer.hasValueChanged();if(t||e){let t=this._ngClassDiffer.value;if(this._classStringDiffer){let e=this._classStringDiffer.value;e&&(t=t?Object.assign({},e,t):e)}this._value=t}}}const Ct={provide:St,useClass:It},Rt={provide:St,useClass:Nt},At=Ct,kt=Object(a["ɵɵdefineDirective"])({type:function(){},selectors:null,factory:()=>{},hostBindings:function(t,e,n){1&t&&(Object(a["ɵɵallocHostVars"])(1),Object(a["ɵɵstyling"])()),2&t&&(Object(a["ɵɵclassMap"])(e.getValue()),Object(a["ɵɵstylingApply"])())}});let Et=(()=>{class t{constructor(t){this._delegate=t}getValue(){return this._delegate.getValue()}}return t.ngDirectiveDef=void 0,t})();class Lt extends Et{constructor(t){super(t)}set klass(t){this._delegate.setClass(t)}set ngClass(t){this._delegate.setNgClass(t)}ngDoCheck(){this._delegate.applyChanges()}}class Dt{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(a.NgModuleRef);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(a.ComponentFactoryResolver)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}class Pt{constructor(t,e,n,a){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=a}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}class Mt{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){Object(a.isDevMode)()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information.`),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,a)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Pt(null,this._ngForOf,-1,-1),null===a?void 0:a),r=new qt(t,n);e.push(r)}else if(null==a)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const r=this._viewContainer.get(n);this._viewContainer.move(r,a);const i=new qt(t,r);e.push(i)}});for(let n=0;n<e.length;n++)this._perViewChange(e[n].view,e[n].record);for(let n=0,a=this._viewContainer.length;n<a;n++){const t=this._viewContainer.get(n);t.context.index=n,t.context.count=a,t.context.ngForOf=this._ngForOf}t.forEachIdentityChange(t=>{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}class qt{constructor(t,e){this.record=t,this.view=e}}class jt{constructor(t,e){this._viewContainer=t,this._context=new Ft,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Vt("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Vt("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}}class Ft{constructor(){this.$implicit=null,this.ngIf=null}}function Vt(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${Object(a["ɵstringify"])(e)}'.`)}class Gt{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}class Bt{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const e=t==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||e,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),e}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e<this._defaultViews.length;e++)this._defaultViews[e].enforceState(t)}}}class zt{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new Gt(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}class Yt{constructor(t,e,n){n._addDefault(new Gt(t,e))}}class Ht{constructor(t){this._localization=t,this._caseViews={}}set ngPlural(t){this._switchValue=t,this._updateView()}addCase(t,e){this._caseViews[t]=e}_updateView(){this._clearViews();const t=Object.keys(this._caseViews),e=gt(this._switchValue,t,this._localization);this._activateView(this._caseViews[e])}_clearViews(){this._activeView&&this._activeView.destroy()}_activateView(t){t&&(this._activeView=t,this._activeView.create())}}class Ut{constructor(t,e,n,a){this.value=t;const r=!isNaN(Number(t));a.addCase(r?"="+t:t,new Gt(n,e))}}class Wt{}class Kt{constructor(t,e,n){this._ngEl=t,this._differs=e,this._renderer=n}getValue(){return null}setNgStyle(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())}applyChanges(){if(this._differ){const t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}}_applyChanges(t){t.forEachRemovedItem(t=>this._setStyle(t.key,null)),t.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),t.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}_setStyle(t,e){const[n,a]=t.split(".");null!=(e=null!=e&&a?`${e}${a}`:e)?this._renderer.setStyle(this._ngEl.nativeElement,n,e):this._renderer.removeStyle(this._ngEl.nativeElement,n)}}class $t{constructor(){this._differ=new vt("NgStyle",8),this._value=null}getValue(){return this._value}setNgStyle(t){this._differ.setValue(t)}applyChanges(){this._differ.hasValueChanged()&&(this._value=this._differ.value)}}const Zt={provide:Wt,useClass:Kt},Jt={provide:Wt,useClass:$t},Qt=Zt,Xt=Object(a["ɵɵdefineDirective"])({type:function(){},selectors:null,factory:()=>{},hostBindings:function(t,e,n){1&t&&Object(a["ɵɵstyling"])(),2&t&&(Object(a["ɵɵstyleMap"])(e.getValue()),Object(a["ɵɵstylingApply"])())}});let te=(()=>{class t{constructor(t){this._delegate=t}getValue(){return this._delegate.getValue()}}return t.ngDirectiveDef=void 0,t})();class ee extends te{constructor(t){super(t)}set ngStyle(t){this._delegate.setNgStyle(t)}ngDoCheck(){this._delegate.applyChanges()}}class ne{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}const ae=[Lt,Dt,Mt,jt,ne,ee,Bt,zt,Yt,Ht,Ut];function re(t,e){return Error(`InvalidPipeArgument: '${e}' for pipe '${Object(a["ɵstringify"])(t)}'`)}const ie=/((?:[^yMLdHhmsazZEwGjJ']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|J+|j+|m+|s+|a|z|Z|G+|w+))(.*)/,se={yMMMdjms:me(be([ge("year",1),pe("month",3),ge("day",1),ge("hour",1),ge("minute",1),ge("second",1)])),yMdjm:me(be([ge("year",1),ge("month",1),ge("day",1),ge("hour",1),ge("minute",1)])),yMMMMEEEEd:me(be([ge("year",1),pe("month",4),pe("weekday",4),ge("day",1)])),yMMMMd:me(be([ge("year",1),pe("month",4),ge("day",1)])),yMMMd:me(be([ge("year",1),pe("month",3),ge("day",1)])),yMd:me(be([ge("year",1),ge("month",1),ge("day",1)])),jms:me(be([ge("hour",1),ge("second",1),ge("minute",1)])),jm:me(be([ge("hour",1),ge("minute",1)]))},ue={yyyy:me(ge("year",4)),yy:me(ge("year",2)),y:me(ge("year",1)),MMMM:me(pe("month",4)),MMM:me(pe("month",3)),MM:me(ge("month",2)),M:me(ge("month",1)),LLLL:me(pe("month",4)),L:me(pe("month",1)),dd:me(ge("day",2)),d:me(ge("day",1)),HH:oe(de(me(he(ge("hour",2),!1)))),H:de(me(he(ge("hour",1),!1))),hh:oe(de(me(he(ge("hour",2),!0)))),h:de(me(he(ge("hour",1),!0))),jj:me(ge("hour",2)),j:me(ge("hour",1)),mm:oe(me(ge("minute",2))),m:me(ge("minute",1)),ss:oe(me(ge("second",2))),s:me(ge("second",1)),sss:me(ge("second",3)),EEEE:me(pe("weekday",4)),EEE:me(pe("weekday",3)),EE:me(pe("weekday",2)),E:me(pe("weekday",1)),a:le(me(he(ge("hour",1),!0))),Z:fe("short"),z:fe("long"),ww:me({}),w:me({}),G:me(pe("era",1)),GG:me(pe("era",2)),GGG:me(pe("era",3)),GGGG:me(pe("era",4))};function oe(t){return function(e,n){const a=t(e,n);return 1==a.length?"0"+a:a}}function le(t){return function(e,n){return t(e,n).split(" ")[1]}}function de(t){return function(e,n){return t(e,n).split(" ")[0]}}function ce(t,e,n){return new Intl.DateTimeFormat(e,n).format(t).replace(/[\u200e\u200f]/g,"")}function fe(t){const e={hour:"2-digit",hour12:!1,timeZoneName:t};return function(t,n){const a=ce(t,n,e);return a?a.substring(3):""}}function he(t,e){return t.hour12=e,t}function ge(t,e){const n={};return n[t]=2===e?"2-digit":"numeric",n}function pe(t,e){const n={};return n[t]=e<4?e>1?"short":"narrow":"long",n}function be(t){return t.reduce((t,e)=>Object.assign({},t,e),{})}function me(t){return(e,n)=>ce(e,n,t)}const ye=new Map;let ve=(()=>{class t{constructor(t){this._locale=t}transform(e,n="mediumDate"){if(null==e||""===e||e!=e)return null;let a;if("string"==typeof e&&(e=e.trim()),xe(e))a=e;else if(isNaN(e-parseFloat(e)))if("string"==typeof e&&/^(\d{4}-\d{1,2}-\d{1,2})$/.test(e)){const[t,n,r]=e.split("-").map(t=>parseInt(t,10));a=new Date(t,n-1,r)}else a=new Date(e);else a=new Date(parseFloat(e));if(!xe(a)){let n;if("string"!=typeof e||!(n=e.match(B)))throw re(t,e);a=at(n)}return class{static format(t,e,n){return function(t,e,n){const a=se[t];if(a)return a(e,n);const r=t;let i=ye.get(r);if(!i){let e;i=[],ie.exec(t);let n=t;for(;n;)e=ie.exec(n),e?(i=i.concat(e.slice(1)),n=i.pop()):(i.push(n),n=null);ye.set(r,i)}return i.reduce((t,a)=>{const r=ue[a];return t+(r?r(e,n):function(t){return"''"===t?"'":t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}(a))},"")}(n,t,e)}}.format(a,this._locale,t._ALIASES[n]||n)}}return t._ALIASES={medium:"yMMMdjms",short:"yMdjm",fullDate:"yMMMMEEEEd",longDate:"yMMMMd",mediumDate:"yMMMd",shortDate:"yMd",mediumTime:"jms",shortTime:"jm"},t})();function xe(t){return t instanceof Date&&!isNaN(t.valueOf())}function _e(t,e,n,a,r,i=null,s=!1){if(null==n)return null;if("number"!=typeof(n="string"!=typeof n||isNaN(+n-parseFloat(n))?n:+n))throw re(t,n);let u,o,l;if(a!==h.Currency&&(u=1,o=0,l=3),r){const t=r.match(it);if(null===t)throw new Error(r+" is not a valid digit info for number pipes");null!=t[1]&&(u=ct(t[1])),null!=t[3]&&(o=ct(t[3])),null!=t[5]&&(l=ct(t[5]))}return class{static format(t,e,n,a={}){const{minimumIntegerDigits:r,minimumFractionDigits:i,maximumFractionDigits:s,currency:u,currencyAsSymbol:o=!1}=a,l={minimumIntegerDigits:r,minimumFractionDigits:i,maximumFractionDigits:s,style:h[n].toLowerCase()};return n==h.Currency&&(l.currency="string"==typeof u?u:void 0,l.currencyDisplay=o?"symbol":"code"),new Intl.NumberFormat(e,l).format(t)}}.format(n,e,a,{minimumIntegerDigits:u,minimumFractionDigits:o,maximumFractionDigits:l,currency:i,currencyAsSymbol:s})}class Te{constructor(t){this._locale=t}transform(t,e){return _e(Te,this._locale,t,h.Decimal,e)}}class we{constructor(t){this._locale=t}transform(t,e){return _e(we,this._locale,t,h.Percent,e)}}class Oe{constructor(t){this._locale=t}transform(t,e="USD",n=!1,a){return _e(Oe,this._locale,t,h.Currency,a,e,n)}}const Se=[Te,we,Oe,ve];class Ie{createSubscription(t,e){return t.subscribe({next:e,error:t=>{throw t}})}dispose(t){t.unsubscribe()}onDestroy(t){t.unsubscribe()}}class Ne{createSubscription(t,e){return t.then(e,t=>{throw t})}dispose(t){}onDestroy(t){}}const Ce=new Ne,Re=new Ie;class Ae{constructor(t){this._ref=t,this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(t){return this._obj?t!==this._obj?(this._dispose(),this.transform(t)):Object(a["ɵlooseIdentical"])(this._latestValue,this._latestReturnedValue)?this._latestReturnedValue:(this._latestReturnedValue=this._latestValue,a.WrappedValue.wrap(this._latestValue)):(t&&this._subscribe(t),this._latestReturnedValue=this._latestValue,this._latestValue)}_subscribe(t){this._obj=t,this._strategy=this._selectStrategy(t),this._subscription=this._strategy.createSubscription(t,e=>this._updateLatestValue(t,e))}_selectStrategy(t){if(Object(a["ɵisPromise"])(t))return Ce;if(Object(a["ɵisObservable"])(t))return Re;throw re(Ae,t)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null}_updateLatestValue(t,e){t===this._obj&&(this._latestValue=e,this._ref.markForCheck())}}class ke{transform(t){if(!t)return t;if("string"!=typeof t)throw re(ke,t);return t.toLowerCase()}}const Ee=/(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D])\S*/g;class Le{transform(t){if(!t)return t;if("string"!=typeof t)throw re(Le,t);return t.replace(Ee,t=>t[0].toUpperCase()+t.substr(1).toLowerCase())}}class De{transform(t){if(!t)return t;if("string"!=typeof t)throw re(De,t);return t.toUpperCase()}}class Pe{constructor(t){this.locale=t}transform(t,e="mediumDate",n,a){if(null==t||""===t||t!=t)return null;try{return K(t,e,a||this.locale,n)}catch(r){throw re(Pe,r.message)}}}const Me=/#/g;class qe{constructor(t){this._localization=t}transform(t,e,n){if(null==t)return"";if("object"!=typeof e||null===e)throw re(qe,e);return e[gt(t,Object.keys(e),this._localization,n)].replace(Me,t.toString())}}class je{transform(t,e){if(null==t)return"";if("object"!=typeof e||"string"!=typeof t)throw re(je,e);return e.hasOwnProperty(t)?e[t]:e.hasOwnProperty("other")?e.other:""}}class Fe{transform(t){return JSON.stringify(t,null,2)}}class Ve{constructor(t){this.differs=t,this.keyValues=[]}transform(t,e=Ge){if(!t||!(t instanceof Map)&&"object"!=typeof t)return null;this.differ||(this.differ=this.differs.find(t).create());const n=this.differ.diff(t);return n&&(this.keyValues=[],n.forEachItem(t=>{this.keyValues.push({key:t.key,value:t.currentValue})}),this.keyValues.sort(e)),this.keyValues}}function Ge(t,e){const n=t.key,a=e.key;if(n===a)return 0;if(void 0===n)return 1;if(void 0===a)return-1;if(null===n)return 1;if(null===a)return-1;if("string"==typeof n&&"string"==typeof a)return n<a?-1:1;if("number"==typeof n&&"number"==typeof a)return n-a;if("boolean"==typeof n&&"boolean"==typeof a)return n<a?-1:1;const r=String(n),i=String(a);return r==i?0:r<i?-1:1}class Be{constructor(t){this._locale=t}transform(t,e,n){if(He(t))return null;n=n||this._locale;try{return lt(Ue(t),n,e)}catch(a){throw re(Be,a.message)}}}class ze{constructor(t){this._locale=t}transform(t,e,n){if(He(t))return null;n=n||this._locale;try{return ot(Ue(t),n,e)}catch(a){throw re(ze,a.message)}}}class Ye{constructor(t){this._locale=t}transform(t,e,n="symbol",a,r){if(He(t))return null;r=r||this._locale,"boolean"==typeof n&&(console&&console.warn&&console.warn('Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".'),n=n?"symbol":"code");let i=e||"USD";"code"!==n&&(i="symbol"===n||"symbol-narrow"===n?V(i,"symbol"===n?"wide":"narrow",r):n);try{return ut(Ue(t),r,i,e,a)}catch(s){throw re(Ye,s.message)}}}function He(t){return null==t||""===t||t!=t}function Ue(t){if("string"==typeof t&&!isNaN(Number(t)-parseFloat(t)))return Number(t);if("number"!=typeof t)throw new Error(t+" is not a number");return t}class We{transform(t,e,n){if(null==t)return t;if(!this.supports(t))throw re(We,t);return t.slice(e,n)}supports(t){return"string"==typeof t||Array.isArray(t)}}const Ke=[Ae,De,ke,Fe,We,Be,ze,Le,Ye,Pe,qe,je,Ve];class $e{}class Ze{}const Je=new a.InjectionToken("DocumentToken"),Qe="browser",Xe="server",tn="browserWorkerApp",en="browserWorkerUi";function nn(t){return t===Qe}function an(t){return t===Xe}function rn(t){return t===tn}function sn(t){return t===en}const un=new a.Version("8.2.14");let on=(()=>{class t{}return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({token:t,providedIn:"root",factory:()=>new ln(Object(a["ɵɵinject"])(Je),window,Object(a["ɵɵinject"])(a.ErrorHandler))}),t})();class ln{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=()=>[0,0]}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const e=this.document.querySelector("#"+t);if(e)return void this.scrollToElement(e);const n=this.document.querySelector(`[name='${t}']`);if(n)return void this.scrollToElement(n)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,a=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(n-r[0],a-r[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}class dn{setOffset(t){}getScrollPosition(){return[0,0]}scrollToPosition(t){}scrollToAnchor(t){}setHistoryScrollRestoration(t){}}},SatO:function(t,e,n){!function(t){"use strict";t.defineLocale("zh-hk",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"中午"===e?t>=11?t:t+12:"下午"===e||"晚上"===e?t+12:void 0},meridiem:function(t,e,n){var a=100*t+e;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"週";default:return t}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(n("wd/R"))},SeVD:function(t,e,n){"use strict";var a=n("ngJS"),r=n("NJ4a"),i=n("Lhse"),s=n("kJWO"),u=n("I55L"),o=n("c2HN"),l=n("XoHu");n.d(e,"a",(function(){return d}));const d=t=>{if(t&&"function"==typeof t[s.a])return d=t,t=>{const e=d[s.a]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(Object(u.a)(t))return Object(a.a)(t);if(Object(o.a)(t))return n=t,t=>(n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,r.a),t);if(t&&"function"==typeof t[i.a])return e=t,t=>{const n=e[i.a]();for(;;){const e=n.next();if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t};{const e=Object(l.a)(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}var e,n,d}},SgmB:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("LRne"),r=n("5+tZ"),i=n("8Y7J"),s=n("IheW"),u=n("pL04");let o=(()=>{class t{constructor(t){this.http=t}list(){return this.http.get("api/role")}delete(t){return this.http.delete("api/role/"+t)}get(t){return this.http.get("api/role/"+t)}create(t){return this.http.post("api/role",t)}clone(t,e){return this.http.post(`api/role/${t}/clone`,{new_name:e})}update(t){return this.http.put("api/role/"+t.name,t)}exists(t){return this.list().pipe(Object(r.a)(e=>{const n=e.some(e=>e.name===t);return Object(a.a)(n)}))}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](s.c))},token:t,providedIn:u.a}),t})()},SpAZ:function(t,e,n){"use strict";function a(t){return t}n.d(e,"a",(function(){return a}))},SxV6:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("sVev"),r=n("pLZG"),i=n("IzEk"),s=n("xbPD"),u=n("XDbj"),o=n("SpAZ");function l(t,e){const n=arguments.length>=2;return l=>l.pipe(t?Object(r.a)((e,n)=>t(e,n,l)):o.a,Object(i.a)(1),n?Object(s.a)(e):Object(u.a)(()=>new a.a))}},TAQX:function(t,e,n){var a=n("im1V");t.exports=function(t,e){return function(n,r){if(null==n)return n;if(!a(n))return t(n,r);for(var i=n.length,s=e?i:-1,u=Object(n);(e?s--:++s<i)&&!1!==r(u[s],s,u););return n}}},THq6:function(t,e,n){var a=n("pMcL"),r=a?a.prototype:void 0,i=r?r.valueOf:void 0;t.exports=function(t){return i?Object(i.call(t)):{}}},TJUb:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t,e){return a.isPlainObject(e)?a.get(e,t,t):t}}},TNUL:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Number)],t.prototype,"index",void 0),i([Object(a.Input)(),s("design:type",Object)],t.prototype,"templates",void 0),i([Object(a.Component)({selector:"TreeNode, tree-node",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <div\n        *ngIf="!templates.treeNodeFullTemplate"\n        [class]="node.getClass()"\n        [class.tree-node]="true"\n        [class.tree-node-expanded]="node.isExpanded && node.hasChildren"\n        [class.tree-node-collapsed]="node.isCollapsed && node.hasChildren"\n        [class.tree-node-leaf]="node.isLeaf"\n        [class.tree-node-active]="node.isActive"\n        [class.tree-node-focused]="node.isFocused"\n      >\n        <tree-node-drop-slot\n          *ngIf="index === 0"\n          [dropIndex]="node.index"\n          [node]="node.parent"\n        ></tree-node-drop-slot>\n\n        <tree-node-wrapper\n          [node]="node"\n          [index]="index"\n          [templates]="templates"\n        ></tree-node-wrapper>\n\n        <tree-node-children\n          [node]="node"\n          [templates]="templates"\n        ></tree-node-children>\n        <tree-node-drop-slot\n          [dropIndex]="node.index + 1"\n          [node]="node.parent"\n        ></tree-node-drop-slot>\n      </div>\n      <ng-container\n        [ngTemplateOutlet]="templates.treeNodeFullTemplate"\n        [ngTemplateOutletContext]="{\n          $implicit: node,\n          node: node,\n          index: index,\n          templates: templates\n        }"\n      >\n      </ng-container>\n    </ng-container>\n  '})],t)}()},TWQb:function(t,e,n){var a=n("/GqU"),r=n("UMSQ"),i=n("I8vh"),s=function(t){return function(e,n,s){var u,o=a(e),l=r(o.length),d=i(s,l);if(t&&n!=n){for(;l>d;)if((u=o[d++])!=u)return!0}else for(;l>d;d++)if((t||d in o)&&o[d]===n)return t||d||0;return!t&&-1}};t.exports={includes:s(!0),indexOf:s(!1)}},TYzs:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){const e=parseInt(t,10);return isNaN(e)?t:t+(1===Math.floor(e/10)?"th":e%10==1?"st":e%10==2?"nd":e%10==3?"rd":"th")}}},"TbD+":function(t,e,n){var a=n("QCZx"),r=n("jqoL");t.exports=function(t,e){return a(t,e,(function(e,n){return r(t,n)}))}},TeQF:function(t,e,n){"use strict";var a=n("I+eb"),r=n("tycR").filter,i=n("Hd5f"),s=n("rkAj"),u=i("filter"),o=s("filter");a({target:"Array",proto:!0,forced:!u||!o},{filter:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}})},Tq0f:function(t,e,n){var a=n("Ytn0");t.exports=function(t){var e=a(this,t).delete(t);return this.size-=e?1:0,e}},U02d:function(t,e,n){var a=n("qN6l"),r=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(a){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return r.call(e,t)?e[t]:void 0}},UDhR:function(t,e,n){!function(t){"use strict";t.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(t,e){return 12===t&&(t=0),"pagi"===e?t:"siang"===e?t>=11?t:t+12:"sore"===e||"malam"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"pagi":t<15?"siang":t<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n("wd/R"))},UMSQ:function(t,e,n){var a=n("ppGB"),r=Math.min;t.exports=function(t){return t>0?r(a(t),9007199254740991):0}},USCx:function(t,e,n){!function(t){"use strict";t.defineLocale("ga",{months:["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Méitheamh","Iúil","Lúnasa","Meán Fómhair","Deaireadh Fómhair","Samhain","Nollaig"],monthsShort:["Eaná","Feab","Márt","Aibr","Beal","Méit","Iúil","Lúna","Meán","Deai","Samh","Noll"],monthsParseExact:!0,weekdays:["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Satharn"],weekdaysShort:["Dom","Lua","Mái","Céa","Déa","hAo","Sat"],weekdaysMin:["Do","Lu","Má","Ce","Dé","hA","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Inniu ag] LT",nextDay:"[Amárach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inné aig] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s ó shin",s:"cúpla soicind",ss:"%d soicind",m:"nóiméad",mm:"%d nóiméad",h:"uair an chloig",hh:"%d uair an chloig",d:"lá",dd:"%d lá",M:"mí",MM:"%d mí",y:"bliain",yy:"%d bliain"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(t){return t+(1===t?"d":t%10==2?"na":"mh")},week:{dow:1,doy:4}})}(n("wd/R"))},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},Uies:function(t,e){var n=/^(?:0|[1-9]\d*)$/;t.exports=function(t,e){var a=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==a||"symbol"!=a&&n.test(t))&&t>-1&&t%1==0&&t<e}},UnOm:function(t,e,n){var a=n("ktBm"),r=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=a(e,t);return!(n<0||(n==e.length-1?e.pop():r.call(e,n,1),--this.size,0))}},UpQW:function(t,e,n){!function(t){"use strict";var e=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];t.defineLocale("ur",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(t){return"شام"===t},meridiem:function(t,e,n){return t<12?"صبح":"شام"},calendar:{sameDay:"[آج بوقت] LT",nextDay:"[کل بوقت] LT",nextWeek:"dddd [بوقت] LT",lastDay:"[گذشتہ روز بوقت] LT",lastWeek:"[گذشتہ] dddd [بوقت] LT",sameElse:"L"},relativeTime:{future:"%s بعد",past:"%s قبل",s:"چند سیکنڈ",ss:"%d سیکنڈ",m:"ایک منٹ",mm:"%d منٹ",h:"ایک گھنٹہ",hh:"%d گھنٹے",d:"ایک دن",dd:"%d دن",M:"ایک ماہ",MM:"%d ماہ",y:"ایک سال",yy:"%d سال"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:4}})}(n("wd/R"))},Uqmq:function(t,e,n){var a=n("M+Mf"),r=n("hmSm");t.exports=function t(e,n,i,s,u,o){return r(e)&&r(n)&&(o.set(n,e),a(e,n,void 0,t,o),o.delete(n)),e}},Ur1D:function(t,e,n){!function(t){"use strict";t.defineLocale("ss",{months:"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),monthsShort:"Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),weekdays:"Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),weekdaysShort:"Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),weekdaysMin:"Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Namuhla nga] LT",nextDay:"[Kusasa nga] LT",nextWeek:"dddd [nga] LT",lastDay:"[Itolo nga] LT",lastWeek:"dddd [leliphelile] [nga] LT",sameElse:"L"},relativeTime:{future:"nga %s",past:"wenteka nga %s",s:"emizuzwana lomcane",ss:"%d mzuzwana",m:"umzuzu",mm:"%d emizuzu",h:"lihora",hh:"%d emahora",d:"lilanga",dd:"%d emalanga",M:"inyanga",MM:"%d tinyanga",y:"umnyaka",yy:"%d iminyaka"},meridiemParse:/ekuseni|emini|entsambama|ebusuku/,meridiem:function(t,e,n){return t<11?"ekuseni":t<15?"emini":t<19?"entsambama":"ebusuku"},meridiemHour:function(t,e){return 12===t&&(t=0),"ekuseni"===e?t:"emini"===e?t>=11?t:t+12:"entsambama"===e||"ebusuku"===e?0===t?0:t+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}})}(n("wd/R"))},UxlC:function(t,e,n){"use strict";var a=n("14Sl"),r=n("glrk"),i=n("ewvW"),s=n("UMSQ"),u=n("ppGB"),o=n("HYAF"),l=n("iqWW"),d=n("FMNM"),c=Math.max,f=Math.min,h=Math.floor,g=/\$([$&'`]|\d\d?|<[^>]*>)/g,p=/\$([$&'`]|\d\d?)/g;a("replace",2,(function(t,e,n,a){var b=a.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,m=a.REPLACE_KEEPS_$0,y=b?"$":"$0";return[function(n,a){var r=o(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,r,a):e.call(String(r),n,a)},function(t,a){if(!b&&m||"string"==typeof a&&-1===a.indexOf(y)){var i=n(e,t,this,a);if(i.done)return i.value}var o=r(t),h=String(this),g="function"==typeof a;g||(a=String(a));var p=o.global;if(p){var x=o.unicode;o.lastIndex=0}for(var _=[];;){var T=d(o,h);if(null===T)break;if(_.push(T),!p)break;""===String(T[0])&&(o.lastIndex=l(h,s(o.lastIndex),x))}for(var w,O="",S=0,I=0;I<_.length;I++){T=_[I];for(var N=String(T[0]),C=c(f(u(T.index),h.length),0),R=[],A=1;A<T.length;A++)R.push(void 0===(w=T[A])?w:String(w));var k=T.groups;if(g){var E=[N].concat(R,C,h);void 0!==k&&E.push(k);var L=String(a.apply(void 0,E))}else L=v(N,h,C,R,k,a);C>=S&&(O+=h.slice(S,C)+L,S=C+N.length)}return O+h.slice(S)}];function v(t,n,a,r,s,u){var o=a+t.length,l=r.length,d=p;return void 0!==s&&(s=i(s),d=g),e.call(u,d,(function(e,i){var u;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,a);case"'":return n.slice(o);case"<":u=s[i.slice(1,-1)];break;default:var d=+i;if(0===d)return e;if(d>l){var c=h(d/10);return 0===c?e:c<=l?void 0===r[c-1]?i.charAt(1):r[c-1]+i.charAt(1):e}u=r[d-1]}return void 0===u?"":u}))}}))},"V/fk":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},V2x9:function(t,e,n){!function(t){"use strict";t.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),weekdaysShort:"Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),weekdaysMin:"Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Ohin iha] LT",nextDay:"[Aban iha] LT",nextWeek:"dddd [iha] LT",lastDay:"[Horiseik iha] LT",lastWeek:"dddd [semana kotuk] [iha] LT",sameElse:"L"},relativeTime:{future:"iha %s",past:"%s liuba",s:"minutu balun",ss:"minutu %d",m:"minutu ida",mm:"minutu %d",h:"oras ida",hh:"oras %d",d:"loron ida",dd:"loron %d",M:"fulan ida",MM:"fulan %d",y:"tinan ida",yy:"tinan %d"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},V3my:function(t,e,n){"use strict";var a=n("s7LF"),r=n("LvDl"),i=n("cp0P"),s=(n("DSvg"),n("SgmB"),n("20UP"),n("Mxhz"),n("OLbh")),u=n("DNAf"),o=(n("sne2"),n("oxzT")),l=n("mtw6"),d=(n("2EZI"),n("1Ni5")),c=n("oMSZ"),f=(n("aexS"),n("9nlD"),n("1nQr"),function(t){return t.editing="editing",t}({}));class h{}n.d(e,"a",(function(){return g}));class g{constructor(t,e,n,a,r,i,s,l,d,c,h,g,p){this.authService=t,this.authStorageService=e,this.route=n,this.router=a,this.modalService=r,this.roleService=i,this.userService=s,this.notificationService=l,this.i18n=d,this.actionLabels=c,this.passwordPolicyService=h,this.formBuilder=g,this.settingsService=p,this.userFormMode=f,this.messages=new u.a({empty:this.i18n("There are no roles.")},this.i18n),this.passwordPolicyHelpText="",this.icons=o.a,this.bsConfig={dateInputFormat:"YYYY-MM-DD",containerClass:"theme-default"},this.resource=this.i18n("user"),this.createForm(),this.messages=new u.a({empty:this.i18n("There are no roles.")},this.i18n)}createForm(){this.passwordPolicyService.getHelpText().subscribe(t=>{this.passwordPolicyHelpText=t}),this.userForm=this.formBuilder.group({username:["",[a.B.required],[d.a.unique(this.userService.validateUserName,this.userService)]],name:[""],password:["",[],[d.a.passwordPolicy(this.userService,()=>this.userForm.getValue("username"),(t,e,n)=>{this.passwordStrengthLevelClass=this.passwordPolicyService.mapCreditsToCssClass(e),this.passwordValuation=r.defaultTo(n,"")})]],confirmpassword:[""],pwdExpirationDate:[""],email:["",[d.a.email]],roles:[[]],enabled:[!0,[a.B.required]],pwdUpdateRequired:[!0]},{validators:[d.a.match("password","confirmpassword")]})}ngOnInit(){this.router.url.startsWith("/user-management/users/edit")?(this.mode=this.userFormMode.editing,this.action=this.actionLabels.EDIT):this.action=this.actionLabels.CREATE,this.minDate=new Date;const t=[this.roleService.list(),this.settingsService.getStandardSettings()];Object(i.a)(t).subscribe(t=>{if(this.allRoles=r.map(t[0],t=>(t.enabled=!0,t)),this.pwdExpirationSettings=new c.a(t[1]),this.mode===this.userFormMode.editing)this.initEdit();else if(this.pwdExpirationSettings.pwdExpirationSpan>0){const t=this.userForm.get("pwdExpirationDate"),e=new Date;e.setDate(this.minDate.getDate()+this.pwdExpirationSettings.pwdExpirationSpan),t.setValue(e),t.setValidators([a.B.required])}})}initEdit(){this.disableForEdit(),this.route.params.subscribe(t=>{this.userService.get(t.username).subscribe(t=>{this.response=r.cloneDeep(t),this.setResponse(t)})})}disableForEdit(){this.userForm.get("username").disable()}setResponse(t){["username","name","email","roles","enabled","pwdUpdateRequired"].forEach(e=>this.userForm.get(e).setValue(t[e]));const e=t.pwdExpirationDate;e&&this.userForm.get("pwdExpirationDate").setValue(new Date(1e3*e))}getRequest(){const t=new h;["username","password","name","email","roles","enabled","pwdUpdateRequired"].forEach(e=>t[e]=this.userForm.get(e).value);const e=this.userForm.get("pwdExpirationDate").value;return e&&(this.mode===this.userFormMode.editing&&this.response.pwdExpirationDate===Number(e)/1e3||e.setHours(23,59,59),t.pwdExpirationDate=Number(e)/1e3),t}createAction(){const t=this.getRequest();this.userService.create(t).subscribe(()=>{this.notificationService.show(l.a.success,this.i18n('Created user "{{username}}"',{username:t.username})),this.router.navigate(["/user-management/users"])},()=>{this.userForm.setErrors({cdSubmitButton:!0})})}editAction(){if(this.isUserRemovingNeededRolePermissions()){const t={titleText:this.i18n("Update user"),buttonText:this.i18n("Continue"),bodyTpl:this.removeSelfUserReadUpdatePermissionTpl,onSubmit:()=>{this.modalRef.hide(),this.doEditAction()},onCancel:()=>{this.userForm.setErrors({cdSubmitButton:!0}),this.userForm.get("roles").reset(this.userForm.get("roles").value)}};this.modalRef=this.modalService.show(s.a,{initialState:t})}else this.doEditAction()}isCurrentUser(){return this.authStorageService.getUsername()===this.userForm.getValue("username")}isUserChangingRoles(){return this.isCurrentUser()&&this.response&&!r.isEqual(this.response.roles,this.userForm.getValue("roles"))}isUserRemovingNeededRolePermissions(){return this.isCurrentUser()&&!this.hasUserReadUpdatePermissions(this.userForm.getValue("roles"))}hasUserReadUpdatePermissions(t=[]){for(const e of this.allRoles)if(-1!==t.indexOf(e.name)&&e.scopes_permissions.user){const t=e.scopes_permissions.user;return["read","update"].every(e=>-1!==t.indexOf(e))}return!1}doEditAction(){const t=this.getRequest();this.userService.update(t).subscribe(()=>{this.isUserChangingRoles()?this.authService.logout(()=>{this.notificationService.show(l.a.info,this.i18n("You were automatically logged out because your roles have been changed."))}):(this.notificationService.show(l.a.success,this.i18n('Updated user "{{username}}"',{username:t.username})),this.router.navigate(["/user-management/users"]))},()=>{this.userForm.setErrors({cdSubmitButton:!0})})}clearExpirationDate(){this.userForm.get("pwdExpirationDate").setValue(void 0)}submit(){this.mode===this.userFormMode.editing?this.editAction():this.createAction()}}},V5SL:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="fr-FR">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Activer/Désactiver la navigation</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Tableau de bord</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Grappe</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Serveurs</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Moniteurs</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Services</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Configuration</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>Carte CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Modules Manager</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Journaux</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Réserves</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Bloc</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Images</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Mise en miroir</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Systèmes de fichiers</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemons</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Utilisateurs</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Compartiments</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Sélectionner une langue</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Chargement des données du panneau...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Sélecteur d\'heure Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Réinitialiser les paramètres</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Retour</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Échec du chargement des données.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>sélectionné(e)(s)</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>trouvé(e)(s)</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>total</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nom</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Description</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Description longue</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Valeur par défaut</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Valeur par défaut du daemon</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Valeurs</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Sauvegarder</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Visionneuse de carte CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Chargement...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nom d\'hôte</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Ce champs est requis.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Oui.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Annuler</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Fermer</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Liste d\'hôtes</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Performance globale</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Aucune entrée trouvée</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Journaux de grappes</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Journaux d\'audit</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Chargement de la configuration...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>La configuration n\'a pas pu être chargée.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Modifier le module Manager</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>La valeur entrée n\'est pas un UUID valide, par exemple : 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>La valeur entrée doit être une adresse IP valide.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>La valeur entrée doit être un nombre.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>La valeur entrée doit être un nombre ou une valeur décimale.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Mise à jour</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Statut</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID de grappe</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap modifié</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap epoch</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>required con</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>required mon</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>Dans le quorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Hors quorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Ajouter</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Fonctionnalités</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Drapeaux OSD à l\'échelle de la grappe</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Soumettre</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Avancé...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Priorité de récupération des OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorité</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Personnaliser les valeurs de priorité</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Ce champ est obligatoire !</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>La valeur doit être comprise entre 0 et 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Réévaluer</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Profondeur } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {profondeur } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Liste des OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Valeur</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Modifier</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Supprimer</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Santé</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistiques</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Clients</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Accès possible par tous les clients</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Adresses</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Champ obligatoire</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Doit contenir une ou plusieurs valeurs séparées par une virgule</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Par exemple :</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Type d\'accès</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Ajouter des clients</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Aucune grappe disponible --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Sélectionner la grappe --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Ajouter un daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Backend de stockage</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Aucune réserve de données disponible --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Sélectionner le backend de stockage --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Utilisateur Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Aucun utilisateur disponible --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Sélectionner l\'utilisateur Object Gateway --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID utilisateur CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Aucun client disponible --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Sélectionner le client cephx --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nom CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Libellé de sécurité</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Activer le libellé de sécurité</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Chemin CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Le chemin doit commencer par \'/\' et peut être suivi d\'un mot</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Un nouveau répertoire sera créé</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Chemin</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Le chemin peut être constitué d\'un seul \'/\' ou d\'un seul mot</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Un compartiment sera créé</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protocole NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Balise NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Les clients ne peuvent pas monter de sous-répertoires (si la balise = foo, le client ne peut pas monter foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>En utilisant différentes options de balise, il est possible d\'exporter plusieurs fois le même chemin.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>En utilisant différentes options de pseudo, il est possible d\'exporter exporter plusieurs fois le même chemin.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Aucun type d\'accès disponible --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Sélectionner le type d\'accès --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Aucun squash disponible --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Sélectionnez le type de squash d\'ID utilisateur qui est effectué --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protocole de transport</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Bienvenue dans Ceph !</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nom d\'utilisateur requis</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Mot de passe requis</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Connexion</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Désolé, l\'utilisateur n\'existe pas dans Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Interdit</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Désolé, vous n\'êtes pas autorisé à voir ce que vous cherchez.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Configuration RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Supprimez la valeur de configuration locale. La valeur de configuration parent sera héritée et utilisée à la place.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>La valeur minimale est 0.</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Liste des réserves</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Le nom doit être exclusivement composé de caractères alphanumériques, de tirets et de traits de soulignement.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Le nom de profil du code d\'effacement sélectionné est déjà utilisé.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plug-in</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Blocs de données (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Doit être égal ou supérieur à 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Blocs de codage (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Doit être égal ou supérieur à 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Estimateur de durabilité (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Localité (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Domaine de défaillance Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Localité Crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Aucun</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Technique</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Taille de paquet</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Racine Crush</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Classe de périphérique Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>tout</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Répertoire</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nom...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Le nom de réserve Ceph sélectionné est déjà utilisé.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Type de réserve</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Sélectionner un type de réserve --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Groupes de placements</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Au moins un groupe de placements est nécessaire.</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Votre grappe ne peut pas gérer autant de groupes de placements. Veuillez recalculer le nombre de groupes de placements nécessaires.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Aide au calcul</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Taille de réplication</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Drapeaux</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>Écrasements EC</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Applications</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Profil de code d\'effacement</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Aucun profil de code d\'effacement n\'est disponible --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Sélectionner un profil de code d\'effacement --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Jeu de règles Crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Sélectionner une règle crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Règle Crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Étapes Crush</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Compression</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Mode</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algorithme</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Aucun algorithme de compression d\'effacement n\'est disponible --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Taille de blob minimale</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>par ex. 128 Kio</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>La valeur doit être supérieure à 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Taille de blob maximale</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>par ex., 512 Kio</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>La valeur doit être supérieure à la taille de blob minimale.</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Rapport</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Rapport de compression</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>La valeur doit se situer entre 0.0 et 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>par exemple, 10 Gio</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Détails</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Détails des performances</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Détails des niveaux de mise en cache</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Déplacer une image vers la corbeille.</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>La protection expire le </target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NON PROTÉGÉ</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Format de date incorrect. Veuillez utiliser "AAAA-MM-JJ HH:mm:ss"</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>La protection a déjà expiré. Veuillez sélectionner une date ultérieure ou laisser le champ vide.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Déplacer une image</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Présentation</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Cibles</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Authentification de la découverte</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Utilisateur</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Les noms d\'utilisateur doivent comporter entre 8 et 64 caractères et\n                        ne peuvent contenir que des lettres et les caractères \'.\', \'@\', \'-\', \'_\' ou \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Mot de passe</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Utilisateur commun</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Mot de passe commun</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informations disponibles :</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>Cibles iSCSI non disponibles</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Réserve</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Réserve de données</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Créé</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Taille</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objets</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Taille de l\'objet</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Provisionné</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/A</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Provisionnement total</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unité de segmentation</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Nombre de segmentations</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Parent</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Préfixe du nom de bloc</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Tri</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Instantanés</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Image</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Ce paramètre remplace la valeur globale</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Il s\'agit de la valeur globale. Aucune valeur de cette option n\'a été définie pour cette image.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>Les caractères \'/\' et \'@\' ne sont pas autorisés.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Aucune réserve RBD disponible --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Sélectionner une réserve --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Utiliser une réserve de données dédiée</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Réserve de données</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Réserve dédiée qui stocke les données objet du RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Vous devez augmenter la taille.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Avancé</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Segmentation</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unité de segmentation</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Sélectionner une unité de segmentation --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Ce champ est obligatoire, car le nombre de segments est défini.</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>L\'unité de segmentation est supérieure à la taille de l\'objet.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Nombre de segments</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Ce champ est obligatoire, car l\'unité de segmentation est définie.</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Le nombre de segments doit être supérieur à 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Vous êtes sur le point de revenir à l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Vider la corbeille</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Tout</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Réserve :</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nom de la réserve...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Restaurer l\'image</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Pour restaurer</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>saisissez le nouveau nom de l\'image, puis cliquez sur</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nouveau nom</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Expiration le </target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Protection jusqu\'au</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologie iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Il n\'est généralement pas nécessaire de modifier ces paramètres par défaut.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Paramètres</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Confirmer</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Paramètres avancés</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN cible</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>Modèle IQN incorrect.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Par exemple : iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Plus d\'informations</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Des paramètres avancés de cette cible ont été modifiés.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portails</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Ajouter un portail</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Des paramètres avancés de cette image ont été modifiés.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Ajouter une image</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Authentification ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Initiateurs</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Initiateur</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN client</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>L\'IQN de l\'initiateur doit être unique.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Les noms d\'utilisateur doivent comporter entre 8 et 64 caractères et\n                        ne peuvent contenir que des lettres et les caractères \'.\', \'@\', \'-\', \'_\' ou \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>L\'initiateur appartient à un groupe dans lequel les images seront configurées.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Aucun élément ajouté.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Ajouter un initiateur</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Groupes</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Groupe</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Ajouter un groupe</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Corbeille</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Problèmes</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Synchronisation en cours</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Prêt</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Modifier le mode de mise en miroir de la réserve</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Les grappes d\'homologues doivent être supprimées avant de désactiver la mise en miroir.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Modifier} other {Ajouter} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nom de grappe</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Le nom de grappe n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>ID CephX</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>ID CephX</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>L\'ID CephX n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Adresses du moniteur</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Adresses séparées par une virgule...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>L\'adresse du moniteur n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Clef CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Clef Base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>La clef CephX doit être codée en base64.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Compteurs de performance non disponibles</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Liste de daemons</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Compteurs de performance</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Chargement des données de compartiment...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>La valeur n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Le nom sélectionné est déjà en cours d\'utilisation.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Propriétaire</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Sélectionner un utilisateur --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Activé</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Type d\'index</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Règle de placement</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Marqueur</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Marqueur maximum</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Version</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Version principale</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Date de modification</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Groupe de zones</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Quota de compartiments</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Taille maximale</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Illimité</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Nombre maximal d\'objets</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nom d\'utilisateur</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Sélectionner un nom d\'utilisateur --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Générer automatiquement la clef</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Clef d\'accès</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Clef secrète</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nom complet</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Adresse électronique</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Suspendu</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Système</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Nombre maximal de compartiments</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Utilisateurs secondaires</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Fonctionnalités</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Quota utilisateur</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Afficher</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Clefs</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Type</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Sélectionner un type --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Autorisation</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Sélectionner une autorisation --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Utilisateur secondaire</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>L\'ID d\'utilisateur secondaire sélectionné est déjà utilisé.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>lire, écrire</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>complet</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Clé Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Générer automatiquement le secret</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Chargement des donnés utilisateur…</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Les donnés utilisateur n\'ont pas pu être chargées.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>L\'ID utilisateur spécifié est déjà utilisé.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Ceci n\'est pas une adresse électronique valide.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>L\'adresse électronique spécifiée est déjà utilisée.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Nombre max. de compartiments</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Désactivé</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Personnalisé</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Clef S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Il n\'y a aucun utilisateur secondaire.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Il n\'y a pas de clefs.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Il n\'y a aucune fonctionnalité.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Taille illimitée</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Taille max.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Objets illimités</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Nombre max. d\'objets</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>La valeur saisie doit être &gt;= 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Description...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Autorisations</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Rôles</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Confirmer le mot de passe</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Le mot de passe de confirmation ne correspond pas au mot de passe.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>Adresse électronique</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>L\'adresse électronique n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Vous êtes sur le point de supprimer les autorisations "lecture/mise à jour utilisateur" de votre propre utilisateur.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Si vous continuez, vous ne serez plus en mesure d\'ajouter ni de supprimer des rôles pour n\'importe quel utilisateur.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Voulez-vous vraiment continuer ?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Aide</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Documentation</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>À propos de</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Paramètres du tableau de bord</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Gestion des utilisateurs</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Utilisateur connecté</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Se déconnecter</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Attributs (carte OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Métadonnées non disponibles</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Métadonnées</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Compteur de performance</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Écritures</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Lectures</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogramme</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Valeurs actuelles</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Minimum</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Maximum</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Source</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Niveau</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Mise à jour possible lors de l\'exécution (modifiable)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Balises</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Valeurs d\'énuménation</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Voir aussi</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Statut de la grappe</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Daemons du gestionnaire</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Passerelles d\'objet</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Serveurs de métadonnées</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Passerelles iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS client</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Débit client</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Lectures/Écritures client</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Débit de récupération</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Nettoyer</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Performance</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Capacité brute</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Groupes de placements par OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Statut du groupe de placements</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Capacité</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Rangs</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Actuel</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Authentification de la découverte mise à jour</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Il n\'y a aucun portail disponible.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Il n\'y a aucune image disponible.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Il n\'y a aucune image disponible. Veillez à ajouter une image à la cible.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Il n\'y a aucun initiateur disponible. Veillez à ajouter un initiateur à la cible.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Cible</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>État</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Octets de lecture</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Octets d\'écriture</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Opérations de lecture</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Opérations d\'écriture</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O depuis</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instance</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problème</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Avancement</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Mode d\'édition</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Ajouter un homologue</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Modifier un homologue</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Supprimer un homologue</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>nb en local</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>nb à distance</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>mettre en miroir l\'homologue</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Clef</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Aplatissement en profondeur</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Superposition</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Verrou exclusif</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Assignation d\'objet (nécessite exclusive-lock)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Journalisation (nécessite exclusive-lock)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NON PROTÉGÉ</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Retour à l\'état initial de l\'instantané RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Revenir à l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Intantané RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Supprimé le</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>type</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>état</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>version</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Hôte</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>racine</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemons en veille</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Rang</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Activité</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inodes</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Utilisation</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Mis à jour</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>La valeur peut être mise à jour au moment de l\'exécution.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Les daemons/clients ne tirent pas cette valeur de\n  la base de données de configuration de Monitor. Nous n\'autorisons pas le réglage de cette option via \'ceph config\n  set ...\'. Cette option doit être configurée via ceph.conf ou via\n  la ligne de commande.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>L\'option ne prend effet qu\'au démarrage du daemon.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>L\'option n\'affecte que la création des grappes.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>L\'option n\'affecte que la création des daemons.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Service</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Valeur actuelle</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Modifiable</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Activer</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Désactiver</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Reconnexion en cours… Veuillez patienter.</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Adresse publique</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Sessions ouvertes</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Pas rentrés</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>Les OSD qui ont été marqués comme sortis ne seront pas marqués comme rentrés à leur démarrage.</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Pas sortis</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>Les OSD ne seront pas marqués automatiquement comme sortis après l\'intervalle configuré.</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Pas démarrés</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>Les OSD ne sont pas autorisés à démarrer.</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Pas arrêtés</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Les rapports de défaillance des OSD sont ignorés, de sorte que les moniteurs ne marquent pas les OSD comme étant arrêtés.</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pause</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Met en pause les lectures et écritures</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Pas de nettoyage</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Nettoyage désactivé</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Pas de nettoyage en profondeur</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Le nettoyage en profondeur est désactivé</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Pas de renvoi</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Le renvoi des groupes de placements est suspendu</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Pas de récupération</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>La récupération des groupes de placements est suspendue</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Tri au niveau du bit</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Utiliser le tri au niveau du bit</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Variables snapdir purgées</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>Les OSD ont converti les variables snapset</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Suppressions des récupérations</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Suppressions effectuées pendant la restauration et non l\'homologation</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Limite stricte de journalisation des groupes de placements</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Impose une limite stricte à la longueur du journal des groupes de placements</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Drapeaux OSD mis à jour</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>sorti</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>rentré</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>arrêté</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Marquer</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD perdu</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>marqué comme perdu</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Purger</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>purgé</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>détruire</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>détruit</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>supprimer</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>Groupes de placements</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Octets de lecture</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Octets d\'écriture</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Opérations de lecture</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Opérations d\'écriture</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Nbre max. de renvois</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Nombre maximum de récupérations actives</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Nombre maximum de démarrages uniques de récupérations</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Mise en veille de la récupération</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Travail</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Gravité</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Démarré</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Utilisé</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Dispo.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Nettoyé</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>En cours</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Avertissement</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Inconnu</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>opérationnel</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>aucun système de fichiers</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>actif</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>veille</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/a</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon actif</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Le service NFS Ganesha n\'est pas configuré.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Utilisateur CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Système de fichiers CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(hérité de la configuration globale)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>hérité de la configuration globale</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Sélectionner le type de squashing d\'ID utilisateur effectué --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Aucun daemon n\'est disponible.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Mode cache</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Âge évict min.</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Âge vidage min.</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Nombre max d\'octets cibles</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Nombre max. d\'objets cibles</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Aucune application ajoutée</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Limite d\'applications atteinte</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Une réserve peut avoir quatre définitions d\'application maximum.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Caractère autorisés \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>La longueur maximale est de 128 caractères.</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtrer ou ajouter des applications</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Ajouter une application</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>profil de code d\'effacement</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Taille de la réplique</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Dernier changement</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Profil de code d\'effacement</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Jeu de règles Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>compartiment</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>compartiments</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>utilisateur</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>utilisateurs</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Périmètre</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Lecture</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Créer</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Rôle système</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Mettre à jour l\'utilisateur</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Continuer</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Vous avez été automatiquement déconnecté, car vos rôles ont changé.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Chaque objet est divisé en parties de blocs de données, chacune étant stockée sur un OSD différent.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Calculez des blocs de codage pour chaque objet et stockez-les sur différents OSD.\n Le nombre de blocs de codage correspond également au nombre d\'OSD qui peuvent être arrêtés sans perdre de données.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Le plugin jerasure est le plugin le plus générique et le plus flexible,\n  c\'est aussi la valeur par défaut des réserves codées à effacement Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>La technique la plus flexible est reed_sol_van_van : il suffit de définir k\n et m. La technique cauchy_good peut être plus rapide, mais vous devez choisir la taille du paquet\n avec précaution. reed_sol_r6_op, liberation, blaum_roth et liber8tion sont des équivalents RAID6\n en ce sens qu\'ils ne peuvent être configurés qu\'avec m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>L\'encodage se fera sur des paquets de taille d\'octets.\n  Choisir la bonne taille de paquet est difficile.\n  La documentation de jerasure contient de nombreuses informations à ce sujet.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Avec le plugin jerasure, lorsqu\'un objet codé à effacement est stocké sur\n plusieurs OSD, la récupération à la suite de la perte d\'un OSD nécessite la lecture de tous les autres.\n Par exemple, si jerasure est configuré avec k=8 et m=4, la perte d\'un OSD nécessite de lire\n les onze autres pour pouvoir effectuer une réparation.\n\n Le plugin de code d\'effacement lrc crée des blocs de parité locale pour permettre la récupération avec\n moins d\'OSD. Par exemple, si lrc est configuré avec k=8, m=4 et l=4,\n un bloc de parité supplémentaire est créé pour chaque groupe de quatre OSD. Lorsqu\'un seul OSD est perdu, il peut être\n récupéré avec seulement quatre OSD au lieu de onze.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Regroupez les blocs de données et de codage en ensembles de localité de taille. Par exemple,\n pour k=4 et m=2, lorsque locality=3, deux groupes de trois sont créés. Chaque ensemble peut\n être récupéré sans lire les blocs d\'un autre jeu.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Type de compartiment Crush dans lequel chaque ensemble de blocs défini\n par I sera stocké. Par exemple, s\'il est réglé sur rack, chaque groupe de blocs I sera\n placé dans un rack différent. Il est utilisé pour créer une étape de la règle CRUSH telle que l\'étape de choix\n d\'un rack. S\'il n\'est pas défini, aucun regroupement de ce type n\'est effectué.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Le plug-in isa encapsule la bibliothèque ISA. Il ne fonctionne qu\'avec des processeurs Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Le plugin ISA se présente sous deux formes Reed Solomon.\n Si reed_sol_van est défini, il équivaut à Vandermonde. Si cauchy est configuré, il équivaut à Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Le plug-in shec encapsule la bibliothèque SHEC multiple.\n Il permet à Ceph de récupérer les données plus efficacement qu\'avec les codes Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Nombre de blocs de parité, chacun incluant chaque bloc de données dans sa\n plage de calcul. Ce nombre est utilisé comme estimateur de durabilité. Par exemple, si c=2,\n 2 OSD peuvent être arrêtés sans perte de données.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Nom du compartiment crush utilisé pour la première étape de la règle CRUSH.\n Par exemple, l\'étape de définition des valeurs par défaut.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Vérifiez qu\'il n\'existe pas deux blocs dans un compartiment avec le même domaine de\n défaillance. Par exemple, si le domaine de défaillance est un hôte, deux blocs ne seront pas stockés sur le même\n hôte. Cette option est utilisée pour créer une étape de la règle CRUSH telle que chooseleaf host.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Restreindre le placement aux périphériques d\'une classe spécifique\n (par exemple, ssd ou hdd), en utilisant les noms des classes de périphériques crush dans la carte CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Définissez le nom du répertoire à partir duquel le plug-in de code d\'effacement est chargé.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Autoriser toutes les opérations</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Autorise uniquement les opérations qui ne modifient pas le serveur</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>N\'autorise pas les opérations de lecture ou d\'écriture, mais toutes les autres.</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>N\'autorise pas la lecture, l\'écriture ni aucune autre opération modifiant les attributs d\'un fichier ou le contenu d\'un répertoire.</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>N\'autorise aucun accès</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Sélectionner la priorité --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Faible</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Élevée</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informations</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Les 5 dernières minutes</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Les 15 dernières minutes</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Les 30 dernières minutes</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>La dernière heure (par défaut)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Les 3 dernières heures</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Les 6 dernières heures</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Les 12 dernières heures</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Les 24 dernières heures</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Hier</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Aujourd\'hui</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Depuis le début de la journée</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Avant-hier</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Les 2 derniers jours</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Il y a huit jours</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>La semaine dernière</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Cette semaine</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Depuis le début de la semaine</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Les 7 derniers jours</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Le mois dernier</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Ce mois</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Depuis le début du mois</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Les 30 derniers jours</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Les 90 derniers jours</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Les 6 derniers mois</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>L\'année écoulée</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>L\'année dernière</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Cette année</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Depuis le début de l\'année</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Les 2 dernières années</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Les 5 dernières années</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Aucun élément sélectionné.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Désélectionnez l\'élément pour le sélectionner à nouveau.</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Limite de sélection atteinte</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Balises de filtre</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Ajouter un badge</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Aucun élément disponible.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Cloner</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Copier</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Nettoyage en profondeur</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Détruire</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Aplatir</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Marquer comme arrêté</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Marquer comme rentré</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Marquer comme perdu</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Marquer comme sorti</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Protéger</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Renommer</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Restaurer</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Déplacer vers la corbeille</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Annuler la protection</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Supprimé</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Cloné</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Copié</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Applati</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Purgé</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Restauré</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Rétabli à l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Oui</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Non</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Qualité de service</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limite de bits/s</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Limite souhaitée d\'octets E/S par seconde.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limite E/S par seconde</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Limite souhaitée d\'opérations E/S par seconde.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limite de bits/s en lecture</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Limite souhaitée de lecture d\'octets par seconde.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limite E/S par seconde en lecture</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Limite souhaitée d\'opérations de lecture par seconde.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limite de bits/s en écriture</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Limite souhaitée d\'écriture d\'octets par seconde.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limite E/S par seconde en écriture</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Limite souhaitée d\'opérations d\'écriture par seconde.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Rafale de bits/s</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Limite de rafale d\'octets en E/S souhaitée.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Rafale E/S par seconde</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Limite de rafale d\'opérations E/S souhaitée.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Rafale E/S par seconde en lecture</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Limite de rafale d\'octets lus par seconde.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Rafale E/S par seconde en lecture</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Limite de rafale d\'opérations de lecture</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Rafale E/S par seconde en écriture</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Limite de rafale de lectures d\'octets souhaitée.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Rafale d\'E/S par seconde en écriture</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Limite de rafale d\'opérations d\'écriture souhaitée.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>En cours d\'exécution</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>exécuter</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Exécuté</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>tâche inconnue</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>En cours de création</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>créer</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>En cours de mise à jour</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>mettre à jour</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>En cours de suppression</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Clonage en cours</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>cloner</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>En cours de copie</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>copie</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Aplatissement</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>aplatir</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Retour à l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>rétablir l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>En cours de déplacement</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>déplacer</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Déplacé</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Impossible de trouver l\'image.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>En cours de restauration.</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>restaurer</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>En cours de purge</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>purger</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>toutes les réserves</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Impossible de désactiver la mise en miroir, car l\'élément contient un homologue.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},VLqJ:function(t,e,n){var a=n("0GLT"),r=n("QpVZ"),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s=/^\w*$/;t.exports=function(t,e){if(a(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!r(t))||s.test(t)||!i.test(t)||null!=e&&t in Object(e)}},VRyK:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("HDdC"),r=n("z+Ro"),i=n("bHdf"),s=n("yCtX");function u(...t){let e=Number.POSITIVE_INFINITY,n=null,u=t[t.length-1];return Object(r.a)(u)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof u&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof a.a?t[0]:Object(i.a)(e)(Object(s.a)(t,n))}},VTlA:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("mSOc"),n("ufoC");class a{constructor(t,e){this.taskMessageService=t,this.summaryService=e}init(t,e,n,a,r,i,s){this.getUpdate=t,this.preProcessing=e,this.setList=n,this.onFetchError=a,this.taskFilter=r,this.itemFilter=i,this.builders=s||{},this.summaryDataSubscription=this.summaryService.subscribe(t=>{this.getUpdate().subscribe(e=>{this.updateData(e,t.executing_tasks.filter(this.taskFilter))},this.onFetchError)},this.onFetchError)}updateData(t,e){const n=this.preProcessing?this.preProcessing(t):t;this.addMissing(n,e),n.forEach(t=>{const n=e.filter(e=>this.itemFilter(t,e));t.cdExecuting=this.getTaskAction(n)}),this.setList(n)}addMissing(t,e){const n=this.builders.default;e.forEach(e=>{const a=t.find(t=>this.itemFilter(t,e)),r=this.builders[e.name];a||!r&&!n||t.push(r?r(e.metadata):n(e.metadata))})}getTaskAction(t){if(0!==t.length)return t.map(t=>{const e=t.progress?` ${t.progress}%`:"";return this.taskMessageService.getRunningText(t)+"..."+e}).join(", ")}ngOnDestroy(){this.summaryDataSubscription&&this.summaryDataSubscription.unsubscribe()}}},VXsX:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("LvDl"),r=n("8Y7J");class i{constructor(t,e,n){this.name=t,this.metadata=e,this.onTaskFinished=n}}let s=(()=>{class t{constructor(){this.subscriptions=[]}init(t){return t.subscribe(t=>{const e=t.executing_tasks,n=t.finished_tasks,a=[];for(const r of this.subscriptions){const t=this._getTask(r,n),i=this._getTask(r,e);null!==t&&null===i&&r.onTaskFinished(t),null!==i&&a.push(r),this.subscriptions=a}})}subscribe(t,e,n){this.subscriptions.push(new i(t,e,n))}_getTask(t,e){for(const n of e)if(n.name===t.name&&a.isEqual(n.metadata,t.metadata))return n;return null}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})()},Vclq:function(t,e,n){!function(t){"use strict";var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;t.defineLocale("es-us",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:0,doy:6}})}(n("wd/R"))},Vhfg:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("lJxs"),r=n("ej+x"),i=n("8Y7J"),s=n("iInd");let u=(()=>{class t{constructor(t,e){this.router=t,this.featureToggles=e}canActivate(t){return this.featureToggles.get().pipe(Object(a.a)(e=>!1!==e[t.routeConfig.path]||(this.router.navigate(["404"]),!1)))}canActivateChild(t){return this.canActivate(t.parent)}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](s.m),i["ɵɵinject"](r.a))},token:t,providedIn:"root"}),t})()},ViD7:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="cs">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Zobraz./skrýt navigaci</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Přehled</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Klastr</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Stroje</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitory</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Služby</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Nastavení</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH mapa</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Moduly správy</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Záznamy událostí</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Fondy</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Blok</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Obrazy</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Zrcadlení</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Souborové systémy</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Objektová brána</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Procesy služeb</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Uživatelé</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Nádoby</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Získávají se data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> pro\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Čekejte…\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Zobrazují se data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>z mezipaměti\n  pro \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Nedaří se načíst dat \n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> pro\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Zkontrolujte zdraví klastru.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Vyčistit oznámení</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Odebrat oznámení</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Trvání:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>Nejsou zde žádná oznámení.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Úlohy a oznámení</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Vyberte jazyk</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Načítání údajů panelu…</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Nahlédněte do\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>, kde naleznete jak\n  nastavit a zapnout funkci monitorování.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana přehled neexistuje. Podívejte se do\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> jak\n  přidat přehledy do Grafany.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Volič čas Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Resetovat nastavení</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Načíst znovu</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Odebrat uživatelsky určenou hodnotu nastavení. Namísto toho bude převzato a použito výchozí nastavení.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš vysoká! Nemůže být vyšší než \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš nízká! Nemůže být nižší než 1.</target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Zpět</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Data se nepodařilo načíst</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>vybráno</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>nalezeno</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>celkem</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Název</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Popis</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Podrobnější popis</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Výchozí</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Výchozí pro proces služby</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Hodnoty</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš vysoká! Nemůže být vyšší než \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš nízká! Nemůže být nižší než \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Uložit</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>prohlížeč CRUSH mapy</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Načítání…</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Název stroje</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Tuto kolonku je třeba vyplnit.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>Zvolený název stroje už je používán.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Opravdu chcete \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Opravdu chcete označené položky \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> ?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Opravdu chcete \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> označené \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Ano, opravdu to chci.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Storno</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Zavřít</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Seznam strojů</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Celková výkonnost</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Zařízení</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Nenalezeny žádné položky</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Záznamy událostí v klastra</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Auditní záznamy událostí</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priorita:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Klíčové slovo:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Datum:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Volba data</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Časový rozsah:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Načítání nastavení…</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Toto nastavení se nepodařilo načíst.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Upravit modul správy</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Zadaná hodnota není platné UUID, např.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Je třeba, aby zadaná hodnota byla platnou IP adresou.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš vysoká! Je třeba, aby byla nižší nebo rovná \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš nízká! Je třeba, aby byla vyšší než nebo rovná \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Je třeba, aby zadaná hodnota byla číslo.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Je třeba, aby zadaná hodnota byla číslo nebo desítkové.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Aktualizovat</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Stav</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>Identif. kastru</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>mapa monitorů změněna</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap epocha</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>kvórum spojení</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>kvórum monitor</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>vyžadováno spojení</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>vyžadováno monitorů</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>V kvóru</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Není v kvóru</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Přidat</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Funkce</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Příznaky OSD pro celý klastr</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Odeslat</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Pokročilé…</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Pokročilé volby nastavení</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Priorita obnovení OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorita</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Přizpůsobit hodnoty priority</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Tuto kolonku je třeba vyplnit!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš vysoká, je třeba, aby nebyla vyšší než \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš nízká! Je třeba, aby byla nižší než \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Je třeba, aby hodnota byla mezi 0 a 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Znovu vyvážit</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSD \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>kontrola\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, vybrat, 1 {Deep } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, vybrat, 1 {deep } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Seznam OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Ticha</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Vyberte atribut vůči kterému hledat shodu --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Hodnota</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Použít regulární výraz</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Upravit</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Smazat</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Úprava ticha skončí platnost původního ticha a znovu ho vytvoří jako nové ticho</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Tvůrce</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Komentář</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Čas začátku</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>Pokud čas začátku leží v minulosti, bude namísto něj použit okamžik vytvoření</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Trvání</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>Čas konce</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Zdraví</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistiky</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Ohledně nastavení a zapnutí funkce správy NFS Ganesha nahlédněte do \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Klienti</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Přistupovat může libovolný klient</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Adresy</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Vyžadovaná kolonka</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Je třeba, aby obsahovalo jednu nebo více čárkou oddělovaných hodnot</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Například:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Typ přístupu</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Přidat klienty</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Žádný klastr k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Vyberte klastr --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Přidat proces služby</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Podpůrná vrstva úložiště</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Žádné fondy k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Vyberte podpůrnou vrstvu úložiště --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Uživatel objektové brány</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Žádní uživatelé k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Vyberte uživatele brány objektů --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>Identif. uživatele CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Žádní klienti k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Vyberte cephx klienta --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Název CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- Žádný souborový systém CephFS k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Vyberte CephFS souborový systém --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Štítek zabezpečení</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Zapnout štítek zabezpečení</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Popis umístění CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Je třeba, aby popis umístění začínal na „/“, za kterým následuje slovo</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Bude vytvořena nová složka</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Popis umístění</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Popis umístění může být pouze jediné „/“ nebo slovo</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Bude vytvořena nová nádoba</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS protokol</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS štítek</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternativní přístup pro \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> připojení (nemůže začínat na /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Klienti nemohou připojovat podsložky (tj. pokud Tag = neco, klient nemůže připojit neco/podslozka).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Použitím různých voleb Štítku, může to stejné umístění být exportováno vícekrát.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>Pozice kterou tento \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export zabírá\n                v \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (je třeba, aby se neopakovalo).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>By using different Pseudo options, the same Path may be exported multiple times.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Je třeba, aby Pseudo začínalo na „/“ a a nemůže obsahovat nic z následujícího: &gt;, &lt;, |, &amp;, ( nebo ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Žádný typ přístupu k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Vyberte typ přístupu --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Žádné squash k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Vyberte jaký druh squashování identifikátor uživatele je prováděn --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Transportní protokol</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Původní heslo</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>Je třeba, aby původní a nové heslo nebyly stejné</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>Nové heslo</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Zopakování zadání nového hesla</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Kontrolní zadání nového hesla se neshoduje.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Vítejte v Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Je třeba vyplnit uživatelské jméno</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Je třeba vyplnit heslo</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Přihlásit</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Je nám líto, uživatel v Ceph neexistuje.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Vrátit se na \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Přihlašovací stránku\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. Budete odhlášeni od poskytovatele identity když se pokusíte znovu přihlásit.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Odepřeno</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Omlouváme se, ale nemáte oprávnění zobrazit to, po čem se  poohlížíte.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>Data obdržena v JSON formátu verze 2.x, což je v tuto chvíli nekompatibilní s přehledem.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>výsledek SMART testu samoposouzení celkového stavu</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Informace o zařízení</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Nastavení RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Odebrat hodnotu místnímu nastavení. Namísto ní bude použita hodnota nadřazeného nastavení.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Minimální hodnota je 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Seznam fondů</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Název může být tvořen pouze písmeny a číslicemi, dále ještě spojovníky a podtržítky.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Zvolený název pro profil mazacího kódu je už používán.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Zásuvný modul</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Shluky dat (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Je třeba, aby bylo 2 a více.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Shluky kódování (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Je třeba, aby bylo 1 a více.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Odhadování odolnosti (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Umístění (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Doména selhání crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Lokalita crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Žádné</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Technika</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Velikostpaketu</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Kořen crush</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Třída crush zařízení</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>libovolné</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Složka</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Název…</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Zvolený název pro Ceph fond je už používán.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>Není možné vytvořit RBD fond s názvem „/“ v názvu.\n              Změňte název nebo \'rbd\' odeberte ze seznamu aplikací.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Typ fondul</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Vybrat typ fondu --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Skupiny umístění</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Je třeba alespoň jedné skupiny umístění!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Váš klastr nemůže obsloužit tolik skupin umístění. Přepočítejte potřebné množství skupin umístění.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Nápověda k výpočtu</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Replikovaná velikost</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Nejméně: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Nejvíce: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>Zadaná velikost je mimo rozsah. Platná hodnota je\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> až \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> .\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Příznaky</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC přebití</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Aplikace</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Profil mazacího kódu</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Žádný profil mazacího kódu --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Vyberte profil mazacího kódu --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Sada pravidel crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Vybrat crush pravidlo --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Crush pravidlo</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Crush kroky</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Komprese</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Režim</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritmus</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Žádný algoritmus komprese mazání --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Minimální velikost blobu</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>např. 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Hodnota by měla být vyšší než nula</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Hodnota by měla být nižší než maximální velikost blobu</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Nejvyšší velikost blobu</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>např. 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Hodnota by měla být vyšší než nejnižší velikost blobu</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Poměr</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Kompresní poměr</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Hodnota by měla být z rozmezí 0.0 až 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Kvóty</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Nejvýše bajtů</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Pro vypnutí této kvóty nevyplňujte nebo zadejte 0 (nulu).</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>Platná kvóta by měla být vyšší než 0 (nula).</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>např. 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Nejvýše objektů</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>Hodnota by měla být vyšší nebo rovna 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Podrobnosti</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Podrobnosti o výkonnosti</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Podrobnosti o stupních mezipaměti</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Přesunout obraz do koše</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Platnost ochrany skončí v</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NECHRÁNĚNO</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Chybný formát data. Použijte „RRRR-MM-DD HH:mm:ss“.</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>Platnost ochrany už skončila. Zvolte budoucí datum nebo nevyplňujte.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Přesunout obraz</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Brány</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Je třeba, aby bylo vyšší nebo rovno \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Je třeba, aby bylo nižší nebo rovno \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Přehled</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Cíle</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Ověřování pro objevování</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Uživatele</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Je třeba, aby uživatelská jména byla 8 až 64 znaků dlouhá a\n              mohu obsahovat pouze písmena a znaky „.“, „@“, „-“, „_“ a „:“.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Heslo</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby hesla byla 12 až 16 znaků dlouhá\n              a mohou obsahovat pouze písmena, „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Uživatel pro vzájemné ověření</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Heslo pro vzájemné ověření</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby heslo byla 12 až 16 znaků dlouhá a\n              mohou obsahovat pouze písmena, „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Podívejte se do \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  jak nastavit a zapnout funkci správy iSCSI cílů.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informace k dispozici:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>iSCSI cíl není k dispozici</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Ověřování pro objevování</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>K dispozici pouze pro RBD obrazy se zapnutým \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Fond</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Datový fond</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Vytvořeno</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Velikost</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objekty</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Velikost objektu</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Poskytováno</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>neaplikovatelné</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Celkem poskytováno</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Proužkovací jednotka</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Počet proužkování</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Nadřazené</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Předpona názvu bloku</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Pořadí</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Zachycené stavy</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Obraz</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Toto nastavení přebije globální hodnotu</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Globální</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Toto je globální hodnota. Pro tento obraz nebyla u této volby nastavena žádná hodnota.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> od\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>„/“ a „@“ nejsou dovoleny.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Žádné rbd fondy k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Vybrat fond --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Použít vyhrazený datový fond</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Datový fond</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Vyhrazený fond který uchovává objektová data RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Je třeba zvětšit.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Pokročilé</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Proužkování</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Jednotka proužku</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Vybrat jednotku proužku --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Tuto kolonku je třeba vyplnit, protože je definován počet proužků!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>Jednotka proužku je vyšší než velikost objektu.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Počet proužků</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Tuto kolonku je třeba vyplnit, protože je definována jednotka proužku!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Je třeba, aby počet proužků byl větší než nula.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Chystáte se vrátit zpět</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Vysypat koš</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Vše</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Fond:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Název fondu…</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Obnovit obraz</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Pro obnovení</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>zadejte nový název pro obraz a klikněte na</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nový název</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Platnost skončila v</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Chráněno do</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>Tento obraz je chráněn do\n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologie iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Měnit tyto parametry z jejich výchozích hodnot obvykle není potřeba.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Nastavení</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Potvrdit</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Pokročilá nastavení</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN cíle</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN nemá správný formát.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>IQN má následující formu zápisu\n                \'iqn.$rok-$mesic.$adresaObracene:$definovanyNazev\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Například: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Další informace</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Tento cíl má změněná pokročilá nastavení.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portály</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Přidat portál</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>Je třeba alespoň \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> bran.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Tento obraz má změněná nastavení.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Přidat obraz</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL ověřování</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Je třeba, aby uživatelská jména měla délku 8 až 64 znaků a\n                obsahovala pouze písmena a případně ještě znaky „.“, „@“, „-“, „_“ nebo „:“.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby hesla měla délku 12 až 16 znaků\n                a obsahovala písmena a znaky „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Iniciátory</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Iniciátor</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN klienta</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>Je třeba, aby se IQN iniciátoru neopakovalo.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Je třeba, aby uživatelská jména měla délku 8 až 64 znaků a\n                        mohou obsahovat pouze písmena a znaky „.“, „@“, „-“, „_“ nebo „:“.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby hesla měla délku 12 až 16 znaků\n                        a mohou obsahovat pouze písmena, „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby hesla měla délku 12 znaků 16 a\n                        mohou obsahovat pouze písmena, „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>Iniciátor spadá do skupiny. Obrazy budou nastaveny ve skupině.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Nepřidány žádné položky.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Přidat iniciátor</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Skupiny</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Skupina</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Přidat skupinu</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Koš</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>problémy</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Synchronizuje se</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Připraveno</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Upravit režim zrcadlení fondu</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Pro úpravu režimu zrcadlení pro fond \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, vyberte ze seznamu nový režim a klikněte na \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Aktualizovat\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Před vypnutím zrcadlení je třeba odebrat klastry-protějšky.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  protějšek zrcadlení fondu\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Název klastru</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Název klastru není platný</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX identif.</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX identif. …</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX identif. není platný.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Adresy monitorů</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Čárkou oddělované adresy…</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Adresa monitoru není platná.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX klíč</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Klíč v base64 kódování…</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>Je třeba, aby CephX klíč byl v kódování base64.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Výkonnostní čítače nejsou k dispozici</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Podívejte se do \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  jak nastavit a zapnout funkci správy brány objektů.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Seznam procesů služeb</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Výkonnostní čítače</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Načítání dat nádoby…</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>Identif.</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Hodnota není platná.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Zvolený název už je používán.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Vlastník</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Vybrat uživatele --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Cíl umístění</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Vybrat cíl umístění --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Verzování</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Zapnuto</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>Identif.</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Typ rejstříku</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Pravidlo umístění</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Označovač</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Nejvyšší označovač</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Verze</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Hlavní verze</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Okamžik úpravy</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Skupinazóny</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Kvóta nádoby</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Nejvyšší velikost</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Neomezeno</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Nejvýše objektů</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Uživatelské jméno</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Vybrat uživatelské jméno --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Automaticky vytvořit klíč</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Přístupový klíč</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Tajný klíč</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Celé jméno</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>E-mailová adresa</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Pozastaveno</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Systém</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Nejvýše nádob</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Dílčí uživatelé</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Schopnosti</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Kvóta uživatele</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Zobrazit</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Klíče</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Typ</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Vybrat typ --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Oprávnění</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Vybrat oprávnění --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Dílčí uživatel</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>Zvolený identifikátor dílčího uživatele už je používán.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>číst, zapisovat</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>plné</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Swift klíč</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Automaticky vytvořit tajemství</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Načítání údajů uživatele…</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Údaje uživatele se nepodařilo načíst.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>Zvolený identif. uživatele už je používán.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Toto není platná e-mailová adresa.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>Zvolená e-mailová adresa už je používána.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Nejvýše nádob</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Vypnuto</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Uživatelsky určené</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3 klíč</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Nejsou zde žádní dílčí uživatelé.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Nejsou zde žádné klíče.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Nejsou zde žádné schopnosti.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Neomezená velikost</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Nejvyšší velikost</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Neomezené objekty</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Nejvýše objektů</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Je třeba, aby zadaná hodnota byla 0 a vyšší.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Popis…</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Oprávnění</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Role</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Potvrzení zadání hesla</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Zadání hesla se neshodují.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>E-mail</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Neplatný e-mail.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Chystáte se odebrat oprávnění „uživatel číst/aktualizovat“ svému vlastnímu účtu.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Pokud budete pokračovat, nebudete nadále schopní přidávat nebo nebo odebírat role žádnému z uživatelů.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Opravdu chcete pokračovat?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Nápověda</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Dokumentace</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>Aplikační program. rozhraní</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>O aplikaci</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Nastavení přehledu</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Správa uživatelů</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Přihlášený uživatel</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Přihlášeni jako\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Změnit heslo</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Odhlásit</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atributy (OSD mapa)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadata nejsou k dispozici</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadata</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Stav zařízení</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Výkonnostní čítač</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram není k dispozici: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Zápisy</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Čtení</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogram</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Stávající hodnoty</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Max</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Zdroj</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Úroveň</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Je možné aktualizovat za provozu (upravitelné)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Štítky</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Vyčíslit hodnoty</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Viz také</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Stav klastru</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Procesy služby správy</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Objektové brány</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Metadata servery</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI brány</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>vst/výst. klienta</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Propustnost klienta</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Čtení/zápis klienta</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Propustnost zotavení</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Kontrola</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Výkonnost</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Holá kapacita</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Skupin umístění na OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Stav skupiny umístění</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Kapacita</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>Další podrobnosti \n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> naleznete v \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>záznamech událostí\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Hodnocení</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Pohotovosti</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>čítače výkonnosti MDS</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Složky</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Klienti (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Stávající</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Aktualizováno ověřování pro objevování</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Nejsou k dispozici žádné portály.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Nejsou k dispozici žádné obrazy.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Nejsou k dispozici žádné obrazy. Ověřte, že jste cíli přidali obraz.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Nejsou k dispozici žádné iniciátory. Ověřte, že jste cíli přidali iniciátor.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>cíl</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Cíl</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target>Počet relací</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Cíl má aktivní relace</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI cíl</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Stav</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target>Počet cílů</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Bajtů čtení</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Bajtů zápis</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Operací/s čtení</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Operací/s zápis</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O od</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instance</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problém</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Ukazatel postupu</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Upravit režim</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Přidat protějšek</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Upravit protějšek</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Smazat protějšek</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Vedoucí</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>Počet místních</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>Počet vzdálených</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>zrcadlit protějšek</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Klíč</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Hluboké zploštění</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Vrstvení</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Výhradní zámek</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mapa objektů (vyžaduje výhradní zámek)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Žurnálování (vyžaduje výhradní zámek)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Je třeba, aby nadřazený obraz podporoval vrstvy</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>CHRÁNĚNO</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NECHRÁNĚNO</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Vrácení zachyceného stavu RBD zpět</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Vrácení zpět</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Zachycený stav RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Smazáno v</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>identif.</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>typ</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>stav</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>verze</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Stroj</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>kořen</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Procesy služeb v pohotovosti</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Hodnocení</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Proces služby</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Aktivita</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Struktury složek</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>I-uzlů</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Využití</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Původ</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Aktualizováno</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>Hodnotu je možné aktualizovat za chodu.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Procesy služeb / klienti nezískávají tuto hodnotu\n      z databáze nastavení monitoru. Není umožněno nastavit tuto volbu\n      prostřednictvím „ceph config set …\'. Tato volba by měla být nastavena\n      z příkazového řádku.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>Volba se uplatní pouze při spouštění procesu služby.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>Volba ovlivní pouze vytváření klastru.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>Volba ovlivní pouze vytvoření procesu služby.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Aktualizována volba nastavení \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Služba</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Stávající hodnota</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Upravitelné</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>stroj</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Popis umístění zařízení</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>K dispozici</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Aktualizována volba pro modul „\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Zapnout</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Vypnout</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>Modul Zpráva je vždy zapnutý.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Opětovné připojování, čekejte…</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Veřejná adresa</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Otevřené relace</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Počet do</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>OSD které byly dříve odznačeny nebudou označeny nazpět když spustí</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Počet ven</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD nebudou automaticky odznačeny po nastaveném intervalu</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Počet aktivních</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSD není dovoleno spuštění</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Počet neaktivních</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Hlášení o selhání OSD jsou ignorovány, jako například že monitory OSD neoznačí jako nedostupné</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pozastavit</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Pozastavit čtení a zápisy</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Žádná kontrola</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Kontrola je vypnutá</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Žádná hloubková kontrola</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Hloubková kontrola je vypnutá</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Žádné zasypávání</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Zasypávání skupin umístění je pozastaveno</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Žádné obnovení</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Obnovování skupin umístění je pozastaveno</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Bitové třídění</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Třídit podle bitů</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Vyčištěné složky zachycených stavů</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD mají převedené sady zachycených stavů</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Smazáno při zotavování</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Mazání provedená při obnovování namísto peeringu</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Nepřekročitelný limit záznamu událostí PG</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Zapne nepřekročitelný limit na délku záznamu událostí v pg</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Aktualizovány OSD příznaky</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>ven</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>dovnitř</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>nedostupné</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Značka</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD ztraceno</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>označeno jako ztracené</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Vyčistit</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>vyčištěno</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>zlikvidovat</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>zlikvidováno</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>smazat</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Priorita zotavování</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>skupiny umístění</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Přečteno bajtů</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Zapsáno bajtů</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Operací/s čtení</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Operací/s zápis</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Označit OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Označit \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Max Backfills</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Recovery Max Active</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Recovery Max Single Start</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Uspání zotavení</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Aktualizována rychlost zotavení OSD „\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Úloha</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Závažnost</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Zahájeno</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL adresa</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>ticho</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Název atributu</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regulární výraz</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Přidejte hostitele s Prometheus do nastavení přehledu a znovu načtete stránku</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Vytvořil(a)</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Končí</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Ticho</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Popis stavu</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Použito</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>K dispozici</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Čisté</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>Pracující</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Varování</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Neznámé</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Zdravé</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Chybně umístěno</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degradováno</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Odnalezeno</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>repliky</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>aktivní</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>žádné souborové systémy</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>aktivní</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>v pohotovosti</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>neaplikovatelné</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>aktivní proces služby</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>kvórum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Služba NFS Ganesha není nastavena.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS uživatel</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Souborový systém CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(převzato z globálního nastavení)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>převzato z globálního nastavení</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Vyberte jaký druh squashování identifikátor uživatele je prováděn --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Nejsou k dispozici žádné procesy služeb.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC profil</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Režim mezipaměti</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Min Evict Age</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Min Flush Age</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Nejvýše bajtů cíle</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Nejvýše objektů cíle</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Nebyla přidána žádná aplikace</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Dosažen limit aplikací</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Fond může mít nejvýše čtyři definice aplikací.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Použitelné znaky „_a-zA-Z0-9“</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Nejvyšší délka je 128 znaků</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtrovat nebo přidat aplikace</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Přidat aplikaci</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>fond</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>profil mazacího kódu</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Velikost repliky</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Nejnovější změna</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Mazáním kódovaný profil</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Sada crush pravidel</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Smazání fondu je vypnuto nastavením mon_allow_pool_delete configuration.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>nádoba</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Vytvořena nádoba objektové brány „\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>nádoby</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>schopnost</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>uživatel</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>dílčí uživatel</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 klíč</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Aktualizován uživatel objektové brány „\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Vytvořen uživatel objektové brány „\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>uživatelé</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift klíč</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>Vyskytla se chyba s kódem \n          <x id="INTERPOLATION" equiv-text="{{code}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Nezpracované</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Práh</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>Když se nezdařilo</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Nejhorší</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Rozsah</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Čtení</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Vytvořit</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Vytvořena role „\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Aktualizována role „\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Systémová role</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Smazána role „\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>Nejsou zde žádné role.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Vytvořen uživatel „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Aktualizovat uživatele</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Pokračovat</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Byli jste automaticky odhlášeni protože vaše role byly změněny.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Aktualizován uživatel „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Smazán uživatel „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Nepodařilo se smazat uživatele „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>Nyní jste přihlášení jako „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“.\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>heslo</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Aktualizované heslo uživatele"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Každý objekt je rozdělen v částech shluků dat, každé uložené na jiném OSD.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Počítat kódovací shluky pro každý objekt a ukládat je na různých OSD.\n      Počet kódovacích shluků je také počet OSD, které mohou vypadnou, aniž dojde ke ztrátě dat.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Zásuvný modul jerasure je nejobecnější a nejpřizpůsobivější,\n je také výchozí pro Ceph fondy kódované mazáním.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Přizpůsobivější technikou je reed_sol_van: postačí nastvit k\n          a m. Technika cauchy_good technique může být rychlejší, ale je třeba pečlivě nastavit velikost\n          paketu. Všechny z reed_sol_r6_op, liberation, blaum_roth, liber8tion jsou ekvivalenty RAID6\n          v tom smyslu, že je možné je nastavit pouze s m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Zásuvný modul isa obaluje knihovnu ISA. Funguje pouze na procesorech Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Zásuvný modul ISA přichází ve dvou Reed Solomon podobách.\n          Pokud je nastaveno reed_sol_van, je to Vandermonde, pokud je nastaveno Cauchy, je Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Počet paritních shluků, ze kterých každý obsahuje každý shluk dat ve svém\n          výpočetním rozsahu. Číslo je použito pro odhad odolnosti. Například, pokud c=2,\n          2 OSD mohou vypadnou aniž by byla ztracena data.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Název crush nádoby sloužící jako první krok CRUSH pravidla.\n Například krok vzít výchozí.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Zajistit, aby žádné dva shluky nebyly v nádobě nacházejícící se ve stejné\n      doméně selhání. Například, pokud doména selhání je hostitel, žádné dva shluky nebudou uloženy na stejném hostiteli\n      Je použito pro vytvoření kroku CRUSH pravidla jako krok chooseleaf hostitele.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Omezit umístění na zařízení určité třídy\n      (např., ssd nebo hdd), pomocí názvu crush třídy zařízení v  CRUSH mapě.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Nastavit složku ze které načítat zásuvný modul mazacího kódu.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Umožnit všechny operace</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Umožnit pouze operace které neupraví server</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Neumožňuje operace čtení či zápisu, ale umožňuje ostatní</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Neumožňuje čtení, zápis nebo jinou operaci která upravuje atributy        souboru nebo obsah složky</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Neumožnit vůbec žádný přístup</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Vyberte prioritu --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Nízká</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Vysoká</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Chyba</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informace</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Úspěch</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Uplynulých 5 minut</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Uplynulých 15 minut</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Uplynulých 30 minut</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Uplynulá 1 hodina (výchozí)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Uplynulé 3 hodiny</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Uplynulých 6 hodin</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Uplynulých 12 hodin</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Uplynulých 24 hodin</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Včera</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Dnes</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Dnes doposud</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Včerejšek</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Uplynulé 2 dny</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Tento den minulý týden</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Předchozí týden</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Tento týden</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Tento týden doposud</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Uplynulých 7 dnů</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Předchozí měsíc</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Tento měsíc</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Tento měsíc doposud</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Uplynulých 30 dnů</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Uplynulých 90 dnů</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Uplynulých 6 měsíců</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Uplynulý 1 rok</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Předchozí rok</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Tento rok</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Tento rok doposud</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Uplynulé 2 roky</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Uplynulých 5 let</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Nevybrány žádné položky.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Aby položku bylo možné znovu vybrat, je třeba nejprve zrušit její výběr</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Dosažen limit výběru</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Filtrovat štítky</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Přidat odznak</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Nejsou k dispozici žádné položky.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Odebrat</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Klonovat</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Kopírovat</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Hloubková kontrola</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Zlikvidovat</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Zploštit</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Označit</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Označit</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Označit ztracené</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Odznačit</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Ochránit</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Přejmenovat</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Obnovit</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Přesunout do koše</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Zrušit ochranu</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Změnit</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Znovuvytvořit</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Ukončit platnost</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Smazáno</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Přidáno</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Odebráno</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Upraveno</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Zrušeno</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Naklonováno</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Zkopírováno</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Zlikvidováno</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Zploštěno</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Označeno jako ztracené</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Chráněno</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Vyčištěno</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Přejmenováno</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Obnoveno</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Vzato zpět</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Zobrazeno</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Přesunout do koše</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Ochrana zrušena</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Znovu vytvořeno</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Platnost skončila</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Ano</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Ne</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>žádné aktivní výstrahy</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>Jedna aktivní výstraha</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> aktivních výstrah\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Odpovídá jednomu pravidlu</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Odpovídá \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> pravidlům\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> s \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Kvalita služby</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limit BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Požadovaný limit vst./výstup. bajtů za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limit vst/výstup. operací / s</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Požadovaný limit vst./výstup. operací za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limit BPS čtení</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Požadovaný limit čtení bajtů za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limit IOPS čtení</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Požadovaný limit operací čtení za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limit BPS zápisu</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Požadovaný limit zápisu bajtů za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limit IOPS zápisu</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Požadovaný limit operací čtení za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS dávka</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Požadovaný limit dávky bajtů vstup/výstupu.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS dávka</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Požadovaný limit dávky vst./výstup. operací.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Dávka BPS čtení</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Požadovaný limit dávky bajtů čtení.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Dávka IOPS čtení</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Požadovaný limit dávky čtení bajtů.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Dávka BPS zápisu</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Požadovaný limit bajtů dávky zápisu.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Dávka IOPS zápisu</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Požadovaný limit dávky operace zápisu.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Nepodařilo se \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Vykonává se</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>vykonat</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Vykonáno</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>neznámý úkol</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Vytváří se</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>vytvořit</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Aktualizuje se</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>aktualizovat</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Maže se</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Přidávání</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>přidat</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Odebírání</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>odebrat</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD zachycený stav „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>režim zrcadlení pro fond „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>protějšek zrcadlení pro fond „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>všechny přehledy</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Název už je používán \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Název už je používán \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Název už je používán \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> obsahuje zachycené stavy.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Klonuje se</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>klonovat</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Je třeba, aby zachycený stav \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> byl chráněný.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Kopíruje se</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>zkopírovat</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Zploštění</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>zploštit</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Název už je používán pro \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Není možné zrušit ochranu \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>, protože obsahuje podřízené obrazy.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> není možné smazat, protože je chráněné.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Bere se zpět</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>vzít zpět</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Přesouvá se</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>přesunout</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Přesunuto</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>obraz „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“ do koše\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Obraz se nedaří najít.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Obnovuje se</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>obnovit</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>obraz „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“ do „\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Název „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“ už je používán pro jiný obraz.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>obraz „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Čistí se</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>vyčistit</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>všechny fondy</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>obrazy z \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Zrcadlení nelze vypnout protože obsahuje protějšek.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>stroj „\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>fond „\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>profil mazacího kódu „\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>cíl „\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},VpIT:function(t,e,n){var a=n("xDBR"),r=n("xs3f");(t.exports=function(t,e){return r[t]||(r[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.5",mode:a?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var a=n("0GbY"),r=n("JBy8"),i=n("dBg+"),s=n("glrk");t.exports=a("Reflect","ownKeys")||function(t){var e=r.f(s(t)),n=i.f;return n?e.concat(n(t)):e}},WF9J:function(t,e,n){"use strict";n("TeQF"),n("QWBl"),n("4mDm"),n("zKZe"),n("07d7"),n("4l63"),n("PKPk"),n("ENF9"),n("3bBZ");var a=n("hKI/"),r=n.n(a),i=n("9/5/"),s=n.n(i),u=n("uyHG"),o=n.n(u),l=function(){if("undefined"!=typeof Map)return Map;function t(t,e){var n=-1;return t.some((function(t,a){return t[0]===e&&(n=a,!0)})),n}return function(){function e(){this.__entries__=[]}return Object.defineProperty(e.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),e.prototype.get=function(e){var n=t(this.__entries__,e),a=this.__entries__[n];return a&&a[1]},e.prototype.set=function(e,n){var a=t(this.__entries__,e);~a?this.__entries__[a][1]=n:this.__entries__.push([e,n])},e.prototype.delete=function(e){var n=this.__entries__,a=t(n,e);~a&&n.splice(a,1)},e.prototype.has=function(e){return!!~t(this.__entries__,e)},e.prototype.clear=function(){this.__entries__.splice(0)},e.prototype.forEach=function(t,e){void 0===e&&(e=null);for(var n=0,a=this.__entries__;n<a.length;n++){var r=a[n];t.call(e,r[1],r[0])}},e}()}(),d="undefined"!=typeof window&&"undefined"!=typeof document&&window.document===document,c="undefined"!=typeof global&&global.Math===Math?global:"undefined"!=typeof self&&self.Math===Math?self:"undefined"!=typeof window&&window.Math===Math?window:Function("return this")(),f="function"==typeof requestAnimationFrame?requestAnimationFrame.bind(c):function(t){return setTimeout((function(){return t(Date.now())}),1e3/60)},h=["top","right","bottom","left","width","height","size","weight"],g="undefined"!=typeof MutationObserver,p=function(){function t(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=function(t,e){var n=!1,a=!1,r=0;function i(){n&&(n=!1,t()),a&&u()}function s(){f(i)}function u(){var t=Date.now();if(n){if(t-r<2)return;a=!0}else n=!0,a=!1,setTimeout(s,20);r=t}return u}(this.refresh.bind(this))}return t.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},t.prototype.removeObserver=function(t){var e=this.observers_,n=e.indexOf(t);~n&&e.splice(n,1),!e.length&&this.connected_&&this.disconnect_()},t.prototype.refresh=function(){this.updateObservers_()&&this.refresh()},t.prototype.updateObservers_=function(){var t=this.observers_.filter((function(t){return t.gatherActive(),t.hasActive()}));return t.forEach((function(t){return t.broadcastActive()})),t.length>0},t.prototype.connect_=function(){d&&!this.connected_&&(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),g?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},t.prototype.disconnect_=function(){d&&this.connected_&&(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},t.prototype.onTransitionEnd_=function(t){var e=t.propertyName,n=void 0===e?"":e;h.some((function(t){return!!~n.indexOf(t)}))&&this.refresh()},t.getInstance=function(){return this.instance_||(this.instance_=new t),this.instance_},t.instance_=null,t}(),b=function(t,e){for(var n=0,a=Object.keys(e);n<a.length;n++){var r=a[n];Object.defineProperty(t,r,{value:e[r],enumerable:!1,writable:!1,configurable:!0})}return t},m=function(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView||c},y=T(0,0,0,0);function v(t){return parseFloat(t)||0}function x(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return e.reduce((function(e,n){return e+v(t["border-"+n+"-width"])}),0)}var _="undefined"!=typeof SVGGraphicsElement?function(t){return t instanceof m(t).SVGGraphicsElement}:function(t){return t instanceof m(t).SVGElement&&"function"==typeof t.getBBox};function T(t,e,n,a){return{x:t,y:e,width:n,height:a}}var w=function(){function t(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=T(0,0,0,0),this.target=t}return t.prototype.isActive=function(){var t,e=(t=this.target,d?_(t)?function(t){var e=t.getBBox();return T(0,0,e.width,e.height)}(t):function(t){var e=t.clientWidth,n=t.clientHeight;if(!e&&!n)return y;var a=m(t).getComputedStyle(t),r=function(t){for(var e={},n=0,a=["top","right","bottom","left"];n<a.length;n++){var r=a[n];e[r]=v(t["padding-"+r])}return e}(a),i=r.left+r.right,s=r.top+r.bottom,u=v(a.width),o=v(a.height);if("border-box"===a.boxSizing&&(Math.round(u+i)!==e&&(u-=x(a,"left","right")+i),Math.round(o+s)!==n&&(o-=x(a,"top","bottom")+s)),!function(t){return t===m(t).document.documentElement}(t)){var l=Math.round(u+i)-e,d=Math.round(o+s)-n;1!==Math.abs(l)&&(u-=l),1!==Math.abs(d)&&(o-=d)}return T(r.left,r.top,u,o)}(t):y);return this.contentRect_=e,e.width!==this.broadcastWidth||e.height!==this.broadcastHeight},t.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t},t}(),O=function(t,e){var n,a,r,i,s,u,o,l=(a=(n=e).x,r=n.y,i=n.width,s=n.height,u="undefined"!=typeof DOMRectReadOnly?DOMRectReadOnly:Object,o=Object.create(u.prototype),b(o,{x:a,y:r,width:i,height:s,top:r,right:a+i,bottom:s+r,left:a}),o);b(this,{target:t,contentRect:l})},S=function(){function t(t,e,n){if(this.activeObservations_=[],this.observations_=new l,"function"!=typeof t)throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=t,this.controller_=e,this.callbackCtx_=n}return t.prototype.observe=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(t instanceof m(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)||(e.set(t,new w(t)),this.controller_.addObserver(this),this.controller_.refresh())}},t.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(t instanceof m(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)&&(e.delete(t),e.size||this.controller_.removeObserver(this))}},t.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},t.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach((function(e){e.isActive()&&t.activeObservations_.push(e)}))},t.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,e=this.activeObservations_.map((function(t){return new O(t.target,t.broadcastRect())}));this.callback_.call(t,e,t),this.clearActive()}},t.prototype.clearActive=function(){this.activeObservations_.splice(0)},t.prototype.hasActive=function(){return this.activeObservations_.length>0},t}(),I="undefined"!=typeof WeakMap?new WeakMap:new l,N=function t(e){if(!(this instanceof t))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var n=p.getInstance(),a=new S(e,n,this);I.set(this,a)};["observe","unobserve","disconnect"].forEach((function(t){N.prototype[t]=function(){var e;return(e=I.get(this))[t].apply(e,arguments)}}));var C=void 0!==c.ResizeObserver?c.ResizeObserver:N,R=n("AxL3"),A=n.n(R),k=(n("E9XD"),n("sMBO"),n("rB9j"),n("Rm1S"),n("UxlC"),null),E=null;function L(){if(null===k){if("undefined"==typeof document)return k=0;var t=document.body,e=document.createElement("div");e.classList.add("simplebar-hide-scrollbar"),t.appendChild(e);var n=e.getBoundingClientRect().right;t.removeChild(e),k=n}return k}function D(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView?t.ownerDocument.defaultView:window}function P(t){return t&&t.ownerDocument?t.ownerDocument:document}A.a&&window.addEventListener("resize",(function(){E!==window.devicePixelRatio&&(E=window.devicePixelRatio,k=null)}));var M=function(){function t(e,n){var a=this;this.onScroll=function(){var t=D(a.el);a.scrollXTicking||(t.requestAnimationFrame(a.scrollX),a.scrollXTicking=!0),a.scrollYTicking||(t.requestAnimationFrame(a.scrollY),a.scrollYTicking=!0)},this.scrollX=function(){a.axis.x.isOverflowing&&(a.showScrollbar("x"),a.positionScrollbar("x")),a.scrollXTicking=!1},this.scrollY=function(){a.axis.y.isOverflowing&&(a.showScrollbar("y"),a.positionScrollbar("y")),a.scrollYTicking=!1},this.onMouseEnter=function(){a.showScrollbar("x"),a.showScrollbar("y")},this.onMouseMove=function(t){a.mouseX=t.clientX,a.mouseY=t.clientY,(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&a.onMouseMoveForAxis("x"),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&a.onMouseMoveForAxis("y")},this.onMouseLeave=function(){a.onMouseMove.cancel(),(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&a.onMouseLeaveForAxis("x"),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&a.onMouseLeaveForAxis("y"),a.mouseX=-1,a.mouseY=-1},this.onWindowResize=function(){a.scrollbarWidth=a.getScrollbarWidth(),a.hideNativeScrollbar()},this.hideScrollbars=function(){a.axis.x.track.rect=a.axis.x.track.el.getBoundingClientRect(),a.axis.y.track.rect=a.axis.y.track.el.getBoundingClientRect(),a.isWithinBounds(a.axis.y.track.rect)||(a.axis.y.scrollbar.el.classList.remove(a.classNames.visible),a.axis.y.isVisible=!1),a.isWithinBounds(a.axis.x.track.rect)||(a.axis.x.scrollbar.el.classList.remove(a.classNames.visible),a.axis.x.isVisible=!1)},this.onPointerEvent=function(t){var e,n;a.axis.x.track.rect=a.axis.x.track.el.getBoundingClientRect(),a.axis.y.track.rect=a.axis.y.track.el.getBoundingClientRect(),(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&(e=a.isWithinBounds(a.axis.x.track.rect)),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&(n=a.isWithinBounds(a.axis.y.track.rect)),(e||n)&&(t.preventDefault(),t.stopPropagation(),"mousedown"===t.type&&(e&&(a.axis.x.scrollbar.rect=a.axis.x.scrollbar.el.getBoundingClientRect(),a.isWithinBounds(a.axis.x.scrollbar.rect)?a.onDragStart(t,"x"):a.onTrackClick(t,"x")),n&&(a.axis.y.scrollbar.rect=a.axis.y.scrollbar.el.getBoundingClientRect(),a.isWithinBounds(a.axis.y.scrollbar.rect)?a.onDragStart(t,"y"):a.onTrackClick(t,"y"))))},this.drag=function(e){var n=a.axis[a.draggedAxis].track,r=n.rect[a.axis[a.draggedAxis].sizeAttr],i=a.axis[a.draggedAxis].scrollbar,s=a.contentWrapperEl[a.axis[a.draggedAxis].scrollSizeAttr],u=parseInt(a.elStyles[a.axis[a.draggedAxis].sizeAttr],10);e.preventDefault(),e.stopPropagation();var o=(("y"===a.draggedAxis?e.pageY:e.pageX)-n.rect[a.axis[a.draggedAxis].offsetAttr]-a.axis[a.draggedAxis].dragOffset)/(r-i.size)*(s-u);"x"===a.draggedAxis&&(o=a.isRtl&&t.getRtlHelpers().isRtlScrollbarInverted?o-(r+i.size):o,o=a.isRtl&&t.getRtlHelpers().isRtlScrollingInverted?-o:o),a.contentWrapperEl[a.axis[a.draggedAxis].scrollOffsetAttr]=o},this.onEndDrag=function(t){var e=P(a.el),n=D(a.el);t.preventDefault(),t.stopPropagation(),a.el.classList.remove(a.classNames.dragging),e.removeEventListener("mousemove",a.drag,!0),e.removeEventListener("mouseup",a.onEndDrag,!0),a.removePreventClickId=n.setTimeout((function(){e.removeEventListener("click",a.preventClick,!0),e.removeEventListener("dblclick",a.preventClick,!0),a.removePreventClickId=null}))},this.preventClick=function(t){t.preventDefault(),t.stopPropagation()},this.el=e,this.minScrollbarWidth=20,this.options=Object.assign({},t.defaultOptions,{},n),this.classNames=Object.assign({},t.defaultOptions.classNames,{},this.options.classNames),this.axis={x:{scrollOffsetAttr:"scrollLeft",sizeAttr:"width",scrollSizeAttr:"scrollWidth",offsetSizeAttr:"offsetWidth",offsetAttr:"left",overflowAttr:"overflowX",dragOffset:0,isOverflowing:!0,isVisible:!1,forceVisible:!1,track:{},scrollbar:{}},y:{scrollOffsetAttr:"scrollTop",sizeAttr:"height",scrollSizeAttr:"scrollHeight",offsetSizeAttr:"offsetHeight",offsetAttr:"top",overflowAttr:"overflowY",dragOffset:0,isOverflowing:!0,isVisible:!1,forceVisible:!1,track:{},scrollbar:{}}},this.removePreventClickId=null,t.instances.has(this.el)||(this.recalculate=r()(this.recalculate.bind(this),64),this.onMouseMove=r()(this.onMouseMove.bind(this),64),this.hideScrollbars=s()(this.hideScrollbars.bind(this),this.options.timeout),this.onWindowResize=s()(this.onWindowResize.bind(this),64,{leading:!0}),t.getRtlHelpers=o()(t.getRtlHelpers),this.init())}t.getRtlHelpers=function(){var e=document.createElement("div");e.innerHTML='<div class="hs-dummy-scrollbar-size"><div style="height: 200%; width: 200%; margin: 10px 0;"></div></div>';var n=e.firstElementChild;document.body.appendChild(n);var a=n.firstElementChild;n.scrollLeft=0;var r=t.getOffset(n),i=t.getOffset(a);n.scrollLeft=999;var s=t.getOffset(a);return{isRtlScrollingInverted:r.left!==i.left&&i.left-s.left!=0,isRtlScrollbarInverted:r.left!==i.left}},t.getOffset=function(t){var e=t.getBoundingClientRect(),n=P(t),a=D(t);return{top:e.top+(a.pageYOffset||n.documentElement.scrollTop),left:e.left+(a.pageXOffset||n.documentElement.scrollLeft)}};var e=t.prototype;return e.init=function(){t.instances.set(this.el,this),A.a&&(this.initDOM(),this.scrollbarWidth=this.getScrollbarWidth(),this.recalculate(),this.initListeners())},e.initDOM=function(){var t=this;if(Array.prototype.filter.call(this.el.children,(function(e){return e.classList.contains(t.classNames.wrapper)})).length)this.wrapperEl=this.el.querySelector("."+this.classNames.wrapper),this.contentWrapperEl=this.options.scrollableNode||this.el.querySelector("."+this.classNames.contentWrapper),this.contentEl=this.options.contentNode||this.el.querySelector("."+this.classNames.contentEl),this.offsetEl=this.el.querySelector("."+this.classNames.offset),this.maskEl=this.el.querySelector("."+this.classNames.mask),this.placeholderEl=this.findChild(this.wrapperEl,"."+this.classNames.placeholder),this.heightAutoObserverWrapperEl=this.el.querySelector("."+this.classNames.heightAutoObserverWrapperEl),this.heightAutoObserverEl=this.el.querySelector("."+this.classNames.heightAutoObserverEl),this.axis.x.track.el=this.findChild(this.el,"."+this.classNames.track+"."+this.classNames.horizontal),this.axis.y.track.el=this.findChild(this.el,"."+this.classNames.track+"."+this.classNames.vertical);else{for(this.wrapperEl=document.createElement("div"),this.contentWrapperEl=document.createElement("div"),this.offsetEl=document.createElement("div"),this.maskEl=document.createElement("div"),this.contentEl=document.createElement("div"),this.placeholderEl=document.createElement("div"),this.heightAutoObserverWrapperEl=document.createElement("div"),this.heightAutoObserverEl=document.createElement("div"),this.wrapperEl.classList.add(this.classNames.wrapper),this.contentWrapperEl.classList.add(this.classNames.contentWrapper),this.offsetEl.classList.add(this.classNames.offset),this.maskEl.classList.add(this.classNames.mask),this.contentEl.classList.add(this.classNames.contentEl),this.placeholderEl.classList.add(this.classNames.placeholder),this.heightAutoObserverWrapperEl.classList.add(this.classNames.heightAutoObserverWrapperEl),this.heightAutoObserverEl.classList.add(this.classNames.heightAutoObserverEl);this.el.firstChild;)this.contentEl.appendChild(this.el.firstChild);this.contentWrapperEl.appendChild(this.contentEl),this.offsetEl.appendChild(this.contentWrapperEl),this.maskEl.appendChild(this.offsetEl),this.heightAutoObserverWrapperEl.appendChild(this.heightAutoObserverEl),this.wrapperEl.appendChild(this.heightAutoObserverWrapperEl),this.wrapperEl.appendChild(this.maskEl),this.wrapperEl.appendChild(this.placeholderEl),this.el.appendChild(this.wrapperEl)}if(!this.axis.x.track.el||!this.axis.y.track.el){var e=document.createElement("div"),n=document.createElement("div");e.classList.add(this.classNames.track),n.classList.add(this.classNames.scrollbar),e.appendChild(n),this.axis.x.track.el=e.cloneNode(!0),this.axis.x.track.el.classList.add(this.classNames.horizontal),this.axis.y.track.el=e.cloneNode(!0),this.axis.y.track.el.classList.add(this.classNames.vertical),this.el.appendChild(this.axis.x.track.el),this.el.appendChild(this.axis.y.track.el)}this.axis.x.scrollbar.el=this.axis.x.track.el.querySelector("."+this.classNames.scrollbar),this.axis.y.scrollbar.el=this.axis.y.track.el.querySelector("."+this.classNames.scrollbar),this.options.autoHide||(this.axis.x.scrollbar.el.classList.add(this.classNames.visible),this.axis.y.scrollbar.el.classList.add(this.classNames.visible)),this.el.setAttribute("data-simplebar","init")},e.initListeners=function(){var t=this,e=D(this.el);this.options.autoHide&&this.el.addEventListener("mouseenter",this.onMouseEnter),["mousedown","click","dblclick"].forEach((function(e){t.el.addEventListener(e,t.onPointerEvent,!0)})),["touchstart","touchend","touchmove"].forEach((function(e){t.el.addEventListener(e,t.onPointerEvent,{capture:!0,passive:!0})})),this.el.addEventListener("mousemove",this.onMouseMove),this.el.addEventListener("mouseleave",this.onMouseLeave),this.contentWrapperEl.addEventListener("scroll",this.onScroll),e.addEventListener("resize",this.onWindowResize);var n=!1;this.resizeObserver=new(e.ResizeObserver||C)((function(){n&&t.recalculate()})),this.resizeObserver.observe(this.el),this.resizeObserver.observe(this.contentEl),e.requestAnimationFrame((function(){n=!0})),this.mutationObserver=new e.MutationObserver(this.recalculate),this.mutationObserver.observe(this.contentEl,{childList:!0,subtree:!0,characterData:!0})},e.recalculate=function(){var t=D(this.el);this.elStyles=t.getComputedStyle(this.el),this.isRtl="rtl"===this.elStyles.direction;var e=this.contentEl.offsetWidth,n=this.heightAutoObserverEl.offsetHeight<=1,a=this.heightAutoObserverEl.offsetWidth<=1||e>0,r=this.contentWrapperEl.offsetWidth,i=this.elStyles.overflowX,s=this.elStyles.overflowY;this.contentEl.style.padding=this.elStyles.paddingTop+" "+this.elStyles.paddingRight+" "+this.elStyles.paddingBottom+" "+this.elStyles.paddingLeft,this.wrapperEl.style.margin="-"+this.elStyles.paddingTop+" -"+this.elStyles.paddingRight+" -"+this.elStyles.paddingBottom+" -"+this.elStyles.paddingLeft;var u=this.contentEl.scrollHeight,o=this.contentEl.scrollWidth;this.contentWrapperEl.style.height=n?"auto":"100%",this.placeholderEl.style.width=a?(e||o)+"px":"auto",this.placeholderEl.style.height=u+"px";var l=this.contentWrapperEl.offsetHeight;this.axis.x.isOverflowing=0!==e&&o>e,this.axis.y.isOverflowing=u>l,this.axis.x.isOverflowing="hidden"!==i&&this.axis.x.isOverflowing,this.axis.y.isOverflowing="hidden"!==s&&this.axis.y.isOverflowing,this.axis.x.forceVisible="x"===this.options.forceVisible||!0===this.options.forceVisible,this.axis.y.forceVisible="y"===this.options.forceVisible||!0===this.options.forceVisible,this.hideNativeScrollbar();var d=this.axis.x.isOverflowing?this.scrollbarWidth:0;this.axis.x.isOverflowing=this.axis.x.isOverflowing&&o>r-(this.axis.y.isOverflowing?this.scrollbarWidth:0),this.axis.y.isOverflowing=this.axis.y.isOverflowing&&u>l-d,this.axis.x.scrollbar.size=this.getScrollbarSize("x"),this.axis.y.scrollbar.size=this.getScrollbarSize("y"),this.axis.x.scrollbar.el.style.width=this.axis.x.scrollbar.size+"px",this.axis.y.scrollbar.el.style.height=this.axis.y.scrollbar.size+"px",this.positionScrollbar("x"),this.positionScrollbar("y"),this.toggleTrackVisibility("x"),this.toggleTrackVisibility("y")},e.getScrollbarSize=function(t){if(void 0===t&&(t="y"),!this.axis[t].isOverflowing)return 0;var e,n=this.axis[t].track.el[this.axis[t].offsetSizeAttr];return e=Math.max(~~(n/this.contentEl[this.axis[t].scrollSizeAttr]*n),this.options.scrollbarMinSize),this.options.scrollbarMaxSize&&(e=Math.min(e,this.options.scrollbarMaxSize)),e},e.positionScrollbar=function(e){if(void 0===e&&(e="y"),this.axis[e].isOverflowing){var n=this.contentWrapperEl[this.axis[e].scrollSizeAttr],a=this.axis[e].track.el[this.axis[e].offsetSizeAttr],r=parseInt(this.elStyles[this.axis[e].sizeAttr],10),i=this.axis[e].scrollbar,s=this.contentWrapperEl[this.axis[e].scrollOffsetAttr],u=~~((s="x"===e&&this.isRtl&&t.getRtlHelpers().isRtlScrollingInverted?-s:s)/(n-r)*(a-i.size));u="x"===e&&this.isRtl&&t.getRtlHelpers().isRtlScrollbarInverted?u+(a-i.size):u,i.el.style.transform="x"===e?"translate3d("+u+"px, 0, 0)":"translate3d(0, "+u+"px, 0)"}},e.toggleTrackVisibility=function(t){void 0===t&&(t="y");var e=this.axis[t].track.el,n=this.axis[t].scrollbar.el;this.axis[t].isOverflowing||this.axis[t].forceVisible?(e.style.visibility="visible",this.contentWrapperEl.style[this.axis[t].overflowAttr]="scroll"):(e.style.visibility="hidden",this.contentWrapperEl.style[this.axis[t].overflowAttr]="hidden"),n.style.display=this.axis[t].isOverflowing?"block":"none"},e.hideNativeScrollbar=function(){this.offsetEl.style[this.isRtl?"left":"right"]=this.axis.y.isOverflowing||this.axis.y.forceVisible?"-"+this.scrollbarWidth+"px":0,this.offsetEl.style.bottom=this.axis.x.isOverflowing||this.axis.x.forceVisible?"-"+this.scrollbarWidth+"px":0},e.onMouseMoveForAxis=function(t){void 0===t&&(t="y"),this.axis[t].track.rect=this.axis[t].track.el.getBoundingClientRect(),this.axis[t].scrollbar.rect=this.axis[t].scrollbar.el.getBoundingClientRect(),this.isWithinBounds(this.axis[t].scrollbar.rect)?this.axis[t].scrollbar.el.classList.add(this.classNames.hover):this.axis[t].scrollbar.el.classList.remove(this.classNames.hover),this.isWithinBounds(this.axis[t].track.rect)?(this.showScrollbar(t),this.axis[t].track.el.classList.add(this.classNames.hover)):this.axis[t].track.el.classList.remove(this.classNames.hover)},e.onMouseLeaveForAxis=function(t){void 0===t&&(t="y"),this.axis[t].track.el.classList.remove(this.classNames.hover),this.axis[t].scrollbar.el.classList.remove(this.classNames.hover)},e.showScrollbar=function(t){void 0===t&&(t="y"),this.axis[t].isVisible||(this.axis[t].scrollbar.el.classList.add(this.classNames.visible),this.axis[t].isVisible=!0),this.options.autoHide&&this.hideScrollbars()},e.onDragStart=function(t,e){void 0===e&&(e="y");var n=P(this.el),a=D(this.el);this.axis[e].dragOffset=("y"===e?t.pageY:t.pageX)-this.axis[e].scrollbar.rect[this.axis[e].offsetAttr],this.draggedAxis=e,this.el.classList.add(this.classNames.dragging),n.addEventListener("mousemove",this.drag,!0),n.addEventListener("mouseup",this.onEndDrag,!0),null===this.removePreventClickId?(n.addEventListener("click",this.preventClick,!0),n.addEventListener("dblclick",this.preventClick,!0)):(a.clearTimeout(this.removePreventClickId),this.removePreventClickId=null)},e.onTrackClick=function(t,e){var n=this;if(void 0===e&&(e="y"),this.options.clickOnTrack){var a=D(this.el);this.axis[e].scrollbar.rect=this.axis[e].scrollbar.el.getBoundingClientRect();var r=this.axis[e].scrollbar.rect[this.axis[e].offsetAttr],i=parseInt(this.elStyles[this.axis[e].sizeAttr],10),s=this.contentWrapperEl[this.axis[e].scrollOffsetAttr],u=("y"===e?this.mouseY-r:this.mouseX-r)<0?-1:1,o=-1===u?s-i:s+i;!function t(){var r,i;-1===u?s>o&&(n.contentWrapperEl.scrollTo(((r={})[n.axis[e].offsetAttr]=s-=40,r)),a.requestAnimationFrame(t)):s<o&&(n.contentWrapperEl.scrollTo(((i={})[n.axis[e].offsetAttr]=s+=40,i)),a.requestAnimationFrame(t))}()}},e.getContentElement=function(){return this.contentEl},e.getScrollElement=function(){return this.contentWrapperEl},e.getScrollbarWidth=function(){try{return"none"===getComputedStyle(this.contentWrapperEl,"::-webkit-scrollbar").display||"scrollbarWidth"in document.documentElement.style||"-ms-overflow-style"in document.documentElement.style?0:L()}catch(t){return L()}},e.removeListeners=function(){var t=this,e=D(this.el);this.options.autoHide&&this.el.removeEventListener("mouseenter",this.onMouseEnter),["mousedown","click","dblclick"].forEach((function(e){t.el.removeEventListener(e,t.onPointerEvent,!0)})),["touchstart","touchend","touchmove"].forEach((function(e){t.el.removeEventListener(e,t.onPointerEvent,{capture:!0,passive:!0})})),this.el.removeEventListener("mousemove",this.onMouseMove),this.el.removeEventListener("mouseleave",this.onMouseLeave),this.contentWrapperEl.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onWindowResize),this.mutationObserver.disconnect(),this.resizeObserver.disconnect(),this.recalculate.cancel(),this.onMouseMove.cancel(),this.hideScrollbars.cancel(),this.onWindowResize.cancel()},e.unMount=function(){this.removeListeners(),t.instances.delete(this.el)},e.isWithinBounds=function(t){return this.mouseX>=t.left&&this.mouseX<=t.left+t.width&&this.mouseY>=t.top&&this.mouseY<=t.top+t.height},e.findChild=function(t,e){var n=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.msMatchesSelector;return Array.prototype.filter.call(t.children,(function(t){return n.call(t,e)}))[0]},t}();M.defaultOptions={autoHide:!0,forceVisible:!1,clickOnTrack:!0,classNames:{contentEl:"simplebar-content",contentWrapper:"simplebar-content-wrapper",offset:"simplebar-offset",mask:"simplebar-mask",wrapper:"simplebar-wrapper",placeholder:"simplebar-placeholder",scrollbar:"simplebar-scrollbar",track:"simplebar-track",heightAutoObserverWrapperEl:"simplebar-height-auto-observer-wrapper",heightAutoObserverEl:"simplebar-height-auto-observer",visible:"simplebar-visible",horizontal:"simplebar-horizontal",vertical:"simplebar-vertical",hover:"simplebar-hover",dragging:"simplebar-dragging"},scrollbarMinSize:25,scrollbarMaxSize:0,timeout:1e3},M.instances=new WeakMap;var q=M,j=(n("FZtP"),null),F=null;function V(){if(null===j){if("undefined"==typeof document)return j=0;var t=document.body,e=document.createElement("div");e.classList.add("simplebar-hide-scrollbar"),t.appendChild(e);var n=e.getBoundingClientRect().right;t.removeChild(e),j=n}return j}A.a&&window.addEventListener("resize",(function(){F!==window.devicePixelRatio&&(F=window.devicePixelRatio,j=null)}));var G=function(t){return Array.prototype.reduce.call(t,(function(t,e){var n=e.name.match(/data-simplebar-(.+)/);if(n){var a=n[1].replace(/\W+(.)/g,(function(t,e){return e.toUpperCase()}));switch(e.value){case"true":t[a]=!0;break;case"false":t[a]=!1;break;case void 0:t[a]=!0;break;default:t[a]=e.value}}return t}),{})};function B(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView?t.ownerDocument.defaultView:window}function z(t){return t&&t.ownerDocument?t.ownerDocument:document}var Y=function(){function t(e,n){var a=this;this.onScroll=function(){var t=B(a.el);a.scrollXTicking||(t.requestAnimationFrame(a.scrollX),a.scrollXTicking=!0),a.scrollYTicking||(t.requestAnimationFrame(a.scrollY),a.scrollYTicking=!0)},this.scrollX=function(){a.axis.x.isOverflowing&&(a.showScrollbar("x"),a.positionScrollbar("x")),a.scrollXTicking=!1},this.scrollY=function(){a.axis.y.isOverflowing&&(a.showScrollbar("y"),a.positionScrollbar("y")),a.scrollYTicking=!1},this.onMouseEnter=function(){a.showScrollbar("x"),a.showScrollbar("y")},this.onMouseMove=function(t){a.mouseX=t.clientX,a.mouseY=t.clientY,(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&a.onMouseMoveForAxis("x"),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&a.onMouseMoveForAxis("y")},this.onMouseLeave=function(){a.onMouseMove.cancel(),(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&a.onMouseLeaveForAxis("x"),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&a.onMouseLeaveForAxis("y"),a.mouseX=-1,a.mouseY=-1},this.onWindowResize=function(){a.scrollbarWidth=a.getScrollbarWidth(),a.hideNativeScrollbar()},this.hideScrollbars=function(){a.axis.x.track.rect=a.axis.x.track.el.getBoundingClientRect(),a.axis.y.track.rect=a.axis.y.track.el.getBoundingClientRect(),a.isWithinBounds(a.axis.y.track.rect)||(a.axis.y.scrollbar.el.classList.remove(a.classNames.visible),a.axis.y.isVisible=!1),a.isWithinBounds(a.axis.x.track.rect)||(a.axis.x.scrollbar.el.classList.remove(a.classNames.visible),a.axis.x.isVisible=!1)},this.onPointerEvent=function(t){var e,n;a.axis.x.track.rect=a.axis.x.track.el.getBoundingClientRect(),a.axis.y.track.rect=a.axis.y.track.el.getBoundingClientRect(),(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&(e=a.isWithinBounds(a.axis.x.track.rect)),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&(n=a.isWithinBounds(a.axis.y.track.rect)),(e||n)&&(t.preventDefault(),t.stopPropagation(),"mousedown"===t.type&&(e&&(a.axis.x.scrollbar.rect=a.axis.x.scrollbar.el.getBoundingClientRect(),a.isWithinBounds(a.axis.x.scrollbar.rect)?a.onDragStart(t,"x"):a.onTrackClick(t,"x")),n&&(a.axis.y.scrollbar.rect=a.axis.y.scrollbar.el.getBoundingClientRect(),a.isWithinBounds(a.axis.y.scrollbar.rect)?a.onDragStart(t,"y"):a.onTrackClick(t,"y"))))},this.drag=function(e){var n=a.axis[a.draggedAxis].track,r=n.rect[a.axis[a.draggedAxis].sizeAttr],i=a.axis[a.draggedAxis].scrollbar,s=a.contentWrapperEl[a.axis[a.draggedAxis].scrollSizeAttr],u=parseInt(a.elStyles[a.axis[a.draggedAxis].sizeAttr],10);e.preventDefault(),e.stopPropagation();var o=(("y"===a.draggedAxis?e.pageY:e.pageX)-n.rect[a.axis[a.draggedAxis].offsetAttr]-a.axis[a.draggedAxis].dragOffset)/(r-i.size)*(s-u);"x"===a.draggedAxis&&(o=a.isRtl&&t.getRtlHelpers().isRtlScrollbarInverted?o-(r+i.size):o,o=a.isRtl&&t.getRtlHelpers().isRtlScrollingInverted?-o:o),a.contentWrapperEl[a.axis[a.draggedAxis].scrollOffsetAttr]=o},this.onEndDrag=function(t){var e=z(a.el),n=B(a.el);t.preventDefault(),t.stopPropagation(),a.el.classList.remove(a.classNames.dragging),e.removeEventListener("mousemove",a.drag,!0),e.removeEventListener("mouseup",a.onEndDrag,!0),a.removePreventClickId=n.setTimeout((function(){e.removeEventListener("click",a.preventClick,!0),e.removeEventListener("dblclick",a.preventClick,!0),a.removePreventClickId=null}))},this.preventClick=function(t){t.preventDefault(),t.stopPropagation()},this.el=e,this.minScrollbarWidth=20,this.options=Object.assign({},t.defaultOptions,{},n),this.classNames=Object.assign({},t.defaultOptions.classNames,{},this.options.classNames),this.axis={x:{scrollOffsetAttr:"scrollLeft",sizeAttr:"width",scrollSizeAttr:"scrollWidth",offsetSizeAttr:"offsetWidth",offsetAttr:"left",overflowAttr:"overflowX",dragOffset:0,isOverflowing:!0,isVisible:!1,forceVisible:!1,track:{},scrollbar:{}},y:{scrollOffsetAttr:"scrollTop",sizeAttr:"height",scrollSizeAttr:"scrollHeight",offsetSizeAttr:"offsetHeight",offsetAttr:"top",overflowAttr:"overflowY",dragOffset:0,isOverflowing:!0,isVisible:!1,forceVisible:!1,track:{},scrollbar:{}}},this.removePreventClickId=null,t.instances.has(this.el)||(this.recalculate=r()(this.recalculate.bind(this),64),this.onMouseMove=r()(this.onMouseMove.bind(this),64),this.hideScrollbars=s()(this.hideScrollbars.bind(this),this.options.timeout),this.onWindowResize=s()(this.onWindowResize.bind(this),64,{leading:!0}),t.getRtlHelpers=o()(t.getRtlHelpers),this.init())}t.getRtlHelpers=function(){var e=document.createElement("div");e.innerHTML='<div class="hs-dummy-scrollbar-size"><div style="height: 200%; width: 200%; margin: 10px 0;"></div></div>';var n=e.firstElementChild;document.body.appendChild(n);var a=n.firstElementChild;n.scrollLeft=0;var r=t.getOffset(n),i=t.getOffset(a);n.scrollLeft=999;var s=t.getOffset(a);return{isRtlScrollingInverted:r.left!==i.left&&i.left-s.left!=0,isRtlScrollbarInverted:r.left!==i.left}},t.getOffset=function(t){var e=t.getBoundingClientRect(),n=z(t),a=B(t);return{top:e.top+(a.pageYOffset||n.documentElement.scrollTop),left:e.left+(a.pageXOffset||n.documentElement.scrollLeft)}};var e=t.prototype;return e.init=function(){t.instances.set(this.el,this),A.a&&(this.initDOM(),this.scrollbarWidth=this.getScrollbarWidth(),this.recalculate(),this.initListeners())},e.initDOM=function(){var t=this;if(Array.prototype.filter.call(this.el.children,(function(e){return e.classList.contains(t.classNames.wrapper)})).length)this.wrapperEl=this.el.querySelector("."+this.classNames.wrapper),this.contentWrapperEl=this.options.scrollableNode||this.el.querySelector("."+this.classNames.contentWrapper),this.contentEl=this.options.contentNode||this.el.querySelector("."+this.classNames.contentEl),this.offsetEl=this.el.querySelector("."+this.classNames.offset),this.maskEl=this.el.querySelector("."+this.classNames.mask),this.placeholderEl=this.findChild(this.wrapperEl,"."+this.classNames.placeholder),this.heightAutoObserverWrapperEl=this.el.querySelector("."+this.classNames.heightAutoObserverWrapperEl),this.heightAutoObserverEl=this.el.querySelector("."+this.classNames.heightAutoObserverEl),this.axis.x.track.el=this.findChild(this.el,"."+this.classNames.track+"."+this.classNames.horizontal),this.axis.y.track.el=this.findChild(this.el,"."+this.classNames.track+"."+this.classNames.vertical);else{for(this.wrapperEl=document.createElement("div"),this.contentWrapperEl=document.createElement("div"),this.offsetEl=document.createElement("div"),this.maskEl=document.createElement("div"),this.contentEl=document.createElement("div"),this.placeholderEl=document.createElement("div"),this.heightAutoObserverWrapperEl=document.createElement("div"),this.heightAutoObserverEl=document.createElement("div"),this.wrapperEl.classList.add(this.classNames.wrapper),this.contentWrapperEl.classList.add(this.classNames.contentWrapper),this.offsetEl.classList.add(this.classNames.offset),this.maskEl.classList.add(this.classNames.mask),this.contentEl.classList.add(this.classNames.contentEl),this.placeholderEl.classList.add(this.classNames.placeholder),this.heightAutoObserverWrapperEl.classList.add(this.classNames.heightAutoObserverWrapperEl),this.heightAutoObserverEl.classList.add(this.classNames.heightAutoObserverEl);this.el.firstChild;)this.contentEl.appendChild(this.el.firstChild);this.contentWrapperEl.appendChild(this.contentEl),this.offsetEl.appendChild(this.contentWrapperEl),this.maskEl.appendChild(this.offsetEl),this.heightAutoObserverWrapperEl.appendChild(this.heightAutoObserverEl),this.wrapperEl.appendChild(this.heightAutoObserverWrapperEl),this.wrapperEl.appendChild(this.maskEl),this.wrapperEl.appendChild(this.placeholderEl),this.el.appendChild(this.wrapperEl)}if(!this.axis.x.track.el||!this.axis.y.track.el){var e=document.createElement("div"),n=document.createElement("div");e.classList.add(this.classNames.track),n.classList.add(this.classNames.scrollbar),e.appendChild(n),this.axis.x.track.el=e.cloneNode(!0),this.axis.x.track.el.classList.add(this.classNames.horizontal),this.axis.y.track.el=e.cloneNode(!0),this.axis.y.track.el.classList.add(this.classNames.vertical),this.el.appendChild(this.axis.x.track.el),this.el.appendChild(this.axis.y.track.el)}this.axis.x.scrollbar.el=this.axis.x.track.el.querySelector("."+this.classNames.scrollbar),this.axis.y.scrollbar.el=this.axis.y.track.el.querySelector("."+this.classNames.scrollbar),this.options.autoHide||(this.axis.x.scrollbar.el.classList.add(this.classNames.visible),this.axis.y.scrollbar.el.classList.add(this.classNames.visible)),this.el.setAttribute("data-simplebar","init")},e.initListeners=function(){var t=this,e=B(this.el);this.options.autoHide&&this.el.addEventListener("mouseenter",this.onMouseEnter),["mousedown","click","dblclick"].forEach((function(e){t.el.addEventListener(e,t.onPointerEvent,!0)})),["touchstart","touchend","touchmove"].forEach((function(e){t.el.addEventListener(e,t.onPointerEvent,{capture:!0,passive:!0})})),this.el.addEventListener("mousemove",this.onMouseMove),this.el.addEventListener("mouseleave",this.onMouseLeave),this.contentWrapperEl.addEventListener("scroll",this.onScroll),e.addEventListener("resize",this.onWindowResize);var n=!1;this.resizeObserver=new(e.ResizeObserver||C)((function(){n&&t.recalculate()})),this.resizeObserver.observe(this.el),this.resizeObserver.observe(this.contentEl),e.requestAnimationFrame((function(){n=!0})),this.mutationObserver=new e.MutationObserver(this.recalculate),this.mutationObserver.observe(this.contentEl,{childList:!0,subtree:!0,characterData:!0})},e.recalculate=function(){var t=B(this.el);this.elStyles=t.getComputedStyle(this.el),this.isRtl="rtl"===this.elStyles.direction;var e=this.contentEl.offsetWidth,n=this.heightAutoObserverEl.offsetHeight<=1,a=this.heightAutoObserverEl.offsetWidth<=1||e>0,r=this.contentWrapperEl.offsetWidth,i=this.elStyles.overflowX,s=this.elStyles.overflowY;this.contentEl.style.padding=this.elStyles.paddingTop+" "+this.elStyles.paddingRight+" "+this.elStyles.paddingBottom+" "+this.elStyles.paddingLeft,this.wrapperEl.style.margin="-"+this.elStyles.paddingTop+" -"+this.elStyles.paddingRight+" -"+this.elStyles.paddingBottom+" -"+this.elStyles.paddingLeft;var u=this.contentEl.scrollHeight,o=this.contentEl.scrollWidth;this.contentWrapperEl.style.height=n?"auto":"100%",this.placeholderEl.style.width=a?(e||o)+"px":"auto",this.placeholderEl.style.height=u+"px";var l=this.contentWrapperEl.offsetHeight;this.axis.x.isOverflowing=0!==e&&o>e,this.axis.y.isOverflowing=u>l,this.axis.x.isOverflowing="hidden"!==i&&this.axis.x.isOverflowing,this.axis.y.isOverflowing="hidden"!==s&&this.axis.y.isOverflowing,this.axis.x.forceVisible="x"===this.options.forceVisible||!0===this.options.forceVisible,this.axis.y.forceVisible="y"===this.options.forceVisible||!0===this.options.forceVisible,this.hideNativeScrollbar();var d=this.axis.x.isOverflowing?this.scrollbarWidth:0;this.axis.x.isOverflowing=this.axis.x.isOverflowing&&o>r-(this.axis.y.isOverflowing?this.scrollbarWidth:0),this.axis.y.isOverflowing=this.axis.y.isOverflowing&&u>l-d,this.axis.x.scrollbar.size=this.getScrollbarSize("x"),this.axis.y.scrollbar.size=this.getScrollbarSize("y"),this.axis.x.scrollbar.el.style.width=this.axis.x.scrollbar.size+"px",this.axis.y.scrollbar.el.style.height=this.axis.y.scrollbar.size+"px",this.positionScrollbar("x"),this.positionScrollbar("y"),this.toggleTrackVisibility("x"),this.toggleTrackVisibility("y")},e.getScrollbarSize=function(t){if(void 0===t&&(t="y"),!this.axis[t].isOverflowing)return 0;var e,n=this.axis[t].track.el[this.axis[t].offsetSizeAttr];return e=Math.max(~~(n/this.contentEl[this.axis[t].scrollSizeAttr]*n),this.options.scrollbarMinSize),this.options.scrollbarMaxSize&&(e=Math.min(e,this.options.scrollbarMaxSize)),e},e.positionScrollbar=function(e){if(void 0===e&&(e="y"),this.axis[e].isOverflowing){var n=this.contentWrapperEl[this.axis[e].scrollSizeAttr],a=this.axis[e].track.el[this.axis[e].offsetSizeAttr],r=parseInt(this.elStyles[this.axis[e].sizeAttr],10),i=this.axis[e].scrollbar,s=this.contentWrapperEl[this.axis[e].scrollOffsetAttr],u=~~((s="x"===e&&this.isRtl&&t.getRtlHelpers().isRtlScrollingInverted?-s:s)/(n-r)*(a-i.size));u="x"===e&&this.isRtl&&t.getRtlHelpers().isRtlScrollbarInverted?u+(a-i.size):u,i.el.style.transform="x"===e?"translate3d("+u+"px, 0, 0)":"translate3d(0, "+u+"px, 0)"}},e.toggleTrackVisibility=function(t){void 0===t&&(t="y");var e=this.axis[t].track.el,n=this.axis[t].scrollbar.el;this.axis[t].isOverflowing||this.axis[t].forceVisible?(e.style.visibility="visible",this.contentWrapperEl.style[this.axis[t].overflowAttr]="scroll"):(e.style.visibility="hidden",this.contentWrapperEl.style[this.axis[t].overflowAttr]="hidden"),n.style.display=this.axis[t].isOverflowing?"block":"none"},e.hideNativeScrollbar=function(){this.offsetEl.style[this.isRtl?"left":"right"]=this.axis.y.isOverflowing||this.axis.y.forceVisible?"-"+this.scrollbarWidth+"px":0,this.offsetEl.style.bottom=this.axis.x.isOverflowing||this.axis.x.forceVisible?"-"+this.scrollbarWidth+"px":0},e.onMouseMoveForAxis=function(t){void 0===t&&(t="y"),this.axis[t].track.rect=this.axis[t].track.el.getBoundingClientRect(),this.axis[t].scrollbar.rect=this.axis[t].scrollbar.el.getBoundingClientRect(),this.isWithinBounds(this.axis[t].scrollbar.rect)?this.axis[t].scrollbar.el.classList.add(this.classNames.hover):this.axis[t].scrollbar.el.classList.remove(this.classNames.hover),this.isWithinBounds(this.axis[t].track.rect)?(this.showScrollbar(t),this.axis[t].track.el.classList.add(this.classNames.hover)):this.axis[t].track.el.classList.remove(this.classNames.hover)},e.onMouseLeaveForAxis=function(t){void 0===t&&(t="y"),this.axis[t].track.el.classList.remove(this.classNames.hover),this.axis[t].scrollbar.el.classList.remove(this.classNames.hover)},e.showScrollbar=function(t){void 0===t&&(t="y"),this.axis[t].isVisible||(this.axis[t].scrollbar.el.classList.add(this.classNames.visible),this.axis[t].isVisible=!0),this.options.autoHide&&this.hideScrollbars()},e.onDragStart=function(t,e){void 0===e&&(e="y");var n=z(this.el),a=B(this.el);this.axis[e].dragOffset=("y"===e?t.pageY:t.pageX)-this.axis[e].scrollbar.rect[this.axis[e].offsetAttr],this.draggedAxis=e,this.el.classList.add(this.classNames.dragging),n.addEventListener("mousemove",this.drag,!0),n.addEventListener("mouseup",this.onEndDrag,!0),null===this.removePreventClickId?(n.addEventListener("click",this.preventClick,!0),n.addEventListener("dblclick",this.preventClick,!0)):(a.clearTimeout(this.removePreventClickId),this.removePreventClickId=null)},e.onTrackClick=function(t,e){var n=this;if(void 0===e&&(e="y"),this.options.clickOnTrack){var a=B(this.el);this.axis[e].scrollbar.rect=this.axis[e].scrollbar.el.getBoundingClientRect();var r=this.axis[e].scrollbar.rect[this.axis[e].offsetAttr],i=parseInt(this.elStyles[this.axis[e].sizeAttr],10),s=this.contentWrapperEl[this.axis[e].scrollOffsetAttr],u=("y"===e?this.mouseY-r:this.mouseX-r)<0?-1:1,o=-1===u?s-i:s+i;!function t(){var r,i;-1===u?s>o&&(n.contentWrapperEl.scrollTo(((r={})[n.axis[e].offsetAttr]=s-=40,r)),a.requestAnimationFrame(t)):s<o&&(n.contentWrapperEl.scrollTo(((i={})[n.axis[e].offsetAttr]=s+=40,i)),a.requestAnimationFrame(t))}()}},e.getContentElement=function(){return this.contentEl},e.getScrollElement=function(){return this.contentWrapperEl},e.getScrollbarWidth=function(){try{return"none"===getComputedStyle(this.contentWrapperEl,"::-webkit-scrollbar").display||"scrollbarWidth"in document.documentElement.style||"-ms-overflow-style"in document.documentElement.style?0:V()}catch(t){return V()}},e.removeListeners=function(){var t=this,e=B(this.el);this.options.autoHide&&this.el.removeEventListener("mouseenter",this.onMouseEnter),["mousedown","click","dblclick"].forEach((function(e){t.el.removeEventListener(e,t.onPointerEvent,!0)})),["touchstart","touchend","touchmove"].forEach((function(e){t.el.removeEventListener(e,t.onPointerEvent,{capture:!0,passive:!0})})),this.el.removeEventListener("mousemove",this.onMouseMove),this.el.removeEventListener("mouseleave",this.onMouseLeave),this.contentWrapperEl.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onWindowResize),this.mutationObserver.disconnect(),this.resizeObserver.disconnect(),this.recalculate.cancel(),this.onMouseMove.cancel(),this.hideScrollbars.cancel(),this.onWindowResize.cancel()},e.unMount=function(){this.removeListeners(),t.instances.delete(this.el)},e.isWithinBounds=function(t){return this.mouseX>=t.left&&this.mouseX<=t.left+t.width&&this.mouseY>=t.top&&this.mouseY<=t.top+t.height},e.findChild=function(t,e){var n=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.msMatchesSelector;return Array.prototype.filter.call(t.children,(function(t){return n.call(t,e)}))[0]},t}();Y.defaultOptions={autoHide:!0,forceVisible:!1,clickOnTrack:!0,classNames:{contentEl:"simplebar-content",contentWrapper:"simplebar-content-wrapper",offset:"simplebar-offset",mask:"simplebar-mask",wrapper:"simplebar-wrapper",placeholder:"simplebar-placeholder",scrollbar:"simplebar-scrollbar",track:"simplebar-track",heightAutoObserverWrapperEl:"simplebar-height-auto-observer-wrapper",heightAutoObserverEl:"simplebar-height-auto-observer",visible:"simplebar-visible",horizontal:"simplebar-horizontal",vertical:"simplebar-vertical",hover:"simplebar-hover",dragging:"simplebar-dragging"},scrollbarMinSize:25,scrollbarMaxSize:0,timeout:1e3},Y.instances=new WeakMap,Y.initDOMLoadedElements=function(){document.removeEventListener("DOMContentLoaded",this.initDOMLoadedElements),window.removeEventListener("load",this.initDOMLoadedElements),Array.prototype.forEach.call(document.querySelectorAll("[data-simplebar]"),(function(t){"init"===t.getAttribute("data-simplebar")||Y.instances.has(t)||new Y(t,G(t.attributes))}))},Y.removeObserver=function(){this.globalObserver.disconnect()},Y.initHtmlApi=function(){this.initDOMLoadedElements=this.initDOMLoadedElements.bind(this),"undefined"!=typeof MutationObserver&&(this.globalObserver=new MutationObserver(Y.handleMutations),this.globalObserver.observe(document,{childList:!0,subtree:!0})),"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?window.setTimeout(this.initDOMLoadedElements):(document.addEventListener("DOMContentLoaded",this.initDOMLoadedElements),window.addEventListener("load",this.initDOMLoadedElements))},Y.handleMutations=function(t){t.forEach((function(t){Array.prototype.forEach.call(t.addedNodes,(function(t){1===t.nodeType&&(t.hasAttribute("data-simplebar")?!Y.instances.has(t)&&new Y(t,G(t.attributes)):Array.prototype.forEach.call(t.querySelectorAll("[data-simplebar]"),(function(t){"init"===t.getAttribute("data-simplebar")||Y.instances.has(t)||new Y(t,G(t.attributes))})))})),Array.prototype.forEach.call(t.removedNodes,(function(t){1===t.nodeType&&(t.hasAttribute('[data-simplebar="init"]')?Y.instances.has(t)&&Y.instances.get(t).unMount():Array.prototype.forEach.call(t.querySelectorAll('[data-simplebar="init"]'),(function(t){Y.instances.has(t)&&Y.instances.get(t).unMount()})))}))}))},Y.getOptions=G,A.a&&Y.initHtmlApi(),n.d(e,"a",(function(){return H})),n.d(e,"b",(function(){return U}));class H{constructor(t){this.elRef=t}ngOnInit(){}ngAfterViewInit(){this.SimpleBar=new q(this.elRef.nativeElement,this.options||{})}ngOnDestroy(){this.SimpleBar.unMount(),this.SimpleBar=null}}class U{}},WJkJ:function(t,e){t.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},WKiH:function(t,e,n){var a=n("HYAF"),r="["+n("WJkJ")+"]",i=RegExp("^"+r+r+"*"),s=RegExp(r+r+"*$"),u=function(t){return function(e){var n=String(a(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(s,"")),n}};t.exports={start:u(1),end:u(2),trim:u(3)}},WMd4:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("EY2u"),r=n("LRne"),i=n("z6cu");let s=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}}do(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Object(r.a)(this.value);case"E":return Object(i.a)(this.error);case"C":return Object(a.b)()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})()},WYrj:function(t,e,n){!function(t){"use strict";var e=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],n=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"];t.defineLocale("dv",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/މކ|މފ/,isPM:function(t){return"މފ"===t},meridiem:function(t,e,n){return t<12?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",ss:"d% ސިކުންތު",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:7,doy:12}})}(n("wd/R"))},Wa4q:function(t,e,n){var a=n("qzZ1"),r="object"==typeof self&&self&&self.Object===Object&&self,i=a||r||Function("return this")();t.exports=i},WaXT:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("2vnA"),i=Object.assign((function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return r.a.apply(void 0,t)}),r.a),s=Object.assign((function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return r.c.apply(void 0,t)}),r.c),u=Object.assign((function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return r.d.apply(void 0,t)}),r.d),o=n("MP8s");n.d(e,"a",(function(){return c}));var l=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},d=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},c=function(){function t(){this._dispose=[]}return Object.defineProperty(t.prototype,"nodes",{get:function(){return this._nodes},set:function(t){this.setNodes(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"marginTop",{get:function(){var t=this.viewportNodes&&this.viewportNodes.length&&this.viewportNodes[0];return(t&&t.parent?t.position-t.parent.position-t.parent.getSelfHeight():0)+"px"},enumerable:!0,configurable:!0}),t.prototype.setNodes=function(t){this._nodes=t},t.prototype.ngOnInit=function(){var t=this;this.virtualScroll=this.treeModel.virtualScroll,this._dispose=[Object(r.e)((function(){return t.virtualScroll.getViewportNodes(t.nodes).map((function(t){return t.index}))}),(function(e){t.viewportNodes=e.map((function(e){return t.nodes[e]}))}),{compareStructural:!0,fireImmediately:!0}),Object(r.e)((function(){return t.nodes}),(function(e){t.viewportNodes=t.virtualScroll.getViewportNodes(e)}))]},t.prototype.ngOnDestroy=function(){this._dispose.forEach((function(t){return t()}))},t.prototype.trackNode=function(t,e){return e.id},l([Object(a.Input)(),d("design:type",Object),d("design:paramtypes",[Object])],t.prototype,"nodes",null),l([Object(a.Input)(),d("design:type",o.a)],t.prototype,"treeModel",void 0),l([u,d("design:type",Object)],t.prototype,"_nodes",void 0),l([Object(a.Input)(),d("design:type",Object)],t.prototype,"templates",void 0),l([u,d("design:type",Array)],t.prototype,"viewportNodes",void 0),l([s,d("design:type",String),d("design:paramtypes",[])],t.prototype,"marginTop",null),l([i,d("design:type",Function),d("design:paramtypes",[Object]),d("design:returntype",void 0)],t.prototype,"setNodes",null),l([Object(a.Component)({selector:"tree-node-collection",encapsulation:a.ViewEncapsulation.None,template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <div [style.margin-top]="marginTop">\n        <tree-node\n          *ngFor="let node of viewportNodes; let i = index; trackBy: trackNode"\n          [node]="node"\n          [index]="i"\n          [templates]="templates"\n        >\n        </tree-node>\n      </div>\n    </ng-container>\n  '})],t)}()},WiuZ:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("978R"),s=n("z/SZ"),u=n("2uy1"),o=n("s7LF"),l=n("+gVj"),d=n("ANnk"),c=n("f/UV"),f=n("aexS"),h=n("KOzp");n("wnGv"),n("GiVz"),n.d(e,"a",(function(){return g})),n.d(e,"b",(function(){return N}));var g=a["ɵcrt"]({encapsulation:0,styles:[[".select-menu-item[_ngcontent-%COMP%]{display:block;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.09);font-size:12px}.select-menu-item[_ngcontent-%COMP%]:hover{background-color:#f5f5f5}.select-menu-item-icon[_ngcontent-%COMP%]{float:left;padding:.5em;width:3em}.select-menu-item-content[_ngcontent-%COMP%]{padding:.5em}"]],data:{}});function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback text-center"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.messages.customValidations[e.parent.context.$implicit])}))}function b(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.form.showError("filter",a["ɵnov"](e.parent,2))&&n.filter.hasError(e.context.$implicit))}),null)}function m(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,1)],(function(t,e){var n=t(e,3,0,e.component.icons.check);t(e,2,0,n)}),null)}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),a["ɵted"](3,null,[" ","  "]))],null,(function(t,e){t(e,3,0,e.parent.context.$implicit.description)}))}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,11,"div",[["class","select-menu-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.triggerSelection(t.context.$implicit)&&a),a}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](3,{"help-block disabled":0}),(t()(),a["ɵeld"](4,0,null,null,3,"div",[["class","select-menu-item-icon"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,m)),a["ɵdid"](6,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,["   "])),(t()(),a["ɵeld"](8,0,null,null,3,"div",[["class","select-menu-item-content"]],null,null,null,null,null)),(t()(),a["ɵted"](9,null,[" "," "])),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](11,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component,a=t(e,3,0,!(n.data.length!==n.selectionLimit&&e.context.$implicit.enabled||e.context.$implicit.selected));t(e,2,0,"select-menu-item",a),t(e,6,0,e.context.$implicit.selected),t(e,11,0,e.context.$implicit.description)}),(function(t,e){t(e,9,0,e.context.$implicit.name)}))}function x(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"div",[["class","select-menu-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.addCustomOption()&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,5,"div",[["class","select-menu-item-icon"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](4,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](5,1),(t()(),a["ɵted"](-1,null,["   "])),(t()(),a["ɵeld"](7,0,null,null,1,"div",[["class","select-menu-item-content"]],null,null,null,null,null)),(t()(),a["ɵted"](8,null,[" "," '","' "]))],(function(t,e){var n=t(e,5,0,e.component.icons.tag);t(e,4,0,n)}),(function(t,e){var n=e.component;t(e,8,0,n.messages.add,n.filter.value)}))}function _(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,16777216,null,null,2,"span",[["class","form-text text-muted text-center text-warning"]],null,null,null,null,null)),a["ɵdid"](1,212992,null,0,i.c,[a.ViewContainerRef,s.a,i.a,a.ElementRef,a.Renderer2,u.a],{tooltip:[0,"tooltip"]},null),(t()(),a["ɵted"](2,null,[" "," "])),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component.messages.selectionLimit.tooltip)}),(function(t,e){t(e,2,0,e.component.messages.selectionLimit.text)}))}function T(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","is-invalid"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,_)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.data.length===n.selectionLimit)}),null)}function w(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"form",[["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var r=!0;return"submit"===e&&(r=!1!==a["ɵnov"](t,2).onSubmit(n)&&r),"reset"===e&&(r=!1!==a["ɵnov"](t,2).onReset()&&r),"submit"===e&&(r=!1!==a["ɵnov"](t,5).onSubmit()&&r),r}),null,null)),a["ɵdid"](1,16384,null,0,o.G,[],null,null),a["ɵdid"](2,540672,[["formDir",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),a["ɵprd"](2048,null,o.d,null,[o.l]),a["ɵdid"](4,16384,null,0,o.s,[[4,o.d]],null,null),a["ɵdid"](5,16384,null,0,l.d,[],{formGroup:[0,"formGroup"]},null),(t()(),a["ɵeld"](6,0,null,null,10,"div",[],null,null,null,null,null)),(t()(),a["ɵeld"](7,0,null,null,7,"input",[["class","form-control text-center"],["formControlName","filter"],["type","text"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"keyup"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var r=!0,i=t.component;return"input"===e&&(r=!1!==a["ɵnov"](t,8)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,8).onTouched()&&r),"compositionstart"===e&&(r=!1!==a["ɵnov"](t,8)._compositionStart()&&r),"compositionend"===e&&(r=!1!==a["ɵnov"](t,8)._compositionEnd(n.target.value)&&r),"keyup"===e&&(r=!1!==(13==n.keyCode?i.selectOption():i.updateFilter())&&r),r}),null,null)),a["ɵdid"](8,16384,null,0,o.e,[a.Renderer2,a.ElementRef,[2,o.b]],null,null),a["ɵprd"](1024,null,o.p,(function(t){return[t]}),[o.e]),a["ɵdid"](10,671744,null,0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,o.q,null,[o.j]),a["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),a["ɵdid"](13,4210688,null,0,d.a,[[2,c.a],f.a,a.ElementRef],null,null),a["ɵdid"](14,16384,null,0,l.h,[[3,o.d],l.a],{formControlName:[0,"formControlName"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,b)),a["ɵdid"](16,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,v)),a["ɵdid"](18,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,x)),a["ɵdid"](20,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](22,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.form),t(e,5,0,n.form),t(e,10,0,"filter"),t(e,14,0,"filter"),t(e,16,0,n.Object.keys(n.messages.customValidations)),t(e,18,0,n.filteredOptions),t(e,20,0,n.isCreatable()),t(e,22,0,n.data.length===n.selectionLimit)}),(function(t,e){var n=e.component;t(e,0,0,a["ɵnov"](e,4).ngClassUntouched,a["ɵnov"](e,4).ngClassTouched,a["ɵnov"](e,4).ngClassPristine,a["ɵnov"](e,4).ngClassDirty,a["ɵnov"](e,4).ngClassValid,a["ɵnov"](e,4).ngClassInvalid,a["ɵnov"](e,4).ngClassPending),t(e,7,0,n.messages.filter,a["ɵnov"](e,12).ngClassUntouched,a["ɵnov"](e,12).ngClassTouched,a["ɵnov"](e,12).ngClassPristine,a["ɵnov"](e,12).ngClassDirty,a["ɵnov"](e,12).ngClassValid,a["ɵnov"](e,12).ngClassInvalid,a["ɵnov"](e,12).ngClassPending,a["ɵnov"](e,14).validClass,a["ɵnov"](e,14).invalidClass)}))}function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,16777216,null,null,4,"a",[["class","select-menu-edit float-left"],["container","body"],["outsideClick","true"],["placement","bottom"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵdid"](3,212992,null,0,h.c,[h.a,a.ElementRef,a.Renderer2,a.ViewContainerRef,s.a,u.a],{popover:[0,"popover"],placement:[1,"placement"],outsideClick:[2,"outsideClick"],container:[3,"container"]},null),a["ɵncd"](null,0),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,2,0,"select-menu-edit float-left",e.component.elemClass),t(e,3,0,a["ɵnov"](e.parent,0),"bottom","true","body")}),null)}function S(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted float-left"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" ","\n"]))],null,(function(t,e){t(e,1,0,e.component.messages.empty)}))}function I(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted  float-left"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" ","\n"]))],null,(function(t,e){t(e,1,0,e.component.messages.noOptions)}))}function N(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,[["popTemplate",2]],null,0,null,w)),(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,S)),a["ɵdid"](4,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,I)),a["ɵdid"](6,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.customBadges||n.options.length>0),t(e,4,0,0===n.data.length&&!(!n.customBadges&&0===n.options.length)),t(e,6,0,!n.customBadges&&0===n.options.length)}),null)}},Wv1A:function(t,e,n){var a=n("QpVZ");t.exports=function(t){if("string"==typeof t||a(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}},WxRl:function(t,e,n){!function(t){"use strict";var e="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");function n(t,e,n,a){var r=t;switch(n){case"s":return a||e?"néhány másodperc":"néhány másodperce";case"ss":return r+(a||e)?" másodperc":" másodperce";case"m":return"egy"+(a||e?" perc":" perce");case"mm":return r+(a||e?" perc":" perce");case"h":return"egy"+(a||e?" óra":" órája");case"hh":return r+(a||e?" óra":" órája");case"d":return"egy"+(a||e?" nap":" napja");case"dd":return r+(a||e?" nap":" napja");case"M":return"egy"+(a||e?" hónap":" hónapja");case"MM":return r+(a||e?" hónap":" hónapja");case"y":return"egy"+(a||e?" év":" éve");case"yy":return r+(a||e?" év":" éve")}return""}function a(t){return(t?"":"[múlt] ")+"["+e[this.day()]+"] LT[-kor]"}t.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(t){return"u"===t.charAt(1).toLowerCase()},meridiem:function(t,e,n){return t<12?!0===n?"de":"DE":!0===n?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return a.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return a.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:n,ss:n,m:n,mm:n,h:n,hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},"X+05":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a={toggleExpanded:"toggleExpanded",activate:"activate",deactivate:"deactivate",nodeActivate:"nodeActivate",nodeDeactivate:"nodeDeactivate",select:"select",deselect:"deselect",focus:"focus",blur:"blur",initialized:"initialized",updateData:"updateData",moveNode:"moveNode",copyNode:"copyNode",event:"event",loadNodeChildren:"loadNodeChildren",changeFilter:"changeFilter",stateChange:"stateChange"}},X709:function(t,e,n){!function(t){"use strict";t.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"[På] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}(e|a)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"e":1===e||2===e?"a":"e")},week:{dow:1,doy:4}})}(n("wd/R"))},XDbj:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("sVev"),r=n("7o/Q");function i(t=o){return e=>e.lift(new s(t))}class s{constructor(t){this.errorFactory=t}call(t,e){return e.subscribe(new u(t,this.errorFactory))}}class u extends r.a{constructor(t,e){super(t),this.errorFactory=e,this.hasValue=!1}_next(t){this.hasValue=!0,this.destination.next(t)}_complete(){if(this.hasValue)return this.destination.complete();{let e;try{e=this.errorFactory()}catch(t){e=t}this.destination.error(e)}}}function o(){return new a.a}},XDpg:function(t,e,n){!function(t){"use strict";t.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"下午"===e||"晚上"===e?t+12:t>=11?t:t+12},meridiem:function(t,e,n){var a=100*t+e;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"周";default:return t}},relativeTime:{future:"%s内",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}})}(n("wd/R"))},XFPk:function(t,e,n){var a=n("qN6l"),r=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return a?void 0!==e[t]:r.call(e,t)}},XFyV:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("oxzT");class r{constructor(){this.icons=a.a}}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},XLvN:function(t,e,n){!function(t){"use strict";t.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),monthsParseExact:!0,weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",ss:"%d సెకన్లు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},dayOfMonthOrdinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(t,e){return 12===t&&(t=0),"రాత్రి"===e?t<4?t:t+12:"ఉదయం"===e?t:"మధ్యాహ్నం"===e?t>=10?t:t+12:"సాయంత్రం"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"రాత్రి":t<10?"ఉదయం":t<17?"మధ్యాహ్నం":t<20?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}})}(n("wd/R"))},XNiG:function(t,e,n){"use strict";n.d(e,"b",(function(){return l})),n.d(e,"a",(function(){return d}));var a=n("HDdC"),r=n("7o/Q"),i=n("quSY"),s=n("9ppp"),u=n("Ylt2"),o=n("2QA8");class l extends r.a{constructor(t){super(t),this.destination=t}}let d=(()=>{class t extends a.a{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[o.a](){return new l(this)}lift(t){const e=new c(this,this);return e.operator=t,e}next(t){if(this.closed)throw new s.a;if(!this.isStopped){const{observers:e}=this,n=e.length,a=e.slice();for(let r=0;r<n;r++)a[r].next(t)}}error(t){if(this.closed)throw new s.a;this.hasError=!0,this.thrownError=t,this.isStopped=!0;const{observers:e}=this,n=e.length,a=e.slice();for(let r=0;r<n;r++)a[r].error(t);this.observers.length=0}complete(){if(this.closed)throw new s.a;this.isStopped=!0;const{observers:t}=this,e=t.length,n=t.slice();for(let a=0;a<e;a++)n[a].complete();this.observers.length=0}unsubscribe(){this.isStopped=!0,this.closed=!0,this.observers=null}_trySubscribe(t){if(this.closed)throw new s.a;return super._trySubscribe(t)}_subscribe(t){if(this.closed)throw new s.a;return this.hasError?(t.error(this.thrownError),i.a.EMPTY):this.isStopped?(t.complete(),i.a.EMPTY):(this.observers.push(t),new u.a(this,t))}asObservable(){const t=new a.a;return t.source=this,t}}return t.create=(t,e)=>new c(t,e),t})();class c extends d{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):i.a.EMPTY}}},Xg1U:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("8Y7J"),r=n("978R"),i=(n("SVse"),a["ɵcrt"]({encapsulation:0,styles:[".tooltip[_nghost-%COMP%] {\n      display: block;\n      pointer-events: none;\n    }\n    .bs3.tooltip.top[_nghost-%COMP%] > .arrow[_ngcontent-%COMP%] {\n      margin-left: -2px;\n    }\n    .bs3.tooltip.bottom[_nghost-%COMP%] {\n      margin-top: 0px;\n    }\n    .bs3.bs-tooltip-left[_nghost-%COMP%], .bs3.bs-tooltip-right[_nghost-%COMP%]{\n      margin: 0px;\n    }\n    .bs3.bs-tooltip-right[_nghost-%COMP%]   .arrow[_ngcontent-%COMP%], .bs3.bs-tooltip-left[_nghost-%COMP%]   .arrow[_ngcontent-%COMP%] {\n      margin: .3rem 0;\n    }"],data:{}}));function s(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,0,"div",[["class","tooltip-arrow arrow"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","tooltip-inner"]],null,null,null,null,null)),a["ɵncd"](null,0)],null,null)}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-tooltip-container",[["role","tooltip"]],[[8,"className",0],[2,"show",null],[2,"bs3",null],[1,"id",0]],null,null,s,i)),a["ɵdid"](1,4243456,null,0,r.b,[r.a],null,null)],null,(function(t,e){t(e,0,0,"tooltip in tooltip-"+a["ɵnov"](e,1).placement+" bs-tooltip-"+a["ɵnov"](e,1).placement+" "+a["ɵnov"](e,1).placement+" "+a["ɵnov"](e,1).containerClass,!a["ɵnov"](e,1).isBs3,a["ɵnov"](e,1).isBs3,a["ɵnov"](e,1).id)}))}var o=a["ɵccf"]("bs-tooltip-container",r.b,u,{},{},["*"])},XhiP:function(t,e,n){var a=n("Wa4q");t.exports=a.Uint8Array},XoHu:function(t,e,n){"use strict";function a(t){return null!==t&&"object"==typeof t}n.d(e,"a",(function(){return a}))},Y3RO:function(t,e){t.exports=function(t,e){var n=-1,a=t.length;for(e||(e=Array(a));++n<a;)e[n]=t[n];return e}},Y7HM:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("DH7j");function r(t){return!Object(a.a)(t)&&t-parseFloat(t)+1>=0}},YCpU:function(t,e,n){var a=n("QuoE"),r=n("im1V"),i=n("372+"),s=n("H+zY"),u=n("yb/u"),o=Math.max;t.exports=function(t,e,n,l){t=r(t)?t:u(t),n=n&&!l?s(n):0;var d=t.length;return n<0&&(n=o(d+n,0)),i(t)?n<=d&&t.indexOf(e,n)>-1:!!d&&a(t,e,n)>-1}},YGUN:function(t,e){t.exports=function(t){return function(){return t}}},YLnZ:function(t,e){t.exports=function(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in Object(n))}}},YNrV:function(t,e,n){"use strict";var a=n("g6v/"),r=n("0Dky"),i=n("33Wh"),s=n("dBg+"),u=n("0eef"),o=n("ewvW"),l=n("RK3t"),d=Object.assign,c=Object.defineProperty;t.exports=!d||r((function(){if(a&&1!==d({b:1},d(c({},"a",{enumerable:!0,get:function(){c(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=d({},t)[n]||"abcdefghijklmnopqrst"!=i(d({},e)).join("")}))?function(t,e){for(var n=o(t),r=arguments.length,d=1,c=s.f,f=u.f;r>d;)for(var h,g=l(arguments[d++]),p=c?i(g).concat(c(g)):i(g),b=p.length,m=0;b>m;)h=p[m++],a&&!f.call(g,h)||(n[h]=g[h]);return n}:d},YRex:function(t,e,n){!function(t){"use strict";t.defineLocale("ug-cn",{months:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),monthsShort:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),weekdays:"يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە".split("_"),weekdaysShort:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),weekdaysMin:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-يىلىM-ئاينىڭD-كۈنى",LLL:"YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm",LLLL:"dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm"},meridiemParse:/يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,meridiemHour:function(t,e){return 12===t&&(t=0),"يېرىم كېچە"===e||"سەھەر"===e||"چۈشتىن بۇرۇن"===e?t:"چۈشتىن كېيىن"===e||"كەچ"===e?t+12:t>=11?t:t+12},meridiem:function(t,e,n){var a=100*t+e;return a<600?"يېرىم كېچە":a<900?"سەھەر":a<1130?"چۈشتىن بۇرۇن":a<1230?"چۈش":a<1800?"چۈشتىن كېيىن":"كەچ"},calendar:{sameDay:"[بۈگۈن سائەت] LT",nextDay:"[ئەتە سائەت] LT",nextWeek:"[كېلەركى] dddd [سائەت] LT",lastDay:"[تۆنۈگۈن] LT",lastWeek:"[ئالدىنقى] dddd [سائەت] LT",sameElse:"L"},relativeTime:{future:"%s كېيىن",past:"%s بۇرۇن",s:"نەچچە سېكونت",ss:"%d سېكونت",m:"بىر مىنۇت",mm:"%d مىنۇت",h:"بىر سائەت",hh:"%d سائەت",d:"بىر كۈن",dd:"%d كۈن",M:"بىر ئاي",MM:"%d ئاي",y:"بىر يىل",yy:"%d يىل"},dayOfMonthOrdinalParse:/\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"-كۈنى";case"w":case"W":return t+"-ھەپتە";default:return t}},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:7}})}(n("wd/R"))},"Yj/I":function(t,e,n){var a=n("l9nr"),r=n("im1V"),i=n("FGWQ");t.exports=function(t){return function(e,n,s){var u=Object(e);if(!r(e)){var o=a(n,3);e=i(e),n=function(t){return o(u[t],t,u)}}var l=t(e,n,s);return l>-1?u[o?e[l]:l]:void 0}}},Ylt2:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("quSY");class r extends a.a{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}},Ytn0:function(t,e,n){var a=n("sEik");t.exports=function(t,e){var n=t.__data__;return a(e)?n["string"==typeof e?"string":"hash"]:n.map}},YuTi:function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},YzqF:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(){this._queue=[],this._pending=!1}return t.prototype.isLocked=function(){return this._pending},t.prototype.acquire=function(){var t=this,e=new Promise((function(e){return t._queue.push(e)}));return this._pending||this._dispatchNext(),e},t.prototype.runExclusive=function(t){return this.acquire().then((function(e){var n;try{n=t()}catch(a){throw e(),a}return Promise.resolve(n).then((function(t){return e(),t}),(function(t){throw e(),t}))}))},t.prototype._dispatchNext=function(){this._queue.length>0?(this._pending=!0,this._queue.shift()(this._dispatchNext.bind(this))):this._pending=!1},t}();e.default=a},Z21x:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("sne2");class a{constructor(t,e){this.location=t,this.actionLabels=e,this.name=this.actionLabels.CANCEL,this.back=()=>this.location.back()}}},Z2DA:function(t,e,n){var a=n("vJUC"),r=n("+FhV"),i=n("1Yk6"),s=n("kA6G");t.exports=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)a(e,i(t)),t=r(t);return e}:s},Z4QM:function(t,e,n){!function(t){"use strict";var e=["جنوري","فيبروري","مارچ","اپريل","مئي","جون","جولاءِ","آگسٽ","سيپٽمبر","آڪٽوبر","نومبر","ڊسمبر"],n=["آچر","سومر","اڱارو","اربع","خميس","جمع","ڇنڇر"];t.defineLocale("sd",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(t){return"شام"===t},meridiem:function(t,e,n){return t<12?"صبح":"شام"},calendar:{sameDay:"[اڄ] LT",nextDay:"[سڀاڻي] LT",nextWeek:"dddd [اڳين هفتي تي] LT",lastDay:"[ڪالهه] LT",lastWeek:"[گزريل هفتي] dddd [تي] LT",sameElse:"L"},relativeTime:{future:"%s پوء",past:"%s اڳ",s:"چند سيڪنڊ",ss:"%d سيڪنڊ",m:"هڪ منٽ",mm:"%d منٽ",h:"هڪ ڪلاڪ",hh:"%d ڪلاڪ",d:"هڪ ڏينهن",dd:"%d ڏينهن",M:"هڪ مهينو",MM:"%d مهينا",y:"هڪ سال",yy:"%d سال"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:4}})}(n("wd/R"))},ZAMP:function(t,e,n){!function(t){"use strict";t.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(t,e){return 12===t&&(t=0),"pagi"===e?t:"tengahari"===e?t>=11?t:t+12:"petang"===e||"malam"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"pagi":t<15?"tengahari":t<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n("wd/R"))},ZDA6:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=n("IheW"),i=n("pL04");let s=(()=>{class t{constructor(t){this.http=t}list(){return this.http.get("ui-api/scope")}}return t.ngInjectableDef=a["ɵɵdefineInjectable"]({factory:function(){return new t(a["ɵɵinject"](r.c))},token:t,providedIn:i.a}),t})()},ZEkX:function(t,e,n){"use strict";n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return o})),n("Mxhz");var a=n("0+/T"),r=(n("sne2"),n("x38r")),i=n("oxzT"),s=n("mtw6"),u=n("vCyI");n("a0VL"),n("nSDx"),n("aexS"),n("9nlD");const o=new(n("EgGo").a)("user-management/users");class l{constructor(t,e,n,a,r,s,o,l,d){this.userService=t,this.emptyPipe=e,this.modalService=n,this.notificationService=a,this.authStorageService=r,this.i18n=s,this.urlBuilder=o,this.cdDatePipe=l,this.actionLabels=d,this.selection=new u.a,this.permission=this.authStorageService.getPermissions().user,this.tableActions=[{permission:"create",icon:i.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE},{permission:"update",icon:i.a.edit,routerLink:()=>this.selection.first()&&this.urlBuilder.getEdit(this.selection.first().username),name:this.actionLabels.EDIT},{permission:"delete",icon:i.a.destroy,click:()=>this.deleteUserModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:this.i18n("Username"),prop:"username",flexGrow:1},{name:this.i18n("Name"),prop:"name",flexGrow:1,pipe:this.emptyPipe},{name:this.i18n("Email"),prop:"email",flexGrow:1,pipe:this.emptyPipe},{name:this.i18n("Roles"),prop:"roles",flexGrow:1,cellTemplate:this.userRolesTpl},{name:this.i18n("Enabled"),prop:"enabled",flexGrow:1,cellTransformation:r.a.checkIcon},{name:this.i18n("Password expiration date"),prop:"pwdExpirationDate",flexGrow:1,pipe:this.cdDatePipe}]}getUsers(){this.userService.list().subscribe(t=>{t.forEach(t=>{t.pwdExpirationDate&&t.pwdExpirationDate>0&&(t.pwdExpirationDate=1e3*t.pwdExpirationDate)}),this.users=t})}updateSelection(t){this.selection=t}deleteUser(t){this.userService.delete(t).subscribe(()=>{this.getUsers(),this.modalRef.hide(),this.notificationService.show(s.a.success,this.i18n('Deleted user "{{username}}"',{username:t}))},()=>{this.modalRef.content.stopLoadingSpinner()})}deleteUserModal(){const t=this.authStorageService.getUsername(),e=this.selection.first().username;t!==e?this.modalRef=this.modalService.show(a.a,{initialState:{itemDescription:"User",itemNames:[e],submitAction:()=>this.deleteUser(e)}}):this.notificationService.show(s.a.error,this.i18n('Failed to delete user "{{username}}"',{username:e}),this.i18n('You are currently logged in as "{{username}}".',{username:e}))}}},ZPW6:function(t,e,n){var a=n("w/8D");t.exports=function(t,e,n){"__proto__"==e&&a?a(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},ZUHj:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("51Dv"),r=n("SeVD"),i=n("HDdC");function s(t,e,n,s,u=new a.a(t,n,s)){if(!u.closed)return e instanceof i.a?e.subscribe(u):Object(r.a)(e)(u)}},ZUd8:function(t,e,n){var a=n("ppGB"),r=n("HYAF"),i=function(t){return function(e,n){var i,s,u=String(r(e)),o=a(n),l=u.length;return o<0||o>=l?t?"":void 0:(i=u.charCodeAt(o))<55296||i>56319||o+1===l||(s=u.charCodeAt(o+1))<56320||s>57343?t?u.charAt(o):i:t?u.slice(o,o+2):s-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZY2H:function(t,e,n){var a=n("/Gx3"),r=n("QUkU");t.exports=function(t){return a((function(e,n){var a=-1,i=n.length,s=i>1?n[i-1]:void 0,u=i>2?n[2]:void 0;for(s=t.length>3&&"function"==typeof s?(i--,s):void 0,u&&r(n[0],n[1],u)&&(s=i<3?void 0:s,i=1),e=Object(e);++a<i;){var o=n[a];o&&t(e,o,a,s)}return e}))}},Zduo:function(t,e,n){!function(t){"use strict";t.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_ĵaŭ_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_ĵa_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D[-a de] MMMM, YYYY",LLL:"D[-a de] MMMM, YYYY HH:mm",LLLL:"dddd, [la] D[-a de] MMMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(t){return"p"===t.charAt(0).toLowerCase()},meridiem:function(t,e,n){return t>11?n?"p.t.m.":"P.T.M.":n?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"antaŭ %s",s:"sekundoj",ss:"%d sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},dayOfMonthOrdinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}})}(n("wd/R"))},ZfDv:function(t,e,n){var a=n("hh1v"),r=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return r(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!r(n.prototype)?a(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},ZhuC:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",a.TemplateRef)],t.prototype,"template",void 0),i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Component)({encapsulation:a.ViewEncapsulation.None,selector:"tree-loading-component",template:'\n    <span *ngIf="!template">loading...</span>\n    <ng-container\n      [ngTemplateOutlet]="template"\n      [ngTemplateOutletContext]="{ $implicit: node }">\n    </ng-container>\n  '})],t)}()},a0VL:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this.datePipe=t}transform(t){return null===t||""===t?"":this.datePipe.transform(t,"shortDate")+" "+this.datePipe.transform(t,"mediumTime")}}},a1D2:function(t,e,n){var a=n("43VP");t.exports=function(t,e){var n;return a(t,(function(t,a,r){return!(n=e(t,a,r))})),!!n}},a278:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("QC43"),i=n("XFyV"),s=n("DqMs"),u=n("/NlG"),o=n("GiVz"),l=n("i4WA"),d=n("6qls"),c=n("tz6c"),f=n("s7LF"),h=n("ANnk"),g=n("f/UV"),p=n("aexS"),b=n("SVse");n("insk"),n("cUpR"),n("20UP"),n.d(e,"a",(function(){return m})),n.d(e,"b",(function(){return w}));var m=a["ɵcrt"]({encapsulation:0,styles:[[".grafana[_ngcontent-%COMP%]{width:100%;height:600px;z-index:0}.grafana_one[_ngcontent-%COMP%]{height:400px}.grafana_two[_ngcontent-%COMP%]{height:750px}.grafana_three[_ngcontent-%COMP%]{height:900px}.grafana_four[_ngcontent-%COMP%]{height:1160px}.timepicker[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{font-weight:700}.dropdown-menu[_ngcontent-%COMP%]{top:20px;right:20px;left:auto}"]],data:{}});function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,r.b,r.a)),a["ɵdid"](1,49152,null,0,i.a,[],null,null),(t()(),a["ɵted"](-1,0,["Loading panel data..."]))],null,null)}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,s.b,s.a)),a["ɵdid"](1,114688,null,0,u.a,[o.a],{type:[0,"type"]},null),(t()(),a["ɵted"](-1,0,["Please consult the "])),(t()(),a["ɵeld"](3,0,null,0,1,"cd-doc",[["section","grafana"]],null,null,null,l.b,l.a)),a["ɵdid"](4,114688,null,0,d.a,[c.a,o.a],{section:[0,"section"]},null),(t()(),a["ɵted"](-1,0,[" on how to configure and enable the monitoring functionality."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"grafana")}),null)}function x(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,s.b,s.a)),a["ɵdid"](1,114688,null,0,u.a,[o.a],{type:[0,"type"]},null),(t()(),a["ɵted"](-1,0,["Grafana Dashboard doesn't exist. Please refer to "])),(t()(),a["ɵeld"](3,0,null,0,1,"cd-doc",[["section","grafana"]],null,null,null,l.b,l.a)),a["ɵdid"](4,114688,null,0,d.a,[c.a,o.a],{section:[0,"section"]},null),(t()(),a["ɵted"](-1,0,[" on how to add dashboards to Grafana."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"grafana")}),null)}function _(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),a["ɵdid"](1,147456,null,0,f.v,[a.ElementRef,a.Renderer2,[2,f.A]],{ngValue:[0,"ngValue"]},null),a["ɵdid"](2,147456,null,0,f.F,[a.ElementRef,a.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),a["ɵted"](3,null,[""," "]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.name)}))}function T(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,25,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,17,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),a["ɵeld"](3,0,null,null,16,"div",[["class","form-inline timepicker"]],null,null,null,null,null)),(t()(),a["ɵeld"](4,0,null,null,1,"label",[["class","ml-1 my-1 col-form-label"],["for","timepicker"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Grafana Time Picker"])),(t()(),a["ɵeld"](6,0,null,null,8,"select",[["class","custom-select my-1 mx-3"],["id","timepicker"],["name","timepicker"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],(function(t,e,n){var r=!0,i=t.component;return"change"===e&&(r=!1!==a["ɵnov"](t,7).onChange(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,7).onTouched()&&r),"ngModelChange"===e&&(r=!1!==(i.time=n)&&r),"ngModelChange"===e&&(r=!1!==i.onTimepickerChange(n)&&r),r}),null,null)),a["ɵdid"](7,16384,null,0,f.A,[a.Renderer2,a.ElementRef],null,null),a["ɵprd"](1024,null,f.p,(function(t){return[t]}),[f.A]),a["ɵdid"](9,671744,null,0,f.u,[[8,null],[8,null],[8,null],[6,f.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),a["ɵprd"](2048,null,f.q,null,[f.u]),a["ɵdid"](11,16384,null,0,f.r,[[4,f.q]],null,null),a["ɵdid"](12,4210688,null,0,h.a,[[2,g.a],p.a,a.ElementRef],null,null),(t()(),a["ɵand"](16777216,null,null,1,null,_)),a["ɵdid"](14,278528,null,0,b.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](15,0,null,null,4,"button",[["class","btn btn-light my-1"],["title","Reset Settings"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.reset()&&a),a}),null,null)),(t()(),a["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](18,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](19,1),(t()(),a["ɵeld"](20,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),a["ɵeld"](21,0,null,null,4,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),a["ɵeld"](22,0,null,null,3,"div",[["class","grafana-container"]],null,null,null,null,null)),(t()(),a["ɵeld"](23,0,[["iframe",1]],null,2,"iframe",[["class","grafana"],["frameborder","0"],["id","iframe"],["scrolling","no"]],[[8,"src",5]],null,null,null,null)),a["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](25,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null)],(function(t,e){var n=e.component;t(e,9,0,"timepicker",n.time),t(e,14,0,n.grafanaTimes);var a=t(e,19,0,n.icons.undo);t(e,18,0,a),t(e,25,0,"grafana",n.panelStyle)}),(function(t,e){var n=e.component;t(e,6,0,a["ɵnov"](e,11).ngClassUntouched,a["ɵnov"](e,11).ngClassTouched,a["ɵnov"](e,11).ngClassPristine,a["ɵnov"](e,11).ngClassDirty,a["ɵnov"](e,11).ngClassValid,a["ɵnov"](e,11).ngClassInvalid,a["ɵnov"](e,11).ngClassPending),t(e,23,0,n.grafanaSrc)}))}function w(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](1,16384,null,0,b.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,v)),a["ɵdid"](3,16384,null,0,b.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,x)),a["ɵdid"](5,16384,null,0,b.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](7,16384,null,0,b.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.loading&&n.grafanaExist),t(e,3,0,!n.grafanaExist),t(e,5,0,!n.dashboardExist),t(e,7,0,n.grafanaExist&&n.dashboardExist)}),null)}},a40w:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("EEJc"),i=n("ajRT"),s=n("s7LF"),u=n("+gVj"),o=n("SVse"),l=n("gp3X"),d=n("sb0X"),c=n("KVJa"),f=n("Z21x"),h=n("sne2"),g=n("OLbh"),p=n("LqlI");n.d(e,"a",(function(){return _}));var b=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function m(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.description)}))}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,22,"cd-modal",[],null,[[null,"hide"]],(function(t,e,n){var a=!0;return"hide"===e&&(a=!1!==t.component.cancel()&&a),a}),r.c,r.b)),a["ɵdid"](1,49152,null,0,i.a,[],null,{hide:"hide"}),(t()(),a["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](3,null,["",""])),(t()(),a["ɵeld"](4,0,null,1,18,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,17,"form",[["name","confirmationForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var r=!0;return"submit"===e&&(r=!1!==a["ɵnov"](t,7).onSubmit(n)&&r),"reset"===e&&(r=!1!==a["ɵnov"](t,7).onReset()&&r),"submit"===e&&(r=!1!==a["ɵnov"](t,10).onSubmit()&&r),r}),null,null)),a["ɵdid"](6,16384,null,0,s.G,[],null,null),a["ɵdid"](7,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),a["ɵprd"](2048,null,s.d,null,[s.l]),a["ɵdid"](9,16384,null,0,s.s,[[4,s.d]],null,null),a["ɵdid"](10,16384,null,0,u.d,[],{formGroup:[0,"formGroup"]},null),(t()(),a["ɵeld"](11,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,m)),a["ɵdid"](13,540672,null,0,o.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](15,16384,null,0,o.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](16,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),a["ɵeld"](17,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](18,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0,r=t.component;return"submitAction"===e&&(a=!1!==r.onSubmit(r.confirmationForm.value)&&a),a}),l.b,l.a)),a["ɵdid"](19,114688,null,0,d.a,[a.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),a["ɵted"](20,0,[" "," "])),(t()(),a["ɵeld"](21,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,c.b,c.a)),a["ɵdid"](22,49152,null,0,f.a,[o.Location,h.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,7,0,n.confirmationForm),t(e,10,0,n.confirmationForm),t(e,13,0,n.bodyContext,n.bodyTpl),t(e,15,0,n.description),t(e,19,0,n.confirmationForm),t(e,22,0,"Cancel",n.boundCancel)}),(function(t,e){var n=e.component;t(e,3,0,n.titleText),t(e,5,0,a["ɵnov"](e,9).ngClassUntouched,a["ɵnov"](e,9).ngClassTouched,a["ɵnov"](e,9).ngClassPristine,a["ɵnov"](e,9).ngClassDirty,a["ɵnov"](e,9).ngClassValid,a["ɵnov"](e,9).ngClassInvalid,a["ɵnov"](e,9).ngClassPending),t(e,20,0,n.buttonText)}))}function x(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-confirmation-modal",[],null,null,null,v,b)),a["ɵdid"](1,245760,null,0,g.a,[p.a,p.b],null,null)],(function(t,e){t(e,1,0)}),null)}var _=a["ɵccf"]("cd-confirmation-modal",g.a,x,{},{},[])},a96k:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e,n,a=!0){this.selected=t,this.name=e,this.description=n,this.enabled=a}}},aHM3:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("8Y7J"),n("s7LF");class a{static forRoot(){return{ngModule:a,providers:[]}}}},aHcz:function(t,e){t.exports=function(t){return t}},aIdf:function(t,e,n){!function(t){"use strict";function e(t,e,n){return t+" "+function(t,e){return 2===e?function(t){var e={m:"v",b:"v",d:"z"};return void 0===e[t.charAt(0)]?t:e[t.charAt(0)]+t.substring(1)}(t):t}({mm:"munutenn",MM:"miz",dd:"devezh"}[n],t)}t.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h[e]mm A",LTS:"h[e]mm:ss A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY h[e]mm A",LLLL:"dddd, D [a viz] MMMM YYYY h[e]mm A"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",ss:"%d eilenn",m:"ur vunutenn",mm:e,h:"un eur",hh:"%d eur",d:"un devezh",dd:e,M:"ur miz",MM:e,y:"ur bloaz",yy:function(t){switch(function t(e){return e>9?t(e%10):e}(t)){case 1:case 3:case 4:case 5:case 9:return t+" bloaz";default:return t+" vloaz"}}},dayOfMonthOrdinalParse:/\d{1,2}(añ|vet)/,ordinal:function(t){return t+(1===t?"añ":"vet")},week:{dow:1,doy:4}})}(n("wd/R"))},aIsn:function(t,e,n){!function(t){"use strict";t.defineLocale("mi",{months:"Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),monthsRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,weekdays:"Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei".split("_"),weekdaysShort:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),weekdaysMin:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [i] HH:mm",LLLL:"dddd, D MMMM YYYY [i] HH:mm"},calendar:{sameDay:"[i teie mahana, i] LT",nextDay:"[apopo i] LT",nextWeek:"dddd [i] LT",lastDay:"[inanahi i] LT",lastWeek:"dddd [whakamutunga i] LT",sameElse:"L"},relativeTime:{future:"i roto i %s",past:"%s i mua",s:"te hēkona ruarua",ss:"%d hēkona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},aKKh:function(t,e,n){var a=n("ktBm");t.exports=function(t,e){var n=this.__data__,r=a(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this}},aQkU:function(t,e,n){!function(t){"use strict";t.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(t){var e=t%10,n=t%100;return 0===t?t+"-ев":0===n?t+"-ен":n>10&&n<20?t+"-ти":1===e?t+"-ви":2===e?t+"-ри":7===e||8===e?t+"-ми":t+"-ти"},week:{dow:1,doy:7}})}(n("wd/R"))},aT2Y:function(t,e,n){var a=n("o3PY"),r=n("UnOm"),i=n("mWP/"),s=n("bdl3"),u=n("aKKh");function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}o.prototype.clear=a,o.prototype.delete=r,o.prototype.get=i,o.prototype.has=s,o.prototype.set=u,t.exports=o},aTV8:function(t,e,n){var a=n("LxgN"),r=n("l9nr"),i=n("a1D2"),s=n("0GLT"),u=n("QUkU");t.exports=function(t,e,n){var o=s(t)?a:i;return n&&u(t,e,n)&&(e=void 0),o(t,r(e,3))}},aXbf:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("LvDl"),r=n("8Y7J");let i=(()=>{class t{constructor(){}format_number(t,e,n,r=1){if(a.isString(t)&&(t=Number(t)),!a.isNumber(t))return"-";let i=t<1?0:Math.floor(Math.log(t)/Math.log(e));i=i>=n.length?n.length-1:i;let s=a.round(t/Math.pow(e,i),r).toString();return""===s?"-":(""!==n[i]&&(s=`${s} ${n[i]}`),s)}toBytes(t,e=null){const n=["b","k","m","g","t","p","e","z","y"],r=RegExp("^(\\d+(.\\d+)?) ?(["+n.join("")+"]?(b|ib|B/s)?)?$","i").exec(t);if(null===r)return e;let i=parseFloat(r[1]);return a.isString(r[3])&&(i*=Math.pow(1024,n.indexOf(r[3].toLowerCase()[0]))),Math.round(i)}toMilliseconds(t){const e=/^\s*(\d+)\s*(ms)?\s*$/i.exec(t);return null!==e?+e[1]:0}toIops(t){const e=/^\s*(\d+)\s*(IOPS)?\s*$/i.exec(t);return null!==e?+e[1]:0}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})()},aexS:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("2Vo4"),r=n("jKX/"),i=n("8Y7J");let s=(()=>{class t{constructor(){this.isPwdDisplayedSource=new a.a(!1),this.isPwdDisplayed$=this.isPwdDisplayedSource.asObservable()}set(t,e={},n=!1,a=null,i=!1){localStorage.setItem("dashboard_username",t),localStorage.setItem("dashboard_permissions",JSON.stringify(new r.a(e))),localStorage.setItem("user_pwd_expiration_date",String(a)),localStorage.setItem("user_pwd_update_required",String(i)),localStorage.setItem("sso",String(n))}remove(){localStorage.removeItem("dashboard_username"),localStorage.removeItem("user_pwd_expiration_data"),localStorage.removeItem("user_pwd_update_required")}isLoggedIn(){return null!==localStorage.getItem("dashboard_username")}getUsername(){return localStorage.getItem("dashboard_username")}getPermissions(){return JSON.parse(localStorage.getItem("dashboard_permissions")||JSON.stringify(new r.a({})))}getPwdExpirationDate(){return Number(localStorage.getItem("user_pwd_expiration_date"))}getPwdUpdateRequired(){return"true"===localStorage.getItem("user_pwd_update_required")}isSSO(){return"true"===localStorage.getItem("sso")}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})()},afO8:function(t,e,n){var a,r,i,s=n("f5p1"),u=n("2oRo"),o=n("hh1v"),l=n("kRJp"),d=n("UTVS"),c=n("93I0"),f=n("0BK2");if(s){var h=new(0,u.WeakMap),g=h.get,p=h.has,b=h.set;a=function(t,e){return b.call(h,t,e),e},r=function(t){return g.call(h,t)||{}},i=function(t){return p.call(h,t)}}else{var m=c("state");f[m]=!0,a=function(t,e){return l(t,m,e),e},r=function(t){return d(t,m)?t[m]:{}},i=function(t){return d(t,m)}}t.exports={set:a,get:r,has:i,enforce:function(t){return i(t)?r(t):a(t,{})},getterFor:function(t){return function(e){var n;if(!o(e)||(n=r(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},ajRT:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("8Y7J");class r{constructor(){this.hide=new a.EventEmitter}close(){this.modalRef&&this.modalRef.hide(),this.hide.emit()}}},atuK:function(t,e,n){"use strict";n.d(e,"a",(function(){return v})),n.d(e,"b",(function(){return E})),n.d(e,"d",(function(){return H})),n.d(e,"c",(function(){return rt}));var a=n("8Y7J"),r=n("ienR"),i=n("SVse"),s=(n("s7LF"),n("2uy1")),u=a["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"datepickerAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-days-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onHoverWeek"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.dayHoverHandler(n)&&a),"onHoverWeek"===e&&(a=!1!==r.weekHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.daySelectHandler(n)&&a),a}),It,xt)),a["ɵdid"](1,49152,null,0,r.B,[r.a],{calendar:[0,"calendar"],options:[1,"options"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit,a["ɵunv"](e,1,1,a["ɵnov"](e,2).transform(n.options)))}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,3).transform(r.daysCalendar)))?null:n.length)>1)}))}function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,o)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.daysCalendar)))}),null)}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-month-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.monthHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.monthSelectHandler(n)&&a),a}),At,Nt)),a["ɵdid"](1,49152,null,0,r.C,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,d)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.monthsCalendar)))}),null)}function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-years-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.yearHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.yearSelectHandler(n)&&a),a}),Mt,Lt)),a["ɵdid"](1,49152,null,0,r.E,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,f)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.yearsCalendar)))}),null)}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-buttons"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-success"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Apply"])),(t()(),a["ɵeld"](3,0,null,null,1,"button",[["class","btn btn-default"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Cancel"]))],null,null)}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","bs-datepicker-custom-range"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"bs-custom-date-view",[],null,null,null,gt,ct)),a["ɵdid"](2,49152,null,0,r.y,[],{ranges:[0,"ranges"]},null)],(function(t,e){t(e,2,0,e.component._customRangesFish)}),null)}function b(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"div",[["class","bs-datepicker"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵeld"](3,0,null,null,11,"div",[["class","bs-datepicker-container"]],[[24,"@datepickerAnimation",0]],[[null,"@datepickerAnimation.done"]],(function(t,e,n){var a=!0;return"@datepickerAnimation.done"===e&&(a=!1!==t.component.positionServiceEnable()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,8,"div",[["class","bs-calendar-container"],["role","application"]],null,null,null,null,null)),a["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](8,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](10,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,h)),a["ɵdid"](12,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](14,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](16,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"bs-datepicker",n.containerClass),t(e,5,0,a["ɵunv"](e,5,0,a["ɵnov"](e,6).transform(n.viewMode))),t(e,8,0,"day"),t(e,10,0,"month"),t(e,12,0,"year"),t(e,14,0,!1),t(e,16,0,!1)}),(function(t,e){t(e,3,0,e.component.animationState)}))}function m(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,b)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,a["ɵunv"](e,1,0,a["ɵnov"](e,2).transform(n.viewMode)))}),null)}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-datepicker-container",[["aria-label","calendar"],["class","bottom"],["role","dialog"]],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,3)._stopPropagation(n)&&r),r}),m,u)),a["ɵprd"](512,null,r.t,r.t,[]),a["ɵprd"](512,null,r.u,r.u,[r.v,r.l]),a["ɵdid"](3,245760,null,0,r.b,[a.Renderer2,r.a,r.t,a.ElementRef,r.v,r.u,s.a],null,null)],(function(t,e){t(e,3,0)}),null)}var v=a["ɵccf"]("bs-datepicker-container",r.b,y,{},{},[]),x=a["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"datepickerAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function _(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-days-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onHoverWeek"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.dayHoverHandler(n)&&a),"onHoverWeek"===e&&(a=!1!==r.weekHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.daySelectHandler(n)&&a),a}),It,xt)),a["ɵdid"](1,49152,null,0,r.B,[r.a],{calendar:[0,"calendar"],options:[1,"options"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit,a["ɵunv"](e,1,1,a["ɵnov"](e,2).transform(n.options)))}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,3).transform(r.daysCalendar)))?null:n.length)>1)}))}function T(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,_)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.daysCalendar)))}),null)}function w(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-month-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.monthHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.monthSelectHandler(n)&&a),a}),At,Nt)),a["ɵdid"](1,49152,null,0,r.C,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,w)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.monthsCalendar)))}),null)}function S(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-years-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.yearHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.yearSelectHandler(n)&&a),a}),Mt,Lt)),a["ɵdid"](1,49152,null,0,r.E,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function I(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,S)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.yearsCalendar)))}),null)}function N(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-buttons"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-success"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Apply"])),(t()(),a["ɵeld"](3,0,null,null,1,"button",[["class","btn btn-default"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Cancel"]))],null,null)}function C(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","bs-datepicker-custom-range"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"bs-custom-date-view",[],null,null,null,gt,ct)),a["ɵdid"](2,49152,null,0,r.y,[],{ranges:[0,"ranges"]},null)],(function(t,e){t(e,2,0,e.component._customRangesFish)}),null)}function R(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"div",[["class","bs-datepicker"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵeld"](3,0,null,null,11,"div",[["class","bs-datepicker-container"]],[[24,"@datepickerAnimation",0]],[[null,"@datepickerAnimation.done"]],(function(t,e,n){var a=!0;return"@datepickerAnimation.done"===e&&(a=!1!==t.component.positionServiceEnable()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,8,"div",[["class","bs-calendar-container"],["role","application"]],null,null,null,null,null)),a["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](8,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](10,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,I)),a["ɵdid"](12,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,N)),a["ɵdid"](14,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,C)),a["ɵdid"](16,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"bs-datepicker",n.containerClass),t(e,5,0,a["ɵunv"](e,5,0,a["ɵnov"](e,6).transform(n.viewMode))),t(e,8,0,"day"),t(e,10,0,"month"),t(e,12,0,"year"),t(e,14,0,!1),t(e,16,0,!1)}),(function(t,e){t(e,3,0,e.component.animationState)}))}function A(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,R)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,a["ɵunv"](e,1,0,a["ɵnov"](e,2).transform(n.viewMode)))}),null)}function k(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-datepicker-inline-container",[],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,3)._stopPropagation(n)&&r),r}),A,x)),a["ɵprd"](512,null,r.t,r.t,[]),a["ɵprd"](512,null,r.u,r.u,[r.v,r.l]),a["ɵdid"](3,245760,null,0,r.e,[a.Renderer2,r.a,r.t,a.ElementRef,r.v,r.u,s.a],null,null)],(function(t,e){t(e,3,0)}),null)}var E=a["ɵccf"]("bs-datepicker-inline-container",r.e,k,{},{},[]),L=a["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"datepickerAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function D(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-days-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onHoverWeek"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.dayHoverHandler(n)&&a),"onHoverWeek"===e&&(a=!1!==r.weekHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.daySelectHandler(n)&&a),a}),It,xt)),a["ɵdid"](1,49152,null,0,r.B,[r.a],{calendar:[0,"calendar"],options:[1,"options"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit,a["ɵunv"](e,1,1,a["ɵnov"](e,2).transform(n.options)))}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,3).transform(r.daysCalendar)))?null:n.length)>1)}))}function P(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,D)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.daysCalendar)))}),null)}function M(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-month-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.monthHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.monthSelectHandler(n)&&a),a}),At,Nt)),a["ɵdid"](1,49152,null,0,r.C,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,M)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.monthsCalendar)))}),null)}function j(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-years-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.yearHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.yearSelectHandler(n)&&a),a}),Mt,Lt)),a["ɵdid"](1,49152,null,0,r.E,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function F(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,j)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.yearsCalendar)))}),null)}function V(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-buttons"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-success"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Apply"])),(t()(),a["ɵeld"](3,0,null,null,1,"button",[["class","btn btn-default"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Cancel"]))],null,null)}function G(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","bs-datepicker-custom-range"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"bs-custom-date-view",[],null,null,null,gt,ct)),a["ɵdid"](2,49152,null,0,r.y,[],{ranges:[0,"ranges"]},null)],(function(t,e){t(e,2,0,e.component._customRangesFish)}),null)}function B(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"div",[["class","bs-datepicker"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵeld"](3,0,null,null,11,"div",[["class","bs-datepicker-container"]],[[24,"@datepickerAnimation",0]],[[null,"@datepickerAnimation.done"]],(function(t,e,n){var a=!0;return"@datepickerAnimation.done"===e&&(a=!1!==t.component.positionServiceEnable()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,8,"div",[["class","bs-calendar-container"],["role","application"]],null,null,null,null,null)),a["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,P)),a["ɵdid"](8,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,q)),a["ɵdid"](10,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,F)),a["ɵdid"](12,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,V)),a["ɵdid"](14,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,G)),a["ɵdid"](16,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"bs-datepicker",n.containerClass),t(e,5,0,a["ɵunv"](e,5,0,a["ɵnov"](e,6).transform(n.viewMode))),t(e,8,0,"day"),t(e,10,0,"month"),t(e,12,0,"year"),t(e,14,0,!1),t(e,16,0,!1)}),(function(t,e){t(e,3,0,e.component.animationState)}))}function z(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,B)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,a["ɵunv"](e,1,0,a["ɵnov"](e,2).transform(n.viewMode)))}),null)}function Y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-daterangepicker-inline-container",[],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,3)._stopPropagation(n)&&r),r}),z,L)),a["ɵprd"](512,null,r.t,r.t,[]),a["ɵprd"](512,null,r.u,r.u,[r.v,r.l]),a["ɵdid"](3,245760,null,0,r.k,[a.Renderer2,r.a,r.t,a.ElementRef,r.v,r.u,s.a],null,null)],(function(t,e){t(e,3,0)}),null)}var H=a["ɵccf"]("bs-daterangepicker-inline-container",r.k,Y,{},{},[]),U=a["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"datepickerAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function W(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-days-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onHoverWeek"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.dayHoverHandler(n)&&a),"onHoverWeek"===e&&(a=!1!==r.weekHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.daySelectHandler(n)&&a),a}),It,xt)),a["ɵdid"](1,49152,null,0,r.B,[r.a],{calendar:[0,"calendar"],options:[1,"options"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit,a["ɵunv"](e,1,1,a["ɵnov"](e,2).transform(n.options)))}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,3).transform(r.daysCalendar)))?null:n.length)>1)}))}function K(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,W)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.daysCalendar)))}),null)}function $(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-month-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.monthHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.monthSelectHandler(n)&&a),a}),At,Nt)),a["ɵdid"](1,49152,null,0,r.C,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function Z(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,$)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.monthsCalendar)))}),null)}function J(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-years-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.yearHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.yearSelectHandler(n)&&a),a}),Mt,Lt)),a["ɵdid"](1,49152,null,0,r.E,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function Q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,J)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.yearsCalendar)))}),null)}function X(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-buttons"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-success"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Apply"])),(t()(),a["ɵeld"](3,0,null,null,1,"button",[["class","btn btn-default"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Cancel"]))],null,null)}function tt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","bs-datepicker-custom-range"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"bs-custom-date-view",[],null,null,null,gt,ct)),a["ɵdid"](2,49152,null,0,r.y,[],{ranges:[0,"ranges"]},null)],(function(t,e){t(e,2,0,e.component._customRangesFish)}),null)}function et(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"div",[["class","bs-datepicker"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵeld"](3,0,null,null,11,"div",[["class","bs-datepicker-container"]],[[24,"@datepickerAnimation",0]],[[null,"@datepickerAnimation.done"]],(function(t,e,n){var a=!0;return"@datepickerAnimation.done"===e&&(a=!1!==t.component.positionServiceEnable()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,8,"div",[["class","bs-calendar-container"],["role","application"]],null,null,null,null,null)),a["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,K)),a["ɵdid"](8,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Z)),a["ɵdid"](10,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Q)),a["ɵdid"](12,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,X)),a["ɵdid"](14,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,tt)),a["ɵdid"](16,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"bs-datepicker",n.containerClass),t(e,5,0,a["ɵunv"](e,5,0,a["ɵnov"](e,6).transform(n.viewMode))),t(e,8,0,"day"),t(e,10,0,"month"),t(e,12,0,"year"),t(e,14,0,!1),t(e,16,0,!1)}),(function(t,e){t(e,3,0,e.component.animationState)}))}function nt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,et)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,a["ɵunv"](e,1,0,a["ɵnov"](e,2).transform(n.viewMode)))}),null)}function at(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-daterangepicker-container",[["aria-label","calendar"],["class","bottom"],["role","dialog"]],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,3)._stopPropagation(n)&&r),r}),nt,U)),a["ɵprd"](512,null,r.t,r.t,[]),a["ɵprd"](512,null,r.u,r.u,[r.v,r.l]),a["ɵdid"](3,245760,null,0,r.i,[a.Renderer2,r.a,r.t,a.ElementRef,r.v,r.u,s.a],null,null)],(function(t,e){t(e,3,0)}),null)}var rt=a["ɵccf"]("bs-daterangepicker-container",r.i,at,{},{},[]),it=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function st(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-current-date",[["title","hey there"]],null,null,null,dt,lt)),a["ɵdid"](1,49152,null,0,r.x,[],{title:[0,"title"]},null)],(function(t,e){t(e,1,0,"hey there")}),null)}function ut(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-timepicker",[],null,null,null,Et,kt)),a["ɵdid"](1,49152,null,0,r.D,[],null,null)],null,null)}function ot(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,st)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](2,0,null,null,1,"div",[["class","bs-datepicker-head"]],null,null,null,null,null)),a["ɵncd"](null,0),(t()(),a["ɵeld"](4,0,null,null,1,"div",[["class","bs-datepicker-body"]],null,null,null,null,null)),a["ɵncd"](null,1),(t()(),a["ɵand"](16777216,null,null,1,null,ut)),a["ɵdid"](7,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,!1),t(e,7,0,!1)}),null)}var lt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function dt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","current-timedate"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.component.title)}))}var ct=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function ft(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"button",[["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.$implicit.label)}))}function ht(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"button",[["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Custom Range"]))],null,null)}function gt(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-predefined-btns"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ft)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ht)),a["ɵdid"](4,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.ranges),t(e,4,0,n.isCustomRangeShown)}),null)}var pt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function bt(t){return a["ɵvid"](2,[(t()(),a["ɵted"](0,null,["",""]))],null,(function(t,e){t(e,0,0,e.component.day.label)}))}var mt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function yt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"button",[["class","current"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.view("month")&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.component.calendar.monthTitle)}))}function vt(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,2,"button",[["class","previous"],["type","button"]],[[8,"disabled",0],[4,"visibility",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.navTo(!0)&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["‹"])),(t()(),a["ɵted"](-1,null,[" ​ "])),(t()(),a["ɵand"](16777216,null,null,1,null,yt)),a["ɵdid"](5,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,[" ​ "])),(t()(),a["ɵeld"](7,0,null,null,2,"button",[["class","current"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.view("year")&&a),a}),null,null)),(t()(),a["ɵeld"](8,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](9,null,["",""])),(t()(),a["ɵted"](-1,null,[" ​ "])),(t()(),a["ɵeld"](11,0,null,null,2,"button",[["class","next"],["type","button"]],[[8,"disabled",0],[4,"visibility",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.navTo(!1)&&a),a}),null,null)),(t()(),a["ɵeld"](12,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["›"]))],(function(t,e){t(e,5,0,e.component.calendar.monthTitle)}),(function(t,e){var n=e.component;t(e,0,0,n.calendar.disableLeftArrow,n.calendar.hideLeftArrow?"hidden":"visible"),t(e,9,0,n.calendar.yearTitle),t(e,11,0,n.calendar.disableRightArrow,n.calendar.hideRightArrow?"hidden":"visible")}))}var xt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function _t(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"th",[],null,null,null,null,null))],null,null)}function Tt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"th",[["aria-label","weekday"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[""," "]))],null,(function(t,e){t(e,1,0,e.component.calendar.weekdays[e.context.index])}))}function wt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"td",[["class","week"]],[[2,"active-week",null]],null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],null,[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.selectWeek(t.parent.context.$implicit)&&a),"mouseenter"===e&&(a=!1!==r.weekHoverHandler(t.parent.context.$implicit,!0)&&a),"mouseleave"===e&&(a=!1!==r.weekHoverHandler(t.parent.context.$implicit,!1)&&a),a}),null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){var n=e.component;t(e,0,0,n.isWeekHovered),t(e,2,0,n.calendar.weekNumbers[e.parent.context.index])}))}function Ot(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"td",[["role","gridcell"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,2,"span",[["bsDatepickerDayDecorator",""]],[[2,"disabled",null],[2,"is-highlighted",null],[2,"is-other-month",null],[2,"is-active-other-month",null],[2,"in-range",null],[2,"select-start",null],[2,"select-end",null],[2,"selected",null]],[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.selectDay(t.context.$implicit)&&a),"mouseenter"===e&&(a=!1!==r.hoverDay(t.context.$implicit,!0)&&a),"mouseleave"===e&&(a=!1!==r.hoverDay(t.context.$implicit,!1)&&a),a}),bt,pt)),a["ɵdid"](2,114688,null,0,r.z,[r.a,a.ElementRef,a.Renderer2],{day:[0,"day"]},null),(t()(),a["ɵted"](3,null,["",""]))],(function(t,e){t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,1,0,a["ɵnov"](e,2).day.isDisabled,a["ɵnov"](e,2).day.isHovered,a["ɵnov"](e,2).day.isOtherMonth,a["ɵnov"](e,2).day.isOtherMonthHovered,a["ɵnov"](e,2).day.isInRange,a["ɵnov"](e,2).day.isSelectionStart,a["ɵnov"](e,2).day.isSelectionEnd,a["ɵnov"](e,2).day.isSelected),t(e,3,0,e.context.$implicit.label)}))}function St(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,wt)),a["ɵdid"](2,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Ot)),a["ɵdid"](4,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.options.showWeekNumbers),t(e,4,0,e.context.$implicit.days)}),null)}function It(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,13,"bs-calendar-layout",[],null,null,null,ot,it)),a["ɵdid"](1,49152,null,0,r.w,[],null,null),(t()(),a["ɵeld"](2,0,null,0,1,"bs-datepicker-navigation-view",[],null,[[null,"onNavigate"],[null,"onViewMode"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.changeViewMode(n)&&a),a}),vt,mt)),a["ɵdid"](3,49152,null,0,r.A,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode"}),(t()(),a["ɵeld"](4,0,null,1,9,"table",[["class","days weeks"],["role","grid"]],null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,5,"thead",[],null,null,null,null,null)),(t()(),a["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,_t)),a["ɵdid"](8,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Tt)),a["ɵdid"](10,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](11,0,null,null,2,"tbody",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,St)),a["ɵdid"](13,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.calendar),t(e,8,0,n.options.showWeekNumbers),t(e,10,0,n.calendar.weekdays),t(e,13,0,n.calendar.weeks)}),null)}var Nt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Ct(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"td",[["role","gridcell"]],[[2,"disabled",null],[2,"is-highlighted",null]],[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.viewMonth(t.context.$implicit)&&a),"mouseenter"===e&&(a=!1!==r.hoverMonth(t.context.$implicit,!0)&&a),"mouseleave"===e&&(a=!1!==r.hoverMonth(t.context.$implicit,!1)&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],[[2,"selected",null]],null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,0,0,e.context.$implicit.isDisabled,e.context.$implicit.isHovered),t(e,1,0,e.context.$implicit.isSelected),t(e,2,0,e.context.$implicit.label)}))}function Rt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Ct)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit)}),null)}function At(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"bs-calendar-layout",[],null,null,null,ot,it)),a["ɵdid"](1,49152,null,0,r.w,[],null,null),(t()(),a["ɵeld"](2,0,null,0,1,"bs-datepicker-navigation-view",[],null,[[null,"onNavigate"],[null,"onViewMode"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.changeViewMode(n)&&a),a}),vt,mt)),a["ɵdid"](3,49152,null,0,r.A,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode"}),(t()(),a["ɵeld"](4,0,null,1,3,"table",[["class","months"],["role","grid"]],null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,2,"tbody",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Rt)),a["ɵdid"](7,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.calendar),t(e,7,0,n.calendar.months)}),null)}var kt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Et(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,15,"div",[["class","bs-timepicker-container"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,5,"div",[["class","bs-timepicker-controls"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"button",[["class","bs-decrease"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["-"])),(t()(),a["ɵeld"](4,0,null,null,0,"input",[["placeholder","00"],["type","text"]],[[8,"value",0]],null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,1,"button",[["class","bs-increase"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["+"])),(t()(),a["ɵeld"](7,0,null,null,5,"div",[["class","bs-timepicker-controls"]],null,null,null,null,null)),(t()(),a["ɵeld"](8,0,null,null,1,"button",[["class","bs-decrease"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["-"])),(t()(),a["ɵeld"](10,0,null,null,0,"input",[["placeholder","00"],["type","text"]],[[8,"value",0]],null,null,null,null)),(t()(),a["ɵeld"](11,0,null,null,1,"button",[["class","bs-increase"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["+"])),(t()(),a["ɵeld"](13,0,null,null,2,"button",[["class","switch-time-format"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](14,null,[""," "])),(t()(),a["ɵeld"](15,0,null,null,0,"img",[["alt",""],["src","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAKCAYAAABi8KSDAAABSElEQVQYV3XQPUvDUBQG4HNuagtVqc6KgouCv6GIuIntYBLB9hcIQpLStCAIV7DYmpTcRWcXqZio3Vwc/UCc/QEqfgyKGbr0I7nS1EiHeqYzPO/h5SD0jaxUZjmSLCB+OFb+UFINFwASAEAdpu9gaGXVyAHHFQBkHpKHc6a9dzECvADyY9sqlAMsK9W0jzxDXqeytr3mhQckxSji27TJJ5/rPmIpwJJq3HrtduriYOurv1a4i1p5HnhkG9OFymi0ReoO05cGwb+ayv4dysVygjeFmsP05f8wpZQ8fsdvfmuY9zjWSNqUtgYFVnOVReILYoBFzdQI5/GGFzNHhGbeZnopDGU29sZbscgldmC99w35VOATTycIMMcBXIfpSVGzZhA6C8hh00conln6VQ9TGgV32OEAKQC4DrBq7CJwd0ggR7Vq/rPrfgB+C3sGypY5DAAAAABJRU5ErkJggg=="]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,4,0,n.hours),t(e,10,0,n.minutes),t(e,14,0,n.ampm)}))}var Lt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Dt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"td",[["role","gridcell"]],[[2,"disabled",null],[2,"is-highlighted",null]],[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.viewYear(t.context.$implicit)&&a),"mouseenter"===e&&(a=!1!==r.hoverYear(t.context.$implicit,!0)&&a),"mouseleave"===e&&(a=!1!==r.hoverYear(t.context.$implicit,!1)&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],[[2,"selected",null]],null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,0,0,e.context.$implicit.isDisabled,e.context.$implicit.isHovered),t(e,1,0,e.context.$implicit.isSelected),t(e,2,0,e.context.$implicit.label)}))}function Pt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Dt)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit)}),null)}function Mt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"bs-calendar-layout",[],null,null,null,ot,it)),a["ɵdid"](1,49152,null,0,r.w,[],null,null),(t()(),a["ɵeld"](2,0,null,0,1,"bs-datepicker-navigation-view",[],null,[[null,"onNavigate"],[null,"onViewMode"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.changeViewMode(n)&&a),a}),vt,mt)),a["ɵdid"](3,49152,null,0,r.A,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode"}),(t()(),a["ɵeld"](4,0,null,1,3,"table",[["class","years"],["role","grid"]],null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,2,"tbody",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Pt)),a["ɵdid"](7,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.calendar),t(e,7,0,n.calendar.years)}),null)}},b1Dy:function(t,e,n){!function(t){"use strict";t.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},b5OY:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("pxLl");class a{constructor(t,e){this.performanceCounterService=t,this.i18n=e,this.columns=[],this.counters=[]}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"name",flexGrow:1},{name:this.i18n("Description"),prop:"description",flexGrow:1},{name:this.i18n("Value"),prop:"value",cellTemplate:this.valueTpl,flexGrow:1}]}getCounters(t){this.performanceCounterService.get(this.serviceType,this.serviceId).subscribe(t=>{this.counters=t},e=>{404===e.status?(e.preventDefault(),this.counters=null):t.error()})}}},bHdf:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("5+tZ"),r=n("SpAZ");function i(t=Number.POSITIVE_INFINITY){return Object(a.a)(r.a,t)}},bN42:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="ja-JP">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>ナビゲーションの切り替え</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>ダッシュボード</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>クラスタ</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>ホスト</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>モニター</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>サービス</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>設定</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSHマップ</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>マネージャモジュール</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>ログ</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>プール</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>ブロック</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>イメージ</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>ミラーリング</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>ファイルシステム</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>オブジェクトゲートウェイ</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>デーモン</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>ユーザ</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>バケット</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>言語の選択</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>パネルデータを読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Grafana Time Picker</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>設定のリセット</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>戻る</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>データを読み込めませんでした。</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>選択済み</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>検出済み</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>合計</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>名前</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>説明</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>長い説明</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>デフォルト</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>デーモンのデフォルト</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>値</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>保存</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>CRUSHマップビューア</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>ホスト名</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>このフィールドは必須です。</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>はい。</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>キャンセル</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>閉じる</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>ホストリスト</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>全体的なパフォーマンス</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>エントリが見つかりません</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>クラスタログ</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>監査ログ</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>設定を読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>設定を読み込めませんでした。</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>マネージャモジュールの編集</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>入力された値は有効なUUIDではありません(有効なUUIDの例: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8)。</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>有効なIPアドレスを入力する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>数字を入力する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>数字または小数を入力する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>ステータス</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>クラスタID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmapが変更されました</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmapエポック</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>定数con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>定数mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>必須のcon</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>必須のmon</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>定数内</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>非定数内</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>追加</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>機能</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>クラスタ全体のOSDフラグ</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>送信</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>詳細...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD回復優先度</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>優先度</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>優先度値のカスタマイズ</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>このフィールドは必須です。</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>値は0と1の間である必要があります。</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>再重みづけ</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Deep } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {deep } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSDリスト</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>値</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>編集</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>削除</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>ヘルス</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>統計情報</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>クライアント</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>任意のクライアントからアクセスできます</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>アドレス</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>必須フィールド</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>1つ以上のカンマ区切り値を含んでいる必要があります</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>例:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>アクセスタイプ</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>スカッシュ</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>クライアントの追加</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- 使用可能なクラスタがありません --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- クラスタを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>デーモンの追加</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>ストレージバックエンド</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- 使用可能なデータプールがありません --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- ストレージバックエンドを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>オブジェクトゲートウェイユーザ</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- 使用可能なユーザがありません --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- オブジェクトゲートウェイユーザを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFSユーザID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- 使用可能なクライアントがありません --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- cephxクライアントを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS名</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>セキュリティラベル</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>セキュリティラベルの有効化</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFSパス</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>パスは「/」で始まる必要があり、その後ろに1つの単語を配置できます</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>新しいディレクトリが作成されます</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>パス</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>パスは単一の「/」または1つの単語である必要があります</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>新しいバケットが作成されます</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFSプロトコル</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFSタグ</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>クライアントはサブディレクトリをマウントできません(たとえば、[タグ] = fooの場合は、クライアントはfoo/bazをマウントできません)。</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>異なる[タグ]オプションを使用することで、同じパスを複数回エクスポートできます。</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>疑似</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>異なる[疑似]オプションを使用することで、同じパスを複数回エクスポートできます。</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- 使用可能なアクセスタイプがありません --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- アクセスタイプを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- 使用可能なスカッシュがありません --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- 実行されるユーザIDスカッシュ操作の種類を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>トランスポートプロトコル</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Cephにようこそ!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>ユーザ名は必須です</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>パスワードは必須です</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>ログイン</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>このユーザはCephに存在しません。</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>禁止</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>検索していた内容を表示することは許可されていません。</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD設定</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>ローカル設定値を削除します。親設定値が継承されて代わりに使用されます。</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>最小値は0です</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>プールリスト</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>名前は英数字、ダッシュ、および下線のみで構成される必要があります。</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>選択されたイレイジャコードプロファイル名はすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>プラグイン</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>データチャンク(k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>2以上である必要があります。</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>コーディングチャンク(m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>1以上である必要があります。</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>耐久性推定子(c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>地域(l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Crush障害ドメイン</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Crush地域</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>なし</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>技法</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>パケットサイズ</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Crushルート</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Crushデバイスクラス</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>任意</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>ディレクトリ</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>名前...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>選択されたCephプール名はすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>プールタイプ</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- プールタイプを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>配置グループ</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>少なくとも1つの配置グループが必要です。</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>ご使用のクラスタはこれだけ多数の配置グループを処理できません。必要な配置グループの数を再計算してください。</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>計算のヘルプ</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>複製されたサイズ</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>フラグ</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>ECの上書き</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>アプリケーション</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>イレイジャコードプロファイル</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- 使用可能なイレイジャコードプロファイルがありません --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- イレイジャコードプロファイルを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Crushルールセット</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Crushルールを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Crushルール</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Crushステップ</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>圧縮</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>モード</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>アルゴリズム</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- 使用可能なイレイジャ圧縮アルゴリズムがありません --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>最小blobサイズ</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>例: 128KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>値は0より大きい必要があります</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>最大blobサイズ</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>例: 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>値は最小blobサイズより大きい必要があります</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>率</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>圧縮率</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>値は0.0~1.0の間である必要があります</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>例: 10GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>詳細</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>パフォーマンスの詳細</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>キャッシュ層の詳細</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>イメージをごみ箱に移動する</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>保護の失効日</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>保護されていません</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>日付の形式が正しくありません。「YYYY-MM-DD HH:mm:ss」という形式を使用してください。</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>保護はすでに失効しています。将来の日付を選択するか、日付を空白のままにしてください。</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>イメージの移動</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>概要</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>ターゲット</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>検出認証</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>ユーザ</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>ユーザ名は8~64文字の長さである必要があり、\n英字、「.」、「@」、「-」、「_」、または「:」のみで構成される必要があります。</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>パスワード</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>相互ユーザ</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>相互パスワード</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>取得可能な情報:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>使用可能なiSCSIターゲットがありません</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>プール</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>データプール</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>作成済み</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>サイズ</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>オブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>オブジェクトサイズ</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>プロビジョニング済み</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>なし</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>プロビジョニング済み合計</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>ストライピング単位</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>ストライピング数</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>親</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>ブロック名のプレフィックス</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>順番</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>スナップショット</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>イメージ</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>この設定はグローバル値よりも優先されます</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>グローバル</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>これはグローバル値です。このイメージについて、このオプションの値は設定されていません。</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>「/」と「@」は使用できません。</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- 使用可能なrbdプールがありません --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- プールを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>専用のデータプールを使用してください</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>データプール</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>RBDのオブジェクトデータを保管するための専用プール</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>サイズを大きくする必要があります。</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>詳細</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>ストライピング</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>ストライプ単位</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- ストライプ単位を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>ストライプ数が定義されているため、このフィールドは必須です。</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>ストライプ単位がオブジェクトサイズより大きいです。</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>ストライプ数</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>ストライプ単位が定義されているため、このフィールドは必須です。</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>ストライプ数は0より大きい必要があります。</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>ロールバックしようとしています</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>ごみ箱を空にする</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>すべて</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>プール:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>プール名...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>イメージの復元</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>復元するには</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>イメージの新しい名前を入力してクリックします</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>新しい名前</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>失効日</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>保護の終了日</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSIトポロジ</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>通常はこれらのパラメータをデフォルト値から変更する必要はありません。</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>設定</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>バックストア</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>確認</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>詳細設定</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>ターゲットIQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQNのパターンが正しくありません。</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>例: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>詳細情報</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>このターゲットの詳細設定は変更されています。</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>ポータル</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>ポータルの追加</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>このイメージの設定は変更されています。</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>イメージの追加</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL認証</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>イニシエータ</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>イニシエータ</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>クライアントIQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>イニシエータIQNは一意である必要があります。</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>ユーザ名は8~64文字の長さである必要があり、\n英字、「.」、「@」、「-」、「_」、または「:」のみで構成される必要があります。</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>イニシエータはいずれかのグループに属します。イメージはそのグループ内で設定されます。</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>アイテムが追加されていません。</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>イニシエータの追加</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>グループ</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>グループ</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>グループの追加</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>ごみ箱</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>問題</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>同期中</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>準備完了</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>プールのミラーモードの編集</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>ミラーを無効にする前に、ピアクラスタを削除する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>クラスタ名</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>このクラスタ名は無効です。</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>このCephX IDは無効です。</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>モニターアドレス</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>カンマ区切りアドレス...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>この警告アドレスは無効です。</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephXキー</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64エンコード化済みキー...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephXキーはbase64でエンコードされている必要があります。</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>パフォーマンスカウンタを使用できません</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>デーモンリスト</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>パフォーマンスカウンタ</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>バケットデータを読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>Id</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>この値は無効です。</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>選択された名前はすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>所有者</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- ユーザを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>有効化済み</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>インデックスタイプ</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>配置ルール</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>マーカー</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>最大マーカー</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>バージョン</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>マスタバージョン</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>変更時間</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>ゾーングループ</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>バケットクォータ</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>最大サイズ</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>無制限</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>最大オブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>ユーザ名</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- ユーザ名を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>キーの自動生成</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>アクセスキー</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>秘密キー</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>氏名</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>電子メールアドレス</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>中断済み</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>システム</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>最大バケット数</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>サブユーザ</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>機能</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>ユーザクォータ</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>表示</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>キー</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>タイプ</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- タイプを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>許可</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- 許可を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>サブユーザ</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>選択されたサブユーザIDはすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>読み取り、書き込み</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>フル</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>スウィフトキー</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>秘密の自動生成</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>ユーザデータを読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>ユーザデータを読み込めませんでした。</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>選択されたユーザIDはすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>これは有効な電子メールアドレスではありません。</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>選択された電子メールアドレスはすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>最大バケット数</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>無効化済み</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>カスタム</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3キー</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>サブユーザがいません。</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>キーがありません。</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>スウィフト</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>機能がありません。</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>無制限のサイズ</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>最大サイズ</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>無制限のオブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>最大オブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>0以上の値を入力する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>説明...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>許可</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>役割</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>パスワードの確認入力</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>確認入力されたパスワードがパスワードと一致しません。</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>電子メール</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>無効な電子メールです。</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>自身のユーザから「user read / update」という許可を削除しようとしています。</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>続行した場合は、どのユーザの役割も追加および削除できなくなります。</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>続行してもよろしいですか?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>ヘルプ</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>ドキュメント</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>バージョン情報</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>ダッシュボード設定</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>ユーザ管理</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>ログイン済みユーザ</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>サインアウト</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>属性(OSDマップ)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>メタデータを使用できません</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>メタデータ</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>パフォーマンスカウンタ</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>書き込み回数</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>読み取り回数</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>ヒストグラム</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>現行値</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>最小</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>最大</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>ソース</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>レベル</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>実行時に更新できます(編集可能)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>タグ</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>列挙値</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>関連項目</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>クラスタのステータス</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>マネージャデーモン</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>オブジェクトゲートウェイ</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>メタデータサーバ</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSIゲートウェイ</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>クライアントのIOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>クライアントのスループット</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>クライアントの読み取り/書き込み</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>回復スループット</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>スクラブ</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>パフォーマンス</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>未フォーマット時の容量</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>OSDあたりの配置グループ数</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>配置グループのステータス</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>容量</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>ランク</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>現在</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>検出認証を更新しました</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>使用可能なポータルはありません。</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>使用可能なイメージはありません。</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>使用可能なイメージはありません。ターゲットにイメージを追加したことを確認してください。</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>使用可能なイニシエータはありません。ターゲットにイニシエータを追加したことを確認してください。</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>ターゲット</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>状態</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>読み取りバイト数</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>書き込みバイト数</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>読み取り操作数</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>書き込み操作数</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>次の日付以降のA/O</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>インスタンス</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>問題</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>進捗</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>モードの編集</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>ピアの追加</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>ピアの編集</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>ピアの削除</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>リーダー</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>#ローカル</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>#リモート</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>ミラーピア</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>キー</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>ディープフラット化</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>階層化</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>排他ロック</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>オブジェクトマップ(排他ロックが必要)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>ジャーナリング(排他ロックが必要)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>未保護</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>RBDスナップショットのロールバック</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>ロールバック</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBDスナップショット</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>削除日時</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>id</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>タイプ</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>状態</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>バージョン</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>ホスト</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>ルート</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>スタンバイデーモン</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>ランク</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>デーモン</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>アクティビティ</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>dエントリ</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>iノード</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>使用量</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>更新済み</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>この値は実行時に更新できます。</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>デーモン/クライアントはこの値をモニター設定データベースから取得しません。\nこのオプションを「ceph config set ...」を通じて設定することは禁止されています。\nこのオプションは、ceph.confまたはコマンドラインを通じて\n設定する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>オプションはデーモン始動時のみに有効になります。</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>オプションはクラスタの作成のみに適用されます。</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>オプションはデーモンの作成のみに適用されます。</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>サービス</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>現行値</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>編集可能</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>有効化</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>無効化</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>再接続していますので、しばらくお待ちください...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>パブリックアドレス</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>セッションの開始</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>インなし</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>以前にアウトとしてマークされたOSDは、それらの始動時にインとしてマークされることはありません</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>アウトなし</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSDは、設定済みの間隔が経過した後に自動的にアウトとしてマークされます</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>アップなし</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSDを始動することは許可されていません</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>ダウンなし</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>OSDの障害レポートは無視されているため、OSDはモニターによってダウンとしてマークされません</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>一時停止</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>読み取りと書き込みを一時停止します</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>スクラブなし</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>スクラブ処理は無効化されています</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>ディープスクラブなし</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>ディープスクラブ処理は無効化されています</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>バックフィルなし</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>配置グループのバックフィルは中断されています</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>回復なし</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>配置グループの回復は中断されています</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>ビット単位のソート</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>ビット単位のソートを使用する</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>消去されたスナップディレクトリ</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSDによってスナップセットが変換されました</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>回復の削除</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>ピアリングの代わりに回復時に削除が実行されました</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>配置グループログのハード制限</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>配置グループログ長のハード制限を適用します</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>OSDフラグを更新しました</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>アウト</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>イン</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>ダウン</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>マーク</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>喪失したOSD</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>喪失としてマーク済み</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>消去</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>消去済み</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>破棄</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>破棄済み</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>削除</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>配置グループ数</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>読み取りバイト数</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>書き込みバイト数</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>読み取り操作数</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>書き込み操作数</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>最大バックフィル数</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>回復最大アクティブ</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>回復最大単一始動</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>回復スリープ</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>ジョブ</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>重大度</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>始動済み</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>使用済み</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>使用可能</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>クリーン</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>動作中</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>警告</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>不明</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>アップ</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>ファイルシステムがありません</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>アクティブ</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>スタンバイ</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>なし</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>アクティブデーモン</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>定数</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>NFS Ganeshaサービスが設定されていません。</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>トランスポート</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFSユーザ</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFSファイルシステム</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(グローバル設定から継承)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>グローバル設定から継承されました</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- 実行されるユーザIDスカッシュ操作を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>使用可能なデーモンがありません。</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>キャッシュモード</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>退去までの最小経過時間</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>消去までの最小経過時間</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>ターゲットの最大バイト数</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>ターゲットの最大オブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>アプリケーションは追加されていません</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>アプリケーション数の上限に達しました</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>1つのプールは最大で4つのアプリケーション定義しか保有できません。</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>使用可能な文字「_a-zA-Z0-9」</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>最大長は128文字です</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>アプリケーションのフィルタリングまたは追加</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>アプリケーションの追加</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>イレイジャコードプロファイル</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>レプリカサイズ</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>最後の変更</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>イレイジャコード化済みプロファイル</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Crushルールセット</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>バケット</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>バケット数</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>ユーザ</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>ユーザ数</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>範囲</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>読み取り</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>作成</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>システム役割</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>ユーザの更新</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>続行</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>このユーザの役割が変更されたため、このユーザは自動的にログアウトされました。</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>各オブジェクトは複数のデータチャンクパートに分割されており、それぞれのパートは異なるOSDに保管されています。</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>各オブジェクトのコーディングチャンクを計算して、これらのチャンクを別々のOSDに保管します。\nコーディングチャンクの数は、データを失うことなくダウン状態になることができるOSDの数でもあります。</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>jerasureプラグインは最も汎用的で柔軟性の高いプラグインです。\nこのプラグインは、Cephイレイジャコード化済みプール用のデフォルトでもあります。</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>さらに柔軟性の高い技法はreed_sol_vanです。kとmを\n設定するだけで十分です。\ncauchy_good技法はより高速となり得ますが、パケットサイズを慎重に選択する必要があります。\nreed_sol_r6_op、liberation、blaum_roth、liber8tionはすべて、\nm=2を使用した設定のみが可能という意味でRAID6と同等です。</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>エンコードはバイトサイズのパケット群に対して同時に実行されます。\n適切なパケットサイズを選択することは困難です。\njerasureのドキュメントにはこのトピックに関する詳細な情報が記載されています。</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>jerasureプラグインを使用すると、イレイジャコード化済みオブジェクトが複数のOSDに保管されている場合は、\n1つのOSDの喪失から回復するには、他のすべてのOSDからの読み取りが必要になります。\nたとえば、k=8およびm=4を使用してjerasureが設定されている場合は、1つのOSDが失われた場合、\n修復のためには他の11個のOSDからの読み取りが必要になります。\n\nlrcイレイジャコードプラグインは、これより少ないOSDを使用した回復を可能にするために、\nローカルパリティチャンクを作成します。たとえば、lrcがk=8、m=4、およびl=4を使用して設定されている場合は、\nlrcは、4つのOSDごとに1つの追加パリティチャンクを作成します。1つのOSDが失われた場合は、\n11個の代わりに4つのOSDのみを使用してそのOSDを回復できます。</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>コーディングチャンクとデータチャンクをサイズ地域の複数セットにグループ分けします。\nたとえば、k=4およびm=2の場合に、[地域]=3の場合は、3つのチャンクからなるグループが2つ作成されます。\n各セットは、別のセットからチャンクを読み取ることなく回復できます。</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>1によって定義されたチャンクの各セットが保管されるCrushバケットのタイプ。\nたとえば、このバケットタイプがラックに設定されている場合は、1のチャンクの各グループは異なるラックに配置されます。\nこのバケットタイプを使用して、「ラックの選択」ステップなどのCRUSHルールステップが作成されます。\nこのバケットタイプが設定されていない場合は、このようなグループ分けは行われません。</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>isaプラグインはISAライブラリをカプセル化します。このプラグインはIntelプロセッサ上のみで動作します。</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>ISAプラグインは2つのリードソロモン形式で提供されています。reed_sol_vanが設定されている場合は、Vandermondeであり、cauchyが設定されている場合は、Cauchyです。</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>shecプラグインは複数のSHECライブラリをカプセル化します。\nこのプラグインを使用すると、cephはリードソロモンコードより効率的にデータを回復できます。</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>それぞれが各データチャンクを各自の計算範囲内に含んでいるパリティチャンクの数。\nこの数は、耐久性推定子として使用されます。\nたとえば、c=2の場合は、データを失うことなく2つのOSDがダウン状態になることができます。</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>CRUSHルールの最初のステップ(「デフォルトの使用」ステップなど)用に\n使用されるCrushバケットの名前。</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>同じ障害ドメインの単一バケット内に2つのチャンクが配置されることを防止します。\nたとえば、障害ドメインがホストである場合は、2つのチャンクが同じホストに保管されることはありません。\nこれを使用して、「リーフホストの選択」ステップなどのCRUSHルールステップが作成されます。</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>CRUSHマップ内でCrushデバイスクラス名を使用して、配置先を特定クラス(ssdやhddなど)のデバイスのみに制限します。</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>イレイジャコードプラグインの読み込み元となるディレクトリ名を設定します。</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>すべての操作を許可します</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>サーバに変更を加えない操作のみを許可します</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>読み取り/書き込み操作を許可しませんが、他のすべての操作を許可します</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>読み取り/書き込み操作、およびファイル属性やディレクトリ内容を変更するどの操作も許可しません</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>アクセスを一切許可しません</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- 優先度を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>低</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>高</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>情報</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>直前の5分間</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>直前の15分間</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>直前の30分間</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>直前の1時間(デフォルト)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>直前の3時間</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>直前の6時間</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>直前の12時間</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>直前の24時間</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>昨日</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>本日</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>本日の現時点まで</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>一昨日</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>過去2日間</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>先週の同じ曜日</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>前週</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>今週</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>今週の現時点まで</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>過去7日間</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>前月</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>今月</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>今月の現時点まで</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>過去30日間</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>過去90日間</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>過去6カ月</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>過去1年間</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>前年</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>今年</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>今年の現時点まで</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>過去2年間</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>過去5年間</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>アイテムが選択されていません。</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>アイテムを選択解除して再選択してください</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>選択の上限に達しました</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>タグのフィルタリング</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>バッジの追加</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>使用可能なアイテムはありません。</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>複製</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>コピー</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>ディープスクラブ</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>破棄</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>フラット化</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>ダウンとしてマーク</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>インとしてマーク</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>喪失としてマーク</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>アウトとしてマーク</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>保護</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>名前の変更</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>復元</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>ごみ箱に移動する</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>保護解除</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>削除済み</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>複製済み</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>コピー済み</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>フラット化済み</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>消去済み</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>復元済み</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>ロールバック済み</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>はい</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>いいえ</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>サービス品質</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS制限</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>希望する秒あたり入出力バイト数の上限。</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS制限</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>希望する秒あたり入出力操作数の上限。</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>読み取りBPS制限</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>希望する秒あたり読み取りバイト数の上限。</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>読み取りIOPS制限</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>希望する秒あたり読み取り操作数の上限。</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>書き込みBPS制限</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>希望する秒あたり書き込みバイト数の上限。</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>書き込みIOPS制限</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>希望する秒あたり書き込み操作数の上限。</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPSバースト</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>希望する入出力バイト数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPSバースト</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>希望する入出力操作数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>読み取りBPSバースト</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>希望する読み取りバイト数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>読み取りIOPSバースト</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>希望する読み取り操作数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>書き込みBPSバースト</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>希望する書き込みバイト数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>書き込みIOPSバースト</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>希望する書き込み操作数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>実行中</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>実行</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>実行済み</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>不明なタスク</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>作成中</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>作成</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>更新中</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>削除中</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>複製中</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>複製</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>コピー中</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>コピー</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>フラット化中</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>フラット化</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>ロールバック中</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>ロールバック</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>移動中</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>移動</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>移動済み</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>イメージが見つかりませんでした。</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>復元中</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>復元</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>消去中</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>消去</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>すべてのプール</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>ピアを含んでいるためミラーリングを無効化できません。</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},bOMt:function(t,e,n){!function(t){"use strict";t.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},bOdf:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("5+tZ");function r(t,e){return Object(a.a)(t,e,1)}},bQrF:function(t,e,n){var a=n("ZPW6"),r=n("JEWA"),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){var s=t[e];i.call(t,e)&&r(s,n)&&(void 0!==n||e in t)||a(t,e,n)}},bWFh:function(t,e,n){"use strict";var a=n("I+eb"),r=n("2oRo"),i=n("lMq5"),s=n("busE"),u=n("8YOa"),o=n("ImZN"),l=n("GarU"),d=n("hh1v"),c=n("0Dky"),f=n("HH4o"),h=n("1E5z"),g=n("cVYH");t.exports=function(t,e,n){var p=-1!==t.indexOf("Map"),b=-1!==t.indexOf("Weak"),m=p?"set":"add",y=r[t],v=y&&y.prototype,x=y,_={},T=function(t){var e=v[t];s(v,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(b&&!d(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return b&&!d(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(b&&!d(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof y||!(b||v.forEach&&!c((function(){(new y).entries().next()})))))x=n.getConstructor(e,t,p,m),u.REQUIRED=!0;else if(i(t,!0)){var w=new x,O=w[m](b?{}:-0,1)!=w,S=c((function(){w.has(1)})),I=f((function(t){new y(t)})),N=!b&&c((function(){for(var t=new y,e=5;e--;)t[m](e,e);return!t.has(-0)}));I||((x=e((function(e,n){l(e,x,t);var a=g(new y,e,x);return null!=n&&o(n,a[m],a,p),a}))).prototype=v,v.constructor=x),(S||N)&&(T("delete"),T("has"),p&&T("get")),(N||O)&&T(m),b&&v.clear&&delete v.clear}return _[t]=x,a({global:!0,forced:x!=y},_),h(x,t),b||n.setStrong(x,t,p),x}},bWnS:function(t,e,n){var a=n("qN6l");t.exports=function(){this.__data__=a?a(null):{},this.size=0}},bX23:function(t,e){t.exports=function(t,e,n,a){for(var r=t.length,i=n+(a?1:-1);a?i--:++i<r;)if(e(t[i],i,t))return i;return-1}},bXm7:function(t,e,n){!function(t){"use strict";var e={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"};t.defineLocale("kk",{months:"қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан".split("_"),monthsShort:"қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел".split("_"),weekdays:"жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі".split("_"),weekdaysShort:"жек_дүй_сей_сәр_бей_жұм_сен".split("_"),weekdaysMin:"жк_дй_сй_ср_бй_жм_сн".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",ss:"%d секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(t){return t+(e[t]||e[t%10]||e[t>=100?100:null])},week:{dow:1,doy:7}})}(n("wd/R"))},bYM6:function(t,e,n){!function(t){"use strict";t.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}})}(n("wd/R"))},bdl3:function(t,e,n){var a=n("ktBm");t.exports=function(t){return a(this.__data__,t)>-1}},bpih:function(t,e,n){!function(t){"use strict";t.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(t){return(/^[0-9].+$/.test(t)?"tra":"in")+" "+t},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},busE:function(t,e,n){var a=n("2oRo"),r=n("kRJp"),i=n("UTVS"),s=n("zk60"),u=n("iSVu"),o=n("afO8"),l=o.get,d=o.enforce,c=String(String).split("String");(t.exports=function(t,e,n,u){var o=!!u&&!!u.unsafe,l=!!u&&!!u.enumerable,f=!!u&&!!u.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||r(n,"name",e),d(n).source=c.join("string"==typeof e?e:"")),t!==a?(o?!f&&t[e]&&(l=!0):delete t[e],l?t[e]=n:r(t,e,n)):l?t[e]=n:s(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&l(this).source||u(this)}))},bxKX:function(t,e,n){!function(t){"use strict";t.defineLocale("it-ch",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(t){return(/^[0-9].+$/.test(t)?"tra":"in")+" "+t},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},bxSN:function(t,e,n){var a=n("mrSG").__decorate;Object.defineProperty(e,"__esModule",{value:!0});var r=n("8Y7J"),i=n("moLw");e.ClickOutsideModule=function(){return a([r.NgModule({declarations:[i.ClickOutsideDirective],exports:[i.ClickOutsideDirective]})],(function(){}))}()},c2HN:function(t,e,n){"use strict";function a(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}n.d(e,"a",(function(){return a}))},cRL0:function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},cRix:function(t,e,n){!function(t){"use strict";var e="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),n="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");t.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsParseExact:!0,weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}})}(n("wd/R"))},cUpR:function(t,e,n){"use strict";n.d(e,"p",(function(){return _})),n.d(e,"a",(function(){return dt})),n.d(e,"h",(function(){return lt})),n.d(e,"c",(function(){return T})),n.d(e,"d",(function(){return w})),n.d(e,"e",(function(){return W})),n.d(e,"f",(function(){return K})),n.d(e,"g",(function(){return $})),n.d(e,"b",(function(){return tt})),n.d(e,"q",(function(){return s})),n.d(e,"j",(function(){return k})),n.d(e,"i",(function(){return H})),n.d(e,"m",(function(){return Z})),n.d(e,"n",(function(){return X})),n.d(e,"l",(function(){return I})),n.d(e,"o",(function(){return S})),n.d(e,"k",(function(){return et}));var a=n("SVse"),r=n("8Y7J");let i=null;function s(){return i}const u={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},o={"\b":"Backspace","\t":"Tab","\7f":"Delete","\e":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},l={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\90":"NumLock"},d=(()=>{if(r["ɵglobal"].Node)return r["ɵglobal"].Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class c extends class extends class{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const t=this.createElement("div",document);if(null!=this.getStyle(t,"animationName"))this._animationPrefix="";else{const e=["Webkit","Moz","O","ms"];for(let n=0;n<e.length;n++)if(null!=this.getStyle(t,e[n]+"AnimationName")){this._animationPrefix="-"+e[n].toLowerCase()+"-";break}}const e={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};Object.keys(e).forEach(n=>{null!=this.getStyle(t,n)&&(this._transitionEnd=e[n])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new c,i||(i=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return u}contains(t,e){return d.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let a=0;a<e.length;a++)n[a]=e[a];return n}clearNodes(t){for(;t.firstChild;)t.removeChild(t.firstChild)}appendChild(t,e){t.appendChild(e)}removeChild(t,e){t.removeChild(e)}replaceChild(t,e,n){t.replaceChild(e,n)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}insertBefore(t,e,n){t.insertBefore(n,e)}insertAllBefore(t,e,n){n.forEach(n=>t.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const a=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return a.setAttribute(t,e),a}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const a=this.getStyle(t,e)||"";return n?a==n:a.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let a=0;a<n.length;a++){const t=n.item(a);e.set(t.name,t.value)}return e}hasAttribute(t,e){return t.hasAttribute(e)}hasAttributeNS(t,e,n){return t.hasAttributeNS(e,n)}getAttribute(t,e){return t.getAttribute(e)}getAttributeNS(t,e,n){return t.getAttributeNS(e,n)}setAttribute(t,e,n){t.setAttribute(e,n)}setAttributeNS(t,e,n,a){t.setAttributeNS(e,n,a)}removeAttribute(t,e){t.removeAttribute(e)}removeAttributeNS(t,e,n){t.removeAttributeNS(e,n)}templateAwareRoot(t){return this.isTemplateElement(t)?this.content(t):t}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}getBoundingClientRect(t){try{return t.getBoundingClientRect()}catch(e){return{top:0,bottom:0,left:0,right:0,width:0,height:0}}}getTitle(t){return t.title}setTitle(t,e){t.title=e||""}elementMatches(t,e){return!!this.isElementNode(t)&&(t.matches&&t.matches(e)||t.msMatchesSelector&&t.msMatchesSelector(e)||t.webkitMatchesSelector&&t.webkitMatchesSelector(e))}isTemplateElement(t){return this.isElementNode(t)&&"TEMPLATE"===t.nodeName}isTextNode(t){return t.nodeType===Node.TEXT_NODE}isCommentNode(t){return t.nodeType===Node.COMMENT_NODE}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}hasShadowRoot(t){return null!=t.shadowRoot&&t instanceof HTMLElement}isShadowRoot(t){return t instanceof DocumentFragment}importIntoDoc(t){return document.importNode(this.templateAwareRoot(t),!0)}adoptNode(t){return document.adoptNode(t)}getHref(t){return t.getAttribute("href")}getEventKey(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&l.hasOwnProperty(e)&&(e=l[e]))}return o[e]||e}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=h||(h=document.querySelector("base"),h)?h.getAttribute("href"):null;return null==e?null:(n=e,f||(f=document.createElement("a")),f.setAttribute("href",n),"/"===f.pathname.charAt(0)?f.pathname:"/"+f.pathname);var n}resetBaseElement(){h=null}getUserAgent(){return window.navigator.userAgent}setData(t,e,n){this.setAttribute(t,"data-"+e,n)}getData(t,e){return this.getAttribute(t,"data-"+e)}getComputedStyle(t){return getComputedStyle(t)}supportsWebAnimation(){return"function"==typeof Element.prototype.animate}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return Object(a["ɵparseCookieValue"])(document.cookie,t)}setCookie(t,e){document.cookie=encodeURIComponent(t)+"="+encodeURIComponent(e)}}let f,h=null;function g(){return!!window.history.pushState}const p=new r.InjectionToken("TRANSITION_ID"),b=[{provide:r.APP_INITIALIZER,useFactory:function(t,e,n){return()=>{n.get(r.ApplicationInitStatus).donePromise.then(()=>{const n=s();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[p,a.DOCUMENT,r.Injector],multi:!0}];class m{static init(){Object(r.setTestabilityGetter)(new m)}addToWindow(t){r["ɵglobal"].getAngularTestability=(e,n=!0)=>{const a=t.findTestabilityInTree(e,n);if(null==a)throw new Error("Could not find testability for element.");return a},r["ɵglobal"].getAllAngularTestabilities=()=>t.getAllTestabilities(),r["ɵglobal"].getAllAngularRootElements=()=>t.getAllRootElements(),r["ɵglobal"].frameworkStabilizers||(r["ɵglobal"].frameworkStabilizers=[]),r["ɵglobal"].frameworkStabilizers.push(t=>{const e=r["ɵglobal"].getAllAngularTestabilities();let n=e.length,a=!1;const i=function(e){a=a||e,n--,0==n&&t(a)};e.forEach((function(t){t.whenStable(i)}))})}findTestabilityInTree(t,e,n){if(null==e)return null;const a=t.getTestability(e);return null!=a?a:n?s().isShadowRoot(e)?this.findTestabilityInTree(t,s().getHost(e),!0):this.findTestabilityInTree(t,s().parentElement(e),!0):null}}function y(t,e){"undefined"!=typeof COMPILED&&COMPILED||((r["ɵglobal"].ng=r["ɵglobal"].ng||{})[t]=e)}const v=(()=>({ApplicationRef:r.ApplicationRef,NgZone:r.NgZone}))();function x(t){return Object(r.getDebugNode)(t)}function _(t){return y("probe",x),y("coreTokens",Object.assign({},v,(t||[]).reduce((t,e)=>(t[e.name]=e.token,t),{}))),()=>x}const T=new r.InjectionToken("EventManagerPlugins");class w{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let a=0;a<n.length;a++){const e=n[a];if(e.supports(t))return this._eventNameToPlugin.set(t,e),e}throw new Error("No event manager plugin found for event "+t)}}class O{constructor(t){this._doc=t}addGlobalEventListener(t,e,n){const a=s().getGlobalEventTarget(this._doc,t);if(!a)throw new Error(`Unsupported event target ${a} for event ${e}`);return this.addEventListener(a,e,n)}}class S{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}class I extends S{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>s().remove(t))}}const N={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},C=/%COMP%/g;function R(t,e,n){for(let a=0;a<e.length;a++){let r=e[a];Array.isArray(r)?R(t,r,n):(r=r.replace(C,t),n.push(r))}return n}function A(t){return e=>{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}class k{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new E(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case r.ViewEncapsulation.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new P(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case r.ViewEncapsulation.Native:case r.ViewEncapsulation.ShadowDom:return new M(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=R(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}class E{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(N[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,a){if(a){e=a+":"+e;const r=N[a];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const a=N[n];a?t.removeAttributeNS(a,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,a){a&r.RendererStyleFlags2.DashCase?t.style.setProperty(e,n,a&r.RendererStyleFlags2.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&r.RendererStyleFlags2.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){D(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return D(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,A(n)):this.eventManager.addEventListener(t,e,A(n))}}const L=(()=>"@".charCodeAt(0))();function D(t,e){if(t.charCodeAt(0)===L)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class P extends E{constructor(t,e,n,a){super(t),this.component=n;const r=R(a+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr="_ngcontent-%COMP%".replace(C,a+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(C,t)}(a+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class M extends E{constructor(t,e,n,a){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=a,this.shadowRoot=a.encapsulation===r.ViewEncapsulation.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const i=R(a.id,a.styles,[]);for(let r=0;r<i.length;r++){const t=document.createElement("style");t.textContent=i[r],this.shadowRoot.appendChild(t)}}nodeOrShadowRoot(t){return t===this.hostEl?this.shadowRoot:t}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}appendChild(t,e){return super.appendChild(this.nodeOrShadowRoot(t),e)}insertBefore(t,e,n){return super.insertBefore(this.nodeOrShadowRoot(t),e,n)}removeChild(t,e){return super.removeChild(this.nodeOrShadowRoot(t),e)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}}const q=(()=>"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),j=q("addEventListener"),F=q("removeEventListener"),V={},G="__zone_symbol__propagationStopped",B=(()=>{const t="undefined"!=typeof Zone&&Zone[q("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),z=function(t){return!!B&&B.hasOwnProperty(t)},Y=function(t){const e=V[t.type];if(!e)return;const n=this[e];if(!n)return;const a=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,a):t.handler.apply(this,a)}{const e=n.slice();for(let n=0;n<e.length&&!0!==t[G];n++){const t=e[n];t.zone!==Zone.current?t.zone.run(t.handler,this,a):t.handler.apply(this,a)}}};class H extends O{constructor(t,e,n){super(t),this.ngZone=e,n&&Object(a.isPlatformServer)(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[G]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let a=n;if(!t[j]||r.NgZone.isInAngularZone()&&!z(e))t.addEventListener(e,a,!1);else{let n=V[e];n||(n=V[e]=q("ANGULAR"+e+"FALSE"));let r=t[n];const i=r&&r.length>0;r||(r=t[n]=[]);const s=z(e)?Zone.root:Zone.current;if(0===r.length)r.push({zone:s,handler:a});else{let t=!1;for(let e=0;e<r.length;e++)if(r[e].handler===a){t=!0;break}t||r.push({zone:s,handler:a})}i||t[j](e,Y,!1)}return()=>this.removeEventListener(t,e,a)}removeEventListener(t,e,n){let a=t[F];if(!a)return t.removeEventListener.apply(t,[e,n,!1]);let r=V[e],i=r&&t[r];if(!i)return t.removeEventListener.apply(t,[e,n,!1]);let s=!1;for(let u=0;u<i.length;u++)if(i[u].handler===n){s=!0,i.splice(u,1);break}s?0===i.length&&a.apply(t,[e,Y,!1]):t.removeEventListener.apply(t,[e,n,!1])}}const U={pan:!0,panstart:!0,panmove:!0,panend:!0,pancancel:!0,panleft:!0,panright:!0,panup:!0,pandown:!0,pinch:!0,pinchstart:!0,pinchmove:!0,pinchend:!0,pinchcancel:!0,pinchin:!0,pinchout:!0,press:!0,pressup:!0,rotate:!0,rotatestart:!0,rotatemove:!0,rotateend:!0,rotatecancel:!0,swipe:!0,swipeleft:!0,swiperight:!0,swipeup:!0,swipedown:!0,tap:!0},W=new r.InjectionToken("HammerGestureConfig"),K=new r.InjectionToken("HammerLoader");class ${constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}class Z extends O{constructor(t,e,n,a){super(t),this._config=e,this.console=n,this.loader=a}supports(t){return!(!U.hasOwnProperty(t.toLowerCase())&&!this.isCustomEvent(t)||!window.Hammer&&!this.loader&&(this.console.warn(`The "${t}" event cannot be bound because Hammer.JS is not loaded and no custom loader has been specified.`),1))}addEventListener(t,e,n){const a=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let a=!1,r=()=>{a=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(r=()=>{});a||(r=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom Hammer.JS loader failed.`),r=()=>{}}),()=>{r()}}return a.runOutsideAngular(()=>{const r=this._config.buildHammer(t),i=function(t){a.runGuarded((function(){n(t)}))};return r.on(e,i),()=>{r.off(e,i),"function"==typeof r.destroy&&r.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}const J=["alt","control","meta","shift"],Q={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};class X extends O{constructor(t){super(t)}supports(t){return null!=X.parseEventName(t)}addEventListener(t,e,n){const a=X.parseEventName(e),r=X.eventCallback(a.fullKey,n,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>s().onAndCancel(t,a.domEventName,r))}static parseEventName(t){const e=t.toLowerCase().split("."),n=e.shift();if(0===e.length||"keydown"!==n&&"keyup"!==n)return null;const a=X._normalizeKey(e.pop());let r="";if(J.forEach(t=>{const n=e.indexOf(t);n>-1&&(e.splice(n,1),r+=t+".")}),r+=a,0!=e.length||0===a.length)return null;const i={};return i.domEventName=n,i.fullKey=r,i}static getEventFullKey(t){let e="",n=s().getEventKey(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),J.forEach(a=>{a!=n&&(0,Q[a])(t)&&(e+=a+".")}),e+=n,e}static eventCallback(t,e,n){return a=>{X.getEventFullKey(a)===t&&n.runGuarded(()=>e(a))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}class tt{}class et extends tt{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case r.SecurityContext.NONE:return e;case r.SecurityContext.HTML:return e instanceof at?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),Object(r["ɵ_sanitizeHtml"])(this._doc,String(e)));case r.SecurityContext.STYLE:return e instanceof rt?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),Object(r["ɵ_sanitizeStyle"])(e));case r.SecurityContext.SCRIPT:if(e instanceof it)return e.changingThisBreaksApplicationSecurity;throw this.checkNotSafeValue(e,"Script"),new Error("unsafe value used in a script context");case r.SecurityContext.URL:return e instanceof ut||e instanceof st?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"URL"),Object(r["ɵ_sanitizeUrl"])(String(e)));case r.SecurityContext.RESOURCE_URL:if(e instanceof ut)return e.changingThisBreaksApplicationSecurity;throw this.checkNotSafeValue(e,"ResourceURL"),new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see http://g.co/ng/security#xss)`)}}checkNotSafeValue(t,e){if(t instanceof nt)throw new Error(`Required a safe ${e}, got a ${t.getTypeName()} (see http://g.co/ng/security#xss)`)}bypassSecurityTrustHtml(t){return new at(t)}bypassSecurityTrustStyle(t){return new rt(t)}bypassSecurityTrustScript(t){return new it(t)}bypassSecurityTrustUrl(t){return new st(t)}bypassSecurityTrustResourceUrl(t){return new ut(t)}}class nt{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"}}class at extends nt{getTypeName(){return"HTML"}}class rt extends nt{getTypeName(){return"Style"}}class it extends nt{getTypeName(){return"Script"}}class st extends nt{getTypeName(){return"URL"}}class ut extends nt{getTypeName(){return"ResourceURL"}}const ot=[{provide:r.PLATFORM_ID,useValue:a["ɵPLATFORM_BROWSER_ID"]},{provide:r.PLATFORM_INITIALIZER,useValue:function(){c.makeCurrent(),m.init()},multi:!0},{provide:a.PlatformLocation,useClass:class extends a.PlatformLocation{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=s().getLocation(),this._history=s().getHistory()}getBaseHrefFromDOM(){return s().getBaseHref(this._doc)}onPopState(t){s().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){s().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){g()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){g()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}},deps:[a.DOCUMENT]},{provide:a.DOCUMENT,useFactory:function(){return document},deps:[]}],lt=Object(r.createPlatformFactory)(r.platformCore,"browser",ot);class dt{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:dt,providers:[{provide:r.APP_ID,useValue:t.appId},{provide:p,useExisting:r.APP_ID},b]}}}"undefined"!=typeof window&&window},cVYH:function(t,e,n){var a=n("hh1v"),r=n("0rvr");t.exports=function(t,e,n){var i,s;return r&&"function"==typeof(i=e.constructor)&&i!==n&&a(s=i.prototype)&&s!==n.prototype&&r(t,s),t}},cjaf:function(t,e){t.exports=function(t){return this.__data__.get(t)}},cp0P:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("HDdC"),r=n("DH7j"),i=n("lJxs"),s=n("XoHu"),u=n("Cfvw");function o(...t){if(1===t.length){const e=t[0];if(Object(r.a)(e))return l(e,null);if(Object(s.a)(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return l(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return l(t=1===t.length&&Object(r.a)(t[0])?t[0]:t,null).pipe(Object(i.a)(t=>e(...t)))}return l(t,null)}function l(t,e){return new a.a(n=>{const a=t.length;if(0===a)return void n.complete();const r=new Array(a);let i=0,s=0;for(let o=0;o<a;o++){const l=Object(u.a)(t[o]);let d=!1;n.add(l.subscribe({next:t=>{d||(d=!0,s++),r[o]=t},error:t=>n.error(t),complete:()=>{i++,i!==a&&d||(s===a&&n.next(e?e.reduce((t,e,n)=>(t[e]=r[n],t),{}):r),n.complete())}}))}})}},crnd:function(t,e){function n(t){return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}))}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="crnd"},czMo:function(t,e,n){!function(t){"use strict";t.defineLocale("en-il",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}})}(n("wd/R"))},"d+Og":function(t,e,n){"use strict";var a=n("LvDl");let r=(()=>{class t{constructor(t){if(this.type=t,!this.isValidType())throw new Error("Wrong placement group category type");this.setTypeStates()}isValidType(){return t.VALID_CATEGORIES.includes(this.type)}setTypeStates(){switch(this.type){case t.CATEGORY_CLEAN:this.states=["active","clean"];break;case t.CATEGORY_WORKING:this.states=["activating","backfill_wait","backfilling","creating","deep","degraded","forced_backfill","forced_recovery","peering","peered","recovering","recovery_wait","repair","scrubbing","snaptrim","snaptrim_wait"];break;case t.CATEGORY_WARNING:this.states=["backfill_toofull","backfill_unfound","down","incomplete","inconsistent","recovery_toofull","recovery_unfound","remapped","snaptrim_error","stale","undersized"];break;default:this.states=[]}}}return t.CATEGORY_CLEAN="clean",t.CATEGORY_WORKING="working",t.CATEGORY_WARNING="warning",t.CATEGORY_UNKNOWN="unknown",t.VALID_CATEGORIES=[t.CATEGORY_CLEAN,t.CATEGORY_WORKING,t.CATEGORY_WARNING,t.CATEGORY_UNKNOWN],t})();var i=n("8Y7J"),s=n("kJI8");n.d(e,"a",(function(){return u}));let u=(()=>{class t{constructor(){this.categories=this.createCategories()}getAllTypes(){return r.VALID_CATEGORIES}getTypeByStates(t){const e=this.getPgStatesFromText(t);if(0===e.length)return r.CATEGORY_UNKNOWN;const n=a.zipObject(r.VALID_CATEGORIES,r.VALID_CATEGORIES.map(t=>a.intersection(this.categories[t].states,e).length));if(n[r.CATEGORY_WARNING]>0)return r.CATEGORY_WARNING;const i=n[r.CATEGORY_WORKING];return e.length>n[r.CATEGORY_CLEAN]+i?r.CATEGORY_UNKNOWN:i?r.CATEGORY_WORKING:r.CATEGORY_CLEAN}createCategories(){return a.zipObject(r.VALID_CATEGORIES,r.VALID_CATEGORIES.map(t=>new r(t)))}getPgStatesFromText(t){const e=t.replace(/[^a-z]+/g," ").trim().split(" ");return a.uniq(e)}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:s.a}),t})()},dApe:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("8Y7J"),r=n("2vnA"),i=n("MP8s"),s=n("X+05"),u=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},o=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},l=function(){function t(t){var e=this;this.treeModel=t,this.yBlocks=0,this.x=0,this.viewportHeight=null,this.viewport=null,t.virtualScroll=this,this._dispose=[Object(r.b)((function(){return e.fixScroll()}))]}return Object.defineProperty(t.prototype,"y",{get:function(){return 150*this.yBlocks},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalHeight",{get:function(){return this.treeModel.virtualRoot?this.treeModel.virtualRoot.height:0},enumerable:!0,configurable:!0}),t.prototype.fireEvent=function(t){this.treeModel.fireEvent(t)},t.prototype.init=function(){var t=this,e=this.recalcPositions.bind(this);e(),this._dispose=this._dispose.concat([Object(r.e)((function(){return t.treeModel.roots}),e),Object(r.e)((function(){return t.treeModel.expandedNodeIds}),e),Object(r.e)((function(){return t.treeModel.hiddenNodeIds}),e)]),this.treeModel.subscribe(s.a.loadNodeChildren,e)},t.prototype.isEnabled=function(){return this.treeModel.options.useVirtualScroll},t.prototype._setYBlocks=function(t){this.yBlocks=t},t.prototype.recalcPositions=function(){this.treeModel.virtualRoot.height=this._getPositionAfter(this.treeModel.getVisibleRoots(),0)},t.prototype._getPositionAfter=function(t,e){var n=this,a=e;return t.forEach((function(t){t.position=a,a=n._getPositionAfterNode(t,a)})),a},t.prototype._getPositionAfterNode=function(t,e){var n=t.getSelfHeight()+e;return t.children&&t.isExpanded&&(n=this._getPositionAfter(t.visibleChildren,n)),t.height=n-e,n},t.prototype.clear=function(){this._dispose.forEach((function(t){return t()}))},t.prototype.setViewport=function(t){Object.assign(this,{viewport:t,x:t.scrollLeft,yBlocks:Math.round(t.scrollTop/150),viewportHeight:t.getBoundingClientRect?t.getBoundingClientRect().height:0})},t.prototype.scrollIntoView=function(t,e,n){if(void 0===n&&(n=!0),t.options.scrollContainer){var a=t.options.scrollContainer,r=a.getBoundingClientRect().height,i=a.getBoundingClientRect().top,s=this.viewport.getBoundingClientRect().top+t.position-i;(e||s<a.scrollTop||s+t.getSelfHeight()>a.scrollTop+r)&&(a.scrollTop=n?s-r/2:s)}else(e||t.position<this.y||t.position+t.getSelfHeight()>this.y+this.viewportHeight)&&this.viewport&&(this.viewport.scrollTop=n?t.position-this.viewportHeight/2:t.position,this._setYBlocks(Math.floor(this.viewport.scrollTop/150)))},t.prototype.getViewportNodes=function(t){var e=this;if(!t)return[];var n=t.filter((function(t){return!t.isHidden}));if(!this.isEnabled())return n;if(!this.viewportHeight||!n.length)return[];var a=d(n,(function(t){return t.position+500>e.y||t.position+t.height>e.y})),r=d(n,(function(t){return t.position-500>e.y+e.viewportHeight}),a),i=[];if(r-a>(1e3+this.viewportHeight)/n[0].treeModel.options.options.nodeHeight)return[];for(var s=a;s<=r;s++)i.push(n[s]);return i},t.prototype.fixScroll=function(){var t=Math.max(0,this.totalHeight-this.viewportHeight);this.y<0&&this._setYBlocks(0),this.y>t&&this._setYBlocks(t/150)},u([r.d,o("design:type",Object)],t.prototype,"yBlocks",void 0),u([r.d,o("design:type",Object)],t.prototype,"x",void 0),u([r.d,o("design:type",Object)],t.prototype,"viewportHeight",void 0),u([r.c,o("design:type",Object),o("design:paramtypes",[])],t.prototype,"y",null),u([r.c,o("design:type",Object),o("design:paramtypes",[])],t.prototype,"totalHeight",null),u([r.a,o("design:type",Function),o("design:paramtypes",[Object]),o("design:returntype",void 0)],t.prototype,"_setYBlocks",null),u([r.a,o("design:type",Function),o("design:paramtypes",[]),o("design:returntype",void 0)],t.prototype,"recalcPositions",null),u([r.a,o("design:type",Function),o("design:paramtypes",[Object]),o("design:returntype",void 0)],t.prototype,"setViewport",null),u([r.a,o("design:type",Function),o("design:paramtypes",[Object,Object,Object]),o("design:returntype",void 0)],t.prototype,"scrollIntoView",null),u([Object(a.Injectable)(),o("design:paramtypes",[i.a])],t)}();function d(t,e,n){void 0===n&&(n=0);for(var a=n,r=t.length-1;a!==r;){var i=Math.floor((a+r)/2);e(t[i])?r=i:a=a===i?r:i}return a}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},dCge:function(t,e){t.exports=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}},dEH0:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return t+" ms"}}},dNwA:function(t,e,n){!function(t){"use strict";t.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",ss:"sekunde %d",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"masiku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}})}(n("wd/R"))},dX5L:function(t,e,n){var a=n("KFwg")(n("Wa4q"),"DataView");t.exports=a},dgut:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("NEZu");n("Fgil");class r{constructor(t){this.dimlessBinaryPipe=t,this.style={height:"30px",width:"100px"},this.colors=[{backgroundColor:"rgba(40,140,234,0.2)",borderColor:"rgba(40,140,234,1)",pointBackgroundColor:"rgba(40,140,234,1)",pointBorderColor:"#fff",pointHoverBackgroundColor:"#fff",pointHoverBorderColor:"rgba(40,140,234,0.8)"}],this.options={animation:{duration:0},responsive:!0,maintainAspectRatio:!1,legend:{display:!1},elements:{line:{borderWidth:1}},tooltips:{enabled:!1,mode:"index",intersect:!1,custom:void 0,callbacks:{label:t=>this.isBinary?this.dimlessBinaryPipe.transform(t.yLabel):t.yLabel,title:()=>""}},scales:{yAxes:[{display:!1}],xAxes:[{display:!1}]}},this.datasets=[{data:[]}],this.labels=[]}ngOnInit(){const t=new a.a(this.chartCanvasRef,this.chartTooltipRef,(t,e)=>e+t.caretX+"px",t=>t.caretY-t.height-t.yPadding-5+"px");t.customColors={backgroundColor:this.colors[0].pointBackgroundColor,borderColor:this.colors[0].pointBorderColor},this.options.tooltips.custom=e=>{t.customTooltips(e)}}ngOnChanges(t){this.datasets[0].data=t.data.currentValue,this.labels=[...Array(t.data.currentValue.length)]}}},"e+ae":function(t,e,n){!function(t){"use strict";var e="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),n="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");function a(t){return t>1&&t<5}function r(t,e,n,r){var i=t+" ";switch(n){case"s":return e||r?"pár sekúnd":"pár sekundami";case"ss":return e||r?i+(a(t)?"sekundy":"sekúnd"):i+"sekundami";case"m":return e?"minúta":r?"minútu":"minútou";case"mm":return e||r?i+(a(t)?"minúty":"minút"):i+"minútami";case"h":return e?"hodina":r?"hodinu":"hodinou";case"hh":return e||r?i+(a(t)?"hodiny":"hodín"):i+"hodinami";case"d":return e||r?"deň":"dňom";case"dd":return e||r?i+(a(t)?"dni":"dní"):i+"dňami";case"M":return e||r?"mesiac":"mesiacom";case"MM":return e||r?i+(a(t)?"mesiace":"mesiacov"):i+"mesiacmi";case"y":return e||r?"rok":"rokom";case"yy":return e||r?i+(a(t)?"roky":"rokov"):i+"rokmi"}}t.defineLocale("sk",{months:e,monthsShort:n,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:r,ss:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},e0ae:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=function(t,e,n){this.name=t,this.version=e,this.os=n,this.type="browser"},r=function(t){this.version=t,this.type="node",this.name="node",this.os=process.platform},i=function(t,e,n,a){this.name=t,this.version=e,this.os=n,this.bot=a,this.type="bot-device"},s=function(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null},u=/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,o=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["vivaldi",/Vivaldi\/([0-9\.]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/Edg\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FBAV\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["searchbot",/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/]],l=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function d(t){return t?c(t):"undefined"!=typeof navigator?c(navigator.userAgent):"undefined"!=typeof process&&process.version?new r(process.version.slice(1)):null}function c(t){var e=function(t){return""!==t&&o.reduce((function(e,n){var a=n[0];if(e)return e;var r=n[1].exec(t);return!!r&&[a,r]}),!1)}(t);if(!e)return null;var n=e[0],r=e[1];if("searchbot"===n)return new s;var d=r[1]&&r[1].split(/[._]/).slice(0,3);d?d.length<3&&(d=function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var a=Array(t),r=0;for(e=0;e<n;e++)for(var i=arguments[e],s=0,u=i.length;s<u;s++,r++)a[r]=i[s];return a}(d,function(t){for(var e=[],n=0;n<t;n++)e.push("0");return e}(3-d.length))):d=[];var c=d.join("."),f=function(t){for(var e=0,n=l.length;e<n;e++){var a=l[e],r=a[0];if(a[1].exec(t))return r}return null}(t),h=u.exec(t);return h&&h[1]?new i(n,c,f,h[1]):new a(n,d.join("."),f)}},eAIQ:function(t,e,n){var a=n("77kF"),r=n("MBcj");t.exports=function(t){return a(t,r(t))}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eH2F:function(t,e){t.exports=function(t){return function(e,n,a){for(var r=-1,i=Object(e),s=a(e),u=s.length;u--;){var o=s[t?u:++r];if(!1===n(i[o],o,i))break}return e}}},eIep:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("l7GE"),r=n("51Dv"),i=n("ZUHj"),s=n("lJxs"),u=n("Cfvw");function o(t,e){return"function"==typeof e?n=>n.pipe(o((n,a)=>Object(u.a)(t(n,a)).pipe(Object(s.a)((t,r)=>e(n,t,a,r))))):e=>e.lift(new l(t))}class l{constructor(t){this.project=t}call(t,e){return e.subscribe(new d(t,this.project))}}class d extends a.a{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(a){return void this.destination.error(a)}this._innerSub(e,t,n)}_innerSub(t,e,n){const a=this.innerSubscription;a&&a.unsubscribe();const s=new r.a(this,e,n),u=this.destination;u.add(s),this.innerSubscription=Object(i.a)(this,t,void 0,void 0,s),this.innerSubscription!==s&&u.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,a,r){this.destination.next(e)}}},eNG0:function(t,e){var n=Object.prototype.toString;t.exports=function(t){return n.call(t)}},eQba:function(t,e,n){var a=n("2zzJ");t.exports=function(t,e,n){var r=null==t?void 0:a(t,e);return void 0===r?n:r}},eTJe:function(t,e,n){"use strict";var a=n("s7LF"),r=n("LvDl"),i=n("cp0P"),s=(n("SgmB"),n("ZDA6"),n("sne2"),n("mtw6")),u=n("QFaf"),o=n("1Ni5"),l=(n("9nlD"),function(t){return t.editing="editing",t}({}));class d{}n.d(e,"a",(function(){return c}));class c{constructor(t,e,n,a,r,i,s){this.route=t,this.router=e,this.roleService=n,this.scopeService=a,this.notificationService=r,this.i18n=i,this.actionLabels=s,this.scopes=[],this.scopes_permissions=[],this.roleFormMode=l,this.resource=this.i18n("role"),this.createForm(),this.listenToChanges()}createForm(){this.roleForm=new u.a({name:new a.i("",{validators:[a.B.required],asyncValidators:[o.a.unique(this.roleService.exists,this.roleService)]}),description:new a.i(""),scopes_permissions:new a.i({})})}ngOnInit(){this.columns=[{prop:"scope",name:this.i18n("All"),flexGrow:2,cellTemplate:this.cellScopeCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl},{prop:"read",name:this.i18n("Read"),flexGrow:1,cellClass:"text-center",cellTemplate:this.cellPermissionCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl},{prop:"create",name:this.i18n("Create"),flexGrow:1,cellClass:"text-center",cellTemplate:this.cellPermissionCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl},{prop:"update",name:this.i18n("Update"),flexGrow:1,cellClass:"text-center",cellTemplate:this.cellPermissionCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl},{prop:"delete",name:this.i18n("Delete"),flexGrow:1,cellClass:"text-center",cellTemplate:this.cellPermissionCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl}],this.router.url.startsWith("/user-management/roles/edit")?(this.mode=this.roleFormMode.editing,this.action=this.actionLabels.EDIT):this.action=this.actionLabels.CREATE,this.mode===this.roleFormMode.editing?this.initEdit():this.initCreate()}initCreate(){this.scopeService.list().subscribe(t=>{this.scopes=t,this.roleForm.get("scopes_permissions").setValue({})})}initEdit(){this.roleForm.get("name").disable(),this.route.params.subscribe(t=>{const e=[];e.push(this.scopeService.list()),e.push(this.roleService.get(t.name)),Object(i.a)(e).subscribe(t=>{this.scopes=t[0],["name","description","scopes_permissions"].forEach(e=>this.roleForm.get(e).setValue(t[1][e]))})})}listenToChanges(){this.roleForm.get("scopes_permissions").valueChanges.subscribe(t=>{const e=[];r.each(this.scopes,n=>{const a={read:!1,create:!1,update:!1,delete:!1};a.scope=n,n in t&&r.each(t[n],t=>{a[t]=!0}),e.push(a)}),this.scopes_permissions=e})}isRowChecked(t){const e=r.find(this.scopes_permissions,e=>e.scope===t);return!r.isUndefined(e)&&e.read&&e.create&&e.update&&e.delete}isHeaderChecked(t){let e=[t];return"scope"===t&&(e=["read","create","update","delete"]),e.every(t=>this.scopes_permissions.every(e=>e[t]))}onClickCellCheckbox(t,e,n=null){const a=r.cloneDeep(this.roleForm.getValue("scopes_permissions"));let i=[e];"scope"===e&&(i=["read","create","update","delete"]),t in a||(a[t]=[]),n&&n.target.checked||!r.isEqual(i.sort(),r.intersection(a[t],i).sort())?a[t]=r.union(a[t],i):(a[t]=r.difference(a[t],i),r.isEmpty(a[t])&&r.unset(a,t)),this.roleForm.get("scopes_permissions").setValue(a)}onClickHeaderCheckbox(t,e){const n=r.cloneDeep(this.roleForm.getValue("scopes_permissions"));let a=[t];"scope"===t&&(a=["read","create","update","delete"]),r.each(a,t=>{r.each(this.scopes,a=>{e.target.checked?n[a]=r.union(n[a],[t]):(n[a]=r.difference(n[a],[t]),r.isEmpty(n[a])&&r.unset(n,a))})}),this.roleForm.get("scopes_permissions").setValue(n)}getRequest(){const t=new d;return["name","description","scopes_permissions"].forEach(e=>t[e]=this.roleForm.get(e).value),t}createAction(){const t=this.getRequest();this.roleService.create(t).subscribe(()=>{this.notificationService.show(s.a.success,this.i18n("Created role '{{role_name}}'",{role_name:t.name})),this.router.navigate(["/user-management/roles"])},()=>{this.roleForm.setErrors({cdSubmitButton:!0})})}editAction(){const t=this.getRequest();this.roleService.update(t).subscribe(()=>{this.notificationService.show(s.a.success,this.i18n("Updated role '{{role_name}}'",{role_name:t.name})),this.router.navigate(["/user-management/roles"])},()=>{this.roleForm.setErrors({cdSubmitButton:!0})})}submit(){this.mode===this.roleFormMode.editing?this.editAction():this.createAction()}}},efK2:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t,e,n){return a.isString(t)?(n=a.defaultTo(n,""),a.truncate(t,{length:e,omission:n})):t}}},"ej+x":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("lOp/"),r=n("8Y7J"),i=n("IheW");let s=(()=>{class t{constructor(t,e){this.http=t,this.timerService=e,this.API_URL="api/feature_toggles",this.REFRESH_INTERVAL=3e4,this.featureToggleMap$=this.timerService.get(()=>this.http.get(this.API_URL),this.REFRESH_INTERVAL)}get(){return this.featureToggleMap$}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t(r["ɵɵinject"](i.c),r["ɵɵinject"](a.a))},token:t,providedIn:"root"}),t})()},emnf:function(t,e,n){var a=n("YGUN"),r=n("w/8D"),i=n("aHcz");t.exports=r?function(t,e){return r(t,"toString",{configurable:!0,enumerable:!1,value:a(e),writable:!0})}:i},ewvW:function(t,e,n){var a=n("HYAF");t.exports=function(t){return Object(a(t))}},ezUo:function(t,e,n){var a=n("xT5m"),r=n("LxgN"),i=n("K1DE");t.exports=function(t,e,n,s,u,o){var l=1&n,d=t.length,c=e.length;if(d!=c&&!(l&&c>d))return!1;var f=o.get(t),h=o.get(e);if(f&&h)return f==e&&h==t;var g=-1,p=!0,b=2&n?new a:void 0;for(o.set(t,e),o.set(e,t);++g<d;){var m=t[g],y=e[g];if(s)var v=l?s(y,m,g,e,t,o):s(m,y,g,t,e,o);if(void 0!==v){if(v)continue;p=!1;break}if(b){if(!r(e,(function(t,e){if(!i(b,e)&&(m===t||u(m,t,n,s,o)))return b.push(e)}))){p=!1;break}}else if(m!==y&&!u(m,y,n,s,o)){p=!1;break}}return o.delete(t),o.delete(e),p}},"f/UV":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},f5p1:function(t,e,n){var a=n("2oRo"),r=n("iSVu"),i=a.WeakMap;t.exports="function"==typeof i&&/native code/.test(r(i))},f95s:function(t,e,n){"use strict";n.d(e,"a",(function(){return p}));var a=n("2vnA"),r=n("X+05"),i=n("8SuI"),s=n.n(i),u=n("gBXJ"),o=n.n(u),l=n("aTV8"),d=n.n(l),c=n("7VGY"),f=n.n(c),h=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},g=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=function(){function t(t,e,n,a){var r=this;this.data=t,this.parent=e,this.treeModel=n,this.position=0,this.allowDrop=function(t,e){return r.options.allowDrop(t,{parent:r,index:0},e)},this.allowDragoverStyling=function(){return r.options.allowDragoverStyling},null==this.id&&(this.id=Math.floor(1e13*Math.random())),this.index=a,this.getField("children")&&this._initChildren(),this.autoLoadChildren()}return Object.defineProperty(t.prototype,"isHidden",{get:function(){return this.treeModel.isHidden(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isExpanded",{get:function(){return this.treeModel.isExpanded(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isActive",{get:function(){return this.treeModel.isActive(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isFocused",{get:function(){return this.treeModel.isNodeFocused(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isSelected",{get:function(){return this.isSelectable()?this.treeModel.isSelected(this):d()(this.children,(function(t){return t.isSelected}))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isAllSelected",{get:function(){return this.isSelectable()?this.treeModel.isSelected(this):f()(this.children,(function(t){return t.isAllSelected}))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isPartiallySelected",{get:function(){return this.isSelected&&!this.isAllSelected},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"level",{get:function(){return this.parent?this.parent.level+1:0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return this.parent?this.parent.path.concat([this.id]):[]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"elementRef",{get:function(){throw"Element Ref is no longer supported since introducing virtual scroll\n\n      You may use a template to obtain a reference to the element"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"originalNode",{get:function(){return this._originalNode},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasChildren",{get:function(){return!!(this.getField("hasChildren")||this.children&&this.children.length>0)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isCollapsed",{get:function(){return!this.isExpanded},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isLeaf",{get:function(){return!this.hasChildren},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isRoot",{get:function(){return this.parent.data.virtual},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"realParent",{get:function(){return this.isRoot?null:this.parent},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"options",{get:function(){return this.treeModel.options},enumerable:!0,configurable:!0}),t.prototype.fireEvent=function(t){this.treeModel.fireEvent(t)},Object.defineProperty(t.prototype,"displayField",{get:function(){return this.getField("display")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"id",{get:function(){return this.getField("id")},set:function(t){this.setField("id",t)},enumerable:!0,configurable:!0}),t.prototype.getField=function(t){return this.data[this.options[t+"Field"]]},t.prototype.setField=function(t,e){this.data[this.options[t+"Field"]]=e},t.prototype._findAdjacentSibling=function(t,e){void 0===e&&(e=!1);var n=this._getParentsChildren(e),a=n.indexOf(this);return n.length>a+t?n[a+t]:null},t.prototype.findNextSibling=function(t){return void 0===t&&(t=!1),this._findAdjacentSibling(1,t)},t.prototype.findPreviousSibling=function(t){return void 0===t&&(t=!1),this._findAdjacentSibling(-1,t)},t.prototype.getVisibleChildren=function(){return this.visibleChildren},Object.defineProperty(t.prototype,"visibleChildren",{get:function(){return(this.children||[]).filter((function(t){return!t.isHidden}))},enumerable:!0,configurable:!0}),t.prototype.getFirstChild=function(t){void 0===t&&(t=!1);var e=t?this.visibleChildren:this.children;return s()(e||[])},t.prototype.getLastChild=function(t){void 0===t&&(t=!1);var e=t?this.visibleChildren:this.children;return o()(e||[])},t.prototype.findNextNode=function(t,e){return void 0===t&&(t=!0),void 0===e&&(e=!1),t&&this.isExpanded&&this.getFirstChild(e)||this.findNextSibling(e)||this.parent&&this.parent.findNextNode(!1,e)},t.prototype.findPreviousNode=function(t){void 0===t&&(t=!1);var e=this.findPreviousSibling(t);return e?e._getLastOpenDescendant(t):this.realParent},t.prototype._getLastOpenDescendant=function(t){void 0===t&&(t=!1);var e=this.getLastChild(t);return this.isCollapsed||!e?this:e._getLastOpenDescendant(t)},t.prototype._getParentsChildren=function(t){return void 0===t&&(t=!1),this.parent&&(t?this.parent.getVisibleChildren():this.parent.children)||[]},t.prototype.getIndexInParent=function(t){return void 0===t&&(t=!1),this._getParentsChildren(t).indexOf(this)},t.prototype.isDescendantOf=function(t){return this===t||this.parent&&this.parent.isDescendantOf(t)},t.prototype.getNodePadding=function(){return this.options.levelPadding*(this.level-1)+"px"},t.prototype.getClass=function(){return[this.options.nodeClass(this),"tree-node-level-"+this.level].join(" ")},t.prototype.onDrop=function(t){this.mouseAction("drop",t.event,{from:t.element,to:{parent:this,index:0,dropOnNode:!0}})},t.prototype.allowDrag=function(){return this.options.allowDrag(this)},t.prototype.loadNodeChildren=function(){var t=this;return this.options.getChildren?Promise.resolve(this.options.getChildren(this)).then((function(e){e&&(t.setField("children",e),t._initChildren(),t.options.useTriState&&t.treeModel.isSelected(t)&&t.setIsSelected(!0),t.children.forEach((function(t){t.getField("isExpanded")&&t.hasChildren&&t.expand()})))})).then((function(){t.fireEvent({eventName:r.a.loadNodeChildren,node:t})})):Promise.resolve()},t.prototype.expand=function(){return this.isExpanded||this.toggleExpanded(),this},t.prototype.collapse=function(){return this.isExpanded&&this.toggleExpanded(),this},t.prototype.doForAll=function(t){var e=this;Promise.resolve(t(this)).then((function(){e.children&&e.children.forEach((function(e){return e.doForAll(t)}))}))},t.prototype.expandAll=function(){this.doForAll((function(t){return t.expand()}))},t.prototype.collapseAll=function(){this.doForAll((function(t){return t.collapse()}))},t.prototype.ensureVisible=function(){return this.realParent&&(this.realParent.expand(),this.realParent.ensureVisible()),this},t.prototype.toggleExpanded=function(){return this.setIsExpanded(!this.isExpanded),this},t.prototype.setIsExpanded=function(t){return this.hasChildren&&this.treeModel.setExpandedNode(this,t),this},t.prototype.autoLoadChildren=function(){var t=this;this.handler=Object(a.e)((function(){return t.isExpanded}),(function(e){!t.children&&t.hasChildren&&e&&t.loadNodeChildren()}),{fireImmediately:!0})},t.prototype.dispose=function(){this.children&&this.children.forEach((function(t){return t.dispose()})),this.handler&&this.handler(),this.parent=null,this.children=null},t.prototype.setIsActive=function(t,e){return void 0===e&&(e=!1),this.treeModel.setActiveNode(this,t,e),t&&this.focus(this.options.scrollOnActivate),this},t.prototype.isSelectable=function(){return this.isLeaf||!this.children||!this.options.useTriState},t.prototype.setIsSelected=function(t){return this.isSelectable()?this.treeModel.setSelectedNode(this,t):this.visibleChildren.forEach((function(e){return e.setIsSelected(t)})),this},t.prototype.toggleSelected=function(){return this.setIsSelected(!this.isSelected),this},t.prototype.toggleActivated=function(t){return void 0===t&&(t=!1),this.setIsActive(!this.isActive,t),this},t.prototype.setActiveAndVisible=function(t){return void 0===t&&(t=!1),this.setIsActive(!0,t).ensureVisible(),setTimeout(this.scrollIntoView.bind(this)),this},t.prototype.scrollIntoView=function(t){void 0===t&&(t=!1),this.treeModel.virtualScroll.scrollIntoView(this,t)},t.prototype.focus=function(t){void 0===t&&(t=!0);var e=this.treeModel.getFocusedNode();return this.treeModel.setFocusedNode(this),t&&this.scrollIntoView(),e&&this.fireEvent({eventName:r.a.blur,node:e}),this.fireEvent({eventName:r.a.focus,node:this}),this},t.prototype.blur=function(){var t=this.treeModel.getFocusedNode();return this.treeModel.setFocusedNode(null),t&&this.fireEvent({eventName:r.a.blur,node:this}),this},t.prototype.setIsHidden=function(t){this.treeModel.setIsHidden(this,t)},t.prototype.hide=function(){this.setIsHidden(!0)},t.prototype.show=function(){this.setIsHidden(!1)},t.prototype.mouseAction=function(t,e,n){void 0===n&&(n=null),this.treeModel.setFocus(!0);var a=this.options.actionMapping.mouse[t];a&&a(this.treeModel,this,e,n)},t.prototype.getSelfHeight=function(){return this.options.nodeHeight(this)},t.prototype._initChildren=function(){var e=this;this.children=this.getField("children").map((function(n,a){return new t(n,e,e.treeModel,a)}))},h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isHidden",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isExpanded",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isActive",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isFocused",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isSelected",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isAllSelected",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isPartiallySelected",null),h([a.d,g("design:type",Array)],t.prototype,"children",void 0),h([a.d,g("design:type",Number)],t.prototype,"index",void 0),h([a.d,g("design:type",Object)],t.prototype,"position",void 0),h([a.d,g("design:type",Number)],t.prototype,"height",void 0),h([a.c,g("design:type",Number),g("design:paramtypes",[])],t.prototype,"level",null),h([a.c,g("design:type",Array),g("design:paramtypes",[])],t.prototype,"path",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"visibleChildren",null),h([a.a,g("design:type",Function),g("design:paramtypes",[Object]),g("design:returntype",void 0)],t.prototype,"setIsSelected",null),h([a.a,g("design:type",Function),g("design:paramtypes",[]),g("design:returntype",void 0)],t.prototype,"_initChildren",null),t}()},fHMY:function(t,e,n){var a,r=n("glrk"),i=n("N+g0"),s=n("eDl+"),u=n("0BK2"),o=n("G+Rx"),l=n("zBJ4"),d=n("93I0")("IE_PROTO"),c=function(){},f=function(t){return"<script>"+t+"<\/script>"},h=function(){try{a=document.domain&&new ActiveXObject("htmlfile")}catch(r){}var t,e;h=a?function(t){t.write(f("")),t.close();var e=t.parentWindow.Object;return t=null,e}(a):((e=l("iframe")).style.display="none",o.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(f("document.F=Object")),t.close(),t.F);for(var n=s.length;n--;)delete h.prototype[s[n]];return h()};u[d]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(c.prototype=r(t),n=new c,c.prototype=null,n[d]=t):n=h(),void 0===e?n:i(n,e)}},fIUv:function(t,e,n){var a=n("Wa4q");t.exports=function(){return a.Date.now()}},fdAy:function(t,e,n){"use strict";var a=n("I+eb"),r=n("ntOU"),i=n("4WOD"),s=n("0rvr"),u=n("1E5z"),o=n("kRJp"),l=n("busE"),d=n("tiKp"),c=n("xDBR"),f=n("P4y1"),h=n("rpNk"),g=h.IteratorPrototype,p=h.BUGGY_SAFARI_ITERATORS,b=d("iterator"),m=function(){return this};t.exports=function(t,e,n,d,h,y,v){r(n,e,d);var x,_,T,w=function(t){if(t===h&&C)return C;if(!p&&t in I)return I[t];switch(t){case"keys":case"values":case"entries":return function(){return new n(this,t)}}return function(){return new n(this)}},O=e+" Iterator",S=!1,I=t.prototype,N=I[b]||I["@@iterator"]||h&&I[h],C=!p&&N||w(h),R="Array"==e&&I.entries||N;if(R&&(x=i(R.call(new t)),g!==Object.prototype&&x.next&&(c||i(x)===g||(s?s(x,g):"function"!=typeof x[b]&&o(x,b,m)),u(x,O,!0,!0),c&&(f[O]=m))),"values"==h&&N&&"values"!==N.name&&(S=!0,C=function(){return N.call(this)}),c&&!v||I[b]===C||o(I,b,C),f[e]=C,h)if(_={values:w("values"),keys:y?C:w("keys"),entries:w("entries")},v)for(T in _)(p||S||!(T in I))&&l(I,T,_[T]);else a({target:e,proto:!0,forced:p||S},_);return _}},fqHM:function(t,e,n){var a=n("4a5m"),r=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,s=a((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(r,(function(t,n,a,r){e.push(a?r.replace(i,"$1"):n||t)})),e}));t.exports=s},fxL3:function(t,e,n){"use strict";n.d(e,"a",(function(){return g}));var a=n("8Y7J"),r=n("MP8s"),i=n("gk6K"),s=n("mfoh"),u=n("HIU9"),o=n("YCpU"),l=n.n(o),d=n("+Z6c"),c=n.n(d),f=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},h=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},g=function(){function t(t,e){var n=this;this.treeModel=t,this.treeDraggedElement=e,t.eventNames.forEach((function(t){return n[t]=new a.EventEmitter})),t.subscribeToState((function(t){return n.stateChange.emit(t)}))}return Object.defineProperty(t.prototype,"nodes",{set:function(t){},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"options",{set:function(t){},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"focused",{set:function(t){this.treeModel.setFocus(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"state",{set:function(t){this.treeModel.setState(t)},enumerable:!0,configurable:!0}),t.prototype.onKeydown=function(t){if(this.treeModel.isFocused&&!l()(["input","textarea"],document.activeElement.tagName.toLowerCase())){var e=this.treeModel.getFocusedNode();this.treeModel.performKeyAction(e,t)}},t.prototype.onMousedown=function(t){(function t(e,n){return!e||e.localName!==n&&t(e.parentElement,n)})(t.target,"tree-root")&&this.treeModel.setFocus(!1)},t.prototype.ngOnChanges=function(t){(t.options||t.nodes)&&this.treeModel.setData({options:t.options&&t.options.currentValue,nodes:t.nodes&&t.nodes.currentValue,events:c()(this,this.treeModel.eventNames)})},t.prototype.sizeChanged=function(){this.viewportComponent.setViewport()},f([Object(a.ContentChild)("loadingTemplate",{static:!1}),h("design:type",a.TemplateRef)],t.prototype,"loadingTemplate",void 0),f([Object(a.ContentChild)("treeNodeTemplate",{static:!1}),h("design:type",a.TemplateRef)],t.prototype,"treeNodeTemplate",void 0),f([Object(a.ContentChild)("treeNodeWrapperTemplate",{static:!1}),h("design:type",a.TemplateRef)],t.prototype,"treeNodeWrapperTemplate",void 0),f([Object(a.ContentChild)("treeNodeFullTemplate",{static:!1}),h("design:type",a.TemplateRef)],t.prototype,"treeNodeFullTemplate",void 0),f([Object(a.ViewChild)("viewport",{static:!1}),h("design:type",u.a)],t.prototype,"viewportComponent",void 0),f([Object(a.Input)(),h("design:type",Array),h("design:paramtypes",[Array])],t.prototype,"nodes",null),f([Object(a.Input)(),h("design:type",s.b),h("design:paramtypes",[s.b])],t.prototype,"options",null),f([Object(a.Input)(),h("design:type",Boolean),h("design:paramtypes",[Boolean])],t.prototype,"focused",null),f([Object(a.Input)(),h("design:type",Object),h("design:paramtypes",[Object])],t.prototype,"state",null),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"toggleExpanded",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"activate",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"deactivate",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"nodeActivate",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"nodeDeactivate",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"select",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"deselect",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"focus",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"blur",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"updateData",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"initialized",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"moveNode",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"copyNode",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"loadNodeChildren",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"changeFilter",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"event",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"stateChange",void 0),f([Object(a.HostListener)("body: keydown",["$event"]),h("design:type",Function),h("design:paramtypes",[Object]),h("design:returntype",void 0)],t.prototype,"onKeydown",null),f([Object(a.HostListener)("body: mousedown",["$event"]),h("design:type",Function),h("design:paramtypes",[Object]),h("design:returntype",void 0)],t.prototype,"onMousedown",null),f([Object(a.Component)({selector:"Tree, tree-root",providers:[r.a],styles:[],template:'\n      <tree-viewport #viewport>\n          <div\n                  class="angular-tree-component"\n                  [class.node-dragging]="treeDraggedElement.isDragging()"\n                  [class.angular-tree-component-rtl]="treeModel.options.rtl">\n              <tree-node-collection\n                      *ngIf="treeModel.roots"\n                      [nodes]="treeModel.roots"\n                      [treeModel]="treeModel"\n                      [templates]="{\n            loadingTemplate: loadingTemplate,\n            treeNodeTemplate: treeNodeTemplate,\n            treeNodeWrapperTemplate: treeNodeWrapperTemplate,\n            treeNodeFullTemplate: treeNodeFullTemplate\n          }">\n              </tree-node-collection>\n              <tree-node-drop-slot\n                      class="empty-tree-drop-slot"\n                      *ngIf="treeModel.isEmptyTree()"\n                      [dropIndex]="0"\n                      [node]="treeModel.virtualRoot">\n              </tree-node-drop-slot>\n          </div>\n      </tree-viewport>\n  '}),h("design:paramtypes",[r.a,i.a])],t)}()},fzPg:function(t,e,n){!function(t){"use strict";t.defineLocale("yo",{months:"Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀".split("_"),monthsShort:"Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀".split("_"),weekdays:"Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta".split("_"),weekdaysShort:"Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá".split("_"),weekdaysMin:"Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Ònì ni] LT",nextDay:"[Ọ̀la ni] LT",nextWeek:"dddd [Ọsẹ̀ tón'bọ] [ni] LT",lastDay:"[Àna ni] LT",lastWeek:"dddd [Ọsẹ̀ tólọ́] [ni] LT",sameElse:"L"},relativeTime:{future:"ní %s",past:"%s kọjá",s:"ìsẹjú aayá die",ss:"aayá %d",m:"ìsẹjú kan",mm:"ìsẹjú %d",h:"wákati kan",hh:"wákati %d",d:"ọjọ́ kan",dd:"ọjọ́ %d",M:"osù kan",MM:"osù %d",y:"ọdún kan",yy:"ọdún %d"},dayOfMonthOrdinalParse:/ọjọ́\s\d{1,2}/,ordinal:"ọjọ́ %d",week:{dow:1,doy:4}})}(n("wd/R"))},"g6v/":function(t,e,n){var a=n("0Dky");t.exports=!a((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},gBXJ:function(t,e){t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},gHid:function(t,e,n){var a=n("aT2Y"),r=n("Gf4A"),i=n("SQuY");t.exports=function(t,e){var n=this.__data__;if(n instanceof a){var s=n.__data__;if(!r||s.length<199)return s.push([t,e]),this.size=++n.size,this;n=this.__data__=new i(s)}return n.set(t,e),this.size=n.size,this}},gRHU:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("2fFW"),r=n("NJ4a");const i={closed:!0,next(t){},error(t){if(a.a.useDeprecatedSynchronousErrorHandling)throw t;Object(r.a)(t)},complete(){}}},gVVK:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r=t+" ";switch(n){case"s":return e||a?"nekaj sekund":"nekaj sekundami";case"ss":return r+(1===t?e?"sekundo":"sekundi":2===t?e||a?"sekundi":"sekundah":t<5?e||a?"sekunde":"sekundah":"sekund");case"m":return e?"ena minuta":"eno minuto";case"mm":return r+(1===t?e?"minuta":"minuto":2===t?e||a?"minuti":"minutama":t<5?e||a?"minute":"minutami":e||a?"minut":"minutami");case"h":return e?"ena ura":"eno uro";case"hh":return r+(1===t?e?"ura":"uro":2===t?e||a?"uri":"urama":t<5?e||a?"ure":"urami":e||a?"ur":"urami");case"d":return e||a?"en dan":"enim dnem";case"dd":return r+(1===t?e||a?"dan":"dnem":2===t?e||a?"dni":"dnevoma":e||a?"dni":"dnevi");case"M":return e||a?"en mesec":"enim mesecem";case"MM":return r+(1===t?e||a?"mesec":"mesecem":2===t?e||a?"meseca":"mesecema":t<5?e||a?"mesece":"meseci":e||a?"mesecev":"meseci");case"y":return e||a?"eno leto":"enim letom";case"yy":return r+(1===t?e||a?"leto":"letom":2===t?e||a?"leti":"letoma":t<5?e||a?"leta":"leti":e||a?"let":"leti")}}t.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},gekB:function(t,e,n){!function(t){"use strict";var e="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),n=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",e[7],e[8],e[9]];function a(t,a,r,i){var s="";switch(r){case"s":return i?"muutaman sekunnin":"muutama sekunti";case"ss":return i?"sekunnin":"sekuntia";case"m":return i?"minuutin":"minuutti";case"mm":s=i?"minuutin":"minuuttia";break;case"h":return i?"tunnin":"tunti";case"hh":s=i?"tunnin":"tuntia";break;case"d":return i?"päivän":"päivä";case"dd":s=i?"päivän":"päivää";break;case"M":return i?"kuukauden":"kuukausi";case"MM":s=i?"kuukauden":"kuukautta";break;case"y":return i?"vuoden":"vuosi";case"yy":s=i?"vuoden":"vuotta"}return function(t,a){return t<10?a?n[t]:e[t]:t}(t,i)+" "+s}t.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},gjCT:function(t,e,n){!function(t){"use strict";var e={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};t.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(t){return"م"===t},meridiem:function(t,e,n){return t<12?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:0,doy:6}})}(n("wd/R"))},gk6K:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("8Y7J"),r=function(){function t(){this._draggedElement=null}return t.prototype.set=function(t){this._draggedElement=t},t.prototype.get=function(){return this._draggedElement},t.prototype.isDragging=function(){return!!this.get()},function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}([Object(a.Injectable)()],t)}()},glrk:function(t,e,n){var a=n("hh1v");t.exports=function(t){if(!a(t))throw TypeError(String(t)+" is not an object");return t}},gp3X:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse");n("sb0X"),n.d(e,"a",(function(){return i})),n.d(e,"b",(function(){return u}));var i=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function s(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](3,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](4,2)],(function(t,e){var n=e.component,a=t(e,4,0,n.icons.spinner,n.icons.spin);t(e,3,0,a)}),null)}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"button",[["class","btn btn-secondary tc_submitButton"]],[[8,"type",0],[8,"disabled",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.submit(n)&&a),a}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵncd"](null,0),(t()(),a["ɵand"](16777216,null,null,1,null,s)),a["ɵdid"](5,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"btn btn-secondary tc_submitButton",n.btnClass),t(e,5,0,n.loading)}),(function(t,e){var n=e.component;t(e,0,0,n.type,n.loading||n.disabled)}))}},h7vy:function(t,e,n){var a=n("LaC8"),r=n("x3F9");t.exports=function(t){return"number"==typeof t||r(t)&&"[object Number]"==a(t)}},"hKI/":function(t,e){var n=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,r=/^0b[01]+$/i,i=/^0o[0-7]+$/i,s=parseInt,u="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,l=u||o||Function("return this")(),d=Object.prototype.toString,c=Math.max,f=Math.min,h=function(){return l.Date.now()};function g(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function p(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&"[object Symbol]"==d.call(t)}(t))return NaN;if(g(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=g(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(n,"");var u=r.test(t);return u||i.test(t)?s(t.slice(2),u?2:8):a.test(t)?NaN:+t}t.exports=function(t,e,n){var a=!0,r=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return g(n)&&(a="leading"in n?!!n.leading:a,r="trailing"in n?!!n.trailing:r),function(t,e,n){var a,r,i,s,u,o,l=0,d=!1,b=!1,m=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function y(e){var n=a,i=r;return a=r=void 0,l=e,s=t.apply(i,n)}function v(t){return l=t,u=setTimeout(_,e),d?y(t):s}function x(t){var n=t-o;return void 0===o||n>=e||n<0||b&&t-l>=i}function _(){var t=h();if(x(t))return T(t);u=setTimeout(_,function(t){var n=e-(t-o);return b?f(n,i-(t-l)):n}(t))}function T(t){return u=void 0,m&&a?y(t):(a=r=void 0,s)}function w(){var t=h(),n=x(t);if(a=arguments,r=this,o=t,n){if(void 0===u)return v(o);if(b)return u=setTimeout(_,e),y(o)}return void 0===u&&(u=setTimeout(_,e)),s}return e=p(e)||0,g(n)&&(d=!!n.leading,i=(b="maxWait"in n)?c(p(n.maxWait)||0,e):i,m="trailing"in n?!!n.trailing:m),w.cancel=function(){void 0!==u&&clearTimeout(u),l=0,a=o=r=u=void 0},w.flush=function(){return void 0===u?s:T(h())},w}(t,e,{leading:a,maxWait:e,trailing:r})}},hKrs:function(t,e,n){!function(t){"use strict";t.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(t){var e=t%10,n=t%100;return 0===t?t+"-ев":0===n?t+"-ен":n>10&&n<20?t+"-ти":1===e?t+"-ви":2===e?t+"-ри":7===e||8===e?t+"-ми":t+"-ти"},week:{dow:1,doy:7}})}(n("wd/R"))},hTsC:function(t,e,n){var a=n("CNUl"),r=n("NSEa"),i=n("R2cF"),s=n("THq6"),u=n("lEOU");t.exports=function(t,e,n){var o=t.constructor;switch(e){case"[object ArrayBuffer]":return a(t);case"[object Boolean]":case"[object Date]":return new o(+t);case"[object DataView]":return r(t,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return u(t,n);case"[object Map]":return new o;case"[object Number]":case"[object String]":return new o(t);case"[object RegExp]":return i(t);case"[object Set]":return new o;case"[object Symbol]":return s(t)}}},hfeG:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("s7LF"),s=n("ANnk"),u=n("f/UV"),o=n("aexS"),l=n("+gVj"),d=n("EmSq"),c=n("Fgil"),f=n("aXbf"),h=n("pYKc"),g=n("ppaS"),p=n("GiVz"),b=n("mXUL"),m=n("EEJc"),y=n("ajRT"),v=n("gp3X"),x=n("sb0X"),_=n("KVJa"),T=n("Z21x"),w=n("sne2"),O=n("Rf2I"),S=n("LqlI"),I=n("2EZI");n.d(e,"a",(function(){return G}));var N=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function C(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.titleText)}))}function R(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.message)}))}function A(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"label",[["class","cd-col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](3,{required:0}),(t()(),a["ɵted"](4,null,[" "," "]))],(function(t,e){var n=t(e,3,0,!0===(null==e.parent.context.$implicit?null:e.parent.context.$implicit.required));t(e,2,0,"cd-col-form-label",n)}),(function(t,e){t(e,0,0,e.parent.context.$implicit.name),t(e,4,0,e.parent.context.$implicit.label)}))}function k(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"input",[["class","form-control"]],[[8,"type",0],[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var r=!0;return"input"===e&&(r=!1!==a["ɵnov"](t,1)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,1).onTouched()&&r),"compositionstart"===e&&(r=!1!==a["ɵnov"](t,1)._compositionStart()&&r),"compositionend"===e&&(r=!1!==a["ɵnov"](t,1)._compositionEnd(n.target.value)&&r),r}),null,null)),a["ɵdid"](1,16384,null,0,i.e,[a.Renderer2,a.ElementRef,[2,i.b]],null,null),a["ɵprd"](1024,null,i.p,(function(t){return[t]}),[i.e]),a["ɵdid"](3,671744,null,0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,i.q,null,[i.j]),a["ɵdid"](5,16384,null,0,i.r,[[4,i.q]],null,null),a["ɵdid"](6,4210688,null,0,s.a,[[2,u.a],o.a,a.ElementRef],null,null),a["ɵdid"](7,16384,null,0,l.h,[[3,i.d],l.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,3,0,e.parent.context.$implicit.name),t(e,7,0,e.parent.context.$implicit.name)}),(function(t,e){t(e,0,1,[e.parent.context.$implicit.type,e.parent.context.$implicit.name,e.parent.context.$implicit.name,a["ɵnov"](e,5).ngClassUntouched,a["ɵnov"](e,5).ngClassTouched,a["ɵnov"](e,5).ngClassPristine,a["ɵnov"](e,5).ngClassDirty,a["ɵnov"](e,5).ngClassValid,a["ɵnov"](e,5).ngClassInvalid,a["ɵnov"](e,5).ngClassPending,a["ɵnov"](e,7).validClass,a["ɵnov"](e,7).invalidClass])}))}function E(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var r=!0;return"input"===e&&(r=!1!==a["ɵnov"](t,1)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,1).onTouched()&&r),"compositionstart"===e&&(r=!1!==a["ɵnov"](t,1)._compositionStart()&&r),"compositionend"===e&&(r=!1!==a["ɵnov"](t,1)._compositionEnd(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,6).onBlur(n.target.value)&&r),r}),null,null)),a["ɵdid"](1,16384,null,0,i.e,[a.Renderer2,a.ElementRef,[2,i.b]],null,null),a["ɵprd"](1024,null,i.p,(function(t){return[t]}),[i.e]),a["ɵdid"](3,671744,null,0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,i.q,null,[i.j]),a["ɵdid"](5,16384,null,0,i.r,[[4,i.q]],null,null),a["ɵdid"](6,81920,null,0,d.a,[a.ElementRef,i.q,c.a,f.a],null,null),a["ɵdid"](7,4210688,null,0,s.a,[[2,u.a],o.a,a.ElementRef],null,null),a["ɵdid"](8,16384,null,0,l.h,[[3,i.d],l.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,3,0,e.parent.context.$implicit.name),t(e,6,0),t(e,8,0,e.parent.context.$implicit.name)}),(function(t,e){t(e,0,1,[e.parent.context.$implicit.name,e.parent.context.$implicit.name,a["ɵnov"](e,5).ngClassUntouched,a["ɵnov"](e,5).ngClassTouched,a["ɵnov"](e,5).ngClassPristine,a["ɵnov"](e,5).ngClassDirty,a["ɵnov"](e,5).ngClassValid,a["ɵnov"](e,5).ngClassInvalid,a["ɵnov"](e,5).ngClassPending,a["ɵnov"](e,8).validClass,a["ɵnov"](e,8).invalidClass])}))}function L(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),a["ɵdid"](1,147456,null,0,i.v,[a.ElementRef,a.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),a["ɵdid"](2,147456,null,0,i.F,[a.ElementRef,a.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),a["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),(function(t,e){t(e,3,0,null==e.parent.parent.context.$implicit||null==e.parent.parent.context.$implicit.typeConfig?null:e.parent.parent.context.$implicit.typeConfig.placeholder)}))}function D(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),a["ɵdid"](1,147456,null,0,i.v,[a.ElementRef,a.Renderer2,[2,i.A]],{value:[0,"value"]},null),a["ɵdid"](2,147456,null,0,i.F,[a.ElementRef,a.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),a["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.text)}))}function P(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,11,"select",[["class","form-control custom-select"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var r=!0;return"change"===e&&(r=!1!==a["ɵnov"](t,1).onChange(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,1).onTouched()&&r),r}),null,null)),a["ɵdid"](1,16384,null,0,i.A,[a.Renderer2,a.ElementRef],null,null),a["ɵprd"](1024,null,i.p,(function(t){return[t]}),[i.A]),a["ɵdid"](3,671744,null,0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,i.q,null,[i.j]),a["ɵdid"](5,16384,null,0,i.r,[[4,i.q]],null,null),a["ɵdid"](6,4210688,null,0,s.a,[[2,u.a],o.a,a.ElementRef],null,null),a["ɵdid"](7,16384,null,0,l.h,[[3,i.d],l.a],{formControlName:[0,"formControlName"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,L)),a["ɵdid"](9,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,D)),a["ɵdid"](11,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,3,0,e.parent.context.$implicit.name),t(e,7,0,e.parent.context.$implicit.name),t(e,9,0,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.placeholder),t(e,11,0,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.options)}),(function(t,e){t(e,0,0,e.parent.context.$implicit.name,a["ɵnov"](e,5).ngClassUntouched,a["ɵnov"](e,5).ngClassTouched,a["ɵnov"](e,5).ngClassPristine,a["ɵnov"](e,5).ngClassDirty,a["ɵnov"](e,5).ngClassValid,a["ɵnov"](e,5).ngClassInvalid,a["ɵnov"](e,5).ngClassPending,a["ɵnov"](e,7).validClass,a["ɵnov"](e,7).invalidClass)}))}function M(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-select-badges",[],[[8,"id",0]],null,null,h.b,h.a)),a["ɵdid"](1,49152,null,0,g.a,[p.a],{data:[0,"data"],options:[1,"options"],messages:[2,"messages"],customBadges:[3,"customBadges"]},null)],(function(t,e){t(e,1,0,e.parent.context.$implicit.value,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.options,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.messages,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.customBadges)}),(function(t,e){t(e,0,0,e.parent.context.$implicit.name)}))}function q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.getError(e.parent.context.$implicit))}))}function j(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,21,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,20,"div",[],[[8,"className",0],[2,"has-error",null],[2,"has-success",null]],null,null,b.b,b.a)),a["ɵdid"](2,1163264,null,2,l.c,[a.ElementRef,l.g],null,null),a["ɵqud"](603979776,1,{FormControlNames:1}),a["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),a["ɵand"](16777216,null,0,1,null,A)),a["ɵdid"](6,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](7,0,null,0,14,"div",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](9,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpod"](10,{"cd-col-form-input":0,"col-sm-12":1}),(t()(),a["ɵand"](16777216,null,null,2,null,k)),a["ɵdid"](12,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpad"](13,2),(t()(),a["ɵand"](16777216,null,null,1,null,E)),a["ɵdid"](15,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,P)),a["ɵdid"](17,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,M)),a["ɵdid"](19,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,q)),a["ɵdid"](21,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,6,0,e.context.$implicit.label);var r=t(e,10,0,e.context.$implicit.label,!e.context.$implicit.label);t(e,9,0,r);var i=t(e,13,0,"text","number").includes(e.context.$implicit.type);t(e,12,0,i),t(e,15,0,"binary"===e.context.$implicit.type),t(e,17,0,"select"===e.context.$implicit.type),t(e,19,0,"select-badges"===e.context.$implicit.type),t(e,21,0,n.formGroup.showError(e.context.$implicit.name,a["ɵnov"](e.parent,7)))}),(function(t,e){t(e,1,0,a["ɵinlineInterpolate"](1,"form-group row cd-",e.context.$implicit.name,"-form-group"),a["ɵnov"](e,2).hasErrors,a["ɵnov"](e,2).hasSuccess)}))}function F(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,22,"cd-modal",[],null,null,null,m.c,m.b)),a["ɵdid"](1,49152,null,0,y.a,[],{modalRef:[0,"modalRef"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,C)),a["ɵdid"](3,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](4,0,null,1,18,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,17,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var r=!0;return"submit"===e&&(r=!1!==a["ɵnov"](t,7).onSubmit(n)&&r),"reset"===e&&(r=!1!==a["ɵnov"](t,7).onReset()&&r),"submit"===e&&(r=!1!==a["ɵnov"](t,10).onSubmit()&&r),r}),null,null)),a["ɵdid"](6,16384,null,0,i.G,[],null,null),a["ɵdid"](7,540672,[["formDir",4]],0,i.l,[[8,null],[8,null]],{form:[0,"form"]},null),a["ɵprd"](2048,null,i.d,null,[i.l]),a["ɵdid"](9,16384,null,0,i.s,[[4,i.d]],null,null),a["ɵdid"](10,16384,null,0,l.d,[],{formGroup:[0,"formGroup"]},null),(t()(),a["ɵeld"](11,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,R)),a["ɵdid"](13,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,j)),a["ɵdid"](15,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](16,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),a["ɵeld"](17,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](18,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0,r=t.component;return"submitAction"===e&&(a=!1!==r.onSubmitForm(r.formGroup.value)&&a),a}),v.b,v.a)),a["ɵdid"](19,114688,null,0,x.a,[a.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),a["ɵted"](20,0,[" "," "])),(t()(),a["ɵeld"](21,0,null,null,1,"cd-back-button",[],null,null,null,_.b,_.a)),a["ɵdid"](22,49152,null,0,T.a,[r.Location,w.b],{back:[0,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,3,0,n.titleText),t(e,7,0,n.formGroup),t(e,10,0,n.formGroup),t(e,13,0,n.message),t(e,15,0,n.fields),t(e,19,0,n.formGroup),t(e,22,0,n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,5,0,a["ɵnov"](e,9).ngClassUntouched,a["ɵnov"](e,9).ngClassTouched,a["ɵnov"](e,9).ngClassPristine,a["ɵnov"](e,9).ngClassDirty,a["ɵnov"](e,9).ngClassValid,a["ɵnov"](e,9).ngClassInvalid,a["ɵnov"](e,9).ngClassPending),t(e,20,0,n.submitButtonText)}))}function V(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-form-modal",[],null,null,null,F,N)),a["ɵdid"](1,114688,null,0,O.a,[S.a,I.a,f.a,c.a,p.a],null,null)],(function(t,e){t(e,1,0)}),null)}var G=a["ɵccf"]("cd-form-modal",O.a,V,{},{},[])},hh1v:function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},hmSm:function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},honF:function(t,e,n){!function(t){"use strict";var e={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},n={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"};t.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",ss:"%d စက္ကန့်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(t){return t.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},week:{dow:1,doy:4}})}(n("wd/R"))},hpHm:function(t,e,n){"use strict";n.d(e,"a",(function(){return g})),n.d(e,"b",(function(){return p})),n.d(e,"c",(function(){return c})),n.d(e,"d",(function(){return h})),n.d(e,"e",(function(){return u})),n.d(e,"f",(function(){return s})),n.d(e,"g",(function(){return l})),n.d(e,"h",(function(){return o})),n.d(e,"i",(function(){return y})),n.d(e,"j",(function(){return d}));var a=n("8Y7J");class r{constructor(t,e){this.open=t,this.close=e||t}isManual(){return"manual"===this.open||"manual"===this.close}}const i={hover:["mouseover","mouseout"],focus:["focusin","focusout"]};function s(t,e=i){const n=(t||"").trim();if(0===n.length)return[];const a=n.split(/\s+/).map(t=>t.split(":")).map(t=>{const n=e[t[0]]||t;return new r(n[0],n[1])}),s=a.filter(t=>t.isManual());if(s.length>1)throw new Error("Triggers parse error: only one manual trigger is allowed");if(1===s.length&&a.length>1)throw new Error("Triggers parse error: manual trigger can't be mixed with other triggers");return a}function u(t,e){const n=s(e.triggers),a=e.target;if(1===n.length&&n[0].isManual())return Function.prototype;const r=[],i=[],u=()=>{i.forEach(t=>r.push(t())),i.length=0};return n.forEach(n=>{const s=n.open===n.close,o=s?e.toggle:e.show;s||i.push(()=>t.listen(a,n.close,e.hide)),r.push(t.listen(a,n.open,()=>o(u)))}),()=>{r.forEach(t=>t())}}function o(t,e){return e.outsideClick?t.listen("document","click",t=>{e.target&&e.target.contains(t.target)||e.targets&&e.targets.some(e=>e.contains(t.target))||e.hide()}):Function.prototype}function l(t,e){return e.outsideEsc?t.listen("document","keyup.esc",t=>{e.target&&e.target.contains(t.target)||e.targets&&e.targets.some(e=>e.contains(t.target))||e.hide()}):Function.prototype}const d="undefined"!=typeof window&&window||{},c=d.document;let f;function h(){return void 0===d||(void 0===d.__theme?(f||(f=function(){if("undefined"==typeof document)return null;const t=document.createElement("span");t.innerText="test bs version",document.body.appendChild(t),t.classList.add("d-none");const e=t.getBoundingClientRect();return document.body.removeChild(t),e&&0===e.top?"bs4":"bs3"}()),"bs3"===f):"bs4"!==d.__theme)}function g(t){return function(t,e){const n=` __${e}Value`;Object.defineProperty(t,e,{get(){return this[n]},set(t){const a=this[n];this[n]=t,a!==t&&this[e+"Change"]&&this[e+"Change"].emit(t)}})}}class p{static reflow(t){}static getStyles(t){let e=t.ownerDocument.defaultView;return e&&e.opener||(e=d),e.getComputedStyle(t)}}const b={},m="undefined"==typeof console||!("warn"in console);function y(t){!Object(a.isDevMode)()||m||t in b||(b[t]=!0,console.warn(t))}},hrfs:function(t,e,n){"use strict";n.d(e,"a",(function(){return b})),n.d(e,"b",(function(){return m})),n.d(e,"c",(function(){return g}));var a=n("8Y7J"),r=n("MO+k"),i=n("2Vo4"),s=n("lsW8");const u=[[255,99,132],[54,162,235],[255,206,86],[231,233,237],[75,192,192],[151,187,205],[220,220,220],[247,70,74],[70,191,189],[253,180,92],[148,159,177],[77,83,96]];function o(t,e){return"rgba("+t.concat(e).join(",")+")"}function l(t,e){return Math.floor(Math.random()*(e-t+1))+t}function d(t){return{backgroundColor:t.map(t=>o(t,.6)),borderColor:t.map(()=>"#fff"),pointBackgroundColor:t.map(t=>o(t,1)),pointBorderColor:t.map(()=>"#fff"),pointHoverBackgroundColor:t.map(t=>o(t,1)),pointHoverBorderColor:t.map(t=>o(t,1))}}function c(){return[l(0,255),l(0,255),l(0,255)]}function f(t){return u[t]||c()}function h(t){const e=new Array(t);for(let n=0;n<t;n++)e[n]=u[n]||c();return e}let g=(()=>{class t{constructor(){this.pColorschemesOptions={},this.colorschemesOptions=new i.a({})}setColorschemesOptions(t){this.pColorschemesOptions=t,this.colorschemesOptions.next(t)}getColorschemesOptions(){return this.pColorschemesOptions}}return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t},token:t,providedIn:"root"}),t})();const p=function(){var t={Default:0,Update:1,Refresh:2};return t[t.Default]="Default",t[t.Update]="Update",t[t.Refresh]="Refresh",t}();class b{constructor(t,e){this.element=t,this.themeService=e,this.options={},this.chartClick=new a.EventEmitter,this.chartHover=new a.EventEmitter,this.old={dataExists:!1,dataLength:0,datasetsExists:!1,datasetsLength:0,datasetsDataObjects:[],datasetsDataLengths:[],colorsExists:!1,colors:[],labelsExist:!1,labels:[],legendExists:!1,legend:{}},this.subs=[]}static registerPlugin(t){r.Chart.plugins.register(t)}static unregisterPlugin(t){r.Chart.plugins.unregister(t)}ngOnInit(){this.ctx=this.element.nativeElement.getContext("2d"),this.refresh(),this.subs.push(this.themeService.colorschemesOptions.subscribe(t=>this.themeChanged(t)))}themeChanged(t){this.refresh()}ngDoCheck(){if(!this.chart)return;let t=p.Default;const e=e=>{t=e>t?e:t};switch(!!this.data!==this.old.dataExists&&(this.propagateDataToDatasets(this.data),this.old.dataExists=!!this.data,e(p.Update)),this.data&&this.data.length!==this.old.dataLength&&(this.old.dataLength=this.data&&this.data.length||0,e(p.Update)),!!this.datasets!==this.old.datasetsExists&&(this.old.datasetsExists=!!this.datasets,e(p.Update)),this.datasets&&this.datasets.length!==this.old.datasetsLength&&(this.old.datasetsLength=this.datasets&&this.datasets.length||0,e(p.Update)),this.datasets&&this.datasets.filter((t,e)=>t.data!==this.old.datasetsDataObjects[e]).length&&(this.old.datasetsDataObjects=this.datasets.map(t=>t.data),e(p.Update)),this.datasets&&this.datasets.filter((t,e)=>t.data.length!==this.old.datasetsDataLengths[e]).length&&(this.old.datasetsDataLengths=this.datasets.map(t=>t.data.length),e(p.Update)),!!this.colors!==this.old.colorsExists&&(this.old.colorsExists=!!this.colors,this.updateColors(),e(p.Update)),this.colors&&this.colors.filter((t,e)=>!this.colorsEqual(t,this.old.colors[e])).length&&(this.old.colors=this.colors.map(t=>this.copyColor(t)),this.updateColors(),e(p.Update)),!!this.labels!==this.old.labelsExist&&(this.old.labelsExist=!!this.labels,e(p.Update)),this.labels&&this.labels.filter((t,e)=>!this.labelsEqual(t,this.old.labels[e])).length&&(this.old.labels=this.labels.map(t=>this.copyLabel(t)),e(p.Update)),!!this.options.legend!==this.old.legendExists&&(this.old.legendExists=!!this.options.legend,e(p.Refresh)),this.options.legend&&this.options.legend.position!==this.old.legend.position&&(this.old.legend.position=this.options.legend.position,e(p.Refresh)),t){case p.Default:break;case p.Update:this.update();break;case p.Refresh:this.refresh()}}copyLabel(t){return Array.isArray(t)?[...t]:t}labelsEqual(t,e){return Array.isArray(t)===Array.isArray(e)&&(Array.isArray(t)||t===e)&&(!Array.isArray(t)||t.length===e.length)&&(!Array.isArray(t)||0===t.filter((t,n)=>t!==e[n]).length)}copyColor(t){return{backgroundColor:t.backgroundColor,borderWidth:t.borderWidth,borderColor:t.borderColor,borderCapStyle:t.borderCapStyle,borderDash:t.borderDash,borderDashOffset:t.borderDashOffset,borderJoinStyle:t.borderJoinStyle,pointBorderColor:t.pointBorderColor,pointBackgroundColor:t.pointBackgroundColor,pointBorderWidth:t.pointBorderWidth,pointRadius:t.pointRadius,pointHoverRadius:t.pointHoverRadius,pointHitRadius:t.pointHitRadius,pointHoverBackgroundColor:t.pointHoverBackgroundColor,pointHoverBorderColor:t.pointHoverBorderColor,pointHoverBorderWidth:t.pointHoverBorderWidth,pointStyle:t.pointStyle,hoverBackgroundColor:t.hoverBackgroundColor,hoverBorderColor:t.hoverBorderColor,hoverBorderWidth:t.hoverBorderWidth}}colorsEqual(t,e){return!t==!e&&(!t||t.backgroundColor===e.backgroundColor&&t.borderWidth===e.borderWidth&&t.borderColor===e.borderColor&&t.borderCapStyle===e.borderCapStyle&&t.borderDash===e.borderDash&&t.borderDashOffset===e.borderDashOffset&&t.borderJoinStyle===e.borderJoinStyle&&t.pointBorderColor===e.pointBorderColor&&t.pointBackgroundColor===e.pointBackgroundColor&&t.pointBorderWidth===e.pointBorderWidth&&t.pointRadius===e.pointRadius&&t.pointHoverRadius===e.pointHoverRadius&&t.pointHitRadius===e.pointHitRadius&&t.pointHoverBackgroundColor===e.pointHoverBackgroundColor&&t.pointHoverBorderColor===e.pointHoverBorderColor&&t.pointHoverBorderWidth===e.pointHoverBorderWidth&&t.pointStyle===e.pointStyle&&t.hoverBackgroundColor===e.hoverBackgroundColor&&t.hoverBorderColor===e.hoverBorderColor&&t.hoverBorderWidth===e.hoverBorderWidth)}updateColors(){this.datasets.forEach((t,e)=>{this.colors&&this.colors[e]?Object.assign(t,this.colors[e]):Object.assign(t,function(t,e,n){if("pie"===t||"doughnut"===t)return d(h(n));if("polarArea"===t)return{backgroundColor:(a=h(n)).map(t=>o(t,.6)),borderColor:a.map(t=>o(t,1)),hoverBackgroundColor:a.map(t=>o(t,.8)),hoverBorderColor:a.map(t=>o(t,1))};var a;if("line"===t||"radar"===t)return function(t){return{backgroundColor:o(t,.4),borderColor:o(t,1),pointBackgroundColor:o(t,1),pointBorderColor:"#fff",pointHoverBackgroundColor:"#fff",pointHoverBorderColor:o(t,.8)}}(f(e));if("bar"===t||"horizontalBar"===t)return function(t){return{backgroundColor:o(t,.6),borderColor:o(t,1),hoverBackgroundColor:o(t,.8),hoverBorderColor:o(t,1)}}(f(e));if("bubble"===t)return d(h(n));if("scatter"===t)return d(h(n));throw new Error("getColors - Unsupported chart type "+t)}(this.chartType,e,t.data.length),Object.assign({},t))})}ngOnChanges(t){let e=p.Default;const n=t=>{e=t>e?t:e};switch(t.hasOwnProperty("data")&&t.data.currentValue&&(this.propagateDataToDatasets(t.data.currentValue),n(p.Update)),t.hasOwnProperty("datasets")&&t.datasets.currentValue&&(this.propagateDatasetsToData(t.datasets.currentValue),n(p.Update)),t.hasOwnProperty("labels")&&(this.chart&&(this.chart.data.labels=t.labels.currentValue),n(p.Update)),t.hasOwnProperty("legend")&&(this.chart&&(this.chart.config.options.legend.display=t.legend.currentValue,this.chart.generateLegend()),n(p.Update)),t.hasOwnProperty("options")&&n(p.Refresh),e){case p.Update:this.update();break;case p.Refresh:case p.Default:this.refresh()}}ngOnDestroy(){this.chart&&(this.chart.destroy(),this.chart=void 0),this.subs.forEach(t=>t.unsubscribe())}update(t,e){if(this.chart)return this.chart.update(t,e)}hideDataset(t,e){this.chart.getDatasetMeta(t).hidden=e,this.chart.update()}isDatasetHidden(t){return this.chart.getDatasetMeta(t).hidden}toBase64Image(){return this.chart.toBase64Image()}getChartConfiguration(){const t=this.getDatasets(),e=Object.assign({},this.options);!1===this.legend&&(e.legend={display:!1}),e.hover=e.hover||{},e.hover.onHover||(e.hover.onHover=(t,e)=>{e&&!e.length||this.chartHover.emit({event:t,active:e})}),e.onClick||(e.onClick=(t,e)=>{this.chartClick.emit({event:t,active:e})});const n=this.smartMerge(e,this.themeService.getColorschemesOptions());return{type:this.chartType,data:{labels:this.labels||[],datasets:t},plugins:this.plugins,options:n}}getChartBuilder(t){const e=this.getChartConfiguration();return new r.Chart(t,e)}smartMerge(t,e,n=0){if(0===n&&(t=Object(s.cloneDeep)(t)),Object.keys(e).forEach(a=>{if(Array.isArray(e[a])){const r=t[a];r&&r.forEach(t=>{this.smartMerge(t,e[a][0],n+1)})}else"object"==typeof e[a]?(a in t||(t[a]={}),this.smartMerge(t[a],e[a],n+1)):t[a]=e[a]}),0===n)return t}isMultiLineLabel(t){return Array.isArray(t)}joinLabel(t){return t?this.isMultiLineLabel(t)?t.join(" "):t:null}propagateDatasetsToData(t){this.data=this.datasets.map(t=>t.data),this.chart&&(this.chart.data.datasets=t),this.updateColors()}propagateDataToDatasets(t){this.isMultiDataSet(t)?this.datasets&&t.length===this.datasets.length?this.datasets.forEach((e,n)=>{e.data=t[n]}):(this.datasets=t.map((t,e)=>({data:t,label:this.joinLabel(this.labels[e])||"Label "+e})),this.chart&&(this.chart.data.datasets=this.datasets)):this.datasets?(this.datasets[0].data=t,this.datasets.splice(1)):(this.datasets=[{data:t}],this.chart&&(this.chart.data.datasets=this.datasets)),this.updateColors()}isMultiDataSet(t){return Array.isArray(t[0])}getDatasets(){if(!this.datasets&&!this.data)throw new Error("ng-charts configuration error, data or datasets field are required to render chart "+this.chartType);return this.datasets?(this.propagateDatasetsToData(this.datasets),this.datasets):this.data?(this.propagateDataToDatasets(this.data),this.datasets):void 0}refresh(){this.chart&&(this.chart.destroy(),this.chart=void 0),this.ctx&&(this.chart=this.getChartBuilder(this.ctx))}}class m{}},i4WA:function(t,e,n){"use strict";var a=n("8Y7J");n("6qls"),n("tz6c"),n("GiVz"),n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var r=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function i(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"a",[["target","_blank"]],[[8,"href",4]],null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){var n=e.component;t(e,0,0,a["ɵinlineInterpolate"](1,"",n.docUrl,"")),t(e,1,0,n.docText)}))}},iEDd:function(t,e,n){!function(t){"use strict";t.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_mércores_xoves_venres_sábado".split("_"),weekdaysShort:"dom._lun._mar._mér._xov._ven._sáb.".split("_"),weekdaysMin:"do_lu_ma_mé_xo_ve_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(t){return 0===t.indexOf("un")?"n"+t:"en "+t},past:"hai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},iExv:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this.i18n=t}transform(t,e=this.i18n("Yes"),n=this.i18n("No")){return Boolean(t)?e:n}}},iInd:function(t,e,n){"use strict";var a=n("SVse"),r=n("8Y7J"),i=n("LRne"),s=n("Cfvw"),u=n("2Vo4"),o=n("HDdC"),l=n("sVev"),d=n("z+Ro"),c=n("DH7j"),f=n("l7GE"),h=n("ZUHj"),g=n("yCtX");const p={};class b{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new m(t,this.resultSelector))}}class m extends f.a{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(p),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n<e;n++){const e=t[n];this.add(Object(h.a)(this,e,e,n))}}}notifyComplete(t){0==(this.active-=1)&&this.destination.complete()}notifyNext(t,e,n,a,r){const i=this.values,s=this.toRespond?i[n]===p?--this.toRespond:this.toRespond:0;i[n]=e,0===s&&(this.resultSelector?this._tryResultSelector(i):this.destination.next(i.slice()))}_tryResultSelector(t){let e;try{e=this.resultSelector.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}var y=n("EY2u");function v(t){return new o.a(e=>{let n;try{n=t()}catch(a){return void e.error(a)}return(n?Object(s.a)(n):Object(y.b)()).subscribe(e)})}var x=n("XNiG"),_=n("lJxs"),T=n("0EUg"),w=n("NJ9Y"),O=n("JIr8"),S=n("SxV6"),I=n("5+tZ"),N=n("7o/Q");class C{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new R(t,this.predicate,this.thisArg,this.source))}}class R extends N.a{constructor(t,e,n,a){super(t),this.predicate=e,this.thisArg=n,this.source=a,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}var A=n("eIep"),k=n("IzEk"),E=n("GyhO"),L=n("Kqap"),D=n("pLZG"),P=n("bOdf"),M=n("128B"),q=n("vkgz"),j=n("nYR2"),F=n("bHdf"),V=n("cUpR");n.d(e,"F",(function(){return rt})),n.d(e,"v",(function(){return vn})),n.d(e,"C",(function(){return Rn})),n.d(e,"x",(function(){return wn})),n.d(e,"D",(function(){return An})),n.d(e,"E",(function(){return kn})),n.d(e,"z",(function(){return Sn})),n.d(e,"y",(function(){return On})),n.d(e,"B",(function(){return Cn})),n.d(e,"w",(function(){return _n})),n.d(e,"A",(function(){return Nn})),n.d(e,"G",(function(){return mn})),n.d(e,"n",(function(){return rn})),n.d(e,"p",(function(){return sn})),n.d(e,"o",(function(){return on})),n.d(e,"r",(function(){return cn})),n.d(e,"d",(function(){return z})),n.d(e,"e",(function(){return B})),n.d(e,"l",(function(){return Ke})),n.d(e,"m",(function(){return an})),n.d(e,"k",(function(){return Ze})),n.d(e,"i",(function(){return yn})),n.d(e,"j",(function(){return En})),n.d(e,"q",(function(){return Tn})),n.d(e,"b",(function(){return dn})),n.d(e,"f",(function(){return pn})),n.d(e,"g",(function(){return gn})),n.d(e,"h",(function(){return hn})),n.d(e,"s",(function(){return bn})),n.d(e,"a",(function(){return Wt})),n.d(e,"t",(function(){return Qe})),n.d(e,"c",(function(){return It})),n.d(e,"u",(function(){return St}));class G{constructor(t,e){this.id=t,this.url=e}}class B extends G{constructor(t,e,n="imperative",a=null){super(t,e),this.navigationTrigger=n,this.restoredState=a}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class z extends G{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class Y extends G{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class H extends G{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class U extends G{constructor(t,e,n,a){super(t,e),this.urlAfterRedirects=n,this.state=a}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class W extends G{constructor(t,e,n,a){super(t,e),this.urlAfterRedirects=n,this.state=a}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class K extends G{constructor(t,e,n,a,r){super(t,e),this.urlAfterRedirects=n,this.state=a,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class $ extends G{constructor(t,e,n,a){super(t,e),this.urlAfterRedirects=n,this.state=a}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Z extends G{constructor(t,e,n,a){super(t,e),this.urlAfterRedirects=n,this.state=a}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class J{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class Q{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class X{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class tt{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class et{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class nt{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class at{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class rt{}class it{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function st(t){return new it(t)}function ut(t){const e=Error("NavigationCancelingError: "+t);return e.ngNavigationCancelingError=!0,e}function ot(t,e,n){const a=n.path.split("/");if(a.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||a.length<t.length))return null;const r={};for(let i=0;i<a.length;i++){const e=a[i],n=t[i];if(e.startsWith(":"))r[e.substring(1)]=n;else if(e!==n.path)return null}return{consumed:t.slice(0,a.length),posParams:r}}class lt{constructor(t,e){this.routes=t,this.module=e}}function dt(t,e=""){for(let n=0;n<t.length;n++){const a=t[n];ct(a,ft(e,a))}}function ct(t,e){if(!t)throw new Error(`\n      Invalid configuration of route '${e}': Encountered undefined route.\n      The reason might be an extra comma.\n\n      Example:\n      const routes: Routes = [\n        { path: '', redirectTo: '/dashboard', pathMatch: 'full' },\n        { path: 'dashboard',  component: DashboardComponent },, << two commas\n        { path: 'detail/:id', component: HeroDetailComponent }\n      ];\n    `);if(Array.isArray(t))throw new Error(`Invalid configuration of route '${e}': Array cannot be specified`);if(!t.component&&!t.children&&!t.loadChildren&&t.outlet&&"primary"!==t.outlet)throw new Error(`Invalid configuration of route '${e}': a componentless route without children or loadChildren cannot have a named outlet set`);if(t.redirectTo&&t.children)throw new Error(`Invalid configuration of route '${e}': redirectTo and children cannot be used together`);if(t.redirectTo&&t.loadChildren)throw new Error(`Invalid configuration of route '${e}': redirectTo and loadChildren cannot be used together`);if(t.children&&t.loadChildren)throw new Error(`Invalid configuration of route '${e}': children and loadChildren cannot be used together`);if(t.redirectTo&&t.component)throw new Error(`Invalid configuration of route '${e}': redirectTo and component cannot be used together`);if(t.path&&t.matcher)throw new Error(`Invalid configuration of route '${e}': path and matcher cannot be used together`);if(void 0===t.redirectTo&&!t.component&&!t.children&&!t.loadChildren)throw new Error(`Invalid configuration of route '${e}'. One of the following must be provided: component, redirectTo, children or loadChildren`);if(void 0===t.path&&void 0===t.matcher)throw new Error(`Invalid configuration of route '${e}': routes must have either a path or a matcher specified`);if("string"==typeof t.path&&"/"===t.path.charAt(0))throw new Error(`Invalid configuration of route '${e}': path cannot start with a slash`);if(""===t.path&&void 0!==t.redirectTo&&void 0===t.pathMatch)throw new Error(`Invalid configuration of route '{path: "${e}", redirectTo: "${t.redirectTo}"}': please provide 'pathMatch'. The default value of 'pathMatch' is 'prefix', but often the intent is to use 'full'.`);if(void 0!==t.pathMatch&&"full"!==t.pathMatch&&"prefix"!==t.pathMatch)throw new Error(`Invalid configuration of route '${e}': pathMatch can only be set to 'prefix' or 'full'`);t.children&&dt(t.children,e)}function ft(t,e){return e?t||e.path?t&&!e.path?t+"/":!t&&e.path?e.path:`${t}/${e.path}`:"":t}function ht(t){const e=t.children&&t.children.map(ht),n=e?Object.assign({},t,{children:e}):Object.assign({},t);return!n.component&&(e||n.loadChildren)&&n.outlet&&"primary"!==n.outlet&&(n.component=rt),n}function gt(t,e){const n=Object.keys(t),a=Object.keys(e);if(!n||!a||n.length!=a.length)return!1;let r;for(let i=0;i<n.length;i++)if(r=n[i],t[r]!==e[r])return!1;return!0}function pt(t){return Array.prototype.concat.apply([],t)}function bt(t){return t.length>0?t[t.length-1]:null}function mt(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function yt(t){return Object(r["ɵisObservable"])(t)?t:Object(r["ɵisPromise"])(t)?Object(s.a)(Promise.resolve(t)):Object(i.a)(t)}function vt(t,e,n){return n?function(t,e){return gt(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!wt(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const a in n.children){if(!e.children[a])return!1;if(!t(e.children[a],n.children[a]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,a,r){if(n.segments.length>r.length)return!!wt(n.segments.slice(0,r.length),r)&&!a.hasChildren();if(n.segments.length===r.length){if(!wt(n.segments,r))return!1;for(const e in a.children){if(!n.children[e])return!1;if(!t(n.children[e],a.children[e]))return!1}return!0}{const t=r.slice(0,n.segments.length),i=r.slice(n.segments.length);return!!wt(n.segments,t)&&!!n.children.primary&&e(n.children.primary,a,i)}}(e,n,n.segments)}(t.root,e.root)}class xt{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=st(this.queryParams)),this._queryParamMap}toString(){return Nt.serialize(this)}}class _t{constructor(t,e){this.segments=t,this.children=e,this.parent=null,mt(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Ct(this)}}class Tt{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=st(this.parameters)),this._parameterMap}toString(){return Dt(this)}}function wt(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Ot(t,e){let n=[];return mt(t.children,(t,a)=>{"primary"===a&&(n=n.concat(e(t,a)))}),mt(t.children,(t,a)=>{"primary"!==a&&(n=n.concat(e(t,a)))}),n}class St{}class It{parse(t){const e=new Ft(t);return new xt(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){return`${"/"+function t(e,n){if(!e.hasChildren())return Ct(e);if(n){const n=e.children.primary?t(e.children.primary,!1):"",a=[];return mt(e.children,(e,n)=>{"primary"!==n&&a.push(`${n}:${t(e,!1)}`)}),a.length>0?`${n}(${a.join("//")})`:n}{const n=Ot(e,(n,a)=>"primary"===a?[t(e.children.primary,!1)]:[`${a}:${t(n,!1)}`]);return`${Ct(e)}/(${n.join("//")})`}}(t.root,!0)}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${At(e)}=${At(t)}`).join("&"):`${At(e)}=${At(n)}`});return e.length?"?"+e.join("&"):""}(t.queryParams)}${"string"==typeof t.fragment?"#"+encodeURI(t.fragment):""}`}}const Nt=new It;function Ct(t){return t.segments.map(t=>Dt(t)).join("/")}function Rt(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function At(t){return Rt(t).replace(/%3B/gi,";")}function kt(t){return Rt(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Et(t){return decodeURIComponent(t)}function Lt(t){return Et(t.replace(/\+/g,"%20"))}function Dt(t){return`${kt(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${kt(t)}=${kt(e[t])}`).join("")}`;var e}const Pt=/^[^\/()?;=#]+/;function Mt(t){const e=t.match(Pt);return e?e[0]:""}const qt=/^[^=?&#]+/,jt=/^[^?&#]+/;class Ft{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new _t([],{}):new _t([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n.primary=new _t(t,e)),n}parseSegment(){const t=Mt(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Tt(Et(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Mt(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Mt(this.remaining);t&&(n=t,this.capture(n))}t[Et(e)]=Et(n)}parseQueryParam(t){const e=function(t){const e=t.match(qt);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(jt);return e?e[0]:""}(this.remaining);t&&(n=t,this.capture(n))}const a=Lt(e),r=Lt(n);if(t.hasOwnProperty(a)){let e=t[a];Array.isArray(e)||(e=[e],t[a]=e),e.push(r)}else t[a]=r}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Mt(this.remaining),a=this.remaining[n.length];if("/"!==a&&")"!==a&&";"!==a)throw new Error(`Cannot parse url '${this.url}'`);let r=void 0;n.indexOf(":")>-1?(r=n.substr(0,n.indexOf(":")),this.capture(r),this.capture(":")):t&&(r="primary");const i=this.parseChildren();e[r]=1===Object.keys(i).length?i.primary:new _t([],i),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class Vt{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=Gt(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=Gt(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=Bt(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return Bt(t,this._root).map(t=>t.value)}}function Gt(t,e){if(t===e.value)return e;for(const n of e.children){const e=Gt(t,n);if(e)return e}return null}function Bt(t,e){if(t===e.value)return[e];for(const n of e.children){const a=Bt(t,n);if(a.length)return a.unshift(e),a}return[]}class zt{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function Yt(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class Ht extends Vt{constructor(t,e){super(t),this.snapshot=e,Jt(this,t)}toString(){return this.snapshot.toString()}}function Ut(t,e){const n=function(t,e){const n=new $t([],{},{},"",{},"primary",e,null,t.root,-1,{});return new Zt("",new zt(n,[]))}(t,e),a=new u.a([new Tt("",{})]),r=new u.a({}),i=new u.a({}),s=new u.a({}),o=new u.a(""),l=new Wt(a,r,s,o,i,"primary",e,n.root);return l.snapshot=n.root,new Ht(new zt(l,[]),n)}class Wt{constructor(t,e,n,a,r,i,s,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=a,this.data=r,this.outlet=i,this.component=s,this._futureSnapshot=u}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(Object(_.a)(t=>st(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(Object(_.a)(t=>st(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Kt(t,e="emptyOnly"){const n=t.pathFromRoot;let a=0;if("always"!==e)for(a=n.length-1;a>=1;){const t=n[a],e=n[a-1];if(t.routeConfig&&""===t.routeConfig.path)a--;else{if(e.component)break;a--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(a))}class $t{constructor(t,e,n,a,r,i,s,u,o,l,d){this.url=t,this.params=e,this.queryParams=n,this.fragment=a,this.data=r,this.outlet=i,this.component=s,this.routeConfig=u,this._urlSegment=o,this._lastPathIndex=l,this._resolve=d}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=st(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=st(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class Zt extends Vt{constructor(t,e){super(e),this.url=t,Jt(this,e)}toString(){return Qt(this._root)}}function Jt(t,e){e.value._routerState=t,e.children.forEach(e=>Jt(t,e))}function Qt(t){const e=t.children.length>0?` { ${t.children.map(Qt).join(", ")} } `:"";return`${t.value}${e}`}function Xt(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,gt(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),gt(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;n<t.length;++n)if(!gt(t[n],e[n]))return!1;return!0}(e.url,n.url)||t.url.next(n.url),gt(e.data,n.data)||t.data.next(n.data)}else t.snapshot=t._futureSnapshot,t.data.next(t._futureSnapshot.data)}function te(t,e){var n,a;return gt(t.params,e.params)&&wt(n=t.url,a=e.url)&&n.every((t,e)=>gt(t.parameters,a[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||te(t.parent,e.parent))}function ee(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function ne(t,e,n,a,r){let i={};return a&&mt(a,(t,e)=>{i[e]=Array.isArray(t)?t.map(t=>""+t):""+t}),new xt(n.root===t?e:function t(e,n,a){const r={};return mt(e.children,(e,i)=>{r[i]=e===n?a:t(e,n,a)}),new _t(e.segments,r)}(n.root,t,e),i,r)}class ae{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&ee(n[0]))throw new Error("Root segment cannot have matrix parameters");const a=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(a&&a!==bt(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class re{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function ie(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets.primary:""+t}function se(t,e,n){if(t||(t=new _t([],{})),0===t.segments.length&&t.hasChildren())return ue(t,e,n);const a=function(t,e,n){let a=0,r=e;const i={match:!1,pathIndex:0,commandIndex:0};for(;r<t.segments.length;){if(a>=n.length)return i;const e=t.segments[r],s=ie(n[a]),u=a<n.length-1?n[a+1]:null;if(r>0&&void 0===s)break;if(s&&u&&"object"==typeof u&&void 0===u.outlets){if(!ce(s,u,e))return i;a+=2}else{if(!ce(s,{},e))return i;a++}r++}return{match:!0,pathIndex:r,commandIndex:a}}(t,e,n),r=n.slice(a.commandIndex);if(a.match&&a.pathIndex<t.segments.length){const e=new _t(t.segments.slice(0,a.pathIndex),{});return e.children.primary=new _t(t.segments.slice(a.pathIndex),t.children),ue(e,0,r)}return a.match&&0===r.length?new _t(t.segments,{}):a.match&&!t.hasChildren()?oe(t,e,n):a.match?ue(t,0,r):oe(t,e,n)}function ue(t,e,n){if(0===n.length)return new _t(t.segments,{});{const a=function(t){return"object"!=typeof t[0]||void 0===t[0].outlets?{primary:t}:t[0].outlets}(n),r={};return mt(a,(n,a)=>{null!==n&&(r[a]=se(t.children[a],e,n))}),mt(t.children,(t,e)=>{void 0===a[e]&&(r[e]=t)}),new _t(t.segments,r)}}function oe(t,e,n){const a=t.segments.slice(0,e);let r=0;for(;r<n.length;){if("object"==typeof n[r]&&void 0!==n[r].outlets){const t=le(n[r].outlets);return new _t(a,t)}if(0===r&&ee(n[0])){a.push(new Tt(t.segments[e].path,n[0])),r++;continue}const i=ie(n[r]),s=r<n.length-1?n[r+1]:null;i&&s&&ee(s)?(a.push(new Tt(i,de(s))),r+=2):(a.push(new Tt(i,{})),r++)}return new _t(a,{})}function le(t){const e={};return mt(t,(t,n)=>{null!==t&&(e[n]=oe(new _t([],{}),0,t))}),e}function de(t){const e={};return mt(t,(t,n)=>e[n]=""+t),e}function ce(t,e,n){return t==n.path&&gt(e,n.parameters)}class fe{constructor(t,e,n,a){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=a}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),Xt(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const a=Yt(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,a[e],n),delete a[e]}),mt(a,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const a=t.value,r=e?e.value:null;if(a===r)if(a.component){const r=n.getContext(a.outlet);r&&this.deactivateChildRoutes(t,e,r.children)}else this.deactivateChildRoutes(t,e,n);else r&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),a=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:a})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const a=Yt(t),r=t.value.component?n.children:e;mt(a,(t,e)=>this.deactivateRouteAndItsChildren(t,r)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const a=Yt(e);t.children.forEach(t=>{this.activateRoutes(t,a[t.value.outlet],n),this.forwardEvent(new nt(t.value.snapshot))}),t.children.length&&this.forwardEvent(new tt(t.value.snapshot))}activateRoutes(t,e,n){const a=t.value,r=e?e.value:null;if(Xt(a),a===r)if(a.component){const r=n.getOrCreateContext(a.outlet);this.activateChildRoutes(t,e,r.children)}else this.activateChildRoutes(t,e,n);else if(a.component){const e=n.getOrCreateContext(a.outlet);if(this.routeReuseStrategy.shouldAttach(a.snapshot)){const t=this.routeReuseStrategy.retrieve(a.snapshot);this.routeReuseStrategy.store(a.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),he(t.route)}else{const n=function(t){for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(a.snapshot),r=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=a,e.resolver=r,e.outlet&&e.outlet.activateWith(a,r),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function he(t){Xt(t.value),t.children.forEach(he)}function ge(t){return"function"==typeof t}function pe(t){return t instanceof xt}class be{constructor(t){this.segmentGroup=t||null}}class me{constructor(t){this.urlTree=t}}function ye(t){return new o.a(e=>e.error(new be(t)))}function ve(t){return new o.a(e=>e.error(new me(t)))}function xe(t){return new o.a(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class _e{constructor(t,e,n,a,i){this.configLoader=e,this.urlSerializer=n,this.urlTree=a,this.config=i,this.allowRedirects=!0,this.ngModule=t.get(r.NgModuleRef)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,"primary").pipe(Object(_.a)(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(Object(O.a)(t=>{if(t instanceof me)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof be)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,"primary").pipe(Object(_.a)(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(Object(O.a)(t=>{if(t instanceof be)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const a=t.segments.length>0?new _t([],{primary:t}):t;return new xt(a,e,n)}expandSegmentGroup(t,e,n,a){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(Object(_.a)(t=>new _t([],t))):this.expandSegment(t,n,e,n.segments,a,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Object(i.a)({});const n=[],a=[],r={};return mt(t,(t,i)=>{const s=e(i,t).pipe(Object(_.a)(t=>r[i]=t));"primary"===i?n.push(s):a.push(s)}),i.a.apply(null,n.concat(a)).pipe(Object(T.a)(),Object(w.a)(),Object(_.a)(()=>r))}(n.children,(n,a)=>this.expandSegmentGroup(t,e,a,n))}expandSegment(t,e,n,a,r,s){return Object(i.a)(...n).pipe(Object(_.a)(u=>this.expandSegmentAgainstRoute(t,e,n,u,a,r,s).pipe(Object(O.a)(t=>{if(t instanceof be)return Object(i.a)(null);throw t}))),Object(T.a)(),Object(S.a)(t=>!!t),Object(O.a)((t,n)=>{if(t instanceof l.a||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,a,r))return Object(i.a)(new _t([],{}));throw new be(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,a,r,i,s){return Se(a)!==i?ye(e):void 0===a.redirectTo?this.matchSegmentAgainstRoute(t,e,a,r):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,a,r,i):ye(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,a,r,i){return"**"===a.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,a,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,a,r,i)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,a){const r=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?ve(r):this.lineralizeSegments(n,r).pipe(Object(I.a)(n=>{const r=new _t(n,{});return this.expandSegment(t,r,e,n,a,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,a,r,i){const{matched:s,consumedSegments:u,lastChild:o,positionalParamSegments:l}=Te(e,a,r);if(!s)return ye(e);const d=this.applyRedirectCommands(u,a.redirectTo,l);return a.redirectTo.startsWith("/")?ve(d):this.lineralizeSegments(a,d).pipe(Object(I.a)(a=>this.expandSegment(t,e,n,a.concat(r.slice(o)),i,!1)))}matchSegmentAgainstRoute(t,e,n,a){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(Object(_.a)(t=>(n._loadedConfig=t,new _t(a,{})))):Object(i.a)(new _t(a,{}));const{matched:r,consumedSegments:s,lastChild:u}=Te(e,n,a);if(!r)return ye(e);const o=a.slice(u);return this.getChildConfig(t,n,a).pipe(Object(I.a)(t=>{const n=t.module,a=t.routes,{segmentGroup:r,slicedSegments:u}=function(t,e,n,a){return n.length>0&&function(t,e,n){return n.some(n=>Oe(t,e,n)&&"primary"!==Se(n))}(t,n,a)?{segmentGroup:we(new _t(e,function(t,e){const n={};n.primary=e;for(const a of t)""===a.path&&"primary"!==Se(a)&&(n[Se(a)]=new _t([],{}));return n}(a,new _t(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return n.some(n=>Oe(t,e,n))}(t,n,a)?{segmentGroup:we(new _t(t.segments,function(t,e,n,a){const r={};for(const i of n)Oe(t,e,i)&&!a[Se(i)]&&(r[Se(i)]=new _t([],{}));return Object.assign({},a,r)}(t,n,a,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,s,o,a);return 0===u.length&&r.hasChildren()?this.expandChildren(n,a,r).pipe(Object(_.a)(t=>new _t(s,t))):0===a.length&&0===u.length?Object(i.a)(new _t(s,{})):this.expandSegment(n,r,a,u,"primary",!0).pipe(Object(_.a)(t=>new _t(s.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Object(i.a)(new lt(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Object(i.a)(e._loadedConfig):function(t,e,n){const a=e.canLoad;return a&&0!==a.length?Object(s.a)(a).pipe(Object(_.a)(a=>{const r=t.get(a);let i;if(function(t){return t&&ge(t.canLoad)}(r))i=r.canLoad(e,n);else{if(!ge(r))throw new Error("Invalid CanLoad guard");i=r(e,n)}return yt(i)})).pipe(Object(T.a)(),(r=t=>!0===t,t=>t.lift(new C(r,void 0,t)))):Object(i.a)(!0);var r}(t.injector,e,n).pipe(Object(I.a)(n=>n?this.configLoader.load(t.injector,e).pipe(Object(_.a)(t=>(e._loadedConfig=t,t))):function(t){return new o.a(e=>e.error(ut(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Object(i.a)(new lt([],t))}lineralizeSegments(t,e){let n=[],a=e.root;for(;;){if(n=n.concat(a.segments),0===a.numberOfChildren)return Object(i.a)(n);if(a.numberOfChildren>1||!a.children.primary)return xe(t.redirectTo);a=a.children.primary}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,a){const r=this.createSegmentGroup(t,e.root,n,a);return new xt(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return mt(t,(t,a)=>{if("string"==typeof t&&t.startsWith(":")){const r=t.substring(1);n[a]=e[r]}else n[a]=t}),n}createSegmentGroup(t,e,n,a){const r=this.createSegments(t,e.segments,n,a);let i={};return mt(e.children,(e,r)=>{i[r]=this.createSegmentGroup(t,e,n,a)}),new _t(r,i)}createSegments(t,e,n,a){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,a):this.findOrReturn(e,n))}findPosParam(t,e,n){const a=n[e.path.substring(1)];if(!a)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return a}findOrReturn(t,e){let n=0;for(const a of e){if(a.path===t.path)return e.splice(n),a;n++}return t}}function Te(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const a=(e.matcher||ot)(n,t,e);return a?{matched:!0,consumedSegments:a.consumed,lastChild:a.consumed.length,positionalParamSegments:a.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function we(t){if(1===t.numberOfChildren&&t.children.primary){const e=t.children.primary;return new _t(t.segments.concat(e.segments),e.children)}return t}function Oe(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Se(t){return t.outlet||"primary"}class Ie{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Ne{constructor(t,e){this.component=t,this.route=e}}function Ce(t,e,n){const a=t._root;return function t(e,n,a,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const s=Yt(n);return e.children.forEach(e=>{!function(e,n,a,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const s=e.value,u=n?n.value:null,o=a?a.getContext(e.value.outlet):null;if(u&&s.routeConfig===u.routeConfig){const l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!wt(t.url,e.url);case"pathParamsOrQueryParamsChange":return!wt(t.url,e.url)||!gt(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!te(t,e)||!gt(t.queryParams,e.queryParams);case"paramsChange":default:return!te(t,e)}}(u,s,s.routeConfig.runGuardsAndResolvers);l?i.canActivateChecks.push(new Ie(r)):(s.data=u.data,s._resolvedData=u._resolvedData),t(e,n,s.component?o?o.children:null:a,r,i),l&&i.canDeactivateChecks.push(new Ne(o&&o.outlet&&o.outlet.component||null,u))}else u&&Ae(n,o,i),i.canActivateChecks.push(new Ie(r)),t(e,null,s.component?o?o.children:null:a,r,i)}(e,s[e.value.outlet],a,r.concat([e.value]),i),delete s[e.value.outlet]}),mt(s,(t,e)=>Ae(t,a.getContext(e),i)),i}(a,e?e._root:null,n,[a.value])}function Re(t,e,n){const a=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(a?a.module.injector:n).get(t)}function Ae(t,e,n){const a=Yt(t),r=t.value;mt(a,(t,a)=>{Ae(t,r.component?e?e.children.getContext(a):null:e,n)}),n.canDeactivateChecks.push(new Ne(r.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,r))}const ke=Symbol("INITIAL_VALUE");function Ee(){return Object(A.a)(t=>function(...t){let e=null,n=null;return Object(d.a)(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&Object(c.a)(t[0])&&(t=t[0]),Object(g.a)(t,n).lift(new b(e))}(...t.map(t=>t.pipe(Object(k.a)(1),function(...t){const e=t[t.length-1];return Object(d.a)(e)?(t.pop(),n=>Object(E.a)(t,n,e)):e=>Object(E.a)(t,e)}(ke)))).pipe(Object(L.a)((t,e)=>{let n=!1;return e.reduce((t,a,r)=>{if(t!==ke)return t;if(a===ke&&(n=!0),!n){if(!1===a)return a;if(r===e.length-1||pe(a))return a}return t},t)},ke),Object(D.a)(t=>t!==ke),Object(_.a)(t=>pe(t)?t:!0===t),Object(k.a)(1)))}function Le(t,e){return null!==t&&e&&e(new et(t)),Object(i.a)(!0)}function De(t,e){return null!==t&&e&&e(new X(t)),Object(i.a)(!0)}function Pe(t,e,n){const a=e.routeConfig?e.routeConfig.canActivate:null;if(!a||0===a.length)return Object(i.a)(!0);const r=a.map(a=>v(()=>{const r=Re(a,e,n);let i;if(function(t){return t&&ge(t.canActivate)}(r))i=yt(r.canActivate(e,t));else{if(!ge(r))throw new Error("Invalid CanActivate guard");i=yt(r(e,t))}return i.pipe(Object(S.a)())}));return Object(i.a)(r).pipe(Ee())}function Me(t,e,n){const a=e[e.length-1],r=e.slice(0,e.length-1).reverse().map(t=>function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null}(t)).filter(t=>null!==t).map(e=>v(()=>{const r=e.guards.map(r=>{const i=Re(r,e.node,n);let s;if(function(t){return t&&ge(t.canActivateChild)}(i))s=yt(i.canActivateChild(a,t));else{if(!ge(i))throw new Error("Invalid CanActivateChild guard");s=yt(i(a,t))}return s.pipe(Object(S.a)())});return Object(i.a)(r).pipe(Ee())}));return Object(i.a)(r).pipe(Ee())}class qe{}class je{constructor(t,e,n,a,r,i){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=a,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=i}recognize(){try{const t=Ge(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,e=this.processSegmentGroup(this.config,t,"primary"),n=new $t([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},"primary",this.rootComponentType,null,this.urlTree.root,-1,{}),a=new zt(n,e),r=new Zt(this.url,a);return this.inheritParamsAndData(r._root),Object(i.a)(r)}catch(t){return new o.a(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=Kt(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Ot(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};t.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),a=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${a}'.`)}e[t.value.outlet]=t.value})}(n),n.sort((t,e)=>"primary"===t.value.outlet?-1:"primary"===e.value.outlet?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,a){for(const i of t)try{return this.processSegmentAgainstRoute(i,e,n,a)}catch(r){if(!(r instanceof qe))throw r}if(this.noLeftoversInUrl(e,n,a))return[];throw new qe}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,a){if(t.redirectTo)throw new qe;if((t.outlet||"primary")!==a)throw new qe;let r,i=[],s=[];if("**"===t.path){const i=n.length>0?bt(n).parameters:{};r=new $t(n,i,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,Ye(t),a,t.component,t,Fe(e),Ve(e)+n.length,He(t))}else{const u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new qe;return{consumedSegments:[],lastChild:0,parameters:{}}}const a=(e.matcher||ot)(n,t,e);if(!a)throw new qe;const r={};mt(a.posParams,(t,e)=>{r[e]=t.path});const i=a.consumed.length>0?Object.assign({},r,a.consumed[a.consumed.length-1].parameters):r;return{consumedSegments:a.consumed,lastChild:a.consumed.length,parameters:i}}(e,t,n);i=u.consumedSegments,s=n.slice(u.lastChild),r=new $t(i,u.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,Ye(t),a,t.component,t,Fe(e),Ve(e)+i.length,He(t))}const u=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:o,slicedSegments:l}=Ge(e,i,s,u,this.relativeLinkResolution);if(0===l.length&&o.hasChildren()){const t=this.processChildren(u,o);return[new zt(r,t)]}if(0===u.length&&0===l.length)return[new zt(r,[])];const d=this.processSegment(u,o,l,"primary");return[new zt(r,d)]}}function Fe(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function Ve(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)e=e._sourceSegment,n+=e._segmentIndexShift?e._segmentIndexShift:0;return n-1}function Ge(t,e,n,a,r){if(n.length>0&&function(t,e,n){return n.some(n=>Be(t,e,n)&&"primary"!==ze(n))}(t,n,a)){const r=new _t(e,function(t,e,n,a){const r={};r.primary=a,a._sourceSegment=t,a._segmentIndexShift=e.length;for(const i of n)if(""===i.path&&"primary"!==ze(i)){const n=new _t([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,r[ze(i)]=n}return r}(t,e,a,new _t(n,t.children)));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return n.some(n=>Be(t,e,n))}(t,n,a)){const i=new _t(t.segments,function(t,e,n,a,r,i){const s={};for(const u of a)if(Be(t,n,u)&&!r[ze(u)]){const n=new _t([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===i?t.segments.length:e.length,s[ze(u)]=n}return Object.assign({},r,s)}(t,e,n,a,t.children,r));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}const i=new _t(t.segments,t.children);return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}function Be(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function ze(t){return t.outlet||"primary"}function Ye(t){return t.data||{}}function He(t){return t.resolve||{}}function Ue(t,e,n,a){const r=Re(t,e,a);return yt(r.resolve?r.resolve(e,n):r(e,n))}function We(t){return function(e){return e.pipe(Object(A.a)(e=>{const n=t(e);return n?Object(s.a)(n).pipe(Object(_.a)(()=>e)):Object(s.a)([e])}))}}class Ke{}class $e{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const Ze=new r.InjectionToken("ROUTES");class Je{constructor(t,e,n,a){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=a}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(Object(_.a)(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const a=n.create(t);return new lt(pt(a.injector.get(Ze)).map(ht),a)}))}loadModuleFactory(t){return"string"==typeof t?Object(s.a)(this.loader.load(t)):yt(t()).pipe(Object(I.a)(t=>t instanceof r.NgModuleFactory?Object(i.a)(t):Object(s.a)(this.compiler.compileModuleAsync(t))))}}class Qe{}class Xe{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function tn(t){throw t}function en(t,e,n){return e.parse("/")}function nn(t,e){return Object(i.a)(null)}class an{constructor(t,e,n,a,i,s,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=a,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new x.a,this.errorHandler=tn,this.malformedUriErrorHandler=en,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:nn,afterPreactivation:nn},this.urlHandlingStrategy=new Xe,this.routeReuseStrategy=new $e,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=i.get(r.NgModuleRef),this.console=i.get(r["ɵConsole"]);const d=i.get(r.NgZone);this.isNgZoneEnabled=d instanceof r.NgZone,this.resetConfig(l),this.currentUrlTree=new xt(new _t([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new Je(s,o,t=>this.triggerEvent(new J(t)),t=>this.triggerEvent(new Q(t))),this.routerState=Ut(this.currentUrlTree,this.rootComponentType),this.transitions=new u.a({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(Object(D.a)(t=>0!==t.id),Object(_.a)(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Object(A.a)(t=>{let n=!1,a=!1;return Object(i.a)(t).pipe(Object(q.a)(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Object(A.a)(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Object(i.a)(t).pipe(Object(A.a)(t=>{const n=this.transitions.getValue();return e.next(new B(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?y.a:[t]}),Object(A.a)(t=>Promise.resolve(t)),(a=this.ngModule.injector,r=this.configLoader,s=this.urlSerializer,u=this.config,function(t){return t.pipe(Object(A.a)(t=>function(t,e,n,a,r){return new _e(t,e,n,a,r).apply()}(a,r,s,t.extractedUrl,u).pipe(Object(_.a)(e=>Object.assign({},t,{urlAfterRedirects:e})))))}),Object(q.a)(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,a,r){return function(i){return i.pipe(Object(I.a)(i=>function(t,e,n,a,r="emptyOnly",i="legacy"){return new je(t,e,n,a,r,i).recognize()}(t,e,i.urlAfterRedirects,n(i.urlAfterRedirects),a,r).pipe(Object(_.a)(t=>Object.assign({},i,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),Object(q.a)(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Object(q.a)(t=>{const n=new U(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));var a,r,s,u;if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:a,source:r,restoredState:s,extras:u}=t,o=new B(n,this.serializeUrl(a),r,s);e.next(o);const l=Ut(a,this.rootComponentType).snapshot;return Object(i.a)(Object.assign({},t,{targetSnapshot:l,urlAfterRedirects:a,extras:Object.assign({},u,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),y.a}),We(t=>{const{targetSnapshot:e,id:n,extractedUrl:a,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:s}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:a,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!s})}),Object(q.a)(t=>{const e=new W(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),Object(_.a)(t=>Object.assign({},t,{guards:Ce(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Object(I.a)(n=>{const{targetSnapshot:a,currentSnapshot:r,guards:{canActivateChecks:u,canDeactivateChecks:o}}=n;return 0===o.length&&0===u.length?Object(i.a)(Object.assign({},n,{guardsResult:!0})):function(t,e,n,a){return Object(s.a)(t).pipe(Object(I.a)(t=>function(t,e,n,a,r){const s=e&&e.routeConfig?e.routeConfig.canDeactivate:null;if(!s||0===s.length)return Object(i.a)(!0);const u=s.map(i=>{const s=Re(i,e,r);let u;if(function(t){return t&&ge(t.canDeactivate)}(s))u=yt(s.canDeactivate(t,e,n,a));else{if(!ge(s))throw new Error("Invalid CanDeactivate guard");u=yt(s(t,e,n,a))}return u.pipe(Object(S.a)())});return Object(i.a)(u).pipe(Ee())}(t.component,t.route,n,e,a)),Object(S.a)(t=>!0!==t,!0))}(o,a,r,t).pipe(Object(I.a)(n=>n&&"boolean"==typeof n?function(t,e,n,a){return Object(s.a)(e).pipe(Object(P.a)(e=>Object(s.a)([De(e.route.parent,a),Le(e.route,a),Me(t,e.path,n),Pe(t,e.route,n)]).pipe(Object(T.a)(),Object(S.a)(t=>!0!==t,!0))),Object(S.a)(t=>!0!==t,!0))}(a,u,t,e):Object(i.a)(n)),Object(_.a)(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),Object(q.a)(t=>{if(pe(t.guardsResult)){const e=ut(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),Object(q.a)(t=>{const e=new K(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),Object(D.a)(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new Y(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),We(t=>{if(t.guards.canActivateChecks.length)return Object(i.a)(t).pipe(Object(q.a)(t=>{const e=new $(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),(e=this.paramsInheritanceStrategy,n=this.ngModule.injector,function(t){return t.pipe(Object(I.a)(t=>{const{targetSnapshot:a,guards:{canActivateChecks:r}}=t;return r.length?Object(s.a)(r).pipe(Object(P.a)(t=>function(t,e,n,a){return function(t,e,n,a){const r=Object.keys(t);if(0===r.length)return Object(i.a)({});if(1===r.length){const i=r[0];return Ue(t[i],e,n,a).pipe(Object(_.a)(t=>({[i]:t})))}const u={};return Object(s.a)(r).pipe(Object(I.a)(r=>Ue(t[r],e,n,a).pipe(Object(_.a)(t=>(u[r]=t,t))))).pipe(Object(w.a)(),Object(_.a)(()=>u))}(t._resolve,t,e,a).pipe(Object(_.a)(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,Kt(t,n).resolve),null)))}(t.route,a,e,n)),Object(M.a)((t,e)=>t),Object(_.a)(e=>t)):Object(i.a)(t)}))}),Object(q.a)(t=>{const e=new Z(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}));var e,n}),We(t=>{const{targetSnapshot:e,id:n,extractedUrl:a,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:s}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:a,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!s})}),Object(_.a)(t=>{const e=function(t,e,n){const a=function t(e,n,a){if(a&&e.shouldReuseRoute(n.value,a.value.snapshot)){const r=a.value;r._futureSnapshot=n.value;const i=function(e,n,a){return n.children.map(n=>{for(const r of a.children)if(e.shouldReuseRoute(r.value.snapshot,n.value))return t(e,n,r);return t(e,n)})}(e,n,a);return new zt(r,i)}{const a=e.retrieve(n.value);if(a){const t=a.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let a=0;a<e.children.length;++a)t(e.children[a],n.children[a])}(n,t),t}{const a=new Wt(new u.a((r=n.value).url),new u.a(r.params),new u.a(r.queryParams),new u.a(r.fragment),new u.a(r.data),r.outlet,r.component,r),i=n.children.map(n=>t(e,n));return new zt(a,i)}}var r}(t,e._root,n?n._root:void 0);return new Ht(a,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),Object(q.a)(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),(r=this.rootContexts,o=this.routeReuseStrategy,l=t=>this.triggerEvent(t),Object(_.a)(t=>(new fe(o,t.targetRouterState,t.currentRouterState,l).activate(r),t))),Object(q.a)({next(){n=!0},complete(){n=!0}}),Object(j.a)(()=>{if(!n&&!a){this.resetUrlToCurrentUrlTree();const n=new Y(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),Object(O.a)(n=>{if(a=!0,(r=n)&&r.ngNavigationCancelingError){const a=pe(n.url);a||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const r=new Y(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(r),t.resolve(!1),a&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const a=new H(t.id,this.serializeUrl(t.extractedUrl),n);e.next(a);try{t.resolve(this.errorHandler(n))}catch(i){t.reject(i)}}var r;return y.a}));var r,o,l}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",a=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,a,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){dt(t),this.config=t.map(ht),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:a,fragment:i,preserveQueryParams:s,queryParamsHandling:u,preserveFragment:o}=e;Object(r.isDevMode)()&&s&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const l=n||this.routerState.root,d=o?this.currentUrlTree.fragment:i;let c=null;if(u)switch(u){case"merge":c=Object.assign({},this.currentUrlTree.queryParams,a);break;case"preserve":c=this.currentUrlTree.queryParams;break;default:c=a||null}else c=s?this.currentUrlTree.queryParams:a||null;return null!==c&&(c=this.removeEmptyProps(c)),function(t,e,n,a,r){if(0===n.length)return ne(e.root,e.root,e,a,r);const i=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new ae(!0,0,t);let e=0,n=!1;const a=t.reduce((t,a,r)=>{if("object"==typeof a&&null!=a){if(a.outlets){const e={};return mt(a.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(a.segmentPath)return[...t,a.segmentPath]}return"string"!=typeof a?[...t,a]:0===r?(a.split("/").forEach((a,r)=>{0==r&&"."===a||(0==r&&""===a?n=!0:".."===a?e++:""!=a&&t.push(a))}),t):[...t,a]},[]);return new ae(n,e,a)}(n);if(i.toRoot())return ne(e.root,new _t([],{}),e,a,r);const s=function(t,e,n){if(t.isAbsolute)return new re(e.root,!0,0);if(-1===n.snapshot._lastPathIndex)return new re(n.snapshot._urlSegment,!0,0);const a=ee(t.commands[0])?0:1;return function(t,e,n){let a=t,r=e,i=n;for(;i>r;){if(i-=r,a=a.parent,!a)throw new Error("Invalid number of '../'");r=a.segments.length}return new re(a,!1,r-i)}(n.snapshot._urlSegment,n.snapshot._lastPathIndex+a,t.numberOfDoubleDots)}(i,e,t),u=s.processChildren?ue(s.segmentGroup,s.index,i.commands):se(s.segmentGroup,s.index,i.commands);return ne(s.segmentGroup,u,e,a,r)}(l,this.currentUrlTree,t,c,d)}navigateByUrl(t,e={skipLocationChange:!1}){Object(r.isDevMode)()&&this.isNgZoneEnabled&&!r.NgZone.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=pe(t)?t:this.parseUrl(t),a=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(a,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e<t.length;e++){const n=t[e];if(null==n)throw new Error(`The requested path contains ${n} segment at index ${e}`)}}(t),this.navigateByUrl(this.createUrlTree(t,e),e)}serializeUrl(t){return this.urlSerializer.serialize(t)}parseUrl(t){let e;try{e=this.urlSerializer.parse(t)}catch(n){e=this.malformedUriErrorHandler(n,this.urlSerializer,t)}return e}isActive(t,e){if(pe(t))return vt(this.currentUrlTree,t,e);const n=this.parseUrl(t);return vt(this.currentUrlTree,n,e)}removeEmptyProps(t){return Object.keys(t).reduce((e,n)=>{const a=t[n];return null!=a&&(e[n]=a),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new z(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,a){const r=this.getTransition();if(r&&"imperative"!==e&&"imperative"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"hashchange"==e&&"popstate"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"popstate"==e&&"hashchange"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);let i=null,s=null;const u=new Promise((t,e)=>{i=t,s=e}),o=++this.navigationId;return this.setTransition({id:o,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:a,resolve:i,reject:s,promise:u,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),u.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,a){const r=this.urlSerializer.serialize(t);a=a||{},this.location.isCurrentPathEqualTo(r)||e?this.location.replaceState(r,"",Object.assign({},a,{navigationId:n})):this.location.go(r,"",Object.assign({},a,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class rn{constructor(t,e,n,a,r){this.router=t,this.route=e,this.commands=[],null==n&&a.setAttribute(r.nativeElement,"tabindex","0")}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}set preserveQueryParams(t){Object(r.isDevMode)()&&console&&console.warn&&console.warn("preserveQueryParams is deprecated!, use queryParamsHandling instead."),this.preserve=t}onClick(){const t={skipLocationChange:un(this.skipLocationChange),replaceUrl:un(this.replaceUrl)};return this.router.navigateByUrl(this.urlTree,t),!0}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,preserveQueryParams:un(this.preserve),queryParamsHandling:this.queryParamsHandling,preserveFragment:un(this.preserveFragment)})}}class sn{constructor(t,e,n){this.router=t,this.route=e,this.locationStrategy=n,this.commands=[],this.subscription=t.events.subscribe(t=>{t instanceof z&&this.updateTargetUrlAndHref()})}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}set preserveQueryParams(t){Object(r.isDevMode)()&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead."),this.preserve=t}ngOnChanges(t){this.updateTargetUrlAndHref()}ngOnDestroy(){this.subscription.unsubscribe()}onClick(t,e,n,a){if(0!==t||e||n||a)return!0;if("string"==typeof this.target&&"_self"!=this.target)return!0;const r={skipLocationChange:un(this.skipLocationChange),replaceUrl:un(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,r),!1}updateTargetUrlAndHref(){this.href=this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree))}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,preserveQueryParams:un(this.preserve),queryParamsHandling:this.queryParamsHandling,preserveFragment:un(this.preserveFragment)})}}function un(t){return""===t||!!t}class on{constructor(t,e,n,a,r){this.router=t,this.element=e,this.renderer=n,this.link=a,this.linkWithHref=r,this.classes=[],this.isActive=!1,this.routerLinkActiveOptions={exact:!1},this.subscription=t.events.subscribe(t=>{t instanceof z&&this.update()})}ngAfterContentInit(){this.links.changes.subscribe(t=>this.update()),this.linksWithHrefs.changes.subscribe(t=>this.update()),this.update()}set routerLinkActive(t){const e=Array.isArray(t)?t:t.split(" ");this.classes=e.filter(t=>!!t)}ngOnChanges(t){this.update()}ngOnDestroy(){this.subscription.unsubscribe()}update(){this.links&&this.linksWithHrefs&&this.router.navigated&&Promise.resolve().then(()=>{const t=this.hasActiveLinks();this.isActive!==t&&(this.isActive=t,this.classes.forEach(e=>{t?this.renderer.addClass(this.element.nativeElement,e):this.renderer.removeClass(this.element.nativeElement,e)}))})}isLinkActive(t){return e=>t.isActive(e.urlTree,this.routerLinkActiveOptions.exact)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.linkWithHref&&t(this.linkWithHref)||this.links.some(t)||this.linksWithHrefs.some(t)}}class ln{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new dn,this.attachRef=null}}class dn{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new ln,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}class cn{constructor(t,e,n,a,i){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=i,this.activated=null,this._activatedRoute=null,this.activateEvents=new r.EventEmitter,this.deactivateEvents=new r.EventEmitter,this.name=a||"primary",t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),a=this.parentContexts.getOrCreateContext(this.name).children,r=new fn(t,a,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,r),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}class fn{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===Wt?this.route:t===dn?this.childContexts:this.parent.get(t,e)}}class hn{}class gn{preload(t,e){return e().pipe(Object(O.a)(()=>Object(i.a)(null)))}}class pn{preload(t,e){return Object(i.a)(null)}}class bn{constructor(t,e,n,a,r){this.router=t,this.injector=a,this.preloadingStrategy=r,this.loader=new Je(e,n,e=>t.triggerEvent(new J(e)),e=>t.triggerEvent(new Q(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(Object(D.a)(t=>t instanceof z),Object(P.a)(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(r.NgModuleRef);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const a of e)if(a.loadChildren&&!a.canLoad&&a._loadedConfig){const t=a._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else a.loadChildren&&!a.canLoad?n.push(this.preloadConfig(t,a)):a.children&&n.push(this.processRoutes(t,a.children));return Object(s.a)(n).pipe(Object(F.a)(),Object(_.a)(t=>{}))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Object(I.a)(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}class mn{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof B?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof z&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof at&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new at(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const yn=new r.InjectionToken("ROUTER_CONFIGURATION"),vn=new r.InjectionToken("ROUTER_FORROOT_GUARD"),xn=[a.Location,{provide:St,useClass:It},{provide:an,useFactory:Nn,deps:[r.ApplicationRef,St,dn,a.Location,r.Injector,r.NgModuleFactoryLoader,r.Compiler,Ze,yn,[Qe,new r.Optional],[Ke,new r.Optional]]},dn,{provide:Wt,useFactory:Cn,deps:[an]},{provide:r.NgModuleFactoryLoader,useClass:r.SystemJsNgModuleLoader},bn,pn,gn,{provide:yn,useValue:{enableTracing:!1}}];function _n(){return new r.NgProbeToken("Router",an)}class Tn{constructor(t,e){}static forRoot(t,e){return{ngModule:Tn,providers:[xn,In(t),{provide:vn,useFactory:Sn,deps:[[an,new r.Optional,new r.SkipSelf]]},{provide:yn,useValue:e||{}},{provide:a.LocationStrategy,useFactory:On,deps:[a.PlatformLocation,[new r.Inject(a.APP_BASE_HREF),new r.Optional],yn]},{provide:mn,useFactory:wn,deps:[an,a.ViewportScroller,yn]},{provide:hn,useExisting:e&&e.preloadingStrategy?e.preloadingStrategy:pn},{provide:r.NgProbeToken,multi:!0,useFactory:_n},[Rn,{provide:r.APP_INITIALIZER,multi:!0,useFactory:An,deps:[Rn]},{provide:En,useFactory:kn,deps:[Rn]},{provide:r.APP_BOOTSTRAP_LISTENER,multi:!0,useExisting:En}]]}}static forChild(t){return{ngModule:Tn,providers:[In(t)]}}}function wn(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new mn(t,e,n)}function On(t,e,n={}){return n.useHash?new a.HashLocationStrategy(t,e):new a.PathLocationStrategy(t,e)}function Sn(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function In(t){return[{provide:r.ANALYZE_FOR_ENTRY_COMPONENTS,multi:!0,useValue:t},{provide:Ze,multi:!0,useValue:t}]}function Nn(t,e,n,a,r,i,s,u,o={},l,d){const c=new an(null,e,n,a,r,i,s,pt(u));if(l&&(c.urlHandlingStrategy=l),d&&(c.routeReuseStrategy=d),o.errorHandler&&(c.errorHandler=o.errorHandler),o.malformedUriErrorHandler&&(c.malformedUriErrorHandler=o.malformedUriErrorHandler),o.enableTracing){const t=Object(V.q)();c.events.subscribe(e=>{t.logGroup("Router Event: "+e.constructor.name),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return o.onSameUrlNavigation&&(c.onSameUrlNavigation=o.onSameUrlNavigation),o.paramsInheritanceStrategy&&(c.paramsInheritanceStrategy=o.paramsInheritanceStrategy),o.urlUpdateStrategy&&(c.urlUpdateStrategy=o.urlUpdateStrategy),o.relativeLinkResolution&&(c.relativeLinkResolution=o.relativeLinkResolution),c}function Cn(t){return t.routerState.root}class Rn{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new x.a}appInitializer(){return this.injector.get(a.LOCATION_INITIALIZED,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(an),a=this.injector.get(yn);if(this.isLegacyDisabled(a)||this.isLegacyEnabled(a))t(!0);else if("disabled"===a.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==a.initialNavigation)throw new Error(`Invalid initialNavigation options: '${a.initialNavigation}'`);n.hooks.afterPreactivation=()=>this.initNavigation?Object(i.a)(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(yn),n=this.injector.get(bn),a=this.injector.get(mn),i=this.injector.get(an),s=this.injector.get(r.ApplicationRef);t===s.components[0]&&(this.isLegacyEnabled(e)?i.initialNavigation():this.isLegacyDisabled(e)&&i.setUpLocationChangeListener(),n.setUpPreloading(),a.init(),i.resetRootComponentType(s.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}function An(t){return t.appInitializer.bind(t)}function kn(t){return t.bootstrapListener.bind(t)}const En=new r.InjectionToken("Router Initializer")},"iQ+a":function(t,e,n){var a=n("nTk+"),r=n("1Yk6"),i=n("FGWQ");t.exports=function(t){return a(t,i,r)}},iSVu:function(t,e,n){var a=n("xs3f"),r=Function.toString;"function"!=typeof a.inspectSource&&(a.inspectSource=function(t){return r.call(t)}),t.exports=a.inspectSource},iYuL:function(t,e,n){!function(t){"use strict";var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;t.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},ienR:function(t,e,n){"use strict";n.d(e,"a",(function(){return h})),n.d(e,"b",(function(){return q})),n.d(e,"c",(function(){return j})),n.d(e,"d",(function(){return F})),n.d(e,"e",(function(){return V})),n.d(e,"f",(function(){return Y})),n.d(e,"g",(function(){return nt})),n.d(e,"h",(function(){return H})),n.d(e,"i",(function(){return B})),n.d(e,"j",(function(){return G})),n.d(e,"k",(function(){return z})),n.d(e,"l",(function(){return b})),n.d(e,"m",(function(){return st})),n.d(e,"n",(function(){return rt})),n.d(e,"o",(function(){return it})),n.d(e,"p",(function(){return dt})),n.d(e,"q",(function(){return ut})),n.d(e,"r",(function(){return ot})),n.d(e,"s",(function(){return lt})),n.d(e,"t",(function(){return M})),n.d(e,"u",(function(){return m})),n.d(e,"v",(function(){return p})),n.d(e,"w",(function(){return U})),n.d(e,"x",(function(){return W})),n.d(e,"y",(function(){return K})),n.d(e,"z",(function(){return $})),n.d(e,"A",(function(){return J})),n.d(e,"B",(function(){return Q})),n.d(e,"C",(function(){return X})),n.d(e,"D",(function(){return tt})),n.d(e,"E",(function(){return et}));var a=n("8Y7J"),r=n("pLZG"),i=n("lJxs"),s=n("IzEk"),u=n("xj/R"),o=n("2Vo4"),l=n("AfCQ"),d=n("2uy1"),c=(n("GS7A"),n("z/SZ")),f=(n("s7LF"),n("hpHm"));class h{constructor(){this.adaptivePosition=!1,this.useUtc=!1,this.isAnimated=!1,this.containerClass="theme-green",this.displayMonths=1,this.showWeekNumbers=!0,this.dateInputFormat="L",this.rangeSeparator=" - ",this.rangeInputFormat="L",this.monthTitle="MMMM",this.yearTitle="YYYY",this.dayLabel="D",this.monthLabel="MMMM",this.yearLabel="YYYY",this.weekNumbers="w"}}class g{constructor(){this._customRangesFish=[]}set minDate(t){this._effects.setMinDate(t)}set maxDate(t){this._effects.setMaxDate(t)}set daysDisabled(t){this._effects.setDaysDisabled(t)}set datesDisabled(t){this._effects.setDatesDisabled(t)}set isDisabled(t){this._effects.setDisabled(t)}set dateCustomClasses(t){this._effects.setDateCustomClasses(t)}setViewMode(t){}navigateTo(t){}dayHoverHandler(t){}weekHoverHandler(t){}monthHoverHandler(t){}yearHoverHandler(t){}daySelectHandler(t){}monthSelectHandler(t){}yearSelectHandler(t){}_stopPropagation(t){t.stopPropagation()}}let p=(()=>{class t{calculate(){return{type:t.CALCULATE}}format(){return{type:t.FORMAT}}flag(){return{type:t.FLAG}}select(e){return{type:t.SELECT,payload:e}}changeViewMode(e){return{type:t.CHANGE_VIEWMODE,payload:e}}navigateTo(e){return{type:t.NAVIGATE_TO,payload:e}}navigateStep(e){return{type:t.NAVIGATE_OFFSET,payload:e}}setOptions(e){return{type:t.SET_OPTIONS,payload:e}}selectRange(e){return{type:t.SELECT_RANGE,payload:e}}hoverDay(e){return{type:t.HOVER,payload:e.isHovered?e.cell.date:null}}minDate(e){return{type:t.SET_MIN_DATE,payload:e}}maxDate(e){return{type:t.SET_MAX_DATE,payload:e}}daysDisabled(e){return{type:t.SET_DAYSDISABLED,payload:e}}datesDisabled(e){return{type:t.SET_DATESDISABLED,payload:e}}isDisabled(e){return{type:t.SET_IS_DISABLED,payload:e}}setDateCustomClasses(e){return{type:t.SET_DATE_CUSTOM_CLASSES,payload:e}}setLocale(e){return{type:t.SET_LOCALE,payload:e}}}return t.CALCULATE="[datepicker] calculate dates matrix",t.FORMAT="[datepicker] format datepicker values",t.FLAG="[datepicker] set flags",t.SELECT="[datepicker] select date",t.NAVIGATE_OFFSET="[datepicker] shift view date",t.NAVIGATE_TO="[datepicker] change view date",t.SET_OPTIONS="[datepicker] update render options",t.HOVER="[datepicker] hover date",t.CHANGE_VIEWMODE="[datepicker] switch view mode",t.SET_MIN_DATE="[datepicker] set min date",t.SET_MAX_DATE="[datepicker] set max date",t.SET_DAYSDISABLED="[datepicker] set days disabled",t.SET_DATESDISABLED="[datepicker] set dates disabled",t.SET_IS_DISABLED="[datepicker] set is disabled",t.SET_DATE_CUSTOM_CLASSES="[datepicker] set date custom classes",t.SET_LOCALE="[datepicker] set datepicker locale",t.SELECT_RANGE="[daterangepicker] select dates range",t})();class b{constructor(){this._defaultLocale="en",this._locale=new o.a(this._defaultLocale),this._localeChange=this._locale.asObservable()}get locale(){return this._locale}get localeChange(){return this._localeChange}get currentLocale(){return this._locale.getValue()}use(t){t!==this.currentLocale&&this._locale.next(t)}}class m{constructor(t,e){this._actions=t,this._localeService=e,this._subs=[]}init(t){return this._store=t,this}setValue(t){this._store.dispatch(this._actions.select(t))}setRangeValue(t){this._store.dispatch(this._actions.selectRange(t))}setMinDate(t){return this._store.dispatch(this._actions.minDate(t)),this}setMaxDate(t){return this._store.dispatch(this._actions.maxDate(t)),this}setDaysDisabled(t){return this._store.dispatch(this._actions.daysDisabled(t)),this}setDatesDisabled(t){return this._store.dispatch(this._actions.datesDisabled(t)),this}setDisabled(t){return this._store.dispatch(this._actions.isDisabled(t)),this}setDateCustomClasses(t){return this._store.dispatch(this._actions.setDateCustomClasses(t)),this}setOptions(t){const e=Object.assign({locale:this._localeService.currentLocale},t);return this._store.dispatch(this._actions.setOptions(e)),this}setBindings(t){return t.daysCalendar=this._store.select(t=>t.flaggedMonths).pipe(Object(r.a)(t=>!!t)),t.monthsCalendar=this._store.select(t=>t.flaggedMonthsCalendar).pipe(Object(r.a)(t=>!!t)),t.yearsCalendar=this._store.select(t=>t.yearsCalendarFlagged).pipe(Object(r.a)(t=>!!t)),t.viewMode=this._store.select(t=>t.view.mode),t.options=this._store.select(t=>t.showWeekNumbers).pipe(Object(i.a)(t=>({showWeekNumbers:t}))),this}setEventHandlers(t){return t.setViewMode=t=>{this._store.dispatch(this._actions.changeViewMode(t))},t.navigateTo=t=>{this._store.dispatch(this._actions.navigateStep(t.step))},t.dayHoverHandler=t=>{const e=t.cell;e.isOtherMonth||e.isDisabled||(this._store.dispatch(this._actions.hoverDay(t)),e.isHovered=t.isHovered)},t.monthHoverHandler=t=>{t.cell.isHovered=t.isHovered},t.yearHoverHandler=t=>{t.cell.isHovered=t.isHovered},t.monthSelectHandler=t=>{t.isDisabled||this._store.dispatch(this._actions.navigateTo({unit:{month:Object(u.l)(t.date),year:Object(u.j)(t.date)},viewMode:"day"}))},t.yearSelectHandler=t=>{t.isDisabled||this._store.dispatch(this._actions.navigateTo({unit:{year:Object(u.j)(t.date)},viewMode:"month"}))},this}registerDatepickerSideEffects(){return this._subs.push(this._store.select(t=>t.view).subscribe(t=>{this._store.dispatch(this._actions.calculate())})),this._subs.push(this._store.select(t=>t.monthsModel).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.format()))),this._subs.push(this._store.select(t=>t.formattedMonths).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.selectedDate).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.selectedRange).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.monthsCalendar).subscribe(()=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.yearsCalendarModel).pipe(Object(r.a)(t=>!!t)).subscribe(()=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.hoveredDate).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.dateCustomClasses).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._localeService.localeChange.subscribe(t=>this._store.dispatch(this._actions.setLocale(t)))),this}destroy(){for(const t of this._subs)t.unsubscribe()}}const y={date:new Date,mode:"day"},v=Object.assign(new h,{locale:"en",view:y,selectedRange:[],monthViewOptions:{width:7,height:6}});function x(t,e,n){const a=e&&Object(u.p)(Object(u.d)(t,"month"),e,"day"),r=n&&Object(u.n)(Object(u.G)(t,"month"),n,"day");return a||r}function _(t,e,n){const a=e&&Object(u.p)(Object(u.d)(t,"year"),e,"day"),r=n&&Object(u.n)(Object(u.G)(t,"year"),n,"day");return a||r}function T(t,e=0){const n=t&&t.yearsCalendarModel&&t.yearsCalendarModel[e];return n&&n.years&&n.years[0]&&n.years[0][0]&&n.years[0][0].date}function w(t,e){let n=t.initialDate;const a=new Array(t.height);for(let r=0;r<t.height;r++){a[r]=new Array(t.width);for(let i=0;i<t.width;i++)a[r][i]=e(n),n=Object(u.F)(n,t.shift)}return a}function O(t,e){const n=Object(u.i)(t),a=function(t,e){if(Object(u.t)(t,e.firstDayOfWeek))return t;const n=function(t,e){if(0===e)return t;const n=t-e%7;return n<0?n+7:n}(Object(u.h)(t),e.firstDayOfWeek);return Object(u.F)(t,{day:-n})}(n,e);return{daysMatrix:w({width:e.width,height:e.height,initialDate:a,shift:{day:1}},t=>t),month:n}}function S(t){const e=Object(u.k)(t),n=e.weekdaysShort(),a=e.firstDayOfWeek();return[...n.slice(a),...n.slice(0,a)]}function I(t,e){return!e||t>=e}const N={month:1};function C(t,e){return{months:w({width:3,height:4,initialDate:Object(u.G)(t,"year"),shift:N},t=>({date:t,label:Object(u.f)(t,e.monthLabel,e.locale)})),monthTitle:"",yearTitle:Object(u.f)(t,e.yearTitle,e.locale)}}const R=-1*(Math.floor(8)-1),A={year:1};function k(t,e,n){const a=w({width:4,height:4,initialDate:function(t,e){return e&&t.getFullYear()>=e.getFullYear()&&t.getFullYear()<e.getFullYear()+16?e:Object(u.F)(t,{year:R})}(t,n),shift:A},t=>({date:t,label:Object(u.f)(t,e.yearLabel,e.locale)}));return{years:a,monthTitle:"",yearTitle:function(t,e){return`${Object(u.f)(t[0][0].date,e.yearTitle,e.locale)} - ${Object(u.f)(t[3][3].date,e.yearTitle,e.locale)}`}(a,e)}}function E(t=v,e){switch(e.type){case p.CALCULATE:return function(t){const e=t.displayMonths;let n=t.view.date;if("day"===t.view.mode){t.showPreviousMonth&&0===t.selectedRange.length&&(n=Object(u.F)(n,{month:-1})),t.monthViewOptions.firstDayOfWeek=Object(u.k)(t.locale).firstDayOfWeek();const a=new Array(e);for(let r=0;r<e;r++)a[r]=O(n,t.monthViewOptions),n=Object(u.F)(n,{month:1});return Object.assign({},t,{monthsModel:a})}if("month"===t.view.mode){const a=new Array(e);for(let r=0;r<e;r++)a[r]=C(n,D(t)),n=Object(u.F)(n,{year:1});return Object.assign({},t,{monthsCalendar:a})}if("year"===t.view.mode){const a=new Array(e);for(let r=0;r<e;r++)a[r]=k(n,D(t),"year"===t.minMode?T(t,r):void 0),n=Object(u.F)(n,{year:16});return Object.assign({},t,{yearsCalendarModel:a})}return t}(t);case p.FORMAT:return function(t,e){if("day"===t.view.mode){const e=t.monthsModel.map((e,n)=>function(t,e,n){return{month:t.month,monthTitle:Object(u.f)(t.month,e.monthTitle,e.locale),yearTitle:Object(u.f)(t.month,e.yearTitle,e.locale),weekNumbers:(a=t.daysMatrix,r=e.weekNumbers,i=e.locale,a.map(t=>t[0]?Object(u.f)(t[0],r,i):"")),weekdays:S(e.locale),weeks:t.daysMatrix.map((t,a)=>({days:t.map((t,r)=>({date:t,label:Object(u.f)(t,e.dayLabel,e.locale),monthIndex:n,weekIndex:a,dayIndex:r}))}))};var a,r,i}(e,D(t),n));return Object.assign({},t,{formattedMonths:e})}const n=t.displayMonths;let a=t.view.date;if("month"===t.view.mode){const e=new Array(n);for(let r=0;r<n;r++)e[r]=C(a,D(t)),a=Object(u.F)(a,{year:1});return Object.assign({},t,{monthsCalendar:e})}if("year"===t.view.mode){const e=new Array(n);for(let r=0;r<n;r++)e[r]=k(a,D(t)),a=Object(u.F)(a,{year:16});return Object.assign({},t,{yearsCalendarModel:e})}return t}(t);case p.FLAG:return function(t,e){if("day"===t.view.mode){const e=t.formattedMonths.map((e,n)=>function(t,e){return t.weeks.forEach(n=>{n.days.forEach((a,r)=>{const i=!Object(u.w)(a.date,t.month),s=!i&&Object(u.v)(a.date,e.hoveredDate),o=!i&&e.selectedRange&&Object(u.v)(a.date,e.selectedRange[0]),l=!i&&e.selectedRange&&Object(u.v)(a.date,e.selectedRange[1]),d=!i&&Object(u.v)(a.date,e.selectedDate)||o||l,c=!i&&e.selectedRange&&function(t,e,n){return!(!t||!e[0])&&(e[1]?t>e[0]&&t<=e[1]:!!n&&t>e[0]&&t<=n)}(a.date,e.selectedRange,e.hoveredDate),f=e.isDisabled||Object(u.p)(a.date,e.minDate,"day")||Object(u.n)(a.date,e.maxDate,"day")||Object(u.s)(a.date,e.daysDisabled)||(h=a.date,!(void 0===(g=e.datesDisabled)||!g||!g.length)&&g.some(t=>Object(u.u)(h,t,"date")));var h,g;const p=new Date,b=!i&&Object(u.v)(a.date,p),m=e.dateCustomClasses&&e.dateCustomClasses.map(t=>Object(u.v)(a.date,t.date)?t.classes:[]).reduce((t,e)=>t.concat(e),[]).join(" ")||"",y=Object.assign({},a,{isOtherMonth:i,isHovered:s,isSelected:d,isSelectionStart:o,isSelectionEnd:l,isInRange:c,isDisabled:f,isToday:b,customClasses:m});a.isOtherMonth===y.isOtherMonth&&a.isHovered===y.isHovered&&a.isSelected===y.isSelected&&a.isSelectionStart===y.isSelectionStart&&a.isSelectionEnd===y.isSelectionEnd&&a.isDisabled===y.isDisabled&&a.isInRange===y.isInRange&&a.customClasses===y.customClasses||(n.days[r]=y)})}),t.hideLeftArrow=e.isDisabled||e.monthIndex>0&&e.monthIndex!==e.displayMonths,t.hideRightArrow=e.isDisabled||e.monthIndex<e.displayMonths&&e.monthIndex+1!==e.displayMonths,t.disableLeftArrow=x(Object(u.F)(t.month,{month:-1}),e.minDate,e.maxDate),t.disableRightArrow=x(Object(u.F)(t.month,{month:1}),e.minDate,e.maxDate),t}(e,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,daysDisabled:t.daysDisabled,datesDisabled:t.datesDisabled,hoveredDate:t.hoveredDate,selectedDate:t.selectedDate,selectedRange:t.selectedRange,displayMonths:t.displayMonths,dateCustomClasses:t.dateCustomClasses,monthIndex:n}));return Object.assign({},t,{flaggedMonths:e})}if("month"===t.view.mode){const e=t.monthsCalendar.map((e,n)=>{return r={isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,hoveredMonth:t.hoveredMonth,selectedDate:t.selectedDate,displayMonths:t.displayMonths,monthIndex:n},(a=e).months.forEach((t,e)=>{t.forEach((t,n)=>{const i=Object(u.w)(t.date,r.hoveredMonth),s=r.isDisabled||x(t.date,r.minDate,r.maxDate),o=Object(u.w)(t.date,r.selectedDate),l=Object.assign(t,{isHovered:i,isDisabled:s,isSelected:o});t.isHovered===l.isHovered&&t.isDisabled===l.isDisabled&&t.isSelected===l.isSelected||(a.months[e][n]=l)})}),a.hideLeftArrow=r.monthIndex>0&&r.monthIndex!==r.displayMonths,a.hideRightArrow=r.monthIndex<r.displayMonths&&r.monthIndex+1!==r.displayMonths,a.disableLeftArrow=_(Object(u.F)(a.months[0][0].date,{year:-1}),r.minDate,r.maxDate),a.disableRightArrow=_(Object(u.F)(a.months[0][0].date,{year:1}),r.minDate,r.maxDate),a;var a,r});return Object.assign({},t,{flaggedMonthsCalendar:e})}if("year"===t.view.mode){const e=t.yearsCalendarModel.map((e,n)=>function(t,e){t.years.forEach((n,a)=>{n.forEach((n,r)=>{const i=Object(u.x)(n.date,e.hoveredYear),s=e.isDisabled||_(n.date,e.minDate,e.maxDate),o=Object(u.x)(n.date,e.selectedDate),l=Object.assign(n,{isHovered:i,isDisabled:s,isSelected:o});n.isHovered===l.isHovered&&n.isDisabled===l.isDisabled&&n.isSelected===l.isSelected||(t.years[a][r]=l)})}),t.hideLeftArrow=e.yearIndex>0&&e.yearIndex!==e.displayMonths,t.hideRightArrow=e.yearIndex<e.displayMonths&&e.yearIndex+1!==e.displayMonths,t.disableLeftArrow=_(Object(u.F)(t.years[0][0].date,{year:-1}),e.minDate,e.maxDate);const n=t.years.length-1,a=t.years[n].length-1;return t.disableRightArrow=_(Object(u.F)(t.years[n][a].date,{year:1}),e.minDate,e.maxDate),t}(e,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,hoveredYear:t.hoveredYear,selectedDate:t.selectedDate,displayMonths:t.displayMonths,yearIndex:n}));return Object.assign({},t,{yearsCalendarFlagged:e})}return t}(t);case p.NAVIGATE_OFFSET:return function(t,e){const n={view:{mode:t.view.mode,date:L(t,e)}};return Object.assign({},t,n)}(t,e);case p.NAVIGATE_TO:{const n=e.payload,a=Object(u.E)(t.view.date,n.unit);let r,i;return I(n.viewMode,t.minMode)?(i=n.viewMode,r={view:{date:a,mode:i}}):(i=t.view.mode,r={selectedDate:a,view:{date:a,mode:i}}),Object.assign({},t,r)}case p.CHANGE_VIEWMODE:return I(e.payload,t.minMode)?Object.assign({},t,{view:{date:t.view.date,mode:e.payload}}):t;case p.HOVER:return Object.assign({},t,{hoveredDate:e.payload});case p.SELECT:{const n={selectedDate:e.payload,view:t.view},a=t.view.mode,r=P(e.payload||t.view.date,t.minDate,t.maxDate);return n.view={mode:a,date:r},Object.assign({},t,n)}case p.SET_OPTIONS:{const n=e.payload,a=n.minMode?n.minMode:t.view.mode,r=P(Object(u.r)(n.value)&&n.value||Object(u.o)(n.value)&&Object(u.r)(n.value[0])&&n.value[0]||t.view.date,n.minDate,n.maxDate);return n.view={mode:a,date:r},n.value&&(Object(u.o)(n.value)&&(n.selectedRange=n.value),n.value instanceof Date&&(n.selectedDate=n.value)),Object.assign({},t,n)}case p.SELECT_RANGE:{const n={selectedRange:e.payload,view:t.view},a=t.view.mode,r=P(e.payload&&e.payload[0]||t.view.date,t.minDate,t.maxDate);return n.view={mode:a,date:r},Object.assign({},t,n)}case p.SET_MIN_DATE:return Object.assign({},t,{minDate:e.payload});case p.SET_MAX_DATE:return Object.assign({},t,{maxDate:e.payload});case p.SET_IS_DISABLED:return Object.assign({},t,{isDisabled:e.payload});case p.SET_DATE_CUSTOM_CLASSES:return Object.assign({},t,{dateCustomClasses:e.payload});default:return t}}function L(t,e){if("year"===t.view.mode&&"year"===t.minMode){const n=T(t,0),a=Object(u.F)(n,{year:-R});return Object(u.F)(a,e.payload)}return Object(u.F)(Object(u.G)(t.view.date,"month"),e.payload)}function D(t){return{locale:t.locale,monthTitle:t.monthTitle,yearTitle:t.yearTitle,dayLabel:t.dayLabel,monthLabel:t.monthLabel,yearLabel:t.yearLabel,weekNumbers:t.weekNumbers}}function P(t,e,n){const a=Array.isArray(t)?t[0]:t;return e&&Object(u.n)(e,a,"day")?e:n&&Object(u.p)(n,a,"day")?n:a}class M extends l.b{constructor(){const t=new o.a({type:"[datepicker] dispatcher init"});super(t,E,new l.a(v,t,E))}}class q extends g{constructor(t,e,n,r,i,s,u){super(),this._config=e,this._store=n,this._element=r,this._actions=i,this._positionService=u,this.valueChange=new a.EventEmitter,this.animationState="void",this._subs=[],this._effects=s,t.setStyle(r.nativeElement,"display","block"),t.setStyle(r.nativeElement,"position","absolute")}set value(t){this._effects.setValue(t)}ngOnInit(){this._positionService.setOptions({modifiers:{flip:{enabled:this._config.adaptivePosition}},allowedPositions:["top","bottom"]}),this._positionService.event$.pipe(Object(s.a)(1)).subscribe(()=>{this._positionService.disable(),this.animationState=this._config.isAnimated?this.isTopPosition?"animated-up":"animated-down":"unanimated"}),this.isOtherMonthsActive=this._config.selectFromOtherMonth,this.containerClass=this._config.containerClass,this._effects.init(this._store).setOptions(this._config).setBindings(this).setEventHandlers(this).registerDatepickerSideEffects(),this._subs.push(this._store.select(t=>t.selectedDate).subscribe(t=>this.valueChange.emit(t)))}get isTopPosition(){return this._element.nativeElement.classList.contains("top")}positionServiceEnable(){this._positionService.enable()}daySelectHandler(t){(this.isOtherMonthsActive?t.isDisabled:t.isOtherMonth||t.isDisabled)||this._store.dispatch(this._actions.select(t.date))}ngOnDestroy(){for(const t of this._subs)t.unsubscribe();this._effects.destroy()}}class j{constructor(t,e,n,r,i){this._config=t,this.placement="bottom",this.triggers="click",this.outsideClick=!0,this.container="body",this.outsideEsc=!0,this.bsValueChange=new a.EventEmitter,this._subs=[],Object.assign(this,this._config),this._datepicker=i.createLoader(e,r,n),this.onShown=this._datepicker.onShown,this.onHidden=this._datepicker.onHidden}get isOpen(){return this._datepicker.isShown}set isOpen(t){t?this.show():this.hide()}set bsValue(t){this._bsValue&&t&&this._bsValue.getTime()===t.getTime()||(this._bsValue=t,this.bsValueChange.emit(t))}ngOnInit(){this._datepicker.listen({outsideClick:this.outsideClick,outsideEsc:this.outsideEsc,triggers:this.triggers,show:()=>this.show()}),this.setConfig()}ngOnChanges(t){this._datepickerRef&&this._datepickerRef.instance&&(t.minDate&&(this._datepickerRef.instance.minDate=this.minDate),t.maxDate&&(this._datepickerRef.instance.maxDate=this.maxDate),t.daysDisabled&&(this._datepickerRef.instance.daysDisabled=this.daysDisabled),t.datesDisabled&&(this._datepickerRef.instance.datesDisabled=this.datesDisabled),t.isDisabled&&(this._datepickerRef.instance.isDisabled=this.isDisabled),t.dateCustomClasses&&(this._datepickerRef.instance.dateCustomClasses=this.dateCustomClasses))}show(){this._datepicker.isShown||(this.setConfig(),this._datepickerRef=this._datepicker.provide({provide:h,useValue:this._config}).attach(q).to(this.container).position({attachment:this.placement}).show({placement:this.placement}),this._subs.push(this.bsValueChange.subscribe(t=>{this._datepickerRef.instance.value=t})),this._subs.push(this._datepickerRef.instance.valueChange.subscribe(t=>{this.bsValue=t,this.hide()})))}hide(){this.isOpen&&this._datepicker.hide();for(const t of this._subs)t.unsubscribe()}toggle(){if(this.isOpen)return this.hide();this.show()}setConfig(){this._config=Object.assign({},this._config,this.bsConfig,{value:this._bsValue,isDisabled:this.isDisabled,minDate:this.minDate||this.bsConfig&&this.bsConfig.minDate,maxDate:this.maxDate||this.bsConfig&&this.bsConfig.maxDate,daysDisabled:this.daysDisabled||this.bsConfig&&this.bsConfig.daysDisabled,dateCustomClasses:this.dateCustomClasses||this.bsConfig&&this.bsConfig.dateCustomClasses,datesDisabled:this.datesDisabled||this.bsConfig&&this.bsConfig.datesDisabled,minMode:this.minMode||this.bsConfig&&this.bsConfig.minMode})}ngOnDestroy(){this._datepicker.dispose()}}class F extends h{}class V extends q{constructor(t,e,n,a,r,i,s){super(t,e,n,a,r,i,s),t.setStyle(a.nativeElement,"display","inline-block"),t.setStyle(a.nativeElement,"position","static")}}class G extends h{constructor(){super(...arguments),this.displayMonths=2,this.isAnimated=!1}}class B extends g{constructor(t,e,n,r,i,s,u){super(),this._config=e,this._store=n,this._element=r,this._actions=i,this._positionService=u,this.valueChange=new a.EventEmitter,this.animationState="void",this._rangeStack=[],this._subs=[],this._effects=s,t.setStyle(r.nativeElement,"display","block"),t.setStyle(r.nativeElement,"position","absolute")}set value(t){this._effects.setRangeValue(t)}ngOnInit(){this._positionService.setOptions({modifiers:{flip:{enabled:this._config.adaptivePosition}},allowedPositions:["top","bottom"]}),this._positionService.event$.pipe(Object(s.a)(1)).subscribe(()=>{this._positionService.disable(),this.animationState=this._config.isAnimated?this.isTopPosition?"animated-up":"animated-down":"unanimated"}),this.containerClass=this._config.containerClass,this.isOtherMonthsActive=this._config.selectFromOtherMonth,this._effects.init(this._store).setOptions(this._config).setBindings(this).setEventHandlers(this).registerDatepickerSideEffects(),this._subs.push(this._store.select(t=>t.selectedRange).subscribe(t=>this.valueChange.emit(t)))}get isTopPosition(){return this._element.nativeElement.classList.contains("top")}positionServiceEnable(){this._positionService.enable()}daySelectHandler(t){(this.isOtherMonthsActive?t.isDisabled:t.isOtherMonth||t.isDisabled)||(1===this._rangeStack.length&&(this._rangeStack=t.date>=this._rangeStack[0]?[this._rangeStack[0],t.date]:[t.date]),0===this._rangeStack.length&&(this._rangeStack=[t.date]),this._store.dispatch(this._actions.selectRange(this._rangeStack)),2===this._rangeStack.length&&(this._rangeStack=[]))}ngOnDestroy(){for(const t of this._subs)t.unsubscribe();this._effects.destroy()}}class z extends B{constructor(t,e,n,a,r,i,s){super(t,e,n,a,r,i,s),t.setStyle(a.nativeElement,"display","inline-block"),t.setStyle(a.nativeElement,"position","static")}}class Y{constructor(t,e,n,a,r){this._picker=t,this._localeService=e,this._renderer=n,this._elRef=a,this.changeDetection=r,this._onChange=Function.prototype,this._onTouched=Function.prototype,this._validatorChange=Function.prototype,this._picker.bsValueChange.subscribe(t=>{let e=t;if(t){const n=this._localeService.currentLocale,a=Object(u.k)(n);if(!a)throw new Error(`Locale "${n}" is not defined, please add it with "defineLocale(...)"`);e=a.preinput(t)}this._setInputValue(e),this._value!==e&&(this._value=e,this._onChange(e),this._onTouched()),this.changeDetection.markForCheck()}),this._localeService.localeChange.subscribe(()=>{this._setInputValue(this._value)})}_setInputValue(t){const e=t?Object(u.f)(t,this._picker._config.dateInputFormat,this._localeService.currentLocale):"";this._renderer.setProperty(this._elRef.nativeElement,"value",e)}onChange(t){this.writeValue(t.target.value),this._onChange(this._value),this._onTouched()}validate(t){const e=t.value;if(null==e||""===e)return null;if(Object(u.q)(e)){if(!Object(u.r)(e))return{bsDate:{invalid:e}};if(this._picker&&this._picker.minDate&&Object(u.p)(e,this._picker.minDate,"date"))return this.writeValue(this._picker.minDate),{bsDate:{minDate:this._picker.minDate}};if(this._picker&&this._picker.maxDate&&Object(u.n)(e,this._picker.maxDate,"date"))return this.writeValue(this._picker.maxDate),{bsDate:{maxDate:this._picker.maxDate}}}}registerOnValidatorChange(t){this._validatorChange=t}writeValue(t){if(t){const e=this._localeService.currentLocale;if(!Object(u.k)(e))throw new Error(`Locale "${e}" is not defined, please add it with "defineLocale(...)"`);this._value=Object(u.B)(t,this._picker._config.dateInputFormat,this._localeService.currentLocale),this._picker._config.useUtc&&(this._value=Object(u.H)(this._value))}else this._value=null;this._picker.bsValue=this._value}setDisabledState(t){this._picker.isDisabled=t,t?this._renderer.setAttribute(this._elRef.nativeElement,"disabled","disabled"):this._renderer.removeAttribute(this._elRef.nativeElement,"disabled")}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}onBlur(){this._onTouched()}hide(){this._picker.hide(),this._renderer.selectRootElement(this._elRef.nativeElement).blur()}}class H extends h{constructor(){super(...arguments),this.displayMonths=2}}class U{}class W{}class K{}class ${constructor(t,e,n){this._config=t,this._elRef=e,this._renderer=n}ngOnInit(){this.day.isToday&&this._config&&this._config.customTodayClass&&this._renderer.addClass(this._elRef.nativeElement,this._config.customTodayClass),"string"==typeof this.day.customClasses&&this.day.customClasses.split(" ").filter(t=>t).forEach(t=>{this._renderer.addClass(this._elRef.nativeElement,t)})}}const Z=function(){var t={UP:0,DOWN:1};return t[t.UP]="UP",t[t.DOWN]="DOWN",t}();class J{constructor(){this.onNavigate=new a.EventEmitter,this.onViewMode=new a.EventEmitter}navTo(t){this.onNavigate.emit(t?Z.DOWN:Z.UP)}view(t){this.onViewMode.emit(t)}}class Q{constructor(t){this._config=t,this.onNavigate=new a.EventEmitter,this.onViewMode=new a.EventEmitter,this.onSelect=new a.EventEmitter,this.onHover=new a.EventEmitter,this.onHoverWeek=new a.EventEmitter}navigateTo(t){this.onNavigate.emit({step:{month:Z.DOWN===t?-1:1}})}changeViewMode(t){this.onViewMode.emit(t)}selectDay(t){this.onSelect.emit(t)}selectWeek(t){if(!this._config.selectWeek)return;if(t.days&&t.days[0]&&!t.days[0].isDisabled&&this._config.selectFromOtherMonth)return void this.onSelect.emit(t.days[0]);if(0===t.days.length)return;const e=t.days.find(t=>(this._config.selectFromOtherMonth||!t.isOtherMonth)&&!t.isDisabled);this.onSelect.emit(e)}weekHoverHandler(t,e){this._config.selectWeek&&t.days.find(t=>(this._config.selectFromOtherMonth||!t.isOtherMonth)&&!t.isDisabled)&&(t.isHovered=e,this.isWeekHovered=e,this.onHoverWeek.emit(t))}hoverDay(t,e){this._config.selectFromOtherMonth&&t.isOtherMonth&&(t.isOtherMonthHovered=e),this.onHover.emit({cell:t,isHovered:e})}}class X{constructor(){this.onNavigate=new a.EventEmitter,this.onViewMode=new a.EventEmitter,this.onSelect=new a.EventEmitter,this.onHover=new a.EventEmitter}navigateTo(t){this.onNavigate.emit({step:{year:Z.DOWN===t?-1:1}})}viewMonth(t){this.onSelect.emit(t)}hoverMonth(t,e){this.onHover.emit({cell:t,isHovered:e})}changeViewMode(t){this.onViewMode.emit(t)}}class tt{constructor(){this.ampm="ok",this.hours=0,this.minutes=0}}class et{constructor(){this.onNavigate=new a.EventEmitter,this.onViewMode=new a.EventEmitter,this.onSelect=new a.EventEmitter,this.onHover=new a.EventEmitter}navigateTo(t){this.onNavigate.emit({step:{year:16*(Z.DOWN===t?-1:1)}})}viewYear(t){this.onSelect.emit(t)}hoverYear(t,e){this.onHover.emit({cell:t,isHovered:e})}changeViewMode(t){this.onViewMode.emit(t)}}class nt{static forRoot(){return{ngModule:nt,providers:[c.a,d.a,M,p,h,H,F,G,m,b]}}}class at{format(t,e,n){return Object(u.f)(t,e,n)}}class rt{constructor(){this.selectionDone=new a.EventEmitter(void 0),this.update=new a.EventEmitter(!1),this.activeDateChange=new a.EventEmitter(void 0),this.stepDay={},this.stepMonth={},this.stepYear={},this.modes=["day","month","year"],this.dateFormatter=new at}get activeDate(){return this._activeDate}set activeDate(t){this._activeDate=t}ngOnInit(){this.uniqueId="datepicker--"+Math.floor(1e4*Math.random()),this.initDate?(this.activeDate=this.initDate,this.selectedDate=new Date(this.activeDate.valueOf()),this.update.emit(this.activeDate)):void 0===this.activeDate&&(this.activeDate=new Date)}ngOnChanges(t){this.refreshView(),this.checkIfActiveDateGotUpdated(t.activeDate)}checkIfActiveDateGotUpdated(t){if(t&&!t.firstChange){const e=t.previousValue;e&&e instanceof Date&&e.getTime()!==t.currentValue.getTime()&&this.activeDateChange.emit(this.activeDate)}}setCompareHandler(t,e){"day"===e&&(this.compareHandlerDay=t),"month"===e&&(this.compareHandlerMonth=t),"year"===e&&(this.compareHandlerYear=t)}compare(t,e){if(void 0!==t&&void 0!==e)return"day"===this.datepickerMode&&this.compareHandlerDay?this.compareHandlerDay(t,e):"month"===this.datepickerMode&&this.compareHandlerMonth?this.compareHandlerMonth(t,e):"year"===this.datepickerMode&&this.compareHandlerYear?this.compareHandlerYear(t,e):void 0}setRefreshViewHandler(t,e){"day"===e&&(this.refreshViewHandlerDay=t),"month"===e&&(this.refreshViewHandlerMonth=t),"year"===e&&(this.refreshViewHandlerYear=t)}refreshView(){"day"===this.datepickerMode&&this.refreshViewHandlerDay&&this.refreshViewHandlerDay(),"month"===this.datepickerMode&&this.refreshViewHandlerMonth&&this.refreshViewHandlerMonth(),"year"===this.datepickerMode&&this.refreshViewHandlerYear&&this.refreshViewHandlerYear()}dateFilter(t,e){return this.dateFormatter.format(t,e,this.locale)}isActive(t){return 0===this.compare(t.date,this.activeDate)&&(this.activeDateId=t.uid,!0)}createDateObject(t,e){const n={};return n.date=new Date(t.getFullYear(),t.getMonth(),t.getDate()),n.date=this.fixTimeZone(n.date),n.label=this.dateFilter(t,e),n.selected=0===this.compare(t,this.selectedDate),n.disabled=this.isDisabled(t),n.current=0===this.compare(t,new Date),n.customClass=this.getCustomClassForDate(n.date),n}split(t,e){const n=[];for(;t.length>0;)n.push(t.splice(0,e));return n}fixTimeZone(t){const e=t.getHours();return new Date(t.getFullYear(),t.getMonth(),t.getDate(),23===e?e+2:0)}select(t,e=!0){this.datepickerMode===this.minMode?(this.activeDate||(this.activeDate=new Date(0,0,0,0,0,0,0)),this.activeDate=new Date(t.getFullYear(),t.getMonth(),t.getDate()),this.activeDate=this.fixTimeZone(this.activeDate),e&&this.selectionDone.emit(this.activeDate)):(this.activeDate=new Date(t.getFullYear(),t.getMonth(),t.getDate()),this.activeDate=this.fixTimeZone(this.activeDate),e&&(this.datepickerMode=this.modes[this.modes.indexOf(this.datepickerMode)-1])),this.selectedDate=new Date(this.activeDate.valueOf()),this.update.emit(this.activeDate),this.refreshView()}move(t){let e;if("day"===this.datepickerMode&&(e=this.stepDay),"month"===this.datepickerMode&&(e=this.stepMonth),"year"===this.datepickerMode&&(e=this.stepYear),e){const n=this.activeDate.getFullYear()+t*(e.years||0),a=this.activeDate.getMonth()+t*(e.months||0);this.activeDate=new Date(n,a,1),this.refreshView(),this.activeDateChange.emit(this.activeDate)}}toggleMode(t){const e=t||1;this.datepickerMode===this.maxMode&&1===e||this.datepickerMode===this.minMode&&-1===e||(this.datepickerMode=this.modes[this.modes.indexOf(this.datepickerMode)+e],this.refreshView())}getCustomClassForDate(t){if(!this.customClass)return"";const e=this.customClass.find(e=>e.date.valueOf()===t.valueOf()&&e.mode===this.datepickerMode,this);return void 0===e?"":e.clazz}compareDateDisabled(t,e){if(void 0!==t&&void 0!==e)return"day"===t.mode&&this.compareHandlerDay?this.compareHandlerDay(t.date,e):"month"===t.mode&&this.compareHandlerMonth?this.compareHandlerMonth(t.date,e):"year"===t.mode&&this.compareHandlerYear?this.compareHandlerYear(t.date,e):void 0}isDisabled(t){let e=!1;return this.dateDisabled&&this.dateDisabled.forEach(n=>{0===this.compareDateDisabled(n,t)&&(e=!0)}),this.dayDisabled&&(e=e||this.dayDisabled.indexOf(t.getDay())>-1),e||this.minDate&&this.compare(t,this.minDate)<0||this.maxDate&&this.compare(t,this.maxDate)>0}}class it{constructor(){this.locale="en",this.datepickerMode="day",this.startingDay=0,this.yearRange=20,this.minMode="day",this.maxMode="year",this.showWeeks=!0,this.formatDay="DD",this.formatMonth="MMMM",this.formatYear="YYYY",this.formatDayHeader="dd",this.formatDayTitle="MMMM YYYY",this.formatMonthTitle="YYYY",this.onlyCurrentMonth=!1,this.monthColLimit=3,this.yearColLimit=5,this.shortcutPropagation=!1}}class st{constructor(t){this.datepickerMode="day",this.showWeeks=!0,this.selectionDone=new a.EventEmitter(void 0),this.activeDateChange=new a.EventEmitter(void 0),this.onChange=Function.prototype,this.onTouched=Function.prototype,this._now=new Date,this.config=t,this.configureOptions()}get activeDate(){return this._activeDate||this._now}set activeDate(t){this._activeDate=t}configureOptions(){Object.assign(this,this.config)}onUpdate(t){this.activeDate=t,this.onChange(t)}onSelectionDone(t){this.selectionDone.emit(t)}onActiveDateChange(t){this.activeDateChange.emit(t)}writeValue(t){if(0!==this._datePicker.compare(t,this._activeDate))return t&&t instanceof Date?(this.activeDate=t,void this._datePicker.select(t,!1)):void(this.activeDate=t?new Date(t):void 0)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}}class ut{constructor(t){this.labels=[],this.rows=[],this.weekNumbers=[],this.datePicker=t}get isBs4(){return!Object(f.d)()}ngOnInit(){const t=this;this.datePicker.stepDay={months:1},this.datePicker.setRefreshViewHandler((function(){const e=this.activeDate.getFullYear(),n=this.activeDate.getMonth(),a=new Date(e,n,1),r=this.startingDay-a.getDay(),i=r>0?7-r:-r,s=new Date(a.getTime());i>0&&s.setDate(1-i);const u=t.getDates(s,42),o=[];for(let t=0;t<42;t++){const e=this.createDateObject(u[t],this.formatDay);e.secondary=u[t].getMonth()!==n,e.uid=this.uniqueId+"-"+t,o[t]=e}t.labels=[];for(let l=0;l<7;l++)t.labels[l]={},t.labels[l].abbr=this.dateFilter(o[l].date,this.formatDayHeader),t.labels[l].full=this.dateFilter(o[l].date,"EEEE");if(t.title=this.dateFilter(this.activeDate,this.formatDayTitle),t.rows=this.split(o,7),this.showWeeks){t.weekNumbers=[];const e=(11-this.startingDay)%7,n=t.rows.length;for(let a=0;a<n;a++)t.weekNumbers.push(t.getISO8601WeekNumber(t.rows[a][e].date))}}),"day"),this.datePicker.setCompareHandler((function(t,e){const n=new Date(t.getFullYear(),t.getMonth(),t.getDate()),a=new Date(e.getFullYear(),e.getMonth(),e.getDate());return n.getTime()-a.getTime()}),"day"),this.datePicker.refreshView()}getDates(t,e){const n=new Array(e);let a,r=new Date(t.getTime()),i=0;for(;i<e;)a=new Date(r.getTime()),a=this.datePicker.fixTimeZone(a),n[i++]=a,r=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);return n}getISO8601WeekNumber(t){const e=new Date(t.getTime());e.setDate(e.getDate()+4-(e.getDay()||7));const n=e.getTime();return e.setMonth(0),e.setDate(1),Math.floor(Math.round((n-e.getTime())/864e5)/7)+1}}class ot{constructor(t){this.rows=[],this.datePicker=t}get isBs4(){return!Object(f.d)()}ngOnInit(){const t=this;this.datePicker.stepMonth={years:1},this.datePicker.setRefreshViewHandler((function(){const e=new Array(12),n=this.activeDate.getFullYear();let a;for(let t=0;t<12;t++)a=new Date(n,t,1),a=this.fixTimeZone(a),e[t]=this.createDateObject(a,this.formatMonth),e[t].uid=this.uniqueId+"-"+t;t.title=this.dateFilter(this.activeDate,this.formatMonthTitle),t.rows=this.split(e,t.datePicker.monthColLimit)}),"month"),this.datePicker.setCompareHandler((function(t,e){const n=new Date(t.getFullYear(),t.getMonth()),a=new Date(e.getFullYear(),e.getMonth());return n.getTime()-a.getTime()}),"month"),this.datePicker.refreshView()}}class lt{constructor(t){this.rows=[],this.datePicker=t}get isBs4(){return!Object(f.d)()}ngOnInit(){const t=this;this.datePicker.stepYear={years:this.datePicker.yearRange},this.datePicker.setRefreshViewHandler((function(){const e=new Array(this.yearRange);let n;const a=t.getStartingYear(this.activeDate.getFullYear());for(let t=0;t<this.yearRange;t++)n=new Date(a+t,0,1),n=this.fixTimeZone(n),e[t]=this.createDateObject(n,this.formatYear),e[t].uid=this.uniqueId+"-"+t;t.title=[e[0].label,e[this.yearRange-1].label].join(" - "),t.rows=this.split(e,t.datePicker.yearColLimit)}),"year"),this.datePicker.setCompareHandler((function(t,e){return t.getFullYear()-e.getFullYear()}),"year"),this.datePicker.refreshView()}getStartingYear(t){return(t-1)/this.datePicker.yearRange*this.datePicker.yearRange+1}}class dt{static forRoot(){return{ngModule:dt,providers:[it]}}}},im1V:function(t,e,n){var a=n("Q7RW"),r=n("KNDS");t.exports=function(t){return null!=t&&r(t.length)&&!a(t)}},insk:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("oxzT");n("20UP");class r{constructor(t,e,n){this.sanitizer=t,this.settingsService=e,this.i18n=n,this.grafanaExist=!1,this.mode="&kiosk",this.loading=!0,this.styles={},this.dashboardExist=!0,this.icons=a.a,this.DEFAULT_TIME="from=now-1h&to=now",this.grafanaTimes=[{name:this.i18n("Last 5 minutes"),value:"from=now-5m&to=now"},{name:this.i18n("Last 15 minutes"),value:"from=now-15m&to=now"},{name:this.i18n("Last 30 minutes"),value:"from=now-30m&to=now"},{name:this.i18n("Last 1 hour (Default)"),value:"from=now-1h&to=now"},{name:this.i18n("Last 3 hours"),value:"from=now-3h&to=now"},{name:this.i18n("Last 6 hours"),value:"from=now-6h&to=now"},{name:this.i18n("Last 12 hours"),value:"from=now-12h&to=now"},{name:this.i18n("Last 24 hours"),value:"from=now-24h&to=now"},{name:this.i18n("Yesterday"),value:"from=now-1d%2Fd&to=now-1d%2Fd"},{name:this.i18n("Today so far"),value:"from=now%2Fd&to=now"},{name:this.i18n("Day before yesterday"),value:"from=now-2d%2Fd&to=now-2d%2Fd"},{name:this.i18n("Last 2 days"),value:"from=now-2d&to=now"},{name:this.i18n("This day last week"),value:"from=now-7d%2Fd&to=now-7d%2Fd"},{name:this.i18n("Previous week"),value:"from=now-1w%2Fw&to=now-1w%2Fw"},{name:this.i18n("This week so far"),value:"from=now%2Fw&to=now"},{name:this.i18n("Last 7 days"),value:"from=now-7d&to=now"},{name:this.i18n("Previous month"),value:"from=now-1M%2FM&to=now-1M%2FM"},{name:this.i18n("This month so far"),value:"from=now%2FM&to=now"},{name:this.i18n("Last 30 days"),value:"from=now-30d&to=now"},{name:this.i18n("Last 90 days"),value:"from=now-90d&to=now"},{name:this.i18n("Last 6 months"),value:"from=now-6M&to=now"},{name:this.i18n("Last 1 year"),value:"from=now-1y&to=now"},{name:this.i18n("Previous year"),value:"from=now-1y%2Fy&to=now-1y%2Fy"},{name:this.i18n("This year so far"),value:"from=now%2Fy&to=now"},{name:this.i18n("Last 2 years"),value:"from=now-2y&to=now"},{name:this.i18n("Last 5 years"),value:"from=now-5y&to=now"}]}ngOnInit(){this.time=this.DEFAULT_TIME,this.styles={one:"grafana_one",two:"grafana_two",three:"grafana_three",four:"grafana_four"},this.settingsService.ifSettingConfigured("api/grafana/url",t=>{this.grafanaExist=!0,this.loading=!1,this.baseUrl=t+"/d/",this.getFrame()}),this.panelStyle=this.styles[this.grafanaStyle]}getFrame(){this.settingsService.validateGrafanaDashboardUrl(this.uid).subscribe(t=>this.dashboardExist=200===t),this.url=this.baseUrl+this.uid+"/"+this.grafanaPath+"&refresh=2s"+this.mode+"&"+this.time,this.grafanaSrc=this.sanitizer.bypassSecurityTrustResourceUrl(this.url)}onTimepickerChange(){this.grafanaExist&&this.getFrame()}reset(){this.time=this.DEFAULT_TIME,this.grafanaExist&&this.getFrame()}ngOnChanges(){this.grafanaExist&&this.getFrame()}}},ioe2:function(t,e,n){var a=n("xAZD");t.exports=function(t,e){return a(e,(function(e){return t[e]}))}},iqWW:function(t,e,n){"use strict";var a=n("ZUd8").charAt;t.exports=function(t,e,n){return e+(n?a(t,e).length:1)}},isl5:function(t,e,n){var a=n("Wa4q");t.exports=a["__core-js_shared__"]},iutN:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("8Y7J"),r=n("FE24"),i=n("GS7A"),s=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function u(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,1,"div",[],[[2,"dropup",null],[2,"dropdown",null],[2,"show",null],[2,"open",null]],null,null,null,null)),a["ɵncd"](null,0)],null,(function(t,e){var n=e.component;t(e,0,0,"up"===n.direction,"down"===n.direction,n.isOpen,n.isOpen)}))}function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-dropdown-container",[["style","display:block;position: absolute;"]],null,null,null,u,s)),a["ɵdid"](1,180224,null,0,r.b,[r.f,a.ChangeDetectorRef,a.Renderer2,a.ElementRef,i.b],null,null)],null,null)}var l=a["ɵccf"]("bs-dropdown-container",r.b,o,{},{},["*"])},j09V:function(t,e,n){(function(t){var a=n("Wa4q"),r=e&&!e.nodeType&&e,i=r&&"object"==typeof t&&t&&!t.nodeType&&t,s=i&&i.exports===r?a.Buffer:void 0,u=s?s.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,a=u?u(n):new t.constructor(n);return t.copy(a),a}}).call(this,n("YuTi")(t))},j8L6:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("25BL"),i=n("uIqm"),s=n("DqMs"),u=n("/NlG"),o=n("GiVz"),l=n("o4+5"),d=n("aXbf"),c=n("SVse");n("b5OY"),n("pxLl"),n.d(e,"a",(function(){return f})),n.d(e,"b",(function(){return b}));var f=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function h(t){return a["ɵvid"](0,[(t()(),a["ɵted"](0,null,[" "," "," "])),a["ɵppd"](1,1)],null,(function(t,e){var n=a["ɵunv"](e,0,0,t(e,1,0,a["ɵnov"](e.parent.parent,0),e.context.row.value));t(e,0,0,n,e.context.row.unit)}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(t,e,n){var a=!0;return"fetchData"===e&&(a=!1!==t.component.getCounters(n)&&a),a}),r.b,r.a)),a["ɵdid"](1,2867200,null,0,i.a,[a.NgZone,a.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoSave:[3,"autoSave"]},{fetchData:"fetchData"}),(t()(),a["ɵand"](0,[[1,2],["valueTpl",2]],null,0,null,h))],(function(t,e){var n=e.component;t(e,1,0,n.counters,n.columns,"flex",!1)}),null)}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,s.b,s.a)),a["ɵdid"](1,114688,null,0,u.a,[o.a],{type:[0,"type"]},null),(t()(),a["ɵted"](-1,0,["Performance counters not available"]))],(function(t,e){t(e,1,0,"warning")}),null)}function b(t){return a["ɵvid"](0,[a["ɵpid"](0,l.a,[d.a]),a["ɵqud"](671088640,1,{valueTpl:0}),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](3,16384,null,0,c.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["warning",2]],null,0,null,p))],(function(t,e){t(e,3,0,e.component.counters,a["ɵnov"](e,4))}),null)}},"jKX/":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));class a{constructor(t=[]){["read","create","update","delete"].forEach(e=>this[e]=t.includes(e))}}class r{constructor(t){this.hosts=new a(t.hosts),this.configOpt=new a(t["config-opt"]),this.pool=new a(t.pool),this.osd=new a(t.osd),this.monitor=new a(t.monitor),this.rbdImage=new a(t["rbd-image"]),this.iscsi=new a(t.iscsi),this.rbdMirroring=new a(t["rbd-mirroring"]),this.rgw=new a(t.rgw),this.cephfs=new a(t.cephfs),this.manager=new a(t.manager),this.log=new a(t.log),this.user=new a(t.user),this.grafana=new a(t.grafana),this.prometheus=new a(t.prometheus),this.nfs=new a(t["nfs-ganesha"])}}},jNLg:function(t,e,n){var a=n("hmSm"),r=n("QpVZ"),i=/^\s+|\s+$/g,s=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,o=/^0o[0-7]+$/i,l=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(r(t))return NaN;if(a(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=a(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(i,"");var n=u.test(t);return n||o.test(t)?l(t.slice(2),n?2:8):s.test(t)?NaN:+t}},jUeY:function(t,e,n){!function(t){"use strict";t.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(t,e){return t?"string"==typeof e&&/D/.test(e.substring(0,e.indexOf("MMMM")))?this._monthsGenitiveEl[t.month()]:this._monthsNominativeEl[t.month()]:this._monthsNominativeEl},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(t,e,n){return t>11?n?"μμ":"ΜΜ":n?"πμ":"ΠΜ"},isPM:function(t){return"μ"===(t+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(t,e){var n,a=this._calendarEl[t],r=e&&e.hours();return((n=a)instanceof Function||"[object Function]"===Object.prototype.toString.call(n))&&(a=a.apply(e)),a.replace("{}",r%12==1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",ss:"%d δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},dayOfMonthOrdinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}})}(n("wd/R"))},jV1L:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Component)({selector:"tree-node-expander",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <span\n        *ngIf="node.hasChildren"\n        [class.toggle-children-wrapper-expanded]="node.isExpanded"\n        [class.toggle-children-wrapper-collapsed]="node.isCollapsed"\n        class="toggle-children-wrapper"\n        (click)="node.mouseAction(\'expanderClick\', $event)"\n      >\n        <span class="toggle-children"></span>\n      </span>\n      <span *ngIf="!node.hasChildren" class="toggle-children-placeholder">\n      </span>\n    </ng-container>\n  '})],t)}()},jVDg:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e,n){this.poolName=t,this.namespace=e,this.imageName=n}static fromString(t){const e=t.split("/");return new this(e[0],e.length>=3?e[1]:null,e.length>=3?e[2]:e[1])}getNameSpace(){return this.namespace?this.namespace+"/":""}toString(){return`${this.poolName}/${this.getNameSpace()}${this.imageName}`}toStringEncoded(){return encodeURIComponent(`${this.poolName}/${this.getNameSpace()}${this.imageName}`)}}},jVdC:function(t,e,n){!function(t){"use strict";var e="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),n="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");function a(t){return t%10<5&&t%10>1&&~~(t/10)%10!=1}function r(t,e,n){var r=t+" ";switch(n){case"ss":return r+(a(t)?"sekundy":"sekund");case"m":return e?"minuta":"minutę";case"mm":return r+(a(t)?"minuty":"minut");case"h":return e?"godzina":"godzinę";case"hh":return r+(a(t)?"godziny":"godzin");case"MM":return r+(a(t)?"miesiące":"miesięcy");case"yy":return r+(a(t)?"lata":"lat")}}t.defineLocale("pl",{months:function(t,a){return t?""===a?"("+n[t.month()]+"|"+e[t.month()]+")":/D MMMM/.test(a)?n[t.month()]:e[t.month()]:e},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:r,m:r,mm:r,h:r,hh:r,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:r,y:"rok",yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},jZKg:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("HDdC"),r=n("quSY");function i(t,e){return new a.a(n=>{const a=new r.a;let i=0;return a.add(e.schedule((function(){i!==t.length?(n.next(t[i++]),n.closed||a.add(this.schedule())):n.complete()}))),a})}},jfSC:function(t,e,n){!function(t){"use strict";var e={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},n={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};t.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/قبل از ظهر|بعد از ظهر/,isPM:function(t){return/بعد از ظهر/.test(t)},meridiem:function(t,e,n){return t<12?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چند ثانیه",ss:"ثانیه d%",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(t){return t.replace(/[۰-۹]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},dayOfMonthOrdinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}})}(n("wd/R"))},jnO4:function(t,e,n){!function(t){"use strict";var e={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},a=function(t){return 0===t?0:1===t?1:2===t?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},r={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},i=function(t){return function(e,n,i,s){var u=a(e),o=r[t][a(e)];return 2===u&&(o=o[n?0:1]),o.replace(/%d/i,e)}},s=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];t.defineLocale("ar",{months:s,monthsShort:s,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(t){return"م"===t},meridiem:function(t,e,n){return t<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:i("s"),ss:i("s"),m:i("m"),mm:i("m"),h:i("h"),hh:i("h"),d:i("d"),dd:i("d"),M:i("M"),MM:i("M"),y:i("y"),yy:i("y")},preparse:function(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n("wd/R"))},jqoL:function(t,e,n){var a=n("+NyF"),r=n("RvDp");t.exports=function(t,e){return null!=t&&r(t,e,a)}},jqst:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="id-ID">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Pengalih navigasi</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Dasbor</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Klaster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hos</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitor</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Layanan</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Konfigurasi</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>peta CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Modul Ceph Manajer</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Log</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Blok</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Image</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Pencerminan</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Sistemfile</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Gerbang Objek</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Pengguna</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Buket</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Pilih bahasa</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Memuat data panel...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Pemilih Waktu Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Reset Pengaturan</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Kembali</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Gagal memuat data.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>dipilih</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>ditemukan</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>total</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nama</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Deskripsi</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Deskripsi lengkap</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Bawaan</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Daemon bawaan</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Nilai</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Simpan</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Penampil peta CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Memuat...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nama hos</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Isian ini tidak boleh kosong.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Ya, saya yakin.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Batal</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Tutup</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Daftar Hos</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Performa Keseluruhan</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Entri tidak ditemukan</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Log Klaster</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Log Audit</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Memuat konfigurasi...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Konfigurasi tidak dapat dimuat.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Edit modul Ceph Manajer</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Nilai yang dimasukkan bukan UUID yang valid, cth: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Nilai yang dimasukkan harus alamat IP yang valid.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Nilai yang dimasukkan harus berupa angka.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Nilai yang dimasukkan harus berupa angka atau desimal.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Perbarui</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Status</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID Klaster</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap diubah</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap epoch</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>kuorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>kuorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>con yang dibutuhkan</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>mon yang dibutuhkan</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>Memenuhi Kuorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Tidak dalam Kuorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Tambah</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Fitur</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Flag OSD Klaster</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Kirim</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Tingkat lanjut...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Prioritas pemulihan OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Prioritas</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Ubah nilai prioritas</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Isian ini harus diisi!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Nilai harus antara 0 dan 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Ubah bobot</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Dalam } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {dalam } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Daftar OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Nilai</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Edit</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Hapus</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Kesehatan</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistik </target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Klien</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Semua klien dapat mengakses</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Alamat</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Wajib diisi</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Harus mengandung satu atau lebih nilai yang dipisahkan koma</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Contoh:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Tipe Akses</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Tambah klien</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Klaster tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Pilih klaster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Tambah daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Backend Penyimpanan</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Tidak ada pool data tersedia --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Pilih backend penyimpanan --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Pengguna Gerbang Objek</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Pengguna tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Pilih pengguna gerbang objek --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID Pengguna CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Klien tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Pilih klien cephx --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nama CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Label Keamanan</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Aktifkan label keamanan</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS Path</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Lintasan atau path harus dimulai dengan \'/\' dan diikuti dengan kata</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Direktori baru akan dibuat</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Path</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Path hanya boleh berupa \'/\' atau kata</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Buket baru akan dibuat</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protokol NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Tag NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Klien mungkin tidak dapat mount subdirektori (cth. jika Tag = foo, klien mungkin tidak bisa mount foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Dengan menggunakan opsi Tag yang berbeda, Path yang sama akan diekspor beberapa kali.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Dengan menggunakan opsi Pseudo yang berbeda, Path yang sama akan diekspor beberapa kali.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Tipe akses tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Pilih tipe akses --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Squash tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Pilih jenis squashing id pengguna yang akan dilakukan --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protokol Transport</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Selamat datang di Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nama pengguna harus diisi</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Kata sandi harus diisi</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Masuk</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Maaf, pengguna tidak terdaftar di Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Terlarang</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Maaf, Anda tidak dizinkan melihat hal yang Anda inginkan.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Konfigurasi RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Menghapus nilai konfigurasi lokal. Nilai konfigurasi induk akan diturun dan digunakan.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Nilai minimum adalah 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Daftar pool</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Nama hanya boleh terdiri dari alfanumerik, tanda hubung, dan garis bawah.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Nama profil erasure code sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plugin</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Pecahan data (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Harus sama dengan atau lebih dari 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Pecahan Coding (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Harus sama dengan atau lebih dari 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Penduga daya tahan (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Lokalitas (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Domain kegagalan Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Lokalitas Crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Tidak ada</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Teknik</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Ukuran paket</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Crush root</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Kelas perangkat Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>apa saja</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Direktori</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nama...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Nama pool Ceph yang dipilih sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Jenis pool</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Pilih jenis pool --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Grup penempatan</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Dibutuhkan setidaknya satu grup penempatan!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Klaster Anda tidak dapat menangani PG sebanyak ini. Mohon hitung ulang jumlah PG yang dibutuhkan.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Bantuan penghitungan</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Jumlah replikasi</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flag</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC Overwrites</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Aplikasi</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Profil erasure code</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Tidak ada profil erasure code --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Pilih profil erasure code --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Aturan CRUSH</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Pilih aturan crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Aturan crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Crush steps</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Kompresi</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Mode</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritma</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Tidak ada algoritma pengompresian erasure --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Ukuran blob minimum</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>cth. 128KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Nilai harus lebih besar dari 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Ukuran maksimum blob</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>cth. 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Nilai harus lebih besar dari ukuran minimum blob</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Rasio</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Rasio kompresi</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Nilai harus antara 0.0 dan 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>cth. 10GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Detail</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Detail Performa</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Detil Cache Bertingkat</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Pindahkan image ke tempat sampah</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Proteksi berakhir pada</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>TIDAK DIPROTEKSI</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Format tanggal salah. Mohon gunakan "TTTT-BB-HH JJ:mm:dd".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>Proteksi telah kedaluarsa. Mohon pilih tanggal masa mendatang atau kosongkan.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Pindahkan Image</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Ikhtisar</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Target</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Otentikasi Discovery</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Pengguna</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Nama pengguna harus terdiri dari 8 hingga 64 karakter dan\nhanya boleh mengandung huruf, \'.\', \'@\', \'-\', \'_\' atau \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Kata sandi</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Pengguna Bersama</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Kata sandi bersama</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informasi tersedia:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>iSCSI Target tidak tersedia</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Pool Data</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Dibuat</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Ukuran</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objek</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Ukuran objek</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Disiapkan</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/A</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Total disiapkan</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unit setrip</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Jumlah setrip</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Induk</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Awalan nama blok</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Urutan</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Snapshot</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Image</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Pengaturan ini akan membatalkan nilai global</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Ini adalah nilai global. Tidak ada nilai yang diset untuk image ini.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' dan \'@\' tidak diperbolehkan.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Tidak ada pool rbd tersedia --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Pilih pool --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Gunakan pool data terdedikasi</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Pool data</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Pool terdedikasi yang menyimpan data-objek dari RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Anda harus menaikkan ukuran.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Tingkat lanjut</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Setrip</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unit setrip</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Pilih ukuran setrip --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Isian ini harus diisi karena jumlah setrip telah ditentukan!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>Unit setrip lebih besar dari ukuran objek.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Jumlah setrip</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Isian wajib diisi karena unit setrip didefinisikan!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Jumlah setrip harus lebih besar dari 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Anda akan mengembalikan semula</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Kosongkan Tempah Sampah</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Semua</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pool:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nama Pool...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Pulihkan Image</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Untuk memulihkan</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>ketik nama baru image dan pilih</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nama Baru</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Kedaluwarsa pada</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Diproteksi hingga</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologi iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Mengganti parameter ini dari nilai bawaan biasanya tidak diperlukan.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Pengaturan</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Konfirmasi</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Pengaturan Lanjut</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>Target IQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>Pola IQN salah.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Contoh: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Informasi lainnya</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Pengaturan lanjutan target ini telah dimodifikasi.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portal</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Tambahkan portal</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Pengaturan Image ini telah dimodifikasi.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Tambahkan image</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Otentikasi ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Inisiator</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Inisiator</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>Klien IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>Inisiator IQN harus unik.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Nama pengguna harus terdiri atas 8 hingga 64 karakter dan\nhanya boleh mengandung huruf, \'.\', \'@\', \'-\', \'_\' atau \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>Inisiator termasuk ke dalam grup. Image akan dikonfigurasi di dalam grup.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Tidak ada yang ditambahkan.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Tambahkan inisiator</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Grup</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Grup</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Tambahkan grup</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Tempat sampah</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Masalah</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Menyinkronkan</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Siap</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Edit mode pencerminan pool</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Klaster mitra harus dihapus sebelum menonaktfikan pencerminan.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Tambah} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nama Klaster</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Nama klaster tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX ID tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Alamat Monitor</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Alamat dengan pemisah-koma...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Alamat monitor tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX Key</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64-encoded key...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>Kunci CephX harus base64 encoded.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Penghitung kinerja tidak tersedia</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Daftar Daemon</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Penghitung Performa</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Memuat data buket...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>Id</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Nilai tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Nama yang dipilih sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Pemilik</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Pilih pengguna --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Diaktifkan</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Jenis indeks</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Aturan penempatan</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Penanda</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Penanda maksimum</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Versi</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Versi Master</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Modifikasi waktu</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Zona grup</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Kuota Buket</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Ukuran maksimum</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Tak terbatas</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Objek maksimum</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nama pengguna</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Pilih nama pengguna --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Kunci otomatis-dibuat</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Kunci akses</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Kunci rahasia</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nama lengkap</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Alamat email</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Dihentikan</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Sistem</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Buket maksimum</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Subpengguna</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Kemampuan</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Kuota pengguna</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Tampilkan</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Kunci</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Tipe</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Pilih tipe --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Izin</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Pilih izin --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Subpengguna</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>ID subpengguna sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>baca, tulis</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>penuh</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Kunci Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Sandi otomatis-dibuat</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Memuat data pengguna...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Data pengguna tidak dapat dimuat.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>ID pengguna yang dipilih sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Ini bukan alamat email yang valid.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>Alamat email yang dipilih sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Maks. buket</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Dimatikan</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Ubahsuai</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Kunci S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Tidak ada sub-pengguna.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Kunci tidak ditemukan.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Kemampuan tidak ada.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Ukuran tak terbatas</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Ukuran maks.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Objek tak terbatas</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Objek maks.</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Nilai yang dimasukkan harus &gt;= 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Deskripsi...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Izin</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Peran</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Konfirmasi kata sandi</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Konfirmasi kata sandi tidak sesuai dengan kata sandi.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>Email</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Email tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Anda akan menghapus izin "pengguna baca / perbarui" dari diri Anda sendiri.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Jika melanjutkan, Anda tidak akan lagi dapat menambahkan atau menghapus peran dari pengguna manapun.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Anda yakin ingin melanjutkan?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Bantuan</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Dokumentasi </target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Tentang</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Pengaturan Dasbor</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Manajemen Pengguna</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Pengguna masuk</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Keluar</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atribut (peta OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadata tidak tersedia</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadata</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Penghitung kinerja</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Tulis</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Baca</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogram</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Nilai saat ini</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Maks</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Sumber</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Level</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Boleh diperbarui saat dijalankan (bisa diedit)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tag</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Nilai Enum</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Lihat juga</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Status Klaster</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Manajer Daemon</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Gerbang Objek</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Server Metadata</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Gateway iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS klien</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Throughput Pengguna</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Baca/Tulis Klien</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Throughput Pemulihan</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Scrub</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Kinerja</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Kapasitas mentah</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>PG per OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Status PG</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Kapasitas</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Peringkat</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Terkini</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Otentikasi penemuan telah diperbarui</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Tidak ada portal yang tersedia.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Tidak ada image yang tersedia.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Tidak ada image yang tersedia. Mohon pastikan Anda telah menambahkan image ke target.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Tidak ada inisiator tersedia. Mohon pastikan Anda telah menambahkan inisiator ke target.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Target</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Keadaan</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Baca Bytes</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Tulis Bytes</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Ops Baca</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Ops Tulis</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O Sejak</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instance</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Isu</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Kemajuan</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Mode Edit</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Tambahkan Mitra</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Edit Mitra</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Hapus Mitra</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Pemimpin</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># Lokal</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># Jauh</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>mitra pencerminan</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Kunci</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Perataan mendalam</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Lapisan</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Kunci eksklusif</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Peta objek (butuh kunci-eksklusif)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Penjurnalan (membutuhkan kunci-eksklusif)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>TIDAK DIPROTEKSI</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Kembalikan snapshot RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Kembalikan</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Snapshot RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Dihapus pada</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>id</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>tipe</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>keadaan</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>versi</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Hos</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>induk</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemon siaga</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Peringkat</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Aktivitas</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inode</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Penggunaan</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Diperbarui</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>Nilai dapat diperbarui saat runtime.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Daemon/klien tidak dapat mengambil nilai dari\nbasis data konfigurasi monitor. Kami tidak mengizinkan mengubah ini dari \'ceph config\nset ...\'. Pilihan ini harus dikonfigurasi melalui ceph.conf atau CLI.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>Pilihan hanya dapat bekerja selama daemon dimulai.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>Pilihan hanya berpengaruh pada pembuatan klaster.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>Pilihan hanya berpengaruh pada pembuatan daemon.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Layanan</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Nilai saat ini</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Dapat diedit</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Aktifkan</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Nonaktifkan</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Menghubungkan kembali, mohon tunggu...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Alamat Publik</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Buka Sesi</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Tidak boleh Masuk</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>OSD yang telah ditandai keluar tidak akan ditandai masuk saat mereka menyala</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Tidak boleh Keluar</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD tidak akan otomatis ditandai keluar setelah interval dikonfigurasi</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Tidak Nyala</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSD tidak diizinkan menyala</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Tidak Mati</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Laporan kegagalan OSD sedang diabaikan sehingga monitor tidak akan menandai OSD mati</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Jeda</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Jeda baca dan tulis</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Nonaktifkan Scrub</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Scrubbing dinonaktifkan</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Nonaktifkan Deep Scrub</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Deep Scrubing dinonaktifkan</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Tidak ada Penambalan</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Penambalan PG dihentikan</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Tidak ada Pemulihan</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Pemulihan PG dihentikan</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Urutan Bitwise</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Gunakan urutan bitwise</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Buang Snapdirs</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD memiliki snapset yang dikonversi</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Pulihkan yang telah dihapus</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Penghapusan dilakukan saat pemulihan bukan saat bermitra</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Batas Maks Log PG</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Taruh batas maks pada panjang log pg</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Flag OSD diperbarui</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>keluar</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>masuk</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>gugur</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Tandai</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD hilang</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>ditandai hilang</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Buang</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>dibuang</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>hancurkan</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>dihancurkan</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>hapus</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PG</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Bita baca</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Bita tulis</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Ops baca</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Ops tulis</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Maks Penambalan</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Maks Pemulihan Aktif</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Maks Menjalankan Pemulihan Tunggal</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Jeda Pemulihan</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Tugas</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Keparahan</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Dimulai</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Terpakai</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Tersedia</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Bersih</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>Bekerja</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Peringatan</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Tidak diketahui</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>nyala</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>tidak ada filesistem</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>aktif</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>siaga</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/a</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon aktif</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>kuorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Layanan NFS Ganesha belum dikonfigurasi.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Pengguna CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Filesistem CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(diturunkan dari konfig global)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>diturunkan dari konfig global</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Pilih jenis squashing id pengguna yang akan dilakukan --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Tidak ada daemon tersedia.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Mode Cache</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Min Waktu Usir</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Min Waktu Buang</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Target Maks Bita</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Target Maks Objek</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Tidak ada aplikasi ditambahkan</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Batas aplikasi tercapai</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Sebuah pool hanya dapat memiliki empat definisi aplikasi.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Karakter diperbolehkan \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Panjang maksimum 128 karakter</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Saring atau tambah aplikasi</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Tambah aplikasi</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>profil erasure code</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Ukuran Replikasi</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Perubahan Terakhir</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Profil Erasure Code</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Aturan Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>buket</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>buket</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>pengguna</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>pengguna</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Cakupan</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Baca</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Buat</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Peran Sistem</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Perbarui pengguna</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Lanjutkan</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Anda dikeluarkan otomatis karena peran Anda telah berubah.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Tiap objek dipecah dalam pecahan-data, masing-masing disimpan pada OSD yang berbeda.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Hitung pecahan coding untuk tiap objek dan simpan pada OSD yang berbeda.\nJumlah pecahan data juga menjadi jumlah OSD yang diperbolehkan mati tanpa kehilangan data.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Plugin jerasure merupakan plugin paling umum dan fleksibel,\nserta merupakan plugin bawaan Ceph untuk pool erasure code.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Teknik yang lebih fleksibel yaitu reed_sol_van : cukup mengeset k\ndan m. Teknik cauchy_good bisa lebih cepat, namun Anda harus memilih ukuran paket\ndengan seksama. Semua reed_sol_r6_op, liberation, blaum_roth, liber8tion setara dengan RAID6\ndalam hal mereka hanya bisa diatur dengan m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>Penyandian dilakukan setiap saat pada ukuran bita paket.\nSulit untuk menentukan ukuran paket yang tepat.\nSilakan cek dokumentasi jerasure untuk informasi lebih mendalam.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Pada plugin jerasure, saat objek dengan erasure code disimpan pada\nbanyak OSD, pemulihan dari OSD yang hilang membutuhkan akses dari OSD lainnya.\nContoh, saat jerasure dikonfigurasi dengan k=8 dan m=4, saat satu OSD mati, maka pemulihan akan membutuhkan pembacaan dari tujuh OSD lainnya.\n\nPlugin lrc erasure code membuat pecahan paritas lokal agar dapat memulihkan \ndengan OSD yang lebih sedikit. Contoh, jika lrc dikonfigurasi dengan k=8, m=4, dan l=4, maka lrc akan\nmembuat pecahan paritas tambahan tiap empat OSD. Saat satu OSD mati, maka pemulihan dapat dilakukan hanya dengan 4 OSD, alih-alih 7 OSD.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Kelompokkan pecahan data dan coding ke dalam ukuran lokalitas. Controh\nuntuk k=4 dan m=2, saat lokalitas=3 dua grup dari tiga akan dibuat. Setiap set akan\ndipulihkan tanpa membaca pecahan dari set lainnya.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Tipe buket crush setiap set pecahan yang didefinisikan oleh l  \nakan disimpan. Contoh, jika diset pada rak, tiap grup pecahan l akan \nditempatkan pada rak berbeda. Ini akan digunakan pada aturan step CRUSH yaitu \nmemilih tiap rak. Jika tidak diset, tidak akan ada pengelompokkan.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Plugin isa menghimpun perpustakaan ISA. Hanya dapat berjalan pada prosesor Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Plugin ISA memiliki dua jenis Reed Solomon.\nJika reed_sol_van diset, maka menjadi Vandermonde, jika cauchy diset, maka menjadi Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Plugin shec mengenkapsulasi banyak pustaka SHEC.\nHal ini agar ceph dapat dipulihkan dengan lebih efisien dari kode Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Jumlah potongan paritas yang masing-masing mencakup setiap potongan data \ndalam rentang perhitungannya. Nilai ini digunakan untuk perkiraan daya tahan. Contoh, jika c=2, \n2 OSD dapat mati tanpa kehilangan data.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Nama buket crush digunakan sebagai langkah pertama dari aturan CRUSH.\nContoh diambil langkah bawaan.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Memastikan tidak ada pecahan data berada pada buket dengan domain kegagalan\nyang sama. Contoh, saat domain gagal adalah hos, maka tidak ada pecahan data yang akan disimpan \npada hos yang sama. Aturan CRUSH seperti step chooseleaf hos akan digunakan untuk hal tersebut.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Batasi penempatan ke perangkat dengan kelas tertentu\n(cth. ssd atau hdd), menggunakan nama kelas perangkat crush pada peta CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Set nama direktori empat plugin erasure code akan dimuat.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Izinkan semua operasi</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Izinkan hanya untuk operasi yang tidak mengubah server</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Tidak diizinkan untuk operasi baca dan tulis, namun izinkan operasi lainnya</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Tidak diizinkan untuk baca, tulis, atau operasi lainnya yang mengubah atribut berkas atau konten direktori</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Tidak diizinkan untuk semua hal</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Pilih prioritas --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Rendah</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Tinggi</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informasi</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>5 menit terakhir</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>15 menit terakhir</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>30 menit terakhir</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>1 Jam Terakhir (Bawaan)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>3 jam terakhir</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>6 jam terakhir</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>12 jam terakhir</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>24 jam terakhir</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Kemarin</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Hari ini</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Sejauh hari ini</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Kemarin dulu</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>2 hari terakhir</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Hari ini minggu lalu</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Minggu lalu</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Minggu ini</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Sejauh minggu ini</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>7 hari terakhir</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Bulan lalu</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Bulan ini</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Sejauh bulan ini</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>30 hari terakhir</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>90 hari terakhir</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>6 bulan terakhir</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>1 tahun terakhir</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Tahun lalu</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Tahun ini</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Sejauh tahun ini</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>2 tahun terakhir</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>5 tahun terakhir</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Tidak ada yang dipilih.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Batalkan memilih untuk memilih ulang</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Batas pemilihan tercapai</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Tanda penyaringan</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Tambahkan lencana</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Tidak ada yang tersedia.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Klon</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Salin</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Deep Scrub</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Hancurkan</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Ratakan</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Tandai Gugur</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Tandai Masuk</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Tandai Hilang</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Tandai Keluar</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Proteksi</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Ubah nama</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Pulihkan</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Pindahkan ke Tempat Sampah</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Tidak diproteksi</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Dihapus</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Diklon</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Disalin</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Diratakan</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Dibuang</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Dipulihkan</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Dikembalikan</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Ya</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Tidak</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Kualitas Layanan atau QoS</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limit BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Limit IO bytes per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limit IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Limit operasi IO per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limit Baca BPS </target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Limit byte baca per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limit IOPS Baca</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Limit operasi baca per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limit Tulis BPS</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Limit tulis byte per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limit IOPS Tulis</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Limit operasi tulis per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Letupan BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst dari IO byte.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Letupan IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst operasi IO.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Letupan Baca BPS</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst dari baca byte.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Letupan IOPS Baca</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst operasi baca.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Letupan BPS Tulis</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst dari tulis byte.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Letupan IOPS Tulis</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst dari operasi baca.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Mengeksekusi</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>eksekusi</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Dieksekusi</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>tugas tak diketahui</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Membuat</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>buat</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Memperbarui</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>perbarui</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Menghapus</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Pengklonan</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>klon</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Menyalin</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>salin</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Meratakan</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>ratakan</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Mengembalikan</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>kembalikan</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Memindahkan</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>pindah</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>dipindahkan</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Tidak dapat menemukan image.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Memulihkan</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>pulihkan</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Membuang</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>buang</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>semua pool</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Gagal menonaktifkan pencerminan karena sedang bermitra.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},jtHE:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("XNiG"),r=n("qgXg"),i=n("quSY"),s=n("pxpQ"),u=n("9ppp"),o=n("Ylt2");class l extends a.a{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new d(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),a=this.scheduler,r=n.length;let l;if(this.closed)throw new u.a;if(this.isStopped||this.hasError?l=i.a.EMPTY:(this.observers.push(t),l=new o.a(this,t)),a&&t.add(t=new s.a(t,a)),e)for(let i=0;i<r&&!t.closed;i++)t.next(n[i]);else for(let i=0;i<r&&!t.closed;i++)t.next(n[i].value);return this.hasError?t.error(this.thrownError):this.isStopped&&t.complete(),l}_getNow(){return(this.scheduler||r.a).now()}_trimBufferThenGetEvents(){const t=this._getNow(),e=this._bufferSize,n=this._windowTime,a=this._events,r=a.length;let i=0;for(;i<r&&!(t-a[i].time<n);)i++;return r>e&&(i=Math.max(i,r-e)),i>0&&a.splice(0,i),a}}class d{constructor(t,e){this.time=t,this.value=e}}},jy8Y:function(t,e){t.exports=function(t){return this.__data__.has(t)}},"k9+3":function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},kA6G:function(t,e){t.exports=function(){return[]}},kEOa:function(t,e,n){!function(t){"use strict";var e={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},n={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};t.defineLocale("bn",{months:"জানুয়ারী_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপ্র_মে_জুন_জুল_আগ_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),weekdaysMin:"রবি_সোম_মঙ্গ_বুধ_বৃহঃ_শুক্র_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm সময়",LLLL:"dddd, D MMMM YYYY, A h:mm সময়"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",ss:"%d সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(t){return t.replace(/[১২৩৪৫৬৭৮৯০]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/রাত|সকাল|দুপুর|বিকাল|রাত/,meridiemHour:function(t,e){return 12===t&&(t=0),"রাত"===e&&t>=4||"দুপুর"===e&&t<5||"বিকাল"===e?t+12:t},meridiem:function(t,e,n){return t<4?"রাত":t<10?"সকাল":t<17?"দুপুর":t<20?"বিকাল":"রাত"},week:{dow:0,doy:6}})}(n("wd/R"))},kGkW:function(t,e,n){var a=n("rk81"),r=n("uy3s");t.exports=function(t,e,n,i){var s=n.length,u=s,o=!i;if(null==t)return!u;for(t=Object(t);s--;){var l=n[s];if(o&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++s<u;){var d=(l=n[s])[0],c=t[d],f=l[1];if(o&&l[2]){if(void 0===c&&!(d in t))return!1}else{var h=new a;if(i)var g=i(c,f,d,t,e,h);if(!(void 0===g?r(f,c,3,i,h):g))return!1}}return!0}},kJI8:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},kJWO:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")()},kOOl:function(t,e){var n=0,a=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+a).toString(36)}},kOpN:function(t,e,n){!function(t){"use strict";t.defineLocale("zh-tw",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"中午"===e?t>=11?t:t+12:"下午"===e||"晚上"===e?t+12:void 0},meridiem:function(t,e,n){var a=100*t+e;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天] LT",nextDay:"[明天] LT",nextWeek:"[下]dddd LT",lastDay:"[昨天] LT",lastWeek:"[上]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"週";default:return t}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(n("wd/R"))},kRJp:function(t,e,n){var a=n("g6v/"),r=n("m/L8"),i=n("XGwC");t.exports=a?function(t,e,n){return r.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},kXVT:function(t,e,n){var a=n("hmSm");t.exports=function(t){return t==t&&!a(t)}},kmMV:function(t,e,n){"use strict";var a,r,i=n("rW0t"),s=n("n3/R"),u=RegExp.prototype.exec,o=String.prototype.replace,l=u,d=(r=/b*/g,u.call(a=/a/,"a"),u.call(r,"a"),0!==a.lastIndex||0!==r.lastIndex),c=s.UNSUPPORTED_Y||s.BROKEN_CARET,f=void 0!==/()??/.exec("")[1];(d||f||c)&&(l=function(t){var e,n,a,r,s=this,l=c&&s.sticky,h=i.call(s),g=s.source,p=0,b=t;return l&&(-1===(h=h.replace("y","")).indexOf("g")&&(h+="g"),b=String(t).slice(s.lastIndex),s.lastIndex>0&&(!s.multiline||s.multiline&&"\n"!==t[s.lastIndex-1])&&(g="(?: "+g+")",b=" "+b,p++),n=new RegExp("^(?:"+g+")",h)),f&&(n=new RegExp("^"+g+"$(?!\\s)",h)),d&&(e=s.lastIndex),a=u.call(l?n:s,b),l?a?(a.input=a.input.slice(p),a[0]=a[0].slice(p),a.index=s.lastIndex,s.lastIndex+=a[0].length):s.lastIndex=0:d&&a&&(s.lastIndex=s.global?a.index+a[0].length:e),f&&a&&a.length>1&&o.call(a[0],n,(function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(a[r]=void 0)})),a}),t.exports=l},"kn/O":function(t,e,n){"use strict";n.d(e,"a",(function(){return f}));var a=n("HDdC"),r=n("mtw6"),i=n("G1I9"),s=n("QTAa"),u=n("9nlD"),o=n("mSOc"),l=n("VXsX"),d=n("ufoC"),c=n("8Y7J");let f=(()=>{class t{constructor(t,e,n,a){this.notificationService=t,this.summaryService=e,this.taskMessageService=n,this.taskManagerService=a}wrapTaskAroundCall({task:t,call:e}){return new a.a(n=>{e.subscribe(e=>{202===e.status?this._handleExecutingTasks(t):(this.summaryService.refresh(),t.success=!0,this.notificationService.notifyTask(t))},e=>{t.success=!1,t.exception=e.error,n.error(e)},()=>{n.complete()})})}_handleExecutingTasks(t){const e=new i.b(r.a.info,this.taskMessageService.getRunningTitle(t));e.isFinishedTask=!0,this.notificationService.show(e);const n=new s.a(t.name,t.metadata);this.summaryService.addRunningTask(n),this.taskManagerService.subscribe(n.name,n.metadata,t=>{this.notificationService.notifyTask(t)})}}return t.ngInjectableDef=c["ɵɵdefineInjectable"]({factory:function(){return new t(c["ɵɵinject"](u.a),c["ɵɵinject"](o.a),c["ɵɵinject"](d.a),c["ɵɵinject"](l.a))},token:t,providedIn:"root"}),t})()},kna9:function(t,e,n){var a=n("MOZO"),r=n("gBXJ"),i=n("BVkS"),s=n("Wv1A");t.exports=function(t,e){return e=a(e,t),null==(t=i(t,e))||delete t[s(r(e))]}},ktBm:function(t,e,n){var a=n("JEWA");t.exports=function(t,e){for(var n=t.length;n--;)if(a(t[n][0],e))return n;return-1}},kvvV:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("t/zF");class r extends a.a{}},l2xC:function(t,e){t.exports=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}},l5ep:function(t,e,n){!function(t){"use strict";t.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",ss:"%d eiliad",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},dayOfMonthOrdinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(t){var e="";return t>20?e=40===t||50===t||60===t||80===t||100===t?"fed":"ain":t>0&&(e=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"][t]),t+e},week:{dow:1,doy:4}})}(n("wd/R"))},l7GE:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");class r extends a.a{notifyNext(t,e,n,a,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}},l9nr:function(t,e,n){var a=n("QjCD"),r=n("NtIB"),i=n("aHcz"),s=n("0GLT"),u=n("MaPG");t.exports=function(t){return"function"==typeof t?t:null==t?i:"object"==typeof t?s(t)?r(t[0],t[1]):a(t):u(t)}},lEOU:function(t,e,n){var a=n("CNUl");t.exports=function(t,e){var n=e?a(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},lJxs:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new i(t,e))}}class i{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new s(t,this.project,this.thisArg))}}class s extends a.a{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}},lMq5:function(t,e,n){var a=n("0Dky"),r=/#|\.prototype\./,i=function(t,e){var n=u[s(t)];return n==l||n!=o&&("function"==typeof e?a(e):!!e)},s=i.normalize=function(t){return String(t).replace(r,".").toLowerCase()},u=i.data={},o=i.NATIVE="N",l=i.POLYFILL="P";t.exports=i},"lOp/":function(t,e,n){"use strict";var a=n("PqYM"),r=n("pxpQ"),i=n("eIep"),s=n("jtHE"),u=n("D0XW"),o=n("8Y7J");class l{constructor(t){this.zone=t,this.scheduler=u.a}now(){return this.scheduler.now()}}let d=(()=>{class t extends l{constructor(t){super(t)}schedule(...t){return this.zone.runOutsideAngular(()=>this.scheduler.schedule.apply(this.scheduler,t))}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](o.NgZone))},token:t,providedIn:"root"}),t})(),c=(()=>{class t extends l{constructor(t){super(t)}schedule(...t){return this.zone.run(()=>this.scheduler.schedule.apply(this.scheduler,t))}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](o.NgZone))},token:t,providedIn:"root"}),t})(),f=(()=>{class t{constructor(t,e){this.leave=t,this.enter=e}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](d),o["ɵɵinject"](c))},token:t,providedIn:"root"}),t})();n.d(e,"a",(function(){return h}));let h=(()=>{class t{constructor(t){this.ngZone=t,this.DEFAULT_REFRESH_INTERVAL=5e3,this.DEFAULT_DUE_TIME=0}get(t,e=this.DEFAULT_REFRESH_INTERVAL,n=this.DEFAULT_DUE_TIME){return Object(a.a)(n,e,this.ngZone.leave).pipe(Object(r.b)(this.ngZone.enter),Object(i.a)(t),function(t,e,n){let a;return a=t&&"object"==typeof t?t:{bufferSize:t,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:a}){let r,i,u=0,o=!1,l=!1;return function(d){u++,r&&!o||(o=!1,r=new s.a(t,e,a),i=d.subscribe({next(t){r.next(t)},error(t){o=!0,r.error(t)},complete(){l=!0,i=void 0,r.complete()}}));const c=r.subscribe(this);this.add(()=>{u--,c.unsubscribe(),i&&!l&&n&&0===u&&(i.unsubscribe(),i=void 0,r=void 0)})}}(a))}({refCount:!0,bufferSize:1}))}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](f))},token:t,providedIn:"root"}),t})()},lPUB:function(t,e,n){var a=n("Ytn0");t.exports=function(t){return a(this,t).get(t)}},lXzo:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a,r;return"m"===n?e?"минута":"минуту":t+" "+(a=+t,r={ss:e?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:e?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}var n=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[йя]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i];t.defineLocale("ru",{months:{format:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_"),standalone:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_")},monthsShort:{format:"янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.".split("_"),standalone:"янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.".split("_")},weekdays:{standalone:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),format:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/},weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:n,longMonthsParse:n,shortMonthsParse:n,monthsRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsShortRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsStrictRegex:/^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,monthsShortStrictRegex:/^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., H:mm",LLLL:"dddd, D MMMM YYYY г., H:mm"},calendar:{sameDay:"[Сегодня, в] LT",nextDay:"[Завтра, в] LT",lastDay:"[Вчера, в] LT",nextWeek:function(t){if(t.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В следующее] dddd, [в] LT";case 1:case 2:case 4:return"[В следующий] dddd, [в] LT";case 3:case 5:case 6:return"[В следующую] dddd, [в] LT"}},lastWeek:function(t){if(t.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd, [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd, [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd, [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",ss:e,m:e,mm:e,h:"час",hh:e,d:"день",dd:e,M:"месяц",MM:e,y:"год",yy:e},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(t){return/^(дня|вечера)$/.test(t)},meridiem:function(t,e,n){return t<4?"ночи":t<12?"утра":t<17?"дня":"вечера"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(t,e){switch(e){case"M":case"d":case"DDD":return t+"-й";case"D":return t+"-го";case"w":case"W":return t+"-я";default:return t}},week:{dow:1,doy:4}})}(n("wd/R"))},lYtQ:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){switch(n){case"s":return e?"хэдхэн секунд":"хэдхэн секундын";case"ss":return t+(e?" секунд":" секундын");case"m":case"mm":return t+(e?" минут":" минутын");case"h":case"hh":return t+(e?" цаг":" цагийн");case"d":case"dd":return t+(e?" өдөр":" өдрийн");case"M":case"MM":return t+(e?" сар":" сарын");case"y":case"yy":return t+(e?" жил":" жилийн");default:return t}}t.defineLocale("mn",{months:"Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар".split("_"),monthsShort:"1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар".split("_"),monthsParseExact:!0,weekdays:"Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба".split("_"),weekdaysShort:"Ням_Дав_Мяг_Лха_Пүр_Баа_Бям".split("_"),weekdaysMin:"Ня_Да_Мя_Лх_Пү_Ба_Бя".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY оны MMMMын D",LLL:"YYYY оны MMMMын D HH:mm",LLLL:"dddd, YYYY оны MMMMын D HH:mm"},meridiemParse:/ҮӨ|ҮХ/i,isPM:function(t){return"ҮХ"===t},meridiem:function(t,e,n){return t<12?"ҮӨ":"ҮХ"},calendar:{sameDay:"[Өнөөдөр] LT",nextDay:"[Маргааш] LT",nextWeek:"[Ирэх] dddd LT",lastDay:"[Өчигдөр] LT",lastWeek:"[Өнгөрсөн] dddd LT",sameElse:"L"},relativeTime:{future:"%s дараа",past:"%s өмнө",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2} өдөр/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+" өдөр";default:return t}}})}(n("wd/R"))},lgnt:function(t,e,n){!function(t){"use strict";var e={0:"-чү",1:"-чи",2:"-чи",3:"-чү",4:"-чү",5:"-чи",6:"-чы",7:"-чи",8:"-чи",9:"-чу",10:"-чу",20:"-чы",30:"-чу",40:"-чы",50:"-чү",60:"-чы",70:"-чи",80:"-чи",90:"-чу",100:"-чү"};t.defineLocale("ky",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),weekdays:"Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби".split("_"),weekdaysShort:"Жек_Дүй_Шей_Шар_Бей_Жум_Ише".split("_"),weekdaysMin:"Жк_Дй_Шй_Шр_Бй_Жм_Иш".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгүн саат] LT",nextDay:"[Эртең саат] LT",nextWeek:"dddd [саат] LT",lastDay:"[Кечээ саат] LT",lastWeek:"[Өткөн аптанын] dddd [күнү] [саат] LT",sameElse:"L"},relativeTime:{future:"%s ичинде",past:"%s мурун",s:"бирнече секунд",ss:"%d секунд",m:"бир мүнөт",mm:"%d мүнөт",h:"бир саат",hh:"%d саат",d:"бир күн",dd:"%d күн",M:"бир ай",MM:"%d ай",y:"бир жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(чи|чы|чү|чу)/,ordinal:function(t){return t+(e[t]||e[t%10]||e[t>=100?100:null])},week:{dow:1,doy:7}})}(n("wd/R"))},lsW8:function(t,e,n){(function(t){var a;(function(){var r="Expected a function",i="__lodash_placeholder__",s=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],u="[object Arguments]",o="[object Array]",l="[object Boolean]",d="[object Date]",c="[object Error]",f="[object Function]",h="[object GeneratorFunction]",g="[object Map]",p="[object Number]",b="[object Object]",m="[object RegExp]",y="[object Set]",v="[object String]",x="[object Symbol]",_="[object WeakMap]",T="[object ArrayBuffer]",w="[object DataView]",O="[object Float32Array]",S="[object Float64Array]",I="[object Int8Array]",N="[object Int16Array]",C="[object Int32Array]",R="[object Uint8Array]",A="[object Uint16Array]",k="[object Uint32Array]",E=/\b__p \+= '';/g,L=/\b(__p \+=) '' \+/g,D=/(__e\(.*?\)|\b__t\)) \+\n'';/g,P=/&(?:amp|lt|gt|quot|#39);/g,M=/[&<>"']/g,q=RegExp(P.source),j=RegExp(M.source),F=/<%-([\s\S]+?)%>/g,V=/<%([\s\S]+?)%>/g,G=/<%=([\s\S]+?)%>/g,B=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,z=/^\w*$/,Y=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,H=/[\\^$.*+?()[\]{}|]/g,U=RegExp(H.source),W=/^\s+|\s+$/g,K=/^\s+/,$=/\s+$/,Z=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,J=/\{\n\/\* \[wrapped with (.+)\] \*/,Q=/,? & /,X=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,tt=/\\(\\)?/g,et=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,nt=/\w*$/,at=/^[-+]0x[0-9a-f]+$/i,rt=/^0b[01]+$/i,it=/^\[object .+?Constructor\]$/,st=/^0o[0-7]+$/i,ut=/^(?:0|[1-9]\d*)$/,ot=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,lt=/($^)/,dt=/['\n\r\u2028\u2029\\]/g,ct="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ft="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ht="["+ft+"]",gt="["+ct+"]",pt="\\d+",bt="[a-z\\xdf-\\xf6\\xf8-\\xff]",mt="[^\\ud800-\\udfff"+ft+pt+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",yt="\\ud83c[\\udffb-\\udfff]",vt="[^\\ud800-\\udfff]",xt="(?:\\ud83c[\\udde6-\\uddff]){2}",_t="[\\ud800-\\udbff][\\udc00-\\udfff]",Tt="[A-Z\\xc0-\\xd6\\xd8-\\xde]",wt="(?:"+bt+"|"+mt+")",Ot="(?:"+Tt+"|"+mt+")",St="(?:"+gt+"|"+yt+")?",It="[\\ufe0e\\ufe0f]?"+St+"(?:\\u200d(?:"+[vt,xt,_t].join("|")+")[\\ufe0e\\ufe0f]?"+St+")*",Nt="(?:"+["[\\u2700-\\u27bf]",xt,_t].join("|")+")"+It,Ct="(?:"+[vt+gt+"?",gt,xt,_t,"[\\ud800-\\udfff]"].join("|")+")",Rt=RegExp("['’]","g"),At=RegExp(gt,"g"),kt=RegExp(yt+"(?="+yt+")|"+Ct+It,"g"),Et=RegExp([Tt+"?"+bt+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ht,Tt,"$"].join("|")+")",Ot+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ht,Tt+wt,"$"].join("|")+")",Tt+"?"+wt+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Tt+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",pt,Nt].join("|"),"g"),Lt=RegExp("[\\u200d\\ud800-\\udfff"+ct+"\\ufe0e\\ufe0f]"),Dt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Pt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Mt=-1,qt={};qt[O]=qt[S]=qt[I]=qt[N]=qt[C]=qt[R]=qt["[object Uint8ClampedArray]"]=qt[A]=qt[k]=!0,qt[u]=qt[o]=qt[T]=qt[l]=qt[w]=qt[d]=qt[c]=qt[f]=qt[g]=qt[p]=qt[b]=qt[m]=qt[y]=qt[v]=qt[_]=!1;var jt={};jt[u]=jt[o]=jt[T]=jt[w]=jt[l]=jt[d]=jt[O]=jt[S]=jt[I]=jt[N]=jt[C]=jt[g]=jt[p]=jt[b]=jt[m]=jt[y]=jt[v]=jt[x]=jt[R]=jt["[object Uint8ClampedArray]"]=jt[A]=jt[k]=!0,jt[c]=jt[f]=jt[_]=!1;var Ft={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Vt=parseFloat,Gt=parseInt,Bt="object"==typeof global&&global&&global.Object===Object&&global,zt="object"==typeof self&&self&&self.Object===Object&&self,Yt=Bt||zt||Function("return this")(),Ht=e&&!e.nodeType&&e,Ut=Ht&&"object"==typeof t&&t&&!t.nodeType&&t,Wt=Ut&&Ut.exports===Ht,Kt=Wt&&Bt.process,$t=function(){try{return Ut&&Ut.require&&Ut.require("util").types||Kt&&Kt.binding&&Kt.binding("util")}catch(t){}}(),Zt=$t&&$t.isArrayBuffer,Jt=$t&&$t.isDate,Qt=$t&&$t.isMap,Xt=$t&&$t.isRegExp,te=$t&&$t.isSet,ee=$t&&$t.isTypedArray;function ne(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function ae(t,e,n,a){for(var r=-1,i=null==t?0:t.length;++r<i;){var s=t[r];e(a,s,n(s),t)}return a}function re(t,e){for(var n=-1,a=null==t?0:t.length;++n<a&&!1!==e(t[n],n,t););return t}function ie(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}function se(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(!e(t[n],n,t))return!1;return!0}function ue(t,e){for(var n=-1,a=null==t?0:t.length,r=0,i=[];++n<a;){var s=t[n];e(s,n,t)&&(i[r++]=s)}return i}function oe(t,e){return!(null==t||!t.length)&&ye(t,e,0)>-1}function le(t,e,n){for(var a=-1,r=null==t?0:t.length;++a<r;)if(n(e,t[a]))return!0;return!1}function de(t,e){for(var n=-1,a=null==t?0:t.length,r=Array(a);++n<a;)r[n]=e(t[n],n,t);return r}function ce(t,e){for(var n=-1,a=e.length,r=t.length;++n<a;)t[r+n]=e[n];return t}function fe(t,e,n,a){var r=-1,i=null==t?0:t.length;for(a&&i&&(n=t[++r]);++r<i;)n=e(n,t[r],r,t);return n}function he(t,e,n,a){var r=null==t?0:t.length;for(a&&r&&(n=t[--r]);r--;)n=e(n,t[r],r,t);return n}function ge(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(e(t[n],n,t))return!0;return!1}var pe=Te("length");function be(t,e,n){var a;return n(t,(function(t,n,r){if(e(t,n,r))return a=n,!1})),a}function me(t,e,n,a){for(var r=t.length,i=n+(a?1:-1);a?i--:++i<r;)if(e(t[i],i,t))return i;return-1}function ye(t,e,n){return e==e?function(t,e,n){for(var a=n-1,r=t.length;++a<r;)if(t[a]===e)return a;return-1}(t,e,n):me(t,xe,n)}function ve(t,e,n,a){for(var r=n-1,i=t.length;++r<i;)if(a(t[r],e))return r;return-1}function xe(t){return t!=t}function _e(t,e){var n=null==t?0:t.length;return n?Se(t,e)/n:NaN}function Te(t){return function(e){return null==e?void 0:e[t]}}function we(t){return function(e){return null==t?void 0:t[e]}}function Oe(t,e,n,a,r){return r(t,(function(t,r,i){n=a?(a=!1,t):e(n,t,r,i)})),n}function Se(t,e){for(var n,a=-1,r=t.length;++a<r;){var i=e(t[a]);void 0!==i&&(n=void 0===n?i:n+i)}return n}function Ie(t,e){for(var n=-1,a=Array(t);++n<t;)a[n]=e(n);return a}function Ne(t){return function(e){return t(e)}}function Ce(t,e){return de(e,(function(e){return t[e]}))}function Re(t,e){return t.has(e)}function Ae(t,e){for(var n=-1,a=t.length;++n<a&&ye(e,t[n],0)>-1;);return n}function ke(t,e){for(var n=t.length;n--&&ye(e,t[n],0)>-1;);return n}function Ee(t,e){for(var n=t.length,a=0;n--;)t[n]===e&&++a;return a}var Le=we({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),De=we({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function Pe(t){return"\\"+Ft[t]}function Me(t){return Lt.test(t)}function qe(t){var e=-1,n=Array(t.size);return t.forEach((function(t,a){n[++e]=[a,t]})),n}function je(t,e){return function(n){return t(e(n))}}function Fe(t,e){for(var n=-1,a=t.length,r=0,s=[];++n<a;){var u=t[n];u!==e&&u!==i||(t[n]=i,s[r++]=n)}return s}function Ve(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}function Ge(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=[t,t]})),n}function Be(t){return Me(t)?function(t){for(var e=kt.lastIndex=0;kt.test(t);)++e;return e}(t):pe(t)}function ze(t){return Me(t)?function(t){return t.match(kt)||[]}(t):function(t){return t.split("")}(t)}var Ye=we({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),He=function t(e){var n,a=(e=null==e?Yt:He.defaults(Yt.Object(),e,He.pick(Yt,Pt))).Array,ct=e.Date,ft=e.Error,ht=e.Function,gt=e.Math,pt=e.Object,bt=e.RegExp,mt=e.String,yt=e.TypeError,vt=a.prototype,xt=pt.prototype,_t=e["__core-js_shared__"],Tt=ht.prototype.toString,wt=xt.hasOwnProperty,Ot=0,St=(n=/[^.]+$/.exec(_t&&_t.keys&&_t.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",It=xt.toString,Nt=Tt.call(pt),Ct=Yt._,kt=bt("^"+Tt.call(wt).replace(H,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Lt=Wt?e.Buffer:void 0,Ft=e.Symbol,Bt=e.Uint8Array,zt=Lt?Lt.allocUnsafe:void 0,Ht=je(pt.getPrototypeOf,pt),Ut=pt.create,Kt=xt.propertyIsEnumerable,$t=vt.splice,pe=Ft?Ft.isConcatSpreadable:void 0,we=Ft?Ft.iterator:void 0,Ue=Ft?Ft.toStringTag:void 0,We=function(){try{var t=Jr(pt,"defineProperty");return t({},"",{}),t}catch(e){}}(),Ke=e.clearTimeout!==Yt.clearTimeout&&e.clearTimeout,$e=ct&&ct.now!==Yt.Date.now&&ct.now,Ze=e.setTimeout!==Yt.setTimeout&&e.setTimeout,Je=gt.ceil,Qe=gt.floor,Xe=pt.getOwnPropertySymbols,tn=Lt?Lt.isBuffer:void 0,en=e.isFinite,nn=vt.join,an=je(pt.keys,pt),rn=gt.max,sn=gt.min,un=ct.now,on=e.parseInt,ln=gt.random,dn=vt.reverse,cn=Jr(e,"DataView"),fn=Jr(e,"Map"),hn=Jr(e,"Promise"),gn=Jr(e,"Set"),pn=Jr(e,"WeakMap"),bn=Jr(pt,"create"),mn=pn&&new pn,yn={},vn=Ii(cn),xn=Ii(fn),_n=Ii(hn),Tn=Ii(gn),wn=Ii(pn),On=Ft?Ft.prototype:void 0,Sn=On?On.valueOf:void 0,In=On?On.toString:void 0;function Nn(t){if(zs(t)&&!Es(t)&&!(t instanceof kn)){if(t instanceof An)return t;if(wt.call(t,"__wrapped__"))return Ni(t)}return new An(t)}var Cn=function(){function t(){}return function(e){if(!Bs(e))return{};if(Ut)return Ut(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();function Rn(){}function An(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=void 0}function kn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function En(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Ln(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Dn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Pn(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new Dn;++e<n;)this.add(t[e])}function Mn(t){var e=this.__data__=new Ln(t);this.size=e.size}function qn(t,e){var n=Es(t),a=!n&&ks(t),r=!n&&!a&&Ms(t),i=!n&&!a&&!r&&Js(t),s=n||a||r||i,u=s?Ie(t.length,mt):[],o=u.length;for(var l in t)!e&&!wt.call(t,l)||s&&("length"==l||r&&("offset"==l||"parent"==l)||i&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||ri(l,o))||u.push(l);return u}function jn(t){var e=t.length;return e?t[Da(0,e-1)]:void 0}function Fn(t,e){return _i(pr(t),Kn(e,0,t.length))}function Vn(t){return _i(pr(t))}function Gn(t,e,n){(void 0!==n&&!Cs(t[e],n)||void 0===n&&!(e in t))&&Un(t,e,n)}function Bn(t,e,n){var a=t[e];wt.call(t,e)&&Cs(a,n)&&(void 0!==n||e in t)||Un(t,e,n)}function zn(t,e){for(var n=t.length;n--;)if(Cs(t[n][0],e))return n;return-1}function Yn(t,e,n,a){return Xn(t,(function(t,r,i){e(a,t,n(t),i)})),a}function Hn(t,e){return t&&br(e,vu(e),t)}function Un(t,e,n){"__proto__"==e&&We?We(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function Wn(t,e){for(var n=-1,r=e.length,i=a(r),s=null==t;++n<r;)i[n]=s?void 0:gu(t,e[n]);return i}function Kn(t,e,n){return t==t&&(void 0!==n&&(t=t<=n?t:n),void 0!==e&&(t=t>=e?t:e)),t}function $n(t,e,n,a,r,i){var s,o=1&e,c=2&e,_=4&e;if(n&&(s=r?n(t,a,r,i):n(t)),void 0!==s)return s;if(!Bs(t))return t;var E=Es(t);if(E){if(s=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&wt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!o)return pr(t,s)}else{var L=ti(t),D=L==f||L==h;if(Ms(t))return lr(t,o);if(L==b||L==u||D&&!r){if(s=c||D?{}:ni(t),!o)return c?function(t,e){return br(t,Xr(t),e)}(t,function(t,e){return t&&br(e,xu(e),t)}(s,t)):function(t,e){return br(t,Qr(t),e)}(t,Hn(s,t))}else{if(!jt[L])return r?t:{};s=function(t,e,n){var a=t.constructor;switch(e){case T:return dr(t);case l:case d:return new a(+t);case w:return function(t,e){var n=e?dr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case O:case S:case I:case N:case C:case R:case"[object Uint8ClampedArray]":case A:case k:return cr(t,n);case g:return new a;case p:case v:return new a(t);case m:return function(t){var e=new t.constructor(t.source,nt.exec(t));return e.lastIndex=t.lastIndex,e}(t);case y:return new a;case x:return Sn?pt(Sn.call(t)):{}}}(t,L,o)}}i||(i=new Mn);var P=i.get(t);if(P)return P;i.set(t,s),Ks(t)?t.forEach((function(a){s.add($n(a,e,n,a,t,i))})):Ys(t)&&t.forEach((function(a,r){s.set(r,$n(a,e,n,r,t,i))}));var M=E?void 0:(_?c?Yr:zr:c?xu:vu)(t);return re(M||t,(function(a,r){M&&(a=t[r=a]),Bn(s,r,$n(a,e,n,r,t,i))})),s}function Zn(t,e,n){var a=n.length;if(null==t)return!a;for(t=pt(t);a--;){var r=n[a],i=t[r];if(void 0===i&&!(r in t)||!(0,e[r])(i))return!1}return!0}function Jn(t,e,n){if("function"!=typeof t)throw new yt(r);return mi((function(){t.apply(void 0,n)}),e)}function Qn(t,e,n,a){var r=-1,i=oe,s=!0,u=t.length,o=[],l=e.length;if(!u)return o;n&&(e=de(e,Ne(n))),a?(i=le,s=!1):e.length>=200&&(i=Re,s=!1,e=new Pn(e));t:for(;++r<u;){var d=t[r],c=null==n?d:n(d);if(d=a||0!==d?d:0,s&&c==c){for(var f=l;f--;)if(e[f]===c)continue t;o.push(d)}else i(e,c,a)||o.push(d)}return o}Nn.templateSettings={escape:F,evaluate:V,interpolate:G,variable:"",imports:{_:Nn}},(Nn.prototype=Rn.prototype).constructor=Nn,(An.prototype=Cn(Rn.prototype)).constructor=An,(kn.prototype=Cn(Rn.prototype)).constructor=kn,En.prototype.clear=function(){this.__data__=bn?bn(null):{},this.size=0},En.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},En.prototype.get=function(t){var e=this.__data__;if(bn){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return wt.call(e,t)?e[t]:void 0},En.prototype.has=function(t){var e=this.__data__;return bn?void 0!==e[t]:wt.call(e,t)},En.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=bn&&void 0===e?"__lodash_hash_undefined__":e,this},Ln.prototype.clear=function(){this.__data__=[],this.size=0},Ln.prototype.delete=function(t){var e=this.__data__,n=zn(e,t);return!(n<0||(n==e.length-1?e.pop():$t.call(e,n,1),--this.size,0))},Ln.prototype.get=function(t){var e=this.__data__,n=zn(e,t);return n<0?void 0:e[n][1]},Ln.prototype.has=function(t){return zn(this.__data__,t)>-1},Ln.prototype.set=function(t,e){var n=this.__data__,a=zn(n,t);return a<0?(++this.size,n.push([t,e])):n[a][1]=e,this},Dn.prototype.clear=function(){this.size=0,this.__data__={hash:new En,map:new(fn||Ln),string:new En}},Dn.prototype.delete=function(t){var e=$r(this,t).delete(t);return this.size-=e?1:0,e},Dn.prototype.get=function(t){return $r(this,t).get(t)},Dn.prototype.has=function(t){return $r(this,t).has(t)},Dn.prototype.set=function(t,e){var n=$r(this,t),a=n.size;return n.set(t,e),this.size+=n.size==a?0:1,this},Pn.prototype.add=Pn.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Pn.prototype.has=function(t){return this.__data__.has(t)},Mn.prototype.clear=function(){this.__data__=new Ln,this.size=0},Mn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Mn.prototype.get=function(t){return this.__data__.get(t)},Mn.prototype.has=function(t){return this.__data__.has(t)},Mn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Ln){var a=n.__data__;if(!fn||a.length<199)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new Dn(a)}return n.set(t,e),this.size=n.size,this};var Xn=vr(ua),ta=vr(oa,!0);function ea(t,e){var n=!0;return Xn(t,(function(t,a,r){return n=!!e(t,a,r)})),n}function na(t,e,n){for(var a=-1,r=t.length;++a<r;){var i=t[a],s=e(i);if(null!=s&&(void 0===u?s==s&&!Zs(s):n(s,u)))var u=s,o=i}return o}function aa(t,e){var n=[];return Xn(t,(function(t,a,r){e(t,a,r)&&n.push(t)})),n}function ra(t,e,n,a,r){var i=-1,s=t.length;for(n||(n=ai),r||(r=[]);++i<s;){var u=t[i];e>0&&n(u)?e>1?ra(u,e-1,n,a,r):ce(r,u):a||(r[r.length]=u)}return r}var ia=xr(),sa=xr(!0);function ua(t,e){return t&&ia(t,e,vu)}function oa(t,e){return t&&sa(t,e,vu)}function la(t,e){return ue(e,(function(e){return Fs(t[e])}))}function da(t,e){for(var n=0,a=(e=ir(e,t)).length;null!=t&&n<a;)t=t[Si(e[n++])];return n&&n==a?t:void 0}function ca(t,e,n){var a=e(t);return Es(t)?a:ce(a,n(t))}function fa(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":Ue&&Ue in pt(t)?function(t){var e=wt.call(t,Ue),n=t[Ue];try{t[Ue]=void 0;var a=!0}catch(i){}var r=It.call(t);return a&&(e?t[Ue]=n:delete t[Ue]),r}(t):function(t){return It.call(t)}(t)}function ha(t,e){return t>e}function ga(t,e){return null!=t&&wt.call(t,e)}function pa(t,e){return null!=t&&e in pt(t)}function ba(t,e,n){for(var r=n?le:oe,i=t[0].length,s=t.length,u=s,o=a(s),l=1/0,d=[];u--;){var c=t[u];u&&e&&(c=de(c,Ne(e))),l=sn(c.length,l),o[u]=!n&&(e||i>=120&&c.length>=120)?new Pn(u&&c):void 0}c=t[0];var f=-1,h=o[0];t:for(;++f<i&&d.length<l;){var g=c[f],p=e?e(g):g;if(g=n||0!==g?g:0,!(h?Re(h,p):r(d,p,n))){for(u=s;--u;){var b=o[u];if(!(b?Re(b,p):r(t[u],p,n)))continue t}h&&h.push(p),d.push(g)}}return d}function ma(t,e,n){var a=null==(t=hi(t,e=ir(e,t)))?t:t[Si(ji(e))];return null==a?void 0:ne(a,t,n)}function ya(t){return zs(t)&&fa(t)==u}function va(t,e,n,a,r){return t===e||(null==t||null==e||!zs(t)&&!zs(e)?t!=t&&e!=e:function(t,e,n,a,r,i){var s=Es(t),f=Es(e),h=s?o:ti(t),_=f?o:ti(e),O=(h=h==u?b:h)==b,S=(_=_==u?b:_)==b,I=h==_;if(I&&Ms(t)){if(!Ms(e))return!1;s=!0,O=!1}if(I&&!O)return i||(i=new Mn),s||Js(t)?Gr(t,e,n,a,r,i):function(t,e,n,a,r,i,s){switch(n){case w:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case T:return!(t.byteLength!=e.byteLength||!i(new Bt(t),new Bt(e)));case l:case d:case p:return Cs(+t,+e);case c:return t.name==e.name&&t.message==e.message;case m:case v:return t==e+"";case g:var u=qe;case y:if(u||(u=Ve),t.size!=e.size&&!(1&a))return!1;var o=s.get(t);if(o)return o==e;a|=2,s.set(t,e);var f=Gr(u(t),u(e),a,r,i,s);return s.delete(t),f;case x:if(Sn)return Sn.call(t)==Sn.call(e)}return!1}(t,e,h,n,a,r,i);if(!(1&n)){var N=O&&wt.call(t,"__wrapped__"),C=S&&wt.call(e,"__wrapped__");if(N||C){var R=N?t.value():t,A=C?e.value():e;return i||(i=new Mn),r(R,A,n,a,i)}}return!!I&&(i||(i=new Mn),function(t,e,n,a,r,i){var s=1&n,u=zr(t),o=u.length;if(o!=zr(e).length&&!s)return!1;for(var l=o;l--;){var d=u[l];if(!(s?d in e:wt.call(e,d)))return!1}var c=i.get(t),f=i.get(e);if(c&&f)return c==e&&f==t;var h=!0;i.set(t,e),i.set(e,t);for(var g=s;++l<o;){var p=t[d=u[l]],b=e[d];if(a)var m=s?a(b,p,d,e,t,i):a(p,b,d,t,e,i);if(!(void 0===m?p===b||r(p,b,n,a,i):m)){h=!1;break}g||(g="constructor"==d)}if(h&&!g){var y=t.constructor,v=e.constructor;y==v||!("constructor"in t)||!("constructor"in e)||"function"==typeof y&&y instanceof y&&"function"==typeof v&&v instanceof v||(h=!1)}return i.delete(t),i.delete(e),h}(t,e,n,a,r,i))}(t,e,n,a,va,r))}function xa(t,e,n,a){var r=n.length,i=r,s=!a;if(null==t)return!i;for(t=pt(t);r--;){var u=n[r];if(s&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++r<i;){var o=(u=n[r])[0],l=t[o],d=u[1];if(s&&u[2]){if(void 0===l&&!(o in t))return!1}else{var c=new Mn;if(a)var f=a(l,d,o,t,e,c);if(!(void 0===f?va(d,l,3,a,c):f))return!1}}return!0}function _a(t){return!(!Bs(t)||(e=t,St&&St in e))&&(Fs(t)?kt:it).test(Ii(t));var e}function Ta(t){return"function"==typeof t?t:null==t?Hu:"object"==typeof t?Es(t)?Na(t[0],t[1]):Ia(t):to(t)}function wa(t){if(!li(t))return an(t);var e=[];for(var n in pt(t))wt.call(t,n)&&"constructor"!=n&&e.push(n);return e}function Oa(t,e){return t<e}function Sa(t,e){var n=-1,r=Ds(t)?a(t.length):[];return Xn(t,(function(t,a,i){r[++n]=e(t,a,i)})),r}function Ia(t){var e=Zr(t);return 1==e.length&&e[0][2]?ci(e[0][0],e[0][1]):function(n){return n===t||xa(n,t,e)}}function Na(t,e){return si(t)&&di(e)?ci(Si(t),e):function(n){var a=gu(n,t);return void 0===a&&a===e?pu(n,t):va(e,a,3)}}function Ca(t,e,n,a,r){t!==e&&ia(e,(function(i,s){if(r||(r=new Mn),Bs(i))!function(t,e,n,a,r,i,s){var u=pi(t,n),o=pi(e,n),l=s.get(o);if(l)Gn(t,n,l);else{var d=i?i(u,o,n+"",t,e,s):void 0,c=void 0===d;if(c){var f=Es(o),h=!f&&Ms(o),g=!f&&!h&&Js(o);d=o,f||h||g?Es(u)?d=u:Ps(u)?d=pr(u):h?(c=!1,d=lr(o,!0)):g?(c=!1,d=cr(o,!0)):d=[]:Us(o)||ks(o)?(d=u,ks(u)?d=iu(u):Bs(u)&&!Fs(u)||(d=ni(o))):c=!1}c&&(s.set(o,d),r(d,o,a,i,s),s.delete(o)),Gn(t,n,d)}}(t,e,s,n,Ca,a,r);else{var u=a?a(pi(t,s),i,s+"",t,e,r):void 0;void 0===u&&(u=i),Gn(t,s,u)}}),xu)}function Ra(t,e){var n=t.length;if(n)return ri(e+=e<0?n:0,n)?t[e]:void 0}function Aa(t,e,n){e=e.length?de(e,(function(t){return Es(t)?function(e){return da(e,1===t.length?t[0]:t)}:t})):[Hu];var a=-1;return e=de(e,Ne(Kr())),function(t,e){var a=t.length;for(t.sort((function(t,e){return function(t,e,n){for(var a=-1,r=t.criteria,i=e.criteria,s=r.length,u=n.length;++a<s;){var o=fr(r[a],i[a]);if(o)return a>=u?o:o*("desc"==n[a]?-1:1)}return t.index-e.index}(t,e,n)}));a--;)t[a]=t[a].value;return t}(Sa(t,(function(t,n,r){return{criteria:de(e,(function(e){return e(t)})),index:++a,value:t}})))}function ka(t,e,n){for(var a=-1,r=e.length,i={};++a<r;){var s=e[a],u=da(t,s);n(u,s)&&Fa(i,ir(s,t),u)}return i}function Ea(t,e,n,a){var r=a?ve:ye,i=-1,s=e.length,u=t;for(t===e&&(e=pr(e)),n&&(u=de(t,Ne(n)));++i<s;)for(var o=0,l=e[i],d=n?n(l):l;(o=r(u,d,o,a))>-1;)u!==t&&$t.call(u,o,1),$t.call(t,o,1);return t}function La(t,e){for(var n=t?e.length:0,a=n-1;n--;){var r=e[n];if(n==a||r!==i){var i=r;ri(r)?$t.call(t,r,1):Ja(t,r)}}return t}function Da(t,e){return t+Qe(ln()*(e-t+1))}function Pa(t,e){var n="";if(!t||e<1||e>9007199254740991)return n;do{e%2&&(n+=t),(e=Qe(e/2))&&(t+=t)}while(e);return n}function Ma(t,e){return yi(fi(t,e,Hu),t+"")}function qa(t){return jn(Cu(t))}function ja(t,e){var n=Cu(t);return _i(n,Kn(e,0,n.length))}function Fa(t,e,n,a){if(!Bs(t))return t;for(var r=-1,i=(e=ir(e,t)).length,s=i-1,u=t;null!=u&&++r<i;){var o=Si(e[r]),l=n;if("__proto__"===o||"constructor"===o||"prototype"===o)return t;if(r!=s){var d=u[o];void 0===(l=a?a(d,o,u):void 0)&&(l=Bs(d)?d:ri(e[r+1])?[]:{})}Bn(u,o,l),u=u[o]}return t}var Va=mn?function(t,e){return mn.set(t,e),t}:Hu,Ga=We?function(t,e){return We(t,"toString",{configurable:!0,enumerable:!1,value:Bu(e),writable:!0})}:Hu;function Ba(t){return _i(Cu(t))}function za(t,e,n){var r=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var s=a(i);++r<i;)s[r]=t[r+e];return s}function Ya(t,e){var n;return Xn(t,(function(t,a,r){return!(n=e(t,a,r))})),!!n}function Ha(t,e,n){var a=0,r=null==t?a:t.length;if("number"==typeof e&&e==e&&r<=2147483647){for(;a<r;){var i=a+r>>>1,s=t[i];null!==s&&!Zs(s)&&(n?s<=e:s<e)?a=i+1:r=i}return r}return Ua(t,e,Hu,n)}function Ua(t,e,n,a){var r=0,i=null==t?0:t.length;if(0===i)return 0;for(var s=(e=n(e))!=e,u=null===e,o=Zs(e),l=void 0===e;r<i;){var d=Qe((r+i)/2),c=n(t[d]),f=void 0!==c,h=null===c,g=c==c,p=Zs(c);if(s)var b=a||g;else b=l?g&&(a||f):u?g&&f&&(a||!h):o?g&&f&&!h&&(a||!p):!h&&!p&&(a?c<=e:c<e);b?r=d+1:i=d}return sn(i,4294967294)}function Wa(t,e){for(var n=-1,a=t.length,r=0,i=[];++n<a;){var s=t[n],u=e?e(s):s;if(!n||!Cs(u,o)){var o=u;i[r++]=0===s?0:s}}return i}function Ka(t){return"number"==typeof t?t:Zs(t)?NaN:+t}function $a(t){if("string"==typeof t)return t;if(Es(t))return de(t,$a)+"";if(Zs(t))return In?In.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Za(t,e,n){var a=-1,r=oe,i=t.length,s=!0,u=[],o=u;if(n)s=!1,r=le;else if(i>=200){var l=e?null:Pr(t);if(l)return Ve(l);s=!1,r=Re,o=new Pn}else o=e?[]:u;t:for(;++a<i;){var d=t[a],c=e?e(d):d;if(d=n||0!==d?d:0,s&&c==c){for(var f=o.length;f--;)if(o[f]===c)continue t;e&&o.push(c),u.push(d)}else r(o,c,n)||(o!==u&&o.push(c),u.push(d))}return u}function Ja(t,e){return null==(t=hi(t,e=ir(e,t)))||delete t[Si(ji(e))]}function Qa(t,e,n,a){return Fa(t,e,n(da(t,e)),a)}function Xa(t,e,n,a){for(var r=t.length,i=a?r:-1;(a?i--:++i<r)&&e(t[i],i,t););return n?za(t,a?0:i,a?i+1:r):za(t,a?i+1:0,a?r:i)}function tr(t,e){var n=t;return n instanceof kn&&(n=n.value()),fe(e,(function(t,e){return e.func.apply(e.thisArg,ce([t],e.args))}),n)}function er(t,e,n){var r=t.length;if(r<2)return r?Za(t[0]):[];for(var i=-1,s=a(r);++i<r;)for(var u=t[i],o=-1;++o<r;)o!=i&&(s[i]=Qn(s[i]||u,t[o],e,n));return Za(ra(s,1),e,n)}function nr(t,e,n){for(var a=-1,r=t.length,i=e.length,s={};++a<r;)n(s,t[a],a<i?e[a]:void 0);return s}function ar(t){return Ps(t)?t:[]}function rr(t){return"function"==typeof t?t:Hu}function ir(t,e){return Es(t)?t:si(t,e)?[t]:Oi(su(t))}var sr=Ma;function ur(t,e,n){var a=t.length;return n=void 0===n?a:n,!e&&n>=a?t:za(t,e,n)}var or=Ke||function(t){return Yt.clearTimeout(t)};function lr(t,e){if(e)return t.slice();var n=t.length,a=zt?zt(n):new t.constructor(n);return t.copy(a),a}function dr(t){var e=new t.constructor(t.byteLength);return new Bt(e).set(new Bt(t)),e}function cr(t,e){var n=e?dr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function fr(t,e){if(t!==e){var n=void 0!==t,a=null===t,r=t==t,i=Zs(t),s=void 0!==e,u=null===e,o=e==e,l=Zs(e);if(!u&&!l&&!i&&t>e||i&&s&&o&&!u&&!l||a&&s&&o||!n&&o||!r)return 1;if(!a&&!i&&!l&&t<e||l&&n&&r&&!a&&!i||u&&n&&r||!s&&r||!o)return-1}return 0}function hr(t,e,n,r){for(var i=-1,s=t.length,u=n.length,o=-1,l=e.length,d=rn(s-u,0),c=a(l+d),f=!r;++o<l;)c[o]=e[o];for(;++i<u;)(f||i<s)&&(c[n[i]]=t[i]);for(;d--;)c[o++]=t[i++];return c}function gr(t,e,n,r){for(var i=-1,s=t.length,u=-1,o=n.length,l=-1,d=e.length,c=rn(s-o,0),f=a(c+d),h=!r;++i<c;)f[i]=t[i];for(var g=i;++l<d;)f[g+l]=e[l];for(;++u<o;)(h||i<s)&&(f[g+n[u]]=t[i++]);return f}function pr(t,e){var n=-1,r=t.length;for(e||(e=a(r));++n<r;)e[n]=t[n];return e}function br(t,e,n,a){var r=!n;n||(n={});for(var i=-1,s=e.length;++i<s;){var u=e[i],o=a?a(n[u],t[u],u,n,t):void 0;void 0===o&&(o=t[u]),r?Un(n,u,o):Bn(n,u,o)}return n}function mr(t,e){return function(n,a){var r=Es(n)?ae:Yn,i=e?e():{};return r(n,t,Kr(a,2),i)}}function yr(t){return Ma((function(e,n){var a=-1,r=n.length,i=r>1?n[r-1]:void 0,s=r>2?n[2]:void 0;for(i=t.length>3&&"function"==typeof i?(r--,i):void 0,s&&ii(n[0],n[1],s)&&(i=r<3?void 0:i,r=1),e=pt(e);++a<r;){var u=n[a];u&&t(e,u,a,i)}return e}))}function vr(t,e){return function(n,a){if(null==n)return n;if(!Ds(n))return t(n,a);for(var r=n.length,i=e?r:-1,s=pt(n);(e?i--:++i<r)&&!1!==a(s[i],i,s););return n}}function xr(t){return function(e,n,a){for(var r=-1,i=pt(e),s=a(e),u=s.length;u--;){var o=s[t?u:++r];if(!1===n(i[o],o,i))break}return e}}function _r(t){return function(e){var n=Me(e=su(e))?ze(e):void 0,a=n?n[0]:e.charAt(0),r=n?ur(n,1).join(""):e.slice(1);return a[t]()+r}}function Tr(t){return function(e){return fe(Fu(ku(e).replace(Rt,"")),t,"")}}function wr(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=Cn(t.prototype),a=t.apply(n,e);return Bs(a)?a:n}}function Or(t){return function(e,n,a){var r=pt(e);if(!Ds(e)){var i=Kr(n,3);e=vu(e),n=function(t){return i(r[t],t,r)}}var s=t(e,n,a);return s>-1?r[i?e[s]:s]:void 0}}function Sr(t){return Br((function(e){var n=e.length,a=n,i=An.prototype.thru;for(t&&e.reverse();a--;){var s=e[a];if("function"!=typeof s)throw new yt(r);if(i&&!u&&"wrapper"==Ur(s))var u=new An([],!0)}for(a=u?a:n;++a<n;){var o=Ur(s=e[a]),l="wrapper"==o?Hr(s):void 0;u=l&&ui(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?u[Ur(l[0])].apply(u,l[3]):1==s.length&&ui(s)?u[o]():u.thru(s)}return function(){var t=arguments,a=t[0];if(u&&1==t.length&&Es(a))return u.plant(a).value();for(var r=0,i=n?e[r].apply(this,t):a;++r<n;)i=e[r].call(this,i);return i}}))}function Ir(t,e,n,r,i,s,u,o,l,d){var c=128&e,f=1&e,h=2&e,g=24&e,p=512&e,b=h?void 0:wr(t);return function m(){for(var y=arguments.length,v=a(y),x=y;x--;)v[x]=arguments[x];if(g)var _=Wr(m),T=Ee(v,_);if(r&&(v=hr(v,r,i,g)),s&&(v=gr(v,s,u,g)),y-=T,g&&y<d){var w=Fe(v,_);return Lr(t,e,Ir,m.placeholder,n,v,w,o,l,d-y)}var O=f?n:this,S=h?O[t]:t;return y=v.length,o?v=gi(v,o):p&&y>1&&v.reverse(),c&&l<y&&(v.length=l),this&&this!==Yt&&this instanceof m&&(S=b||wr(S)),S.apply(O,v)}}function Nr(t,e){return function(n,a){return function(t,e,n,a){return ua(t,(function(t,r,i){e(a,n(t),r,i)})),a}(n,t,e(a),{})}}function Cr(t,e){return function(n,a){var r;if(void 0===n&&void 0===a)return e;if(void 0!==n&&(r=n),void 0!==a){if(void 0===r)return a;"string"==typeof n||"string"==typeof a?(n=$a(n),a=$a(a)):(n=Ka(n),a=Ka(a)),r=t(n,a)}return r}}function Rr(t){return Br((function(e){return e=de(e,Ne(Kr())),Ma((function(n){var a=this;return t(e,(function(t){return ne(t,a,n)}))}))}))}function Ar(t,e){var n=(e=void 0===e?" ":$a(e)).length;if(n<2)return n?Pa(e,t):e;var a=Pa(e,Je(t/Be(e)));return Me(e)?ur(ze(a),0,t).join(""):a.slice(0,t)}function kr(t){return function(e,n,r){return r&&"number"!=typeof r&&ii(e,n,r)&&(n=r=void 0),e=eu(e),void 0===n?(n=e,e=0):n=eu(n),function(t,e,n,r){for(var i=-1,s=rn(Je((e-t)/(n||1)),0),u=a(s);s--;)u[r?s:++i]=t,t+=n;return u}(e,n,r=void 0===r?e<n?1:-1:eu(r),t)}}function Er(t){return function(e,n){return"string"==typeof e&&"string"==typeof n||(e=ru(e),n=ru(n)),t(e,n)}}function Lr(t,e,n,a,r,i,s,u,o,l){var d=8&e;e|=d?32:64,4&(e&=~(d?64:32))||(e&=-4);var c=[t,e,r,d?i:void 0,d?s:void 0,d?void 0:i,d?void 0:s,u,o,l],f=n.apply(void 0,c);return ui(t)&&bi(f,c),f.placeholder=a,vi(f,t,e)}function Dr(t){var e=gt[t];return function(t,n){if(t=ru(t),(n=null==n?0:sn(nu(n),292))&&en(t)){var a=(su(t)+"e").split("e");return+((a=(su(e(a[0]+"e"+(+a[1]+n)))+"e").split("e"))[0]+"e"+(+a[1]-n))}return e(t)}}var Pr=gn&&1/Ve(new gn([,-0]))[1]==1/0?function(t){return new gn(t)}:Zu;function Mr(t){return function(e){var n=ti(e);return n==g?qe(e):n==y?Ge(e):function(t,e){return de(e,(function(e){return[e,t[e]]}))}(e,t(e))}}function qr(t,e,n,s,u,o,l,d){var c=2&e;if(!c&&"function"!=typeof t)throw new yt(r);var f=s?s.length:0;if(f||(e&=-97,s=u=void 0),l=void 0===l?l:rn(nu(l),0),d=void 0===d?d:nu(d),f-=u?u.length:0,64&e){var h=s,g=u;s=u=void 0}var p=c?void 0:Hr(t),b=[t,e,n,s,u,h,g,o,l,d];if(p&&function(t,e){var n=t[1],a=e[1],r=n|a;if(!(r<131||128==a&&8==n||128==a&&256==n&&t[7].length<=e[8]||384==a&&e[7].length<=e[8]&&8==n))return t;1&a&&(t[2]=e[2],r|=1&n?0:4);var s=e[3];if(s){var u=t[3];t[3]=u?hr(u,s,e[4]):s,t[4]=u?Fe(t[3],i):e[4]}(s=e[5])&&(t[5]=(u=t[5])?gr(u,s,e[6]):s,t[6]=u?Fe(t[5],i):e[6]),(s=e[7])&&(t[7]=s),128&a&&(t[8]=null==t[8]?e[8]:sn(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=r}(b,p),t=b[0],e=b[1],n=b[2],s=b[3],u=b[4],!(d=b[9]=void 0===b[9]?c?0:t.length:rn(b[9]-f,0))&&24&e&&(e&=-25),e&&1!=e)m=8==e||16==e?function(t,e,n){var r=wr(t);return function i(){for(var s=arguments.length,u=a(s),o=s,l=Wr(i);o--;)u[o]=arguments[o];var d=s<3&&u[0]!==l&&u[s-1]!==l?[]:Fe(u,l);if((s-=d.length)<n)return Lr(t,e,Ir,i.placeholder,void 0,u,d,void 0,void 0,n-s);var c=this&&this!==Yt&&this instanceof i?r:t;return ne(c,this,u)}}(t,e,d):32!=e&&33!=e||u.length?Ir.apply(void 0,b):function(t,e,n,r){var i=1&e,s=wr(t);return function e(){for(var u=-1,o=arguments.length,l=-1,d=r.length,c=a(d+o),f=this&&this!==Yt&&this instanceof e?s:t;++l<d;)c[l]=r[l];for(;o--;)c[l++]=arguments[++u];return ne(f,i?n:this,c)}}(t,e,n,s);else var m=function(t,e,n){var a=1&e,r=wr(t);return function e(){var i=this&&this!==Yt&&this instanceof e?r:t;return i.apply(a?n:this,arguments)}}(t,e,n);return vi((p?Va:bi)(m,b),t,e)}function jr(t,e,n,a){return void 0===t||Cs(t,xt[n])&&!wt.call(a,n)?e:t}function Fr(t,e,n,a,r,i){return Bs(t)&&Bs(e)&&(i.set(e,t),Ca(t,e,void 0,Fr,i),i.delete(e)),t}function Vr(t){return Us(t)?void 0:t}function Gr(t,e,n,a,r,i){var s=1&n,u=t.length,o=e.length;if(u!=o&&!(s&&o>u))return!1;var l=i.get(t),d=i.get(e);if(l&&d)return l==e&&d==t;var c=-1,f=!0,h=2&n?new Pn:void 0;for(i.set(t,e),i.set(e,t);++c<u;){var g=t[c],p=e[c];if(a)var b=s?a(p,g,c,e,t,i):a(g,p,c,t,e,i);if(void 0!==b){if(b)continue;f=!1;break}if(h){if(!ge(e,(function(t,e){if(!Re(h,e)&&(g===t||r(g,t,n,a,i)))return h.push(e)}))){f=!1;break}}else if(g!==p&&!r(g,p,n,a,i)){f=!1;break}}return i.delete(t),i.delete(e),f}function Br(t){return yi(fi(t,void 0,Li),t+"")}function zr(t){return ca(t,vu,Qr)}function Yr(t){return ca(t,xu,Xr)}var Hr=mn?function(t){return mn.get(t)}:Zu;function Ur(t){for(var e=t.name+"",n=yn[e],a=wt.call(yn,e)?n.length:0;a--;){var r=n[a],i=r.func;if(null==i||i==t)return r.name}return e}function Wr(t){return(wt.call(Nn,"placeholder")?Nn:t).placeholder}function Kr(){var t=Nn.iteratee||Uu;return t=t===Uu?Ta:t,arguments.length?t(arguments[0],arguments[1]):t}function $r(t,e){var n,a,r=t.__data__;return("string"==(a=typeof(n=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function Zr(t){for(var e=vu(t),n=e.length;n--;){var a=e[n],r=t[a];e[n]=[a,r,di(r)]}return e}function Jr(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return _a(n)?n:void 0}var Qr=Xe?function(t){return null==t?[]:(t=pt(t),ue(Xe(t),(function(e){return Kt.call(t,e)})))}:ao,Xr=Xe?function(t){for(var e=[];t;)ce(e,Qr(t)),t=Ht(t);return e}:ao,ti=fa;function ei(t,e,n){for(var a=-1,r=(e=ir(e,t)).length,i=!1;++a<r;){var s=Si(e[a]);if(!(i=null!=t&&n(t,s)))break;t=t[s]}return i||++a!=r?i:!!(r=null==t?0:t.length)&&Gs(r)&&ri(s,r)&&(Es(t)||ks(t))}function ni(t){return"function"!=typeof t.constructor||li(t)?{}:Cn(Ht(t))}function ai(t){return Es(t)||ks(t)||!!(pe&&t&&t[pe])}function ri(t,e){var n=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==n||"symbol"!=n&&ut.test(t))&&t>-1&&t%1==0&&t<e}function ii(t,e,n){if(!Bs(n))return!1;var a=typeof e;return!!("number"==a?Ds(n)&&ri(e,n.length):"string"==a&&e in n)&&Cs(n[e],t)}function si(t,e){if(Es(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!Zs(t))||z.test(t)||!B.test(t)||null!=e&&t in pt(e)}function ui(t){var e=Ur(t),n=Nn[e];if("function"!=typeof n||!(e in kn.prototype))return!1;if(t===n)return!0;var a=Hr(n);return!!a&&t===a[0]}(cn&&ti(new cn(new ArrayBuffer(1)))!=w||fn&&ti(new fn)!=g||hn&&"[object Promise]"!=ti(hn.resolve())||gn&&ti(new gn)!=y||pn&&ti(new pn)!=_)&&(ti=function(t){var e=fa(t),n=e==b?t.constructor:void 0,a=n?Ii(n):"";if(a)switch(a){case vn:return w;case xn:return g;case _n:return"[object Promise]";case Tn:return y;case wn:return _}return e});var oi=_t?Fs:ro;function li(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||xt)}function di(t){return t==t&&!Bs(t)}function ci(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in pt(n))}}function fi(t,e,n){return e=rn(void 0===e?t.length-1:e,0),function(){for(var r=arguments,i=-1,s=rn(r.length-e,0),u=a(s);++i<s;)u[i]=r[e+i];i=-1;for(var o=a(e+1);++i<e;)o[i]=r[i];return o[e]=n(u),ne(t,this,o)}}function hi(t,e){return e.length<2?t:da(t,za(e,0,-1))}function gi(t,e){for(var n=t.length,a=sn(e.length,n),r=pr(t);a--;){var i=e[a];t[a]=ri(i,n)?r[i]:void 0}return t}function pi(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}var bi=xi(Va),mi=Ze||function(t,e){return Yt.setTimeout(t,e)},yi=xi(Ga);function vi(t,e,n){var a=e+"";return yi(t,function(t,e){var n=e.length;if(!n)return t;var a=n-1;return e[a]=(n>1?"& ":"")+e[a],e=e.join(n>2?", ":" "),t.replace(Z,"{\n/* [wrapped with "+e+"] */\n")}(a,function(t,e){return re(s,(function(n){var a="_."+n[0];e&n[1]&&!oe(t,a)&&t.push(a)})),t.sort()}(function(t){var e=t.match(J);return e?e[1].split(Q):[]}(a),n)))}function xi(t){var e=0,n=0;return function(){var a=un(),r=16-(a-n);if(n=a,r>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function _i(t,e){var n=-1,a=t.length,r=a-1;for(e=void 0===e?a:e;++n<e;){var i=Da(n,r),s=t[i];t[i]=t[n],t[n]=s}return t.length=e,t}var Ti,wi,Oi=(Ti=Ts((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(Y,(function(t,n,a,r){e.push(a?r.replace(tt,"$1"):n||t)})),e}),(function(t){return 500===wi.size&&wi.clear(),t})),wi=Ti.cache,Ti);function Si(t){if("string"==typeof t||Zs(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Ii(t){if(null!=t){try{return Tt.call(t)}catch(e){}try{return t+""}catch(e){}}return""}function Ni(t){if(t instanceof kn)return t.clone();var e=new An(t.__wrapped__,t.__chain__);return e.__actions__=pr(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}var Ci=Ma((function(t,e){return Ps(t)?Qn(t,ra(e,1,Ps,!0)):[]})),Ri=Ma((function(t,e){var n=ji(e);return Ps(n)&&(n=void 0),Ps(t)?Qn(t,ra(e,1,Ps,!0),Kr(n,2)):[]})),Ai=Ma((function(t,e){var n=ji(e);return Ps(n)&&(n=void 0),Ps(t)?Qn(t,ra(e,1,Ps,!0),void 0,n):[]}));function ki(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=null==n?0:nu(n);return r<0&&(r=rn(a+r,0)),me(t,Kr(e,3),r)}function Ei(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=a-1;return void 0!==n&&(r=nu(n),r=n<0?rn(a+r,0):sn(r,a-1)),me(t,Kr(e,3),r,!0)}function Li(t){return null!=t&&t.length?ra(t,1):[]}function Di(t){return t&&t.length?t[0]:void 0}var Pi=Ma((function(t){var e=de(t,ar);return e.length&&e[0]===t[0]?ba(e):[]})),Mi=Ma((function(t){var e=ji(t),n=de(t,ar);return e===ji(n)?e=void 0:n.pop(),n.length&&n[0]===t[0]?ba(n,Kr(e,2)):[]})),qi=Ma((function(t){var e=ji(t),n=de(t,ar);return(e="function"==typeof e?e:void 0)&&n.pop(),n.length&&n[0]===t[0]?ba(n,void 0,e):[]}));function ji(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}var Fi=Ma(Vi);function Vi(t,e){return t&&t.length&&e&&e.length?Ea(t,e):t}var Gi=Br((function(t,e){var n=null==t?0:t.length,a=Wn(t,e);return La(t,de(e,(function(t){return ri(t,n)?+t:t})).sort(fr)),a}));function Bi(t){return null==t?t:dn.call(t)}var zi=Ma((function(t){return Za(ra(t,1,Ps,!0))})),Yi=Ma((function(t){var e=ji(t);return Ps(e)&&(e=void 0),Za(ra(t,1,Ps,!0),Kr(e,2))})),Hi=Ma((function(t){var e=ji(t);return e="function"==typeof e?e:void 0,Za(ra(t,1,Ps,!0),void 0,e)}));function Ui(t){if(!t||!t.length)return[];var e=0;return t=ue(t,(function(t){if(Ps(t))return e=rn(t.length,e),!0})),Ie(e,(function(e){return de(t,Te(e))}))}function Wi(t,e){if(!t||!t.length)return[];var n=Ui(t);return null==e?n:de(n,(function(t){return ne(e,void 0,t)}))}var Ki=Ma((function(t,e){return Ps(t)?Qn(t,e):[]})),$i=Ma((function(t){return er(ue(t,Ps))})),Zi=Ma((function(t){var e=ji(t);return Ps(e)&&(e=void 0),er(ue(t,Ps),Kr(e,2))})),Ji=Ma((function(t){var e=ji(t);return e="function"==typeof e?e:void 0,er(ue(t,Ps),void 0,e)})),Qi=Ma(Ui),Xi=Ma((function(t){var e=t.length,n=e>1?t[e-1]:void 0;return n="function"==typeof n?(t.pop(),n):void 0,Wi(t,n)}));function ts(t){var e=Nn(t);return e.__chain__=!0,e}function es(t,e){return e(t)}var ns=Br((function(t){var e=t.length,n=e?t[0]:0,a=this.__wrapped__,r=function(e){return Wn(e,t)};return!(e>1||this.__actions__.length)&&a instanceof kn&&ri(n)?((a=a.slice(n,+n+(e?1:0))).__actions__.push({func:es,args:[r],thisArg:void 0}),new An(a,this.__chain__).thru((function(t){return e&&!t.length&&t.push(void 0),t}))):this.thru(r)})),as=mr((function(t,e,n){wt.call(t,n)?++t[n]:Un(t,n,1)})),rs=Or(ki),is=Or(Ei);function ss(t,e){return(Es(t)?re:Xn)(t,Kr(e,3))}function us(t,e){return(Es(t)?ie:ta)(t,Kr(e,3))}var os=mr((function(t,e,n){wt.call(t,n)?t[n].push(e):Un(t,n,[e])})),ls=Ma((function(t,e,n){var r=-1,i="function"==typeof e,s=Ds(t)?a(t.length):[];return Xn(t,(function(t){s[++r]=i?ne(e,t,n):ma(t,e,n)})),s})),ds=mr((function(t,e,n){Un(t,n,e)}));function cs(t,e){return(Es(t)?de:Sa)(t,Kr(e,3))}var fs=mr((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]})),hs=Ma((function(t,e){if(null==t)return[];var n=e.length;return n>1&&ii(t,e[0],e[1])?e=[]:n>2&&ii(e[0],e[1],e[2])&&(e=[e[0]]),Aa(t,ra(e,1),[])})),gs=$e||function(){return Yt.Date.now()};function ps(t,e,n){return e=n?void 0:e,qr(t,128,void 0,void 0,void 0,void 0,e=t&&null==e?t.length:e)}function bs(t,e){var n;if("function"!=typeof e)throw new yt(r);return t=nu(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=void 0),n}}var ms=Ma((function(t,e,n){var a=1;if(n.length){var r=Fe(n,Wr(ms));a|=32}return qr(t,a,e,n,r)})),ys=Ma((function(t,e,n){var a=3;if(n.length){var r=Fe(n,Wr(ys));a|=32}return qr(e,a,t,n,r)}));function vs(t,e,n){var a,i,s,u,o,l,d=0,c=!1,f=!1,h=!0;if("function"!=typeof t)throw new yt(r);function g(e){var n=a,r=i;return a=i=void 0,d=e,u=t.apply(r,n)}function p(t){return d=t,o=mi(m,e),c?g(t):u}function b(t){var n=t-l;return void 0===l||n>=e||n<0||f&&t-d>=s}function m(){var t=gs();if(b(t))return y(t);o=mi(m,function(t){var n=e-(t-l);return f?sn(n,s-(t-d)):n}(t))}function y(t){return o=void 0,h&&a?g(t):(a=i=void 0,u)}function v(){var t=gs(),n=b(t);if(a=arguments,i=this,l=t,n){if(void 0===o)return p(l);if(f)return or(o),o=mi(m,e),g(l)}return void 0===o&&(o=mi(m,e)),u}return e=ru(e)||0,Bs(n)&&(c=!!n.leading,s=(f="maxWait"in n)?rn(ru(n.maxWait)||0,e):s,h="trailing"in n?!!n.trailing:h),v.cancel=function(){void 0!==o&&or(o),d=0,a=l=i=o=void 0},v.flush=function(){return void 0===o?u:y(gs())},v}var xs=Ma((function(t,e){return Jn(t,1,e)})),_s=Ma((function(t,e,n){return Jn(t,ru(e)||0,n)}));function Ts(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new yt(r);var n=function(){var a=arguments,r=e?e.apply(this,a):a[0],i=n.cache;if(i.has(r))return i.get(r);var s=t.apply(this,a);return n.cache=i.set(r,s)||i,s};return n.cache=new(Ts.Cache||Dn),n}function ws(t){if("function"!=typeof t)throw new yt(r);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Ts.Cache=Dn;var Os=sr((function(t,e){var n=(e=1==e.length&&Es(e[0])?de(e[0],Ne(Kr())):de(ra(e,1),Ne(Kr()))).length;return Ma((function(a){for(var r=-1,i=sn(a.length,n);++r<i;)a[r]=e[r].call(this,a[r]);return ne(t,this,a)}))})),Ss=Ma((function(t,e){return qr(t,32,void 0,e,Fe(e,Wr(Ss)))})),Is=Ma((function(t,e){return qr(t,64,void 0,e,Fe(e,Wr(Is)))})),Ns=Br((function(t,e){return qr(t,256,void 0,void 0,void 0,e)}));function Cs(t,e){return t===e||t!=t&&e!=e}var Rs=Er(ha),As=Er((function(t,e){return t>=e})),ks=ya(function(){return arguments}())?ya:function(t){return zs(t)&&wt.call(t,"callee")&&!Kt.call(t,"callee")},Es=a.isArray,Ls=Zt?Ne(Zt):function(t){return zs(t)&&fa(t)==T};function Ds(t){return null!=t&&Gs(t.length)&&!Fs(t)}function Ps(t){return zs(t)&&Ds(t)}var Ms=tn||ro,qs=Jt?Ne(Jt):function(t){return zs(t)&&fa(t)==d};function js(t){if(!zs(t))return!1;var e=fa(t);return e==c||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!Us(t)}function Fs(t){if(!Bs(t))return!1;var e=fa(t);return e==f||e==h||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Vs(t){return"number"==typeof t&&t==nu(t)}function Gs(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function Bs(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function zs(t){return null!=t&&"object"==typeof t}var Ys=Qt?Ne(Qt):function(t){return zs(t)&&ti(t)==g};function Hs(t){return"number"==typeof t||zs(t)&&fa(t)==p}function Us(t){if(!zs(t)||fa(t)!=b)return!1;var e=Ht(t);if(null===e)return!0;var n=wt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Tt.call(n)==Nt}var Ws=Xt?Ne(Xt):function(t){return zs(t)&&fa(t)==m},Ks=te?Ne(te):function(t){return zs(t)&&ti(t)==y};function $s(t){return"string"==typeof t||!Es(t)&&zs(t)&&fa(t)==v}function Zs(t){return"symbol"==typeof t||zs(t)&&fa(t)==x}var Js=ee?Ne(ee):function(t){return zs(t)&&Gs(t.length)&&!!qt[fa(t)]},Qs=Er(Oa),Xs=Er((function(t,e){return t<=e}));function tu(t){if(!t)return[];if(Ds(t))return $s(t)?ze(t):pr(t);if(we&&t[we])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[we]());var e=ti(t);return(e==g?qe:e==y?Ve:Cu)(t)}function eu(t){return t?(t=ru(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function nu(t){var e=eu(t),n=e%1;return e==e?n?e-n:e:0}function au(t){return t?Kn(nu(t),0,4294967295):0}function ru(t){if("number"==typeof t)return t;if(Zs(t))return NaN;if(Bs(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Bs(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(W,"");var n=rt.test(t);return n||st.test(t)?Gt(t.slice(2),n?2:8):at.test(t)?NaN:+t}function iu(t){return br(t,xu(t))}function su(t){return null==t?"":$a(t)}var uu=yr((function(t,e){if(li(e)||Ds(e))br(e,vu(e),t);else for(var n in e)wt.call(e,n)&&Bn(t,n,e[n])})),ou=yr((function(t,e){br(e,xu(e),t)})),lu=yr((function(t,e,n,a){br(e,xu(e),t,a)})),du=yr((function(t,e,n,a){br(e,vu(e),t,a)})),cu=Br(Wn),fu=Ma((function(t,e){t=pt(t);var n=-1,a=e.length,r=a>2?e[2]:void 0;for(r&&ii(e[0],e[1],r)&&(a=1);++n<a;)for(var i=e[n],s=xu(i),u=-1,o=s.length;++u<o;){var l=s[u],d=t[l];(void 0===d||Cs(d,xt[l])&&!wt.call(t,l))&&(t[l]=i[l])}return t})),hu=Ma((function(t){return t.push(void 0,Fr),ne(Tu,void 0,t)}));function gu(t,e,n){var a=null==t?void 0:da(t,e);return void 0===a?n:a}function pu(t,e){return null!=t&&ei(t,e,pa)}var bu=Nr((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=It.call(e)),t[e]=n}),Bu(Hu)),mu=Nr((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=It.call(e)),wt.call(t,e)?t[e].push(n):t[e]=[n]}),Kr),yu=Ma(ma);function vu(t){return Ds(t)?qn(t):wa(t)}function xu(t){return Ds(t)?qn(t,!0):function(t){if(!Bs(t))return function(t){var e=[];if(null!=t)for(var n in pt(t))e.push(n);return e}(t);var e=li(t),n=[];for(var a in t)("constructor"!=a||!e&&wt.call(t,a))&&n.push(a);return n}(t)}var _u=yr((function(t,e,n){Ca(t,e,n)})),Tu=yr((function(t,e,n,a){Ca(t,e,n,a)})),wu=Br((function(t,e){var n={};if(null==t)return n;var a=!1;e=de(e,(function(e){return e=ir(e,t),a||(a=e.length>1),e})),br(t,Yr(t),n),a&&(n=$n(n,7,Vr));for(var r=e.length;r--;)Ja(n,e[r]);return n})),Ou=Br((function(t,e){return null==t?{}:function(t,e){return ka(t,e,(function(e,n){return pu(t,n)}))}(t,e)}));function Su(t,e){if(null==t)return{};var n=de(Yr(t),(function(t){return[t]}));return e=Kr(e),ka(t,n,(function(t,n){return e(t,n[0])}))}var Iu=Mr(vu),Nu=Mr(xu);function Cu(t){return null==t?[]:Ce(t,vu(t))}var Ru=Tr((function(t,e,n){return e=e.toLowerCase(),t+(n?Au(e):e)}));function Au(t){return ju(su(t).toLowerCase())}function ku(t){return(t=su(t))&&t.replace(ot,Le).replace(At,"")}var Eu=Tr((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),Lu=Tr((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Du=_r("toLowerCase"),Pu=Tr((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()})),Mu=Tr((function(t,e,n){return t+(n?" ":"")+ju(e)})),qu=Tr((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),ju=_r("toUpperCase");function Fu(t,e,n){return t=su(t),void 0===(e=n?void 0:e)?function(t){return Dt.test(t)}(t)?function(t){return t.match(Et)||[]}(t):function(t){return t.match(X)||[]}(t):t.match(e)||[]}var Vu=Ma((function(t,e){try{return ne(t,void 0,e)}catch(n){return js(n)?n:new ft(n)}})),Gu=Br((function(t,e){return re(e,(function(e){e=Si(e),Un(t,e,ms(t[e],t))})),t}));function Bu(t){return function(){return t}}var zu=Sr(),Yu=Sr(!0);function Hu(t){return t}function Uu(t){return Ta("function"==typeof t?t:$n(t,1))}var Wu=Ma((function(t,e){return function(n){return ma(n,t,e)}})),Ku=Ma((function(t,e){return function(n){return ma(t,n,e)}}));function $u(t,e,n){var a=vu(e),r=la(e,a);null!=n||Bs(e)&&(r.length||!a.length)||(n=e,e=t,t=this,r=la(e,vu(e)));var i=!(Bs(n)&&"chain"in n&&!n.chain),s=Fs(t);return re(r,(function(n){var a=e[n];t[n]=a,s&&(t.prototype[n]=function(){var e=this.__chain__;if(i||e){var n=t(this.__wrapped__),r=n.__actions__=pr(this.__actions__);return r.push({func:a,args:arguments,thisArg:t}),n.__chain__=e,n}return a.apply(t,ce([this.value()],arguments))})})),t}function Zu(){}var Ju=Rr(de),Qu=Rr(se),Xu=Rr(ge);function to(t){return si(t)?Te(Si(t)):function(t){return function(e){return da(e,t)}}(t)}var eo=kr(),no=kr(!0);function ao(){return[]}function ro(){return!1}var io,so=Cr((function(t,e){return t+e}),0),uo=Dr("ceil"),oo=Cr((function(t,e){return t/e}),1),lo=Dr("floor"),co=Cr((function(t,e){return t*e}),1),fo=Dr("round"),ho=Cr((function(t,e){return t-e}),0);return Nn.after=function(t,e){if("function"!=typeof e)throw new yt(r);return t=nu(t),function(){if(--t<1)return e.apply(this,arguments)}},Nn.ary=ps,Nn.assign=uu,Nn.assignIn=ou,Nn.assignInWith=lu,Nn.assignWith=du,Nn.at=cu,Nn.before=bs,Nn.bind=ms,Nn.bindAll=Gu,Nn.bindKey=ys,Nn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Es(t)?t:[t]},Nn.chain=ts,Nn.chunk=function(t,e,n){e=(n?ii(t,e,n):void 0===e)?1:rn(nu(e),0);var r=null==t?0:t.length;if(!r||e<1)return[];for(var i=0,s=0,u=a(Je(r/e));i<r;)u[s++]=za(t,i,i+=e);return u},Nn.compact=function(t){for(var e=-1,n=null==t?0:t.length,a=0,r=[];++e<n;){var i=t[e];i&&(r[a++]=i)}return r},Nn.concat=function(){var t=arguments.length;if(!t)return[];for(var e=a(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return ce(Es(n)?pr(n):[n],ra(e,1))},Nn.cond=function(t){var e=null==t?0:t.length,n=Kr();return t=e?de(t,(function(t){if("function"!=typeof t[1])throw new yt(r);return[n(t[0]),t[1]]})):[],Ma((function(n){for(var a=-1;++a<e;){var r=t[a];if(ne(r[0],this,n))return ne(r[1],this,n)}}))},Nn.conforms=function(t){return function(t){var e=vu(t);return function(n){return Zn(n,t,e)}}($n(t,1))},Nn.constant=Bu,Nn.countBy=as,Nn.create=function(t,e){var n=Cn(t);return null==e?n:Hn(n,e)},Nn.curry=function t(e,n,a){var r=qr(e,8,void 0,void 0,void 0,void 0,void 0,n=a?void 0:n);return r.placeholder=t.placeholder,r},Nn.curryRight=function t(e,n,a){var r=qr(e,16,void 0,void 0,void 0,void 0,void 0,n=a?void 0:n);return r.placeholder=t.placeholder,r},Nn.debounce=vs,Nn.defaults=fu,Nn.defaultsDeep=hu,Nn.defer=xs,Nn.delay=_s,Nn.difference=Ci,Nn.differenceBy=Ri,Nn.differenceWith=Ai,Nn.drop=function(t,e,n){var a=null==t?0:t.length;return a?za(t,(e=n||void 0===e?1:nu(e))<0?0:e,a):[]},Nn.dropRight=function(t,e,n){var a=null==t?0:t.length;return a?za(t,0,(e=a-(e=n||void 0===e?1:nu(e)))<0?0:e):[]},Nn.dropRightWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!0,!0):[]},Nn.dropWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!0):[]},Nn.fill=function(t,e,n,a){var r=null==t?0:t.length;return r?(n&&"number"!=typeof n&&ii(t,e,n)&&(n=0,a=r),function(t,e,n,a){var r=t.length;for((n=nu(n))<0&&(n=-n>r?0:r+n),(a=void 0===a||a>r?r:nu(a))<0&&(a+=r),a=n>a?0:au(a);n<a;)t[n++]=e;return t}(t,e,n,a)):[]},Nn.filter=function(t,e){return(Es(t)?ue:aa)(t,Kr(e,3))},Nn.flatMap=function(t,e){return ra(cs(t,e),1)},Nn.flatMapDeep=function(t,e){return ra(cs(t,e),1/0)},Nn.flatMapDepth=function(t,e,n){return n=void 0===n?1:nu(n),ra(cs(t,e),n)},Nn.flatten=Li,Nn.flattenDeep=function(t){return null!=t&&t.length?ra(t,1/0):[]},Nn.flattenDepth=function(t,e){return null!=t&&t.length?ra(t,e=void 0===e?1:nu(e)):[]},Nn.flip=function(t){return qr(t,512)},Nn.flow=zu,Nn.flowRight=Yu,Nn.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,a={};++e<n;){var r=t[e];a[r[0]]=r[1]}return a},Nn.functions=function(t){return null==t?[]:la(t,vu(t))},Nn.functionsIn=function(t){return null==t?[]:la(t,xu(t))},Nn.groupBy=os,Nn.initial=function(t){return null!=t&&t.length?za(t,0,-1):[]},Nn.intersection=Pi,Nn.intersectionBy=Mi,Nn.intersectionWith=qi,Nn.invert=bu,Nn.invertBy=mu,Nn.invokeMap=ls,Nn.iteratee=Uu,Nn.keyBy=ds,Nn.keys=vu,Nn.keysIn=xu,Nn.map=cs,Nn.mapKeys=function(t,e){var n={};return e=Kr(e,3),ua(t,(function(t,a,r){Un(n,e(t,a,r),t)})),n},Nn.mapValues=function(t,e){var n={};return e=Kr(e,3),ua(t,(function(t,a,r){Un(n,a,e(t,a,r))})),n},Nn.matches=function(t){return Ia($n(t,1))},Nn.matchesProperty=function(t,e){return Na(t,$n(e,1))},Nn.memoize=Ts,Nn.merge=_u,Nn.mergeWith=Tu,Nn.method=Wu,Nn.methodOf=Ku,Nn.mixin=$u,Nn.negate=ws,Nn.nthArg=function(t){return t=nu(t),Ma((function(e){return Ra(e,t)}))},Nn.omit=wu,Nn.omitBy=function(t,e){return Su(t,ws(Kr(e)))},Nn.once=function(t){return bs(2,t)},Nn.orderBy=function(t,e,n,a){return null==t?[]:(Es(e)||(e=null==e?[]:[e]),Es(n=a?void 0:n)||(n=null==n?[]:[n]),Aa(t,e,n))},Nn.over=Ju,Nn.overArgs=Os,Nn.overEvery=Qu,Nn.overSome=Xu,Nn.partial=Ss,Nn.partialRight=Is,Nn.partition=fs,Nn.pick=Ou,Nn.pickBy=Su,Nn.property=to,Nn.propertyOf=function(t){return function(e){return null==t?void 0:da(t,e)}},Nn.pull=Fi,Nn.pullAll=Vi,Nn.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?Ea(t,e,Kr(n,2)):t},Nn.pullAllWith=function(t,e,n){return t&&t.length&&e&&e.length?Ea(t,e,void 0,n):t},Nn.pullAt=Gi,Nn.range=eo,Nn.rangeRight=no,Nn.rearg=Ns,Nn.reject=function(t,e){return(Es(t)?ue:aa)(t,ws(Kr(e,3)))},Nn.remove=function(t,e){var n=[];if(!t||!t.length)return n;var a=-1,r=[],i=t.length;for(e=Kr(e,3);++a<i;){var s=t[a];e(s,a,t)&&(n.push(s),r.push(a))}return La(t,r),n},Nn.rest=function(t,e){if("function"!=typeof t)throw new yt(r);return Ma(t,e=void 0===e?e:nu(e))},Nn.reverse=Bi,Nn.sampleSize=function(t,e,n){return e=(n?ii(t,e,n):void 0===e)?1:nu(e),(Es(t)?Fn:ja)(t,e)},Nn.set=function(t,e,n){return null==t?t:Fa(t,e,n)},Nn.setWith=function(t,e,n,a){return a="function"==typeof a?a:void 0,null==t?t:Fa(t,e,n,a)},Nn.shuffle=function(t){return(Es(t)?Vn:Ba)(t)},Nn.slice=function(t,e,n){var a=null==t?0:t.length;return a?(n&&"number"!=typeof n&&ii(t,e,n)?(e=0,n=a):(e=null==e?0:nu(e),n=void 0===n?a:nu(n)),za(t,e,n)):[]},Nn.sortBy=hs,Nn.sortedUniq=function(t){return t&&t.length?Wa(t):[]},Nn.sortedUniqBy=function(t,e){return t&&t.length?Wa(t,Kr(e,2)):[]},Nn.split=function(t,e,n){return n&&"number"!=typeof n&&ii(t,e,n)&&(e=n=void 0),(n=void 0===n?4294967295:n>>>0)?(t=su(t))&&("string"==typeof e||null!=e&&!Ws(e))&&!(e=$a(e))&&Me(t)?ur(ze(t),0,n):t.split(e,n):[]},Nn.spread=function(t,e){if("function"!=typeof t)throw new yt(r);return e=null==e?0:rn(nu(e),0),Ma((function(n){var a=n[e],r=ur(n,0,e);return a&&ce(r,a),ne(t,this,r)}))},Nn.tail=function(t){var e=null==t?0:t.length;return e?za(t,1,e):[]},Nn.take=function(t,e,n){return t&&t.length?za(t,0,(e=n||void 0===e?1:nu(e))<0?0:e):[]},Nn.takeRight=function(t,e,n){var a=null==t?0:t.length;return a?za(t,(e=a-(e=n||void 0===e?1:nu(e)))<0?0:e,a):[]},Nn.takeRightWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!1,!0):[]},Nn.takeWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3)):[]},Nn.tap=function(t,e){return e(t),t},Nn.throttle=function(t,e,n){var a=!0,i=!0;if("function"!=typeof t)throw new yt(r);return Bs(n)&&(a="leading"in n?!!n.leading:a,i="trailing"in n?!!n.trailing:i),vs(t,e,{leading:a,maxWait:e,trailing:i})},Nn.thru=es,Nn.toArray=tu,Nn.toPairs=Iu,Nn.toPairsIn=Nu,Nn.toPath=function(t){return Es(t)?de(t,Si):Zs(t)?[t]:pr(Oi(su(t)))},Nn.toPlainObject=iu,Nn.transform=function(t,e,n){var a=Es(t),r=a||Ms(t)||Js(t);if(e=Kr(e,4),null==n){var i=t&&t.constructor;n=r?a?new i:[]:Bs(t)&&Fs(i)?Cn(Ht(t)):{}}return(r?re:ua)(t,(function(t,a,r){return e(n,t,a,r)})),n},Nn.unary=function(t){return ps(t,1)},Nn.union=zi,Nn.unionBy=Yi,Nn.unionWith=Hi,Nn.uniq=function(t){return t&&t.length?Za(t):[]},Nn.uniqBy=function(t,e){return t&&t.length?Za(t,Kr(e,2)):[]},Nn.uniqWith=function(t,e){return e="function"==typeof e?e:void 0,t&&t.length?Za(t,void 0,e):[]},Nn.unset=function(t,e){return null==t||Ja(t,e)},Nn.unzip=Ui,Nn.unzipWith=Wi,Nn.update=function(t,e,n){return null==t?t:Qa(t,e,rr(n))},Nn.updateWith=function(t,e,n,a){return a="function"==typeof a?a:void 0,null==t?t:Qa(t,e,rr(n),a)},Nn.values=Cu,Nn.valuesIn=function(t){return null==t?[]:Ce(t,xu(t))},Nn.without=Ki,Nn.words=Fu,Nn.wrap=function(t,e){return Ss(rr(e),t)},Nn.xor=$i,Nn.xorBy=Zi,Nn.xorWith=Ji,Nn.zip=Qi,Nn.zipObject=function(t,e){return nr(t||[],e||[],Bn)},Nn.zipObjectDeep=function(t,e){return nr(t||[],e||[],Fa)},Nn.zipWith=Xi,Nn.entries=Iu,Nn.entriesIn=Nu,Nn.extend=ou,Nn.extendWith=lu,$u(Nn,Nn),Nn.add=so,Nn.attempt=Vu,Nn.camelCase=Ru,Nn.capitalize=Au,Nn.ceil=uo,Nn.clamp=function(t,e,n){return void 0===n&&(n=e,e=void 0),void 0!==n&&(n=(n=ru(n))==n?n:0),void 0!==e&&(e=(e=ru(e))==e?e:0),Kn(ru(t),e,n)},Nn.clone=function(t){return $n(t,4)},Nn.cloneDeep=function(t){return $n(t,5)},Nn.cloneDeepWith=function(t,e){return $n(t,5,e="function"==typeof e?e:void 0)},Nn.cloneWith=function(t,e){return $n(t,4,e="function"==typeof e?e:void 0)},Nn.conformsTo=function(t,e){return null==e||Zn(t,e,vu(e))},Nn.deburr=ku,Nn.defaultTo=function(t,e){return null==t||t!=t?e:t},Nn.divide=oo,Nn.endsWith=function(t,e,n){t=su(t),e=$a(e);var a=t.length,r=n=void 0===n?a:Kn(nu(n),0,a);return(n-=e.length)>=0&&t.slice(n,r)==e},Nn.eq=Cs,Nn.escape=function(t){return(t=su(t))&&j.test(t)?t.replace(M,De):t},Nn.escapeRegExp=function(t){return(t=su(t))&&U.test(t)?t.replace(H,"\\$&"):t},Nn.every=function(t,e,n){var a=Es(t)?se:ea;return n&&ii(t,e,n)&&(e=void 0),a(t,Kr(e,3))},Nn.find=rs,Nn.findIndex=ki,Nn.findKey=function(t,e){return be(t,Kr(e,3),ua)},Nn.findLast=is,Nn.findLastIndex=Ei,Nn.findLastKey=function(t,e){return be(t,Kr(e,3),oa)},Nn.floor=lo,Nn.forEach=ss,Nn.forEachRight=us,Nn.forIn=function(t,e){return null==t?t:ia(t,Kr(e,3),xu)},Nn.forInRight=function(t,e){return null==t?t:sa(t,Kr(e,3),xu)},Nn.forOwn=function(t,e){return t&&ua(t,Kr(e,3))},Nn.forOwnRight=function(t,e){return t&&oa(t,Kr(e,3))},Nn.get=gu,Nn.gt=Rs,Nn.gte=As,Nn.has=function(t,e){return null!=t&&ei(t,e,ga)},Nn.hasIn=pu,Nn.head=Di,Nn.identity=Hu,Nn.includes=function(t,e,n,a){t=Ds(t)?t:Cu(t),n=n&&!a?nu(n):0;var r=t.length;return n<0&&(n=rn(r+n,0)),$s(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&ye(t,e,n)>-1},Nn.indexOf=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=null==n?0:nu(n);return r<0&&(r=rn(a+r,0)),ye(t,e,r)},Nn.inRange=function(t,e,n){return e=eu(e),void 0===n?(n=e,e=0):n=eu(n),function(t,e,n){return t>=sn(e,n)&&t<rn(e,n)}(t=ru(t),e,n)},Nn.invoke=yu,Nn.isArguments=ks,Nn.isArray=Es,Nn.isArrayBuffer=Ls,Nn.isArrayLike=Ds,Nn.isArrayLikeObject=Ps,Nn.isBoolean=function(t){return!0===t||!1===t||zs(t)&&fa(t)==l},Nn.isBuffer=Ms,Nn.isDate=qs,Nn.isElement=function(t){return zs(t)&&1===t.nodeType&&!Us(t)},Nn.isEmpty=function(t){if(null==t)return!0;if(Ds(t)&&(Es(t)||"string"==typeof t||"function"==typeof t.splice||Ms(t)||Js(t)||ks(t)))return!t.length;var e=ti(t);if(e==g||e==y)return!t.size;if(li(t))return!wa(t).length;for(var n in t)if(wt.call(t,n))return!1;return!0},Nn.isEqual=function(t,e){return va(t,e)},Nn.isEqualWith=function(t,e,n){var a=(n="function"==typeof n?n:void 0)?n(t,e):void 0;return void 0===a?va(t,e,void 0,n):!!a},Nn.isError=js,Nn.isFinite=function(t){return"number"==typeof t&&en(t)},Nn.isFunction=Fs,Nn.isInteger=Vs,Nn.isLength=Gs,Nn.isMap=Ys,Nn.isMatch=function(t,e){return t===e||xa(t,e,Zr(e))},Nn.isMatchWith=function(t,e,n){return n="function"==typeof n?n:void 0,xa(t,e,Zr(e),n)},Nn.isNaN=function(t){return Hs(t)&&t!=+t},Nn.isNative=function(t){if(oi(t))throw new ft("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return _a(t)},Nn.isNil=function(t){return null==t},Nn.isNull=function(t){return null===t},Nn.isNumber=Hs,Nn.isObject=Bs,Nn.isObjectLike=zs,Nn.isPlainObject=Us,Nn.isRegExp=Ws,Nn.isSafeInteger=function(t){return Vs(t)&&t>=-9007199254740991&&t<=9007199254740991},Nn.isSet=Ks,Nn.isString=$s,Nn.isSymbol=Zs,Nn.isTypedArray=Js,Nn.isUndefined=function(t){return void 0===t},Nn.isWeakMap=function(t){return zs(t)&&ti(t)==_},Nn.isWeakSet=function(t){return zs(t)&&"[object WeakSet]"==fa(t)},Nn.join=function(t,e){return null==t?"":nn.call(t,e)},Nn.kebabCase=Eu,Nn.last=ji,Nn.lastIndexOf=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=a;return void 0!==n&&(r=(r=nu(n))<0?rn(a+r,0):sn(r,a-1)),e==e?function(t,e,n){for(var a=n+1;a--;)if(t[a]===e)return a;return a}(t,e,r):me(t,xe,r,!0)},Nn.lowerCase=Lu,Nn.lowerFirst=Du,Nn.lt=Qs,Nn.lte=Xs,Nn.max=function(t){return t&&t.length?na(t,Hu,ha):void 0},Nn.maxBy=function(t,e){return t&&t.length?na(t,Kr(e,2),ha):void 0},Nn.mean=function(t){return _e(t,Hu)},Nn.meanBy=function(t,e){return _e(t,Kr(e,2))},Nn.min=function(t){return t&&t.length?na(t,Hu,Oa):void 0},Nn.minBy=function(t,e){return t&&t.length?na(t,Kr(e,2),Oa):void 0},Nn.stubArray=ao,Nn.stubFalse=ro,Nn.stubObject=function(){return{}},Nn.stubString=function(){return""},Nn.stubTrue=function(){return!0},Nn.multiply=co,Nn.nth=function(t,e){return t&&t.length?Ra(t,nu(e)):void 0},Nn.noConflict=function(){return Yt._===this&&(Yt._=Ct),this},Nn.noop=Zu,Nn.now=gs,Nn.pad=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;if(!e||a>=e)return t;var r=(e-a)/2;return Ar(Qe(r),n)+t+Ar(Je(r),n)},Nn.padEnd=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;return e&&a<e?t+Ar(e-a,n):t},Nn.padStart=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;return e&&a<e?Ar(e-a,n)+t:t},Nn.parseInt=function(t,e,n){return n||null==e?e=0:e&&(e=+e),on(su(t).replace(K,""),e||0)},Nn.random=function(t,e,n){if(n&&"boolean"!=typeof n&&ii(t,e,n)&&(e=n=void 0),void 0===n&&("boolean"==typeof e?(n=e,e=void 0):"boolean"==typeof t&&(n=t,t=void 0)),void 0===t&&void 0===e?(t=0,e=1):(t=eu(t),void 0===e?(e=t,t=0):e=eu(e)),t>e){var a=t;t=e,e=a}if(n||t%1||e%1){var r=ln();return sn(t+r*(e-t+Vt("1e-"+((r+"").length-1))),e)}return Da(t,e)},Nn.reduce=function(t,e,n){var a=Es(t)?fe:Oe,r=arguments.length<3;return a(t,Kr(e,4),n,r,Xn)},Nn.reduceRight=function(t,e,n){var a=Es(t)?he:Oe,r=arguments.length<3;return a(t,Kr(e,4),n,r,ta)},Nn.repeat=function(t,e,n){return e=(n?ii(t,e,n):void 0===e)?1:nu(e),Pa(su(t),e)},Nn.replace=function(){var t=arguments,e=su(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Nn.result=function(t,e,n){var a=-1,r=(e=ir(e,t)).length;for(r||(r=1,t=void 0);++a<r;){var i=null==t?void 0:t[Si(e[a])];void 0===i&&(a=r,i=n),t=Fs(i)?i.call(t):i}return t},Nn.round=fo,Nn.runInContext=t,Nn.sample=function(t){return(Es(t)?jn:qa)(t)},Nn.size=function(t){if(null==t)return 0;if(Ds(t))return $s(t)?Be(t):t.length;var e=ti(t);return e==g||e==y?t.size:wa(t).length},Nn.snakeCase=Pu,Nn.some=function(t,e,n){var a=Es(t)?ge:Ya;return n&&ii(t,e,n)&&(e=void 0),a(t,Kr(e,3))},Nn.sortedIndex=function(t,e){return Ha(t,e)},Nn.sortedIndexBy=function(t,e,n){return Ua(t,e,Kr(n,2))},Nn.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var a=Ha(t,e);if(a<n&&Cs(t[a],e))return a}return-1},Nn.sortedLastIndex=function(t,e){return Ha(t,e,!0)},Nn.sortedLastIndexBy=function(t,e,n){return Ua(t,e,Kr(n,2),!0)},Nn.sortedLastIndexOf=function(t,e){if(null!=t&&t.length){var n=Ha(t,e,!0)-1;if(Cs(t[n],e))return n}return-1},Nn.startCase=Mu,Nn.startsWith=function(t,e,n){return t=su(t),n=null==n?0:Kn(nu(n),0,t.length),e=$a(e),t.slice(n,n+e.length)==e},Nn.subtract=ho,Nn.sum=function(t){return t&&t.length?Se(t,Hu):0},Nn.sumBy=function(t,e){return t&&t.length?Se(t,Kr(e,2)):0},Nn.template=function(t,e,n){var a=Nn.templateSettings;n&&ii(t,e,n)&&(e=void 0),t=su(t),e=lu({},e,a,jr);var r,i,s=lu({},e.imports,a.imports,jr),u=vu(s),o=Ce(s,u),l=0,d=e.interpolate||lt,c="__p += '",f=bt((e.escape||lt).source+"|"+d.source+"|"+(d===G?et:lt).source+"|"+(e.evaluate||lt).source+"|$","g"),h="//# sourceURL="+(wt.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Mt+"]")+"\n";t.replace(f,(function(e,n,a,s,u,o){return a||(a=s),c+=t.slice(l,o).replace(dt,Pe),n&&(r=!0,c+="' +\n__e("+n+") +\n'"),u&&(i=!0,c+="';\n"+u+";\n__p += '"),a&&(c+="' +\n((__t = ("+a+")) == null ? '' : __t) +\n'"),l=o+e.length,e})),c+="';\n";var g=wt.call(e,"variable")&&e.variable;g||(c="with (obj) {\n"+c+"\n}\n"),c=(i?c.replace(E,""):c).replace(L,"$1").replace(D,"$1;"),c="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(r?", __e = _.escape":"")+(i?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+c+"return __p\n}";var p=Vu((function(){return ht(u,h+"return "+c).apply(void 0,o)}));if(p.source=c,js(p))throw p;return p},Nn.times=function(t,e){if((t=nu(t))<1||t>9007199254740991)return[];var n=4294967295,a=sn(t,4294967295);t-=4294967295;for(var r=Ie(a,e=Kr(e));++n<t;)e(n);return r},Nn.toFinite=eu,Nn.toInteger=nu,Nn.toLength=au,Nn.toLower=function(t){return su(t).toLowerCase()},Nn.toNumber=ru,Nn.toSafeInteger=function(t){return t?Kn(nu(t),-9007199254740991,9007199254740991):0===t?t:0},Nn.toString=su,Nn.toUpper=function(t){return su(t).toUpperCase()},Nn.trim=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace(W,"");if(!t||!(e=$a(e)))return t;var a=ze(t),r=ze(e);return ur(a,Ae(a,r),ke(a,r)+1).join("")},Nn.trimEnd=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace($,"");if(!t||!(e=$a(e)))return t;var a=ze(t);return ur(a,0,ke(a,ze(e))+1).join("")},Nn.trimStart=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace(K,"");if(!t||!(e=$a(e)))return t;var a=ze(t);return ur(a,Ae(a,ze(e))).join("")},Nn.truncate=function(t,e){var n=30,a="...";if(Bs(e)){var r="separator"in e?e.separator:r;n="length"in e?nu(e.length):n,a="omission"in e?$a(e.omission):a}var i=(t=su(t)).length;if(Me(t)){var s=ze(t);i=s.length}if(n>=i)return t;var u=n-Be(a);if(u<1)return a;var o=s?ur(s,0,u).join(""):t.slice(0,u);if(void 0===r)return o+a;if(s&&(u+=o.length-u),Ws(r)){if(t.slice(u).search(r)){var l,d=o;for(r.global||(r=bt(r.source,su(nt.exec(r))+"g")),r.lastIndex=0;l=r.exec(d);)var c=l.index;o=o.slice(0,void 0===c?u:c)}}else if(t.indexOf($a(r),u)!=u){var f=o.lastIndexOf(r);f>-1&&(o=o.slice(0,f))}return o+a},Nn.unescape=function(t){return(t=su(t))&&q.test(t)?t.replace(P,Ye):t},Nn.uniqueId=function(t){var e=++Ot;return su(t)+e},Nn.upperCase=qu,Nn.upperFirst=ju,Nn.each=ss,Nn.eachRight=us,Nn.first=Di,$u(Nn,(io={},ua(Nn,(function(t,e){wt.call(Nn.prototype,e)||(io[e]=t)})),io),{chain:!1}),Nn.VERSION="4.17.20",re(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Nn[t].placeholder=Nn})),re(["drop","take"],(function(t,e){kn.prototype[t]=function(n){n=void 0===n?1:rn(nu(n),0);var a=this.__filtered__&&!e?new kn(this):this.clone();return a.__filtered__?a.__takeCount__=sn(n,a.__takeCount__):a.__views__.push({size:sn(n,4294967295),type:t+(a.__dir__<0?"Right":"")}),a},kn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),re(["filter","map","takeWhile"],(function(t,e){var n=e+1,a=1==n||3==n;kn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Kr(t,3),type:n}),e.__filtered__=e.__filtered__||a,e}})),re(["head","last"],(function(t,e){var n="take"+(e?"Right":"");kn.prototype[t]=function(){return this[n](1).value()[0]}})),re(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");kn.prototype[t]=function(){return this.__filtered__?new kn(this):this[n](1)}})),kn.prototype.compact=function(){return this.filter(Hu)},kn.prototype.find=function(t){return this.filter(t).head()},kn.prototype.findLast=function(t){return this.reverse().find(t)},kn.prototype.invokeMap=Ma((function(t,e){return"function"==typeof t?new kn(this):this.map((function(n){return ma(n,t,e)}))})),kn.prototype.reject=function(t){return this.filter(ws(Kr(t)))},kn.prototype.slice=function(t,e){t=nu(t);var n=this;return n.__filtered__&&(t>0||e<0)?new kn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),void 0!==e&&(n=(e=nu(e))<0?n.dropRight(-e):n.take(e-t)),n)},kn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},kn.prototype.toArray=function(){return this.take(4294967295)},ua(kn.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),a=/^(?:head|last)$/.test(e),r=Nn[a?"take"+("last"==e?"Right":""):e],i=a||/^find/.test(e);r&&(Nn.prototype[e]=function(){var e=this.__wrapped__,s=a?[1]:arguments,u=e instanceof kn,o=s[0],l=u||Es(e),d=function(t){var e=r.apply(Nn,ce([t],s));return a&&c?e[0]:e};l&&n&&"function"==typeof o&&1!=o.length&&(u=l=!1);var c=this.__chain__,f=!!this.__actions__.length,h=i&&!c,g=u&&!f;if(!i&&l){e=g?e:new kn(this);var p=t.apply(e,s);return p.__actions__.push({func:es,args:[d],thisArg:void 0}),new An(p,c)}return h&&g?t.apply(this,s):(p=this.thru(d),h?a?p.value()[0]:p.value():p)})})),re(["pop","push","shift","sort","splice","unshift"],(function(t){var e=vt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",a=/^(?:pop|shift)$/.test(t);Nn.prototype[t]=function(){var t=arguments;if(a&&!this.__chain__){var r=this.value();return e.apply(Es(r)?r:[],t)}return this[n]((function(n){return e.apply(Es(n)?n:[],t)}))}})),ua(kn.prototype,(function(t,e){var n=Nn[e];if(n){var a=n.name+"";wt.call(yn,a)||(yn[a]=[]),yn[a].push({name:e,func:n})}})),yn[Ir(void 0,2).name]=[{name:"wrapper",func:void 0}],kn.prototype.clone=function(){var t=new kn(this.__wrapped__);return t.__actions__=pr(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=pr(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=pr(this.__views__),t},kn.prototype.reverse=function(){if(this.__filtered__){var t=new kn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},kn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Es(t),a=e<0,r=n?t.length:0,i=function(t,e,n){for(var a=-1,r=n.length;++a<r;){var i=n[a],s=i.size;switch(i.type){case"drop":t+=s;break;case"dropRight":e-=s;break;case"take":e=sn(e,t+s);break;case"takeRight":t=rn(t,e-s)}}return{start:t,end:e}}(0,r,this.__views__),s=i.start,u=i.end,o=u-s,l=a?u:s-1,d=this.__iteratees__,c=d.length,f=0,h=sn(o,this.__takeCount__);if(!n||!a&&r==o&&h==o)return tr(t,this.__actions__);var g=[];t:for(;o--&&f<h;){for(var p=-1,b=t[l+=e];++p<c;){var m=d[p],y=m.type,v=(0,m.iteratee)(b);if(2==y)b=v;else if(!v){if(1==y)continue t;break t}}g[f++]=b}return g},Nn.prototype.at=ns,Nn.prototype.chain=function(){return ts(this)},Nn.prototype.commit=function(){return new An(this.value(),this.__chain__)},Nn.prototype.next=function(){void 0===this.__values__&&(this.__values__=tu(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?void 0:this.__values__[this.__index__++]}},Nn.prototype.plant=function(t){for(var e,n=this;n instanceof Rn;){var a=Ni(n);a.__index__=0,a.__values__=void 0,e?r.__wrapped__=a:e=a;var r=a;n=n.__wrapped__}return r.__wrapped__=t,e},Nn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof kn){var e=t;return this.__actions__.length&&(e=new kn(this)),(e=e.reverse()).__actions__.push({func:es,args:[Bi],thisArg:void 0}),new An(e,this.__chain__)}return this.thru(Bi)},Nn.prototype.toJSON=Nn.prototype.valueOf=Nn.prototype.value=function(){return tr(this.__wrapped__,this.__actions__)},Nn.prototype.first=Nn.prototype.head,we&&(Nn.prototype[we]=function(){return this}),Nn}();Yt._=He,void 0===(a=(function(){return He}).call(e,n,e,t))||(t.exports=a)}).call(this)}).call(this,n("YuTi")(t))},lyxo:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a=" ";return(t%100>=20||t>=100&&t%100==0)&&(a=" de "),t+a+{ss:"secunde",mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"}[n]}t.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",ss:e,m:"un minut",mm:e,h:"o oră",hh:e,d:"o zi",dd:e,M:"o lună",MM:e,y:"un an",yy:e},week:{dow:1,doy:7}})}(n("wd/R"))},"m/L8":function(t,e,n){var a=n("g6v/"),r=n("DPsx"),i=n("glrk"),s=n("wE6v"),u=Object.defineProperty;e.f=a?u:function(t,e,n){if(i(t),e=s(e,!0),i(n),r)try{return u(t,e,n)}catch(a){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},m92n:function(t,e,n){var a=n("glrk");t.exports=function(t,e,n,r){try{return r?e(a(n)[0],n[1]):e(n)}catch(s){var i=t.return;throw void 0!==i&&a(i.call(t)),s}}},mCNh:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var a=n("KqfI");function r(...t){return i(t)}function i(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:a.a}},mOnh:function(t,e,n){var a=n("nTk+"),r=n("Z2DA"),i=n("MBcj");t.exports=function(t){return a(t,i,r)}},mSOc:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("LvDl"),r=n("2Vo4"),i=n("pLZG"),s=n("SxV6"),u=n("lOp/"),o=n("8Y7J"),l=n("IheW");let d=(()=>{class t{constructor(t,e){this.http=t,this.timerService=e,this.REFRESH_INTERVAL=5e3,this.summaryDataSource=new r.a(null),this.summaryData$=this.summaryDataSource.asObservable()}startPolling(){return this.timerService.get(()=>this.retrieveSummaryObservable(),this.REFRESH_INTERVAL).subscribe(this.retrieveSummaryObserver())}refresh(){return this.retrieveSummaryObservable().subscribe(this.retrieveSummaryObserver())}retrieveSummaryObservable(){return this.http.get("api/summary")}retrieveSummaryObserver(){return t=>{this.summaryDataSource.next(t)}}subscribeOnce(t,e){return this.summaryData$.pipe(Object(i.a)(t=>!!t),Object(s.a)()).subscribe(t,e)}subscribe(t,e){return this.summaryData$.pipe(Object(i.a)(t=>!!t)).subscribe(t,e)}addRunningTask(t){const e=this.summaryDataSource.getValue();e&&(a.isArray(e.executing_tasks)?e.executing_tasks.find(e=>e.name===t.name&&a.isEqual(e.metadata,t.metadata))||e.executing_tasks.push(t):e.executing_tasks=[t],this.summaryDataSource.next(e))}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](l.c),o["ɵɵinject"](u.a))},token:t,providedIn:"root"}),t})()},"mWP/":function(t,e,n){var a=n("ktBm");t.exports=function(t){var e=this.__data__,n=a(e,t);return n<0?void 0:e[n][1]}},mXUL:function(t,e,n){"use strict";n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return c}));var a=n("8Y7J"),r=n("+gVj"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:0,styles:[".invalid-feedback[_ngcontent-%COMP%], .valid-feedback[_ngcontent-%COMP%] {\n        display: block;\n      }"],data:{}});function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(t()(),a["ɵted"](3,null,["",""]))],(function(t,e){t(e,2,0,e.component.className)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function o(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,u)),a["ɵdid"](1,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,1,0,e.component.messages())}),null)}var l=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bfv-messages",[],null,null,null,o,s)),a["ɵdid"](1,49152,null,0,r.e,[r.a],{messages:[0,"messages"]},null)],(function(t,e){t(e,1,0,e.component.messages)}),null)}function c(t){return a["ɵvid"](0,[a["ɵncd"](null,0),(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](2,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,!e.component.messagesBlock)}),null)}},mfoh:function(t,e,n){"use strict";n.d(e,"a",(function(){return h})),n.d(e,"b",(function(){return p}));var a,r=n("CFvb"),i=n("8rQ2"),s=n.n(i),u=n("eQba"),o=n.n(u),l=n("CUJ1"),d=n.n(l),c=n("h7vy"),f=n.n(c),h={TOGGLE_ACTIVE:function(t,e,n){return e&&e.toggleActivated()},TOGGLE_ACTIVE_MULTI:function(t,e,n){return e&&e.toggleActivated(!0)},TOGGLE_SELECTED:function(t,e,n){return e&&e.toggleSelected()},ACTIVATE:function(t,e,n){return e.setIsActive(!0)},DEACTIVATE:function(t,e,n){return e.setIsActive(!1)},SELECT:function(t,e,n){return e.setIsSelected(!0)},DESELECT:function(t,e,n){return e.setIsSelected(!1)},FOCUS:function(t,e,n){return e.focus()},TOGGLE_EXPANDED:function(t,e,n){return e.hasChildren&&e.toggleExpanded()},EXPAND:function(t,e,n){return e.expand()},COLLAPSE:function(t,e,n){return e.collapse()},DRILL_DOWN:function(t,e,n){return t.focusDrillDown()},DRILL_UP:function(t,e,n){return t.focusDrillUp()},NEXT_NODE:function(t,e,n){return t.focusNextNode()},PREVIOUS_NODE:function(t,e,n){return t.focusPreviousNode()},MOVE_NODE:function(t,e,n,a){var r=a.from,i=a.to;n.ctrlKey?t.copyNode(r,i):t.moveNode(r,i)}},g={mouse:{click:h.TOGGLE_ACTIVE,dblClick:null,contextMenu:null,expanderClick:h.TOGGLE_EXPANDED,checkboxClick:h.TOGGLE_SELECTED,drop:h.MOVE_NODE},keys:(a={},a[r.a.RIGHT]=h.DRILL_DOWN,a[r.a.LEFT]=h.DRILL_UP,a[r.a.DOWN]=h.NEXT_NODE,a[r.a.UP]=h.PREVIOUS_NODE,a[r.a.SPACE]=h.TOGGLE_ACTIVE,a[r.a.ENTER]=h.TOGGLE_ACTIVE,a)},p=function(){function t(t){void 0===t&&(t={}),this.options=t,this.actionMapping=s()({},this.options.actionMapping,g),t.rtl&&(this.actionMapping.keys[r.a.RIGHT]=o()(t,["actionMapping","keys",r.a.RIGHT])||h.DRILL_UP,this.actionMapping.keys[r.a.LEFT]=o()(t,["actionMapping","keys",r.a.LEFT])||h.DRILL_DOWN)}return Object.defineProperty(t.prototype,"hasChildrenField",{get:function(){return this.options.hasChildrenField||"hasChildren"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"childrenField",{get:function(){return this.options.childrenField||"children"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"displayField",{get:function(){return this.options.displayField||"name"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"idField",{get:function(){return this.options.idField||"id"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isExpandedField",{get:function(){return this.options.isExpandedField||"isExpanded"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"getChildren",{get:function(){return this.options.getChildren},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"levelPadding",{get:function(){return this.options.levelPadding||0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"useVirtualScroll",{get:function(){return this.options.useVirtualScroll},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"animateExpand",{get:function(){return this.options.animateExpand},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"animateSpeed",{get:function(){return this.options.animateSpeed||1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"animateAcceleration",{get:function(){return this.options.animateAcceleration||1.2},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollOnActivate",{get:function(){return void 0===this.options.scrollOnActivate||this.options.scrollOnActivate},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"rtl",{get:function(){return!!this.options.rtl},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"rootId",{get:function(){return this.options.rootId},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"useCheckbox",{get:function(){return this.options.useCheckbox},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"useTriState",{get:function(){return void 0===this.options.useTriState||this.options.useTriState},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollContainer",{get:function(){return this.options.scrollContainer},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"allowDragoverStyling",{get:function(){return void 0===this.options.allowDragoverStyling||this.options.allowDragoverStyling},enumerable:!0,configurable:!0}),t.prototype.getNodeClone=function(t){return this.options.getNodeClone?this.options.getNodeClone(t):d()(Object.assign({},t.data),["id"])},t.prototype.allowDrop=function(t,e,n){return this.options.allowDrop instanceof Function?this.options.allowDrop(t,e,n):void 0===this.options.allowDrop||this.options.allowDrop},t.prototype.allowDrag=function(t){return this.options.allowDrag instanceof Function?this.options.allowDrag(t):this.options.allowDrag},t.prototype.nodeClass=function(t){return this.options.nodeClass?this.options.nodeClass(t):""},t.prototype.nodeHeight=function(t){if(t.data.virtual)return 0;var e=this.options.nodeHeight||22;return"function"==typeof e&&(e=e(t)),e+(0===t.index?2:1)*this.dropSlotHeight},Object.defineProperty(t.prototype,"dropSlotHeight",{get:function(){return f()(this.options.dropSlotHeight)?this.options.dropSlotHeight:2},enumerable:!0,configurable:!0}),t}()},moLw:function(t,e,n){var a=n("mrSG").__decorate,r=n("mrSG").__metadata;Object.defineProperty(e,"__esModule",{value:!0});var i=n("8Y7J"),s=n("SVse");e.ClickOutsideDirective=function(){function t(t,e,n){this._el=t,this._ngZone=e,this.platformId=n,this.clickOutsideEnabled=!0,this.attachOutsideOnClick=!1,this.delayClickOutsideInit=!1,this.emitOnBlur=!1,this.exclude="",this.excludeBeforeClick=!1,this.clickOutsideEvents="",this.clickOutside=new i.EventEmitter,this._nodesExcluded=[],this._events=["click"],this._initOnClickBody=this._initOnClickBody.bind(this),this._onClickBody=this._onClickBody.bind(this),this._onWindowBlur=this._onWindowBlur.bind(this)}return t.prototype.ngOnInit=function(){s.isPlatformBrowser(this.platformId)&&this._init()},t.prototype.ngOnDestroy=function(){s.isPlatformBrowser(this.platformId)&&(this._removeClickOutsideListener(),this._removeAttachOutsideOnClickListener(),this._removeWindowBlurListener())},t.prototype.ngOnChanges=function(t){s.isPlatformBrowser(this.platformId)&&(t.attachOutsideOnClick||t.exclude||t.emitOnBlur)&&this._init()},t.prototype._init=function(){""!==this.clickOutsideEvents&&(this._events=this.clickOutsideEvents.split(",").map((function(t){return t.trim()}))),this._excludeCheck(),this.attachOutsideOnClick?this._initAttachOutsideOnClickListener():this._initOnClickBody(),this.emitOnBlur&&this._initWindowBlurListener()},t.prototype._initOnClickBody=function(){this.delayClickOutsideInit?setTimeout(this._initClickOutsideListener.bind(this)):this._initClickOutsideListener()},t.prototype._excludeCheck=function(){if(this.exclude)try{var t=Array.from(document.querySelectorAll(this.exclude));t&&(this._nodesExcluded=t)}catch(e){console.error("[ng-click-outside] Check your exclude selector syntax.",e)}},t.prototype._onClickBody=function(t){this.clickOutsideEnabled&&(this.excludeBeforeClick&&this._excludeCheck(),this._el.nativeElement.contains(t.target)||this._shouldExclude(t.target)||(this._emit(t),this.attachOutsideOnClick&&this._removeClickOutsideListener()))},t.prototype._onWindowBlur=function(t){var e=this;setTimeout((function(){document.hidden||e._emit(t)}))},t.prototype._emit=function(t){var e=this;this.clickOutsideEnabled&&this._ngZone.run((function(){return e.clickOutside.emit(t)}))},t.prototype._shouldExclude=function(t){for(var e=0,n=this._nodesExcluded;e<n.length;e++)if(n[e].contains(t))return!0;return!1},t.prototype._initClickOutsideListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){t._events.forEach((function(e){return document.addEventListener(e,t._onClickBody)}))}))},t.prototype._removeClickOutsideListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){t._events.forEach((function(e){return document.removeEventListener(e,t._onClickBody)}))}))},t.prototype._initAttachOutsideOnClickListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){t._events.forEach((function(e){return t._el.nativeElement.addEventListener(e,t._initOnClickBody)}))}))},t.prototype._removeAttachOutsideOnClickListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){t._events.forEach((function(e){return t._el.nativeElement.removeEventListener(e,t._initOnClickBody)}))}))},t.prototype._initWindowBlurListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){window.addEventListener("blur",t._onWindowBlur)}))},t.prototype._removeWindowBlurListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){window.removeEventListener("blur",t._onWindowBlur)}))},a([i.Input(),r("design:type",Boolean)],t.prototype,"clickOutsideEnabled",void 0),a([i.Input(),r("design:type",Boolean)],t.prototype,"attachOutsideOnClick",void 0),a([i.Input(),r("design:type",Boolean)],t.prototype,"delayClickOutsideInit",void 0),a([i.Input(),r("design:type",Boolean)],t.prototype,"emitOnBlur",void 0),a([i.Input(),r("design:type",String)],t.prototype,"exclude",void 0),a([i.Input(),r("design:type",Boolean)],t.prototype,"excludeBeforeClick",void 0),a([i.Input(),r("design:type",String)],t.prototype,"clickOutsideEvents",void 0),a([i.Output(),r("design:type",i.EventEmitter)],t.prototype,"clickOutside",void 0),a([i.Injectable(),i.Directive({selector:"[clickOutside]"})],t)}()},mrSG:function(t,e,n){"use strict";n.r(e),n.d(e,"__extends",(function(){return r})),n.d(e,"__assign",(function(){return i})),n.d(e,"__rest",(function(){return s})),n.d(e,"__decorate",(function(){return u})),n.d(e,"__param",(function(){return o})),n.d(e,"__metadata",(function(){return l})),n.d(e,"__awaiter",(function(){return d})),n.d(e,"__generator",(function(){return c})),n.d(e,"__exportStar",(function(){return f})),n.d(e,"__values",(function(){return h})),n.d(e,"__read",(function(){return g})),n.d(e,"__spread",(function(){return p})),n.d(e,"__spreadArrays",(function(){return b})),n.d(e,"__await",(function(){return m})),n.d(e,"__asyncGenerator",(function(){return y})),n.d(e,"__asyncDelegator",(function(){return v})),n.d(e,"__asyncValues",(function(){return x})),n.d(e,"__makeTemplateObject",(function(){return _})),n.d(e,"__importStar",(function(){return T})),n.d(e,"__importDefault",(function(){return w})),n.d(e,"__classPrivateFieldGet",(function(){return O})),n.d(e,"__classPrivateFieldSet",(function(){return S}));var a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function r(t,e){function n(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var i=function(){return(i=Object.assign||function(t){for(var e,n=1,a=arguments.length;n<a;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function s(t,e){var n={};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&e.indexOf(a)<0&&(n[a]=t[a]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(t);r<a.length;r++)e.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(t,a[r])&&(n[a[r]]=t[a[r]])}return n}function u(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function o(t,e){return function(n,a){e(n,a,t)}}function l(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function d(t,e,n,a){return new(n||(n=Promise))((function(r,i){function s(t){try{o(a.next(t))}catch(e){i(e)}}function u(t){try{o(a.throw(t))}catch(e){i(e)}}function o(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,u)}o((a=a.apply(t,e||[])).next())}))}function c(t,e){var n,a,r,i,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,a&&(r=2&i[0]?a.return:i[0]?a.throw||((r=a.return)&&r.call(a),0):a.next)&&!(r=r.call(a,i[1])).done)return r;switch(a=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,a=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!((r=(r=s.trys).length>0&&r[r.length-1])||6!==i[0]&&2!==i[0])){s=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){s.label=i[1];break}if(6===i[0]&&s.label<r[1]){s.label=r[1],r=i;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(i);break}r[2]&&s.ops.pop(),s.trys.pop();continue}i=e.call(t,s)}catch(u){i=[6,u],a=0}finally{n=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}function f(t,e){for(var n in t)e.hasOwnProperty(n)||(e[n]=t[n])}function h(t){var e="function"==typeof Symbol&&Symbol.iterator,n=e&&t[e],a=0;if(n)return n.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&a>=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function g(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var a,r,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(a=i.next()).done;)s.push(a.value)}catch(u){r={error:u}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return s}function p(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(g(arguments[e]));return t}function b(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var a=Array(t),r=0;for(e=0;e<n;e++)for(var i=arguments[e],s=0,u=i.length;s<u;s++,r++)a[r]=i[s];return a}function m(t){return this instanceof m?(this.v=t,this):new m(t)}function y(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var a,r=n.apply(t,e||[]),i=[];return a={},s("next"),s("throw"),s("return"),a[Symbol.asyncIterator]=function(){return this},a;function s(t){r[t]&&(a[t]=function(e){return new Promise((function(n,a){i.push([t,e,n,a])>1||u(t,e)}))})}function u(t,e){try{!function(t){t.value instanceof m?Promise.resolve(t.value.v).then(o,l):d(i[0][2],t)}(r[t](e))}catch(n){d(i[0][3],n)}}function o(t){u("next",t)}function l(t){u("throw",t)}function d(t,e){t(e),i.shift(),i.length&&u(i[0][0],i[0][1])}}function v(t){var e,n;return e={},a("next"),a("throw",(function(t){throw t})),a("return"),e[Symbol.iterator]=function(){return this},e;function a(a,r){e[a]=t[a]?function(e){return(n=!n)?{value:m(t[a](e)),done:"return"===a}:r?r(e):e}:r}}function x(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t=h(t),e={},a("next"),a("throw"),a("return"),e[Symbol.asyncIterator]=function(){return this},e);function a(n){e[n]=t[n]&&function(e){return new Promise((function(a,r){!function(t,e,n,a){Promise.resolve(a).then((function(e){t({value:e,done:n})}),e)}(a,r,(e=t[n](e)).done,e.value)}))}}}function _(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function T(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}function w(t){return t&&t.__esModule?t:{default:t}}function O(t,e){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return e.get(t)}function S(t,e,n){if(!e.has(t))throw new TypeError("attempted to set private field on non-instance");return e.set(t,n),n}},mtw6:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a=function(t){return t[t.error=0]="error",t[t.info=1]="info",t[t.success=2]="success",t}({})},"n/D3":function(t,e,n){"use strict";n.d(e,"a",(function(){return f})),n.d(e,"b",(function(){return c}));var a=n("cp0P"),r=(n("SgmB"),n("ZDA6"),n("+fVR")),i=n("0+/T"),s=n("Rf2I"),u=(n("sne2"),n("x38r")),o=n("oxzT"),l=n("mtw6"),d=n("vCyI");n("nSDx"),n("aexS"),n("9nlD");const c=new(n("EgGo").a)("user-management/roles");class f extends r.a{constructor(t,e,n,a,r,i,s,u,l){super(),this.roleService=t,this.scopeService=e,this.emptyPipe=n,this.authStorageService=a,this.modalService=r,this.notificationService=i,this.i18n=s,this.urlBuilder=u,this.actionLabels=l,this.selection=new d.a,this.permission=this.authStorageService.getPermissions().user,this.tableActions=[{permission:"create",icon:o.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE},{permission:"create",icon:o.a.clone,name:this.actionLabels.CLONE,disable:()=>!this.selection.hasSingleSelection,click:()=>this.cloneRole()},{permission:"update",icon:o.a.edit,disable:()=>!this.selection.hasSingleSelection||this.selection.first().system,routerLink:()=>this.selection.first()&&this.urlBuilder.getEdit(this.selection.first().name),name:this.actionLabels.EDIT},{permission:"delete",icon:o.a.destroy,disable:()=>!this.selection.hasSingleSelection||this.selection.first().system,click:()=>this.deleteRoleModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"name",flexGrow:3},{name:this.i18n("Description"),prop:"description",flexGrow:5,pipe:this.emptyPipe},{name:this.i18n("System Role"),prop:"system",cellClass:"text-center",flexGrow:1,cellTransformation:u.a.checkIcon}]}getRoles(){Object(a.a)([this.roleService.list(),this.scopeService.list()]).subscribe(t=>{this.roles=t[0],this.scopes=t[1]})}updateSelection(t){this.selection=t}deleteRole(t){this.roleService.delete(t).subscribe(()=>{this.getRoles(),this.modalRef.hide(),this.notificationService.show(l.a.success,this.i18n("Deleted role '{{role_name}}'",{role_name:t}))},()=>{this.modalRef.content.stopLoadingSpinner()})}deleteRoleModal(){const t=this.selection.first().name;this.modalRef=this.modalService.show(i.a,{initialState:{itemDescription:"Role",itemNames:[t],submitAction:()=>this.deleteRole(t)}})}cloneRole(){const t=this.selection.first().name;this.modalRef=this.modalService.show(s.a,{initialState:{fields:[{type:"text",name:"newName",value:t+"_clone",label:this.i18n("New name"),required:!0}],titleText:this.i18n("Clone Role"),submitButtonText:this.i18n("Clone Role"),onSubmit:e=>{this.roleService.clone(t,e.newName).subscribe(()=>{this.getRoles(),this.notificationService.show(l.a.success,this.i18n("Cloned role '{{dst_name}}' from '{{src_name}}'",{src_name:t,dst_name:e.newName}))})}}})}}},"n3/R":function(t,e,n){"use strict";var a=n("0Dky");function r(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=a((function(){var t=r("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=a((function(){var t=r("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},n6bG:function(t,e,n){"use strict";function a(t){return"function"==typeof t}n.d(e,"a",(function(){return a}))},n9Vz:function(t,e,n){var a=n("Yj/I")(n("xdB7"));t.exports=a},nC65:function(t,e,n){var a=n("kXVT"),r=n("FGWQ");t.exports=function(t){for(var e=r(t),n=e.length;n--;){var i=e[n],s=t[i];e[n]=[i,s,a(s)]}return e}},nSDx:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t){return a.isUndefined(t)||a.isNull(t)?"-":t}}},"nTk+":function(t,e,n){var a=n("vJUC"),r=n("0GLT");t.exports=function(t,e,n){var i=e(t);return r(t)?i:a(i,n(t))}},nYR2:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("7o/Q"),r=n("quSY");function i(t){return e=>e.lift(new s(t))}class s{constructor(t){this.callback=t}call(t,e){return e.subscribe(new u(t,this.callback))}}class u extends a.a{constructor(t,e){super(t),this.add(new r.a(e))}}},ngJS:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=t=>e=>{for(let n=0,a=t.length;n<a&&!e.closed;n++)e.next(t[n]);e.complete()}},ntOU:function(t,e,n){"use strict";var a=n("rpNk").IteratorPrototype,r=n("fHMY"),i=n("XGwC"),s=n("1E5z"),u=n("P4y1"),o=function(){return this};t.exports=function(t,e,n){var l=e+" Iterator";return t.prototype=r(a,{next:i(1,n)}),s(t,l,!1,!0),u[l]=o,t}},ntis:function(t,e){t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},nyYc:function(t,e,n){!function(t){"use strict";t.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal:function(t,e){switch(e){case"D":return t+(1===t?"er":"");default:case"M":case"Q":case"DDD":case"d":return t+(1===t?"er":"e");case"w":case"W":return t+(1===t?"re":"e")}},week:{dow:1,doy:4}})}(n("wd/R"))},o1bE:function(t,e,n){!function(t){"use strict";t.defineLocale("ar-dz",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"أح_إث_ثلا_أر_خم_جم_سب".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:4}})}(n("wd/R"))},o3PY:function(t,e){t.exports=function(){this.__data__=[],this.size=0}},"o4+5":function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("aXbf");class a{constructor(t){this.formatter=t}transform(t){return this.formatter.format_number(t,1e3,["","k","M","G","T","P","E","Z","Y"])}}},o8EM:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("PhyI"),r=n("8Y7J"),i=n("GiVz");let s=(()=>{class t{constructor(t){this.i18n=t,this.sections=[{heading:this.i18n("Quality of Service"),class:"quality-of-service",options:[{name:"rbd_qos_bps_limit",displayName:this.i18n("BPS Limit"),description:this.i18n("The desired limit of IO bytes per second."),type:a.b.bps},{name:"rbd_qos_iops_limit",displayName:this.i18n("IOPS Limit"),description:this.i18n("The desired limit of IO operations per second."),type:a.b.iops},{name:"rbd_qos_read_bps_limit",displayName:this.i18n("Read BPS Limit"),description:this.i18n("The desired limit of read bytes per second."),type:a.b.bps},{name:"rbd_qos_read_iops_limit",displayName:this.i18n("Read IOPS Limit"),description:this.i18n("The desired limit of read operations per second."),type:a.b.iops},{name:"rbd_qos_write_bps_limit",displayName:this.i18n("Write BPS Limit"),description:this.i18n("The desired limit of write bytes per second."),type:a.b.bps},{name:"rbd_qos_write_iops_limit",displayName:this.i18n("Write IOPS Limit"),description:this.i18n("The desired limit of write operations per second."),type:a.b.iops},{name:"rbd_qos_bps_burst",displayName:this.i18n("BPS Burst"),description:this.i18n("The desired burst limit of IO bytes."),type:a.b.bps},{name:"rbd_qos_iops_burst",displayName:this.i18n("IOPS Burst"),description:this.i18n("The desired burst limit of IO operations."),type:a.b.iops},{name:"rbd_qos_read_bps_burst",displayName:this.i18n("Read BPS Burst"),description:this.i18n("The desired burst limit of read bytes."),type:a.b.bps},{name:"rbd_qos_read_iops_burst",displayName:this.i18n("Read IOPS Burst"),description:this.i18n("The desired burst limit of read operations."),type:a.b.iops},{name:"rbd_qos_write_bps_burst",displayName:this.i18n("Write BPS Burst"),description:this.i18n("The desired burst limit of write bytes."),type:a.b.bps},{name:"rbd_qos_write_iops_burst",displayName:this.i18n("Write IOPS Burst"),description:this.i18n("The desired burst limit of write operations."),type:a.b.iops}]}]}static getOptionsFromSections(t){return t.map(t=>t.options).reduce((t,e)=>t.concat(e))}filterConfigOptionsByName(e){return t.getOptionsFromSections(this.sections).filter(t=>t.name===e)}getOptionValueByName(t,e,n=""){const a=this.filterConfigOptionsByName(t);return 1===a.length?a.pop()[e]:n}getWritableSections(){return this.sections.map(t=>(t.options=t.options.filter(t=>!t.readOnly),t))}getOptionFields(){return t.getOptionsFromSections(this.sections)}getWritableOptionFields(){return t.getOptionsFromSections(this.getWritableSections())}getOptionByName(t){return this.filterConfigOptionsByName(t).pop()}getDisplayName(t){return this.getOptionValueByName(t,"displayName")}getDescription(t){return this.getOptionValueByName(t,"description")}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t(r["ɵɵinject"](i.a))},token:t,providedIn:"root"}),t})()},oMSZ:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this.pwdExpirationSpan=0,this.pwdExpirationSpan=t.user_pwd_expiration_span,this.pwdExpirationWarning1=t.user_pwd_expiration_warning_1,this.pwdExpirationWarning2=t.user_pwd_expiration_warning_2}}},oRml:function(t,e,n){var a=n("LaC8"),r=n("KNDS"),i=n("x3F9"),s={};s["[object Float32Array]"]=s["[object Float64Array]"]=s["[object Int8Array]"]=s["[object Int16Array]"]=s["[object Int32Array]"]=s["[object Uint8Array]"]=s["[object Uint8ClampedArray]"]=s["[object Uint16Array]"]=s["[object Uint32Array]"]=!0,s["[object Arguments]"]=s["[object Array]"]=s["[object ArrayBuffer]"]=s["[object Boolean]"]=s["[object DataView]"]=s["[object Date]"]=s["[object Error]"]=s["[object Function]"]=s["[object Map]"]=s["[object Number]"]=s["[object Object]"]=s["[object RegExp]"]=s["[object Set]"]=s["[object String]"]=s["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&r(t.length)&&!!s[a(t)]}},oxzT:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a=function(t){return t.add="fa fa-plus",t.addCircle="fa fa-plus-circle",t.minusCircle="fa fa-minus-circle",t.edit="fa fa-pencil",t.destroy="fa fa-times",t.destroyCircle="fa fa-times-circle",t.exchange="fa fa-exchange",t.copy="fa fa-copy",t.clipboard="fa fa-clipboard",t.flatten="fa fa-chain-broken",t.trash="fa fa-trash-o",t.lock="fa fa-lock",t.unlock="fa fa-unlock",t.clone="fa fa-clone",t.undo="fa fa-undo",t.search="fa fa-search",t.start="fa fa-play",t.stop="fa fa-stop",t.analyse="fa fa-stethoscope",t.deepCheck="fa fa-cog",t.reweight="fa fa-balance-scale",t.left="fa fa-arrow-left",t.right="fa fa-arrow-right",t.down="fa fa-arrow-down",t.erase="fa fa-eraser",t.user="fa fa-user",t.users="fa fa-users",t.share="fa fa-share-alt",t.key="fa fa-key-modern",t.warning="fa fa-exclamation-triangle",t.info="fa fa-info",t.infoCircle="fa fa-info-circle",t.questionCircle="fa fa-question-circle-o",t.check="fa fa-check",t.show="fa fa-eye",t.paragraph="fa fa-paragraph",t.terminal="fa fa-terminal",t.magic="fa fa-magic",t.hourglass="fa fa-hourglass-o",t.filledHourglass="fa fa-hourglass",t.table="fa fa-table",t.spinner="fa fa-spinner",t.refresh="fa fa-refresh",t.bullseye="fa fa-bullseye",t.disk="fa fa-hdd-o",t.server="fa fa-server",t.filter="fa fa-filter",t.lineChart="fa fa-line-chart",t.signOut="fa fa-sign-out",t.health="fa fa-heartbeat",t.circle="fa fa-circle",t.bell="fa fa-bell",t.tag="fa fa-tag",t.leftArrow="fa fa-angle-left",t.rightArrow="fa fa-angle-right",t.leftArrowDouble="fa fa-angle-double-left",t.rightArrowDouble="fa fa-angle-double-right",t.flag="fa fa-flag",t.clearFilters="fa fa-window-close",t.download="fa fa-download",t.upload="fa fa-upload",t.large="fa fa-lg",t.large2x="fa fa-2x",t.large3x="fa fa-3x",t.stack="fa fa-stack",t.stack1x="fa fa-stack-1x",t.stack2x="fa fa-stack-2x",t.pulse="fa fa-pulse",t.spin="fa fa-spin",t.inverse="fa fa-inverse",t}({})},"p/rL":function(t,e,n){!function(t){"use strict";t.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des".split("_"),weekdays:"Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib".split("_"),weekdaysMin:"Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM [tile] D [san] YYYY",LLL:"MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm"},calendar:{sameDay:"[Bi lɛrɛ] LT",nextDay:"[Sini lɛrɛ] LT",nextWeek:"dddd [don lɛrɛ] LT",lastDay:"[Kunu lɛrɛ] LT",lastWeek:"dddd [tɛmɛnen lɛrɛ] LT",sameElse:"L"},relativeTime:{future:"%s kɔnɔ",past:"a bɛ %s bɔ",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"lɛrɛ kelen",hh:"lɛrɛ %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}})}(n("wd/R"))},p33Q:function(t,e,n){var a=n("5itS"),r=n("qeWI"),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!a(t))return r(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},p4Cf:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("oxzT");class r{constructor(){this.icons=a.a}}},pKUh:function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return l}));var a=n("8Y7J"),r=n("2ZVE"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:0,styles:["[_nghost-%COMP%]   .nav-tabs[_ngcontent-%COMP%]   .nav-item.disabled[_ngcontent-%COMP%]   a.disabled[_ngcontent-%COMP%]{cursor:default}"],data:{}});function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","bs-remove-tab"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(n.preventDefault(),a=!1!==r.removeTab(t.parent.context.$implicit)&&a),a}),null,null)),(t()(),a["ɵted"](-1,null,[" ❌"]))],null,null)}function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,9,"li",[],[[2,"active",null],[2,"disabled",null]],[[null,"keydown"]],(function(t,e,n){var a=!0;return"keydown"===e&&(a=!1!==t.component.keyNavActions(n,t.context.index)&&a),a}),null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,2),(t()(),a["ɵeld"](4,0,null,null,5,"a",[["class","nav-link"],["href","javascript:void(0);"],["role","tab"]],[[1,"aria-controls",0],[1,"aria-selected",0],[1,"id",0],[2,"active",null],[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=0!=(t.context.$implicit.active=!0)&&a),a}),null,null)),(t()(),a["ɵeld"](5,16777216,null,null,2,"span",[],null,null,null,null,null)),a["ɵdid"](6,16384,null,0,r.a,[a.ViewContainerRef],{ngTransclude:[0,"ngTransclude"]},null),(t()(),a["ɵted"](7,null,["",""])),(t()(),a["ɵand"](16777216,null,null,1,null,u)),a["ɵdid"](9,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=t(e,3,0,"nav-item",e.context.$implicit.customClass||"");t(e,2,0,n),t(e,6,0,e.context.$implicit.headingRef),t(e,9,0,e.context.$implicit.removable)}),(function(t,e){t(e,0,0,e.context.$implicit.active,e.context.$implicit.disabled),t(e,4,0,e.context.$implicit.id?e.context.$implicit.id:"",!!e.context.$implicit.active,e.context.$implicit.id?e.context.$implicit.id+"-link":"",e.context.$implicit.active,e.context.$implicit.disabled),t(e,7,0,e.context.$implicit.heading)}))}function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"ul",[["class","nav"],["role","tablist"]],[[1,"aria-label",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==n.preventDefault()&&a),a}),null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,o)),a["ɵdid"](4,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](5,0,null,null,1,"div",[["class","tab-content"]],null,null,null,null,null)),a["ɵncd"](null,0)],(function(t,e){var n=e.component;t(e,2,0,"nav",n.classMap),t(e,4,0,n.tabs)}),(function(t,e){t(e,0,0,e.component.ariaLabel)}))}},pL04:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},pLZG:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t,e){return function(n){return n.lift(new i(t,e))}}class i{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new s(t,this.predicate,this.thisArg))}}class s extends a.a{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}},pMcL:function(t,e,n){var a=n("Wa4q");t.exports=a.Symbol},pMnS:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("8Y7J"),r=n("iInd"),i=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function s(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),a["ɵdid"](1,212992,null,0,r.r,[r.b,a.ViewContainerRef,a.ComponentFactoryResolver,[8,null],a.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"ng-component",[],null,null,null,s,i)),a["ɵdid"](1,49152,null,0,r.F,[],null,null)],null,null)}var o=a["ɵccf"]("ng-component",r.F,u,{},{},[])},pYKc:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("WiuZ"),s=n("wnGv"),u=n("GiVz");n("ppaS"),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return d}));var o=a["ɵcrt"]({encapsulation:0,styles:[[".badge-remove[_ngcontent-%COMP%]{color:#fff}i.fa-pencil[_ngcontent-%COMP%]{font-size:1.1rem}"]],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"span",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,7,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"span",[["class","mr-2"]],null,null,null,null,null)),(t()(),a["ɵted"](3,null,["",""])),(t()(),a["ɵeld"](4,0,null,null,4,"a",[["class","badge-remove"]],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t.parent,2).removeItem(t.context.$implicit)&&r),r}),null,null)),(t()(),a["ɵeld"](5,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](7,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](8,1)],(function(t,e){var n=t(e,8,0,e.component.icons.destroy);t(e,7,0,n)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function d(t){return a["ɵvid"](0,[a["ɵqud"](402653184,1,{cdSelect:0}),(t()(),a["ɵeld"](1,0,null,null,5,"cd-select",[["elemClass","mr-2 select-menu-edit"]],null,[[null,"selection"]],(function(t,e,n){var a=!0;return"selection"===e&&(a=!1!==t.component.selection.emit(n)&&a),a}),i.b,i.a)),a["ɵdid"](2,638976,[[1,4],["cdSelect",4]],0,s.a,[u.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"],selectionLimit:[4,"selectionLimit"],customBadges:[5,"customBadges"],customBadgeValidators:[6,"customBadgeValidators"]},{selection:"selection"}),(t()(),a["ɵeld"](3,0,null,0,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](5,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](6,1),(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](8,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"mr-2 select-menu-edit",n.data,n.options,n.messages,n.selectionLimit,n.customBadges,n.customBadgeValidators);var a=t(e,6,0,n.icons.edit);t(e,5,0,a),t(e,8,0,n.data)}),null)}},pYe4:function(t,e,n){var a=n("77kF"),r=n("MBcj");t.exports=function(t,e){return t&&a(e,r(e),t)}},pcHL:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Object)],t.prototype,"templates",void 0),i([Object(a.Component)({selector:"tree-node-children",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <div\n        [class.tree-children]="true"\n        [class.tree-children-no-padding]="node.options.levelPadding"\n        *treeAnimateOpen="\n          node.isExpanded;\n          speed: node.options.animateSpeed;\n          acceleration: node.options.animateAcceleration;\n          enabled: node.options.animateExpand\n        "\n      >\n        <tree-node-collection\n          *ngIf="node.children"\n          [nodes]="node.children"\n          [templates]="templates"\n          [treeModel]="node.treeModel"\n        >\n        </tree-node-collection>\n        <tree-loading-component\n          [style.padding-left]="node.getNodePadding()"\n          class="tree-node-loading"\n          *ngIf="!node.children"\n          [template]="templates.loadingTemplate"\n          [node]="node"\n        ></tree-loading-component>\n      </div>\n    </ng-container>\n  '})],t)}()},pcUq:function(t,e,n){var a=n("R6RA"),r=n("+FhV"),i=n("5itS");t.exports=function(t){return"function"!=typeof t.constructor||i(t)?{}:a(r(t))}},pkCn:function(t,e,n){"use strict";var a=n("0Dky");t.exports=function(t,e){var n=[][t];return!!n&&a((function(){n.call(null,e||function(){throw 1},1)}))}},pmjB:function(t,e,n){var a=n("RBUI"),r=n("PHub"),i=n("0GLT"),s=n("y/5f"),u=n("Uies"),o=n("uPDw"),l=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=i(t),d=!n&&r(t),c=!n&&!d&&s(t),f=!n&&!d&&!c&&o(t),h=n||d||c||f,g=h?a(t.length,String):[],p=g.length;for(var b in t)!e&&!l.call(t,b)||h&&("length"==b||c&&("offset"==b||"parent"==b)||f&&("buffer"==b||"byteLength"==b||"byteOffset"==b)||u(b,p))||g.push(b);return g}},ppGB:function(t,e){var n=Math.ceil,a=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?a:n)(t)}},ppaS:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=n("oxzT"),i=n("DNAf");n("wnGv");class s{constructor(t){this.i18n=t,this.data=[],this.options=[],this.messages=new i.a({},this.i18n),this.customBadges=!1,this.customBadgeValidators=[],this.selection=new a.EventEmitter,this.icons=r.a}}},pxLl:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("mrSG"),r=n("IheW"),i=n("LRne"),s=n("5+tZ"),u=n("xTzq"),o=n("8Y7J"),l=n("pL04");let d=(()=>{let t=class{constructor(t){this.http=t,this.url="api/perf_counters"}list(){return this.http.get(this.url)}get(t,e){return this.http.get(`${this.url}/${t}/${e}`).pipe(Object(s.a)(t=>Object(i.a)(t.counters)))}};return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](r.c))},token:t,providedIn:l.a}),t=a.__decorate([u.a,a.__metadata("design:paramtypes",[r.c])],t),t})()},pxpQ:function(t,e,n){"use strict";n.d(e,"b",(function(){return i})),n.d(e,"a",(function(){return u}));var a=n("7o/Q"),r=n("WMd4");function i(t,e=0){return function(n){return n.lift(new s(t,e))}}class s{constructor(t,e=0){this.scheduler=t,this.delay=e}call(t,e){return e.subscribe(new u(t,this.scheduler,this.delay))}}class u extends a.a{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(u.dispatch,this.delay,new o(t,this.destination)))}_next(t){this.scheduleMessage(r.a.createNext(t))}_error(t){this.scheduleMessage(r.a.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(r.a.createComplete()),this.unsubscribe()}}class o{constructor(t,e){this.notification=t,this.destination=e}}},qG07:function(t,e,n){var a=n("bWnS"),r=n("ntis"),i=n("U02d"),s=n("XFPk"),u=n("J3wx");function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}o.prototype.clear=a,o.prototype.delete=r,o.prototype.get=i,o.prototype.has=s,o.prototype.set=u,t.exports=o},qN6l:function(t,e,n){var a=n("KFwg")(Object,"create");t.exports=a},qeWI:function(t,e,n){var a=n("IMTC")(Object.keys,Object);t.exports=a},qgXg:function(t,e,n){"use strict";var a=n("3N8a");class r extends a.a{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}var i=n("IjjT");class s extends i.a{}n.d(e,"a",(function(){return u}));const u=new s(r)},qjN6:function(t,e,n){var a=n("KFwg")(n("Wa4q"),"Set");t.exports=a},qjUL:function(t,e,n){var a=n("M+Mf"),r=n("ZY2H")((function(t,e,n,r){a(t,e,n,r)}));t.exports=r},quSY:function(t,e,n){"use strict";var a=n("DH7j"),r=n("XoHu"),i=n("n6bG");const s=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n  ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();n.d(e,"a",(function(){return u}));let u=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:u,_subscriptions:l}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;t<n.length;++t)n[t].remove(this);if(Object(i.a)(u))try{u.call(this)}catch(d){e=d instanceof s?o(d.errors):[d]}if(Object(a.a)(l)){let t=-1,n=l.length;for(;++t<n;){const n=l[t];if(Object(r.a)(n))try{n.unsubscribe()}catch(d){e=e||[],d instanceof s?e=e.concat(o(d.errors)):e.push(d)}}}if(e)throw new s(e)}add(e){let n=e;if(!e)return t.EMPTY;switch(typeof e){case"function":n=new t(e);case"object":if(n===this||n.closed||"function"!=typeof n.unsubscribe)return n;if(this.closed)return n.unsubscribe(),n;if(!(n instanceof t)){const e=n;n=new t,n._subscriptions=[e]}break;default:throw new Error("unrecognized teardown "+e+" added to Subscription.")}let{_parentOrParents:a}=n;if(null===a)n._parentOrParents=this;else if(a instanceof t){if(a===this)return n;n._parentOrParents=[a,this]}else{if(-1!==a.indexOf(this))return n;a.push(this)}const r=this._subscriptions;return null===r?this._subscriptions=[n]:r.push(n),n}remove(t){const e=this._subscriptions;if(e){const n=e.indexOf(t);-1!==n&&e.splice(n,1)}}}var e;return t.EMPTY=((e=new t).closed=!0,e),t})();function o(t){return t.reduce((t,e)=>t.concat(e instanceof s?e.errors:e),[])}},"qwH+":function(t,e,n){var a=n("dX5L"),r=n("Gf4A"),i=n("BJMh"),s=n("qjN6"),u=n("0BcO"),o=n("LaC8"),l=n("+xYL"),d=l(a),c=l(r),f=l(i),h=l(s),g=l(u),p=o;(a&&"[object DataView]"!=p(new a(new ArrayBuffer(1)))||r&&"[object Map]"!=p(new r)||i&&"[object Promise]"!=p(i.resolve())||s&&"[object Set]"!=p(new s)||u&&"[object WeakMap]"!=p(new u))&&(p=function(t){var e=o(t),n="[object Object]"==e?t.constructor:void 0,a=n?l(n):"";if(a)switch(a){case d:return"[object DataView]";case c:return"[object Map]";case f:return"[object Promise]";case h:return"[object Set]";case g:return"[object WeakMap]"}return e}),t.exports=p},qzZ1:function(t,e){var n="object"==typeof global&&global&&global.Object===Object&&global;t.exports=n},"r2+u":function(t,e,n){var a=n("qwH+"),r=n("x3F9");t.exports=function(t){return r(t)&&"[object Map]"==a(t)}},r467:function(t,e,n){var a=n("Q7RW"),r=n("JTPl"),i=n("hmSm"),s=n("+xYL"),u=/^\[object .+?Constructor\]$/,o=RegExp("^"+Function.prototype.toString.call(Object.prototype.hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||r(t))&&(a(t)?o:u).test(s(t))}},rB9j:function(t,e,n){"use strict";var a=n("I+eb"),r=n("kmMV");a({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},rKzb:function(t,e,n){"use strict";var a=n("4syw"),r=n("8YOa").getWeakData,i=n("glrk"),s=n("hh1v"),u=n("GarU"),o=n("ImZN"),l=n("tycR"),d=n("UTVS"),c=n("afO8"),f=c.set,h=c.getterFor,g=l.find,p=l.findIndex,b=0,m=function(t){return t.frozen||(t.frozen=new y)},y=function(){this.entries=[]},v=function(t,e){return g(t.entries,(function(t){return t[0]===e}))};y.prototype={get:function(t){var e=v(this,t);if(e)return e[1]},has:function(t){return!!v(this,t)},set:function(t,e){var n=v(this,t);n?n[1]=e:this.entries.push([t,e])},delete:function(t){var e=p(this.entries,(function(e){return e[0]===t}));return~e&&this.entries.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,n,l){var c=t((function(t,a){u(t,c,e),f(t,{type:e,id:b++,frozen:void 0}),null!=a&&o(a,t[l],t,n)})),g=h(e),p=function(t,e,n){var a=g(t),s=r(i(e),!0);return!0===s?m(a).set(e,n):s[a.id]=n,t};return a(c.prototype,{delete:function(t){var e=g(this);if(!s(t))return!1;var n=r(t);return!0===n?m(e).delete(t):n&&d(n,e.id)&&delete n[e.id]},has:function(t){var e=g(this);if(!s(t))return!1;var n=r(t);return!0===n?m(e).has(t):n&&d(n,e.id)}}),a(c.prototype,n?{get:function(t){var e=g(this);if(s(t)){var n=r(t);return!0===n?m(e).get(t):n?n[e.id]:void 0}},set:function(t,e){return p(this,t,e)}}:{add:function(t){return p(this,t,!0)}}),c}}},rW0t:function(t,e,n){"use strict";var a=n("glrk");t.exports=function(){var t=a(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},rZud:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Number)],t.prototype,"index",void 0),i([Object(a.Input)(),s("design:type",a.TemplateRef)],t.prototype,"template",void 0),i([Object(a.Component)({selector:"tree-node-content",encapsulation:a.ViewEncapsulation.None,template:'\n  <span *ngIf="!template">{{ node.displayField }}</span>\n  <ng-container\n    [ngTemplateOutlet]="template"\n    [ngTemplateOutletContext]="{ $implicit: node, node: node, index: index }">\n  </ng-container>'})],t)}()},raLr:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a,r;return"m"===n?e?"хвилина":"хвилину":"h"===n?e?"година":"годину":t+" "+(a=+t,r={ss:e?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:e?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:e?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}function n(t){return function(){return t+"о"+(11===this.hours()?"б":"")+"] LT"}}t.defineLocale("uk",{months:{format:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),standalone:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_")},monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:function(t,e){var n={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")};return!0===t?n.nominative.slice(1,7).concat(n.nominative.slice(0,1)):t?n[/(\[[ВвУу]\]) ?dddd/.test(e)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(e)?"genitive":"nominative"][t.day()]:n.nominative},weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., HH:mm",LLLL:"dddd, D MMMM YYYY р., HH:mm"},calendar:{sameDay:n("[Сьогодні "),nextDay:n("[Завтра "),lastDay:n("[Вчора "),nextWeek:n("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return n("[Минулої] dddd [").call(this);case 1:case 2:case 4:return n("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",ss:e,m:e,mm:e,h:"годину",hh:e,d:"день",dd:e,M:"місяць",MM:e,y:"рік",yy:e},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(t){return/^(дня|вечора)$/.test(t)},meridiem:function(t,e,n){return t<4?"ночі":t<12?"ранку":t<17?"дня":"вечора"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го)/,ordinal:function(t,e){switch(e){case"M":case"d":case"DDD":case"w":case"W":return t+"-й";case"D":return t+"-го";default:return t}},week:{dow:1,doy:7}})}(n("wd/R"))},rk81:function(t,e,n){var a=n("aT2Y"),r=n("vDHD"),i=n("EWmY"),s=n("cjaf"),u=n("2oum"),o=n("gHid");function l(t){var e=this.__data__=new a(t);this.size=e.size}l.prototype.clear=r,l.prototype.delete=i,l.prototype.get=s,l.prototype.has=u,l.prototype.set=o,t.exports=l},rkAj:function(t,e,n){var a=n("g6v/"),r=n("0Dky"),i=n("UTVS"),s=Object.defineProperty,u={},o=function(t){throw t};t.exports=function(t,e){if(i(u,t))return u[t];e||(e={});var n=[][t],l=!!i(e,"ACCESSORS")&&e.ACCESSORS,d=i(e,0)?e[0]:o,c=i(e,1)?e[1]:void 0;return u[t]=!!n&&!r((function(){if(l&&!a)return!0;var t={length:-1};l?s(t,1,{enumerable:!0,get:o}):t[1]=1,n.call(t,d,c)}))}},rpNk:function(t,e,n){"use strict";var a,r,i,s=n("4WOD"),u=n("kRJp"),o=n("UTVS"),l=n("tiKp"),d=n("xDBR"),c=l("iterator"),f=!1;[].keys&&("next"in(i=[].keys())?(r=s(s(i)))!==Object.prototype&&(a=r):f=!0),null==a&&(a={}),d||o(a,c)||u(a,c,(function(){return this})),t.exports={IteratorPrototype:a,BUGGY_SAFARI_ITERATORS:f}},"s+uk":function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return e?r[n][0]:r[n][1]}t.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:e,mm:"%d Minuten",h:e,hh:"%d Stunden",d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},"s4/e":function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,a){n[++e]=[a,t]})),n}},s7LF:function(t,e,n){"use strict";n.d(e,"C",(function(){return Tt})),n.d(e,"G",(function(){return gt})),n.d(e,"D",(function(){return R})),n.d(e,"E",(function(){return pt})),n.d(e,"F",(function(){return F})),n.d(e,"c",(function(){return l})),n.d(e,"d",(function(){return h})),n.d(e,"p",(function(){return o})),n.d(e,"b",(function(){return d})),n.d(e,"e",(function(){return c})),n.d(e,"q",(function(){return p})),n.d(e,"r",(function(){return m})),n.d(e,"s",(function(){return y})),n.d(e,"t",(function(){return ut})),n.d(e,"u",(function(){return ht})),n.d(e,"w",(function(){return C})),n.d(e,"x",(function(){return A})),n.d(e,"j",(function(){return xt})),n.d(e,"l",(function(){return bt})),n.d(e,"g",(function(){return yt})),n.d(e,"m",(function(){return mt})),n.d(e,"v",(function(){return q})),n.d(e,"A",(function(){return M})),n.d(e,"z",(function(){return _t})),n.d(e,"h",(function(){return wt})),n.d(e,"a",(function(){return nt})),n.d(e,"f",(function(){return it})),n.d(e,"i",(function(){return at})),n.d(e,"k",(function(){return rt})),n.d(e,"o",(function(){return x})),n.d(e,"B",(function(){return T})),n.d(e,"n",(function(){return Ot})),n.d(e,"y",(function(){return St}));var a=n("8Y7J"),r=n("cUpR"),i=n("cp0P"),s=n("Cfvw"),u=n("lJxs");const o=new a.InjectionToken("NgValueAccessor");class l{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}const d=new a.InjectionToken("CompositionEventMode");class c{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=t=>{},this.onTouched=()=>{},this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Object(r.q)()?Object(r.q)().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}class f{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class h extends f{get formDirective(){return null}get path(){return null}}function g(){throw new Error("unimplemented")}class p extends f{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return g()}get asyncValidator(){return g()}}class b{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}class m extends b{constructor(t){super(t)}}class y extends b{constructor(t){super(t)}}function v(t){return null==t||0===t.length}const x=new a.InjectionToken("NgValidators"),_=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class T{static min(t){return e=>{if(v(e.value)||v(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n<t?{min:{min:t,actual:e.value}}:null}}static max(t){return e=>{if(v(e.value)||v(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return v(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return v(t.value)||_.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(v(e.value))return null;const n=e.value?e.value.length:0;return n<t?{minlength:{requiredLength:t,actualLength:n}}:null}}static maxLength(t){return e=>{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return T.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(v(t.value))return null;const a=t.value;return e.test(a)?null:{pattern:{requiredPattern:n,actualValue:a}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(w);return 0==e.length?null:function(t){return S(function(t,e){return e.map(e=>e(t))}(t,e))}}static composeAsync(t){if(!t)return null;const e=t.filter(w);return 0==e.length?null:function(t){const n=function(t,e){return e.map(e=>e(t))}(t,e).map(O);return Object(i.a)(n).pipe(Object(u.a)(S))}}}function w(t){return null!=t}function O(t){const e=Object(a["ɵisPromise"])(t)?Object(s.a)(t):t;if(!Object(a["ɵisObservable"])(e))throw new Error("Expected validator to return Promise or Observable.");return e}function S(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function I(t){return t.validate?e=>t.validate(e):t}function N(t){return t.validate?e=>t.validate(e):t}class C{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}class R{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}class A{constructor(t,e,n,a){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=a,this.onChange=()=>{},this.onTouched=()=>{}}ngOnInit(){this._control=this._injector.get(p),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n      If you define both a name and a formControlName attribute on your radio button, their values\n      must match. Ex: <input type="radio" formControlName="food" name="food">\n    ')}}const k='\n    <div [formGroup]="myGroup">\n      <input formControlName="firstName">\n    </div>\n\n    In your class:\n\n    this.myGroup = new FormGroup({\n       firstName: new FormControl()\n    });',E='\n    <div [formGroup]="myGroup">\n       <div formGroupName="person">\n          <input formControlName="firstName">\n       </div>\n    </div>\n\n    In your class:\n\n    this.myGroup = new FormGroup({\n       person: new FormGroup({ firstName: new FormControl() })\n    });',L='\n    <form>\n       <div ngModelGroup="person">\n          <input [(ngModel)]="person.name" name="firstName">\n       </div>\n    </form>';class D{static controlParentException(){throw new Error("formControlName must be used with a parent formGroup directive.  You'll want to add a formGroup\n       directive and pass it an existing FormGroup instance (you can create one in your class).\n\n      Example:\n\n      "+k)}static ngModelGroupException(){throw new Error(`formControlName cannot be used with an ngModelGroup parent. It is only compatible with parents\n       that also have a "form" prefix: formGroupName, formArrayName, or formGroup.\n\n       Option 1:  Update the parent to be formGroupName (reactive form strategy)\n\n        ${E}\n\n        Option 2: Use ngModel instead of formControlName (template-driven strategy)\n\n        ${L}`)}static missingFormException(){throw new Error("formGroup expects a FormGroup instance. Please pass one in.\n\n       Example:\n\n       "+k)}static groupParentException(){throw new Error("formGroupName must be used with a parent formGroup directive.  You'll want to add a formGroup\n      directive and pass it an existing FormGroup instance (you can create one in your class).\n\n      Example:\n\n      "+E)}static arrayParentException(){throw new Error('formArrayName must be used with a parent formGroup directive.  You\'ll want to add a formGroup\n       directive and pass it an existing FormGroup instance (you can create one in your class).\n\n        Example:\n\n        \n    <div [formGroup]="myGroup">\n      <div formArrayName="cities">\n        <div *ngFor="let city of cityArray.controls; index as i">\n          <input [formControlName]="i">\n        </div>\n      </div>\n    </div>\n\n    In your class:\n\n    this.cityArray = new FormArray([new FormControl(\'SF\')]);\n    this.myGroup = new FormGroup({\n      cities: this.cityArray\n    });')}static disabledAttrWarning(){console.warn("\n      It looks like you're using the disabled attribute with a reactive form directive. If you set disabled to true\n      when you set up this control in your component class, the disabled attribute will actually be set in the DOM for\n      you. We recommend using this approach to avoid 'changed after checked' errors.\n       \n      Example: \n      form = new FormGroup({\n        first: new FormControl({value: 'Nancy', disabled: true}, Validators.required),\n        last: new FormControl('Drew', Validators.required)\n      });\n    ")}static ngModelWarning(t){console.warn(`\n    It looks like you're using ngModel on the same form field as ${t}. \n    Support for using the ngModel input property and ngModelChange event with \n    reactive form directives has been deprecated in Angular v6 and will be removed \n    in Angular v7.\n    \n    For more information on this, see our API docs here:\n    https://angular.io/api/forms/${"formControl"===t?"FormControlDirective":"FormControlName"}#use-with-ngmodel\n    `)}}function P(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}class M{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=a["ɵlooseIdentical"]}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=P(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=e=>{this.value=this._getOptionValue(e),t(this.value)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}class q{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(P(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}function j(t,e){return null==t?""+e:("string"==typeof e&&(e=`'${e}'`),e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}class F{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(j(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(j(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}function V(t,e){return[...e.path,t]}function G(t,e){t||H(e,"Cannot find control with"),e.valueAccessor||H(e,"No value accessor for form control with"),t.validator=T.compose([t.validator,e.validator]),t.asyncValidator=T.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&B(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&B(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function B(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function z(t,e){null==t&&H(e,"Cannot find control with"),t.validator=T.compose([t.validator,e.validator]),t.asyncValidator=T.composeAsync([t.asyncValidator,e.asyncValidator])}function Y(t){return H(t,"There is no FormControl instance attached to form control element with")}function H(t,e){let n;throw n=t.path.length>1?`path: '${t.path.join(" -> ")}'`:t.path[0]?`name: '${t.path}'`:"unspecified name attribute",new Error(`${e} ${n}`)}function U(t){return null!=t?T.compose(t.map(I)):null}function W(t){return null!=t?T.composeAsync(t.map(N)):null}function K(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!Object(a["ɵlooseIdentical"])(e,n.currentValue)}const $=[l,class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}},C,M,class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=a["ɵlooseIdentical"]}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=(t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)}}else e=(t,e)=>{t._setSelected(!1)};this._optionMap.forEach(e)}registerOnChange(t){this.onChange=e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e<t.length;e++){const a=t.item(e),r=this._getOptionValue(a.value);n.push(r)}}else{const t=e.options;for(let e=0;e<t.length;e++){const a=t.item(e);if(a.selected){const t=this._getOptionValue(a.value);n.push(t)}}}this.value=n,t(n)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(t){const e=(this._idCounter++).toString();return this._optionMap.set(e,t),e}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e)._value,t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e)._value:t}},A];function Z(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function J(t,e){if(!e)return null;Array.isArray(e)||H(t,"Value accessor was not provided as an array for form control with");let n=void 0,a=void 0,r=void 0;return e.forEach(e=>{var i;e.constructor===c?n=e:(i=e,$.some(t=>i.constructor===t)?(a&&H(t,"More than one built-in value accessor matches form control with"),a=e):(r&&H(t,"More than one custom value accessor matches form control with"),r=e))}),r||a||n||(H(t,"No valid value accessor for form control with"),null)}function Q(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}function X(t){const e=et(t)?t.validators:t;return Array.isArray(e)?U(e):e||null}function tt(t,e){const n=et(e)?e.asyncValidators:t;return Array.isArray(n)?W(n):n||null}function et(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class nt{constructor(t,e){this.validator=t,this.asyncValidator=e,this._onCollectionChange=()=>{},this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return"VALID"===this.status}get invalid(){return"INVALID"===this.status}get pending(){return"PENDING"==this.status}get disabled(){return"DISABLED"===this.status}get enabled(){return"DISABLED"!==this.status}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=X(t)}setAsyncValidators(t){this.asyncValidator=tt(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status="PENDING",!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="DISABLED",this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="VALID",this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),"VALID"!==this.status&&"PENDING"!==this.status||this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?"DISABLED":"VALID"}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status="PENDING";const e=O(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof rt?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof it&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new a.EventEmitter,this.statusChanges=new a.EventEmitter}_calculateStatus(){return this._allControlsDisabled()?"DISABLED":this.errors?"INVALID":this._anyControlsHaveStatus("PENDING")?"PENDING":this._anyControlsHaveStatus("INVALID")?"INVALID":"VALID"}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){et(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class at extends nt{constructor(t=null,e,n){super(X(e),tt(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=()=>{}}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){this._isBoxedValue(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}}class rt extends nt{constructor(t,e,n){super(X(e),tt(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,a)=>{n.reset(t[a],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof at?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!Object.keys(this.controls).length)throw new Error("\n        There are no form controls registered with this group yet.  If you're using ngModel,\n        you may want to check next tick (e.g. use setTimeout).\n      ");if(!this.controls[t])throw new Error(`Cannot find form control with name: ${t}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,a)=>{e=e||this.contains(a)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,a)=>{n=e(n,t,a)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class it extends nt{constructor(t,e,n){super(X(e),tt(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,a)=>{n.reset(t[a],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof at?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!this.controls.length)throw new Error("\n        There are no form controls registered with this array yet.  If you're using ngModel,\n        you may want to check next tick (e.g. use setTimeout).\n      ");if(!this.at(t))throw new Error("Cannot find form control at index "+t)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const st=(()=>Promise.resolve(null))();class ut extends h{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new a.EventEmitter,this.form=new rt({},U(t),W(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){st.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),G(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){st.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),Q(this._directives,t)})}addFormGroup(t){st.then(()=>{const e=this._findContainer(t.path),n=new rt({});z(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){st.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){st.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,Z(this.form,this._directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}class ot{static modelParentException(){throw new Error(`\n      ngModel cannot be used to register form controls with a parent formGroup directive.  Try using\n      formGroup's partner directive "formControlName" instead.  Example:\n\n      ${k}\n\n      Or, if you'd like to avoid registering this form control, indicate that it's standalone in ngModelOptions:\n\n      Example:\n\n      \n    <div [formGroup]="myGroup">\n       <input formControlName="firstName">\n       <input [(ngModel)]="showMoreControls" [ngModelOptions]="{standalone: true}">\n    </div>\n  `)}static formGroupNameException(){throw new Error(`\n      ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n      Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n      ${E}\n\n      Option 2:  Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n      ${L}`)}static missingNameException(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n      control must be defined as \'standalone\' in ngModelOptions.\n\n      Example 1: <input [(ngModel)]="person.firstName" name="first">\n      Example 2: <input [(ngModel)]="person.firstName" [ngModelOptions]="{standalone: true}">')}static modelGroupParentException(){throw new Error(`\n      ngModelGroup cannot be used with a parent formGroup directive.\n\n      Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n      ${E}\n\n      Option 2:  Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n      ${L}`)}static ngFormWarning(){console.warn("\n    It looks like you're using 'ngForm'.\n\n    Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n    in Angular v9.\n\n    Use 'ng-form' instead.\n\n    Before:\n    <ngForm #myForm=\"ngForm\">\n\n    After:\n    <ng-form #myForm=\"ngForm\">\n    ")}}const lt=new a.InjectionToken("NgFormSelectorWarning");class dt extends h{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return V(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return U(this._validators)}get asyncValidator(){return W(this._asyncValidators)}_checkParentType(){}}class ct extends dt{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof ct||this._parent instanceof ut||ot.modelGroupParentException()}}const ft=(()=>Promise.resolve(null))();class ht extends p{constructor(t,e,n,r){super(),this.control=new at,this._registered=!1,this.update=new a.EventEmitter,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=J(this,r)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),K(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?V(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return U(this._rawValidators)}get asyncValidator(){return W(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){G(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof ct)&&this._parent instanceof dt?ot.formGroupNameException():this._parent instanceof ct||this._parent instanceof ut||ot.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||ot.missingNameException()}_updateValue(t){ft.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;ft.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}class gt{}const pt=new a.InjectionToken("NgModelWithFormControlWarning");class bt extends h{constructor(t,e){super(),this._validators=t,this._asyncValidators=e,this.submitted=!1,this.directives=[],this.form=null,this.ngSubmit=new a.EventEmitter}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations())}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return G(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){Q(this.directives,t)}addFormGroup(t){const e=this.form.get(t.path);z(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormGroup(t){}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){const e=this.form.get(t.path);z(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormArray(t){}getFormArray(t){return this.form.get(t.path)}updateModel(t,e){this.form.get(t.path).setValue(e)}onSubmit(t){return this.submitted=!0,Z(this.form,this.directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_updateDomValue(){this.directives.forEach(t=>{const e=this.form.get(t.path);t.control!==e&&(function(t,e){e.valueAccessor.registerOnChange(()=>Y(e)),e.valueAccessor.registerOnTouched(()=>Y(e)),e._rawValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),e._rawAsyncValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),t&&t._clearChangeFns()}(t.control,t),e&&G(e,t),t.control=e)}),this.form._updateTreeValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(()=>this._updateDomValue()),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{}),this._oldForm=this.form}_updateValidators(){const t=U(this._validators);this.form.validator=T.compose([this.form.validator,t]);const e=W(this._asyncValidators);this.form.asyncValidator=T.composeAsync([this.form.asyncValidator,e])}_checkFormPresent(){this.form||D.missingFormException()}}class mt extends dt{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){vt(this._parent)&&D.groupParentException()}}class yt extends h{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}ngOnInit(){this._checkParentType(),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return V(this.name,this._parent)}get validator(){return U(this._validators)}get asyncValidator(){return W(this._asyncValidators)}_checkParentType(){vt(this._parent)&&D.arrayParentException()}}function vt(t){return!(t instanceof mt||t instanceof bt||t instanceof yt)}let xt=(()=>{class t extends p{constructor(t,e,n,r,i){super(),this._ngModelWarningConfig=i,this._added=!1,this.update=new a.EventEmitter,this._ngModelWarningSent=!1,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=J(this,r)}set isDisabled(t){D.disabledAttrWarning()}ngOnChanges(e){var n,r;this._added||this._setUpControl(),K(e,this.viewModel)&&("formControlName",n=t,this,r=this._ngModelWarningConfig,Object(a.isDevMode)()&&"never"!==r&&((null!==r&&"once"!==r||n._ngModelWarningSentOnce)&&("always"!==r||this._ngModelWarningSent)||(D.ngModelWarning("formControlName"),n._ngModelWarningSentOnce=!0,this._ngModelWarningSent=!0)),this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}get path(){return V(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return U(this._rawValidators)}get asyncValidator(){return W(this._rawAsyncValidators)}_checkParentType(){!(this._parent instanceof mt)&&this._parent instanceof dt?D.ngModelGroupException():this._parent instanceof mt||this._parent instanceof bt||this._parent instanceof yt||D.controlParentException()}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}return t._ngModelWarningSentOnce=!1,t})();class _t{get required(){return this._required}set required(t){this._required=null!=t&&!1!==t&&""+t!="false",this._onChange&&this._onChange()}validate(t){return this.required?T.required(t):null}registerOnValidatorChange(t){this._onChange=t}}class Tt{}class wt{group(t,e=null){const n=this._reduceControls(t);let a=null,r=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(a=null!=e.validators?e.validators:null,r=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(a=null!=e.validator?e.validator:null,r=null!=e.asyncValidator?e.asyncValidator:null)),new rt(n,{asyncValidators:r,updateOn:i,validators:a})}control(t,e,n){return new at(t,e,n)}array(t,e,n){const a=t.map(t=>this._createControl(t));return new it(a,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof at||t instanceof rt||t instanceof it?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}class Ot{static withConfig(t){return{ngModule:Ot,providers:[{provide:lt,useValue:t.warnOnDeprecatedNgFormSelector}]}}}class St{static withConfig(t){return{ngModule:St,providers:[{provide:pt,useValue:t.warnOnNgModelWithFormControl}]}}}},sA22:function(t,e,n){var a=n("pMcL"),r=Object.prototype,i=r.hasOwnProperty,s=r.toString,u=a?a.toStringTag:void 0;t.exports=function(t){var e=i.call(t,u),n=t[u];try{t[u]=void 0;var a=!0}catch(o){}var r=s.call(t);return a&&(e?t[u]=n:delete t[u]),r}},sEFX:function(t,e,n){"use strict";var a=n("AO7/"),r=n("9d/t");t.exports=a?{}.toString:function(){return"[object "+r(this)+"]"}},sEik:function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},sLuX:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("25BL"),i=n("uIqm");n("FSuO"),n("a0VL"),n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return u}));var s=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function u(t){return a["ɵvid"](0,[a["ɵqud"](402653184,1,{table:0}),(t()(),a["ɵeld"](1,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,r.b,r.a)),a["ɵdid"](2,2867200,[[1,4],["table",4]],0,i.a,[a.NgZone,a.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],toolHeader:[3,"toolHeader"],header:[4,"header"],footer:[5,"footer"],limit:[6,"limit"],autoReload:[7,"autoReload"],autoSave:[8,"autoSave"],customCss:[9,"customCss"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.tableData,n.columns,"flex",!1,!1,!1,0,n.autoReload,!1,n.customCss)}),null)}},sMBO:function(t,e,n){var a=n("g6v/"),r=n("m/L8").f,i=Function.prototype,s=i.toString,u=/^\s*function ([^ (]*)/;a&&!("name"in i)&&r(i,"name",{configurable:!0,get:function(){try{return s.call(this).match(u)[1]}catch(t){return""}}})},sVev:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>{function t(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return t.prototype=Object.create(Error.prototype),t})()},sb0X:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("s7LF"),i=n("oxzT"),s=n("LvDl");class u{constructor(t){this.elRef=t,this.type="submit",this.disabled=!1,this.submitAction=new a.EventEmitter,this.loading=!1,this.icons=i.a}ngOnInit(){this.form.statusChanges.subscribe(()=>{s.has(this.form.errors,"cdSubmitButton")&&(this.loading=!1,s.unset(this.form.errors,"cdSubmitButton"),this.form instanceof r.a&&this.form.updateValueAndValidity())})}submit(t){this.focusButton(),this.form instanceof r.l&&this.form.onSubmit(t),this.form.invalid?this.focusInvalid():(this.loading=!0,this.submitAction.emit())}focusButton(){this.elRef.nativeElement.offsetParent.querySelector(`button[type="${this.type}"]`).focus()}focusInvalid(){const t=this.elRef.nativeElement.offsetParent.querySelector("input.ng-invalid, select.ng-invalid");t&&t.focus()}}},sne2:function(t,e,n){"use strict";n.d(e,"c",(function(){return i})),n.d(e,"e",(function(){return s})),n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return o})),n.d(e,"d",(function(){return l}));var a=n("8Y7J"),r=n("GiVz");let i=(()=>{class t{}return t.organization="ceph",t.projectName="Ceph Dashboard",t.license="Free software (LGPL 2.1).",t})();var s=function(t){return t.CREATE="create",t.EDIT="edit",t.UPDATE="update",t.REMOVE="remove",t.DELETE="delete",t.ADD="add",t.COPY="copy",t.CLONE="clone",t.RECREATE="recreate",t.EXPIRE="expire",t}({}),u=function(t){return t.CREATE="Create",t.DELETE="Delete",t.ADD="Add",t.REMOVE="Remove",t.EDIT="Edit",t.CANCEL="Cancel",t.COPY="Copy",t.CLONE="Clone",t.UPDATE="Update",t.EVICT="Evict",t.SHOW="Show",t.RECREATE="Recreate",t.EXPIRE="Expire",t}({});let o=(()=>{class t{constructor(t){this.i18n=t,this.CREATE=this.i18n("Create"),this.DELETE=this.i18n("Delete"),this.ADD=this.i18n("Add"),this.SET=this.i18n("Set"),this.REMOVE=this.i18n("Remove"),this.UNSET=this.i18n("Unset"),this.EDIT=this.i18n("Edit"),this.UPDATE=this.i18n("Update"),this.CANCEL=this.i18n("Cancel"),this.CLONE=this.i18n("Clone"),this.COPY=this.i18n("Copy"),this.DEEP_SCRUB=this.i18n("Deep Scrub"),this.DESTROY=this.i18n("Destroy"),this.EVICT=this.i18n("Evict"),this.FLATTEN=this.i18n("Flatten"),this.MARK_DOWN=this.i18n("Mark Down"),this.MARK_IN=this.i18n("Mark In"),this.MARK_LOST=this.i18n("Mark Lost"),this.MARK_OUT=this.i18n("Mark Out"),this.PROTECT=this.i18n("Protect"),this.PURGE=this.i18n("Purge"),this.RENAME=this.i18n("Rename"),this.RESTORE=this.i18n("Restore"),this.REWEIGHT=this.i18n("Reweight"),this.ROLLBACK=this.i18n("Rollback"),this.SCRUB=this.i18n("Scrub"),this.SHOW=this.i18n("Show"),this.TRASH=this.i18n("Move to Trash"),this.UNPROTECT=this.i18n("Unprotect"),this.CHANGE=this.i18n("Change"),this.FLAGS=this.i18n("Flags"),this.RECREATE=this.i18n("Recreate"),this.EXPIRE=this.i18n("Expire")}}return t.ngInjectableDef=a["ɵɵdefineInjectable"]({factory:function(){return new t(a["ɵɵinject"](r.a))},token:t,providedIn:"root"}),t})(),l=(()=>{class t{constructor(t){this.i18n=t,this.CREATED=this.i18n("Created"),this.DELETED=this.i18n("Deleted"),this.ADDED=this.i18n("Added"),this.REMOVED=this.i18n("Removed"),this.EDITED=this.i18n("Edited"),this.CANCELED=this.i18n("Canceled"),this.CLONED=this.i18n("Cloned"),this.COPIED=this.i18n("Copied"),this.DEEP_SCRUBBED=this.i18n("Deep Scrubbed"),this.DESTROYED=this.i18n("Destroyed"),this.FLATTENED=this.i18n("Flattened"),this.MARKED_DOWN=this.i18n("Marked Down"),this.MARKED_IN=this.i18n("Marked In"),this.MARKED_LOST=this.i18n("Marked Lost"),this.MARKED_OUT=this.i18n("Marked Out"),this.PROTECTED=this.i18n("Protected"),this.PURGED=this.i18n("Purged"),this.RENAMED=this.i18n("Renamed"),this.RESTORED=this.i18n("Restored"),this.REWEIGHTED=this.i18n("Reweighted"),this.ROLLED_BACK=this.i18n("Rolled back"),this.SCRUBBED=this.i18n("Scrubbed"),this.SHOWED=this.i18n("Showed"),this.TRASHED=this.i18n("Moved to Trash"),this.UNPROTECTED=this.i18n("Unprotected"),this.CHANGE=this.i18n("Change"),this.RECREATED=this.i18n("Recreated"),this.EXPIRED=this.i18n("Expired")}}return t.ngInjectableDef=a["ɵɵdefineInjectable"]({factory:function(){return new t(a["ɵɵinject"](r.a))},token:t,providedIn:"root"}),t})()},sp3z:function(t,e,n){!function(t){"use strict";t.defineLocale("lo",{months:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),monthsShort:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),weekdays:"ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysShort:"ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysMin:"ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"ວັນdddd D MMMM YYYY HH:mm"},meridiemParse:/ຕອນເຊົ້າ|ຕອນແລງ/,isPM:function(t){return"ຕອນແລງ"===t},meridiem:function(t,e,n){return t<12?"ຕອນເຊົ້າ":"ຕອນແລງ"},calendar:{sameDay:"[ມື້ນີ້ເວລາ] LT",nextDay:"[ມື້ອື່ນເວລາ] LT",nextWeek:"[ວັນ]dddd[ໜ້າເວລາ] LT",lastDay:"[ມື້ວານນີ້ເວລາ] LT",lastWeek:"[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT",sameElse:"L"},relativeTime:{future:"ອີກ %s",past:"%sຜ່ານມາ",s:"ບໍ່ເທົ່າໃດວິນາທີ",ss:"%d ວິນາທີ",m:"1 ນາທີ",mm:"%d ນາທີ",h:"1 ຊົ່ວໂມງ",hh:"%d ຊົ່ວໂມງ",d:"1 ມື້",dd:"%d ມື້",M:"1 ເດືອນ",MM:"%d ເດືອນ",y:"1 ປີ",yy:"%d ປີ"},dayOfMonthOrdinalParse:/(ທີ່)\d{1,2}/,ordinal:function(t){return"ທີ່"+t}})}(n("wd/R"))},"t/zF":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e){this.name=t,this.metadata=e}}},tAZD:function(t,e,n){var a,r,i;!function(s){if("object"==typeof t.exports){var u=s(0,e);void 0!==u&&(t.exports=u)}else r=[n,e],void 0===(i="function"==typeof(a=s)?a.apply(e,r):a)||(t.exports=i)}((function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=void 0;e.default=["en",[["a","p"],["AM","PM"],n],[["AM","PM"],n,n],[["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"]],n,[["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"]],n,[["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}",n,"{1} 'at' {0}",n],[".",",",";","%","+","-","E","×","‰","∞","NaN",":"],["#,##0.###","#,##0%","¤#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}]}))},tGlX:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return e?r[n][0]:r[n][1]}t.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:e,mm:"%d Minuten",h:e,hh:"%d Stunden",d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},tT3J:function(t,e,n){!function(t){"use strict";t.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",ss:"%d imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}(n("wd/R"))},tUCv:function(t,e,n){!function(t){"use strict";t.defineLocale("jv",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),weekdays:"Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),weekdaysShort:"Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/enjing|siyang|sonten|ndalu/,meridiemHour:function(t,e){return 12===t&&(t=0),"enjing"===e?t:"siyang"===e?t>=11?t:t+12:"sonten"===e||"ndalu"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"enjing":t<15?"siyang":t<19?"sonten":"ndalu"},calendar:{sameDay:"[Dinten puniko pukul] LT",nextDay:"[Mbenjang pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kala wingi pukul] LT",lastWeek:"dddd [kepengker pukul] LT",sameElse:"L"},relativeTime:{future:"wonten ing %s",past:"%s ingkang kepengker",s:"sawetawis detik",ss:"%d detik",m:"setunggal menit",mm:"%d menit",h:"setunggal jam",hh:"%d jam",d:"sedinten",dd:"%d dinten",M:"sewulan",MM:"%d wulan",y:"setaun",yy:"%d taun"},week:{dow:1,doy:7}})}(n("wd/R"))},tiKp:function(t,e,n){var a=n("2oRo"),r=n("VpIT"),i=n("UTVS"),s=n("kOOl"),u=n("STAE"),o=n("/b8u"),l=r("wks"),d=a.Symbol,c=o?d:d&&d.withoutSetter||s;t.exports=function(t){return i(l,t)||(l[t]=u&&i(d,t)?d[t]:c("Symbol."+t)),l[t]}},tpUd:function(t,e,n){var a=n("CslI");t.exports=function(t){return a(t)?void 0:t}},tycR:function(t,e,n){var a=n("A2ZE"),r=n("RK3t"),i=n("ewvW"),s=n("UMSQ"),u=n("ZfDv"),o=[].push,l=function(t){var e=1==t,n=2==t,l=3==t,d=4==t,c=6==t,f=5==t||c;return function(h,g,p,b){for(var m,y,v=i(h),x=r(v),_=a(g,p,3),T=s(x.length),w=0,O=b||u,S=e?O(h,T):n?O(h,0):void 0;T>w;w++)if((f||w in x)&&(y=_(m=x[w],w,v),t))if(e)S[w]=y;else if(y)switch(t){case 3:return!0;case 5:return m;case 6:return w;case 2:o.call(S,m)}else if(d)return!1;return c?-1:l||d?d:S}};t.exports={forEach:l(0),map:l(1),filter:l(2),some:l(3),every:l(4),find:l(5),findIndex:l(6)}},tz6c:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("2Vo4"),r=n("pLZG"),i=n("lJxs"),s=n("SxV6"),u=n("+0ag"),o=n("mSOc"),l=n("8Y7J");let d=(()=>{class t{constructor(t,e){this.summaryservice=t,this.cephReleaseNamePipe=e,this.releaseDataSource=new a.a(null),this.releaseData$=this.releaseDataSource.asObservable(),this.summaryservice.subscribeOnce(t=>{const e=this.cephReleaseNamePipe.transform(t.version);this.releaseDataSource.next(e)})}urlGenerator(t,e){const n=`http://docs.ceph.com/docs/${t}/`;return{iscsi:n+"mgr/dashboard/#enabling-iscsi-management",prometheus:n+"mgr/dashboard/#enabling-prometheus-alerting","nfs-ganesha":n+"mgr/dashboard/#configuring-nfs-ganesha-in-the-dashboard","rgw-nfs":n+"radosgw/nfs",rgw:n+"mgr/dashboard/#enabling-the-object-gateway-management-frontend",dashboard:n+"mgr/dashboard",grafana:n+"mgr/dashboard/#enabling-the-embedding-of-grafana-dashboards",orch:n+"mgr/orchestrator",pgs:"http://ceph.com/pgcalc"}[e]}subscribeOnce(t,e,n){return this.releaseData$.pipe(Object(r.a)(t=>!!t),Object(i.a)(e=>this.urlGenerator(e,t)),Object(s.a)()).subscribe(e,n)}}return t.ngInjectableDef=l["ɵɵdefineInjectable"]({factory:function(){return new t(l["ɵɵinject"](o.a),l["ɵɵinject"](u.a))},token:t,providedIn:"root"}),t})()},u3GI:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return e?r[n][0]:r[n][1]}t.defineLocale("de-ch",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:e,mm:"%d Minuten",h:e,hh:"%d Stunden",d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},uEye:function(t,e,n){!function(t){"use strict";t.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s sidan",s:"nokre sekund",ss:"%d sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},uIqm:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("w9WL"),i=n("LvDl"),s=n("PqYM"),u=n("HDdC"),o=n("oxzT"),l=n("x38r");class d{constructor(t){this.errorConfig={resetData:!0,displayError:!0},this.error=t}}var c=n("vCyI");n.d(e,"a",(function(){return f}));class f{constructor(t,e){this.ngZone=t,this.cdRef=e,this.columnMode="flex",this.onlyActionHeader=!1,this.toolHeader=!0,this.searchField=!0,this.header=!0,this.footer=!0,this.limit=10,this.hasDetails=!1,this.autoReload=5e3,this.identifier="id",this.forceIdentifier=!1,this.selectionType=void 0,this.updateSelectionOnRefresh="onChange",this.updateExpandedOnRefresh="onChange",this.autoSave=!0,this.searchableObjects=!1,this.extraFilterableColumns=[],this.fetchData=new a.EventEmitter,this.updateSelection=new a.EventEmitter,this.setExpandedRow=new a.EventEmitter,this.columnFiltersChanged=new a.EventEmitter,this.selection=new c.a,this.expanded=void 0,this.icons=o.a,this.cellTemplates={},this.search="",this.rows=[],this.loadingIndicator=!0,this.loadingError=!1,this.paginationClasses={pagerLeftArrow:o.a.leftArrowDouble,pagerRightArrow:o.a.rightArrowDouble,pagerPrevious:o.a.leftArrow,pagerNext:o.a.rightArrow},this.userConfig={},this.localStorage=window.localStorage,this.updating=!1,this.columnFilters=[]}get columnFiltered(){return i.some(this.columnFilters,t=>void 0!==t.value)}static prepareSearch(t){return(t=t.toLowerCase().replace(/,/g,"")).match(/['"][^'"]+['"]/)&&(t=t.replace(/['"][^'"]+['"]/g,t=>t.replace(/(['"])([^'"]+)(['"])/g,"$2").replace(/ /g,"+"))),t.split(" ").filter(t=>t)}ngOnInit(){if(this.table.element.addEventListener("mouseenter",t=>t.stopPropagation(),!0),this._addTemplates(),!this.sorts){const t=-1!==i.findIndex(this.columns,["prop",this.identifier]);this.sorts=this.createSortingDefinition(t?this.identifier:this.columns[0].prop+""),t||this.forceIdentifier||(this.identifier=this.columns[0].prop+"")}this.initUserConfig(),this.columns.forEach(t=>{t.cellTransformation&&(t.cellTemplate=this.cellTemplates[t.cellTransformation]),t.flexGrow||(t.flexGrow=t.prop+""===this.identifier?1:2),t.resizeable||(t.resizeable=!1)}),this.initExpandCollapseColumn(),this.initCheckboxColumn(),this.filterHiddenColumns(),this.initColumnFilters(),this.updateColumnFilterOptions(),this.fetchData.observers.length>0&&(this.loadingIndicator=!0),i.isInteger(this.autoReload)&&this.autoReload>0?this.ngZone.runOutsideAngular(()=>{this.reloadSubscriber=Object(s.a)(0,this.autoReload).subscribe(()=>{this.ngZone.run(()=>this.reloadData())})}):this.autoReload?this.useData():this.reloadData()}initUserConfig(){this.autoSave&&(this.tableName=this._calculateUniqueTableName(this.columns),this._loadUserConfig(),this._initUserConfigAutoSave()),this.userConfig.limit||(this.userConfig.limit=this.limit),this.userConfig.sorts||(this.userConfig.sorts=this.sorts),this.userConfig.columns?this.columns.forEach((t,e)=>{t.isHidden=this.userConfig.columns[e].isHidden}):this.updateUserColumns()}_calculateUniqueTableName(t){const e=t=>{if(!i.isString(t))return 0;let e=0;for(let n=0;n<t.length;n++)e+=t.charCodeAt(n)*n;return e};return t.reduce((t,n,a)=>(e(n.prop)+e(n.name))*(a+1)+t,0).toString()}_loadUserConfig(){const t=this.localStorage.getItem(this.tableName);t&&(this.userConfig=JSON.parse(t))}_initUserConfigAutoSave(){const t=u.a.create(this._initUserConfigProxy.bind(this));this.saveSubscriber=t.subscribe(this._saveUserConfig.bind(this))}_initUserConfigProxy(t){this.userConfig=new Proxy(this.userConfig,{set:(e,n,a)=>(e[n]=a,t.next(e),!0)})}_saveUserConfig(t){this.localStorage.setItem(this.tableName,JSON.stringify(t))}updateUserColumns(){this.userConfig.columns=this.columns.map(t=>({prop:t.prop,name:t.name,isHidden:!!t.isHidden}))}initCheckboxColumn(){"multiClick"===this.selectionType&&this.columns.unshift({prop:void 0,resizeable:!1,sortable:!1,draggable:!1,checkboxable:!0,canAutoResize:!1,cellClass:"cd-datatable-checkbox",width:30})}initExpandCollapseColumn(){this.hasDetails&&this.columns.unshift({prop:void 0,resizeable:!1,sortable:!1,draggable:!1,isHidden:!1,canAutoResize:!1,cellClass:"cd-datatable-expand-collapse",width:40,cellTemplate:this.rowDetailsTpl})}filterHiddenColumns(){this.tableColumns=this.columns.filter(t=>!t.isHidden)}initColumnFilters(){let t=i.filter(this.columns,{filterable:!0});t=[...t,...this.extraFilterableColumns],this.columnFilters=t.map(t=>({column:t,options:[],value:t.filterInitValue?this.createColumnFilterOption(t.filterInitValue,t.pipe):void 0})),this.selectedFilter=i.first(this.columnFilters)}createColumnFilterOption(t,e){return{raw:i.toString(t),formatted:e?e.transform(t):i.toString(t)}}updateColumnFilterOptions(){this.columnFilters.forEach(t=>{let e=[];if(i.isUndefined(t.column.filterOptions)){const n=i.filter(i.map(this.data,t.column.prop),t=>i.isString(t)&&""!==t||i.isBoolean(t)||i.isFinite(t)||i.isDate(t));e=i.sortedUniq(n.sort())}else e=t.column.filterOptions;const n=e.map(e=>this.createColumnFilterOption(e,t.column.pipe));t.value&&i.isUndefined(i.find(n,{raw:t.value.raw}))&&(t.value=void 0),t.options=n})}onSelectFilter(t){this.selectedFilter=t}onChangeFilter(t,e){t.value=i.isEqual(t.value,e)?void 0:e,this.updateFilter()}doColumnFiltering(){const t=[];let e=[...this.data],n=[];return this.columnFilters.forEach(a=>{if(void 0===a.value)return;t.push({name:a.column.name,prop:a.column.prop,value:a.value});const s=i.partition(e,t=>{const e=Object(r.C)(a.column.prop)(t,a.column.prop);return i.isUndefined(a.column.filterPredicate)?""+e===a.value.raw:a.column.filterPredicate(t,a.value.raw)});e=s[0],n=[...n,...s[1]]}),this.columnFiltersChanged.emit({filters:t,data:e,dataOut:n}),i.forEach(this.selection.selected,t=>{void 0===i.find(e,{[this.identifier]:t[this.identifier]})&&(this.selection=new c.a,this.onSelect(this.selection))}),e}ngOnDestroy(){this.reloadSubscriber&&this.reloadSubscriber.unsubscribe(),this.saveSubscriber&&this.saveSubscriber.unsubscribe()}ngAfterContentChecked(){this.table&&this.table.element.clientWidth!==this.currentWidth&&(this.currentWidth=this.table.element.clientWidth,this.table.recalculate(),i.get(this.table,"cd").markForCheck())}_addTemplates(){this.cellTemplates.bold=this.tableCellBoldTpl,this.cellTemplates.checkIcon=this.checkIconTpl,this.cellTemplates.sparkline=this.sparklineTpl,this.cellTemplates.routerLink=this.routerLinkTpl,this.cellTemplates.perSecond=this.perSecondTpl,this.cellTemplates.executing=this.executingTpl,this.cellTemplates.classAdding=this.classAddingTpl,this.cellTemplates.badge=this.badgeTpl,this.cellTemplates.map=this.mapTpl,this.cellTemplates.truncate=this.truncateTpl}useCustomClass(t){if(!this.customCss)throw new Error("Custom classes are not set!");const e=Object.keys(this.customCss),n=Object.values(this.customCss).map((n,a)=>(i.isFunction(n)&&n(t)||n===t)&&e[a]).filter(t=>t).join(" ");return i.isEmpty(n)?void 0:n}ngOnChanges(t){t.data&&t.data.currentValue&&this.useData()}setLimit(t){const e=parseInt(t.target.value,10);e>0&&(this.userConfig.limit=e)}reloadData(){if(!this.updating){this.loadingError=!1;const t=new d(()=>{this.loadingError=t.errorConfig.displayError,t.errorConfig.resetData&&(this.data=[]),this.useData()});this.fetchData.emit(t),this.updating=!0}}refreshBtn(){this.loadingIndicator=!0,this.reloadData()}rowIdentity(){return t=>{const e=t[this.identifier];if(i.isUndefined(e))throw new Error(`Wrong identifier "${this.identifier}" -> "${e}"`);return e}}useData(){this.data&&(this.updateColumnFilterOptions(),this.updateFilter(),this.reset(),this.updateSelected(),this.updateExpanded())}reset(){this.loadingIndicator=!1,this.updating=!1}updateSelected(){if("never"===this.updateSelectionOnRefresh)return;const t=[];this.selection.selected.forEach(e=>{for(const n of this.data)e[this.identifier]===n[this.identifier]&&t.push(n)}),"onChange"===this.updateSelectionOnRefresh&&i.isEqual(this.selection.selected,t)||(this.selection.selected=t,this.onSelect(this.selection))}updateExpanded(){if(i.isUndefined(this.expanded)||"never"===this.updateExpandedOnRefresh)return;const t=this.expanded[this.identifier],e=i.find(this.data,e=>t===e[this.identifier]);"onChange"===this.updateExpandedOnRefresh&&i.isEqual(this.expanded,e)||(this.expanded=e,this.setExpandedRow.emit(e))}onSelect(t){i.has(t,"selected")&&(this.selection.selected=t.selected),this.updateSelection.emit(i.clone(this.selection))}toggleColumn(t){const e=t.target.name,n=!t.target.checked;n&&1===this.tableColumns.length?t.target.checked=!0:(i.find(this.columns,t=>t.prop===e).isHidden=n,this.updateColumns())}updateColumns(){this.updateUserColumns(),this.filterHiddenColumns();const t=this.userConfig.sorts[0].prop;i.find(this.tableColumns,e=>e.prop===t)||(this.userConfig.sorts=this.createSortingDefinition(this.tableColumns[0].prop)),this.table.recalculate(),this.cdRef.detectChanges()}createSortingDefinition(t){return[{prop:t,dir:r.A.asc}]}changeSorting({sorts:t}){this.userConfig.sorts=t}onClearSearch(){this.search="",this.updateFilter()}onClearFilters(){this.columnFilters.forEach(t=>{t.value=void 0}),this.selectedFilter=i.first(this.columnFilters),this.updateFilter()}updateFilter(){let t=0!==this.columnFilters.length?this.doColumnFiltering():this.data;if(this.search.length>0&&t){const e=this.columns.filter(t=>t.cellTransformation!==l.a.sparkline);t=this.subSearch(t,f.prepareSearch(this.search),e),this.table.offset=0}this.rows=t}subSearch(t,e,n){if(0===e.length||0===t.length)return t;const a=e.pop().replace(/\+/g," ").split(":"),r=[...n];return 2===a.length&&(n=r.filter(t=>-1!==t.name.toLowerCase().indexOf(a[0]))),t=this.basicDataSearch(i.last(a),t,n),this.subSearch(t,e,r)}basicDataSearch(t,e,n){return 0===t.length?e:e.filter(e=>n.filter(n=>{let a=i.get(e,n.prop);if(i.isUndefined(n.pipe)||(a=n.pipe.transform(a)),i.isUndefined(a)||i.isNull(a))return!1;if(i.isArray(a)?a=a.join(" "):(i.isNumber(a)||i.isBoolean(a))&&(a=a.toString()),i.isObjectLike(a)){if(!this.searchableObjects)return!1;a=JSON.stringify(a)}return-1!==a.toLowerCase().indexOf(t)}).length>0)}getRowClass(){return()=>({clickable:!i.isUndefined(this.selectionType)})}toggleExpandRow(t,e,n){n.stopPropagation(),e?(this.expanded=void 0,this.setExpandedRow.emit(void 0)):(this.expanded=t,this.table.rowDetail.collapseAllRows(),this.setExpandedRow.emit(t)),this.table.rowDetail.toggleExpandRow(t)}}},uNpg:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Component)({selector:"tree-node-checkbox",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <input\n        class="tree-node-checkbox"\n        type="checkbox"\n        (click)="node.mouseAction(\'checkboxClick\', $event)"\n        [checked]="node.isSelected"\n        [indeterminate]="node.isPartiallySelected"\n      />\n    </ng-container>\n  '})],t)}()},uPDw:function(t,e,n){var a=n("oRml"),r=n("0nKi"),i=n("L0Z1"),s=i&&i.isTypedArray,u=s?r(s):a;t.exports=u},uXwI:function(t,e,n){!function(t){"use strict";var e={ss:"sekundes_sekundēm_sekunde_sekundes".split("_"),m:"minūtes_minūtēm_minūte_minūtes".split("_"),mm:"minūtes_minūtēm_minūte_minūtes".split("_"),h:"stundas_stundām_stunda_stundas".split("_"),hh:"stundas_stundām_stunda_stundas".split("_"),d:"dienas_dienām_diena_dienas".split("_"),dd:"dienas_dienām_diena_dienas".split("_"),M:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),MM:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")};function n(t,e,n){return n?e%10==1&&e%100!=11?t[2]:t[3]:e%10==1&&e%100!=11?t[0]:t[1]}function a(t,a,r){return t+" "+n(e[r],t,a)}function r(t,a,r){return n(e[r],t,a)}t.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"pēc %s",past:"pirms %s",s:function(t,e){return e?"dažas sekundes":"dažām sekundēm"},ss:a,m:r,mm:a,h:r,hh:a,d:r,dd:a,M:r,MM:a,y:r,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},uYzU:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(){}transform(t){switch(t){case"user:rbd":return"user:rbd (tcmu-runner)";default:return t}}}},ufoC:function(t,e,n){"use strict";var a=function(t){return t.auth="Login",t.cephfs="CephFS",t.rbd="RBD",t.pool="Pool",t.osd="OSD",t.role="Role",t.user="User",t}({}),r=n("jVDg"),i=n("8Y7J"),s=n("GiVz");n.d(e,"a",(function(){return l}));class u{constructor(t,e,n){this.running=t,this.failure=e,this.success=n}}class o{failure(t){return this.i18n("Failed to {{failure}} {{metadata}}",{failure:this.operation.failure,metadata:this.involves(t)})}running(t){return`${this.operation.running} ${this.involves(t)}`}success(t){return`${this.operation.success} ${this.involves(t)}`}constructor(t,e,n,a){this.i18n=t,this.operation=e,this.involves=n,this.errors=a||(()=>({}))}}let l=(()=>{class t{constructor(t){this.i18n=t,this.defaultMessage=this.newTaskMessage(new u(this.i18n("Executing"),this.i18n("execute"),this.i18n("Executed")),t=>t&&(a[t.component]||t.component)||this.i18n("unknown task"),()=>({})),this.commonOperations={create:new u(this.i18n("Creating"),this.i18n("create"),this.i18n("Created")),update:new u(this.i18n("Updating"),this.i18n("update"),this.i18n("Updated")),delete:new u(this.i18n("Deleting"),this.i18n("delete"),this.i18n("Deleted")),add:new u(this.i18n("Adding"),this.i18n("add"),this.i18n("Added")),remove:new u(this.i18n("Removing"),this.i18n("remove"),this.i18n("Removed")),import:new u(this.i18n("Importing"),this.i18n("import"),this.i18n("Imported"))},this.rbd={default:t=>this.i18n("RBD '{{id}}'",{id:""+t.image_spec}),create:t=>{const e=new r.a(t.pool_name,t.namespace,t.image_name).toString();return this.i18n("RBD '{{id}}'",{id:e})},child:t=>{const e=new r.a(t.child_pool_name,t.child_namespace,t.child_image_name).toString();return this.i18n("RBD '{{id}}'",{id:e})},destination:t=>{const e=new r.a(t.dest_pool_name,t.dest_namespace,t.dest_image_name).toString();return this.i18n("RBD '{{id}}'",{id:e})},snapshot:t=>this.i18n("RBD snapshot '{{id}}'",{id:`${t.image_spec}@${t.snapshot_name}`})},this.rbd_mirroring={site_name:()=>this.i18n("mirroring site name"),bootstrap:()=>this.i18n("bootstrap token"),pool:t=>this.i18n("mirror mode for pool '{{id}}'",{id:""+t.pool_name}),pool_peer:t=>this.i18n("mirror peer for pool '{{id}}'",{id:""+t.pool_name})},this.grafana={update_dashboards:()=>this.i18n("all dashboards")},this.messages={"host/create":this.newTaskMessage(this.commonOperations.create,t=>this.host(t)),"host/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.host(t)),"osd/create":this.newTaskMessage(this.commonOperations.create,t=>this.i18n("OSDs (DriveGroups: {{tracking_id}})",{tracking_id:t.tracking_id})),"osd/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.osd(t)),"pool/create":this.newTaskMessage(this.commonOperations.create,t=>this.pool(t),t=>({17:this.i18n("Name is already used by {{pool_name}}.",{pool_name:this.pool(t)})})),"pool/edit":this.newTaskMessage(this.commonOperations.update,t=>this.pool(t),t=>({17:this.i18n("Name is already used by {{pool_name}}.",{pool_name:this.pool(t)})})),"pool/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.pool(t)),"ecp/create":this.newTaskMessage(this.commonOperations.create,t=>this.ecp(t),t=>({17:this.i18n("Name is already used by {{name}}.",{name:this.ecp(t)})})),"ecp/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.ecp(t)),"crushRule/create":this.newTaskMessage(this.commonOperations.create,t=>this.crushRule(t),t=>({17:this.i18n("Name is already used by {{name}}.",{name:this.crushRule(t)})})),"crushRule/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.crushRule(t)),"rbd/create":this.newTaskMessage(this.commonOperations.create,this.rbd.create,t=>({17:this.i18n("Name is already used by {{rbd_name}}.",{rbd_name:this.rbd.create(t)})})),"rbd/edit":this.newTaskMessage(this.commonOperations.update,this.rbd.default,t=>({17:this.i18n("Name is already used by {{rbd_name}}.",{rbd_name:this.rbd.default(t)})})),"rbd/delete":this.newTaskMessage(this.commonOperations.delete,this.rbd.default,t=>({16:this.i18n("{{rbd_name}} is busy.",{rbd_name:this.rbd.default(t)}),39:this.i18n("{{rbd_name}} contains snapshots.",{rbd_name:this.rbd.default(t)})})),"rbd/clone":this.newTaskMessage(new u(this.i18n("Cloning"),this.i18n("clone"),this.i18n("Cloned")),this.rbd.child,t=>({17:this.i18n("Name is already used by {{rbd_name}}.",{rbd_name:this.rbd.child(t)}),22:this.i18n("Snapshot of {{rbd_name}} must be protected.",{rbd_name:this.rbd.child(t)})})),"rbd/copy":this.newTaskMessage(new u(this.i18n("Copying"),this.i18n("copy"),this.i18n("Copied")),this.rbd.destination,t=>({17:this.i18n("Name is already used by {{rbd_name}}.",{rbd_name:this.rbd.destination(t)})})),"rbd/flatten":this.newTaskMessage(new u(this.i18n("Flattening"),this.i18n("flatten"),this.i18n("Flattened")),this.rbd.default),"rbd/snap/create":this.newTaskMessage(this.commonOperations.create,this.rbd.snapshot,t=>({17:this.i18n("Name is already used by {{snap_name}}.",{snap_name:this.rbd.snapshot(t)})})),"rbd/snap/edit":this.newTaskMessage(this.commonOperations.update,this.rbd.snapshot,t=>({16:this.i18n("Cannot unprotect {{snap_name}} because it contains child images.",{snap_name:this.rbd.snapshot(t)})})),"rbd/snap/delete":this.newTaskMessage(this.commonOperations.delete,this.rbd.snapshot,t=>({16:this.i18n("Cannot delete {{snap_name}} because it's protected.",{snap_name:this.rbd.snapshot(t)})})),"rbd/snap/rollback":this.newTaskMessage(new u(this.i18n("Rolling back"),this.i18n("rollback"),this.i18n("Rolled back")),this.rbd.snapshot),"rbd/trash/move":this.newTaskMessage(new u(this.i18n("Moving"),this.i18n("move"),this.i18n("Moved")),t=>this.i18n("image '{{id}}' to trash",{id:t.image_spec}),()=>({2:this.i18n("Could not find image.")})),"rbd/trash/restore":this.newTaskMessage(new u(this.i18n("Restoring"),this.i18n("restore"),this.i18n("Restored")),t=>this.i18n("image '{{id}}' into '{{new_id}}'",{id:t.image_id_spec,new_id:t.new_image_name}),t=>({17:this.i18n("Image name '{{id}}' is already in use.",{id:t.new_image_name})})),"rbd/trash/remove":this.newTaskMessage(new u(this.i18n("Deleting"),this.i18n("delete"),this.i18n("Deleted")),t=>this.i18n("image '{{id}}'",{id:""+t.image_id_spec})),"rbd/trash/purge":this.newTaskMessage(new u(this.i18n("Purging"),this.i18n("purge"),this.i18n("Purged")),t=>{let e=this.i18n("all pools");return t.pool_name&&(e=`'${t.pool_name}'`),this.i18n("images from {{message}}",{message:e})}),"rbd/mirroring/site_name/edit":this.newTaskMessage(this.commonOperations.update,this.rbd_mirroring.site_name,()=>({})),"rbd/mirroring/bootstrap/create":this.newTaskMessage(this.commonOperations.create,this.rbd_mirroring.bootstrap,()=>({})),"rbd/mirroring/bootstrap/import":this.newTaskMessage(this.commonOperations.import,this.rbd_mirroring.bootstrap,()=>({})),"rbd/mirroring/pool/edit":this.newTaskMessage(this.commonOperations.update,this.rbd_mirroring.pool,()=>({16:this.i18n("Cannot disable mirroring because it contains a peer.")})),"rbd/mirroring/peer/add":this.newTaskMessage(this.commonOperations.create,this.rbd_mirroring.pool_peer,()=>({})),"rbd/mirroring/peer/edit":this.newTaskMessage(this.commonOperations.update,this.rbd_mirroring.pool_peer,()=>({})),"rbd/mirroring/peer/delete":this.newTaskMessage(this.commonOperations.delete,this.rbd_mirroring.pool_peer,()=>({})),"iscsi/target/create":this.newTaskMessage(this.commonOperations.create,t=>this.iscsiTarget(t)),"iscsi/target/edit":this.newTaskMessage(this.commonOperations.update,t=>this.iscsiTarget(t)),"iscsi/target/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.iscsiTarget(t)),"nfs/create":this.newTaskMessage(this.commonOperations.create,t=>this.nfs(t)),"nfs/edit":this.newTaskMessage(this.commonOperations.update,t=>this.nfs(t)),"nfs/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.nfs(t)),"grafana/dashboards/update":this.newTaskMessage(this.commonOperations.update,this.grafana.update_dashboards,()=>({})),"orchestrator/identify_device":this.newTaskMessage(new u(this.i18n("Identifying"),this.i18n("identify"),this.i18n("Identified")),t=>this.i18n("device '{{device}}' on host '{{hostname}}'",t)),"service/create":this.newTaskMessage(this.commonOperations.create,t=>this.service(t)),"service/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.service(t))}}newTaskMessage(t,e,n){return new o(this.i18n,t,e,n)}host(t){return this.i18n("host '{{hostname}}'",{hostname:t.hostname})}osd(t){return this.i18n("OSD '{{svc_id}}'",{svc_id:t.svc_id})}pool(t){return this.i18n("pool '{{pool_name}}'",{pool_name:t.pool_name})}ecp(t){return this.i18n("erasure code profile '{{name}}'",{name:t.name})}crushRule(t){return this.i18n("crush rule '{{name}}'",{name:t.name})}iscsiTarget(t){return this.i18n("target '{{target_iqn}}'",{target_iqn:t.target_iqn})}nfs(t){return this.i18n("NFS {{nfs_id}}",{nfs_id:`'${t.cluster_id}:${t.export_id?t.export_id:t.path}'`})}service(t){return this.i18n("Service '{{service_name}}'",{service_name:t.service_name})}_getTaskTitle(t){return t.name&&t.name.startsWith("progress/")?this.newTaskMessage(new u(t.name.replace("progress/",""),"",t.name.replace("progress/","")),t=>""):this.messages[t.name]||this.defaultMessage}getSuccessTitle(t){return this._getTaskTitle(t).success(t.metadata)}getErrorMessage(t){return this._getTaskTitle(t).errors(t.metadata)[t.exception.code]||t.exception.detail}getErrorTitle(t){return this._getTaskTitle(t).failure(t.metadata)}getRunningTitle(t){return this._getTaskTitle(t).running(t.metadata)}getRunningText(t){return this._getTaskTitle(t).operation.running}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](s.a))},token:t,providedIn:"root"}),t})()},uy3s:function(t,e,n){var a=n("+GvH"),r=n("x3F9");t.exports=function t(e,n,i,s,u){return e===n||(null==e||null==n||!r(e)&&!r(n)?e!=e&&n!=n:a(e,n,i,s,t,u))}},uy83:function(t,e,n){var a=n("0Dky");t.exports=!a((function(){return Object.isExtensible(Object.preventExtensions({}))}))},uyHG:function(t,e){var n,a=/^\[object .+?Constructor\]$/,r="object"==typeof global&&global&&global.Object===Object&&global,i="object"==typeof self&&self&&self.Object===Object&&self,s=r||i||Function("return this")(),u=Array.prototype,o=Function.prototype,l=Object.prototype,d=s["__core-js_shared__"],c=(n=/[^.]+$/.exec(d&&d.keys&&d.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",f=o.toString,h=l.hasOwnProperty,g=l.toString,p=RegExp("^"+f.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),b=u.splice,m=O(s,"Map"),y=O(Object,"create");function v(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function x(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function _(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function T(t,e){for(var n,a,r=t.length;r--;)if((n=t[r][0])===(a=e)||n!=n&&a!=a)return r;return-1}function w(t,e){var n,a,r=t.__data__;return("string"==(a=typeof(n=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function O(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return function(t){return!(!I(t)||(e=t,c&&c in e))&&(function(t){var e=I(t)?g.call(t):"";return"[object Function]"==e||"[object GeneratorFunction]"==e}(t)||function(t){var e=!1;if(null!=t&&"function"!=typeof t.toString)try{e=!!(t+"")}catch(n){}return e}(t)?p:a).test(function(t){if(null!=t){try{return f.call(t)}catch(e){}try{return t+""}catch(e){}}return""}(t));var e}(n)?n:void 0}function S(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var a=arguments,r=e?e.apply(this,a):a[0],i=n.cache;if(i.has(r))return i.get(r);var s=t.apply(this,a);return n.cache=i.set(r,s),s};return n.cache=new(S.Cache||_),n}function I(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}v.prototype.clear=function(){this.__data__=y?y(null):{}},v.prototype.delete=function(t){return this.has(t)&&delete this.__data__[t]},v.prototype.get=function(t){var e=this.__data__;if(y){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return h.call(e,t)?e[t]:void 0},v.prototype.has=function(t){var e=this.__data__;return y?void 0!==e[t]:h.call(e,t)},v.prototype.set=function(t,e){return this.__data__[t]=y&&void 0===e?"__lodash_hash_undefined__":e,this},x.prototype.clear=function(){this.__data__=[]},x.prototype.delete=function(t){var e=this.__data__,n=T(e,t);return!(n<0||(n==e.length-1?e.pop():b.call(e,n,1),0))},x.prototype.get=function(t){var e=this.__data__,n=T(e,t);return n<0?void 0:e[n][1]},x.prototype.has=function(t){return T(this.__data__,t)>-1},x.prototype.set=function(t,e){var n=this.__data__,a=T(n,t);return a<0?n.push([t,e]):n[a][1]=e,this},_.prototype.clear=function(){this.__data__={hash:new v,map:new(m||x),string:new v}},_.prototype.delete=function(t){return w(this,t).delete(t)},_.prototype.get=function(t){return w(this,t).get(t)},_.prototype.has=function(t){return w(this,t).has(t)},_.prototype.set=function(t,e){return w(this,t).set(t,e),this},S.Cache=_,t.exports=S},vCyI:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this._selected=[],t&&(this._selected=t),this.update()}update(){this.hasSelection=this._selected.length>0,this.hasSingleSelection=1===this._selected.length,this.hasMultiSelection=this._selected.length>1}set selected(t){this._selected=t,this.update()}get selected(){return this._selected}add(t){this._selected.push(t),this.update()}first(){return this.hasSelection?this._selected[0]:null}}},vDHD:function(t,e,n){var a=n("aT2Y");t.exports=function(){this.__data__=new a,this.size=0}},vIot:function(t,e){t.exports=function(t){return t!=t}},vJUC:function(t,e){t.exports=function(t,e){for(var n=-1,a=e.length,r=t.length;++n<a;)t[r+n]=e[n];return t}},vkgz:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("7o/Q"),r=n("KqfI"),i=n("n6bG");function s(t,e,n){return function(a){return a.lift(new u(t,e,n))}}class u{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new o(t,this.nextOrObserver,this.error,this.complete))}}class o extends a.a{constructor(t,e,n,a){super(t),this._tapNext=r.a,this._tapError=r.a,this._tapComplete=r.a,this._tapError=n||r.a,this._tapComplete=a||r.a,Object(i.a)(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||r.a,this._tapError=e.error||r.a,this._tapComplete=e.complete||r.a)}_next(t){try{this._tapNext.call(this._context,t)}catch(e){return void this.destination.error(e)}this.destination.next(t)}_error(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}},"w/8D":function(t,e,n){var a=n("KFwg"),r=function(){try{var t=a(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();t.exports=r},w4fU:function(t,e,n){var a=n("pMcL"),r=n("XhiP"),i=n("JEWA"),s=n("ezUo"),u=n("s4/e"),o=n("cRL0"),l=a?a.prototype:void 0,d=l?l.valueOf:void 0;t.exports=function(t,e,n,a,l,c,f){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!c(new r(t),new r(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return i(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var h=u;case"[object Set]":if(h||(h=o),t.size!=e.size&&!(1&a))return!1;var g=f.get(t);if(g)return g==e;a|=2,f.set(t,e);var p=s(h(t),h(e),a,l,c,f);return f.delete(t),p;case"[object Symbol]":if(d)return d.call(t)==d.call(e)}return!1}},w9WL:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("XNiG"),i=n("xgIS"),s=n("2Vo4"),u=n("l7GE"),o=n("ZUHj");function l(t){return e=>e.lift(new d(t))}class d{constructor(t){this.notifier=t}call(t,e){const n=new c(t),a=Object(o.a)(n,this.notifier);return a&&!n.seenValue?(n.add(a),e.subscribe(n)):n}}class c extends u.a{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,a,r){this.seenValue=!0,this.complete()}notifyComplete(){}}var f=n("mrSG");n.d(e,"a",(function(){return p})),n.d(e,"b",(function(){return pt})),n.d(e,"c",(function(){return tt})),n.d(e,"d",(function(){return ht})),n.d(e,"e",(function(){return D})),n.d(e,"f",(function(){return lt})),n.d(e,"g",(function(){return b})),n.d(e,"h",(function(){return ot})),n.d(e,"i",(function(){return et})),n.d(e,"j",(function(){return dt})),n.d(e,"k",(function(){return gt})),n.d(e,"l",(function(){return mt})),n.d(e,"m",(function(){return xt})),n.d(e,"n",(function(){return ut})),n.d(e,"o",(function(){return q})),n.d(e,"p",(function(){return M})),n.d(e,"q",(function(){return P})),n.d(e,"r",(function(){return g})),n.d(e,"s",(function(){return y})),n.d(e,"t",(function(){return _})),n.d(e,"u",(function(){return _t})),n.d(e,"v",(function(){return x})),n.d(e,"w",(function(){return ct})),n.d(e,"x",(function(){return v})),n.d(e,"y",(function(){return h})),n.d(e,"z",(function(){return T})),n.d(e,"A",(function(){return it})),n.d(e,"B",(function(){return m})),n.d(e,"C",(function(){return O}));class h{constructor(t){this.document=t,this.width=this.getWidth()}getWidth(){const t=this.document.createElement("div");t.style.visibility="hidden",t.style.width="100px",t.style.msOverflowStyle="scrollbar",this.document.body.appendChild(t);const e=t.offsetWidth;t.style.overflow="scroll";const n=this.document.createElement("div");n.style.width="100%",t.appendChild(n);const a=n.offsetWidth;return t.parentNode.removeChild(t),e-a}}class g{getDimensions(t){return t.getBoundingClientRect()}}class p{constructor(){this.columnInputChanges=new r.a}get columnInputChanges$(){return this.columnInputChanges.asObservable()}onInputChange(){this.columnInputChanges.next()}}class b{constructor(t){this.template=t}}class m{constructor(t,e){this.element=t,this.zone=e,this.isVisible=!1,this.visible=new a.EventEmitter}ngOnInit(){this.runCheck()}ngOnDestroy(){clearTimeout(this.timeout)}onVisibilityChange(){this.zone.run(()=>{this.isVisible=!0,this.visible.emit(!0)})}runCheck(){const t=()=>{const{offsetHeight:e,offsetWidth:n}=this.element.nativeElement;e&&n?(clearTimeout(this.timeout),this.onVisibilityChange()):(clearTimeout(this.timeout),this.zone.runOutsideAngular(()=>{this.timeout=setTimeout(()=>t(),50)}))};this.timeout=setTimeout(()=>t())}}class y{constructor(t){this.dragX=!0,this.dragY=!0,this.dragStart=new a.EventEmitter,this.dragging=new a.EventEmitter,this.dragEnd=new a.EventEmitter,this.isDragging=!1,this.element=t.nativeElement}ngOnChanges(t){t.dragEventTarget&&t.dragEventTarget.currentValue&&this.dragModel.dragging&&this.onMousedown(t.dragEventTarget.currentValue)}ngOnDestroy(){this._destroySubscription()}onMouseup(t){this.isDragging&&(this.isDragging=!1,this.element.classList.remove("dragging"),this.subscription&&(this._destroySubscription(),this.dragEnd.emit({event:t,element:this.element,model:this.dragModel})))}onMousedown(t){if(t.target.classList.contains("draggable")&&(this.dragX||this.dragY)){t.preventDefault(),this.isDragging=!0;const e={x:t.clientX,y:t.clientY},n=Object(i.a)(document,"mouseup");this.subscription=n.subscribe(t=>this.onMouseup(t));const a=Object(i.a)(document,"mousemove").pipe(l(n)).subscribe(t=>this.move(t,e));this.subscription.add(a),this.dragStart.emit({event:t,element:this.element,model:this.dragModel})}}move(t,e){if(!this.isDragging)return;const n=t.clientY-e.y;this.dragX&&(this.element.style.left=t.clientX-e.x+"px"),this.dragY&&(this.element.style.top=n+"px"),this.element.classList.add("dragging"),this.dragging.emit({event:t,element:this.element,model:this.dragModel})}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}"undefined"!=typeof window&&window||global,"undefined"!=typeof window&&window||global,"undefined"!=typeof window&&window||global;class v{constructor(t,e){this.renderer=e,this.resizeEnabled=!0,this.resize=new a.EventEmitter,this.resizing=!1,this.element=t.nativeElement}ngAfterViewInit(){const t=this.renderer;this.resizeHandle=t.createElement("span"),t.addClass(this.resizeHandle,this.resizeEnabled?"resize-handle":"resize-handle--not-resizable"),t.appendChild(this.element,this.resizeHandle)}ngOnDestroy(){this._destroySubscription(),this.renderer.destroyNode?this.renderer.destroyNode(this.resizeHandle):this.renderer.removeChild(this.renderer.parentNode(this.resizeHandle),this.resizeHandle)}onMouseup(){this.resizing=!1,this.subscription&&!this.subscription.closed&&(this._destroySubscription(),this.resize.emit(this.element.clientWidth))}onMousedown(t){const e=t.target.classList.contains("resize-handle"),n=this.element.clientWidth,a=t.screenX;if(e){t.stopPropagation(),this.resizing=!0;const e=Object(i.a)(document,"mouseup");this.subscription=e.subscribe(t=>this.onMouseup());const r=Object(i.a)(document,"mousemove").pipe(l(e)).subscribe(t=>this.move(t,n,a));this.subscription.add(r)}}move(t,e,n){const a=e+(t.screenX-n);(!this.minWidth||a>=this.minWidth)&&(!this.maxWidth||a<=this.maxWidth)&&(this.element.style.width=a+"px")}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}class x{constructor(t,e){this.document=e,this.reorder=new a.EventEmitter,this.targetChanged=new a.EventEmitter,this.differ=t.find({}).create()}ngAfterContentInit(){this.updateSubscriptions(),this.draggables.changes.subscribe(this.updateSubscriptions.bind(this))}ngOnDestroy(){this.draggables.forEach(t=>{t.dragStart.unsubscribe(),t.dragging.unsubscribe(),t.dragEnd.unsubscribe()})}updateSubscriptions(){const t=this.differ.diff(this.createMapDiffs());if(t){const e=({currentValue:t,previousValue:e})=>{n({previousValue:e}),t&&(t.dragStart.subscribe(this.onDragStart.bind(this)),t.dragging.subscribe(this.onDragging.bind(this)),t.dragEnd.subscribe(this.onDragEnd.bind(this)))},n=({previousValue:t})=>{t&&(t.dragStart.unsubscribe(),t.dragging.unsubscribe(),t.dragEnd.unsubscribe())};t.forEachAddedItem(e),t.forEachRemovedItem(n)}}onDragStart(){this.positions={};let t=0;for(const e of this.draggables.toArray()){const n=e.element,a=parseInt(n.offsetLeft.toString(),0);this.positions[e.dragModel.prop]={left:a,right:a+parseInt(n.offsetWidth.toString(),0),index:t++,element:n}}}onDragging({model:t,event:e}){const n=this.positions[t.prop],a=this.isTarget(t,e);a?this.lastDraggingIndex!==a.i&&(this.targetChanged.emit({prevIndex:this.lastDraggingIndex,newIndex:a.i,initialIndex:n.index}),this.lastDraggingIndex=a.i):this.lastDraggingIndex!==n.index&&(this.targetChanged.emit({prevIndex:this.lastDraggingIndex,initialIndex:n.index}),this.lastDraggingIndex=n.index)}onDragEnd({element:t,model:e,event:n}){const a=this.positions[e.prop],r=this.isTarget(e,n);r&&this.reorder.emit({prevIndex:a.index,newIndex:r.i,model:e}),this.lastDraggingIndex=void 0,t.style.left="auto"}isTarget(t,e){let n=0;const a=this.document.elementsFromPoint(e.x||e.clientX,e.y||e.clientY);for(const r in this.positions){const e=this.positions[r];if(t.prop!==r&&a.find(t=>t===e.element))return{pos:e,i:n};n++}}createMapDiffs(){return this.draggables.toArray().reduce((t,e)=>(t[e.dragModel.$$id]=e,t),{})}}class _{constructor(){this.pressEnabled=!0,this.duration=500,this.longPressStart=new a.EventEmitter,this.longPressing=new a.EventEmitter,this.longPressEnd=new a.EventEmitter,this.mouseX=0,this.mouseY=0}get press(){return this.pressing}get isLongPress(){return this.isLongPressing}onMouseDown(t){if(1!==t.which||!this.pressEnabled)return;if(t.target.classList.contains("resize-handle"))return;this.mouseX=t.clientX,this.mouseY=t.clientY,this.pressing=!0,this.isLongPressing=!1;const e=Object(i.a)(document,"mouseup");this.subscription=e.subscribe(t=>this.onMouseup()),this.timeout=setTimeout(()=>{this.isLongPressing=!0,this.longPressStart.emit({event:t,model:this.pressModel}),this.subscription.add(Object(i.a)(document,"mousemove").pipe(l(e)).subscribe(t=>this.onMouseMove(t))),this.loop(t)},this.duration),this.loop(t)}onMouseMove(t){if(this.pressing&&!this.isLongPressing){const e=Math.abs(t.clientX-this.mouseX)>10,n=Math.abs(t.clientY-this.mouseY)>10;(e||n)&&this.endPress()}}loop(t){this.isLongPressing&&(this.timeout=setTimeout(()=>{this.longPressing.emit({event:t,model:this.pressModel}),this.loop(t)},50))}endPress(){clearTimeout(this.timeout),this.isLongPressing=!1,this.pressing=!1,this._destroySubscription(),this.longPressEnd.emit({model:this.pressModel})}onMouseup(){this.endPress()}ngOnDestroy(){this._destroySubscription()}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}class T{constructor(t,e,n){this.ngZone=t,this.renderer=n,this.scrollbarV=!1,this.scrollbarH=!1,this.scroll=new a.EventEmitter,this.scrollYPos=0,this.scrollXPos=0,this.prevScrollYPos=0,this.prevScrollXPos=0,this._scrollEventListener=null,this.element=e.nativeElement}ngOnInit(){if(this.scrollbarV||this.scrollbarH){const t=this.renderer;this.parentElement=t.parentNode(t.parentNode(this.element)),this._scrollEventListener=this.onScrolled.bind(this),this.parentElement.addEventListener("scroll",this._scrollEventListener)}}ngOnDestroy(){this._scrollEventListener&&(this.parentElement.removeEventListener("scroll",this._scrollEventListener),this._scrollEventListener=null)}setOffset(t){this.parentElement&&(this.parentElement.scrollTop=t)}onScrolled(t){const e=t.currentTarget;requestAnimationFrame(()=>{this.scrollYPos=e.scrollTop,this.scrollXPos=e.scrollLeft,this.updateOffset()})}updateOffset(){let t;this.scrollYPos<this.prevScrollYPos?t="down":this.scrollYPos>this.prevScrollYPos&&(t="up"),this.scroll.emit({direction:t,scrollYPos:this.scrollYPos,scrollXPos:this.scrollXPos}),this.prevScrollYPos=this.scrollYPos,this.prevScrollXPos=this.scrollXPos}}function w(){return""}function O(t){return null==t?w:"number"==typeof t?S:-1!==t.indexOf(".")?N:I}function S(t,e){if(null==t)return"";if(!t||null==e)return t;const n=t[e];return null==n?"":n}function I(t,e){if(null==t)return"";if(!t||!e)return t;const n=t[e];return null==n?"":n}function N(t,e){if(null==t)return"";if(!t||!e)return t;let n=t[e];if(void 0!==n)return n;n=t;const a=e.split(".");if(a.length)for(let r=0;r<a.length;r++)if(n=n[a[r]],null==n)return"";return n}function C(t){return t&&(e=>O(t)(e,t))}function R(t,e,n){if(e&&n){const a={},r=t.length;let i=null;a[0]=new A;const s=t.reduce((t,e)=>{const a=n(e);return-1===t.indexOf(a)&&t.push(a),t},[]);for(let e=0;e<r;e++)a[n(t[e])]=new A(t[e]);for(let o=0;o<r;o++){i=a[n(t[o])];let r=0;const u=e(i.row);u&&s.indexOf(u)>-1&&(r=u),i.parent=a[r],i.row.level=i.parent.row.level+1,i.parent.children.push(i)}let u=[];return a[0].flatten((function(){u=[...u,this.row]}),!0),u}return t}class A{constructor(t=null){t||(t={level:-1,treeStatus:"expanded"}),this.row=t,this.parent=null,this.children=[]}flatten(t,e){if("expanded"===this.row.treeStatus)for(let n=0,a=this.children.length;n<a;n++){const a=this.children[n];t.apply(a,Array.prototype.slice.call(arguments,2)),e&&a.flatten.apply(a,arguments)}}}function k(t){return(t=(t=(t=t.replace(/[^a-zA-Z0-9 ]/g," ")).replace(/([a-z](?=[A-Z]))/g,"$1 ")).replace(/([^a-zA-Z0-9 ])|^[0-9]+/g,"").trim().toLowerCase()).replace(/([ 0-9]+)([a-zA-Z])/g,(function(t,e,n){return e.trim()+n.toUpperCase()}))}function E(t){if(!t)return;let e=!1;for(const n of t)n.$$id||(n.$$id=("0000"+(Math.random()*Math.pow(36,4)<<0).toString(36)).slice(-4)),L(n.prop)&&n.name&&(n.prop=k(n.name)),n.$$valueGetter||(n.$$valueGetter=O(n.prop)),!L(n.prop)&&L(n.name)&&(n.name=String(n.prop).replace(/([A-Z])/g,t=>" "+t).replace(/^./,t=>t.toUpperCase())),L(n.prop)&&L(n.name)&&(n.name=""),n.hasOwnProperty("resizeable")||(n.resizeable=!0),n.hasOwnProperty("sortable")||(n.sortable=!0),n.hasOwnProperty("draggable")||(n.draggable=!0),n.hasOwnProperty("canAutoResize")||(n.canAutoResize=!0),n.hasOwnProperty("width")||(n.width=150),n.hasOwnProperty("isTreeColumn")&&n.isTreeColumn&&!e?e=!0:n.isTreeColumn=!1}function L(t){return null==t}class D{constructor(t){this.template=t}}class P{constructor(t){this.template=t}}class M{constructor(){this.rowHeight=0,this.toggle=new a.EventEmitter}get template(){return this._templateInput||this._templateQuery}toggleExpandRow(t){this.toggle.emit({type:"row",value:t})}expandAllRows(){this.toggle.emit({type:"all",value:!0})}collapseAllRows(){this.toggle.emit({type:"all",value:!1})}}class q{get template(){return this._templateInput||this._templateQuery}}function j(t){const e={left:[],center:[],right:[]};if(t)for(const n of t)n.frozenLeft?e.left.push(n):n.frozenRight?e.right.push(n):e.center.push(n);return e}function F(t,e){return{left:V(t.left),center:V(t.center),right:V(t.right),total:Math.floor(V(e))}}function V(t,e){let n=0;if(t)for(const a of t)n+=parseFloat(e&&a[e]?a[e]:a.width);return n}function G(t){const e=[],n=j(t);return e.push({type:"left",columns:n.left}),e.push({type:"center",columns:n.center}),e.push({type:"right",columns:n.right}),e}class B{constructor(){this.treeArray=[]}clearCache(){this.treeArray=[]}initCache(t){const{rows:e,rowHeight:n,detailRowHeight:a,externalVirtual:r,rowCount:i,rowIndexes:s,rowExpansions:u}=t,o="function"==typeof n,l="function"==typeof a;if(!o&&isNaN(n))throw new Error(`Row Height cache initialization failed. Please ensure that 'rowHeight' is a\n        valid number or function value: (${n}) when 'scrollbarV' is enabled.`);if(!l&&isNaN(a))throw new Error(`Row Height cache initialization failed. Please ensure that 'detailRowHeight' is a\n        valid number or function value: (${a}) when 'scrollbarV' is enabled.`);const d=r?i:e.length;this.treeArray=new Array(d);for(let c=0;c<d;++c)this.treeArray[c]=0;for(let c=0;c<d;++c){const t=e[c];let r=n;o&&(r=n(t));const i=u.has(t);t&&i&&(r+=l?a(t,s.get(t)):a),this.update(c,r)}}getRowIndex(t){return 0===t?0:this.calcRowIndex(t)}update(t,e){if(!this.treeArray.length)throw new Error(`Update at index ${t} with value ${e} failed:\n        Row Height cache not initialized.`);const n=this.treeArray.length;for(t|=0;t<n;)this.treeArray[t]+=e,t|=t+1}query(t){if(!this.treeArray.length)throw new Error(`query at index ${t} failed: Fenwick tree array not initialized.`);let e=0;for(t|=0;t>=0;)e+=this.treeArray[t],t=(t&t+1)-1;return e}queryBetween(t,e){return this.query(e)-this.query(t-1)}calcRowIndex(t){if(!this.treeArray.length)return 0;let e=-1;const n=this.treeArray.length;for(let a=Math.pow(2,n.toString(2).length-1);0!==a;a>>=1){const r=e+a;r<n&&t>=this.treeArray[r]&&(t-=this.treeArray[r],e=r)}return e+1}}const z={},Y="undefined"!=typeof document?document.createElement("div").style:void 0,H=function(){const t="undefined"!=typeof window?window.getComputedStyle(document.documentElement,""):void 0,e=void 0!==t?Array.prototype.slice.call(t).join("").match(/-(moz|webkit|ms)-/):null,n=null!==e?e[1]:void 0,a=void 0!==n?"WebKit|Moz|MS|O".match(new RegExp("("+n+")","i"))[1]:void 0;return a?{dom:a,lowercase:n,css:`-${n}-`,js:n[0].toUpperCase()+n.substr(1)}:void 0}();function U(t){const e=k(t);return z[e]||(void 0!==H&&void 0!==Y[H.css+t]?z[e]=H.css+t:void 0!==Y[t]&&(z[e]=t)),z[e]}const W="undefined"!=typeof window?U("transform"):void 0,K="undefined"!=typeof window?U("backfaceVisibility"):void 0,$="undefined"!=typeof window?!!U("transform"):void 0,Z="undefined"!=typeof window?!!U("perspective"):void 0,J="undefined"!=typeof window?window.navigator.userAgent:"Chrome",Q=/Safari\//.test(J)&&!/Chrome\//.test(J);function X(t,e,n){void 0!==W&&$?!Q&&Z?(t[W]=`translate3d(${e}px, ${n}px, 0)`,t[K]="hidden"):t[k(W)]=`translate(${e}px, ${n}px)`:(t.top=n+"px",t.left=e+"px")}class tt{constructor(t){this.cd=t,this.selected=[],this.scroll=new a.EventEmitter,this.page=new a.EventEmitter,this.activate=new a.EventEmitter,this.select=new a.EventEmitter,this.detailToggle=new a.EventEmitter,this.rowContextmenu=new a.EventEmitter(!1),this.treeAction=new a.EventEmitter,this.rowHeightsCache=new B,this.temp=[],this.offsetY=0,this.indexes={},this.rowIndexes=new Map,this.rowExpansions=[],this.getDetailRowHeight=(t,e)=>{if(!this.rowDetail)return 0;const n=this.rowDetail.rowHeight;return"function"==typeof n?n(t,e):n},this.rowTrackingFn=(t,e)=>{const n=this.getRowIndex(e);return this.trackByProp?e[this.trackByProp]:n}}set pageSize(t){this._pageSize=t,this.recalcLayout()}get pageSize(){return this._pageSize}set rows(t){this._rows=t,this.recalcLayout()}get rows(){return this._rows}set columns(t){this._columns=t;const e=j(t);this.columnGroupWidths=F(e,t)}get columns(){return this._columns}set offset(t){this._offset=t,(!this.scrollbarV||this.scrollbarV&&!this.virtualization)&&this.recalcLayout()}get offset(){return this._offset}set rowCount(t){this._rowCount=t,this.recalcLayout()}get rowCount(){return this._rowCount}get bodyWidth(){return this.scrollbarH?this.innerWidth+"px":"100%"}set bodyHeight(t){this._bodyHeight=this.scrollbarV?t+"px":"auto",this.recalcLayout()}get bodyHeight(){return this._bodyHeight}get selectEnabled(){return!!this.selectionType}get scrollHeight(){if(this.scrollbarV&&this.virtualization&&this.rowCount)return this.rowHeightsCache.query(this.rowCount-1)}ngOnInit(){this.rowDetail&&(this.listener=this.rowDetail.toggle.subscribe(({type:t,value:e})=>{"row"===t&&this.toggleRowExpansion(e),"all"===t&&this.toggleAllRows(e),this.updateIndexes(),this.updateRows(),this.cd.markForCheck()})),this.groupHeader&&(this.listener=this.groupHeader.toggle.subscribe(({type:t,value:e})=>{"group"===t&&this.toggleRowExpansion(e),"all"===t&&this.toggleAllRows(e),this.updateIndexes(),this.updateRows(),this.cd.markForCheck()}))}ngOnDestroy(){(this.rowDetail||this.groupHeader)&&this.listener.unsubscribe()}updateOffsetY(t){this.scroller&&(this.scrollbarV&&this.virtualization&&t?t=this.rowHeightsCache.query(this.pageSize*t-1):this.scrollbarV&&!this.virtualization&&(t=0),this.scroller.setOffset(t||0))}onBodyScroll(t){const e=t.scrollYPos,n=t.scrollXPos;this.offsetY===e&&this.offsetX===n||this.scroll.emit({offsetY:e,offsetX:n}),this.offsetY=e,this.offsetX=n,this.updateIndexes(),this.updatePage(t.direction),this.updateRows()}updatePage(t){let e=this.indexes.first/this.pageSize;"up"===t?e=Math.ceil(e):"down"===t&&(e=Math.floor(e)),void 0===t||isNaN(e)||this.page.emit({offset:e})}updateRows(){const{first:t,last:e}=this.indexes;let n=t,a=0;const r=[];if(this.rowIndexes.clear(),this.groupedRows){let t=3;for(1===this.groupedRows.length&&(t=this.groupedRows[0].value.length);n<e&&n<this.groupedRows.length;)r[a]=this.groupedRows[n],a++,n++}else for(;n<e&&n<this.rowCount;){const t=this.rows[n];t&&(this.rowIndexes.set(t,n),r[a]=t),a++,n++}this.temp=r}getRowHeight(t){return"function"==typeof this.rowHeight?this.rowHeight(t):this.rowHeight}getGroupHeight(t){let e=0;if(t.value)for(let n=0;n<t.value.length;n++)e+=this.getRowAndDetailHeight(t.value[n]);return e}getRowAndDetailHeight(t){let e=this.getRowHeight(t);return this.getRowExpanded(t)&&(e+=this.getDetailRowHeight(t)),e}getRowsStyles(t){const e={};if(this.groupedRows&&(e.width=this.columnGroupWidths.total),this.scrollbarV&&this.virtualization){let n=0;if(this.groupedRows){const e=t[t.length-1];n=e?this.getRowIndex(e):0}else n=this.getRowIndex(t);X(e,0,this.rowHeightsCache.query(n-1))}return e}getBottomSummaryRowStyles(){if(!this.scrollbarV||!this.rows||!this.rows.length)return null;const t={position:"absolute"};return X(t,0,this.rowHeightsCache.query(this.rows.length-1)),t}hideIndicator(){setTimeout(()=>this.loadingIndicator=!1,500)}updateIndexes(){let t=0,e=0;if(this.scrollbarV)if(this.virtualization){const n=parseInt(this.bodyHeight,0);t=this.rowHeightsCache.getRowIndex(this.offsetY),e=this.rowHeightsCache.getRowIndex(n+this.offsetY)+1}else t=0,e=this.rowCount;else this.externalPaging||(t=Math.max(this.offset*this.pageSize,0)),e=Math.min(t+this.pageSize,this.rowCount);this.indexes={first:t,last:e}}refreshRowHeightCache(){if(this.scrollbarV&&(!this.scrollbarV||this.virtualization)&&(this.rowHeightsCache.clearCache(),this.rows&&this.rows.length)){const t=new Set;for(const e of this.rows)this.getRowExpanded(e)&&t.add(e);this.rowHeightsCache.initCache({rows:this.rows,rowHeight:this.rowHeight,detailRowHeight:this.getDetailRowHeight,externalVirtual:this.scrollbarV&&this.externalPaging,rowCount:this.rowCount,rowIndexes:this.rowIndexes,rowExpansions:t})}}getAdjustedViewPortIndex(){const t=this.indexes.first;return this.scrollbarV&&this.virtualization&&this.rowHeightsCache.query(t-1)<=this.offsetY?t-1:t}toggleRowExpansion(t){const e=this.getAdjustedViewPortIndex(),n=this.getRowExpandedIdx(t,this.rowExpansions),a=n>-1;if(this.scrollbarV&&this.virtualization){const e=this.getDetailRowHeight(t)*(a?-1:1),n=this.getRowIndex(t);this.rowHeightsCache.update(n,e)}a?this.rowExpansions.splice(n,1):this.rowExpansions.push(t),this.detailToggle.emit({rows:[t],currentIndex:e})}toggleAllRows(t){this.rowExpansions=[];const e=this.getAdjustedViewPortIndex();if(t)for(const n of this.rows)this.rowExpansions.push(n);this.scrollbarV&&this.recalcLayout(),this.detailToggle.emit({rows:this.rows,currentIndex:e})}recalcLayout(){this.refreshRowHeightCache(),this.updateIndexes(),this.updateRows()}columnTrackingFn(t,e){return e.$$id}stylesByGroup(t){const e=this.columnGroupWidths,n=this.offsetX,a={width:e[t]+"px"};if("left"===t)X(a,n,0);else if("right"===t){const t=parseInt(this.innerWidth+"",0);X(a,-1*(e.total-t-n),0)}return a}getRowExpanded(t){if(0===this.rowExpansions.length&&this.groupExpansionDefault)for(const e of this.groupedRows)this.rowExpansions.push(e);return this.getRowExpandedIdx(t,this.rowExpansions)>-1}getRowExpandedIdx(t,e){if(!e||!e.length)return-1;const n=this.rowIdentity(t);return e.findIndex(t=>this.rowIdentity(t)===n)}getRowIndex(t){return this.rowIndexes.get(t)||0}onTreeAction(t){this.treeAction.emit({row:t})}}class et{constructor(t){this.cd=t,this.sort=new a.EventEmitter,this.reorder=new a.EventEmitter,this.resize=new a.EventEmitter,this.select=new a.EventEmitter,this.columnContextmenu=new a.EventEmitter(!1),this._columnGroupWidths={total:100},this._styleByGroup={left:{},center:{},right:{}},this.destroyed=!1}set innerWidth(t){this._innerWidth=t,setTimeout(()=>{if(this._columns){const t=j(this._columns);this._columnGroupWidths=F(t,this._columns),this.setStylesByGroup()}})}get innerWidth(){return this._innerWidth}set headerHeight(t){this._headerHeight="auto"!==t?t+"px":t}get headerHeight(){return this._headerHeight}set columns(t){this._columns=t;const e=j(t);this._columnsByPin=G(t),setTimeout(()=>{this._columnGroupWidths=F(e,t),this.setStylesByGroup()})}get columns(){return this._columns}set offsetX(t){this._offsetX=t,this.setStylesByGroup()}get offsetX(){return this._offsetX}ngOnDestroy(){this.destroyed=!0}onLongPressStart({event:t,model:e}){e.dragging=!0,this.dragEventTarget=t}onLongPressEnd({event:t,model:e}){this.dragEventTarget=t,setTimeout(()=>{const t=this._columns.find(t=>t.$$id===e.$$id);t&&(t.dragging=!1)},5)}get headerWidth(){return this.scrollbarH?this.innerWidth+"px":"100%"}trackByGroups(t,e){return e.type}columnTrackingFn(t,e){return e.$$id}onColumnResized(t,e){t<=e.minWidth?t=e.minWidth:t>=e.maxWidth&&(t=e.maxWidth),this.resize.emit({column:e,prevValue:e.width,newValue:t})}onColumnReordered({prevIndex:t,newIndex:e,model:n}){const a=this.getColumn(e);a.isTarget=!1,a.targetMarkerContext=void 0,this.reorder.emit({column:n,prevValue:t,newValue:e})}onTargetChanged({prevIndex:t,newIndex:e,initialIndex:n}){if(t||0===t){const e=this.getColumn(t);e.isTarget=!1,e.targetMarkerContext=void 0}if(e||0===e){const t=this.getColumn(e);t.isTarget=!0,n!==e&&(t.targetMarkerContext={class:"targetMarker ".concat(n>e?"dragFromRight":"dragFromLeft")})}}getColumn(t){const e=this._columnsByPin[0].columns.length;if(t<e)return this._columnsByPin[0].columns[t];const n=this._columnsByPin[1].columns.length;return t<e+n?this._columnsByPin[1].columns[t-e]:this._columnsByPin[2].columns[t-e-n]}onSort({column:t,prevValue:e,newValue:n}){if(t.dragging)return;const a=this.calcNewSorts(t,e,n);this.sort.emit({sorts:a,column:t,prevValue:e,newValue:n})}calcNewSorts(t,e,n){let a=0;this.sorts||(this.sorts=[]);const r=this.sorts.map((e,n)=>((e=Object.assign({},e)).prop===t.prop&&(a=n),e));return void 0===n?r.splice(a,1):e?r[a].dir=n:("single"===this.sortType&&r.splice(0,this.sorts.length),r.push({dir:n,prop:t.prop})),r}setStylesByGroup(){this._styleByGroup.left=this.calcStylesByGroup("left"),this._styleByGroup.center=this.calcStylesByGroup("center"),this._styleByGroup.right=this.calcStylesByGroup("right"),this.destroyed||this.cd.detectChanges()}calcStylesByGroup(t){const e=this._columnGroupWidths,n={width:e[t]+"px"};return"center"===t?X(n,-1*this.offsetX,0):"right"===t&&X(n,-1*(e.total-this.innerWidth),0),n}}function nt(t,e,n){let a,r,i;n=n||{};let s=null,u=0;function o(){u=!1===n.leading?0:+new Date,s=null,i=t.apply(a,r)}return function(){const l=+new Date;u||!1!==n.leading||(u=l);const d=e-(l-u);return a=this,r=arguments,d<=0?(clearTimeout(s),s=null,u=l,i=t.apply(a,r)):s||!1===n.trailing||(s=setTimeout(o,d)),i}}function at(t,e){for(const n of e){const e=t.indexOf(n);t.splice(e,1)}}function rt(t,e=300){let n=0;for(const a of t)n+=a.width||e;return n}const it={asc:"asc",desc:"desc"};function st(t,e){if(null==t&&(t=0),null==e&&(e=0),t instanceof Date&&e instanceof Date){if(t<e)return-1;if(t>e)return 1}else if(isNaN(parseFloat(t))||!isFinite(t)||isNaN(parseFloat(e))||!isFinite(e)){if(t=String(t),e=String(e),t.toLowerCase()<e.toLowerCase())return-1;if(t.toLowerCase()>e.toLowerCase())return 1}else{if(parseFloat(t)<parseFloat(e))return-1;if(parseFloat(t)>parseFloat(e))return 1}return 0}let ut=(()=>{class t{constructor(t,e,n,r,i,u,o){this.scrollbarHelper=t,this.dimensionsHelper=e,this.cd=n,this.columnChangesService=u,this.configuration=o,this.selected=[],this.scrollbarV=!1,this.scrollbarH=!1,this.rowHeight=30,this.columnMode="standard",this.headerHeight=30,this.footerHeight=0,this.externalPaging=!1,this.externalSorting=!1,this.loadingIndicator=!1,this.reorderable=!0,this.swapColumns=!0,this.sortType="single",this.sorts=[],this.cssClasses={sortAscending:"datatable-icon-up",sortDescending:"datatable-icon-down",pagerLeftArrow:"datatable-icon-left",pagerRightArrow:"datatable-icon-right",pagerPrevious:"datatable-icon-prev",pagerNext:"datatable-icon-skip"},this.messages={emptyMessage:"No data to display",totalMessage:"total",selectedMessage:"selected"},this.groupExpansionDefault=!1,this.selectAllRowsOnPage=!1,this.virtualization=!0,this.summaryRow=!1,this.summaryHeight=30,this.summaryPosition="top",this.scroll=new a.EventEmitter,this.activate=new a.EventEmitter,this.select=new a.EventEmitter,this.sort=new a.EventEmitter,this.page=new a.EventEmitter,this.reorder=new a.EventEmitter,this.resize=new a.EventEmitter,this.tableContextmenu=new a.EventEmitter(!1),this.treeAction=new a.EventEmitter,this.rowCount=0,this._offsetX=new s.a(0),this._count=0,this._offset=0,this._subscriptions=[],this.rowIdentity=t=>this._groupRowsBy?t.key:t,this.element=r.nativeElement,this.rowDiffer=i.find({}).create(),this.configuration&&this.configuration.messages&&(this.messages=Object.assign({},this.configuration.messages))}set rows(t){this._rows=t,t&&(this._internalRows=[...t]),this.externalSorting||this.sortInternalRows(),this._internalRows=R(this._internalRows,C(this.treeFromRelation),C(this.treeToRelation)),this.recalculate(),this._rows&&this._groupRowsBy&&(this.groupedRows=this.groupArrayBy(this._rows,this._groupRowsBy)),this.cd.markForCheck()}get rows(){return this._rows}set groupRowsBy(t){t&&(this._groupRowsBy=t,this._rows&&this._groupRowsBy&&(this.groupedRows=this.groupArrayBy(this._rows,this._groupRowsBy)))}get groupRowsBy(){return this._groupRowsBy}set columns(t){t&&(this._internalColumns=[...t],E(this._internalColumns),this.recalculateColumns()),this._columns=t}get columns(){return this._columns}set limit(t){this._limit=t,this.recalculate()}get limit(){return this._limit}set count(t){this._count=t,this.recalculate()}get count(){return this._count}set offset(t){this._offset=t}get offset(){return Math.max(Math.min(this._offset,Math.ceil(this.rowCount/this.pageSize)-1),0)}get isFixedHeader(){const t=this.headerHeight;return"string"!=typeof t||"auto"!==t}get isFixedRow(){return"auto"!==this.rowHeight}get isVertScroll(){return this.scrollbarV}get isVirtualized(){return this.virtualization}get isHorScroll(){return this.scrollbarH}get isSelectable(){return void 0!==this.selectionType}get isCheckboxSelection(){return"checkbox"===this.selectionType}get isCellSelection(){return"cell"===this.selectionType}get isSingleSelection(){return"single"===this.selectionType}get isMultiSelection(){return"multi"===this.selectionType}get isMultiClickSelection(){return"multiClick"===this.selectionType}set columnTemplates(t){this._columnTemplates=t,this.translateColumns(t)}get columnTemplates(){return this._columnTemplates}get allRowsSelected(){let t=this.rows&&this.selected&&this.selected.length===this.rows.length;if(this.selectAllRowsOnPage){const e=this.bodyComponent.indexes;t=this.selected.length===e.last-e.first}return this.selected&&this.rows&&0!==this.rows.length&&t}ngOnInit(){this.recalculate()}ngAfterViewInit(){this.externalSorting||this.sortInternalRows(),"undefined"!=typeof requestAnimationFrame&&requestAnimationFrame(()=>{this.recalculate(),this.externalPaging&&this.scrollbarV&&this.page.emit({count:this.count,pageSize:this.pageSize,limit:this.limit,offset:0})})}ngAfterContentInit(){this.columnTemplates.changes.subscribe(t=>this.translateColumns(t)),this.listenForColumnInputChanges()}translateColumns(t){if(t){const e=t.toArray();e.length&&(this._internalColumns=function(t){const e=[];for(const n of t){const t={},a=Object.getOwnPropertyNames(n);for(const e of a)t[e]=n[e];n.headerTemplate&&(t.headerTemplate=n.headerTemplate),n.cellTemplate&&(t.cellTemplate=n.cellTemplate),n.summaryFunc&&(t.summaryFunc=n.summaryFunc),n.summaryTemplate&&(t.summaryTemplate=n.summaryTemplate),e.push(t)}return e}(e),E(this._internalColumns),this.recalculateColumns(),this.sortInternalRows(),this.cd.markForCheck())}}groupArrayBy(t,e){const n=new Map;return t.forEach(t=>{const a=t[e];n.has(a)?n.get(a).push(t):n.set(a,[t])}),Array.from(n,t=>({key:t[0],value:t[1]}))}ngDoCheck(){this.rowDiffer.diff(this.rows)&&(this.externalSorting?this._internalRows=[...this.rows]:this.sortInternalRows(),this._internalRows=R(this._internalRows,C(this.treeFromRelation),C(this.treeToRelation)),this.recalculatePages(),this.cd.markForCheck())}recalculate(){this.recalculateDims(),this.recalculateColumns()}onWindowResize(){this.recalculate()}recalculateColumns(t=this._internalColumns,e=-1,n=this.scrollbarH){if(!t)return;let a=this._innerWidth;return this.scrollbarV&&(a-=this.scrollbarHelper.width),"force"===this.columnMode?function(t,e,n,a,r=300){const i=t.slice(n+1,t.length).filter(t=>!1!==t.canAutoResize);for(const c of i)c.$$oldWidth||(c.$$oldWidth=c.width);let s=0,u=!1,o=rt(t,r),l=e-o;const d=[];do{s=l/i.length,u=o>=e;for(const t of i){if(u&&a)t.width=t.$$oldWidth||t.width||r;else{const e=(t.width||r)+s;t.minWidth&&e<t.minWidth?(t.width=t.minWidth,d.push(t)):t.maxWidth&&e>t.maxWidth?(t.width=t.maxWidth,d.push(t)):t.width=e}t.width=Math.max(0,t.width)}o=rt(t),l=e-o,at(i,d)}while(l>1&&0!==i.length)}(t,a,e,n):"flex"===this.columnMode&&function(t,e){const n=function(t,e){let n=0;for(const a of t)n+=a.width;return n}(t),a=function(t){let e=0;for(const n of t)e+=n.flexGrow||0;return e}(t),r=j(t);n!==e&&function(t,e,n){for(const i in t)for(const a of t[i])a.canAutoResize?a.width=0:(e-=a.width,n-=a.flexGrow?a.flexGrow:0);const a={};let r=e;do{const e=r/n;r=0;for(const n in t)for(const i of t[n])if(i.canAutoResize&&!a[i.prop]){const t=i.width+i.flexGrow*e;void 0!==i.minWidth&&t<i.minWidth?(r+=t-i.minWidth,i.width=i.minWidth,a[i.prop]=!0):i.width=t}}while(0!==r)}(r,e,a)}(t,a),t}recalculateDims(){const t=this.dimensionsHelper.getDimensions(this.element);if(this._innerWidth=Math.floor(t.width),this.scrollbarV){let e=t.height;this.headerHeight&&(e-=this.headerHeight),this.footerHeight&&(e-=this.footerHeight),this.bodyHeight=e}this.recalculatePages()}recalculatePages(){this.pageSize=this.calcPageSize(),this.rowCount=this.calcRowCount()}onBodyPage({offset:t}){this.externalPaging&&!this.virtualization||(this.offset=t,this.page.emit({count:this.count,pageSize:this.pageSize,limit:this.limit,offset:this.offset}))}onBodyScroll(t){this._offsetX.next(t.offsetX),this.scroll.emit(t),this.cd.detectChanges()}onFooterPage(t){this.offset=t.page-1,this.bodyComponent.updateOffsetY(this.offset),this.page.emit({count:this.count,pageSize:this.pageSize,limit:this.limit,offset:this.offset}),this.selectAllRowsOnPage&&(this.selected=[],this.select.emit({selected:this.selected}))}calcPageSize(t=this.rows){if(this.scrollbarV&&this.virtualization){const t=Math.ceil(this.bodyHeight/this.rowHeight);return Math.max(t,0)}return void 0!==this.limit?this.limit:t?t.length:0}calcRowCount(t=this.rows){return this.externalPaging?this.count:t?this.groupedRows?this.groupedRows.length:null!=this.treeFromRelation&&null!=this.treeToRelation?this._internalRows.length:t.length:0}onColumnContextmenu({event:t,column:e}){this.tableContextmenu.emit({event:t,type:"header",content:e})}onRowContextmenu({event:t,row:e}){this.tableContextmenu.emit({event:t,type:"body",content:e})}onColumnResize({column:t,newValue:e}){if(void 0===t)return;let n;const a=this._internalColumns.map((a,r)=>((a=Object.assign({},a)).$$id===t.$$id&&(n=r,a.width=e,a.$$oldWidth=e),a));this.recalculateColumns(a,n),this._internalColumns=a,this.resize.emit({column:t,newValue:e})}onColumnReorder({column:t,newValue:e,prevValue:n}){const a=this._internalColumns.map(t=>Object.assign({},t));if(this.swapColumns){const r=a[e];a[e]=t,a[n]=r}else if(e>n){const t=a[n];for(let r=n;r<e;r++)a[r]=a[r+1];a[e]=t}else{const t=a[n];for(let r=n;r>e;r--)a[r]=a[r-1];a[e]=t}this._internalColumns=a,this.reorder.emit({column:t,newValue:e,prevValue:n})}onColumnSort(t){this.selectAllRowsOnPage&&(this.selected=[],this.select.emit({selected:this.selected})),this.sorts=t.sorts,!1===this.externalSorting&&this.sortInternalRows(),this._internalRows=R(this._internalRows,C(this.treeFromRelation),C(this.treeToRelation)),this.offset=0,this.bodyComponent.updateOffsetY(this.offset),this.sort.emit(t)}onHeaderSelect(t){if(this.selectAllRowsOnPage){const t=this.bodyComponent.indexes.first,e=this.bodyComponent.indexes.last,n=this.selected.length===e-t;this.selected=[],n||this.selected.push(...this._internalRows.slice(t,e))}else{const t=this.selected.length===this.rows.length;this.selected=[],t||this.selected.push(...this.rows)}this.select.emit({selected:this.selected})}onBodySelect(t){this.select.emit(t)}onTreeAction(t){const e=t.row,n=this._rows.findIndex(e=>e[this.treeToRelation]===t.row[this.treeToRelation]);this.treeAction.emit({row:e,rowIndex:n})}ngOnDestroy(){this._subscriptions.forEach(t=>t.unsubscribe())}listenForColumnInputChanges(){this._subscriptions.push(this.columnChangesService.columnInputChanges$.subscribe(()=>{this.columnTemplates&&this.columnTemplates.notifyOnChanges()}))}sortInternalRows(){this._internalRows=function(t,e,n){if(!t)return[];if(!n||!n.length||!e)return[...t];const a=new Map;t.forEach((t,e)=>a.set(t,e));const r=[...t],i=e.reduce((t,e)=>(e.comparator&&"function"==typeof e.comparator&&(t[e.prop]=e.comparator),t),{}),s=n.map(t=>{const e=t.prop;return{prop:e,dir:t.dir,valueGetter:O(e),compareFn:i[e]||st}});return r.sort((function(t,e){for(const n of s){const{prop:a,valueGetter:r}=n,i=r(t,a),s=r(e,a),u=n.dir!==it.desc?n.compareFn(i,s,t,e,n.dir):-n.compareFn(i,s,t,e,n.dir);if(0!==u)return u}return a.has(t)&&a.has(e)?a.get(t)<a.get(e)?-1:1:0}))}(this._internalRows,this._internalColumns,this.sorts)}}return Object(f.__decorate)([function(t,e,n){return{configurable:!0,enumerable:n.enumerable,get:function(){return Object.defineProperty(this,e,{configurable:!0,enumerable:n.enumerable,value:nt(n.value,5,void 0)}),this[e]}}},Object(f.__metadata)("design:type",Function),Object(f.__metadata)("design:paramtypes",[]),Object(f.__metadata)("design:returntype",void 0)],t.prototype,"onWindowResize",null),t})();class ot{constructor(t){this.cd=t,this.sort=new a.EventEmitter,this.select=new a.EventEmitter,this.columnContextmenu=new a.EventEmitter(!1),this.sortFn=this.onSort.bind(this),this.selectFn=this.select.emit.bind(this.select),this.cellContext={column:this.column,sortDir:this.sortDir,sortFn:this.sortFn,allRowsSelected:this.allRowsSelected,selectFn:this.selectFn}}set allRowsSelected(t){this._allRowsSelected=t,this.cellContext.allRowsSelected=t}get allRowsSelected(){return this._allRowsSelected}set column(t){this._column=t,this.cellContext.column=t,this.cd.markForCheck()}get column(){return this._column}set sorts(t){this._sorts=t,this.sortDir=this.calcSortDir(t),this.cellContext.sortDir=this.sortDir,this.sortClass=this.calcSortClass(this.sortDir),this.cd.markForCheck()}get sorts(){return this._sorts}get columnCssClasses(){let t="datatable-header-cell";if(this.column.sortable&&(t+=" sortable"),this.column.resizeable&&(t+=" resizeable"),this.column.headerClass)if("string"==typeof this.column.headerClass)t+=" "+this.column.headerClass;else if("function"==typeof this.column.headerClass){const e=this.column.headerClass({column:this.column});if("string"==typeof e)t+=e;else if("object"==typeof e){const n=Object.keys(e);for(const a of n)!0===e[a]&&(t+=" "+a)}}const e=this.sortDir;return e&&(t+=" sort-active sort-"+e),t}get name(){return void 0===this.column.headerTemplate?this.column.name:void 0}get minWidth(){return this.column.minWidth}get maxWidth(){return this.column.maxWidth}get width(){return this.column.width}get isCheckboxable(){return this.column.checkboxable&&this.column.headerCheckboxable&&"checkbox"===this.selectionType}onContextmenu(t){this.columnContextmenu.emit({event:t,column:this.column})}calcSortDir(t){if(t&&this.column){const e=t.find(t=>t.prop===this.column.prop);if(e)return e.dir}}onSort(){if(!this.column.sortable)return;const t=(e=this.sortDir,"single"===this.sortType?e===it.asc?it.desc:it.asc:e?e===it.asc?it.desc:void 0:it.asc);var e;this.sort.emit({column:this.column,prevValue:this.sortDir,newValue:t})}calcSortClass(t){return t===it.asc?"sort-btn sort-asc "+this.sortAscendingIcon:t===it.desc?"sort-btn sort-desc "+this.sortDescendingIcon:"sort-btn"}}class lt{constructor(){this.selectedCount=0,this.page=new a.EventEmitter}get isVisible(){return this.rowCount/this.pageSize>1}get curPage(){return this.offset+1}}class dt{constructor(){this.change=new a.EventEmitter,this._count=0,this._page=1,this._size=0}set size(t){this._size=t,this.pages=this.calcPages()}get size(){return this._size}set count(t){this._count=t,this.pages=this.calcPages()}get count(){return this._count}set page(t){this._page=t,this.pages=this.calcPages()}get page(){return this._page}get totalPages(){const t=this.size<1?1:Math.ceil(this.count/this.size);return Math.max(t||0,1)}canPrevious(){return this.page>1}canNext(){return this.page<this.totalPages}prevPage(){this.selectPage(this.page-1)}nextPage(){this.selectPage(this.page+1)}selectPage(t){t>0&&t<=this.totalPages&&t!==this.page&&(this.page=t,this.change.emit({page:t}))}calcPages(t){const e=[];let n=1,a=this.totalPages;t=t||this.page,5<this.totalPages&&(n=t-Math.floor(2.5),a=t+Math.floor(2.5),n<1?(n=1,a=Math.min(n+5-1,this.totalPages)):a>this.totalPages&&(n=Math.max(this.totalPages-5+1,1),a=this.totalPages));for(let r=n;r<=a;r++)e.push({number:r,text:r});return e}}class ct{}const ft=function(){var t={up:38,down:40,return:13,escape:27,left:37,right:39};return t[t.up]="up",t[t.down]="down",t[t.return]="return",t[t.escape]="escape",t[t.left]="left",t[t.right]="right",t}();class ht{constructor(t,e,n,r){this.differs=t,this.scrollbarHelper=e,this.cd=n,this.treeStatus="collapsed",this.activate=new a.EventEmitter,this.treeAction=new a.EventEmitter,this._groupStyles={left:{},center:{},right:{}},this._element=r.nativeElement,this._rowDiffer=t.find({}).create()}set columns(t){this._columns=t,this.recalculateColumns(t),this.buildStylesByGroup()}get columns(){return this._columns}set innerWidth(t){if(this._columns){const t=j(this._columns);this._columnGroupWidths=F(t,this._columns)}this._innerWidth=t,this.recalculateColumns(),this.buildStylesByGroup()}get innerWidth(){return this._innerWidth}set offsetX(t){this._offsetX=t,this.buildStylesByGroup()}get offsetX(){return this._offsetX}get cssClass(){let t="datatable-body-row";if(this.isSelected&&(t+=" active"),this.rowIndex%2!=0&&(t+=" datatable-row-odd"),this.rowIndex%2==0&&(t+=" datatable-row-even"),this.rowClass){const e=this.rowClass(this.row);if("string"==typeof e)t+=" "+e;else if("object"==typeof e){const n=Object.keys(e);for(const a of n)!0===e[a]&&(t+=" "+a)}}return t}get columnsTotalWidths(){return this._columnGroupWidths.total}ngDoCheck(){this._rowDiffer.diff(this.row)&&this.cd.markForCheck()}trackByGroups(t,e){return e.type}columnTrackingFn(t,e){return e.$$id}buildStylesByGroup(){this._groupStyles.left=this.calcStylesByGroup("left"),this._groupStyles.center=this.calcStylesByGroup("center"),this._groupStyles.right=this.calcStylesByGroup("right"),this.cd.markForCheck()}calcStylesByGroup(t){const e=this._columnGroupWidths,n=this.offsetX,a={width:e[t]+"px"};if("left"===t)X(a,n,0);else if("right"===t){const t=parseInt(this.innerWidth+"",0);X(a,-1*(e.total-t-n+this.scrollbarHelper.width),0)}return a}onActivate(t,e){t.cellIndex=e,t.rowElement=this._element,this.activate.emit(t)}onKeyDown(t){const e=t.keyCode;(e===ft.return||e===ft.down||e===ft.up||e===ft.left||e===ft.right)&&t.target===this._element&&(t.preventDefault(),t.stopPropagation(),this.activate.emit({type:"keydown",event:t,row:this.row,rowElement:this._element}))}onMouseenter(t){this.activate.emit({type:"mouseenter",event:t,row:this.row,rowElement:this._element})}recalculateColumns(t=this.columns){this._columns=t;const e=j(this._columns);this._columnsByPin=G(this._columns),this._columnGroupWidths=F(e,this._columns)}onTreeAction(){this.treeAction.emit()}}class gt{constructor(t,e){this.cd=t,this.differs=e,this.rowContextmenu=new a.EventEmitter(!1),this.groupContext={group:this.row,expanded:this.expanded,rowIndex:this.rowIndex},this.rowContext={row:this.row,expanded:this.expanded,rowIndex:this.rowIndex},this._expanded=!1,this.rowDiffer=e.find({}).create()}set rowIndex(t){this._rowIndex=t,this.rowContext.rowIndex=t,this.groupContext.rowIndex=t,this.cd.markForCheck()}get rowIndex(){return this._rowIndex}set expanded(t){this._expanded=t,this.groupContext.expanded=t,this.rowContext.expanded=t,this.cd.markForCheck()}get expanded(){return this._expanded}ngDoCheck(){this.rowDiffer.diff(this.row)&&(this.rowContext.row=this.row,this.groupContext.group=this.row,this.cd.markForCheck())}onContextmenu(t){this.rowContextmenu.emit({event:t,row:this.row})}getGroupHeaderStyle(){const t={};return t.transform="translate3d("+this.offsetX+"px, 0px, 0px)",t["backface-visibility"]="hidden",t.width=this.innerWidth,t}}class pt{constructor(t,e){this.cd=e,this.activate=new a.EventEmitter,this.treeAction=new a.EventEmitter,this.isFocused=!1,this.onCheckboxChangeFn=this.onCheckboxChange.bind(this),this.activateFn=this.activate.emit.bind(this.activate),this.cellContext={onCheckboxChangeFn:this.onCheckboxChangeFn,activateFn:this.activateFn,row:this.row,group:this.group,value:this.value,column:this.column,rowHeight:this.rowHeight,isSelected:this.isSelected,rowIndex:this.rowIndex,treeStatus:this.treeStatus,onTreeAction:this.onTreeAction.bind(this)},this._element=t.nativeElement}set group(t){this._group=t,this.cellContext.group=t,this.checkValueUpdates(),this.cd.markForCheck()}get group(){return this._group}set rowHeight(t){this._rowHeight=t,this.cellContext.rowHeight=t,this.checkValueUpdates(),this.cd.markForCheck()}get rowHeight(){return this._rowHeight}set isSelected(t){this._isSelected=t,this.cellContext.isSelected=t,this.cd.markForCheck()}get isSelected(){return this._isSelected}set expanded(t){this._expanded=t,this.cellContext.expanded=t,this.cd.markForCheck()}get expanded(){return this._expanded}set rowIndex(t){this._rowIndex=t,this.cellContext.rowIndex=t,this.checkValueUpdates(),this.cd.markForCheck()}get rowIndex(){return this._rowIndex}set column(t){this._column=t,this.cellContext.column=t,this.checkValueUpdates(),this.cd.markForCheck()}get column(){return this._column}set row(t){this._row=t,this.cellContext.row=t,this.checkValueUpdates(),this.cd.markForCheck()}get row(){return this._row}set sorts(t){this._sorts=t,this.calcSortDir=this.calcSortDir(t)}get sorts(){return this._sorts}set treeStatus(t){this._treeStatus="collapsed"!==t&&"expanded"!==t&&"loading"!==t&&"disabled"!==t?"collapsed":t,this.cellContext.treeStatus=this._treeStatus,this.checkValueUpdates(),this.cd.markForCheck()}get treeStatus(){return this._treeStatus}get columnCssClasses(){let t="datatable-body-cell";if(this.column.cellClass)if("string"==typeof this.column.cellClass)t+=" "+this.column.cellClass;else if("function"==typeof this.column.cellClass){const e=this.column.cellClass({row:this.row,group:this.group,column:this.column,value:this.value,rowHeight:this.rowHeight});if("string"==typeof e)t+=e;else if("object"==typeof e){const n=Object.keys(e);for(const a of n)!0===e[a]&&(t+=" "+a)}}return this.sortDir||(t+=" sort-active"),this.isFocused&&(t+=" active"),this.sortDir===it.asc&&(t+=" sort-asc"),this.sortDir===it.desc&&(t+=" sort-desc"),t}get width(){return this.column.width}get minWidth(){return this.column.minWidth}get maxWidth(){return this.column.maxWidth}get height(){const t=this.rowHeight;return isNaN(t)?t:t+"px"}ngDoCheck(){this.checkValueUpdates()}ngOnDestroy(){this.cellTemplate&&this.cellTemplate.clear()}checkValueUpdates(){let t="";if(this.row&&this.column){const e=this.column.$$valueGetter(this.row,this.column.prop),n=this.column.pipe;n?t=n.transform(e):void 0!==t&&(t=e)}else t="";this.value!==t&&(this.value=t,this.cellContext.value=t,this.sanitizedValue=null!=t?this.stripHtml(t):t,this.cd.markForCheck())}onFocus(){this.isFocused=!0}onBlur(){this.isFocused=!1}onClick(t){this.activate.emit({type:"click",event:t,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element})}onDblClick(t){this.activate.emit({type:"dblclick",event:t,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element})}onKeyDown(t){const e=t.keyCode;(e===ft.return||e===ft.down||e===ft.up||e===ft.left||e===ft.right)&&t.target===this._element&&(t.preventDefault(),t.stopPropagation(),this.activate.emit({type:"keydown",event:t,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element}))}onCheckboxChange(t){this.activate.emit({type:"checkbox",event:t,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element,treeStatus:"collapsed"})}calcSortDir(t){if(!t)return;const e=t.find(t=>t.prop===this.column.prop);return e?e.dir:void 0}stripHtml(t){return t.replace?t.replace(/<\/?[^>]+(>|$)/g,""):t}onTreeAction(){this.treeAction.emit(this.row)}calcLeftMargin(t,e){return t.isTreeColumn?e.level*(null!=t.treeLevelIndent?t.treeLevelIndent:50):0}}function bt(t,e,n){const a=n(e,t);return a>-1?t.splice(a,1):t.push(e),t}class mt{constructor(){this.activate=new a.EventEmitter,this.select=new a.EventEmitter}selectRow(t,e,n){if(!this.selectEnabled)return;const a="checkbox"===this.selectionType,r="multiClick"===this.selectionType;let i=[];i="multi"===this.selectionType||a||r?t.shiftKey?function(t,e,n,a,r){const i=n<a;for(let s=0;s<e.length;s++){const r=e[s],u=s>=a&&s<=n,o=s<=a&&s>=n;let l={start:0,end:0};l=i?{start:n,end:a}:{start:a,end:n+1},(i&&o||!i&&u)&&s>=l.start&&s<=l.end&&t.push(r)}return t}([],this.rows,e,this.prevIndex,this.getRowSelectedIdx.bind(this)):bt(t.ctrlKey||t.metaKey||r||a?[...this.selected]:[],n,this.getRowSelectedIdx.bind(this)):bt([],n,this.getRowSelectedIdx.bind(this)),"function"==typeof this.selectCheck&&(i=i.filter(this.selectCheck.bind(this))),this.selected.splice(0,this.selected.length),this.selected.push(...i),this.prevIndex=e,this.select.emit({selected:i})}onActivate(t,e){const{type:n,event:a,row:r}=t,i="checkbox"===this.selectionType;!i&&("click"===n||"dblclick"===n)||i&&"checkbox"===n?this.selectRow(a,e,r):"keydown"===n&&(a.keyCode===ft.return?this.selectRow(a,e,r):this.onKeyboardFocus(t)),this.activate.emit(t)}onKeyboardFocus(t){const{keyCode:e}=t.event;if(e===ft.up||e===ft.down||e===ft.right||e===ft.left){const n="cell"===this.selectionType;t.cellElement&&n?n&&this.focusCell(t.cellElement,t.rowElement,e,t.cellIndex):this.focusRow(t.rowElement,e)}}focusRow(t,e){const n=this.getPrevNextRow(t,e);n&&n.focus()}getPrevNextRow(t,e){const n=t.parentElement;if(n){let t;if(e===ft.up?t=n.previousElementSibling:e===ft.down&&(t=n.nextElementSibling),t&&t.children.length)return t.children[0]}}focusCell(t,e,n,a){let r;if(n===ft.left)r=t.previousElementSibling;else if(n===ft.right)r=t.nextElementSibling;else if(n===ft.up||n===ft.down){const t=this.getPrevNextRow(e,n);if(t){const e=t.getElementsByClassName("datatable-body-cell");e.length&&(r=e[a])}}r&&r.focus()}getRowSelected(t){return this.getRowSelectedIdx(t,this.selected)>-1}getRowSelectedIdx(t,e){if(!e||!e.length)return-1;const n=this.rowIdentity(t);return e.findIndex(t=>this.rowIdentity(t)===n)}}function yt(t){const e=t.filter(t=>!!t);return e.length?e.some(t=>"number"!=typeof t)?null:e.reduce((t,e)=>t+e):null}function vt(t){return null}class xt{constructor(){this.summaryRow={}}ngOnChanges(){this.columns&&this.rows&&(this.updateInternalColumns(),this.updateValues())}updateInternalColumns(){this._internalColumns=this.columns.map(t=>Object.assign({},t,{cellTemplate:t.summaryTemplate}))}updateValues(){this.summaryRow={},this.columns.filter(t=>!t.summaryTemplate).forEach(t=>{const e=this.rows.map(e=>e[t.prop]),n=this.getSummaryFunction(t);this.summaryRow[t.prop]=t.pipe?t.pipe.transform(n(e)):n(e)})}getSummaryFunction(t){return void 0===t.summaryFunc?yt:null===t.summaryFunc?vt:t.summaryFunc}}class _t{static forRoot(t){return{ngModule:_t,providers:[{provide:"configuration",useValue:t}]}}}"undefined"==typeof document||document.elementsFromPoint||(document.elementsFromPoint=function(t,e){const n=[],a=[];let r,i,s;for(;(r=document.elementFromPoint(t,e))&&-1===n.indexOf(r)&&null!=r;)n.push(r),a.push({value:r.style.getPropertyValue("pointer-events"),priority:r.style.getPropertyPriority("pointer-events")}),r.style.setProperty("pointer-events","none","important");for(i=a.length;s=a[--i];)n[i].style.setProperty("pointer-events",s.value?s.value:"",s.priority);return n})},wE6v:function(t,e,n){var a=n("hh1v");t.exports=function(t,e){if(!a(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!a(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!a(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!a(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")}},wQk9:function(t,e,n){!function(t){"use strict";t.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",ss:"%d ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}(n("wd/R"))},"wd/R":function(t,e,n){(function(t){t.exports=function(){"use strict";var e,a;function r(){return e.apply(null,arguments)}function i(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function s(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function u(t){return void 0===t}function o(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function l(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function d(t,e){var n,a=[];for(n=0;n<t.length;++n)a.push(e(t[n],n));return a}function c(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function f(t,e){for(var n in e)c(e,n)&&(t[n]=e[n]);return c(e,"toString")&&(t.toString=e.toString),c(e,"valueOf")&&(t.valueOf=e.valueOf),t}function h(t,e,n,a){return we(t,e,n,a,!0).utc()}function g(t){return null==t._pf&&(t._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),t._pf}function p(t){if(null==t._isValid){var e=g(t),n=a.call(e.parsedDateParts,(function(t){return null!=t})),r=!isNaN(t._d.getTime())&&e.overflow<0&&!e.empty&&!e.invalidMonth&&!e.invalidWeekday&&!e.weekdayMismatch&&!e.nullInput&&!e.invalidFormat&&!e.userInvalidated&&(!e.meridiem||e.meridiem&&n);if(t._strict&&(r=r&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour),null!=Object.isFrozen&&Object.isFrozen(t))return r;t._isValid=r}return t._isValid}function b(t){var e=h(NaN);return null!=t?f(g(e),t):g(e).userInvalidated=!0,e}a=Array.prototype.some?Array.prototype.some:function(t){for(var e=Object(this),n=e.length>>>0,a=0;a<n;a++)if(a in e&&t.call(this,e[a],a,e))return!0;return!1};var m=r.momentProperties=[];function y(t,e){var n,a,r;if(u(e._isAMomentObject)||(t._isAMomentObject=e._isAMomentObject),u(e._i)||(t._i=e._i),u(e._f)||(t._f=e._f),u(e._l)||(t._l=e._l),u(e._strict)||(t._strict=e._strict),u(e._tzm)||(t._tzm=e._tzm),u(e._isUTC)||(t._isUTC=e._isUTC),u(e._offset)||(t._offset=e._offset),u(e._pf)||(t._pf=g(e)),u(e._locale)||(t._locale=e._locale),m.length>0)for(n=0;n<m.length;n++)u(r=e[a=m[n]])||(t[a]=r);return t}var v=!1;function x(t){y(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===v&&(v=!0,r.updateOffset(this),v=!1)}function _(t){return t instanceof x||null!=t&&null!=t._isAMomentObject}function T(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function w(t){var e=+t,n=0;return 0!==e&&isFinite(e)&&(n=T(e)),n}function O(t,e,n){var a,r=Math.min(t.length,e.length),i=Math.abs(t.length-e.length),s=0;for(a=0;a<r;a++)(n&&t[a]!==e[a]||!n&&w(t[a])!==w(e[a]))&&s++;return s+i}function S(t){!1===r.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function I(t,e){var n=!0;return f((function(){if(null!=r.deprecationHandler&&r.deprecationHandler(null,t),n){for(var a,i=[],s=0;s<arguments.length;s++){if(a="","object"==typeof arguments[s]){for(var u in a+="\n["+s+"] ",arguments[0])a+=u+": "+arguments[0][u]+", ";a=a.slice(0,-2)}else a=arguments[s];i.push(a)}S(t+"\nArguments: "+Array.prototype.slice.call(i).join("")+"\n"+(new Error).stack),n=!1}return e.apply(this,arguments)}),e)}var N,C={};function R(t,e){null!=r.deprecationHandler&&r.deprecationHandler(t,e),C[t]||(S(e),C[t]=!0)}function A(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function k(t,e){var n,a=f({},t);for(n in e)c(e,n)&&(s(t[n])&&s(e[n])?(a[n]={},f(a[n],t[n]),f(a[n],e[n])):null!=e[n]?a[n]=e[n]:delete a[n]);for(n in t)c(t,n)&&!c(e,n)&&s(t[n])&&(a[n]=f({},a[n]));return a}function E(t){null!=t&&this.set(t)}r.suppressDeprecationWarnings=!1,r.deprecationHandler=null,N=Object.keys?Object.keys:function(t){var e,n=[];for(e in t)c(t,e)&&n.push(e);return n};var L={};function D(t,e){var n=t.toLowerCase();L[n]=L[n+"s"]=L[e]=t}function P(t){return"string"==typeof t?L[t]||L[t.toLowerCase()]:void 0}function M(t){var e,n,a={};for(n in t)c(t,n)&&(e=P(n))&&(a[e]=t[n]);return a}var q={};function j(t,e){q[t]=e}function F(t,e,n){var a=""+Math.abs(t);return(t>=0?n?"+":"":"-")+Math.pow(10,Math.max(0,e-a.length)).toString().substr(1)+a}var V=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,G=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,B={},z={};function Y(t,e,n,a){var r=a;"string"==typeof a&&(r=function(){return this[a]()}),t&&(z[t]=r),e&&(z[e[0]]=function(){return F(r.apply(this,arguments),e[1],e[2])}),n&&(z[n]=function(){return this.localeData().ordinal(r.apply(this,arguments),t)})}function H(t,e){return t.isValid()?(e=U(e,t.localeData()),B[e]=B[e]||function(t){var e,n,a,r=t.match(V);for(e=0,n=r.length;e<n;e++)r[e]=z[r[e]]?z[r[e]]:(a=r[e]).match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"");return function(e){var a,i="";for(a=0;a<n;a++)i+=A(r[a])?r[a].call(e,t):r[a];return i}}(e),B[e](t)):t.localeData().invalidDate()}function U(t,e){var n=5;function a(t){return e.longDateFormat(t)||t}for(G.lastIndex=0;n>=0&&G.test(t);)t=t.replace(G,a),G.lastIndex=0,n-=1;return t}var W=/\d/,K=/\d\d/,$=/\d{3}/,Z=/\d{4}/,J=/[+-]?\d{6}/,Q=/\d\d?/,X=/\d\d\d\d?/,tt=/\d\d\d\d\d\d?/,et=/\d{1,3}/,nt=/\d{1,4}/,at=/[+-]?\d{1,6}/,rt=/\d+/,it=/[+-]?\d+/,st=/Z|[+-]\d\d:?\d\d/gi,ut=/Z|[+-]\d\d(?::?\d\d)?/gi,ot=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,lt={};function dt(t,e,n){lt[t]=A(e)?e:function(t,a){return t&&n?n:e}}function ct(t,e){return c(lt,t)?lt[t](e._strict,e._locale):new RegExp(ft(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(t,e,n,a,r){return e||n||a||r}))))}function ft(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}var ht={};function gt(t,e){var n,a=e;for("string"==typeof t&&(t=[t]),o(e)&&(a=function(t,n){n[e]=w(t)}),n=0;n<t.length;n++)ht[t[n]]=a}function pt(t,e){gt(t,(function(t,n,a,r){a._w=a._w||{},e(t,a._w,a,r)}))}function bt(t,e,n){null!=e&&c(ht,t)&&ht[t](e,n._a,n,t)}function mt(t){return yt(t)?366:365}function yt(t){return t%4==0&&t%100!=0||t%400==0}Y("Y",0,0,(function(){var t=this.year();return t<=9999?""+t:"+"+t})),Y(0,["YY",2],0,(function(){return this.year()%100})),Y(0,["YYYY",4],0,"year"),Y(0,["YYYYY",5],0,"year"),Y(0,["YYYYYY",6,!0],0,"year"),D("year","y"),j("year",1),dt("Y",it),dt("YY",Q,K),dt("YYYY",nt,Z),dt("YYYYY",at,J),dt("YYYYYY",at,J),gt(["YYYYY","YYYYYY"],0),gt("YYYY",(function(t,e){e[0]=2===t.length?r.parseTwoDigitYear(t):w(t)})),gt("YY",(function(t,e){e[0]=r.parseTwoDigitYear(t)})),gt("Y",(function(t,e){e[0]=parseInt(t,10)})),r.parseTwoDigitYear=function(t){return w(t)+(w(t)>68?1900:2e3)};var vt,xt=_t("FullYear",!0);function _t(t,e){return function(n){return null!=n?(wt(this,t,n),r.updateOffset(this,e),this):Tt(this,t)}}function Tt(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function wt(t,e,n){t.isValid()&&!isNaN(n)&&("FullYear"===e&&yt(t.year())&&1===t.month()&&29===t.date()?t._d["set"+(t._isUTC?"UTC":"")+e](n,t.month(),Ot(n,t.month())):t._d["set"+(t._isUTC?"UTC":"")+e](n))}function Ot(t,e){if(isNaN(t)||isNaN(e))return NaN;var n=(e%12+12)%12;return t+=(e-n)/12,1===n?yt(t)?29:28:31-n%7%2}vt=Array.prototype.indexOf?Array.prototype.indexOf:function(t){var e;for(e=0;e<this.length;++e)if(this[e]===t)return e;return-1},Y("M",["MM",2],"Mo",(function(){return this.month()+1})),Y("MMM",0,0,(function(t){return this.localeData().monthsShort(this,t)})),Y("MMMM",0,0,(function(t){return this.localeData().months(this,t)})),D("month","M"),j("month",8),dt("M",Q),dt("MM",Q,K),dt("MMM",(function(t,e){return e.monthsShortRegex(t)})),dt("MMMM",(function(t,e){return e.monthsRegex(t)})),gt(["M","MM"],(function(t,e){e[1]=w(t)-1})),gt(["MMM","MMMM"],(function(t,e,n,a){var r=n._locale.monthsParse(t,a,n._strict);null!=r?e[1]=r:g(n).invalidMonth=t}));var St=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,It="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Nt="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_");function Ct(t,e,n){var a,r,i,s=t.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],a=0;a<12;++a)i=h([2e3,a]),this._shortMonthsParse[a]=this.monthsShort(i,"").toLocaleLowerCase(),this._longMonthsParse[a]=this.months(i,"").toLocaleLowerCase();return n?"MMM"===e?-1!==(r=vt.call(this._shortMonthsParse,s))?r:null:-1!==(r=vt.call(this._longMonthsParse,s))?r:null:"MMM"===e?-1!==(r=vt.call(this._shortMonthsParse,s))||-1!==(r=vt.call(this._longMonthsParse,s))?r:null:-1!==(r=vt.call(this._longMonthsParse,s))||-1!==(r=vt.call(this._shortMonthsParse,s))?r:null}function Rt(t,e){var n;if(!t.isValid())return t;if("string"==typeof e)if(/^\d+$/.test(e))e=w(e);else if(!o(e=t.localeData().monthsParse(e)))return t;return n=Math.min(t.date(),Ot(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,n),t}function At(t){return null!=t?(Rt(this,t),r.updateOffset(this,!0),this):Tt(this,"Month")}var kt=ot,Et=ot;function Lt(){function t(t,e){return e.length-t.length}var e,n,a=[],r=[],i=[];for(e=0;e<12;e++)n=h([2e3,e]),a.push(this.monthsShort(n,"")),r.push(this.months(n,"")),i.push(this.months(n,"")),i.push(this.monthsShort(n,""));for(a.sort(t),r.sort(t),i.sort(t),e=0;e<12;e++)a[e]=ft(a[e]),r[e]=ft(r[e]);for(e=0;e<24;e++)i[e]=ft(i[e]);this._monthsRegex=new RegExp("^("+i.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+r.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Dt(t,e,n,a,r,i,s){var u;return t<100&&t>=0?(u=new Date(t+400,e,n,a,r,i,s),isFinite(u.getFullYear())&&u.setFullYear(t)):u=new Date(t,e,n,a,r,i,s),u}function Pt(t){var e;if(t<100&&t>=0){var n=Array.prototype.slice.call(arguments);n[0]=t+400,e=new Date(Date.UTC.apply(null,n)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t)}else e=new Date(Date.UTC.apply(null,arguments));return e}function Mt(t,e,n){var a=7+e-n;return-(7+Pt(t,0,a).getUTCDay()-e)%7+a-1}function qt(t,e,n,a,r){var i,s,u=1+7*(e-1)+(7+n-a)%7+Mt(t,a,r);return u<=0?s=mt(i=t-1)+u:u>mt(t)?(i=t+1,s=u-mt(t)):(i=t,s=u),{year:i,dayOfYear:s}}function jt(t,e,n){var a,r,i=Mt(t.year(),e,n),s=Math.floor((t.dayOfYear()-i-1)/7)+1;return s<1?a=s+Ft(r=t.year()-1,e,n):s>Ft(t.year(),e,n)?(a=s-Ft(t.year(),e,n),r=t.year()+1):(r=t.year(),a=s),{week:a,year:r}}function Ft(t,e,n){var a=Mt(t,e,n),r=Mt(t+1,e,n);return(mt(t)-a+r)/7}function Vt(t,e){return t.slice(e,7).concat(t.slice(0,e))}Y("w",["ww",2],"wo","week"),Y("W",["WW",2],"Wo","isoWeek"),D("week","w"),D("isoWeek","W"),j("week",5),j("isoWeek",5),dt("w",Q),dt("ww",Q,K),dt("W",Q),dt("WW",Q,K),pt(["w","ww","W","WW"],(function(t,e,n,a){e[a.substr(0,1)]=w(t)})),Y("d",0,"do","day"),Y("dd",0,0,(function(t){return this.localeData().weekdaysMin(this,t)})),Y("ddd",0,0,(function(t){return this.localeData().weekdaysShort(this,t)})),Y("dddd",0,0,(function(t){return this.localeData().weekdays(this,t)})),Y("e",0,0,"weekday"),Y("E",0,0,"isoWeekday"),D("day","d"),D("weekday","e"),D("isoWeekday","E"),j("day",11),j("weekday",11),j("isoWeekday",11),dt("d",Q),dt("e",Q),dt("E",Q),dt("dd",(function(t,e){return e.weekdaysMinRegex(t)})),dt("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),dt("dddd",(function(t,e){return e.weekdaysRegex(t)})),pt(["dd","ddd","dddd"],(function(t,e,n,a){var r=n._locale.weekdaysParse(t,a,n._strict);null!=r?e.d=r:g(n).invalidWeekday=t})),pt(["d","e","E"],(function(t,e,n,a){e[a]=w(t)}));var Gt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Bt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),zt="Su_Mo_Tu_We_Th_Fr_Sa".split("_");function Yt(t,e,n){var a,r,i,s=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],a=0;a<7;++a)i=h([2e3,1]).day(a),this._minWeekdaysParse[a]=this.weekdaysMin(i,"").toLocaleLowerCase(),this._shortWeekdaysParse[a]=this.weekdaysShort(i,"").toLocaleLowerCase(),this._weekdaysParse[a]=this.weekdays(i,"").toLocaleLowerCase();return n?"dddd"===e?-1!==(r=vt.call(this._weekdaysParse,s))?r:null:"ddd"===e?-1!==(r=vt.call(this._shortWeekdaysParse,s))?r:null:-1!==(r=vt.call(this._minWeekdaysParse,s))?r:null:"dddd"===e?-1!==(r=vt.call(this._weekdaysParse,s))||-1!==(r=vt.call(this._shortWeekdaysParse,s))||-1!==(r=vt.call(this._minWeekdaysParse,s))?r:null:"ddd"===e?-1!==(r=vt.call(this._shortWeekdaysParse,s))||-1!==(r=vt.call(this._weekdaysParse,s))||-1!==(r=vt.call(this._minWeekdaysParse,s))?r:null:-1!==(r=vt.call(this._minWeekdaysParse,s))||-1!==(r=vt.call(this._weekdaysParse,s))||-1!==(r=vt.call(this._shortWeekdaysParse,s))?r:null}var Ht=ot,Ut=ot,Wt=ot;function Kt(){function t(t,e){return e.length-t.length}var e,n,a,r,i,s=[],u=[],o=[],l=[];for(e=0;e<7;e++)n=h([2e3,1]).day(e),a=this.weekdaysMin(n,""),r=this.weekdaysShort(n,""),i=this.weekdays(n,""),s.push(a),u.push(r),o.push(i),l.push(a),l.push(r),l.push(i);for(s.sort(t),u.sort(t),o.sort(t),l.sort(t),e=0;e<7;e++)u[e]=ft(u[e]),o[e]=ft(o[e]),l[e]=ft(l[e]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+s.join("|")+")","i")}function $t(){return this.hours()%12||12}function Zt(t,e){Y(t,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)}))}function Jt(t,e){return e._meridiemParse}Y("H",["HH",2],0,"hour"),Y("h",["hh",2],0,$t),Y("k",["kk",2],0,(function(){return this.hours()||24})),Y("hmm",0,0,(function(){return""+$t.apply(this)+F(this.minutes(),2)})),Y("hmmss",0,0,(function(){return""+$t.apply(this)+F(this.minutes(),2)+F(this.seconds(),2)})),Y("Hmm",0,0,(function(){return""+this.hours()+F(this.minutes(),2)})),Y("Hmmss",0,0,(function(){return""+this.hours()+F(this.minutes(),2)+F(this.seconds(),2)})),Zt("a",!0),Zt("A",!1),D("hour","h"),j("hour",13),dt("a",Jt),dt("A",Jt),dt("H",Q),dt("h",Q),dt("k",Q),dt("HH",Q,K),dt("hh",Q,K),dt("kk",Q,K),dt("hmm",X),dt("hmmss",tt),dt("Hmm",X),dt("Hmmss",tt),gt(["H","HH"],3),gt(["k","kk"],(function(t,e,n){var a=w(t);e[3]=24===a?0:a})),gt(["a","A"],(function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t})),gt(["h","hh"],(function(t,e,n){e[3]=w(t),g(n).bigHour=!0})),gt("hmm",(function(t,e,n){var a=t.length-2;e[3]=w(t.substr(0,a)),e[4]=w(t.substr(a)),g(n).bigHour=!0})),gt("hmmss",(function(t,e,n){var a=t.length-4,r=t.length-2;e[3]=w(t.substr(0,a)),e[4]=w(t.substr(a,2)),e[5]=w(t.substr(r)),g(n).bigHour=!0})),gt("Hmm",(function(t,e,n){var a=t.length-2;e[3]=w(t.substr(0,a)),e[4]=w(t.substr(a))})),gt("Hmmss",(function(t,e,n){var a=t.length-4,r=t.length-2;e[3]=w(t.substr(0,a)),e[4]=w(t.substr(a,2)),e[5]=w(t.substr(r))}));var Qt,Xt=_t("Hours",!0),te={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:It,monthsShort:Nt,week:{dow:0,doy:6},weekdays:Gt,weekdaysMin:zt,weekdaysShort:Bt,meridiemParse:/[ap]\.?m?\.?/i},ee={},ne={};function ae(t){return t?t.toLowerCase().replace("_","-"):t}function re(e){var a=null;if(!ee[e]&&void 0!==t&&t&&t.exports)try{a=Qt._abbr,n("RnhZ")("./"+e),ie(a)}catch(r){}return ee[e]}function ie(t,e){var n;return t&&((n=u(e)?ue(t):se(t,e))?Qt=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),Qt._abbr}function se(t,e){if(null!==e){var n,a=te;if(e.abbr=t,null!=ee[t])R("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),a=ee[t]._config;else if(null!=e.parentLocale)if(null!=ee[e.parentLocale])a=ee[e.parentLocale]._config;else{if(null==(n=re(e.parentLocale)))return ne[e.parentLocale]||(ne[e.parentLocale]=[]),ne[e.parentLocale].push({name:t,config:e}),null;a=n._config}return ee[t]=new E(k(a,e)),ne[t]&&ne[t].forEach((function(t){se(t.name,t.config)})),ie(t),ee[t]}return delete ee[t],null}function ue(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Qt;if(!i(t)){if(e=re(t))return e;t=[t]}return function(t){for(var e,n,a,r,i=0;i<t.length;){for(e=(r=ae(t[i]).split("-")).length,n=(n=ae(t[i+1]))?n.split("-"):null;e>0;){if(a=re(r.slice(0,e).join("-")))return a;if(n&&n.length>=e&&O(r,n,!0)>=e-1)break;e--}i++}return Qt}(t)}function oe(t){var e,n=t._a;return n&&-2===g(t).overflow&&(e=n[1]<0||n[1]>11?1:n[2]<1||n[2]>Ot(n[0],n[1])?2:n[3]<0||n[3]>24||24===n[3]&&(0!==n[4]||0!==n[5]||0!==n[6])?3:n[4]<0||n[4]>59?4:n[5]<0||n[5]>59?5:n[6]<0||n[6]>999?6:-1,g(t)._overflowDayOfYear&&(e<0||e>2)&&(e=2),g(t)._overflowWeeks&&-1===e&&(e=7),g(t)._overflowWeekday&&-1===e&&(e=8),g(t).overflow=e),t}function le(t,e,n){return null!=t?t:null!=e?e:n}function de(t){var e,n,a,i,s,u=[];if(!t._d){for(a=function(t){var e=new Date(r.now());return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}(t),t._w&&null==t._a[2]&&null==t._a[1]&&function(t){var e,n,a,r,i,s,u,o;if(null!=(e=t._w).GG||null!=e.W||null!=e.E)i=1,s=4,n=le(e.GG,t._a[0],jt(Oe(),1,4).year),a=le(e.W,1),((r=le(e.E,1))<1||r>7)&&(o=!0);else{i=t._locale._week.dow,s=t._locale._week.doy;var l=jt(Oe(),i,s);n=le(e.gg,t._a[0],l.year),a=le(e.w,l.week),null!=e.d?((r=e.d)<0||r>6)&&(o=!0):null!=e.e?(r=e.e+i,(e.e<0||e.e>6)&&(o=!0)):r=i}a<1||a>Ft(n,i,s)?g(t)._overflowWeeks=!0:null!=o?g(t)._overflowWeekday=!0:(u=qt(n,a,r,i,s),t._a[0]=u.year,t._dayOfYear=u.dayOfYear)}(t),null!=t._dayOfYear&&(s=le(t._a[0],a[0]),(t._dayOfYear>mt(s)||0===t._dayOfYear)&&(g(t)._overflowDayOfYear=!0),n=Pt(s,0,t._dayOfYear),t._a[1]=n.getUTCMonth(),t._a[2]=n.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=u[e]=a[e];for(;e<7;e++)t._a[e]=u[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[3]&&0===t._a[4]&&0===t._a[5]&&0===t._a[6]&&(t._nextDay=!0,t._a[3]=0),t._d=(t._useUTC?Pt:Dt).apply(null,u),i=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[3]=24),t._w&&void 0!==t._w.d&&t._w.d!==i&&(g(t).weekdayMismatch=!0)}}var ce=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fe=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,he=/Z|[+-]\d\d(?::?\d\d)?/,ge=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],pe=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],be=/^\/?Date\((\-?\d+)/i;function me(t){var e,n,a,r,i,s,u=t._i,o=ce.exec(u)||fe.exec(u);if(o){for(g(t).iso=!0,e=0,n=ge.length;e<n;e++)if(ge[e][1].exec(o[1])){r=ge[e][0],a=!1!==ge[e][2];break}if(null==r)return void(t._isValid=!1);if(o[3]){for(e=0,n=pe.length;e<n;e++)if(pe[e][1].exec(o[3])){i=(o[2]||" ")+pe[e][0];break}if(null==i)return void(t._isValid=!1)}if(!a&&null!=i)return void(t._isValid=!1);if(o[4]){if(!he.exec(o[4]))return void(t._isValid=!1);s="Z"}t._f=r+(i||"")+(s||""),_e(t)}else t._isValid=!1}var ye=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,ve={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function xe(t){var e,n,a,r,i,s,u,o,l=ye.exec(t._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,""));if(l){var d=(e=l[3],n=l[2],a=l[5],r=l[6],i=l[7],s=[(u=l[4],o=parseInt(u,10),o<=49?2e3+o:o<=999?1900+o:o),Nt.indexOf(e),parseInt(n,10),parseInt(a,10),parseInt(r,10)],i&&s.push(parseInt(i,10)),s);if(!function(t,e,n){return!t||Bt.indexOf(t)===new Date(e[0],e[1],e[2]).getDay()||(g(n).weekdayMismatch=!0,n._isValid=!1,!1)}(l[1],d,t))return;t._a=d,t._tzm=function(t,e,n){if(t)return ve[t];if(e)return 0;var a=parseInt(n,10),r=a%100;return(a-r)/100*60+r}(l[8],l[9],l[10]),t._d=Pt.apply(null,t._a),t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),g(t).rfc2822=!0}else t._isValid=!1}function _e(t){if(t._f!==r.ISO_8601)if(t._f!==r.RFC_2822){t._a=[],g(t).empty=!0;var e,n,a,i,s,u=""+t._i,o=u.length,l=0;for(a=U(t._f,t._locale).match(V)||[],e=0;e<a.length;e++)(n=(u.match(ct(i=a[e],t))||[])[0])&&((s=u.substr(0,u.indexOf(n))).length>0&&g(t).unusedInput.push(s),u=u.slice(u.indexOf(n)+n.length),l+=n.length),z[i]?(n?g(t).empty=!1:g(t).unusedTokens.push(i),bt(i,n,t)):t._strict&&!n&&g(t).unusedTokens.push(i);g(t).charsLeftOver=o-l,u.length>0&&g(t).unusedInput.push(u),t._a[3]<=12&&!0===g(t).bigHour&&t._a[3]>0&&(g(t).bigHour=void 0),g(t).parsedDateParts=t._a.slice(0),g(t).meridiem=t._meridiem,t._a[3]=function(t,e,n){var a;return null==n?e:null!=t.meridiemHour?t.meridiemHour(e,n):null!=t.isPM?((a=t.isPM(n))&&e<12&&(e+=12),a||12!==e||(e=0),e):e}(t._locale,t._a[3],t._meridiem),de(t),oe(t)}else xe(t);else me(t)}function Te(t){var e=t._i,n=t._f;return t._locale=t._locale||ue(t._l),null===e||void 0===n&&""===e?b({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),_(e)?new x(oe(e)):(l(e)?t._d=e:i(n)?function(t){var e,n,a,r,i;if(0===t._f.length)return g(t).invalidFormat=!0,void(t._d=new Date(NaN));for(r=0;r<t._f.length;r++)i=0,e=y({},t),null!=t._useUTC&&(e._useUTC=t._useUTC),e._f=t._f[r],_e(e),p(e)&&(i+=g(e).charsLeftOver,i+=10*g(e).unusedTokens.length,g(e).score=i,(null==a||i<a)&&(a=i,n=e));f(t,n||e)}(t):n?_e(t):function(t){var e=t._i;u(e)?t._d=new Date(r.now()):l(e)?t._d=new Date(e.valueOf()):"string"==typeof e?function(t){var e=be.exec(t._i);null===e?(me(t),!1===t._isValid&&(delete t._isValid,xe(t),!1===t._isValid&&(delete t._isValid,r.createFromInputFallback(t)))):t._d=new Date(+e[1])}(t):i(e)?(t._a=d(e.slice(0),(function(t){return parseInt(t,10)})),de(t)):s(e)?function(t){if(!t._d){var e=M(t._i);t._a=d([e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],(function(t){return t&&parseInt(t,10)})),de(t)}}(t):o(e)?t._d=new Date(e):r.createFromInputFallback(t)}(t),p(t)||(t._d=null),t))}function we(t,e,n,a,r){var u,o={};return!0!==n&&!1!==n||(a=n,n=void 0),(s(t)&&function(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;var e;for(e in t)if(t.hasOwnProperty(e))return!1;return!0}(t)||i(t)&&0===t.length)&&(t=void 0),o._isAMomentObject=!0,o._useUTC=o._isUTC=r,o._l=n,o._i=t,o._f=e,o._strict=a,(u=new x(oe(Te(o))))._nextDay&&(u.add(1,"d"),u._nextDay=void 0),u}function Oe(t,e,n,a){return we(t,e,n,a,!1)}r.createFromInputFallback=I("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",(function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))})),r.ISO_8601=function(){},r.RFC_2822=function(){};var Se=I("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=Oe.apply(null,arguments);return this.isValid()&&t.isValid()?t<this?this:t:b()})),Ie=I("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=Oe.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:b()}));function Ne(t,e){var n,a;if(1===e.length&&i(e[0])&&(e=e[0]),!e.length)return Oe();for(n=e[0],a=1;a<e.length;++a)e[a].isValid()&&!e[a][t](n)||(n=e[a]);return n}var Ce=["year","quarter","month","week","day","hour","minute","second","millisecond"];function Re(t){var e=M(t),n=e.year||0,a=e.quarter||0,r=e.month||0,i=e.week||e.isoWeek||0,s=e.day||0,u=e.hour||0,o=e.minute||0,l=e.second||0,d=e.millisecond||0;this._isValid=function(t){for(var e in t)if(-1===vt.call(Ce,e)||null!=t[e]&&isNaN(t[e]))return!1;for(var n=!1,a=0;a<Ce.length;++a)if(t[Ce[a]]){if(n)return!1;parseFloat(t[Ce[a]])!==w(t[Ce[a]])&&(n=!0)}return!0}(e),this._milliseconds=+d+1e3*l+6e4*o+1e3*u*60*60,this._days=+s+7*i,this._months=+r+3*a+12*n,this._data={},this._locale=ue(),this._bubble()}function Ae(t){return t instanceof Re}function ke(t){return t<0?-1*Math.round(-1*t):Math.round(t)}function Ee(t,e){Y(t,0,0,(function(){var t=this.utcOffset(),n="+";return t<0&&(t=-t,n="-"),n+F(~~(t/60),2)+e+F(~~t%60,2)}))}Ee("Z",":"),Ee("ZZ",""),dt("Z",ut),dt("ZZ",ut),gt(["Z","ZZ"],(function(t,e,n){n._useUTC=!0,n._tzm=De(ut,t)}));var Le=/([\+\-]|\d\d)/gi;function De(t,e){var n=(e||"").match(t);if(null===n)return null;var a=((n[n.length-1]||[])+"").match(Le)||["-",0,0],r=60*a[1]+w(a[2]);return 0===r?0:"+"===a[0]?r:-r}function Pe(t,e){var n,a;return e._isUTC?(n=e.clone(),a=(_(t)||l(t)?t.valueOf():Oe(t).valueOf())-n.valueOf(),n._d.setTime(n._d.valueOf()+a),r.updateOffset(n,!1),n):Oe(t).local()}function Me(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function qe(){return!!this.isValid()&&this._isUTC&&0===this._offset}r.updateOffset=function(){};var je=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Fe=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Ve(t,e){var n,a,r,i,s,u,l=t,d=null;return Ae(t)?l={ms:t._milliseconds,d:t._days,M:t._months}:o(t)?(l={},e?l[e]=t:l.milliseconds=t):(d=je.exec(t))?(n="-"===d[1]?-1:1,l={y:0,d:w(d[2])*n,h:w(d[3])*n,m:w(d[4])*n,s:w(d[5])*n,ms:w(ke(1e3*d[6]))*n}):(d=Fe.exec(t))?l={y:Ge(d[2],n="-"===d[1]?-1:1),M:Ge(d[3],n),w:Ge(d[4],n),d:Ge(d[5],n),h:Ge(d[6],n),m:Ge(d[7],n),s:Ge(d[8],n)}:null==l?l={}:"object"==typeof l&&("from"in l||"to"in l)&&(i=Oe(l.from),s=Oe(l.to),r=i.isValid()&&s.isValid()?(s=Pe(s,i),i.isBefore(s)?u=Be(i,s):((u=Be(s,i)).milliseconds=-u.milliseconds,u.months=-u.months),u):{milliseconds:0,months:0},(l={}).ms=r.milliseconds,l.M=r.months),a=new Re(l),Ae(t)&&c(t,"_locale")&&(a._locale=t._locale),a}function Ge(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function Be(t,e){var n={};return n.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function ze(t,e){return function(n,a){var r;return null===a||isNaN(+a)||(R(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),r=n,n=a,a=r),Ye(this,Ve(n="string"==typeof n?+n:n,a),t),this}}function Ye(t,e,n,a){var i=e._milliseconds,s=ke(e._days),u=ke(e._months);t.isValid()&&(a=null==a||a,u&&Rt(t,Tt(t,"Month")+u*n),s&&wt(t,"Date",Tt(t,"Date")+s*n),i&&t._d.setTime(t._d.valueOf()+i*n),a&&r.updateOffset(t,s||u))}Ve.fn=Re.prototype,Ve.invalid=function(){return Ve(NaN)};var He=ze(1,"add"),Ue=ze(-1,"subtract");function We(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),a=t.clone().add(n,"months");return-(n+(e-a<0?(e-a)/(a-t.clone().add(n-1,"months")):(e-a)/(t.clone().add(n+1,"months")-a)))||0}function Ke(t){var e;return void 0===t?this._locale._abbr:(null!=(e=ue(t))&&(this._locale=e),this)}r.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",r.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var $e=I("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(t){return void 0===t?this.localeData():this.locale(t)}));function Ze(){return this._locale}function Je(t,e){return(t%e+e)%e}function Qe(t,e,n){return t<100&&t>=0?new Date(t+400,e,n)-126227808e5:new Date(t,e,n).valueOf()}function Xe(t,e,n){return t<100&&t>=0?Date.UTC(t+400,e,n)-126227808e5:Date.UTC(t,e,n)}function tn(t,e){Y(0,[t,t.length],0,e)}function en(t,e,n,a,r){var i;return null==t?jt(this,a,r).year:(e>(i=Ft(t,a,r))&&(e=i),nn.call(this,t,e,n,a,r))}function nn(t,e,n,a,r){var i=qt(t,e,n,a,r),s=Pt(i.year,0,i.dayOfYear);return this.year(s.getUTCFullYear()),this.month(s.getUTCMonth()),this.date(s.getUTCDate()),this}Y(0,["gg",2],0,(function(){return this.weekYear()%100})),Y(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),tn("gggg","weekYear"),tn("ggggg","weekYear"),tn("GGGG","isoWeekYear"),tn("GGGGG","isoWeekYear"),D("weekYear","gg"),D("isoWeekYear","GG"),j("weekYear",1),j("isoWeekYear",1),dt("G",it),dt("g",it),dt("GG",Q,K),dt("gg",Q,K),dt("GGGG",nt,Z),dt("gggg",nt,Z),dt("GGGGG",at,J),dt("ggggg",at,J),pt(["gggg","ggggg","GGGG","GGGGG"],(function(t,e,n,a){e[a.substr(0,2)]=w(t)})),pt(["gg","GG"],(function(t,e,n,a){e[a]=r.parseTwoDigitYear(t)})),Y("Q",0,"Qo","quarter"),D("quarter","Q"),j("quarter",7),dt("Q",W),gt("Q",(function(t,e){e[1]=3*(w(t)-1)})),Y("D",["DD",2],"Do","date"),D("date","D"),j("date",9),dt("D",Q),dt("DD",Q,K),dt("Do",(function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient})),gt(["D","DD"],2),gt("Do",(function(t,e){e[2]=w(t.match(Q)[0])}));var an=_t("Date",!0);Y("DDD",["DDDD",3],"DDDo","dayOfYear"),D("dayOfYear","DDD"),j("dayOfYear",4),dt("DDD",et),dt("DDDD",$),gt(["DDD","DDDD"],(function(t,e,n){n._dayOfYear=w(t)})),Y("m",["mm",2],0,"minute"),D("minute","m"),j("minute",14),dt("m",Q),dt("mm",Q,K),gt(["m","mm"],4);var rn=_t("Minutes",!1);Y("s",["ss",2],0,"second"),D("second","s"),j("second",15),dt("s",Q),dt("ss",Q,K),gt(["s","ss"],5);var sn,un=_t("Seconds",!1);for(Y("S",0,0,(function(){return~~(this.millisecond()/100)})),Y(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),Y(0,["SSS",3],0,"millisecond"),Y(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),Y(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),Y(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),Y(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),Y(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),Y(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),D("millisecond","ms"),j("millisecond",16),dt("S",et,W),dt("SS",et,K),dt("SSS",et,$),sn="SSSS";sn.length<=9;sn+="S")dt(sn,rt);function on(t,e){e[6]=w(1e3*("0."+t))}for(sn="S";sn.length<=9;sn+="S")gt(sn,on);var ln=_t("Milliseconds",!1);Y("z",0,0,"zoneAbbr"),Y("zz",0,0,"zoneName");var dn=x.prototype;function cn(t){return t}dn.add=He,dn.calendar=function(t,e){var n=t||Oe(),a=Pe(n,this).startOf("day"),i=r.calendarFormat(this,a)||"sameElse",s=e&&(A(e[i])?e[i].call(this,n):e[i]);return this.format(s||this.localeData().calendar(i,this,Oe(n)))},dn.clone=function(){return new x(this)},dn.diff=function(t,e,n){var a,r,i;if(!this.isValid())return NaN;if(!(a=Pe(t,this)).isValid())return NaN;switch(r=6e4*(a.utcOffset()-this.utcOffset()),e=P(e)){case"year":i=We(this,a)/12;break;case"month":i=We(this,a);break;case"quarter":i=We(this,a)/3;break;case"second":i=(this-a)/1e3;break;case"minute":i=(this-a)/6e4;break;case"hour":i=(this-a)/36e5;break;case"day":i=(this-a-r)/864e5;break;case"week":i=(this-a-r)/6048e5;break;default:i=this-a}return n?i:T(i)},dn.endOf=function(t){var e;if(void 0===(t=P(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Xe:Qe;switch(t){case"year":e=n(this.year()+1,0,1)-1;break;case"quarter":e=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":e=n(this.year(),this.month()+1,1)-1;break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":e=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":e=this._d.valueOf(),e+=36e5-Je(e+(this._isUTC?0:6e4*this.utcOffset()),36e5)-1;break;case"minute":e=this._d.valueOf(),e+=6e4-Je(e,6e4)-1;break;case"second":e=this._d.valueOf(),e+=1e3-Je(e,1e3)-1}return this._d.setTime(e),r.updateOffset(this,!0),this},dn.format=function(t){t||(t=this.isUtc()?r.defaultFormatUtc:r.defaultFormat);var e=H(this,t);return this.localeData().postformat(e)},dn.from=function(t,e){return this.isValid()&&(_(t)&&t.isValid()||Oe(t).isValid())?Ve({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},dn.fromNow=function(t){return this.from(Oe(),t)},dn.to=function(t,e){return this.isValid()&&(_(t)&&t.isValid()||Oe(t).isValid())?Ve({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},dn.toNow=function(t){return this.to(Oe(),t)},dn.get=function(t){return A(this[t=P(t)])?this[t]():this},dn.invalidAt=function(){return g(this).overflow},dn.isAfter=function(t,e){var n=_(t)?t:Oe(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=P(e)||"millisecond")?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(e).valueOf())},dn.isBefore=function(t,e){var n=_(t)?t:Oe(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=P(e)||"millisecond")?this.valueOf()<n.valueOf():this.clone().endOf(e).valueOf()<n.valueOf())},dn.isBetween=function(t,e,n,a){var r=_(t)?t:Oe(t),i=_(e)?e:Oe(e);return!!(this.isValid()&&r.isValid()&&i.isValid())&&("("===(a=a||"()")[0]?this.isAfter(r,n):!this.isBefore(r,n))&&(")"===a[1]?this.isBefore(i,n):!this.isAfter(i,n))},dn.isSame=function(t,e){var n,a=_(t)?t:Oe(t);return!(!this.isValid()||!a.isValid())&&("millisecond"===(e=P(e)||"millisecond")?this.valueOf()===a.valueOf():(n=a.valueOf(),this.clone().startOf(e).valueOf()<=n&&n<=this.clone().endOf(e).valueOf()))},dn.isSameOrAfter=function(t,e){return this.isSame(t,e)||this.isAfter(t,e)},dn.isSameOrBefore=function(t,e){return this.isSame(t,e)||this.isBefore(t,e)},dn.isValid=function(){return p(this)},dn.lang=$e,dn.locale=Ke,dn.localeData=Ze,dn.max=Ie,dn.min=Se,dn.parsingFlags=function(){return f({},g(this))},dn.set=function(t,e){if("object"==typeof t)for(var n=function(t){var e=[];for(var n in t)e.push({unit:n,priority:q[n]});return e.sort((function(t,e){return t.priority-e.priority})),e}(t=M(t)),a=0;a<n.length;a++)this[n[a].unit](t[n[a].unit]);else if(A(this[t=P(t)]))return this[t](e);return this},dn.startOf=function(t){var e;if(void 0===(t=P(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Xe:Qe;switch(t){case"year":e=n(this.year(),0,1);break;case"quarter":e=n(this.year(),this.month()-this.month()%3,1);break;case"month":e=n(this.year(),this.month(),1);break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":e=n(this.year(),this.month(),this.date());break;case"hour":e=this._d.valueOf(),e-=Je(e+(this._isUTC?0:6e4*this.utcOffset()),36e5);break;case"minute":e=this._d.valueOf(),e-=Je(e,6e4);break;case"second":e=this._d.valueOf(),e-=Je(e,1e3)}return this._d.setTime(e),r.updateOffset(this,!0),this},dn.subtract=Ue,dn.toArray=function(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]},dn.toObject=function(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}},dn.toDate=function(){return new Date(this.valueOf())},dn.toISOString=function(t){if(!this.isValid())return null;var e=!0!==t,n=e?this.clone().utc():this;return n.year()<0||n.year()>9999?H(n,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):A(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",H(n,"Z")):H(n,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},dn.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t="moment",e="";this.isLocal()||(t=0===this.utcOffset()?"moment.utc":"moment.parseZone",e="Z");var n="["+t+'("]',a=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY";return this.format(n+a+"-MM-DD[T]HH:mm:ss.SSS"+e+'[")]')},dn.toJSON=function(){return this.isValid()?this.toISOString():null},dn.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},dn.unix=function(){return Math.floor(this.valueOf()/1e3)},dn.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},dn.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},dn.year=xt,dn.isLeapYear=function(){return yt(this.year())},dn.weekYear=function(t){return en.call(this,t,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)},dn.isoWeekYear=function(t){return en.call(this,t,this.isoWeek(),this.isoWeekday(),1,4)},dn.quarter=dn.quarters=function(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)},dn.month=At,dn.daysInMonth=function(){return Ot(this.year(),this.month())},dn.week=dn.weeks=function(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")},dn.isoWeek=dn.isoWeeks=function(t){var e=jt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")},dn.weeksInYear=function(){var t=this.localeData()._week;return Ft(this.year(),t.dow,t.doy)},dn.isoWeeksInYear=function(){return Ft(this.year(),1,4)},dn.date=an,dn.day=dn.days=function(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=function(t,e){return"string"!=typeof t?t:isNaN(t)?"number"==typeof(t=e.weekdaysParse(t))?t:null:parseInt(t,10)}(t,this.localeData()),this.add(t-e,"d")):e},dn.weekday=function(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")},dn.isoWeekday=function(t){if(!this.isValid())return null!=t?this:NaN;if(null!=t){var e=function(t,e){return"string"==typeof t?e.weekdaysParse(t)%7||7:isNaN(t)?null:t}(t,this.localeData());return this.day(this.day()%7?e:e-7)}return this.day()||7},dn.dayOfYear=function(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")},dn.hour=dn.hours=Xt,dn.minute=dn.minutes=rn,dn.second=dn.seconds=un,dn.millisecond=dn.milliseconds=ln,dn.utcOffset=function(t,e,n){var a,i=this._offset||0;if(!this.isValid())return null!=t?this:NaN;if(null!=t){if("string"==typeof t){if(null===(t=De(ut,t)))return this}else Math.abs(t)<16&&!n&&(t*=60);return!this._isUTC&&e&&(a=Me(this)),this._offset=t,this._isUTC=!0,null!=a&&this.add(a,"m"),i!==t&&(!e||this._changeInProgress?Ye(this,Ve(t-i,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,r.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?i:Me(this)},dn.utc=function(t){return this.utcOffset(0,t)},dn.local=function(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Me(this),"m")),this},dn.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var t=De(st,this._i);null!=t?this.utcOffset(t):this.utcOffset(0,!0)}return this},dn.hasAlignedHourOffset=function(t){return!!this.isValid()&&(t=t?Oe(t).utcOffset():0,(this.utcOffset()-t)%60==0)},dn.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},dn.isLocal=function(){return!!this.isValid()&&!this._isUTC},dn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},dn.isUtc=qe,dn.isUTC=qe,dn.zoneAbbr=function(){return this._isUTC?"UTC":""},dn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},dn.dates=I("dates accessor is deprecated. Use date instead.",an),dn.months=I("months accessor is deprecated. Use month instead",At),dn.years=I("years accessor is deprecated. Use year instead",xt),dn.zone=I("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",(function(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()})),dn.isDSTShifted=I("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",(function(){if(!u(this._isDSTShifted))return this._isDSTShifted;var t={};if(y(t,this),(t=Te(t))._a){var e=t._isUTC?h(t._a):Oe(t._a);this._isDSTShifted=this.isValid()&&O(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}));var fn=E.prototype;function hn(t,e,n,a){var r=ue(),i=h().set(a,e);return r[n](i,t)}function gn(t,e,n){if(o(t)&&(e=t,t=void 0),t=t||"",null!=e)return hn(t,e,n,"month");var a,r=[];for(a=0;a<12;a++)r[a]=hn(t,a,n,"month");return r}function pn(t,e,n,a){"boolean"==typeof t?(o(e)&&(n=e,e=void 0),e=e||""):(n=e=t,t=!1,o(e)&&(n=e,e=void 0),e=e||"");var r,i=ue(),s=t?i._week.dow:0;if(null!=n)return hn(e,(n+s)%7,a,"day");var u=[];for(r=0;r<7;r++)u[r]=hn(e,(r+s)%7,a,"day");return u}fn.calendar=function(t,e,n){var a=this._calendar[t]||this._calendar.sameElse;return A(a)?a.call(e,n):a},fn.longDateFormat=function(t){var e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,(function(t){return t.slice(1)})),this._longDateFormat[t])},fn.invalidDate=function(){return this._invalidDate},fn.ordinal=function(t){return this._ordinal.replace("%d",t)},fn.preparse=cn,fn.postformat=cn,fn.relativeTime=function(t,e,n,a){var r=this._relativeTime[n];return A(r)?r(t,e,n,a):r.replace(/%d/i,t)},fn.pastFuture=function(t,e){var n=this._relativeTime[t>0?"future":"past"];return A(n)?n(e):n.replace(/%s/i,e)},fn.set=function(t){var e,n;for(n in t)A(e=t[n])?this[n]=e:this["_"+n]=e;this._config=t,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},fn.months=function(t,e){return t?i(this._months)?this._months[t.month()]:this._months[(this._months.isFormat||St).test(e)?"format":"standalone"][t.month()]:i(this._months)?this._months:this._months.standalone},fn.monthsShort=function(t,e){return t?i(this._monthsShort)?this._monthsShort[t.month()]:this._monthsShort[St.test(e)?"format":"standalone"][t.month()]:i(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},fn.monthsParse=function(t,e,n){var a,r,i;if(this._monthsParseExact)return Ct.call(this,t,e,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),a=0;a<12;a++){if(r=h([2e3,a]),n&&!this._longMonthsParse[a]&&(this._longMonthsParse[a]=new RegExp("^"+this.months(r,"").replace(".","")+"$","i"),this._shortMonthsParse[a]=new RegExp("^"+this.monthsShort(r,"").replace(".","")+"$","i")),n||this._monthsParse[a]||(i="^"+this.months(r,"")+"|^"+this.monthsShort(r,""),this._monthsParse[a]=new RegExp(i.replace(".",""),"i")),n&&"MMMM"===e&&this._longMonthsParse[a].test(t))return a;if(n&&"MMM"===e&&this._shortMonthsParse[a].test(t))return a;if(!n&&this._monthsParse[a].test(t))return a}},fn.monthsRegex=function(t){return this._monthsParseExact?(c(this,"_monthsRegex")||Lt.call(this),t?this._monthsStrictRegex:this._monthsRegex):(c(this,"_monthsRegex")||(this._monthsRegex=Et),this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex)},fn.monthsShortRegex=function(t){return this._monthsParseExact?(c(this,"_monthsRegex")||Lt.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):(c(this,"_monthsShortRegex")||(this._monthsShortRegex=kt),this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex)},fn.week=function(t){return jt(t,this._week.dow,this._week.doy).week},fn.firstDayOfYear=function(){return this._week.doy},fn.firstDayOfWeek=function(){return this._week.dow},fn.weekdays=function(t,e){var n=i(this._weekdays)?this._weekdays:this._weekdays[t&&!0!==t&&this._weekdays.isFormat.test(e)?"format":"standalone"];return!0===t?Vt(n,this._week.dow):t?n[t.day()]:n},fn.weekdaysMin=function(t){return!0===t?Vt(this._weekdaysMin,this._week.dow):t?this._weekdaysMin[t.day()]:this._weekdaysMin},fn.weekdaysShort=function(t){return!0===t?Vt(this._weekdaysShort,this._week.dow):t?this._weekdaysShort[t.day()]:this._weekdaysShort},fn.weekdaysParse=function(t,e,n){var a,r,i;if(this._weekdaysParseExact)return Yt.call(this,t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),a=0;a<7;a++){if(r=h([2e3,1]).day(a),n&&!this._fullWeekdaysParse[a]&&(this._fullWeekdaysParse[a]=new RegExp("^"+this.weekdays(r,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[a]=new RegExp("^"+this.weekdaysShort(r,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[a]=new RegExp("^"+this.weekdaysMin(r,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[a]||(i="^"+this.weekdays(r,"")+"|^"+this.weekdaysShort(r,"")+"|^"+this.weekdaysMin(r,""),this._weekdaysParse[a]=new RegExp(i.replace(".",""),"i")),n&&"dddd"===e&&this._fullWeekdaysParse[a].test(t))return a;if(n&&"ddd"===e&&this._shortWeekdaysParse[a].test(t))return a;if(n&&"dd"===e&&this._minWeekdaysParse[a].test(t))return a;if(!n&&this._weekdaysParse[a].test(t))return a}},fn.weekdaysRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(c(this,"_weekdaysRegex")||(this._weekdaysRegex=Ht),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)},fn.weekdaysShortRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(c(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Ut),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},fn.weekdaysMinRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(c(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Wt),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},fn.isPM=function(t){return"p"===(t+"").toLowerCase().charAt(0)},fn.meridiem=function(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"},ie("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===w(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),r.lang=I("moment.lang is deprecated. Use moment.locale instead.",ie),r.langData=I("moment.langData is deprecated. Use moment.localeData instead.",ue);var bn=Math.abs;function mn(t,e,n,a){var r=Ve(e,n);return t._milliseconds+=a*r._milliseconds,t._days+=a*r._days,t._months+=a*r._months,t._bubble()}function yn(t){return t<0?Math.floor(t):Math.ceil(t)}function vn(t){return 4800*t/146097}function xn(t){return 146097*t/4800}function _n(t){return function(){return this.as(t)}}var Tn=_n("ms"),wn=_n("s"),On=_n("m"),Sn=_n("h"),In=_n("d"),Nn=_n("w"),Cn=_n("M"),Rn=_n("Q"),An=_n("y");function kn(t){return function(){return this.isValid()?this._data[t]:NaN}}var En=kn("milliseconds"),Ln=kn("seconds"),Dn=kn("minutes"),Pn=kn("hours"),Mn=kn("days"),qn=kn("months"),jn=kn("years"),Fn=Math.round,Vn={ss:44,s:45,m:45,h:22,d:26,M:11};function Gn(t,e,n,a,r){return r.relativeTime(e||1,!!n,t,a)}var Bn=Math.abs;function zn(t){return(t>0)-(t<0)||+t}function Yn(){if(!this.isValid())return this.localeData().invalidDate();var t,e,n=Bn(this._milliseconds)/1e3,a=Bn(this._days),r=Bn(this._months);t=T(n/60),e=T(t/60),n%=60,t%=60;var i=T(r/12),s=r%=12,u=a,o=e,l=t,d=n?n.toFixed(3).replace(/\.?0+$/,""):"",c=this.asSeconds();if(!c)return"P0D";var f=c<0?"-":"",h=zn(this._months)!==zn(c)?"-":"",g=zn(this._days)!==zn(c)?"-":"",p=zn(this._milliseconds)!==zn(c)?"-":"";return f+"P"+(i?h+i+"Y":"")+(s?h+s+"M":"")+(u?g+u+"D":"")+(o||l||d?"T":"")+(o?p+o+"H":"")+(l?p+l+"M":"")+(d?p+d+"S":"")}var Hn=Re.prototype;return Hn.isValid=function(){return this._isValid},Hn.abs=function(){var t=this._data;return this._milliseconds=bn(this._milliseconds),this._days=bn(this._days),this._months=bn(this._months),t.milliseconds=bn(t.milliseconds),t.seconds=bn(t.seconds),t.minutes=bn(t.minutes),t.hours=bn(t.hours),t.months=bn(t.months),t.years=bn(t.years),this},Hn.add=function(t,e){return mn(this,t,e,1)},Hn.subtract=function(t,e){return mn(this,t,e,-1)},Hn.as=function(t){if(!this.isValid())return NaN;var e,n,a=this._milliseconds;if("month"===(t=P(t))||"quarter"===t||"year"===t)switch(n=this._months+vn(e=this._days+a/864e5),t){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(e=this._days+Math.round(xn(this._months)),t){case"week":return e/7+a/6048e5;case"day":return e+a/864e5;case"hour":return 24*e+a/36e5;case"minute":return 1440*e+a/6e4;case"second":return 86400*e+a/1e3;case"millisecond":return Math.floor(864e5*e)+a;default:throw new Error("Unknown unit "+t)}},Hn.asMilliseconds=Tn,Hn.asSeconds=wn,Hn.asMinutes=On,Hn.asHours=Sn,Hn.asDays=In,Hn.asWeeks=Nn,Hn.asMonths=Cn,Hn.asQuarters=Rn,Hn.asYears=An,Hn.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12):NaN},Hn._bubble=function(){var t,e,n,a,r,i=this._milliseconds,s=this._days,u=this._months,o=this._data;return i>=0&&s>=0&&u>=0||i<=0&&s<=0&&u<=0||(i+=864e5*yn(xn(u)+s),s=0,u=0),o.milliseconds=i%1e3,t=T(i/1e3),o.seconds=t%60,e=T(t/60),o.minutes=e%60,n=T(e/60),o.hours=n%24,s+=T(n/24),u+=r=T(vn(s)),s-=yn(xn(r)),a=T(u/12),u%=12,o.days=s,o.months=u,o.years=a,this},Hn.clone=function(){return Ve(this)},Hn.get=function(t){return t=P(t),this.isValid()?this[t+"s"]():NaN},Hn.milliseconds=En,Hn.seconds=Ln,Hn.minutes=Dn,Hn.hours=Pn,Hn.days=Mn,Hn.weeks=function(){return T(this.days()/7)},Hn.months=qn,Hn.years=jn,Hn.humanize=function(t){if(!this.isValid())return this.localeData().invalidDate();var e=this.localeData(),n=function(t,e,n){var a=Ve(t).abs(),r=Fn(a.as("s")),i=Fn(a.as("m")),s=Fn(a.as("h")),u=Fn(a.as("d")),o=Fn(a.as("M")),l=Fn(a.as("y")),d=r<=Vn.ss&&["s",r]||r<Vn.s&&["ss",r]||i<=1&&["m"]||i<Vn.m&&["mm",i]||s<=1&&["h"]||s<Vn.h&&["hh",s]||u<=1&&["d"]||u<Vn.d&&["dd",u]||o<=1&&["M"]||o<Vn.M&&["MM",o]||l<=1&&["y"]||["yy",l];return d[2]=e,d[3]=+t>0,d[4]=n,Gn.apply(null,d)}(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)},Hn.toISOString=Yn,Hn.toString=Yn,Hn.toJSON=Yn,Hn.locale=Ke,Hn.localeData=Ze,Hn.toIsoString=I("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Yn),Hn.lang=$e,Y("X",0,0,"unix"),Y("x",0,0,"valueOf"),dt("x",it),dt("X",/[+-]?\d+(\.\d{1,3})?/),gt("X",(function(t,e,n){n._d=new Date(1e3*parseFloat(t,10))})),gt("x",(function(t,e,n){n._d=new Date(w(t))})),r.version="2.24.0",e=Oe,r.fn=dn,r.min=function(){var t=[].slice.call(arguments,0);return Ne("isBefore",t)},r.max=function(){var t=[].slice.call(arguments,0);return Ne("isAfter",t)},r.now=function(){return Date.now?Date.now():+new Date},r.utc=h,r.unix=function(t){return Oe(1e3*t)},r.months=function(t,e){return gn(t,e,"months")},r.isDate=l,r.locale=ie,r.invalid=b,r.duration=Ve,r.isMoment=_,r.weekdays=function(t,e,n){return pn(t,e,n,"weekdays")},r.parseZone=function(){return Oe.apply(null,arguments).parseZone()},r.localeData=ue,r.isDuration=Ae,r.monthsShort=function(t,e){return gn(t,e,"monthsShort")},r.weekdaysMin=function(t,e,n){return pn(t,e,n,"weekdaysMin")},r.defineLocale=se,r.updateLocale=function(t,e){if(null!=e){var n,a,r=te;null!=(a=re(t))&&(r=a._config),(n=new E(e=k(r,e))).parentLocale=ee[t],ee[t]=n,ie(t)}else null!=ee[t]&&(null!=ee[t].parentLocale?ee[t]=ee[t].parentLocale:null!=ee[t]&&delete ee[t]);return ee[t]},r.locales=function(){return N(ee)},r.weekdaysShort=function(t,e,n){return pn(t,e,n,"weekdaysShort")},r.normalizeUnits=P,r.relativeTimeRounding=function(t){return void 0===t?Fn:"function"==typeof t&&(Fn=t,!0)},r.relativeTimeThreshold=function(t,e){return void 0!==Vn[t]&&(void 0===e?Vn[t]:(Vn[t]=e,"s"===t&&(Vn.ss=e-1),!0))},r.calendarFormat=function(t,e){var n=t.diff(e,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"},r.prototype=dn,r.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},r}()}).call(this,n("YuTi")(t))},wg0c:function(t,e,n){var a=n("2oRo"),r=n("WKiH").trim,i=n("WJkJ"),s=a.parseInt,u=/^[+-]?0[Xx]/,o=8!==s(i+"08")||22!==s(i+"0x16");t.exports=o?function(t,e){var n=r(String(t));return s(n,e>>>0||(u.test(n)?16:10))}:s},wgvl:function(t,e,n){var a=n("Ytn0");t.exports=function(t,e){var n=a(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this}},wnGv:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("8Y7J"),r=n("s7LF"),i=n("LvDl"),s=n("oxzT"),u=n("QFaf"),o=n("DNAf"),l=n("a96k");class d{constructor(t){this.i18n=t,this.data=[],this.options=[],this.messages=new o.a({},this.i18n),this.customBadges=!1,this.customBadgeValidators=[],this.selection=new a.EventEmitter,this.Object=Object,this.filteredOptions=[],this.icons=s.a}ngOnInit(){this.initFilter(),this.data.length>0&&this.initMissingOptions(),this.options=i.sortBy(this.options,["name"]),this.updateOptions()}initFilter(){this.filter=new r.i("",{validators:this.customBadgeValidators}),this.form=new u.a({filter:this.filter}),this.filteredOptions=[...this.options||[]]}initMissingOptions(){const t=this.options.map(t=>t.name);this.data.filter(e=>-1===t.indexOf(e)).forEach(t=>this.addOption(t)),this.forceOptionsToReflectData()}addOption(t){this.options.push(new l.a(!1,t,"")),this.options=i.sortBy(this.options,["name"]),this.triggerSelection(this.options.find(e=>e.name===t))}triggerSelection(t){!t||this.selectionLimit&&!t.selected&&this.data.length>=this.selectionLimit||(t.selected=!t.selected,this.updateOptions(),this.selection.emit({option:t}))}updateOptions(){this.data.splice(0,this.data.length),this.options.forEach(t=>{t.selected&&this.data.push(t.name)}),this.updateFilter()}updateFilter(){this.filteredOptions=this.options.filter(t=>t.name.includes(this.filter.value))}forceOptionsToReflectData(){this.options.forEach(t=>{-1!==this.data.indexOf(t.name)&&(t.selected=!0)})}ngOnChanges(){this.filter&&this.updateFilter(),this.options&&this.data&&0!==this.data.length&&this.forceOptionsToReflectData()}selectOption(){0===this.filteredOptions.length?this.addCustomOption():(this.triggerSelection(this.filteredOptions[0]),this.resetFilter())}addCustomOption(){this.isCreatable()&&(this.addOption(this.filter.value),this.resetFilter())}isCreatable(){return this.customBadges&&this.filter.valid&&this.filter.value.length>0&&this.filteredOptions.every(t=>t.name!==this.filter.value)}resetFilter(){this.filter.setValue(""),this.updateFilter()}removeItem(t){this.triggerSelection(this.options.find(e=>e.name===t&&e.selected))}}},woSy:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return t.prototype.onDrop=function(t){this.node.mouseAction("drop",t.event,{from:t.element,to:{parent:this.node,index:this.dropIndex}})},t.prototype.allowDrop=function(t,e){return this.node.options.allowDrop(t,{parent:this.node,index:this.dropIndex},e)},i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Number)],t.prototype,"dropIndex",void 0),i([Object(a.Component)({selector:"TreeNodeDropSlot, tree-node-drop-slot",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <div\n      class="node-drop-slot"\n      (treeDrop)="onDrop($event)"\n      [treeAllowDrop]="allowDrop.bind(this)"\n      [allowDragoverStyling]="true">\n    </div>\n  '})],t)}()},x38r:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a=function(t){return t.bold="bold",t.sparkline="sparkline",t.perSecond="perSecond",t.checkIcon="checkIcon",t.routerLink="routerLink",t.executing="executing",t.classAdding="classAdding",t.badge="badge",t.map="map",t.truncate="truncate",t}({})},x3F9:function(t,e){t.exports=function(t){return null!=t&&"object"==typeof t}},x6pH:function(t,e,n){!function(t){"use strict";t.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY HH:mm",LLLL:"dddd, D [ב]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",ss:"%d שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(t){return 2===t?"שעתיים":t+" שעות"},d:"יום",dd:function(t){return 2===t?"יומיים":t+" ימים"},M:"חודש",MM:function(t){return 2===t?"חודשיים":t+" חודשים"},y:"שנה",yy:function(t){return 2===t?"שנתיים":t%10==0&&10!==t?t+" שנה":t+" שנים"}},meridiemParse:/אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,isPM:function(t){return/^(אחה"צ|אחרי הצהריים|בערב)$/.test(t)},meridiem:function(t,e,n){return t<5?"לפנות בוקר":t<10?"בבוקר":t<12?n?'לפנה"צ':"לפני הצהריים":t<18?n?'אחה"צ':"אחרי הצהריים":"בערב"}})}(n("wd/R"))},xAZD:function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length,r=Array(a);++n<a;)r[n]=e(t[n],n,t);return r}},xDBR:function(t,e){t.exports=!1},xOlK:function(t,e,n){var a=n("77kF"),r=n("FGWQ");t.exports=function(t,e){return t&&a(e,r(e),t)}},xSw7:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("Fgil"),i=n("aXbf"),s=n("o4+5"),u=n("SVse"),o=n("978R"),l=n("z/SZ"),d=n("2uy1");n("GgAd"),n.d(e,"a",(function(){return c})),n.d(e,"b",(function(){return h}));var c=a["ɵcrt"]({encapsulation:0,styles:[[".bg-info[_ngcontent-%COMP%]{background-color:#2b99a8!important}.bg-freespace[_ngcontent-%COMP%]{background-color:#d1d1d1!important}.progress[_ngcontent-%COMP%]{height:20px;position:relative;margin-bottom:0}.progress[_ngcontent-%COMP%]   div.progress-bar[_ngcontent-%COMP%]{position:static}.progress[_ngcontent-%COMP%]   span[_ngcontent-%COMP%]{position:absolute;display:block;width:100%;color:#000;font-weight:400}"]],data:{}});function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"table",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,7,"tr",[],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"td",[["class","text-left"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Used: "])),(t()(),a["ɵeld"](4,0,null,null,4,"td",[["class","text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,3,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](6,null,[" ",""])),a["ɵppd"](7,1),a["ɵppd"](8,1),(t()(),a["ɵeld"](9,0,null,null,7,"tr",[],null,null,null,null,null)),(t()(),a["ɵeld"](10,0,null,null,1,"td",[["class","text-left"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Free: "])),(t()(),a["ɵeld"](12,0,null,null,4,"td",[["class","'text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](13,0,null,null,3,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](14,null,["",""])),a["ɵppd"](15,1),a["ɵppd"](16,1)],null,(function(t,e){var n=e.component,r=a["ɵunv"](e,6,0,n.isBinary?t(e,7,0,a["ɵnov"](e.parent,0),n.used):t(e,8,0,a["ɵnov"](e.parent,1),n.used));t(e,6,0,r);var i=a["ɵunv"](e,14,0,n.isBinary?t(e,15,0,a["ɵnov"](e.parent,0),n.total-n.used):t(e,16,0,a["ɵnov"](e.parent,1),n.total-n.used));t(e,14,0,i)}))}function h(t){return a["ɵvid"](0,[a["ɵpid"](0,r.a,[i.a]),a["ɵpid"](0,s.a,[i.a]),a["ɵpid"](0,u.DecimalPipe,[a.LOCALE_ID]),(t()(),a["ɵand"](0,[["usageTooltipTpl",2]],null,0,null,f)),(t()(),a["ɵeld"](4,16777216,null,null,6,"div",[["class","progress"],["data-placement","left"]],null,null,null,null,null)),a["ɵdid"](5,212992,null,0,o.c,[a.ViewContainerRef,l.a,o.a,a.ElementRef,a.Renderer2,d.a],{tooltip:[0,"tooltip"],placement:[1,"placement"]},null),(t()(),a["ɵeld"](6,0,null,null,3,"div",[["class","progress-bar bg-info"],["role","progressbar"]],[[4,"width",null]],null,null,null,null)),(t()(),a["ɵeld"](7,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](8,null,["","%"])),a["ɵppd"](9,2),(t()(),a["ɵeld"](10,0,null,null,0,"div",[["class","progress-bar bg-freespace"],["role","progressbar"]],[[4,"width",null]],null,null,null,null))],(function(t,e){t(e,5,0,a["ɵnov"](e,3),"left")}),(function(t,e){var n=e.component;t(e,6,0,n.usedPercentage+"%");var r=a["ɵunv"](e,8,0,t(e,9,0,a["ɵnov"](e,2),n.usedPercentage,"1.0-"+n.decimals));t(e,8,0,r),t(e,10,0,n.freePercentage+"%")}))}},xT5m:function(t,e,n){var a=n("SQuY"),r=n("7Igq"),i=n("jy8Y");function s(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new a;++e<n;)this.add(t[e])}s.prototype.add=s.prototype.push=r,s.prototype.has=i,t.exports=s},xTzq:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var a=n("LvDl");function r(...t){switch(t.length){case 1:return s.apply(void 0,t);case 3:return u.apply(void 0,t);default:throw new Error}}function i(t,e,n){const a="__ignore_"+e;Array.isArray(t[a])?t[a].push(n):t[a]=[n]}function s(t){for(const e of Object.getOwnPropertyNames(t.prototype)){const n=Object.getOwnPropertyDescriptor(t.prototype,e),a="constructor"===e;n.value instanceof Function&&!a&&(u(t.prototype,e,n),Object.defineProperty(t.prototype,e,n))}}function u(t,e,n){void 0===n&&(n=Object.getOwnPropertyDescriptor(t,e));const r=n.value;n.value=function(){const n="__ignore_"+e,i=t[n]||[],s=[];for(let t=0;t<arguments.length;t++)s[t]=a.isString(arguments[t])&&-1===i.indexOf(t)?encodeURIComponent(arguments[t]):arguments[t];const u=r.apply(this,s);return u}}},xbPD:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t=null){return e=>e.lift(new i(t))}class i{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new s(t,this.defaultValue))}}class s extends a.a{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}},xdB7:function(t,e,n){var a=n("bX23"),r=n("l9nr"),i=n("H+zY"),s=Math.max;t.exports=function(t,e,n){var u=null==t?0:t.length;if(!u)return-1;var o=null==n?0:i(n);return o<0&&(o=s(u+o,0)),a(t,r(e,3),o)}},xgIS:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("HDdC"),r=n("DH7j"),i=n("n6bG"),s=n("lJxs");function u(t,e,n,o){return Object(i.a)(n)&&(o=n,n=void 0),o?u(t,e,n).pipe(Object(s.a)(t=>Object(r.a)(t)?o(...t):o(t))):new a.a(a=>{!function t(e,n,a,r,i){let s;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,a,i),s=()=>t.removeEventListener(n,a,i)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,a),s=()=>t.off(n,a)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,a),s=()=>t.removeListener(n,a)}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let s=0,u=e.length;s<u;s++)t(e[s],n,a,r,i)}r.add(s)}(t,e,(function(t){a.next(arguments.length>1?Array.prototype.slice.call(arguments):t)}),a,n)})}},"xj/R":function(t,e,n){"use strict";function a(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function r(t){return"string"==typeof t}function i(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t){return t&&t.getTime&&!isNaN(t.getTime())}function u(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function o(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function l(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function d(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function c(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function f(t){return void 0===t}function h(t){const e=+t;let n=0;return 0!==e&&isFinite(e)&&(n=a(e)),n}n.d(e,"a",(function(){return Ze})),n.d(e,"b",(function(){return Qe})),n.d(e,"c",(function(){return Qt})),n.d(e,"d",(function(){return Tt})),n.d(e,"e",(function(){return an})),n.d(e,"f",(function(){return _e})),n.d(e,"g",(function(){return rn})),n.d(e,"h",(function(){return R})),n.d(e,"i",(function(){return L})),n.d(e,"j",(function(){return E})),n.d(e,"k",(function(){return Xt})),n.d(e,"l",(function(){return k})),n.d(e,"m",(function(){return sn})),n.d(e,"n",(function(){return Ae})),n.d(e,"o",(function(){return l})),n.d(e,"p",(function(){return ke})),n.d(e,"q",(function(){return i})),n.d(e,"r",(function(){return s})),n.d(e,"s",(function(){return Ee})),n.d(e,"t",(function(){return D})),n.d(e,"u",(function(){return Le})),n.d(e,"v",(function(){return q})),n.d(e,"w",(function(){return P})),n.d(e,"x",(function(){return M})),n.d(e,"y",(function(){return un})),n.d(e,"z",(function(){return on})),n.d(e,"A",(function(){return ln})),n.d(e,"B",(function(){return Ne})),n.d(e,"C",(function(){return gn})),n.d(e,"D",(function(){return pn})),n.d(e,"E",(function(){return bt})),n.d(e,"F",(function(){return pt})),n.d(e,"G",(function(){return _t})),n.d(e,"H",(function(){return Ce})),n.d(e,"I",(function(){return bn}));const g={},p={date:"day",hour:"hours",minute:"minutes",second:"seconds",millisecond:"milliseconds"};function b(t,e){const n=t.toLowerCase();let a=t;n in p&&(a=p[n]),g[n]=g[n+"s"]=g[e]=a}function m(t){return r(t)?g[t]||g[t.toLowerCase()]:void 0}function y(t,e,n){const a=""+Math.abs(t);return(t>=0?n?"+":"":"-")+Math.pow(10,Math.max(0,e-a.length)).toString().substr(1)+a}let v={},x={};const _=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;function T(t,e,n,a){t&&(x[t]=a),e&&(x[e[0]]=function(){return y(a.apply(null,arguments),e[1],e[2])}),n&&(x[n]=function(e,n){return n.locale.ordinal(a.apply(null,arguments),t)})}function w(t,e,n){const a=new Date(Date.UTC.apply(null,arguments));return t<100&&t>=0&&isFinite(a.getUTCFullYear())&&a.setUTCFullYear(t),a}function O(t,e=0,n=1,a=0,r=0,i=0,s=0){const u=new Date(t,e,n,a,r,i,s);return t<100&&t>=0&&isFinite(u.getFullYear())&&u.setFullYear(t),u}function S(t,e=!1){return e?t.getUTCHours():t.getHours()}function I(t,e=!1){return e?t.getUTCMinutes():t.getMinutes()}function N(t,e=!1){return e?t.getUTCSeconds():t.getSeconds()}function C(t,e=!1){return e?t.getUTCMilliseconds():t.getMilliseconds()}function R(t,e=!1){return e?t.getUTCDay():t.getDay()}function A(t,e=!1){return e?t.getUTCDate():t.getDate()}function k(t,e=!1){return e?t.getUTCMonth():t.getMonth()}function E(t,e=!1){return e?t.getUTCFullYear():t.getFullYear()}function L(t){return O(t.getFullYear(),t.getMonth(),1,t.getHours(),t.getMinutes(),t.getSeconds())}function D(t,e){return t.getDay()===e}function P(t,e){return!(!t||!e)&&M(t,e)&&k(t)===k(e)}function M(t,e){return!(!t||!e)&&E(t)===E(e)}function q(t,e){return!(!t||!e)&&M(t,e)&&P(t,e)&&A(t)===A(e)}const j=/\d/,F=/\d\d/,V=/\d{3}/,G=/\d{4}/,B=/[+-]?\d{6}/,z=/\d\d?/,Y=/\d\d\d\d?/,H=/\d\d\d\d\d\d?/,U=/\d{1,3}/,W=/\d{1,4}/,K=/[+-]?\d{1,6}/,$=/\d+/,Z=/[+-]?\d+/,J=/Z|[+-]\d\d(?::?\d\d)?/gi,Q=/[+-]?\d+(\.\d{1,3})?/,X=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,tt={};function et(t,e,n){tt[t]=u(e)?e:function(t,a){return t&&n?n:e}}function nt(t,e){return d(tt,t)?tt[t](!1,e):new RegExp(at(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(t,e,n,a,r)=>e||n||a||r)))}function at(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}const rt={};function it(t,e){const n=r(t)?[t]:t;let a=e;if(o(e)&&(a=function(t,n,a){return n[e]=h(t),a}),l(n)&&u(a)){let t;for(t=0;t<n.length;t++)rt[n[t]]=a}}function st(t,e){it(t,(function(t,n,a,r){return a._w=a._w||{},e(t,a._w,a,r)}))}function ut(t,e,n){return null!=e&&d(rt,t)&&rt[t](e,n._a,n,t),n}function ot(t){return null==t._pf&&(t._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),t._pf}function lt(t,e){return E(t,e.isUTC).toString()}function dt(t){return h(t)+(h(t)>68?1900:2e3)}function ct(t){return ft(t)?366:365}function ft(t){return t%4==0&&t%100!=0||t%400==0}function ht(t,e){if(isNaN(t)||isNaN(e))return NaN;const n=(e%12+12)%12;return 1===n?ft(t+(e-n)/12)?29:28:31-n%7%2}const gt={year:0,month:0,day:0,hour:0,minute:0,seconds:0};function pt(t,e){const n=Object.assign({},gt,e),a=t.getFullYear()+(n.year||0),r=t.getMonth()+(n.month||0);let i=t.getDate()+(n.day||0);return n.month&&!n.day&&(i=Math.min(i,ht(a,r))),O(a,r,i,t.getHours()+(n.hour||0),t.getMinutes()+(n.minute||0),t.getSeconds()+(n.seconds||0))}function bt(t,e){return O(mt(t.getFullYear(),e.year),mt(t.getMonth(),e.month),1,mt(t.getHours(),e.hour),mt(t.getMinutes(),e.minute),mt(t.getSeconds(),e.seconds),mt(t.getMilliseconds(),e.milliseconds))}function mt(t,e){return o(e)?e:t}function yt(t,e,n){const a=Math.min(A(t),ht(E(t),e));return n?t.setUTCMonth(e,a):t.setMonth(e,a),t}function vt(t,e,n){return n?t.setUTCDate(e):t.setDate(e),t}function xt(t){return new Date(t.getTime())}function _t(t,e,n){const a=xt(t);switch(e){case"year":yt(a,0,n);case"quarter":case"month":vt(a,1,n);case"week":case"isoWeek":case"day":case"date":!function(t,e,n){n?t.setUTCHours(0):t.setHours(0)}(a,0,n);case"hours":!function(t,e,n){n?t.setUTCMinutes(0):t.setMinutes(0)}(a,0,n);case"minutes":!function(t,e,n){n?t.setUTCSeconds(0):t.setSeconds(0)}(a,0,n);case"seconds":!function(t,e,n){n?t.setUTCMilliseconds(0):t.setMilliseconds(0)}(a,0,n)}return"week"===e&&function(t,e,n={}){Fe(t,0-ze(t,n.locale,n.isUTC),"day")}(a,0,{isUTC:n}),"isoWeek"===e&&function(t,e,n={}){const a=function(t,e=Xt()){return r(t)?e.weekdaysParse(t)%7||7:o(t)&&isNaN(t)?null:t}(1,n.locale);Ge(t,Be(t)%7?a:a-7)}(a),"quarter"===e&&yt(a,3*Math.floor(k(a,n)/3),n),a}function Tt(t,e,n){let a=e;return"date"===a&&(a="day"),function(t,e,n,a){return Ve(t,Me(1,"milliseconds"),-1,a)}(Fe(_t(t,a,n),1,"isoWeek"===a?"week":a,n),0,0,n)}function wt(t,e){const n=+_t(t,"day",e),a=+_t(t,"year",e);return Math.round((n-a)/864e5)+1}function Ot(t,e,n){const a=e-n+7;return-(w(t,0,a).getUTCDay()-e+7)%7+a-1}function St(t,e,n,a){const r=Ot(E(t,a),e,n),i=Math.floor((wt(t,a)-r-1)/7)+1;let s,u;return i<1?(u=E(t,a)-1,s=i+It(u,e,n)):i>It(E(t,a),e,n)?(s=i-It(E(t,a),e,n),u=E(t,a)+1):(u=E(t,a),s=i),{week:s,year:u}}function It(t,e,n){const a=Ot(t,e,n),r=Ot(t+1,e,n);return(ct(t)-a+r)/7}const Nt=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,Ct="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Rt="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),At="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),kt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Et="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Lt={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},Dt=X,Pt=X;class Mt{constructor(t){t&&this.set(t)}set(t){let e;for(e in t){if(!t.hasOwnProperty(e))continue;const n=t[e];this[u(n)?e:"_"+e]=n}this._config=t}calendar(t,e,n){const a=this._calendar[t]||this._calendar.sameElse;return u(a)?a.call(null,e,n):a}longDateFormat(t){const e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,(function(t){return t.slice(1)})),this._longDateFormat[t])}get invalidDate(){return this._invalidDate}set invalidDate(t){this._invalidDate=t}ordinal(t,e){return this._ordinal.replace("%d",t.toString(10))}preparse(t){return t}preinput(t){return t}postvalue(t){return t}postformat(t){return t}relativeTime(t,e,n,a){const r=this._relativeTime[n];return u(r)?r(t,e,n,a):r.replace(/%d/i,t.toString(10))}pastFuture(t,e){const n=this._relativeTime[t>0?"future":"past"];return u(n)?n(e):n.replace(/%s/i,e)}months(t,e,n=!1){if(!t)return l(this._months)?this._months:this._months.standalone;if(l(this._months))return this._months[k(t,n)];const a=(this._months.isFormat||Nt).test(e)?"format":"standalone";return this._months[a][k(t,n)]}monthsShort(t,e,n=!1){if(!t)return l(this._monthsShort)?this._monthsShort:this._monthsShort.standalone;if(l(this._monthsShort))return this._monthsShort[k(t,n)];const a=Nt.test(e)?"format":"standalone";return this._monthsShort[a][k(t,n)]}monthsParse(t,e,n){let a,r,i;if(this._monthsParseExact)return this.handleMonthStrictParse(t,e,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),i=0;i<12;i++){if(a=new Date(Date.UTC(2e3,i)),n&&!this._longMonthsParse[i]){const t=this.months(a,"",!0).replace(".",""),e=this.monthsShort(a,"",!0).replace(".","");this._longMonthsParse[i]=new RegExp(`^${t}$`,"i"),this._shortMonthsParse[i]=new RegExp(`^${e}$`,"i")}if(n||this._monthsParse[i]||(r=`^${this.months(a,"",!0)}|^${this.monthsShort(a,"",!0)}`,this._monthsParse[i]=new RegExp(r.replace(".",""),"i")),n&&"MMMM"===e&&this._longMonthsParse[i].test(t))return i;if(n&&"MMM"===e&&this._shortMonthsParse[i].test(t))return i;if(!n&&this._monthsParse[i].test(t))return i}}monthsRegex(t){return this._monthsParseExact?(d(this,"_monthsRegex")||this.computeMonthsParse(),t?this._monthsStrictRegex:this._monthsRegex):(d(this,"_monthsRegex")||(this._monthsRegex=Pt),this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex)}monthsShortRegex(t){return this._monthsParseExact?(d(this,"_monthsRegex")||this.computeMonthsParse(),t?this._monthsShortStrictRegex:this._monthsShortRegex):(d(this,"_monthsShortRegex")||(this._monthsShortRegex=Dt),this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex)}week(t,e){return St(t,this._week.dow,this._week.doy,e).week}firstDayOfWeek(){return this._week.dow}firstDayOfYear(){return this._week.doy}weekdays(t,e,n){if(!t)return l(this._weekdays)?this._weekdays:this._weekdays.standalone;if(l(this._weekdays))return this._weekdays[R(t,n)];const a=this._weekdays.isFormat.test(e)?"format":"standalone";return this._weekdays[a][R(t,n)]}weekdaysMin(t,e,n){return t?this._weekdaysMin[R(t,n)]:this._weekdaysMin}weekdaysShort(t,e,n){return t?this._weekdaysShort[R(t,n)]:this._weekdaysShort}weekdaysParse(t,e,n){let a,r;if(this._weekdaysParseExact)return this.handleWeekStrictParse(t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),a=0;a<7;a++){const i=Ge(new Date(Date.UTC(2e3,1)),a,null,!0);if(n&&!this._fullWeekdaysParse[a]&&(this._fullWeekdaysParse[a]=new RegExp(`^${this.weekdays(i,"",!0).replace(".",".?")}$`,"i"),this._shortWeekdaysParse[a]=new RegExp(`^${this.weekdaysShort(i,"",!0).replace(".",".?")}$`,"i"),this._minWeekdaysParse[a]=new RegExp(`^${this.weekdaysMin(i,"",!0).replace(".",".?")}$`,"i")),this._weekdaysParse[a]||(r=`^${this.weekdays(i,"",!0)}|^${this.weekdaysShort(i,"",!0)}|^${this.weekdaysMin(i,"",!0)}`,this._weekdaysParse[a]=new RegExp(r.replace(".",""),"i")),!(l(this._fullWeekdaysParse)&&l(this._shortWeekdaysParse)&&l(this._minWeekdaysParse)&&l(this._weekdaysParse)))return;if(n&&"dddd"===e&&this._fullWeekdaysParse[a].test(t))return a;if(n&&"ddd"===e&&this._shortWeekdaysParse[a].test(t))return a;if(n&&"dd"===e&&this._minWeekdaysParse[a].test(t))return a;if(!n&&this._weekdaysParse[a].test(t))return a}}weekdaysRegex(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||this.computeWeekdaysParse(),t?this._weekdaysStrictRegex:this._weekdaysRegex):(d(this,"_weekdaysRegex")||(this._weekdaysRegex=X),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)}weekdaysShortRegex(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||this.computeWeekdaysParse(),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(d(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=X),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}weekdaysMinRegex(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||this.computeWeekdaysParse(),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(d(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=X),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}isPM(t){return"p"===t.toLowerCase().charAt(0)}meridiem(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"}formatLongDate(t){this._longDateFormat=this._longDateFormat?this._longDateFormat:Lt;const e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,t=>t.slice(1)),this._longDateFormat[t])}handleMonthStrictParse(t,e,n){const a=t.toLocaleLowerCase();let r,i,s;if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],r=0;r<12;++r)s=new Date(2e3,r),this._shortMonthsParse[r]=this.monthsShort(s,"").toLocaleLowerCase(),this._longMonthsParse[r]=this.months(s,"").toLocaleLowerCase();return n?"MMM"===e?(i=this._shortMonthsParse.indexOf(a),-1!==i?i:null):(i=this._longMonthsParse.indexOf(a),-1!==i?i:null):"MMM"===e?(i=this._shortMonthsParse.indexOf(a),-1!==i?i:(i=this._longMonthsParse.indexOf(a),-1!==i?i:null)):(i=this._longMonthsParse.indexOf(a),-1!==i?i:(i=this._shortMonthsParse.indexOf(a),-1!==i?i:null))}handleWeekStrictParse(t,e,n){let a;const r=t.toLocaleLowerCase();if(!this._weekdaysParse){let t;for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],t=0;t<7;++t){const e=Ge(new Date(Date.UTC(2e3,1)),t,null,!0);this._minWeekdaysParse[t]=this.weekdaysMin(e).toLocaleLowerCase(),this._shortWeekdaysParse[t]=this.weekdaysShort(e).toLocaleLowerCase(),this._weekdaysParse[t]=this.weekdays(e,"").toLocaleLowerCase()}}if(l(this._weekdaysParse)&&l(this._shortWeekdaysParse)&&l(this._minWeekdaysParse))return n?"dddd"===e?(a=this._weekdaysParse.indexOf(r),-1!==a?a:null):"ddd"===e?(a=this._shortWeekdaysParse.indexOf(r),-1!==a?a:null):(a=this._minWeekdaysParse.indexOf(r),-1!==a?a:null):"dddd"===e?(a=this._weekdaysParse.indexOf(r),-1!==a?a:(a=this._shortWeekdaysParse.indexOf(r),-1!==a?a:(a=this._minWeekdaysParse.indexOf(r),-1!==a?a:null))):"ddd"===e?(a=this._shortWeekdaysParse.indexOf(r),-1!==a?a:(a=this._weekdaysParse.indexOf(r),-1!==a?a:(a=this._minWeekdaysParse.indexOf(r),-1!==a?a:null))):(a=this._minWeekdaysParse.indexOf(r),-1!==a?a:(a=this._weekdaysParse.indexOf(r),-1!==a?a:(a=this._shortWeekdaysParse.indexOf(r),-1!==a?a:null)))}computeMonthsParse(){const t=[],e=[],n=[];let a,r;for(r=0;r<12;r++)a=new Date(2e3,r),t.push(this.monthsShort(a,"")),e.push(this.months(a,"")),n.push(this.months(a,"")),n.push(this.monthsShort(a,""));for(t.sort(qt),e.sort(qt),n.sort(qt),r=0;r<12;r++)t[r]=at(t[r]),e[r]=at(e[r]);for(r=0;r<24;r++)n[r]=at(n[r]);this._monthsRegex=new RegExp(`^(${n.join("|")})`,"i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp(`^(${e.join("|")})`,"i"),this._monthsShortStrictRegex=new RegExp(`^(${t.join("|")})`,"i")}computeWeekdaysParse(){const t=[],e=[],n=[],a=[];let r;for(r=0;r<7;r++){const i=Ge(new Date(Date.UTC(2e3,1)),r,null,!0),s=this.weekdaysMin(i),u=this.weekdaysShort(i),o=this.weekdays(i);t.push(s),e.push(u),n.push(o),a.push(s),a.push(u),a.push(o)}for(t.sort(qt),e.sort(qt),n.sort(qt),a.sort(qt),r=0;r<7;r++)e[r]=at(e[r]),n[r]=at(n[r]),a[r]=at(a[r]);this._weekdaysRegex=new RegExp(`^(${a.join("|")})`,"i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp(`^(${n.join("|")})`,"i"),this._weekdaysShortStrictRegex=new RegExp(`^(${e.join("|")})`,"i"),this._weekdaysMinStrictRegex=new RegExp(`^(${t.join("|")})`,"i")}}function qt(t,e){return e.length-t.length}const jt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:Lt,invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Ct,monthsShort:Rt,week:{dow:0,doy:6},weekdays:At,weekdaysMin:Et,weekdaysShort:kt,meridiemParse:/[ap]\.?m?\.?/i};function Ft(t,e,n){const a=Math.min(t.length,e.length),r=Math.abs(t.length-e.length);let i,s=0;for(i=0;i<a;i++)(n&&t[i]!==e[i]||!n&&h(t[i])!==h(e[i]))&&s++;return s+r}function Vt(t,e){T(null,[t,t.length,!1],null,e)}function Gt(t,e){return zt(t,e.locale).toString()}function Bt(t){return Yt(t).toString()}function zt(t,e=Xt(),n){return St(t,e.firstDayOfWeek(),e.firstDayOfYear(),n).year}function Yt(t,e){return St(t,1,4,e).year}function Ht(t,e){T(t,null,null,(function(t,n){let a=function(t,e={}){return e._isUTC?e._offset||0:function(t){return 15*-Math.round(t.getTimezoneOffset()/15)}(t)}(t,{_isUTC:n.isUTC,_offset:n.offset}),r="+";return a<0&&(a=-a,r="-"),r+y(~~(a/60),2)+e+y(~~a%60,2)}))}const Ut=/([\+\-]|\d\d)/gi,Wt={},Kt={};let $t;function Zt(t){return t?t.toLowerCase().replace("_","-"):t}function Jt(t,e){let n;return t&&(f(e)?n=Xt(t):r(t)&&(n=Qt(t,e)),n&&($t=n)),$t&&$t._abbr}function Qt(t,e){if(null===e)return delete Wt[t],$t=Xt("en"),null;if(!e)return;let n=jt;if(e.abbr=t,null!=e.parentLocale){if(null==Wt[e.parentLocale])return Kt[e.parentLocale]||(Kt[e.parentLocale]=[]),Kt[e.parentLocale].push({name:t,config:e}),null;n=Wt[e.parentLocale]._config}return Wt[t]=new Mt(function(t,e){const n=Object.assign({},t);for(const a in e)d(e,a)&&(c(t[a])&&c(e[a])?(n[a]={},Object.assign(n[a],t[a]),Object.assign(n[a],e[a])):null!=e[a]?n[a]=e[a]:delete n[a]);for(const a in t)d(t,a)&&!d(e,a)&&c(t[a])&&(n[a]=Object.assign({},n[a]));return n}(n,e)),Kt[t]&&Kt[t].forEach((function(t){Qt(t.name,t.config)})),Jt(t),Wt[t]}function Xt(t){return Wt.en||(Jt("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal(t){const e=t%10;return t+(1===h(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),T("w",["ww",2,!1],"wo",(function(t,e){return function(t,e=Xt(),n){return e.week(t,void 0)}(t,e.locale).toString(10)})),T("W",["WW",2,!1],"Wo",(function(t){return function(t,e){return St(t,1,4,void 0).week}(t).toString(10)})),b("week","w"),b("isoWeek","W"),et("w",z),et("ww",z,F),et("W",z),et("WW",z,F),st(["w","ww","W","WW"],(function(t,e,n,a){return e[a.substr(0,1)]=h(t),n})),T(null,["gg",2,!1],null,(function(t,e){return(zt(t,e.locale)%100).toString()})),T(null,["GG",2,!1],null,(function(t){return(Yt(t)%100).toString()})),Vt("gggg",Gt),Vt("ggggg",Gt),Vt("GGGG",Bt),Vt("GGGGG",Bt),b("weekYear","gg"),b("isoWeekYear","GG"),et("G",Z),et("g",Z),et("GG",z,F),et("gg",z,F),et("GGGG",W,G),et("gggg",W,G),et("GGGGG",K,B),et("ggggg",K,B),st(["gggg","ggggg","GGGG","GGGGG"],(function(t,e,n,a){return e[a.substr(0,2)]=h(t),n})),st(["gg","GG"],(function(t,e,n,a){return e[a]=dt(t),n})),T("Y",null,null,(function(t,e){const n=E(t,e.isUTC);return n<=9999?n.toString(10):"+"+n})),T(null,["YY",2,!1],null,(function(t,e){return(E(t,e.isUTC)%100).toString(10)})),T(null,["YYYY",4,!1],null,lt),T(null,["YYYYY",5,!1],null,lt),T(null,["YYYYYY",6,!0],null,lt),b("year","y"),et("Y",Z),et("YY",z,F),et("YYYY",W,G),et("YYYYY",K,B),et("YYYYYY",K,B),it(["YYYYY","YYYYYY"],0),it("YYYY",(function(t,e,n){return e[0]=2===t.length?dt(t):h(t),n})),it("YY",(function(t,e,n){return e[0]=dt(t),n})),it("Y",(function(t,e,n){return e[0]=parseInt(t,10),n})),T("z",null,null,(function(t,e){return e.isUTC?"UTC":""})),T("zz",null,null,(function(t,e){return e.isUTC?"Coordinated Universal Time":""})),T("X",null,null,(function(t){return function(t){return Math.floor(t.valueOf()/1e3)}(t).toString(10)})),T("x",null,null,(function(t){return t.valueOf().toString(10)})),et("x",Z),et("X",Q),it("X",(function(t,e,n){return n._d=new Date(1e3*parseFloat(t)),n})),it("x",(function(t,e,n){return n._d=new Date(h(t)),n})),T("s",["ss",2,!1],null,(function(t,e){return N(t,e.isUTC).toString(10)})),b("second","s"),et("s",z),et("ss",z,F),it(["s","ss"],5),T("Q",null,"Qo",(function(t,e){return function(t,e=!1){return Math.ceil((k(t,e)+1)/3)}(t,e.isUTC).toString(10)})),b("quarter","Q"),et("Q",j),it("Q",(function(t,e,n){return e[1]=3*(h(t)-1),n})),Ht("Z",":"),Ht("ZZ",""),et("Z",J),et("ZZ",J),it(["Z","ZZ"],(function(t,e,n){return n._useUTC=!0,n._tzm=function(t,e){const n=(e||"").match(t);if(null===n)return null;const a=n[n.length-1].match(Ut)||["-","0","0"],r=60*parseInt(a[1],10)+h(a[2]);return 0===r?0:"+"===a[0]?r:-r}(J,t),n})),T("M",["MM",2,!1],"Mo",(function(t,e){return(k(t,e.isUTC)+1).toString(10)})),T("MMM",null,null,(function(t,e){return e.locale.monthsShort(t,e.format,e.isUTC)})),T("MMMM",null,null,(function(t,e){return e.locale.months(t,e.format,e.isUTC)})),b("month","M"),et("M",z),et("MM",z,F),et("MMM",(function(t,e){return e.monthsShortRegex(t)})),et("MMMM",(function(t,e){return e.monthsRegex(t)})),it(["M","MM"],(function(t,e,n){return e[1]=h(t)-1,n})),it(["MMM","MMMM"],(function(t,e,n,a){const r=n._locale.monthsParse(t,a,n._strict);return null!=r?e[1]=r:ot(n).invalidMonth=!!t,n})),T("m",["mm",2,!1],null,(function(t,e){return I(t,e.isUTC).toString(10)})),b("minute","m"),et("m",z),et("mm",z,F),it(["m","mm"],4),function(){let t;for(T("S",null,null,(function(t,e){return(~~(C(t,e.isUTC)/100)).toString(10)})),T(null,["SS",2,!1],null,(function(t,e){return(~~(C(t,e.isUTC)/10)).toString(10)})),T(null,["SSS",3,!1],null,(function(t,e){return C(t,e.isUTC).toString(10)})),T(null,["SSSS",4,!1],null,(function(t,e){return(10*C(t,e.isUTC)).toString(10)})),T(null,["SSSSS",5,!1],null,(function(t,e){return(100*C(t,e.isUTC)).toString(10)})),T(null,["SSSSSS",6,!1],null,(function(t,e){return(1e3*C(t,e.isUTC)).toString(10)})),T(null,["SSSSSSS",7,!1],null,(function(t,e){return(1e4*C(t,e.isUTC)).toString(10)})),T(null,["SSSSSSSS",8,!1],null,(function(t,e){return(1e5*C(t,e.isUTC)).toString(10)})),T(null,["SSSSSSSSS",9,!1],null,(function(t,e){return(1e6*C(t,e.isUTC)).toString(10)})),b("millisecond","ms"),et("S",U,j),et("SS",U,F),et("SSS",U,V),t="SSSS";t.length<=9;t+="S")et(t,$);function e(t,e,n){return e[6]=h(1e3*parseFloat("0."+t)),n}for(t="S";t.length<=9;t+="S")it(t,e)}(),function(){function t(t,e){return S(t,e)%12||12}function e(t,e){T(t,null,null,(function(t,n){return n.locale.meridiem(S(t,n.isUTC),I(t,n.isUTC),e)}))}function n(t,e){return e._meridiemParse}T("H",["HH",2,!1],null,(function(t,e){return S(t,e.isUTC).toString(10)})),T("h",["hh",2,!1],null,(function(e,n){return t(e,n.isUTC).toString(10)})),T("k",["kk",2,!1],null,(function(t,e){return function(t,e){return S(t,e)||24}(t,e.isUTC).toString(10)})),T("hmm",null,null,(function(e,n){return`${t(e,n.isUTC)}${y(I(e,n.isUTC),2)}`})),T("hmmss",null,null,(function(e,n){return`${t(e,n.isUTC)}${y(I(e,n.isUTC),2)}${y(N(e,n.isUTC),2)}`})),T("Hmm",null,null,(function(t,e){return`${S(t,e.isUTC)}${y(I(t,e.isUTC),2)}`})),T("Hmmss",null,null,(function(t,e){return`${S(t,e.isUTC)}${y(I(t,e.isUTC),2)}${y(N(t,e.isUTC),2)}`})),e("a",!0),e("A",!1),b("hour","h"),et("a",n),et("A",n),et("H",z),et("h",z),et("k",z),et("HH",z,F),et("hh",z,F),et("kk",z,F),et("hmm",Y),et("hmmss",H),et("Hmm",Y),et("Hmmss",H),it(["H","HH"],3),it(["k","kk"],(function(t,e,n){const a=h(t);return e[3]=24===a?0:a,n})),it(["a","A"],(function(t,e,n){return n._isPm=n._locale.isPM(t),n._meridiem=t,n})),it(["h","hh"],(function(t,e,n){return e[3]=h(t),ot(n).bigHour=!0,n})),it("hmm",(function(t,e,n){const a=t.length-2;return e[3]=h(t.substr(0,a)),e[4]=h(t.substr(a)),ot(n).bigHour=!0,n})),it("hmmss",(function(t,e,n){const a=t.length-4,r=t.length-2;return e[3]=h(t.substr(0,a)),e[4]=h(t.substr(a,2)),e[5]=h(t.substr(r)),ot(n).bigHour=!0,n})),it("Hmm",(function(t,e,n){const a=t.length-2;return e[3]=h(t.substr(0,a)),e[4]=h(t.substr(a)),n})),it("Hmmss",(function(t,e,n){const a=t.length-4,r=t.length-2;return e[3]=h(t.substr(0,a)),e[4]=h(t.substr(a,2)),e[5]=h(t.substr(r)),n}))}(),T("DDD",["DDDD",3,!1],"DDDo",(function(t){return wt(t).toString(10)})),b("dayOfYear","DDD"),et("DDD",U),et("DDDD",V),it(["DDD","DDDD"],(function(t,e,n){return n._dayOfYear=h(t),n})),T("d",null,"do",(function(t,e){return R(t,e.isUTC).toString(10)})),T("dd",null,null,(function(t,e){return e.locale.weekdaysMin(t,e.format,e.isUTC)})),T("ddd",null,null,(function(t,e){return e.locale.weekdaysShort(t,e.format,e.isUTC)})),T("dddd",null,null,(function(t,e){return e.locale.weekdays(t,e.format,e.isUTC)})),T("e",null,null,(function(t,e){return ze(t,e.locale,e.isUTC).toString(10)})),T("E",null,null,(function(t,e){return function(t,e){return R(t,e)||7}(t,e.isUTC).toString(10)})),b("day","d"),b("weekday","e"),b("isoWeekday","E"),et("d",z),et("e",z),et("E",z),et("dd",(function(t,e){return e.weekdaysMinRegex(t)})),et("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),et("dddd",(function(t,e){return e.weekdaysRegex(t)})),st(["dd","ddd","dddd"],(function(t,e,n,a){const r=n._locale.weekdaysParse(t,a,n._strict);return null!=r?e.d=r:ot(n).invalidWeekday=!!t,n})),st(["d","e","E"],(function(t,e,n,a){return e[a]=h(t),n})),T("D",["DD",2,!1],"Do",(function(t,e){return A(t,e.isUTC).toString(10)})),b("date","D"),et("D",z),et("DD",z,F),et("Do",(function(t,e){return e._dayOfMonthOrdinalParse||e._ordinalParse})),it(["D","DD"],2),it("Do",(function(t,e,n){return e[2]=h(t.match(z)[0]),n}))),t?function(t){let e,n,a=0;for(;a<t.length;){const i=Zt(t[a]).split("-");let s=i.length;for(e=Zt(t[a+1]),e=e?e.split("-"):null;s>0;){if(r=i.slice(0,s).join("-"),Wt[r]||console.error(`Khronos locale error: please load locale "${r}" before using it`),n=Wt[r],n)return n;if(e&&e.length>=s&&Ft(i,e,!0)>=s-1)break;s--}a++}var r;return null}(l(t)?t:[t]):$t}const te=["year","quarter","month","week","day","hours","minutes","seconds","milliseconds"],ee=te.reduce((t,e)=>(t[e]=!0,t),{});function ne(t){return t<0?Math.floor(t):Math.ceil(t)}function ae(t){return 4800*t/146097}function re(t){return 146097*t/4800}let ie=Math.round;function se(t,e,n,a,r){return r.relativeTime(e||1,!!n,t,a)}class ue{constructor(t,e={}){this._data={},this._locale=Xt(),this._locale=e&&e._locale||Xt();const n=t.year||0,r=t.quarter||0,i=t.month||0,s=t.week||0,u=t.day||0,o=t.hours||0,l=t.minutes||0,d=t.seconds||0,c=t.milliseconds||0;return this._isValid=function(t){if(Object.keys(t).some(e=>e in ee&&null===t[e]||isNaN(t[e])))return!1;let e=!1;for(let n=0;n<te.length;++n)if(t[te[n]]){if(e)return!1;t[te[n]]!==h(t[te[n]])&&(e=!0)}return!0}(t),this._milliseconds=+c+1e3*d+60*l*1e3+1e3*o*60*60,this._days=+u+7*s,this._months=+i+3*r+12*n,function(t){let e=t._milliseconds,n=t._days,r=t._months;const i=t._data;e>=0&&n>=0&&r>=0||e<=0&&n<=0&&r<=0||(e+=864e5*ne(re(r)+n),n=0,r=0),i.milliseconds=e%1e3;const s=a(e/1e3);i.seconds=s%60;const u=a(s/60);i.minutes=u%60;const o=a(u/60);i.hours=o%24,n+=a(o/24);const l=a(ae(n));r+=l,n-=ne(re(l));const d=a(r/12);return r%=12,i.day=n,i.month=r,i.year=d,t}(this)}isValid(){return this._isValid}humanize(t){if(!this.isValid())return this.localeData().invalidDate;const e=this.localeData();let n=function(t,e,n){const a=Me(t).abs(),r=ie(a.as("s")),i=ie(a.as("m")),s=ie(a.as("h")),u=ie(a.as("d")),o=ie(a.as("M")),l=ie(a.as("y")),d=r<=44&&["s",r]||r<45&&["ss",r]||i<=1&&["m"]||i<45&&["mm",i]||s<=1&&["h"]||s<22&&["hh",s]||u<=1&&["d"]||u<26&&["dd",u]||o<=1&&["M"]||o<11&&["MM",o]||l<=1&&["y"]||["yy",l];return se.apply(null,[d[0],d[1],e,+t>0,n])}(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)}localeData(){return this._locale}locale(t){return t?(this._locale=Xt(t)||this._locale,this):this._locale._abbr}abs(){const t=Math.abs,e=this._data;return this._milliseconds=t(this._milliseconds),this._days=t(this._days),this._months=t(this._months),e.milliseconds=t(e.milliseconds),e.seconds=t(e.seconds),e.minutes=t(e.minutes),e.hours=t(e.hours),e.month=t(e.month),e.year=t(e.year),this}as(t){if(!this.isValid())return NaN;let e,n;const a=this._milliseconds,r=m(t);if("month"===r||"year"===r)return e=this._days+a/864e5,n=this._months+ae(e),"month"===r?n:n/12;switch(e=this._days+Math.round(re(this._months)),r){case"week":return e/7+a/6048e5;case"day":return e+a/864e5;case"hours":return 24*e+a/36e5;case"minutes":return 1440*e+a/6e4;case"seconds":return 86400*e+a/1e3;case"milliseconds":return Math.floor(864e5*e)+a;default:throw new Error("Unknown unit "+r)}}valueOf(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*h(this._months/12):NaN}}function oe(t){if(null==t._isValid){const e=ot(t),n=Array.prototype.some.call(e.parsedDateParts,(function(t){return null!=t}));let a=!isNaN(t._d&&t._d.getTime())&&e.overflow<0&&!e.empty&&!e.invalidMonth&&!e.invalidWeekday&&!e.weekdayMismatch&&!e.nullInput&&!e.invalidFormat&&!e.userInvalidated&&(!e.meridiem||e.meridiem&&n);if(t._strict&&(a=a&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour),null!=Object.isFrozen&&Object.isFrozen(t))return a;t._isValid=a}return t._isValid}function le(t,e){return t._d=new Date(NaN),Object.assign(ot(t),e||{userInvalidated:!0}),t}const de=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ce=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fe=/Z|[+-]\d\d(?::?\d\d)?/,he=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/,!0],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/,!0],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/,!0],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/,!0],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/,!0],["YYYYMMDD",/\d{8}/,!0],["GGGG[W]WWE",/\d{4}W\d{3}/,!0],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/,!0]],ge=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],pe=/^\/?Date\((\-?\d+)/i,be={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480},me=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/;function ye(t){if(!r(t._i))return t;const e=t._i,n=de.exec(e)||ce.exec(e);let a,i,s,u,o,l;if(!n)return t._isValid=!1,t;for(o=0,l=he.length;o<l;o++)if(he[o][1].exec(n[1])){i=he[o][0],a=!1!==he[o][2];break}if(null==i)return t._isValid=!1,t;if(n[3]){for(o=0,l=ge.length;o<l;o++)if(ge[o][1].exec(n[3])){s=(n[2]||" ")+ge[o][0];break}if(null==s)return t._isValid=!1,t}if(!a&&null!=s)return t._isValid=!1,t;if(n[4]){if(!fe.exec(n[4]))return t._isValid=!1,t;u="Z"}return t._f=i+(s||"")+(u||""),Ie(t)}function ve(t){const e=parseInt(t,10);return e<=49?e+2e3:e}function xe(t){if(!r(t._i))return t;const e=me.exec(t._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim());if(!e)return function(t){return t._isValid=!1,t}(t);const n=function(t,e,n,a,r,i){const s=[ve(t),Rt.indexOf(e),parseInt(n,10),parseInt(a,10),parseInt(r,10)];return i&&s.push(parseInt(i,10)),s}(e[4],e[3],e[2],e[5],e[6],e[7]);return function(t,e,n){return!t||kt.indexOf(t)===new Date(e[0],e[1],e[2]).getDay()||(ot(n).weekdayMismatch=!0,n._isValid=!1,!1)}(e[1],n,t)?(t._a=n,t._tzm=function(t,e,n){if(t)return be[t];if(e)return 0;{const t=parseInt(n,10),e=t%100;return(t-e)/100*60+e}}(e[8],e[9],e[10]),t._d=w.apply(null,t._a),t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),ot(t).rfc2822=!0,t):t}function _e(t,e,n,a,r=0){const i=Xt(n||"en");if(!i)throw new Error(`Locale "${n}" is not defined, please add it with "defineLocale(...)"`);const o=function(t,e,n,a,r=0){if(!s(t))return n.invalidDate;const i=Te(e,n);return v[i]=v[i]||function(t){const e=t.match(_),n=e.length,a=new Array(n);for(let i=0;i<n;i++)a[i]=x[e[i]]?x[e[i]]:(r=e[i]).match(/\[[\s\S]/)?r.replace(/^\[|\]$/g,""):r.replace(/\\/g,"");var r;return function(e,r,i,s=0){const o=r.postvalue(e);let l="";for(let d=0;d<n;d++)l+=u(a[d])?a[d].call(null,o,{format:t,locale:r,isUTC:i,offset:s}):a[d];return l}}(i),v[i](t,n,a,r)}(t,e||(a?"YYYY-MM-DDTHH:mm:ss[Z]":"YYYY-MM-DDTHH:mm:ssZ"),i,a,r);return o?i.postformat(o):o}function Te(t,e){let n=t,a=5;const r=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,i=t=>e.formatLongDate(t)||t;for(r.lastIndex=0;a>=0&&r.test(n);)n=n.replace(r,i),r.lastIndex=0,a-=1;return n}function we(t,e,n){return null!=t?t:null!=e?e:n}function Oe(t){const e=[];let n,a,r,i,s;if(t._d)return t;for(r=function(t){const e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}(t),t._w&&null==t._a[2]&&null==t._a[1]&&function(t){let e,n,a,r,i,s,u,o;if(e=t._w,null!=e.GG||null!=e.W||null!=e.E)i=1,s=4,n=we(e.GG,t._a[0],St(new Date,1,4).year),a=we(e.W,1),r=we(e.E,1),(r<1||r>7)&&(o=!0);else{i=t._locale._week.dow,s=t._locale._week.doy;const u=St(new Date,i,s);n=we(e.gg,t._a[0],u.year),a=we(e.w,u.week),null!=e.d?(r=e.d,(r<0||r>6)&&(o=!0)):null!=e.e?(r=e.e+i,(e.e<0||e.e>6)&&(o=!0)):r=i}a<1||a>It(n,i,s)?ot(t)._overflowWeeks=!0:null!=o?ot(t)._overflowWeekday=!0:(u=function(t,e,n,a,r){const i=1+7*(e-1)+(7+n-a)%7+Ot(t,a,r);let s,u;return i<=0?(s=t-1,u=ct(s)+i):i>ct(t)?(s=t+1,u=i-ct(t)):(s=t,u=i),{year:s,dayOfYear:u}}(n,a,r,i,s),t._a[0]=u.year,t._dayOfYear=u.dayOfYear)}(t),null!=t._dayOfYear&&(s=we(t._a[0],r[0]),(t._dayOfYear>ct(s)||0===t._dayOfYear)&&(ot(t)._overflowDayOfYear=!0),a=new Date(Date.UTC(s,0,t._dayOfYear)),t._a[1]=a.getUTCMonth(),t._a[2]=a.getUTCDate()),n=0;n<3&&null==t._a[n];++n)t._a[n]=e[n]=r[n];for(;n<7;n++)t._a[n]=e[n]=null==t._a[n]?2===n?1:0:t._a[n];return 24===t._a[3]&&0===t._a[4]&&0===t._a[5]&&0===t._a[6]&&(t._nextDay=!0,t._a[3]=0),t._d=(t._useUTC?w:O).apply(null,e),i=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[3]=24),t._w&&void 0!==t._w.d&&t._w.d!==i&&(ot(t).weekdayMismatch=!0),t}function Se(t){let e;const n=t._a;return n&&-2===ot(t).overflow&&(e=n[1]<0||n[1]>11?1:n[2]<1||n[2]>ht(n[0],n[1])?2:n[3]<0||n[3]>24||24===n[3]&&(0!==n[4]||0!==n[5]||0!==n[6])?3:n[4]<0||n[4]>59?4:n[5]<0||n[5]>59?5:n[6]<0||n[6]>999?6:-1,ot(t)._overflowDayOfYear&&(e<0||e>2)&&(e=2),ot(t)._overflowWeeks&&-1===e&&(e=7),ot(t)._overflowWeekday&&-1===e&&(e=8),ot(t).overflow=e),t}function Ie(t){if("ISO_8601"===t._f)return ye(t);if("RFC_2822"===t._f)return xe(t);if(t._a=[],ot(t).empty=!0,l(t._f)||!t._i&&0!==t._i)return t;let e=t._i.toString(),n=0;const a=e.length,r=Te(t._f,t._locale).match(_)||[];let i,s,u,o;for(i=0;i<r.length;i++)s=r[i],u=(e.match(nt(s,t._locale))||[])[0],u&&(o=e.substr(0,e.indexOf(u)),o.length>0&&ot(t).unusedInput.push(o),e=e.slice(e.indexOf(u)+u.length),n+=u.length),x[s]?(u?ot(t).empty=!1:ot(t).unusedTokens.push(s),ut(s,u,t)):t._strict&&!u&&ot(t).unusedTokens.push(s);return ot(t).charsLeftOver=a-n,e.length>0&&ot(t).unusedInput.push(e),t._a[3]<=12&&!0===ot(t).bigHour&&t._a[3]>0&&(ot(t).bigHour=void 0),ot(t).parsedDateParts=t._a.slice(0),ot(t).meridiem=t._meridiem,t._a[3]=function(t,e,n){let a=e;if(null==n)return a;if(null!=t.meridiemHour)return t.meridiemHour(a,n);if(null==t.isPM)return a;const r=t.isPM(n);return r&&a<12&&(a+=12),r||12!==a||(a=0),a}(t._locale,t._a[3],t._meridiem),Oe(t),Se(t)}function Ne(t,e,n,a,s){return i(t)?t:function(t,e,n,a,s){const u={};let h=t;return(c(h)&&function(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;let e;for(e in t)if(t.hasOwnProperty(e))return!1;return!0}(h)||l(h)&&0===h.length)&&(h=void 0),u._useUTC=u._isUTC=s,u._l=n,u._i=h,u._f=e,u._strict=a,function(t){const e=Se(function(t){let e=t._i;const n=t._f;return t._locale=t._locale||Xt(t._l),null===e||void 0===n&&""===e?le(t,{nullInput:!0}):(r(e)&&(t._i=e=t._locale.preparse(e)),i(e)?(t._d=xt(e),t):(l(n)?function(t){let e,n,a,r,i;if(!t._f||0===t._f.length)return ot(t).invalidFormat=!0,le(t);for(i=0;i<t._f.length;i++)r=0,e=Object.assign({},t),null!=t._useUTC&&(e._useUTC=t._useUTC),e._f=t._f[i],Ie(e),oe(e)&&(r+=ot(e).charsLeftOver,r+=10*ot(e).unusedTokens.length,ot(e).score=r,(null==a||r<a)&&(a=r,n=e));Object.assign(t,n||e)}(t):n?Ie(t):function(t){const e=t._i;if(f(e))t._d=new Date;else if(i(e))t._d=xt(e);else if(r(e))!function(t){if(!r(t._i))return t;const e=pe.exec(t._i);null!==e?t._d=new Date(+e[1]):(ye(t),!1!==t._isValid||(delete t._isValid,xe(t),!1!==t._isValid||(delete t._isValid,le(t))))}(t);else if(l(e)&&e.length){const n=e.slice(0);t._a=n.map(t=>r(t)?parseInt(t,10):t),Oe(t)}else if(c(e))!function(t){if(t._d)return t;const e=t._i;if(c(e)){const n=function(t){const e={};let n,a;for(a in t)d(t,a)&&(n=m(a),n&&(e[n]=t[a]));return e}(e);t._a=[n.year,n.month,n.day,n.hours,n.minutes,n.seconds,n.milliseconds].map(t=>r(t)?parseInt(t,10):t)}Oe(t)}(t);else{if(!o(e))return le(t);t._d=new Date(e)}}(t),oe(t)||(t._d=null),t))}(t));return e._d=new Date(null!=e._d?e._d.getTime():NaN),oe(Object.assign({},e,{_isValid:null}))||(e._d=new Date(NaN)),e}(u)}(t,e,n,a,s)._d}function Ce(t){return t instanceof Date?new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds()):null}function Re(t){return t<0?-1*Math.round(-1*t):Math.round(t)}function Ae(t,e,n="milliseconds"){return!(!t||!e)&&("milliseconds"===n?t.valueOf()>e.valueOf():e.valueOf()<_t(t,n).valueOf())}function ke(t,e,n="milliseconds"){return!(!t||!e)&&("milliseconds"===n?t.valueOf()<e.valueOf():Tt(t,n).valueOf()<e.valueOf())}function Ee(t,e){return!(void 0===e||!e||!e.length)&&e.some(e=>e===t.getDay())}function Le(t,e,n="milliseconds"){if(!t||!e)return!1;if("milliseconds"===n)return t.valueOf()===e.valueOf();const a=e.valueOf();return _t(t,n).valueOf()<=a&&a<=Tt(t,n).valueOf()}const De=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Pe=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Me(t,e,n={}){const a=function(t,e){if(null==t)return{};if(t instanceof ue)return{milliseconds:t._milliseconds,day:t._days,month:t._months};if(o(t))return e?{[e]:t}:{milliseconds:t};if(r(t)){let e=De.exec(t);if(e){const t="-"===e[1]?-1:1;return{year:0,day:h(e[2])*t,hours:h(e[3])*t,minutes:h(e[4])*t,seconds:h(e[5])*t,milliseconds:h(Re(1e3*h(e[6])))*t}}if(e=Pe.exec(t),e){const t="-"===e[1]?-1:1;return{year:qe(e[2],t),month:qe(e[3],t),week:qe(e[4],t),day:qe(e[5],t),hours:qe(e[6],t),minutes:qe(e[7],t),seconds:qe(e[8],t)}}}if(c(t)&&("from"in t||"to"in t)){const e=function(t,e){if(!s(t)||!s(e))return{milliseconds:0,months:0};let n;const a=function(t,e,n={}){if(!n._isUTC)return t;const a=xt(e),r=6e4*(n._offset||0),i=t.valueOf()-a.valueOf()+r;return a.setTime(a.valueOf()+i),a}(e,t,{_offset:t.getTimezoneOffset()});return ke(t,a)?n=je(t,a):(n=je(a,t),n.milliseconds=-n.milliseconds,n.months=-n.months),n}(Ne(t.from),Ne(t.to));return{milliseconds:e.milliseconds,month:e.months}}return t}(t,e);return new ue(a,n)}function qe(t,e){const n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function je(t,e){const n={milliseconds:0,months:0};return n.months=k(e)-k(t)+12*(E(e)-E(t)),Ae(Fe(xt(t),n.months,"month"),e)&&--n.months,n.milliseconds=+e-+Fe(xt(t),n.months,"month"),n}function Fe(t,e,n,a){return Ve(t,Me(e,n),1,a)}function Ve(t,e,n,a){const r=e._milliseconds,i=Re(e._days),s=Re(e._months);return s&&yt(t,k(t,a)+s*n,a),i&&vt(t,A(t,a)+i*n,a),r&&function(t,e){t.setTime(e)}(t,function(t){return t.getTime()}(t)+r*n),xt(t)}function Ge(t,e,n=Xt(),a){const i=R(t,a);return Fe(t,function(t,e){if(!r(t))return t;const n=parseInt(t,10);if(!isNaN(n))return n;const a=e.weekdaysParse(t);return o(a)?a:null}(e,n)-i,"day")}function Be(t,e){return R(t,e)}function ze(t,e=Xt(),n){return(R(t,n)+7-e.firstDayOfWeek())%7}const Ye="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),He="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_");function Ue(t){return t>1&&t<5&&1!=~~(t/10)}function We(t,e,n,a){const r=t+" ";switch(n){case"s":return e||a?"pár sekund":"pár sekundami";case"ss":return e||a?r+(Ue(t)?"sekundy":"sekund"):r+"sekundami";case"m":return e?"minuta":a?"minutu":"minutou";case"mm":return e||a?r+(Ue(t)?"minuty":"minut"):r+"minutami";case"h":return e?"hodina":a?"hodinu":"hodinou";case"hh":return e||a?r+(Ue(t)?"hodiny":"hodin"):r+"hodinami";case"d":return e||a?"den":"dnem";case"dd":return e||a?r+(Ue(t)?"dny":"dní"):r+"dny";case"M":return e||a?"měsíc":"měsícem";case"MM":return e||a?r+(Ue(t)?"měsíce":"měsíců"):r+"měsíci";case"y":return e||a?"rok":"rokem";case"yy":return e||a?r+(Ue(t)?"roky":"let"):r+"lety"}}const Ke=function(t){let e,n=[];for(e=0;e<12;e++)n[e]=new RegExp("^"+t[e]+"$","i");return n},$e=function(t){let e,n=[];for(e=0;e<12;e++)n[e]=new RegExp("^"+t[e]+"$","i");return n},Ze={abbr:"cs",months:Ye,monthsShort:He,monthsParse:function(t,e){let n,a=[];for(n=0;n<12;n++)a[n]=new RegExp("^"+t[n]+"$|^"+e[n]+"$","i");return a}(Ye,He),shortMonthsParse:Ke(He),longMonthsParse:$e(Ye),weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek(t){switch(Be(t)){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek(t){switch(Be(t)){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:We,ss:We,m:We,mm:We,h:We,hh:We,d:We,dd:We,M:We,MM:We,y:We,yy:We},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};function Je(t,e,n,a){const r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return e?r[n][0]:r[n][1]}const Qe={abbr:"de",months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:Je,mm:"%d Minuten",h:Je,hh:"%d Stunden",d:Je,dd:Je,M:Je,MM:Je,y:Je,yy:Je},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};let Xe="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),tn="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),en=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],nn=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;const an={abbr:"es",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:(t,e,n)=>t?/-MMM-/.test(e)?tn[k(t,n)]:Xe[k(t,n)]:Xe,monthsRegex:nn,monthsShortRegex:nn,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:en,longMonthsParse:en,shortMonthsParse:en,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:t=>"[hoy a la"+(1!==S(t)?"s":"")+"] LT",nextDay:t=>"[mañana a la"+(1!==S(t)?"s":"")+"] LT",nextWeek:t=>"dddd [a la"+(1!==S(t)?"s":"")+"] LT",lastDay:t=>"[ayer a la"+(1!==S(t)?"s":"")+"] LT",lastWeek:t=>"[el] dddd [pasado a la"+(1!==S(t)?"s":"")+"] LT",sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}},rn={abbr:"fr",months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal(t,e){const n=Number(t);switch(e){case"D":return n+(1===n?"er":"");default:case"M":case"Q":case"DDD":case"d":return n+(1===n?"er":"e");case"w":case"W":return n+(1===n?"re":"e")}},week:{dow:1,doy:4}},sn={abbr:"id",months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:(t,e)=>(12===t&&(t=0),"pagi"===e?t:"siang"===e?t>=11?t:t+12:"sore"===e||"malam"===e?t+12:void 0),meridiem:(t,e,n)=>t<11?"pagi":t<15?"siang":t<19?"sore":"malam",calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}},un={abbr:"it",months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek(t){switch(Be(t)){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:t=>(/^[0-9].+$/.test(t.toString(10))?"tra":"in")+" "+t,past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}},on={abbr:"ja",months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 HH:mm dddd",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日 HH:mm dddd"},meridiemParse:/午前|午後/i,isPM:t=>"午後"===t,meridiem:(t,e,n)=>t<12?"午前":"午後",calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:"[来週]dddd LT",lastDay:"[昨日] LT",lastWeek:"[前週]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";default:return t.toString(10)}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}},ln={abbr:"ko",months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h:mm",LLLL:"YYYY년 MMMM D일 dddd A h:mm",l:"YYYY.MM.DD",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",ss:"%d초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"일";case"M":return t+"월";case"w":case"W":return t+"주";default:return t.toString(10)}},meridiemParse:/오전|오후/,isPM:function(t){return"오후"===t},meridiem:function(t,e,n){return t<12?"오전":"오후"}};let dn="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),cn="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");function fn(t){return t%10<5&&t%10>1&&~~(t/10)%10!=1}function hn(t,e,n){let a=t+" ";switch(n){case"ss":return a+(fn(t)?"sekundy":"sekund");case"m":return e?"minuta":"minutę";case"mm":return a+(fn(t)?"minuty":"minut");case"h":return e?"godzina":"godzinę";case"hh":return a+(fn(t)?"godziny":"godzin");case"MM":return a+(fn(t)?"miesiące":"miesięcy");case"yy":return a+(fn(t)?"lata":"lat")}}const gn={abbr:"pl",months:(t,e,n)=>t?""===e?"("+cn[k(t,n)]+"|"+dn[k(t,n)]+")":/D MMMM/.test(e)?cn[k(t,n)]:dn[k(t,n)]:dn,monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek(t){switch(Be(t)){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 5:return"[W piątek o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek(t){switch(Be(t)){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 4:return"[W zeszłą czwartek o] LT";case 5:return"[W zeszłą piątek o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:hn,m:hn,mm:hn,h:hn,hh:hn,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:hn,y:"rok",yy:hn},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}},pn={abbr:"pt-br",months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:t=>0===Be(t)||6===Be(t)?"[Último] dddd [às] LT":"[Última] dddd [às] LT",sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº"},bn={abbr:"zh-cn",months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:(t,e)=>(12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"下午"===e||"晚上"===e?t+12:t>=11?t:t+12),meridiem(t,e,n){let a=100*t+e;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal(t,e){const n=Number(t);switch(e){case"d":case"D":case"DDD":return n+"日";case"M":return n+"月";case"w":case"W":return n+"周";default:return n.toString()}},relativeTime:{future:"%s内",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}}},xrYK:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},xs3f:function(t,e,n){var a=n("2oRo"),r=n("zk60"),i=a["__core-js_shared__"]||r("__core-js_shared__",{});t.exports=i},"y/5f":function(t,e,n){(function(t){var a=n("Wa4q"),r=n("KQir"),i=e&&!e.nodeType&&e,s=i&&"object"==typeof t&&t&&!t.nodeType&&t,u=s&&s.exports===i?a.Buffer:void 0;t.exports=(u?u.isBuffer:void 0)||r}).call(this,n("YuTi")(t))},yCtX:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("HDdC"),r=n("ngJS"),i=n("jZKg");function s(t,e){return e?Object(i.a)(t,e):new a.a(Object(r.a)(t))}},yGOH:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},yJti:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a=function(t){return t[t.ValueOk=0]="ValueOk",t[t.ValueStale=1]="ValueStale",t[t.ValueNone=2]="ValueNone",t[t.ValueException=3]="ValueException",t}({})},yPMs:function(t,e,n){!function(t){"use strict";t.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),weekdaysParseExact:!0,meridiemParse:/PD|MD/,isPM:function(t){return"M"===t.charAt(0)},meridiem:function(t,e,n){return t<12?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",ss:"%d sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},yT6U:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t,e=!1){let n=t;return(!a.isArray(t)||a.isArray(t)&&e)&&(n=[t]),n}}},yYhs:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("CoVI"),s=n("mfoh"),u=(n("CFvb"),n("MP8s"),n("f95s"),n("gk6K")),o=(n("dApe"),n("ZhuC")),l=n("fxL3"),d=n("TNUL"),c=n("rZud"),f=n("woSy"),h=n("jV1L"),g=n("pcHL"),p=n("WaXT"),b=n("OIDT"),m=n("HIU9"),y=n("uNpg"),v=n("Fwy9"),x=n("C523"),_=n("4Dmd");n("14R3"),n.d(e,"b",(function(){return T})),n.d(e,"a",(function(){return s.a}));var T=function(){function t(){}var e;return e=t,t.forRoot=function(){return{ngModule:e,providers:[u.a]}},e=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}([Object(a.NgModule)({declarations:[l.a,d.a,c.a,o.a,v.a,x.a,h.a,g.a,f.a,p.a,m.a,b.a,y.a,_.a,i.a],exports:[l.a,d.a,c.a,o.a,v.a,x.a,h.a,g.a,f.a,p.a,m.a,b.a,y.a,_.a,i.a],imports:[r.CommonModule],providers:[]})],t)}()},"yb/u":function(t,e,n){var a=n("ioe2"),r=n("FGWQ");t.exports=function(t){return null==t?[]:a(t,r(t))}},yoRg:function(t,e,n){var a=n("UTVS"),r=n("/GqU"),i=n("TWQb").indexOf,s=n("0BK2");t.exports=function(t,e){var n,u=r(t),o=0,l=[];for(n in u)!a(s,n)&&a(u,n)&&l.push(n);for(;e.length>o;)a(u,n=e[o++])&&(~i(l,n)||l.push(n));return l}},"yt+r":function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="es-ES">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Alternar navegación</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Consola</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Clúster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hosts</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitores</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Servicios</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSDs</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Configuración</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>Mapa de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Módulos de gestor</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Registros</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Repositorios</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Bloque</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Imágenes</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Duplicación</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Sistemas de archivos</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemons</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Usuarios</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Papeleras</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Seleccione un idioma</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Cargando datos del panel...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Selector de hora de Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Restablecer ajustes</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Atrás</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Error al cargar los datos.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>seleccionados</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>encontrados</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>total</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nombre</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Descripción</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Descripción larga</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Opción por defecto</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Daemon por defecto</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Valores</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Guardar</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Visor del mapa de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Cargando...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nombre de host</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Este campo es obligatorio.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Sí, seguro.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Cancelar</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Cerrar</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Lista de hosts</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Rendimiento general</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>No se encuentra ninguna entrada</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Registros del clúster</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Registros de auditoría</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Cargando configuración...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>No es posible cargar la configuración.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Módulo del gestor de edición</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>El valor introducido no es un UUID válido, por ejemplo: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>El valor introducido debe ser una dirección IP válida.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>El valor introducido debe ser un número.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>El valor introducido debe ser un número o un decimal.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Actualizar</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Estado</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID de clúster</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>Mapa de supervisión modificado</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>Época de mapa de supervisión</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quórum de con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quórum de mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>con requerido</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>mon requerido</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>Con quórum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Sin quórum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Añadir</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Características</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Indicadores OSD de todo el clúster</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Enviar</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Avanzado...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Prioridad de recuperación de OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Prioridad</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Personalizar valores de prioridad</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Este campo es obligatorio.</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>El valor debe estar entre 0 y 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Reequilibrar peso</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Profundo} }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {profundo} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Lista de OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Valor</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Editar</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Suprimir</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Estado</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Estadísticas</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Clientes</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Cualquier cliente puede acceder</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Destinatarios</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Campo requerido</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Debe contener uno o varios valores separados por comas</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Por ejemplo:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Tipo de acceso</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Reducir privilegios</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Añadir clientes</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- No hay ningún clúster disponible --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Seleccione el clúster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Añadir daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Motor de almacenamiento</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- No hay ningún repositorio de datos disponible --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Seleccione el motor de almacenamiento --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Usuario de Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- No hay ningún usuario disponible --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Seleccione el usuario de Object Gateway --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID de usuario de CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- No hay ningún cliente disponible --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Seleccione el cliente de CephX --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nombre de CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Etiqueta de seguridad</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Habilitar etiqueta de seguridad</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Ruta de CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>La ruta debe empezar por "/" y puede ir seguida de una palabra</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Se creará un directorio nuevo</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Ruta</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>La ruta solo puede ser una "/" o una palabra</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Se creará una papelera nueva</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protocolo NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Etiqueta NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Puede que los clientes no monten subdirectorios (es decir, si Etiqueta = foo, el cliente puede que no monte foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Al usar distintas opciones de Etiqueta, la misma Ruta se puede exportar varias veces.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Al usar distintas opciones de Pseudo, la misma Ruta se puede exportar varias veces.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- No hay ningún tipo de acceso disponible --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Seleccione el tipo de acceso --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- No hay ninguna reducción de privilegios disponible --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Seleccione el tipo de reducción de privilegios de ID de usuario que se va a realizar --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protocolo de transporte</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>¡Bienvenidos a Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>El nombre de usuario es obligatorio</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>La contraseña es obligatoria</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Entrada</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Lo sentimos. El usuario no existe en Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Prohibido</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Lo sentimos. No tiene permiso para ver lo que busca.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Configuración de RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Elimina el valor de configuración local. Se heredará y usará en su lugar el valor de configuración padre.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>El valor mínimo es 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Lista de repositorios</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>El nombre solo puede tener caracteres alfanuméricos, guiones y guiones bajos.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>El nombre del perfil de código de borrado que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Complemento</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Porciones de datos (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Debe ser igual o mayor que 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Porciones de código (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Debe ser igual o mayor que 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Estimador de durabilidad (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Localización (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Dominio de error de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Localización de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Ninguna</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Técnica</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Tamaño del paquete</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Raíz de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Clase de dispositivo de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>cualquiera</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Directorio</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nombre...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>El nombre del repositorio de Ceph que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Tipo de repositorio</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Seleccione un tipo de repositorio --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Grupos de colocación</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Se necesita al menos un grupo de colocación.</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>El clúster no puede gestionar tantos grupos de colocación. Vuelva a calcular la cantidad que necesita.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Ayuda para el cálculo</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Tamaño replicado</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Indicadores</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>Sustituciones de códigos de borrado</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Aplicaciones</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Perfil de código de borrado</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- No hay ningún perfil de código de borrado disponible --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Seleccione un perfil de código de borrado --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Conjunto de reglas de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Seleccione una regla de CRUSH --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Regla de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Pasos de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Compresión</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Modo</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritmo</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- No hay ningún algoritmo de compresión de borrado disponible --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Tamaño de Blob mínimo</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>p. ej. 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>El valor debe ser mayor que 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Tamaño de Blob máximo</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>p. ej. 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>El valor debe ser mayor que el tamaño de Blob mínimo</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Relación</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Relación de compresión</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>El valor debe estar entre 0,0 y 1,0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>ej.: 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Detalles</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Detalles de rendimiento</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Detalles de niveles de caché</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Mover una imagen a la papelera</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>La protección caduca a las</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>SIN PROTECCIÓN</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Formato de fecha erróneo. Use el formato "AAAA-MM-DD HH:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>La protección ya ha caducado. Seleccione una fecha del futuro o deje el campo vacío.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Mover imagen</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Resumen</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Destinos</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Autenticación de descubrimiento</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Usuario</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Los nombres de usuario deben tener entre 8 y 64 caracteres y\n                        solo pueden incluir letras y estos caracteres: ".", "@", "-", "_" o ":".</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Contraseña</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Usuario mutuo</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Contraseña mutua</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Información disponible:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>Destinos iSCSI no disponibles</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Repositorio</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Repositorio de datos</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Creados</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Tamaño</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objetos</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Tamaño del objeto</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Aprovisionados</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/D</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Total aprovisionado</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unidad de repartición</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Recuento de repartición</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Padre</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Prefijo de nombre de bloque</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Orden</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Instantáneas</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Imagen</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Este ajuste sustituye al valor global</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Este es el valor global. No se ha definido ningún valor para esta opción para esta imagen.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>No se permiten los caracteres "/" ni "@".</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- No hay ningún repositorio RBD disponible --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Seleccione un repositorio --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Usar un repositorio dedicado para datos</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Repositorio de datos</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Repositorio dedicado para almacenar los datos de objeto de RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Debe aumentar el tamaño.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Avanzado</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Repartición</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unidad de repartición</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Seleccione la unidad de repartición --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Este campo es obligatorio porque se ha definido el recuento de repartición.</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>La unidad de repartición es mayor que el tamaño del objeto.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Recuento de repartición</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Este campo es obligatorio porque se ha definido la unidad de repartición.</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>El recuento de repartición debe ser mayor que 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Se dispone a revertir</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Vaciar papelera</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Todas</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Repositorio:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nombre del repositorio...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Restaurar imágenes</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Para restaurar</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>escriba el nombre nuevo de la imagen y haga clic en</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nombre nuevo</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Caducó a las</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Protección hasta</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topología iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Normalmente no es necesario cambiar los valores por defecto de estos parámetros.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Ajustes</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Almacén</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Confirmar</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Ajustes avanzados</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN de destino</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>El IQN tiene un patrón erróneo.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Por ejemplo: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Más información</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Este destino tiene ajustes avanzados modificados.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portales</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Añadir portal</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Esta imagen tiene ajustes modificados.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Añadir imagen</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Autenticación de ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Iniciadores</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Iniciador</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN del cliente</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>El IQN del iniciador debe ser exclusivo.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Los nombres de usuario deben tener entre 8 y 64 caracteres y\n                        solo pueden incluir letras y estos caracteres: ".", "@", "-", "_" o ":".</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>El iniciador pertenece a un grupo. Las imágenes se configurarán en el grupo.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>No se ha añadido ningún elemento.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Añadir iniciador</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Grupos</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Grupo</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Añadir grupo</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Papelera</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Problemas</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Sincronizando</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Listo</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Editar modo de duplicación de repositorio</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Los clústeres de par deben eliminarse antes de inhabilitar la duplicación.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Editar} other {Añadir} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nombre del clúster</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>El nombre del clúster no es válido.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>ID de CephX</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>ID de CephX...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>El ID de CephX no es válido.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Direcciones de monitores</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Direcciones delimitadas por comas...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>La dirección del monitor no es válida.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Clave de CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Clave con cifrado base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>La clave de CephX debe tener cifrado base64</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Los contadores de rendimiento no están disponibles</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Lista de daemons</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Contadores de rendimiento</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Cargando datos de la papelera...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>El valor no es válido.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>El nombre que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Propietario</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Seleccione un usuario --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Habilitado</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Tipo de índice</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Regla de colocación</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Marcador</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Marcador máximo</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Versión</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Versión maestra</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Hora de modificación</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Grupo de zona</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Cuota de papelera</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Tamaño máximo</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Sin límite</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Número máximo de objetos</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nombre de usuario</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Seleccione un nombre de usuario --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Autogenerar clave</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Clave de acceso</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Clave secreta</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nombre completo</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Dirección de correo electrónico</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Suspendido</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Sistema</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Número máximo de papeleras</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Subusuarios</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Capacidades</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Cuota de usuario</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Mostrar</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Claves</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Tipo</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Seleccione un tipo --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Permiso</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Seleccione un permiso --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Subusuario</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>El ID de subusuario que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>lectura, escritura</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>todos</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Clave Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Autogenerar secreto</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Cargando datos del usuario...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>No es posible cargar los datos del usuario.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>El ID de usuario que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Esta dirección no es válida.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>La dirección de correo electrónico que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Máx. papeleras</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Inhabilitado</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Personalizar</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Clave S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>No hay ningún subusuario.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>No hay ninguna clave.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>No hay ninguna capacidad</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Tamaño ilimitado</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Tamaño máx.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Objetos ilimitados</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Objetos máx.</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>El valor introducido debe ser mayor o igual que 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Descripción...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Permisos</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Funciones</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Confirmar contraseña</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Las contraseñas no coinciden.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>Correo electrónico</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Correo electrónico no válido.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Se dispone a eliminar los permisos "lectura/actualización de usuario" de su propio usuario.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Si continúa, no podrá añadir ni eliminar funciones en ningún usuario.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>¿Seguro que desea continuar?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Ayuda</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Documentación</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Acerca de</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Ajustes de la consola</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Gestión del usuario</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Usuario que ha entrado</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Salir</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atributos (mapa de OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Los metadatos no están disponibles</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadatos</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Contandor de rendimiento</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Escrituras</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Lecturas</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histograma</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Valores actuales</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Mín.</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Máx.</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Origen</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Nivel</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Se puede actualizar en el tiempo de ejecución (editable)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Etiquetas</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Valores Enum</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Véase también</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Estado del clúster</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Daemons de gestor</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Instancias de Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Servidores de metadatos</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Puertas de enlace iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS de cliente</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Rendimiento del cliente</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Lectura/escritura de cliente</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Rendimiento de recuperación</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Depuración</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Rendimiento</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Capacidad en bruto</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Grupos de colocación por OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Estado del grupo de colocación</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Capacidad</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Clasificaciones</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Actual</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Autenticación de descubrimiento actualizada</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>No hay ningún portal disponible.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>No hay ninguna imagen disponible.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>No hay ninguna imagen disponible. Asegúrese de añadir una imagen al destino.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>No hay ningún iniciador disponible. Asegúrese de añadir un iniciador al destino.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Destino</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Estado</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Bytes de lectura</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Bytes de escritura</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Operaciones de lectura</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Operaciones de escritura</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O desde</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instancia</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problema</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Progreso</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Editar modo</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Añadir par</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Editar par</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Suprimir par</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Líder</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>N.º locales</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>N.º remotos</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>duplicar par</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Clave</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Aplanamiento profundo</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>En capas</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Bloqueo exclusivo</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mapa de objetos (requiere bloqueo exclusivo)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>En diario (requiere bloqueo exclusivo)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>SIN PROTECCIÓN</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Reversión de instantánea RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Revertir</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Instantánea RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Suprimido a las</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>tipo</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>estado</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>versión</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>raíz</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemons de reserva</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Clasificación</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Actividad</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inodos</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Uso</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Actualizado</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>El valor se puede actualizar en el tiempo de ejecución.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Los daemons/clientes no extraen este valor de la\n      base de datos de configuración del monitor. No se recomienda definir esta opción con "ceph config\n      set ...". Esta opción se debe configurar mediante ceph.conf o a través\n      de la línea de comandos.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>La opción solo surte efecto durante el inicio del daemon.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>La opción solo afecta a la creación del clúster.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>La opción solo afecta a la creación del daemon.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Servicio</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Valor actual</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Editable</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Habilitar</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Inhabilitar</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Conectando de nuevo. Espere...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Dirección pública</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Sesiones abiertas</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>No incluir</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>Los OSD que se excluyeron anteriormente no se volverán a incluir cuando se inicien</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>No excluir</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>Los OSD no se excluirán automáticamente después del intervalo configurado</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>No activar</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>No se permite que los OSD se inicien</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>No desactivar</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Se ignoran los informes de error de OSD, de forma que los monitores no desactivarán los OSD</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pausa</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Pone en pausa las lecturas y escrituras</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>No depurar</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>La depuración está inhabilitada</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>No depuración profunda</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>La depuración profunda está inhabilitada</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>No reponer</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>La reposición de grupos de colocación se suspende</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>No recuperar</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>La recuperación de los grupos de colocación se suspende</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Orden bit a bit</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Usar orden bit a bit</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Snapdir limpiados</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>Los OSD tienen snapset convertidos</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Supresiones de recuperación</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Supresiones realizadas durante la recuperación, en lugar de emparejamientos</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Límite estricto de registro del grupo de colocación</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Establece un límite estricto para la longitud del registro del grupo de colocación</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Indicadores de OSD actualizados</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>excluir</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>Incluir</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>desactivar</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Marcar</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD perdido</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>marcado como perdido</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Limpiar</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>limpiado</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>destruir</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>destruido</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>suprimir</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>Grupos de colocación</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Bytes de lectura</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Bytes de escritura</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Operaciones de lectura</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Operaciones de escritura</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Número máximo de reposiciones</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Máximo de recuperaciones activas</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Máximo de recuperaciones de inicio único</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Reposo de recuperación</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Trabajo</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Gravedad</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Iniciado</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Usado</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Dispon.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Limpio</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>En curso</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Advertencia</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Desconocido</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>activo</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>sin sistemas de archivos</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>activo</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>reserva</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/d</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon activo</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quórum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>El servicio NFS Ganesha no está configurado.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transportar</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Usuario de CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Sistemas de archivos CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(se hereda de la configuración global)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>se hereda de la configuración global</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Seleccione el tipo de reducción de privilegios de ID de usuario que se va a realizar --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>No hay ningún daemon disponible.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Modo de caché</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Antigüedad mínima de expulsión</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Antigüedad mínima de vaciado</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Número máximo de bytes de destino</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Número máximo de objetos de destino</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>No se ha añadido ninguna aplicación</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Se ha alcanzado el límite de aplicaciones</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Un repositorio solo puede tener hasta cuatro definiciones de aplicaciones.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Caracteres permitidos: _, a-z, A-Z y 0-9</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>La longitud máxima es 128 caracteres</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtrar o añadir aplicaciones</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Añadir aplicación</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>perfil de código de borrado</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Tamaño de réplica</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Último cambio</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Perfil de código de borrado</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Conjunto de reglas de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>papelera</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>papeleras</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>usuario</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>usuarios</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Ámbito</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Lectura</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Crear</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Función del sistema</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Actualizar usuario</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Continuar</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>La sesión se ha cerrado automáticamente porque sus funciones han cambiado.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Cada objeto se divide en porciones de datos, cada una almacenada en un OSD distinto.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Calcula las porciones de código para cada objeto y las almacena en distintos OSD.\n      El número de porciones de código es también el número de OSD que pueden estar inactivos sin que se pierdan datos.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>El complemento jerasure es el más genérico y flexible,\n          y también el complemento por defecto para los repositorios de código de borrado de Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>La técnica más flexible es reed_sol_van: basta con definir k y m.\n          La técnica cauchy_good puede ser más rápida, pero hay que elegir con cuidado el tamaño\n          del paquete. reed_sol_r6_op, liberation, blaum_roth y liber8tion son todas equivalentes a RAID6\n          en el sentido de que solo se pueden configurar con m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>La codificación se realizará según el tamaño de los paquetes de bytes de uno en uno.\n          Elegir el tamaño correcto es difícil.\n          La documentación de jerasure incluye información completa sobre el tema.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Con el complemento jerasure, cuando un objeto de código de borrado se almacena\n          en varios OSD, para recuperarse de la pérdida de un OSD es necesario leer de todos los demás.\n          Por ejemplo, si jerasure está configurado con k=8 y m=4, cuando se pierde un OSD es necesario leer\n          de los otros once para repararlo.\n\n          El complemento de código de borrado lrc crea porciones de paridad local para poder realizar la recuperación con\n          menos OSDs. Por ejemplo, is lrc está configurado con k=8, m=4 y l=4, creará\n          una porción de paridad adicional para cada cuatro OSDs. Si se pierde un solo OSD, se puede recuperar\n          solo con cuatro OSD, en lugar de con once.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Agrupa las porciones de código y de datos en localizaciones de conjuntos de tamaño. Por ejemplo,\n          para k=4 y m=2, si locality=3, se crean dos grupos de tres. Cada conjunto\n          se puede recuperar sin leer porciones de otro conjunto.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>El tipo de papelera de CRUSH en el que se almacenará cada\n          conjunto de porciones definido por l. Por ejemplo, si se define como bastidor, cada grupo de l porciones\n          se colocará en un bastidor distinto. Se usa para crear un paso de regla de CRUSH, por ejemplo, "step choose\n          rack". Si no se define, no se realiza este tipo de agrupamiento.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>El complemento isa encapsula la biblioteca ISA. Solo funciona en procesadores Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>El complemento ISA viene en dos formatos de Reed Solomon.\n          Si se define reed_sol_van, se trata de Vandermonde; si se define cauchy, se trata de Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>El complemento shec encapsula las distintas bibliotecas SHEC.\n          Permite a Ceph recuperar datos de forma más eficiente que los códigos de Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>El número de porciones de paridad. Cada uno de ellas incluye cada porción de datos\n           en su intervalo de cálculo. El número se usa como estimador de durabilidad. Por ejemplo, si c=2,\n          2 OSD pueden estar inactivos sin que se pierdan datos.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>El nombre de la papelera de CRUSH usado para el primer paso de la regla de CRUSH.\n      Por ejemplo, "step take default".</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Asegúrese de que no hay dos porciones en una papelera con el mismo\n      dominio de error. Por ejemplo, si el dominio de error es host, no debe haber dos porciones almacenadas en el mismo\n      host. Se usa para crear un paso de regla de CRUSH, por ejemplo, "step chooseleaf host".</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Restringe la colocación a dispositivos de una clase concreta\n      (p.ej., ssd o hdd) usando los nombre de clase de dispositivo CRUSH en el mapa de CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Define el nombre de directorio del que se cargará el complemento de código de borrado.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Permite todas las operaciones</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Permite solo las operaciones que no modifican el servidor</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>No permite operaciones de lectura o escritura, pero sí cualquier otra</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>No permite operaciones de lectura o escritura, ni ninguna otra que modifique los atributos del archivo o el contenido del directorio</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>No permite ningún tipo de acceso</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Seleccione la prioridad --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Baja</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Alta</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Información</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Últimos 5 minutos</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Últimos 15 minutos</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Últimos 30 minutos</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Última hora (opción por defecto)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Últimas 3 horas</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Últimas 6 horas</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Últimas 12 horas</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Últimas 24 horas</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Ayer</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Hoy</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Hoy hasta ahora</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Anteayer</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Los últimos 2 días</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Este día la semana pasada</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>La semana pasada</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Esta semana</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Esta semana hasta ahora</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Los últimos 7 días</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>El mes pasado</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Este mes</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Este mes hasta ahora</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Los últimos 30 días</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Los últimos 90 días</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Los últimos 6 meses</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>El último año</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>El año pasado</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Este año</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Este año hasta ahora</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Los últimos 2 años</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Los últimos 5 años</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>No se ha seleccionado ningún elemento.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Deseleccione el elemento para volver a seleccionarlo</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Se ha alcanzado el límite de selección</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Filtrar etiquetas</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Añadir insignia</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>No hay ningún elemento disponible.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Clonar</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Copiar</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Depuración profunda</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Destruir</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Aplanar</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Marcar para desactivar</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Marcar para incluir</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Marcar como perdido</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Marcar para excluir</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Proteger</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Renombrar</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Restaurar</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Mover a la papelera</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Desproteger</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Suprimido</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Clonado</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Copiado</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Aplanado</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Limpiado</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Restaurado</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Revertido</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Sí</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>No</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Calidad del servicio</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Límite de BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>El límite deseado de bytes de E/S por segundo.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Límite de IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>El límite deseado de operaciones de E/S por segundo.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Límite de BPS de lectura</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>El límite deseado de bytes de lectura por segundo.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Límite de IOPS de lectura</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>El límite deseado de operaciones de lectura por segundo.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Límite de BPS de escritura</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>El límite deseado de bytes de escritura por segundo.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Límite de IOPS de escritura</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>El límite deseado de operaciones de escritura por segundo.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Ráfaga de BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>El límite deseado de ráfaga de bytes de E/S.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Ráfaga de IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>El límite deseado de ráfaga de operaciones de E/S.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Ráfaga de BPS de lectura</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>El límite deseado de ráfaga de bytes de lectura.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Ráfaga de IOPS de lectura</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>El límite deseado de ráfaga de operaciones de lectura.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Ráfaga de BPS de escritura</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>El límite deseado de ráfaga de bytes de escritura.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Ráfaga de IOPS de escritura</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>El límite deseado de ráfaga de operaciones de escritura.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Ejecutando</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>ejecutar</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Ejecutado</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>tarea desconocida</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Creando</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>crear</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Actualizando</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>actualizar</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Suprimiendo</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Clonando</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>clonar</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Copiando</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>copiar</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Aplanando</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>aplanar</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Revirtiendo</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>revertir</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Moviendo</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>mover</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Movido</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>No se encuentra la imagen.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Restaurando</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>restaurar</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Limpiando</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>limpiar</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>todos los repositorios</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>No es posible inhabilitar la duplicación porque contiene un par</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"z+Ro":function(t,e,n){"use strict";function a(t){return t&&"function"==typeof t.schedule}n.d(e,"a",(function(){return a}))},"z/SZ":function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("hpHm");class i{constructor(t,e,n){this.nodes=t,this.viewRef=e,this.componentRef=n}}class s{constructor(t,e,n,r,i,s,u,o){this._viewContainerRef=t,this._renderer=e,this._elementRef=n,this._injector=r,this._componentFactoryResolver=i,this._ngZone=s,this._applicationRef=u,this._posService=o,this.onBeforeShow=new a.EventEmitter,this.onShown=new a.EventEmitter,this.onBeforeHide=new a.EventEmitter,this.onHidden=new a.EventEmitter,this._providers=[],this._isHiding=!1,this.containerDefaultSelector="body",this._listenOpts={},this._globalListener=Function.prototype}get isShown(){return!this._isHiding&&!!this._componentRef}attach(t){return this._componentFactory=this._componentFactoryResolver.resolveComponentFactory(t),this}to(t){return this.container=t||this.container,this}position(t){return this.attachment=t.attachment||this.attachment,this._elementRef=t.target||this._elementRef,this}provide(t){return this._providers.push(t),this}show(t={}){if(this._subscribePositioning(),this._innerComponent=null,!this._componentRef){this.onBeforeShow.emit(),this._contentRef=this._getContentRef(t.content,t.context,t.initialState);const e=a.Injector.create({providers:this._providers,parent:this._injector});this._componentRef=this._componentFactory.create(e,this._contentRef.nodes),this._applicationRef.attachView(this._componentRef.hostView),this.instance=this._componentRef.instance,Object.assign(this._componentRef.instance,t),this.container instanceof a.ElementRef&&this.container.nativeElement.appendChild(this._componentRef.location.nativeElement),"string"==typeof this.container&&"undefined"!=typeof document&&(document.querySelector(this.container)||document.querySelector(this.containerDefaultSelector)).appendChild(this._componentRef.location.nativeElement),!this.container&&this._elementRef&&this._elementRef.nativeElement.parentElement&&this._elementRef.nativeElement.parentElement.appendChild(this._componentRef.location.nativeElement),this._contentRef.componentRef&&(this._innerComponent=this._contentRef.componentRef.instance,this._contentRef.componentRef.changeDetectorRef.markForCheck(),this._contentRef.componentRef.changeDetectorRef.detectChanges()),this._componentRef.changeDetectorRef.markForCheck(),this._componentRef.changeDetectorRef.detectChanges(),this.onShown.emit(this._componentRef.instance)}return this._registerOutsideClick(),this._componentRef}hide(){if(!this._componentRef)return this;this._posService.deletePositionElement(this._componentRef.location),this.onBeforeHide.emit(this._componentRef.instance);const t=this._componentRef.location.nativeElement;return t.parentNode.removeChild(t),this._contentRef.componentRef&&this._contentRef.componentRef.destroy(),this._componentRef.destroy(),this._viewContainerRef&&this._contentRef.viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._contentRef.viewRef)),this._contentRef.viewRef&&this._contentRef.viewRef.destroy(),this._contentRef=null,this._componentRef=null,this._removeGlobalListener(),this.onHidden.emit(),this}toggle(){this.isShown?this.hide():this.show()}dispose(){this.isShown&&this.hide(),this._unsubscribePositioning(),this._unregisterListenersFn&&this._unregisterListenersFn()}listen(t){this.triggers=t.triggers||this.triggers,this._listenOpts.outsideClick=t.outsideClick,this._listenOpts.outsideEsc=t.outsideEsc,t.target=t.target||this._elementRef.nativeElement;const e=this._listenOpts.hide=()=>t.hide?t.hide():void this.hide(),n=this._listenOpts.show=e=>{t.show?t.show(e):this.show(e),e()};return this._unregisterListenersFn=Object(r.e)(this._renderer,{target:t.target,triggers:t.triggers,show:n,hide:e,toggle:t=>{this.isShown?e():n(t)}}),this}_removeGlobalListener(){this._globalListener&&(this._globalListener(),this._globalListener=null)}attachInline(t,e){return this._inlineViewRef=t.createEmbeddedView(e),this}_registerOutsideClick(){if(this._componentRef&&this._componentRef.location){if(this._listenOpts.outsideClick){const t=this._componentRef.location.nativeElement;setTimeout(()=>{this._globalListener=Object(r.h)(this._renderer,{targets:[t,this._elementRef.nativeElement],outsideClick:this._listenOpts.outsideClick,hide:()=>this._listenOpts.hide()})})}if(this._listenOpts.outsideEsc){const t=this._componentRef.location.nativeElement;this._globalListener=Object(r.g)(this._renderer,{targets:[t,this._elementRef.nativeElement],outsideEsc:this._listenOpts.outsideEsc,hide:()=>this._listenOpts.hide()})}}}getInnerComponent(){return this._innerComponent}_subscribePositioning(){!this._zoneSubscription&&this.attachment&&(this.onShown.subscribe(()=>{this._posService.position({element:this._componentRef.location,target:this._elementRef,attachment:this.attachment,appendToBody:"body"===this.container})}),this._zoneSubscription=this._ngZone.onStable.subscribe(()=>{this._componentRef&&this._posService.calcPosition()}))}_unsubscribePositioning(){this._zoneSubscription&&(this._zoneSubscription.unsubscribe(),this._zoneSubscription=null)}_getContentRef(t,e,n){if(!t)return new i([]);if(t instanceof a.TemplateRef){if(this._viewContainerRef){const n=this._viewContainerRef.createEmbeddedView(t,e);return n.markForCheck(),new i([n.rootNodes],n)}const n=t.createEmbeddedView({});return this._applicationRef.attachView(n),new i([n.rootNodes],n)}if("function"==typeof t){const e=this._componentFactoryResolver.resolveComponentFactory(t),r=a.Injector.create({providers:this._providers,parent:this._injector}),s=e.create(r);return Object.assign(s.instance,n),this._applicationRef.attachView(s.hostView),new i([[s.location.nativeElement]],s.hostView,s)}return new i([[this._renderer.createText(""+t)]])}}class u{constructor(t,e,n,a,r){this._componentFactoryResolver=t,this._ngZone=e,this._injector=n,this._posService=a,this._applicationRef=r}createLoader(t,e,n){return new s(e,n,t,this._injector,this._componentFactoryResolver,this._ngZone,this._applicationRef,this._posService)}}},z1FC:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={s:["viensas secunds","'iensas secunds"],ss:[t+" secunds",t+" secunds"],m:["'n míut","'iens míut"],mm:[t+" míuts",t+" míuts"],h:["'n þora","'iensa þora"],hh:[t+" þoras",t+" þoras"],d:["'n ziua","'iensa ziua"],dd:[t+" ziuas",t+" ziuas"],M:["'n mes","'iens mes"],MM:[t+" mesen",t+" mesen"],y:["'n ar","'iens ar"],yy:[t+" ars",t+" ars"]};return a||e?r[n][0]:r[n][1]}t.defineLocale("tzl",{months:"Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"),weekdaysShort:"Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"),weekdaysMin:"Sú_Lú_Ma_Má_Xh_Vi_Sá".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM [dallas] YYYY",LLL:"D. MMMM [dallas] YYYY HH.mm",LLLL:"dddd, [li] D. MMMM [dallas] YYYY HH.mm"},meridiemParse:/d\'o|d\'a/i,isPM:function(t){return"d'o"===t.toLowerCase()},meridiem:function(t,e,n){return t>11?n?"d'o":"D'O":n?"d'a":"D'A"},calendar:{sameDay:"[oxhi à] LT",nextDay:"[demà à] LT",nextWeek:"dddd [à] LT",lastDay:"[ieiri à] LT",lastWeek:"[sür el] dddd [lasteu à] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},z3Vd:function(t,e,n){!function(t){"use strict";var e="pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_");function n(t,n,a,r){var i=function(t){var n=Math.floor(t%1e3/100),a=Math.floor(t%100/10),r=t%10,i="";return n>0&&(i+=e[n]+"vatlh"),a>0&&(i+=(""!==i?" ":"")+e[a]+"maH"),r>0&&(i+=(""!==i?" ":"")+e[r]),""===i?"pagh":i}(t);switch(a){case"ss":return i+" lup";case"mm":return i+" tup";case"hh":return i+" rep";case"dd":return i+" jaj";case"MM":return i+" jar";case"yy":return i+" DIS"}}t.defineLocale("tlh",{months:"tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’".split("_"),monthsShort:"jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’".split("_"),monthsParseExact:!0,weekdays:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysShort:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysMin:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[DaHjaj] LT",nextDay:"[wa’leS] LT",nextWeek:"LLL",lastDay:"[wa’Hu’] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:function(t){var e=t;return-1!==t.indexOf("jaj")?e.slice(0,-3)+"leS":-1!==t.indexOf("jar")?e.slice(0,-3)+"waQ":-1!==t.indexOf("DIS")?e.slice(0,-3)+"nem":e+" pIq"},past:function(t){var e=t;return-1!==t.indexOf("jaj")?e.slice(0,-3)+"Hu’":-1!==t.indexOf("jar")?e.slice(0,-3)+"wen":-1!==t.indexOf("DIS")?e.slice(0,-3)+"ben":e+" ret"},s:"puS lup",ss:n,m:"wa’ tup",mm:n,h:"wa’ rep",hh:n,d:"wa’ jaj",dd:n,M:"wa’ jar",MM:n,y:"wa’ DIS",yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},z5nN:function(t,e,n){"use strict";n.d(e,"b",(function(){return o})),n.d(e,"a",(function(){return f}));var a=n("8Y7J"),r=n("LqlI"),i=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function s(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["role","document"]],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","modal-content"]],null,null,null,null,null)),a["ɵncd"](null,0)],null,(function(t,e){var n=e.component;t(e,0,0,"modal-dialog"+(n.config.class?" "+n.config.class:""))}))}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"modal-container",[["class","modal"],["role","dialog"],["tabindex","-1"]],[[1,"aria-modal",0]],[[null,"mousedown"],[null,"mouseup"],["window","keydown.esc"]],(function(t,e,n){var r=!0;return"mousedown"===e&&(r=!1!==a["ɵnov"](t,1).onClickStarted(n)&&r),"mouseup"===e&&(r=!1!==a["ɵnov"](t,1).onClickStop(n)&&r),"window:keydown.esc"===e&&(r=!1!==a["ɵnov"](t,1).onEsc(n)&&r),r}),s,i)),a["ɵdid"](1,245760,null,0,r.d,[r.f,a.ElementRef,a.Renderer2],null,null)],(function(t,e){t(e,1,0)}),(function(t,e){t(e,0,0,!0)}))}var o=a["ɵccf"]("modal-container",r.d,u,{},{},["*"]),l=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function d(t){return a["ɵvid"](0,[],null,null)}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-modal-backdrop",[["class","modal-backdrop"]],null,null,null,d,l)),a["ɵdid"](1,114688,null,0,r.c,[a.ElementRef,a.Renderer2],null,null)],(function(t,e){t(e,1,0)}),null)}var f=a["ɵccf"]("bs-modal-backdrop",r.c,c,{},{},[])},z6cu:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("HDdC");function r(t,e){return new a.a(e?n=>e.schedule(i,0,{error:t,subscriber:n}):e=>e.error(t))}function i({error:t,subscriber:e}){e.error(t)}},zAeO:function(t,e,n){var a=n("SQuY");function r(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var a=arguments,r=e?e.apply(this,a):a[0],i=n.cache;if(i.has(r))return i.get(r);var s=t.apply(this,a);return n.cache=i.set(r,s)||i,s};return n.cache=new(r.Cache||a),n}r.Cache=a,t.exports=r},zBJ4:function(t,e,n){var a=n("2oRo"),r=n("hh1v"),i=a.document,s=r(i)&&r(i.createElement);t.exports=function(t){return s?i.createElement(t):{}}},zDBQ:function(t,e,n){var a=n("IeEY");t.exports=function(t){return null!=t&&t.length?a(t,1):[]}},zKZe:function(t,e,n){var a=n("I+eb"),r=n("YNrV");a({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},zUnb:function(t,e,n){"use strict";n.r(e);var a=n("tAZD"),r=n.n(a),i=n("SVse"),s=n("8Y7J");const u=t=>{t=t||"en-US";try{return n("F+uO")(`./messages.${t}.xlf`).default}catch(e){return[]}};class o{}class l{constructor(){}}var d=n("EApP"),c=s["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"flyInOut",definitions:[{type:0,name:"inactive",styles:{type:6,styles:{opacity:0},offset:null},options:void 0},{type:0,name:"active",styles:{type:6,styles:{opacity:1},offset:null},options:void 0},{type:0,name:"removed",styles:{type:6,styles:{opacity:0},offset:null},options:void 0},{type:1,expr:"inactive => active",animation:{type:4,styles:null,timings:"{{ easeTime }}ms {{ easing }}"},options:null},{type:1,expr:"active => removed",animation:{type:4,styles:null,timings:"{{ easeTime }}ms {{ easing }}"},options:null}],options:{}}]}});function f(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"button",[["aria-label","Close"],["class","toast-close-button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.remove()&&a),a}),null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["×"]))],null,null)}function h(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](1,null,["[","]"]))],null,(function(t,e){t(e,1,0,e.component.duplicatesCount+1)}))}function g(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"div",[],[[8,"className",0],[1,"aria-label",0]],null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,h)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,3,0,e.component.duplicatesCount)}),(function(t,e){var n=e.component;t(e,0,0,n.options.titleClass,n.title),t(e,1,0,n.title)}))}function p(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"div",[["aria-live","polite"],["role","alertdialog"]],[[8,"className",0],[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.options.messageClass,n.message)}))}function b(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["aria-live","polite"],["role","alertdialog"]],[[8,"className",0],[1,"aria-label",0]],null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,0,0,n.options.messageClass,n.message),t(e,1,0,n.message)}))}function m(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,0,"div",[["class","toast-progress"]],[[4,"width",null]],null,null,null,null))],null,(function(t,e){t(e,1,0,e.component.width+"%")}))}function y(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,f)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,g)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,p)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,b)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,m)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.options.closeButton),t(e,3,0,n.title),t(e,5,0,n.message&&n.options.enableHtml),t(e,7,0,n.message&&!n.options.enableHtml),t(e,9,0,n.options.progressBar)}),null)}function v(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["toast-component",""]],[[8,"className",0],[40,"@flyInOut",0],[4,"display",null]],[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,1).tapToast()&&a),"mouseenter"===e&&(a=!1!==s["ɵnov"](t,1).stickAround()&&a),"mouseleave"===e&&(a=!1!==s["ɵnov"](t,1).delayedHideToast()&&a),a}),y,c)),s["ɵdid"](1,180224,null,0,d.c,[d.j,d.g,s.NgZone],null,null)],null,(function(t,e){t(e,0,0,s["ɵnov"](e,1).toastClasses,s["ɵnov"](e,1).state,s["ɵnov"](e,1).displayStyle)}))}var x=s["ɵccf"]("[toast-component]",d.c,v,{},{},[]),_=n("pMnS"),T=n("jtHE");let w=(()=>{class t{}return t.START="start",t.STOP="stop",t.UPDATE="update",t.RESET="reset",t.UNSUBSCRIBE="unsubscribe",t})();class O{constructor(){this.blockUISettings={},this.blockUIInstances={},this.blockUISubject=new T.a,this.blockUIObservable=this.blockUISubject.asObservable(),this.blockUIObservable.subscribe(this.blockUIMiddleware.bind(this))}getSettings(){return this.blockUISettings}updateSettings(t={}){this.blockUISettings=Object.assign({},this.blockUISettings,t)}decorate(t="block-ui-main"){const e={name:t,isActive:!1,blockCount:0,start:this.dispatch(this.blockUISubject,w.START,t),update:this.dispatch(this.blockUISubject,w.UPDATE,t),stop:this.dispatch(this.blockUISubject,w.STOP,t),reset:this.dispatch(this.blockUISubject,w.RESET,t),unsubscribe:this.dispatch(this.blockUISubject,w.UNSUBSCRIBE,t)};return this.blockUIInstances[t]=this.blockUIInstances[t]||e,e}observe(){return this.blockUIObservable}blockUIMiddleware({action:t,name:e}){let n=null;switch(t){case w.START:n=!0;break;case w.STOP:case w.RESET:n=!1}null!==n&&(this.blockUIInstances[e].isActive=n)}dispatch(t,e,n="block-ui-main"){return a=>{t.next({name:n,action:e,message:a})}}}class S{constructor(t){this.blockUI=t}ngOnInit(){this.name=this.name||"block-ui-main",this.template=this.template||this.blockUI.blockUISettings.template}}class I{constructor(t,e,n){this.blockUI=t,this.resolver=e,this.changeDetectionRef=n,this.name="block-ui-main",this.delayStart=0,this.delayStop=0,this.state={startTimeout:null,stopTimeout:null,blockCount:0},this.active=!1}ngOnInit(){this.settings=this.blockUI.getSettings(),this.blockUISubscription=this.subscribeToBlockUI(this.blockUI.observe())}ngAfterViewInit(){try{if(!this.templateCmp)return!1;if(this.templateCmp instanceof s.TemplateRef)this.templateOutlet.createEmbeddedView(this.templateCmp);else{const t=this.resolver.resolveComponentFactory(this.templateCmp);this.templateCompRef=this.templateOutlet.createComponent(t),this.updateBlockTemplate(this.message)}}catch(t){console.error("ng-block-ui:",t)}}ngAfterViewChecked(){this.detectChanges()}subscribeToBlockUI(t){return t.subscribe(t=>this.onDispatchedEvent(t))}onDispatchedEvent(t){switch(t.action){case w.START:this.onStart(t);break;case w.STOP:this.onStop(t);break;case w.UPDATE:this.onUpdate(t);break;case w.RESET:this.onReset();break;case w.UNSUBSCRIBE:this.onStop(t),this.onUnsubscribe(t.name)}}onStart({name:t,message:e}){if(t===this.name){const t=this.delayStart||this.settings.delayStart||0;null===this.state.startTimeout&&(0===t?this.showBlock(e):this.state.startTimeout=setTimeout(()=>{this.showBlock(e)},t)),this.state.blockCount++,this.updateInstanceBlockCount()}}onStop({name:t}){if(t===this.name){const t=this.delayStop||this.settings.delayStop||0;this.state.blockCount>1?this.state.blockCount--:this.active?null===this.state.stopTimeout&&(0===t?this.hideBlock():this.state.stopTimeout=setTimeout(()=>{this.hideBlock()},t)):this.clearState(),this.updateInstanceBlockCount()}}onReset(){this.hideBlock()}onUpdate({name:t,message:e}){if(t===this.name){const t=this.delayStart||this.settings.delayStart||0;0===t?this.updateMessage(e):setTimeout(()=>{this.updateMessage(e)},t)}}updateMessage(t){this.message=t||this.defaultMessage||this.settings.message,this.updateBlockTemplate(this.message),this.detectChanges()}showBlock(t){this.active=!0,this.message=t||this.defaultMessage||this.settings.message,this.updateBlockTemplate(this.message),this.detectChanges()}hideBlock(){this.clearState(),this.active=!1,this.detectChanges()}clearState(){null!=this.state.startTimeout&&clearTimeout(this.state.startTimeout),null!=this.state.stopTimeout&&clearTimeout(this.state.stopTimeout),this.state.blockCount=0,this.state.startTimeout=null,this.state.stopTimeout=null,this.updateInstanceBlockCount()}updateBlockTemplate(t){this.templateCompRef&&this.templateCompRef instanceof s.ComponentRef&&(this.templateCompRef.instance.message=t)}onUnsubscribe(t){this.blockUISubscription&&t===this.name&&this.blockUISubscription.unsubscribe()}updateInstanceBlockCount(){this.blockUI.blockUIInstances[this.name]&&(this.blockUI.blockUIInstances[this.name].blockCount=this.state.blockCount)}detectChanges(){this.changeDetectionRef.destroyed||this.changeDetectionRef.detectChanges()}ngOnDestroy(){this.onUnsubscribe(this.name)}}class N{constructor(t){this.blockUIInstance=t}start(t,e){this.dispatch(t,w.START,e)}stop(t){this.dispatch(t,w.STOP)}reset(t){this.dispatch(t,w.RESET)}unsubscribe(t){this.dispatch(t,w.UNSUBSCRIBE)}isActive(t=null){const e=t?this.toArray(t):null,n=this.blockUIInstance.blockUIInstances;return Object.keys(n).some(t=>e?e.indexOf(n[t].name)>=0&&n[t].isActive:n[t].isActive)}dispatch(t=[],e,n){this.toArray(t).forEach(t=>this.blockUIInstance.decorate(t)[e](n))}toArray(t=[]){return"string"==typeof t?[t]:t}}const C=new O,R=new s.InjectionToken("BlockUIModuleSettings");function A(t){return C.updateSettings(t),C}class k{static forRoot(t={}){return{ngModule:k,providers:[{provide:R,useValue:t},{provide:O,useFactory:A,deps:[R]},N]}}}function E(t){return function(e,n,a){e[n]=C.decorate(t)}}var L=s["ɵcrt"]({encapsulation:2,styles:[],data:{}});function D(t){return s["ɵvid"](0,[s["ɵncd"](null,0),(t()(),s["ɵeld"](1,0,null,null,1,"block-ui-content",[],null,null,null,B,q)),s["ɵdid"](2,12828672,null,0,I,[O,s.ComponentFactoryResolver,s.ChangeDetectorRef],{name:[0,"name"],delayStart:[1,"delayStart"],delayStop:[2,"delayStop"],defaultMessage:[3,"defaultMessage"],templateCmp:[4,"templateCmp"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.name,n.delayStart,n.delayStop,n.message,n.template)}),null)}function P(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"block-ui",[],null,null,null,D,L)),s["ɵdid"](1,114688,null,0,S,[O],null,null)],(function(t,e){t(e,1,0)}),null)}var M=s["ɵccf"]("block-ui",S,P,{name:"name",message:"message",delayStart:"delayStart",delayStop:"delayStop",template:"template"},{},["*"]),q=s["ɵcrt"]({encapsulation:2,styles:["\n.block-ui-wrapper {\n  display: none;\n  position: fixed;\n  height: 100%;\n  width: 100%;\n  top: 0;\n  left: 0;\n  background: rgba(0, 0, 0, 0.70);\n  z-index: 30000;\n  cursor: wait;\n}\n\n.block-ui-wrapper.block-ui-wrapper--element {\n  position: absolute;\n}\n\n.block-ui-wrapper.active {\n  display: block;\n}\n\n.block-ui-wrapper.block-ui-main {\n  position: fixed;\n}\n\n.block-ui-spinner,\n.block-ui-template {\n  position: absolute;\n  top: 40%;\n  margin: 0 auto;\n  left: 0;\n  right: 0;\n  transform: translateY(-50%);\n}\n\n.block-ui-spinner > .message {\n  font-size: 1.3em;\n  text-align: center;\n  color: #fff;\n}\n\n.block-ui__element {\n  position: relative;\n}\n\n.loader,\n.loader:after {\n  border-radius: 50%;\n  width: 10em;\n  height: 10em;\n}\n.loader {\n  margin: 7px auto;\n  font-size: 5px;\n  position: relative;\n  text-indent: -9999em;\n  border-top: 1.1em solid rgba(255, 255, 255, 0.2);\n  border-right: 1.1em solid rgba(255, 255, 255, 0.2);\n  border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);\n  border-left: 1.1em solid #ffffff;\n  -webkit-transform: translateZ(0);\n  -ms-transform: translateZ(0);\n  transform: translateZ(0);\n  -webkit-animation: load8 1.1s infinite linear;\n  animation: load8 1.1s infinite linear;\n}\n\n@-webkit-keyframes load8 {\n  0% {\n    -webkit-transform: rotate(0deg);\n    transform: rotate(0deg);\n  }\n  100% {\n    -webkit-transform: rotate(360deg);\n    transform: rotate(360deg);\n  }\n}\n\n@keyframes load8 {\n  0% {\n    -webkit-transform: rotate(0deg);\n    transform: rotate(0deg);\n  }\n  100% {\n    -webkit-transform: rotate(360deg);\n    transform: rotate(360deg);\n  }\n}\n"],data:{}});function j(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["class","message"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,1,0,n.message||n.defaultMessage)}))}function F(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"div",[["class","block-ui-spinner"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,0,"div",[["class","loader"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,j)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.message||n.defaultMessage)}),null)}function V(t){return s["ɵvid"](0,[(t()(),s["ɵand"](0,null,null,0))],null,null)}function G(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,[[1,3],["templateOutlet",2]],null,0,null,V)),(t()(),s["ɵand"](0,null,null,0))],null,null)}function B(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{templateOutlet:0}),(t()(),s["ɵeld"](1,0,null,null,7,"div",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](3,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](4,{active:0}),(t()(),s["ɵand"](16777216,null,null,1,null,F)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,G)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component,a=s["ɵinlineInterpolate"](2,"block-ui-wrapper ",n.name," ",n.className,""),r=t(e,4,0,n.active);t(e,3,0,a,r),t(e,6,0,!n.templateCmp),t(e,8,0,n.templateCmp)}),null)}function z(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"block-ui-content",[],null,null,null,B,q)),s["ɵdid"](1,12828672,null,0,I,[O,s.ComponentFactoryResolver,s.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}var Y=s["ɵccf"]("block-ui-content",I,z,{name:"name",delayStart:"delayStart",delayStop:"delayStop",defaultMessage:"message",templateCmp:"template"},{},[]),H=n("FE24"),U=n("z/SZ"),W=n("GS7A"),K=n("s7LF"),$=n("ANnk"),Z=n("f/UV"),J=n("aexS"),Q=n("+gVj"),X=n("LvDl"),tt=n("xj/R"),et=n("IheW");let nt=(()=>{class t{constructor(t,e){this.http=t,this.localeId=e}getLocale(){return this.localeId||"en-US"}setLocale(t){document.cookie="cd-lang="+t}getLanguages(){return this.http.get("ui-api/langs")}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](s.LOCALE_ID))},token:t,providedIn:"root"}),t})();var at=function(t){return t.cs="Čeština",t["de-DE"]="Deutsch",t["en-US"]="English",t["es-ES"]="Español",t["fr-FR"]="Français",t["id-ID"]="Bahasa Indonesia",t["it-IT"]="Italiano",t["ja-JP"]="日本語",t["ko-KR"]="한국어",t["pl-PL"]="Polski",t["pt-BR"]="Português (brasileiro)",t["zh-CN"]="中文 (简体)",t["zh-TW"]="中文 (繁體)",t}({});let rt={cs:tt.a,de:tt.b,es:tt.e,fr:tt.g,id:tt.m,it:tt.y,ja:tt.z,ko:tt.A,pl:tt.C,pt:tt.D,zh:tt.I};class it{constructor(t,e){this.localeService=t,this.languageService=e,this.isDropdown=!0,this.supportedLanguages=at}ngOnInit(){this.selectedLanguage=this.languageService.getLocale(),this.defineUsedLanguage(),this.languageService.getLanguages().subscribe(t=>{this.supportedLanguages=X.pick(this.supportedLanguages,t)})}defineUsedLanguage(){const t=this.selectedLanguage.slice(0,2);t in rt&&(Object(tt.c)(t,rt[t]),this.localeService.use(t))}reloadWindow(){window.location.reload()}changeLanguage(t){this.languageService.setLocale(t),this.reloadWindow()}}var st=n("ienR"),ut=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ot(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","dropdown-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.changeLanguage(t.context.$implicit.key)&&a),a}),null,null)),(t()(),s["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit.value)}))}function lt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"ul",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,ot)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers])],(function(t,e){var n=e.component;t(e,2,0,s["ɵunv"](e,2,0,s["ɵnov"](e,3).transform(n.supportedLanguages)))}),null)}function dt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,7,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),s["ɵprd"](512,null,H.f,H.f,[]),s["ɵdid"](2,212992,null,0,H.c,[s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,H.f,H.a,W.b],null,null),(t()(),s["ɵeld"](3,0,null,null,2,"a",[["class","dropdown-toggle"],["data-toggle","dropdown"],["dropdownToggle",""],["title","Select a Language"]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,4).onClick()&&a),a}),null,null)),s["ɵdid"](4,147456,null,0,H.g,[s.ChangeDetectorRef,H.c,s.ElementRef,s.Renderer2,H.f],null,null),(t()(),s["ɵted"](5,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,lt)),s["ɵdid"](7,16384,null,0,H.d,[H.f,s.ViewContainerRef,s.TemplateRef],null,null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,2,0)}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,2).dropup,s["ɵnov"](e,2).isOpen,s["ɵnov"](e,2).isOpen&&s["ɵnov"](e,2).isBs4),t(e,3,0,!0,s["ɵnov"](e,4).isDisabled,s["ɵnov"](e,4).isOpen),t(e,5,0,n.supportedLanguages[n.selectedLanguage])}))}function ct(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.key),t(e,2,0,e.context.$implicit.key)}),(function(t,e){t(e,3,0,e.context.$implicit.value)}))}function ft(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"select",[["class","form-control custom-select"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"ngModelChange"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,1).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).onTouched()&&a),"change"===e&&(a=!1!==r.changeLanguage(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.selectedLanguage=n)&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](3,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](5,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](6,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](7,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵand"](16777216,null,null,2,null,ct)),s["ɵdid"](9,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers])],(function(t,e){var n=e.component;t(e,3,0,n.selectedLanguage),t(e,9,0,s["ɵunv"](e,9,0,s["ɵnov"](e,10).transform(n.supportedLanguages)))}),(function(t,e){t(e,0,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending,s["ɵnov"](e,7).validClass,s["ɵnov"](e,7).invalidClass)}))}function ht(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,dt)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ft)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.isDropdown),t(e,3,0,!n.isDropdown)}),null)}var gt=n("quSY"),pt=n("oxzT"),bt=n("9nlD"),mt=n("mSOc");class yt{constructor(t,e){this.notificationService=t,this.summaryService=e,this.icons=pt.a,this.hasRunningTasks=!1,this.hasNotifications=!1,this.subs=new gt.a}ngOnInit(){this.subs.add(this.summaryService.subscribe(t=>{this.hasRunningTasks=t.executing_tasks.length>0})),this.subs.add(this.notificationService.data$.subscribe(t=>{this.hasNotifications=t.length>0}))}ngOnDestroy(){this.subs.unsubscribe()}toggleSidebar(){this.notificationService.toggleSidebar()}}var vt=s["ɵcrt"]({encapsulation:0,styles:[[".running[_ngcontent-%COMP%]   i[_ngcontent-%COMP%]{color:#2b99a8}.running[_ngcontent-%COMP%]:hover   i[_ngcontent-%COMP%]{color:#fff}a[_ngcontent-%COMP%]   .dot[_ngcontent-%COMP%]{background-color:#2b99a8;border:2px solid #374249;border-radius:50%;height:11px;position:absolute;right:17px;top:10px;width:10px}a[_ngcontent-%COMP%]:hover   .dot[_ngcontent-%COMP%]{background-color:#fff;border-color:#2b99a8}"]],data:{}});function xt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"span",[["class","dot"]],null,null,null,null,null))],null,null)}function _t(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"a",[["title","Tasks and Notifications"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleSidebar()&&a),a}),null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](3,{running:0}),(t()(),s["ɵeld"](4,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,1),(t()(),s["ɵand"](16777216,null,null,1,null,xt)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](10,0,null,null,1,"span",[["class","d-md-none"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Tasks and Notifications"]))],(function(t,e){var n=e.component,a=t(e,3,0,n.hasRunningTasks);t(e,2,0,a);var r=t(e,7,0,n.icons.bell);t(e,6,0,r),t(e,9,0,n.hasNotifications)}),null)}var Tt=n("tz6c"),wt=n("e0ae"),Ot=n("Mxhz"),St=n("sne2");class It{constructor(t,e,n,a){this.modalRef=t,this.summaryService=e,this.userService=n,this.authStorageService=a,this.userPermission=this.authStorageService.getPermissions().user}ngOnInit(){this.copyright="Copyright(c) 2021 Ceph contributors.",this.projectConstants=St.c,this.hostAddr=window.location.hostname,this.modalVariables=this.setVariables(),this.subs=this.summaryService.subscribe(t=>{const e=t.version.replace("ceph version ","").split(" ");this.hostAddr=t.mgr_host.replace(/(^\w+:|^)\/\//,"").replace(/\/$/,""),this.versionNumber=e[0],this.versionHash=e[1],this.versionName=e.slice(2,e.length).join(" ")})}ngOnDestroy(){this.subs.unsubscribe()}setVariables(){const t={};t.user=localStorage.getItem("dashboard_username"),t.role="user",this.userPermission.read&&this.userService.get(t.user).subscribe(e=>{t.role=e.roles});const e=Object(wt.a)();return t.browserName=e&&e.name?e.name:"Not detected",t.browserVersion=e&&e.version?e.version:"Not detected",t.browserOS=e&&e.os?e.os:"Not detected",t}}class Nt{constructor(t,e){this.modalService=t,this.docService=e,this.icons=pt.a}ngOnInit(){this.docService.subscribeOnce("dashboard",t=>{this.docsUrl=t})}openAboutModal(){this.modalRef=this.modalService.show(It),this.modalRef.setClass("modal-lg")}goToApiDocs(){this.docsFormElement.nativeElement.submit()}}var Ct=n("LqlI"),Rt=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function At(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,12,"ul",[["class","dropdown-menu dropdown-menu-right"],["role","menu"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,4,"a",[["class","dropdown-item text-capitalize"],["target","_blank"]],[[8,"href",4]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](5,{disabled:0}),(t()(),s["ɵted"](-1,null,["documentation"])),(t()(),s["ɵeld"](7,0,null,null,2,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"a",[["class","dropdown-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.goToApiDocs()&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["API"])),(t()(),s["ɵeld"](10,0,null,null,2,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,1,"a",[["class","dropdown-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.openAboutModal()&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["About"]))],(function(t,e){var n=t(e,5,0,!e.component.docsUrl);t(e,4,0,"dropdown-item text-capitalize",n)}),(function(t,e){t(e,2,0,s["ɵinlineInterpolate"](1,"",e.component.docsUrl,""))}))}function kt(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{docsFormElement:0}),(t()(),s["ɵeld"](1,0,[[1,0],["docsForm",1]],null,2,"form",[["action","/docs"],["method","post"],["target","_blank"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"input",[["name","token"],["type","hidden"]],null,null,null,null,null)),s["ɵdid"](3,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),(t()(),s["ɵeld"](4,16777216,null,null,12,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),s["ɵprd"](512,null,H.f,H.f,[]),s["ɵdid"](6,212992,null,0,H.c,[s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,H.f,H.a,W.b],null,null),(t()(),s["ɵeld"](7,0,null,null,7,"a",[["class","dropdown-toggle"],["dropdownToggle",""],["title","Help"]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,8).onClick()&&a),a}),null,null)),s["ɵdid"](8,147456,null,0,H.g,[s.ChangeDetectorRef,H.c,s.ElementRef,s.Renderer2,H.f],null,null),(t()(),s["ɵeld"](9,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](11,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](12,1),(t()(),s["ɵeld"](13,0,null,null,1,"span",[["class","d-md-none"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Help"])),(t()(),s["ɵand"](16777216,null,null,1,null,At)),s["ɵdid"](16,16384,null,0,H.d,[H.f,s.ViewContainerRef,s.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,6,0);var a=t(e,12,0,n.icons.questionCircle);t(e,11,0,a)}),(function(t,e){t(e,4,0,s["ɵnov"](e,6).dropup,s["ɵnov"](e,6).isOpen,s["ɵnov"](e,6).isOpen&&s["ɵnov"](e,6).isBs4),t(e,7,0,!0,s["ɵnov"](e,8).isDisabled,s["ɵnov"](e,8).isOpen)}))}var Et=n("iInd");class Lt{constructor(t){this.authStorageService=t,this.icons=pt.a;const e=this.authStorageService.getPermissions();this.userPermission=e.user,this.configOptPermission=e.configOpt}ngOnInit(){}}var Dt=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Pt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"a",[["class","dropdown-item"],["routerLink","/user-management"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,2).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](2,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["User management"]))],(function(t,e){t(e,2,0,"/user-management")}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).target,s["ɵnov"](e,2).href)}))}function Mt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"a",[["class","dropdown-item"],["routerLink","/telemetry"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,2).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](2,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Telemetry configuration"]))],(function(t,e){t(e,2,0,"/telemetry")}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).target,s["ɵnov"](e,2).href)}))}function qt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"ul",[["class","dropdown-menu dropdown-menu-right"],["role","menu"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Pt)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Mt)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.userPermission.read),t(e,4,0,n.configOptPermission.read)}),null)}function jt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,12,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),s["ɵprd"](512,null,H.f,H.f,[]),s["ɵdid"](2,212992,null,0,H.c,[s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,H.f,H.a,W.b],null,null),(t()(),s["ɵeld"](3,0,null,null,7,"a",[["class","dropdown-toggle"],["dropdownToggle",""],["title","Dashboard Settings"]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,4).onClick()&&a),a}),null,null)),s["ɵdid"](4,147456,null,0,H.g,[s.ChangeDetectorRef,H.c,s.ElementRef,s.Renderer2,H.f],null,null),(t()(),s["ɵeld"](5,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](8,1),(t()(),s["ɵeld"](9,0,null,null,1,"span",[["class","d-md-none"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Dashboard Settings"])),(t()(),s["ɵand"](16777216,null,null,1,null,qt)),s["ɵdid"](12,16384,null,0,H.d,[H.f,s.ViewContainerRef,s.TemplateRef],null,null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0);var a=t(e,8,0,n.icons.deepCheck);t(e,7,0,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,2).dropup,s["ɵnov"](e,2).isOpen,s["ɵnov"](e,2).isOpen&&s["ɵnov"](e,2).isBs4),t(e,3,0,!0,s["ɵnov"](e,4).isDisabled,s["ɵnov"](e,4).isOpen)}))}function Ft(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,jt)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.userPermission.read)}),null)}var Vt=n("DSvg");class Gt{constructor(t,e){this.authStorageService=t,this.authService=e,this.icons=pt.a}ngOnInit(){this.username=this.authStorageService.getUsername(),this.sso=this.authStorageService.isSSO()}logout(){this.authService.logout()}}var Bt=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function zt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"li",[["role","menuitem"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,7,"a",[["class","dropdown-item"],["routerLink","/user-profile/edit"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,2).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](2,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](3,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](5,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](6,1),(t()(),s["ɵeld"](7,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Change password"]))],(function(t,e){var n=e.component;t(e,2,0,"/user-profile/edit");var a=t(e,6,0,n.icons.lock);t(e,5,0,a)}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).target,s["ɵnov"](e,2).href)}))}function Yt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,16,"ul",[["class","dropdown-menu dropdown-menu-right"],["role","menu"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"li",[["class","disabled"],["role","menuitem"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"a",[["class","dropdown-item disabled"],["href","#"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Signed in as "])),(t()(),s["ɵeld"](4,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](5,null,["",""])),(t()(),s["ɵeld"](6,0,null,null,0,"li",[["class","dropdown-divider"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,zt)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](9,0,null,null,7,"li",[["role","menuitem"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,6,"a",[["class","dropdown-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.logout()&&a),a}),null,null)),(t()(),s["ɵeld"](11,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](13,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](14,1),(t()(),s["ɵeld"](15,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Sign out"]))],(function(t,e){var n=e.component;t(e,8,0,!n.sso);var a=t(e,14,0,n.icons.signOut);t(e,13,0,a)}),(function(t,e){t(e,5,0,e.component.username)}))}function Ht(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,12,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),s["ɵprd"](512,null,H.f,H.f,[]),s["ɵdid"](2,212992,null,0,H.c,[s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,H.f,H.a,W.b],null,null),(t()(),s["ɵeld"](3,0,null,null,7,"a",[["class","dropdown-toggle"],["dropdownToggle",""],["title","Logged in user"]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,4).onClick()&&a),a}),null,null)),s["ɵdid"](4,147456,null,0,H.g,[s.ChangeDetectorRef,H.c,s.ElementRef,s.Renderer2,H.f],null,null),(t()(),s["ɵeld"](5,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](8,1),(t()(),s["ɵeld"](9,0,null,null,1,"span",[["class","d-md-none"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Logged in user"])),(t()(),s["ɵand"](16777216,null,null,1,null,Yt)),s["ɵdid"](12,16384,null,0,H.d,[H.f,s.ViewContainerRef,s.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,2,0);var a=t(e,8,0,n.icons.user);t(e,7,0,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,2).dropup,s["ɵnov"](e,2).isOpen,s["ɵnov"](e,2).isOpen&&s["ɵnov"](e,2).isBs4),t(e,3,0,!0,s["ɵnov"](e,4).isDisabled,s["ɵnov"](e,4).isOpen)}))}const Ut=[Object(W.h)({height:0,visibility:"hidden"}),Object(W.e)("400ms cubic-bezier(0.4,0.0,0.2,1)",Object(W.h)({height:"*",visibility:"visible"}))],Wt=[Object(W.h)({height:"*",visibility:"visible"}),Object(W.e)("400ms cubic-bezier(0.4,0.0,0.2,1)",Object(W.h)({height:0,visibility:"hidden"}))];class Kt{constructor(t,e,n){this._el=t,this._renderer=e,this.collapsed=new s.EventEmitter,this.collapses=new s.EventEmitter,this.expanded=new s.EventEmitter,this.expands=new s.EventEmitter,this.isExpanded=!0,this.isCollapsed=!1,this.isCollapse=!0,this.isCollapsing=!1,this.isAnimated=!1,this._display="block",this._stylesLoaded=!1,this._COLLAPSE_ACTION_NAME="collapse",this._EXPAND_ACTION_NAME="expand",this._factoryCollapseAnimation=n.build(Wt),this._factoryExpandAnimation=n.build(Ut)}set display(t){this.isAnimated?(this._display=t,"none"!==t?this.show():this.hide()):this._renderer.setStyle(this._el.nativeElement,"display",t)}set collapse(t){this._player&&!this._isAnimationDone||(this.isExpanded=t,this.toggle())}get collapse(){return this.isExpanded}ngAfterViewChecked(){this._stylesLoaded=!0,this._player&&this._isAnimationDone&&(this._player.reset(),this._renderer.setStyle(this._el.nativeElement,"height","*"))}toggle(){this.isExpanded?this.hide():this.show()}hide(){this.isCollapsing=!0,this.isExpanded=!1,this.isCollapsed=!0,this.isCollapsing=!1,this.collapses.emit(this),this._isAnimationDone=!1,this.animationRun(this.isAnimated,this._COLLAPSE_ACTION_NAME)(()=>{this._isAnimationDone=!0,this.collapsed.emit(this),this._renderer.setStyle(this._el.nativeElement,"display","none")})}show(){this._renderer.setStyle(this._el.nativeElement,"display",this._display),this.isCollapsing=!0,this.isExpanded=!0,this.isCollapsed=!1,this.isCollapsing=!1,this.expands.emit(this),this._isAnimationDone=!1,this.animationRun(this.isAnimated,this._EXPAND_ACTION_NAME)(()=>{this._isAnimationDone=!0,this.expanded.emit(this)})}animationRun(t,e){if(!t||!this._stylesLoaded)return t=>t();this._renderer.setStyle(this._el.nativeElement,"overflow","hidden"),this._renderer.addClass(this._el.nativeElement,"collapse");const n=e===this._EXPAND_ACTION_NAME?this._factoryExpandAnimation:this._factoryCollapseAnimation;return this._player&&this._player.destroy(),this._player=n.create(this._el.nativeElement),this._player.play(),t=>this._player.onDone(t)}}class $t{static forRoot(){return{ngModule:$t,providers:[]}}}class Zt{transform(t){return"HEALTH_OK"===t?{color:"#00bb00"}:"HEALTH_WARN"===t?{color:"#ffa500"}:"HEALTH_ERR"===t?{color:"#ff0000"}:null}}var Jt=n("MdoF"),Qt=n("CNMR"),Xt=n("20UP"),te=n("oMSZ");class ee{constructor(t,e){this.settingsService=t,this.authStorageService=e,this.displayNotification=!1}ngOnInit(){this.settingsService.getStandardSettings().subscribe(t=>{this.pwdExpirationSettings=new te.a(t);const e=this.authStorageService.getPwdExpirationDate();e&&(this.expirationDays=this.getExpirationDays(e),this.alertType=this.expirationDays<=this.pwdExpirationSettings.pwdExpirationWarning2?"danger":"warning",this.displayNotification=this.expirationDays<=this.pwdExpirationSettings.pwdExpirationWarning1,this.authStorageService.isPwdDisplayedSource.next(this.displayNotification))})}ngOnDestroy(){this.authStorageService.isPwdDisplayedSource.next(!1)}getExpirationDays(t){const e=new Date,n=new Date(1e3*t);return Math.floor((n.valueOf()-e.valueOf())/864e5)}close(){this.authStorageService.isPwdDisplayedSource.next(!1),this.displayNotification=!1}}var ne=s["ɵcrt"]({encapsulation:0,styles:[[".no-margin-bottom .alert{margin-bottom:0}"]],data:{}});function ae(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Your password will expire in "])),(t()(),s["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["less than 1"])),(t()(),s["ɵted"](-1,null,[" day. Click "])),(t()(),s["ɵeld"](5,0,null,null,2,"a",[["class","alert-link"],["routerLink","/user-profile/edit"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,6).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](6,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["here"])),(t()(),s["ɵted"](-1,null,[" to change it now."]))],(function(t,e){t(e,6,0,"/user-profile/edit")}),(function(t,e){t(e,5,0,s["ɵnov"](e,6).target,s["ɵnov"](e,6).href)}))}function re(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Your password will expire in "])),(t()(),s["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](3,null,["",""])),(t()(),s["ɵted"](-1,null,[" day(s). Click "])),(t()(),s["ɵeld"](5,0,null,null,2,"a",[["class","alert-link"],["routerLink","/user-profile/edit"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,6).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](6,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["here"])),(t()(),s["ɵted"](-1,null,[" to change it now."]))],(function(t,e){t(e,6,0,"/user-profile/edit")}),(function(t,e){t(e,3,0,e.component.expirationDays),t(e,5,0,s["ɵnov"](e,6).target,s["ɵnov"](e,6).href)}))}function ie(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"alert",[["class","no-margin-bottom"]],null,[[null,"onClose"]],(function(t,e,n){var a=!0;return"onClose"===e&&(a=!1!==t.component.close(n)&&a),a}),Jt.c,Jt.b)),s["ɵdid"](1,114688,null,0,Qt.a,[Qt.b,s.ChangeDetectorRef],{type:[0,"type"],dismissible:[1,"dismissible"]},{onClose:"onClose"}),(t()(),s["ɵand"](16777216,null,0,1,null,ae)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,re)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,s["ɵinlineInterpolate"](1,"",n.alertType,""),!0),t(e,3,0,0===n.expirationDays),t(e,5,0,n.expirationDays>0)}),null)}function se(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,ie)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.displayNotification)}),null)}var ue=n("pL04");let oe=(()=>{class t{constructor(t){this.http=t,this.url="api/mgr/module"}list(){return this.http.get(""+this.url)}getConfig(t){return this.http.get(`${this.url}/${t}`)}updateConfig(t,e){return this.http.put(`${this.url}/${t}`,{config:e})}enable(t){return this.http.post(`${this.url}/${t}/enable`,null)}disable(t){return this.http.post(`${this.url}/${t}/disable`,null)}getOptions(t){return this.http.get(`${this.url}/${t}/options`)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();var le=n("mtw6");let de=(()=>{class t{constructor(){this.visible=!1,this.update=new s.EventEmitter}setVisibility(t){this.visible=t,this.update.emit(t)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})();class ce{constructor(t,e,n,a,r){this.mgrModuleService=t,this.authStorageService=e,this.notificationService=n,this.telemetryNotificationService=a,this.i18n=r,this.displayNotification=!1}ngOnInit(){if(this.telemetryNotificationService.update.subscribe(t=>{this.displayNotification=t}),!this.isNotificationHidden()){const t=this.authStorageService.getPermissions().configOpt;X.every(Object.values(t))&&this.mgrModuleService.getConfig("telemetry").subscribe(t=>{t.enabled||this.telemetryNotificationService.setVisibility(!0)})}}ngOnDestroy(){this.telemetryNotificationService.setVisibility(!1)}isNotificationHidden(){return"true"===localStorage.getItem("telemetry_notification_hidden")}close(){this.telemetryNotificationService.setVisibility(!1),localStorage.setItem("telemetry_notification_hidden","true"),this.notificationService.show(le.a.success,this.i18n("Telemetry activation reminder muted"),this.i18n("You can activate the module on the Telemetry configuration page (<b>Dashboard Settings</b> -> <b>Telemetry configuration</b>) at any time."))}}var fe=n("GiVz"),he=s["ɵcrt"]({encapsulation:0,styles:[["cd-telemetry-notification .no-margin-bottom{margin-bottom:0}.activate-button[_ngcontent-%COMP%]{background-color:#fcecba;border:.5px solid #495057;border-radius:10%;padding:.1rem .4rem}.activate-text[_ngcontent-%COMP%]{color:#495057;font-weight:700}"]],data:{}});function ge(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"alert",[["class","no-margin-bottom"],["type","warning"]],null,[[null,"close"]],(function(t,e,n){var a=!0;return"close"===e&&(a=!1!==t.component.close(n)&&a),a}),Jt.c,Jt.b)),s["ɵdid"](1,114688,null,0,Qt.a,[Qt.b,s.ChangeDetectorRef],{type:[0,"type"]},null),(t()(),s["ɵeld"](2,0,null,0,8,"div",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The Ceph community needs your help to continue improving: please "])),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["class","btn activate-button alert-link activate-text"],["routerLink","/telemetry"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Activate"])),(t()(),s["ɵted"](-1,null,[" the "])),(t()(),s["ɵeld"](8,0,null,null,1,"a",[["href","https://docs.ceph.com/en/latest/mgr/telemetry/"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Telemetry"])),(t()(),s["ɵted"](-1,null,[" module."]))],(function(t,e){t(e,1,0,"warning"),t(e,5,0,"/telemetry")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function pe(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,ge)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.displayNotification)}),null)}var be=n("7qid"),me=n("38Bd"),ye=n("wd/R");class ve{transform(t,e=!1){return e?ye(t).fromNow():this._forHumans(t)}_forHumans(t){const e=[[""+Math.floor(t/31536e3),"years"],[""+Math.floor(t%31536e3/86400),"days"],[""+Math.floor(t%86400/3600),"hours"],[""+Math.floor(t%3600/60),"minutes"],[""+Math.floor(t%60),"seconds"]];let n="";for(let a=0,r=e.length;a<r;a++)"0"!==e[a][0]&&(n+=" "+e[a][0]+" "+("1"===e[a][0]?e[a][1].substr(0,e[a][1].length-1):e[a][1]));return n.trim()||"1 second"}}var xe=n("a0VL"),_e=n("moLw"),Te=n("WF9J"),we=s["ɵcrt"]({encapsulation:2,styles:["[data-simplebar]{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;flex-wrap:wrap;-webkit-box-pack:start;justify-content:flex-start;align-content:flex-start;-webkit-box-align:start;align-items:flex-start}.simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;left:0;top:0;bottom:0;right:0;width:auto!important;height:auto!important;z-index:0}.simplebar-offset{direction:inherit!important;box-sizing:inherit!important;resize:none!important;position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.simplebar-content-wrapper{direction:inherit;box-sizing:border-box!important;position:relative;display:block;height:100%;width:auto;visibility:visible;max-width:100%;max-height:100%;scrollbar-width:none;-ms-overflow-style:none}.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar{width:0;height:0}.simplebar-content:after,.simplebar-content:before{content:' ';display:table}.simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.simplebar-height-auto-observer-wrapper{box-sizing:inherit!important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;-webkit-box-flex:inherit;flex-grow:inherit;flex-shrink:0;flex-basis:0}.simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.simplebar-track{z-index:1;position:absolute;right:0;bottom:0;pointer-events:none;overflow:hidden}[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none}[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.simplebar-scrollbar{position:absolute;left:0;right:0;min-height:10px}.simplebar-scrollbar:before{position:absolute;content:'';background:#000;border-radius:7px;left:2px;right:2px;opacity:0;-webkit-transition:opacity .2s linear;transition:opacity .2s linear}.simplebar-scrollbar.simplebar-visible:before{opacity:.5;-webkit-transition:opacity linear;transition:opacity linear}.simplebar-track.simplebar-vertical{top:0;width:11px}.simplebar-track.simplebar-vertical .simplebar-scrollbar:before{top:2px;bottom:2px}.simplebar-track.simplebar-horizontal{left:0;height:11px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before{height:100%;left:2px;right:2px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar{right:auto;left:0;top:2px;height:7px;min-height:0;min-width:10px;width:auto}[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical{right:auto;left:0}.hs-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll}.simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}","ngx-simplebar{display:block}"],data:{}});function Oe(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[["class","simplebar-wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"div",[["class","simplebar-height-auto-observer-wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"div",[["class","simplebar-height-auto-observer"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,4,"div",[["class","simplebar-mask"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,3,"div",[["class","simplebar-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,2,"div",[["class","simplebar-content-wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,1,"div",[["class","simplebar-content"]],null,null,null,null,null)),s["ɵncd"](null,0),(t()(),s["ɵeld"](8,0,null,null,0,"div",[["class","simplebar-placeholder"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,"div",[["class","simplebar-track simplebar-horizontal"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,0,"div",[["class","simplebar-scrollbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,1,"div",[["class","simplebar-track simplebar-vertical"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,0,"div",[["class","simplebar-scrollbar"]],null,null,null,null,null))],null,null)}var Se=n("O9Tv"),Ie=n("G1I9"),Ne=n("lJxs");let Ce=(()=>{class t{constructor(t,e){this.http=t,this.settingsService=e,this.baseURL="api/prometheus",this.settingsKey={alertmanager:"api/settings/alertmanager-api-host",prometheus:"api/settings/prometheus-api-host"}}ifAlertmanagerConfigured(t,e){this.settingsService.ifSettingConfigured(this.settingsKey.alertmanager,t,e)}disableAlertmanagerConfig(){this.settingsService.disableSetting(this.settingsKey.alertmanager)}ifPrometheusConfigured(t,e){this.settingsService.ifSettingConfigured(this.settingsKey.prometheus,t,e)}disablePrometheusConfig(){this.settingsService.disableSetting(this.settingsKey.prometheus)}getAlerts(t={}){return this.http.get(this.baseURL,{params:t})}getSilences(t={}){return this.http.get(this.baseURL+"/silences",{params:t})}getRules(t="all"){return this.http.get(this.baseURL+"/rules").pipe(Object(Ne.a)(e=>(["alerting","rewrites"].includes(t)&&e.groups.map(e=>{e.rules=e.rules.filter(e=>e.type===t)}),e)))}setSilence(t){return this.http.post(this.baseURL+"/silence",t,{observe:"response"})}expireSilence(t){return this.http.delete(`${this.baseURL}/silence/${t}`,{observe:"response"})}getNotifications(t){return this.http.get(`${this.baseURL}/notifications?from=${t&&t.id?t.id:"last"}`)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](Xt.a))},token:t,providedIn:ue.a}),t})(),Re=(()=>{class t{constructor(t){this.notificationService=t}sendNotifications(t){t.forEach(t=>this.notificationService.show(t))}convertToCustomAlerts(t){return X.uniqWith(t.map(t=>({status:X.isObject(t.status)?t.status.state:this.getPrometheusNotificationStatus(t),name:t.labels.alertname,url:t.generatorURL,description:t.annotations.description,fingerprint:X.isObject(t.status)&&t.fingerprint})),X.isEqual)}getPrometheusNotificationStatus(t){const e=t.status;return"firing"===e?"active":e}convertAlertToNotification(t){return new Ie.b(this.formatType(t.status),`${t.name} (${t.status})`,this.appendSourceLink(t,t.description),void 0,"Prometheus")}formatType(t){return le.a[X.findKey({error:["firing","active"],info:["suppressed","unprocessed"],success:["resolved"]},e=>e.includes(t))]}appendSourceLink(t,e){return`${e} <a href="${t.url}" target="_blank"><i class="${pt.a.lineChart}"></i></a>`}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](bt.a))},token:t,providedIn:"root"}),t})(),Ae=(()=>{class t{constructor(t,e){this.alertFormatter=t,this.prometheusService=e,this.canAlertsBeNotified=!1,this.alerts=[],this.rules=[]}getAlerts(){this.prometheusService.ifAlertmanagerConfigured(()=>{this.prometheusService.getAlerts().subscribe(t=>this.handleAlerts(t),t=>{[404,504].includes(t.status)&&this.prometheusService.disableAlertmanagerConfig()})})}getRules(){this.prometheusService.ifPrometheusConfigured(()=>{this.prometheusService.getRules("alerting").subscribe(t=>{this.rules=t.groups.reduce((t,e)=>t.concat(e.rules.map(t=>(t.group=e.name,t))),[])})})}refresh(){this.getAlerts(),this.getRules()}handleAlerts(t){this.canAlertsBeNotified&&this.notifyOnAlertChanges(t,this.alerts),this.activeAlerts=X.reduce(this.alerts,(t,e)=>"active"===e.status.state?++t:t,0),this.alerts=t,this.canAlertsBeNotified=!0}notifyOnAlertChanges(t,e){const n=this.getChangedAlerts(this.alertFormatter.convertToCustomAlerts(t),this.alertFormatter.convertToCustomAlerts(e)).map(t=>this.alertFormatter.convertAlertToNotification(t));this.alertFormatter.sendNotifications(n)}getChangedAlerts(t,e){return X.differenceWith(t,e,X.isEqual).concat(this.getVanishedAlerts(t,e))}getVanishedAlerts(t,e){return X.differenceWith(e,t,(t,e)=>t.fingerprint===e.fingerprint).map(t=>(t.status="resolved",t))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](Re),s["ɵɵinject"](Ce))},token:t,providedIn:"root"}),t})(),ke=(()=>{class t{constructor(t,e){this.alertFormatter=t,this.prometheusService=e,this.backendFailure=!1,this.notifications=[]}refresh(){this.backendFailure||this.prometheusService.getNotifications(X.last(this.notifications)).subscribe(t=>this.handleNotifications(t),()=>this.backendFailure=!0)}handleNotifications(t){0!==t.length&&(this.notifications.length>0&&this.alertFormatter.sendNotifications(X.flatten(t.map(t=>this.formatNotification(t)))),this.notifications=this.notifications.concat(t))}formatNotification(t){return this.alertFormatter.convertToCustomAlerts(t.alerts).map(t=>this.alertFormatter.convertAlertToNotification(t))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](Re),s["ɵɵinject"](Ce))},token:t,providedIn:"root"}),t})();var Ee=n("ufoC");class Le{constructor(t,e,n,a,r,i,s,u){this.notificationService=t,this.summaryService=e,this.taskMessageService=n,this.prometheusNotificationService=a,this.authStorageService=r,this.prometheusAlertService=i,this.ngZone=s,this.cdRef=u,this.isSidebarOpened=!1,this.executingTasks=[],this.subs=new gt.a,this.icons=pt.a,this.last_task="",this.mutex=new Se.Mutex,this.simplebar={autoHide:!1},this.notifications=[]}ngOnDestroy(){window.clearInterval(this.interval),window.clearTimeout(this.timeout),this.subs.unsubscribe()}ngOnInit(){this.last_task=window.localStorage.getItem("last_task");const t=this.authStorageService.getPermissions();t.prometheus.read&&t.configOpt.read&&(this.triggerPrometheusAlerts(),this.ngZone.runOutsideAngular(()=>{this.interval=window.setInterval(()=>{this.ngZone.run(()=>{this.triggerPrometheusAlerts()})},5e3)})),this.subs.add(this.notificationService.data$.subscribe(t=>{this.notifications=X.orderBy(t,["timestamp"],["desc"]),this.cdRef.detectChanges()})),this.subs.add(this.notificationService.sidebarSubject.subscribe(t=>{this.isSidebarOpened=!t&&!this.isSidebarOpened,window.clearTimeout(this.timeout),this.timeout=window.setTimeout(()=>{this.cdRef.detectChanges()},0)})),this.subs.add(this.summaryService.subscribe(t=>{this._handleTasks(t.executing_tasks),this.mutex.acquire().then(e=>{X.filter(t.finished_tasks,t=>!this.last_task||ye(t.end_time).isAfter(this.last_task)).forEach(t=>{const e=this.notificationService.finishedTaskToNotification(t,t.success),n=new Ie.a(e);n.timestamp=t.end_time,n.duration=t.duration,this.last_task&&!ye(t.end_time).isAfter(this.last_task)||(this.last_task=t.end_time,window.localStorage.setItem("last_task",this.last_task)),this.notificationService.save(n)}),this.cdRef.detectChanges(),e()})}))}_handleTasks(t){for(const e of t)e.description=this.taskMessageService.getRunningTitle(e);this.executingTasks=t}triggerPrometheusAlerts(){this.prometheusAlertService.refresh(),this.prometheusNotificationService.refresh()}removeAll(){this.notificationService.removeAll()}remove(t){this.notificationService.remove(t)}closeSidebar(){this.isSidebarOpened=!1}trackByFn(t){return t}}var De=s["ɵcrt"]({encapsulation:0,styles:[["[_nghost-%COMP%]{position:fixed;top:53px;bottom:10px;right:-350px;width:350px;max-width:90vw;z-index:9;transition:all .6s}.active[_nghost-%COMP%]{right:20px}.card[_ngcontent-%COMP%]{height:100%}ngx-simplebar[_ngcontent-%COMP%]{height:calc(100% - 42.2px)}.separator[_ngcontent-%COMP%]{padding:5px 12px;color:#90949c;background-color:#eee;font-size:12px}.btn-link[_ngcontent-%COMP%]   .fa-trash-o[_ngcontent-%COMP%]{color:#000}table[_ngcontent-%COMP%]{width:100%}.row[_ngcontent-%COMP%]{margin-left:0;margin-right:0}"]],data:{}});function Pe(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,29,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,27,"div",[["class","card tc_task border-0 mb-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,26,"div",[["class","row no-gutters"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,12,"div",[["class","col-md-3 text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,11,"span",[["class","text-info"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](7,2),(t()(),s["ɵeld"](8,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](10,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](11,2),(t()(),s["ɵeld"](12,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](14,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](15,4),(t()(),s["ɵeld"](16,0,null,null,12,"div",[["class","col-md-9"]],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,11,"div",[["class","card-body p-0"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,1,"h6",[["class","card-title bold"]],null,null,null,null,null)),(t()(),s["ɵted"](19,null,["",""])),(t()(),s["ɵeld"](20,0,null,null,2,"div",[["class","progress mb-1"]],null,null,null,null,null)),(t()(),s["ɵeld"](21,0,null,null,1,"progressbar",[["class","progress-striped active"],["max","100"]],[[1,"max",0],[2,"progress",null]],null,null,be.b,be.a)),s["ɵdid"](22,49152,null,0,me.b,[me.c],{animate:[0,"animate"],striped:[1,"striped"],value:[2,"value"],max:[3,"max"]},null),(t()(),s["ɵeld"](23,0,null,null,5,"p",[["class","card-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵeld"](24,0,null,null,2,"small",[["class","date float-left"]],null,null,null,null,null)),(t()(),s["ɵted"](25,null,[" "," "])),s["ɵppd"](26,1),(t()(),s["ɵeld"](27,0,null,null,1,"span",[["class","float-right"]],null,null,null,null,null)),(t()(),s["ɵted"](28,null,[" "," % "])),(t()(),s["ɵeld"](29,0,null,null,0,"hr",[],null,null,null,null,null))],(function(t,e){var n=e.component,a=t(e,7,0,n.icons.stack,n.icons.large2x);t(e,6,0,"text-info",a);var r=t(e,11,0,n.icons.stack2x,n.icons.circle);t(e,10,0,r);var i=t(e,15,0,n.icons.stack1x,n.icons.spinner,n.icons.spin,n.icons.inverse);t(e,14,0,i),t(e,22,0,!0,!0,e.context.$implicit.progress,"100")}),(function(t,e){t(e,19,0,e.context.$implicit.description),t(e,21,0,s["ɵnov"](e,22).max,s["ɵnov"](e,22).addClass);var n=s["ɵunv"](e,25,0,t(e,26,0,s["ɵnov"](e.parent.parent,0),e.context.$implicit.begin_time));t(e,25,0,n),t(e,28,0,e.context.$implicit.progress||0)}))}function Me(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Pe)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.executingTasks,n.trackByFn)}),null)}function qe(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"small",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Duration:"])),(t()(),s["ɵted"](4,null,[" "," "])),s["ɵpid"](0,ve,[]),(t()(),s["ɵeld"](6,0,null,null,0,"br",[],null,null,null,null,null))],null,(function(t,e){t(e,4,0,s["ɵunv"](e,4,0,s["ɵnov"](e,5).transform(e.parent.context.$implicit.duration)))}))}function je(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,37,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,35,"div",[["class","card tc_notification border-0 mb-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,34,"div",[["class","row no-gutters"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,12,"div",[["class","col-md-3 text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,11,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,3),(t()(),s["ɵeld"](8,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](10,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](11,2),(t()(),s["ɵeld"](12,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](14,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](15,3),(t()(),s["ɵeld"](16,0,null,null,20,"div",[["class","col-md-9"]],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,19,"div",[["class","card-body p-0"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,4,"button",[["class","btn btn-link float-right mt-0 pt-0"],["title","Remove notification"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.remove(t.context.index),a=!1!==n.stopPropagation()&&a),a}),null,null)),(t()(),s["ɵeld"](19,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](21,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](22,1),(t()(),s["ɵeld"](23,0,null,null,1,"h6",[["class","card-title bold"]],null,null,null,null,null)),(t()(),s["ɵted"](24,null,["",""])),(t()(),s["ɵeld"](25,0,null,null,0,"p",[["class","card-text"]],[[8,"innerHTML",1]],null,null,null,null)),(t()(),s["ɵeld"](26,0,null,null,10,"p",[["class","card-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,qe)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](29,0,null,null,3,"small",[["class","date"]],[[8,"title",0]],null,null,null,null)),s["ɵppd"](30,1),(t()(),s["ɵted"](31,null,["",""])),s["ɵpid"](0,ve,[]),(t()(),s["ɵeld"](33,0,null,null,3,"i",[["class","float-right custom-icon"]],[[8,"title",0]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](35,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](36,1),(t()(),s["ɵeld"](37,0,null,null,0,"hr",[],null,null,null,null,null))],(function(t,e){var n=e.component,a=t(e,7,0,n.icons.stack,n.icons.large2x,e.context.$implicit.textClass);t(e,6,0,a);var r=t(e,11,0,n.icons.circle,n.icons.stack2x);t(e,10,0,r);var i=t(e,15,0,n.icons.stack1x,n.icons.inverse,e.context.$implicit.iconClass);t(e,14,0,i);var s=t(e,22,0,n.icons.trash);t(e,21,0,s),t(e,28,0,e.context.$implicit.duration);var u=t(e,36,0,e.context.$implicit.applicationClass);t(e,35,0,"float-right custom-icon",u)}),(function(t,e){t(e,24,0,e.context.$implicit.title),t(e,25,0,e.context.$implicit.message);var n=s["ɵunv"](e,29,0,t(e,30,0,s["ɵnov"](e.parent.parent.parent,0),e.context.$implicit.timestamp));t(e,29,0,n),t(e,31,0,s["ɵunv"](e,31,0,s["ɵnov"](e,32).transform(e.context.$implicit.timestamp,!0))),t(e,33,0,e.context.$implicit.application)}))}function Fe(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,7,"button",[["class","btn btn-light btn-block"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.removeAll(),a=!1!==n.stopPropagation()&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1),(t()(),s["ɵted"](-1,null,["   "])),(t()(),s["ɵeld"](7,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clear notifications"])),(t()(),s["ɵeld"](9,0,null,null,0,"hr",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,je)),s["ɵdid"](11,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=t(e,5,0,n.icons.trash);t(e,4,0,a),t(e,11,0,n.notifications)}),null)}function Ve(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Fe)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component.notifications.length>0)}),null)}function Ge(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"div",[["class","message text-center"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["There are no notifications."]))],null,null)}function Be(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Ge)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,0===n.notifications.length&&0===n.executingTasks.length)}),null)}function ze(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Ye(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function He(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Ue(t){return s["ɵvid"](2,[s["ɵpid"](0,xe.a,[i.DatePipe]),(t()(),s["ɵand"](0,[["tasksTpl",2]],null,0,null,Me)),(t()(),s["ɵand"](0,[["notificationsTpl",2]],null,0,null,Ve)),(t()(),s["ɵand"](0,[["emptyTpl",2]],null,0,null,Be)),(t()(),s["ɵeld"](4,0,null,null,16,"div",[["class","card"]],null,[[null,"clickOutside"]],(function(t,e,n){var a=!0;return"clickOutside"===e&&(a=!1!==t.component.closeSidebar()&&a),a}),null,null)),s["ɵdid"](5,737280,null,0,_e.ClickOutsideDirective,[s.ElementRef,s.NgZone,s.PLATFORM_ID],{clickOutsideEnabled:[0,"clickOutsideEnabled"]},{clickOutside:"clickOutside"}),(t()(),s["ɵeld"](6,0,null,null,5,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Tasks and Notifications"])),(t()(),s["ɵeld"](9,0,null,null,2,"button",[["class","close float-right"],["tabindex","-1"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.closeSidebar()&&a),a}),null,null)),(t()(),s["ɵeld"](10,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["×"])),(t()(),s["ɵeld"](12,0,null,null,8,"ngx-simplebar",[["data-simplebar","init"]],null,null,null,Oe,we)),s["ɵdid"](13,4440064,null,0,Te.a,[s.ElementRef],{options:[0,"options"]},null),(t()(),s["ɵeld"](14,0,null,0,6,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ze)),s["ɵdid"](16,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ye)),s["ɵdid"](18,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,He)),s["ɵdid"](20,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null)],(function(t,e){var n=e.component;t(e,5,0,n.isSidebarOpened),t(e,13,0,n.simplebar),t(e,16,0,s["ɵnov"](e,1)),t(e,18,0,s["ɵnov"](e,2)),t(e,20,0,s["ɵnov"](e,3))}),null)}var We=n("ej+x");class Ke{constructor(t,e,n,a,r){this.authStorageService=t,this.summaryService=e,this.featureToggles=n,this.telemetryNotificationService=a,this.prometheusAlertService=r,this.notifications=[],this.icons=pt.a,this.isCollapsed=!0,this.showMenuSidebar=!0,this.displayedSubMenu="",this.simplebar={autoHide:!1},this.subs=new gt.a,this.permissions=this.authStorageService.getPermissions(),this.enabledFeature$=this.featureToggles.get()}get class(){return"top-notification-"+this.notifications.length}ngOnInit(){this.subs.add(this.summaryService.subscribe(t=>{this.summaryData=t})),this.subs.add(this.authStorageService.isPwdDisplayed$.subscribe(t=>{this.showTopNotification("isPwdDisplayed",t)})),this.subs.add(this.telemetryNotificationService.update.subscribe(t=>{this.showTopNotification("telemetryNotificationEnabled",t)}))}ngOnDestroy(){this.subs.unsubscribe()}blockHealthColor(){if(this.summaryData&&this.summaryData.rbd_mirroring){if(this.summaryData.rbd_mirroring.errors>0)return{color:"#d9534f"};if(this.summaryData.rbd_mirroring.warnings>0)return{color:"#f0ad4e"}}}toggleSubMenu(t){this.displayedSubMenu=this.displayedSubMenu===t?"":t}showTopNotification(t,e){if(e)this.notifications.includes(t)||this.notifications.push(t);else{const e=this.notifications.indexOf(t);e>=0&&this.notifications.splice(e,1)}}}var $e=s["ɵcrt"]({encapsulation:0,styles:[['@charset "UTF-8";  .cd-navbar-top .cd-navbar-brand{background:#374249;border-top:4px solid #2b99a8}  .cd-navbar-top .cd-navbar-brand.isPwdDisplayed{top:37.6px}  .cd-navbar-top .cd-navbar-brand .navbar-brand,   .cd-navbar-top .cd-navbar-brand .navbar-brand:hover{color:#eee;height:auto;padding:0}  .cd-navbar-top .cd-navbar-brand .navbar-brand>img{height:25px}  .cd-navbar-top .cd-navbar-brand .navbar-toggler{border:0}  .cd-navbar-top .cd-navbar-brand .navbar-toggler:focus,   .cd-navbar-top .cd-navbar-brand .navbar-toggler:hover{outline:0}  .cd-navbar-top .cd-navbar-brand .navbar-toggler .fa-navicon{color:#eee}  .cd-navbar-top .cd-navbar-brand .navbar-collapse{padding:0}  .cd-navbar-top .cd-navbar-brand .cd-navbar-utility>.active>a{color:#eee;background-color:#2b99a8}  .cd-navbar-top .cd-navbar-brand .cd-navbar-utility>li>.open>a,   .cd-navbar-top .cd-navbar-brand .cd-navbar-utility>li>.open>a:focus,   .cd-navbar-top .cd-navbar-brand .cd-navbar-utility>li>.open>a:hover{color:#eee;border-color:transparent;background-color:transparent}  .cd-navbar-top .navbar-nav>li>.cd-navbar>[dropdown]>a,   .cd-navbar-top .navbar-nav>li>.cd-navbar>a,   .cd-navbar-top .navbar-nav>li>a{color:#eee;line-height:1;padding:13.5px 18px!important;position:relative;display:block;text-decoration:none}  .cd-navbar-top .navbar-nav .nav-link,   .cd-navbar-top .navbar-nav .nav-link:hover{color:#eee}  .cd-navbar-top .navbar-nav>li:hover,   .cd-navbar-top .navbar-nav>li>.cd-navbar>[dropdown].open>a,   .cd-navbar-top .navbar-nav>li>.cd-navbar>[dropdown]>a:hover,   .cd-navbar-top .navbar-nav>li>.cd-navbar>a:hover,   .cd-navbar-top .navbar-nav>li>a:hover{background-color:#2b99a8}  .cd-navbar-top .navbar-nav>.open>.cd-navbar>[dropdown]>a,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>[dropdown]>a:hover,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>a,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>a:focus,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>a:hover,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>li>a:focus,   .cd-navbar-top .navbar-nav>.open>a,   .cd-navbar-top .navbar-nav>.open>a:focus,   .cd-navbar-top .navbar-nav>.open>a:hover{color:#eee;border-color:transparent;background-color:transparent}@media (min-width:768px){  .cd-navbar-top .cd-navbar-utility{border-bottom:0;position:absolute;right:0;top:0;font-size:1.1rem}}@media (max-width:calc(768px - 1px)){  .cd-navbar-top .navbar-nav{margin:0}  .cd-navbar-top .navbar-nav .fa{margin-right:.5em}  .cd-navbar-top .navbar-nav .open .dropdown-menu{border:0;padding-top:0;padding-bottom:0;background-color:#2b99a8}  .cd-navbar-top .navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 35px;color:#eee}  .cd-navbar-top .navbar-nav .open .dropdown-menu>.active>a{background-color:#2b99a8}  .cd-navbar-top .navbar-nav>li>a:hover{background-color:#2b99a8}}.cd-navbar-primary[_ngcontent-%COMP%]   .active[_ngcontent-%COMP%] > a[_ngcontent-%COMP%], .cd-navbar-primary[_ngcontent-%COMP%] > .active[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]:focus, .cd-navbar-primary[_ngcontent-%COMP%] > .active[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]:hover{color:#eee!important;background-color:#2b99a8!important;border:0!important}.wrapper[_ngcontent-%COMP%]{display:flex;width:100%}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]{width:200px;top:43px;background:#374249;overflow-y:auto;position:fixed;bottom:0;left:0;z-index:999;color:#fff;transition:all .3s}.wrapper[_ngcontent-%COMP%]   #sidebar.active[_ngcontent-%COMP%]{margin-left:-200px}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul.component[_ngcontent-%COMP%]{padding:20px 0;margin:0}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{color:#fff;padding:10px}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{padding:10px;font-size:1.1em;display:block;color:#fff;text-decoration:none}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]:hover{color:#fff;background:#2b99a8}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   a[_ngcontent-%COMP%] > .badge[_ngcontent-%COMP%]{margin-left:5px}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li.active[_ngcontent-%COMP%] > a[_ngcontent-%COMP%], .wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]   a[aria-expanded=true][_ngcontent-%COMP%]{color:#fff}.wrapper[_ngcontent-%COMP%]   a.dropdown-toggle[_ngcontent-%COMP%]{position:relative}.wrapper[_ngcontent-%COMP%]   a.dropdown-toggle[_ngcontent-%COMP%]::after{position:absolute;right:20px;content:"";font-family:ForkAwesome;border:0;font-size:1rem;transition:transform .3s ease-in-out}.wrapper[_ngcontent-%COMP%]   a.dropdown-toggle[aria-expanded=true][_ngcontent-%COMP%]::after{transform:rotate(90deg)}.wrapper[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{font-size:.9em!important;padding-left:30px!important;background:#4d5c66}.wrapper[_ngcontent-%COMP%]   .cd-navbar-primary[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]:focus{outline:0}.wrapper[_ngcontent-%COMP%]   ngx-simplebar[_ngcontent-%COMP%]{height:100%}#content[_ngcontent-%COMP%]{width:calc(100% - 200px);transition:all .3s;position:absolute;top:43px;bottom:0;right:0}#content.active[_ngcontent-%COMP%]{width:100vw}.top-notification-1[_nghost-%COMP%]   .cd-navbar-top[_ngcontent-%COMP%]   .cd-navbar-brand[_ngcontent-%COMP%]{top:37.6px}.top-notification-1[_nghost-%COMP%]   #sidebar[_ngcontent-%COMP%]{top:80.6px}.top-notification-1[_nghost-%COMP%]   #content[_ngcontent-%COMP%]{top:80.6px}.top-notification-1[_nghost-%COMP%]   cd-notifications-sidebar[_ngcontent-%COMP%]{top:90.6px}.top-notification-2[_nghost-%COMP%]   .cd-navbar-top[_ngcontent-%COMP%]   .cd-navbar-brand[_ngcontent-%COMP%]{top:75.2px}.top-notification-2[_nghost-%COMP%]   #sidebar[_ngcontent-%COMP%]{top:118.2px}.top-notification-2[_nghost-%COMP%]   #content[_ngcontent-%COMP%]{top:118.2px}.top-notification-2[_nghost-%COMP%]   cd-notifications-sidebar[_ngcontent-%COMP%]{top:128.2px}']],data:{}});function Ze(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Je(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Qe(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"cd-language-selector",[["class","cd-navbar"]],null,null,null,ht,ut)),s["ɵdid"](2,114688,null,0,it,[st.l,nt],null,null),(t()(),s["ɵeld"](3,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,1,"cd-notifications",[["class","cd-navbar"]],null,null,null,_t,vt)),s["ɵdid"](5,245760,null,0,yt,[bt.a,mt.a],null,null),(t()(),s["ɵeld"](6,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"cd-dashboard-help",[["class","cd-navbar"]],null,null,null,kt,Rt)),s["ɵdid"](8,114688,null,0,Nt,[Ct.b,Tt.a],null,null),(t()(),s["ɵeld"](9,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,1,"cd-administration",[["class","cd-navbar"]],null,null,null,Ft,Dt)),s["ɵdid"](11,114688,null,0,Lt,[J.a],null,null),(t()(),s["ɵeld"](12,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,1,"cd-identity",[["class","cd-navbar"]],null,null,null,Ht,Bt)),s["ɵdid"](14,114688,null,0,Gt,[J.a,Vt.a],null,null)],(function(t,e){t(e,2,0),t(e,5,0),t(e,8,0),t(e,11,0),t(e,14,0)}),null)}function Xe(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_hosts"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,5,{links:1}),s["ɵqud"](603979776,6,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/hosts"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[6,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Hosts"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/hosts")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function tn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_cluster_inventory"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,7,{links:1}),s["ɵqud"](603979776,8,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/inventory"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[8,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Inventory"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/inventory")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function en(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_cluster_monitor"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,9,{links:1}),s["ɵqud"](603979776,10,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/monitor/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[10,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Monitors"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/monitor/")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function nn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_cluster_services"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,11,{links:1}),s["ɵqud"](603979776,12,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/services/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[12,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Services"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/services/")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function an(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_osds"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,13,{links:1}),s["ɵqud"](603979776,14,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/osd"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[14,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["OSDs"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/osd")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function rn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_configuration"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,15,{links:1}),s["ɵqud"](603979776,16,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/configuration"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[16,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Configuration"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/configuration")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function sn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_crush"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,17,{links:1}),s["ɵqud"](603979776,18,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/crush-map"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[18,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["CRUSH map"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/crush-map")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function un(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_modules"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,19,{links:1}),s["ɵqud"](603979776,20,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/mgr-modules"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[20,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Manager Modules"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/mgr-modules")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function on(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_log"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,21,{links:1}),s["ɵqud"](603979776,22,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/logs"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[22,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Logs"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/logs")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function ln(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"small",[["class","badge badge-danger"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.prometheusAlertService.activeAlerts)}))}function dn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"li",[["class","tc_submenuitem tc_submenuitem_monitoring"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,23,{links:1}),s["ɵqud"](603979776,24,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,5,"a",[["routerLink","/monitoring"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[24,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Monitoring"])),(t()(),s["ɵand"](16777216,null,null,1,null,ln)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,5,0,"/monitoring"),t(e,9,0,n.prometheusAlertService.activeAlerts>0)}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function cn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,28,"li",[["class","nav-item tc_menuitem_cluster"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,3,{links:1}),s["ɵqud"](603979776,4,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["aria-controls","collapseBasic"],["class","nav-link dropdown-toggle"]],[[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleSubMenu("cluster")&&a),a}),null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster"])),(t()(),s["ɵeld"](7,0,null,null,21,"ul",[["class","list-unstyled"]],[[2,"collapse",null],[2,"in",null],[2,"show",null],[1,"aria-expanded",0],[1,"aria-hidden",0],[2,"collapsing",null]],null,null,null,null)),s["ɵdid"](8,8404992,null,0,Kt,[s.ElementRef,s.Renderer2,W.b],{isAnimated:[0,"isAnimated"],collapse:[1,"collapse"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Xe)),s["ɵdid"](10,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tn)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,en)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,nn)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,an)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rn)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,sn)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,un)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,on)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,dn)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,8,0,!0,"cluster"!==n.displayedSubMenu),t(e,10,0,n.permissions.hosts.read),t(e,12,0,n.permissions.hosts.read),t(e,14,0,n.permissions.monitor.read),t(e,16,0,n.permissions.hosts.read),t(e,18,0,n.permissions.osd.read),t(e,20,0,n.permissions.configOpt.read),t(e,22,0,n.permissions.osd.read),t(e,24,0,n.permissions.configOpt.read),t(e,26,0,n.permissions.log.read),t(e,28,0,n.permissions.prometheus.read)}),(function(t,e){t(e,4,0,"cluster"==e.component.displayedSubMenu),t(e,7,0,s["ɵnov"](e,8).isCollapse,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isCollapsed,s["ɵnov"](e,8).isCollapsing)}))}function fn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","nav-item tc_menuitem_pool"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,25,{links:1}),s["ɵqud"](603979776,26,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["class","nav-link"],["routerLink","/pool"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[26,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Pools"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/pool")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function hn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_block_images"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,29,{links:1}),s["ɵqud"](603979776,30,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/block/rbd"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[30,4],[28,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Images"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/block/rbd")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function gn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"small",[["class","badge badge-warning"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){var n=e.component;t(e,1,0,null==n.summaryData||null==n.summaryData.rbd_mirroring?null:n.summaryData.rbd_mirroring.warnings)}))}function pn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"small",[["class","badge badge-danger"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){var n=e.component;t(e,1,0,null==n.summaryData||null==n.summaryData.rbd_mirroring?null:n.summaryData.rbd_mirroring.errors)}))}function bn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"li",[["class","tc_submenuitem tc_submenuitem_block_mirroring"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,31,{links:1}),s["ɵqud"](603979776,32,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,7,"a",[["routerLink","/block/mirroring"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[32,4],[28,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Mirroring"])),(t()(),s["ɵand"](16777216,null,null,1,null,gn)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pn)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,5,0,"/block/mirroring"),t(e,9,0,0!==(null==n.summaryData||null==n.summaryData.rbd_mirroring?null:n.summaryData.rbd_mirroring.warnings)),t(e,11,0,0!==(null==n.summaryData||null==n.summaryData.rbd_mirroring?null:n.summaryData.rbd_mirroring.errors))}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function mn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_block_iscsi"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,33,{links:1}),s["ɵqud"](603979776,34,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/block/iscsi"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[34,4],[28,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["iSCSI"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/block/iscsi")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function yn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,16,"li",[["class","nav-item tc_menuitem_block"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,27,{links:1}),s["ɵqud"](603979776,28,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,4,"a",[["aria-controls","collapseBasic"],["class","nav-link dropdown-toggle"]],[[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleSubMenu("block")&&a),a}),null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),s["ɵeld"](7,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Block"])),(t()(),s["ɵeld"](9,0,null,null,7,"ul",[["class","list-unstyled"]],[[2,"collapse",null],[2,"in",null],[2,"show",null],[1,"aria-expanded",0],[1,"aria-hidden",0],[2,"collapsing",null]],null,null,null,null)),s["ɵdid"](10,8404992,null,0,Kt,[s.ElementRef,s.Renderer2,W.b],{isAnimated:[0,"isAnimated"],collapse:[1,"collapse"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,hn)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,bn)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mn)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,6,0,n.blockHealthColor()),t(e,10,0,!0,"block"!==n.displayedSubMenu),t(e,12,0,n.permissions.rbdImage.read&&e.parent.context.ngIf.rbd),t(e,14,0,n.permissions.rbdMirroring.read&&e.parent.context.ngIf.mirroring),t(e,16,0,n.permissions.iscsi.read&&e.parent.context.ngIf.iscsi)}),(function(t,e){t(e,4,0,"block"==e.component.displayedSubMenu),t(e,9,0,s["ɵnov"](e,10).isCollapse,s["ɵnov"](e,10).isExpanded,s["ɵnov"](e,10).isExpanded,s["ɵnov"](e,10).isExpanded,s["ɵnov"](e,10).isCollapsed,s["ɵnov"](e,10).isCollapsing)}))}function vn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","nav-item tc_menuitem_nfs"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,35,{links:1}),s["ɵqud"](603979776,36,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["class","nav-link"],["routerLink","/nfs"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[36,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["NFS"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/nfs")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function xn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","nav-item tc_menuitem_cephfs"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,37,{links:1}),s["ɵqud"](603979776,38,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["class","nav-link"],["routerLink","/cephfs"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[38,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Filesystems"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/cephfs")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function _n(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,29,"li",[["class","nav-item tc_menuitem_rgw"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,39,{links:1}),s["ɵqud"](603979776,40,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["aria-controls","collapseBasic"],["class","nav-link dropdown-toggle"]],[[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleSubMenu("rgw")&&a),a}),null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Object Gateway"])),(t()(),s["ɵeld"](7,0,null,null,22,"ul",[["class","list-unstyled"]],[[2,"collapse",null],[2,"in",null],[2,"show",null],[1,"aria-expanded",0],[1,"aria-hidden",0],[2,"collapsing",null]],null,null,null,null)),s["ɵdid"](8,8404992,null,0,Kt,[s.ElementRef,s.Renderer2,W.b],{isAnimated:[0,"isAnimated"],collapse:[1,"collapse"]},null),(t()(),s["ɵeld"](9,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_rgw_daemons"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](10,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,41,{links:1}),s["ɵqud"](603979776,42,{linksWithHrefs:1}),(t()(),s["ɵeld"](13,0,null,null,2,"a",[["routerLink","/rgw/daemon"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,14).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](14,671744,[[42,4],[40,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Daemons"])),(t()(),s["ɵeld"](16,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_rgw_users"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](17,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,43,{links:1}),s["ɵqud"](603979776,44,{linksWithHrefs:1}),(t()(),s["ɵeld"](20,0,null,null,2,"a",[["routerLink","/rgw/user"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,21).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](21,671744,[[44,4],[40,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Users"])),(t()(),s["ɵeld"](23,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_rgw_buckets"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](24,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,45,{links:1}),s["ɵqud"](603979776,46,{linksWithHrefs:1}),(t()(),s["ɵeld"](27,0,null,null,2,"a",[["routerLink","/rgw/bucket"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,28).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](28,671744,[[46,4],[40,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Buckets"]))],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,8,0,!0,"rgw"!==n.displayedSubMenu),t(e,10,0,"active"),t(e,14,0,"/rgw/daemon"),t(e,17,0,"active"),t(e,21,0,"/rgw/user"),t(e,24,0,"active"),t(e,28,0,"/rgw/bucket")}),(function(t,e){t(e,4,0,"rgw"==e.component.displayedSubMenu),t(e,7,0,s["ɵnov"](e,8).isCollapse,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isCollapsed,s["ɵnov"](e,8).isCollapsing),t(e,13,0,s["ɵnov"](e,14).target,s["ɵnov"](e,14).href),t(e,20,0,s["ɵnov"](e,21).target,s["ɵnov"](e,21).href),t(e,27,0,s["ɵnov"](e,28).target,s["ɵnov"](e,28).href)}))}function Tn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,28,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,15,"li",[["class","nav-item tc_menuitem_dashboard"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](2,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,1,{links:1}),s["ɵqud"](603979776,2,{linksWithHrefs:1}),(t()(),s["ɵeld"](5,0,null,null,11,"a",[["class","nav-link"],["routerLink","/dashboard"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,6).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](6,671744,[[2,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](7,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Dashboard"])),(t()(),s["ɵted"](-1,null,["  "])),(t()(),s["ɵeld"](10,0,null,null,6,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](12,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](13,1),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](15,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),s["ɵppd"](16,1),(t()(),s["ɵand"](16777216,null,null,1,null,cn)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fn)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,yn)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,vn)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xn)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_n)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,"active"),t(e,6,0,"/dashboard");var a=t(e,13,0,n.icons.health);t(e,12,0,a);var r=s["ɵunv"](e,15,0,t(e,16,0,s["ɵnov"](e.parent.parent,0),null==n.summaryData?null:n.summaryData.health_status));t(e,15,0,r),t(e,18,0,n.permissions.hosts.read||n.permissions.monitor.read||n.permissions.osd.read||n.permissions.configOpt.read||n.permissions.log.read||n.permissions.prometheus.read),t(e,20,0,n.permissions.pool.read),t(e,22,0,(n.permissions.rbdImage.read||n.permissions.rbdMirroring.read||n.permissions.iscsi.read)&&(e.context.ngIf.rbd||e.context.ngIf.mirroring||e.context.ngIf.iscsi)),t(e,24,0,n.permissions.nfs.read&&e.context.ngIf.nfs),t(e,26,0,n.permissions.cephfs.read&&e.context.ngIf.cephfs),t(e,28,0,n.permissions.rgw.read&&e.context.ngIf.rgw)}),(function(t,e){t(e,5,0,s["ɵnov"](e,6).target,s["ɵnov"](e,6).href)}))}function wn(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,2,null,Tn)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpid"](131072,i.AsyncPipe,[s.ChangeDetectorRef]),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,s["ɵunv"](e,1,0,s["ɵnov"](e,2).transform(n.enabledFeature$)))}),null)}function On(t){return s["ɵvid"](0,[s["ɵpid"](0,Zt,[]),(t()(),s["ɵeld"](1,0,null,null,1,"cd-pwd-expiration-notification",[],null,null,null,se,ne)),s["ɵdid"](2,245760,null,0,ee,[Xt.a,J.a],null,null),(t()(),s["ɵeld"](3,0,null,null,1,"cd-telemetry-notification",[],null,null,null,pe,he)),s["ɵdid"](4,245760,null,0,ce,[oe,J.a,bt.a,de,fe.a],null,null),(t()(),s["ɵeld"](5,0,null,null,1,"cd-notifications-sidebar",[],[[2,"active",null]],null,null,Ue,De)),s["ɵdid"](6,245760,null,0,Le,[bt.a,mt.a,Ee.a,ke,J.a,Ae,s.NgZone,s.ChangeDetectorRef],null,null),(t()(),s["ɵeld"](7,0,null,null,15,"div",[["class","cd-navbar-top"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,14,"nav",[["class","navbar fixed-top navbar-expand-md navbar-dark cd-navbar-brand"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,"button",[["class","btn btn-link py-0"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=0!=(r.showMenuSidebar=!r.showMenuSidebar)&&a),a}),null,null)),(t()(),s["ɵeld"](10,0,null,null,0,"i",[["aria-hidden","true"],["class","fa fa-bars fa-2x"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,1,"a",[["class","navbar-brand ml-2"],["href","#"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,0,"img",[["alt","Ceph"],["src","assets/Ceph_Logo_Standard_RGB_White_120411_fa.png"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,4,"button",[["class","navbar-toggler"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=0!=(r.isCollapsed=!r.isCollapsed)&&a),a}),null,null)),(t()(),s["ɵeld"](14,0,null,null,1,"span",[["class","sr-only"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Toggle navigation"])),(t()(),s["ɵeld"](16,0,null,null,1,"span",[["class",""]],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,0,"i",[["class","fa fa-navicon fa-lg"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,4,"div",[["class","collapse navbar-collapse"]],[[2,"collapse",null],[2,"in",null],[2,"show",null],[1,"aria-expanded",0],[1,"aria-hidden",0],[2,"collapsing",null]],null,null,null,null)),s["ɵdid"](19,8404992,null,0,Kt,[s.ElementRef,s.Renderer2,W.b],{collapse:[0,"collapse"]},null),(t()(),s["ɵeld"](20,0,null,null,2,"ul",[["class","nav navbar-nav cd-navbar-utility my-2 my-md-0"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Ze)),s["ɵdid"](22,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](23,0,null,null,14,"div",[["class","wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](24,0,null,null,8,"nav",[["id","sidebar"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](26,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](27,{active:0}),(t()(),s["ɵeld"](28,0,null,null,4,"ngx-simplebar",[["data-simplebar","init"]],null,null,null,Oe,we)),s["ɵdid"](29,4440064,null,0,Te.a,[s.ElementRef],{options:[0,"options"]},null),(t()(),s["ɵeld"](30,0,null,0,2,"ul",[["class","list-unstyled components cd-navbar-primary"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Je)),s["ɵdid"](32,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](33,0,null,null,4,"div",[["id","content"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](35,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](36,{active:0}),s["ɵncd"](null,0),(t()(),s["ɵand"](0,[["cd_utilities",2]],null,0,null,Qe)),(t()(),s["ɵand"](0,[["cd_menu",2]],null,0,null,wn))],(function(t,e){var n=e.component;t(e,2,0),t(e,4,0),t(e,6,0),t(e,19,0,n.isCollapsed),t(e,22,0,s["ɵnov"](e,38));var a=t(e,27,0,!n.showMenuSidebar);t(e,26,0,a),t(e,29,0,n.simplebar),t(e,32,0,s["ɵnov"](e,39));var r=t(e,36,0,!n.showMenuSidebar);t(e,35,0,r)}),(function(t,e){t(e,5,0,s["ɵnov"](e,6).isSidebarOpened),t(e,18,0,s["ɵnov"](e,19).isCollapse,s["ɵnov"](e,19).isExpanded,s["ɵnov"](e,19).isExpanded,s["ɵnov"](e,19).isExpanded,s["ɵnov"](e,19).isCollapsed,s["ɵnov"](e,19).isCollapsing)}))}var Sn=n("LRne"),In=n("HDdC"),Nn=n("Cfvw"),Cn=n("pLZG"),Rn=n("5+tZ"),An=n("l7GE"),kn=n("ZUHj");class En{constructor(t,e){this.keySelector=t,this.flushes=e}call(t,e){return e.subscribe(new Ln(t,this.keySelector,this.flushes))}}class Ln extends An.a{constructor(t,e,n){super(t),this.keySelector=e,this.values=new Set,n&&this.add(Object(kn.a)(this,n))}notifyNext(t,e,n,a,r){this.values.clear()}notifyError(t,e){this._error(t)}_next(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)}_useKeySelector(t){let e;const{destination:n}=this;try{e=this.keySelector(t)}catch(a){return void n.error(a)}this._finalizeNext(e,t)}_finalizeNext(t,e){const{values:n}=this;n.has(t)||(n.add(t),this.destination.next(e))}}var Dn=n("128B");function Pn(t,e,n){return 0===n?[e]:(t.push(e),t)}function Mn(){return Object(Dn.a)(Pn,[])}var qn=n("SxV6"),jn=n("GyhO");class Fn{resolve(t){const e=t.routeConfig.data,n=null===e.path?null:this.getFullPath(t),a=[{text:"string"==typeof e.breadcrumbs?e.breadcrumbs:e.breadcrumbs.text||e.text||n,path:n}];return Object(Sn.a)(a)}getFullPath(t){return t.pathFromRoot.reduce((t,e)=>t+e.url.reduce((t,e)=>t+"/"+e.path,""),"")}}class Vn{constructor(t,e){this.router=t,this.injector=e,this.crumbs=[],this.finished=!1,this.defaultResolver=new Fn,this.subscription=this.router.events.pipe(Object(Cn.a)(t=>t instanceof Et.e)).subscribe(()=>{this.finished=!1}),this.subscription=this.router.events.pipe(Object(Cn.a)(t=>t instanceof Et.d)).subscribe(()=>{var e;this._resolveCrumbs(t.routerState.snapshot.root).pipe(Object(Rn.a)(t=>t),(e=t=>t.text,t=>t.lift(new En(e,void 0))),Mn(),Object(Rn.a)(t=>{const e=this.postProcess(t);return this.wrapIntoObservable(e).pipe(Object(qn.a)())})).subscribe(t=>{this.finished=!0,this.crumbs=t})})}ngOnDestroy(){this.subscription.unsubscribe()}_resolveCrumbs(t){let e;const n=t.routeConfig&&t.routeConfig.data;if(n&&n.breadcrumbs){let a;a=n.breadcrumbs.prototype instanceof Fn?this.injector.get(n.breadcrumbs):this.defaultResolver;const r=a.resolve(t);e=this.wrapIntoObservable(r).pipe(Object(qn.a)())}else e=Object(Sn.a)([]);return t.firstChild&&(e=e.pipe(function(...t){return e=>e.lift.call(Object(jn.a)(e,...t))}(this._resolveCrumbs(t.firstChild)))),e}postProcess(t){const e=[];return t.forEach(t=>{const n=t.text.split("/");if(n.length>1){t.text=n[n.length-1];for(let t=0;t<n.length-1;t++)e.push({text:n[t],path:null})}e.push(t)}),e}isPromise(t){return t&&"function"==typeof t.then}wrapIntoObservable(t){return t instanceof In.a?t:this.isPromise(t)?Object(Nn.a)(Promise.resolve(t)):Object(Sn.a)(t)}}var Gn=s["ɵcrt"]({encapsulation:0,styles:[['@charset "UTF-8";.breadcrumb[_ngcontent-%COMP%]{padding:8px 0;background-color:transparent;border-radius:0;margin-top:8px}.breadcrumb[_ngcontent-%COMP%] > li[_ngcontent-%COMP%] + li[_ngcontent-%COMP%]:before{padding:0 5px 0 7px;color:#474544;font-family:ForkAwesome;content:""}.breadcrumb[_ngcontent-%COMP%] > li[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:#474544}']],data:{}});function Bn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"a",[["preserveFragment",""]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,1).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](1,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{preserveFragment:[0,"preserveFragment"],routerLink:[1,"routerLink"]},null),(t()(),s["ɵted"](2,null,["",""]))],(function(t,e){t(e,1,0,"",e.parent.context.$implicit.path)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).target,s["ɵnov"](e,1).href),t(e,2,0,e.parent.context.$implicit.text)}))}function zn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.text)}))}function Yn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"li",[["class","breadcrumb-item"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](3,{active:0}),(t()(),s["ɵand"](16777216,null,null,1,null,Bn)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zn)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=t(e,3,0,e.context.last&&e.component.finished);t(e,2,0,"breadcrumb-item",n),t(e,5,0,!e.context.last&&null!==e.context.$implicit.path),t(e,7,0,e.context.last||null===e.context.$implicit.path)}),null)}function Hn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"ol",[["class","breadcrumb"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Yn)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.crumbs)}),null)}function Un(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Hn)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.crumbs.length)}),null)}var Wn=n("978R"),Kn=n("VXsX");const $n=()=>Object.assign(new Wn.a,{container:"body"});class Zn{constructor(t,e,n){this.router=t,this.summaryService=e,this.taskManagerService=n,this.subs=new gt.a}ngOnInit(){this.subs.add(this.summaryService.startPolling()),this.subs.add(this.taskManagerService.init(this.summaryService))}ngOnDestroy(){this.subs.unsubscribe()}isDashboardPage(){return"/dashboard"===this.router.url}}var Jn=s["ɵcrt"]({encapsulation:0,styles:[[".dashboard[_ngcontent-%COMP%]{background-color:#f5f5f5;margin:0;padding:0}.container-fluid[_ngcontent-%COMP%]{overflow:auto}  #toast-container{margin-top:2vw}@media (max-width:1600px){  #toast-container{margin-top:2.5vw}}@media (max-width:calc(992px - 1px)){  #toast-container{margin-top:9vw}}@media (max-width:900px){  #toast-container{margin-top:10vw}}@media (max-width:319px){  #toast-container{margin-top:11vw}}@media (max-width:260px){  #toast-container{margin-top:14vw}}"]],data:{}});function Qn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"block-ui",[],null,null,null,D,L)),s["ɵdid"](1,114688,null,0,S,[O],null,null),(t()(),s["ɵeld"](2,0,null,0,9,"cd-navigation",[],[[8,"className",0]],null,null,On,$e)),s["ɵdid"](3,245760,null,0,Ke,[J.a,mt.a,We.a,de,Ae],null,null),(t()(),s["ɵeld"](4,0,null,0,7,"div",[["class","container-fluid h-100"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](7,{dashboard:0}),(t()(),s["ɵeld"](8,0,null,null,1,"cd-breadcrumbs",[],null,null,null,Un,Gn)),s["ɵdid"](9,180224,null,0,Vn,[Et.m,s.Injector],null,null),(t()(),s["ɵeld"](10,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),s["ɵdid"](11,212992,null,0,Et.r,[Et.b,s.ViewContainerRef,s.ComponentFactoryResolver,[8,null],s.ChangeDetectorRef],null,null)],(function(t,e){var n=e.component;t(e,1,0),t(e,3,0);var a=t(e,7,0,n.isDashboardPage());t(e,6,0,"container-fluid h-100",a),t(e,11,0)}),(function(t,e){t(e,2,0,s["ɵnov"](e,3).class)}))}function Xn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-workbench-layout",[],null,null,null,Qn,Jn)),s["ɵprd"](5120,null,Wn.a,$n,[]),s["ɵdid"](2,245760,null,0,Zn,[Et.m,mt.a,Kn.a],null,null)],(function(t,e){t(e,2,0)}),null)}var ta=s["ɵccf"]("cd-workbench-layout",Zn,Xn,{},{},[]),ea=n("pKUh"),na=n("2ZVE"),aa=n("KOzp"),ra=n("2uy1");class ia{constructor(){this.cardClass=""}}var sa=s["ɵcrt"]({encapsulation:0,styles:[[".card[_ngcontent-%COMP%]{height:100%;border:.5px solid #ddd;border-radius:3px;box-shadow:0 1px 1px rgba(3,3,3,.175);font-size:12px}@media screen and (min-width:320px){.card[_ngcontent-%COMP%]{font-size:calc(12px + 9 * ((100vw - 320px)/ 1728))}}@media screen and (min-width:2048px){.card[_ngcontent-%COMP%]{font-size:21px}}.card[_ngcontent-%COMP%]   .card-body[_ngcontent-%COMP%]{padding-top:40px!important}.card[_ngcontent-%COMP%]   .card-body[_ngcontent-%COMP%]   .card-title[_ngcontent-%COMP%]{left:-.6rem;position:absolute;top:-.3rem}.no-center[_ngcontent-%COMP%]{position:unset;top:unset;left:unset;transform:unset}.content-highlight[_ngcontent-%COMP%]{font-weight:700}"]],data:{}});function ua(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"a",[],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,1).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](1,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](2,null,["",""]))],(function(t,e){t(e,1,0,e.component.link)}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).target,s["ɵnov"](e,1).href),t(e,2,0,n.cardTitle)}))}function oa(t){return s["ɵvid"](0,[(t()(),s["ɵted"](0,null,[" "," "]))],null,(function(t,e){t(e,0,0,e.component.cardTitle)}))}function la(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"div",[["class","card"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),s["ɵeld"](3,0,null,null,8,"div",[["class","card-body d-flex align-items-center justify-content-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,3,"h4",[["class","card-title m-4"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ua)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["noLinkTitle",2]],null,0,null,oa)),(t()(),s["ɵeld"](8,0,null,null,3,"div",[["class","card-text text-center"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](10,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵncd"](null,0)],(function(t,e){var n=e.component;t(e,2,0,"card",n.cardClass),t(e,6,0,n.link,s["ɵnov"](e,7)),t(e,10,0,"card-text text-center",n.contentClass)}),null)}class da{}var ca=s["ɵcrt"]({encapsulation:0,styles:[[".info-group-title[_ngcontent-%COMP%]{margin:0 0 .5vw .5vw;font-size:21px}"]],data:{}});function fa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","info-group-title"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""])),(t()(),s["ɵeld"](3,0,null,null,1,"div",[["class","row"]],null,null,null,null,null)),s["ɵncd"](null,0)],null,(function(t,e){t(e,2,0,e.component.groupTitle)}))}var ha=n("hrfs"),ga=n("MO+k"),pa=n("NEZu"),ba=n("Fgil"),ma=n("o4+5");class ya{constructor(t,e){this.dimlessBinary=t,this.dimless=e,this.config={},this.isBytesData=!1,this.showLabelAsTooltip=!1,this.prepareFn=new s.EventEmitter,this.chartConfig={chartType:"doughnut",dataset:[{label:null,borderWidth:0}],colors:[{backgroundColor:["--color-green","--color-yellow","--color-orange","--color-red","--color-blue"]}],options:{cutoutPercentage:90,events:["click","mouseout","touchstart"],legend:{display:!0,position:"right",labels:{boxWidth:10,usePointStyle:!1}},plugins:{center_text:!0},tooltips:{enabled:!0,displayColors:!1,backgroundColor:"rgba(0,0,0,0.8)",cornerRadius:0,bodyFontSize:14,bodyFontStyle:"600",position:"nearest",xPadding:12,yPadding:12,callbacks:{label:(t,e)=>{let n=e.labels[t.index];return n.includes("%")||(n=`${n} (${e.datasets[t.datasetIndex].data[t.index]}%)`),n}}},title:{display:!1}}},this.doughnutChartPlugins=[{id:"center_text",beforeDraw(t){const e="Helvetica Neue, Helvetica, Arial, sans-serif";ga.defaults.global.defaultFontFamily=e;const n=t.ctx;if(!t.options.plugins.center_text||!t.data.datasets[0].label)return;n.save();const a=t.data.datasets[0].label.split("\n"),r=(t.chartArea.left+t.chartArea.right)/2,i=(t.chartArea.top+t.chartArea.bottom)/2;n.textAlign="center",n.textBaseline="middle",n.font="24px "+e,n.fillStyle="#151515",n.fillText(a[0],r,i-10),a.length>1&&(n.font="14px "+e,n.fillStyle="#72767B",n.fillText(a[1],r,i+10)),n.restore()}}]}ngOnInit(){new pa.a(this.chartCanvasRef,this.chartTooltipRef,(t,e)=>e+t.caretX+"px",(t,e)=>e+t.caretY-t.height-10+"px").getBody=t=>this.getChartTooltipBody(t),X.merge(this.chartConfig,this.config),this.setColorsFromCssVars(),this.prepareFn.emit([this.chartConfig,this.data])}ngOnChanges(){this.prepareFn.emit([this.chartConfig,this.data]),this.setChartSliceBorderWidth()}setColorsFromCssVars(){this.chartConfig.colors.forEach((t,e)=>{t.backgroundColor.forEach((t,n)=>{t.startsWith("--")&&(this.chartConfig.colors[e].backgroundColor[n]=this.getCssVar(t))})})}getCssVar(t){return getComputedStyle(document.querySelector(".chart-container")).getPropertyValue(t)}getChartTooltipBody(t){const e=t[0].split(": ");return this.showLabelAsTooltip?e[0]:(e[1]=this.isBytesData?this.dimlessBinary.transform(e[1]):this.dimless.transform(e[1]),e.join(": "))}setChartSliceBorderWidth(){let t=0;X.forEach(this.chartConfig.dataset[0].data,(function(e){e>0&&(t+=1)})),this.chartConfig.dataset[0].borderWidth=t>1?1:0}}var va=s["ɵcrt"]({encapsulation:0,styles:[['canvas[_ngcontent-%COMP%]{-moz-user-select:none;user-select:none}.chartjs-tooltip[_ngcontent-%COMP%]{opacity:0;position:absolute;background:rgba(0,0,0,.7);color:#fff;border-radius:3px;transition:all .1s ease;pointer-events:none;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;transform:translate(-50%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]{transform:translate(-10%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]::after{left:10%}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]{transform:translate(-90%,0)}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]::after{left:90%}.chartjs-tooltip[_ngcontent-%COMP%]::after{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#000 transparent transparent}  .chartjs-tooltip-key{display:inline-block;width:10px;height:10px;margin-right:10px}.chart-container[_ngcontent-%COMP%]{margin:auto;cursor:pointer;overflow:visible;--color-red:#c9190b;--color-blue:#06c;--color-orange:#ef9234;--color-yellow:#f6d173;--color-magenta:#009596;--color-green:#7cc674;--color-gray:#ededed;--color-light-blue:#519de9;--color-light-yellow:#f9e0a2;--color-cyan:#73c5c5;--color-purple:#3c3d99;position:unset;width:100%;height:100%}.chart-canvas[_ngcontent-%COMP%]{position:unset;width:100%;height:100%;margin-left:auto;margin-right:auto;max-width:100%;max-height:100%}']],data:{}});function xa(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{chartCanvasRef:0}),s["ɵqud"](402653184,2,{chartTooltipRef:0}),(t()(),s["ɵeld"](2,0,null,null,4,"div",[["class","chart-container"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,[[1,0],["chartCanvas",1]],null,1,"canvas",[["baseChart",""],["class","chart-canvas"]],null,null,null,null,null)),s["ɵdid"](4,999424,null,0,ha.a,[s.ElementRef,ha.c],{datasets:[0,"datasets"],labels:[1,"labels"],options:[2,"options"],chartType:[3,"chartType"],colors:[4,"colors"],plugins:[5,"plugins"]},null),(t()(),s["ɵeld"](5,0,[[2,0],["chartTooltip",1]],null,1,"div",[["class","chartjs-tooltip"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,0,"table",[],null,null,null,null,null))],(function(t,e){var n=e.component;t(e,4,0,n.chartConfig.dataset,n.chartConfig.labels,n.chartConfig.options,n.chartConfig.chartType,n.chartConfig.colors,n.doughnutChartPlugins)}),null)}class _a{constructor(t){this.i18n=t}transform(t){return t?`${t.monmap.mons.length.toString()} (${this.i18n("quorum")} ${t.quorum.join(", ")})`:""}}class Ta{constructor(t){this.i18n=t}transform(t){if(!t)return"";let e=0,n=0;X.each(t.osds,t=>{t.in&&e++,t.up&&n++});const a=[{content:`${t.osds.length} ${this.i18n("total")}`,class:""}];a.push({content:"",class:"card-text-line-break"}),a.push({content:`${n} ${this.i18n("up")}, ${e} ${this.i18n("in")}`,class:""});const r=t.osds.length-n,i=n-e;if(r>0||i>0){a.push({content:"",class:"card-text-line-break"});const t=r>0?`${r} ${this.i18n("down")}`:"",e=r>0&&i>0?", ":"",n=i>0?`${i} ${this.i18n("out")}`:"";a.push({content:`${t}${e}${n}`,class:"card-text-error"})}return a}}class wa{constructor(t){this.i18n=t}transform(t){if(!t)return"";let e=this.i18n("n/a");const n=X.isUndefined(t.active_name)?"":`${this.i18n("active daemon")}: ${t.active_name}`;n.length>0&&(e="1");const a=t.standbys.map(t=>t.name).join(", "),r=a?`${this.i18n("standby daemons")}: ${a}`:"",i=t.standbys.length,s=[{content:`${e} ${this.i18n("active")}`,class:"popover-info",titleText:n}];return s.push({content:"",class:"card-text-line-break",titleText:""}),s.push({content:`${i} ${this.i18n("standby")}`,class:"popover-info",titleText:r}),s}}class Oa{constructor(t){this.i18n=t}transform(t){if(!t)return"";let e="",n="",a=0,r=0,i=0;X.each(t.standbys,()=>{a+=1}),t.standbys&&!t.filesystems?(e=`${a} ${this.i18n("up")}`,n=this.i18n("no filesystems")):0===t.filesystems.length?e=this.i18n("no filesystems"):(X.each(t.filesystems,t=>{X.each(t.mdsmap.info,t=>{"up:standby-replay"===t.state?i+=1:r+=1})}),e=`${r} ${this.i18n("active")}`,n=`${a+i} ${this.i18n("standby")}`);const s=t.standbys.map(t=>t.name).join(", "),u=s?`${this.i18n("standby daemons")}: ${s}`:"",o=t.filesystems?t.filesystems.length:0,l=Object.values(o>0?t.filesystems[0].mdsmap.info:{}).map(t=>t.name).join(", ");let d=l?`${this.i18n("active daemon")}: ${l}`:"";!r&&o>0&&(d=`${i} ${this.i18n("standbyReplay")}`);const c=[{content:e,class:"popover-info",titleText:d}];return n&&(c.push({content:"",class:"card-text-line-break",titleText:""}),c.push({content:n,class:"popover-info",titleText:u})),c}}var Sa=n("aXbf");let Ia=(()=>{class t{constructor(t){this.http=t}getFullHealth(){return this.http.get("api/health/full")}getMinimalHealth(){return this.http.get("api/health/minimal")}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();var Na=n("2Vo4"),Ca=n("D0XW"),Ra=n("Y7HM");function Aa(t){const{subscriber:e,counter:n,period:a}=t;e.next(n),this.schedule({subscriber:e,counter:n+1,period:a},a)}let ka=(()=>{class t{constructor(t){this.ngZone=t,this.intervalDataSource=new Na.a(null),this.intervalData$=this.intervalDataSource.asObservable();const e=parseInt(sessionStorage.getItem("dashboard_interval"),10)||5e3;this.setRefreshInterval(e)}setRefreshInterval(t){this.intervalTime=t,sessionStorage.setItem("dashboard_interval",t.toString()),this.intervalSubscription&&this.intervalSubscription.unsubscribe(),this.ngZone.runOutsideAngular(()=>{this.intervalSubscription=function(t=0,e=Ca.a){return(!Object(Ra.a)(t)||t<0)&&(t=0),e&&"function"==typeof e.schedule||(e=Ca.a),new In.a(n=>(n.add(e.schedule(Aa,t,{subscriber:n,counter:0,period:t})),n))}(this.intervalTime).subscribe(()=>this.ngZone.run(()=>{this.intervalDataSource.next(this.intervalTime)}))})}getRefreshInterval(){return this.intervalTime}ngOnDestroy(){this.intervalSubscription&&this.intervalSubscription.unsubscribe()}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](s.NgZone))},token:t,providedIn:"root"}),t})();var Ea=n("d+Og");class La{constructor(t,e,n,a,r,i,s,u){this.healthService=t,this.i18n=e,this.authStorageService=n,this.pgCategoryService=a,this.featureToggles=r,this.refreshIntervalService=i,this.dimlessBinary=s,this.dimless=u,this.interval=new gt.a,this.icons=pt.a,this.clientStatsConfig={colors:[{backgroundColor:["--color-cyan","--color-purple"]}]},this.rawCapacityChartConfig={colors:[{backgroundColor:["--color-blue","--color-gray"]}]},this.pgStatusChartConfig={options:{events:[""]}},this.permissions=this.authStorageService.getPermissions(),this.enabledFeature$=this.featureToggles.get()}ngOnInit(){this.getHealth(),this.interval=this.refreshIntervalService.intervalData$.subscribe(()=>{this.getHealth()})}ngOnDestroy(){this.interval.unsubscribe()}getHealth(){this.healthService.getMinimalHealth().subscribe(t=>{this.healthData=t})}prepareReadWriteRatio(t){const e=[],n=[],a=this.healthData.client_perf.write_op_per_sec+this.healthData.client_perf.read_op_per_sec;e.push(`${this.i18n("Reads")}: ${this.dimless.transform(this.healthData.client_perf.read_op_per_sec)} ${this.i18n("/s")}`),n.push(this.calcPercentage(this.healthData.client_perf.read_op_per_sec,a)),e.push(`${this.i18n("Writes")}: ${this.dimless.transform(this.healthData.client_perf.write_op_per_sec)} ${this.i18n("/s")}`),n.push(this.calcPercentage(this.healthData.client_perf.write_op_per_sec,a)),t.labels=e,t.dataset[0].data=n,t.dataset[0].label=`${this.dimless.transform(a)}\n${this.i18n("IOPS")}`}prepareClientThroughput(t){const e=[],n=[],a=this.healthData.client_perf.read_bytes_sec+this.healthData.client_perf.write_bytes_sec;e.push(`${this.i18n("Reads")}: ${this.dimlessBinary.transform(this.healthData.client_perf.read_bytes_sec)}${this.i18n("/s")}`),n.push(this.calcPercentage(this.healthData.client_perf.read_bytes_sec,a)),e.push(`${this.i18n("Writes")}: ${this.dimlessBinary.transform(this.healthData.client_perf.write_bytes_sec)}${this.i18n("/s")}`),n.push(this.calcPercentage(this.healthData.client_perf.write_bytes_sec,a)),t.labels=e,t.dataset[0].data=n,t.dataset[0].label=`${this.dimlessBinary.transform(a).replace(" ","\n")}${this.i18n("/s")}`}prepareRawUsage(t,e){const n=this.calcPercentage(e.df.stats.total_bytes-e.df.stats.total_used_raw_bytes,e.df.stats.total_bytes),a=this.calcPercentage(e.df.stats.total_used_raw_bytes,e.df.stats.total_bytes);t.dataset[0].data=[a,n],t.labels=[`${this.i18n("Used")}: ${this.dimlessBinary.transform(e.df.stats.total_used_raw_bytes)}`,`${this.i18n("Avail.")}: ${this.dimlessBinary.transform(e.df.stats.total_bytes-e.df.stats.total_used_raw_bytes)}`],t.dataset[0].label=`${a}%\nof ${this.dimlessBinary.transform(e.df.stats.total_bytes)}`}preparePgStatus(t,e){const n={};let a=0;X.forEach(e.pg_info.statuses,(t,e)=>{const r=this.pgCategoryService.getTypeByStates(e);X.isUndefined(n[r])&&(n[r]=0),n[r]+=t,a+=t});for(const r of this.pgCategoryService.getAllTypes())X.isUndefined(n[r])&&(n[r]=0);t.dataset[0].data=this.pgCategoryService.getAllTypes().map(t=>this.calcPercentage(n[t],a)),t.labels=[`${this.i18n("Clean")}: ${this.dimless.transform(n.clean)}`,`${this.i18n("Working")}: ${this.dimless.transform(n.working)}`,`${this.i18n("Warning")}: ${this.dimless.transform(n.warning)}`,`${this.i18n("Unknown")}: ${this.dimless.transform(n.unknown)}`],t.dataset[0].label=`${a}\n${this.i18n("PGs")}`}prepareObjects(t,e){const n=e.pg_info.object_stats.num_object_copies,a=this.calcPercentage(n-e.pg_info.object_stats.num_objects_misplaced-e.pg_info.object_stats.num_objects_degraded-e.pg_info.object_stats.num_objects_unfound,n),r=this.calcPercentage(e.pg_info.object_stats.num_objects_misplaced,n),i=this.calcPercentage(e.pg_info.object_stats.num_objects_degraded,n),s=this.calcPercentage(e.pg_info.object_stats.num_objects_unfound,n);t.labels=[`${this.i18n("Healthy")}: ${a}%`,`${this.i18n("Misplaced")}: ${r}%`,`${this.i18n("Degraded")}: ${i}%`,`${this.i18n("Unfound")}: ${s}%`],t.dataset[0].data=[a,r,i,s],t.dataset[0].label=`${this.dimless.transform(e.pg_info.object_stats.num_objects)}\n${this.i18n("objects")}`}isClientReadWriteChartShowable(){return(this.healthData.client_perf.read_op_per_sec||0)+(this.healthData.client_perf.write_op_per_sec||0)>0}calcPercentage(t,e){return X.isNumber(t)&&X.isNumber(e)&&0!==e?Math.round(t/e*100):0}}var Da=s["ɵcrt"]({encapsulation:0,styles:[['cd-info-card[_ngcontent-%COMP%]{padding:0 .5vw}  .pg-status-popover-wrapper{position:relative}  .pg-status-popover-wrapper .popover{position:absolute;width:116%;max-height:20vh;min-width:unset!important;max-width:unset!important}  .pg-status-popover-wrapper .popover .popover-body{max-width:100%;max-height:19vh;font-size:12px}.logs-link[_ngcontent-%COMP%]{text-align:center}.card-text-error[_ngcontent-%COMP%]{display:inline;color:red}.card-text-line-break[_ngcontent-%COMP%]:after{content:"\\a";white-space:pre}.popover-info[_ngcontent-%COMP%]:hover{cursor:pointer}']],data:{}});function Pa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Ma(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](3,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),s["ɵppd"](4,1),(t()(),s["ɵted"](5,null,["",""])),(t()(),s["ɵted"](6,null,[": "," "]))],(function(t,e){var n=s["ɵunv"](e,3,0,t(e,4,0,s["ɵnov"](e.parent.parent.parent.parent.parent.parent,0),e.context.$implicit.severity));t(e,3,0,n)}),(function(t,e){t(e,5,0,e.context.$implicit.type),t(e,6,0,e.context.$implicit.summary.message)}))}function qa(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Pa)),s["ɵdid"](1,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](2,0,null,null,2,"ul",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Ma)),s["ɵdid"](4,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e.parent.parent.parent.parent,7)),t(e,4,0,n.healthData.health.checks)}),null)}function ja(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"i",[["class","fa fa-exclamation-triangle"]],null,null,null,null,null))],null,null)}function Fa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(t()(),s["ɵand"](0,[["healthChecks",2]],null,0,null,qa)),(t()(),s["ɵeld"](2,16777216,null,null,7,"div",[["class","info-card-content-clickable"],["container","body"],["containerClass","info-card-popover-cluster-status"],["placement","bottom"],["triggers",""]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,6).toggle()&&a),a}),null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),s["ɵppd"](5,1),s["ɵdid"](6,212992,[["healthChecksTarget",4]],0,aa.c,[aa.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,ra.a],{popover:[0,"popover"],placement:[1,"placement"],triggers:[2,"triggers"],container:[3,"container"],containerClass:[4,"containerClass"]},null),(t()(),s["ɵted"](7,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,ja)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=s["ɵunv"](e,4,0,t(e,5,0,s["ɵnov"](e.parent.parent.parent.parent,0),n.healthData.health.status));t(e,4,0,a),t(e,6,0,s["ɵnov"](e,1),"bottom","","body","info-card-popover-cluster-status"),t(e,9,0,"HEALTH_OK"!=(null==n.healthData.health?null:n.healthData.health.status))}),(function(t,e){t(e,7,0,e.component.healthData.health.status)}))}function Va(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](3,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),s["ɵppd"](4,1),(t()(),s["ɵted"](5,null,[" "," "]))],(function(t,e){var n=e.component,a=s["ɵunv"](e,3,0,t(e,4,0,s["ɵnov"](e.parent.parent.parent.parent,0),n.healthData.health.status));t(e,3,0,a)}),(function(t,e){t(e,5,0,e.component.healthData.health.status)}))}function Ga(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-info-card",[["cardTitle","Cluster Status"],["class","cd-status-card"],["contentClass","content-highlight"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Fa)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Va)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Cluster Status","content-highlight"),t(e,3,0,(null==n.healthData.health||null==n.healthData.health.checks?null:n.healthData.health.checks.length)>0),t(e,5,0,!(null!=n.healthData.health&&null!=n.healthData.health.checks&&n.healthData.health.checks.length))}),null)}function Ba(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-info-card",[["cardTitle","Hosts"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/hosts"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," total "]))],(function(t,e){t(e,1,0,"Hosts","/hosts","content-highlight")}),(function(t,e){t(e,2,0,e.component.healthData.hosts)}))}function za(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Monitors"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/monitor"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "])),s["ɵppd"](3,1)],(function(t,e){t(e,1,0,"Monitors","/monitor","content-highlight")}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,1),n.healthData.mon_status));t(e,2,0,a)}))}function Ya(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,e.context.$implicit.class)}),(function(t,e){t(e,3,0,e.context.$implicit.content)}))}function Ha(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","OSDs"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/osd"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Ya)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,1,0,"OSDs","/osd","content-highlight"),t(e,3,0,e.context.ngIf)}),null)}function Ua(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[],[[8,"title",0]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,e.context.$implicit.class)}),(function(t,e){t(e,0,0,null!=e.context.$implicit.titleText?e.context.$implicit.titleText:""),t(e,3,0,e.context.$implicit.content)}))}function Wa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"cd-info-card",[["cardTitle","Managers"],["class","cd-status-card"],["contentClass","content-highlight"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵand"](16777216,null,0,2,null,Ua)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵppd"](4,1)],(function(t,e){var n=e.component;t(e,1,0,"Managers","content-highlight");var a=s["ɵunv"](e,3,0,t(e,4,0,s["ɵnov"](e.parent.parent.parent,3),n.healthData.mgr_map));t(e,3,0,a)}),null)}function Ka(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-info-card",[["cardTitle","Object Gateways"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/rgw/daemon"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," total "]))],(function(t,e){t(e,1,0,"Object Gateways","/rgw/daemon","content-highlight")}),(function(t,e){t(e,2,0,e.component.healthData.rgw)}))}function $a(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[],[[8,"title",0]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,e.context.$implicit.class)}),(function(t,e){t(e,0,0,null!=e.context.$implicit.titleText?e.context.$implicit.titleText:""),t(e,3,0,e.context.$implicit.content)}))}function Za(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Metadata Servers"],["class","cd-status-card"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,$a)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,1,0,"Metadata Servers",(e.context.ngIf.length>1?"text-area-size-2":"")+" content-highlight"),t(e,3,0,e.context.ngIf)}),null)}function Ja(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"cd-info-card",[["cardTitle","iSCSI Gateways"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/block/iscsi"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," total "])),(t()(),s["ɵeld"](3,0,null,0,0,"span",[["class","card-text-line-break"]],null,null,null,null,null)),(t()(),s["ɵted"](4,0,[" "," up, "])),(t()(),s["ɵeld"](5,0,null,0,4,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](8,{"card-text-error":0}),(t()(),s["ɵted"](9,null,[""," down"]))],(function(t,e){var n=e.component;t(e,1,0,"iSCSI Gateways","/block/iscsi","content-highlight");var a=t(e,8,0,n.healthData.iscsi_daemons.down>0);t(e,7,0,a)}),(function(t,e){var n=e.component;t(e,2,0,n.healthData.iscsi_daemons.up+n.healthData.iscsi_daemons.down),t(e,4,0,n.healthData.iscsi_daemons.up),t(e,9,0,n.healthData.iscsi_daemons.down)}))}function Qa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,19,"cd-info-group",[["groupTitle","Status"]],null,null,null,fa,ca)),s["ɵdid"](1,49152,null,0,da,[],{groupTitle:[0,"groupTitle"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Ga)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Ba)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,za)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,2,null,Ha)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](10,1),(t()(),s["ɵand"](16777216,null,0,1,null,Wa)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Ka)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,2,null,Za)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](17,1),(t()(),s["ɵand"](16777216,null,0,1,null,Ja)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Status"),t(e,3,0,null==n.healthData.health?null:n.healthData.health.status),t(e,5,0,null!=n.healthData.hosts),t(e,7,0,n.healthData.mon_status);var a=s["ɵunv"](e,9,0,t(e,10,0,s["ɵnov"](e.parent.parent,2),n.healthData.osd_map));t(e,9,0,a),t(e,12,0,n.healthData.mgr_map),t(e,14,0,e.parent.context.ngIf.rgw&&null!=n.healthData.rgw);var r=s["ɵunv"](e,16,0,t(e,17,0,s["ɵnov"](e.parent.parent,4),e.parent.context.ngIf.cephfs&&n.healthData.fs_map));t(e,16,0,r),t(e,19,0,e.parent.context.ngIf.iscsi&&null!=n.healthData.iscsi_daemons)}),null)}function Xa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Raw Capacity"],["class","cd-capacity-card cd-chart-card"],["contentClass","content-chart"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵeld"](2,0,null,0,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.prepareRawUsage(n[0],n[1])&&a),a}),xa,va)),s["ɵdid"](3,638976,null,0,ya,[ba.a,ma.a],{data:[0,"data"],config:[1,"config"],isBytesData:[2,"isBytesData"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"Raw Capacity","content-chart"),t(e,3,0,n.healthData,n.rawCapacityChartConfig,!0)}),null)}function tr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Objects"],["class","cd-capacity-card cd-chart-card"],["contentClass","content-chart"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵeld"](2,0,null,0,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.prepareObjects(n[0],n[1])&&a),a}),xa,va)),s["ɵdid"](3,638976,null,0,ya,[ba.a,ma.a],{data:[0,"data"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"Objects","content-chart"),t(e,3,0,n.healthData)}),null)}function er(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function nr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",": "," "]))],null,(function(t,e){t(e,1,0,e.context.$implicit.key,e.context.$implicit.value)}))}function ar(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,er)),s["ɵdid"](1,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](2,0,null,null,3,"ul",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,nr)),s["ɵdid"](4,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers])],(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e.parent.parent.parent,7)),t(e,4,0,s["ɵunv"](e,4,0,s["ɵnov"](e,5).transform(n.healthData.pg_info.statuses)))}),null)}function rr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"cd-info-card",[["cardTitle","PG Status"],["class","cd-capacity-card cd-chart-card"],["contentClass","content-chart"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).toggle()&&a),a}),la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵand"](0,[["pgStatus",2]],0,0,null,ar)),(t()(),s["ɵeld"](3,0,null,0,4,"div",[["class","pg-status-popover-wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,16777216,null,null,3,"div",[["placement","bottom"],["triggers",""]],null,null,null,null,null)),s["ɵdid"](5,212992,[["pgStatusTarget",4]],0,aa.c,[aa.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,ra.a],{popover:[0,"popover"],placement:[1,"placement"],triggers:[2,"triggers"]},null),(t()(),s["ɵeld"](6,0,null,null,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.preparePgStatus(n[0],n[1])&&a),a}),xa,va)),s["ɵdid"](7,638976,null,0,ya,[ba.a,ma.a],{data:[0,"data"],config:[1,"config"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"PG Status","content-chart"),t(e,5,0,s["ɵnov"](e,2),"bottom",""),t(e,7,0,n.healthData,n.pgStatusChartConfig)}),null)}function ir(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-info-card",[["cardTitle","Pools"],["class","cd-capacity-card"],["contentClass","content-highlight"],["link","/pool"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "]))],(function(t,e){t(e,1,0,"Pools","/pool","content-highlight")}),(function(t,e){t(e,2,0,e.component.healthData.pools.length)}))}function sr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","PGs per OSD"],["class","cd-capacity-card"],["contentClass","content-highlight"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "])),s["ɵppd"](3,1)],(function(t,e){t(e,1,0,"PGs per OSD","content-highlight")}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,5),n.healthData.pg_info.pgs_per_osd));t(e,2,0,a)}))}function ur(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"cd-info-group",[["groupTitle","Capacity"]],null,null,null,fa,ca)),s["ɵdid"](1,49152,null,0,da,[],{groupTitle:[0,"groupTitle"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Xa)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,tr)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,rr)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,ir)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,sr)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Capacity"),t(e,3,0,n.healthData.df),t(e,5,0,null!=(null==n.healthData.pg_info||null==n.healthData.pg_info.object_stats?null:n.healthData.pg_info.object_stats.num_objects)),t(e,7,0,n.healthData.pg_info),t(e,9,0,n.healthData.pools),t(e,11,0,n.healthData.pg_info)}),null)}function or(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Client Read/Write"],["class","cd-performance-card cd-chart-card"],["contentClass","content-chart"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵeld"](2,0,null,0,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.prepareReadWriteRatio(n[0],n[1])&&a),a}),xa,va)),s["ɵdid"](3,638976,null,0,ya,[ba.a,ma.a],{data:[0,"data"],config:[1,"config"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"Client Read/Write","content-chart"),t(e,3,0,n.healthData,n.clientStatsConfig)}),null)}function lr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Client Throughput"],["class","cd-performance-card cd-chart-card"],["contentClass","content-chart"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵeld"](2,0,null,0,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.prepareClientThroughput(n[0],n[1])&&a),a}),xa,va)),s["ɵdid"](3,638976,null,0,ya,[ba.a,ma.a],{data:[0,"data"],config:[1,"config"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"Client Throughput","content-chart"),t(e,3,0,n.healthData,n.clientStatsConfig)}),null)}function dr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Recovery Throughput"],["class","cd-performance-card"],["contentClass","content-highlight"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "])),s["ɵppd"](3,1)],(function(t,e){t(e,1,0,"Recovery Throughput","content-highlight")}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,6),n.healthData.client_perf.recovering_bytes_per_sec))+"/s";t(e,2,0,a)}))}function cr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-info-card",[["cardTitle","Scrubbing"],["class","cd-performance-card"],["contentClass","content-highlight"]],null,null,null,la,sa)),s["ɵdid"](1,49152,null,0,ia,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "]))],(function(t,e){t(e,1,0,"Scrubbing","content-highlight")}),(function(t,e){t(e,2,0,e.component.healthData.scrub_status)}))}function fr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"cd-info-group",[["groupTitle","Performance"]],null,null,null,fa,ca)),s["ɵdid"](1,49152,null,0,da,[],{groupTitle:[0,"groupTitle"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,or)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,lr)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,dr)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,cr)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Performance"),t(e,3,0,n.healthData.client_perf),t(e,5,0,n.healthData.client_perf),t(e,7,0,n.healthData.client_perf),t(e,9,0,n.healthData.scrub_status)}),null)}function hr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,9,"p",[["class","logs-link"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1),(t()(),s["ɵted"](-1,null,[" See "])),(t()(),s["ɵeld"](7,0,null,null,2,"a",[["routerLink","/logs"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,8).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](8,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Logs"])),(t()(),s["ɵted"](-1,null,[" for more details."]))],(function(t,e){var n=t(e,5,0,e.component.icons.infoCircle);t(e,4,0,n),t(e,8,0,"/logs")}),(function(t,e){t(e,7,0,s["ɵnov"](e,8).target,s["ɵnov"](e,8).href)}))}function gr(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,hr)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component.permissions.log.read)}),null)}function pr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"div",[["class","container-fluid"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Qa)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ur)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fr)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[["logsLink",2]],null,0,null,gr))],(function(t,e){var n=e.component;t(e,2,0,(null==n.healthData.health?null:n.healthData.health.status)||n.healthData.mon_status||n.healthData.osd_map||n.healthData.mgr_map||null!=n.healthData.hosts||null!=n.healthData.rgw||n.healthData.fs_map||null!=n.healthData.iscsi_daemons),t(e,4,0,n.healthData.pools||n.healthData.df||n.healthData.pg_info),t(e,6,0,n.healthData.client_perf||n.healthData.scrub_status)}),null)}function br(t){return s["ɵvid"](0,[s["ɵpid"](0,Zt,[]),s["ɵpid"](0,_a,[fe.a]),s["ɵpid"](0,Ta,[fe.a]),s["ɵpid"](0,wa,[fe.a]),s["ɵpid"](0,Oa,[fe.a]),s["ɵpid"](0,ma.a,[Sa.a]),s["ɵpid"](0,ba.a,[Sa.a]),(t()(),s["ɵand"](16777216,null,null,2,null,pr)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpid"](131072,i.AsyncPipe,[s.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,8,0,s["ɵunv"](e,8,0,s["ɵnov"](e,9).transform(n.healthData&&n.enabledFeature$)))}),null)}class mr{constructor(t){this.refreshIntervalService=t,this.intervalList={"5 s":5e3,"10 s":1e4,"15 s":15e3,"30 s":3e4,"1 min":6e4,"3 min":18e4,"5 min":3e5},this.intervalKeys=Object.keys(this.intervalList)}ngOnInit(){this.selectedInterval=this.refreshIntervalService.getRefreshInterval()||5e3}changeRefreshInterval(t){this.refreshIntervalService.setRefreshInterval(t)}}var yr=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function vr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){var n=e.component;t(e,1,0,n.intervalList[e.context.$implicit]),t(e,2,0,n.intervalList[e.context.$implicit])}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function xr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,13,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,12,"div",[["class","float-right d-inline-flex"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"label",[["class","col-form-label my-0 mx-2"],["for","refreshInterval"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Refresh"])),(t()(),s["ɵeld"](5,0,null,null,9,"select",[["class","form-control custom-select"],["id","refreshInterval"],["name","refreshInterval"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"ngModelChange"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,6).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,6).onTouched()&&a),"change"===e&&(a=!1!==r.changeRefreshInterval(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.selectedInterval=n)&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](8,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](10,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](11,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](12,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,vr)),s["ɵdid"](14,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,8,0,"refreshInterval",n.selectedInterval),t(e,14,0,n.intervalKeys)}),(function(t,e){t(e,5,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending,s["ɵnov"](e,12).validClass,s["ɵnov"](e,12).invalidClass)}))}class _r{constructor(){this.hasGrafana=!1}ngOnInit(){}}var Tr=s["ɵcrt"]({encapsulation:0,styles:[["div[_ngcontent-%COMP%]{padding-top:20px}"]],data:{}});function wr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Health"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-health",[],null,null,null,br,Da)),s["ɵdid"](5,245760,null,0,La,[Ia,fe.a,J.a,Ea.a,We.a,ka,ba.a,ma.a],null,null),(t()(),s["ɵeld"](6,0,null,0,1,"tab",[["heading","Statistics"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](7,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null)],(function(t,e){t(e,3,0,"Health"),t(e,5,0),t(e,7,0,"Statistics")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,6,0,s["ɵnov"](e,7).id,s["ɵnov"](e,7).active,s["ɵnov"](e,7).addClass,s["ɵnov"](e,7).role,s["ɵnov"](e,7).ariaLabelledby)}))}function Or(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-health",[],null,null,null,br,Da)),s["ɵdid"](1,245760,null,0,La,[Ia,fe.a,J.a,Ea.a,We.a,ka,ba.a,ma.a],null,null)],(function(t,e){t(e,1,0)}),null)}function Sr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"cd-refresh-selector",[],null,null,null,xr,yr)),s["ɵdid"](2,114688,null,0,mr,[ka],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,wr)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Or)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,4,0,n.hasGrafana),t(e,6,0,!n.hasGrafana)}),null)}function Ir(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-dashboard",[],null,null,null,Sr,Tr)),s["ɵdid"](1,114688,null,0,_r,[],null,null)],(function(t,e){t(e,1,0)}),null)}var Nr=s["ɵccf"]("cd-dashboard",_r,Ir,{},{},[]),Cr=n("a278"),Rr=n("insk"),Ar=n("cUpR"),kr=n("25BL"),Er=n("uIqm"),Lr=n("NUGo"),Dr=n("S7zO"),Pr=n("DqMs"),Mr=n("/NlG"),qr=n("i4WA"),jr=n("6qls");class Fr{}var Vr=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Gr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["Orchestrator is not available. Please consult the "])),(t()(),s["ɵeld"](3,0,null,0,1,"cd-doc",[["section","orch"]],null,null,null,qr.b,qr.a)),s["ɵdid"](4,114688,null,0,jr.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,0,[" on how to configure and enable the functionality."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"orch")}),null)}let Br=(()=>{class t{constructor(t){this.http=t,this.url="api/orchestrator"}status(){return this.http.get(this.url+"/status")}identifyDevice(t,e,n){return this.http.post(this.url+"/identify_device",{hostname:t,device:e,duration:n})}inventoryList(t,e){let n=new et.h;return t&&(n=n.append("hostname",t)),e&&(n=n.append("refresh",X.toString(e))),this.http.get(this.url+"/inventory",{params:n})}inventoryDeviceList(t,e){return this.inventoryList(t,e).pipe(Object(Rn.a)(t=>{const e=X.flatMap(t,t=>t.devices.map(e=>(e.hostname=t.name,e.uid=e.device_id?e.device_id:`${e.hostname}-${e.path}`,e)));return Object(Sn.a)(e)}))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();var zr=n("Rf2I"),Yr=n("x38r"),Hr=n("vCyI");class Ur{constructor(t,e,n,a,r,i){this.authStorageService=t,this.dimlessBinary=e,this.i18n=n,this.modalService=a,this.notificationService=r,this.orchService=i,this.devices=[],this.hiddenColumns=[],this.filterColumns=["hostname","human_readable_type","available","sys_api.vendor","sys_api.model","sys_api.size"],this.selectionType=void 0,this.filterChange=new s.EventEmitter,this.fetchInventory=new s.EventEmitter,this.icons=pt.a,this.columns=[],this.selection=new Hr.a}ngOnInit(){this.permission=this.authStorageService.getPermissions().osd,this.tableActions=[{permission:"update",icon:pt.a.show,click:()=>this.identifyDevice(),name:this.i18n("Identify"),disable:()=>!this.selection.hasSingleSelection,canBePrimary:t=>!t.hasSingleSelection,visible:()=>X.isString(this.selectionType)}];const t=[{name:this.i18n("Hostname"),prop:"hostname",flexGrow:1},{name:this.i18n("Device path"),prop:"path",flexGrow:1},{name:this.i18n("Type"),prop:"human_readable_type",flexGrow:1,cellTransformation:Yr.a.badge,customTemplateConfig:{map:{hdd:{value:"HDD",class:"badge-hdd"},ssd:{value:"SSD",class:"badge-ssd"}}}},{name:this.i18n("Available"),prop:"available",flexGrow:1,cellClass:"text-center",cellTransformation:Yr.a.checkIcon},{name:this.i18n("Vendor"),prop:"sys_api.vendor",flexGrow:1},{name:this.i18n("Model"),prop:"sys_api.model",flexGrow:1},{name:this.i18n("Size"),prop:"sys_api.size",flexGrow:1,pipe:this.dimlessBinary},{name:this.i18n("OSDs"),prop:"osd_ids",flexGrow:1,cellTransformation:Yr.a.badge,customTemplateConfig:{class:"badge-dark",prefix:"osd."}}];this.columns=t.filter(t=>!this.hiddenColumns.includes(t.prop)),X.forEach(this.filterColumns,t=>{const e=X.find(this.columns,{prop:t});e&&(e.filterable=!0)}),this.fetchInventory.observers.length>0&&(this.fetchInventorySub=this.table.fetchData.subscribe(()=>{this.fetchInventory.emit()}))}ngOnDestroy(){this.fetchInventorySub&&this.fetchInventorySub.unsubscribe()}onColumnFiltersChanged(t){this.filterChange.emit(t)}updateSelection(t){this.selection=t}identifyDevice(){const t=this.selection.first(),e=t.hostname,n=t.path||t.device_id;this.modalService.show(zr.a,{initialState:{titleText:this.i18n("Identify device {{device}}",{device:n}),message:this.i18n("Please enter the duration how long to blink the LED."),fields:[{type:"select",name:"duration",value:300,required:!0,typeConfig:{options:[{text:this.i18n("1 minute"),value:60},{text:this.i18n("2 minutes"),value:120},{text:this.i18n("5 minutes"),value:300},{text:this.i18n("10 minutes"),value:600},{text:this.i18n("15 minutes"),value:900}]}}],submitButtonText:this.i18n("Execute"),onSubmit:t=>{this.orchService.identifyDevice(e,n,t.duration).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Identifying '{{device}}' started on host '{{hostname}}'",{hostname:e,device:n}))})}}})}}var Wr=s["ɵcrt"]({encapsulation:0,styles:[[".filter[_ngcontent-%COMP%]{padding-right:8px}.fa-stack[_ngcontent-%COMP%]{font-size:.79rem}.fa-stack[_ngcontent-%COMP%]   .fa-stack-1x[_ngcontent-%COMP%]{margin-left:8px;margin-top:5px}"]],data:{}});function Kr(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{table:0}),(t()(),s["ɵeld"](1,0,null,null,3,"cd-table",[["columnMode","flex"],["identifier","uid"]],null,[[null,"updateSelection"],[null,"columnFiltersChanged"]],(function(t,e,n){var a=!0,r=t.component;return"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),"columnFiltersChanged"===e&&(a=!1!==r.onColumnFiltersChanged(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](2,2867200,[[1,4]],0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],searchField:[3,"searchField"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],forceIdentifier:[6,"forceIdentifier"],selectionType:[7,"selectionType"]},{updateSelection:"updateSelection",columnFiltersChanged:"columnFiltersChanged"}),(t()(),s["ɵeld"](3,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](4,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.devices,n.columns,"flex",!1,!1,"uid",!0,n.selectionType),t(e,4,0,n.permission,n.selection,n.tableActions)}),null)}var $r=n("PqYM");class Zr{constructor(t,e){this.orchService=t,this.ngZone=e,this.reloadInterval=5e3,this.firstRefresh=!0,this.icons=pt.a,this.hasOrchestrator=!1,this.showDocPanel=!1,this.devices=[]}ngOnInit(){this.orchService.status().subscribe(t=>{this.hasOrchestrator=t.available,this.showDocPanel=!t.available,t.available&&this.ngZone.runOutsideAngular(()=>{this.reloadSubscriber=Object($r.a)(this.reloadInterval,this.reloadInterval).subscribe(()=>{this.ngZone.run(()=>{this.getInventory(!1)})})})})}ngOnDestroy(){this.reloadSubscriber&&this.reloadSubscriber.unsubscribe()}ngOnChanges(){this.hasOrchestrator&&(this.devices=[],this.getInventory(!1))}getInventory(t){""!==this.hostname&&this.orchService.inventoryDeviceList(this.hostname,t).subscribe(t=>{this.devices=t},()=>{this.devices=[]})}refresh(){this.getInventory(!this.firstRefresh),this.firstRefresh=!1}}var Jr=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Qr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,Gr,Vr)),s["ɵdid"](1,49152,null,0,Fr,[],null,null)],null,null)}function Xr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Devices"])),(t()(),s["ɵeld"](3,0,null,null,4,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,3,"div",[["class","col-md-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,2,"cd-inventory-devices",[["selectionType","single"]],null,[[null,"fetchInventory"]],(function(t,e,n){var a=!0;return"fetchInventory"===e&&(a=!1!==t.component.refresh()&&a),a}),Kr,Wr)),s["ɵdid"](6,245760,null,0,Ur,[J.a,ba.a,fe.a,Ct.b,bt.a,Br],{devices:[0,"devices"],hiddenColumns:[1,"hiddenColumns"],selectionType:[2,"selectionType"]},{fetchInventory:"fetchInventory"}),s["ɵpad"](7,1)],(function(t,e){var n=e.component,a=n.devices,r=void 0===n.hostname?s["ɵEMPTY_ARRAY"]:t(e,7,0,"hostname");t(e,6,0,a,r,"single")}),null)}function ti(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Qr)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Xr)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.showDocPanel),t(e,3,0,n.hasOrchestrator)}),null)}function ei(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-inventory",[],null,null,null,ti,Jr)),s["ɵdid"](1,770048,null,0,Zr,[Br,s.NgZone],null,null)],(function(t,e){t(e,1,0)}),null)}var ni=s["ɵccf"]("cd-inventory",Zr,ei,{hostname:"hostname"},{},[]);let ai=(()=>{class t{constructor(t){this.http=t,this.url="api/service"}list(t){const e=t?{params:(new et.h).set("service_name",t)}:{};return this.http.get(this.url,e)}getDaemons(t){return this.http.get(`${this.url}/${t}/daemons`)}create(t){return this.http.post(this.url,{service_name:t.service_id?`${t.service_type}.${t.service_id}`:t.service_type,service_spec:t},{observe:"response"})}delete(t){return this.http.delete(`${this.url}/${t}`,{observe:"response"})}getKnownTypes(){return this.http.get(this.url+"/known_types")}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})(),ri=(()=>{class t{constructor(){}calculateAdditionalData(t){if(!t.life_expectancy_min||!t.life_expectancy_max)return t.state="unknown",t;const e=t=>!!Number.parseFloat(t),n=(t,n)=>t&&n&&e(t)&&e(n)?ye.duration(ye(t).diff(ye(n))).asWeeks():null,a=ye.duration(ye(ye.now()).diff(ye(t.life_expectancy_stamp))).asWeeks(),r=n(t.life_expectancy_max,t.life_expectancy_stamp),i=n(t.life_expectancy_min,t.life_expectancy_stamp);return t.state=a>1?"stale":null!==r&&r<=2?"bad":null!==i&&i<=4?"warning":"good",t.life_expectancy_weeks={max:null!==r?Math.round(r):null,min:null!==i?Math.round(i):null},t}readable(t){return t.readableDaemons=t.daemons.join(" "),t}prepareDevice(t){return this.readable(this.calculateAdditionalData(t))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})(),ii=(()=>{class t{constructor(t,e){this.http=t,this.deviceService=e,this.baseURL="api/host"}list(){return this.http.get(this.baseURL)}create(t){return this.http.post(this.baseURL,{hostname:t},{observe:"response"})}delete(t){return this.http.delete(`${this.baseURL}/${t}`,{observe:"response"})}getDevices(t){return this.http.get(`${this.baseURL}/${t}/devices`).pipe(Object(Ne.a)(t=>t.map(t=>this.deviceService.prepareDevice(t))))}getSmartData(t){return this.http.get(`${this.baseURL}/${t}/smart`)}getDaemons(t){return this.http.get(`${this.baseURL}/${t}/daemons`)}getLabels(){return this.http.get("ui-api/host/labels")}update(t,e){return this.http.put(`${this.baseURL}/${t}`,{labels:e})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](ri))},token:t,providedIn:ue.a}),t})();class si{constructor(t,e,n,a){this.i18n=t,this.hostService=e,this.cephServiceService=n,this.orchService=a,this.daemons=[],this.columns=[],this.hasOrchestrator=!1,this.showDocPanel=!1}ngOnInit(){this.columns=[{name:this.i18n("Hostname"),prop:"hostname",flexGrow:1,filterable:!0},{name:this.i18n("Daemon type"),prop:"daemon_type",flexGrow:1,filterable:!0},{name:this.i18n("Daemon ID"),prop:"daemon_id",flexGrow:1,filterable:!0},{name:this.i18n("Container ID"),prop:"container_id",flexGrow:3,filterable:!0,cellTransformation:Yr.a.truncate,customTemplateConfig:{length:12}},{name:this.i18n("Container Image name"),prop:"container_image_name",flexGrow:3,filterable:!0},{name:this.i18n("Container Image ID"),prop:"container_image_id",flexGrow:3,filterable:!0,cellTransformation:Yr.a.truncate,customTemplateConfig:{length:12}},{name:this.i18n("Version"),prop:"version",flexGrow:1,filterable:!0},{name:this.i18n("Status"),prop:"status_desc",flexGrow:1,filterable:!0,cellTemplate:this.statusTpl},{name:this.i18n("Last Refreshed"),prop:"last_refresh",flexGrow:2}],this.orchService.status().subscribe(t=>{this.hasOrchestrator=t.available,this.showDocPanel=!t.available})}ngOnChanges(){X.isUndefined(this.daemonsTable)||this.daemonsTable.reloadData()}ngAfterViewInit(){this.daemonsTableTplsSub=this.daemonsTableTpls.changes.subscribe(t=>{this.daemonsTable=t.first})}ngOnDestroy(){this.daemonsTableTplsSub&&this.daemonsTableTplsSub.unsubscribe()}getStatusClass(t){return X.get({"-1":"badge-danger",0:"badge-warning",1:"badge-success"},t,"badge-dark")}getDaemons(t){let e;if(this.hostname)e=this.hostService.getDaemons(this.hostname);else{if(!this.serviceName)return void(this.daemons=[]);e=this.cephServiceService.getDaemons(this.serviceName)}e.subscribe(t=>{this.daemons=t},()=>{this.daemons=[],t.error()})}}var ui=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function oi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,Gr,Vr)),s["ɵdid"](1,49152,null,0,Fr,[],null,null)],null,null)}function li(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(t,e,n){var a=!0;return"fetchData"===e&&(a=!1!==t.component.getDaemons(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](1,2867200,[[2,4],["daemonsTable",4]],0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"})],(function(t,e){var n=e.component;t(e,1,0,n.daemons,n.columns,"flex",5e3)}),null)}function di(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[["class","badge"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,"badge",e.component.getStatusClass(e.context.row.status))}),(function(t,e){t(e,3,0,e.context.row.status_desc)}))}function ci(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{statusTpl:0}),s["ɵqud"](671088640,2,{daemonsTableTpls:1}),(t()(),s["ɵand"](16777216,null,null,1,null,oi)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,li)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[1,2],["statusTpl",2]],null,0,null,di))],(function(t,e){var n=e.component;t(e,3,0,n.showDocPanel),t(e,5,0,n.hasOrchestrator)}),null)}var fi=n("sLuX"),hi=n("FSuO"),gi=n("QC43"),pi=n("XFyV"),bi=n("zWsK");let mi=(()=>{class t{constructor(t,e,n){this.http=t,this.i18n=e,this.deviceService=n,this.path="api/osd",this.osdRecvSpeedModalPriorities={KNOWN_PRIORITIES:[{name:null,text:this.i18n("-- Select the priority --"),values:{osd_max_backfills:null,osd_recovery_max_active:null,osd_recovery_max_single_start:null,osd_recovery_sleep:null}},{name:"low",text:this.i18n("Low"),values:{osd_max_backfills:1,osd_recovery_max_active:1,osd_recovery_max_single_start:1,osd_recovery_sleep:.5}},{name:"default",text:this.i18n("Default"),values:{osd_max_backfills:1,osd_recovery_max_active:3,osd_recovery_max_single_start:1,osd_recovery_sleep:0}},{name:"high",text:this.i18n("High"),values:{osd_max_backfills:4,osd_recovery_max_active:4,osd_recovery_max_single_start:4,osd_recovery_sleep:0}}]}}create(t){const e={method:"drive_groups",data:t,tracking_id:X.join(X.map(t,"service_id"),", ")};return this.http.post(this.path,e,{observe:"response"})}getList(){return this.http.get(""+this.path)}getDetails(t){return this.http.get(`${this.path}/${t}`)}getSmartData(t){return this.http.get(`${this.path}/${t}/smart`)}scrub(t,e){return this.http.post(`${this.path}/${t}/scrub?deep=${e}`,null)}getFlags(){return this.http.get(this.path+"/flags")}updateFlags(t){return this.http.put(this.path+"/flags",{flags:t})}updateIndividualFlags(t,e){return this.http.put(this.path+"/flags/individual",{flags:t,ids:e})}markOut(t){return this.http.post(`${this.path}/${t}/mark_out`,null)}markIn(t){return this.http.post(`${this.path}/${t}/mark_in`,null)}markDown(t){return this.http.post(`${this.path}/${t}/mark_down`,null)}reweight(t,e){return this.http.post(`${this.path}/${t}/reweight`,{weight:e})}update(t,e){return this.http.put(`${this.path}/${t}`,{device_class:e})}markLost(t){return this.http.post(`${this.path}/${t}/mark_lost`,null)}purge(t){return this.http.post(`${this.path}/${t}/purge`,null)}destroy(t){return this.http.post(`${this.path}/${t}/destroy`,null)}delete(t,e,n){return this.http.delete(`${this.path}/${t}`,{observe:"response",params:{preserve_id:e?"true":"false",force:n?"true":"false"}})}safeToDestroy(t){return this.http.get(`${this.path}/safe_to_destroy?ids=${t}`)}safeToDelete(t){return this.http.get(`${this.path}/safe_to_delete?svc_ids=${t}`)}getDevices(t){return this.http.get(`${this.path}/${t}/devices`).pipe(Object(Ne.a)(t=>t.map(t=>this.deviceService.prepareDevice(t))))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](fe.a),s["ɵɵinject"](ri))},token:t,providedIn:ue.a}),t})();class yi{constructor(t,e,n){this.i18n=t,this.osdService=e,this.hostService=n,this.osdId=null,this.hostname=null,this.loading=!1,this.incompatible=!1,this.error=!1,this.data={},this.isEmpty=X.isEmpty}isSmartError(t){return void 0!==X.get(t,"error")}isNvmeSmartData(t){return"nvme"===X.get(t,"device.protocol","").toLowerCase()}isHddSmartData(t){return"ata"===X.get(t,"device.protocol","").toLowerCase()}fetchData(t){const e={};X.each(t,(t,n)=>{if(this.isSmartError(t)){let a="";a=this.i18n(-22===t.smartctl_error_code?"Smartctl has received an unknown argument (error code {{code}}). You may be using an incompatible version of smartmontools. Version >= 7.0 of smartmontools is required to successfully retrieve data.":"An error with error code {{code}} occurred.",{code:t.smartctl_error_code}),e[n]={error:t.error,smartctl_error_code:t.smartctl_error_code,smartctl_output:t.smartctl_output,userMessage:a,device:t.dev,identifier:t.nvme_vendor}}else 1!==t.json_format_version[0]?this.incompatible=!0:this.isHddSmartData(t)?e[n]=this.extractHddData(t):this.isNvmeSmartData(t)&&(e[n]=this.extractNvmeData(t))}),this.data=e,this.loading=!1}extractNvmeData(t){return{info:X.omitBy(t,(t,e)=>["nvme_smart_health_information_log"].includes(e)),smart:{nvmeData:t.nvme_smart_health_information_log},device:t.device.name,identifier:t.serial_number}}extractHddData(t){const e=X.omitBy(t,(t,e)=>["ata_smart_attributes","ata_smart_selective_self_test_log","ata_smart_data"].includes(e));return{info:e,smart:{attributes:t.ata_smart_attributes,data:t.ata_smart_data},device:e.device.name,identifier:e.serial_number}}updateData(){this.loading=!0,null!==this.osdId?this.osdService.getSmartData(this.osdId).subscribe(this.fetchData.bind(this),t=>{t.preventDefault(),this.error=t,this.loading=!1}):null!==this.hostname&&this.hostService.getSmartData(this.hostname).subscribe(this.fetchData.bind(this),t=>{t.preventDefault(),this.error=t,this.loading=!1})}ngOnInit(){this.smartDataColumns=[{prop:"id",name:this.i18n("ID")},{prop:"name",name:this.i18n("Name")},{prop:"raw.value",name:this.i18n("Raw")},{prop:"thresh",name:this.i18n("Threshold")},{prop:"value",name:this.i18n("Value")},{prop:"when_failed",name:this.i18n("When Failed")},{prop:"worst",name:this.i18n("Worst")}]}ngOnChanges(t){this.data={},t.osdId?this.osdId=t.osdId.currentValue:t.hostname&&(this.hostname=t.hostname.currentValue),this.updateData()}}var vi=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function xi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["Failed to retrieve SMART data."]))],(function(t,e){t(e,1,0,"error")}),null)}function _i(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["The data received has the JSON format version 2.x and is currently incompatible with the dashboard."]))],(function(t,e){t(e,1,0,"warning")}),null)}function Ti(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["No SMART data available."]))],(function(t,e){t(e,1,0,"info")}),null)}function wi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"cd-alert-panel",[["id","alert-error"],["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](2,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](3,0,["",""]))],(function(t,e){t(e,2,0,"warning")}),(function(t,e){t(e,3,0,e.parent.context.$implicit.value.userMessage)}))}function Oi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["id","alert-self-test-unknown"],["size","slim"],["title","SMART overall-health self-assessment test result"],["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{title:[0,"title"],type:[1,"type"],size:[2,"size"]},null),(t()(),s["ɵted"](-1,0,["unknown"]))],(function(t,e){t(e,1,0,"SMART overall-health self-assessment test result","warning","slim")}),null)}function Si(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"cd-alert-panel",[["id","alert-self-test-passed"],["size","slim"],["title","SMART overall-health self-assessment test result"],["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](2,114688,null,0,Mr.a,[fe.a],{title:[0,"title"],type:[1,"type"],size:[2,"size"]},null),(t()(),s["ɵted"](-1,0,["passed"]))],(function(t,e){t(e,2,0,"SMART overall-health self-assessment test result","info","slim")}),null)}function Ii(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["id","alert-self-test-failed"],["size","slim"],["title","SMART overall-health self-assessment test result"],["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{title:[0,"title"],type:[1,"type"],size:[2,"size"]},null),(t()(),s["ɵted"](-1,0,["failed"]))],(function(t,e){t(e,1,0,"SMART overall-health self-assessment test result","warning","slim")}),null)}function Ni(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Si)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["selfTestFailed",2]],null,0,null,Ii))],(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.info.smart_status.passed,s["ɵnov"](e,2))}),null)}function Ci(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,2,null,Oi)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),s["ɵppd"](2,2),(t()(),s["ɵand"](0,[["hasSmartStatus",2]],null,0,null,Ni))],(function(t,e){var n=e.component,a=s["ɵunv"](e,1,0,t(e,2,0,s["ɵnov"](e.parent.parent.parent.parent.parent,0),null==e.parent.context.$implicit.value.info?null:e.parent.context.$implicit.value.info.smart_status,n.isEmpty));t(e,1,0,a,s["ɵnov"](e,3))}),null)}function Ri(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[],null,null,null,fi.b,fi.a)),s["ɵdid"](1,638976,null,0,hi.a,[xe.a],{data:[0,"data"],renderObjects:[1,"renderObjects"]},null)],(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.info,!0)}),null)}function Ai(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["id","alert-device-info-unavailable"],["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["No device information available for this device."]))],(function(t,e){t(e,1,0,"info")}),null)}function ki(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table",[["updateSelectionOnRefresh","never"]],null,null,null,kr.b,kr.a)),s["ɵdid"](1,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],updateSelectionOnRefresh:[2,"updateSelectionOnRefresh"]},null)],(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.smart.attributes.table,e.component.smartDataColumns,"never")}),null)}function Ei(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[["updateSelectionOnRefresh","never"]],null,null,null,fi.b,fi.a)),s["ɵdid"](1,638976,null,0,hi.a,[xe.a],{data:[0,"data"],renderObjects:[1,"renderObjects"]},null)],(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.smart.nvmeData,!0)}),null)}function Li(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["id","alert-device-smart-data-unavailable"],["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["No SMART data available for this device."]))],(function(t,e){t(e,1,0,"info")}),null)}function Di(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,[[1,4],["innerTabset",4]],0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,7,"tab",[["heading","Device Information"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,2,null,Ri)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](6,2),(t()(),s["ɵand"](16777216,null,null,2,null,Ai)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](9,2),(t()(),s["ɵeld"](10,0,null,0,7,"tab",[["heading","SMART"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](11,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ki)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ei)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Li)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Device Information");var a=!s["ɵunv"](e,5,0,t(e,6,0,s["ɵnov"](e.parent.parent.parent.parent.parent,0),e.parent.context.$implicit.value.info,n.isEmpty));t(e,5,0,a);var r=s["ɵunv"](e,8,0,t(e,9,0,s["ɵnov"](e.parent.parent.parent.parent.parent,0),e.parent.context.$implicit.value.info,n.isEmpty));t(e,8,0,r),t(e,11,0,"SMART"),t(e,13,0,null==e.parent.context.$implicit.value.smart?null:e.parent.context.$implicit.value.smart.attributes),t(e,15,0,null==e.parent.context.$implicit.value.smart?null:e.parent.context.$implicit.value.smart.nvmeData),t(e,17,0,!(null!=e.parent.context.$implicit.value.smart&&e.parent.context.$implicit.value.smart.attributes||null!=e.parent.context.$implicit.value.smart&&e.parent.context.$implicit.value.smart.nvmeData))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,10,0,s["ɵnov"](e,11).id,s["ɵnov"](e,11).active,s["ɵnov"](e,11).addClass,s["ɵnov"](e,11).role,s["ɵnov"](e,11).ariaLabelledby)}))}function Pi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"tab",[],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,wi)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["noError",2]],null,0,null,Ci)),(t()(),s["ɵand"](16777216,null,null,3,null,Di)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](7,2),s["ɵppd"](8,2)],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit.value.device+" ("+e.context.$implicit.value.identifier+")"),t(e,3,0,e.context.$implicit.value.error,s["ɵnov"](e,4));var a=!s["ɵunv"](e,6,0,t(e,7,0,s["ɵnov"](e.parent.parent.parent.parent,0),e.context.$implicit.value.info,n.isEmpty))||!s["ɵunv"](e,6,0,t(e,8,0,s["ɵnov"](e.parent.parent.parent.parent,0),e.context.$implicit.value.smart,n.isEmpty));t(e,6,0,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function Mi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](2,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵand"](16777216,null,0,2,null,Pi)),s["ɵdid"](4,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers])],(function(t,e){var n=e.component;t(e,4,0,s["ɵunv"](e,4,0,s["ɵnov"](e,5).transform(n.data)))}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).clazz)}))}function qi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,Ti)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](3,2),(t()(),s["ɵand"](16777216,null,null,2,null,Mi)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](6,2),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent,0),n.data,n.isEmpty));t(e,2,0,a);var r=!s["ɵunv"](e,5,0,t(e,6,0,s["ɵnov"](e.parent.parent,0),n.data,n.isEmpty));t(e,5,0,r)}),null)}function ji(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,xi)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_i)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,qi)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.error),t(e,4,0,n.incompatible),t(e,6,0,!n.error&&!n.incompatible)}),null)}function Fi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,gi.b,gi.a)),s["ɵdid"](1,49152,null,0,pi.a,[],null,null),(t()(),s["ɵted"](-1,0,["SMART data is loading."]))],null,null)}function Vi(t){return s["ɵvid"](0,[s["ɵpid"](0,bi.b,[]),s["ɵqud"](671088640,1,{innerTabset:0}),(t()(),s["ɵand"](16777216,null,null,1,null,ji)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["isLoading",2]],null,0,null,Fi))],(function(t,e){t(e,3,0,!e.component.loading,s["ɵnov"](e,4))}),null)}class Gi{constructor(t,e,n,a){this.hostService=t,this.i18n=e,this.datePipe=n,this.osdService=a,this.hostname="",this.osdId=null,this.devices=null,this.columns=[],this.translationMapping={"=1":"# week",other:"# weeks"}}ngOnInit(){this.columns=[{prop:"devid",name:this.i18n("Device ID"),minWidth:200},{prop:"state",name:this.i18n("State of Health"),flexGrow:1,cellTransformation:Yr.a.badge,customTemplateConfig:{map:{good:{value:this.i18n("Good"),class:"badge-success"},warning:{value:this.i18n("Warning"),class:"badge-warning"},bad:{value:this.i18n("Bad"),class:"badge-danger"},stale:{value:this.i18n("Stale"),class:"badge-info"},unknown:{value:this.i18n("Unknown"),class:"badge-dark"}}}},{prop:"life_expectancy_weeks",name:this.i18n("Life Expectancy"),cellTemplate:this.lifeExpectancyTemplate},{prop:"life_expectancy_stamp",name:this.i18n("Prediction Creation Date"),cellTemplate:this.lifeExpectancyTimestampTemplate,pipe:this.datePipe,isHidden:!0},{prop:"location",name:this.i18n("Device Name"),cellTemplate:this.locationTemplate},{prop:"readableDaemons",name:this.i18n("Daemons")}]}ngOnChanges(){const t=t=>this.devices=t;this.hostname?this.hostService.getDevices(this.hostname).subscribe(t):null!==this.osdId&&this.osdService.getDevices(this.osdId).subscribe(t)}}var Bi=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function zi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table",[],null,null,null,kr.b,kr.a)),s["ɵdid"](1,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.devices,n.columns)}),null)}function Yi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["Neither hostname nor OSD ID given"]))],(function(t,e){t(e,1,0,"warning")}),null)}function Hi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.$implicit.dev)}))}function Ui(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Hi)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.value)}),null)}function Wi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["> ",""])),s["ɵppd"](2,2)],null,(function(t,e){var n=e.component,a=s["ɵunv"](e,1,0,t(e,2,0,s["ɵnov"](e.parent.parent,0),e.parent.context.value.min,n.translationMapping));t(e,1,0,a)}))}function Ki(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["< ",""])),s["ɵppd"](2,2)],null,(function(t,e){var n=e.component,a=s["ɵunv"](e,1,0,t(e,2,0,s["ɵnov"](e.parent.parent,0),e.parent.context.value.max,n.translationMapping));t(e,1,0,a)}))}function $i(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[""," to ",""])),s["ɵppd"](2,2)],null,(function(t,e){var n=e.component,a=e.parent.context.value.min,r=s["ɵunv"](e,1,1,t(e,2,0,s["ɵnov"](e.parent.parent,0),e.parent.context.value.max,n.translationMapping));t(e,1,0,a,r)}))}function Zi(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Wi)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ki)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$i)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.value.min&&!e.context.value.max),t(e,3,0,e.context.value.max&&!e.context.value.min),t(e,5,0,e.context.value.max&&e.context.value.min)}),null)}function Ji(t){return s["ɵvid"](0,[(t()(),s["ɵted"](0,null,[" ","\n"]))],null,(function(t,e){t(e,0,0,e.context.value)}))}function Qi(t){return s["ɵvid"](0,[s["ɵpid"](0,i.I18nPluralPipe,[i.NgLocalization]),s["ɵqud"](402653184,1,{locationTemplate:0}),s["ɵqud"](402653184,2,{lifeExpectancyTemplate:0}),s["ɵqud"](402653184,3,{lifeExpectancyTimestampTemplate:0}),(t()(),s["ɵand"](16777216,null,null,1,null,zi)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yi)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[1,2],["deviceLocation",2]],null,0,null,Ui)),(t()(),s["ɵand"](0,[[2,2],["lifeExpectancy",2]],null,0,null,Zi)),(t()(),s["ɵand"](0,[[3,2],["lifeExpectancyTimestamp",2]],null,0,null,Ji))],(function(t,e){var n=e.component;t(e,5,0,n.hostname||null!==n.osdId),t(e,7,0,""===n.hostname&&null===n.osdId)}),null)}n("jKX/");class Xi{get selectedHostname(){return void 0!==this.selection?this.selection.hostname:null}constructor(){}}var ts=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function es(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Inventory"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-inventory",[],null,null,null,ti,Jr)),s["ɵdid"](3,770048,null,0,Zr,[Br,s.NgZone],{hostname:[0,"hostname"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Inventory"),t(e,3,0,n.selectedHostname)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function ns(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Daemons"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-service-daemon-list",[],null,null,null,ci,ui)),s["ɵdid"](3,4964352,null,0,si,[fe.a,ii,ai,Br],{hostname:[0,"hostname"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Daemons"),t(e,3,0,n.selectedHostname)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function as(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","four"],["uid","rtOg0AiWz"]],null,null,null,Cr.b,Cr.a)),s["ɵdid"](3,638976,null,0,Rr.a,[Ar.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Performance Details"),t(e,3,0,"host-details?var-ceph_hosts="+n.selectedHostname,"four","rtOg0AiWz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function rs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-smart-list",[],null,null,null,Vi,vi)),s["ɵdid"](1,638976,null,0,yi,[fe.a,mi,ii],{hostname:[0,"hostname"]},null)],(function(t,e){t(e,1,0,e.component.selectedHostname)}),null)}function is(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,15,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,[[1,4]],0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Devices"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-device-list",[],null,null,null,Qi,Bi)),s["ɵdid"](5,638976,null,0,Gi,[ii,fe.a,i.DatePipe,mi],{hostname:[0,"hostname"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,es)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,ns)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,as)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](12,0,null,0,3,"tab",[["heading","Device health"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](13,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rs)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Devices"),t(e,5,0,n.selection.hostname),t(e,7,0,n.permissions.hosts.read),t(e,9,0,n.permissions.hosts.read),t(e,11,0,n.permissions.grafana.read),t(e,13,0,"Device health"),t(e,15,0,n.selectedHostname,s["ɵnov"](e.parent,3))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,12,0,s["ɵnov"](e,13).id,s["ɵnov"](e,13).active,s["ɵnov"](e,13).addClass,s["ɵnov"](e,13).role,s["ɵnov"](e,13).ariaLabelledby)}))}function ss(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["No hostname found."]))],(function(t,e){t(e,1,0,"error")}),null)}function us(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{tabsetChild:0}),(t()(),s["ɵand"](16777216,null,null,1,null,is)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[["noHostname",2]],null,0,null,ss))],(function(t,e){t(e,2,0,e.component.selection)}),null)}var os=n("EgGo"),ls=n("+fVR"),ds=n("0+/T"),cs=n("DNAf"),fs=n("kvvV"),hs=n("85J/");class gs{constructor(t){this.bsModalRef=t}ngOnInit(){}onSubmit(){this.bsModalRef.hide()}}let ps=(()=>{class t{constructor(t,e){this.orchService=t,this.modalService=e}checkOrchestratorOrModal(t,e,n){this.orchService.status().subscribe(a=>{a.available?n():this.modalService.show(gs,{initialState:{actionDescription:t,itemDescription:e}})})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](Br),s["ɵɵinject"](Ct.b))},token:t,providedIn:"root"}),t})();var bs=n("kn/O");const ms=new os.a("hosts");class ys extends ls.a{constructor(t,e,n,a,r,i,s,u,o,l,d){super(),this.authStorageService=t,this.hostService=e,this.cephShortVersionPipe=n,this.i18n=a,this.urlBuilder=r,this.actionLabels=i,this.modalService=s,this.taskWrapper=u,this.router=o,this.depCheckerService=l,this.notificationService=d,this.columns=[],this.hosts=[],this.isLoadingHosts=!1,this.cdParams={fromLink:"/hosts"},this.selection=new Hr.a,this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{name:this.actionLabels.CREATE,permission:"create",icon:pt.a.add,click:()=>{this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.CREATE,this.i18n("Host"),()=>{this.router.navigate([this.urlBuilder.getCreate()])})}},{name:this.actionLabels.EDIT,permission:"update",icon:pt.a.edit,click:()=>{this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.EDIT,this.i18n("Host"),()=>this.editAction())},disable:this.getEditDisableDesc.bind(this)},{name:this.actionLabels.DELETE,permission:"delete",icon:pt.a.destroy,click:()=>{this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.DELETE,this.i18n("Host"),()=>this.deleteAction())},disable:this.getDeleteDisableDesc.bind(this)}]}ngOnInit(){this.columns=[{name:this.i18n("Hostname"),prop:"hostname",flexGrow:1},{name:this.i18n("Services"),prop:"services",flexGrow:3,cellTemplate:this.servicesTpl},{name:this.i18n("Labels"),prop:"labels",flexGrow:1,cellTransformation:Yr.a.badge,customTemplateConfig:{class:"badge-dark"}},{name:this.i18n("Version"),prop:"ceph_version",flexGrow:1,pipe:this.cephShortVersionPipe}]}updateSelection(t){this.selection=t}editAction(){this.hostService.getLabels().subscribe(t=>{const e=this.selection.first(),n=t.map(t=>({enabled:!0,name:t}));this.modalService.show(zr.a,{initialState:{titleText:this.i18n("Edit Host: {{hostname}}",e),fields:[{type:"select-badges",name:"labels",value:e.labels,label:this.i18n("Labels"),typeConfig:{customBadges:!0,options:n,messages:new cs.a({empty:this.i18n("There are no labels."),filter:this.i18n("Filter or add labels"),add:this.i18n("Add label")},this.i18n)}}],submitButtonText:this.i18n("Edit Host"),onSubmit:t=>{this.hostService.update(e.hostname,t.labels).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Updated Host "{{hostname}}"',e)),this.table.refreshBtn()})}}})})}getEditDisableDesc(t){return!t||!t.hasSingleSelection||!t.first().sources.orchestrator&&this.i18n("Host editing is disabled because the selected host is not managed by Orchestrator.")}deleteAction(){const t=this.selection.first().hostname;this.modalRef=this.modalService.show(ds.a,{initialState:{itemDescription:"Host",itemNames:[t],actionDescription:"delete",submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new fs.a("host/delete",{hostname:t}),call:this.hostService.delete(t)})}})}getDeleteDisableDesc(t){return!t||!t.hasSelection||!t.selected.every(t=>t.sources.orchestrator)&&this.i18n("Host deletion is disabled because a selected host is not managed by Orchestrator.")}getHosts(t){if(this.isLoadingHosts)return;const e={mds:"cephfs",mon:"monitor",osd:"osd",rgw:"rgw","rbd-mirror":"rbdMirroring",mgr:"manager","tcmu-runner":"iscsi"};this.isLoadingHosts=!0,this.hostService.list().subscribe(t=>{t.map(t=>(t.services.map(t=>{t.cdLink=`/perf_counters/${t.type}/${encodeURIComponent(t.id)}`;const n=this.permissions[e[t.type]];return t.canRead=!!n&&n.read,t}),t)),this.hosts=t,this.isLoadingHosts=!1},()=>{this.isLoadingHosts=!1,t.error()})}}var vs=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function xs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"a",[["class","service-link"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,1).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](1,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{queryParams:[0,"queryParams"],routerLink:[1,"routerLink"]},null),s["ɵpad"](2,1),(t()(),s["ɵted"](3,null,["",".",""]))],(function(t,e){var n=e.component.cdParams,a=t(e,2,0,e.parent.context.$implicit.cdLink);t(e,1,0,n,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).target,s["ɵnov"](e,1).href),t(e,3,0,e.parent.context.$implicit.type,e.parent.context.$implicit.id)}))}function _s(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ","."," "]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.type,e.parent.context.$implicit.id)}))}function Ts(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[", "]))],null,null)}function ws(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,xs)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_s)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ts)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit.canRead),t(e,4,0,!e.context.$implicit.canRead),t(e,6,0,!e.context.last)}),null)}function Os(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,ws)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.value)}),null)}function Ss(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","y0KGL0iZz"]],null,null,null,Cr.b,Cr.a)),s["ɵdid"](3,638976,null,0,Rr.a,[Ar.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){t(e,1,0,"Overall Performance"),t(e,3,0,"host-overview?","two","y0KGL0iZz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function Is(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{table:0}),s["ɵqud"](402653184,2,{servicesTpl:0}),(t()(),s["ɵeld"](2,0,null,null,13,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](3,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](4,0,null,0,9,"tab",[["heading","Hosts List"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](5,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](6,0,null,null,7,"cd-table",[["columnMode","flex"],["selectionType","single"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.getHosts(n)&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](7,2867200,[[1,4]],0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],selectionType:[4,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](8,0,null,1,2,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,"cd-table-actions",[["class","btn-group"],["id","host-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](10,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵand"](0,[[2,2],["servicesTpl",2]],null,0,null,Os)),(t()(),s["ɵeld"](12,0,null,3,1,"cd-host-details",[["cdTableDetail",""]],null,null,null,us,ts)),s["ɵdid"](13,49152,null,0,Xi,[],{permissions:[0,"permissions"],selection:[1,"selection"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Ss)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,5,0,"Hosts List"),t(e,7,0,n.hosts,n.columns,"flex",!0,"single"),t(e,10,0,n.permissions.hosts,n.selection,n.tableActions),t(e,13,0,n.permissions,n.expandedRow),t(e,15,0,n.permissions.grafana.read)}),(function(t,e){t(e,2,0,s["ɵnov"](e,3).clazz),t(e,4,0,s["ɵnov"](e,5).id,s["ɵnov"](e,5).active,s["ɵnov"](e,5).addClass,s["ɵnov"](e,5).role,s["ɵnov"](e,5).ariaLabelledby)}))}function Ns(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-hosts",[],null,null,null,Is,vs)),s["ɵprd"](256,null,os.a,ms,[]),s["ɵdid"](2,114688,null,0,ys,[J.a,ii,hs.a,fe.a,os.a,St.b,Ct.b,bs.a,Et.m,ps,bt.a],null,null)],(function(t,e){t(e,2,0)}),null)}var Cs=s["ɵccf"]("cd-hosts",ys,Ns,{},{},[]),Rs=n("mXUL"),As=n("IZUe"),ks=n("gp3X"),Es=n("sb0X"),Ls=n("KVJa"),Ds=n("Z21x"),Ps=n("8xTl"),Ms=n("QFaf"),qs=n("1Ni5");class js{constructor(t,e,n,a,r){this.router=t,this.i18n=e,this.actionLabels=n,this.hostService=a,this.taskWrapper=r,this.loading=!0,this.resource=this.i18n("host"),this.action=this.actionLabels.CREATE,this.createForm()}ngOnInit(){this.hostService.list().subscribe(t=>{this.hostnames=t.map(t=>t.hostname),this.loading=!1})}createForm(){this.hostForm=new Ms.a({hostname:new K.i("",{validators:[K.B.required,qs.a.custom("uniqueName",t=>this.hostnames&&-1!==this.hostnames.indexOf(t))]})})}submit(){const t=this.hostForm.get("hostname").value;this.taskWrapper.wrapTaskAroundCall({task:new fs.a("host/"+St.e.CREATE,{hostname:t}),call:this.hostService.create(t)}).subscribe(void 0,()=>{this.hostForm.setErrors({cdSubmitButton:!0})},()=>{this.router.navigate(["/hosts"])})}}var Fs=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Vs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,gi.b,gi.a)),s["ɵdid"](1,49152,null,0,pi.a,[],null,null),(t()(),s["ɵted"](-1,0,["Loading..."]))],null,null)}function Gs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Bs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The chosen hostname is already in use."]))],null,null)}function zs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,40,"form",[["name","hostForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,2).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,2).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,5).onSubmit()&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.G,[],null,null),s["ɵdid"](2,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](4,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](5,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](6,0,null,null,34,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](8,null,[""," ",""])),s["ɵppd"](9,1),s["ɵppd"](10,1),(t()(),s["ɵeld"](11,0,null,null,20,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](13,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","hostname"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Hostname"])),(t()(),s["ɵeld"](18,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","hostname"],["id","hostname"],["name","hostname"],["placeholder","mon-123"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,22)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,22).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,22)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,22)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](20,4210688,null,0,As.a,[s.ElementRef],{autofocus:[0,"autofocus"]},null),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](24,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](26,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gs)),s["ɵdid"](29,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bs)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](32,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](33,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](34,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submit()&&a),a}),ks.b,ks.a)),s["ɵdid"](35,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](36,0,[""," ",""])),s["ɵppd"](37,1),s["ɵppd"](38,1),(t()(),s["ɵeld"](39,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](40,49152,null,0,Ds.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,2,0,n.hostForm),t(e,5,0,n.hostForm),t(e,13,0),t(e,20,0,""),t(e,24,0,"hostname"),t(e,27,0,"hostname"),t(e,29,0,n.hostForm.showError("hostname",s["ɵnov"](e,2),"required")),t(e,31,0,n.hostForm.showError("hostname",s["ɵnov"](e,2),"uniqueName")),t(e,35,0,s["ɵnov"](e,2))}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,4).ngClassUntouched,s["ɵnov"](e,4).ngClassTouched,s["ɵnov"](e,4).ngClassPristine,s["ɵnov"](e,4).ngClassDirty,s["ɵnov"](e,4).ngClassValid,s["ɵnov"](e,4).ngClassInvalid,s["ɵnov"](e,4).ngClassPending);var a=s["ɵunv"](e,8,0,t(e,9,0,s["ɵnov"](e.parent,0),n.action)),r=s["ɵunv"](e,8,1,t(e,10,0,s["ɵnov"](e.parent,1),n.resource));t(e,8,0,a,r),t(e,12,0,s["ɵnov"](e,13).hasErrors,s["ɵnov"](e,13).hasSuccess),t(e,19,0,s["ɵnov"](e,26).ngClassUntouched,s["ɵnov"](e,26).ngClassTouched,s["ɵnov"](e,26).ngClassPristine,s["ɵnov"](e,26).ngClassDirty,s["ɵnov"](e,26).ngClassValid,s["ɵnov"](e,26).ngClassInvalid,s["ɵnov"](e,26).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass);var i=s["ɵunv"](e,36,0,t(e,37,0,s["ɵnov"](e.parent,0),n.action)),u=s["ɵunv"](e,36,1,t(e,38,0,s["ɵnov"](e.parent,1),n.resource));t(e,36,0,i,u)}))}function Ys(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Ps.a,[]),(t()(),s["ɵand"](16777216,null,null,1,null,Vs)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](4,0,null,null,2,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,zs)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.loading),t(e,6,0,!n.loading)}),null)}function Hs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-host-form",[],null,null,null,Ys,Fs)),s["ɵdid"](1,114688,null,0,js,[Et.m,fe.a,St.b,ii,bs.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Us=s["ɵccf"]("cd-host-form",js,Hs,{},{},[]);let Ws=(()=>{class t{constructor(t){this.http=t}getMonitor(){return this.http.get("api/monitor")}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();class Ks{constructor(t,e){this.monitorService=t,this.i18n=e,this.inQuorum={columns:[{prop:"name",name:this.i18n("Name"),cellTransformation:Yr.a.routerLink},{prop:"rank",name:this.i18n("Rank")},{prop:"public_addr",name:this.i18n("Public Address")},{prop:"cdOpenSessions",name:this.i18n("Open Sessions"),cellTransformation:Yr.a.sparkline,comparator:(t,e)=>{const n=X.last(t),a=X.last(e);return n&&a&&n!==a?n>a?1:-1:0}}]},this.notInQuorum={columns:[{prop:"name",name:this.i18n("Name"),cellTransformation:Yr.a.routerLink},{prop:"rank",name:this.i18n("Rank")},{prop:"public_addr",name:this.i18n("Public Address")}]}}refresh(){this.monitorService.getMonitor().subscribe(t=>{t.in_quorum.map(t=>(t.cdOpenSessions=t.stats.num_sessions.map(t=>t[1]),t.cdLink="/perf_counters/mon/"+t.name,t.cdParams={fromLink:"/monitor"},t)),t.out_quorum.map(t=>(t.cdLink="/perf_counters/mon/"+t.name,t.cdParams={fromLink:"/monitor"},t)),this.inQuorum.data=[...t.in_quorum],this.notInQuorum.data=[...t.out_quorum],this.mon_status=t.mon_status})}}var $s=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Zs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,35,"table",[["class","table table-striped"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster ID"])),(t()(),s["ɵeld"](4,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](5,null,["",""])),(t()(),s["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["monmap modified"])),(t()(),s["ɵeld"](9,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](10,null,["",""])),(t()(),s["ɵeld"](11,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["monmap epoch"])),(t()(),s["ɵeld"](14,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](15,null,["",""])),(t()(),s["ɵeld"](16,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["quorum con"])),(t()(),s["ɵeld"](19,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](20,null,["",""])),(t()(),s["ɵeld"](21,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["quorum mon"])),(t()(),s["ɵeld"](24,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](25,null,["",""])),(t()(),s["ɵeld"](26,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](27,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["required con"])),(t()(),s["ɵeld"](29,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](30,null,["",""])),(t()(),s["ɵeld"](31,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](32,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["required mon"])),(t()(),s["ɵeld"](34,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](35,null,["",""]))],null,(function(t,e){var n=e.component;t(e,5,0,n.mon_status.monmap.fsid),t(e,10,0,n.mon_status.monmap.modified),t(e,15,0,n.mon_status.monmap.epoch),t(e,20,0,n.mon_status.features.quorum_con),t(e,25,0,n.mon_status.features.quorum_mon),t(e,30,0,n.mon_status.features.required_con),t(e,35,0,n.mon_status.features.required_mon)}))}function Js(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,"div",[["class","col-lg-4"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,4,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Status"])),(t()(),s["ɵand"](16777216,null,null,1,null,Zs)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](7,0,null,null,8,"div",[["class","col-lg-8"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"legend",[["class","in-quorum cd-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["In Quorum"])),(t()(),s["ɵeld"](10,0,null,null,1,"cd-table",[],null,null,null,kr.b,kr.a)),s["ɵdid"](11,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},null),(t()(),s["ɵeld"](12,0,null,null,1,"legend",[["class","in-quorum cd-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Not In Quorum"])),(t()(),s["ɵeld"](14,0,null,null,1,"cd-table",[],null,[[null,"fetchData"]],(function(t,e,n){var a=!0;return"fetchData"===e&&(a=!1!==t.component.refresh()&&a),a}),kr.b,kr.a)),s["ɵdid"](15,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},{fetchData:"fetchData"})],(function(t,e){var n=e.component;t(e,6,0,n.mon_status),t(e,11,0,n.inQuorum.data,n.inQuorum.columns),t(e,15,0,n.notInQuorum.data,n.notInQuorum.columns)}),null)}function Qs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-monitor",[],null,null,null,Js,$s)),s["ɵdid"](1,49152,null,0,Ks,[Ws,fe.a],null,null)],null,null)}var Xs=s["ɵccf"]("cd-monitor",Ks,Qs,{},{},[]);class tu{constructor(){}ngOnInit(){}}var eu=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function nu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,[[1,4]],0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Daemons"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-service-daemon-list",[],null,null,null,ci,ui)),s["ɵdid"](5,4964352,null,0,si,[fe.a,ii,ai,Br],{serviceName:[0,"serviceName"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Daemons"),t(e,5,0,n.selection.service_name)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby)}))}function au(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{tabsetChild:0}),(t()(),s["ɵand"](16777216,null,null,1,null,nu)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,e.component.selection)}),null)}var ru=n("7o/Q"),iu=n("WMd4");class su{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new uu(t,this.delay,this.scheduler))}}class uu extends ru.a{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,a=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-a.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-a.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(uu.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new ou(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(iu.a.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(iu.a.createComplete()),this.unsubscribe()}}class ou{constructor(t,e){this.time=t,this.notification=e}}var lu=n("nYR2");class du{constructor(t){this.i18n=t}transform(t){if(X.isUndefined(t))return this.i18n("no spec");if(X.get(t,"unmanaged",!1))return this.i18n("unmanaged");const e=[],n=X.get(t,"placement.hosts"),a=X.get(t,"placement.count"),r=X.get(t,"placement.label"),i=X.get(t,"placement.host_pattern");return X.isArray(n)&&e.push(...n),X.isNumber(a)&&e.push(this.i18n("count:{{count}}",{count:a})),X.isString(r)&&e.push(this.i18n("label:{{label}}",{label:r})),X.isString(i)&&e.push(i),e.join(";")}}const cu=new os.a("services");class fu extends ls.a{constructor(t,e,n,a,r,i,s,u){super(),this.actionLabels=t,this.authStorageService=e,this.i18n=n,this.bsModalService=a,this.orchService=r,this.cephServiceService=i,this.taskWrapperService=s,this.urlBuilder=u,this.hiddenColumns=[],this.showDocPanel=!1,this.checkingOrchestrator=!0,this.hasOrchestrator=!1,this.columns=[],this.services=[],this.isLoadingServices=!1,this.selection=new Hr.a,this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{permission:"create",icon:pt.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:t=>!t.hasSelection},{permission:"delete",icon:pt.a.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSingleSelection,name:this.actionLabels.DELETE}]}ngOnInit(){const t=[{name:this.i18n("Service"),prop:"service_name",flexGrow:1},{name:this.i18n("Container image name"),prop:"status.container_image_name",flexGrow:3},{name:this.i18n("Container image ID"),prop:"status.container_image_id",flexGrow:1.5,cellTransformation:Yr.a.truncate,customTemplateConfig:{length:12}},{name:this.i18n("Placement"),prop:"",pipe:new du(this.i18n),flexGrow:2},{name:this.i18n("Running"),prop:"status.running",flexGrow:1},{name:this.i18n("Size"),prop:"status.size",flexGrow:1},{name:this.i18n("Last Refreshed"),prop:"status.last_refresh",flexGrow:1}];this.columns=t.filter(t=>!this.hiddenColumns.includes(t.prop)),this.orchService.status().subscribe(t=>{this.hasOrchestrator=t.available,this.showDocPanel=!t.available})}ngOnChanges(){this.hasOrchestrator&&(this.services=[],this.table.reloadData())}getServices(t){this.isLoadingServices||(this.isLoadingServices=!0,this.cephServiceService.list().subscribe(t=>{this.services=t,this.isLoadingServices=!1},()=>{this.isLoadingServices=!1,this.services=[],t.error()}))}updateSelection(t){this.selection=t}deleteAction(){const t=this.selection.first();this.bsModalService.show(ds.a,{initialState:{itemDescription:this.i18n("Service"),itemNames:[t.service_name],actionDescription:"delete",submitActionObservable:()=>this.taskWrapperService.wrapTaskAroundCall({task:new fs.a("service/"+St.e.DELETE,{service_name:t.service_name}),call:this.cephServiceService.delete(t.service_name)}).pipe(function(t,e=Ca.a){var n;const a=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new su(a,e))}(2e3),Object(lu.a)(()=>{this.table.refreshBtn()}))}})}}var hu=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function gu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,Gr,Vr)),s["ɵdid"](1,49152,null,0,Fr,[],null,null)],null,null)}function pu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","service_name"],["selectionType","single"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.getServices(n)&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](2,2867200,[[1,4]],0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],forceIdentifier:[6,"forceIdentifier"],selectionType:[7,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](3,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](4,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](5,0,null,3,1,"cd-service-details",[["cdTableDetail",""]],null,null,null,au,eu)),s["ɵdid"](6,114688,null,0,tu,[],{permissions:[0,"permissions"],selection:[1,"selection"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.services,n.columns,"flex",!0,5e3,"service_name","true","single"),t(e,4,0,n.permissions.hosts,n.selection,n.tableActions),t(e,6,0,n.permissions,n.expandedRow)}),null)}function bu(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{table:0}),(t()(),s["ɵand"](16777216,null,null,1,null,gu)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pu)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.showDocPanel),t(e,4,0,n.hasOrchestrator)}),null)}function mu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-services",[],null,null,null,bu,hu)),s["ɵprd"](256,null,os.a,cu,[]),s["ɵdid"](2,638976,null,0,fu,[St.b,J.a,fe.a,Ct.b,Br,ai,bs.a,os.a],null,null)],(function(t,e){t(e,2,0)}),null)}var yu=s["ɵccf"]("cd-services",fu,mu,{hostname:"hostname",hiddenColumns:"hiddenColumns"},{},[]),vu=n("hpHm");function xu(t){return!!t&&(t instanceof In.a||"function"==typeof t.lift&&"function"==typeof t.subscribe)}function _u(t,e=Ca.a){return n=>n.lift(new Tu(t,e))}class Tu{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new wu(t,this.dueTime,this.scheduler))}}class wu extends ru.a{constructor(t,e,n){super(t),this.dueTime=e,this.scheduler=n,this.debouncedSubscription=null,this.lastValue=null,this.hasValue=!1}_next(t){this.clearDebounce(),this.lastValue=t,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(Ou,this.dueTime,this))}_complete(){this.debouncedNext(),this.destination.complete()}debouncedNext(){if(this.clearDebounce(),this.hasValue){const{lastValue:t}=this;this.lastValue=null,this.hasValue=!1,this.destination.next(t)}}clearDebounce(){const t=this.debouncedSubscription;null!==t&&(this.remove(t),t.unsubscribe(),this.debouncedSubscription=null)}}function Ou(t){t.debouncedNext()}var Su=n("eIep");const Iu={"Á":"A","Ă":"A","Ắ":"A","Ặ":"A","Ằ":"A","Ẳ":"A","Ẵ":"A","Ǎ":"A","Â":"A","Ấ":"A","Ậ":"A","Ầ":"A","Ẩ":"A","Ẫ":"A","Ä":"A","Ǟ":"A","Ȧ":"A","Ǡ":"A","Ạ":"A","Ȁ":"A","À":"A","Ả":"A","Ȃ":"A","Ā":"A","Ą":"A","Å":"A","Ǻ":"A","Ḁ":"A","Ⱥ":"A","Ã":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ḃ":"B","Ḅ":"B","Ɓ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ć":"C","Č":"C","Ç":"C","Ḉ":"C","Ĉ":"C","Ċ":"C","Ƈ":"C","Ȼ":"C","Ď":"D","Ḑ":"D","Ḓ":"D","Ḋ":"D","Ḍ":"D","Ɗ":"D","Ḏ":"D","Dz":"D","Dž":"D","Đ":"D","Ƌ":"D","DZ":"DZ","DŽ":"DZ","É":"E","Ĕ":"E","Ě":"E","Ȩ":"E","Ḝ":"E","Ê":"E","Ế":"E","Ệ":"E","Ề":"E","Ể":"E","Ễ":"E","Ḙ":"E","Ë":"E","Ė":"E","Ẹ":"E","Ȅ":"E","È":"E","Ẻ":"E","Ȇ":"E","Ē":"E","Ḗ":"E","Ḕ":"E","Ę":"E","Ɇ":"E","Ẽ":"E","Ḛ":"E","Ꝫ":"ET","Ḟ":"F","Ƒ":"F","Ǵ":"G","Ğ":"G","Ǧ":"G","Ģ":"G","Ĝ":"G","Ġ":"G","Ɠ":"G","Ḡ":"G","Ǥ":"G","Ḫ":"H","Ȟ":"H","Ḩ":"H","Ĥ":"H","Ⱨ":"H","Ḧ":"H","Ḣ":"H","Ḥ":"H","Ħ":"H","Í":"I","Ĭ":"I","Ǐ":"I","Î":"I","Ï":"I","Ḯ":"I","İ":"I","Ị":"I","Ȉ":"I","Ì":"I","Ỉ":"I","Ȋ":"I","Ī":"I","Į":"I","Ɨ":"I","Ĩ":"I","Ḭ":"I","Ꝺ":"D","Ꝼ":"F","Ᵹ":"G","Ꞃ":"R","Ꞅ":"S","Ꞇ":"T","Ꝭ":"IS","Ĵ":"J","Ɉ":"J","Ḱ":"K","Ǩ":"K","Ķ":"K","Ⱪ":"K","Ꝃ":"K","Ḳ":"K","Ƙ":"K","Ḵ":"K","Ꝁ":"K","Ꝅ":"K","Ĺ":"L","Ƚ":"L","Ľ":"L","Ļ":"L","Ḽ":"L","Ḷ":"L","Ḹ":"L","Ⱡ":"L","Ꝉ":"L","Ḻ":"L","Ŀ":"L","Ɫ":"L","Lj":"L","Ł":"L","LJ":"LJ","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ń":"N","Ň":"N","Ņ":"N","Ṋ":"N","Ṅ":"N","Ṇ":"N","Ǹ":"N","Ɲ":"N","Ṉ":"N","Ƞ":"N","Nj":"N","Ñ":"N","NJ":"NJ","Ó":"O","Ŏ":"O","Ǒ":"O","Ô":"O","Ố":"O","Ộ":"O","Ồ":"O","Ổ":"O","Ỗ":"O","Ö":"O","Ȫ":"O","Ȯ":"O","Ȱ":"O","Ọ":"O","Ő":"O","Ȍ":"O","Ò":"O","Ỏ":"O","Ơ":"O","Ớ":"O","Ợ":"O","Ờ":"O","Ở":"O","Ỡ":"O","Ȏ":"O","Ꝋ":"O","Ꝍ":"O","Ō":"O","Ṓ":"O","Ṑ":"O","Ɵ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Õ":"O","Ṍ":"O","Ṏ":"O","Ȭ":"O","Ƣ":"OI","Ꝏ":"OO","Ɛ":"E","Ɔ":"O","Ȣ":"OU","Ṕ":"P","Ṗ":"P","Ꝓ":"P","Ƥ":"P","Ꝕ":"P","Ᵽ":"P","Ꝑ":"P","Ꝙ":"Q","Ꝗ":"Q","Ŕ":"R","Ř":"R","Ŗ":"R","Ṙ":"R","Ṛ":"R","Ṝ":"R","Ȑ":"R","Ȓ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꜿ":"C","Ǝ":"E","Ś":"S","Ṥ":"S","Š":"S","Ṧ":"S","Ş":"S","Ŝ":"S","Ș":"S","Ṡ":"S","Ṣ":"S","Ṩ":"S","Ť":"T","Ţ":"T","Ṱ":"T","Ț":"T","Ⱦ":"T","Ṫ":"T","Ṭ":"T","Ƭ":"T","Ṯ":"T","Ʈ":"T","Ŧ":"T","Ɐ":"A","Ꞁ":"L","Ɯ":"M","Ʌ":"V","Ꜩ":"TZ","Ú":"U","Ŭ":"U","Ǔ":"U","Û":"U","Ṷ":"U","Ü":"U","Ǘ":"U","Ǚ":"U","Ǜ":"U","Ǖ":"U","Ṳ":"U","Ụ":"U","Ű":"U","Ȕ":"U","Ù":"U","Ủ":"U","Ư":"U","Ứ":"U","Ự":"U","Ừ":"U","Ử":"U","Ữ":"U","Ȗ":"U","Ū":"U","Ṻ":"U","Ų":"U","Ů":"U","Ũ":"U","Ṹ":"U","Ṵ":"U","Ꝟ":"V","Ṿ":"V","Ʋ":"V","Ṽ":"V","Ꝡ":"VY","Ẃ":"W","Ŵ":"W","Ẅ":"W","Ẇ":"W","Ẉ":"W","Ẁ":"W","Ⱳ":"W","Ẍ":"X","Ẋ":"X","Ý":"Y","Ŷ":"Y","Ÿ":"Y","Ẏ":"Y","Ỵ":"Y","Ỳ":"Y","Ƴ":"Y","Ỷ":"Y","Ỿ":"Y","Ȳ":"Y","Ɏ":"Y","Ỹ":"Y","Ź":"Z","Ž":"Z","Ẑ":"Z","Ⱬ":"Z","Ż":"Z","Ẓ":"Z","Ȥ":"Z","Ẕ":"Z","Ƶ":"Z","IJ":"IJ","Œ":"OE","ᴀ":"A","ᴁ":"AE","ʙ":"B","ᴃ":"B","ᴄ":"C","ᴅ":"D","ᴇ":"E","ꜰ":"F","ɢ":"G","ʛ":"G","ʜ":"H","ɪ":"I","ʁ":"R","ᴊ":"J","ᴋ":"K","ʟ":"L","ᴌ":"L","ᴍ":"M","ɴ":"N","ᴏ":"O","ɶ":"OE","ᴐ":"O","ᴕ":"OU","ᴘ":"P","ʀ":"R","ᴎ":"N","ᴙ":"R","ꜱ":"S","ᴛ":"T","ⱻ":"E","ᴚ":"R","ᴜ":"U","ᴠ":"V","ᴡ":"W","ʏ":"Y","ᴢ":"Z","á":"a","ă":"a","ắ":"a","ặ":"a","ằ":"a","ẳ":"a","ẵ":"a","ǎ":"a","â":"a","ấ":"a","ậ":"a","ầ":"a","ẩ":"a","ẫ":"a","ä":"a","ǟ":"a","ȧ":"a","ǡ":"a","ạ":"a","ȁ":"a","à":"a","ả":"a","ȃ":"a","ā":"a","ą":"a","ᶏ":"a","ẚ":"a","å":"a","ǻ":"a","ḁ":"a","ⱥ":"a","ã":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ḃ":"b","ḅ":"b","ɓ":"b","ḇ":"b","ᵬ":"b","ᶀ":"b","ƀ":"b","ƃ":"b","ɵ":"o","ć":"c","č":"c","ç":"c","ḉ":"c","ĉ":"c","ɕ":"c","ċ":"c","ƈ":"c","ȼ":"c","ď":"d","ḑ":"d","ḓ":"d","ȡ":"d","ḋ":"d","ḍ":"d","ɗ":"d","ᶑ":"d","ḏ":"d","ᵭ":"d","ᶁ":"d","đ":"d","ɖ":"d","ƌ":"d","ı":"i","ȷ":"j","ɟ":"j","ʄ":"j","dz":"dz","dž":"dz","é":"e","ĕ":"e","ě":"e","ȩ":"e","ḝ":"e","ê":"e","ế":"e","ệ":"e","ề":"e","ể":"e","ễ":"e","ḙ":"e","ë":"e","ė":"e","ẹ":"e","ȅ":"e","è":"e","ẻ":"e","ȇ":"e","ē":"e","ḗ":"e","ḕ":"e","ⱸ":"e","ę":"e","ᶒ":"e","ɇ":"e","ẽ":"e","ḛ":"e","ꝫ":"et","ḟ":"f","ƒ":"f","ᵮ":"f","ᶂ":"f","ǵ":"g","ğ":"g","ǧ":"g","ģ":"g","ĝ":"g","ġ":"g","ɠ":"g","ḡ":"g","ᶃ":"g","ǥ":"g","ḫ":"h","ȟ":"h","ḩ":"h","ĥ":"h","ⱨ":"h","ḧ":"h","ḣ":"h","ḥ":"h","ɦ":"h","ẖ":"h","ħ":"h","ƕ":"hv","í":"i","ĭ":"i","ǐ":"i","î":"i","ï":"i","ḯ":"i","ị":"i","ȉ":"i","ì":"i","ỉ":"i","ȋ":"i","ī":"i","į":"i","ᶖ":"i","ɨ":"i","ĩ":"i","ḭ":"i","ꝺ":"d","ꝼ":"f","ᵹ":"g","ꞃ":"r","ꞅ":"s","ꞇ":"t","ꝭ":"is","ǰ":"j","ĵ":"j","ʝ":"j","ɉ":"j","ḱ":"k","ǩ":"k","ķ":"k","ⱪ":"k","ꝃ":"k","ḳ":"k","ƙ":"k","ḵ":"k","ᶄ":"k","ꝁ":"k","ꝅ":"k","ĺ":"l","ƚ":"l","ɬ":"l","ľ":"l","ļ":"l","ḽ":"l","ȴ":"l","ḷ":"l","ḹ":"l","ⱡ":"l","ꝉ":"l","ḻ":"l","ŀ":"l","ɫ":"l","ᶅ":"l","ɭ":"l","ł":"l","lj":"lj","ſ":"s","ẜ":"s","ẛ":"s","ẝ":"s","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ᵯ":"m","ᶆ":"m","ń":"n","ň":"n","ņ":"n","ṋ":"n","ȵ":"n","ṅ":"n","ṇ":"n","ǹ":"n","ɲ":"n","ṉ":"n","ƞ":"n","ᵰ":"n","ᶇ":"n","ɳ":"n","ñ":"n","nj":"nj","ó":"o","ŏ":"o","ǒ":"o","ô":"o","ố":"o","ộ":"o","ồ":"o","ổ":"o","ỗ":"o","ö":"o","ȫ":"o","ȯ":"o","ȱ":"o","ọ":"o","ő":"o","ȍ":"o","ò":"o","ỏ":"o","ơ":"o","ớ":"o","ợ":"o","ờ":"o","ở":"o","ỡ":"o","ȏ":"o","ꝋ":"o","ꝍ":"o","ⱺ":"o","ō":"o","ṓ":"o","ṑ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","õ":"o","ṍ":"o","ṏ":"o","ȭ":"o","ƣ":"oi","ꝏ":"oo","ɛ":"e","ᶓ":"e","ɔ":"o","ᶗ":"o","ȣ":"ou","ṕ":"p","ṗ":"p","ꝓ":"p","ƥ":"p","ᵱ":"p","ᶈ":"p","ꝕ":"p","ᵽ":"p","ꝑ":"p","ꝙ":"q","ʠ":"q","ɋ":"q","ꝗ":"q","ŕ":"r","ř":"r","ŗ":"r","ṙ":"r","ṛ":"r","ṝ":"r","ȑ":"r","ɾ":"r","ᵳ":"r","ȓ":"r","ṟ":"r","ɼ":"r","ᵲ":"r","ᶉ":"r","ɍ":"r","ɽ":"r","ↄ":"c","ꜿ":"c","ɘ":"e","ɿ":"r","ś":"s","ṥ":"s","š":"s","ṧ":"s","ş":"s","ŝ":"s","ș":"s","ṡ":"s","ṣ":"s","ṩ":"s","ʂ":"s","ᵴ":"s","ᶊ":"s","ȿ":"s","ɡ":"g","ᴑ":"o","ᴓ":"o","ᴝ":"u","ť":"t","ţ":"t","ṱ":"t","ț":"t","ȶ":"t","ẗ":"t","ⱦ":"t","ṫ":"t","ṭ":"t","ƭ":"t","ṯ":"t","ᵵ":"t","ƫ":"t","ʈ":"t","ŧ":"t","ᵺ":"th","ɐ":"a","ᴂ":"ae","ǝ":"e","ᵷ":"g","ɥ":"h","ʮ":"h","ʯ":"h","ᴉ":"i","ʞ":"k","ꞁ":"l","ɯ":"m","ɰ":"m","ᴔ":"oe","ɹ":"r","ɻ":"r","ɺ":"r","ⱹ":"r","ʇ":"t","ʌ":"v","ʍ":"w","ʎ":"y","ꜩ":"tz","ú":"u","ŭ":"u","ǔ":"u","û":"u","ṷ":"u","ü":"u","ǘ":"u","ǚ":"u","ǜ":"u","ǖ":"u","ṳ":"u","ụ":"u","ű":"u","ȕ":"u","ù":"u","ủ":"u","ư":"u","ứ":"u","ự":"u","ừ":"u","ử":"u","ữ":"u","ȗ":"u","ū":"u","ṻ":"u","ų":"u","ᶙ":"u","ů":"u","ũ":"u","ṹ":"u","ṵ":"u","ᵫ":"ue","ꝸ":"um","ⱴ":"v","ꝟ":"v","ṿ":"v","ʋ":"v","ᶌ":"v","ⱱ":"v","ṽ":"v","ꝡ":"vy","ẃ":"w","ŵ":"w","ẅ":"w","ẇ":"w","ẉ":"w","ẁ":"w","ⱳ":"w","ẘ":"w","ẍ":"x","ẋ":"x","ᶍ":"x","ý":"y","ŷ":"y","ÿ":"y","ẏ":"y","ỵ":"y","ỳ":"y","ƴ":"y","ỷ":"y","ỿ":"y","ȳ":"y","ẙ":"y","ɏ":"y","ỹ":"y","ź":"z","ž":"z","ẑ":"z","ʑ":"z","ⱬ":"z","ż":"z","ẓ":"z","ȥ":"z","ẕ":"z","ᵶ":"z","ᶎ":"z","ʐ":"z","ƶ":"z","ɀ":"z","ff":"ff","ffi":"ffi","ffl":"ffl","fi":"fi","fl":"fl","ij":"ij","œ":"oe","st":"st","ₐ":"a","ₑ":"e","ᵢ":"i","ⱼ":"j","ₒ":"o","ᵣ":"r","ᵤ":"u","ᵥ":"v","ₓ":"x"};class Nu{constructor(t,e=t,n=!1){this.item=t,this.value=e,this.header=n}isHeader(){return this.header}toString(){return this.value}}function Cu(t){return t?t.replace(/[^A-Za-z0-9\[\] ]/g,(function(t){return Iu[t]||t})):""}function Ru(t,e=" ",n=""){const a=t.split(new RegExp(`(?:[${n}])([^${n}]+)(?:[${n}])|([^${e}]+)`,"g")),r=[],i=a.length;let s;const u=new RegExp(`[${n}]+`,"g");for(let o=0;o<i;o+=1)s=a[o],s&&s.length&&s!==e&&r.push(s.replace(u,""));return r}function Au(t,e){if(!e||"object"!=typeof t)return t.toString();if(e.endsWith("()"))return t[e.slice(0,e.length-2)]().toString();const n=e.replace(/\[(\w+)\]/g,".$1").replace(/^\./,"").split(".");for(const a of n)a in t&&(t=t[a]);return t?t.toString():""}class ku{constructor(t,e,n,a){this.positionService=t,this.renderer=e,this.element=n,this.changeDetectorRef=a,this.isFocused=!1,this.height=0,this._matches=[],this.isScrolledIntoView=function(t){const e=this.ulElement.nativeElement.scrollTop,n=e+Number(this.ulElement.nativeElement.offsetHeight),a=t.offsetTop;return a+t.offsetHeight<=n&&a>=e},this.positionServiceSubscription=this.positionService.event$.subscribe(()=>{if(this.isAnimated)return this.animationState=this.isTopPosition?"animated-up":"animated-down",void this.changeDetectorRef.detectChanges();this.animationState="unanimated",this.changeDetectorRef.detectChanges()})}get isBs4(){return!Object(vu.d)()}get active(){return this._active}get matches(){return this._matches}set matches(t){if(this.positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition}},allowedPositions:["top","bottom"]}),this._matches=t,this.needScrollbar=this.typeaheadScrollable&&this.typeaheadOptionsInScrollableView<this.matches.length,this.typeaheadScrollable&&setTimeout(()=>{this.setScrollableMode()}),this.typeaheadIsFirstItemActive&&this._matches.length>0&&(this._active=this._matches[0],this._active.isHeader()&&this.nextActiveMatch()),this._active&&!this.typeaheadIsFirstItemActive){const t=this._matches.find(t=>t.value===this._active.value);if(t)return void this.selectActive(t);this._active=null}}get isTopPosition(){return this.element.nativeElement.classList.contains("top")}get optionsListTemplate(){return this.parent?this.parent.optionsListTemplate:void 0}get isAnimated(){return!!this.parent&&this.parent.isAnimated}get adaptivePosition(){return!!this.parent&&this.parent.adaptivePosition}get typeaheadScrollable(){return!!this.parent&&this.parent.typeaheadScrollable}get typeaheadOptionsInScrollableView(){return this.parent?this.parent.typeaheadOptionsInScrollableView:5}get typeaheadIsFirstItemActive(){return!this.parent||this.parent.typeaheadIsFirstItemActive}get itemTemplate(){return this.parent?this.parent.typeaheadItemTemplate:void 0}selectActiveMatch(t){this._active&&this.parent.typeaheadSelectFirstItem&&this.selectMatch(this._active),!this.parent.typeaheadSelectFirstItem&&t&&this.selectMatch(this._active)}prevActiveMatch(){const t=this.matches.indexOf(this._active);this._active=this.matches[t-1<0?this.matches.length-1:t-1],this._active.isHeader()&&this.prevActiveMatch(),this.typeaheadScrollable&&this.scrollPrevious(t)}nextActiveMatch(){const t=this.matches.indexOf(this._active);this._active=this.matches[t+1>this.matches.length-1?0:t+1],this._active.isHeader()&&this.nextActiveMatch(),this.typeaheadScrollable&&this.scrollNext(t)}selectActive(t){this.isFocused=!0,this._active=t}highlight(t,e){let n,a,r=t.value,i=(this.parent&&this.parent.typeaheadLatinize?Cu(r):r).toLowerCase();if("object"==typeof e){const t=e.length;for(let s=0;s<t;s+=1)n=i.indexOf(e[s]),a=e[s].length,n>=0&&a>0&&(r=`${r.substring(0,n)}<strong>${r.substring(n,n+a)}</strong>`+r.substring(n+a),i=`${i.substring(0,n)}        ${" ".repeat(a)}         `+i.substring(n+a))}else e&&(n=i.indexOf(e),a=e.length,n>=0&&a>0&&(r=`${r.substring(0,n)}<strong>${r.substring(n,n+a)}</strong>`+r.substring(n+a)));return r}focusLost(){this.isFocused=!1}isActive(t){return this._active===t}selectMatch(t,e){return e&&(e.stopPropagation(),e.preventDefault()),this.parent.changeModel(t),setTimeout(()=>this.parent.typeaheadOnSelect.emit(t),0),!1}setScrollableMode(){if(this.ulElement||(this.ulElement=this.element),this.liElements.first){const t=vu.b.getStyles(this.ulElement.nativeElement),e=vu.b.getStyles(this.liElements.first.nativeElement),n=parseFloat((t["padding-bottom"]?t["padding-bottom"]:"").replace("px","")),a=parseFloat((t["padding-top"]?t["padding-top"]:"0").replace("px","")),r=parseFloat((e.height?e.height:"0").replace("px",""));this.guiHeight=this.typeaheadOptionsInScrollableView*r+a+n+"px"}this.renderer.setStyle(this.element.nativeElement,"visibility","visible")}scrollPrevious(t){if(0!==t){if(this.liElements){const e=this.liElements.toArray()[t-1];e&&!this.isScrolledIntoView(e.nativeElement)&&(this.ulElement.nativeElement.scrollTop=e.nativeElement.offsetTop)}}else this.scrollToBottom()}scrollNext(t){if(t+1>this.matches.length-1)this.scrollToTop();else if(this.liElements){const e=this.liElements.toArray()[t+1];e&&!this.isScrolledIntoView(e.nativeElement)&&(this.ulElement.nativeElement.scrollTop=e.nativeElement.offsetTop-Number(this.ulElement.nativeElement.offsetHeight)+Number(e.nativeElement.offsetHeight))}}ngOnDestroy(){this.positionServiceSubscription.unsubscribe()}scrollToBottom(){this.ulElement.nativeElement.scrollTop=this.ulElement.nativeElement.scrollHeight}scrollToTop(){this.ulElement.nativeElement.scrollTop=0}}class Eu{constructor(){this.adaptivePosition=!1,this.isAnimated=!1,this.hideResultsOnBlur=!0,this.selectFirstItem=!0,this.isFirstItemActive=!0,this.minLength=1}}class Lu{constructor(t,e,n,a,r,i,u){this.changeDetection=n,this.element=a,this.ngControl=r,this.renderer=i,this.typeaheadMinLength=void 0,this.isAnimated=!1,this.typeaheadAsync=void 0,this.typeaheadLatinize=!0,this.typeaheadSingleWords=!0,this.typeaheadWordDelimiters=" ",this.typeaheadPhraseDelimiters="'\"",this.typeaheadScrollable=!1,this.typeaheadOptionsInScrollableView=5,this.typeaheadSelectFirstItem=!0,this.typeaheadIsFirstItemActive=!0,this.typeaheadLoading=new s.EventEmitter,this.typeaheadNoResults=new s.EventEmitter,this.typeaheadOnSelect=new s.EventEmitter,this.typeaheadOnBlur=new s.EventEmitter,this.dropup=!1,this.isActiveItemChanged=!1,this.isTypeaheadOptionsListActive=!1,this.keyUpEventEmitter=new s.EventEmitter,this.placement="bottom-left",this._subscriptions=[],this._typeahead=t.createLoader(a,u,i).provide({provide:Eu,useValue:e}),Object.assign(this,{typeaheadHideResultsOnBlur:e.hideResultsOnBlur,typeaheadSelectFirstItem:e.selectFirstItem,typeaheadIsFirstItemActive:e.isFirstItemActive,typeaheadMinLength:e.minLength,adaptivePosition:e.adaptivePosition,isAnimated:e.isAnimated})}ngOnInit(){this.typeaheadOptionsLimit=this.typeaheadOptionsLimit||20,this.typeaheadMinLength=void 0===this.typeaheadMinLength?1:this.typeaheadMinLength,this.typeaheadWaitMs=this.typeaheadWaitMs||0,void 0!==this.typeaheadAsync||xu(this.typeahead)||(this.typeaheadAsync=!1),xu(this.typeahead)&&(this.typeaheadAsync=!0),this.typeaheadAsync?this.asyncActions():this.syncActions()}onInput(t){const e=void 0!==t.target.value?t.target.value:void 0!==t.target.textContent?t.target.textContent:t.target.innerText;null!=e&&e.trim().length>=this.typeaheadMinLength?(this.typeaheadLoading.emit(!0),this.keyUpEventEmitter.emit(t.target.value)):(this.typeaheadLoading.emit(!1),this.typeaheadNoResults.emit(!1),this.hide())}onChange(t){if(this._container){if(27===t.keyCode||"Escape"===t.key)return void this.hide();if(38===t.keyCode||"ArrowUp"===t.key)return this.isActiveItemChanged=!0,void this._container.prevActiveMatch();if(40===t.keyCode||"ArrowDown"===t.key)return this.isActiveItemChanged=!0,void this._container.nextActiveMatch();if(13===t.keyCode||"Enter"===t.key)return void this._container.selectActiveMatch()}}onFocus(){0===this.typeaheadMinLength&&(this.typeaheadLoading.emit(!0),this.keyUpEventEmitter.emit(this.element.nativeElement.value||""))}onBlur(){this._container&&!this._container.isFocused&&this.typeaheadOnBlur.emit(this._container.active)}onKeydown(t){if(this._container&&(9===t.keyCode||"Tab"===t.key||13===t.keyCode||"Enter"===t.key)){if(t.preventDefault(),this.typeaheadSelectFirstItem)return void this._container.selectActiveMatch();this.typeaheadSelectFirstItem||(this._container.selectActiveMatch(this.isActiveItemChanged),this.isActiveItemChanged=!1,this.hide())}}changeModel(t){const e=t.value;this.ngControl.viewToModelUpdate(e),this.ngControl.control.setValue(e),this.changeDetection.markForCheck(),this.hide()}get matches(){return this._matches}show(){this._typeahead.attach(ku).to(this.container).position({attachment:(this.dropup?"top":"bottom")+" start"}).show({typeaheadRef:this,placement:this.placement,animation:!1,dropup:this.dropup}),this._outsideClickListener=this.renderer.listen("document","click",t=>{0===this.typeaheadMinLength&&this.element.nativeElement.contains(t.target)||this.typeaheadHideResultsOnBlur&&!this.element.nativeElement.contains(t.target)&&this.onOutsideClick()}),this._container=this._typeahead.instance,this._container.parent=this;const t=(this.typeaheadLatinize?Cu(this.ngControl.control.value):this.ngControl.control.value).toString().toLowerCase();this._container.query=this.typeaheadSingleWords?Ru(t,this.typeaheadWordDelimiters,this.typeaheadPhraseDelimiters):t,this._container.matches=this._matches,this.element.nativeElement.focus()}hide(){this._typeahead.isShown&&(this._typeahead.hide(),this._outsideClickListener(),this._container=null)}onOutsideClick(){this._container&&!this._container.isFocused&&this.hide()}ngOnDestroy(){for(const t of this._subscriptions)t.unsubscribe();this._typeahead.dispose()}asyncActions(){this._subscriptions.push(this.keyUpEventEmitter.pipe(_u(this.typeaheadWaitMs),Object(Su.a)(t=>this.typeahead.pipe(Object(Ne.a)(e=>{const n=this.normalizeQuery(t);return e.filter(t=>t&&this.testMatch(this.normalizeOption(t),n))})))).subscribe(t=>{this.finalizeAsyncCall(t)}))}syncActions(){this._subscriptions.push(this.keyUpEventEmitter.pipe(_u(this.typeaheadWaitMs),Object(Rn.a)(t=>{const e=this.normalizeQuery(t);return Object(Nn.a)(this.typeahead).pipe(Object(Cn.a)(t=>t&&this.testMatch(this.normalizeOption(t),e)),Mn())})).subscribe(t=>{this.finalizeAsyncCall(t)}))}normalizeOption(t){const e=Au(t,this.typeaheadOptionField);return(this.typeaheadLatinize?Cu(e):e).toLowerCase()}normalizeQuery(t){let e=(this.typeaheadLatinize?Cu(t):t).toString().toLowerCase();return e=this.typeaheadSingleWords?Ru(e,this.typeaheadWordDelimiters,this.typeaheadPhraseDelimiters):e,e}testMatch(t,e){let n;if("object"==typeof e){n=e.length;for(let a=0;a<n;a+=1)if(e[a].length>0&&t.indexOf(e[a])<0)return!1;return!0}return t.indexOf(e)>=0}finalizeAsyncCall(t){if(this.prepareMatches(t||[]),this.typeaheadLoading.emit(!1),this.typeaheadNoResults.emit(!this.hasMatches()),this.hasMatches())if(this._container){const t=((this.typeaheadLatinize?Cu(this.ngControl.control.value):this.ngControl.control.value)||"").toString().toLowerCase();this._container.query=this.typeaheadSingleWords?Ru(t,this.typeaheadWordDelimiters,this.typeaheadPhraseDelimiters):t,this._container.matches=this._matches}else this.show();else this.hide()}prepareMatches(t){const e=t.slice(0,this.typeaheadOptionsLimit);if(this.typeaheadGroupField){let t=[];e.map(t=>Au(t,this.typeaheadGroupField)).filter((t,e,n)=>n.indexOf(t)===e).forEach(n=>{t.push(new Nu(n,n,!0)),t=t.concat(e.filter(t=>Au(t,this.typeaheadGroupField)===n).map(t=>new Nu(t,Au(t,this.typeaheadOptionField))))}),this._matches=t}else this._matches=e.map(t=>new Nu(t,Au(t,this.typeaheadOptionField)))}hasMatches(){return this._matches.length>0}}class Du{static forRoot(){return{ngModule:Du,providers:[U.a,ra.a,Eu]}}}var Pu=n("pYKc"),Mu=n("ppaS"),qu=n("4HWh"),ju=n("p4Cf"),Fu=n("D4zM"),Vu=n("OcYo"),Gu=n("Ekvf"),Bu=n("a96k"),zu=n("2EZI");class Yu{constructor(t,e,n,a,r,i,s,u){this.actionLabels=t,this.cephServiceService=e,this.formBuilder=n,this.hostService=a,this.i18n=r,this.poolService=i,this.router=s,this.taskWrapperService=u,this.serviceTypes=[],this.searchLabels=new In.a(t=>{t.next(this.serviceForm.getValue("label"))}).pipe(Object(Ne.a)(t=>this.labels.filter(e=>e.toLowerCase().indexOf(t.toLowerCase())>-1).slice(0,10))),this.resource=this.i18n("service"),this.hosts={options:[],messages:new cs.a({empty:this.i18n("There are no hosts."),filter:this.i18n("Filter hosts")},this.i18n)},this.createForm()}createForm(){this.serviceForm=this.formBuilder.group({service_type:[null,[K.B.required]],service_id:[null,[qs.a.requiredIf({service_type:"mds"}),qs.a.requiredIf({service_type:"nfs"}),qs.a.requiredIf({service_type:"iscsi"}),qs.a.composeIf({service_type:"rgw"},[K.B.required,qs.a.custom("rgwPattern",t=>!X.isEmpty(t)&&!/^[^.]+\.[^.]+(\.[^.]+)?$/.test(t))])]],placement:["hosts"],label:[null,[qs.a.requiredIf({placement:"label",unmanaged:!1})]],hosts:[[]],count:[null,[qs.a.number(!1),K.B.min(1)]],unmanaged:[!1],pool:[null,[qs.a.requiredIf({service_type:"nfs",unmanaged:!1}),qs.a.requiredIf({service_type:"iscsi",unmanaged:!1})]],namespace:[null],rgw_frontend_port:[null,[qs.a.number(!1),K.B.min(1),K.B.max(65535)]],trusted_ip_list:[null],api_port:[null,[qs.a.number(!1),K.B.min(1),K.B.max(65535)]],api_user:[null,[qs.a.requiredIf({service_type:"iscsi",unmanaged:!1})]],api_password:[null,[qs.a.requiredIf({service_type:"iscsi",unmanaged:!1})]],ssl:[!1],ssl_cert:["",[qs.a.composeIf({service_type:"rgw",unmanaged:!1,ssl:!0},[K.B.required,qs.a.sslCert()]),qs.a.composeIf({service_type:"iscsi",unmanaged:!1,ssl:!0},[K.B.required,qs.a.sslCert()])]],ssl_key:["",[qs.a.composeIf({service_type:"rgw",unmanaged:!1,ssl:!0},[K.B.required,qs.a.sslPrivKey()]),qs.a.composeIf({service_type:"iscsi",unmanaged:!1,ssl:!0},[K.B.required,qs.a.sslPrivKey()])]]})}ngOnInit(){this.action=this.actionLabels.CREATE,this.cephServiceService.getKnownTypes().subscribe(t=>{this.serviceTypes=X.difference(t,["osd"]).sort()}),this.hostService.list().subscribe(t=>{const e=[];X.forEach(t,t=>{if(X.get(t,"sources.orchestrator",!1)){const n=new Bu.a(!1,X.get(t,"hostname"),"");e.push(n)}}),this.hosts.options=[...e]}),this.hostService.getLabels().subscribe(t=>{this.labels=t}),this.poolService.getList().subscribe(t=>{this.pools=t})}goToListView(){this.router.navigate(["/services"])}fileUpload(t,e){const n=t[0],a=new FileReader;a.addEventListener("load",t=>{const n=this.serviceForm.get(e);n.setValue(t.target.result),n.markAsDirty(),n.markAsTouched(),n.updateValueAndValidity()}),a.readAsText(n,"utf8")}onSubmit(){const t=this,e=this.serviceForm.value,n=e.service_id,a=e.service_type,r={service_type:a,placement:{},unmanaged:e.unmanaged};let i=a;if(X.isString(n)&&!X.isEmpty(n)&&(i=`${a}.${n}`,r.service_id=n),!e.unmanaged){switch(e.placement){case"hosts":e.hosts.length>0&&(r.placement.hosts=e.hosts);break;case"label":r.placement.label=e.label}switch(X.isNumber(e.count)&&e.count>0&&(r.placement.count=e.count),a){case"nfs":r.pool=e.pool,X.isString(e.namespace)&&!X.isEmpty(e.namespace)&&(r.namespace=e.namespace);break;case"rgw":X.isNumber(e.rgw_frontend_port)&&e.rgw_frontend_port>0&&(r.rgw_frontend_port=e.rgw_frontend_port),r.ssl=e.ssl,e.ssl&&(r.rgw_frontend_ssl_certificate=e.ssl_cert.trim(),r.rgw_frontend_ssl_key=e.ssl_key.trim());break;case"iscsi":if(r.pool=e.pool,X.isString(e.trusted_ip_list)&&!X.isEmpty(e.trusted_ip_list)){let t=X.split(e.trusted_ip_list,",");t=X.map(t,X.trim),r.trusted_ip_list=t}X.isNumber(e.api_port)&&e.api_port>0&&(r.api_port=e.api_port),r.api_user=e.api_user,r.api_password=e.api_password,r.api_secure=e.ssl,e.ssl&&(r.ssl_cert=e.ssl_cert.trim(),r.ssl_key=e.ssl_key.trim())}}this.taskWrapperService.wrapTaskAroundCall({task:new fs.a("service/"+St.e.CREATE,{service_name:i}),call:this.cephServiceService.create(r)}).subscribe({error(){t.serviceForm.setErrors({cdSubmitButton:!0})},complete(){t.goToListView()}})}}var Hu=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Uu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function Wu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Ku(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function $u(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value does not match the pattern "])),(t()(),s["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["<realm_name>.<zone_name>[.<subcluster>]"])),(t()(),s["ɵted"](-1,null,["."]))],null,null)}function Zu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","placement"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Placement"])),(t()(),s["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","placement"],["id","placement"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,9).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](11,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](15,0,null,null,3,"option",[["value","hosts"]],null,null,null,null,null)),s["ɵdid"](16,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](17,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Hosts"])),(t()(),s["ɵeld"](19,0,null,null,3,"option",[["value","label"]],null,null,null,null,null)),s["ɵdid"](20,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](21,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Label"]))],(function(t,e){t(e,1,0),t(e,11,0,"placement"),t(e,14,0,"placement"),t(e,16,0,"hosts"),t(e,17,0,"hosts"),t(e,20,0,"label"),t(e,21,0,"label")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Ju(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Qu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Label"])),(t()(),s["ɵeld"](6,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,16777216,null,null,8,"input",[["autocomplete","off"],["class","form-control"],["formControlName","label"],["id","label"],["type","text"],["typeaheadWaitMs","200"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"keyup"],[null,"click"],[null,"focus"],[null,"keydown"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,9)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,9)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,9)._compositionEnd(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,14).onInput(n)&&a),"keyup"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n)&&a),"click"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"focus"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onBlur()&&a),"keydown"===e&&(a=!1!==s["ɵnov"](t,14).onKeydown(n)&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](11,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,212992,null,0,Lu,[U.a,Eu,s.ChangeDetectorRef,s.ElementRef,K.q,s.Renderer2,s.ViewContainerRef],{typeahead:[0,"typeahead"],typeaheadWaitMs:[1,"typeaheadWaitMs"]},null),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ju)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,11,0,"label"),t(e,14,0,n.searchLabels,"200"),t(e,15,0,"label"),t(e,17,0,n.serviceForm.showError("label",s["ɵnov"](e.parent,5),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass)}))}function Xu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,11,{FormControlNames:1}),s["ɵqud"](603979776,12,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","hosts"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Hosts"])),(t()(),s["ɵeld"](6,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"cd-select-badges",[["id","hosts"]],null,null,null,Pu.b,Pu.a)),s["ɵdid"](8,49152,null,0,Mu.a,[fe.a],{data:[0,"data"],options:[1,"options"],messages:[2,"messages"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,8,0,n.serviceForm.controls.hosts.value,n.hosts.options,n.hosts.messages)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess)}))}function to(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value must be at least 1."]))],null,null)}function eo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number."]))],null,null)}function no(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,13,{FormControlNames:1}),s["ɵqud"](603979776,14,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","count"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Count"])),(t()(),s["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](8,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["Only that number of daemons will be created."])),(t()(),s["ɵeld"](10,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,8,"input",[["class","form-control"],["formControlName","count"],["id","count"],["min","1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,13)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,13).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,13)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,13)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onTouched()&&a),a}),null,null)),s["ɵdid"](12,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](13,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](14,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](16,671744,[[13,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](18,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](19,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,to)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,eo)),s["ɵdid"](23,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,16,0,"count"),t(e,19,0,"count"),t(e,21,0,n.serviceForm.showError("count",s["ɵnov"](e.parent,5),"min")),t(e,23,0,n.serviceForm.showError("count",s["ɵnov"](e.parent,5),"pattern"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,11,0,s["ɵnov"](e,18).ngClassUntouched,s["ɵnov"](e,18).ngClassTouched,s["ɵnov"](e,18).ngClassPristine,s["ɵnov"](e,18).ngClassDirty,s["ɵnov"](e,18).ngClassValid,s["ɵnov"](e,18).ngClassInvalid,s["ɵnov"](e,18).ngClassPending,s["ɵnov"](e,19).validClass,s["ɵnov"](e,19).invalidClass)}))}function ao(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function ro(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- No pools available --"]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function io(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Select a pool --"]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function so(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.pool_name),t(e,2,0,e.context.$implicit.pool_name)}),(function(t,e){t(e,3,0,e.context.$implicit.pool_name)}))}function uo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function oo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,40,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,15,{FormControlNames:1}),s["ɵqud"](603979776,16,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","pool"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pool"])),(t()(),s["ɵeld"](7,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","pool"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,10).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,10).onTouched()&&a),a}),null,null)),s["ɵdid"](9,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](10,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](12,671744,[[15,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](14,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ao)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ro)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,io)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,so)),s["ɵdid"](23,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,uo)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](26,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](27,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,17,{FormControlNames:1}),s["ɵqud"](603979776,18,{messagesBlock:0}),(t()(),s["ɵeld"](30,0,null,0,1,"label",[["class","cd-col-form-label"],["for","namespace"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Namespace"])),(t()(),s["ɵeld"](32,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](33,0,null,null,7,"input",[["class","form-control"],["formControlName","namespace"],["id","namespace"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,35)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,35).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,35)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,35)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](34,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](35,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](37,671744,[[17,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](39,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](40,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,12,0,"pool"),t(e,15,0,"pool"),t(e,17,0,null===n.pools),t(e,19,0,null!==n.pools&&0===n.pools.length),t(e,21,0,null!==n.pools&&n.pools.length>0),t(e,23,0,n.pools),t(e,25,0,n.serviceForm.showError("pool",s["ɵnov"](e.parent,5),"required")),t(e,27,0),t(e,37,0,"namespace"),t(e,40,0,"namespace")}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,8,0,s["ɵnov"](e,14).ngClassUntouched,s["ɵnov"](e,14).ngClassTouched,s["ɵnov"](e,14).ngClassPristine,s["ɵnov"](e,14).ngClassDirty,s["ɵnov"](e,14).ngClassValid,s["ɵnov"](e,14).ngClassInvalid,s["ɵnov"](e,14).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass),t(e,26,0,s["ɵnov"](e,27).hasErrors,s["ɵnov"](e,27).hasSuccess),t(e,33,0,s["ɵnov"](e,39).ngClassUntouched,s["ɵnov"](e,39).ngClassTouched,s["ɵnov"](e,39).ngClassPristine,s["ɵnov"](e,39).ngClassDirty,s["ɵnov"](e,39).ngClassValid,s["ɵnov"](e,39).ngClassInvalid,s["ɵnov"](e,39).ngClassPending,s["ɵnov"](e,40).validClass,s["ɵnov"](e,40).invalidClass)}))}function lo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number."]))],null,null)}function co(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value must be at least 1."]))],null,null)}function fo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value cannot exceed 65535."]))],null,null)}function ho(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,19,{FormControlNames:1}),s["ɵqud"](603979776,20,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label"],["for","rgw_frontend_port"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Port"])),(t()(),s["ɵeld"](7,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,8,"input",[["class","form-control"],["formControlName","rgw_frontend_port"],["id","rgw_frontend_port"],["max","65535"],["min","1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,10)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,10).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,10)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,10)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,11).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,11).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,11).onTouched()&&a),a}),null,null)),s["ɵdid"](9,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](10,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](11,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](13,671744,[[19,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](15,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](16,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,lo)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,co)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fo)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,13,0,"rgw_frontend_port"),t(e,16,0,"rgw_frontend_port"),t(e,18,0,n.serviceForm.showError("rgw_frontend_port",s["ɵnov"](e.parent,5),"pattern")),t(e,20,0,n.serviceForm.showError("rgw_frontend_port",s["ɵnov"](e.parent,5),"min")),t(e,22,0,n.serviceForm.showError("rgw_frontend_port",s["ɵnov"](e.parent,5),"max"))}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,8,0,s["ɵnov"](e,15).ngClassUntouched,s["ɵnov"](e,15).ngClassTouched,s["ɵnov"](e,15).ngClassPristine,s["ɵnov"](e,15).ngClassDirty,s["ɵnov"](e,15).ngClassValid,s["ɵnov"](e,15).ngClassInvalid,s["ɵnov"](e,15).ngClassPending,s["ɵnov"](e,16).validClass,s["ɵnov"](e,16).invalidClass)}))}function go(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function po(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- No pools available --"]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function bo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Select a pool --"]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function mo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.pool_name),t(e,2,0,e.context.$implicit.pool_name)}),(function(t,e){t(e,3,0,e.context.$implicit.pool_name)}))}function yo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function vo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number."]))],null,null)}function xo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value must be at least 1."]))],null,null)}function _o(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value cannot exceed 65535."]))],null,null)}function To(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function wo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Oo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,121,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,21,{FormControlNames:1}),s["ɵqud"](603979776,22,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","pool"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pool"])),(t()(),s["ɵeld"](7,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","pool"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,10).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,10).onTouched()&&a),a}),null,null)),s["ɵdid"](9,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](10,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](12,671744,[[21,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](14,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,go)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,po)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,bo)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mo)),s["ɵdid"](23,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,yo)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](26,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](27,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,23,{FormControlNames:1}),s["ɵqud"](603979776,24,{messagesBlock:0}),(t()(),s["ɵeld"](30,0,null,0,12,"label",[["class","cd-col-form-label"],["for","trusted_ip_list"]],null,null,null,null,null)),(t()(),s["ɵeld"](31,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Trusted IPs"])),(t()(),s["ɵeld"](33,0,null,null,9,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](34,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](35,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Comma separated list of IP addresses."])),(t()(),s["ɵeld"](37,0,null,0,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](38,0,null,0,4,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Please add the "])),(t()(),s["ɵeld"](40,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Ceph Manager"])),(t()(),s["ɵted"](-1,null,[" IP addresses here, otherwise the iSCSI gateways can't be reached."])),(t()(),s["ɵeld"](43,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](44,0,null,null,7,"input",[["class","form-control"],["formControlName","trusted_ip_list"],["id","trusted_ip_list"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,46)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,46).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,46)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,46)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](45,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](46,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](48,671744,[[23,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](50,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](51,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](52,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](53,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,25,{FormControlNames:1}),s["ɵqud"](603979776,26,{messagesBlock:0}),(t()(),s["ɵeld"](56,0,null,0,1,"label",[["class","cd-col-form-label"],["for","api_port"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Port"])),(t()(),s["ɵeld"](58,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](59,0,null,null,8,"input",[["class","form-control"],["formControlName","api_port"],["id","api_port"],["max","65535"],["min","1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,61)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,61).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,61)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,61)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,62).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,62).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,62).onTouched()&&a),a}),null,null)),s["ɵdid"](60,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](61,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](62,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](64,671744,[[25,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](66,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](67,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,vo)),s["ɵdid"](69,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xo)),s["ɵdid"](71,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_o)),s["ɵdid"](73,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](74,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](75,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,27,{FormControlNames:1}),s["ɵqud"](603979776,28,{messagesBlock:0}),(t()(),s["ɵeld"](78,0,null,0,5,"label",[["class","cd-col-form-label"],["for","api_user"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](80,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](81,1),s["ɵpod"](82,{required:0}),(t()(),s["ɵted"](-1,null,["User"])),(t()(),s["ɵeld"](84,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](85,0,null,null,7,"input",[["class","form-control"],["formControlName","api_user"],["id","api_user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,87)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,87).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,87)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,87)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](86,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](87,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](89,671744,[[27,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](91,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](92,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,To)),s["ɵdid"](94,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](95,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](96,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,29,{FormControlNames:1}),s["ɵqud"](603979776,30,{messagesBlock:0}),(t()(),s["ɵeld"](99,0,null,0,5,"label",[["class","cd-col-form-label"],["for","api_password"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](101,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](102,1),s["ɵpod"](103,{required:0}),(t()(),s["ɵted"](-1,null,["Password"])),(t()(),s["ɵeld"](105,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](106,0,null,null,15,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](107,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","api_password"],["id","api_password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,109)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,109).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,109)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,109)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](108,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](109,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](111,671744,[[29,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](113,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](114,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](115,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](116,0,null,null,1,"button",[["cdPasswordButton","api_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,117).onClick()&&a),a}),null,null)),s["ɵdid"](117,81920,null,0,Fu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵeld"](118,0,null,null,1,"button",[["cdCopy2ClipboardButton","api_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,119).onClick()&&a),a}),null,null)),s["ɵdid"](119,81920,null,0,Vu.a,[s.ElementRef,s.Renderer2,d.j,fe.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,wo)),s["ɵdid"](121,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,12,0,"pool"),t(e,15,0,"pool"),t(e,17,0,null===n.pools),t(e,19,0,null!==n.pools&&0===n.pools.length),t(e,21,0,null!==n.pools&&n.pools.length>0),t(e,23,0,n.pools),t(e,25,0,n.serviceForm.showError("pool",s["ɵnov"](e.parent,5),"required")),t(e,27,0),t(e,48,0,"trusted_ip_list"),t(e,51,0,"trusted_ip_list"),t(e,53,0),t(e,64,0,"api_port"),t(e,67,0,"api_port"),t(e,69,0,n.serviceForm.showError("api_port",s["ɵnov"](e.parent,5),"pattern")),t(e,71,0,n.serviceForm.showError("api_port",s["ɵnov"](e.parent,5),"min")),t(e,73,0,n.serviceForm.showError("api_port",s["ɵnov"](e.parent,5),"max")),t(e,75,0);var a=t(e,82,0,t(e,81,0,"iscsi").includes(n.serviceForm.controls.service_type.value));t(e,80,0,"cd-col-form-label",a),t(e,89,0,"api_user"),t(e,92,0,"api_user"),t(e,94,0,n.serviceForm.showError("api_user",s["ɵnov"](e.parent,5),"required")),t(e,96,0);var r=t(e,103,0,t(e,102,0,"iscsi").includes(n.serviceForm.controls.service_type.value));t(e,101,0,"cd-col-form-label",r),t(e,111,0,"api_password"),t(e,114,0,"api_password"),t(e,117,0,"api_password"),t(e,119,0,"api_password"),t(e,121,0,n.serviceForm.showError("api_password",s["ɵnov"](e.parent,5),"required"))}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,8,0,s["ɵnov"](e,14).ngClassUntouched,s["ɵnov"](e,14).ngClassTouched,s["ɵnov"](e,14).ngClassPristine,s["ɵnov"](e,14).ngClassDirty,s["ɵnov"](e,14).ngClassValid,s["ɵnov"](e,14).ngClassInvalid,s["ɵnov"](e,14).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass),t(e,26,0,s["ɵnov"](e,27).hasErrors,s["ɵnov"](e,27).hasSuccess),t(e,44,0,s["ɵnov"](e,50).ngClassUntouched,s["ɵnov"](e,50).ngClassTouched,s["ɵnov"](e,50).ngClassPristine,s["ɵnov"](e,50).ngClassDirty,s["ɵnov"](e,50).ngClassValid,s["ɵnov"](e,50).ngClassInvalid,s["ɵnov"](e,50).ngClassPending,s["ɵnov"](e,51).validClass,s["ɵnov"](e,51).invalidClass),t(e,52,0,s["ɵnov"](e,53).hasErrors,s["ɵnov"](e,53).hasSuccess),t(e,59,0,s["ɵnov"](e,66).ngClassUntouched,s["ɵnov"](e,66).ngClassTouched,s["ɵnov"](e,66).ngClassPristine,s["ɵnov"](e,66).ngClassDirty,s["ɵnov"](e,66).ngClassValid,s["ɵnov"](e,66).ngClassInvalid,s["ɵnov"](e,66).ngClassPending,s["ɵnov"](e,67).validClass,s["ɵnov"](e,67).invalidClass),t(e,74,0,s["ɵnov"](e,75).hasErrors,s["ɵnov"](e,75).hasSuccess),t(e,85,0,s["ɵnov"](e,91).ngClassUntouched,s["ɵnov"](e,91).ngClassTouched,s["ɵnov"](e,91).ngClassPristine,s["ɵnov"](e,91).ngClassDirty,s["ɵnov"](e,91).ngClassValid,s["ɵnov"](e,91).ngClassInvalid,s["ɵnov"](e,91).ngClassPending,s["ɵnov"](e,92).validClass,s["ɵnov"](e,92).invalidClass),t(e,95,0,s["ɵnov"](e,96).hasErrors,s["ɵnov"](e,96).hasSuccess),t(e,107,0,s["ɵnov"](e,113).ngClassUntouched,s["ɵnov"](e,113).ngClassTouched,s["ɵnov"](e,113).ngClassPristine,s["ɵnov"](e,113).ngClassDirty,s["ɵnov"](e,113).ngClassValid,s["ɵnov"](e,113).ngClassInvalid,s["ɵnov"](e,113).ngClassPending,s["ɵnov"](e,114).validClass,s["ɵnov"](e,114).invalidClass)}))}function So(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Io(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Invalid SSL certificate."]))],null,null)}function No(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,33,{FormControlNames:1}),s["ɵqud"](603979776,34,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","ssl_cert"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Certificate"])),(t()(),s["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](8,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["The SSL certificate in PEM format."])),(t()(),s["ɵeld"](10,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,7,"textarea",[["class","form-control resize-vertical text-monospace text-pre"],["formControlName","ssl_cert"],["id","ssl_cert"],["rows","5"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,12)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,12).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,12)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,12)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](14,671744,[[33,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](16,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](17,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["              "])),(t()(),s["ɵeld"](19,0,null,null,1,"input",[["type","file"]],null,[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.fileUpload(n.target.files,"ssl_cert")&&a),a}),null,null)),s["ɵdid"](20,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,So)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Io)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,14,0,"ssl_cert"),t(e,17,0,"ssl_cert"),t(e,22,0,n.serviceForm.showError("ssl_cert",s["ɵnov"](e.parent.parent,5),"required")),t(e,24,0,n.serviceForm.showError("ssl_cert",s["ɵnov"](e.parent.parent,5),"pattern"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,11,0,s["ɵnov"](e,16).ngClassUntouched,s["ɵnov"](e,16).ngClassTouched,s["ɵnov"](e,16).ngClassPristine,s["ɵnov"](e,16).ngClassDirty,s["ɵnov"](e,16).ngClassValid,s["ɵnov"](e,16).ngClassInvalid,s["ɵnov"](e,16).ngClassPending,s["ɵnov"](e,17).validClass,s["ɵnov"](e,17).invalidClass)}))}function Co(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Ro(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Invalid SSL private key."]))],null,null)}function Ao(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,35,{FormControlNames:1}),s["ɵqud"](603979776,36,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","ssl_key"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Private key"])),(t()(),s["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](8,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["The SSL private key in PEM format."])),(t()(),s["ɵeld"](10,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,7,"textarea",[["class","form-control resize-vertical text-monospace text-pre"],["formControlName","ssl_key"],["id","ssl_key"],["rows","5"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,12)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,12).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,12)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,12)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](14,671744,[[35,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](16,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](17,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["              "])),(t()(),s["ɵeld"](19,0,null,null,1,"input",[["type","file"]],null,[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.fileUpload(n.target.files,"ssl_key")&&a),a}),null,null)),s["ɵdid"](20,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,Co)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ro)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,14,0,"ssl_key"),t(e,17,0,"ssl_key"),t(e,22,0,n.serviceForm.showError("ssl_key",s["ɵnov"](e.parent.parent,5),"required")),t(e,24,0,n.serviceForm.showError("ssl_key",s["ɵnov"](e.parent.parent,5),"pattern"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,11,0,s["ɵnov"](e,16).ngClassUntouched,s["ɵnov"](e,16).ngClassTouched,s["ɵnov"](e,16).ngClassPristine,s["ɵnov"](e,16).ngClassDirty,s["ɵnov"](e,16).ngClassValid,s["ɵnov"](e,16).ngClassInvalid,s["ɵnov"](e,16).ngClassPending,s["ɵnov"](e,17).validClass,s["ɵnov"](e,17).invalidClass)}))}function ko(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,20,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,31,{FormControlNames:1}),s["ɵqud"](603979776,32,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","ssl"],["id","ssl"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,9).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](11,671744,[[31,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](15,0,null,null,1,"label",[["class","custom-control-label"],["for","ssl"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["SSL"])),(t()(),s["ɵand"](16777216,null,null,1,null,No)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ao)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0),t(e,11,0,"ssl"),t(e,14,0,"ssl"),t(e,18,0,n.serviceForm.controls.ssl.value),t(e,20,0,n.serviceForm.controls.ssl.value)}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Eo(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Ps.a,[]),(t()(),s["ɵeld"](2,0,null,null,100,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,99,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,5).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,5).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit()&&a),a}),null,null)),s["ɵdid"](4,16384,null,0,K.G,[],null,null),s["ɵdid"](5,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](7,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](8,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](9,0,null,null,93,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](11,null,[""," ",""])),s["ɵppd"](12,1),s["ɵppd"](13,1),(t()(),s["ɵeld"](14,0,null,null,79,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](16,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](19,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","service_type"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Type"])),(t()(),s["ɵeld"](21,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","service_type"],["id","service_type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,24).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,24).onTouched()&&a),a}),null,null)),s["ɵdid"](23,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](24,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](26,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](28,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](29,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](30,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](31,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](32,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Select a service type --"])),(t()(),s["ɵand"](16777216,null,null,1,null,Uu)),s["ɵdid"](35,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Wu)),s["ɵdid"](37,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](38,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](39,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](42,0,null,0,5,"label",[["class","cd-col-form-label"],["for","service_id"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](44,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](45,4),s["ɵpod"](46,{required:0}),(t()(),s["ɵted"](-1,null,["Id"])),(t()(),s["ɵeld"](48,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](49,0,null,null,7,"input",[["class","form-control"],["formControlName","service_id"],["id","service_id"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,51)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,51).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,51)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,51)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](50,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](51,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](53,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](55,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](56,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ku)),s["ɵdid"](58,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$u)),s["ɵdid"](60,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](61,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](62,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](65,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](66,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](67,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","unmanaged"],["id","unmanaged"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,69).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,69).onTouched()&&a),a}),null,null)),s["ɵdid"](68,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](69,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](71,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](73,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](74,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](75,0,null,null,1,"label",[["class","custom-control-label"],["for","unmanaged"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Unmanaged"])),(t()(),s["ɵand"](16777216,null,null,1,null,Zu)),s["ɵdid"](78,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Qu)),s["ɵdid"](80,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Xu)),s["ɵdid"](82,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,no)),s["ɵdid"](84,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,oo)),s["ɵdid"](86,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ho)),s["ɵdid"](88,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Oo)),s["ɵdid"](90,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,2,null,ko)),s["ɵdid"](92,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpad"](93,2),(t()(),s["ɵeld"](94,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](95,0,null,null,7,"div",[["class","text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](96,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),ks.b,ks.a)),s["ɵdid"](97,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](98,0,[""," "," "])),s["ɵppd"](99,1),s["ɵppd"](100,1),(t()(),s["ɵeld"](101,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](102,49152,null,0,Ds.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,5,0,n.serviceForm),t(e,8,0,n.serviceForm),t(e,16,0),t(e,26,0,"service_type"),t(e,29,0,"service_type"),t(e,31,0,null),t(e,32,0,null),t(e,35,0,n.serviceTypes),t(e,37,0,n.serviceForm.showError("service_type",s["ɵnov"](e,5),"required")),t(e,39,0);var a=t(e,46,0,t(e,45,0,"mds","rgw","nfs","iscsi").includes(n.serviceForm.controls.service_type.value));t(e,44,0,"cd-col-form-label",a),t(e,53,0,"service_id"),t(e,56,0,"service_id"),t(e,58,0,n.serviceForm.showError("service_id",s["ɵnov"](e,5),"required")),t(e,60,0,n.serviceForm.showError("service_id",s["ɵnov"](e,5),"rgwPattern")),t(e,62,0),t(e,71,0,"unmanaged"),t(e,74,0,"unmanaged"),t(e,78,0,!n.serviceForm.controls.unmanaged.value),t(e,80,0,!n.serviceForm.controls.unmanaged.value&&"label"===n.serviceForm.controls.placement.value),t(e,82,0,!n.serviceForm.controls.unmanaged.value&&"hosts"===n.serviceForm.controls.placement.value),t(e,84,0,!n.serviceForm.controls.unmanaged.value),t(e,86,0,!n.serviceForm.controls.unmanaged.value&&"nfs"===n.serviceForm.controls.service_type.value),t(e,88,0,!n.serviceForm.controls.unmanaged.value&&"rgw"===n.serviceForm.controls.service_type.value),t(e,90,0,!n.serviceForm.controls.unmanaged.value&&"iscsi"===n.serviceForm.controls.service_type.value);var r=!n.serviceForm.controls.unmanaged.value&&t(e,93,0,"rgw","iscsi").includes(n.serviceForm.controls.service_type.value);t(e,92,0,r),t(e,97,0,n.serviceForm)}),(function(t,e){var n=e.component;t(e,3,0,s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending);var a=s["ɵunv"](e,11,0,t(e,12,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,11,1,t(e,13,0,s["ɵnov"](e,1),n.resource));t(e,11,0,a,r),t(e,15,0,s["ɵnov"](e,16).hasErrors,s["ɵnov"](e,16).hasSuccess),t(e,22,0,s["ɵnov"](e,28).ngClassUntouched,s["ɵnov"](e,28).ngClassTouched,s["ɵnov"](e,28).ngClassPristine,s["ɵnov"](e,28).ngClassDirty,s["ɵnov"](e,28).ngClassValid,s["ɵnov"](e,28).ngClassInvalid,s["ɵnov"](e,28).ngClassPending,s["ɵnov"](e,29).validClass,s["ɵnov"](e,29).invalidClass),t(e,38,0,s["ɵnov"](e,39).hasErrors,s["ɵnov"](e,39).hasSuccess),t(e,49,0,s["ɵnov"](e,55).ngClassUntouched,s["ɵnov"](e,55).ngClassTouched,s["ɵnov"](e,55).ngClassPristine,s["ɵnov"](e,55).ngClassDirty,s["ɵnov"](e,55).ngClassValid,s["ɵnov"](e,55).ngClassInvalid,s["ɵnov"](e,55).ngClassPending,s["ɵnov"](e,56).validClass,s["ɵnov"](e,56).invalidClass),t(e,61,0,s["ɵnov"](e,62).hasErrors,s["ɵnov"](e,62).hasSuccess),t(e,67,0,s["ɵnov"](e,73).ngClassUntouched,s["ɵnov"](e,73).ngClassTouched,s["ɵnov"](e,73).ngClassPristine,s["ɵnov"](e,73).ngClassDirty,s["ɵnov"](e,73).ngClassValid,s["ɵnov"](e,73).ngClassInvalid,s["ɵnov"](e,73).ngClassPending,s["ɵnov"](e,74).validClass,s["ɵnov"](e,74).invalidClass);var i=s["ɵunv"](e,98,0,t(e,99,0,s["ɵnov"](e,0),n.action)),u=s["ɵunv"](e,98,1,t(e,100,0,s["ɵnov"](e,1),n.resource));t(e,98,0,i,u)}))}function Lo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-service-form",[],null,null,null,Eo,Hu)),s["ɵdid"](1,114688,null,0,Yu,[St.b,ai,zu.a,ii,fe.a,Gu.a,Et.m,bs.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Do=s["ɵccf"]("cd-service-form",Yu,Lo,{},{},[]),Po=n("xSw7"),Mo=n("GgAd"),qo=n("FFMq"),jo=n("j8L6"),Fo=n("b5OY"),Vo=n("pxLl");class Go{constructor(){this.last={}}ngOnChanges(){this.render()}hexdigits(t){const e=Math.floor(255*t).toString(16);return 1===e.length?"0"+e:e}hexcolor(t,e,n){return"#"+this.hexdigits(t)+this.hexdigits(e)+this.hexdigits(n)}render(){if(!this.histogram)return;let t=0;X.each(this.histogram.values,(e,n)=>{X.each(e,(e,a)=>{let r;r=this.last&&this.last[n]&&this.last[n][a]?e-this.last[n][a]:e,t=Math.max(t,r)})}),this.valuesStyle=this.histogram.values.map((e,n)=>e.map((e,a)=>{const r=t?(this.last&&this.last[n]&&this.last[n][a]?e-this.last[n][a]:e)/t:0;return{backgroundColor:this.hexcolor(1-r,r,0)}})),this.last=this.histogram.values}}var Bo=s["ɵcrt"]({encapsulation:0,styles:[["table[_ngcontent-%COMP%]   tr[_ngcontent-%COMP%]{height:10px}table[_ngcontent-%COMP%]   td[_ngcontent-%COMP%]{width:10px;height:10px}"]],data:{}});function zo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null)],(function(t,e){t(e,2,0,e.context.$implicit)}),null)}function Yo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"tr",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,zo)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit)}),null)}function Ho(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"table",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Yo)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.valuesStyle)}),null)}class Uo{constructor(t,e){this.osdService=t,this.authStorageService=e,this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnChanges(){X.get(this,"osd.id")!==X.get(this,"selection.id")&&(this.osd=this.selection),X.isNumber(X.get(this,"osd.id"))&&this.refresh()}refresh(){this.osdService.getDetails(this.osd.id).subscribe(t=>{this.osd.details=t,this.osd.histogram_failed="",X.isObject(t.histogram)||(this.osd.histogram_failed=t.histogram,this.osd.details.histogram=void 0)})}}var Wo=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ko(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[],null,[[null,"fetchData"]],(function(t,e,n){var a=!0;return"fetchData"===e&&(a=!1!==t.component.refresh()&&a),a}),fi.b,fi.a)),s["ɵdid"](1,638976,null,0,hi.a,[xe.a],{data:[0,"data"]},{fetchData:"fetchData"})],(function(t,e){var n=e.component;t(e,1,0,null==n.osd||null==n.osd.details?null:n.osd.details.osd_metadata)}),null)}function $o(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["Metadata not available"]))],(function(t,e){t(e,1,0,"warning")}),null)}function Zo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-performance-counter",[["serviceType","osd"]],null,null,null,jo.b,jo.a)),s["ɵdid"](1,114688,null,0,Fo.a,[Vo.a,fe.a],{serviceType:[0,"serviceType"],serviceId:[1,"serviceId"]},null)],(function(t,e){var n=e.component;t(e,1,0,"osd",null==n.osd?null:n.osd.id)}),null)}function Jo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](2,0,["Histogram not available: ",""]))],(function(t,e){t(e,1,0,"warning")}),(function(t,e){t(e,2,0,e.component.osd.histogram_failed)}))}function Qo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[["class","col-md-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Writes"])),(t()(),s["ɵeld"](4,0,null,null,1,"cd-osd-performance-histogram",[],null,null,null,Ho,Bo)),s["ɵdid"](5,573440,null,0,Go,[],{histogram:[0,"histogram"]},null),(t()(),s["ɵeld"](6,0,null,null,4,"div",[["class","col-md-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Reads"])),(t()(),s["ɵeld"](9,0,null,null,1,"cd-osd-performance-histogram",[],null,null,null,Ho,Bo)),s["ɵdid"](10,573440,null,0,Go,[],{histogram:[0,"histogram"]},null)],(function(t,e){var n=e.component;t(e,5,0,null==n.osd||null==n.osd.details||null==n.osd.details.histogram||null==n.osd.details.histogram.osd?null:n.osd.details.histogram.osd.op_w_latency_in_bytes_histogram),t(e,10,0,null==n.osd||null==n.osd.details||null==n.osd.details.histogram||null==n.osd.details.histogram.osd?null:n.osd.details.histogram.osd.op_r_latency_out_bytes_histogram)}),null)}function Xo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","three"],["uid","CrAHE0iZz"]],null,null,null,Cr.b,Cr.a)),s["ɵdid"](3,638976,null,0,Rr.a,[Ar.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Performance Details"),t(e,3,0,"osd-device-details?var-osd=osd."+n.osd.id,"three","CrAHE0iZz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function tl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,30,"tabset",[["id","tabset-osd-details"]],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Devices"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-device-list",[],null,null,null,Qi,Bi)),s["ɵdid"](5,638976,null,0,Gi,[ii,fe.a,i.DatePipe,mi],{osdId:[0,"osdId"]},null),(t()(),s["ɵeld"](6,0,null,0,3,"tab",[["heading","Attributes (OSD map)"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](7,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](8,0,null,null,1,"cd-table-key-value",[],null,null,null,fi.b,fi.a)),s["ɵdid"](9,638976,null,0,hi.a,[xe.a],{data:[0,"data"]},null),(t()(),s["ɵeld"](10,0,null,0,4,"tab",[["heading","Metadata"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](11,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ko)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["noMetaData",2]],null,0,null,$o)),(t()(),s["ɵeld"](15,0,null,0,3,"tab",[["heading","Device health"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](16,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](17,0,null,null,1,"cd-smart-list",[],null,null,null,Vi,vi)),s["ɵdid"](18,638976,null,0,yi,[fe.a,mi,ii],{osdId:[0,"osdId"]},null),(t()(),s["ɵeld"](19,0,null,0,3,"tab",[["heading","Performance counter"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](20,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Zo)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](23,0,null,0,5,"tab",[["heading","Histogram"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](24,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Jo)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Qo)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Xo)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Devices"),t(e,5,0,null==n.osd?null:n.osd.id),t(e,7,0,"Attributes (OSD map)"),t(e,9,0,null==n.osd||null==n.osd.details?null:n.osd.details.osd_map),t(e,11,0,"Metadata"),t(e,13,0,null==n.osd||null==n.osd.details?null:n.osd.details.osd_metadata,s["ɵnov"](e,14)),t(e,16,0,"Device health"),t(e,18,0,null==n.osd?null:n.osd.id),t(e,20,0,"Performance counter"),t(e,22,0,null==n.osd?null:n.osd.details),t(e,24,0,"Histogram"),t(e,26,0,null==n.osd?null:n.osd.histogram_failed),t(e,28,0,null==n.osd||null==n.osd.details?null:n.osd.details.histogram),t(e,30,0,n.grafanaPermission.read)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,6,0,s["ɵnov"](e,7).id,s["ɵnov"](e,7).active,s["ɵnov"](e,7).addClass,s["ɵnov"](e,7).role,s["ɵnov"](e,7).ariaLabelledby),t(e,10,0,s["ɵnov"](e,11).id,s["ɵnov"](e,11).active,s["ɵnov"](e,11).addClass,s["ɵnov"](e,11).role,s["ɵnov"](e,11).ariaLabelledby),t(e,15,0,s["ɵnov"](e,16).id,s["ɵnov"](e,16).active,s["ɵnov"](e,16).addClass,s["ɵnov"](e,16).role,s["ɵnov"](e,16).ariaLabelledby),t(e,19,0,s["ɵnov"](e,20).id,s["ɵnov"](e,20).active,s["ɵnov"](e,20).addClass,s["ɵnov"](e,20).role,s["ɵnov"](e,20).ariaLabelledby),t(e,23,0,s["ɵnov"](e,24).id,s["ɵnov"](e,24).active,s["ɵnov"](e,24).addClass,s["ɵnov"](e,24).role,s["ɵnov"](e,24).ariaLabelledby)}))}function el(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,tl)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.selection)}),null)}function nl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-details",[],null,null,null,el,Wo)),s["ɵdid"](1,573440,null,0,Uo,[mi,J.a],null,null)],null,null)}var al=s["ɵccf"]("cd-osd-details",Uo,nl,{selection:"selection"},{},[]),rl=n("cp0P"),il=n("OLbh");class sl{constructor(t,e,n,a,r){this.activeModal=t,this.authStorageService=e,this.osdService=n,this.notificationService=a,this.i18n=r,this.initialSelection=[],this.osdFlagsForm=new K.k({}),this.flags=[{code:"noup",name:this.i18n("No Up"),description:this.i18n("OSDs are not allowed to start"),value:!1,clusterWide:!1,indeterminate:!1},{code:"nodown",name:this.i18n("No Down"),description:this.i18n("OSD failure reports are being ignored, such that the monitors will not mark OSDs down"),value:!1,clusterWide:!1,indeterminate:!1},{code:"noin",name:this.i18n("No In"),description:this.i18n("OSDs that were previously marked out will not be marked back in when they start"),value:!1,clusterWide:!1,indeterminate:!1},{code:"noout",name:this.i18n("No Out"),description:this.i18n("OSDs will not automatically be marked out after the configured interval"),value:!1,clusterWide:!1,indeterminate:!1}],this.clusterWideTooltip=this.i18n("The flag has been enabled for the entire cluster."),this.permissions=this.authStorageService.getPermissions()}ngOnInit(){const t=this.selected.length;this.osdService.getFlags().subscribe(e=>{const n=this.getActivatedIndivFlags();this.flags.forEach(a=>{const r=n[a.code];e.includes(a.code)&&(a.clusterWide=!0),r===t?a.value=!0:r>0&&(a.indeterminate=!0)}),this.initialSelection=X.cloneDeep(this.flags)})}getActivatedIndivFlags(){const t={};return this.flags.forEach(e=>{t[e.code]=0}),[].concat(...this.selected.map(t=>t.state)).map(e=>{Object.keys(t).includes(e)&&(t[e]=t[e]+1)}),t}changeValue(t){t.value=!t.value,t.indeterminate=!1}resetSelection(){this.flags=X.cloneDeep(this.initialSelection)}submitAction(){const t={};this.flags.forEach(e=>{t[e.code]=e.indeterminate?null:e.value});const e=this.selected.map(t=>t.osd);this.osdService.updateIndividualFlags(t,e).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Updated OSD Flags")),this.activeModal.hide()},()=>{this.activeModal.hide()})}}class ul{constructor(t,e,n,a,r){this.bsModalRef=t,this.authStorageService=e,this.osdService=n,this.notificationService=a,this.i18n=r,this.osdFlagsForm=new K.k({}),this.allFlags={noin:{code:"noin",name:this.i18n("No In"),value:!1,description:this.i18n("OSDs that were previously marked out will not be marked back in when they start")},noout:{code:"noout",name:this.i18n("No Out"),value:!1,description:this.i18n("OSDs will not automatically be marked out after the configured interval")},noup:{code:"noup",name:this.i18n("No Up"),value:!1,description:this.i18n("OSDs are not allowed to start")},nodown:{code:"nodown",name:this.i18n("No Down"),value:!1,description:this.i18n("OSD failure reports are being ignored, such that the monitors will not mark OSDs down")},pause:{code:"pause",name:this.i18n("Pause"),value:!1,description:this.i18n("Pauses reads and writes")},noscrub:{code:"noscrub",name:this.i18n("No Scrub"),value:!1,description:this.i18n("Scrubbing is disabled")},"nodeep-scrub":{code:"nodeep-scrub",name:this.i18n("No Deep Scrub"),value:!1,description:this.i18n("Deep Scrubbing is disabled")},nobackfill:{code:"nobackfill",name:this.i18n("No Backfill"),value:!1,description:this.i18n("Backfilling of PGs is suspended")},norebalance:{code:"norebalance",name:this.i18n("No Rebalance"),value:!1,description:this.i18n("OSD will choose not to backfill unless PG is also degraded")},norecover:{code:"norecover",name:this.i18n("No Recover"),value:!1,description:this.i18n("Recovery of PGs is suspended")},sortbitwise:{code:"sortbitwise",name:this.i18n("Bitwise Sort"),value:!1,description:this.i18n("Use bitwise sort"),disabled:!0},purged_snapdirs:{code:"purged_snapdirs",name:this.i18n("Purged Snapdirs"),value:!1,description:this.i18n("OSDs have converted snapsets"),disabled:!0},recovery_deletes:{code:"recovery_deletes",name:this.i18n("Recovery Deletes"),value:!1,description:this.i18n("Deletes performed during recovery instead of peering"),disabled:!0},pglog_hardlimit:{code:"pglog_hardlimit",name:this.i18n("PG Log Hard Limit"),value:!1,description:this.i18n("Puts a hard limit on pg log length"),disabled:!0}},this.unknownFlags=[],this.permissions=this.authStorageService.getPermissions()}ngOnInit(){this.osdService.getFlags().subscribe(t=>{t.forEach(t=>{this.allFlags[t]?this.allFlags[t].value=!0:this.unknownFlags.push(t)}),this.flags=X.toArray(this.allFlags)})}submitAction(){const t=this.flags.filter(t=>t.value).map(t=>t.code).concat(this.unknownFlags);this.osdService.updateFlags(t).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Updated OSD Flags")),this.bsModalRef.hide()},()=>{this.bsModalRef.hide()})}}var ol=n("MuvH");let ll=(()=>{class t{static getType(t){const e=X.find(this.knownTypes,e=>e.name===t);if(void 0!==e)return e;throw new Error('Found unknown type "'+t+'" for config option.')}static getTypeValidators(e){const n=t.getType(e.type);if("bool"===n.name||"str"===n.name)return;const a={validators:[],patternHelpText:n.patternHelpText};return n.isNumberType?(e.max&&""!==e.max&&(a.max=e.max,a.validators.push(K.B.max(e.max))),e.min&&""!==e.min?(a.min=e.min,a.validators.push(K.B.min(e.min))):"defaultMin"in n&&(a.min=n.defaultMin,a.validators.push(K.B.min(n.defaultMin))),a.validators.push("float"===e.type?qs.a.decimalNumber():qs.a.number(n.allowsNegative))):"addr"===e.type?a.validators=[qs.a.ip()]:"uuid"===e.type&&(a.validators=[qs.a.uuid()]),a}static getTypeStep(t,e){if(["uint","int","size","secs"].includes(t))return 1;if("float"===t){if(null!==e&&-1!==e.toString().indexOf(".")){const t=e.toString().split(".");return Math.pow(10,-t[1].length)}return.1}}}return t.knownTypes=[{name:"uint",inputType:"number",humanReadable:"Unsigned integer value",defaultMin:0,patternHelpText:"The entered value needs to be an unsigned number.",isNumberType:!0,allowsNegative:!1},{name:"int",inputType:"number",humanReadable:"Integer value",patternHelpText:"The entered value needs to be a number.",isNumberType:!0,allowsNegative:!0},{name:"size",inputType:"number",humanReadable:"Unsigned integer value (>=16bit)",defaultMin:0,patternHelpText:"The entered value needs to be a unsigned number.",isNumberType:!0,allowsNegative:!1},{name:"secs",inputType:"number",humanReadable:"Number of seconds",defaultMin:1,patternHelpText:"The entered value needs to be a number >= 1.",isNumberType:!0,allowsNegative:!1},{name:"float",inputType:"number",humanReadable:"Double value",patternHelpText:"The entered value needs to be a number or decimal.",isNumberType:!0,allowsNegative:!0},{name:"str",inputType:"text",humanReadable:"Text",isNumberType:!1},{name:"addr",inputType:"text",humanReadable:"IPv4 or IPv6 address",patternHelpText:"The entered value needs to be a valid IP address.",isNumberType:!1},{name:"uuid",inputType:"text",humanReadable:"UUID",patternHelpText:"The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8",isNumberType:!1},{name:"bool",inputType:"checkbox",humanReadable:"Boolean value",isNumberType:!1}],t})();class dl{constructor(t){this.configService=t,this.optionNames=[],this.optionsForm=new Ms.a({}),this.optionsFormDir=new K.t([],[]),this.optionsFormGroupName="",this.optionsFormShowReset=!0,this.icons=pt.a,this.options=[],this.optionsFormGroup=new Ms.a({})}static optionNameToText(t){const e=["mon","mgr","osd","mds","client"];return t.split("_").filter((t,n)=>0!==n||!e.includes(t)).map(t=>t.charAt(0).toUpperCase()+t.substring(1)).join(" ")}ngOnInit(){this.createForm(),this.loadStoredData()}createForm(){this.optionsForm.addControl(this.optionsFormGroupName,this.optionsFormGroup),this.optionNames.forEach(t=>{this.optionsFormGroup.addControl(t,new K.i(null))})}getStep(t,e){return ll.getTypeStep(t,e)}loadStoredData(){this.configService.filter(this.optionNames).subscribe(t=>{this.options=t.map(t=>{const e=this.optionsForm.get(t.name),n=ll.getTypeValidators(t);return t.additionalTypeInfo=ll.getType(t.type),t.text=dl.optionNameToText(t.name),t.value=X.find(t.value,t=>"osd"===t.section),t.value&&e.setValue("bool"===t.additionalTypeInfo.name?"true"===t.value.value:t.value.value),n&&(t.patternHelpText=n.patternHelpText,"max"in n&&""!==n.max&&(t.maxValue=n.max),"min"in n&&""!==n.min&&(t.minValue=n.min),e.setValidators(n.validators)),t})})}saveValues(){const t={};return this.optionNames.forEach(e=>{const n=this.optionsForm.getValue(e);null!==n&&""!==n&&(t[e]={section:"osd",value:n})}),this.configService.bulkCreate({options:t})}resetValue(t){this.configService.delete(t,"osd").subscribe(()=>{this.optionsForm.get(t).reset()})}}let cl=(()=>{class t{}return t.basicOptions=["osd_scrub_during_recovery","osd_scrub_begin_hour","osd_scrub_end_hour","osd_scrub_begin_week_day","osd_scrub_end_week_day","osd_scrub_min_interval","osd_scrub_max_interval","osd_deep_scrub_interval","osd_scrub_auto_repair","osd_max_scrubs","osd_scrub_priority","osd_scrub_sleep"],t.advancedOptions=["osd_scrub_auto_repair_num_errors","osd_debug_deep_scrub_sleep","osd_deep_scrub_keys","osd_deep_scrub_large_omap_object_key_threshold","osd_deep_scrub_large_omap_object_value_sum_threshold","osd_deep_scrub_randomize_ratio","osd_deep_scrub_stride","osd_deep_scrub_update_digest_min_age","osd_requested_scrub_priority","osd_scrub_backoff_ratio","osd_scrub_chunk_max","osd_scrub_chunk_min","osd_scrub_cost","osd_scrub_interval_randomize_ratio","osd_scrub_invalid_stats","osd_scrub_load_threshold","osd_scrub_max_preemptions"],t})();class fl{constructor(t,e,n,a,r){this.bsModalRef=t,this.authStorageService=e,this.notificationService=n,this.i18n=a,this.actionLabels=r,this.basicOptions=cl.basicOptions,this.advancedOptions=cl.advancedOptions,this.advancedEnabled=!1,this.osdPgScrubForm=new Ms.a({}),this.resource=this.i18n("PG scrub options"),this.action=this.actionLabels.EDIT,this.permissions=this.authStorageService.getPermissions()}submitAction(){const t=[this.basicOptionsValues.saveValues()];this.advancedOptionsValues&&t.push(this.advancedOptionsValues.saveValues()),Object(rl.a)(t).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Updated PG scrub options")),this.bsModalRef.hide()},()=>{this.bsModalRef.hide()})}}class hl{constructor(t,e,n,a,r,i){this.bsModalRef=t,this.authStorageService=e,this.configService=n,this.notificationService=a,this.i18n=r,this.osdService=i,this.priorities=[],this.priorityAttrs={},this.permissions=this.authStorageService.getPermissions(),this.priorities=this.osdService.osdRecvSpeedModalPriorities.KNOWN_PRIORITIES,this.osdRecvSpeedForm=new Ms.a({priority:new K.i(null,{validators:[K.B.required]}),customizePriority:new K.i(!1)}),this.priorityAttrs={osd_max_backfills:{text:this.i18n("Max Backfills"),desc:"",patternHelpText:"",maxValue:void 0,minValue:void 0},osd_recovery_max_active:{text:this.i18n("Recovery Max Active"),desc:"",patternHelpText:"",maxValue:void 0,minValue:void 0},osd_recovery_max_single_start:{text:this.i18n("Recovery Max Single Start"),desc:"",patternHelpText:"",maxValue:void 0,minValue:void 0},osd_recovery_sleep:{text:this.i18n("Recovery Sleep"),desc:"",patternHelpText:"",maxValue:void 0,minValue:void 0}},Object.keys(this.priorityAttrs).forEach(t=>{this.osdRecvSpeedForm.addControl(t,new K.i(null,{validators:[K.B.required]}))})}ngOnInit(){this.configService.filter(Object.keys(this.priorityAttrs)).subscribe(t=>{const e=this.getCurrentValues(t);this.detectPriority(e.values,t=>{this.setPriority(t)}),this.setDescription(e.configOptions),this.setValidators(e.configOptions)})}detectPriority(t,e){const n=X.find(this.priorities,e=>X.isEqual(e.values,t));return this.osdRecvSpeedForm.controls.customizePriority.setValue(!1),n?e(n):4===Object.entries(t).length?(this.osdRecvSpeedForm.controls.customizePriority.setValue(!0),e(Object({name:"custom",text:this.i18n("Custom"),values:t}))):e(this.priorities[0])}getCurrentValues(t){const e={values:{},configOptions:[]};return t.forEach(t=>{e.configOptions.push(t),"value"in t?t.value.forEach(n=>{"osd"===n.section&&(e.values[t.name]=Number(n.value))}):"default"in t&&null!==t.default&&(e.values[t.name]=Number(t.default))}),e}setDescription(t){t.forEach(t=>{""!==t.desc&&(this.priorityAttrs[t.name].desc=t.desc)})}setPriority(t){const e=X.find(this.priorities,t=>"custom"===t.name);"custom"===t.name?e||this.priorities.push(t):e&&this.priorities.splice(this.priorities.indexOf(e),1),this.osdRecvSpeedForm.controls.priority.setValue(t.name),Object.entries(t.values).forEach(([t,e])=>{this.osdRecvSpeedForm.controls[t].setValue(e)})}setValidators(t){t.forEach(t=>{const e=ll.getTypeValidators(t);e?(e.validators.push(K.B.required),"max"in e&&""!==e.max&&(this.priorityAttrs[t.name].maxValue=e.max),"min"in e&&""!==e.min&&(this.priorityAttrs[t.name].minValue=e.min),this.priorityAttrs[t.name].patternHelpText=e.patternHelpText,this.osdRecvSpeedForm.controls[t.name].setValidators(e.validators)):this.osdRecvSpeedForm.controls[t.name].setValidators(K.B.required)})}onCustomizePriorityChange(){const t={};if(Object.keys(this.priorityAttrs).forEach(e=>{t[e]=this.osdRecvSpeedForm.getValue(e)}),this.osdRecvSpeedForm.getValue("customizePriority")){const e={name:"custom",text:this.i18n("Custom"),values:t};this.setPriority(e)}else this.detectPriority(t,t=>{this.setPriority(t)})}onPriorityChange(t){const e=X.find(this.priorities,e=>e.name===t)||this.priorities[0];this.osdRecvSpeedForm.get("customizePriority").setValue(!1),this.setPriority(e)}submitAction(){const t={};Object.keys(this.priorityAttrs).forEach(e=>{t[e]={section:"osd",value:this.osdRecvSpeedForm.getValue(e)}}),this.configService.bulkCreate({options:t}).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Updated OSD recovery speed priority "{{value}}"',{value:this.osdRecvSpeedForm.getValue("priority")})),this.bsModalRef.hide()},()=>{this.bsModalRef.hide()})}}class gl{constructor(t,e,n){this.bsModalRef=t,this.osdService=e,this.fb=n,this.currentWeight=1}get weight(){return this.reweightForm.get("weight")}ngOnInit(){this.reweightForm=this.fb.group({weight:this.fb.control(this.currentWeight,[K.B.required,K.B.max(1),K.B.min(0)])})}reweight(){this.osdService.reweight(this.osdId,this.reweightForm.value.weight).subscribe(()=>this.bsModalRef.hide())}}class pl{constructor(t,e,n,a,r){this.bsModalRef=t,this.osdService=e,this.notificationService=n,this.i18n=a,this.joinPipe=r,this.selected=[]}ngOnInit(){this.scrubForm=new K.k({})}scrub(){Object(rl.a)(this.selected.map(t=>this.osdService.scrub(t,this.deep))).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("{{operation}} was initialized in the following OSD(s): {{id}}",{operation:this.deep?"Deep scrub":"Scrub",id:this.joinPipe.transform(this.selected)})),this.bsModalRef.hide()},()=>this.bsModalRef.hide())}}const bl=new os.a("osd");class ml extends ls.a{constructor(t,e,n,a,r,i,s,u,o,l,d){super(),this.authStorageService=t,this.osdService=e,this.dimlessBinaryPipe=n,this.modalService=a,this.i18n=r,this.urlBuilder=i,this.router=s,this.depCheckerService=u,this.taskWrapper=o,this.actionLabels=l,this.notificationService=d,this.icons=pt.a,this.selection=new Hr.a,this.osds=[],this.disabledFlags=["sortbitwise","purged_snapdirs","recovery_deletes","pglog_hardlimit"],this.indivFlagNames=["noup","nodown","noin","noout"],this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{name:this.actionLabels.CREATE,permission:"create",icon:pt.a.add,click:()=>{this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.CREATE,this.i18n("OSD"),()=>{this.router.navigate([this.urlBuilder.getCreate()])})},canBePrimary:t=>!t.hasSelection},{name:this.actionLabels.EDIT,permission:"update",icon:pt.a.edit,click:()=>this.editAction()},{name:this.actionLabels.FLAGS,permission:"update",icon:pt.a.flag,click:()=>this.configureFlagsIndivAction(),disable:()=>!this.hasOsdSelected},{name:this.actionLabels.SCRUB,permission:"update",icon:pt.a.analyse,click:()=>this.scrubAction(!1),disable:()=>!this.hasOsdSelected,canBePrimary:t=>t.hasSelection},{name:this.actionLabels.DEEP_SCRUB,permission:"update",icon:pt.a.deepCheck,click:()=>this.scrubAction(!0),disable:()=>!this.hasOsdSelected},{name:this.actionLabels.REWEIGHT,permission:"update",click:()=>this.reweight(),disable:()=>!this.hasOsdSelected||!this.selection.hasSingleSelection,icon:pt.a.reweight},{name:this.actionLabels.MARK_OUT,permission:"update",click:()=>this.showConfirmationModal(this.i18n("out"),this.osdService.markOut),disable:()=>this.isNotSelectedOrInState("out"),icon:pt.a.left},{name:this.actionLabels.MARK_IN,permission:"update",click:()=>this.showConfirmationModal(this.i18n("in"),this.osdService.markIn),disable:()=>this.isNotSelectedOrInState("in"),icon:pt.a.right},{name:this.actionLabels.MARK_DOWN,permission:"update",click:()=>this.showConfirmationModal(this.i18n("down"),this.osdService.markDown),disable:()=>this.isNotSelectedOrInState("down"),icon:pt.a.down},{name:this.actionLabels.MARK_LOST,permission:"delete",click:()=>this.showCriticalConfirmationModal(this.i18n("Mark"),this.i18n("OSD lost"),this.i18n("marked lost"),t=>this.osdService.safeToDestroy(JSON.stringify(t)),"is_safe_to_destroy",this.osdService.markLost),disable:()=>this.isNotSelectedOrInState("up"),icon:pt.a.flatten},{name:this.actionLabels.PURGE,permission:"delete",click:()=>this.showCriticalConfirmationModal(this.i18n("Purge"),this.i18n("OSD"),this.i18n("purged"),t=>this.osdService.safeToDestroy(JSON.stringify(t)),"is_safe_to_destroy",t=>(this.selection=new Hr.a,this.osdService.purge(t))),disable:()=>this.isNotSelectedOrInState("up"),icon:pt.a.erase},{name:this.actionLabels.DESTROY,permission:"delete",click:()=>this.showCriticalConfirmationModal(this.i18n("destroy"),this.i18n("OSD"),this.i18n("destroyed"),t=>this.osdService.safeToDestroy(JSON.stringify(t)),"is_safe_to_destroy",t=>(this.selection=new Hr.a,this.osdService.destroy(t))),disable:()=>this.isNotSelectedOrInState("up"),icon:pt.a.destroyCircle},{name:this.actionLabels.DELETE,permission:"delete",click:()=>this.delete(),disable:()=>!this.hasOsdSelected,icon:pt.a.destroy}]}static collectStates(t){const e=[t.in?"in":"out"];return t.up?e.push("up"):t.state.includes("destroyed")?e.push("destroyed"):e.push("down"),e}ngOnInit(){this.clusterWideActions=[{name:this.i18n("Flags"),icon:pt.a.flag,click:()=>this.configureFlagsAction(),permission:"read",visible:()=>this.permissions.osd.read},{name:this.i18n("Recovery Priority"),icon:pt.a.deepCheck,click:()=>this.configureQosParamsAction(),permission:"read",visible:()=>this.permissions.configOpt.read},{name:this.i18n("PG scrub"),icon:pt.a.analyse,click:()=>this.configurePgScrubAction(),permission:"read",visible:()=>this.permissions.configOpt.read}],this.columns=[{prop:"host.name",name:this.i18n("Host")},{prop:"id",name:this.i18n("ID"),flexGrow:1,cellTransformation:Yr.a.bold},{prop:"collectedStates",name:this.i18n("Status"),flexGrow:1,cellTransformation:Yr.a.badge,customTemplateConfig:{map:{in:{class:"badge-success"},up:{class:"badge-success"},down:{class:"badge-danger"},out:{class:"badge-danger"},destroyed:{class:"badge-danger"}}}},{prop:"tree.device_class",name:this.i18n("Device class"),flexGrow:1,cellTransformation:Yr.a.badge,customTemplateConfig:{map:{hdd:{class:"badge-hdd"},ssd:{class:"badge-ssd"}}}},{prop:"stats.numpg",name:this.i18n("PGs"),flexGrow:1},{prop:"stats.stat_bytes",name:this.i18n("Size"),flexGrow:1,pipe:this.dimlessBinaryPipe},{prop:"state",name:this.i18n("Flags"),cellTemplate:this.flagsTpl},{prop:"stats.usage",name:this.i18n("Usage"),cellTemplate:this.osdUsageTpl},{prop:"stats_history.out_bytes",name:this.i18n("Read bytes"),cellTransformation:Yr.a.sparkline},{prop:"stats_history.in_bytes",name:this.i18n("Write bytes"),cellTransformation:Yr.a.sparkline},{prop:"stats.op_r",name:this.i18n("Read ops"),cellTransformation:Yr.a.perSecond},{prop:"stats.op_w",name:this.i18n("Write ops"),cellTransformation:Yr.a.perSecond}]}getSelectedOsdIds(){const t=this.osds.map(t=>t.id);return this.selection.selected.map(t=>t.id).filter(e=>t.includes(e))}getSelectedOsds(){return this.osds.filter(t=>!X.isUndefined(t)&&this.getSelectedOsdIds().includes(t.id))}get hasOsdSelected(){return this.getSelectedOsdIds().length>0}updateSelection(t){this.selection=t}isNotSelectedOrInState(t){const e=this.getSelectedOsds();if(0===e.length)return!0;switch(t){case"in":return e.some(t=>1===t.in);case"out":return e.some(t=>1!==t.in);case"down":return e.some(t=>1!==t.up);case"up":return e.some(t=>1===t.up)}}getOsdList(){const t=[this.osdService.getList(),this.osdService.getFlags()];Object(rl.a)(t).subscribe(t=>{this.osds=t[0].map(e=>(e.collectedStates=ml.collectStates(e),e.stats_history.out_bytes=e.stats_history.op_out_bytes.map(t=>t[1]),e.stats_history.in_bytes=e.stats_history.op_in_bytes.map(t=>t[1]),e.stats.usage=e.stats.stat_bytes_used/e.stats.stat_bytes,e.cdIsBinary=!0,e.cdIndivFlags=e.state.filter(t=>this.indivFlagNames.includes(t)),e.cdClusterFlags=t[1].filter(t=>!this.disabledFlags.includes(t)),e))})}editAction(){const t=X.filter(this.osds,["id",this.selection.first().id]).pop();this.modalService.show(zr.a,{initialState:{titleText:this.i18n("Edit OSD: {{id}}",{id:t.id}),fields:[{type:"text",name:"deviceClass",value:t.tree.device_class,label:this.i18n("Device class"),required:!0}],submitButtonText:this.i18n("Edit OSD"),onSubmit:e=>{this.osdService.update(t.id,e.deviceClass).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Updated OSD "{{id}}"',{id:t.id})),this.getOsdList()})}}})}scrubAction(t){if(!this.hasOsdSelected)return;const e={selected:this.getSelectedOsdIds(),deep:t};this.bsModalRef=this.modalService.show(pl,{initialState:e})}configureFlagsAction(){this.bsModalRef=this.modalService.show(ul,{})}configureFlagsIndivAction(){const t={selected:this.getSelectedOsds()};this.bsModalRef=this.modalService.show(sl,{initialState:t})}showConfirmationModal(t,e){this.bsModalRef=this.modalService.show(il.a,{initialState:{titleText:this.i18n("Mark OSD {{markAction}}",{markAction:t}),buttonText:this.i18n("Mark {{markAction}}",{markAction:t}),bodyTpl:this.markOsdConfirmationTpl,bodyContext:{markActionDescription:t},onSubmit:()=>{Object(rl.a)(this.getSelectedOsdIds().map(t=>e.call(this.osdService,t))).subscribe(()=>this.bsModalRef.hide())}}})}reweight(){const t=this.osds.filter(t=>t.id===this.selection.first().id).pop();this.modalService.show(gl,{initialState:{currentWeight:t.weight,osdId:t.id}})}delete(){const t=new Ms.a({preserve:new K.i(!1)});this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.DELETE,this.i18n("OSD"),()=>{this.showCriticalConfirmationModal(this.i18n("delete"),this.i18n("OSD"),this.i18n("deleted"),t=>this.osdService.safeToDelete(JSON.stringify(t)),"is_safe_to_delete",e=>(this.selection=new Hr.a,this.taskWrapper.wrapTaskAroundCall({task:new fs.a("osd/"+St.e.DELETE,{svc_id:e}),call:this.osdService.delete(e,t.value.preserve,!0)})),!0,t,this.deleteOsdExtraTpl)})}showCriticalConfirmationModal(t,e,n,a,r,i,s=!1,u,o){a(this.getSelectedOsdIds()).subscribe(a=>{const l=this.modalService.show(ds.a,{initialState:{actionDescription:t,itemDescription:e,bodyTemplate:this.criticalConfirmationTpl,bodyContext:{safeToPerform:a[r],message:a.message,actionDescription:n,osdIds:this.getSelectedOsdIds()},childFormGroup:u,childFormGroupTemplate:o,submitAction:()=>{const t=Object(rl.a)(this.getSelectedOsdIds().map(t=>i.call(this.osdService,t)));s?t.subscribe(void 0,()=>{this.getOsdList(),l.hide()},()=>l.hide()):t.subscribe(()=>{this.getOsdList(),l.hide()},()=>l.hide())}}})})}configureQosParamsAction(){this.bsModalRef=this.modalService.show(hl,{})}configurePgScrubAction(){this.bsModalRef=this.modalService.show(fl,{class:"modal-lg"})}}var yl=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function vl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-usage-bar",[],null,null,null,Po.b,Po.a)),s["ɵdid"](1,573440,null,0,Mo.a,[],{total:[0,"total"],used:[1,"used"]},null)],(function(t,e){t(e,1,0,e.context.row.stats.stat_bytes,e.context.row.stats.stat_bytes_used)}),null)}function xl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-hdd mr-1"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.$implicit)}))}function _l(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-info mr-1"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.$implicit)}))}function Tl(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,xl)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_l)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.row.cdClusterFlags),t(e,3,0,e.context.row.cdIndivFlags)}),null)}function wl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","four"],["uid","lo02I1Aiz"]],null,null,null,Cr.b,Cr.a)),s["ɵdid"](3,638976,null,0,Rr.a,[Ar.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){t(e,1,0,"Overall Performance"),t(e,3,0,"osd-overview?","four","lo02I1Aiz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function Ol(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["OSD(s) ",""])),s["ɵppd"](3,1),(t()(),s["ɵted"](-1,null,[" will be marked\n"])),(t()(),s["ɵeld"](5,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵted"](-1,null,[" if you proceed."]))],null,(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent,0),n.getSelectedOsdIds()));t(e,2,0,a),t(e,6,0,e.context.markActionDescription)}))}function Sl(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["OSD is"]))],null,null)}function Il(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["OSDs are"]))],null,null)}function Nl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","danger"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,9,"cd-alert-panel",[["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](2,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["The "])),(t()(),s["ɵeld"](4,0,null,0,5,null,null,null,null,null,null,null)),s["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Sl)),s["ɵdid"](7,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Il)),s["ɵdid"](9,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵted"](10,0,[" not safe to be ","! ",""]))],(function(t,e){var n=e.component;t(e,2,0,"warning"),t(e,5,0,n.selection.hasSingleSelection),t(e,7,0,"true"),t(e,9,0,"false")}),(function(t,e){t(e,10,0,e.parent.context.actionDescription,e.parent.context.message)}))}function Cl(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Nl)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](2,0,null,null,7,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,2,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](4,null,["OSD ",""])),s["ɵppd"](5,1),(t()(),s["ɵted"](-1,null,[" will be "])),(t()(),s["ɵeld"](7,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](8,null,["",""])),(t()(),s["ɵted"](-1,null,[" if you proceed."]))],(function(t,e){t(e,1,0,!e.context.safeToPerform)}),(function(t,e){var n=s["ɵunv"](e,4,0,t(e,5,0,s["ɵnov"](e.parent,0),e.context.osdIds));t(e,4,0,n),t(e,8,0,e.context.actionDescription)}))}function Rl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,23,null,null,null,null,(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,1).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,1).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,4).onSubmit()&&a),a}),null,null)),s["ɵdid"](1,540672,null,0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](3,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](4,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](5,0,null,null,18,null,null,null,null,null,null,null)),s["ɵdid"](6,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](8,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](9,0,null,null,14,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](10,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](13,0,null,0,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","preserve"],["id","preserve"],["name","preserve"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,16).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,16).onTouched()&&a),a}),null,null)),s["ɵdid"](15,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](16,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](18,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](20,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](21,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](22,0,null,null,1,"label",[["class","custom-control-label"],["for","preserve"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Preserve OSD ID(s) for replacement."]))],(function(t,e){t(e,1,0,e.context.form),t(e,4,0,e.context.form),t(e,6,0,"child"),t(e,10,0),t(e,18,0,"preserve"),t(e,21,0,"preserve")}),(function(t,e){t(e,9,0,s["ɵnov"](e,10).hasErrors,s["ɵnov"](e,10).hasSuccess),t(e,14,0,s["ɵnov"](e,20).ngClassUntouched,s["ɵnov"](e,20).ngClassTouched,s["ɵnov"](e,20).ngClassPristine,s["ɵnov"](e,20).ngClassDirty,s["ɵnov"](e,20).ngClassValid,s["ɵnov"](e,20).ngClassInvalid,s["ɵnov"](e,20).ngClassPending,s["ɵnov"](e,21).validClass,s["ɵnov"](e,21).invalidClass)}))}function Al(t){return s["ɵvid"](0,[s["ɵpid"](0,qo.a,[]),s["ɵqud"](402653184,1,{osdUsageTpl:0}),s["ɵqud"](402653184,2,{markOsdConfirmationTpl:0}),s["ɵqud"](402653184,3,{criticalConfirmationTpl:0}),s["ɵqud"](402653184,4,{tableComponent:0}),s["ɵqud"](671088640,5,{reweightBodyTpl:0}),s["ɵqud"](671088640,6,{safeToDestroyBodyTpl:0}),s["ɵqud"](671088640,7,{deleteOsdExtraTpl:0}),s["ɵqud"](402653184,8,{flagsTpl:0}),(t()(),s["ɵeld"](9,0,null,null,17,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](10,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](11,0,null,0,13,"tab",[["heading","OSDs List"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](12,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](13,0,null,null,9,"cd-table",[["selectionType","multiClick"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.getOsdList()&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](14,2867200,[[4,4]],0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],selectionType:[3,"selectionType"],updateSelectionOnRefresh:[4,"updateSelectionOnRefresh"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](15,0,null,1,5,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](16,0,null,null,1,"cd-table-actions",[["class","btn-group"],["id","osd-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](17,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](18,0,null,null,2,"cd-table-actions",[["btnColor","light"],["class","btn-group"],["dropDownOnly","Cluster-wide configuration"],["id","cluster-wide-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](19,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"],btnColor:[3,"btnColor"],dropDownOnly:[4,"dropDownOnly"]},null),s["ɵpod"](20,{read:0}),(t()(),s["ɵeld"](21,0,null,3,1,"cd-osd-details",[["cdTableDetail",""]],null,null,null,el,Wo)),s["ɵdid"](22,573440,null,0,Uo,[mi,J.a],{selection:[0,"selection"]},null),(t()(),s["ɵand"](0,[[1,2],["osdUsageTpl",2]],null,0,null,vl)),(t()(),s["ɵand"](0,[[8,2],["flagsTpl",2]],null,0,null,Tl)),(t()(),s["ɵand"](16777216,null,0,1,null,wl)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[2,2],["markOsdConfirmationTpl",2]],null,0,null,Ol)),(t()(),s["ɵand"](0,[[3,2],["criticalConfirmationTpl",2]],null,0,null,Cl)),(t()(),s["ɵand"](0,[[7,2],["deleteOsdExtraTpl",2]],null,0,null,Rl))],(function(t,e){var n=e.component;t(e,12,0,"OSDs List"),t(e,14,0,n.osds,n.columns,!0,"multiClick","never"),t(e,17,0,n.permissions.osd,n.selection,n.tableActions);var a=t(e,20,0,!0);t(e,19,0,a,n.selection,n.clusterWideActions,"light","Cluster-wide configuration"),t(e,22,0,n.expandedRow),t(e,26,0,n.permissions.grafana.read)}),(function(t,e){t(e,9,0,s["ɵnov"](e,10).clazz),t(e,11,0,s["ɵnov"](e,12).id,s["ɵnov"](e,12).active,s["ɵnov"](e,12).addClass,s["ɵnov"](e,12).role,s["ɵnov"](e,12).ariaLabelledby)}))}function kl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-osd-list",[],null,null,null,Al,yl)),s["ɵprd"](256,null,os.a,bl,[]),s["ɵdid"](2,114688,null,0,ml,[J.a,mi,ba.a,Ct.b,fe.a,os.a,Et.m,ps,bs.a,St.b,bt.a],null,null)],(function(t,e){t(e,2,0)}),null)}var El=s["ɵccf"]("cd-osd-list",ml,kl,{},{},[]);class Ll{constructor(t,e,n){this.formBuilder=t,this.bsModalRef=e,this.actionLabels=n,this.submitAction=new s.EventEmitter,this.icons=pt.a,this.filterColumns=[],this.devices=[],this.filteredDevices=[],this.capacity=0,this.canSubmit=!1,this.requiredFilters=[],this.action=n.ADD,this.createForm()}ngAfterViewInit(){const t=X.filter(this.inventoryDevices.columns,t=>this.filterColumns.includes(t.prop)&&"hostname"!==t.prop);this.requiredFilters=X.map(t,"name")}createForm(){this.formGroup=this.formBuilder.group({})}onFilterChange(t){if(this.capacity=0,this.canSubmit=!1,X.isEmpty(t.filters))this.filteredDevices=[],this.event=void 0;else{const e=t.filters.filter(t=>"hostname"!==t.prop);this.canSubmit=!X.isEmpty(e),this.filteredDevices=t.data,this.capacity=X.sumBy(this.filteredDevices,"sys_api.size"),this.event=t}}onSubmit(){this.submitAction.emit(this.event),this.bsModalRef.hide()}}class Dl{constructor(t,e){this.bsModalService=t,this.i18n=e,this.selected=new s.EventEmitter,this.cleared=new s.EventEmitter,this.icons=pt.a,this.devices=[],this.capacity=0,this.appliedFilters=[],this.tooltips={noAvailDevices:this.i18n("No available devices"),addPrimaryFirst:this.i18n("Please add primary devices first"),addByFilters:this.i18n("Add devices by using filters")}}ngOnInit(){this.updateAddButtonTooltip()}ngOnChanges(){this.updateAddButtonTooltip()}showSelectionModal(){let t=["human_readable_type","sys_api.vendor","sys_api.model","sys_api.size"];"data"===this.type&&(t=["hostname",...t]),this.bsModalService.show(Ll,{class:"modal-xl",initialState:{hostname:this.hostname,deviceType:this.name,devices:this.availDevices,filterColumns:t}}).content.submitAction.subscribe(t=>{this.devices=t.data,this.capacity=X.sumBy(this.devices,"sys_api.size"),this.appliedFilters=t.filters;const e=X.assign({type:this.type},t);this.selected.emit(e)})}updateAddButtonTooltip(){this.addButtonTooltip="data"===this.type&&0===this.availDevices.length?this.tooltips.noAvailDevices:this.canSelect?0===this.availDevices.length?this.tooltips.noAvailDevices:this.tooltips.addByFilters:this.tooltips.addPrimaryFirst}clearDevices(){const t={type:this.type,clearedDevices:[...this.devices]};this.devices=[],this.cleared.emit(t)}}var Pl=s["ɵcrt"]({encapsulation:0,styles:[[".tc_clearSelections[_ngcontent-%COMP%]{text-decoration:none}"]],data:{}});function Ml(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The primary storage devices. These devices contain all OSD data."]))],null,null)}function ql(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device."]))],null,null)}function jl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["DB devices can be used for storing BlueStore’s internal metadata. It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD)."]))],null,null)}function Fl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,6,"button",[["class","btn btn-light"],["data-toggle","tooltip"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.showSelectionModal()&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1),(t()(),s["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add"]))],(function(t,e){var n=t(e,5,0,e.component.icons.add);t(e,4,0,n)}),(function(t,e){var n=e.component;t(e,1,0,n.addButtonTooltip,0===n.availDevices.length||!n.canSelect)}))}function Vl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",": ",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit.name,e.context.$implicit.value.formatted)}))}function Gl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"div",[["class","float-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["Raw capacity: ",""])),s["ɵppd"](3,1)],null,(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent,0),n.capacity));t(e,2,0,a)}))}function Bl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"div",[["class","pb-2 my-2 border-bottom"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Vl)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](3,0,null,null,6,"a",[["class","tc_clearSelections"],["href",""]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.clearDevices(),a=!1),a}),null,null)),(t()(),s["ɵeld"](4,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,1),(t()(),s["ɵeld"](8,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clear"])),(t()(),s["ɵeld"](10,0,null,null,3,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,2,"cd-inventory-devices",[],null,null,null,Kr,Wr)),s["ɵdid"](12,245760,null,0,Ur,[J.a,ba.a,fe.a,Ct.b,bt.a,Br],{devices:[0,"devices"],hiddenColumns:[1,"hiddenColumns"],filterColumns:[2,"filterColumns"]},null),s["ɵpad"](13,2),(t()(),s["ɵand"](16777216,null,null,1,null,Gl)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.appliedFilters);var a=t(e,7,0,n.icons.clearFilters);t(e,6,0,a);var r=n.devices,i=t(e,13,0,"available","osd_ids");t(e,12,0,r,i,s["ɵEMPTY_ARRAY"]),t(e,15,0,"data"===n.type)}),null)}function zl(t){return s["ɵvid"](0,[s["ɵpid"](0,ba.a,[Sa.a]),(t()(),s["ɵeld"](1,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,10,"label",[["class","cd-col-form-label"],["for","createDeleteButton"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](7,null,[""," devices"])),(t()(),s["ɵeld"](8,0,null,null,7,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](9,49152,null,0,ju.a,[],null,null),(t()(),s["ɵand"](16777216,null,0,1,null,Ml)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,ql)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,jl)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](16,0,null,0,3,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Fl)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["blockClearDevices",2]],null,0,null,Bl))],(function(t,e){var n=e.component;t(e,2,0),t(e,11,0,"data"===n.type),t(e,13,0,"wal"===n.type),t(e,15,0,"db"===n.type),t(e,18,0,0===n.devices.length,s["ɵnov"](e,19))}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,7,0,n.name)}))}class Yl{constructor(t,e,n,a,r){this.bsModalRef=t,this.actionLabels=e,this.formBuilder=n,this.osdService=a,this.taskWrapper=r,this.driveGroups=[],this.submitAction=new s.EventEmitter,this.action=e.CREATE,this.createForm()}ngOnInit(){}createForm(){this.formGroup=this.formBuilder.group({})}onSubmit(){this.taskWrapper.wrapTaskAroundCall({task:new fs.a("osd/"+St.e.CREATE,{tracking_id:X.join(X.map(this.driveGroups,"service_id"),", ")}),call:this.osdService.create(this.driveGroups)}).subscribe(void 0,()=>{this.formGroup.setErrors({cdSubmitButton:!0})},()=>{this.submitAction.emit(),this.bsModalRef.hide()})}}class Hl{constructor(){this.reset(),this.formatterService=new Sa.a,this.deviceSelectionAttrs={"sys_api.vendor":{name:"vendor"},"sys_api.model":{name:"model"},device_id:{name:"device_id"},human_readable_type:{name:"rotational",formatter:t=>"hdd"===t.toLowerCase()},"sys_api.size":{name:"size",formatter:t=>this.formatterService.format_number(t,1024,["B","KB","MB","GB","TB","PB"]).replace(" ","")}}}reset(){this.spec={service_type:"osd",service_id:"dashboard-"+X.now()}}setName(t){this.spec.service_id=t}setHostPattern(t){this.spec.host_pattern=t}setDeviceSelection(t,e){const n=t+"_devices";this.spec[n]={},e.forEach(t=>{const e=this.deviceSelectionAttrs[t.prop];e&&(this.spec[n][e.name]=e.formatter?e.formatter(t.value.raw):t.value.raw)})}clearDeviceSelection(t){delete this.spec[t+"_devices"]}setSlots(t,e){const n=t+"_slots";0===e?delete this.spec[n]:this.spec[n]=e}setFeature(t,e){e?this.spec[t]=!0:delete this.spec[t]}}class Ul{constructor(t,e,n,a,r,i){this.actionLabels=t,this.authStorageService=e,this.i18n=n,this.orchService=a,this.router=r,this.bsModalService=i,this.icons=pt.a,this.columns=[],this.loading=!1,this.allDevices=[],this.availDevices=[],this.dataDeviceFilters=[],this.dbDeviceFilters=[],this.walDeviceFilters=[],this.hostname="",this.driveGroup=new Hl,this.featureList=[],this.hasOrchestrator=!1,this.resource=this.i18n("OSDs"),this.action=this.actionLabels.CREATE,this.features={encrypted:{key:"encrypted",desc:this.i18n("Encryption")}},this.featureList=X.map(this.features,(t,e)=>Object.assign(t,{key:e})),this.createForm()}ngOnInit(){this.orchService.status().subscribe(t=>{this.hasOrchestrator=t.available,this.hasOrchestrator&&this.getDataDevices()}),this.form.get("walSlots").valueChanges.subscribe(t=>this.setSlots("wal",t)),this.form.get("dbSlots").valueChanges.subscribe(t=>this.setSlots("db",t)),X.each(this.features,t=>{this.form.get("features").get(t.key).valueChanges.subscribe(e=>this.featureFormUpdate(t.key,e))})}createForm(){this.form=new Ms.a({walSlots:new K.i(0,{validators:[K.B.min(0)]}),dbSlots:new K.i(0,{validators:[K.B.min(0)]}),features:new Ms.a(this.featureList.reduce((t,e)=>(t[e.key]=new K.i({value:!1,disabled:!0}),t),{}))})}getDataDevices(){this.loading||(this.loading=!0,this.orchService.inventoryDeviceList().subscribe(t=>{this.allDevices=X.filter(t,"available"),this.availDevices=[...this.allDevices],this.loading=!1},()=>{this.allDevices=[],this.availDevices=[],this.loading=!1}))}setSlots(t,e){"number"==typeof e&&e>=0&&this.driveGroup.setSlots(t,e)}featureFormUpdate(t,e){this.driveGroup.setFeature(t,e)}enableFeatures(){this.featureList.forEach(t=>{this.form.get(t.key).enable({emitEvent:!1})})}disableFeatures(){this.featureList.forEach(t=>{const e=this.form.get(t.key);e.disable({emitEvent:!1}),e.setValue(!1,{emitEvent:!1})})}onDevicesSelected(t){if(this.availDevices=t.dataOut,"data"===t.type){const e=X.find(t.filters,{prop:"hostname"});e?(this.hostname=e.value.raw,this.availDevices=t.dataOut.filter(t=>t.hostname===this.hostname),this.driveGroup.setHostPattern(this.hostname)):this.driveGroup.setHostPattern("*"),this.enableFeatures()}this.driveGroup.setDeviceSelection(t.type,t.filters)}onDevicesCleared(t){"data"===t.type?(this.availDevices=[...this.allDevices],this.walDeviceSelectionGroups.devices=[],this.dbDeviceSelectionGroups.devices=[],this.disableFeatures(),this.driveGroup.reset(),this.form.get("walSlots").setValue(0,{emitEvent:!1}),this.form.get("dbSlots").setValue(0,{emitEvent:!1})):(this.availDevices=[...this.availDevices,...t.clearedDevices],this.driveGroup.clearDeviceSelection(t.type),this.form.get(t.type+"Slots").setValue(0,{emitEvent:!1}))}submit(){const t=this.authStorageService.getUsername();this.driveGroup.setName(`dashboard-${t}-${X.now()}`),this.bsModalService.show(Yl,{initialState:{driveGroups:[this.driveGroup.spec]}}).content.submitAction.subscribe(()=>{this.router.navigate(["/osd"])}),this.previewButton.loading=!1}}var Wl=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Kl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,Gr,Vr)),s["ɵdid"](1,49152,null,0,Fr,[],null,null)],null,null)}function $l(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Value should be greater than or equal to 0"]))],null,null)}function Zl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,9,"label",[["class","cd-col-form-label"],["for","walSlots"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["WAL slots"])),(t()(),s["ɵeld"](7,0,null,null,6,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](8,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](9,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["How many OSDs per WAL device."])),(t()(),s["ɵeld"](11,0,null,0,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Specify 0 to let Orchestrator backend decide it."])),(t()(),s["ɵeld"](14,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,8,"input",[["class","form-control"],["formControlName","walSlots"],["id","walSlots"],["min","0"],["name","walSlots"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,17)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,17).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,17)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,17)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,18).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,18).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,18).onTouched()&&a),a}),null,null)),s["ɵdid"](16,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](17,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](18,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](20,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](22,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](23,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$l)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,20,0,"walSlots"),t(e,23,0,"walSlots"),t(e,25,0,n.form.showError("walSlots",s["ɵnov"](e.parent,3),"min"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,15,0,s["ɵnov"](e,22).ngClassUntouched,s["ɵnov"](e,22).ngClassTouched,s["ɵnov"](e,22).ngClassPristine,s["ɵnov"](e,22).ngClassDirty,s["ɵnov"](e,22).ngClassValid,s["ɵnov"](e,22).ngClassInvalid,s["ɵnov"](e,22).ngClassPending,s["ɵnov"](e,23).validClass,s["ɵnov"](e,23).invalidClass)}))}function Jl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Value should be greater than or equal to 0"]))],null,null)}function Ql(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,9,"label",[["class","cd-col-form-label"],["for","dbSlots"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["DB slots"])),(t()(),s["ɵeld"](7,0,null,null,6,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](8,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](9,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["How many OSDs per DB device."])),(t()(),s["ɵeld"](11,0,null,0,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Specify 0 to let Orchestrator backend decide it."])),(t()(),s["ɵeld"](14,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,8,"input",[["class","form-control"],["formControlName","dbSlots"],["id","dbSlots"],["min","0"],["name","dbSlots"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,17)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,17).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,17)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,17)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,18).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,18).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,18).onTouched()&&a),a}),null,null)),s["ɵdid"](16,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](17,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](18,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](20,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](22,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](23,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Jl)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,20,0,"dbSlots"),t(e,23,0,"dbSlots"),t(e,25,0,n.form.showError("dbSlots",s["ɵnov"](e.parent,3),"min"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,15,0,s["ɵnov"](e,22).ngClassUntouched,s["ɵnov"](e,22).ngClassTouched,s["ɵnov"](e,22).ngClassPristine,s["ɵnov"](e,22).ngClassDirty,s["ɵnov"](e,22).ngClassValid,s["ɵnov"](e,22).ngClassInvalid,s["ɵnov"](e,22).ngClassPending,s["ɵnov"](e,23).validClass,s["ɵnov"](e,23).invalidClass)}))}function Xl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,3).onTouched()&&a),a}),null,null)),s["ɵdid"](2,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](3,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](5,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](7,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](8,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](9,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](10,null,["",""]))],(function(t,e){t(e,5,0,s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,"")),t(e,8,0,s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,""))}),(function(t,e){t(e,1,1,[s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,""),s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,""),s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending,s["ɵnov"](e,8).validClass,s["ɵnov"](e,8).invalidClass]),t(e,9,0,s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,"")),t(e,10,0,e.context.$implicit.desc)}))}function td(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,48,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,47,"form",[["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,41,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,[""," ",""])),s["ɵppd"](10,1),s["ɵppd"](11,1),(t()(),s["ɵeld"](12,0,null,null,29,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,2,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,1,"cd-osd-devices-selection-groups",[["name","Primary"],["type","data"]],null,[[null,"selected"],[null,"cleared"]],(function(t,e,n){var a=!0,r=t.component;return"selected"===e&&(a=!1!==r.onDevicesSelected(n)&&a),"cleared"===e&&(a=!1!==r.onDevicesCleared(n)&&a),a}),zl,Pl)),s["ɵdid"](15,638976,[[1,4],["dataDeviceSelectionGroups",4]],0,Dl,[Ct.b,fe.a],{type:[0,"type"],name:[1,"name"],availDevices:[2,"availDevices"],canSelect:[3,"canSelect"]},{selected:"selected",cleared:"cleared"}),(t()(),s["ɵeld"](16,0,null,null,10,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Shared devices"])),(t()(),s["ɵeld"](19,0,null,null,1,"cd-osd-devices-selection-groups",[["name","WAL"],["type","wal"]],null,[[null,"selected"],[null,"cleared"]],(function(t,e,n){var a=!0,r=t.component;return"selected"===e&&(a=!1!==r.onDevicesSelected(n)&&a),"cleared"===e&&(a=!1!==r.onDevicesCleared(n)&&a),a}),zl,Pl)),s["ɵdid"](20,638976,[[2,4],["walDeviceSelectionGroups",4]],0,Dl,[Ct.b,fe.a],{type:[0,"type"],name:[1,"name"],availDevices:[2,"availDevices"],canSelect:[3,"canSelect"]},{selected:"selected",cleared:"cleared"}),(t()(),s["ɵand"](16777216,null,null,1,null,Zl)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](23,0,null,null,1,"cd-osd-devices-selection-groups",[["name","DB"],["type","db"]],null,[[null,"selected"],[null,"cleared"]],(function(t,e,n){var a=!0,r=t.component;return"selected"===e&&(a=!1!==r.onDevicesSelected(n)&&a),"cleared"===e&&(a=!1!==r.onDevicesCleared(n)&&a),a}),zl,Pl)),s["ɵdid"](24,638976,[[3,4],["dbDeviceSelectionGroups",4]],0,Dl,[Ct.b,fe.a],{type:[0,"type"],name:[1,"name"],availDevices:[2,"availDevices"],canSelect:[3,"canSelect"]},{selected:"selected",cleared:"cleared"}),(t()(),s["ɵand"](16777216,null,null,1,null,Ql)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](27,0,null,null,14,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Configuration"])),(t()(),s["ɵeld"](30,0,null,null,11,"div",[["class","form-group row"],["formGroupName","features"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](31,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](33,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](34,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](37,0,null,0,1,"label",[["class","cd-col-form-label"],["for","features"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Features"])),(t()(),s["ɵeld"](39,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Xl)),s["ɵdid"](41,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](42,0,null,null,6,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](43,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](44,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submit()&&a),a}),ks.b,ks.a)),s["ɵdid"](45,114688,[[4,4],["previewButton",4]],0,Es.a,[s.ElementRef],{form:[0,"form"],disabled:[1,"disabled"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Preview"])),(t()(),s["ɵeld"](47,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](48,49152,null,0,Ds.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,3,0,n.form),t(e,6,0,n.form),t(e,15,0,"data","Primary",n.availDevices,0!==n.availDevices.length),t(e,20,0,"wal","WAL",n.availDevices,0!==s["ɵnov"](e,15).devices.length),t(e,22,0,0!==s["ɵnov"](e,20).devices.length),t(e,24,0,"db","DB",n.availDevices,0!==s["ɵnov"](e,15).devices.length),t(e,26,0,0!==s["ɵnov"](e,24).devices.length),t(e,31,0,"features"),t(e,34,0),t(e,41,0,n.featureList),t(e,45,0,s["ɵnov"](e,3),0===s["ɵnov"](e,15).devices.length)}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending);var a=s["ɵunv"](e,9,0,t(e,10,0,s["ɵnov"](e.parent,0),n.action)),r=s["ɵunv"](e,9,1,t(e,11,0,s["ɵnov"](e.parent,1),n.resource));t(e,9,0,a,r),t(e,30,0,s["ɵnov"](e,33).ngClassUntouched,s["ɵnov"](e,33).ngClassTouched,s["ɵnov"](e,33).ngClassPristine,s["ɵnov"](e,33).ngClassDirty,s["ɵnov"](e,33).ngClassValid,s["ɵnov"](e,33).ngClassInvalid,s["ɵnov"](e,33).ngClassPending,s["ɵnov"](e,34).hasErrors,s["ɵnov"](e,34).hasSuccess)}))}function ed(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Ps.a,[]),s["ɵqud"](671088640,1,{dataDeviceSelectionGroups:0}),s["ɵqud"](671088640,2,{walDeviceSelectionGroups:0}),s["ɵqud"](671088640,3,{dbDeviceSelectionGroups:0}),s["ɵqud"](671088640,4,{previewButton:0}),(t()(),s["ɵand"](16777216,null,null,1,null,Kl)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,td)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,7,0,!n.hasOrchestrator),t(e,9,0,!n.loading&&n.hasOrchestrator)}),null)}function nd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-form",[],null,null,null,ed,Wl)),s["ɵdid"](1,114688,null,0,Ul,[St.b,J.a,fe.a,Br,Et.m,Ct.b],null,null)],(function(t,e){t(e,1,0)}),null)}var ad=s["ɵccf"]("cd-osd-form",Ul,nd,{},{},[]),rd=n("iExv");class id{constructor(t){this.i18n=t,this.flags={runtime:this.i18n("The value can be updated at runtime."),no_mon_update:this.i18n("Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via 'ceph config\n      set ...'. This option should be configured via ceph.conf or via the\n      command line."),startup:this.i18n("Option takes effect only during daemon startup."),cluster_create:this.i18n("Option only affects cluster creation."),create:this.i18n("Option only affects daemon creation.")}}ngOnChanges(){this.selection&&(this.selection.services=X.split(this.selection.services,","))}}var sd=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ud(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",": ","",""])),(t()(),s["ɵeld"](2,0,null,null,0,"br",[],null,null,null,null,null))],null,(function(t,e){t(e,1,0,e.context.$implicit.section,e.context.$implicit.value,e.context.last?"":",")}))}function od(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"span",[],[[8,"title",0]],null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,2,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(t()(),s["ɵted"](3,null,["",""])),s["ɵppd"](4,1)],null,(function(t,e){t(e,1,0,s["ɵinlineInterpolate"](1,"",e.component.flags[e.context.$implicit],""));var n=s["ɵunv"](e,3,0,t(e,4,0,s["ɵnov"](e.parent.parent,0),e.context.$implicit));t(e,3,0,n)}))}function ld(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit)}))}function dd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,94,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,92,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,90,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,89,"tbody",[],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Name"])),(t()(),s["ɵeld"](9,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(t()(),s["ɵted"](10,null,["",""])),(t()(),s["ɵeld"](11,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Description"])),(t()(),s["ɵeld"](14,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](15,null,["",""])),(t()(),s["ɵeld"](16,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Long description"])),(t()(),s["ɵeld"](19,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](20,null,["",""])),(t()(),s["ɵeld"](21,0,null,null,5,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Current values"])),(t()(),s["ɵeld"](24,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ud)),s["ɵdid"](26,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](27,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Default"])),(t()(),s["ɵeld"](30,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](31,null,["",""])),(t()(),s["ɵeld"](32,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](33,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Daemon default"])),(t()(),s["ɵeld"](35,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](36,null,["",""])),(t()(),s["ɵeld"](37,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](38,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Type"])),(t()(),s["ɵeld"](40,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](41,null,["",""])),(t()(),s["ɵeld"](42,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](43,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Min"])),(t()(),s["ɵeld"](45,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](46,null,["",""])),(t()(),s["ɵeld"](47,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](48,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Max"])),(t()(),s["ɵeld"](50,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](51,null,["",""])),(t()(),s["ɵeld"](52,0,null,null,5,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](53,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Flags"])),(t()(),s["ɵeld"](55,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,od)),s["ɵdid"](57,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](58,0,null,null,5,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](59,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Services"])),(t()(),s["ɵeld"](61,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ld)),s["ɵdid"](63,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](64,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](65,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Source"])),(t()(),s["ɵeld"](67,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](68,null,["",""])),(t()(),s["ɵeld"](69,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](70,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Level"])),(t()(),s["ɵeld"](72,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](73,null,["",""])),(t()(),s["ɵeld"](74,0,null,null,5,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](75,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Can be updated at runtime (editable)"])),(t()(),s["ɵeld"](77,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](78,null,["",""])),s["ɵppd"](79,1),(t()(),s["ɵeld"](80,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](81,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Tags"])),(t()(),s["ɵeld"](83,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](84,null,["",""])),(t()(),s["ɵeld"](85,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](86,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Enum values"])),(t()(),s["ɵeld"](88,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](89,null,["",""])),(t()(),s["ɵeld"](90,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](91,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["See also"])),(t()(),s["ɵeld"](93,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](94,null,["",""]))],(function(t,e){var n=e.component;t(e,3,0,"Details"),t(e,26,0,n.selection.value),t(e,57,0,n.selection.flags),t(e,63,0,n.selection.services)}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,10,0,n.selection.name),t(e,15,0,n.selection.desc),t(e,20,0,n.selection.long_desc),t(e,31,0,n.selection.default),t(e,36,0,n.selection.daemon_default),t(e,41,0,n.selection.type),t(e,46,0,n.selection.min),t(e,51,0,n.selection.max),t(e,68,0,n.selection.source),t(e,73,0,n.selection.level);var a=s["ɵunv"](e,78,0,t(e,79,0,s["ɵnov"](e.parent,1),n.selection.can_update_at_runtime));t(e,78,0,a),t(e,84,0,n.selection.tags),t(e,89,0,n.selection.enum_values),t(e,94,0,n.selection.see_also)}))}function cd(t){return s["ɵvid"](0,[s["ɵpid"](0,i.UpperCasePipe,[]),s["ɵpid"](0,rd.a,[fe.a]),(t()(),s["ɵand"](16777216,null,null,1,null,dd)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,3,0,e.component.selection)}),null)}class fd extends ls.a{constructor(t,e,n,a){super(),this.authStorageService=t,this.configurationService=e,this.i18n=n,this.actionLabels=a,this.data=[],this.icons=pt.a,this.selection=new Hr.a,this.filters=[{name:this.i18n("Level"),prop:"level",filterOptions:["basic","advanced","dev"],filterInitValue:"basic",filterPredicate:(t,e)=>{let n;return function(t){t[t.basic=0]="basic",t[t.advanced=1]="advanced",t[t.dev=2]="dev"}(n||(n={})),n[t.level]<=n[e]}},{name:this.i18n("Service"),prop:"services",filterOptions:["mon","mgr","osd","mds","common","mds_client","rgw"],filterPredicate:(t,e)=>t.services.includes(e)},{name:this.i18n("Source"),prop:"source",filterOptions:["mon"],filterPredicate:(t,e)=>!!t.hasOwnProperty("source")&&t.source.includes(e)},{name:this.i18n("Modified"),prop:"modified",filterOptions:["yes","no"],filterPredicate:(t,e)=>!("yes"!==e||!t.hasOwnProperty("value"))||"no"===e&&!t.hasOwnProperty("value")}],this.permission=this.authStorageService.getPermissions().configOpt;const r=()=>this.selection.first()&&""+encodeURIComponent(this.selection.first().name);this.tableActions=[{permission:"update",icon:pt.a.edit,routerLink:()=>"/configuration/edit/"+r(),name:this.actionLabels.EDIT,disable:()=>!this.isEditable(this.selection)}]}ngOnInit(){this.columns=[{canAutoResize:!0,prop:"name",name:this.i18n("Name")},{prop:"desc",name:this.i18n("Description"),cellClass:"wrap"},{prop:"value",name:this.i18n("Current value"),cellClass:"wrap",cellTemplate:this.confValTpl},{prop:"default",name:this.i18n("Default"),cellClass:"wrap"},{prop:"can_update_at_runtime",name:this.i18n("Editable"),cellTransformation:Yr.a.checkIcon,flexGrow:.4,cellClass:"text-center"}]}updateSelection(t){this.selection=t}getConfigurationList(t){this.configurationService.getConfigData().subscribe(t=>{this.data=t},()=>{t.error()})}isEditable(t){return 1===t.selected.length&&t.selected[0].can_update_at_runtime}}var hd=s["ɵcrt"]({encapsulation:0,styles:[[".filter[_ngcontent-%COMP%]{padding-right:8px}.fa-stack[_ngcontent-%COMP%]{font-size:.79rem}.fa-stack[_ngcontent-%COMP%]   .fa-stack-1x[_ngcontent-%COMP%]{margin-left:8px;margin-top:5px}  datatable-body-cell.wrap{word-break:break-all}"]],data:{}});function gd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",": ","",""])),(t()(),s["ɵeld"](2,0,null,null,0,"br",[],null,null,null,null,null))],null,(function(t,e){t(e,1,0,e.context.$implicit.section,e.context.$implicit.value,e.context.last?"":",")}))}function pd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,gd)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.parent.context.value)}),null)}function bd(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,pd)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.value)}),null)}function md(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{confValTpl:0}),s["ɵqud"](671088640,2,{confFlagTpl:0}),(t()(),s["ɵeld"](2,0,null,null,5,"cd-table",[["selectionType","single"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.getConfigurationList(n)&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](3,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],selectionType:[3,"selectionType"],extraFilterableColumns:[4,"extraFilterableColumns"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](5,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](6,0,null,3,1,"cd-configuration-details",[["cdTableDetail",""]],null,null,null,cd,sd)),s["ɵdid"](7,573440,null,0,id,[fe.a],{selection:[0,"selection"]},null),(t()(),s["ɵand"](0,[[1,2],["confValTpl",2]],null,0,null,bd))],(function(t,e){var n=e.component;t(e,3,0,n.data,n.columns,!0,"single",n.filters),t(e,5,0,n.permission,n.selection,n.tableActions),t(e,7,0,n.expandedRow)}),null)}function yd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-configuration",[],null,null,null,md,hd)),s["ɵdid"](1,114688,null,0,fd,[J.a,ol.a,fe.a,St.b],null,null)],(function(t,e){t(e,1,0)}),null)}var vd=s["ɵccf"]("cd-configuration",fd,yd,{},{},[]);class xd{constructor(){this.value=[]}}class _d{constructor(t,e,n,a,r){this.route=t,this.router=e,this.configService=n,this.notificationService=a,this.i18n=r,this.availSections=["global","mon","mgr","osd","mds","client"],this.createForm()}createForm(){const t={name:new K.i({value:null}),desc:new K.i({value:null}),long_desc:new K.i({value:null}),values:new K.k({}),default:new K.i({value:null}),daemon_default:new K.i({value:null}),services:new K.i([])};this.availSections.forEach(e=>{t.values.addControl(e,new K.i(null))}),this.configForm=new Ms.a(t)}ngOnInit(){this.route.params.subscribe(t=>{this.configService.get(t.name).subscribe(t=>{this.setResponse(t)})})}getValidators(t){const e=ll.getTypeValidators(t);if(e)return this.patternHelpText=e.patternHelpText,"max"in e&&""!==e.max&&(this.maxValue=e.max),"min"in e&&""!==e.min&&(this.minValue=e.min),e.validators}getStep(t,e){return ll.getTypeStep(t,e)}setResponse(t){this.response=t;const e=this.getValidators(t);this.configForm.get("name").setValue(t.name),this.configForm.get("desc").setValue(t.desc),this.configForm.get("long_desc").setValue(t.long_desc),this.configForm.get("default").setValue(t.default),this.configForm.get("daemon_default").setValue(t.daemon_default),this.configForm.get("services").setValue(t.services),this.response.value&&this.response.value.forEach(t=>{let e=null;e="true"===t.value||"false"!==t.value&&t.value,this.configForm.get("values").get(t.section).setValue(e)}),this.availSections.forEach(t=>{this.configForm.get("values").get(t).setValidators(e)});const n=ll.getType(t.type);this.type=n.name,this.inputType=n.inputType,this.humanReadableType=n.humanReadable}createRequest(){const t=[];if(this.availSections.forEach(e=>{const n=this.configForm.getValue(e);null!==n&&""!==n&&t.push({section:e,value:n})}),!X.isEqual(this.response.value,t)){const e=new xd;return e.name=this.configForm.getValue("name"),e.value=t,e}return null}submit(){const t=this.createRequest();t&&this.configService.create(t).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Updated config option {{name}}",{name:t.name})),this.router.navigate(["/configuration"])},()=>{this.configForm.setErrors({cdSubmitButton:!0})}),this.router.navigate(["/configuration"])}}var Td=s["ɵcrt"]({encapsulation:0,styles:[[".form-component-badge[_ngcontent-%COMP%]{height:34px;display:block}.form-component-badge[_ngcontent-%COMP%]   span[_ngcontent-%COMP%]{margin-top:7px}.resize-vertical[_ngcontent-%COMP%]{resize:vertical}"]],data:{}});function wd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Description"])),(t()(),s["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"textarea",[["class","form-control resize-vertical"],["formControlName","desc"],["id","desc"],["readonly",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,8)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,8)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,8)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](10,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["            "]))],(function(t,e){t(e,1,0),t(e,10,0,"desc"),t(e,13,0,"desc")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,13).validClass,s["ɵnov"](e,13).invalidClass)}))}function Od(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Long description"])),(t()(),s["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"textarea",[["class","form-control resize-vertical"],["formControlName","long_desc"],["id","long_desc"],["readonly",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,8)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,8)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,8)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](10,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["            "]))],(function(t,e){t(e,1,0),t(e,10,0,"long_desc"),t(e,13,0,"long_desc")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,13).validClass,s["ɵnov"](e,13).invalidClass)}))}function Sd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Default"])),(t()(),s["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","default"],["id","default"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,9)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,9)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,9)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](11,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,1,0),t(e,11,0,"default"),t(e,14,0,"default")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Id(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Daemon default"])),(t()(),s["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","daemon_default"],["id","daemon_default"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,9)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,9)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,9)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](11,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,1,0),t(e,11,0,"daemon_default"),t(e,14,0,"daemon_default")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Nd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[["class","form-component-badge"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","badge badge-dark"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit)}))}function Cd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,11,{FormControlNames:1}),s["ɵqud"](603979776,12,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Services"])),(t()(),s["ɵeld"](6,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Nd)),s["ɵdid"](8,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,8,0,n.configForm.getValue("services"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess)}))}function Rd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,13,{FormControlNames:1}),s["ɵqud"](603979776,14,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](5,null,[""," "])),(t()(),s["ɵeld"](6,0,null,0,20,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,19,"select",[["class","form-control custom-select"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,9).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](11,671744,[[13,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](15,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](16,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](17,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Default --"])),(t()(),s["ɵeld"](19,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](20,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](21,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["true"])),(t()(),s["ɵeld"](23,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](24,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](25,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["false"]))],(function(t,e){t(e,1,0),t(e,11,0,e.parent.context.$implicit),t(e,14,0,e.parent.context.$implicit),t(e,16,0,null),t(e,17,0,null),t(e,20,0,!0),t(e,21,0,!0),t(e,24,0,!1),t(e,25,0,!1)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.parent.context.$implicit),t(e,5,0,e.parent.context.$implicit),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Ad(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.patternHelpText)}))}function kd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.patternHelpText)}))}function Ed(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too high! It must not be greater than ","."]))],null,(function(t,e){t(e,1,0,e.component.maxValue)}))}function Ld(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too low! It must not be lower than ","."]))],null,(function(t,e){t(e,1,0,e.component.minValue)}))}function Dd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,15,{FormControlNames:1}),s["ɵqud"](603979776,16,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](5,null,[""," "])),(t()(),s["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"input",[["class","form-control"]],[[8,"type",0],[8,"id",0],[8,"placeholder",0],[8,"step",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,9)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,9)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,9)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](11,671744,[[15,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ad)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,kd)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ed)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ld)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,11,0,e.parent.context.$implicit),t(e,14,0,e.parent.context.$implicit),t(e,16,0,n.configForm.showError(e.parent.context.$implicit,s["ɵnov"](e.parent.parent,3),"pattern")),t(e,18,0,n.configForm.showError(e.parent.context.$implicit,s["ɵnov"](e.parent.parent,3),"invalidUuid")),t(e,20,0,n.configForm.showError(e.parent.context.$implicit,s["ɵnov"](e.parent.parent,3),"max")),t(e,22,0,n.configForm.showError(e.parent.context.$implicit,s["ɵnov"](e.parent.parent,3),"min"))}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.parent.context.$implicit),t(e,5,0,e.parent.context.$implicit),t(e,7,1,[n.inputType,e.parent.context.$implicit,n.humanReadableType,n.getStep(n.type,n.configForm.getValue(e.parent.context.$implicit)),s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass])}))}function Pd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Rd)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Dd)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,"bool"===n.type),t(e,4,0,"bool"!==n.type)}),null)}function Md(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,53,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,52,"form",[["name","configForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,46,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Edit"])),(t()(),s["ɵted"](11,null,[" "," "])),(t()(),s["ɵeld"](12,0,null,null,33,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](14,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](17,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Name"])),(t()(),s["ɵeld"](19,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,7,"input",[["class","form-control"],["formControlName","name"],["id","name"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,22)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,22).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,22)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,22)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](24,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](26,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,wd)),s["ɵdid"](29,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Od)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Sd)),s["ɵdid"](33,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Id)),s["ɵdid"](35,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cd)),s["ɵdid"](37,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](38,0,null,null,7,"div",[["formGroupName","values"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),s["ɵdid"](39,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](41,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](42,0,null,null,1,"h3",[["class","cd-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Values"])),(t()(),s["ɵand"](16777216,null,null,1,null,Pd)),s["ɵdid"](45,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](46,0,null,null,7,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](47,0,null,null,6,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](48,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submit()&&a),a}),ks.b,ks.a)),s["ɵdid"](49,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵeld"](50,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Save"])),(t()(),s["ɵeld"](52,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](53,49152,null,0,Ds.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,3,0,n.configForm),t(e,6,0,n.configForm),t(e,14,0),t(e,24,0,"name"),t(e,27,0,"name"),t(e,29,0,n.configForm.getValue("desc")),t(e,31,0,n.configForm.getValue("long_desc")),t(e,33,0,""!==n.configForm.getValue("default")),t(e,35,0,""!==n.configForm.getValue("daemon_default")),t(e,37,0,n.configForm.getValue("services").length>0),t(e,39,0,"values"),t(e,45,0,n.availSections),t(e,49,0,s["ɵnov"](e,3))}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending),t(e,11,0,n.configForm.getValue("name")),t(e,13,0,s["ɵnov"](e,14).hasErrors,s["ɵnov"](e,14).hasSuccess),t(e,20,0,s["ɵnov"](e,26).ngClassUntouched,s["ɵnov"](e,26).ngClassTouched,s["ɵnov"](e,26).ngClassPristine,s["ɵnov"](e,26).ngClassDirty,s["ɵnov"](e,26).ngClassValid,s["ɵnov"](e,26).ngClassInvalid,s["ɵnov"](e,26).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass),t(e,38,0,s["ɵnov"](e,41).ngClassUntouched,s["ɵnov"](e,41).ngClassTouched,s["ɵnov"](e,41).ngClassPristine,s["ɵnov"](e,41).ngClassDirty,s["ɵnov"](e,41).ngClassValid,s["ɵnov"](e,41).ngClassInvalid,s["ɵnov"](e,41).ngClassPending)}))}function qd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-configuration-form",[],null,null,null,Md,Td)),s["ɵdid"](1,114688,null,0,_d,[Et.a,Et.m,ol.a,bt.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var jd=s["ɵccf"]("cd-configuration-form",_d,qd,{},{},[]),Fd=n("LOMR"),Vd=n("MP8s"),Gd=n("fxL3"),Bd=n("gk6K"),zd=n("mrSG"),Yd=n("yYhs");class Hd{constructor(t){this.healthService=t,this.icons=pt.a,this.loadingIndicator=!0,this.nodes=[],this.treeOptions={useVirtualScroll:!0,nodeHeight:22,actionMapping:{mouse:{click:this.onNodeSelected.bind(this)}}},this.metadataKeyMap={}}ngOnInit(){this.healthService.getFullHealth().subscribe(t=>{this.loadingIndicator=!1,this.nodes=this.abstractTreeData(t)})}abstractTreeData(t){const e=t.osd_map.tree.nodes||[],n={};if(0===e.length)return[{name:"No nodes!"}];const a=[];return e.reverse().forEach(t=>{"root"===t.type&&a.push(t.id),n[t.id]=this.generateTreeLeaf(t,n)}),a.map(t=>n[t])}generateTreeLeaf(t,e){const n=t.id;this.metadataKeyMap[n]=t;const a=[],r={name:t.name+" ("+t.type+")",status:t.status,cdId:n,type:t.type};return t.children&&(t.children.sort().forEach(t=>{a.push(e[t])}),r.children=a),r}onNodeSelected(t,e){if(Yd.a.ACTIVATE(t,e,!0),void 0!==e.data.cdId){const t=this.metadataKeyMap[e.data.cdId],{name:n,type:a}=t,r=zd.__rest(t,["name","type","status"]);this.metadata=r,this.metadataTitle=n+" ("+a+")"}else delete this.metadata,delete this.metadataTitle}onUpdateData(){this.tree.treeModel.expandAll()}}var Ud=s["ɵcrt"]({encapsulation:0,styles:[[".tree-container[_ngcontent-%COMP%]{height:calc(100vh - 200px)}"]],data:{}});function Wd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](3,3)],(function(t,e){var n=e.component,a=t(e,3,0,n.icons.large,n.icons.spinner,n.icons.spin);t(e,2,0,a)}),null)}function Kd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"span",[["class","badge"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](3,2),s["ɵpad"](4,3),s["ɵpod"](5,{"badge-success":0,"badge-danger":1}),(t()(),s["ɵted"](6,null,[" "," "]))],(function(t,e){var n=t(e,5,0,t(e,3,0,"in","up").includes(e.parent.context.$implicit.data.status),t(e,4,0,"down","out","destroyed").includes(e.parent.context.$implicit.data.status));t(e,2,0,"badge",n)}),(function(t,e){t(e,6,0,e.parent.context.$implicit.data.status)}))}function $d(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Kd)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" "])),(t()(),s["ɵeld"](4,0,null,null,3,"span",[["class","node-name"]],[[8,"innerHTML",1]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](7,{"type-osd":0})],(function(t,e){t(e,1,0,e.context.$implicit.data.status);var n=t(e,7,0,"osd"===e.context.$implicit.data.type);t(e,6,0,"node-name",n)}),(function(t,e){t(e,4,0,e.context.$implicit.data.name)}))}function Zd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"div",[["class","col-sm-6 col-lg-6 metadata"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""])),(t()(),s["ɵeld"](3,0,null,null,1,"cd-table-key-value",[],null,null,null,fi.b,fi.a)),s["ɵdid"](4,638976,null,0,hi.a,[xe.a],{data:[0,"data"]},null)],(function(t,e){t(e,4,0,e.component.metadata)}),(function(t,e){t(e,2,0,e.component.metadataTitle)}))}function Jd(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{tree:0}),(t()(),s["ɵeld"](1,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,18,"div",[["class","col-sm-12 col-lg-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,17,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CRUSH map viewer"])),(t()(),s["ɵeld"](6,0,null,null,14,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,10,"div",[["class","col-sm-6 col-lg-6 tree-container"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Wd)),s["ɵdid"](10,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](11,0,null,null,7,"tree-root",[],null,[[null,"updateData"],["body","keydown"],["body","mousedown"]],(function(t,e,n){var a=!0,r=t.component;return"body:keydown"===e&&(a=!1!==s["ɵnov"](t,13).onKeydown(n)&&a),"body:mousedown"===e&&(a=!1!==s["ɵnov"](t,13).onMousedown(n)&&a),"updateData"===e&&(a=!1!==r.onUpdateData()&&a),a}),Fd.b,Fd.a)),s["ɵprd"](131584,null,Vd.a,Vd.a,[]),s["ɵdid"](13,573440,[[1,4],["tree",4]],4,Gd.a,[Vd.a,Bd.a],{nodes:[0,"nodes"],options:[1,"options"]},{updateData:"updateData"}),s["ɵqud"](603979776,2,{loadingTemplate:0}),s["ɵqud"](603979776,3,{treeNodeTemplate:0}),s["ɵqud"](603979776,4,{treeNodeWrapperTemplate:0}),s["ɵqud"](603979776,5,{treeNodeFullTemplate:0}),(t()(),s["ɵand"](0,[[3,2],["treeNodeTemplate",2]],null,0,null,$d)),(t()(),s["ɵand"](16777216,null,null,1,null,Zd)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,10,0,n.loadingIndicator),t(e,13,0,n.nodes,n.treeOptions),t(e,20,0,n.metadata)}),null)}function Qd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-crushmap",[],null,null,null,Jd,Ud)),s["ɵdid"](1,114688,null,0,Hd,[Ia],null,null)],(function(t,e){t(e,1,0)}),null)}var Xd=s["ɵccf"]("cd-crushmap",Hd,Qd,{},{},[]),tc=n("AfCQ");let ec=(()=>{class t{writeValue(e){return{type:t.WRITE_VALUE,payload:e}}changeHours(e){return{type:t.CHANGE_HOURS,payload:e}}changeMinutes(e){return{type:t.CHANGE_MINUTES,payload:e}}changeSeconds(e){return{type:t.CHANGE_SECONDS,payload:e}}setTime(e){return{type:t.SET_TIME_UNIT,payload:e}}updateControls(e){return{type:t.UPDATE_CONTROLS,payload:e}}}return t.WRITE_VALUE="[timepicker] write value from ng model",t.CHANGE_HOURS="[timepicker] change hours",t.CHANGE_MINUTES="[timepicker] change minutes",t.CHANGE_SECONDS="[timepicker] change seconds",t.SET_TIME_UNIT="[timepicker] set time unit",t.UPDATE_CONTROLS="[timepicker] update controls",t})();function nc(t){return!!t&&!(t instanceof Date&&isNaN(t.getHours()))&&("string"!=typeof t||nc(new Date(t)))}function ac(t,e){return!(t.min&&e<t.min||t.max&&e>t.max)}function rc(t){return"number"==typeof t?t:parseInt(t,10)}function ic(t,e=!1){const n=rc(t);return isNaN(n)||n<0||n>(e?12:24)?NaN:n}function sc(t){const e=rc(t);return isNaN(e)||e<0||e>60?NaN:e}function uc(t){const e=rc(t);return isNaN(e)||e<0||e>60?NaN:e}function oc(t){return"string"==typeof t?new Date(t):t}function lc(t,e){if(!t)return lc(cc(new Date,0,0,0),e);let n=t.getHours(),a=t.getMinutes(),r=t.getSeconds();return e.hour&&(n+=rc(e.hour)),e.minute&&(a+=rc(e.minute)),e.seconds&&(r+=rc(e.seconds)),cc(t,n,a,r)}function dc(t,e){let n=ic(e.hour);const a=sc(e.minute),r=uc(e.seconds)||0;return e.isPM&&12!==n&&(n+=12),t?isNaN(n)||isNaN(a)?t:cc(t,n,a,r):isNaN(n)||isNaN(a)?t:cc(new Date,n,a,r)}function cc(t,e,n,a){const r=new Date(t.getFullYear(),t.getMonth(),t.getDate(),e,n,a,t.getMilliseconds());return r.setFullYear(t.getFullYear()),r.setMonth(t.getMonth()),r.setDate(t.getDate()),r}function fc(t){const e=t.toString();return e.length>1?e:"0"+e}function hc(t,e){return!isNaN(ic(t,e))}function gc(t){return!isNaN(sc(t))}function pc(t){return!isNaN(uc(t))}function bc(t,e="0",n="0",a){return hc(t,a)&&gc(e)&&pc(n)}function mc(t,e){if(t.readonlyInput||t.disabled)return!1;if(e){if("wheel"===e.source&&!t.mousewheel)return!1;if("key"===e.source&&!t.arrowkeys)return!1}return!0}function yc(t){const{hourStep:e,minuteStep:n,secondsStep:a,readonlyInput:r,disabled:i,mousewheel:s,arrowkeys:u,showSpinners:o,showMeridian:l,showSeconds:d,meridians:c,min:f,max:h}=t;return{hourStep:e,minuteStep:n,secondsStep:a,readonlyInput:r,disabled:i,mousewheel:s,arrowkeys:u,showSpinners:o,showMeridian:l,showSeconds:d,meridians:c,min:f,max:h}}class vc{constructor(){this.hourStep=1,this.minuteStep=5,this.secondsStep=10,this.showMeridian=!0,this.meridians=["AM","PM"],this.readonlyInput=!1,this.disabled=!1,this.mousewheel=!0,this.arrowkeys=!0,this.showSpinners=!0,this.showSeconds=!1,this.showMinutes=!0,this.hoursPlaceholder="HH",this.minutesPlaceholder="MM",this.secondsPlaceholder="SS",this.ariaLabelHours="hours",this.ariaLabelMinutes="minutes",this.ariaLabelSeconds="seconds"}}const xc={value:null,config:new vc,controls:{canIncrementHours:!0,canIncrementMinutes:!0,canIncrementSeconds:!0,canDecrementHours:!0,canDecrementMinutes:!0,canDecrementSeconds:!0,canToggleMeridian:!0}};function _c(t=xc,e){switch(e.type){case ec.WRITE_VALUE:return Object.assign({},t,{value:e.payload});case ec.CHANGE_HOURS:{if(!mc(t.config,e.payload)||(a=t.controls,!(n=e.payload).step||n.step>0&&!a.canIncrementHours||n.step<0&&!a.canDecrementHours))return t;const r=lc(t.value,{hour:e.payload.step});return!t.config.max&&!t.config.min||ac(t.config,r)?Object.assign({},t,{value:r}):t}case ec.CHANGE_MINUTES:{if(!mc(t.config,e.payload)||!function(t,e){return!(!t.step||t.step>0&&!e.canIncrementMinutes||t.step<0&&!e.canDecrementMinutes)}(e.payload,t.controls))return t;const n=lc(t.value,{minute:e.payload.step});return!t.config.max&&!t.config.min||ac(t.config,n)?Object.assign({},t,{value:n}):t}case ec.CHANGE_SECONDS:{if(!mc(t.config,e.payload)||!function(t,e){return!(!t.step||t.step>0&&!e.canIncrementSeconds||t.step<0&&!e.canDecrementSeconds)}(e.payload,t.controls))return t;const n=lc(t.value,{seconds:e.payload.step});return!t.config.max&&!t.config.min||ac(t.config,n)?Object.assign({},t,{value:n}):t}case ec.SET_TIME_UNIT:{if(!mc(t.config))return t;const n=dc(t.value,e.payload);return Object.assign({},t,{value:n})}case ec.UPDATE_CONTROLS:{const n=function(t,e){const{min:n,max:a,hourStep:r,minuteStep:i,secondsStep:s,showSeconds:u}=e,o={canIncrementHours:!0,canIncrementMinutes:!0,canIncrementSeconds:!0,canDecrementHours:!0,canDecrementMinutes:!0,canDecrementSeconds:!0,canToggleMeridian:!0};if(!t)return o;if(a){const e=lc(t,{hour:r});if(o.canIncrementHours=a>e,!o.canIncrementHours){const e=lc(t,{minute:i});o.canIncrementMinutes=u?a>e:a>=e}if(!o.canIncrementMinutes){const e=lc(t,{seconds:s});o.canIncrementSeconds=a>=e}t.getHours()<12&&(o.canToggleMeridian=lc(t,{hour:12})<a)}if(n){const e=lc(t,{hour:-r});if(o.canDecrementHours=n<e,!o.canDecrementHours){const e=lc(t,{minute:-i});o.canDecrementMinutes=u?n<e:n<=e}if(!o.canDecrementMinutes){const e=lc(t,{seconds:-s});o.canDecrementSeconds=n<=e}t.getHours()>=12&&(o.canToggleMeridian=lc(t,{hour:-12})>n)}return o}(t.value,e.payload),a={value:t.value,config:e.payload,controls:n};return t.config.showMeridian!==a.config.showMeridian&&t.value&&(a.value=new Date(t.value)),Object.assign({},t,a)}default:return t}var n,a}class Tc extends tc.b{constructor(){const t=new Na.a({type:"[mini-ngrx] dispatcher init"});super(t,_c,new tc.a(xc,t,_c))}}class wc{constructor(t,e,n,a){this._cd=e,this._store=n,this._timepickerActions=a,this.isValid=new s.EventEmitter,this.invalidHours=!1,this.invalidMinutes=!1,this.invalidSeconds=!1,this.onChange=Function.prototype,this.onTouched=Function.prototype,Object.assign(this,t),this.timepickerSub=n.select(t=>t.value).subscribe(t=>{this._renderTime(t),this.onChange(t),this._store.dispatch(this._timepickerActions.updateControls(yc(this)))}),n.select(t=>t.controls).subscribe(t=>{this.isValid.emit(bc(this.hours,this.minutes,this.seconds,this.isPM())),Object.assign(this,t),e.markForCheck()})}get isSpinnersVisible(){return this.showSpinners&&!this.readonlyInput}get isEditable(){return!(this.readonlyInput||this.disabled)}resetValidation(){this.invalidHours=!1,this.invalidMinutes=!1,this.invalidSeconds=!1}isPM(){return this.showMeridian&&this.meridian===this.meridians[1]}prevDef(t){t.preventDefault()}wheelSign(t){return-1*Math.sign(t.deltaY)}ngOnChanges(t){this._store.dispatch(this._timepickerActions.updateControls(yc(this)))}changeHours(t,e=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeHours({step:t,source:e}))}changeMinutes(t,e=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeMinutes({step:t,source:e}))}changeSeconds(t,e=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeSeconds({step:t,source:e}))}updateHours(t){if(this.resetValidation(),this.hours=t,!hc(this.hours,this.isPM())||!this.isValidLimit())return this.invalidHours=!0,this.isValid.emit(!1),void this.onChange(null);this._updateTime()}updateMinutes(t){if(this.resetValidation(),this.minutes=t,!gc(this.minutes)||!this.isValidLimit())return this.invalidMinutes=!0,this.isValid.emit(!1),void this.onChange(null);this._updateTime()}updateSeconds(t){if(this.resetValidation(),this.seconds=t,!pc(this.seconds)||!this.isValidLimit())return this.invalidSeconds=!0,this.isValid.emit(!1),void this.onChange(null);this._updateTime()}isValidLimit(){return function(t,e,n){const a=dc(new Date,t);return!(e&&a>e||n&&a<n)}({hour:this.hours,minute:this.minutes,seconds:this.seconds,isPM:this.isPM()},this.max,this.min)}_updateTime(){if(!bc(this.hours,this.showMinutes?this.minutes:void 0,this.showSeconds?this.seconds:void 0,this.isPM()))return this.isValid.emit(!1),void this.onChange(null);this._store.dispatch(this._timepickerActions.setTime({hour:this.hours,minute:this.minutes,seconds:this.seconds,isPM:this.isPM()}))}toggleMeridian(){this.showMeridian&&this.isEditable&&this._store.dispatch(this._timepickerActions.changeHours({step:12,source:""}))}writeValue(t){nc(t)?this._store.dispatch(this._timepickerActions.writeValue(oc(t))):null==t&&this._store.dispatch(this._timepickerActions.writeValue(null))}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this.disabled=t,this._cd.markForCheck()}ngOnDestroy(){this.timepickerSub.unsubscribe()}_renderTime(t){if(!nc(t))return this.hours="",this.minutes="",this.seconds="",void(this.meridian=this.meridians[0]);const e=oc(t);let n=e.getHours();this.showMeridian&&(this.meridian=this.meridians[n>=12?1:0],n%=12,0===n&&(n=12)),this.hours=fc(n),this.minutes=fc(e.getMinutes()),this.seconds=fc(e.getUTCSeconds())}}class Oc{static forRoot(){return{ngModule:Oc,providers:[vc,ec,Tc]}}}var Sc=s["ɵcrt"]({encapsulation:2,styles:["\n    .bs-chevron {\n      border-style: solid;\n      display: block;\n      width: 9px;\n      height: 9px;\n      position: relative;\n      border-width: 3px 0px 0 3px;\n    }\n\n    .bs-chevron-up {\n      -webkit-transform: rotate(45deg);\n      transform: rotate(45deg);\n      top: 2px;\n    }\n\n    .bs-chevron-down {\n      -webkit-transform: rotate(-135deg);\n      transform: rotate(-135deg);\n      top: -2px;\n    }\n\n    .bs-timepicker-field {\n      width: 50px;\n      padding: .375rem .55rem;\n    }\n  "],data:{}});function Ic(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function Nc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeMinutes(r.minuteStep)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"span",[["class","bs-chevron bs-chevron-up"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,!n.canIncrementMinutes||!n.isEditable)}))}function Cc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" "]))],null,null)}function Rc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeSeconds(r.secondsStep)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"span",[["class","bs-chevron bs-chevron-up"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,!n.canIncrementSeconds||!n.isEditable)}))}function Ac(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function kc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"td",[],null,null,null,null,null))],null,null)}function Ec(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" : "]))],null,null)}function Lc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[["class","form-group"]],[[2,"has-error",null]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,0,"input",[["class","form-control text-center bs-timepicker-field"],["maxlength","2"],["type","text"]],[[2,"is-invalid",null],[8,"placeholder",0],[8,"readOnly",0],[8,"disabled",0],[8,"value",0],[1,"aria-label",0]],[[null,"wheel"],[null,"keydown.ArrowUp"],[null,"keydown.ArrowDown"],[null,"change"]],(function(t,e,n){var a=!0,r=t.component;return"wheel"===e&&(r.prevDef(n),a=!1!==r.changeMinutes(r.minuteStep*r.wheelSign(n),"wheel")&&a),"keydown.ArrowUp"===e&&(a=!1!==r.changeMinutes(r.minuteStep,"key")&&a),"keydown.ArrowDown"===e&&(a=!1!==r.changeMinutes(0-r.minuteStep,"key")&&a),"change"===e&&(a=!1!==r.updateMinutes(n.target.value)&&a),a}),null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.invalidMinutes),t(e,1,0,n.invalidMinutes,n.minutesPlaceholder,n.readonlyInput,n.disabled,n.minutes,n.labelMinutes)}))}function Dc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" : "]))],null,null)}function Pc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[["class","form-group"]],[[2,"has-error",null]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,0,"input",[["class","form-control text-center bs-timepicker-field"],["maxlength","2"],["type","text"]],[[2,"is-invalid",null],[8,"placeholder",0],[8,"readOnly",0],[8,"disabled",0],[8,"value",0],[1,"aria-label",0]],[[null,"wheel"],[null,"keydown.ArrowUp"],[null,"keydown.ArrowDown"],[null,"change"]],(function(t,e,n){var a=!0,r=t.component;return"wheel"===e&&(r.prevDef(n),a=!1!==r.changeSeconds(r.secondsStep*r.wheelSign(n),"wheel")&&a),"keydown.ArrowUp"===e&&(a=!1!==r.changeSeconds(r.secondsStep,"key")&&a),"keydown.ArrowDown"===e&&(a=!1!==r.changeSeconds(0-r.secondsStep,"key")&&a),"change"===e&&(a=!1!==r.updateSeconds(n.target.value)&&a),a}),null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.invalidSeconds),t(e,1,0,n.invalidSeconds,n.secondsPlaceholder,n.readonlyInput,n.disabled,n.seconds,n.labelSeconds)}))}function Mc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function qc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-default text-center"],["type","button"]],[[8,"disabled",0],[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleMeridian()&&a),a}),null,null)),(t()(),s["ɵted"](2,null,[""," "]))],null,(function(t,e){var n=e.component;t(e,1,0,!n.isEditable||!n.canToggleMeridian,!n.isEditable||!n.canToggleMeridian),t(e,2,0,n.meridian)}))}function jc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function Fc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeMinutes(0-r.minuteStep)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"span",[["class","bs-chevron bs-chevron-down"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,!n.canDecrementMinutes||!n.isEditable)}))}function Vc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" "]))],null,null)}function Gc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeSeconds(0-r.secondsStep)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"span",[["class","bs-chevron bs-chevron-down"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,!n.canDecrementSeconds||!n.isEditable)}))}function Bc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function zc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"td",[],null,null,null,null,null))],null,null)}function Yc(t){return s["ɵvid"](2,[(t()(),s["ɵeld"](0,0,null,null,48,"table",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,47,"tbody",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,15,"tr",[["class","text-center"]],[[8,"hidden",0]],null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeHours(r.hourStep)&&a),a}),null,null)),(t()(),s["ɵeld"](5,0,null,null,0,"span",[["class","bs-chevron bs-chevron-up"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Ic)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Nc)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cc)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Rc)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ac)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,kc)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](18,0,null,null,14,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,1,"td",[["class","form-group"]],[[2,"has-error",null]],null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,0,"input",[["class","form-control text-center bs-timepicker-field"],["maxlength","2"],["type","text"]],[[2,"is-invalid",null],[8,"placeholder",0],[8,"readOnly",0],[8,"disabled",0],[8,"value",0],[1,"aria-label",0]],[[null,"wheel"],[null,"keydown.ArrowUp"],[null,"keydown.ArrowDown"],[null,"change"]],(function(t,e,n){var a=!0,r=t.component;return"wheel"===e&&(r.prevDef(n),a=!1!==r.changeHours(r.hourStep*r.wheelSign(n),"wheel")&&a),"keydown.ArrowUp"===e&&(a=!1!==r.changeHours(r.hourStep,"key")&&a),"keydown.ArrowDown"===e&&(a=!1!==r.changeHours(0-r.hourStep,"key")&&a),"change"===e&&(a=!1!==r.updateHours(n.target.value)&&a),a}),null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Ec)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Lc)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Dc)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Pc)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Mc)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,qc)),s["ɵdid"](32,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](33,0,null,null,15,"tr",[["class","text-center"]],[[8,"hidden",0]],null,null,null,null)),(t()(),s["ɵeld"](34,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](35,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeHours(0-r.hourStep)&&a),a}),null,null)),(t()(),s["ɵeld"](36,0,null,null,0,"span",[["class","bs-chevron bs-chevron-down"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,jc)),s["ɵdid"](38,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fc)),s["ɵdid"](40,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vc)),s["ɵdid"](42,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gc)),s["ɵdid"](44,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bc)),s["ɵdid"](46,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zc)),s["ɵdid"](48,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,7,0,n.showMinutes),t(e,9,0,n.showMinutes),t(e,11,0,n.showSeconds),t(e,13,0,n.showSeconds),t(e,15,0,n.showMeridian),t(e,17,0,n.showMeridian),t(e,22,0,n.showMinutes),t(e,24,0,n.showMinutes),t(e,26,0,n.showSeconds),t(e,28,0,n.showSeconds),t(e,30,0,n.showMeridian),t(e,32,0,n.showMeridian),t(e,38,0,n.showMinutes),t(e,40,0,n.showMinutes),t(e,42,0,n.showSeconds),t(e,44,0,n.showSeconds),t(e,46,0,n.showMeridian),t(e,48,0,n.showMeridian)}),(function(t,e){var n=e.component;t(e,2,0,!n.showSpinners),t(e,4,0,!n.canIncrementHours||!n.isEditable),t(e,19,0,n.invalidHours),t(e,20,0,n.invalidHours,n.hoursPlaceholder,n.readonlyInput,n.disabled,n.hours,n.labelHours),t(e,33,0,!n.showSpinners),t(e,35,0,!n.canDecrementHours||!n.isEditable)}))}var Hc=n("E2fk");let Uc=(()=>{class t{constructor(t){this.http=t}getLogs(){return this.http.get("api/logs/all")}validateDashboardUrl(t){return this.http.get("api/grafana/validation/"+t)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();class Wc{constructor(t,e,n){this.logsService=t,this.datePipe=e,this.ngZone=n,this.icons=pt.a,this.bsConfig={dateInputFormat:"YYYY-MM-DD",containerClass:"theme-default"},this.prioritys=[{name:"Info",value:"[INF]"},{name:"Warning",value:"[WRN]"},{name:"Error",value:"[ERR]"},{name:"All",value:"All"}],this.priority="All",this.search="",this.startTime=new Date,this.endTime=new Date,this.startTime.setHours(0,0),this.endTime.setHours(23,59)}ngOnInit(){this.getInfo(),this.ngZone.runOutsideAngular(()=>{this.interval=window.setInterval(()=>{this.ngZone.run(()=>{this.getInfo()})},5e3)})}ngOnDestroy(){clearInterval(this.interval)}getInfo(){this.logsService.getLogs().subscribe(t=>{this.contentData=t,this.filterLogs()})}abstractfilters(){const t=this.priority,e=this.search.toLowerCase().replace(/,/g,"");let n;if(this.selectedDate){const t=this.selectedDate.getMonth()+1,e=this.selectedDate.getDate();n=`${this.selectedDate.getFullYear().toString()}-${t<=9?"0"+t:""+t}-${e<=9?"0"+e:""+e}`}else n="";return{priority:t,key:e,yearMonthDay:n,sTime:60*(this.startTime?this.startTime.getHours():0)+(this.startTime?this.startTime.getMinutes():0),eTime:60*(this.endTime?this.endTime.getHours():23)+(this.endTime?this.endTime.getMinutes():59)}}filterExecutor(t,e){return t.filter(t=>{const n=this.datePipe.transform(t.stamp,"mediumTime"),a=parseInt(n.split(":")[0],10),r=parseInt(n.split(":")[1],10);let i,s,u;return i="All"===e.priority?t.priority:e.priority,s=e.yearMonthDay?e.yearMonthDay:t.stamp,u=60*a+r,t.priority===i&&-1!==t.message.toLowerCase().indexOf(e.key)&&-1!==t.stamp.indexOf(s)&&u>=e.sTime&&u<=e.eTime})}filterLogs(){const t=this.abstractfilters();this.clog=this.filterExecutor(this.contentData.clog,t),this.audit_log=this.filterExecutor(this.contentData.audit_log,t)}clearSearchKey(){this.search="",this.filterLogs()}clearDate(){this.selectedDate=null,this.filterLogs()}}var Kc=s["ɵcrt"]({encapsulation:0,styles:[["p[_ngcontent-%COMP%]{font-family:monospace}.card[_ngcontent-%COMP%]   div[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{display:flex}.card[_ngcontent-%COMP%]   div[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]:last-child{margin-bottom:0}.card[_ngcontent-%COMP%]   .timestamp[_ngcontent-%COMP%]{font-weight:700;flex-shrink:0}.card[_ngcontent-%COMP%]   .priority[_ngcontent-%COMP%]{margin-left:.5rem}.card[_ngcontent-%COMP%]   .message[_ngcontent-%COMP%]{margin-left:1rem}.card[_ngcontent-%COMP%]   .err[_ngcontent-%COMP%]{color:#a94442}.card[_ngcontent-%COMP%]   .warn[_ngcontent-%COMP%]{color:#ffc200}.card[_ngcontent-%COMP%]   .info[_ngcontent-%COMP%]{color:#2b99a8}  timepicker table tbody tr td input.bs-timepicker-field{width:3.5rem!important;font-size:1rem;padding:4px 6px}.middle[_ngcontent-%COMP%]{padding-top:7px}"]],data:{}});function $c(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Zc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"p",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"span",[["class","timestamp"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""])),s["ɵppd"](3,1),(t()(),s["ɵeld"](4,0,null,null,2,"span",[],[[8,"className",0]],null,null,null,null)),s["ɵppd"](5,1),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵeld"](7,0,null,null,1,"span",[["class","message"]],null,null,null,null,null)),(t()(),s["ɵted"](8,null,["",""]))],null,(function(t,e){var n=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,0),e.context.$implicit.stamp));t(e,2,0,n);var a=s["ɵinlineInterpolate"](1,"priority ",s["ɵunv"](e,4,0,t(e,5,0,s["ɵnov"](e.parent.parent.parent,1),e.context.$implicit.priority)),"");t(e,4,0,a),t(e,6,0,e.context.$implicit.priority),t(e,8,0,e.context.$implicit.message)}))}function Jc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["No entries found"]))],null,null)}function Qc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"div",[["class","card bg-light mb-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Zc)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Jc)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.clog),t(e,5,0,0===n.contentData.clog.length)}),null)}function Xc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"p",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"span",[["class","timestamp"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""])),s["ɵppd"](3,1),(t()(),s["ɵeld"](4,0,null,null,2,"span",[],[[8,"className",0]],null,null,null,null)),s["ɵppd"](5,1),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵeld"](7,0,null,null,1,"span",[["class","message"]],null,null,null,null,null)),(t()(),s["ɵted"](8,null,["",""]))],null,(function(t,e){var n=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,0),e.context.$implicit.stamp));t(e,2,0,n);var a=s["ɵinlineInterpolate"](1,"priority ",s["ɵunv"](e,4,0,t(e,5,0,s["ɵnov"](e.parent.parent.parent,1),e.context.$implicit.priority)),"");t(e,4,0,a),t(e,6,0,e.context.$implicit.priority),t(e,8,0,e.context.$implicit.message)}))}function tf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["No entries found"]))],null,null)}function ef(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"div",[["class","card bg-light mb-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Xc)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tf)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.audit_log),t(e,5,0,0===n.contentData.audit_log.length)}),null)}function nf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,12,"div",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,$c)),s["ɵdid"](2,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](3,0,null,null,9,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](4,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](5,0,null,0,3,"tab",[["heading","Cluster Logs"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](6,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Qc)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](9,0,null,0,3,"tab",[["heading","Audit Logs"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](10,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ef)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,s["ɵnov"](e.parent,4)),t(e,6,0,"Cluster Logs"),t(e,8,0,n.clog),t(e,10,0,"Audit Logs"),t(e,12,0,n.audit_log)}),(function(t,e){t(e,3,0,s["ɵnov"](e,4).clazz),t(e,5,0,s["ɵnov"](e,6).id,s["ɵnov"](e,6).active,s["ɵnov"](e,6).addClass,s["ɵnov"](e,6).role,s["ɵnov"](e,6).ariaLabelledby),t(e,9,0,s["ɵnov"](e,10).id,s["ɵnov"](e,10).active,s["ɵnov"](e,10).addClass,s["ɵnov"](e,10).role,s["ɵnov"](e,10).ariaLabelledby)}))}function af(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.name)}))}function rf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,84,"div",[["class","form-inline"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,15,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Priority:"])),(t()(),s["ɵeld"](7,0,null,0,9,"select",[["class","form-control custom-select"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,9).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"ngModelChange"===e&&(a=!1!==(r.priority=n)&&a),"ngModelChange"===e&&(a=!1!==r.filterLogs()&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](11,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,af)),s["ɵdid"](16,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](17,0,null,null,23,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](18,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](21,0,null,0,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Keyword:"])),(t()(),s["ɵeld"](23,0,null,0,17,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](24,0,null,null,5,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(t()(),s["ɵeld"](25,0,null,null,4,"span",[["class","input-group-text"]],null,null,null,null,null)),(t()(),s["ɵeld"](26,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](28,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](29,1),(t()(),s["ɵeld"](30,0,null,null,7,"input",[["class","form-control"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"keyup"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,32)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,32).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,32)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,32)._compositionEnd(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.search=n)&&a),"keyup"===e&&(a=!1!==r.filterLogs()&&a),a}),null,null)),s["ɵdid"](31,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](32,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](34,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](36,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](37,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵeld"](38,0,null,null,2,"div",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](39,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.clearSearchKey()&&a),a}),null,null)),(t()(),s["ɵeld"](40,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](41,0,null,null,20,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](42,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](45,0,null,0,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Date:"])),(t()(),s["ɵeld"](47,0,null,0,14,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](48,16777216,null,null,10,"input",[["bsDatepicker",""],["class","form-control"],["placeholder","Datepicker"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,50)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,50).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,50)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,50)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,52).onChange(n)&&a),"keyup.esc"===e&&(a=!1!==s["ɵnov"](t,52).hide()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,52).onBlur()&&a),"ngModelChange"===e&&(a=!1!==(r.selectedDate=n)&&a),"ngModelChange"===e&&(a=!1!==r.filterLogs()&&a),a}),null,null)),s["ɵdid"](49,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](50,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](51,737280,null,0,st.c,[st.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a],{bsConfig:[0,"bsConfig"]},null),s["ɵdid"](52,16384,null,0,st.f,[st.c,st.l,s.Renderer2,s.ElementRef,s.ChangeDetectorRef],null,null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[st.f]),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,st.f]),s["ɵdid"](55,671744,null,0,K.u,[[8,null],[6,K.o],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](57,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](58,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵeld"](59,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](60,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.clearDate()&&a),a}),null,null)),(t()(),s["ɵeld"](61,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](62,0,null,null,22,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](63,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](66,0,null,0,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Time range:"])),(t()(),s["ɵeld"](68,0,null,0,16,"div",[["class","d-inline-flex"]],null,null,null,null,null)),(t()(),s["ɵeld"](69,0,null,null,6,"timepicker",[],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],(function(t,e,n){var a=!0,r=t.component;return"ngModelChange"===e&&(a=!1!==(r.startTime=n)&&a),"ngModelChange"===e&&(a=!1!==r.filterLogs()&&a),a}),Yc,Sc)),s["ɵprd"](512,null,Tc,Tc,[]),s["ɵdid"](71,704512,null,0,wc,[vc,s.ChangeDetectorRef,Tc,ec],{minuteStep:[0,"minuteStep"],showSpinners:[1,"showSpinners"],showMeridian:[2,"showMeridian"]},null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[wc]),s["ɵdid"](73,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](75,16384,null,0,K.r,[[4,K.q]],null,null),(t()(),s["ɵeld"](76,0,null,null,1,"span",[["class","middle"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" — "])),(t()(),s["ɵeld"](78,0,null,null,6,"timepicker",[],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],(function(t,e,n){var a=!0,r=t.component;return"ngModelChange"===e&&(a=!1!==(r.endTime=n)&&a),"ngModelChange"===e&&(a=!1!==r.filterLogs()&&a),a}),Yc,Sc)),s["ɵprd"](512,null,Tc,Tc,[]),s["ɵdid"](80,704512,null,0,wc,[vc,s.ChangeDetectorRef,Tc,ec],{minuteStep:[0,"minuteStep"],showSpinners:[1,"showSpinners"],showMeridian:[2,"showMeridian"]},null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[wc]),s["ɵdid"](82,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](84,16384,null,0,K.r,[[4,K.q]],null,null)],(function(t,e){var n=e.component;t(e,2,0),t(e,11,0,n.priority),t(e,16,0,n.prioritys),t(e,18,0);var a=t(e,29,0,n.icons.search);t(e,28,0,a),t(e,34,0,n.search),t(e,42,0),t(e,51,0,n.bsConfig),t(e,55,0,n.selectedDate),t(e,63,0),t(e,71,0,1,!1,!1),t(e,73,0,n.startTime),t(e,80,0,1,!1,!1),t(e,82,0,n.endTime)}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass),t(e,17,0,s["ɵnov"](e,18).hasErrors,s["ɵnov"](e,18).hasSuccess),t(e,30,0,s["ɵnov"](e,36).ngClassUntouched,s["ɵnov"](e,36).ngClassTouched,s["ɵnov"](e,36).ngClassPristine,s["ɵnov"](e,36).ngClassDirty,s["ɵnov"](e,36).ngClassValid,s["ɵnov"](e,36).ngClassInvalid,s["ɵnov"](e,36).ngClassPending,s["ɵnov"](e,37).validClass,s["ɵnov"](e,37).invalidClass),t(e,40,0,s["ɵinlineInterpolate"](1,"icon-prepend ",n.icons.destroy,"")),t(e,41,0,s["ɵnov"](e,42).hasErrors,s["ɵnov"](e,42).hasSuccess),t(e,48,0,s["ɵnov"](e,57).ngClassUntouched,s["ɵnov"](e,57).ngClassTouched,s["ɵnov"](e,57).ngClassPristine,s["ɵnov"](e,57).ngClassDirty,s["ɵnov"](e,57).ngClassValid,s["ɵnov"](e,57).ngClassInvalid,s["ɵnov"](e,57).ngClassPending,s["ɵnov"](e,58).validClass,s["ɵnov"](e,58).invalidClass),t(e,61,0,s["ɵinlineInterpolate"](1,"icon-prepend ",n.icons.destroy,"")),t(e,62,0,s["ɵnov"](e,63).hasErrors,s["ɵnov"](e,63).hasSuccess),t(e,69,0,s["ɵnov"](e,75).ngClassUntouched,s["ɵnov"](e,75).ngClassTouched,s["ɵnov"](e,75).ngClassPristine,s["ɵnov"](e,75).ngClassDirty,s["ɵnov"](e,75).ngClassValid,s["ɵnov"](e,75).ngClassInvalid,s["ɵnov"](e,75).ngClassPending),t(e,78,0,s["ɵnov"](e,84).ngClassUntouched,s["ɵnov"](e,84).ngClassTouched,s["ɵnov"](e,84).ngClassPristine,s["ɵnov"](e,84).ngClassDirty,s["ɵnov"](e,84).ngClassValid,s["ɵnov"](e,84).ngClassInvalid,s["ɵnov"](e,84).ngClassPending)}))}function sf(t){return s["ɵvid"](0,[s["ɵpid"](0,xe.a,[i.DatePipe]),s["ɵpid"](0,Hc.a,[]),(t()(),s["ɵand"](16777216,null,null,1,null,nf)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[["logFiltersTpl",2]],null,0,null,rf))],(function(t,e){t(e,3,0,e.component.contentData)}),null)}function uf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-logs",[],null,null,null,sf,Kc)),s["ɵdid"](1,245760,null,0,Wc,[Uc,i.DatePipe,s.NgZone],null,null)],(function(t,e){t(e,1,0)}),null)}var of=s["ɵccf"]("cd-logs",Wc,uf,{},{},[]);let lf=(()=>{class t{constructor(t,e,n,a,r,i,s,u){this.formBuilder=t,this.mgrModuleService=e,this.notificationService=n,this.router=a,this.telemetryService=r,this.i18n=i,this.textToDownloadService=s,this.telemetryNotificationService=u,this.error=!1,this.licenseAgrmt=!1,this.loading=!1,this.options={},this.requiredFields=["channel_basic","channel_crash","channel_device","channel_ident","interval","proxy","contact","description"],this.report=void 0,this.reportId=void 0,this.sendToUrl="",this.sendToDeviceUrl="",this.step=1}ngOnInit(){this.loading=!0;const t=[this.mgrModuleService.getOptions("telemetry"),this.mgrModuleService.getConfig("telemetry")];Object(rl.a)(t).subscribe(t=>{const e=t[1];this.moduleEnabled=e.enabled,this.sendToUrl=e.url,this.sendToDeviceUrl=e.device_url,this.options=X.pick(t[0],this.requiredFields);const n=X.pick(e,this.requiredFields);this.createConfigForm(),this.configForm.setValue(n),this.loading=!1},t=>{this.error=!0})}createConfigForm(){const t={};X.forEach(Object.values(this.options),e=>{t[e.name]=[e.default_value,this.getValidators(e)]}),this.configForm=this.formBuilder.group(t)}createPreviewForm(){const t={report:JSON.stringify(this.report,null,2),reportId:this.reportId,licenseAgrmt:[this.licenseAgrmt,K.B.requiredTrue]};this.previewForm=this.formBuilder.group(t)}getValidators(t){const e=[];switch(t.type){case"int":e.push(qs.a.number()),e.push(K.B.required),X.isNumber(t.min)&&e.push(K.B.min(t.min)),X.isNumber(t.max)&&e.push(K.B.max(t.max));break;case"str":X.isNumber(t.min)&&e.push(K.B.minLength(t.min)),X.isNumber(t.max)&&e.push(K.B.maxLength(t.max))}return e}getReport(){this.loading=!0,this.telemetryService.getReport().subscribe(t=>{this.report=t,this.reportId=t.report.report_id,this.createPreviewForm(),this.loading=!1,this.step++},t=>{this.error=!0})}updateConfig(){const t={};X.forEach(Object.values(this.options),e=>{const n=this.configForm.get(e.name);n.dirty&&n.valid&&(t[e.name]=n.value)}),this.mgrModuleService.updateConfig("telemetry",t).subscribe(()=>{this.disableModule(this.i18n("Your settings have been applied successfully. Due to privacy/legal reasons the Telemetry module is now disabled until you complete the next step and accept the license."),()=>{this.getReport()})},()=>{this.configForm.setErrors({cdSubmitButton:!0})})}download(t,e){this.textToDownloadService.download(JSON.stringify(t,null,2),e)}disableModule(t=null,e=null){this.telemetryService.enable(!1).subscribe(()=>{this.telemetryNotificationService.setVisibility(!0),t&&this.notificationService.show(le.a.success,t),e?e():this.router.navigate([""])})}next(){this.configForm.pristine?this.getReport():this.updateConfig()}back(){this.step--}onSubmit(){this.telemetryService.enable().subscribe(()=>{this.telemetryNotificationService.setVisibility(!1),this.notificationService.show(le.a.success,this.i18n("The Telemetry module has been configured and activated successfully.")),this.router.navigate([""])})}}return zd.__decorate([E(),zd.__metadata("design:type",Object)],t.prototype,"blockUI",void 0),t})(),df=(()=>{class t{constructor(t){this.http=t,this.url="api/telemetry"}getReport(){return this.http.get(this.url+"/report")}enable(t=!0){const e={enable:t};return t&&(e.license_name="sharing-1-0"),this.http.put(""+this.url,e)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();var cf=n("Iab2");let ff=(()=>{class t{constructor(){}download(t,e){Object(cf.saveAs)(new Blob([t]),e)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})();var hf=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function gf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,gi.b,gi.a)),s["ɵdid"](1,49152,null,0,pi.a,[],null,null),(t()(),s["ɵted"](-1,0,["Loading configuration..."]))],null,null)}function pf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["The configuration could not be loaded."]))],(function(t,e){t(e,1,0,"error")}),null)}function bf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"div",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" The plugin is already "])),(t()(),s["ɵeld"](2,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["enabled"])),(t()(),s["ɵted"](-1,null,[". Click "])),(t()(),s["ɵeld"](5,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Deactivate"])),(t()(),s["ɵted"](-1,null,[" to disable it.  "])),(t()(),s["ɵeld"](8,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.disableModule("The Telemetry module has been disabled successfully.")&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["Deactivate"]))],null,null)}function mf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value is too low! It must be greater or equal to 8."]))],null,null)}function yf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,232,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,231,"form",[["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,225,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,["Step "," of 2: Telemetry report configuration"])),(t()(),s["ɵeld"](10,0,null,null,217,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,12,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The telemetry module sends anonymous data about this Ceph cluster back to the Ceph developers to help understand how Ceph is used and what problems users may be experiencing."])),(t()(),s["ɵeld"](13,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" This data is visualized on "])),(t()(),s["ɵeld"](15,0,null,null,1,"a",[["href","https://telemetry-public.ceph.com/"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["public dashboards"])),(t()(),s["ɵted"](-1,null,[" that allow the community to quickly see summary statistics on how many clusters are reporting, their total capacity and OSD count, and version distribution trends."])),(t()(),s["ɵeld"](18,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" The data being reported does "])),(t()(),s["ɵeld"](21,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["not"])),(t()(),s["ɵted"](23,null,[" contain any sensitive data like pool names, object names, object contents, hostnames, or device serial numbers. It contains counters and statistics on how the cluster has been deployed, the version of Ceph, the distribution of the hosts and other parameters which help the project to gain a better understanding of the way Ceph is used. The data is sent secured to "," and "," (device report)."])),(t()(),s["ɵand"](16777216,null,null,1,null,bf)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](26,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Channels"])),(t()(),s["ɵeld"](28,0,null,null,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,['The telemetry report is broken down into several "channels", each with a different type of information that can be configured below.'])),(t()(),s["ɵeld"](30,0,null,null,32,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](31,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](34,0,null,0,17,"label",[["class","cd-col-form-label"],["for","channel_basic"]],null,null,null,null,null)),(t()(),s["ɵeld"](35,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Basic"])),(t()(),s["ɵeld"](37,0,null,null,14,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](38,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](39,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Includes basic information about the cluster:"])),(t()(),s["ɵeld"](41,0,null,0,10,"ul",[],null,null,null,null,null)),(t()(),s["ɵeld"](42,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Capacity of the cluster"])),(t()(),s["ɵeld"](44,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Number of monitors, managers, OSDs, MDSs, object gateways, or other daemons"])),(t()(),s["ɵeld"](46,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Software version currently being used"])),(t()(),s["ɵeld"](48,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Number and types of RADOS pools and CephFS file systems"])),(t()(),s["ɵeld"](50,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Names of configuration options that have been changed from their default (but not their values)"])),(t()(),s["ɵeld"](52,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](53,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](54,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","channel_basic"],["id","channel_basic"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,56).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,56).onTouched()&&a),a}),null,null)),s["ɵdid"](55,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](56,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](58,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](60,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](61,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](62,0,null,null,0,"label",[["class","custom-control-label"],["for","channel_basic"]],null,null,null,null,null)),(t()(),s["ɵeld"](63,0,null,null,30,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](64,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](67,0,null,0,15,"label",[["class","cd-col-form-label"],["for","channel_crash"]],null,null,null,null,null)),(t()(),s["ɵeld"](68,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Crash"])),(t()(),s["ɵeld"](70,0,null,null,12,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](71,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](72,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Includes information about daemon crashes:"])),(t()(),s["ɵeld"](74,0,null,0,8,"ul",[],null,null,null,null,null)),(t()(),s["ɵeld"](75,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Type of daemon"])),(t()(),s["ɵeld"](77,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Version of the daemon"])),(t()(),s["ɵeld"](79,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Operating system (OS distribution, kernel version)"])),(t()(),s["ɵeld"](81,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Stack trace identifying where in the Ceph code the crash occurred"])),(t()(),s["ɵeld"](83,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](84,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](85,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","channel_crash"],["id","channel_crash"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,87).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,87).onTouched()&&a),a}),null,null)),s["ɵdid"](86,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](87,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](89,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](91,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](92,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](93,0,null,null,0,"label",[["class","custom-control-label"],["for","channel_crash"]],null,null,null,null,null)),(t()(),s["ɵeld"](94,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](95,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](98,0,null,0,4,"label",[["class","cd-col-form-label"],["for","channel_device"]],null,null,null,null,null)),(t()(),s["ɵeld"](99,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Device"])),(t()(),s["ɵeld"](101,0,null,null,1,"cd-helper",[["html","Includes information about device metrics like anonymized SMART metrics."]],null,null,null,qu.b,qu.a)),s["ɵdid"](102,49152,null,0,ju.a,[],{html:[0,"html"]},null),(t()(),s["ɵeld"](103,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](104,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](105,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","channel_device"],["id","channel_device"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,107).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,107).onTouched()&&a),a}),null,null)),s["ɵdid"](106,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](107,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](109,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](111,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](112,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](113,0,null,null,0,"label",[["class","custom-control-label"],["for","channel_device"]],null,null,null,null,null)),(t()(),s["ɵeld"](114,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](115,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](118,0,null,0,11,"label",[["class","cd-col-form-label"],["for","channel_ident"]],null,null,null,null,null)),(t()(),s["ɵeld"](119,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Ident"])),(t()(),s["ɵeld"](121,0,null,null,8,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](122,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](123,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Includes user-provided identifying information about the cluster:"])),(t()(),s["ɵeld"](125,0,null,0,4,"ul",[],null,null,null,null,null)),(t()(),s["ɵeld"](126,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster description"])),(t()(),s["ɵeld"](128,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Contact email address"])),(t()(),s["ɵeld"](130,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](131,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](132,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","channel_ident"],["id","channel_ident"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,134).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,134).onTouched()&&a),a}),null,null)),s["ɵdid"](133,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](134,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](136,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](138,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](139,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](140,0,null,null,0,"label",[["class","custom-control-label"],["for","channel_ident"]],null,null,null,null,null)),(t()(),s["ɵeld"](141,0,null,null,5,"legend",[],null,null,null,null,null)),(t()(),s["ɵeld"](142,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Contact Information"])),(t()(),s["ɵeld"](144,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](145,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["Submitting any contact information is completely optional and disabled by default."])),(t()(),s["ɵeld"](147,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](148,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](151,0,null,0,1,"label",[["class","cd-col-form-label"],["for","contact"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Contact"])),(t()(),s["ɵeld"](153,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](154,0,null,null,7,"input",[["class","form-control"],["formControlName","contact"],["id","contact"],["placeholder","Example User <user@example.com>"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,156)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,156).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,156)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,156)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](155,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](156,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](158,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](160,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](161,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](162,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](163,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,11,{FormControlNames:1}),s["ɵqud"](603979776,12,{messagesBlock:0}),(t()(),s["ɵeld"](166,0,null,0,1,"label",[["class","cd-col-form-label"],["for","description"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Description"])),(t()(),s["ɵeld"](168,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](169,0,null,null,7,"input",[["class","form-control"],["formControlName","description"],["id","description"],["placeholder","My first Ceph cluster"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,171)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,171).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,171)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,171)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](170,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](171,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](173,671744,[[11,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](175,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](176,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](177,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Advanced Settings"])),(t()(),s["ɵeld"](179,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](180,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,13,{FormControlNames:1}),s["ɵqud"](603979776,14,{messagesBlock:0}),(t()(),s["ɵeld"](183,0,null,0,5,"label",[["class","cd-col-form-label"],["for","interval"]],null,null,null,null,null)),(t()(),s["ɵeld"](184,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Interval"])),(t()(),s["ɵeld"](186,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](187,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["The module compiles and sends a new report every 24 hours by default. You can adjust this interval by setting a different number of hours."])),(t()(),s["ɵeld"](189,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](190,0,null,null,8,"input",[["class","form-control"],["formControlName","interval"],["id","interval"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,192)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,192).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,192)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,192)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,193).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,193).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,193).onTouched()&&a),a}),null,null)),s["ɵdid"](191,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](192,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](193,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](195,671744,[[13,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](197,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](198,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mf)),s["ɵdid"](200,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](201,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](202,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,15,{FormControlNames:1}),s["ɵqud"](603979776,16,{messagesBlock:0}),(t()(),s["ɵeld"](205,0,null,0,8,"label",[["class","cd-col-form-label"],["for","proxy"]],null,null,null,null,null)),(t()(),s["ɵeld"](206,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Proxy"])),(t()(),s["ɵeld"](208,0,null,null,5,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](209,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](210,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["If the cluster cannot directly connect to the configured telemetry endpoint (default telemetry.ceph.com), you can configure a HTTP/HTTPS proxy server by e.g. adding https://10.0.0.1:8080"])),(t()(),s["ɵeld"](212,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["You can also include a user:pass if needed e.g. https://ceph:telemetry@10.0.0.1:8080"])),(t()(),s["ɵeld"](214,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](215,0,null,null,7,"input",[["class","form-control"],["formControlName","proxy"],["id","proxy"],["placeholder","https://10.0.0.1:8080"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,217)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,217).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,217)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,217)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](216,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](217,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](219,671744,[[15,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](221,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](222,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](223,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](224,0,null,null,3,"p",[],null,null,null,null,null)),(t()(),s["ɵeld"](225,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Note:"])),(t()(),s["ɵted"](-1,null,[" By clicking 'Next' you will first see a preview of the report content before you can activate the automatic submission of your data."])),(t()(),s["ɵeld"](228,0,null,null,4,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](229,0,null,null,3,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](230,0,null,null,2,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.next()&&a),a}),null,null)),(t()(),s["ɵeld"](231,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Next"]))],(function(t,e){var n=e.component;t(e,3,0,n.configForm),t(e,6,0,n.configForm),t(e,25,0,n.moduleEnabled),t(e,31,0),t(e,58,0,"channel_basic"),t(e,61,0,"channel_basic"),t(e,64,0),t(e,89,0,"channel_crash"),t(e,92,0,"channel_crash"),t(e,95,0),t(e,102,0,"Includes information about device metrics like anonymized SMART metrics."),t(e,109,0,"channel_device"),t(e,112,0,"channel_device"),t(e,115,0),t(e,136,0,"channel_ident"),t(e,139,0,"channel_ident"),t(e,148,0),t(e,158,0,"contact"),t(e,161,0,"contact"),t(e,163,0),t(e,173,0,"description"),t(e,176,0,"description"),t(e,180,0),t(e,195,0,"interval"),t(e,198,0,"interval"),t(e,200,0,n.configForm.showError("interval",s["ɵnov"](e,3),"min")),t(e,202,0),t(e,219,0,"proxy"),t(e,222,0,"proxy")}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending),t(e,9,0,n.step),t(e,23,0,n.sendToUrl,n.sendToDeviceUrl),t(e,30,0,s["ɵnov"](e,31).hasErrors,s["ɵnov"](e,31).hasSuccess),t(e,54,0,s["ɵnov"](e,60).ngClassUntouched,s["ɵnov"](e,60).ngClassTouched,s["ɵnov"](e,60).ngClassPristine,s["ɵnov"](e,60).ngClassDirty,s["ɵnov"](e,60).ngClassValid,s["ɵnov"](e,60).ngClassInvalid,s["ɵnov"](e,60).ngClassPending,s["ɵnov"](e,61).validClass,s["ɵnov"](e,61).invalidClass),t(e,63,0,s["ɵnov"](e,64).hasErrors,s["ɵnov"](e,64).hasSuccess),t(e,85,0,s["ɵnov"](e,91).ngClassUntouched,s["ɵnov"](e,91).ngClassTouched,s["ɵnov"](e,91).ngClassPristine,s["ɵnov"](e,91).ngClassDirty,s["ɵnov"](e,91).ngClassValid,s["ɵnov"](e,91).ngClassInvalid,s["ɵnov"](e,91).ngClassPending,s["ɵnov"](e,92).validClass,s["ɵnov"](e,92).invalidClass),t(e,94,0,s["ɵnov"](e,95).hasErrors,s["ɵnov"](e,95).hasSuccess),t(e,105,0,s["ɵnov"](e,111).ngClassUntouched,s["ɵnov"](e,111).ngClassTouched,s["ɵnov"](e,111).ngClassPristine,s["ɵnov"](e,111).ngClassDirty,s["ɵnov"](e,111).ngClassValid,s["ɵnov"](e,111).ngClassInvalid,s["ɵnov"](e,111).ngClassPending,s["ɵnov"](e,112).validClass,s["ɵnov"](e,112).invalidClass),t(e,114,0,s["ɵnov"](e,115).hasErrors,s["ɵnov"](e,115).hasSuccess),t(e,132,0,s["ɵnov"](e,138).ngClassUntouched,s["ɵnov"](e,138).ngClassTouched,s["ɵnov"](e,138).ngClassPristine,s["ɵnov"](e,138).ngClassDirty,s["ɵnov"](e,138).ngClassValid,s["ɵnov"](e,138).ngClassInvalid,s["ɵnov"](e,138).ngClassPending,s["ɵnov"](e,139).validClass,s["ɵnov"](e,139).invalidClass),t(e,147,0,s["ɵnov"](e,148).hasErrors,s["ɵnov"](e,148).hasSuccess),t(e,154,0,s["ɵnov"](e,160).ngClassUntouched,s["ɵnov"](e,160).ngClassTouched,s["ɵnov"](e,160).ngClassPristine,s["ɵnov"](e,160).ngClassDirty,s["ɵnov"](e,160).ngClassValid,s["ɵnov"](e,160).ngClassInvalid,s["ɵnov"](e,160).ngClassPending,s["ɵnov"](e,161).validClass,s["ɵnov"](e,161).invalidClass),t(e,162,0,s["ɵnov"](e,163).hasErrors,s["ɵnov"](e,163).hasSuccess),t(e,169,0,s["ɵnov"](e,175).ngClassUntouched,s["ɵnov"](e,175).ngClassTouched,s["ɵnov"](e,175).ngClassPristine,s["ɵnov"](e,175).ngClassDirty,s["ɵnov"](e,175).ngClassValid,s["ɵnov"](e,175).ngClassInvalid,s["ɵnov"](e,175).ngClassPending,s["ɵnov"](e,176).validClass,s["ɵnov"](e,176).invalidClass),t(e,179,0,s["ɵnov"](e,180).hasErrors,s["ɵnov"](e,180).hasSuccess),t(e,190,0,s["ɵnov"](e,197).ngClassUntouched,s["ɵnov"](e,197).ngClassTouched,s["ɵnov"](e,197).ngClassPristine,s["ɵnov"](e,197).ngClassDirty,s["ɵnov"](e,197).ngClassValid,s["ɵnov"](e,197).ngClassInvalid,s["ɵnov"](e,197).ngClassPending,s["ɵnov"](e,198).validClass,s["ɵnov"](e,198).invalidClass),t(e,201,0,s["ɵnov"](e,202).hasErrors,s["ɵnov"](e,202).hasSuccess),t(e,215,0,s["ɵnov"](e,221).ngClassUntouched,s["ɵnov"](e,221).ngClassTouched,s["ɵnov"](e,221).ngClassPristine,s["ɵnov"](e,221).ngClassDirty,s["ɵnov"](e,221).ngClassValid,s["ɵnov"](e,221).ngClassInvalid,s["ɵnov"](e,221).ngClassPending,s["ɵnov"](e,222).validClass,s["ɵnov"](e,222).invalidClass)}))}function vf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,79,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,78,"form",[["name","previewForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,72,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,["Step "," of 2: Telemetry report preview"])),(t()(),s["ɵeld"](10,0,null,null,61,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](12,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,17,{FormControlNames:1}),s["ɵqud"](603979776,18,{messagesBlock:0}),(t()(),s["ɵeld"](15,0,null,0,3,"label",[["class","cd-col-form-label"],["for","reportId"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Report ID "])),(t()(),s["ɵeld"](17,0,null,null,1,"cd-helper",[["html","A randomized UUID to identify a particular cluster over the course of several telemetry reports."]],null,null,null,qu.b,qu.a)),s["ɵdid"](18,49152,null,0,ju.a,[],{html:[0,"html"]},null),(t()(),s["ɵeld"](19,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,7,"input",[["class","form-control"],["formControlName","reportId"],["id","reportId"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,22)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,22).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,22)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,22)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](24,671744,[[17,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](26,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](28,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](29,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,19,{FormControlNames:1}),s["ɵqud"](603979776,20,{messagesBlock:0}),(t()(),s["ɵeld"](32,0,null,0,3,"label",[["class","cd-col-form-label"],["for","report"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Report preview "])),(t()(),s["ɵeld"](34,0,null,null,1,"cd-helper",[["html","The actual telemetry data that will be submitted."]],null,null,null,qu.b,qu.a)),s["ɵdid"](35,49152,null,0,ju.a,[],{html:[0,"html"]},null),(t()(),s["ɵeld"](36,0,null,0,7,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](37,0,null,null,6,"textarea",[["class","form-control"],["formControlName","report"],["id","report"],["readonly",""],["rows","15"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,38)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,38).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,38)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,38)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](38,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](40,671744,[[19,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](42,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](43,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](44,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](45,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,21,{FormControlNames:1}),s["ɵqud"](603979776,22,{messagesBlock:0}),(t()(),s["ɵeld"](48,0,null,0,4,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](49,0,null,null,1,"button",[["class","btn btn-light mr-2"],["title","Download"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.download(r.report,"telemetry_report.json")&&a),a}),null,null)),(t()(),s["ɵeld"](50,0,null,null,0,"i",[["class","fa fa-download"]],null,null,null,null,null)),(t()(),s["ɵeld"](51,0,null,null,1,"button",[["cdCopy2ClipboardButton","report"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,52).onClick()&&a),a}),null,null)),s["ɵdid"](52,81920,null,0,Vu.a,[s.ElementRef,s.Renderer2,d.j,fe.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(t()(),s["ɵeld"](53,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](54,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,23,{FormControlNames:1}),s["ɵqud"](603979776,24,{messagesBlock:0}),(t()(),s["ɵeld"](57,0,null,0,14,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](58,0,null,null,13,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](59,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","licenseAgrmt"],["id","licenseAgrmt"],["name","licenseAgrmt"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,61).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,61).onTouched()&&a),a}),null,null)),s["ɵdid"](60,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](61,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](63,671744,[[23,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](65,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](66,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](67,0,null,null,4,"label",[["class","custom-control-label"],["for","licenseAgrmt"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["I agree to my telemetry data being submitted under the Community Data License Agreement - Sharing - Version 1.0 ("])),(t()(),s["ɵeld"](69,0,null,null,1,"a",[["href","https://cdla.io/sharing-1-0/"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["https://cdla.io/sharing-1-0/"])),(t()(),s["ɵted"](-1,null,[")"])),(t()(),s["ɵeld"](72,0,null,null,7,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](73,0,null,null,6,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](74,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),ks.b,ks.a)),s["ɵdid"](75,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵeld"](76,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Save"])),(t()(),s["ɵeld"](78,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.back()&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["Back"]))],(function(t,e){var n=e.component;t(e,3,0,n.previewForm),t(e,6,0,n.previewForm),t(e,12,0),t(e,18,0,"A randomized UUID to identify a particular cluster over the course of several telemetry reports."),t(e,24,0,"reportId"),t(e,27,0,"reportId"),t(e,29,0),t(e,35,0,"The actual telemetry data that will be submitted."),t(e,40,0,"report"),t(e,43,0,"report"),t(e,45,0),t(e,52,0,"report"),t(e,54,0),t(e,63,0,"licenseAgrmt"),t(e,66,0,"licenseAgrmt"),t(e,75,0,n.previewForm)}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending),t(e,9,0,n.step),t(e,11,0,s["ɵnov"](e,12).hasErrors,s["ɵnov"](e,12).hasSuccess),t(e,20,0,s["ɵnov"](e,26).ngClassUntouched,s["ɵnov"](e,26).ngClassTouched,s["ɵnov"](e,26).ngClassPristine,s["ɵnov"](e,26).ngClassDirty,s["ɵnov"](e,26).ngClassValid,s["ɵnov"](e,26).ngClassInvalid,s["ɵnov"](e,26).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass),t(e,28,0,s["ɵnov"](e,29).hasErrors,s["ɵnov"](e,29).hasSuccess),t(e,37,0,s["ɵnov"](e,42).ngClassUntouched,s["ɵnov"](e,42).ngClassTouched,s["ɵnov"](e,42).ngClassPristine,s["ɵnov"](e,42).ngClassDirty,s["ɵnov"](e,42).ngClassValid,s["ɵnov"](e,42).ngClassInvalid,s["ɵnov"](e,42).ngClassPending,s["ɵnov"](e,43).validClass,s["ɵnov"](e,43).invalidClass),t(e,44,0,s["ɵnov"](e,45).hasErrors,s["ɵnov"](e,45).hasSuccess),t(e,53,0,s["ɵnov"](e,54).hasErrors,s["ɵnov"](e,54).hasSuccess),t(e,59,0,s["ɵnov"](e,65).ngClassUntouched,s["ɵnov"](e,65).ngClassTouched,s["ɵnov"](e,65).ngClassPristine,s["ɵnov"](e,65).ngClassDirty,s["ɵnov"](e,65).ngClassValid,s["ɵnov"](e,65).ngClassInvalid,s["ɵnov"](e,65).ngClassPending,s["ɵnov"](e,66).validClass,s["ɵnov"](e,66).invalidClass)}))}function xf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,null,null,null,null,null,null,null)),s["ɵdid"](2,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,yf)),s["ɵdid"](4,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,vf)),s["ɵdid"](6,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null)],(function(t,e){t(e,2,0,e.component.step),t(e,4,0,1),t(e,6,0,2)}),null)}function _f(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,gf)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pf)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xf)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.loading&&!n.error),t(e,3,0,n.loading&&n.error),t(e,5,0,!n.loading&&!n.error)}),null)}function Tf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-telemetry",[],null,null,null,_f,hf)),s["ɵdid"](1,114688,null,0,lf,[zu.a,oe,bt.a,Et.m,df,fe.a,ff,de],null,null)],(function(t,e){t(e,1,0)}),null)}var wf=s["ɵccf"]("cd-telemetry",lf,Tf,{},{},[]);const Of=new os.a("silence");class Sf extends ls.a{constructor(t,e,n,a,r){super(),this.authStorageService=t,this.prometheusAlertService=e,this.urlBuilder=n,this.i18n=a,this.cdDatePipe=r,this.selection=new Hr.a,this.icons=pt.a,this.customCss={"badge badge-danger":"active","badge badge-warning":"unprocessed","badge badge-info":"suppressed"},this.permission=this.authStorageService.getPermissions().prometheus,this.tableActions=[{permission:"create",canBePrimary:t=>t.hasSingleSelection,disable:t=>!t.hasSingleSelection||t.first().cdExecuting,icon:pt.a.add,routerLink:()=>"/monitoring"+this.urlBuilder.getCreateFrom(this.selection.first().fingerprint),name:this.i18n("Create Silence")}]}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"labels.alertname",flexGrow:2},{name:this.i18n("Job"),prop:"labels.job",flexGrow:2},{name:this.i18n("Severity"),prop:"labels.severity"},{name:this.i18n("State"),prop:"status.state",cellTransformation:Yr.a.classAdding},{name:this.i18n("Started"),prop:"startsAt",pipe:this.cdDatePipe},{name:this.i18n("URL"),prop:"generatorURL",sortable:!1,cellTemplate:this.externalLinkTpl}]}updateSelection(t){this.selection=t}}var If=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Nf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[["cdTableDetail",""]],null,null,null,fi.b,fi.a)),s["ɵdid"](1,638976,null,0,hi.a,[xe.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"],appendParentKey:[3,"appendParentKey"],hideEmpty:[4,"hideEmpty"],customCss:[5,"customCss"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.expandedRow,!1,!0,!1,!0,n.customCss)}),null)}function Cf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"a",[["target","_blank"]],[[8,"href",4]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](3,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](4,1),(t()(),s["ɵted"](-1,null,[" Source"]))],(function(t,e){var n=t(e,4,0,e.component.icons.lineChart);t(e,3,0,n)}),(function(t,e){t(e,0,0,e.context.value)}))}function Rf(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{externalLinkTpl:0}),(t()(),s["ɵeld"](1,0,null,null,5,"cd-table",[["identifier","fingerprint"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](2,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],identifier:[3,"identifier"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"],customCss:[6,"customCss"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](3,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](4,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵand"](16777216,null,3,1,null,Nf)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[1,2],["externalLinkTpl",2]],null,0,null,Cf))],(function(t,e){var n=e.component;t(e,2,0,n.prometheusAlertService.alerts,n.columns,!0,"fingerprint",!0,"single",n.customCss),t(e,4,0,n.permission,n.selection,n.tableActions),t(e,6,0,n.expandedRow)}),null)}class Af extends ls.a{constructor(t){super(),this.i18n=t,this.hideKeys=["alerts","type"]}ngOnInit(){this.columns=[{prop:"name",name:this.i18n("Name")},{prop:"labels.severity",name:this.i18n("Severity")},{prop:"group",name:this.i18n("Group")},{prop:"duration",name:this.i18n("Duration"),pipe:new ve},{prop:"query",name:this.i18n("Query"),isHidden:!0},{prop:"annotations.description",name:this.i18n("Description")}]}}var kf=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ef(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[["cdTableDetail",""]],null,null,null,fi.b,fi.a)),s["ɵdid"](1,638976,null,0,hi.a,[xe.a],{data:[0,"data"],renderObjects:[1,"renderObjects"],hideKeys:[2,"hideKeys"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.expandedRow,!0,n.hideKeys)}),null)}function Lf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-table",[],null,[[null,"updateSelection"]],(function(t,e,n){var a=!0;return"updateSelection"===e&&(a=!1!==t.component.setExpandedRow(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](1,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],selectionType:[3,"selectionType"]},{updateSelection:"updateSelection"}),(t()(),s["ɵand"](16777216,null,3,1,null,Ef)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.data,n.columns,!0,"single"),t(e,3,0,n.expandedRow)}),null)}var Df=n("w9WL");const Pf=new os.a("monitoring/silence");class Mf extends ls.a{constructor(t,e,n,a,r,i,s,u,o){super(),this.authStorageService=t,this.i18n=e,this.cdDatePipe=n,this.prometheusService=a,this.modalService=r,this.notificationService=i,this.urlBuilder=s,this.actionLabels=u,this.succeededLabels=o,this.silences=[],this.selection=new Hr.a,this.customCss={"badge badge-danger":"active","badge badge-warning":"pending","badge badge-default":"expired"},this.sorts=[{prop:"endsAt",dir:Df.A.desc}],this.permission=this.authStorageService.getPermissions().prometheus;const l=t=>t.first()&&t.first().status&&"expired"===t.first().status.state;this.tableActions=[{permission:"create",icon:pt.a.add,routerLink:()=>this.urlBuilder.getCreate(),preserveFragment:!0,canBePrimary:t=>!t.hasSingleSelection,name:this.actionLabels.CREATE},{permission:"create",canBePrimary:t=>t.hasSingleSelection&&l(t),disable:t=>!t.hasSingleSelection||t.first().cdExecuting||t.first().cdExecuting&&l(t)||!l(t),icon:pt.a.copy,routerLink:()=>this.urlBuilder.getRecreate(this.selection.first().id),preserveFragment:!0,name:this.actionLabels.RECREATE},{permission:"update",icon:pt.a.edit,canBePrimary:t=>t.hasSingleSelection&&!l(t),disable:t=>!t.hasSingleSelection||t.first().cdExecuting||t.first().cdExecuting&&!l(t)||l(t),routerLink:()=>this.urlBuilder.getEdit(this.selection.first().id),preserveFragment:!0,name:this.actionLabels.EDIT},{permission:"delete",icon:pt.a.trash,canBePrimary:t=>t.hasSingleSelection&&!l(t),disable:t=>!t.hasSingleSelection||t.first().cdExecuting||l(t),click:()=>this.expireSilence(),name:this.actionLabels.EXPIRE}],this.columns=[{name:this.i18n("ID"),prop:"id",flexGrow:3},{name:this.i18n("Created by"),prop:"createdBy",flexGrow:2},{name:this.i18n("Started"),prop:"startsAt",pipe:this.cdDatePipe},{name:this.i18n("Updated"),prop:"updatedAt",pipe:this.cdDatePipe},{name:this.i18n("Ends"),prop:"endsAt",pipe:this.cdDatePipe},{name:this.i18n("Status"),prop:"status.state",cellTransformation:Yr.a.classAdding}]}refresh(){this.prometheusService.ifAlertmanagerConfigured(()=>{this.prometheusService.getSilences().subscribe(t=>{this.silences=t},()=>{this.prometheusService.disableAlertmanagerConfig()})})}updateSelection(t){this.selection=t}expireSilence(){const t=this.selection.first().id,e=this.i18n("Silence");this.modalRef=this.modalService.show(ds.a,{initialState:{itemDescription:e,itemNames:[t],actionDescription:this.actionLabels.EXPIRE,submitActionObservable:()=>new In.a(n=>{this.prometheusService.expireSilence(t).subscribe(()=>{this.notificationService.show(le.a.success,`${this.succeededLabels.EXPIRED} ${e} ${t}`,void 0,void 0,"Prometheus")},t=>{t.application="Prometheus",n.error(t)},()=>{n.complete(),this.refresh()})})}})}}var qf=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function jf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[["cdTableDetail",""]],null,null,null,fi.b,fi.a)),s["ɵdid"](1,638976,null,0,hi.a,[xe.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"],appendParentKey:[3,"appendParentKey"],hideEmpty:[4,"hideEmpty"],customCss:[5,"customCss"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.expandedRow,!1,!0,!1,!0,n.customCss)}),null)}function Ff(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-table",[["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"fetchData"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"fetchData"===e&&(a=!1!==r.refresh()&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](1,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],sorts:[2,"sorts"],hasDetails:[3,"hasDetails"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"],customCss:[6,"customCss"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](2,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](3,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵand"](16777216,null,3,1,null,jf)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.silences,n.columns,n.sorts,!0,!0,"single",n.customCss),t(e,3,0,n.permission,n.selection,n.tableActions),t(e,5,0,n.expandedRow)}),null)}class Vf{constructor(t,e,n,a){this.prometheusAlertService=t,this.prometheusService=e,this.route=n,this.router=a,this.isPrometheusConfigured=!1,this.isAlertmanagerConfigured=!1}ngOnInit(){if(this.prometheusService.ifAlertmanagerConfigured(()=>{this.isAlertmanagerConfigured=!0}),this.prometheusService.ifPrometheusConfigured(()=>{this.isPrometheusConfigured=!0}),this.route.snapshot.fragment){const t=this.tabs.tabs.find(t=>t.elementRef.nativeElement.id===this.route.snapshot.fragment);t&&(t.active=!0),this.router.navigate([],{fragment:this.route.snapshot.fragment})}}setFragment(t){this.router.navigate([],{fragment:t.id})}}var Gf=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Bf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-active-alert-list",[],null,null,null,Rf,If)),s["ɵprd"](256,null,os.a,Of,[]),s["ɵdid"](2,114688,null,0,Sf,[J.a,Ae,os.a,fe.a,xe.a],null,null)],(function(t,e){t(e,2,0)}),null)}function zf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["To see all active Prometheus alerts, please provide the URL to the API of Prometheus' Alertmanager as described in the "])),(t()(),s["ɵeld"](3,0,null,0,1,"cd-doc",[["section","prometheus"]],null,null,null,qr.b,qr.a)),s["ɵdid"](4,114688,null,0,jr.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,0,["."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"prometheus")}),null)}function Yf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-rules-list",[],null,null,null,Lf,kf)),s["ɵdid"](1,114688,null,0,Af,[fe.a],{data:[0,"data"]},null)],(function(t,e){t(e,1,0,e.component.prometheusAlertService.rules)}),null)}function Hf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["To see all configured Prometheus alerts, please provide the URL to the API of Prometheus as described in the "])),(t()(),s["ɵeld"](3,0,null,0,1,"cd-doc",[["section","prometheus"]],null,null,null,qr.b,qr.a)),s["ɵdid"](4,114688,null,0,jr.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,0,["."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"prometheus")}),null)}function Uf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-silences-list",[],null,null,null,Ff,qf)),s["ɵprd"](256,null,os.a,Pf,[]),s["ɵdid"](2,49152,null,0,Mf,[J.a,fe.a,xe.a,Ce,Ct.b,bt.a,os.a,St.b,St.d],null,null)],null,null)}function Wf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["To enable Silences, please provide the URL to the API of the Prometheus' Alertmanager as described in the "])),(t()(),s["ɵeld"](3,0,null,0,1,"cd-doc",[["section","prometheus"]],null,null,null,qr.b,qr.a)),s["ɵdid"](4,114688,null,0,jr.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,0,["."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"prometheus")}),null)}function Kf(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{tabs:0}),(t()(),s["ɵeld"](1,0,null,null,19,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](2,180224,[[1,4],["tabs",4]],0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](3,0,null,0,5,"tab",[["heading","Active Alerts"],["id","active-alerts"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.setFragment(n)&&a),a}),null,null)),s["ɵdid"](4,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"],id:[1,"id"]},{selectTab:"selectTab"}),(t()(),s["ɵand"](16777216,null,null,1,null,Bf)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zf)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](9,0,null,0,5,"tab",[["heading","All Alerts"],["id","all-alerts"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.setFragment(n)&&a),a}),null,null)),s["ɵdid"](10,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"],id:[1,"id"]},{selectTab:"selectTab"}),(t()(),s["ɵand"](16777216,null,null,1,null,Yf)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hf)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](15,0,null,0,5,"tab",[["heading","Silences"],["id","silences"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.setFragment(n)&&a),a}),null,null)),s["ɵdid"](16,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"],id:[1,"id"]},{selectTab:"selectTab"}),(t()(),s["ɵand"](16777216,null,null,1,null,Uf)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Wf)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,4,0,"Active Alerts","active-alerts"),t(e,6,0,n.isAlertmanagerConfigured),t(e,8,0,!n.isAlertmanagerConfigured),t(e,10,0,"All Alerts","all-alerts"),t(e,12,0,n.isPrometheusConfigured),t(e,14,0,!n.isPrometheusConfigured),t(e,16,0,"Silences","silences"),t(e,18,0,n.isAlertmanagerConfigured),t(e,20,0,!n.isAlertmanagerConfigured)}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).clazz),t(e,3,0,s["ɵnov"](e,4).id,s["ɵnov"](e,4).active,s["ɵnov"](e,4).addClass,s["ɵnov"](e,4).role,s["ɵnov"](e,4).ariaLabelledby),t(e,9,0,s["ɵnov"](e,10).id,s["ɵnov"](e,10).active,s["ɵnov"](e,10).addClass,s["ɵnov"](e,10).role,s["ɵnov"](e,10).ariaLabelledby),t(e,15,0,s["ɵnov"](e,16).id,s["ɵnov"](e,16).active,s["ɵnov"](e,16).addClass,s["ɵnov"](e,16).role,s["ɵnov"](e,16).ariaLabelledby)}))}function $f(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-monitoring-list",[],null,null,null,Kf,Gf)),s["ɵdid"](1,114688,null,0,Vf,[Ae,Ce,Et.a,Et.m],null,null)],(function(t,e){t(e,1,0)}),null)}var Zf=s["ɵccf"]("cd-monitoring-list",Vf,$f,{},{},[]);let Jf=(()=>{class t{constructor(t){this.i18n=t,this.valueAttributePath={alertname:"name",instance:"alerts.0.labels.instance",job:"alerts.0.labels.job",severity:"labels.severity"}}singleMatch(t,e){return this.multiMatch([t],e)}multiMatch(t,e){if(!t.some(t=>t.isRegex))return t.forEach(t=>{e=this.getMatchedRules(t,e)}),this.describeMatch(e)}getMatchedRules(t,e){const n=this.getAttributePath(t.name);return e.filter(e=>X.get(e,n)===t.value)}describeMatch(t){let e=0;return t.forEach(t=>e+=t.alerts.length),{status:this.getMatchText(t.length,e),cssClass:e?"has-success":"has-warning"}}getAttributePath(t){return this.valueAttributePath[t]}getMatchText(t,e){const n={noRule:this.i18n("Your matcher seems to match no currently defined rule or active alert."),noAlerts:this.i18n("no active alerts"),alert:this.i18n("1 active alert"),alerts:this.i18n("{{n}} active alerts",{n:e}),rule:this.i18n("Matches 1 rule"),rules:this.i18n("Matches {{n}} rules",{n:t})};return t?this.i18n("{{rules}} with {{alerts}}.",{rules:t>1?n.rules:n.rule,alerts:e?e>1?n.alerts:n.alert:n.noAlerts}):n.noRule}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](fe.a))},token:t,providedIn:"root"}),t})(),Qf=(()=>{class t{constructor(){}calculateDuration(t,e){const n=+t,a=+e,r=this.getDuration(Math.abs(n-a));return n>a?"-"+r:r}getDuration(t){const e=new Date(t),n=e.getUTCHours(),a=e.getUTCMinutes(),r=(t,e)=>t?t+e:t;return[r(Math.floor(t/864e5),"d"),r(n,"h"),r(a,"m")].filter(t=>t).join(" ")}calculateDate(t,e,n){const a=+t;if(X.isNaN(a))return;const r=this.getDurationMs(e)*(n?-1:1);return new Date(a+r)}getDurationMs(t){return 6e4*(60*(24*this.getNumbersFromString(t,"d")+this.getNumbersFromString(t,"h"))+this.getNumbersFromString(t,"m"))}getNumbersFromString(t,e){const n=t.match(new RegExp("[0-9 ]+"+e,"i"));return n?parseInt(n[0],10):0}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})();class Xf{constructor(t,e,n){this.formBuilder=t,this.silenceMatcher=e,this.bsModalRef=n,this.submitAction=new s.EventEmitter,this.editMode=!1,this.nameAttributes=["alertname","instance","job","severity"],this.possibleValues=[],this.matcherMatch=void 0,this.createForm(),this.subscribeToChanges()}createForm(){this.form=this.formBuilder.group({name:[null,[K.B.required]],value:[{value:null,disabled:!0},[K.B.required]],isRegex:new K.i(!1)})}subscribeToChanges(){this.form.get("name").valueChanges.subscribe(t=>{null!==t?(this.setPossibleValues(t),this.form.get("value").enable()):this.form.get("value").disable()}),this.form.get("value").valueChanges.subscribe(t=>{const e=this.form.value;e.value=t,this.matcherMatch=this.silenceMatcher.singleMatch(e,this.rules)})}setPossibleValues(t){this.possibleValues=X.sortedUniq(this.rules.map(e=>X.get(e,this.silenceMatcher.getAttributePath(t))).filter(t=>t))}preFillControls(t){this.form.setValue(t)}onSubmit(){this.submitAction.emit(this.form.value),this.bsModalRef.hide()}}class th{constructor(t,e,n,a,r,i,s,u,o,l,d,c){this.i18n=t,this.router=e,this.authStorageService=n,this.formBuilder=a,this.prometheusService=r,this.notificationService=i,this.route=s,this.timeDiff=u,this.bsModalService=o,this.silenceMatcher=l,this.actionLabels=d,this.succeededLabels=c,this.icons=pt.a,this.bsConfig={dateInputFormat:"YYYY-MM-DDT HH:mm"},this.recreate=!1,this.edit=!1,this.resource=this.i18n("silence"),this.matchers=[],this.matcherMatch=void 0,this.matcherConfig=[{tooltip:this.i18n("Attribute name"),icon:this.icons.paragraph,attribute:"name"},{tooltip:this.i18n("Value"),icon:this.icons.terminal,attribute:"value"},{tooltip:this.i18n("Regular expression"),icon:this.icons.magic,attribute:"isRegex"}],this.init()}init(){this.chooseMode(),this.authenticate(),this.createForm(),this.setupDates(),this.getData()}chooseMode(){this.edit=this.router.url.startsWith("/monitoring/silence/edit"),this.recreate=this.router.url.startsWith("/monitoring/silence/recreate"),this.action=this.edit?this.actionLabels.EDIT:this.recreate?this.actionLabels.RECREATE:this.actionLabels.CREATE}authenticate(){this.permission=this.authStorageService.getPermissions().prometheus,this.permission.read&&(this.edit?this.permission.update:this.permission.create)||this.router.navigate(["/404"])}createForm(){this.form=this.formBuilder.group({startsAt:[null,[K.B.required]],duration:["2h",[K.B.min(1)]],endsAt:[null,[K.B.required]],createdBy:[this.authStorageService.getUsername(),[K.B.required]],comment:[null,[K.B.required]]},{validators:qs.a.custom("matcherRequired",()=>0===this.matchers.length)})}setupDates(){const t=new Date;t.setSeconds(0,0),this.form.silentSet("startsAt",t),this.updateDate(),this.subscribeDateChanges()}updateDate(t){const e=this.timeDiff.calculateDate(this.form.getValue(t?"endsAt":"startsAt"),this.form.getValue("duration"),t);e&&this.form.silentSet(t?"startsAt":"endsAt",e)}subscribeDateChanges(){this.form.get("startsAt").valueChanges.subscribe(()=>{this.onDateChange()}),this.form.get("duration").valueChanges.subscribe(()=>{this.updateDate()}),this.form.get("endsAt").valueChanges.subscribe(()=>{this.onDateChange(!0)})}onDateChange(t){this.form.getValue("startsAt")<this.form.getValue("endsAt")?this.updateDuration():this.updateDate(t)}updateDuration(){this.form.silentSet("duration",this.timeDiff.calculateDuration(this.form.getValue("startsAt"),this.form.getValue("endsAt")))}getData(){this.getRules(),this.getModeSpecificData()}getRules(){this.prometheusService.ifPrometheusConfigured(()=>this.prometheusService.getRules().subscribe(t=>{this.rules=t.groups.reduce((t,e)=>X.concat(t,e.rules),[])},()=>{this.prometheusService.disablePrometheusConfig(),this.rules=[]}),()=>{this.rules=[],this.notificationService.show(le.a.info,this.i18n("Please add your Prometheus host to the dashboard configuration and refresh the page"),void 0,void 0,"Prometheus")})}getModeSpecificData(){this.route.params.subscribe(t=>{t.id&&(this.edit||this.recreate?this.prometheusService.getSilences(t).subscribe(t=>{this.fillFormWithSilence(t[0])}):this.prometheusService.getAlerts(t).subscribe(t=>{this.fillFormByAlert(t[0])}))})}fillFormWithSilence(t){this.id=t.id,this.edit&&(["startsAt","endsAt"].forEach(e=>this.form.silentSet(e,new Date(t[e]))),this.updateDuration()),["createdBy","comment"].forEach(e=>this.form.silentSet(e,t[e])),this.matchers=t.matchers,this.validateMatchers()}validateMatchers(){this.rules?(this.matcherMatch=this.silenceMatcher.multiMatch(this.matchers,this.rules),this.form.markAsDirty(),this.form.updateValueAndValidity()):window.setTimeout(()=>this.validateMatchers(),100)}fillFormByAlert(t){const e=t.labels;Object.keys(e).forEach(t=>this.setMatcher({name:t,value:e[t],isRegex:!1}))}setMatcher(t,e){X.isNumber(e)?this.matchers[e]=t:this.matchers.push(t),this.validateMatchers()}showMatcherModal(t){const e=this.bsModalService.show(Xf),n=e.content;n.rules=this.rules,X.isNumber(t)&&(n.editMode=!0,n.preFillControls(this.matchers[t])),e.content.submitAction.subscribe(e=>{this.setMatcher(e,t)})}deleteMatcher(t){this.matchers.splice(t,1),this.validateMatchers()}submit(){this.form.invalid||this.prometheusService.setSilence(this.getSubmitData()).subscribe(t=>{this.router.navigate(["/monitoring"],{fragment:"silences"}),this.notificationService.show(le.a.success,this.getNotificationTile(t.body.silenceId),void 0,void 0,"Prometheus")},()=>this.form.setErrors({cdSubmitButton:!0}))}getSubmitData(){const t=this.form.value;return delete t.duration,t.startsAt=t.startsAt.toISOString(),t.endsAt=t.endsAt.toISOString(),t.matchers=this.matchers,this.edit&&(t.id=this.id),t}getNotificationTile(t){let e;return e=this.edit?this.succeededLabels.EDITED:this.recreate?this.succeededLabels.RECREATED:this.succeededLabels.CREATED,`${e} ${this.resource} ${t}`}}var eh=s["ɵcrt"]({encapsulation:0,styles:[["textarea[_ngcontent-%COMP%]{resize:vertical}"]],data:{}});function nh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"input",[["class","form-control"],["disabled",""],["readonly",""],["type","text"]],[[8,"id",0],[8,"value",0],[2,"is-valid",null],[2,"is-invalid",null]],null,null,null,null)),s["ɵdid"](2,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](3,16384,null,0,Q.h,[[8,null],Q.a],null,null)],null,(function(t,e){t(e,1,0,s["ɵinlineInterpolate"](2,"matcher-",e.parent.context.$implicit.attribute,"-",e.parent.parent.context.index,""),e.parent.parent.context.matcher[e.parent.context.$implicit.attribute],s["ɵnov"](e,3).validClass,s["ɵnov"](e,3).invalidClass)}))}function ah(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"div",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,2,"div",[["class","input-group-text"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"input",[["disabled",""],["readonly",""],["type","checkbox"]],[[8,"id",0],[8,"checked",0]],null,null,null,null)),s["ɵdid"](4,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null)],null,(function(t,e){t(e,3,0,s["ɵinlineInterpolate"](2,"matcher-",e.parent.context.$implicit.attribute,"-",e.parent.parent.context.index,""),e.parent.parent.context.matcher[e.parent.context.$implicit.attribute])}))}function rh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,6,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,16777216,null,null,5,"span",[["class","input-group-text"]],null,null,null,null,null)),s["ɵdid"](3,212992,null,0,Wn.c,[s.ViewContainerRef,U.a,Wn.a,s.ElementRef,s.Renderer2,ra.a],{tooltip:[0,"tooltip"]},null),(t()(),s["ɵeld"](4,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,1),(t()(),s["ɵand"](16777216,null,null,1,null,nh)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ah)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,3,0,e.context.$implicit.tooltip);var n=t(e,7,0,e.context.$implicit.icon);t(e,6,0,n),t(e,9,0,"isRegex"!==e.context.$implicit.attribute),t(e,11,0,"isRegex"===e.context.$implicit.attribute)}),null)}function ih(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,15,"div",[["class","input-group my-2"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,rh)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](3,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,16777216,null,null,5,"button",[["class","btn btn-light"],["tooltip","Edit"],["type","button"]],[[8,"id",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.showMatcherModal(t.context.index)&&a),a}),null,null)),s["ɵdid"](5,212992,null,0,Wn.c,[s.ViewContainerRef,U.a,Wn.a,s.ElementRef,s.Renderer2,ra.a],{tooltip:[0,"tooltip"]},null),(t()(),s["ɵeld"](6,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](8,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](9,1),(t()(),s["ɵeld"](10,16777216,null,null,5,"button",[["class","btn btn-light"],["tooltip","Delete"],["type","button"]],[[8,"id",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.deleteMatcher(t.context.index)&&a),a}),null,null)),s["ɵdid"](11,212992,null,0,Wn.c,[s.ViewContainerRef,U.a,Wn.a,s.ElementRef,s.Renderer2,ra.a],{tooltip:[0,"tooltip"]},null),(t()(),s["ɵeld"](12,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](14,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](15,1),(t()(),s["ɵeld"](16,0,null,null,0,"span",[["class","help-block"]],null,null,null,null,null))],(function(t,e){var n=e.component;t(e,2,0,n.matcherConfig),t(e,5,0,"Edit");var a=t(e,9,0,n.icons.edit);t(e,8,0,a),t(e,11,0,"Delete");var r=t(e,15,0,n.icons.trash);t(e,14,0,r)}),(function(t,e){t(e,4,0,s["ɵinlineInterpolate"](1,"matcher-edit-",e.context.index,"")),t(e,10,0,s["ɵinlineInterpolate"](1,"matcher-delete-",e.context.index,""))}))}function sh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](1,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["Editing a silence will expire the old silence and recreate it as a new silence"]))],null,null)}function uh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function oh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function lh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function dh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function ch(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function fh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"h5",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](3,{"text-warning":0,"text-danger":1}),(t()(),s["ɵeld"](4,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["A silence requires at least one matcher"]))],(function(t,e){var n=t(e,3,0,!s["ɵnov"](e.parent,6).submitted,s["ɵnov"](e.parent,6).submitted);t(e,2,0,n)}),null)}function hh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function gh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,hh)),s["ɵdid"](2,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),s["ɵpod"](3,{index:0,matcher:1})],(function(t,e){var n=t(e,3,0,e.context.index,e.context.$implicit);t(e,2,0,n,s["ɵnov"](e.parent,2))}),null)}function ph(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"div",[["id","match-state"]],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵted"](2,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,0,0,s["ɵinlineInterpolate"](1,"cd-col-form-offset ",n.matcherMatch.cssClass,"")),t(e,1,0,s["ɵinlineInterpolate"](1,"text-muted ",n.matcherMatch.cssClass,"")),t(e,2,0,n.matcherMatch.status)}))}function bh(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Ps.a,[]),(t()(),s["ɵand"](0,[["matcherTpl",2]],null,0,null,ih)),(t()(),s["ɵeld"](3,0,null,null,141,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,140,"form",[["class","form"],["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,6).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,9).onSubmit()&&a),a}),null,null)),s["ɵdid"](5,16384,null,0,K.G,[],null,null),s["ɵdid"](6,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](8,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](9,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](10,0,null,null,134,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,6,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,3,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](13,null,[" "," "," "])),s["ɵppd"](14,1),s["ɵppd"](15,1),(t()(),s["ɵand"](16777216,null,null,1,null,sh)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](18,0,null,null,117,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](20,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](23,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","created-by"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Creator"])),(t()(),s["ɵeld"](25,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](26,0,null,null,7,"input",[["class","form-control"],["formControlName","createdBy"],["id","created-by"],["name","created-by"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,28)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,28).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,28)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,28)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](27,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](28,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](30,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](32,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](33,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,uh)),s["ɵdid"](35,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](36,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](37,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](40,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","comment"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Comment"])),(t()(),s["ɵeld"](42,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](43,0,null,null,7,"textarea",[["class","form-control"],["formControlName","comment"],["id","comment"],["name","comment"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,44)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,44).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,44)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,44)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](44,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](46,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](48,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](49,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["            "])),(t()(),s["ɵand"](16777216,null,null,1,null,oh)),s["ɵdid"](52,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](53,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](54,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](57,0,null,0,5,"label",[["class","cd-col-form-label"],["for","starts-at"]],null,null,null,null,null)),(t()(),s["ɵeld"](58,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Start time"])),(t()(),s["ɵeld"](60,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](61,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["If the start time lies in the past the creation time will be used"])),(t()(),s["ɵeld"](63,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](64,16777216,null,null,10,"input",[["bsDatepicker",""],["class","form-control"],["formControlName","startsAt"],["id","starts-at"],["name","starts-at"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,66)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,66).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,66)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,66)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,68).onChange(n)&&a),"keyup.esc"===e&&(a=!1!==s["ɵnov"](t,68).hide()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,68).onBlur()&&a),a}),null,null)),s["ɵdid"](65,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](66,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](67,737280,null,0,st.c,[st.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a],{bsConfig:[0,"bsConfig"]},null),s["ɵdid"](68,16384,null,0,st.f,[st.c,st.l,s.Renderer2,s.ElementRef,s.ChangeDetectorRef],null,null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[st.f]),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,st.f]),s["ɵdid"](71,671744,[[5,4]],0,K.j,[[3,K.d],[6,K.o],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](73,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](74,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,lh)),s["ɵdid"](76,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](77,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](78,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](81,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","duration"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Duration"])),(t()(),s["ɵeld"](83,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](84,0,null,null,7,"input",[["class","form-control"],["formControlName","duration"],["id","duration"],["name","duration"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,86)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,86).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,86)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,86)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](85,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](86,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](88,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](90,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](91,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,dh)),s["ɵdid"](93,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](94,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](95,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](98,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","ends-at"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["End time"])),(t()(),s["ɵeld"](100,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](101,16777216,null,null,10,"input",[["bsDatepicker",""],["class","form-control"],["formControlName","endsAt"],["id","ends-at"],["name","ends-at"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,103)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,103).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,103)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,103)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,105).onChange(n)&&a),"keyup.esc"===e&&(a=!1!==s["ɵnov"](t,105).hide()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,105).onBlur()&&a),a}),null,null)),s["ɵdid"](102,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](103,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](104,737280,null,0,st.c,[st.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a],{bsConfig:[0,"bsConfig"]},null),s["ɵdid"](105,16384,null,0,st.f,[st.c,st.l,s.Renderer2,s.ElementRef,s.ChangeDetectorRef],null,null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[st.f]),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,st.f]),s["ɵdid"](108,671744,[[9,4]],0,K.j,[[3,K.d],[6,K.o],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](110,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](111,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ch)),s["ɵdid"](113,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](114,0,null,null,21,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](115,0,null,null,1,"legend",[["class","required"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Matchers"])),(t()(),s["ɵeld"](117,0,null,null,16,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,fh)),s["ɵdid"](119,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,gh)),s["ɵdid"](121,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](122,0,null,null,11,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](123,0,null,null,10,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](124,0,null,null,9,"button",[["class","btn btn-light float-right my-3"],["id","add-matcher"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.showMatcherModal()&&a),a}),null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](126,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](127,{"btn-warning":0}),(t()(),s["ɵeld"](128,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](130,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](131,1),(t()(),s["ɵeld"](132,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add matcher"])),(t()(),s["ɵand"](16777216,null,null,1,null,ph)),s["ɵdid"](135,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](136,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](137,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](138,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submit()&&a),a}),ks.b,ks.a)),s["ɵdid"](139,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](140,0,[" "," "," "])),s["ɵppd"](141,1),s["ɵppd"](142,1),(t()(),s["ɵeld"](143,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](144,49152,null,0,Ds.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,6,0,n.form),t(e,9,0,n.form),t(e,17,0,n.edit),t(e,20,0),t(e,30,0,"createdBy"),t(e,33,0,"createdBy"),t(e,35,0,n.form.showError("createdBy",s["ɵnov"](e,6),"required")),t(e,37,0),t(e,46,0,"comment"),t(e,49,0,"comment"),t(e,52,0,n.form.showError("comment",s["ɵnov"](e,6),"required")),t(e,54,0),t(e,67,0,n.bsConfig),t(e,71,0,"startsAt"),t(e,74,0,"startsAt"),t(e,76,0,n.form.showError("startsAt",s["ɵnov"](e,6),"required")),t(e,78,0),t(e,88,0,"duration"),t(e,91,0,"duration"),t(e,93,0,n.form.showError("duration",s["ɵnov"](e,6),"required")),t(e,95,0),t(e,104,0,n.bsConfig),t(e,108,0,"endsAt"),t(e,111,0,"endsAt"),t(e,113,0,n.form.showError("endsAt",s["ɵnov"](e,6),"required")),t(e,119,0,0===n.matchers.length),t(e,121,0,n.matchers);var a=t(e,127,0,s["ɵnov"](e,6).submitted&&0===n.matchers.length);t(e,126,0,"btn btn-light float-right my-3",a);var r=t(e,131,0,n.icons.add);t(e,130,0,r),t(e,135,0,n.matchers.length&&n.matcherMatch),t(e,139,0,s["ɵnov"](e,6))}),(function(t,e){var n=e.component;t(e,4,0,s["ɵnov"](e,8).ngClassUntouched,s["ɵnov"](e,8).ngClassTouched,s["ɵnov"](e,8).ngClassPristine,s["ɵnov"](e,8).ngClassDirty,s["ɵnov"](e,8).ngClassValid,s["ɵnov"](e,8).ngClassInvalid,s["ɵnov"](e,8).ngClassPending);var a=s["ɵunv"](e,13,0,t(e,14,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,13,1,t(e,15,0,s["ɵnov"](e,1),n.resource));t(e,13,0,a,r),t(e,19,0,s["ɵnov"](e,20).hasErrors,s["ɵnov"](e,20).hasSuccess),t(e,26,0,s["ɵnov"](e,32).ngClassUntouched,s["ɵnov"](e,32).ngClassTouched,s["ɵnov"](e,32).ngClassPristine,s["ɵnov"](e,32).ngClassDirty,s["ɵnov"](e,32).ngClassValid,s["ɵnov"](e,32).ngClassInvalid,s["ɵnov"](e,32).ngClassPending,s["ɵnov"](e,33).validClass,s["ɵnov"](e,33).invalidClass),t(e,36,0,s["ɵnov"](e,37).hasErrors,s["ɵnov"](e,37).hasSuccess),t(e,43,0,s["ɵnov"](e,48).ngClassUntouched,s["ɵnov"](e,48).ngClassTouched,s["ɵnov"](e,48).ngClassPristine,s["ɵnov"](e,48).ngClassDirty,s["ɵnov"](e,48).ngClassValid,s["ɵnov"](e,48).ngClassInvalid,s["ɵnov"](e,48).ngClassPending,s["ɵnov"](e,49).validClass,s["ɵnov"](e,49).invalidClass),t(e,53,0,s["ɵnov"](e,54).hasErrors,s["ɵnov"](e,54).hasSuccess),t(e,64,0,s["ɵnov"](e,73).ngClassUntouched,s["ɵnov"](e,73).ngClassTouched,s["ɵnov"](e,73).ngClassPristine,s["ɵnov"](e,73).ngClassDirty,s["ɵnov"](e,73).ngClassValid,s["ɵnov"](e,73).ngClassInvalid,s["ɵnov"](e,73).ngClassPending,s["ɵnov"](e,74).validClass,s["ɵnov"](e,74).invalidClass),t(e,77,0,s["ɵnov"](e,78).hasErrors,s["ɵnov"](e,78).hasSuccess),t(e,84,0,s["ɵnov"](e,90).ngClassUntouched,s["ɵnov"](e,90).ngClassTouched,s["ɵnov"](e,90).ngClassPristine,s["ɵnov"](e,90).ngClassDirty,s["ɵnov"](e,90).ngClassValid,s["ɵnov"](e,90).ngClassInvalid,s["ɵnov"](e,90).ngClassPending,s["ɵnov"](e,91).validClass,s["ɵnov"](e,91).invalidClass),t(e,94,0,s["ɵnov"](e,95).hasErrors,s["ɵnov"](e,95).hasSuccess),t(e,101,0,s["ɵnov"](e,110).ngClassUntouched,s["ɵnov"](e,110).ngClassTouched,s["ɵnov"](e,110).ngClassPristine,s["ɵnov"](e,110).ngClassDirty,s["ɵnov"](e,110).ngClassValid,s["ɵnov"](e,110).ngClassInvalid,s["ɵnov"](e,110).ngClassPending,s["ɵnov"](e,111).validClass,s["ɵnov"](e,111).invalidClass);var i=s["ɵunv"](e,140,0,t(e,141,0,s["ɵnov"](e,0),n.action)),u=s["ɵunv"](e,140,1,t(e,142,0,s["ɵnov"](e,1),n.resource));t(e,140,0,i,u)}))}function mh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-prometheus-form",[],null,null,null,bh,eh)),s["ɵdid"](1,49152,null,0,th,[fe.a,Et.m,J.a,zu.a,Ce,bt.a,Et.a,Qf,Ct.b,Jf,St.b,St.d],null,null)],null,null)}var yh=s["ɵccf"]("cd-prometheus-form",th,mh,{},{},[]);let vh=(()=>{class t{constructor(e){this.route=e,this.route.queryParams.subscribe(e=>{this.fromLink=e.fromLink||t.defaultFromLink}),this.route.params.subscribe(t=>{this.serviceId=decodeURIComponent(t.id),this.serviceType=t.type})}}return t.defaultFromLink="/hosts",t})();var xh=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function _h(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",".",""])),(t()(),s["ɵeld"](2,0,null,null,1,"cd-table-performance-counter",[],null,null,null,jo.b,jo.a)),s["ɵdid"](3,114688,null,0,Fo.a,[Vo.a,fe.a],{serviceType:[0,"serviceType"],serviceId:[1,"serviceId"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.serviceType,n.serviceId)}),(function(t,e){var n=e.component;t(e,1,0,n.serviceType,n.serviceId)}))}function Th(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-performance-counter",[],null,null,null,_h,xh)),s["ɵdid"](1,49152,null,0,vh,[Et.a],null,null)],null,null)}var wh=s["ɵccf"]("cd-performance-counter",vh,Th,{},{},[]);class Oh{constructor(t){this.mgrModuleService=t}ngOnChanges(){this.selection&&this.mgrModuleService.getConfig(this.selection.name).subscribe(t=>{this.module_config=t})}}var Sh=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ih(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-table-key-value",[],null,null,null,fi.b,fi.a)),s["ɵdid"](5,638976,null,0,hi.a,[xe.a],{data:[0,"data"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Details"),t(e,5,0,n.module_config)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby)}))}function Nh(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Ih)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.selection)}),null)}let Ch=(()=>{class t extends ls.a{constructor(t,e,n,a){super(),this.authStorageService=t,this.mgrModuleService=e,this.notificationService=n,this.i18n=a,this.columns=[],this.modules=[],this.selection=new Hr.a,this.permission=this.authStorageService.getPermissions().configOpt,this.columns=[{name:this.i18n("Name"),prop:"name",flexGrow:1},{name:this.i18n("Enabled"),prop:"enabled",flexGrow:1,cellClass:"text-center",cellTransformation:Yr.a.checkIcon},{name:this.i18n("Always-On"),prop:"always_on",flexGrow:1,cellClass:"text-center",cellTransformation:Yr.a.checkIcon}];const r=()=>this.selection.first()&&encodeURIComponent(this.selection.first().name);this.tableActions=[{name:this.i18n("Edit"),permission:"update",disable:()=>!this.selection.hasSelection||0===Object.values(this.selection.first().options).length,routerLink:()=>"/mgr-modules/edit/"+r(),icon:pt.a.edit},{name:this.i18n("Enable"),permission:"update",click:()=>this.updateModuleState(),disable:()=>this.isTableActionDisabled("enabled"),icon:pt.a.start},{name:this.i18n("Disable"),permission:"update",click:()=>this.updateModuleState(),disable:()=>this.getTableActionDisabledDesc(),icon:pt.a.stop}]}getModuleList(t){this.mgrModuleService.list().subscribe(t=>{this.modules=t},()=>{t.error()})}updateSelection(t){this.selection=t}isTableActionDisabled(t){if(!this.selection.hasSelection)return!0;const e=this.selection.first();if("dashboard"===e.name)return!0;if(e.always_on)return!0;switch(t){case"enabled":return e.enabled;case"disabled":return!e.enabled}}getTableActionDisabledDesc(){return this.selection&&this.selection.first().always_on?this.i18n("This Manager module is always on."):this.isTableActionDisabled("disabled")}updateModuleState(){if(!this.selection.hasSelection)return;let t;const e=()=>{Object($r.a)(2e3).subscribe(()=>{this.mgrModuleService.list().subscribe(()=>{this.notificationService.suspendToasties(!1),this.blockUI.stop(),this.table.refreshBtn()},()=>{e()})})},n=this.selection.first();t=n.enabled?this.mgrModuleService.disable(n.name):this.mgrModuleService.enable(n.name),t.subscribe(()=>{},()=>{this.notificationService.suspendToasties(!0),this.blockUI.start(this.i18n("Reconnecting, please wait ...")),e()})}}return zd.__decorate([E(),zd.__metadata("design:type",Object)],t.prototype,"blockUI",void 0),t})();var Rh=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ah(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{table:0}),(t()(),s["ɵeld"](1,0,null,null,5,"cd-table",[["columnMode","flex"],["identifier","module"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"],[null,"fetchData"]],(function(t,e,n){var a=!0,r=t.component;return"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),"fetchData"===e&&(a=!1!==r.getModuleList(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](2,2867200,[[1,4],["table",4]],0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](3,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](4,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](5,0,null,3,1,"cd-mgr-module-details",[["cdTableDetail",""]],null,null,null,Nh,Sh)),s["ɵdid"](6,573440,null,0,Oh,[oe],{selection:[0,"selection"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.modules,n.columns,"flex",!0,!1,"module","single"),t(e,4,0,n.permission,n.selection,n.tableActions),t(e,6,0,n.expandedRow)}),null)}function kh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-mgr-module-list",[],null,null,null,Ah,Rh)),s["ɵdid"](1,49152,null,0,Ch,[J.a,oe,bt.a,fe.a],null,null)],null,null)}var Eh=s["ɵccf"]("cd-mgr-module-list",Ch,kh,{},{},[]);class Lh{constructor(t,e,n,a,r,i){this.route=t,this.router=e,this.formBuilder=n,this.mgrModuleService=a,this.notificationService=r,this.i18n=i,this.error=!1,this.loading=!1,this.moduleName="",this.moduleOptions=[]}ngOnInit(){this.route.params.subscribe(t=>{this.moduleName=decodeURIComponent(t.name),this.loading=!0;const e=[this.mgrModuleService.getOptions(this.moduleName),this.mgrModuleService.getConfig(this.moduleName)];Object(rl.a)(e).subscribe(t=>{this.loading=!1,this.moduleOptions=t[0],this.createForm(),this.mgrModuleForm.setValue(t[1])},t=>{this.error=!0})})}getValidators(t){const e=[];switch(t.type){case"addr":e.push(qs.a.ip());break;case"uint":case"int":case"size":case"secs":e.push(qs.a.number()),e.push(K.B.required),X.isNumber(t.min)&&e.push(K.B.min(t.min)),X.isNumber(t.max)&&e.push(K.B.max(t.max));break;case"str":X.isNumber(t.min)&&e.push(K.B.minLength(t.min)),X.isNumber(t.max)&&e.push(K.B.maxLength(t.max));break;case"float":e.push(K.B.required),e.push(qs.a.decimalNumber());break;case"uuid":e.push(qs.a.uuid())}return e}createForm(){const t={};X.forEach(this.moduleOptions,e=>{t[e.name]=[e.default_value,this.getValidators(e)]}),this.mgrModuleForm=this.formBuilder.group(t)}goToListView(){this.router.navigate(["/mgr-modules"])}onSubmit(){if(this.mgrModuleForm.pristine)return void this.goToListView();const t={};X.forEach(this.moduleOptions,e=>{const n=this.mgrModuleForm.get(e.name);n.dirty&&n.valid&&(t[e.name]=n.value)}),this.mgrModuleService.updateConfig(this.moduleName,t).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Updated options for module "{{name}}".',{name:this.moduleName})),this.goToListView()},()=>{this.mgrModuleForm.setErrors({cdSubmitButton:!0})})}}var Dh=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ph(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,gi.b,gi.a)),s["ɵdid"](1,49152,null,0,pi.a,[],null,null),(t()(),s["ɵted"](-1,0,["Loading configuration..."]))],null,null)}function Mh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["The configuration could not be loaded."]))],(function(t,e){t(e,1,0,"error")}),null)}function qh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](1,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](2,0,[" "," "])),s["ɵppd"](3,1)],null,(function(t,e){var n=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,0),e.parent.context.$implicit.value.long_desc||e.parent.context.$implicit.value.desc));t(e,2,0,n)}))}function jh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","col-sm-7"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,3).onTouched()&&a),a}),null,null)),s["ɵdid"](3,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](5,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](7,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](10,0,null,null,0,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null))],(function(t,e){t(e,5,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,9,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""))}),(function(t,e){t(e,2,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""),s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending,s["ɵnov"](e,9).validClass,s["ɵnov"](e,9).invalidClass),t(e,10,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""))}))}function Fh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,1)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,1)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,1)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](3,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](5,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](6,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](7,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,3,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,"")),t(e,7,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,""))}),(function(t,e){t(e,0,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,""),s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending,s["ɵnov"](e,7).validClass,s["ɵnov"](e,7).invalidClass)}))}function Vh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function Gh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"select",[["class","form-control custom-select"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,1).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).onTouched()&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](3,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](5,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](6,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](7,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vh)),s["ɵdid"](9,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,3,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,"")),t(e,7,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,"")),t(e,9,0,e.parent.parent.context.$implicit.value.enum_allowed)}),(function(t,e){t(e,0,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,""),s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending,s["ɵnov"](e,7).validClass,s["ɵnov"](e,7).invalidClass)}))}function Bh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8"]))],null,null)}function zh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a valid IP address."]))],null,null)}function Yh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[["class","col-sm-7"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Fh)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gh)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bh)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zh)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,0===e.parent.context.$implicit.value.enum_allowed.length),t(e,4,0,e.parent.context.$implicit.value.enum_allowed.length>0),t(e,6,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"invalidUuid")),t(e,8,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"pattern"))}),null)}function Hh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Uh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too high! It must be lower or equal to ","."]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.max)}))}function Wh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too low! It must be greater or equal to ","."]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.min)}))}function Kh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number."]))],null,null)}function $h(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","col-sm-7"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,8,"input",[["class","form-control"],["type","number"]],[[8,"id",0],[8,"min",0],[8,"max",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,2)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,2).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,2)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,2)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,3).onTouched()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](3,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](5,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](7,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hh)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Uh)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Wh)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Kh)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,5,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,9,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,11,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"required")),t(e,13,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"max")),t(e,15,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"min")),t(e,17,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"pattern"))}),(function(t,e){t(e,1,1,[s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""),s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.min,""),s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.max,""),s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending,s["ɵnov"](e,9).validClass,s["ɵnov"](e,9).invalidClass])}))}function Zh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Jh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number or decimal."]))],null,null)}function Qh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,13,"div",[["class","col-sm-7"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,8,"input",[["class","form-control"],["type","number"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,2)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,2).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,2)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,2)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,3).onTouched()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](3,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](5,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](7,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Zh)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Jh)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,5,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,9,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,11,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"required")),t(e,13,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"pattern"))}),(function(t,e){t(e,1,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""),s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending,s["ɵnov"](e,9).validClass,s["ɵnov"](e,9).invalidClass)}))}function Xh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,3,"label",[["class","col-form-label col-sm-5"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](5,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,qh)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,jh)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,2,null,Yh)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpad"](12,3),(t()(),s["ɵand"](16777216,null,0,2,null,$h)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpad"](15,4),(t()(),s["ɵand"](16777216,null,0,1,null,Qh)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0),t(e,7,0,e.context.$implicit.value.long_desc||e.context.$implicit.value.desc),t(e,9,0,"bool"===e.context.$implicit.value.type);var n=t(e,12,0,"addr","str","uuid").includes(e.context.$implicit.value.type);t(e,11,0,n);var a=t(e,15,0,"uint","int","size","secs").includes(e.context.$implicit.value.type);t(e,14,0,a),t(e,17,0,"float"===e.context.$implicit.value.type)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,s["ɵinlineInterpolate"](1,"",e.context.$implicit.value.name,"")),t(e,5,0,e.context.$implicit.value.name)}))}function tg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,21,"form",[["name","mgrModuleForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,15,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Edit Manager module"])),(t()(),s["ɵeld"](10,0,null,null,3,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,Xh)),s["ɵdid"](12,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers]),(t()(),s["ɵeld"](14,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](16,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),ks.b,ks.a)),s["ɵdid"](17,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵeld"](18,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Update"])),(t()(),s["ɵeld"](20,0,null,null,2,"button",[["class","btn btn-light"],["routerLink","/mgr-modules"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,21).onClick()&&a),a}),null,null)),s["ɵdid"](21,16384,null,0,Et.n,[Et.m,Et.a,[8,null],s.Renderer2,s.ElementRef],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Back"]))],(function(t,e){var n=e.component;t(e,3,0,n.mgrModuleForm),t(e,6,0,n.mgrModuleForm),t(e,12,0,s["ɵunv"](e,12,0,s["ɵnov"](e,13).transform(n.moduleOptions))),t(e,17,0,n.mgrModuleForm),t(e,21,0,"/mgr-modules")}),(function(t,e){t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending)}))}function eg(t){return s["ɵvid"](0,[s["ɵpid"](0,Ps.a,[]),(t()(),s["ɵand"](16777216,null,null,1,null,Ph)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Mh)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tg)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.loading&&!n.error),t(e,4,0,n.loading&&n.error),t(e,6,0,!n.loading&&!n.error)}),null)}function ng(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-mgr-module-form",[],null,null,null,eg,Dh)),s["ɵdid"](1,114688,null,0,Lh,[Et.a,Et.m,zu.a,oe,bt.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var ag=s["ɵccf"]("cd-mgr-module-form",Lh,ng,{},{},[]),rg=n("xTzq");let ig=(()=>{let t=class{constructor(t){this.http=t,this.baseURL="api/cephfs",this.baseUiURL="ui-api/cephfs"}list(){return this.http.get(""+this.baseURL)}lsDir(t,e){let n=`${this.baseUiURL}/${t}/ls_dir?depth=2`;return e&&(n+="&path="+encodeURIComponent(e)),this.http.get(n)}getCephfs(t){return this.http.get(`${this.baseURL}/${t}`)}getTabs(t){return this.http.get(`ui-api/cephfs/${t}/tabs`)}getClients(t){return this.http.get(`${this.baseURL}/${t}/clients`)}evictClient(t,e){return this.http.delete(`${this.baseURL}/${t}/client/${e}`)}getMdsCounters(t){return this.http.get(`${this.baseURL}/${t}/mds_counters`)}mkSnapshot(t,e,n){let a=new et.h;return a=a.append("path",e),X.isUndefined(n)||(a=a.append("name",n)),this.http.post(`${this.baseURL}/${t}/mk_snapshot`,null,{params:a})}rmSnapshot(t,e,n){let a=new et.h;return a=a.append("path",e),a=a.append("name",n),this.http.post(`${this.baseURL}/${t}/rm_snapshot`,null,{params:a})}updateQuota(t,e,n){let a=new et.h;return a=a.append("path",e),this.http.post(`${this.baseURL}/${t}/set_quotas`,n,{observe:"response",params:a})}};return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t=zd.__decorate([rg.a,zd.__metadata("design:paramtypes",[et.c])],t),t})();class sg{constructor(t,e,n,a,r,i,s,u){this.authStorageService=t,this.modalService=e,this.cephfsService=n,this.cdDatePipe=a,this.i18n=r,this.actionLabels=i,this.notificationService=s,this.dimlessBinaryPipe=u,this.icons=pt.a,this.loadingIndicator=!1,this.loading={},this.treeOptions={useVirtualScroll:!0,getChildren:t=>this.updateDirectory(t.id),actionMapping:{mouse:{click:this.selectAndShowNode.bind(this),expanderClick:this.selectAndShowNode.bind(this)}}}}selectAndShowNode(t,e,n){Yd.a.TOGGLE_EXPANDED(t,e,n),this.selectNode(e)}selectNode(t){Yd.a.TOGGLE_ACTIVE(void 0,t,void 0),this.selectedDir=this.getDirectory(t),"/"!==t.id&&this.setSettings(t)}ngOnInit(){this.permission=this.authStorageService.getPermissions().cephfs,this.setUpQuotaTable(),this.setUpSnapshotTable()}setUpQuotaTable(){this.quota={columns:[{prop:"row.name",name:this.i18n("Name"),flexGrow:1},{prop:"row.value",name:this.i18n("Value"),sortable:!1,flexGrow:1},{prop:"row.originPath",name:this.i18n("Origin"),sortable:!1,cellTemplate:this.originTmpl,flexGrow:1}],selection:new Hr.a,updateSelection:t=>{this.quota.selection=t},tableActions:[{name:this.actionLabels.SET,icon:pt.a.edit,permission:"update",visible:t=>!t.hasSelection||t.first()&&0===t.first().dirValue,click:()=>this.updateQuotaModal()},{name:this.actionLabels.UPDATE,icon:pt.a.edit,permission:"update",visible:t=>t.first()&&t.first().dirValue>0,click:()=>this.updateQuotaModal()},{name:this.actionLabels.UNSET,icon:pt.a.destroy,permission:"update",disable:t=>!t.hasSelection||t.first()&&0===t.first().dirValue,click:()=>this.unsetQuotaModal()}]}}setUpSnapshotTable(){this.snapshot={columns:[{prop:"name",name:this.i18n("Name"),flexGrow:1},{prop:"path",name:this.i18n("Path"),isHidden:!0,flexGrow:2},{prop:"created",name:this.i18n("Created"),flexGrow:1,pipe:this.cdDatePipe}],selection:new Hr.a,updateSelection:t=>{this.snapshot.selection=t},tableActions:[{name:this.actionLabels.CREATE,icon:pt.a.add,permission:"create",canBePrimary:t=>!t.hasSelection,click:()=>this.createSnapshot()},{name:this.actionLabels.DELETE,icon:pt.a.destroy,permission:"delete",click:()=>this.deleteSnapshotModal(),canBePrimary:t=>t.hasSelection,disable:t=>!t.hasSelection}]}}ngOnChanges(){this.selectedDir=void 0,this.dirs=[],this.requestedPaths=[],this.nodeIds={},this.id&&(this.setRootNode(),this.firstCall())}setRootNode(){this.nodes=[{name:"/",id:"/",isExpanded:!0}]}firstCall(){setTimeout(()=>{this.getNode("/").loadNodeChildren()},10)}updateDirectory(t){if(this.unsetLoadingIndicator(),this.requestedPaths.includes(t)){if(!0===this.loading[t])return}else this.requestedPaths.push(t);return new Promise(e=>{this.setLoadingIndicator(t,!0),this.cephfsService.lsDir(this.id,t).subscribe(n=>{this.updateTreeStructure(n),this.updateQuotaTable(),this.updateTree(),e(this.getChildren(t)),this.setLoadingIndicator(t,!1)})})}setLoadingIndicator(t,e){this.loading[t]=e,this.unsetLoadingIndicator()}getSubDirectories(t,e=this.dirs){return e.filter(e=>e.parent===t)}getChildren(t){const e=this.getSubTree(t);return X.sortBy(this.getSubDirectories(t),"path").map(t=>this.createNode(t,e))}createNode(t,e){return this.nodeIds[t.path]=t,e||this.getSubTree(t.parent),{name:t.name,id:t.path,hasChildren:this.getSubDirectories(t.path,e).length>0}}getSubTree(t){return this.dirs.filter(e=>e.parent&&e.parent.startsWith(t))}setSettings(t){const e=(t,e)=>t?e?e(t):t:"";this.settings=[this.getQuota(t,"max_files",e),this.getQuota(t,"max_bytes",t=>e(t,t=>this.dimlessBinaryPipe.transform(t)))]}getQuota(t,e,n){const a=t.id;t=this.getOrigin(t,e);const r=this.getDirectory(t),i=r.quotas[e];let s=i,u=r.path;if(t.id===a)if("/"===t.parent.id)s=0;else{const n=this.getDirectory(this.getOrigin(t.parent,e));s=n.quotas[e],u=n.path}return{row:{name:this.i18n("max_bytes"===e?"Max size":"Max files"),value:n(i),originPath:i?r.path:""},quotaKey:e,dirValue:this.nodeIds[a].quotas[e],nextTreeMaximum:{value:s,path:s?u:""}}}getOrigin(t,e){if(t.parent&&"/"!==t.parent.id){const n=this.getQuotaFromTree(t,e),a=this.getOrigin(t.parent,e),r=this.getQuotaFromTree(a,e);return 0===n||0!==r&&r<n?a:t}return t}getQuotaFromTree(t,e){return this.getDirectory(t).quotas[e]}getDirectory(t){return this.nodeIds[t.id]}selectOrigin(t){this.selectNode(this.getNode(t))}getNode(t){return this.treeComponent.treeModel.getNodeById(t)}updateQuotaModal(){const t=this.selectedDir.path,e=this.quota.selection.first(),n=e.nextTreeMaximum,a=e.quotaKey,r=e.dirValue;this.modalService.show(zr.a,{initialState:{titleText:this.getModalQuotaTitle(0===r?this.actionLabels.SET:this.actionLabels.UPDATE,t),message:n.value?this.i18n("The inherited {{quotaValue}} is the maximum value to be used.",{quotaValue:this.getQuotaValueFromPathMsg(n.value,n.path)}):void 0,fields:[this.getQuotaFormField(e.row.name,a,r,n.value)],submitButtonText:this.i18n("Save"),onSubmit:t=>this.updateQuota(t)}})}getModalQuotaTitle(t,e){return this.i18n("{{action}} CephFS {{quotaName}} quota for '{{path}}'",{action:t,quotaName:this.getQuotaName(),path:e})}getQuotaName(){return this.isBytesQuotaSelected()?this.i18n("size"):this.i18n("files")}isBytesQuotaSelected(){return"max_bytes"===this.quota.selection.first().quotaKey}getQuotaValueFromPathMsg(t,e){return this.i18n("{{quotaName}} quota {{value}} from '{{path}}'",{value:this.isBytesQuotaSelected()?this.dimlessBinaryPipe.transform(t):t,quotaName:this.getQuotaName(),path:e})}getQuotaFormField(t,e,n,a){const r="max_bytes"===e,i=[r?qs.a.binaryMin(0):K.B.min(0)];a&&i.push(r?qs.a.binaryMax(a):K.B.max(a));const s={type:r?"binary":"number",label:t,name:e,value:n,validators:i,required:!0};return r||(s.errors={min:this.i18n("Value has to be at least {{value}} or more",{value:0}),max:this.i18n("Value has to be at most {{value}} or less",{value:a})}),s}updateQuota(t,e){const n=this.selectedDir.path,a=this.quota.selection.first().quotaKey,r=0===this.selectedDir.quotas[a]?this.actionLabels.SET:0===t[a]?this.actionLabels.UNSET:this.i18n("Updated");this.cephfsService.updateQuota(this.id,n,t).subscribe(()=>{e&&e(),this.notificationService.show(le.a.success,this.getModalQuotaTitle(r,n)),this.forceDirRefresh()})}unsetQuotaModal(){const t=this.selectedDir.path,e=this.quota.selection.first(),n=e.quotaKey,a=e.nextTreeMaximum,r=e.dirValue;this.modalRef=this.modalService.show(il.a,{initialState:{titleText:this.getModalQuotaTitle(this.actionLabels.UNSET,t),buttonText:this.actionLabels.UNSET,description:this.i18n("{{action}} {{quotaValue}} {{conclusion}}.",{action:this.actionLabels.UNSET,quotaValue:this.getQuotaValueFromPathMsg(r,t),conclusion:a.value>0?this.i18n(a.value>r?"in order to inherit {{quotaValue}}":"which isn't used because of the inheritance of {{quotaValue}}",{quotaValue:this.getQuotaValueFromPathMsg(a.value,a.path)}):this.i18n("in order to have no quota on the directory")}),onSubmit:()=>this.updateQuota({[n]:0},()=>this.modalRef.hide())}})}createSnapshot(){const t=this.selectedDir.path;this.modalService.show(zr.a,{initialState:{titleText:this.i18n("Create Snapshot"),message:this.i18n("Please enter the name of the snapshot."),fields:[{type:"text",name:"name",value:""+ye().toISOString(!0),required:!0}],submitButtonText:this.i18n("Create Snapshot"),onSubmit:e=>{this.cephfsService.mkSnapshot(this.id,t,e.name).subscribe(e=>{this.notificationService.show(le.a.success,this.i18n('Created snapshot "{{name}}" for "{{path}}"',{name:e,path:t})),this.forceDirRefresh()})}}})}forceDirRefresh(t){if(!t){const e=this.selectedDir;if(!e)throw new Error("This function can only be called without path if an selection was made");t=e.parent?e.parent:e.path}this.getNode(t).loadNodeChildren()}updateTreeStructure(t){const e=(t,e)=>{const n=t.filter(t=>t.parent===e),a=n.map(t=>t.path);return{children:n,paths:a}};X.uniq(t.map(t=>t.parent).sort()).forEach(n=>{const a=e(t,n),r=e(this.dirs,n);r.children.forEach(t=>{a.paths.includes(t.path)||this.removeOldDirectory(t)}),a.children.forEach(t=>{r.paths.includes(t.path)?this.updateExistingDirectory(r.children,t):this.addNewDirectory(t)})})}removeOldDirectory(t){const e=t.path;X.remove(this.dirs,t=>t.path===e),delete this.nodeIds[e],this.updateDirectoriesParentNode(t)}updateDirectoriesParentNode(t){const e=t.parent;if(!e)return;const n=this.getNode(e);if(!n)return;const a=this.getChildren(e);n.data.children=a,n.data.hasChildren=a.length>0,this.treeComponent.treeModel.update()}addNewDirectory(t){this.dirs.push(t),this.nodeIds[t.path]=t,this.updateDirectoriesParentNode(t)}updateExistingDirectory(t,e){const n=t.find(t=>t.path===e.path);Object.assign(n,e)}updateQuotaTable(){const t=this.selectedDir?this.getNode(this.selectedDir.path):void 0;t&&"/"!==t.id&&this.setSettings(t)}updateTree(t=!1){this.loadingIndicator&&!t||(this.treeComponent.treeModel.update(),this.nodes=[...this.nodes],this.treeComponent.sizeChanged())}deleteSnapshotModal(){this.modalRef=this.modalService.show(ds.a,{initialState:{itemDescription:this.i18n("CephFs Snapshot"),itemNames:this.snapshot.selection.selected.map(t=>t.name),submitAction:()=>this.deleteSnapshot()}})}deleteSnapshot(){const t=this.selectedDir.path;this.snapshot.selection.selected.forEach(e=>{const n=e.name;this.cephfsService.rmSnapshot(this.id,t,n).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Deleted snapshot "{{name}}" for "{{path}}"',{name:n,path:t}))})}),this.modalRef.hide(),this.forceDirRefresh()}refreshAllDirectories(){this.loadingIndicator=!0,this.requestedPaths.map(t=>this.forceDirRefresh(t));const t=setInterval(()=>{this.updateTree(!0),this.loadingIndicator||clearInterval(t)},3e3)}unsetLoadingIndicator(){this.loadingIndicator&&(clearTimeout(this.loadingTimeout),this.loadingTimeout=setTimeout(()=>{if(Object.values(this.loading).some(t=>t))return this.unsetLoadingIndicator();this.loadingIndicator=!1,this.updateTree()},3e3))}}var ug=s["ɵcrt"]({encapsulation:0,styles:[["tree-root .tree-children{overflow:inherit}.quota-origin[_ngcontent-%COMP%]{cursor:pointer;color:#2b99a8}.quota-origin[_ngcontent-%COMP%]:hover{color:#212121}"]],data:{}});function og(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](3,2)],(function(t,e){var n=e.component,a=t(e,3,0,n.icons.spinner,n.icons.spin);t(e,2,0,a)}),null)}function lg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"tree-root",[],null,[["body","keydown"],["body","mousedown"]],(function(t,e,n){var a=!0;return"body:keydown"===e&&(a=!1!==s["ɵnov"](t,2).onKeydown(n)&&a),"body:mousedown"===e&&(a=!1!==s["ɵnov"](t,2).onMousedown(n)&&a),a}),Fd.b,Fd.a)),s["ɵprd"](131584,null,Vd.a,Vd.a,[]),s["ɵdid"](2,573440,[[1,4]],4,Gd.a,[Vd.a,Bd.a],{nodes:[0,"nodes"],options:[1,"options"]},null),s["ɵqud"](603979776,3,{loadingTemplate:0}),s["ɵqud"](603979776,4,{treeNodeTemplate:0}),s["ɵqud"](603979776,5,{treeNodeWrapperTemplate:0}),s["ɵqud"](603979776,6,{treeNodeFullTemplate:0}),(t()(),s["ɵand"](0,[[3,2],["loadingTemplate",2]],null,0,null,og))],(function(t,e){var n=e.component;t(e,2,0,n.nodes,n.treeOptions)}),null)}function dg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Quotas"])),(t()(),s["ɵeld"](3,0,null,null,3,"cd-table",[["identifier","quotaKey"],["selectionType","single"]],null,[[null,"updateSelection"]],(function(t,e,n){var a=!0;return"updateSelection"===e&&(a=!1!==t.component.quota.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](4,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],onlyActionHeader:[2,"onlyActionHeader"],toolHeader:[3,"toolHeader"],footer:[4,"footer"],limit:[5,"limit"],identifier:[6,"identifier"],forceIdentifier:[7,"forceIdentifier"],selectionType:[8,"selectionType"]},{updateSelection:"updateSelection"}),(t()(),s["ɵeld"](5,0,null,0,1,"cd-table-actions",[["class","only-table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](6,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(t,e){var n=e.component;t(e,4,0,n.settings,n.quota.columns,!0,!1,!1,0,"quotaKey",!0,"single"),t(e,6,0,n.permission,n.quota.selection,n.quota.tableActions)}),null)}function cg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,12,"div",[["class","col-sm-8 metadata"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,11,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](3,null,[" "," "])),(t()(),s["ɵeld"](4,0,null,null,8,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,dg)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](7,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Snapshots"])),(t()(),s["ɵeld"](9,0,null,null,3,"cd-table",[["forceIdentifier","true"],["identifier","name"],["selectionType","multiClick"]],null,[[null,"updateSelection"]],(function(t,e,n){var a=!0;return"updateSelection"===e&&(a=!1!==t.component.snapshot.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](10,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],identifier:[2,"identifier"],forceIdentifier:[3,"forceIdentifier"],selectionType:[4,"selectionType"]},{updateSelection:"updateSelection"}),(t()(),s["ɵeld"](11,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](12,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(t,e){var n=e.component;t(e,6,0,"/"!==n.selectedDir.path),t(e,10,0,n.selectedDir.snapshots,n.snapshot.columns,"name","true","multiClick"),t(e,12,0,n.permission,n.snapshot.selection,n.snapshot.tableActions)}),(function(t,e){t(e,3,0,e.component.selectedDir.path)}))}function fg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","quota-origin"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.selectOrigin(t.context.value)&&a),a}),null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.value)}))}function hg(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{treeComponent:0}),s["ɵqud"](402653184,2,{originTmpl:0}),(t()(),s["ɵeld"](2,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,10,"div",[["class","col-sm-4 pr-0"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,9,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,5,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,4,"button",[["class","btn btn-light pull-right"],["type","button"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.refreshAllDirectories()&&a),a}),null,null)),(t()(),s["ɵeld"](7,0,null,null,3,"i",[],[[2,"fa-spin",null]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](9,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](10,2),(t()(),s["ɵeld"](11,0,null,null,2,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,lg)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,cg)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[2,2],["origin",2]],null,0,null,fg))],(function(t,e){var n=e.component,a=t(e,10,0,n.icons.large,n.icons.refresh);t(e,9,0,a),t(e,13,0,n.nodes),t(e,15,0,n.selectedDir)}),(function(t,e){var n=e.component;t(e,6,0,n.loadingIndicator),t(e,7,0,n.loadingIndicator)}))}class gg{constructor(){this.lhsCounter="mds_mem.ino",this.rhsCounter="mds_server.handle_client_request",this.chart={datasets:[{label:this.lhsCounter,yAxisID:"LHS",data:[],lineTension:.1},{label:this.rhsCounter,yAxisID:"RHS",data:[],lineTension:.1}],options:{title:{text:"",display:!0},responsive:!0,maintainAspectRatio:!1,legend:{position:"top"},scales:{xAxes:[{position:"top",type:"time",time:{displayFormats:{quarter:"MMM YYYY"}},ticks:{maxRotation:0}}],yAxes:[{id:"LHS",type:"linear",position:"left"},{id:"RHS",type:"linear",position:"right"}]},tooltips:{enabled:!1,mode:"index",intersect:!1,position:"nearest",callbacks:{title:(t,e)=>{let n=0;if(t.length>0){const a=t[0];n=e.datasets[a.datasetIndex].data[a.index].x}return n.toString()}}}},chartType:"line"}}ngOnInit(){X.isUndefined(this.mdsCounter)||(this.setChartTooltip(),this.updateChart())}ngOnChanges(){X.isUndefined(this.mdsCounter)||this.updateChart()}setChartTooltip(){const t=new pa.a(this.chartCanvas,this.chartTooltip,t=>t.caretX+"px",t=>t.caretY-t.height-23+"px");t.getTitle=t=>ye(t,"x").format("LTS"),t.checkOffset=!0,X.merge(this.chart,{options:{title:{text:this.mdsCounter.name},tooltips:{custom:e=>t.customTooltips(e)}}})}updateChart(){const t=[{data:this.convertTimeSeries(this.mdsCounter[this.lhsCounter])},{data:this.deltaTimeSeries(this.mdsCounter[this.rhsCounter])}];X.merge(this.chart,{datasets:t}),this.chart.datasets=[...this.chart.datasets]}convertTimeSeries(t){const e=[];return X.each(t,t=>{e.push({x:1e3*t[0],y:t[1]})}),e.shift(),e}deltaTimeSeries(t){let e,n=t[0];const a=[];for(e=1;e<t.length;e++){const r=t[e];a.push({x:1e3*r[0],y:r[1]-n[1]}),n=r}return a}}var pg=s["ɵcrt"]({encapsulation:0,styles:[['canvas[_ngcontent-%COMP%]{-moz-user-select:none;user-select:none}.chartjs-tooltip[_ngcontent-%COMP%]{opacity:0;position:absolute;background:rgba(0,0,0,.7);color:#fff;border-radius:3px;transition:all .1s ease;pointer-events:none;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;transform:translate(-50%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]{transform:translate(-10%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]::after{left:10%}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]{transform:translate(-90%,0)}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]::after{left:90%}.chartjs-tooltip[_ngcontent-%COMP%]::after{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#000 transparent transparent}  .chartjs-tooltip-key{display:inline-block;width:10px;height:10px;margin-right:10px}.chart-container[_ngcontent-%COMP%]{margin:auto auto 20px;cursor:pointer;overflow:visible;position:relative;height:500px;width:100%}']],data:{}});function bg(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{chartCanvas:0}),s["ɵqud"](402653184,2,{chartTooltip:0}),(t()(),s["ɵeld"](2,0,null,null,4,"div",[["class","chart-container"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,[[1,0],["chartCanvas",1]],null,1,"canvas",[["baseChart",""]],null,null,null,null,null)),s["ɵdid"](4,999424,null,0,ha.a,[s.ElementRef,ha.c],{datasets:[0,"datasets"],options:[1,"options"],chartType:[2,"chartType"]},null),(t()(),s["ɵeld"](5,0,[[2,0],["chartTooltip",1]],null,1,"div",[["class","chartjs-tooltip"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,0,"table",[],null,null,null,null,null))],(function(t,e){var n=e.component;t(e,4,0,n.chart.datasets,n.chart.options,n.chart.chartType)}),null)}class mg{constructor(t,e,n){this.dimlessBinary=t,this.dimless=e,this.i18n=n,this.standbys=[],this.objectValues=Object.values}ngOnChanges(){this.setStandbys()}setStandbys(){this.standbys=[{key:this.i18n("Standby daemons"),value:this.data.standbys}]}ngOnInit(){this.columns={ranks:[{prop:"rank",name:this.i18n("Rank")},{prop:"state",name:this.i18n("State")},{prop:"mds",name:this.i18n("Daemon")},{prop:"activity",name:this.i18n("Activity"),cellTemplate:this.activityTmpl},{prop:"dns",name:this.i18n("Dentries"),pipe:this.dimless},{prop:"inos",name:this.i18n("Inodes"),pipe:this.dimless}],pools:[{prop:"pool",name:this.i18n("Pool")},{prop:"type",name:this.i18n("Type")},{prop:"size",name:this.i18n("Size"),pipe:this.dimlessBinary},{name:this.i18n("Usage"),cellTemplate:this.poolUsageTpl,comparator:(t,e,n,a)=>{const r=n.used/n.avail,i=a.used/a.avail;return r===i?0:r>i?1:-1}}]}}trackByFn(t,e){return e.name}}var yg=s["ɵcrt"]({encapsulation:0,styles:[[".progress[_ngcontent-%COMP%]{margin-bottom:0}"]],data:{}});function vg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"div",[["class","col-md-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"cd-cephfs-chart",[],null,null,null,bg,pg)),s["ɵdid"](3,638976,null,0,gg,[],{mdsCounter:[0,"mdsCounter"]},null)],(function(t,e){t(e,3,0,e.context.$implicit)}),null)}function xg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-usage-bar",[],null,null,null,Po.b,Po.a)),s["ɵdid"](1,573440,null,0,Mo.a,[],{total:[0,"total"],used:[1,"used"]},null)],(function(t,e){t(e,1,0,e.context.row.size,e.context.row.used)}),null)}function _g(t){return s["ɵvid"](0,[(t()(),s["ɵted"](0,null,[" ",": "," /s\n"])),s["ɵppd"](1,1)],null,(function(t,e){var n="standby-replay"===e.context.row.state?"Evts":"Reqs",a=s["ɵunv"](e,0,1,t(e,1,0,s["ɵnov"](e.parent,0),e.context.value));t(e,0,0,n,a)}))}function Tg(t){return s["ɵvid"](0,[s["ɵpid"](0,ma.a,[Sa.a]),s["ɵqud"](402653184,1,{poolUsageTpl:0}),s["ɵqud"](402653184,2,{activityTmpl:0}),(t()(),s["ɵeld"](3,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,8,"div",[["class","col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Ranks"])),(t()(),s["ɵeld"](7,0,null,null,1,"cd-table",[],null,null,null,kr.b,kr.a)),s["ɵdid"](8,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],toolHeader:[2,"toolHeader"]},null),(t()(),s["ɵeld"](9,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Standbys"])),(t()(),s["ɵeld"](11,0,null,null,1,"cd-table-key-value",[],null,null,null,fi.b,fi.a)),s["ɵdid"](12,638976,null,0,hi.a,[xe.a],{data:[0,"data"]},null),(t()(),s["ɵeld"](13,0,null,null,4,"div",[["class","col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pools"])),(t()(),s["ɵeld"](16,0,null,null,1,"cd-table",[],null,null,null,kr.b,kr.a)),s["ɵdid"](17,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],toolHeader:[2,"toolHeader"]},null),(t()(),s["ɵeld"](18,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["MDS performance counters"])),(t()(),s["ɵand"](16777216,null,null,1,null,vg)),s["ɵdid"](21,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),s["ɵand"](0,[[1,2],["poolUsageTpl",2]],null,0,null,xg)),(t()(),s["ɵand"](0,[[2,2],["activityTmpl",2]],null,0,null,_g))],(function(t,e){var n=e.component;t(e,8,0,n.data.ranks,n.columns.ranks,!1),t(e,12,0,n.standbys),t(e,17,0,n.data.pools,n.columns.pools,!1),t(e,21,0,n.objectValues(n.data.mdsCounters),n.trackByFn)}),null)}var wg=n("C6Ij"),Og=n("AWcq");class Sg{constructor(t,e,n,a,r,i){this.cephfsService=t,this.modalService=e,this.notificationService=n,this.authStorageService=a,this.i18n=r,this.actionLabels=i,this.triggerApiUpdate=new s.EventEmitter,this.selection=new Hr.a,this.permission=this.authStorageService.getPermissions().cephfs,this.tableActions=[{permission:"update",icon:pt.a.signOut,click:()=>this.evictClientModal(),name:this.actionLabels.EVICT}]}ngOnInit(){this.columns=[{prop:"id",name:this.i18n("id")},{prop:"type",name:this.i18n("type")},{prop:"state",name:this.i18n("state")},{prop:"version",name:this.i18n("version")},{prop:"hostname",name:this.i18n("Host")},{prop:"root",name:this.i18n("root")}]}updateSelection(t){this.selection=t}evictClient(t){this.cephfsService.evictClient(this.id,t).subscribe(()=>{this.triggerApiUpdate.emit(),this.modalRef.hide(),this.notificationService.show(le.a.success,this.i18n('Evicted client "{{clientId}}"',{clientId:t}))},()=>{this.modalRef.content.stopLoadingSpinner()})}evictClientModal(){const t=this.selection.first().id;this.modalRef=this.modalService.show(ds.a,{initialState:{itemDescription:"client",itemNames:[t],actionDescription:"evict",submitAction:()=>this.evictClient(t)}})}}var Ig=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ng(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,wg.b,wg.a)),s["ɵdid"](1,114688,null,0,Og.a,[],{status:[0,"status"]},null),(t()(),s["ɵeld"](2,0,null,null,3,"cd-table",[["selectionType","single"]],null,[[null,"updateSelection"]],(function(t,e,n){var a=!0;return"updateSelection"===e&&(a=!1!==t.component.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](3,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],selectionType:[2,"selectionType"]},{updateSelection:"updateSelection"}),(t()(),s["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](5,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.clients.status),t(e,3,0,n.clients.data,n.columns,"single"),t(e,5,0,n.permission,n.selection,n.tableActions)}),null)}var Cg=n("yJti");class Rg{constructor(t,e,n){this.ngZone=t,this.authStorageService=e,this.cephfsService=n,this.clients={data:[],status:Cg.a.ValueNone},this.details={standbys:"",pools:[],ranks:[],mdsCounters:{},name:""},this.directoriesSelected=!1,this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnChanges(){this.selection?this.selection.id!==this.id&&this.setupSelected(this.selection.id,this.selection.mdsmap.info):this.unsubscribeInterval()}setupSelected(t,e){this.id=t;const n=X.first(Object.values(e));this.grafanaId=n&&n.name,this.details={standbys:"",pools:[],ranks:[],mdsCounters:{},name:""},this.clients={data:[],status:Cg.a.ValueNone},this.updateInterval()}updateInterval(){this.unsubscribeInterval(),this.subscribeInterval()}unsubscribeInterval(){this.reloadSubscriber&&this.reloadSubscriber.unsubscribe()}subscribeInterval(){this.ngZone.runOutsideAngular(()=>this.reloadSubscriber=Object($r.a)(0,5e3).subscribe(()=>this.ngZone.run(()=>this.refresh())))}refresh(){this.cephfsService.getTabs(this.id).subscribe(t=>{this.data=t,this.softRefresh()},()=>{this.clients.status=Cg.a.ValueException})}softRefresh(){const t=X.cloneDeep(this.data);this.clients=t.clients,this.details={standbys:t.standbys,pools:t.pools,ranks:t.ranks,mdsCounters:t.mds_counters,name:t.name}}ngOnDestroy(){this.unsubscribeInterval()}}var Ag=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function kg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clients"])),(t()(),s["ɵeld"](2,0,null,null,1,"span",[["class","badge badge-pill badge-tab ml-1"]],null,null,null,null,null)),(t()(),s["ɵted"](3,null,["",""]))],null,(function(t,e){t(e,3,0,e.component.clients.data.length)}))}function Eg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-cephfs-directories",[],null,null,null,hg,ug)),s["ɵdid"](1,638976,null,0,sg,[J.a,Ct.b,ig,xe.a,fe.a,St.b,bt.a,ba.a],{id:[0,"id"]},null)],(function(t,e){t(e,1,0,e.component.id)}),null)}function Lg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","one"],["uid","tbO9LAiZz"]],null,null,null,Cr.b,Cr.a)),s["ɵdid"](3,638976,null,0,Rr.a,[Ar.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Performance Details"),t(e,3,0,"mds-performance?var-mds_servers=mds."+n.grafanaId,"one","tbO9LAiZz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function Dg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.softRefresh()&&a),a}),null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},{selectTab:"selectTab"}),(t()(),s["ɵeld"](4,0,null,null,1,"cd-cephfs-detail",[],null,null,null,Tg,yg)),s["ɵdid"](5,638976,null,0,mg,[ba.a,ma.a,fe.a],{data:[0,"data"]},null),(t()(),s["ɵeld"](6,0,null,0,5,"tab",[],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.softRefresh()&&a),a}),null,null)),s["ɵdid"](7,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],null,{selectTab:"selectTab"}),(t()(),s["ɵand"](0,null,null,1,null,kg)),s["ɵdid"](9,16384,null,0,na.c,[s.TemplateRef,na.b],null,null),(t()(),s["ɵeld"](10,0,null,null,1,"cd-cephfs-clients",[],null,[[null,"triggerApiUpdate"]],(function(t,e,n){var a=!0;return"triggerApiUpdate"===e&&(a=!1!==t.component.refresh()&&a),a}),Ng,Ig)),s["ɵdid"](11,114688,null,0,Sg,[ig,Ct.b,bt.a,J.a,fe.a,St.b],{id:[0,"id"],clients:[1,"clients"]},{triggerApiUpdate:"triggerApiUpdate"}),(t()(),s["ɵeld"](12,0,null,0,3,"tab",[["heading","Directories"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=0!=(t.component.directoriesSelected=!0)&&a),a}),null,null)),s["ɵdid"](13,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},{selectTab:"selectTab"}),(t()(),s["ɵand"](16777216,null,null,1,null,Eg)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Lg)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Details"),t(e,5,0,n.details),t(e,7,0),t(e,11,0,n.id,n.clients),t(e,13,0,"Directories"),t(e,15,0,n.directoriesSelected),t(e,17,0,n.grafanaPermission.read&&n.grafanaId)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,6,0,s["ɵnov"](e,7).id,s["ɵnov"](e,7).active,s["ɵnov"](e,7).addClass,s["ɵnov"](e,7).role,s["ɵnov"](e,7).ariaLabelledby),t(e,12,0,s["ɵnov"](e,13).id,s["ɵnov"](e,13).active,s["ɵnov"](e,13).addClass,s["ɵnov"](e,13).role,s["ɵnov"](e,13).ariaLabelledby)}))}function Pg(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Dg)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.selection)}),null)}class Mg extends ls.a{constructor(t,e,n){super(),this.cephfsService=t,this.cdDatePipe=e,this.i18n=n,this.filesystems=[],this.selection=new Hr.a}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"mdsmap.fs_name",flexGrow:2},{name:this.i18n("Created"),prop:"mdsmap.created",flexGrow:2,pipe:this.cdDatePipe},{name:this.i18n("Enabled"),prop:"mdsmap.enabled",flexGrow:1,cellTransformation:Yr.a.checkIcon}]}loadFilesystems(t){this.cephfsService.list().subscribe(t=>{this.filesystems=t},()=>{t.error()})}updateSelection(t){this.selection=t}}var qg=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function jg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","id"],["selectionType","single"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.loadFilesystems(n)&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](1,2867200,null,0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](2,0,null,3,1,"cd-cephfs-tabs",[["cdTableDetail",""]],null,null,null,Pg,Ag)),s["ɵdid"](3,704512,null,0,Rg,[s.NgZone,J.a,ig],{selection:[0,"selection"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.filesystems,n.columns,"flex",!0,"id","true","single"),t(e,3,0,n.expandedRow)}),null)}function Fg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-cephfs-list",[],null,null,null,jg,qg)),s["ɵdid"](1,114688,null,0,Mg,[ig,xe.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Vg=s["ɵccf"]("cd-cephfs-list",Mg,Fg,{},{},[]),Gg=n("1nQr");class Bg{constructor(t,e,n,a,r,i,s,u){this.i18n=t,this.actionLabels=e,this.notificationService=n,this.userService=a,this.authStorageService=r,this.formBuilder=i,this.router=s,this.passwordPolicyService=u,this.passwordPolicyHelpText="",this.icons=pt.a,this.action=this.actionLabels.CHANGE,this.resource=this.i18n("password"),this.createForm()}createForm(){this.passwordPolicyService.getHelpText().subscribe(t=>{this.passwordPolicyHelpText=t}),this.userForm=this.formBuilder.group({oldpassword:[null,[K.B.required,qs.a.custom("notmatch",()=>this.userForm&&this.userForm.getValue("newpassword")===this.userForm.getValue("oldpassword"))]],newpassword:[null,[K.B.required,qs.a.custom("notmatch",()=>this.userForm&&this.userForm.getValue("oldpassword")===this.userForm.getValue("newpassword"))],[qs.a.passwordPolicy(this.userService,()=>this.authStorageService.getUsername(),(t,e,n)=>{this.passwordStrengthLevelClass=this.passwordPolicyService.mapCreditsToCssClass(e),this.passwordValuation=X.defaultTo(n,"")})]],confirmnewpassword:[null,[K.B.required]]},{validators:[qs.a.match("newpassword","confirmnewpassword")]})}onSubmit(){if(this.userForm.pristine)return;const t=this.authStorageService.getUsername(),e=this.userForm.getValue("oldpassword"),n=this.userForm.getValue("newpassword");this.userService.changePassword(t,e,n).subscribe(()=>this.onPasswordChange(),()=>{this.userForm.setErrors({cdSubmitButton:!0})})}onPasswordChange(){this.notificationService.show(le.a.success,this.i18n('Updated user password"')),this.router.navigate(["/login"])}}var zg=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Yg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Hg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The old and new passwords must be different."]))],null,null)}function Ug(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-helper",[["class","text-pre-wrap"]],null,null,null,qu.b,qu.a)),s["ɵdid"](1,49152,null,0,ju.a,[],{class:[0,"class"],html:[1,"html"]},null)],(function(t,e){t(e,1,0,"text-pre-wrap",s["ɵinlineInterpolate"](1,"",e.component.passwordPolicyHelpText,""))}),null)}function Wg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Kg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The old and new passwords must be different."]))],null,null)}function $g(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.passwordValuation)}))}function Zg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Jg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Password confirmation doesn't match the new password."]))],null,null)}function Qg(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Ps.a,[]),(t()(),s["ɵeld"](2,0,null,null,96,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,95,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,5).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,5).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit()&&a),a}),null,null)),s["ɵdid"](4,16384,null,0,K.G,[],null,null),s["ɵdid"](5,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](7,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](8,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](9,0,null,null,89,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](11,null,[""," ",""])),s["ɵppd"](12,1),s["ɵppd"](13,1),(t()(),s["ɵeld"](14,0,null,null,77,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](16,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](19,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","oldpassword"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Old password"])),(t()(),s["ɵeld"](21,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,12,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](23,0,null,null,8,"input",[["autocomplete","new-password"],["autofocus",""],["class","form-control"],["formControlName","oldpassword"],["id","oldpassword"],["placeholder","Old password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,24)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,24).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,24)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,24)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](24,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](26,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](28,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](29,4210688,null,0,As.a,[s.ElementRef],{autofocus:[0,"autofocus"]},null),s["ɵdid"](30,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](31,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](32,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](33,0,null,null,1,"button",[["cdPasswordButton","oldpassword"],["class","btn btn-light"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,34).onClick()&&a),a}),null,null)),s["ɵdid"](34,81920,null,0,Fu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yg)),s["ɵdid"](36,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hg)),s["ɵdid"](38,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](39,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](40,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](43,0,null,0,4,"label",[["class","cd-col-form-label"],["for","newpassword"]],null,null,null,null,null)),(t()(),s["ɵeld"](44,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["New password"])),(t()(),s["ɵand"](16777216,null,null,1,null,Ug)),s["ɵdid"](47,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](48,0,null,0,20,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](49,0,null,null,11,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](50,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","newpassword"],["id","newpassword"],["placeholder","Password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,51)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,51).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,51)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,51)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](51,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](53,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](55,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](56,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](57,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](58,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](59,0,null,null,1,"button",[["cdPasswordButton","newpassword"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,60).onClick()&&a),a}),null,null)),s["ɵdid"](60,81920,null,0,Fu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵeld"](61,0,null,null,1,"div",[["class","password-strength-level"]],null,null,null,null,null)),(t()(),s["ɵeld"](62,0,null,null,0,"div",[["data-toggle","tooltip"]],[[8,"className",0],[8,"title",0]],null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Wg)),s["ɵdid"](64,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Kg)),s["ɵdid"](66,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$g)),s["ɵdid"](68,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](69,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](70,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](73,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","confirmnewpassword"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Confirm new password"])),(t()(),s["ɵeld"](75,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](76,0,null,null,11,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](77,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","confirmnewpassword"],["id","confirmnewpassword"],["placeholder","Confirm new password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,78)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,78).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,78)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,78)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](78,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](80,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](82,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](83,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](84,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](85,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](86,0,null,null,1,"button",[["cdPasswordButton","confirmnewpassword"],["class","btn btn-light"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,87).onClick()&&a),a}),null,null)),s["ɵdid"](87,81920,null,0,Fu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Zg)),s["ɵdid"](89,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Jg)),s["ɵdid"](91,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](92,0,null,null,6,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](93,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](94,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),ks.b,ks.a)),s["ɵdid"](95,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](96,0,[" "," "," "])),s["ɵppd"](97,1),s["ɵppd"](98,1)],(function(t,e){var n=e.component;t(e,5,0,n.userForm),t(e,8,0,n.userForm),t(e,16,0),t(e,26,0,"oldpassword"),t(e,29,0,""),t(e,31,0,"oldpassword"),t(e,34,0,"oldpassword"),t(e,36,0,n.userForm.showError("oldpassword",s["ɵnov"](e,5),"required")),t(e,38,0,n.userForm.showError("oldpassword",s["ɵnov"](e,5),"notmatch")),t(e,40,0),t(e,47,0,n.passwordPolicyHelpText.length>0),t(e,53,0,"newpassword"),t(e,57,0,"newpassword"),t(e,60,0,"newpassword"),t(e,64,0,n.userForm.showError("newpassword",s["ɵnov"](e,5),"required")),t(e,66,0,n.userForm.showError("newpassword",s["ɵnov"](e,5),"notmatch")),t(e,68,0,n.userForm.showError("newpassword",s["ɵnov"](e,5),"passwordPolicy")),t(e,70,0),t(e,80,0,"confirmnewpassword"),t(e,84,0,"confirmnewpassword"),t(e,87,0,"confirmnewpassword"),t(e,89,0,n.userForm.showError("confirmnewpassword",s["ɵnov"](e,5),"required")),t(e,91,0,n.userForm.showError("confirmnewpassword",s["ɵnov"](e,5),"match")),t(e,95,0,n.userForm)}),(function(t,e){var n=e.component;t(e,3,0,s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending);var a=s["ɵunv"](e,11,0,t(e,12,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,11,1,t(e,13,0,s["ɵnov"](e,1),n.resource));t(e,11,0,a,r),t(e,15,0,s["ɵnov"](e,16).hasErrors,s["ɵnov"](e,16).hasSuccess),t(e,23,0,s["ɵnov"](e,28).ngClassUntouched,s["ɵnov"](e,28).ngClassTouched,s["ɵnov"](e,28).ngClassPristine,s["ɵnov"](e,28).ngClassDirty,s["ɵnov"](e,28).ngClassValid,s["ɵnov"](e,28).ngClassInvalid,s["ɵnov"](e,28).ngClassPending,s["ɵnov"](e,31).validClass,s["ɵnov"](e,31).invalidClass),t(e,39,0,s["ɵnov"](e,40).hasErrors,s["ɵnov"](e,40).hasSuccess),t(e,50,0,s["ɵnov"](e,55).ngClassUntouched,s["ɵnov"](e,55).ngClassTouched,s["ɵnov"](e,55).ngClassPristine,s["ɵnov"](e,55).ngClassDirty,s["ɵnov"](e,55).ngClassValid,s["ɵnov"](e,55).ngClassInvalid,s["ɵnov"](e,55).ngClassPending,s["ɵnov"](e,57).validClass,s["ɵnov"](e,57).invalidClass),t(e,62,0,s["ɵinlineInterpolate"](1,"",n.passwordStrengthLevelClass,""),s["ɵinlineInterpolate"](1,"",n.passwordValuation,"")),t(e,69,0,s["ɵnov"](e,70).hasErrors,s["ɵnov"](e,70).hasSuccess),t(e,77,0,s["ɵnov"](e,82).ngClassUntouched,s["ɵnov"](e,82).ngClassTouched,s["ɵnov"](e,82).ngClassPristine,s["ɵnov"](e,82).ngClassDirty,s["ɵnov"](e,82).ngClassValid,s["ɵnov"](e,82).ngClassInvalid,s["ɵnov"](e,82).ngClassPending,s["ɵnov"](e,84).validClass,s["ɵnov"](e,84).invalidClass);var i=s["ɵunv"](e,96,0,t(e,97,0,s["ɵnov"](e,0),n.action)),u=s["ɵunv"](e,96,1,t(e,98,0,s["ɵnov"](e,1),n.resource));t(e,96,0,i,u)}))}function Xg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-user-password-form",[],null,null,null,Qg,zg)),s["ɵdid"](1,49152,null,0,Bg,[fe.a,St.b,bt.a,Ot.a,J.a,zu.a,Et.m,Gg.a],null,null)],null,null)}var tp=s["ɵccf"]("cd-user-password-form",Bg,Xg,{},{},[]);class ep{constructor(t,e){this.route=t,this.i18n=e,this.message=this.i18n("The NFS Ganesha service is not configured.")}ngOnInit(){this.routeParamsSubscribe=this.route.params.subscribe(t=>{this.message=t.message})}ngOnDestroy(){this.routeParamsSubscribe.unsubscribe()}}var np=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ap(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"cd-alert-panel",[["type","info"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](2,0,[" ",""])),(t()(),s["ɵeld"](3,0,null,0,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,0,4,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Please consult the "])),(t()(),s["ɵeld"](6,0,null,null,1,"cd-doc",[["section","nfs-ganesha"]],null,null,null,qr.b,qr.a)),s["ɵdid"](7,114688,null,0,jr.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,null,[" on how to configure and enable the NFS Ganesha management functionality."]))],(function(t,e){t(e,1,0,"info"),t(e,7,0,"nfs-ganesha")}),(function(t,e){t(e,2,0,e.component.message)}))}function rp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-nfs-501",[],null,null,null,ap,np)),s["ɵdid"](1,245760,null,0,ep,[Et.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var ip=s["ɵccf"]("cd-nfs-501",ep,rp,{},{},[]);class sp{constructor(t){this.i18n=t,this.clients=[],this.clientsColumns=[{name:this.i18n("Addresses"),prop:"addresses",flexGrow:2},{name:this.i18n("Access Type"),prop:"access_type",flexGrow:1},{name:this.i18n("Squash"),prop:"squash",flexGrow:1}]}ngOnChanges(){this.selection&&(this.selectedItem=this.selection,this.clients=this.selectedItem.clients,this.data={},this.data[this.i18n("Cluster")]=this.selectedItem.cluster_id,this.data[this.i18n("Daemons")]=this.selectedItem.daemons,this.data[this.i18n("NFS Protocol")]=this.selectedItem.protocols.map(t=>"NFSv"+t),this.data[this.i18n("Pseudo")]=this.selectedItem.pseudo,this.data[this.i18n("Access Type")]=this.selectedItem.access_type,this.data[this.i18n("Squash")]=this.selectedItem.squash,this.data[this.i18n("Transport")]=this.selectedItem.transports,this.data[this.i18n("Path")]=this.selectedItem.path,"CEPH"===this.selectedItem.fsal.name?(this.data[this.i18n("Storage Backend")]=this.i18n("CephFS"),this.data[this.i18n("CephFS User")]=this.selectedItem.fsal.user_id,this.data[this.i18n("CephFS Filesystem")]=this.selectedItem.fsal.fs_name,this.data[this.i18n("Security Label")]=this.selectedItem.fsal.sec_label_xattr):(this.data[this.i18n("Storage Backend")]=this.i18n("Object Gateway"),this.data[this.i18n("Object Gateway User")]=this.selectedItem.fsal.rgw_user_id))}}var up=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function op(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"tabset",[],[[2,"tab-container",null]],null,null,ea.b,ea.a)),s["ɵdid"](1,180224,null,0,na.e,[na.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-table-key-value",[],null,null,null,fi.b,fi.a)),s["ɵdid"](5,638976,null,0,hi.a,[xe.a],{data:[0,"data"]},null),(t()(),s["ɵeld"](6,0,null,0,3,"tab",[],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](7,212992,null,0,na.b,[na.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](8,0,null,null,1,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","addresses"],["selectionType",""]],null,null,null,kr.b,kr.a)),s["ɵdid"](9,2867200,[["table",4]],0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],identifier:[3,"identifier"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Details"),t(e,5,0,n.data),t(e,7,0,s["ɵinlineInterpolate"](1,"Clients (",n.clients.length,")")),t(e,9,0,n.clients,n.clientsColumns,"flex","addresses","true","")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,6,0,s["ɵnov"](e,7).id,s["ɵnov"](e,7).active,s["ɵnov"](e,7).addClass,s["ɵnov"](e,7).role,s["ɵnov"](e,7).ariaLabelledby)}))}function lp(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,op)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.selection)}),null)}var dp=n("VTlA");let cp=(()=>{class t{constructor(t,e){this.http=t,this.i18n=e,this.apiPath="api/nfs-ganesha",this.uiApiPath="ui-api/nfs-ganesha",this.nfsAccessType=[{value:"RW",help:this.i18n("Allows all operations")},{value:"RO",help:this.i18n("Allows only operations that do not modify the server")},{value:"MDONLY",help:this.i18n("Does not allow read or write operations, but allows any other operation")},{value:"MDONLY_RO",help:this.i18n("Does not allow read, write, or any operation that modifies file        attributes or directory content")},{value:"NONE",help:this.i18n("Allows no access at all")}],this.nfsFsal=[{value:"CEPH",descr:this.i18n("CephFS")},{value:"RGW",descr:this.i18n("Object Gateway")}],this.nfsSquash=["no_root_squash","root_id_squash","root_squash","all_squash"]}list(){return this.http.get(this.apiPath+"/export")}get(t,e){return this.http.get(`${this.apiPath}/export/${t}/${e}`)}create(t){return this.http.post(this.apiPath+"/export",t,{observe:"response"})}update(t,e,n){return this.http.put(`${this.apiPath}/export/${t}/${e}`,n,{observe:"response"})}delete(t,e){return this.http.delete(`${this.apiPath}/export/${t}/${e}`,{observe:"response"})}lsDir(t,e){return this.http.get(`${this.uiApiPath}/lsdir/${t}?root_dir=${e}`)}buckets(t){return this.http.get(`${this.uiApiPath}/rgw/buckets?user_id=${t}`)}clients(){return this.http.get(this.uiApiPath+"/cephx/clients")}fsals(){return this.http.get(this.uiApiPath+"/fsals")}filesystems(){return this.http.get(this.uiApiPath+"/cephfs/filesystems")}daemon(){return this.http.get(this.apiPath+"/daemon")}start(t){return this.http.put(`${this.apiPath}/service/${t}/start`,null,{observe:"response"})}stop(t){return this.http.put(`${this.apiPath}/service/${t}/stop`,null,{observe:"response"})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](fe.a))},token:t,providedIn:ue.a}),t})();class fp extends ls.a{constructor(t,e,n,a,r,i,s){super(),this.authStorageService=t,this.i18n=e,this.modalService=n,this.nfsService=a,this.taskListService=r,this.taskWrapper=i,this.actionLabels=s,this.selection=new Hr.a,this.isDefaultCluster=!1,this.builders={"nfs/create":t=>({path:t.path,cluster_id:t.cluster_id,fsal:t.fsal})},this.permission=this.authStorageService.getPermissions().nfs;const u=()=>this.selection.first()&&`${encodeURI(this.selection.first().cluster_id)}/${encodeURI(this.selection.first().export_id)}`;this.tableActions=[{permission:"create",icon:pt.a.add,routerLink:()=>"/nfs/create",canBePrimary:t=>!t.hasSingleSelection,name:this.actionLabels.CREATE},{permission:"update",icon:pt.a.edit,routerLink:()=>"/nfs/edit/"+u(),name:this.actionLabels.EDIT},{permission:"delete",icon:pt.a.destroy,click:()=>this.deleteNfsModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:this.i18n("Path"),prop:"path",flexGrow:2,cellTransformation:Yr.a.executing},{name:this.i18n("Pseudo"),prop:"pseudo",flexGrow:2},{name:this.i18n("Cluster"),prop:"cluster_id",flexGrow:2},{name:this.i18n("Daemons"),prop:"daemons",flexGrow:2},{name:this.i18n("Storage Backend"),prop:"fsal",flexGrow:2,cellTemplate:this.nfsFsal},{name:this.i18n("Access Type"),prop:"access_type",flexGrow:2}],this.nfsService.daemon().subscribe(t=>{const e=X(t).map(t=>t.cluster_id).uniq().value();this.isDefaultCluster=1===e.length&&"_default_"===e[0],this.columns[2].isHidden=this.isDefaultCluster,this.table&&this.table.updateColumns(),this.taskListService.init(()=>this.nfsService.list(),t=>this.prepareResponse(t),t=>this.exports=t,()=>this.onFetchError(),this.taskFilter,this.itemFilter,this.builders)},()=>{this.onFetchError()})}ngOnDestroy(){this.summaryDataSubscription&&this.summaryDataSubscription.unsubscribe()}prepareResponse(t){let e=[];return t.forEach(t=>{t.id=`${t.cluster_id}:${t.export_id}`,t.state="LOADING",e=e.concat(t)}),e}onFetchError(){this.table.reset(),this.viewCacheStatus={status:Cg.a.ValueException}}itemFilter(t,e){return t.cluster_id===e.metadata.cluster_id&&t.export_id===e.metadata.export_id}taskFilter(t){return["nfs/create","nfs/delete","nfs/edit"].includes(t.name)}updateSelection(t){this.selection=t}deleteNfsModal(){const t=this.selection.first().cluster_id,e=this.selection.first().export_id;this.modalRef=this.modalService.show(ds.a,{initialState:{itemDescription:this.i18n("NFS export"),itemNames:[`${t}:${e}`],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new fs.a("nfs/delete",{cluster_id:t,export_id:e}),call:this.nfsService.delete(t,e)})}})}}var hp=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function gp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CephFS"]))],null,null)}function pp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Object Gateway"]))],null,null)}function bp(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,gp)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pp)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,"CEPH"===e.context.value.name),t(e,3,0,"RGW"===e.context.value.name)}),null)}function mp(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{nfsState:0}),s["ɵqud"](402653184,2,{nfsFsal:0}),s["ɵqud"](402653184,3,{table:0}),(t()(),s["ɵeld"](3,0,null,null,6,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","id"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),kr.b,kr.a)),s["ɵdid"](4,2867200,[[3,4],["table",4]],0,Er.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](5,0,null,1,2,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,1,"cd-table-actions",[["class","btn-group"]],null,null,null,Lr.b,Lr.a)),s["ɵdid"](7,114688,null,0,Dr.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](8,0,null,3,1,"cd-nfs-details",[["cdTableDetail",""]],null,null,null,lp,up)),s["ɵdid"](9,573440,null,0,sp,[fe.a],{selection:[0,"selection"]},null),(t()(),s["ɵand"](0,[[2,2],["nfsFsal",2]],null,0,null,bp))],(function(t,e){var n=e.component;t(e,4,0,n.exports,n.columns,"flex",!0,"id","true","single"),t(e,7,0,n.permission,n.selection,n.tableActions),t(e,9,0,n.expandedRow)}),null)}function yp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-nfs-list",[],null,null,null,mp,hp)),s["ɵprd"](131584,null,dp.a,dp.a,[Ee.a,mt.a]),s["ɵdid"](2,245760,null,0,fp,[J.a,fe.a,Ct.b,cp,dp.a,bs.a,St.b],null,null)],(function(t,e){t(e,2,0)}),null)}var vp=s["ɵccf"]("cd-nfs-list",fp,yp,{},{},[]),xp=n("WiuZ"),_p=n("wnGv"),Tp=n("TYzs");class wp{constructor(t,e){this.nfsService=t,this.i18n=e,this.nfsSquash=this.nfsService.nfsSquash,this.nfsAccessType=this.nfsService.nfsAccessType,this.icons=pt.a}getNoAccessTypeDescr(){return this.form.getValue("access_type")?`${this.form.getValue("access_type")} ${this.i18n("(inherited from global config)")}`:this.i18n("-- Select the access type --")}getAccessTypeHelp(t){const e=this.nfsAccessType.find(e=>this.getValue(t,"access_type")===e.value);return X.isObjectLike(e)?e.help:""}getNoSquashDescr(){return this.form.getValue("squash")?`${this.form.getValue("squash")} (${this.i18n("inherited from global config")})`:this.i18n("-- Select what kind of user id squashing is performed --")}addClient(){const t=this.form.get("clients"),e="(([0-9]{1,3})\\.([0-9]{1,3})\\.([0-9]{1,3}).([0-9]{1,3})([/](\\d|[1-2]\\d|3[0-2]))?)",n=new Ms.a({addresses:new K.i("",{validators:[K.B.required,K.B.pattern(`${e}([ ,]{1,2}${e})*`)]}),access_type:new K.i(""),squash:new K.i("")});return t.push(n),n}removeClient(t){this.form.get("clients").removeAt(t)}showError(t,e,n,a){return this.form.controls.clients.controls[t].showError(e,n,a)}getValue(t,e){return this.form.get("clients").at(t).getValue(e)}resolveModel(t){X.forEach(t,t=>{this.addClient().patchValue(t)})}trackByFn(t){return t}}var Op=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Sp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[["class","no-border text-muted"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Any client can access"]))],null,null)}function Ip(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Np(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Must contain one or more comma-separated values"])),(t()(),s["ɵeld"](3,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["For example:"])),(t()(),s["ɵted"](-1,null,[" 192.168.0.10, 192.168.1.0/8 "]))],null,null)}function Cp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.value)}))}function Rp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.getAccessTypeHelp(e.parent.context.index))}))}function Ap(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function kp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,74,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,73,"div",[["class","card"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),s["ɵdid"](2,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](4,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](5,0,null,null,4,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](6,null,[" "," "])),s["ɵppd"](7,1),(t()(),s["ɵeld"](8,0,null,null,1,"span",[["class","float-right clickable"],["tooltip","Remove"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.removeClient(t.context.index)&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["×"])),(t()(),s["ɵeld"](10,0,null,null,64,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](12,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](15,0,null,0,1,"label",[["class","cd-col-form-label"],["for","addresses"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Addresses"])),(t()(),s["ɵeld"](17,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,7,"input",[["class","form-control"],["formControlName","addresses"],["id","addresses"],["name","addresses"],["placeholder","192.168.0.10, 192.168.1.0/8"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,19)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,19).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,19)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,19)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](19,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](21,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](23,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](24,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](25,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](26,0,null,null,4,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Ip)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Np)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](31,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](32,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](35,0,null,0,1,"label",[["class","cd-col-form-label"],["for","access_type"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Access Type"])),(t()(),s["ɵeld"](37,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](38,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","access_type"],["id","access_type"],["name","access_type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,39).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,39).onTouched()&&a),a}),null,null)),s["ɵdid"](39,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](41,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](43,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](44,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](45,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](46,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](47,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](48,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](49,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Cp)),s["ɵdid"](51,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Rp)),s["ɵdid"](53,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](54,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](55,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](58,0,null,0,1,"label",[["class","cd-col-form-label"],["for","squash"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Squash"])),(t()(),s["ɵeld"](60,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](61,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","squash"],["id","squash"],["name","squash"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,62).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,62).onTouched()&&a),a}),null,null)),s["ɵdid"](62,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](64,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](66,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](67,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](68,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](69,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](70,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](71,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](72,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Ap)),s["ɵdid"](74,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,2,0,e.context.index),t(e,12,0),t(e,21,0,"addresses"),t(e,25,0,"addresses"),t(e,28,0,n.showError(e.context.index,"addresses",s["ɵnov"](e.parent,8),"required")),t(e,30,0,n.showError(e.context.index,"addresses",s["ɵnov"](e.parent,8),"pattern")),t(e,32,0),t(e,41,0,"access_type"),t(e,45,0,"access_type"),t(e,47,0,""),t(e,48,0,""),t(e,51,0,n.nfsAccessType),t(e,53,0,n.getValue(e.context.index,"access_type")),t(e,55,0),t(e,64,0,"squash"),t(e,68,0,"squash"),t(e,70,0,""),t(e,71,0,""),t(e,74,0,n.nfsSquash)}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,4).ngClassUntouched,s["ɵnov"](e,4).ngClassTouched,s["ɵnov"](e,4).ngClassPristine,s["ɵnov"](e,4).ngClassDirty,s["ɵnov"](e,4).ngClassValid,s["ɵnov"](e,4).ngClassInvalid,s["ɵnov"](e,4).ngClassPending);var a=s["ɵunv"](e,6,0,t(e,7,0,s["ɵnov"](e.parent,0),e.context.index+1));t(e,6,0,a),t(e,11,0,s["ɵnov"](e,12).hasErrors,s["ɵnov"](e,12).hasSuccess),t(e,18,0,s["ɵnov"](e,23).ngClassUntouched,s["ɵnov"](e,23).ngClassTouched,s["ɵnov"](e,23).ngClassPristine,s["ɵnov"](e,23).ngClassDirty,s["ɵnov"](e,23).ngClassValid,s["ɵnov"](e,23).ngClassInvalid,s["ɵnov"](e,23).ngClassPending,s["ɵnov"](e,25).validClass,s["ɵnov"](e,25).invalidClass),t(e,31,0,s["ɵnov"](e,32).hasErrors,s["ɵnov"](e,32).hasSuccess),t(e,38,0,s["ɵnov"](e,43).ngClassUntouched,s["ɵnov"](e,43).ngClassTouched,s["ɵnov"](e,43).ngClassPristine,s["ɵnov"](e,43).ngClassDirty,s["ɵnov"](e,43).ngClassValid,s["ɵnov"](e,43).ngClassInvalid,s["ɵnov"](e,43).ngClassPending,s["ɵnov"](e,45).validClass,s["ɵnov"](e,45).invalidClass),t(e,49,0,n.getNoAccessTypeDescr()),t(e,54,0,s["ɵnov"](e,55).hasErrors,s["ɵnov"](e,55).hasSuccess),t(e,61,0,s["ɵnov"](e,66).ngClassUntouched,s["ɵnov"](e,66).ngClassTouched,s["ɵnov"](e,66).ngClassPristine,s["ɵnov"](e,66).ngClassDirty,s["ɵnov"](e,66).ngClassValid,s["ɵnov"](e,66).ngClassInvalid,s["ɵnov"](e,66).ngClassPending,s["ɵnov"](e,68).validClass,s["ɵnov"](e,68).invalidClass),t(e,72,0,n.getNoSquashDescr())}))}function Ep(t){return s["ɵvid"](0,[s["ɵpid"](0,Tp.a,[]),(t()(),s["ɵeld"](1,0,null,null,28,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clients"])),(t()(),s["ɵeld"](7,0,null,0,22,"div",[["class","cd-col-form-input"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,8).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,11).onSubmit()&&a),a}),null,null)),s["ɵdid"](8,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](10,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](11,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Sp)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](14,0,null,null,5,null,null,null,null,null,null,null)),s["ɵdid"](15,212992,null,0,K.g,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.g]),s["ɵdid"](17,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,kp)),s["ɵdid"](19,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),s["ɵeld"](20,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](21,0,null,null,8,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,7,"div",[["class","float-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](23,0,null,null,6,"button",[["class","btn btn-light "]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.addClient()&&a),a}),null,null)),(t()(),s["ɵeld"](24,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](26,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](27,1),(t()(),s["ɵeld"](28,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add clients"]))],(function(t,e){var n=e.component;t(e,2,0),t(e,8,0,n.form),t(e,11,0,n.form),t(e,13,0,0===n.form.get("clients").value.length),t(e,15,0,"clients"),t(e,19,0,n.form.get("clients").value,n.trackByFn);var a=t(e,27,0,n.icons.add);t(e,26,0,a)}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,7,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending)}))}var Lp=n("P8lu"),Dp=function(t){return t.user="user",t.orchestrator="orchestrator",t}({});class Pp{constructor(t,e,n,a,r,i,s,u,o,l){this.authStorageService=t,this.nfsService=e,this.route=n,this.router=a,this.rgwUserService=r,this.formBuilder=i,this.taskWrapper=s,this.cdRef=u,this.i18n=o,this.actionLabels=l,this.isEdit=!1,this.cluster_id=null,this.clusterType=null,this.export_id=null,this.isNewDirectory=!1,this.isNewBucket=!1,this.isDefaultCluster=!1,this.allClusters=null,this.allDaemons={},this.icons=pt.a,this.allFsals=[],this.allRgwUsers=[],this.allCephxClients=null,this.allFsNames=null,this.defaultAccessType={RGW:"RO"},this.nfsAccessType=this.nfsService.nfsAccessType,this.nfsSquash=this.nfsService.nfsSquash,this.daemonsSelections=[],this.daemonsMessages=new cs.a({noOptions:this.i18n("There are no daemons available.")},this.i18n),this.pathDataSource=In.a.create(t=>{t.next(this.nfsForm.getValue("path"))}).pipe(Object(Rn.a)(t=>this.getPathTypeahead(t)),Object(Ne.a)(t=>t.paths)),this.bucketDataSource=In.a.create(t=>{t.next(this.nfsForm.getValue("path"))}).pipe(Object(Rn.a)(t=>this.getBucketTypeahead(t))),this.permission=this.authStorageService.getPermissions().pool,this.resource=this.i18n("NFS export"),this.createForm()}ngOnInit(){const t=[this.nfsService.daemon(),this.nfsService.fsals(),this.nfsService.clients(),this.nfsService.filesystems()];this.router.url.startsWith("/nfs/edit")&&(this.isEdit=!0),this.isEdit?(this.action=this.actionLabels.EDIT,this.route.params.subscribe(e=>{this.cluster_id=decodeURIComponent(e.cluster_id),this.export_id=decodeURIComponent(e.export_id),t.push(this.nfsService.get(this.cluster_id,this.export_id)),this.getData(t)}),this.nfsForm.get("cluster_id").disable()):(this.action=this.actionLabels.CREATE,this.getData(t))}getData(t){Object(rl.a)(t).subscribe(t=>{this.resolveDaemons(t[0]),this.resolvefsals(t[1]),this.resolveClients(t[2]),this.resolveFilesystems(t[3]),t[4]&&this.resolveModel(t[4])})}createForm(){this.nfsForm=new Ms.a({cluster_id:new K.i("",{validators:[K.B.required]}),daemons:new K.i([]),fsal:new Ms.a({name:new K.i("",{validators:[K.B.required]}),user_id:new K.i("",{validators:[qs.a.requiredIf({name:"CEPH"})]}),fs_name:new K.i("",{validators:[qs.a.requiredIf({name:"CEPH"})]}),rgw_user_id:new K.i("",{validators:[qs.a.requiredIf({name:"RGW"})]})}),path:new K.i(""),protocolNfsv3:new K.i(!0,{validators:[qs.a.requiredIf({protocolNfsv4:!1},t=>!t)]}),protocolNfsv4:new K.i(!0,{validators:[qs.a.requiredIf({protocolNfsv3:!1},t=>!t)]}),tag:new K.i(""),pseudo:new K.i("",{validators:[qs.a.requiredIf({protocolNfsv4:!0}),K.B.pattern("^/[^><|&()]*$")]}),access_type:new K.i("RW",{validators:[K.B.required]}),squash:new K.i("",{validators:[K.B.required]}),transportUDP:new K.i(!0,{validators:[qs.a.requiredIf({transportTCP:!1},t=>!t)]}),transportTCP:new K.i(!0,{validators:[qs.a.requiredIf({transportUDP:!1},t=>!t)]}),clients:this.formBuilder.array([]),security_label:new K.i(!1),sec_label_xattr:new K.i("security.selinux",qs.a.requiredIf({security_label:!0,"fsal.name":"CEPH"}))})}resolveModel(t){"CEPH"===t.fsal.name&&(t.sec_label_xattr=t.fsal.sec_label_xattr),this.clusterType===Dp.user&&(this.daemonsSelections=X.map(this.allDaemons[t.cluster_id],e=>new Bu.a(-1!==t.daemons.indexOf(e),e,"")),this.daemonsSelections=[...this.daemonsSelections]),t.protocolNfsv3=-1!==t.protocols.indexOf(3),t.protocolNfsv4=-1!==t.protocols.indexOf(4),delete t.protocols,t.transportTCP=-1!==t.transports.indexOf("TCP"),t.transportUDP=-1!==t.transports.indexOf("UDP"),delete t.transports,t.clients.forEach(t=>{let e="";t.addresses.forEach(t=>{e+=t+", "}),e.length>=2&&(e=e.substring(0,e.length-2)),t.addresses=e}),this.nfsForm.patchValue(t),this.setPathValidation(),this.nfsClients.resolveModel(t.clients)}resolveDaemons(t){t=X.sortBy(t,["daemon_id"]);const e=X.groupBy(t,"cluster_id");if(this.allClusters=[],X.forIn(e,(t,e)=>{this.allClusters.push({cluster_id:e,cluster_type:t[0].cluster_type}),this.allDaemons[e]=[]}),X.forEach(t,t=>{this.allDaemons[t.cluster_id].push(t.daemon_id)}),this.isEdit){const t=X.find(this.allClusters,{cluster_id:this.cluster_id});this.clusterType=t?t.cluster_type:null}const n=X.isArray(this.allClusters)&&1===this.allClusters.length;this.isDefaultCluster=n&&"_default_"===this.allClusters[0].cluster_id,n&&(this.nfsForm.patchValue({cluster_id:this.allClusters[0].cluster_id}),this.onClusterChange())}resolvefsals(t){t.forEach(t=>{const e=this.nfsService.nfsFsal.find(e=>t===e.value);X.isObjectLike(e)&&(this.allFsals.push(e),"RGW"===e.value&&this.rgwUserService.list().subscribe(t=>{t.forEach(t=>{0===t.suspended&&t.keys.length>0&&this.allRgwUsers.push(t.user_id)})}))}),1===this.allFsals.length&&X.isUndefined(this.nfsForm.getValue("fsal"))&&this.nfsForm.patchValue({fsal:this.allFsals[0]})}resolveClients(t){this.allCephxClients=t}resolveFilesystems(t){this.allFsNames=t,1===t.length&&this.nfsForm.patchValue({fsal:{fs_name:t[0].name}})}fsalChangeHandler(){this.nfsForm.patchValue({tag:this._generateTag(),pseudo:this._generatePseudo(),access_type:this._updateAccessType()}),this.setPathValidation(),this.cdRef.detectChanges()}accessTypeChangeHandler(){const t=this.nfsForm.getValue("name"),e=this.nfsForm.getValue("access_type");this.defaultAccessType[t]=e}setPathValidation(){"RGW"===this.nfsForm.getValue("name")?this.nfsForm.get("path").setValidators([K.B.required,K.B.pattern("^(/|[^/><|&()#?]+)$")]):this.nfsForm.get("path").setValidators([K.B.required,K.B.pattern("^/[^><|&()?]*$")])}rgwUserIdChangeHandler(){this.nfsForm.patchValue({pseudo:this._generatePseudo()})}getAccessTypeHelp(t){const e=this.nfsAccessType.find(e=>{if(t===e.value)return e});return X.isObjectLike(e)?e.help:""}getId(){return X.isString(this.nfsForm.getValue("cluster_id"))&&X.isString(this.nfsForm.getValue("path"))?this.nfsForm.getValue("cluster_id")+":"+this.nfsForm.getValue("path"):""}getPathTypeahead(t){if(!X.isString(t)||"/"===t)return Object(Sn.a)([]);const e=this.nfsForm.getValue("fsal").fs_name;return this.nfsService.lsDir(e,t)}pathChangeHandler(){this.nfsForm.patchValue({pseudo:this._generatePseudo()});const t=this.nfsForm.getValue("path");this.getPathTypeahead(t).subscribe(e=>{this.isNewDirectory="/"!==t&&-1===e.paths.indexOf(t)})}bucketChangeHandler(){this.nfsForm.patchValue({tag:this._generateTag(),pseudo:this._generatePseudo()});const t=this.nfsForm.getValue("path");this.getBucketTypeahead(t).subscribe(e=>{this.isNewBucket=""!==t&&-1===e.indexOf(t)})}getBucketTypeahead(t){const e=this.nfsForm.getValue("rgw_user_id");return X.isString(e)&&X.isString(t)&&"/"!==t&&""!==t?this.nfsService.buckets(e):Object(Sn.a)([])}_generateTag(){let t=this.nfsForm.getValue("tag");return this.nfsForm.get("tag").dirty||(t=void 0,"RGW"===this.nfsForm.getValue("fsal")&&(t=this.nfsForm.getValue("path"))),t}_generatePseudo(){let t=this.nfsForm.getValue("pseudo");return this.nfsForm.get("pseudo")&&!this.nfsForm.get("pseudo").dirty&&(t=void 0,"CEPH"===this.nfsForm.getValue("fsal")?(t="/cephfs",X.isString(this.nfsForm.getValue("path"))&&(t+=this.nfsForm.getValue("path"))):"RGW"===this.nfsForm.getValue("fsal")&&X.isString(this.nfsForm.getValue("rgw_user_id"))&&(t="/"+this.nfsForm.getValue("rgw_user_id"),X.isString(this.nfsForm.getValue("path"))&&(t+="/"+this.nfsForm.getValue("path")))),t}_updateAccessType(){const t=this.nfsForm.getValue("name");let e=this.defaultAccessType[t];return e||(e="RW"),e}onClusterChange(){const t=this.nfsForm.getValue("cluster_id"),e=X.find(this.allClusters,{cluster_id:t});this.clusterType=e?e.cluster_type:null,this.clusterType===Dp.user?(this.daemonsSelections=X.map(this.allDaemons[t],t=>new Bu.a(!1,t,"")),this.daemonsSelections=[...this.daemonsSelections]):this.daemonsSelections=[],this.nfsForm.patchValue({daemons:[]})}removeDaemon(t,e){this.daemonsSelections.forEach(t=>{t.name===e&&(t.selected=!1)});const n=this.nfsForm.get("daemons");return n.value.splice(t,1),n.setValue(n.value),!1}onDaemonSelection(){this.nfsForm.get("daemons").setValue(this.nfsForm.getValue("daemons"))}onToggleAllDaemonsSelection(){const t=this.nfsForm.getValue("cluster_id"),e=0===this.nfsForm.getValue("daemons").length?this.allDaemons[t]:[];this.nfsForm.patchValue({daemons:e})}submitAction(){let t;const e=this._buildRequest();t=this.taskWrapper.wrapTaskAroundCall(this.isEdit?{task:new fs.a("nfs/edit",{cluster_id:this.cluster_id,export_id:this.export_id}),call:this.nfsService.update(this.cluster_id,this.export_id,e)}:{task:new fs.a("nfs/create",{path:e.path,fsal:e.fsal,cluster_id:e.cluster_id}),call:this.nfsService.create(e)}),t.subscribe(void 0,()=>this.nfsForm.setErrors({cdSubmitButton:!0}),()=>this.router.navigate(["/nfs"]))}_buildRequest(){const t=X.cloneDeep(this.nfsForm.value);return(X.isUndefined(t.tag)||""===t.tag)&&(t.tag=null),this.isEdit&&(t.export_id=this.export_id),"CEPH"===t.fsal.name?delete t.fsal.rgw_user_id:(delete t.fsal.fs_name,delete t.fsal.user_id),t.protocols=[],t.protocolNfsv3?t.protocols.push(3):t.tag=null,delete t.protocolNfsv3,t.protocolNfsv4?t.protocols.push(4):t.pseudo=null,delete t.protocolNfsv4,t.transports=[],t.transportTCP&&t.transports.push("TCP"),delete t.transportTCP,t.transportUDP&&t.transports.push("UDP"),delete t.transportUDP,t.clients.forEach(e=>{e.addresses=X.isString(e.addresses)?X(e.addresses).split(/[ ,]+/).uniq().filter(t=>""!==t).value():[],e.squash||(e.squash=t.squash),e.access_type||(e.access_type=t.access_type)}),t.fsal.sec_label_xattr=!1===t.security_label||"RGW"===t.fsal.name?null:t.sec_label_xattr,delete t.sec_label_xattr,t}}var Mp=s["ɵcrt"]({encapsulation:0,styles:[[".cd-mb[_ngcontent-%COMP%]{margin-bottom:10px}"]],data:{}});function qp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function jp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No cluster available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Fp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the cluster --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Vp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.cluster_id),t(e,2,0,e.context.$implicit.cluster_id)}),(function(t,e){t(e,3,0,e.context.$implicit.cluster_id)}))}function Gp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Bp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,2,{FormControlNames:1}),s["ɵqud"](603979776,3,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","cluster_id"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster"])),(t()(),s["ɵeld"](6,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","cluster_id"],["id","cluster_id"],["name","cluster_id"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,8).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"change"===e&&(a=!1!==r.onClusterChange()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](10,671744,[[2,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,qp)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,jp)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fp)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vp)),s["ɵdid"](22,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gp)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"cluster_id"),t(e,14,0,"cluster_id"),t(e,16,0,null===n.allClusters),t(e,18,0,null!==n.allClusters&&0===n.allClusters.length),t(e,20,0,null!==n.allClusters&&n.allClusters.length>0),t(e,22,0,n.allClusters),t(e,24,0,n.nfsForm.showError("cluster_id",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function zp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.removeDaemon(t.parent.context.index,t.parent.context.$implicit)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1)],(function(t,e){var n=t(e,5,0,e.component.icons.destroy);t(e,4,0,n)}),null)}function Yp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),s["ɵdid"](3,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,zp)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,5,0,"user"===e.component.clusterType)}),(function(t,e){t(e,2,0,e.context.$implicit)}))}function Hp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,[[null,"selection"]],(function(t,e,n){var a=!0;return"selection"===e&&(a=!1!==t.component.onDaemonSelection()&&a),a}),xp.b,xp.a)),s["ɵdid"](3,638976,null,0,_p.a,[fe.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},{selection:"selection"}),(t()(),s["ɵeld"](4,0,null,0,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,1),(t()(),s["ɵeld"](8,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add daemon"]))],(function(t,e){var n=e.component;t(e,3,0,"btn btn-light float-right",n.nfsForm.get("daemons").value,n.daemonsSelections,n.daemonsMessages);var a=t(e,7,0,n.icons.add);t(e,6,0,a)}),null)}function Up(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add all daemons"]))],null,null)}function Wp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Remove all daemons"]))],null,null)}function Kp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,7,"button",[["class","btn btn-light float-right"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onToggleAllDaemonsSelection()&&a),a}),null,null)),(t()(),s["ɵeld"](3,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](5,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](6,1),(t()(),s["ɵand"](16777216,null,null,1,null,Up)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["hasDaemons",2]],null,0,null,Wp))],(function(t,e){var n=e.component,a=t(e,6,0,n.icons.add);t(e,5,0,a),t(e,8,0,0===n.nfsForm.getValue("daemons").length,s["ɵnov"](e,9))}),null)}function $p(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,13,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,4,{FormControlNames:1}),s["ɵqud"](603979776,5,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,2,"label",[["class","cd-col-form-label"],["for","daemons"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Daemons"])),(t()(),s["ɵeld"](7,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Yp)),s["ɵdid"](9,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hp)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Kp)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,9,0,n.nfsForm.getValue("daemons")),t(e,11,0,"user"===n.clusterType),t(e,13,0,"orchestrator"===n.clusterType)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess)}))}function Zp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Jp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No data pools available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Qp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the storage backend --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Xp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.descr)}))}function tb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function eb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function nb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No users available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function ab(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the object gateway user --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function rb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function ib(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function sb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,8,{FormControlNames:1}),s["ɵqud"](603979776,9,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","rgw_user_id"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Object Gateway User"])),(t()(),s["ɵeld"](6,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","rgw_user_id"],["id","rgw_user_id"],["name","rgw_user_id"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,8).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"change"===e&&(a=!1!==r.rgwUserIdChangeHandler()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](10,671744,[[8,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,eb)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,nb)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ab)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rb)),s["ɵdid"](22,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ib)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"rgw_user_id"),t(e,14,0,"rgw_user_id"),t(e,16,0,null===n.allRgwUsers),t(e,18,0,null!==n.allRgwUsers&&0===n.allRgwUsers.length),t(e,20,0,null!==n.allRgwUsers&&n.allRgwUsers.length>0),t(e,22,0,n.allRgwUsers),t(e,24,0,n.nfsForm.showError("rgw_user_id",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function ub(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function ob(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No clients available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function lb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the cephx client --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function db(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function cb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function fb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,10,{FormControlNames:1}),s["ɵqud"](603979776,11,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","user_id"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CephFS User ID"])),(t()(),s["ɵeld"](6,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","user_id"],["id","user_id"],["name","user_id"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,8).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](10,671744,[[10,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ub)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ob)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,lb)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,db)),s["ɵdid"](22,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,cb)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"user_id"),t(e,14,0,"user_id"),t(e,16,0,null===n.allCephxClients),t(e,18,0,null!==n.allCephxClients&&0===n.allCephxClients.length),t(e,20,0,null!==n.allCephxClients&&n.allCephxClients.length>0),t(e,22,0,n.allCephxClients),t(e,24,0,n.nfsForm.showError("user_id",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function hb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function gb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No CephFS filesystem available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function pb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the CephFS filesystem --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function bb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.name),t(e,2,0,e.context.$implicit.name)}),(function(t,e){t(e,3,0,e.context.$implicit.name)}))}function mb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function yb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,12,{FormControlNames:1}),s["ɵqud"](603979776,13,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","fs_name"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CephFS Name"])),(t()(),s["ɵeld"](6,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","fs_name"],["id","fs_name"],["name","fs_name"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,8).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"change"===e&&(a=!1!==r.rgwUserIdChangeHandler()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](10,671744,[[12,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,hb)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,gb)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pb)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,bb)),s["ɵdid"](22,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mb)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"fs_name"),t(e,14,0,"fs_name"),t(e,16,0,null===n.allFsNames),t(e,18,0,null!==n.allFsNames&&0===n.allFsNames.length),t(e,20,0,null!==n.allFsNames&&n.allFsNames.length>0),t(e,22,0,n.allFsNames),t(e,24,0,n.nfsForm.showError("fs_name",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function vb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","sec_label_xattr"],["id","sec_label_xattr"],["name","sec_label_xattr"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,1)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,1)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,1)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](3,671744,[[14,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](5,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](6,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](7,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,3,0,"sec_label_xattr"),t(e,7,0,"sec_label_xattr")}),(function(t,e){t(e,0,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending,s["ɵnov"](e,7).validClass,s["ɵnov"](e,7).invalidClass)}))}function xb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function _b(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,14,{FormControlNames:1}),s["ɵqud"](603979776,15,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","security_label"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](7,{required:0}),(t()(),s["ɵted"](-1,null,["Security Label"])),(t()(),s["ɵeld"](9,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","security_label"],["id","security_label"],["name","security_label"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,12).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,12).onTouched()&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](14,671744,[[14,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](16,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](17,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](18,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](19,0,null,null,1,"label",[["class","custom-control-label"],["for","security_label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Enable security label"])),(t()(),s["ɵeld"](21,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,vb)),s["ɵdid"](23,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xb)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0);var a=t(e,7,0,n.nfsForm.getValue("security_label"));t(e,6,0,"cd-col-form-label",a),t(e,14,0,"security_label"),t(e,18,0,"security_label"),t(e,23,0,n.nfsForm.getValue("security_label")),t(e,25,0,n.nfsForm.showError("sec_label_xattr",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,11,0,s["ɵnov"](e,16).ngClassUntouched,s["ɵnov"](e,16).ngClassTouched,s["ɵnov"](e,16).ngClassPristine,s["ɵnov"](e,16).ngClassDirty,s["ɵnov"](e,16).ngClassValid,s["ɵnov"](e,16).ngClassInvalid,s["ɵnov"](e,16).ngClassPending,s["ɵnov"](e,18).validClass,s["ɵnov"](e,18).invalidClass)}))}function Tb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function wb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Path need to start with a '/' and can be followed by a word"]))],null,null)}function Ob(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["New directory will be created"]))],null,null)}function Sb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,16,{FormControlNames:1}),s["ɵqud"](603979776,17,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","path"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CephFS Path"])),(t()(),s["ɵeld"](6,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,16777216,null,null,8,"input",[["class","form-control"],["formControlName","path"],["id","path"],["name","path"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"typeaheadOnSelect"],[null,"blur"],[null,"input"],[null,"compositionstart"],[null,"compositionend"],[null,"keyup"],[null,"click"],[null,"focus"],[null,"keydown"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,8)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,8)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,8)._compositionEnd(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,14).onInput(n)&&a),"keyup"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n)&&a),"click"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"focus"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onBlur()&&a),"keydown"===e&&(a=!1!==s["ɵnov"](t,14).onKeydown(n)&&a),"typeaheadOnSelect"===e&&(a=!1!==r.pathChangeHandler()&&a),"blur"===e&&(a=!1!==r.pathChangeHandler()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](10,671744,[[16,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,212992,null,0,Lu,[U.a,Eu,s.ChangeDetectorRef,s.ElementRef,K.q,s.Renderer2,s.ViewContainerRef],{typeahead:[0,"typeahead"]},{typeaheadOnSelect:"typeaheadOnSelect"}),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Tb)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,wb)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ob)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"path"),t(e,14,0,n.pathDataSource),t(e,15,0,"path"),t(e,17,0,n.nfsForm.showError("path",s["ɵnov"](e.parent,6),"required")),t(e,19,0,n.nfsForm.showError("path",s["ɵnov"](e.parent,6),"pattern")),t(e,21,0,n.isNewDirectory&&!n.nfsForm.showError("path",s["ɵnov"](e.parent,6)))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass)}))}function Ib(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Nb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Path can only be a single '/' or a word"]))],null,null)}function Cb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["New bucket will be created"]))],null,null)}function Rb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,18,{FormControlNames:1}),s["ɵqud"](603979776,19,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","path"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Path"])),(t()(),s["ɵeld"](6,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,16777216,null,null,8,"input",[["class","form-control"],["formControlName","path"],["id","path"],["name","path"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"typeaheadOnSelect"],[null,"blur"],[null,"input"],[null,"compositionstart"],[null,"compositionend"],[null,"keyup"],[null,"click"],[null,"focus"],[null,"keydown"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,8)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,8)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,8)._compositionEnd(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,14).onInput(n)&&a),"keyup"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n)&&a),"click"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"focus"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onBlur()&&a),"keydown"===e&&(a=!1!==s["ɵnov"](t,14).onKeydown(n)&&a),"typeaheadOnSelect"===e&&(a=!1!==r.bucketChangeHandler()&&a),"blur"===e&&(a=!1!==r.bucketChangeHandler()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](10,671744,[[18,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,212992,null,0,Lu,[U.a,Eu,s.ChangeDetectorRef,s.ElementRef,K.q,s.Renderer2,s.ViewContainerRef],{typeahead:[0,"typeahead"]},{typeaheadOnSelect:"typeaheadOnSelect"}),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ib)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Nb)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cb)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"path"),t(e,14,0,n.bucketDataSource),t(e,15,0,"path"),t(e,17,0,n.nfsForm.showError("path",s["ɵnov"](e.parent,6),"required")),t(e,19,0,n.nfsForm.showError("path",s["ɵnov"](e.parent,6),"pattern")),t(e,21,0,n.isNewBucket&&!n.nfsForm.showError("path",s["ɵnov"](e.parent,6)))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass)}))}function Ab(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function kb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,22,{FormControlNames:1}),s["ɵqud"](603979776,23,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,13,"label",[["class","cd-col-form-label"],["for","tag"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFS Tag"])),(t()(),s["ɵeld"](7,0,null,null,10,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](8,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](9,0,null,0,4,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Alternative access for "])),(t()(),s["ɵeld"](11,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFS v3"])),(t()(),s["ɵted"](-1,null,[" mounts (it must not have a leading /)."])),(t()(),s["ɵeld"](14,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz)."])),(t()(),s["ɵeld"](16,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["By using different Tag options, the same Path may be exported multiple times."])),(t()(),s["ɵeld"](18,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,7,"input",[["class","form-control"],["formControlName","tag"],["id","tag"],["name","tag"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,20)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,20).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,20)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,20)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](20,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](22,671744,[[22,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](24,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](25,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](26,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,1,0),t(e,22,0,"tag"),t(e,26,0,"tag")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,19,0,s["ɵnov"](e,24).ngClassUntouched,s["ɵnov"](e,24).ngClassTouched,s["ɵnov"](e,24).ngClassPristine,s["ɵnov"](e,24).ngClassDirty,s["ɵnov"](e,24).ngClassValid,s["ɵnov"](e,24).ngClassInvalid,s["ɵnov"](e,24).ngClassPending,s["ɵnov"](e,26).validClass,s["ɵnov"](e,26).invalidClass)}))}function Eb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Lb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pseudo needs to start with a '/' and can't contain any of the following: >, <, |, &, ( or )."]))],null,null)}function Db(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,24,{FormControlNames:1}),s["ɵqud"](603979776,25,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,14,"label",[["class","cd-col-form-label"],["for","pseudo"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pseudo"])),(t()(),s["ɵeld"](7,0,null,null,11,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](8,49152,null,0,ju.a,[],null,null),(t()(),s["ɵeld"](9,0,null,0,7,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The position that this "])),(t()(),s["ɵeld"](11,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFS v4"])),(t()(),s["ɵted"](-1,null,[" export occupies in the "])),(t()(),s["ɵeld"](14,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pseudo FS"])),(t()(),s["ɵted"](-1,null,[" (it must be unique)."])),(t()(),s["ɵeld"](17,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["By using different Pseudo options, the same Path may be exported multiple times."])),(t()(),s["ɵeld"](19,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,7,"input",[["class","form-control"],["formControlName","pseudo"],["id","pseudo"],["name","pseudo"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,21)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,21).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,21)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,21)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](21,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](23,671744,[[24,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](25,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](26,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Eb)),s["ɵdid"](29,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Lb)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,23,0,"pseudo"),t(e,27,0,"pseudo"),t(e,29,0,n.nfsForm.showError("pseudo",s["ɵnov"](e.parent,6),"required")),t(e,31,0,n.nfsForm.showError("pseudo",s["ɵnov"](e.parent,6),"pattern"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,20,0,s["ɵnov"](e,25).ngClassUntouched,s["ɵnov"](e,25).ngClassTouched,s["ɵnov"](e,25).ngClassPristine,s["ɵnov"](e,25).ngClassDirty,s["ɵnov"](e,25).ngClassValid,s["ɵnov"](e,25).ngClassInvalid,s["ɵnov"](e,25).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass)}))}function Pb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Mb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No access type available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function qb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the access type --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function jb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.value)}))}function Fb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,1,0,n.getAccessTypeHelp(n.nfsForm.getValue("access_type")))}))}function Vb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"span",[["class","form-text text-warning"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The Object Gateway NFS backend has a number of limitations which will seriously affect applications writing to the share. Please consult the "])),(t()(),s["ɵeld"](2,0,null,null,1,"cd-doc",[["section","rgw-nfs"]],null,null,null,qr.b,qr.a)),s["ɵdid"](3,114688,null,0,jr.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,null,[" for details before enabling write access."]))],(function(t,e){t(e,3,0,"rgw-nfs")}),null)}function Gb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Bb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function zb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No squash available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Yb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["--Select what kind of user id squashing is performed --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Hb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function Ub(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Wb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Kb(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Ps.a,[]),s["ɵqud"](402653184,1,{nfsClients:0}),(t()(),s["ɵeld"](3,0,null,null,189,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,188,"form",[["name","nfsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,6).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,9).onSubmit()&&a),a}),null,null)),s["ɵdid"](5,16384,null,0,K.G,[],null,null),s["ɵdid"](6,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](8,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](9,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](10,0,null,null,182,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](12,null,[""," ",""])),s["ɵppd"](13,1),s["ɵppd"](14,1),(t()(),s["ɵeld"](15,0,null,null,168,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Bp)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$p)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](20,0,null,null,34,"div",[["formGroupName","fsal"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),s["ɵdid"](21,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](23,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](24,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](25,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,6,{FormControlNames:1}),s["ɵqud"](603979776,7,{messagesBlock:0}),(t()(),s["ɵeld"](28,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","name"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Storage Backend"])),(t()(),s["ɵeld"](30,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](31,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","name"],["id","name"],["name","name"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,32).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,32).onTouched()&&a),"change"===e&&(a=!1!==r.fsalChangeHandler()&&a),a}),null,null)),s["ɵdid"](32,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](34,671744,[[6,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](36,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](37,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](38,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Zp)),s["ɵdid"](40,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Jp)),s["ɵdid"](42,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Qp)),s["ɵdid"](44,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Xp)),s["ɵdid"](46,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tb)),s["ɵdid"](48,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,sb)),s["ɵdid"](50,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fb)),s["ɵdid"](52,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,yb)),s["ɵdid"](54,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_b)),s["ɵdid"](56,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Sb)),s["ɵdid"](58,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Rb)),s["ɵdid"](60,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](61,0,null,null,30,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](62,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,20,{FormControlNames:1}),s["ɵqud"](603979776,21,{messagesBlock:0}),(t()(),s["ɵeld"](65,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","protocols"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFS Protocol"])),(t()(),s["ɵeld"](67,0,null,0,24,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](68,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](69,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","protocolNfsv3"],["id","protocolNfsv3"],["name","protocolNfsv3"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,70).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,70).onTouched()&&a),a}),null,null)),s["ɵdid"](70,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](72,671744,[[20,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](74,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](75,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](76,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](77,0,null,null,1,"label",[["class","custom-control-label"],["for","protocolNfsv3"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFSv3"])),(t()(),s["ɵeld"](79,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](80,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","protocolNfsv4"],["id","protocolNfsv4"],["name","protocolNfsv4"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,81).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,81).onTouched()&&a),a}),null,null)),s["ɵdid"](81,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](83,671744,[[20,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](85,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](86,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](87,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](88,0,null,null,1,"label",[["class","custom-control-label"],["for","protocolNfsv4"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFSv4"])),(t()(),s["ɵand"](16777216,null,null,1,null,Ab)),s["ɵdid"](91,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,kb)),s["ɵdid"](93,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Db)),s["ɵdid"](95,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](96,0,null,null,28,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](97,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,26,{FormControlNames:1}),s["ɵqud"](603979776,27,{messagesBlock:0}),(t()(),s["ɵeld"](100,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","access_type"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Access Type"])),(t()(),s["ɵeld"](102,0,null,0,22,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](103,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","access_type"],["id","access_type"],["name","access_type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,104).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,104).onTouched()&&a),"change"===e&&(a=!1!==r.accessTypeChangeHandler()&&a),a}),null,null)),s["ɵdid"](104,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](106,671744,[[26,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](108,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](109,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](110,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Pb)),s["ɵdid"](112,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Mb)),s["ɵdid"](114,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,qb)),s["ɵdid"](116,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,jb)),s["ɵdid"](118,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fb)),s["ɵdid"](120,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vb)),s["ɵdid"](122,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gb)),s["ɵdid"](124,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](125,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](126,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,28,{FormControlNames:1}),s["ɵqud"](603979776,29,{messagesBlock:0}),(t()(),s["ɵeld"](129,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","squash"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Squash"])),(t()(),s["ɵeld"](131,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](132,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","squash"],["id","squash"],["name","squash"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,133).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,133).onTouched()&&a),a}),null,null)),s["ɵdid"](133,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](135,671744,[[28,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](137,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](138,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](139,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bb)),s["ɵdid"](141,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zb)),s["ɵdid"](143,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yb)),s["ɵdid"](145,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hb)),s["ɵdid"](147,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ub)),s["ɵdid"](149,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](150,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](151,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,30,{FormControlNames:1}),s["ɵqud"](603979776,31,{messagesBlock:0}),(t()(),s["ɵeld"](154,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","transports"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Transport Protocol"])),(t()(),s["ɵeld"](156,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](157,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](158,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","transportUDP"],["id","transportUDP"],["name","transportUDP"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,159).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,159).onTouched()&&a),a}),null,null)),s["ɵdid"](159,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](161,671744,[[30,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](163,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](164,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](165,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](166,0,null,null,1,"label",[["class","custom-control-label"],["for","transportUDP"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["UDP"])),(t()(),s["ɵeld"](168,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](169,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","transportTCP"],["id","transportTCP"],["name","transportTCP"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,170).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,170).onTouched()&&a),a}),null,null)),s["ɵdid"](170,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](172,671744,[[30,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](174,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](175,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](176,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](177,0,null,null,1,"label",[["class","custom-control-label"],["for","transportTCP"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["TCP"])),(t()(),s["ɵand"](16777216,null,null,1,null,Wb)),s["ɵdid"](180,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](181,0,null,null,0,"hr",[],null,null,null,null,null)),(t()(),s["ɵeld"](182,0,null,null,1,"cd-nfs-form-client",[],null,null,null,Ep,Op)),s["ɵdid"](183,49152,[[1,4],["nfsClients",4]],0,wp,[cp,fe.a],{form:[0,"form"]},null),(t()(),s["ɵeld"](184,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](185,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](186,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),ks.b,ks.a)),s["ɵdid"](187,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](188,0,[""," ",""])),s["ɵppd"](189,1),s["ɵppd"](190,1),(t()(),s["ɵeld"](191,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](192,49152,null,0,Ds.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,6,0,n.nfsForm),t(e,9,0,n.nfsForm),t(e,17,0,!n.isDefaultCluster),t(e,19,0,n.clusterType),t(e,21,0,"fsal"),t(e,25,0),t(e,34,0,"name"),t(e,38,0,"name"),t(e,40,0,null===n.allFsals),t(e,42,0,null!==n.allFsals&&0===n.allFsals.length),t(e,44,0,null!==n.allFsals&&n.allFsals.length>0),t(e,46,0,n.allFsals),t(e,48,0,n.nfsForm.showError("name",s["ɵnov"](e,6),"required")),t(e,50,0,"RGW"===n.nfsForm.getValue("name")),t(e,52,0,"CEPH"===n.nfsForm.getValue("name")),t(e,54,0,"CEPH"===n.nfsForm.getValue("name")),t(e,56,0,"CEPH"===n.nfsForm.getValue("name")),t(e,58,0,"CEPH"===n.nfsForm.getValue("name")),t(e,60,0,"RGW"===n.nfsForm.getValue("name")),t(e,62,0),t(e,72,0,"protocolNfsv3"),t(e,76,0,"protocolNfsv3"),t(e,83,0,"protocolNfsv4"),t(e,87,0,"protocolNfsv4"),t(e,91,0,n.nfsForm.showError("protocolNfsv3",s["ɵnov"](e,6),"required")||n.nfsForm.showError("protocolNfsv4",s["ɵnov"](e,6),"required")),t(e,93,0,n.nfsForm.getValue("protocolNfsv3")),t(e,95,0,n.nfsForm.getValue("protocolNfsv4")),t(e,97,0),t(e,106,0,"access_type"),t(e,110,0,"access_type"),t(e,112,0,null===n.nfsAccessType),t(e,114,0,null!==n.nfsAccessType&&0===n.nfsAccessType.length),t(e,116,0,null!==n.nfsAccessType&&n.nfsAccessType.length>0),t(e,118,0,n.nfsAccessType),t(e,120,0,n.nfsForm.getValue("access_type")),t(e,122,0,"RW"===n.nfsForm.getValue("access_type")&&"RGW"===n.nfsForm.getValue("name")),t(e,124,0,n.nfsForm.showError("access_type",s["ɵnov"](e,6),"required")),t(e,126,0),t(e,135,0,"squash"),t(e,139,0,"squash"),t(e,141,0,null===n.nfsSquash),t(e,143,0,null!==n.nfsSquash&&0===n.nfsSquash.length),t(e,145,0,null!==n.nfsSquash&&n.nfsSquash.length>0),t(e,147,0,n.nfsSquash),t(e,149,0,n.nfsForm.showError("squash",s["ɵnov"](e,6),"required")),t(e,151,0),t(e,161,0,"transportUDP"),t(e,165,0,"transportUDP"),t(e,172,0,"transportTCP"),t(e,176,0,"transportTCP"),t(e,180,0,n.nfsForm.showError("transportUDP",s["ɵnov"](e,6),"required")||n.nfsForm.showError("transportTCP",s["ɵnov"](e,6),"required")),t(e,183,0,n.nfsForm),t(e,187,0,s["ɵnov"](e,6))}),(function(t,e){var n=e.component;t(e,4,0,s["ɵnov"](e,8).ngClassUntouched,s["ɵnov"](e,8).ngClassTouched,s["ɵnov"](e,8).ngClassPristine,s["ɵnov"](e,8).ngClassDirty,s["ɵnov"](e,8).ngClassValid,s["ɵnov"](e,8).ngClassInvalid,s["ɵnov"](e,8).ngClassPending);var a=s["ɵunv"](e,12,0,t(e,13,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,12,1,t(e,14,0,s["ɵnov"](e,1),n.resource));t(e,12,0,a,r),t(e,20,0,s["ɵnov"](e,23).ngClassUntouched,s["ɵnov"](e,23).ngClassTouched,s["ɵnov"](e,23).ngClassPristine,s["ɵnov"](e,23).ngClassDirty,s["ɵnov"](e,23).ngClassValid,s["ɵnov"](e,23).ngClassInvalid,s["ɵnov"](e,23).ngClassPending),t(e,24,0,s["ɵnov"](e,25).hasErrors,s["ɵnov"](e,25).hasSuccess),t(e,31,0,s["ɵnov"](e,36).ngClassUntouched,s["ɵnov"](e,36).ngClassTouched,s["ɵnov"](e,36).ngClassPristine,s["ɵnov"](e,36).ngClassDirty,s["ɵnov"](e,36).ngClassValid,s["ɵnov"](e,36).ngClassInvalid,s["ɵnov"](e,36).ngClassPending,s["ɵnov"](e,38).validClass,s["ɵnov"](e,38).invalidClass),t(e,61,0,s["ɵnov"](e,62).hasErrors,s["ɵnov"](e,62).hasSuccess),t(e,69,0,s["ɵnov"](e,74).ngClassUntouched,s["ɵnov"](e,74).ngClassTouched,s["ɵnov"](e,74).ngClassPristine,s["ɵnov"](e,74).ngClassDirty,s["ɵnov"](e,74).ngClassValid,s["ɵnov"](e,74).ngClassInvalid,s["ɵnov"](e,74).ngClassPending,s["ɵnov"](e,76).validClass,s["ɵnov"](e,76).invalidClass),t(e,80,0,s["ɵnov"](e,85).ngClassUntouched,s["ɵnov"](e,85).ngClassTouched,s["ɵnov"](e,85).ngClassPristine,s["ɵnov"](e,85).ngClassDirty,s["ɵnov"](e,85).ngClassValid,s["ɵnov"](e,85).ngClassInvalid,s["ɵnov"](e,85).ngClassPending,s["ɵnov"](e,87).validClass,s["ɵnov"](e,87).invalidClass),t(e,96,0,s["ɵnov"](e,97).hasErrors,s["ɵnov"](e,97).hasSuccess),t(e,103,0,s["ɵnov"](e,108).ngClassUntouched,s["ɵnov"](e,108).ngClassTouched,s["ɵnov"](e,108).ngClassPristine,s["ɵnov"](e,108).ngClassDirty,s["ɵnov"](e,108).ngClassValid,s["ɵnov"](e,108).ngClassInvalid,s["ɵnov"](e,108).ngClassPending,s["ɵnov"](e,110).validClass,s["ɵnov"](e,110).invalidClass),t(e,125,0,s["ɵnov"](e,126).hasErrors,s["ɵnov"](e,126).hasSuccess),t(e,132,0,s["ɵnov"](e,137).ngClassUntouched,s["ɵnov"](e,137).ngClassTouched,s["ɵnov"](e,137).ngClassPristine,s["ɵnov"](e,137).ngClassDirty,s["ɵnov"](e,137).ngClassValid,s["ɵnov"](e,137).ngClassInvalid,s["ɵnov"](e,137).ngClassPending,s["ɵnov"](e,139).validClass,s["ɵnov"](e,139).invalidClass),t(e,150,0,s["ɵnov"](e,151).hasErrors,s["ɵnov"](e,151).hasSuccess),t(e,158,0,s["ɵnov"](e,163).ngClassUntouched,s["ɵnov"](e,163).ngClassTouched,s["ɵnov"](e,163).ngClassPristine,s["ɵnov"](e,163).ngClassDirty,s["ɵnov"](e,163).ngClassValid,s["ɵnov"](e,163).ngClassInvalid,s["ɵnov"](e,163).ngClassPending,s["ɵnov"](e,165).validClass,s["ɵnov"](e,165).invalidClass),t(e,169,0,s["ɵnov"](e,174).ngClassUntouched,s["ɵnov"](e,174).ngClassTouched,s["ɵnov"](e,174).ngClassPristine,s["ɵnov"](e,174).ngClassDirty,s["ɵnov"](e,174).ngClassValid,s["ɵnov"](e,174).ngClassInvalid,s["ɵnov"](e,174).ngClassPending,s["ɵnov"](e,176).validClass,s["ɵnov"](e,176).invalidClass);var i=s["ɵunv"](e,188,0,t(e,189,0,s["ɵnov"](e,0),n.action)),u=s["ɵunv"](e,188,1,t(e,190,0,s["ɵnov"](e,1),n.resource));t(e,188,0,i,u)}))}function $b(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-nfs-form",[],null,null,null,Kb,Mp)),s["ɵdid"](1,114688,null,0,Pp,[J.a,cp,Et.a,Et.m,Lp.a,zu.a,bs.a,s.ChangeDetectorRef,fe.a,St.b],null,null)],(function(t,e){t(e,1,0)}),null)}var Zb=s["ɵccf"]("cd-nfs-form",Pp,$b,{},{},[]);class Jb{}var Qb=s["ɵcrt"]({encapsulation:0,styles:[[".login{color:#fff;background-color:#374249;background-image:url(ceph_background.7c127240f022e7baf57d.gif);background-position:right bottom;background-repeat:no-repeat}  .login header{position:absolute;width:100vw}  .login header .navbar{padding:1rem 2rem}  .login header .navbar .dropdown-menu{margin-top:.2rem}  .login header .navbar .dropdown-menu li a:hover{background-color:#2b99a8}  .login section{display:inline-flex;width:100vw;min-height:100vh}"]],data:{}});function Xb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,13,"main",[["class","login full-height"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,"header",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,4,"nav",[["class","navbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,0,"a",[["class","navbar-brand"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,2,"div",[["class","form-inline"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"cd-language-selector",[],null,null,null,ht,ut)),s["ɵdid"](6,114688,null,0,it,[st.l,nt],null,null),(t()(),s["ɵeld"](7,0,null,null,6,"section",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,5,"div",[["class","container"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,4,"div",[["class","row full-height vertical-align"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,3,"div",[["class","col-sm-12 col-md-6 d-sm-block"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,0,"img",[["alt","Ceph"],["class","img-fluid mb-5"],["src","assets/Ceph_Logo_Standard_RGB_White_120411_fa.png"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),s["ɵdid"](13,212992,null,0,Et.r,[Et.b,s.ViewContainerRef,s.ComponentFactoryResolver,[8,null],s.ChangeDetectorRef],null,null)],(function(t,e){t(e,6,0),t(e,13,0)}),null)}function tm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-login-layout",[],null,null,null,Xb,Qb)),s["ɵdid"](1,49152,null,0,Jb,[],null,null)],null,null)}var em=s["ɵccf"]("cd-login-layout",Jb,tm,{},{},[]);class nm{}class am{constructor(t,e,n,a,r){this.authService=t,this.authStorageService=e,this.bsModalService=n,this.route=a,this.router=r,this.model=new nm,this.isLoginActive=!1}ngOnInit(){if(this.authStorageService.isLoggedIn())this.router.navigate([""]);else{const t=this.bsModalService.getModalsCount();for(let n=1;n<=t;n++)this.bsModalService.hide(n);let e=null;if(-1!==window.location.hash.indexOf("access_token=")){e=window.location.hash.split("access_token=")[1];const t=window.location.toString();window.history.replaceState({},document.title,t.split("?")[0])}this.authService.check(e).subscribe(t=>{t.login_url?"#/login"===t.login_url?this.isLoginActive=!0:window.location.replace(t.login_url):(this.authStorageService.set(t.username,t.permissions,t.sso,t.pwdExpirationDate),this.router.navigate([""]))})}}login(){this.authService.login(this.model).subscribe(()=>{const t=X.get(this.route.snapshot.queryParams,"returnUrl","/");this.router.navigate([t])})}}var rm=s["ɵcrt"]({encapsulation:0,styles:[["cd-login .form-group{border-left:4px solid #fff;background-color:#333e46;height:auto;margin-bottom:2rem}  cd-login .form-group:focus-within{border-left:4px solid #ef5c55}  cd-login .form-group .invalid-feedback{display:inline}  cd-login .btn-password,   cd-login .btn-password:focus,   cd-login .form-control,   cd-login .form-control:focus{border:none;outline:0;box-shadow:none;color:#fff;background-color:#333e46;filter:none}  cd-login .placeholder{color:#90949c}  cd-login .btn-password:focus{outline-color:#2b99a8}@keyframes autofill{to{color:#fff;background-color:#333e46}}input[_ngcontent-%COMP%]:-webkit-autofill{animation-name:autofill;animation-fill-mode:both;box-shadow:0 0 0 1000px #333e46 inset;-webkit-text-fill-color:#fff;transition-property:none;border-radius:0}"]],data:{}});function im(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["class","invalid-feedback pl-4"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Username is required"]))],null,null)}function sm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["class","invalid-feedback pl-4"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Password is required"]))],null,null)}function um(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,49,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,48,"form",[["name","loginForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0,r=t.component;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"ngSubmit"===e&&(a=!1!==r.login()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,4210688,[["loginForm",4]],0,K.t,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),s["ɵprd"](2048,null,K.d,null,[K.t]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](6,0,null,null,18,"div",[["class","form-group has-feedback d-flex flex-column py-3"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](7,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](10,0,null,0,1,"label",[["class","placeholder pl-4"],["for","username"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Username"])),(t()(),s["ɵeld"](12,0,null,0,10,"input",[["aria-labelledby","username"],["autofocus",""],["class","form-control pl-4"],["id","username"],["name","username"],["required",""],["type","text"]],[[1,"aria-invalid",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,13)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,13).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,13)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,13)._compositionEnd(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.model.username=n)&&a),a}),null,null)),s["ɵdid"](13,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](14,16384,null,0,K.z,[],{required:[0,"required"]},null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[K.z]),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](17,671744,[["username",4]],0,K.u,[[2,K.d],[6,K.o],[8,null],[6,K.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](19,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](20,4210688,null,0,As.a,[s.ElementRef],{autofocus:[0,"autofocus"]},null),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,Q.h,[[3,K.d],Q.a],null,null),(t()(),s["ɵand"](16777216,null,0,1,null,im)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](25,0,null,null,22,"div",[["class","form-group has-feedback"],["id","password-div"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](26,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](29,0,null,0,18,"div",[["class","input-group d-flex flex-nowrap"]],null,null,null,null,null)),(t()(),s["ɵeld"](30,0,null,null,14,"div",[["class","d-flex flex-column flex-grow-1 py-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](31,0,null,null,1,"label",[["class","placeholder pl-4"],["for","password"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Password"])),(t()(),s["ɵeld"](33,0,null,null,9,"input",[["aria-labelledby","password"],["class","form-control pl-4"],["id","password"],["name","password"],["required",""],["type","password"]],[[1,"aria-invalid",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,34)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,34).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,34)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,34)._compositionEnd(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.model.password=n)&&a),a}),null,null)),s["ɵdid"](34,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](35,16384,null,0,K.z,[],{required:[0,"required"]},null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[K.z]),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](38,671744,[["password",4]],0,K.u,[[2,K.d],[6,K.o],[8,null],[6,K.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](40,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](41,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](42,16384,null,0,Q.h,[[3,K.d],Q.a],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,sm)),s["ɵdid"](44,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](45,0,null,null,2,"span",[["class","form-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](46,0,null,null,1,"button",[["cdPasswordButton","password"],["class","btn btn-outline-light btn-password h-100 px-4"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,47).onClick()&&a),a}),null,null)),s["ɵdid"](47,81920,null,0,Fu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵeld"](48,0,null,null,1,"input",[["class","btn btn-secondary px-5 py-2"],["type","submit"],["value","Login"]],[[8,"disabled",0]],null,null,null,null)),s["ɵdid"](49,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null)],(function(t,e){var n=e.component;t(e,7,0),t(e,14,0,""),t(e,17,0,"username",n.model.username),t(e,20,0,""),t(e,24,0,(s["ɵnov"](e,3).submitted||s["ɵnov"](e,17).dirty)&&s["ɵnov"](e,17).invalid),t(e,26,0),t(e,35,0,""),t(e,38,0,"password",n.model.password),t(e,44,0,(s["ɵnov"](e,3).submitted||s["ɵnov"](e,38).dirty)&&s["ɵnov"](e,38).invalid),t(e,47,0,"password")}),(function(t,e){t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending),t(e,6,0,s["ɵnov"](e,7).hasErrors,s["ɵnov"](e,7).hasSuccess),t(e,12,1,[s["ɵnov"](e,17).invalid,s["ɵnov"](e,14).required?"":null,s["ɵnov"](e,19).ngClassUntouched,s["ɵnov"](e,19).ngClassTouched,s["ɵnov"](e,19).ngClassPristine,s["ɵnov"](e,19).ngClassDirty,s["ɵnov"](e,19).ngClassValid,s["ɵnov"](e,19).ngClassInvalid,s["ɵnov"](e,19).ngClassPending,s["ɵnov"](e,22).validClass,s["ɵnov"](e,22).invalidClass]),t(e,25,0,s["ɵnov"](e,26).hasErrors,s["ɵnov"](e,26).hasSuccess),t(e,33,1,[s["ɵnov"](e,38).invalid,s["ɵnov"](e,35).required?"":null,s["ɵnov"](e,40).ngClassUntouched,s["ɵnov"](e,40).ngClassTouched,s["ɵnov"](e,40).ngClassPristine,s["ɵnov"](e,40).ngClassDirty,s["ɵnov"](e,40).ngClassValid,s["ɵnov"](e,40).ngClassInvalid,s["ɵnov"](e,40).ngClassPending,s["ɵnov"](e,42).validClass,s["ɵnov"](e,42).invalidClass]),t(e,48,0,s["ɵnov"](e,3).invalid)}))}function om(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,um)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.isLoginActive)}),null)}function lm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-login",[],null,null,null,om,rm)),s["ɵdid"](1,114688,null,0,am,[Vt.a,J.a,Ct.b,Et.a,Et.m],null,null)],(function(t,e){t(e,1,0)}),null)}var dm=s["ɵccf"]("cd-login",am,lm,{},{},[]);class cm extends Bg{constructor(t,e,n,a,r,i,s,u,o){super(t,e,n,a,r,i,s,u),this.i18n=t,this.actionLabels=e,this.notificationService=n,this.userService=a,this.authStorageService=r,this.formBuilder=i,this.router=s,this.passwordPolicyService=u,this.authService=o}onPasswordChange(){this.authService.logout()}onCancel(){this.authService.logout()}}var fm=s["ɵcrt"]({encapsulation:0,styles:[["cd-login-password-form h4{margin:0 0 30px}  cd-login-password-form .btn-password,   cd-login-password-form .btn-password:focus,   cd-login-password-form .form-control,   cd-login-password-form .form-control:focus{color:#fff;background-color:#333e46}  cd-login-password-form .form-control::placeholder{color:#90949c}  cd-login-password-form .btn-password:focus{outline-color:#2b99a8}  cd-login-password-form button.btn:not(:first-child){margin-left:5px}"]],data:{}});function hm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function gm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The old and new passwords must be different."]))],null,null)}function pm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function bm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The old and new passwords must be different."]))],null,null)}function mm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.passwordValuation)}))}function ym(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function vm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Password confirmation doesn't match the new password."]))],null,null)}function xm(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Ps.a,[]),(t()(),s["ɵeld"](2,0,null,null,84,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"h2",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Please set a new password."])),(t()(),s["ɵeld"](5,0,null,null,1,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["You will be redirected to the login page afterwards."])),(t()(),s["ɵeld"](7,0,null,null,70,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,9).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,9).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,12).onSubmit()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.G,[],null,null),s["ɵdid"](9,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](11,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](12,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](13,0,null,null,20,"div",[["class","form-group has-feedback"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](14,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](17,0,null,0,12,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,8,"input",[["autocomplete","new-password"],["autofocus",""],["class","form-control"],["formControlName","oldpassword"],["id","oldpassword"],["placeholder","Old password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,19)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,19).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,19)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,19)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](19,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](21,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](23,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](24,4210688,null,0,As.a,[s.ElementRef],{autofocus:[0,"autofocus"]},null),s["ɵdid"](25,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](26,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](27,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,1,"button",[["cdPasswordButton","oldpassword"],["class","btn btn-outline-light btn-password"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,29).onClick()&&a),a}),null,null)),s["ɵdid"](29,81920,null,0,Fu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,hm)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,gm)),s["ɵdid"](33,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](34,0,null,null,23,"div",[["class","form-group has-feedback"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](35,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](38,0,null,0,11,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](39,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","newpassword"],["id","newpassword"],["placeholder","New password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,40)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,40).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,40)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,40)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](40,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](42,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](44,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](45,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](46,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](47,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](48,0,null,null,1,"button",[["cdPasswordButton","newpassword"],["class","btn btn-outline-light btn-password"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,49).onClick()&&a),a}),null,null)),s["ɵdid"](49,81920,null,0,Fu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵeld"](50,0,null,0,1,"div",[["class","password-strength-level"]],null,null,null,null,null)),(t()(),s["ɵeld"](51,0,null,null,0,"div",[["data-toggle","tooltip"]],[[8,"className",0],[8,"title",0]],null,null,null,null)),(t()(),s["ɵand"](16777216,null,0,1,null,pm)),s["ɵdid"](53,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,bm)),s["ɵdid"](55,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,mm)),s["ɵdid"](57,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](58,0,null,null,19,"div",[["class","form-group has-feedback"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](59,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](62,0,null,0,11,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](63,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","confirmnewpassword"],["id","confirmnewpassword"],["placeholder","Confirm new password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,64)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,64).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,64)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,64)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](64,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](66,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](68,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](69,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](70,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](71,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](72,0,null,null,1,"button",[["cdPasswordButton","confirmnewpassword"],["class","btn btn-outline-light btn-password"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,73).onClick()&&a),a}),null,null)),s["ɵdid"](73,81920,null,0,Fu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,ym)),s["ɵdid"](75,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,vm)),s["ɵdid"](77,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](78,0,null,null,8,"div",[["class","form-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](79,0,null,null,4,"cd-submit-button",[["btnClass","btn-block"],["class","full-width"]],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),ks.b,ks.a)),s["ɵdid"](80,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"],btnClass:[1,"btnClass"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](81,0,[" "," "," "])),s["ɵppd"](82,1),s["ɵppd"](83,1),(t()(),s["ɵeld"](84,0,null,null,2,"button",[["class","btn btn-light"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onCancel()&&a),a}),null,null)),(t()(),s["ɵeld"](85,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cancel"]))],(function(t,e){var n=e.component;t(e,9,0,n.userForm),t(e,12,0,n.userForm),t(e,14,0),t(e,21,0,"oldpassword"),t(e,24,0,""),t(e,26,0,"oldpassword"),t(e,29,0,"oldpassword"),t(e,31,0,n.userForm.showError("oldpassword",s["ɵnov"](e,9),"required")),t(e,33,0,n.userForm.showError("oldpassword",s["ɵnov"](e,9),"notmatch")),t(e,35,0),t(e,42,0,"newpassword"),t(e,46,0,"newpassword"),t(e,49,0,"newpassword"),t(e,53,0,n.userForm.showError("newpassword",s["ɵnov"](e,9),"required")),t(e,55,0,n.userForm.showError("newpassword",s["ɵnov"](e,9),"notmatch")),t(e,57,0,n.userForm.showError("newpassword",s["ɵnov"](e,9),"passwordPolicy")),t(e,59,0),t(e,66,0,"confirmnewpassword"),t(e,70,0,"confirmnewpassword"),t(e,73,0,"confirmnewpassword"),t(e,75,0,n.userForm.showError("confirmnewpassword",s["ɵnov"](e,9),"required")),t(e,77,0,n.userForm.showError("confirmnewpassword",s["ɵnov"](e,9),"match")),t(e,80,0,n.userForm,"btn-block")}),(function(t,e){var n=e.component;t(e,7,0,s["ɵnov"](e,11).ngClassUntouched,s["ɵnov"](e,11).ngClassTouched,s["ɵnov"](e,11).ngClassPristine,s["ɵnov"](e,11).ngClassDirty,s["ɵnov"](e,11).ngClassValid,s["ɵnov"](e,11).ngClassInvalid,s["ɵnov"](e,11).ngClassPending),t(e,13,0,s["ɵnov"](e,14).hasErrors,s["ɵnov"](e,14).hasSuccess),t(e,18,0,s["ɵnov"](e,23).ngClassUntouched,s["ɵnov"](e,23).ngClassTouched,s["ɵnov"](e,23).ngClassPristine,s["ɵnov"](e,23).ngClassDirty,s["ɵnov"](e,23).ngClassValid,s["ɵnov"](e,23).ngClassInvalid,s["ɵnov"](e,23).ngClassPending,s["ɵnov"](e,26).validClass,s["ɵnov"](e,26).invalidClass),t(e,34,0,s["ɵnov"](e,35).hasErrors,s["ɵnov"](e,35).hasSuccess),t(e,39,0,s["ɵnov"](e,44).ngClassUntouched,s["ɵnov"](e,44).ngClassTouched,s["ɵnov"](e,44).ngClassPristine,s["ɵnov"](e,44).ngClassDirty,s["ɵnov"](e,44).ngClassValid,s["ɵnov"](e,44).ngClassInvalid,s["ɵnov"](e,44).ngClassPending,s["ɵnov"](e,46).validClass,s["ɵnov"](e,46).invalidClass),t(e,51,0,s["ɵinlineInterpolate"](1,"",n.passwordStrengthLevelClass,""),s["ɵinlineInterpolate"](1,"",n.passwordValuation,"")),t(e,58,0,s["ɵnov"](e,59).hasErrors,s["ɵnov"](e,59).hasSuccess),t(e,63,0,s["ɵnov"](e,68).ngClassUntouched,s["ɵnov"](e,68).ngClassTouched,s["ɵnov"](e,68).ngClassPristine,s["ɵnov"](e,68).ngClassDirty,s["ɵnov"](e,68).ngClassValid,s["ɵnov"](e,68).ngClassInvalid,s["ɵnov"](e,68).ngClassPending,s["ɵnov"](e,70).validClass,s["ɵnov"](e,70).invalidClass);var a=s["ɵunv"](e,81,0,t(e,82,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,81,1,t(e,83,0,s["ɵnov"](e,1),n.resource));t(e,81,0,a,r)}))}function _m(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-login-password-form",[],null,null,null,xm,fm)),s["ɵdid"](1,49152,null,0,cm,[fe.a,St.b,bt.a,Ot.a,J.a,zu.a,Et.m,Gg.a,Vt.a],null,null)],null,null)}var Tm=s["ɵccf"]("cd-login-password-form",cm,_m,{},{},[]);class wm{constructor(){}}var Om=s["ɵcrt"]({encapsulation:0,styles:[["#toast-container{margin-top:2vw}@media (max-width:1600px){  #toast-container{margin-top:2.5vw}}@media (max-width:calc(992px - 1px)){  #toast-container{margin-top:9vw}}@media (max-width:900px){  #toast-container{margin-top:10vw}}@media (max-width:319px){  #toast-container{margin-top:11vw}}@media (max-width:260px){  #toast-container{margin-top:14vw}}"]],data:{}});function Sm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),s["ɵdid"](1,212992,null,0,Et.r,[Et.b,s.ViewContainerRef,s.ComponentFactoryResolver,[8,null],s.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}function Im(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-blank-layout",[],null,null,null,Sm,Om)),s["ɵdid"](1,49152,null,0,wm,[],null,null)],null,null)}var Nm=s["ɵccf"]("cd-blank-layout",wm,Im,{},{},[]);class Cm{constructor(){this.logoutUrl=window.location.origin+"/auth/saml2/slo"}}var Rm=s["ɵcrt"]({encapsulation:0,styles:[["h1[_ngcontent-%COMP%]{font-size:-webkit-xxx-large}*[_ngcontent-%COMP%]{font-family:monospace}img[_ngcontent-%COMP%]{width:50vw}"]],data:{}});function Am(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","vertical-align full-height"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,16,"div",[["class","col-md-12 text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"h1",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Sorry, the user does not exist in Ceph."])),(t()(),s["ɵeld"](4,0,null,null,4,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Return to "])),(t()(),s["ɵeld"](6,0,null,null,1,"a",[["class","sso-logout"]],[[8,"href",4]],null,null,null,null)),(t()(),s["ɵted"](-1,null,["Login Page"])),(t()(),s["ɵted"](-1,null,[". You'll be logged out from the Identity Provider when you retry logging in."])),(t()(),s["ɵeld"](9,0,null,null,0,"img",[["class","img-fluid mx-auto rounded"],["src","assets/1280px-Nautilus_Octopus.jpg"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[' "'])),(t()(),s["ɵeld"](13,0,null,null,1,"a",[["href","https://www.flickr.com/photos/146401137@N06/40335060661"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Nautilus Octopus"])),(t()(),s["ɵted"](-1,null,['" by Jin Kemoole is licensed under '])),(t()(),s["ɵeld"](16,0,null,null,1,"a",[["class","external text"],["href","https://creativecommons.org/licenses/by/2.0/"],["rel","nofollow"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CC BY 2.0"]))],null,(function(t,e){t(e,6,0,e.component.logoutUrl)}))}function km(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-sso-not-found",[],null,null,null,Am,Rm)),s["ɵdid"](1,49152,null,0,Cm,[],null,null)],null,null)}var Em=s["ɵccf"]("cd-sso-not-found",Cm,km,{},{},[]);class Lm{constructor(){this.icons=pt.a}}var Dm=s["ɵcrt"]({encapsulation:0,styles:[["h1[_ngcontent-%COMP%]{font-size:-webkit-xxx-large;font-family:monospace}h2[_ngcontent-%COMP%]{font-size:xx-large;font-family:monospace}i[_ngcontent-%COMP%]{font-size:200px}"]],data:{}});function Pm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","horizontal-align vertical-align full-height"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,9,"div",[["class","text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"h1",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Forbidden"])),(t()(),s["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"h2",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Sorry, you are not allowed to see what you were looking for."])),(t()(),s["ɵeld"](7,0,null,null,3,"button",[["class","btn btn-primary"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,8).onClick()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,Et.n,[Et.m,Et.a,[8,null],s.Renderer2,s.ElementRef],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](9,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Back"]))],(function(t,e){t(e,8,0,"/login")}),(function(t,e){t(e,4,0,s["ɵinlineInterpolate"](1,"",e.component.icons.lock," text-danger"))}))}function Mm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-forbidden",[],null,null,null,Pm,Dm)),s["ɵdid"](1,49152,null,0,Lm,[],null,null)],null,null)}var qm=s["ɵccf"]("cd-forbidden",Lm,Mm,{},{},[]);class jm{constructor(){}}var Fm=s["ɵcrt"]({encapsulation:0,styles:[["h1[_ngcontent-%COMP%]{font-size:-webkit-xxx-large;font-family:monospace}*[_ngcontent-%COMP%]{font-family:monospace}img[_ngcontent-%COMP%]{width:50vw}"]],data:{}});function Vm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","horizontal-align vertical-align full-height"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,16,"div",[["class","text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"h1",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Sorry, we could not find what you were looking for."])),(t()(),s["ɵeld"](4,0,null,null,0,"img",[["class","img-fluid mx-auto rounded"],["src","assets/1500px-Southern_Keeled_Octopus.jpg"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[' "'])),(t()(),s["ɵeld"](8,0,null,null,1,"a",[["href","https://collections.museumvictoria.com.au/species/8696"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Southern Keeled Octopus, Octopus berrima"])),(t()(),s["ɵted"](-1,null,['" by Museums Victoria (Photographer: Julian Finn) is licensed under '])),(t()(),s["ɵeld"](11,0,null,null,1,"a",[["class","external text"],["href","https://creativecommons.org/licenses/by/4.0"],["rel","nofollow"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CC BY 4.0"])),(t()(),s["ɵeld"](13,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,3,"button",[["class","btn btn-primary"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,15).onClick()&&a),a}),null,null)),s["ɵdid"](15,16384,null,0,Et.n,[Et.m,Et.a,[8,null],s.Renderer2,s.ElementRef],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](16,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Back"]))],(function(t,e){t(e,15,0,"/login")}),null)}function Gm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-not-found",[],null,null,null,Vm,Fm)),s["ɵdid"](1,49152,null,0,jm,[],null,null)],null,null)}var Bm=s["ɵccf"]("cd-not-found",jm,Gm,{},{},[]),zm=n("ES0t"),Ym=n("Xg1U"),Hm=n("z5nN"),Um=n("iutN"),Wm=n("EEJc"),Km=n("PEr+"),$m=n("a40w"),Zm=n("hfeG"),Jm=n("atuK"),Qm=s["ɵcrt"]({encapsulation:0,styles:[[".about-container[_ngcontent-%COMP%]{background-color:#374249;background-image:url(ceph_background.7c127240f022e7baf57d.gif);background-position:right bottom;background-repeat:no-repeat;color:#fff;text-shadow:1px 1px #374249}.product-versions[_ngcontent-%COMP%]{margin-top:30px}.product-versions[_ngcontent-%COMP%]   strong[_ngcontent-%COMP%]{margin-right:10px}.modal-header[_ngcontent-%COMP%]{border-bottom:none}.modal-header[_ngcontent-%COMP%]   .close[_ngcontent-%COMP%]{color:#fff;font-size:2em}.modal-body[_ngcontent-%COMP%]{padding-left:80px;padding-right:80px}.ceph-logo[_ngcontent-%COMP%]{width:25%;margin-bottom:30px;object-position:-20px 0}.modal-footer[_ngcontent-%COMP%]{display:block;border-top:none;padding:15px 80px 35px}"]],data:{}});function Xm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,45,"div",[["class","about-container"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"div",[["class","modal-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,2,"button",[["aria-label","Close"],["class","close float-right"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.modalRef.hide()&&a),a}),null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["×"])),(t()(),s["ɵeld"](5,0,null,null,37,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,0,"img",[["class","ceph-logo"],["src","assets/Ceph_Logo_Standard_RGB_Reversed_120411_fa.png"]],[[8,"alt",0]],null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,2,"h3",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](9,null,["",""])),(t()(),s["ɵeld"](10,0,null,null,6,"div",[["class","product-versions"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Version"])),(t()(),s["ɵeld"](13,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵted"](14,null,[" "," "," "])),(t()(),s["ɵeld"](15,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵted"](16,null,[" "," "])),(t()(),s["ɵeld"](17,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,24,"dl",[],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Ceph Manager"])),(t()(),s["ɵeld"](21,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](22,null,["",""])),(t()(),s["ɵeld"](23,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["User"])),(t()(),s["ɵeld"](25,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](26,null,["",""])),(t()(),s["ɵeld"](27,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["User Role"])),(t()(),s["ɵeld"](29,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](30,null,["",""])),(t()(),s["ɵeld"](31,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Browser"])),(t()(),s["ɵeld"](33,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](34,null,["",""])),(t()(),s["ɵeld"](35,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Browser Version"])),(t()(),s["ɵeld"](37,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](38,null,["",""])),(t()(),s["ɵeld"](39,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Browser OS"])),(t()(),s["ɵeld"](41,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](42,null,["",""])),(t()(),s["ɵeld"](43,0,null,null,2,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](44,0,null,null,1,"div",[["class","text-left"]],null,null,null,null,null)),(t()(),s["ɵted"](45,null,[" "," "," "]))],null,(function(t,e){var n=e.component;t(e,6,0,s["ɵinlineInterpolate"](1,"",n.projectConstants.organization,"")),t(e,9,0,n.projectConstants.projectName),t(e,14,0,n.versionNumber,n.versionHash),t(e,16,0,n.versionName),t(e,22,0,n.hostAddr),t(e,26,0,n.modalVariables.user),t(e,30,0,n.modalVariables.role),t(e,34,0,n.modalVariables.browserName),t(e,38,0,n.modalVariables.browserVersion),t(e,42,0,n.modalVariables.browserOS),t(e,45,0,n.copyright,n.projectConstants.license)}))}function ty(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-about",[],null,null,null,Xm,Qm)),s["ɵdid"](1,245760,null,0,It,[Ct.a,mt.a,Ot.a,J.a],null,null)],(function(t,e){t(e,1,0)}),null)}var ey=s["ɵccf"]("cd-about",It,ty,{},{},[]),ny=s["ɵcrt"]({encapsulation:0,styles:[".dropdown[_nghost-%COMP%] {\n      z-index: 1000;\n    }\n\n    .dropdown-menu[_nghost-%COMP%], .dropdown-menu[_ngcontent-%COMP%] {\n      overflow-y: auto;\n      height: 100px;\n    }"],data:{animation:[{type:7,name:"typeaheadAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function ay(t){return s["ɵvid"](0,[(t()(),s["ɵand"](0,null,null,0))],null,null)}function ry(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"span",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,0,0,e.component.highlight(e.context.match,e.context.query))}))}function iy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,[[2,0],["liElements",1]],null,1,"li",[["class","dropdown-header"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit)}))}function sy(t){return s["ɵvid"](0,[(t()(),s["ɵand"](0,null,null,0))],null,null)}function uy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,[[2,0],["liElements",1]],null,4,"li",[],[[24,"@typeaheadAnimation",0],[2,"active",null]],[[null,"mouseenter"]],(function(t,e,n){var a=!0;return"mouseenter"===e&&(a=!1!==t.component.selectActive(t.parent.context.$implicit)&&a),a}),null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"a",[["href","#"],["tabindex","-1"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.selectMatch(t.parent.context.$implicit,n)&&a),a}),null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,sy)),s["ɵdid"](3,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),s["ɵpod"](4,{item:0,index:1,match:2,query:3})],(function(t,e){var n=e.component,a=t(e,4,0,e.parent.context.$implicit.item,e.parent.context.index,e.parent.context.$implicit,n.query);t(e,3,0,a,n.itemTemplate||s["ɵnov"](e.parent.parent.parent,5))}),(function(t,e){var n=e.component;t(e,0,0,n.animationState,n.isActive(e.parent.context.$implicit))}))}function oy(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,iy)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,uy)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.context.$implicit.isHeader();t(e,1,0,n);var a=!e.context.$implicit.isHeader();t(e,3,0,a)}),null)}function ly(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,[[1,0],["ulElement",1]],null,2,"ul",[["class","dropdown-menu"]],[[4,"overflow-y",null],[4,"height",null]],null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,oy)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.matches)}),(function(t,e){var n=e.component;t(e,0,0,n.needScrollbar?"scroll":"auto",n.needScrollbar?n.guiHeight:"auto")}))}function dy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"h6",[["class","dropdown-header"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit)}))}function cy(t){return s["ɵvid"](0,[(t()(),s["ɵand"](0,null,null,0))],null,null)}function fy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,[[2,0],["liElements",1]],null,3,"button",[["class","dropdown-item"]],[[24,"@typeaheadAnimation",0],[2,"active",null]],[[null,"click"],[null,"mouseenter"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.selectMatch(t.parent.context.$implicit,n)&&a),"mouseenter"===e&&(a=!1!==r.selectActive(t.parent.context.$implicit)&&a),a}),null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,cy)),s["ɵdid"](2,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),s["ɵpod"](3,{item:0,index:1,match:2,query:3})],(function(t,e){var n=e.component,a=t(e,3,0,e.parent.context.$implicit.item,e.parent.context.index,e.parent.context.$implicit,n.query);t(e,2,0,a,n.itemTemplate||s["ɵnov"](e.parent.parent.parent,5))}),(function(t,e){var n=e.component;t(e,0,0,n.animationState,n.isActive(e.parent.context.$implicit))}))}function hy(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,dy)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fy)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.context.$implicit.isHeader();t(e,1,0,n);var a=!e.context.$implicit.isHeader();t(e,3,0,a)}),null)}function gy(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,hy)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component.matches)}),null)}function py(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{ulElement:0}),s["ɵqud"](671088640,2,{liElements:1}),(t()(),s["ɵand"](16777216,null,null,2,null,ay)),s["ɵdid"](3,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),s["ɵpod"](4,{matches:0,itemTemplate:1,query:2}),(t()(),s["ɵand"](0,[["bsItemTemplate",2]],null,0,null,ry)),(t()(),s["ɵand"](0,[["bs3Template",2]],null,0,null,ly)),(t()(),s["ɵand"](0,[["bs4Template",2]],null,0,null,gy))],(function(t,e){var n=e.component,a=t(e,4,0,n.matches,n.itemTemplate,n.query);t(e,3,0,a,n.optionsListTemplate||s["ɵnov"](e,n.isBs4?7:6))}),null)}function by(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"typeahead-container",[["class","dropdown open bottom"],["style","position: absolute;display: block;"]],[[2,"dropdown-menu",null],[4,"height",null],[4,"visibility",null],[2,"dropup",null]],[[null,"mouseleave"],[null,"blur"]],(function(t,e,n){var a=!0;return"mouseleave"===e&&(a=!1!==s["ɵnov"](t,1).focusLost()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).focusLost()&&a),a}),py,ny)),s["ɵdid"](1,180224,null,0,ku,[ra.a,s.Renderer2,s.ElementRef,s.ChangeDetectorRef],null,null)],null,(function(t,e){t(e,0,0,s["ɵnov"](e,1).isBs4,s["ɵnov"](e,1).isBs4&&s["ɵnov"](e,1).needScrollbar?s["ɵnov"](e,1).guiHeight:"auto","inherit",s["ɵnov"](e,1).dropup)}))}var my=s["ɵccf"]("typeahead-container",ku,by,{},{},[]),yy=n("ajRT"),vy=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function xy(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["Deep "]))],null,null)}function _y(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["deep "]))],null,null)}function Ty(t){return s["ɵvid"](0,[s["ɵpid"](0,qo.a,[]),(t()(),s["ɵeld"](1,0,null,null,33,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](2,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](3,0,null,0,6,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["OSDs "])),(t()(),s["ɵeld"](5,0,null,null,3,null,null,null,null,null,null,null)),s["ɵdid"](6,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xy)),s["ɵdid"](8,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵted"](-1,null,["Scrub"])),(t()(),s["ɵeld"](10,0,null,1,24,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,23,"form",[["name","scrubForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,13).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,13).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,16).onSubmit()&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,K.G,[],null,null),s["ɵdid"](13,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](15,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](16,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](17,0,null,null,11,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,10,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["You are about to apply a "])),(t()(),s["ɵeld"](20,0,null,null,3,null,null,null,null,null,null,null)),s["ɵdid"](21,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_y)),s["ɵdid"](23,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵted"](-1,null,["scrub to the OSD(s): "])),(t()(),s["ɵeld"](25,0,null,null,2,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](26,null,["",""])),s["ɵppd"](27,1),(t()(),s["ɵted"](-1,null,["."])),(t()(),s["ɵeld"](29,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](30,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.scrub()&&a),a}),ks.b,ks.a)),s["ɵdid"](31,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Submit"])),(t()(),s["ɵeld"](33,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Ls.b,Ls.a)),s["ɵdid"](34,49152,null,0,Ds.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.bsModalRef),t(e,6,0,n.deep),t(e,8,0,"1"),t(e,13,0,n.scrubForm),t(e,16,0,n.scrubForm),t(e,21,0,n.deep),t(e,23,0,"1"),t(e,31,0,n.scrubForm),t(e,34,0,"Cancel",n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,11,0,s["ɵnov"](e,15).ngClassUntouched,s["ɵnov"](e,15).ngClassTouched,s["ɵnov"](e,15).ngClassPristine,s["ɵnov"](e,15).ngClassDirty,s["ɵnov"](e,15).ngClassValid,s["ɵnov"](e,15).ngClassInvalid,s["ɵnov"](e,15).ngClassPending);var a=s["ɵunv"](e,26,0,t(e,27,0,s["ɵnov"](e,0),n.selected));t(e,26,0,a)}))}function wy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-scrub-modal",[],null,null,null,Ty,vy)),s["ɵdid"](1,114688,null,0,pl,[Ct.a,mi,bt.a,fe.a,qo.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Oy=s["ɵccf"]("cd-osd-scrub-modal",pl,wy,{},{},[]),Sy=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Iy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"hr",[["class","m-1"]],null,null,null,null,null))],null,null)}function Ny(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"checked",0],[8,"name",0],[8,"id",0],[8,"disabled",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=0!=(t.context.$implicit.value=!t.context.$implicit.value)&&a),a}),null,null)),s["ɵdid"](2,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](3,16384,null,0,Q.h,[[3,K.d],Q.a],null,null),(t()(),s["ɵeld"](4,0,null,null,5,"label",[["class","custom-control-label"],["ng-class","['tc_' + key]"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵeld"](7,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Iy)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,11,0,!e.context.last)}),(function(t,e){t(e,1,0,e.context.$implicit.value,e.context.$implicit.code,e.context.$implicit.code,e.context.$implicit.disabled,s["ɵnov"](e,3).validClass,s["ɵnov"](e,3).invalidClass),t(e,4,0,e.context.$implicit.code),t(e,6,0,e.context.$implicit.name),t(e,9,0,e.context.$implicit.description)}))}function Cy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),ks.b,ks.a)),s["ɵdid"](1,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Submit"]))],(function(t,e){t(e,1,0,e.component.osdFlagsForm)}),null)}function Ry(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,20,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](1,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster-wide OSD Flags"])),(t()(),s["ɵeld"](4,0,null,1,16,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,15,"form",[["cdFormScope","osd"],["name","osdFlagsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,8).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,11).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,Z.a,[],{cdFormScope:[0,"cdFormScope"]},null),s["ɵdid"](7,16384,null,0,K.G,[],null,null),s["ɵdid"](8,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](10,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](11,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](12,0,null,null,2,"div",[["class","modal-body osd-modal"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Ny)),s["ɵdid"](14,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](15,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](16,0,null,null,4,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Cy)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](19,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Ls.b,Ls.a)),s["ɵdid"](20,49152,null,0,Ds.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,6,0,"osd"),t(e,8,0,n.osdFlagsForm),t(e,11,0,n.osdFlagsForm),t(e,14,0,n.flags),t(e,18,0,n.permissions.osd.update),t(e,20,0,"Cancel",n.bsModalRef.hide)}),(function(t,e){t(e,5,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending)}))}function Ay(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-flags-modal",[],null,null,null,Ry,Sy)),s["ɵdid"](1,114688,null,0,ul,[Ct.a,J.a,mi,bt.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var ky=s["ɵccf"]("cd-osd-flags-modal",ul,Ay,{},{},[]),Ey=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ly(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-hdd ml-2"]],[[8,"title",0]],null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster-wide"]))],null,(function(t,e){t(e,0,0,e.component.clusterWideTooltip)}))}function Dy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"hr",[["class","m-1"]],null,null,null,null,null))],null,null)}function Py(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,13,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"checked",0],[8,"indeterminate",0],[8,"name",0],[8,"id",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.changeValue(t.context.$implicit)&&a),a}),null,null)),s["ɵdid"](2,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](3,16384,null,0,Q.h,[[3,K.d],Q.a],null,null),(t()(),s["ɵeld"](4,0,null,null,7,"label",[["class","custom-control-label"],["ng-class","['tc_' + key]"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Ly)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](9,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](11,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Dy)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,8,0,e.context.$implicit.clusterWide),t(e,13,0,!e.context.last)}),(function(t,e){t(e,1,0,e.context.$implicit.value,e.context.$implicit.indeterminate,e.context.$implicit.code,e.context.$implicit.code,s["ɵnov"](e,3).validClass,s["ɵnov"](e,3).invalidClass),t(e,4,0,e.context.$implicit.code),t(e,6,0,e.context.$implicit.name),t(e,11,0,e.context.$implicit.description)}))}function My(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),ks.b,ks.a)),s["ɵdid"](1,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Submit"]))],(function(t,e){t(e,1,0,e.component.osdFlagsForm)}),null)}function qy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,20,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](1,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Individual OSD Flags"])),(t()(),s["ɵeld"](4,0,null,1,16,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,15,"form",[["name","osdFlagsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,7).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,7).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,10).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,K.G,[],null,null),s["ɵdid"](7,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](9,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](10,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](11,0,null,null,2,"div",[["class","modal-body osd-modal"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Py)),s["ɵdid"](13,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](14,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.resetSelection()&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["Restore previous selection"])),(t()(),s["ɵand"](16777216,null,null,1,null,My)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](19,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Ls.b,Ls.a)),s["ɵdid"](20,49152,null,0,Ds.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.activeModal),t(e,7,0,n.osdFlagsForm),t(e,10,0,n.osdFlagsForm),t(e,13,0,n.flags),t(e,18,0,n.permissions.osd.update),t(e,20,0,"Cancel",n.activeModal.hide)}),(function(t,e){t(e,5,0,s["ɵnov"](e,9).ngClassUntouched,s["ɵnov"](e,9).ngClassTouched,s["ɵnov"](e,9).ngClassPristine,s["ɵnov"](e,9).ngClassDirty,s["ɵnov"](e,9).ngClassValid,s["ɵnov"](e,9).ngClassInvalid,s["ɵnov"](e,9).ngClassPending)}))}function jy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-flags-indiv-modal",[],null,null,null,qy,Ey)),s["ɵdid"](1,114688,null,0,sl,[Ct.a,J.a,mi,bt.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Fy=s["ɵccf"]("cd-osd-flags-indiv-modal",sl,jy,{},{},[]),Vy=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Gy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit.name),t(e,2,0,e.context.$implicit.name)}),(function(t,e){t(e,3,0,e.context.$implicit.text)}))}function By(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function zy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](1,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](2,0,["",""]))],null,(function(t,e){t(e,2,0,e.parent.context.$implicit.value.desc)}))}function Yy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function Hy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.value.patternHelpText)}))}function Uy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too high! It must not be greater than ","."]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.value.maxValue)}))}function Wy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too low! It must not be lower than ","."]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.value.minValue)}))}function Ky(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,7,"label",[["class","col-form-label col-sm-6"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,4,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](8,{required:0}),(t()(),s["ɵted"](9,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,zy)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](12,0,null,0,17,"div",[["class","col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,8,"input",[["class","form-control"],["type","number"]],[[8,"id",0],[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,15)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,15).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,15)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,15)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,16).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,16).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,16).onTouched()&&a),a}),null,null)),s["ɵdid"](14,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](15,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](16,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](18,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](20,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](21,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yy)),s["ɵdid"](23,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hy)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Uy)),s["ɵdid"](27,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Wy)),s["ɵdid"](29,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0);var a=t(e,8,0,n.osdRecvSpeedForm.getValue("customizePriority"));t(e,7,0,a),t(e,11,0,e.context.$implicit.value.desc),t(e,18,0,e.context.$implicit.key),t(e,21,0,e.context.$implicit.key),t(e,23,0,n.osdRecvSpeedForm.getValue("customizePriority")&&n.osdRecvSpeedForm.showError(e.context.$implicit.key,s["ɵnov"](e.parent,8),"required")),t(e,25,0,n.osdRecvSpeedForm.getValue("customizePriority")&&n.osdRecvSpeedForm.showError(e.context.$implicit.key,s["ɵnov"](e.parent,8),"pattern")),t(e,27,0,n.osdRecvSpeedForm.getValue("customizePriority")&&n.osdRecvSpeedForm.showError(e.context.$implicit.key,s["ɵnov"](e.parent,8),"max")),t(e,29,0,n.osdRecvSpeedForm.getValue("customizePriority")&&n.osdRecvSpeedForm.showError(e.context.$implicit.key,s["ɵnov"](e.parent,8),"min"))}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.context.$implicit.key),t(e,9,0,e.context.$implicit.value.text),t(e,13,1,[e.context.$implicit.key,!n.osdRecvSpeedForm.getValue("customizePriority"),s["ɵnov"](e,20).ngClassUntouched,s["ɵnov"](e,20).ngClassTouched,s["ɵnov"](e,20).ngClassPristine,s["ɵnov"](e,20).ngClassDirty,s["ɵnov"](e,20).ngClassValid,s["ɵnov"](e,20).ngClassInvalid,s["ɵnov"](e,20).ngClassPending,s["ɵnov"](e,21).validClass,s["ɵnov"](e,21).invalidClass])}))}function $y(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),ks.b,ks.a)),s["ɵdid"](1,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Submit"]))],(function(t,e){t(e,1,0,e.component.osdRecvSpeedForm)}),null)}function Zy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,56,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](1,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["OSD Recovery Priority"])),(t()(),s["ɵeld"](4,0,null,1,52,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,51,"form",[["cdFormScope","osd"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,8).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,11).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,Z.a,[],{cdFormScope:[0,"cdFormScope"]},null),s["ɵdid"](7,16384,null,0,K.G,[],null,null),s["ɵdid"](8,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](10,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](11,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](12,0,null,null,38,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](14,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](17,0,null,0,1,"label",[["class","col-form-label col-sm-6 required"],["for","priority"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Priority"])),(t()(),s["ɵeld"](19,0,null,0,12,"div",[["class","col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","priority"],["id","priority"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,22).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,22).onTouched()&&a),"change"===e&&(a=!1!==r.onPriorityChange(n.target.value)&&a),a}),null,null)),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](24,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](26,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gy)),s["ɵdid"](29,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,By)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](32,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](33,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](36,0,null,0,11,"div",[["class","offset-sm-6 col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](37,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](38,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","customizePriority"],["id","customizePriority"],["name","customizePriority"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,40).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,40).onTouched()&&a),"change"===e&&(a=!1!==r.onCustomizePriorityChange()&&a),a}),null,null)),s["ɵdid"](39,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](40,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](42,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](44,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](45,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](46,0,null,null,1,"label",[["class","custom-control-label"],["for","customizePriority"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Customize priority values"])),(t()(),s["ɵand"](16777216,null,null,2,null,Ky)),s["ɵdid"](49,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers]),(t()(),s["ɵeld"](51,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](52,0,null,null,4,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,$y)),s["ɵdid"](54,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](55,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Ls.b,Ls.a)),s["ɵdid"](56,49152,null,0,Ds.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,6,0,"osd"),t(e,8,0,n.osdRecvSpeedForm),t(e,11,0,n.osdRecvSpeedForm),t(e,14,0),t(e,24,0,"priority"),t(e,27,0,"priority"),t(e,29,0,n.priorities),t(e,31,0,n.osdRecvSpeedForm.showError("priority",s["ɵnov"](e,8),"required")),t(e,33,0),t(e,42,0,"customizePriority"),t(e,45,0,"customizePriority"),t(e,49,0,s["ɵunv"](e,49,0,s["ɵnov"](e,50).transform(n.priorityAttrs))),t(e,54,0,n.permissions.configOpt.update),t(e,56,0,"Cancel",n.bsModalRef.hide)}),(function(t,e){t(e,5,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending),t(e,13,0,s["ɵnov"](e,14).hasErrors,s["ɵnov"](e,14).hasSuccess),t(e,20,0,s["ɵnov"](e,26).ngClassUntouched,s["ɵnov"](e,26).ngClassTouched,s["ɵnov"](e,26).ngClassPristine,s["ɵnov"](e,26).ngClassDirty,s["ɵnov"](e,26).ngClassValid,s["ɵnov"](e,26).ngClassInvalid,s["ɵnov"](e,26).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass),t(e,32,0,s["ɵnov"](e,33).hasErrors,s["ɵnov"](e,33).hasSuccess),t(e,38,0,s["ɵnov"](e,44).ngClassUntouched,s["ɵnov"](e,44).ngClassTouched,s["ɵnov"](e,44).ngClassPristine,s["ɵnov"](e,44).ngClassDirty,s["ɵnov"](e,44).ngClassValid,s["ɵnov"](e,44).ngClassInvalid,s["ɵnov"](e,44).ngClassPending,s["ɵnov"](e,45).validClass,s["ɵnov"](e,45).invalidClass)}))}function Jy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-recv-speed-modal",[],null,null,null,Zy,Vy)),s["ɵdid"](1,114688,null,0,hl,[Ct.a,J.a,ol.a,bt.a,fe.a,mi],null,null)],(function(t,e){t(e,1,0)}),null)}var Qy=s["ɵccf"]("cd-osd-recv-speed-modal",hl,Jy,{},{},[]),Xy=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function tv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function ev(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value needs to be between 0 and 1."]))],null,null)}function nv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,tv)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ev)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,null==n.weight.errors?null:n.weight.errors.required),t(e,4,0,(null==n.weight.errors?null:n.weight.errors.max)||(null==n.weight.errors?null:n.weight.errors.min))}),null)}function av(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,32,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](1,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](3,null,["Reweight OSD: ",""])),(t()(),s["ɵeld"](4,0,null,1,28,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,27,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,7).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,7).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,10).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,K.G,[],null,null),s["ɵdid"](7,540672,null,0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](9,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](10,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](11,0,null,null,15,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,1,"label",[["class","col-sm-2 col-form-label"],["for","weight"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Weight"])),(t()(),s["ɵeld"](15,0,null,null,11,"div",[["class","col-sm-10"]],null,null,null,null,null)),(t()(),s["ɵeld"](16,0,null,null,8,"input",[["class","form-control"],["formControlName","weight"],["id","weight"],["max","1"],["min","0"],["step","0.1"],["type","number"]],[[8,"value",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,18)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,18).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,18)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,18)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,19).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,19).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,19).onTouched()&&a),a}),null,null)),s["ɵdid"](17,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](18,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](19,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](21,671744,null,0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](23,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](24,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,nv)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](27,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.reweight()&&a),a}),ks.b,ks.a)),s["ɵdid"](29,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"],disabled:[1,"disabled"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Reweight"])),(t()(),s["ɵeld"](31,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Ls.b,Ls.a)),s["ɵdid"](32,49152,null,0,Ds.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,7,0,n.reweightForm),t(e,10,0,n.reweightForm),t(e,21,0,"weight"),t(e,24,0,"weight"),t(e,26,0,n.weight.errors),t(e,29,0,n.reweightForm,n.reweightForm.invalid),t(e,32,0,"Cancel",n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,3,0,n.osdId),t(e,5,0,s["ɵnov"](e,9).ngClassUntouched,s["ɵnov"](e,9).ngClassTouched,s["ɵnov"](e,9).ngClassPristine,s["ɵnov"](e,9).ngClassDirty,s["ɵnov"](e,9).ngClassValid,s["ɵnov"](e,9).ngClassInvalid,s["ɵnov"](e,9).ngClassPending),t(e,16,0,n.currentWeight,s["ɵnov"](e,23).ngClassUntouched,s["ɵnov"](e,23).ngClassTouched,s["ɵnov"](e,23).ngClassPristine,s["ɵnov"](e,23).ngClassDirty,s["ɵnov"](e,23).ngClassValid,s["ɵnov"](e,23).ngClassInvalid,s["ɵnov"](e,23).ngClassPending,s["ɵnov"](e,24).validClass,s["ɵnov"](e,24).invalidClass)}))}function rv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-reweight-modal",[],null,null,null,av,Xy)),s["ɵdid"](1,114688,null,0,gl,[Ct.a,mi,zu.a],null,null)],(function(t,e){t(e,1,0)}),null)}var iv=s["ɵccf"]("cd-osd-reweight-modal",gl,rv,{},{},[]),sv=s["ɵcrt"]({encapsulation:0,styles:[[".custom-checkbox[_ngcontent-%COMP%]   input[_ngcontent-%COMP%], .custom-checkbox[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{cursor:pointer}.col-form-label[_ngcontent-%COMP%]{text-align:left}"]],data:{}});function uv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](1,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](2,0,[" ",""]))],null,(function(t,e){t(e,2,0,e.parent.parent.context.$implicit.long_desc)}))}function ov(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,"div",[["class","form-group row pt-2"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,7,"label",[["class","col-form-label col-6"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵeld"](7,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,3,"span",[["class","text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,uv)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](12,0,null,0,10,"div",[["class","col-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,15).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,15).onTouched()&&a),a}),null,null)),s["ɵdid"](15,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](17,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](19,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](20,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](21,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](22,0,null,null,0,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null))],(function(t,e){t(e,1,0),t(e,11,0,e.parent.context.$implicit.long_desc),t(e,17,0,e.parent.context.$implicit.name),t(e,21,0,e.parent.context.$implicit.name)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.parent.context.$implicit.name),t(e,6,0,e.parent.context.$implicit.text),t(e,9,0,e.parent.context.$implicit.desc),t(e,14,0,e.parent.context.$implicit.name,s["ɵnov"](e,19).ngClassUntouched,s["ɵnov"](e,19).ngClassTouched,s["ɵnov"](e,19).ngClassPristine,s["ɵnov"](e,19).ngClassDirty,s["ɵnov"](e,19).ngClassValid,s["ɵnov"](e,19).ngClassInvalid,s["ɵnov"](e,19).ngClassPending,s["ɵnov"](e,21).validClass,s["ɵnov"](e,21).invalidClass),t(e,22,0,e.parent.context.$implicit.name)}))}function lv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-helper",[],null,null,null,qu.b,qu.a)),s["ɵdid"](1,49152,null,0,ju.a,[],null,null),(t()(),s["ɵted"](2,0,[" ",""]))],null,(function(t,e){t(e,2,0,e.parent.parent.context.$implicit.long_desc)}))}function dv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"div",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"button",[["class","btn btn-light"],["data-toggle","button"],["title","Remove the custom configuration value. The default configuration will be inherited and used instead."],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.resetValue(t.parent.parent.context.$implicit.name)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1)],(function(t,e){var n=t(e,5,0,e.component.icons.erase);t(e,4,0,n)}),null)}function cv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",""]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.additionalTypeInfo.patternHelpText)}))}function fv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",""]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.additionalTypeInfo.patternHelpText)}))}function hv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too high! It must not be greater than ","."]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.maxValue)}))}function gv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too low! It must not be lower than ","."]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.minValue)}))}function pv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,30,"div",[["class","form-group row pt-2"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,6,"label",[["class","col-6 col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](5,null,[""," "])),(t()(),s["ɵeld"](6,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,3,"span",[["class","text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](8,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,lv)),s["ɵdid"](10,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](11,0,null,0,19,"div",[["class","col-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,10,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,7,"input",[["class","form-control"]],[[8,"type",0],[8,"id",0],[8,"placeholder",0],[8,"step",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,14)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,14)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,14)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](14,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](16,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](18,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](19,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](20,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,dv)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,cv)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fv)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,hv)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,gv)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,e.parent.context.$implicit.long_desc),t(e,16,0,e.parent.context.$implicit.name),t(e,20,0,e.parent.context.$implicit.name),t(e,22,0,n.optionsFormShowReset),t(e,24,0,n.optionsForm.showError(e.parent.context.$implicit.name,n.optionsFormDir,"pattern")),t(e,26,0,n.optionsForm.showError(e.parent.context.$implicit.name,n.optionsFormDir,"invalidUuid")),t(e,28,0,n.optionsForm.showError(e.parent.context.$implicit.name,n.optionsFormDir,"max")),t(e,30,0,n.optionsForm.showError(e.parent.context.$implicit.name,n.optionsFormDir,"min"))}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.parent.context.$implicit.name),t(e,5,0,e.parent.context.$implicit.text),t(e,8,0,e.parent.context.$implicit.desc),t(e,13,1,[e.parent.context.$implicit.additionalTypeInfo.inputType,e.parent.context.$implicit.name,e.parent.context.$implicit.additionalTypeInfo.humanReadable,n.getStep(e.parent.context.$implicit.type,n.optionsForm.getValue(e.parent.context.$implicit.name)),s["ɵnov"](e,18).ngClassUntouched,s["ɵnov"](e,18).ngClassTouched,s["ɵnov"](e,18).ngClassPristine,s["ɵnov"](e,18).ngClassDirty,s["ɵnov"](e,18).ngClassValid,s["ɵnov"](e,18).ngClassInvalid,s["ɵnov"](e,18).ngClassPending,s["ɵnov"](e,20).validClass,s["ɵnov"](e,20).invalidClass])}))}function bv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"hr",[["class","my-2"]],null,null,null,null,null))],null,null)}function mv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ov)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pv)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,bv)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,"bool"===e.context.$implicit.type),t(e,4,0,"bool"!==e.context.$implicit.type),t(e,6,0,!e.context.last)}),null)}function yv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"div",[],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,1).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,1).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,4).onSubmit()&&a),a}),null,null)),s["ɵdid"](1,540672,null,0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](3,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](4,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mv)),s["ɵdid"](6,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.optionsFormGroup),t(e,4,0,n.optionsFormGroup),t(e,6,0,n.options)}),(function(t,e){t(e,0,0,s["ɵnov"](e,3).ngClassUntouched,s["ɵnov"](e,3).ngClassTouched,s["ɵnov"](e,3).ngClassPristine,s["ɵnov"](e,3).ngClassDirty,s["ɵnov"](e,3).ngClassValid,s["ɵnov"](e,3).ngClassInvalid,s["ɵnov"](e,3).ngClassPending)}))}var vv=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function xv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"a",[["class","pull-right margin-right-md"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=0!=(t.component.advancedEnabled=!0)&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["Advanced..."]))],null,null)}function _v(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"h3",[["class","page-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Advanced configuration options"])),(t()(),s["ɵeld"](3,0,null,null,1,"cd-config-option",[],null,null,null,yv,sv)),s["ɵdid"](4,114688,[[2,4],["advancedOptionsValues",4]],0,dl,[ol.a],{optionNames:[0,"optionNames"],optionsForm:[1,"optionsForm"],optionsFormDir:[2,"optionsFormDir"],optionsFormGroupName:[3,"optionsFormGroupName"]},null)],(function(t,e){var n=e.component;t(e,4,0,n.advancedOptions,n.osdPgScrubForm,s["ɵnov"](e.parent,14),"advancedFormGroup")}),null)}function Tv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),ks.b,ks.a)),s["ɵdid"](1,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](2,0,[""," ",""])),s["ɵppd"](3,1),s["ɵppd"](4,1)],(function(t,e){t(e,1,0,e.component.osdPgScrubForm)}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent,0),n.action)),r=s["ɵunv"](e,2,1,t(e,4,0,s["ɵnov"](e.parent,1),n.resource));t(e,2,0,a,r)}))}function wv(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Ps.a,[]),s["ɵqud"](402653184,1,{basicOptionsValues:0}),s["ɵqud"](671088640,2,{advancedOptionsValues:0}),(t()(),s["ɵeld"](4,0,null,null,28,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](5,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](6,0,null,0,3,null,null,null,null,null,null,null)),(t()(),s["ɵted"](7,null,[""," ",""])),s["ɵppd"](8,1),s["ɵppd"](9,1),(t()(),s["ɵeld"](10,0,null,1,22,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,21,"form",[["cdFormScope","osd"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,14).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,14).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,17).onSubmit()&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,Z.a,[],{cdFormScope:[0,"cdFormScope"]},null),s["ɵdid"](13,16384,null,0,K.G,[],null,null),s["ɵdid"](14,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](16,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](17,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](18,0,null,null,8,"div",[["class","modal-body osd-modal"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,1,"cd-config-option",[],null,null,null,yv,sv)),s["ɵdid"](20,114688,[[1,4],["basicOptionsValues",4]],0,dl,[ol.a],{optionNames:[0,"optionNames"],optionsForm:[1,"optionsForm"],optionsFormDir:[2,"optionsFormDir"],optionsFormGroupName:[3,"optionsFormGroupName"]},null),(t()(),s["ɵeld"](21,0,null,null,3,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,2,"div",[["class","col-sm-12"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,xv)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_v)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](27,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,4,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Tv)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](31,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](32,49152,null,0,Ds.a,[i.Location,St.b],{back:[0,"back"]},null)],(function(t,e){var n=e.component;t(e,5,0,n.bsModalRef),t(e,12,0,"osd"),t(e,14,0,n.osdPgScrubForm),t(e,17,0,n.osdPgScrubForm),t(e,20,0,n.basicOptions,n.osdPgScrubForm,s["ɵnov"](e,14),"basicFormGroup"),t(e,24,0,!n.advancedEnabled),t(e,26,0,n.advancedEnabled),t(e,30,0,n.permissions.configOpt.update),t(e,32,0,n.bsModalRef.hide)}),(function(t,e){var n=e.component,a=s["ɵunv"](e,7,0,t(e,8,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,7,1,t(e,9,0,s["ɵnov"](e,1),n.resource));t(e,7,0,a,r),t(e,11,0,s["ɵnov"](e,16).ngClassUntouched,s["ɵnov"](e,16).ngClassTouched,s["ɵnov"](e,16).ngClassPristine,s["ɵnov"](e,16).ngClassDirty,s["ɵnov"](e,16).ngClassValid,s["ɵnov"](e,16).ngClassInvalid,s["ɵnov"](e,16).ngClassPending)}))}function Ov(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-pg-scrub-modal",[],null,null,null,wv,vv)),s["ɵdid"](1,49152,null,0,fl,[Ct.a,J.a,bt.a,fe.a,St.b],null,null)],null,null)}var Sv=s["ɵccf"]("cd-osd-pg-scrub-modal",fl,Ov,{},{},[]),Iv=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Nv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function Cv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","help-block"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function Rv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","help-block"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function Av(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"div",[["id","match-state"]],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵted"](2,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,0,0,s["ɵinlineInterpolate"](1,"cd-col-form-offset ",n.matcherMatch.cssClass,"")),t(e,1,0,s["ɵinlineInterpolate"](1,"text-muted ",n.matcherMatch.cssClass,"")),t(e,2,0,n.matcherMatch.status)}))}function kv(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["Update"]))],null,null)}function Ev(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["Add"]))],null,null)}function Lv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,82,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](1,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Matcher"])),(t()(),s["ɵeld"](4,0,null,1,78,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,77,"form",[["class","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,7).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,7).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,10).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,K.G,[],null,null),s["ɵdid"](7,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](9,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](10,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](11,0,null,null,59,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](13,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","name"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Name"])),(t()(),s["ɵeld"](18,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,13,"select",[["class","form-control"],["formControlName","name"],["id","name"],["name","name"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,21).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,21).onTouched()&&a),a}),null,null)),s["ɵdid"](20,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](21,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](23,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](25,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](26,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](27,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](28,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](29,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Select an attribute to match against --"])),(t()(),s["ɵand"](16777216,null,null,1,null,Nv)),s["ɵdid"](32,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cv)),s["ɵdid"](34,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](35,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](36,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](39,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","value"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Value"])),(t()(),s["ɵeld"](41,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](42,16777216,null,null,8,"input",[["class","form-control"],["formControlName","value"],["id","value"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"keyup"],[null,"click"],[null,"focus"],[null,"keydown"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,44)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,44).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,44)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,44)._compositionEnd(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,49).onInput(n)&&a),"keyup"===e&&(a=!1!==s["ɵnov"](t,49).onChange(n)&&a),"click"===e&&(a=!1!==s["ɵnov"](t,49).onFocus()&&a),"focus"===e&&(a=!1!==s["ɵnov"](t,49).onFocus()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,49).onBlur()&&a),"keydown"===e&&(a=!1!==s["ɵnov"](t,49).onKeydown(n)&&a),a}),null,null)),s["ɵdid"](43,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](44,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](46,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](48,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](49,212992,null,0,Lu,[U.a,Eu,s.ChangeDetectorRef,s.ElementRef,K.q,s.Renderer2,s.ViewContainerRef],{typeahead:[0,"typeahead"],typeaheadMinLength:[1,"typeaheadMinLength"]},null),s["ɵdid"](50,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Rv)),s["ɵdid"](52,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Av)),s["ɵdid"](54,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](55,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Rs.b,Rs.a)),s["ɵdid"](56,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](59,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](60,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](61,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","isRegex"],["id","is-regex"],["name","is-regex"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,63).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,63).onTouched()&&a),a}),null,null)),s["ɵdid"](62,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](63,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](65,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](67,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](68,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](69,0,null,null,1,"label",[["class","custom-control-label"],["for","is-regex"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Use regular expression"])),(t()(),s["ɵeld"](71,0,null,null,11,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](72,0,null,null,8,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),ks.b,ks.a)),s["ɵdid"](73,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵeld"](74,0,null,0,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](75,0,null,null,5,null,null,null,null,null,null,null)),s["ɵdid"](76,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,kv)),s["ɵdid"](78,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ev)),s["ɵdid"](80,16384,null,0,i.NgSwitchDefault,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],null,null),(t()(),s["ɵeld"](81,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,Ls.b,Ls.a)),s["ɵdid"](82,49152,null,0,Ds.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,7,0,n.form),t(e,10,0,n.form),t(e,13,0),t(e,23,0,"name"),t(e,26,0,"name"),t(e,28,0,null),t(e,29,0,null),t(e,32,0,n.nameAttributes),t(e,34,0,n.form.showError("name",s["ɵnov"](e,7),"required")),t(e,36,0),t(e,46,0,"value"),t(e,49,0,n.possibleValues,0),t(e,50,0,"value"),t(e,52,0,n.form.showError("value",s["ɵnov"](e,7),"required")),t(e,54,0,n.form.getValue("value")&&!n.form.getValue("isRegex")&&n.matcherMatch),t(e,56,0),t(e,65,0,"isRegex"),t(e,68,0,"isRegex"),t(e,73,0,n.form),t(e,76,0,n.editMode),t(e,78,0,"1"),t(e,82,0,"Close",n.bsModalRef.hide)}),(function(t,e){t(e,5,0,s["ɵnov"](e,9).ngClassUntouched,s["ɵnov"](e,9).ngClassTouched,s["ɵnov"](e,9).ngClassPristine,s["ɵnov"](e,9).ngClassDirty,s["ɵnov"](e,9).ngClassValid,s["ɵnov"](e,9).ngClassInvalid,s["ɵnov"](e,9).ngClassPending),t(e,12,0,s["ɵnov"](e,13).hasErrors,s["ɵnov"](e,13).hasSuccess),t(e,19,0,s["ɵnov"](e,25).ngClassUntouched,s["ɵnov"](e,25).ngClassTouched,s["ɵnov"](e,25).ngClassPristine,s["ɵnov"](e,25).ngClassDirty,s["ɵnov"](e,25).ngClassValid,s["ɵnov"](e,25).ngClassInvalid,s["ɵnov"](e,25).ngClassPending,s["ɵnov"](e,26).validClass,s["ɵnov"](e,26).invalidClass),t(e,35,0,s["ɵnov"](e,36).hasErrors,s["ɵnov"](e,36).hasSuccess),t(e,42,0,s["ɵnov"](e,48).ngClassUntouched,s["ɵnov"](e,48).ngClassTouched,s["ɵnov"](e,48).ngClassPristine,s["ɵnov"](e,48).ngClassDirty,s["ɵnov"](e,48).ngClassValid,s["ɵnov"](e,48).ngClassInvalid,s["ɵnov"](e,48).ngClassPending,s["ɵnov"](e,50).validClass,s["ɵnov"](e,50).invalidClass),t(e,55,0,s["ɵnov"](e,56).hasErrors,s["ɵnov"](e,56).hasSuccess),t(e,61,0,s["ɵnov"](e,67).ngClassUntouched,s["ɵnov"](e,67).ngClassTouched,s["ɵnov"](e,67).ngClassPristine,s["ɵnov"](e,67).ngClassDirty,s["ɵnov"](e,67).ngClassValid,s["ɵnov"](e,67).ngClassInvalid,s["ɵnov"](e,67).ngClassPending,s["ɵnov"](e,68).validClass,s["ɵnov"](e,68).invalidClass)}))}function Dv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-silence-matcher-modal",[],null,null,null,Lv,Iv)),s["ɵdid"](1,49152,null,0,Xf,[zu.a,Jf,Ct.a],null,null)],null,null)}var Pv=s["ɵccf"]("cd-silence-matcher-modal",Xf,Dv,{},{submitAction:"submitAction"},[]),Mv=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function qv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-dark ml-2"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.context.$implicit)}))}function jv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["size","slim"],["type","warning"]],null,null,null,Pr.b,Pr.a)),s["ɵdid"](1,114688,null,0,Mr.a,[fe.a],{type:[0,"type"],size:[1,"size"],showTitle:[2,"showTitle"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["At least one of these filters must be applied in order to proceed:"])),(t()(),s["ɵand"](16777216,null,0,1,null,qv)),s["ɵdid"](5,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"warning","slim",!1),t(e,5,0,n.requiredFilters)}),null)}function Fv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"p",[["class","text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](3,null,["Number of devices: ",". Raw capacity: ","."])),s["ɵppd"](4,1)],null,(function(t,e){var n=e.component,a=n.filteredDevices.length,r=s["ɵunv"](e,3,1,t(e,4,0,s["ɵnov"](e.parent,0),n.capacity));t(e,3,0,a,r)}))}function Vv(t){return s["ɵvid"](0,[s["ɵpid"](0,ba.a,[Sa.a]),s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵqud"](671088640,1,{inventoryDevices:0}),(t()(),s["ɵeld"](3,0,null,null,25,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](4,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](5,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](6,null,[""," devices"])),(t()(),s["ɵeld"](7,0,null,1,21,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,20,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,10).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,10).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,13).onSubmit()&&a),a}),null,null)),s["ɵdid"](9,16384,null,0,K.G,[],null,null),s["ɵdid"](10,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](12,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](13,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](14,0,null,null,7,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,jv)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](17,0,null,null,2,"cd-inventory-devices",[],null,[[null,"filterChange"]],(function(t,e,n){var a=!0;return"filterChange"===e&&(a=!1!==t.component.onFilterChange(n)&&a),a}),Kr,Wr)),s["ɵdid"](18,245760,[[1,4],["inventoryDevices",4]],0,Ur,[J.a,ba.a,fe.a,Ct.b,bt.a,Br],{devices:[0,"devices"],hiddenColumns:[1,"hiddenColumns"],filterColumns:[2,"filterColumns"]},{filterChange:"filterChange"}),s["ɵpad"](19,2),(t()(),s["ɵand"](16777216,null,null,1,null,Fv)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](22,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](23,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),ks.b,ks.a)),s["ɵdid"](24,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"],disabled:[1,"disabled"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](25,0,["",""])),s["ɵppd"](26,1),(t()(),s["ɵeld"](27,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](28,49152,null,0,Ds.a,[i.Location,St.b],{back:[0,"back"]},null)],(function(t,e){var n=e.component;t(e,4,0,n.bsModalRef),t(e,10,0,n.formGroup),t(e,13,0,n.formGroup),t(e,16,0,!n.canSubmit);var a=n.devices,r=t(e,19,0,"available","osd_ids");t(e,18,0,a,r,n.filterColumns),t(e,21,0,n.canSubmit),t(e,24,0,n.formGroup,!n.canSubmit||0===n.filteredDevices.length),t(e,28,0,n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,6,0,n.deviceType),t(e,8,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending);var a=s["ɵunv"](e,25,0,t(e,26,0,s["ɵnov"](e,1),n.action));t(e,25,0,a)}))}function Gv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-devices-selection-modal",[],null,null,null,Vv,Mv)),s["ɵdid"](1,4243456,null,0,Ll,[zu.a,Ct.a,St.b],null,null)],null,null)}var Bv=s["ɵccf"]("cd-osd-devices-selection-modal",Ll,Gv,{},{submitAction:"submitAction"},[]),zv=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Yv(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),(t()(),s["ɵeld"](1,0,null,null,23,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](2,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](3,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["OSD creation preview"])),(t()(),s["ɵeld"](5,0,null,1,19,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,18,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,8).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,11).onSubmit()&&a),a}),null,null)),s["ɵdid"](7,16384,null,0,K.G,[],null,null),s["ɵdid"](8,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](10,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](11,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](12,0,null,null,5,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,1,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["DriveGroups"])),(t()(),s["ɵeld"](15,0,null,null,2,"pre",[],null,null,null,null,null)),(t()(),s["ɵted"](16,null,["",""])),s["ɵpid"](0,i.JsonPipe,[]),(t()(),s["ɵeld"](18,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),ks.b,ks.a)),s["ɵdid"](20,114688,null,0,Es.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](21,0,["",""])),s["ɵppd"](22,1),(t()(),s["ɵeld"](23,0,null,null,1,"cd-back-button",[],null,null,null,Ls.b,Ls.a)),s["ɵdid"](24,49152,null,0,Ds.a,[i.Location,St.b],{back:[0,"back"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.bsModalRef),t(e,8,0,n.formGroup),t(e,11,0,n.formGroup),t(e,20,0,n.formGroup),t(e,24,0,n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,6,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending),t(e,16,0,s["ɵunv"](e,16,0,s["ɵnov"](e,17).transform(n.driveGroups)));var a=s["ɵunv"](e,21,0,t(e,22,0,s["ɵnov"](e,0),n.action));t(e,21,0,a)}))}function Hv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-creation-preview-modal",[],null,null,null,Yv,zv)),s["ɵdid"](1,114688,null,0,Yl,[Ct.a,St.b,zu.a,mi,bs.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Uv=s["ɵccf"]("cd-osd-creation-preview-modal",Yl,Hv,{driveGroups:"driveGroups"},{submitAction:"submitAction"},[]),Wv=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Kv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"cd-modal",[],null,null,null,Wm.c,Wm.b)),s["ɵdid"](1,49152,null,0,yy.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](3,null,[""," ",""])),(t()(),s["ɵeld"](4,0,null,1,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,2,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,Gr,Vr)),s["ɵdid"](7,49152,null,0,Fr,[],null,null),(t()(),s["ɵeld"](8,0,null,null,2,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,Ls.b,Ls.a)),s["ɵdid"](10,49152,null,0,Ds.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,10,0,"Close",n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,3,0,n.actionDescription,n.itemDescription)}))}function $v(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-modal",[],null,null,null,Kv,Wv)),s["ɵdid"](1,114688,null,0,gs,[Ct.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Zv=s["ɵccf"]("cd-orchestrator-doc-modal",gs,$v,{},{},[]),Jv=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Qv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),s["ɵdid"](1,212992,null,0,Et.r,[Et.b,s.ViewContainerRef,s.ComponentFactoryResolver,[8,null],s.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}function Xv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-root",[],null,null,null,Qv,Jv)),s["ɵdid"](1,49152,null,0,l,[],null,null)],null,null)}var tx=s["ɵccf"]("cd-root",l,Xv,{},{},[]),ex=n("z6cu"),nx=n("JIr8");let ax=(()=>{class t{constructor(t,e,n){this.router=t,this.authStorageService=e,this.notificationService=n}intercept(t,e){return e.handle(t).pipe(Object(nx.a)(t=>{if(t instanceof et.f){let e;switch(t.status){case 400:const n=new fs.a,a=t.error.task;X.isPlainObject(a)?(a.metadata.component=a.metadata.component||t.error.component,n.name=a.name,n.metadata=a.metadata):n.metadata=t.error,n.success=!1,n.exception=t.error,e=this.notificationService.notifyTask(n);break;case 401:this.authStorageService.remove(),this.router.navigate(["/login"]);break;case 403:this.router.navigate(["/403"]);break;default:e=this.prepareNotification(t)}t.preventDefault=()=>{this.notificationService.cancel(e)},t.ignoreStatusCode=function(t){this.status===t&&this.preventDefault()}}return Object(ex.a)(t)}))}prepareNotification(t){return this.notificationService.show(()=>{let e="";return X.isPlainObject(t.error)&&X.isString(t.error.detail)?e=t.error.detail:X.isString(t.error)?e=t.error:X.isString(t.message)&&(e=t.message),new Ie.b(le.a.error,`${t.status} - ${t.statusText}`,e,void 0,t.application)})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](Et.m),s["ɵɵinject"](J.a),s["ɵɵinject"](bt.a))},token:t,providedIn:"root"}),t})();function rx(){return"undefined"!=typeof process}function ix(t){switch(t.length){case 0:return new W.d;case 1:return t[0];default:return new W.k(t)}}function sx(t,e,n,a,r={},i={}){const s=[],u=[];let o=-1,l=null;if(a.forEach(t=>{const n=t.offset,a=n==o,d=a&&l||{};Object.keys(t).forEach(n=>{let a=n,u=t[n];if("offset"!==n)switch(a=e.normalizePropertyName(a,s),u){case W.l:u=r[n];break;case W.a:u=i[n];break;default:u=e.normalizeStyleValue(n,a,u,s)}d[a]=u}),a||u.push(d),l=d,o=n}),s.length){const t="\n - ";throw new Error(`Unable to animate due to the following errors:${t}${s.join(t)}`)}return u}function ux(t,e,n,a){switch(e){case"start":t.onStart(()=>a(n&&ox(n,"start",t)));break;case"done":t.onDone(()=>a(n&&ox(n,"done",t)));break;case"destroy":t.onDestroy(()=>a(n&&ox(n,"destroy",t)))}}function ox(t,e,n){const a=n.totalTime,r=lx(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==a?t.totalTime:a,!!n.disabled),i=t._data;return null!=i&&(r._data=i),r}function lx(t,e,n,a,r="",i=0,s){return{element:t,triggerName:e,fromState:n,toState:a,phaseName:r,totalTime:i,disabled:!!s}}function dx(t,e,n){let a;return t instanceof Map?(a=t.get(e),a||t.set(e,a=n)):(a=t[e],a||(a=t[e]=n)),a}function cx(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let fx=(t,e)=>!1,hx=(t,e)=>!1,gx=(t,e,n)=>[];const px=rx();(px||"undefined"!=typeof Element)&&(fx=(t,e)=>t.contains(e),hx=(()=>{if(px||Element.prototype.matches)return(t,e)=>t.matches(e);{const t=Element.prototype,e=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;return e?(t,n)=>e.apply(t,[n]):hx}})(),gx=(t,e,n)=>{let a=[];if(n)a.push(...t.querySelectorAll(e));else{const n=t.querySelector(e);n&&a.push(n)}return a});let bx=null,mx=!1;function yx(t){bx||(bx=("undefined"!=typeof document?document.body:null)||{},mx=!!bx.style&&"WebkitAppearance"in bx.style);let e=!0;return bx.style&&!function(t){return"ebkit"==t.substring(1,6)}(t)&&(e=t in bx.style,!e&&mx)&&(e="Webkit"+t.charAt(0).toUpperCase()+t.substr(1)in bx.style),e}const vx=hx,xx=fx,_x=gx;function Tx(t){const e={};return Object.keys(t).forEach(n=>{const a=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[a]=t[n]}),e}class wx{validateStyleProperty(t){return yx(t)}matchesElement(t,e){return vx(t,e)}containsElement(t,e){return xx(t,e)}query(t,e,n){return _x(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,a,r,i=[],s){return new W.d(n,a)}}let Ox=(()=>{class t{}return t.NOOP=new wx,t})();function Sx(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Ix(parseFloat(e[1]),e[2])}function Ix(t,e){switch(e){case"s":return 1e3*t;default:return t}}function Nx(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let a,r=0,i="";if("string"==typeof t){const n=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===n)return e.push(`The provided timing value "${t}" is invalid.`),{duration:0,delay:0,easing:""};a=Ix(parseFloat(n[1]),n[2]);const s=n[3];null!=s&&(r=Ix(parseFloat(s),n[4]));const u=n[5];u&&(i=u)}else a=t;if(!n){let n=!1,i=e.length;a<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),r<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(i,0,`The provided timing value "${t}" is invalid.`)}return{duration:a,delay:r,easing:i}}(t,e,n)}function Cx(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Rx(t,e,n={}){if(e)for(let a in t)n[a]=t[a];else Cx(t,n);return n}function Ax(t,e,n){return n?e+":"+n+";":""}function kx(t){let e="";for(let n=0;n<t.style.length;n++){const a=t.style.item(n);e+=Ax(0,a,t.style.getPropertyValue(a))}for(const n in t.style)t.style.hasOwnProperty(n)&&!n.startsWith("_")&&(e+=Ax(0,n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),t.style[n]));t.setAttribute("style",e)}function Ex(t,e,n){t.style&&(Object.keys(e).forEach(a=>{const r=Vx(a);n&&!n.hasOwnProperty(a)&&(n[a]=t.style[r]),t.style[r]=e[a]}),rx()&&kx(t))}function Lx(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=Vx(e);t.style[n]=""}),rx()&&kx(t))}function Dx(t){return Array.isArray(t)?1==t.length?t[0]:Object(W.f)(t):t}const Px=new RegExp("{{\\s*(.+?)\\s*}}","g");function Mx(t){let e=[];if("string"==typeof t){const n=t.toString();let a;for(;a=Px.exec(n);)e.push(a[1]);Px.lastIndex=0}return e}function qx(t,e,n){const a=t.toString(),r=a.replace(Px,(t,a)=>{let r=e[a];return e.hasOwnProperty(a)||(n.push("Please provide a value for the animation param "+a),r=""),r.toString()});return r==a?t:r}function jx(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const Fx=/-+([a-z0-9])/g;function Vx(t){return t.replace(Fx,(...t)=>t[1].toUpperCase())}function Gx(t,e){return 0===t||0===e}function Bx(t,e,n){const a=Object.keys(n);if(a.length&&e.length){let i=e[0],s=[];if(a.forEach(t=>{i.hasOwnProperty(t)||s.push(t),i[t]=n[t]}),s.length)for(var r=1;r<e.length;r++){let n=e[r];s.forEach((function(e){n[e]=Yx(t,e)}))}}return e}function zx(t,e,n){switch(e.type){case 7:return t.visitTrigger(e,n);case 0:return t.visitState(e,n);case 1:return t.visitTransition(e,n);case 2:return t.visitSequence(e,n);case 3:return t.visitGroup(e,n);case 4:return t.visitAnimate(e,n);case 5:return t.visitKeyframes(e,n);case 6:return t.visitStyle(e,n);case 8:return t.visitReference(e,n);case 9:return t.visitAnimateChild(e,n);case 10:return t.visitAnimateRef(e,n);case 11:return t.visitQuery(e,n);case 12:return t.visitStagger(e,n);default:throw new Error("Unable to resolve animation metadata node #"+e.type)}}function Yx(t,e){return window.getComputedStyle(t)[e]}function Hx(t,e){const n=[];return"string"==typeof t?t.split(/\s*,\s*/).forEach(t=>function(t,e,n){if(":"==t[0]){const a=function(t,e){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(t,e)=>parseFloat(e)>parseFloat(t);case":decrement":return(t,e)=>parseFloat(e)<parseFloat(t);default:return e.push(`The transition alias value "${t}" is not supported`),"* => *"}}(t,n);if("function"==typeof a)return void e.push(a);t=a}const a=t.match(/^(\*|[-\w]+)\s*(<?[=-]>)\s*(\*|[-\w]+)$/);if(null==a||a.length<4)return n.push(`The provided transition expression "${t}" is not supported`),e;const r=a[1],i=a[2],s=a[3];e.push(Kx(r,s)),"<"!=i[0]||"*"==r&&"*"==s||e.push(Kx(s,r))}(t,n,e)):n.push(t),n}const Ux=new Set(["true","1"]),Wx=new Set(["false","0"]);function Kx(t,e){const n=Ux.has(t)||Wx.has(t),a=Ux.has(e)||Wx.has(e);return(r,i)=>{let s="*"==t||t==r,u="*"==e||e==i;return!s&&n&&"boolean"==typeof r&&(s=r?Ux.has(t):Wx.has(t)),!u&&a&&"boolean"==typeof i&&(u=i?Ux.has(e):Wx.has(e)),s&&u}}const $x=new RegExp("s*:selfs*,?","g");function Zx(t,e,n){return new Jx(t).build(e,n)}class Jx{constructor(t){this._driver=t}build(t,e){const n=new Qx(e);return this._resetContextStyleTimingState(n),zx(this,Dx(t),n)}_resetContextStyleTimingState(t){t.currentQuerySelector="",t.collectedStyles={},t.collectedStyles[""]={},t.currentTime=0}visitTrigger(t,e){let n=e.queryCount=0,a=e.depCount=0;const r=[],i=[];return"@"==t.name.charAt(0)&&e.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),t.definitions.forEach(t=>{if(this._resetContextStyleTimingState(e),0==t.type){const n=t,a=n.name;a.toString().split(/\s*,\s*/).forEach(t=>{n.name=t,r.push(this.visitState(n,e))}),n.name=a}else if(1==t.type){const r=this.visitTransition(t,e);n+=r.queryCount,a+=r.depCount,i.push(r)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:r,transitions:i,queryCount:n,depCount:a,options:null}}visitState(t,e){const n=this.visitStyle(t.styles,e),a=t.options&&t.options.params||null;if(n.containsDynamicStyles){const r=new Set,i=a||{};if(n.styles.forEach(t=>{if(Xx(t)){const e=t;Object.keys(e).forEach(t=>{Mx(e[t]).forEach(t=>{i.hasOwnProperty(t)||r.add(t)})})}}),r.size){const n=jx(r.values());e.errors.push(`state("${t.name}", ...) must define default values for all the following style substitutions: ${n.join(", ")}`)}}return{type:0,name:t.name,style:n,options:a?{params:a}:null}}visitTransition(t,e){e.queryCount=0,e.depCount=0;const n=zx(this,Dx(t.animation),e);return{type:1,matchers:Hx(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:t_(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>zx(this,t,e)),options:t_(t.options)}}visitGroup(t,e){const n=e.currentTime;let a=0;const r=t.steps.map(t=>{e.currentTime=n;const r=zx(this,t,e);return a=Math.max(a,e.currentTime),r});return e.currentTime=a,{type:3,steps:r,options:t_(t.options)}}visitAnimate(t,e){const n=function(t,e){let n=null;if(t.hasOwnProperty("duration"))n=t;else if("number"==typeof t)return e_(Nx(t,e).duration,0,"");const a=t;if(a.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=e_(0,0,"");return t.dynamic=!0,t.strValue=a,t}return n=n||Nx(a,e),e_(n.duration,n.delay,n.easing)}(t.timings,e.errors);let a;e.currentAnimateTimings=n;let r=t.styles?t.styles:Object(W.h)({});if(5==r.type)a=this.visitKeyframes(r,e);else{let r=t.styles,i=!1;if(!r){i=!0;const t={};n.easing&&(t.easing=n.easing),r=Object(W.h)(t)}e.currentTime+=n.duration+n.delay;const s=this.visitStyle(r,e);s.isEmptyStep=i,a=s}return e.currentAnimateTimings=null,{type:4,timings:n,style:a,options:null}}visitStyle(t,e){const n=this._makeStyleAst(t,e);return this._validateStyleAst(n,e),n}_makeStyleAst(t,e){const n=[];Array.isArray(t.styles)?t.styles.forEach(t=>{"string"==typeof t?t==W.a?n.push(t):e.errors.push(`The provided style string value ${t} is not allowed.`):n.push(t)}):n.push(t.styles);let a=!1,r=null;return n.forEach(t=>{if(Xx(t)){const e=t,n=e.easing;if(n&&(r=n,delete e.easing),!a)for(let t in e)if(e[t].toString().indexOf("{{")>=0){a=!0;break}}}),{type:6,styles:n,easing:r,offset:t.offset,containsDynamicStyles:a,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let a=e.currentTime,r=e.currentTime;n&&r>0&&(r-=n.duration+n.delay),t.styles.forEach(t=>{"string"!=typeof t&&Object.keys(t).forEach(n=>{if(!this._driver.validateStyleProperty(n))return void e.errors.push(`The provided animation property "${n}" is not a supported CSS property for animations`);const i=e.collectedStyles[e.currentQuerySelector],s=i[n];let u=!0;s&&(r!=a&&r>=s.startTime&&a<=s.endTime&&(e.errors.push(`The CSS property "${n}" that exists between the times of "${s.startTime}ms" and "${s.endTime}ms" is also being animated in a parallel animation between the times of "${r}ms" and "${a}ms"`),u=!1),r=s.startTime),u&&(i[n]={startTime:r,endTime:a}),e.options&&function(t,e,n){const a=e.params||{},r=Mx(t);r.length&&r.forEach(t=>{a.hasOwnProperty(t)||n.push(`Unable to resolve the local animation param ${t} in the given list of values`)})}(t[n],e.options,e.errors)})})}visitKeyframes(t,e){const n={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push("keyframes() must be placed inside of a call to animate()"),n;let a=0;const r=[];let i=!1,s=!1,u=0;const o=t.steps.map(t=>{const n=this._makeStyleAst(t,e);let o=null!=n.offset?n.offset:function(t){if("string"==typeof t)return null;let e=null;if(Array.isArray(t))t.forEach(t=>{if(Xx(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(Xx(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}return e}(n.styles),l=0;return null!=o&&(a++,l=n.offset=o),s=s||l<0||l>1,i=i||l<u,u=l,r.push(l),n});s&&e.errors.push("Please ensure that all keyframe offsets are between 0 and 1"),i&&e.errors.push("Please ensure that all keyframe offsets are in order");const l=t.steps.length;let d=0;a>0&&a<l?e.errors.push("Not all style() steps within the declared keyframes() contain offsets"):0==a&&(d=1/(l-1));const c=l-1,f=e.currentTime,h=e.currentAnimateTimings,g=h.duration;return o.forEach((t,a)=>{const i=d>0?a==c?1:d*a:r[a],s=i*g;e.currentTime=f+h.delay+s,h.duration=s,this._validateStyleAst(t,e),t.offset=i,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:zx(this,Dx(t.animation),e),options:t_(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:t_(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:t_(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,a=t.options||{};e.queryCount++,e.currentQuery=t;const[r,i]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace($x,"")),[t=t.replace(/@\*/g,".ng-trigger").replace(/@\w+/g,t=>".ng-trigger-"+t.substr(1)).replace(/:animating/g,".ng-animating"),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+r:r,dx(e.collectedStyles,e.currentQuerySelector,{});const s=zx(this,Dx(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:r,limit:a.limit||0,optional:!!a.optional,includeSelf:i,animation:s,originalSelector:t.selector,options:t_(t.options)}}visitStagger(t,e){e.currentQuery||e.errors.push("stagger() can only be used inside of query()");const n="full"===t.timings?{duration:0,delay:0,easing:"full"}:Nx(t.timings,e.errors,!0);return{type:12,animation:zx(this,Dx(t.animation),e),timings:n,options:null}}}class Qx{constructor(t){this.errors=t,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null}}function Xx(t){return!Array.isArray(t)&&"object"==typeof t}function t_(t){var e;return t?(t=Cx(t)).params&&(t.params=(e=t.params)?Cx(e):null):t={},t}function e_(t,e,n){return{duration:t,delay:e,easing:n}}function n_(t,e,n,a,r,i,s=null,u=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:a,duration:r,delay:i,totalTime:r+i,easing:s,subTimeline:u}}class a_{constructor(){this._map=new Map}consume(t){let e=this._map.get(t);return e?this._map.delete(t):e=[],e}append(t,e){let n=this._map.get(t);n||this._map.set(t,n=[]),n.push(...e)}has(t){return this._map.has(t)}clear(){this._map.clear()}}const r_=new RegExp(":enter","g"),i_=new RegExp(":leave","g");function s_(t,e,n,a,r,i={},s={},u,o,l=[]){return(new u_).buildKeyframes(t,e,n,a,r,i,s,u,o,l)}class u_{buildKeyframes(t,e,n,a,r,i,s,u,o,l=[]){o=o||new a_;const d=new l_(t,e,o,a,r,l,[]);d.options=u,d.currentTimeline.setStyles([i],null,d.errors,u),zx(this,n,d);const c=d.timelines.filter(t=>t.containsAnimation());if(c.length&&Object.keys(s).length){const t=c[c.length-1];t.allowOnlyTimelineStyles()||t.setStyles([s],null,d.errors,u)}return c.length?c.map(t=>t.buildKeyframes()):[n_(e,[],[],[],0,0,"",!1)]}visitTrigger(t,e){}visitState(t,e){}visitTransition(t,e){}visitAnimateChild(t,e){const n=e.subInstructions.consume(e.element);if(n){const a=e.createSubContext(t.options),r=e.currentTimeline.currentTime,i=this._visitSubInstructions(n,a,a.options);r!=i&&e.transformIntoNewTimeline(i)}e.previousNode=t}visitAnimateRef(t,e){const n=e.createSubContext(t.options);n.transformIntoNewTimeline(),this.visitReference(t.animation,n),e.transformIntoNewTimeline(n.currentTimeline.currentTime),e.previousNode=t}_visitSubInstructions(t,e,n){let a=e.currentTimeline.currentTime;const r=null!=n.duration?Sx(n.duration):null,i=null!=n.delay?Sx(n.delay):null;return 0!==r&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,r,i);a=Math.max(a,n.duration+n.delay)}),a}visitReference(t,e){e.updateOptions(t.options,!0),zx(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let a=e;const r=t.options;if(r&&(r.params||r.delay)&&(a=e.createSubContext(r),a.transformIntoNewTimeline(),null!=r.delay)){6==a.previousNode.type&&(a.currentTimeline.snapshotCurrentStyles(),a.previousNode=o_);const t=Sx(r.delay);a.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>zx(this,t,a)),a.currentTimeline.applyStylesToKeyframe(),a.subContextCount>n&&a.transformIntoNewTimeline()),e.previousNode=t}visitGroup(t,e){const n=[];let a=e.currentTimeline.currentTime;const r=t.options&&t.options.delay?Sx(t.options.delay):0;t.steps.forEach(i=>{const s=e.createSubContext(t.options);r&&s.delayNextStep(r),zx(this,i,s),a=Math.max(a,s.currentTimeline.currentTime),n.push(s.currentTimeline)}),n.forEach(t=>e.currentTimeline.mergeTimelineCollectedStyles(t)),e.transformIntoNewTimeline(a),e.previousNode=t}_visitTiming(t,e){if(t.dynamic){const n=t.strValue;return Nx(e.params?qx(n,e.params,e.errors):n,e.errors)}return{duration:t.duration,delay:t.delay,easing:t.easing}}visitAnimate(t,e){const n=e.currentAnimateTimings=this._visitTiming(t.timings,e),a=e.currentTimeline;n.delay&&(e.incrementTime(n.delay),a.snapshotCurrentStyles());const r=t.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(n.duration),this.visitStyle(r,e),a.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=t}visitStyle(t,e){const n=e.currentTimeline,a=e.currentAnimateTimings;!a&&n.getCurrentStyleProperties().length&&n.forwardFrame();const r=a&&a.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(r):n.setStyles(t.styles,r,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,a=e.currentTimeline.duration,r=n.duration,i=e.createSubContext().currentTimeline;i.easing=n.easing,t.styles.forEach(t=>{i.forwardTime((t.offset||0)*r),i.setStyles(t.styles,t.easing,e.errors,e.options),i.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(i),e.transformIntoNewTimeline(a+r),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,a=t.options||{},r=a.delay?Sx(a.delay):0;r&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=o_);let i=n;const s=e.invokeQuery(t.selector,t.originalSelector,t.limit,t.includeSelf,!!a.optional,e.errors);e.currentQueryTotal=s.length;let u=null;s.forEach((n,a)=>{e.currentQueryIndex=a;const s=e.createSubContext(t.options,n);r&&s.delayNextStep(r),n===e.element&&(u=s.currentTimeline),zx(this,t.animation,s),s.currentTimeline.applyStylesToKeyframe(),i=Math.max(i,s.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(i),u&&(e.currentTimeline.mergeTimelineCollectedStyles(u),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,a=e.currentTimeline,r=t.timings,i=Math.abs(r.duration),s=i*(e.currentQueryTotal-1);let u=i*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":u=s-u;break;case"full":u=n.currentStaggerTime}const o=e.currentTimeline;u&&o.delayNextStep(u);const l=o.currentTime;zx(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=a.currentTime-l+(a.startTime-n.currentTimeline.startTime)}}const o_={};class l_{constructor(t,e,n,a,r,i,s,u){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=a,this._leaveClassName=r,this.errors=i,this.timelines=s,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=o_,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=u||new d_(this._driver,e,0),s.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(t,e){if(!t)return;const n=t;let a=this.options;null!=n.duration&&(a.duration=Sx(n.duration)),null!=n.delay&&(a.delay=Sx(n.delay));const r=n.params;if(r){let t=a.params;t||(t=this.options.params={}),Object.keys(r).forEach(n=>{e&&t.hasOwnProperty(n)||(t[n]=qx(r[n],t,this.errors))})}}_copyOptions(){const t={};if(this.options){const e=this.options.params;if(e){const n=t.params={};Object.keys(e).forEach(t=>{n[t]=e[t]})}}return t}createSubContext(t=null,e,n){const a=e||this.element,r=new l_(this._driver,a,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(a,n||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(t),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(t){return this.previousNode=o_,this.currentTimeline=this.currentTimeline.fork(this.element,t),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(t,e,n){const a={duration:null!=e?e:t.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+t.delay,easing:""},r=new c_(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,a,t.stretchStartingKeyframe);return this.timelines.push(r),a}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,a,r,i){let s=[];if(a&&s.push(this.element),t.length>0){t=(t=t.replace(r_,"."+this._enterClassName)).replace(i_,"."+this._leaveClassName);let e=this._driver.query(this.element,t,1!=n);0!==n&&(e=n<0?e.slice(e.length+n,e.length):e.slice(0,n)),s.push(...e)}return r||0!=s.length||i.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),s}}class d_{constructor(t,e,n,a){this._driver=t,this.element=e,this.startTime=n,this._elementTimelineStylesLookup=a,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}getCurrentStyleProperties(){return Object.keys(this._currentKeyframe)}get currentTime(){return this.startTime+this.duration}delayNextStep(t){const e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+t),e&&this.snapshotCurrentStyles()):this.startTime+=t}fork(t,e){return this.applyStylesToKeyframe(),new d_(this._driver,t,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(t){this.applyStylesToKeyframe(),this.duration=t,this._loadKeyframe()}_updateStyle(t,e){this._localTimelineStyles[t]=e,this._globalTimelineStyles[t]=e,this._styleSummary[t]={time:this.currentTime,value:e}}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(t){t&&(this._previousKeyframe.easing=t),Object.keys(this._globalTimelineStyles).forEach(t=>{this._backFill[t]=this._globalTimelineStyles[t]||W.a,this._currentKeyframe[t]=W.a}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,a){e&&(this._previousKeyframe.easing=e);const r=a&&a.params||{},i=function(t,e){const n={};let a;return t.forEach(t=>{"*"===t?(a=a||Object.keys(e),a.forEach(t=>{n[t]=W.a})):Rx(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(i).forEach(t=>{const e=qx(i[t],r,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:W.a),this._updateStyle(t,e)})}applyStylesToKeyframe(){const t=this._pendingStyles,e=Object.keys(t);0!=e.length&&(this._pendingStyles={},e.forEach(e=>{this._currentKeyframe[e]=t[e]}),Object.keys(this._localTimelineStyles).forEach(t=>{this._currentKeyframe.hasOwnProperty(t)||(this._currentKeyframe[t]=this._localTimelineStyles[t])}))}snapshotCurrentStyles(){Object.keys(this._localTimelineStyles).forEach(t=>{const e=this._localTimelineStyles[t];this._pendingStyles[t]=e,this._updateStyle(t,e)})}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const t=[];for(let e in this._currentKeyframe)t.push(e);return t}mergeTimelineCollectedStyles(t){Object.keys(t._styleSummary).forEach(e=>{const n=this._styleSummary[e],a=t._styleSummary[e];(!n||a.time>n.time)&&this._updateStyle(e,a.value)})}buildKeyframes(){this.applyStylesToKeyframe();const t=new Set,e=new Set,n=1===this._keyframes.size&&0===this.duration;let a=[];this._keyframes.forEach((r,i)=>{const s=Rx(r,!0);Object.keys(s).forEach(n=>{const a=s[n];a==W.l?t.add(n):a==W.a&&e.add(n)}),n||(s.offset=i/this.duration),a.push(s)});const r=t.size?jx(t.values()):[],i=e.size?jx(e.values()):[];if(n){const t=a[0],e=Cx(t);t.offset=0,e.offset=1,a=[t,e]}return n_(this.element,a,r,i,this.duration,this.startTime,this.easing,!1)}}class c_ extends d_{constructor(t,e,n,a,r,i,s=!1){super(t,e,i.delay),this.element=e,this.keyframes=n,this.preStyleProps=a,this.postStyleProps=r,this._stretchStartingKeyframe=s,this.timings={duration:i.duration,delay:i.delay,easing:i.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let t=this.keyframes,{delay:e,duration:n,easing:a}=this.timings;if(this._stretchStartingKeyframe&&e){const r=[],i=n+e,s=e/i,u=Rx(t[0],!1);u.offset=0,r.push(u);const o=Rx(t[0],!1);o.offset=f_(s),r.push(o);const l=t.length-1;for(let a=1;a<=l;a++){let s=Rx(t[a],!1);s.offset=f_((e+s.offset*n)/i),r.push(s)}n=i,e=0,a="",t=r}return n_(this.element,t,this.preStyleProps,this.postStyleProps,n,e,a,!0)}}function f_(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class h_{}class g_ extends h_{normalizePropertyName(t,e){return Vx(t)}normalizeStyleValue(t,e,n,a){let r="";const i=n.toString().trim();if(p_[e]&&0!==n&&"0"!==n)if("number"==typeof n)r="px";else{const e=n.match(/^[+-]?[\d\.]+([a-z]*)$/);e&&0==e[1].length&&a.push(`Please provide a CSS unit value for ${t}:${n}`)}return i+r}}const p_=(()=>function(t){const e={};return t.forEach(t=>e[t]=!0),e}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(",")))();function b_(t,e,n,a,r,i,s,u,o,l,d,c,f){return{type:0,element:t,triggerName:e,isRemovalTransition:r,fromState:n,fromStyles:i,toState:a,toStyles:s,timelines:u,queriedElements:o,preStyleProps:l,postStyleProps:d,totalTime:c,errors:f}}const m_={};class y_{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,a){return function(t,e,n,a,r){return t.some(t=>t(e,n,a,r))}(this.ast.matchers,t,e,n,a)}buildStyles(t,e,n){const a=this._stateStyles["*"],r=this._stateStyles[t],i=a?a.buildStyles(e,n):{};return r?r.buildStyles(e,n):i}build(t,e,n,a,r,i,s,u,o,l){const d=[],c=this.ast.options&&this.ast.options.params||m_,f=this.buildStyles(n,s&&s.params||m_,d),h=u&&u.params||m_,g=this.buildStyles(a,h,d),p=new Set,b=new Map,m=new Map,y="void"===a,v={params:Object.assign({},c,h)},x=l?[]:s_(t,e,this.ast.animation,r,i,f,g,v,o,d);let _=0;if(x.forEach(t=>{_=Math.max(t.duration+t.delay,_)}),d.length)return b_(e,this._triggerName,n,a,y,f,g,[],[],b,m,_,d);x.forEach(t=>{const n=t.element,a=dx(b,n,{});t.preStyleProps.forEach(t=>a[t]=!0);const r=dx(m,n,{});t.postStyleProps.forEach(t=>r[t]=!0),n!==e&&p.add(n)});const T=jx(p.values());return b_(e,this._triggerName,n,a,y,f,g,x,T,b,m,_)}}class v_{constructor(t,e){this.styles=t,this.defaultParams=e}buildStyles(t,e){const n={},a=Cx(this.defaultParams);return Object.keys(t).forEach(e=>{const n=t[e];null!=n&&(a[e]=n)}),this.styles.styles.forEach(t=>{if("string"!=typeof t){const r=t;Object.keys(r).forEach(t=>{let i=r[t];i.length>1&&(i=qx(i,a,e)),n[t]=i})}}),n}}class x_{constructor(t,e){this.name=t,this.ast=e,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new v_(t.style,t.options&&t.options.params||{})}),__(this.states,"true","1"),__(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new y_(t,e,this.states))}),this.fallbackTransition=new y_(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,a){return this.transitionFactories.find(r=>r.match(t,e,n,a))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function __(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const T_=new a_;class w_{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._animations={},this._playersById={},this.players=[]}register(t,e){const n=[],a=Zx(this._driver,e,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: "+n.join("\n"));this._animations[t]=a}_buildPlayer(t,e,n){const a=t.element,r=sx(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(a,r,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const a=[],r=this._animations[t];let i;const s=new Map;if(r?(i=s_(this._driver,e,r,"ng-enter","ng-leave",{},{},n,T_,a),i.forEach(t=>{const e=dx(s,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(a.push("The requested animation doesn't exist or has already been destroyed"),i=[]),a.length)throw new Error("Unable to create the animation due to the following errors: "+a.join("\n"));s.forEach((t,e)=>{Object.keys(t).forEach(n=>{t[n]=this._driver.computeStyle(e,n,W.a)})});const u=ix(i.map(t=>{const e=s.get(t.element);return this._buildPlayer(t,{},e)}));return this._playersById[t]=u,u.onDestroy(()=>this.destroy(t)),this.players.push(u),u}destroy(t){const e=this._getPlayer(t);e.destroy(),delete this._playersById[t];const n=this.players.indexOf(e);n>=0&&this.players.splice(n,1)}_getPlayer(t){const e=this._playersById[t];if(!e)throw new Error("Unable to find the timeline player referenced by "+t);return e}listen(t,e,n,a){const r=lx(e,"","","");return ux(this._getPlayer(t),n,r,a),()=>{}}command(t,e,n,a){if("register"==n)return void this.register(t,a[0]);if("create"==n)return void this.create(t,e,a[0]||{});const r=this._getPlayer(t);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(a[0]));break;case"destroy":this.destroy(t)}}}const O_=[],S_={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},I_={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0};class N_{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=null!=(a=n?t.value:t)?a:null,n){const e=Cx(t);delete e.value,this.options=e}else this.options={};var a;this.options.params||(this.options.params={})}get params(){return this.options.params}absorbOptions(t){const e=t.params;if(e){const t=this.options.params;Object.keys(e).forEach(n=>{null==t[n]&&(t[n]=e[n])})}}}const C_=new N_("void");class R_{constructor(t,e,n){this.id=t,this.hostElement=e,this._engine=n,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,M_(e,this._hostClassName)}listen(t,e,n,a){if(!this._triggers.hasOwnProperty(e))throw new Error(`Unable to listen on the animation trigger event "${n}" because the animation trigger "${e}" doesn't exist!`);if(null==n||0==n.length)throw new Error(`Unable to listen on the animation trigger "${e}" because the provided event is undefined!`);if("start"!=(r=n)&&"done"!=r)throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);var r;const i=dx(this._elementListeners,t,[]),s={name:e,phase:n,callback:a};i.push(s);const u=dx(this._engine.statesByElement,t,{});return u.hasOwnProperty(e)||(M_(t,"ng-trigger"),M_(t,"ng-trigger-"+e),u[e]=C_),()=>{this._engine.afterFlush(()=>{const t=i.indexOf(s);t>=0&&i.splice(t,1),this._triggers[e]||delete u[e]})}}register(t,e){return!this._triggers[t]&&(this._triggers[t]=e,!0)}_getTrigger(t){const e=this._triggers[t];if(!e)throw new Error(`The provided animation trigger "${t}" has not been registered!`);return e}trigger(t,e,n,a=!0){const r=this._getTrigger(e),i=new k_(this.id,e,t);let s=this._engine.statesByElement.get(t);s||(M_(t,"ng-trigger"),M_(t,"ng-trigger-"+e),this._engine.statesByElement.set(t,s={}));let u=s[e];const o=new N_(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&u&&o.absorbOptions(u.options),s[e]=o,u||(u=C_),"void"!==o.value&&u.value===o.value){if(!function(t,e){const n=Object.keys(t),a=Object.keys(e);if(n.length!=a.length)return!1;for(let r=0;r<n.length;r++){const a=n[r];if(!e.hasOwnProperty(a)||t[a]!==e[a])return!1}return!0}(u.params,o.params)){const e=[],n=r.matchStyles(u.value,u.params,e),a=r.matchStyles(o.value,o.params,e);e.length?this._engine.reportError(e):this._engine.afterFlush(()=>{Lx(t,n),Ex(t,a)})}return}const l=dx(this._engine.playersByElement,t,[]);l.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let d=r.matchTransition(u.value,o.value,t,o.params),c=!1;if(!d){if(!a)return;d=r.fallbackTransition,c=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:d,fromState:u,toState:o,player:i,isFallbackTransition:c}),c||(M_(t,"ng-animate-queued"),i.onStart(()=>{q_(t,"ng-animate-queued")})),i.onDone(()=>{let e=this.players.indexOf(i);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(i);t>=0&&n.splice(t,1)}}),this.players.push(i),l.push(i),i}deregister(t){delete this._triggers[t],this._engine.statesByElement.forEach((e,n)=>{delete e[t]}),this._elementListeners.forEach((e,n)=>{this._elementListeners.set(n,e.filter(e=>e.name!=t))})}clearElementCache(t){this._engine.statesByElement.delete(t),this._elementListeners.delete(t);const e=this._engine.playersByElement.get(t);e&&(e.forEach(t=>t.destroy()),this._engine.playersByElement.delete(t))}_signalRemovalForInnerTriggers(t,e,n=!1){this._engine.driver.query(t,".ng-trigger",!0).forEach(t=>{if(t.__ng_removed)return;const n=this._engine.fetchNamespacesByElement(t);n.size?n.forEach(n=>n.triggerLeaveAnimation(t,e,!1,!0)):this.clearElementCache(t)})}triggerLeaveAnimation(t,e,n,a){const r=this._engine.statesByElement.get(t);if(r){const i=[];if(Object.keys(r).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,"void",a);n&&i.push(n)}}),i.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&ix(i).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t);if(e){const n=new Set;e.forEach(e=>{const a=e.name;if(n.has(a))return;n.add(a);const r=this._triggers[a].fallbackTransition,i=this._engine.statesByElement.get(t)[a]||C_,s=new N_("void"),u=new k_(this.id,a,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:a,transition:r,fromState:i,toState:s,player:u,isFallbackTransition:!0})})}}removeNode(t,e){const n=this._engine;if(t.childElementCount&&this._signalRemovalForInnerTriggers(t,e,!0),this.triggerLeaveAnimation(t,e,!0))return;let a=!1;if(n.totalAnimations){const e=n.players.length?n.playersByQueriedElement.get(t):[];if(e&&e.length)a=!0;else{let e=t;for(;e=e.parentNode;)if(n.statesByElement.get(e)){a=!0;break}}}this.prepareLeaveAnimationListeners(t),a?n.markElementAsRemoved(this.id,t,!1,e):(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}insertNode(t,e){M_(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const a=n.player;if(a.destroyed)return;const r=n.element,i=this._elementListeners.get(r);i&&i.forEach(e=>{if(e.name==n.triggerName){const a=lx(r,n.triggerName,n.fromState.value,n.toState.value);a._data=t,ux(n.player,e.phase,a,e.callback)}}),a.markedForDestroy?this._engine.afterFlush(()=>{a.destroy()}):e.push(n)}),this._queue=[],e.sort((t,e)=>{const n=t.transition.ast.depCount,a=e.transition.ast.depCount;return 0==n||0==a?n-a:this._engine.driver.containsElement(t.element,e.element)?1:-1})}destroy(t){this.players.forEach(t=>t.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,t)}elementContainsData(t){let e=!1;return this._elementListeners.has(t)&&(e=!0),e=!!this._queue.find(e=>e.element===t)||e,e}}class A_{constructor(t,e,n){this.bodyNode=t,this.driver=e,this._normalizer=n,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(t,e)=>{}}_onRemovalComplete(t,e){this.onRemovalComplete(t,e)}get queuedPlayers(){const t=[];return this._namespaceList.forEach(e=>{e.players.forEach(e=>{e.queued&&t.push(e)})}),t}createNamespace(t,e){const n=new R_(t,e,this);return e.parentNode?this._balanceNamespaceList(n,e):(this.newHostElements.set(e,n),this.collectEnterElement(e)),this._namespaceLookup[t]=n}_balanceNamespaceList(t,e){const n=this._namespaceList.length-1;if(n>=0){let a=!1;for(let r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,e)){this._namespaceList.splice(r+1,0,t),a=!0;break}a||this._namespaceList.splice(0,0,t)}else this._namespaceList.push(t);return this.namespacesByHostElement.set(e,t),t}register(t,e){let n=this._namespaceLookup[t];return n||(n=this.createNamespace(t,e)),n}registerTrigger(t,e,n){let a=this._namespaceLookup[t];a&&a.register(e,n)&&this.totalAnimations++}destroy(t,e){if(!t)return;const n=this._fetchNamespace(t);this.afterFlush(()=>{this.namespacesByHostElement.delete(n.hostElement),delete this._namespaceLookup[t];const e=this._namespaceList.indexOf(n);e>=0&&this._namespaceList.splice(e,1)}),this.afterFlushAnimationsDone(()=>n.destroy(e))}_fetchNamespace(t){return this._namespaceLookup[t]}fetchNamespacesByElement(t){const e=new Set,n=this.statesByElement.get(t);if(n){const t=Object.keys(n);for(let a=0;a<t.length;a++){const r=n[t[a]].namespaceId;if(r){const t=this._fetchNamespace(r);t&&e.add(t)}}}return e}trigger(t,e,n,a){if(E_(e)){const r=this._fetchNamespace(t);if(r)return r.trigger(e,n,a),!0}return!1}insertNode(t,e,n,a){if(!E_(e))return;const r=e.__ng_removed;if(r&&r.setForRemoval){r.setForRemoval=!1,r.setForMove=!0;const t=this.collectedLeaveElements.indexOf(e);t>=0&&this.collectedLeaveElements.splice(t,1)}if(t){const a=this._fetchNamespace(t);a&&a.insertNode(e,n)}a&&this.collectEnterElement(e)}collectEnterElement(t){this.collectedEnterElements.push(t)}markElementAsDisabled(t,e){e?this.disabledNodes.has(t)||(this.disabledNodes.add(t),M_(t,"ng-animate-disabled")):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),q_(t,"ng-animate-disabled"))}removeNode(t,e,n,a){if(E_(e)){const r=t?this._fetchNamespace(t):null;if(r?r.removeNode(e,a):this.markElementAsRemoved(t,e,!1,a),n){const n=this.namespacesByHostElement.get(e);n&&n.id!==t&&n.removeNode(e,a)}}else this._onRemovalComplete(e,a)}markElementAsRemoved(t,e,n,a){this.collectedLeaveElements.push(e),e.__ng_removed={namespaceId:t,setForRemoval:a,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,a,r){return E_(e)?this._fetchNamespace(t).listen(e,n,a,r):()=>{}}_buildInstruction(t,e,n,a,r){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,a,t.fromState.options,t.toState.options,e,r)}destroyInnerAnimations(t){let e=this.driver.query(t,".ng-trigger",!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,".ng-animating",!0),e.forEach(t=>this.finishActiveQueriedAnimationOnElement(t)))}destroyActiveAnimationsForElement(t){const e=this.playersByElement.get(t);e&&e.forEach(t=>{t.queued?t.markedForDestroy=!0:t.destroy()})}finishActiveQueriedAnimationOnElement(t){const e=this.playersByQueriedElement.get(t);e&&e.forEach(t=>t.finish())}whenRenderingDone(){return new Promise(t=>{if(this.players.length)return ix(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t.__ng_removed;if(e&&e.setForRemoval){if(t.__ng_removed=S_,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,".ng-animate-disabled")&&this.markElementAsDisabled(t,!1),this.driver.query(t,".ng-animate-disabled",!0).forEach(t=>{this.markElementAsDisabled(t,!1)})}flush(t=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((t,e)=>this._balanceNamespaceList(t,e)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let n=0;n<this.collectedEnterElements.length;n++)M_(this.collectedEnterElements[n],"ng-star-inserted");if(this._namespaceList.length&&(this.totalQueuedPlayers||this.collectedLeaveElements.length)){const n=[];try{e=this._flushAnimations(n,t)}finally{for(let t=0;t<n.length;t++)n[t]()}}else for(let n=0;n<this.collectedLeaveElements.length;n++)this.processLeaveNode(this.collectedLeaveElements[n]);if(this.totalQueuedPlayers=0,this.collectedEnterElements.length=0,this.collectedLeaveElements.length=0,this._flushFns.forEach(t=>t()),this._flushFns=[],this._whenQuietFns.length){const t=this._whenQuietFns;this._whenQuietFns=[],e.length?ix(e).onDone(()=>{t.forEach(t=>t())}):t.forEach(t=>t())}}reportError(t){throw new Error("Unable to process animations due to the following failed trigger transitions\n "+t.join("\n"))}_flushAnimations(t,e){const n=new a_,a=[],r=new Map,i=[],s=new Map,u=new Map,o=new Map,l=new Set;this.disabledNodes.forEach(t=>{l.add(t);const e=this.driver.query(t,".ng-animate-queued",!0);for(let n=0;n<e.length;n++)l.add(e[n])});const d=this.bodyNode,c=Array.from(this.statesByElement.keys()),f=P_(c,this.collectedEnterElements),h=new Map;let g=0;f.forEach((t,e)=>{const n="ng-enter"+g++;h.set(e,n),t.forEach(t=>M_(t,n))});const p=[],b=new Set,m=new Set;for(let A=0;A<this.collectedLeaveElements.length;A++){const t=this.collectedLeaveElements[A],e=t.__ng_removed;e&&e.setForRemoval&&(p.push(t),b.add(t),e.hasAnimation?this.driver.query(t,".ng-star-inserted",!0).forEach(t=>b.add(t)):m.add(t))}const y=new Map,v=P_(c,Array.from(b));v.forEach((t,e)=>{const n="ng-leave"+g++;y.set(e,n),t.forEach(t=>M_(t,n))}),t.push(()=>{f.forEach((t,e)=>{const n=h.get(e);t.forEach(t=>q_(t,n))}),v.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>q_(t,n))}),p.forEach(t=>{this.processLeaveNode(t)})});const x=[],_=[];for(let A=this._namespaceList.length-1;A>=0;A--)this._namespaceList[A].drainQueuedTransitions(e).forEach(t=>{const e=t.player,r=t.element;if(x.push(e),this.collectedEnterElements.length){const t=r.__ng_removed;if(t&&t.setForMove)return void e.destroy()}const l=!d||!this.driver.containsElement(d,r),c=y.get(r),f=h.get(r),g=this._buildInstruction(t,n,f,c,l);if(g.errors&&g.errors.length)_.push(g);else{if(l)return e.onStart(()=>Lx(r,g.fromStyles)),e.onDestroy(()=>Ex(r,g.toStyles)),void a.push(e);if(t.isFallbackTransition)return e.onStart(()=>Lx(r,g.fromStyles)),e.onDestroy(()=>Ex(r,g.toStyles)),void a.push(e);g.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(r,g.timelines),i.push({instruction:g,player:e,element:r}),g.queriedElements.forEach(t=>dx(s,t,[]).push(e)),g.preStyleProps.forEach((t,e)=>{const n=Object.keys(t);if(n.length){let t=u.get(e);t||u.set(e,t=new Set),n.forEach(e=>t.add(e))}}),g.postStyleProps.forEach((t,e)=>{const n=Object.keys(t);let a=o.get(e);a||o.set(e,a=new Set),n.forEach(t=>a.add(t))})}});if(_.length){const t=[];_.forEach(e=>{t.push(`@${e.triggerName} has failed due to:\n`),e.errors.forEach(e=>t.push(`- ${e}\n`))}),x.forEach(t=>t.destroy()),this.reportError(t)}const T=new Map,w=new Map;i.forEach(t=>{const e=t.element;n.has(e)&&(w.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,T))}),a.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{dx(T,e,[]).push(t),t.destroy()})});const O=p.filter(t=>F_(t,u,o)),S=new Map;D_(S,this.driver,m,o,W.a).forEach(t=>{F_(t,u,o)&&O.push(t)});const I=new Map;f.forEach((t,e)=>{D_(I,this.driver,new Set(t),u,W.l)}),O.forEach(t=>{const e=S.get(t),n=I.get(t);S.set(t,Object.assign({},e,n))});const N=[],C=[],R={};i.forEach(t=>{const{element:e,player:i,instruction:s}=t;if(n.has(e)){if(l.has(e))return i.onDestroy(()=>Ex(e,s.toStyles)),i.disabled=!0,i.overrideTotalTime(s.totalTime),void a.push(i);let t=R;if(w.size>1){let n=e;const a=[];for(;n=n.parentNode;){const e=w.get(n);if(e){t=e;break}a.push(n)}a.forEach(e=>w.set(e,t))}const n=this._buildAnimation(i.namespaceId,s,T,r,I,S);if(i.setRealPlayer(n),t===R)N.push(i);else{const e=this.playersByElement.get(t);e&&e.length&&(i.parentPlayer=ix(e)),a.push(i)}}else Lx(e,s.fromStyles),i.onDestroy(()=>Ex(e,s.toStyles)),C.push(i),l.has(e)&&a.push(i)}),C.forEach(t=>{const e=r.get(t.element);if(e&&e.length){const n=ix(e);t.setRealPlayer(n)}}),a.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let A=0;A<p.length;A++){const t=p[A],e=t.__ng_removed;if(q_(t,"ng-leave"),e&&e.hasAnimation)continue;let n=[];if(s.size){let e=s.get(t);e&&e.length&&n.push(...e);let a=this.driver.query(t,".ng-animating",!0);for(let t=0;t<a.length;t++){let e=s.get(a[t]);e&&e.length&&n.push(...e)}}const a=n.filter(t=>!t.destroyed);a.length?j_(this,t,a):this.processLeaveNode(t)}return p.length=0,N.forEach(t=>{this.players.push(t),t.onDone(()=>{t.destroy();const e=this.players.indexOf(t);this.players.splice(e,1)}),t.play()}),N}elementContainsData(t,e){let n=!1;const a=e.__ng_removed;return a&&a.setForRemoval&&(n=!0),this.playersByElement.has(e)&&(n=!0),this.playersByQueriedElement.has(e)&&(n=!0),this.statesByElement.has(e)&&(n=!0),this._fetchNamespace(t).elementContainsData(e)||n}afterFlush(t){this._flushFns.push(t)}afterFlushAnimationsDone(t){this._whenQuietFns.push(t)}_getPreviousPlayers(t,e,n,a,r){let i=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(i=e)}else{const e=this.playersByElement.get(t);if(e){const t=!r||"void"==r;e.forEach(e=>{e.queued||(t||e.triggerName==a)&&i.push(e)})}}return(n||a)&&(i=i.filter(t=>!(n&&n!=t.namespaceId||a&&a!=t.triggerName))),i}_beforeAnimationBuild(t,e,n){const a=e.element,r=e.isRemovalTransition?void 0:t,i=e.isRemovalTransition?void 0:e.triggerName;for(const s of e.timelines){const t=s.element,u=t!==a,o=dx(n,t,[]);this._getPreviousPlayers(t,u,r,i,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),o.push(t)})}Lx(a,e.fromStyles)}_buildAnimation(t,e,n,a,r,i){const s=e.triggerName,u=e.element,o=[],l=new Set,d=new Set,c=e.timelines.map(e=>{const c=e.element;l.add(c);const f=c.__ng_removed;if(f&&f.removedBeforeQueried)return new W.d(e.duration,e.delay);const h=c!==u,g=function(t){const e=[];return function t(e,n){for(let a=0;a<e.length;a++){const r=e[a];r instanceof W.k?t(r.players,n):n.push(r)}}(t,e),e}((n.get(c)||O_).map(t=>t.getRealPlayer())).filter(t=>!!t.element&&t.element===c),p=r.get(c),b=i.get(c),m=sx(0,this._normalizer,0,e.keyframes,p,b),y=this._buildPlayer(e,m,g);if(e.subTimeline&&a&&d.add(c),h){const e=new k_(t,s,c);e.setRealPlayer(y),o.push(e)}return y});o.forEach(t=>{dx(this.playersByQueriedElement,t.element,[]).push(t),t.onDone(()=>function(t,e,n){let a;if(t instanceof Map){if(a=t.get(e),a){if(a.length){const t=a.indexOf(n);a.splice(t,1)}0==a.length&&t.delete(e)}}else if(a=t[e],a){if(a.length){const t=a.indexOf(n);a.splice(t,1)}0==a.length&&delete t[e]}return a}(this.playersByQueriedElement,t.element,t))}),l.forEach(t=>M_(t,"ng-animating"));const f=ix(c);return f.onDestroy(()=>{l.forEach(t=>q_(t,"ng-animating")),Ex(u,e.toStyles)}),d.forEach(t=>{dx(a,t,[]).push(f)}),f}_buildPlayer(t,e,n){return e.length>0?this.driver.animate(t.element,e,t.duration,t.delay,t.easing,n):new W.d(t.duration,t.delay)}}class k_{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new W.d,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(t){this._containsRealPlayer||(this._player=t,Object.keys(this._queuedCallbacks).forEach(e=>{this._queuedCallbacks[e].forEach(n=>ux(t,e,void 0,n))}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(t.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(t){this.totalTime=t}syncPlayerEvents(t){const e=this._player;e.triggerCallback&&t.onStart(()=>e.triggerCallback("start")),t.onDone(()=>this.finish()),t.onDestroy(()=>this.destroy())}_queueEvent(t,e){dx(this._queuedCallbacks,t,[]).push(e)}onDone(t){this.queued&&this._queueEvent("done",t),this._player.onDone(t)}onStart(t){this.queued&&this._queueEvent("start",t),this._player.onStart(t)}onDestroy(t){this.queued&&this._queueEvent("destroy",t),this._player.onDestroy(t)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(t){this.queued||this._player.setPosition(t)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(t){const e=this._player;e.triggerCallback&&e.triggerCallback(t)}}function E_(t){return t&&1===t.nodeType}function L_(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function D_(t,e,n,a,r){const i=[];n.forEach(t=>i.push(L_(t)));const s=[];a.forEach((n,a)=>{const i={};n.forEach(t=>{const n=i[t]=e.computeStyle(a,t,r);n&&0!=n.length||(a.__ng_removed=I_,s.push(a))}),t.set(a,i)});let u=0;return n.forEach(t=>L_(t,i[u++])),s}function P_(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const a=new Set(e),r=new Map;return e.forEach(t=>{const e=function t(e){if(!e)return 1;let i=r.get(e);if(i)return i;const s=e.parentNode;return i=n.has(s)?s:a.has(s)?1:t(s),r.set(e,i),i}(t);1!==e&&n.get(e).push(t)}),n}function M_(t,e){if(t.classList)t.classList.add(e);else{let n=t.$$classes;n||(n=t.$$classes={}),n[e]=!0}}function q_(t,e){if(t.classList)t.classList.remove(e);else{let n=t.$$classes;n&&delete n[e]}}function j_(t,e,n){ix(n).onDone(()=>t.processLeaveNode(e))}function F_(t,e,n){const a=n.get(t);if(!a)return!1;let r=e.get(t);return r?a.forEach(t=>r.add(t)):e.set(t,a),n.delete(t),!0}class V_{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new A_(t,e,n),this._timelineEngine=new w_(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,a,r){const i=t+"-"+a;let s=this._triggerCache[i];if(!s){const t=[],e=Zx(this._driver,r,t);if(t.length)throw new Error(`The animation trigger "${a}" has failed to build due to the following errors:\n - ${t.join("\n - ")}`);s=function(t,e){return new x_(t,e)}(a,e),this._triggerCache[i]=s}this._transitionEngine.registerTrigger(e,a,s)}register(t,e){this._transitionEngine.register(t,e)}destroy(t,e){this._transitionEngine.destroy(t,e)}onInsert(t,e,n,a){this._transitionEngine.insertNode(t,e,n,a)}onRemove(t,e,n,a){this._transitionEngine.removeNode(t,e,a||!1,n)}disableAnimations(t,e){this._transitionEngine.markElementAsDisabled(t,e)}process(t,e,n,a){if("@"==n.charAt(0)){const[t,r]=cx(n);this._timelineEngine.command(t,e,r,a)}else this._transitionEngine.trigger(t,e,n,a)}listen(t,e,n,a,r){if("@"==n.charAt(0)){const[t,a]=cx(n);return this._timelineEngine.listen(t,e,a,r)}return this._transitionEngine.listen(t,e,n,a,r)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function G_(t,e){let n=null,a=null;return Array.isArray(e)&&e.length?(n=z_(e[0]),e.length>1&&(a=z_(e[e.length-1]))):e&&(n=z_(e)),n||a?new B_(t,n,a):null}let B_=(()=>{class t{constructor(e,n,a){this._element=e,this._startStyles=n,this._endStyles=a,this._state=0;let r=t.initialStylesByElement.get(e);r||t.initialStylesByElement.set(e,r={}),this._initialStyles=r}start(){this._state<1&&(this._startStyles&&Ex(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Ex(this._element,this._initialStyles),this._endStyles&&(Ex(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(Lx(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Lx(this._element,this._endStyles),this._endStyles=null),Ex(this._element,this._initialStyles),this._state=3)}}return t.initialStylesByElement=new WeakMap,t})();function z_(t){let e=null;const n=Object.keys(t);for(let a=0;a<n.length;a++){const r=n[a];Y_(r)&&(e=e||{},e[r]=t[r])}return e}function Y_(t){return"display"===t||"position"===t}class H_{constructor(t,e,n,a,r,i,s){this._element=t,this._name=e,this._duration=n,this._delay=a,this._easing=r,this._fillMode=i,this._onDoneFn=s,this._finished=!1,this._destroyed=!1,this._startTime=0,this._position=0,this._eventFn=t=>this._handleCallback(t)}apply(){!function(t,e){const n=J_(t,"").trim();n.length&&(function(t,e){let n=0;for(let a=0;a<t.length;a++)","===t.charAt(a)&&n++}(n),e=`${n}, ${e}`),Z_(t,"",e)}(this._element,`${this._duration}ms ${this._easing} ${this._delay}ms 1 normal ${this._fillMode} ${this._name}`),$_(this._element,this._eventFn,!1),this._startTime=Date.now()}pause(){U_(this._element,this._name,"paused")}resume(){U_(this._element,this._name,"running")}setPosition(t){const e=W_(this._element,this._name);this._position=t*this._duration,Z_(this._element,"Delay",`-${this._position}ms`,e)}getPosition(){return this._position}_handleCallback(t){const e=t._ngTestManualTimestamp||Date.now(),n=1e3*parseFloat(t.elapsedTime.toFixed(3));t.animationName==this._name&&Math.max(e-this._startTime,0)>=this._delay&&n>=this._duration&&this.finish()}finish(){this._finished||(this._finished=!0,this._onDoneFn(),$_(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=J_(t,"").split(","),a=K_(n,e);a>=0&&(n.splice(a,1),Z_(t,"",n.join(",")))}(this._element,this._name))}}function U_(t,e,n){Z_(t,"PlayState",n,W_(t,e))}function W_(t,e){const n=J_(t,"");return n.indexOf(",")>0?K_(n.split(","),e):K_([n],e)}function K_(t,e){for(let n=0;n<t.length;n++)if(t[n].indexOf(e)>=0)return n;return-1}function $_(t,e,n){n?t.removeEventListener("animationend",e):t.addEventListener("animationend",e)}function Z_(t,e,n,a){const r="animation"+e;if(null!=a){const e=t.style[r];if(e.length){const t=e.split(",");t[a]=n,n=t.join(",")}}t.style[r]=n}function J_(t,e){return t.style["animation"+e]}class Q_{constructor(t,e,n,a,r,i,s,u){this.element=t,this.keyframes=e,this.animationName=n,this._duration=a,this._delay=r,this._finalStyles=s,this._specialStyles=u,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this.currentSnapshot={},this._state=0,this.easing=i||"linear",this.totalTime=a+r,this._buildStyler()}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}destroy(){this.init(),this._state>=4||(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}_flushDoneFns(){this._onDoneFns.forEach(t=>t()),this._onDoneFns=[]}_flushStartFns(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}finish(){this.init(),this._state>=3||(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}setPosition(t){this._styler.setPosition(t)}getPosition(){return this._styler.getPosition()}hasStarted(){return this._state>=2}init(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}play(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}pause(){this.init(),this._styler.pause()}restart(){this.reset(),this.play()}reset(){this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new H_(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",()=>this.finish())}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}beforeDestroy(){this.init();const t={};if(this.hasStarted()){const e=this._state>=3;Object.keys(this._finalStyles).forEach(n=>{"offset"!=n&&(t[n]=e?this._finalStyles[n]:Yx(this.element,n))})}this.currentSnapshot=t}}class X_ extends W.d{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=Tx(e)}init(){!this.__initialized&&this._startingStyles&&(this.__initialized=!0,Object.keys(this._styles).forEach(t=>{this._startingStyles[t]=this.element.style[t]}),super.init())}play(){this._startingStyles&&(this.init(),Object.keys(this._styles).forEach(t=>this.element.style.setProperty(t,this._styles[t])),super.play())}destroy(){this._startingStyles&&(Object.keys(this._startingStyles).forEach(t=>{const e=this._startingStyles[t];e?this.element.style.setProperty(t,e):this.element.style.removeProperty(t)}),this._startingStyles=null,super.destroy())}}class tT{constructor(){this._count=0,this._head=document.querySelector("head"),this._warningIssued=!1}validateStyleProperty(t){return yx(t)}matchesElement(t,e){return vx(t,e)}containsElement(t,e){return xx(t,e)}query(t,e,n){return _x(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>Tx(t));let a=`@keyframes ${e} {\n`,r="";n.forEach(t=>{r=" ";const e=parseFloat(t.offset);a+=`${r}${100*e}% {\n`,r+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(a+=`${r}animation-timing-function: ${n};\n`));default:return void(a+=`${r}${e}: ${n};\n`)}}),a+=r+"}\n"}),a+="}\n";const i=document.createElement("style");return i.innerHTML=a,i}animate(t,e,n,a,r,i=[],s){s&&this._notifyFaultyScrubber();const u=i.filter(t=>t instanceof Q_),o={};Gx(n,a)&&u.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>o[t]=e[t])});const l=function(t){let e={};return t&&(Array.isArray(t)?t:[t]).forEach(t=>{Object.keys(t).forEach(n=>{"offset"!=n&&"easing"!=n&&(e[n]=t[n])})}),e}(e=Bx(t,e,o));if(0==n)return new X_(t,l);const d="gen_css_kf_"+this._count++,c=this.buildKeyframeElement(t,d,e);document.querySelector("head").appendChild(c);const f=G_(t,e),h=new Q_(t,e,d,n,a,r,l,f);return h.onDestroy(()=>{var t;(t=c).parentNode.removeChild(t)}),h}_notifyFaultyScrubber(){this._warningIssued||(console.warn("@angular/animations: please load the web-animations.js polyfill to allow programmatic access...\n","  visit http://bit.ly/IWukam to learn more about using the web-animation-js polyfill."),this._warningIssued=!0)}}class eT{constructor(t,e,n,a){this.element=t,this.keyframes=e,this.options=n,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this.time=0,this.parentPlayer=null,this.currentSnapshot={},this._duration=n.duration,this._delay=n.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_triggerWebAnimation(t,e,n){return t.animate(e,n)}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(t=>t()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}setPosition(t){this.domPlayer.currentTime=t*this.time}getPosition(){return this.domPlayer.currentTime/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(e=>{"offset"!=e&&(t[e]=this._finished?this._finalKeyframe[e]:Yx(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class nT{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(aT().toString()),this._cssKeyframesDriver=new tT}validateStyleProperty(t){return yx(t)}matchesElement(t,e){return vx(t,e)}containsElement(t,e){return xx(t,e)}query(t,e,n){return _x(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,a,r,i=[],s){if(!s&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,a,r,i);const u={duration:n,delay:a,fill:0==a?"both":"forwards"};r&&(u.easing=r);const o={},l=i.filter(t=>t instanceof eT);Gx(n,a)&&l.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>o[t]=e[t])});const d=G_(t,e=Bx(t,e=e.map(t=>Rx(t,!1)),o));return new eT(t,e,u,d)}}function aT(){return"undefined"!=typeof window&&void 0!==window.document&&Element.prototype.animate||{}}class rT extends W.b{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:s.ViewEncapsulation.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?Object(W.f)(t):t;return uT(this._renderer,null,e,"register",[n]),new iT(e,this._renderer)}}class iT extends W.c{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new sT(this._id,t,e||{},this._renderer)}}class sT{constructor(t,e,n,a){this.id=t,this.element=e,this._renderer=a,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",n)}_listen(t,e){return this._renderer.listen(this.element,`@@${this.id}:${t}`,e)}_command(t,...e){return uT(this._renderer,this.element,this.id,t,e)}onDone(t){this._listen("done",t)}onStart(t){this._listen("start",t)}onDestroy(t){this._listen("destroy",t)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset")}setPosition(t){this._command("setPosition",t)}getPosition(){return 0}}function uT(t,e,n,a,r){return t.setProperty(e,`@@${n}:${a}`,r)}class oT{constructor(t,e,n){this.delegate=t,this.engine=e,this._zone=n,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),e.onRemovalComplete=(t,e)=>{e&&e.parentNode(t)&&e.removeChild(t.parentNode,t)}}createRenderer(t,e){const n=this.delegate.createRenderer(t,e);if(!(t&&e&&e.data&&e.data.animation)){let t=this._rendererCache.get(n);return t||(t=new lT("",n,this.engine),this._rendererCache.set(n,t)),t}const a=e.id,r=e.id+"-"+this._currentId;return this._currentId++,this.engine.register(r,t),e.data.animation.forEach(e=>this.engine.registerTrigger(a,r,t,e.name,e)),new dT(this,r,n,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){this.promise.then(()=>{this._microtaskId++})}scheduleListenerCallback(t,e,n){t>=0&&t<this._microtaskId?this._zone.run(()=>e(n)):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(t=>{const[e,n]=t;e(n)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([e,n]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}}class lT{constructor(t,e,n){this.namespaceId=t,this.delegate=e,this.engine=n,this.destroyNode=this.delegate.destroyNode?t=>e.destroyNode(t):null}get data(){return this.delegate.data}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()}createElement(t,e){return this.delegate.createElement(t,e)}createComment(t){return this.delegate.createComment(t)}createText(t){return this.delegate.createText(t)}appendChild(t,e){this.delegate.appendChild(t,e),this.engine.onInsert(this.namespaceId,e,t,!1)}insertBefore(t,e,n){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,!0)}removeChild(t,e,n){this.engine.onRemove(this.namespaceId,e,this.delegate,n)}selectRootElement(t,e){return this.delegate.selectRootElement(t,e)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setAttribute(t,e,n,a){this.delegate.setAttribute(t,e,n,a)}removeAttribute(t,e,n){this.delegate.removeAttribute(t,e,n)}addClass(t,e){this.delegate.addClass(t,e)}removeClass(t,e){this.delegate.removeClass(t,e)}setStyle(t,e,n,a){this.delegate.setStyle(t,e,n,a)}removeStyle(t,e,n){this.delegate.removeStyle(t,e,n)}setProperty(t,e,n){"@"==e.charAt(0)&&"@.disabled"==e?this.disableAnimations(t,!!n):this.delegate.setProperty(t,e,n)}setValue(t,e){this.delegate.setValue(t,e)}listen(t,e,n){return this.delegate.listen(t,e,n)}disableAnimations(t,e){this.engine.disableAnimations(t,e)}}class dT extends lT{constructor(t,e,n,a){super(e,n,a),this.factory=t,this.namespaceId=e}setProperty(t,e,n){"@"==e.charAt(0)?"."==e.charAt(1)&&"@.disabled"==e?this.disableAnimations(t,n=void 0===n||!!n):this.engine.process(this.namespaceId,t,e.substr(1),n):this.delegate.setProperty(t,e,n)}listen(t,e,n){if("@"==e.charAt(0)){const a=function(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(t);let r=e.substr(1),i="";return"@"!=r.charAt(0)&&([r,i]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(r)),this.engine.listen(this.namespaceId,a,r,i,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}class cT extends V_{constructor(t,e,n){super(t.body,e,n)}}function fT(){return"function"==typeof aT()?new nT:new tT}function hT(){return new g_}function gT(t,e,n){return new oT(t,e,n)}const pT=new s.InjectionToken("AnimationModuleType");class bT{}var mT=n("Avrn");let yT=(()=>{class t{constructor(t,e){this.router=t,this.authStorageService=e}canActivate(){return!(this.authStorageService.isLoggedIn()&&!this.authStorageService.isSSO()&&this.authStorageService.getPwdUpdateRequired()&&(this.router.navigate(["/login-change-password"]),1))}canActivateChild(){return this.canActivate()}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](Et.m),s["ɵɵinject"](J.a))},token:t,providedIn:"root"}),t})();var vT=n("Vhfg");let xT=(()=>{class t{constructor(t,e){this.http=t,this.router=e}canActivate(t){return this.doCheck(t)}canActivateChild(t){return this.doCheck(t)}doCheck(e){if(e.url.length>0&&t.WHITELIST.includes(e.url[0].path))return Object(Sn.a)(!0);const n=e.data.moduleStatusGuardConfig;return this.http.get(`api/${n.apiPath}/status`).pipe(Object(Ne.a)(t=>(t.available||this.router.navigate([n.redirectTo,t.message||""]),t.available)),Object(nx.a)(()=>(this.router.navigate([n.redirectTo]),Object(Sn.a)(!1))))}}return t.WHITELIST=["501"],t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](Et.m))},token:t,providedIn:"root"}),t})(),_T=(()=>{class t{constructor(t,e){this.authStorageService=t,this.router=e}canActivate(){return!this.authStorageService.isSSO()||(this.router.navigate(["404"]),!1)}canActivateChild(){return this.canActivate()}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](J.a),s["ɵɵinject"](Et.m))},token:t,providedIn:"root"}),t})();class TT extends Fn{resolve(t){const e=[],n=t.queryParams.fromLink||null;let a="";switch(n){case"/monitor":a="Monitors";break;case"/hosts":a="Hosts"}return e.push({text:"Cluster",path:null}),e.push({text:a,path:n}),e.push({text:"Performance Counters",path:""}),e}}class wT extends Fn{resolve(t){const e=t.params.name;return[{text:X.startCase(e)+"/Edit",path:e}]}}const OT={breadcrumbs:"Cluster/Hosts"},ST={breadcrumbs:St.a.CREATE},IT={breadcrumbs:"Cluster/Monitors"},NT={breadcrumbs:"Cluster/Services"},CT={breadcrumbs:St.a.CREATE},RT={breadcrumbs:"Cluster/Inventory"},AT={breadcrumbs:"Cluster/OSDs"},kT={breadcrumbs:St.a.CREATE},ET={breadcrumbs:"Cluster/Configuration"},LT={breadcrumbs:St.a.EDIT},DT={breadcrumbs:"Cluster/CRUSH map"},PT={breadcrumbs:"Cluster/Logs"},MT={breadcrumbs:"Telemetry configuration"},qT={breadcrumbs:"Cluster/Monitoring"},jT={breadcrumbs:St.a.CREATE+" Silence"},FT={breadcrumbs:St.a.CREATE},VT={breadcrumbs:St.a.EDIT},GT={breadcrumbs:St.a.RECREATE},BT={breadcrumbs:TT},zT={breadcrumbs:"Cluster/Manager Modules"},YT={breadcrumbs:wT},HT={breadcrumbs:"Pools"},UT=()=>Promise.all([n.e(1),n.e(6)]).then(n.bind(null,"nOaW")).then(t=>t.RoutedPoolModuleNgFactory),WT={breadcrumbs:!0,text:"Block",path:null},KT=()=>Promise.all([n.e(1),n.e(5)]).then(n.bind(null,"J6Oi")).then(t=>t.RoutedBlockModuleNgFactory),$T={breadcrumbs:"Filesystems"},ZT={moduleStatusGuardConfig:{apiPath:"rgw",redirectTo:"rgw/501"},breadcrumbs:!0,text:"Object Gateway",path:null},JT=()=>n.e(7).then(n.bind(null,"Znkk")).then(t=>t.RoutedRgwModuleNgFactory),QT={breadcrumbs:"User management",path:null},XT=()=>n.e(8).then(n.bind(null,"DY6s")).then(t=>t.RoutedAuthModuleNgFactory),tw={breadcrumbs:"User profile",path:null},ew={breadcrumbs:St.a.EDIT},nw={breadcrumbs:"NFS"},aw={moduleStatusGuardConfig:{apiPath:"nfs-ganesha",redirectTo:"nfs/501"},breadcrumbs:"NFS"},rw={breadcrumbs:St.a.CREATE},iw={breadcrumbs:St.a.EDIT};class sw{}var uw=n("yT6U"),ow=n("4DD9"),lw=n("+0ag"),dw=n("IzCI"),cw=n("Dwqy"),fw=n("uYzU"),hw=n("nSDx"),gw=n("SB+Q"),pw=n("BQkM"),bw=n("dEH0"),mw=n("G1/K"),yw=n("TJUb"),vw=n("efK2");class xw{constructor(){this.closeOthers=!1,this.isAnimated=!1}}class _w{static forRoot(){return{ngModule:_w,providers:[xw]}}}let Tw=(()=>{class t{constructor(t){this.http=t}jsError(t,e,n){return this.http.post("ui-api/logging/js-error",{url:t,message:e,stack:n})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();class ww{constructor(t){this.injector=t}handleError(t){const e=this.injector.get(Tw),n=window.location.href;throw e.jsError(n,t&&t.message,t&&t.stack).subscribe(),t}}var Ow=n("aHM3"),Sw=n("9Xeq"),Iw=n("yGOH"),Nw=n("bxSN"),Cw=n("V/fk"),Rw=n("ChqD"),Aw=n("PCNd"),kw=n("LceX");class Ew{}class Lw{}var Dw=n("G6Q+");class Pw{}var Mw=n("kJI8");class qw{}class jw{}class Fw{}class Vw{}class Gw{}var Bw=s["ɵcmf"](o,[l],(function(t){return s["ɵmod"]([s["ɵmpd"](512,s.ComponentFactoryResolver,s["ɵCodegenComponentFactoryResolver"],[[8,[x,_.a,ta,Nr,Cs,Us,Xs,yu,Do,ni,El,ad,vd,jd,Xd,of,wf,Zf,yh,wh,Eh,ag,Vg,tp,ip,vp,Zb,em,dm,Tm,Nm,Em,qm,Bm,M,Y,zm.a,Jt.a,Ym.a,Hm.a,Hm.b,Um.a,Wm.a,Km.a,$m.a,Zm.a,Jm.a,Jm.c,Jm.b,Jm.d,ey,my,al,Oy,ky,Fy,Qy,iv,Sv,Pv,Bv,Uv,Zv,tx]],[3,s.ComponentFactoryResolver],s.NgModuleRef]),s["ɵmpd"](4608,et.j,et.p,[i.DOCUMENT,s.PLATFORM_ID,et.n]),s["ɵmpd"](4608,et.q,et.q,[et.j,et.o]),s["ɵmpd"](4608,J.a,J.a,[]),s["ɵmpd"](5120,et.a,(function(t,e,n,a){return[t,new ax(e,n,a)]}),[et.q,Et.m,J.a,bt.a]),s["ɵmpd"](4608,et.m,et.m,[]),s["ɵmpd"](6144,et.k,null,[et.m]),s["ɵmpd"](4608,et.i,et.i,[et.k]),s["ɵmpd"](6144,et.b,null,[et.i]),s["ɵmpd"](4608,et.g,et.l,[et.b,s.Injector]),s["ɵmpd"](4608,et.c,et.c,[et.g]),s["ɵmpd"](4352,s.LOCALE_ID,"en-US",[]),s["ɵmpd"](4608,i.NgLocalization,i.NgLocaleLocalization,[s.LOCALE_ID,[2,i["ɵangular_packages_common_common_a"]]]),s["ɵmpd"](5120,s["ɵangular_packages_core_core_ba"],s["ɵangular_packages_core_core_r"],[s.NgZone]),s["ɵmpd"](5120,s.APP_ID,s["ɵangular_packages_core_core_f"],[]),s["ɵmpd"](5120,s.IterableDiffers,s["ɵangular_packages_core_core_n"],[]),s["ɵmpd"](5120,s.KeyValueDiffers,s["ɵangular_packages_core_core_o"],[]),s["ɵmpd"](4608,Ar.b,Ar.k,[i.DOCUMENT]),s["ɵmpd"](6144,s.Sanitizer,null,[Ar.b]),s["ɵmpd"](4608,Ar.e,Ar.g,[]),s["ɵmpd"](5120,Ar.c,(function(t,e,n,a,r,i,s,u){return[new Ar.i(t,e,n),new Ar.n(a),new Ar.m(r,i,s,u)]}),[i.DOCUMENT,s.NgZone,s.PLATFORM_ID,i.DOCUMENT,i.DOCUMENT,Ar.e,s["ɵConsole"],[2,Ar.f]]),s["ɵmpd"](4608,Ar.d,Ar.d,[Ar.c,s.NgZone]),s["ɵmpd"](135680,Ar.l,Ar.l,[i.DOCUMENT]),s["ɵmpd"](4608,Ar.j,Ar.j,[Ar.d,Ar.l,s.APP_ID]),s["ɵmpd"](5120,Ox,fT,[]),s["ɵmpd"](5120,h_,hT,[]),s["ɵmpd"](4608,V_,cT,[i.DOCUMENT,Ox,h_]),s["ɵmpd"](5120,s.RendererFactory2,gT,[Ar.j,V_,s.NgZone]),s["ɵmpd"](6144,Ar.o,null,[Ar.l]),s["ɵmpd"](4608,s.Testability,s.Testability,[s.NgZone]),s["ɵmpd"](4608,W.b,rT,[s.RendererFactory2,i.DOCUMENT]),s["ɵmpd"](5120,Et.a,Et.B,[Et.m]),s["ɵmpd"](4608,Et.g,Et.g,[]),s["ɵmpd"](6144,Et.h,null,[Et.g]),s["ɵmpd"](135680,Et.s,Et.s,[Et.m,s.NgModuleFactoryLoader,s.Compiler,s.Injector,Et.h]),s["ɵmpd"](4608,Et.f,Et.f,[]),s["ɵmpd"](5120,Et.G,Et.x,[Et.m,i.ViewportScroller,Et.i]),s["ɵmpd"](5120,Et.j,Et.E,[Et.C]),s["ɵmpd"](5120,s.APP_BOOTSTRAP_LISTENER,(function(t){return[t]}),[Et.j]),s["ɵmpd"](4608,wT,wT,[]),s["ɵmpd"](4608,TT,TT,[]),s["ɵmpd"](4608,K.D,K.D,[]),s["ɵmpd"](4608,K.h,K.h,[]),s["ɵmpd"](4608,uw.a,uw.a,[]),s["ɵmpd"](4608,ow.a,ow.a,[]),s["ɵmpd"](5120,s.TRANSLATIONS,u,[s.LOCALE_ID]),s["ɵmpd"](4608,fe.a,fe.a,[s.TRANSLATIONS_FORMAT,s.TRANSLATIONS,s.LOCALE_ID,[2,fe.b]]),s["ɵmpd"](4608,rd.a,rd.a,[fe.a]),s["ɵmpd"](4608,i.DatePipe,i.DatePipe,[s.LOCALE_ID]),s["ɵmpd"](4608,hs.a,hs.a,[]),s["ɵmpd"](4608,lw.a,lw.a,[]),s["ɵmpd"](4608,Sa.a,Sa.a,[]),s["ɵmpd"](4608,ba.a,ba.a,[Sa.a]),s["ɵmpd"](4608,dw.a,dw.a,[Sa.a]),s["ɵmpd"](4608,ma.a,ma.a,[Sa.a]),s["ɵmpd"](4608,cw.a,cw.a,[]),s["ɵmpd"](4608,fw.a,fw.a,[]),s["ɵmpd"](4608,qo.a,qo.a,[]),s["ɵmpd"](4608,Hc.a,Hc.a,[]),s["ɵmpd"](4608,xe.a,xe.a,[i.DatePipe]),s["ɵmpd"](4608,hw.a,hw.a,[]),s["ɵmpd"](4608,gw.a,gw.a,[]),s["ɵmpd"](4608,Tp.a,Tp.a,[]),s["ɵmpd"](4608,pw.a,pw.a,[]),s["ɵmpd"](4608,bw.a,bw.a,[]),s["ɵmpd"](4608,mw.a,mw.a,[fe.a]),s["ɵmpd"](4608,Ps.a,Ps.a,[]),s["ɵmpd"](4608,yw.a,yw.a,[]),s["ɵmpd"](4608,vw.a,vw.a,[]),s["ɵmpd"](4608,Qt.b,Qt.b,[]),s["ɵmpd"](4608,aa.a,aa.a,[]),s["ɵmpd"](4608,ra.a,ra.a,[s.NgZone,s.RendererFactory2,s.PLATFORM_ID]),s["ɵmpd"](4608,U.a,U.a,[s.ComponentFactoryResolver,s.NgZone,s.Injector,ra.a,s.ApplicationRef]),s["ɵmpd"](4608,me.c,me.c,[]),s["ɵmpd"](4608,Wn.a,Wn.a,[]),s["ɵmpd"](4608,Ct.b,Ct.b,[s.RendererFactory2,U.a]),s["ɵmpd"](4608,Df.y,Df.y,[i.DOCUMENT]),s["ɵmpd"](4608,Df.r,Df.r,[]),s["ɵmpd"](4608,Df.a,Df.a,[]),s["ɵmpd"](4608,H.f,H.f,[]),s["ɵmpd"](4608,mT.a,mT.a,[Et.m,J.a]),s["ɵmpd"](4608,na.f,na.f,[]),s["ɵmpd"](4608,st.t,st.t,[]),s["ɵmpd"](4608,st.v,st.v,[]),s["ɵmpd"](4608,st.a,st.a,[]),s["ɵmpd"](4608,st.h,st.h,[]),s["ɵmpd"](4608,st.d,st.d,[]),s["ɵmpd"](4608,st.j,st.j,[]),s["ɵmpd"](4608,st.l,st.l,[]),s["ɵmpd"](4608,st.u,st.u,[st.v,st.l]),s["ɵmpd"](5120,O,A,[R]),s["ɵmpd"](4608,N,N,[O]),s["ɵmpd"](4608,Eu,Eu,[]),s["ɵmpd"](4608,vc,vc,[]),s["ɵmpd"](4608,ec,ec,[]),s["ɵmpd"](4608,Tc,Tc,[]),s["ɵmpd"](4608,Bd.a,Bd.a,[]),s["ɵmpd"](4608,xw,xw,[]),s["ɵmpd"](4608,Q.g,Q.g,[Q.b]),s["ɵmpd"](1073742336,et.e,et.e,[]),s["ɵmpd"](1073742336,et.d,et.d,[]),s["ɵmpd"](1073742336,i.CommonModule,i.CommonModule,[]),s["ɵmpd"](512,s.ErrorHandler,ww,[s.Injector]),s["ɵmpd"](1024,s.NgProbeToken,(function(){return[Et.w()]}),[]),s["ɵmpd"](512,Et.C,Et.C,[s.Injector]),s["ɵmpd"](1024,s.APP_INITIALIZER,(function(t,e){return[Ar.p(t),Et.D(e)]}),[[2,s.NgProbeToken],Et.C]),s["ɵmpd"](512,s.ApplicationInitStatus,s.ApplicationInitStatus,[[2,s.APP_INITIALIZER]]),s["ɵmpd"](131584,s.ApplicationRef,s.ApplicationRef,[s.NgZone,s["ɵConsole"],s.Injector,s.ErrorHandler,s.ComponentFactoryResolver,s.ApplicationInitStatus]),s["ɵmpd"](1073742336,s.ApplicationModule,s.ApplicationModule,[s.ApplicationRef]),s["ɵmpd"](1073742336,Ar.a,Ar.a,[[3,Ar.a]]),s["ɵmpd"](1073742336,bT,bT,[]),s["ɵmpd"](1073742336,d.i,d.i,[]),s["ɵmpd"](1024,Et.v,Et.z,[[3,Et.m]]),s["ɵmpd"](512,Et.u,Et.c,[]),s["ɵmpd"](512,Et.b,Et.b,[]),s["ɵmpd"](256,Et.i,{useHash:!0,preloadingStrategy:Et.g},[]),s["ɵmpd"](1024,i.LocationStrategy,Et.y,[i.PlatformLocation,[2,i.APP_BASE_HREF],Et.i]),s["ɵmpd"](512,i.Location,i.Location,[i.LocationStrategy,i.PlatformLocation]),s["ɵmpd"](512,s.Compiler,s.Compiler,[]),s["ɵmpd"](512,s.NgModuleFactoryLoader,s.SystemJsNgModuleLoader,[s.Compiler,[2,s.SystemJsNgModuleLoaderConfig]]),s["ɵmpd"](1024,Et.k,(function(){return[[{path:"",redirectTo:"dashboard",pathMatch:"full"},{path:"",component:Zn,canActivate:[mT.a,yT],canActivateChild:[mT.a,yT],children:[{path:"dashboard",component:_r},{path:"hosts",data:OT,children:[{path:"",component:ys},{path:"create",component:js,data:ST}]},{path:"monitor",component:Ks,data:IT},{path:"services",data:NT,children:[{path:"",component:fu},{path:"create",component:Yu,data:CT}]},{path:"inventory",component:Zr,data:RT},{path:"osd",data:AT,children:[{path:"",component:ml},{path:"create",component:Ul,data:kT}]},{path:"configuration",data:ET,children:[{path:"",component:fd},{path:"edit/:name",component:_d,data:LT}]},{path:"crush-map",component:Hd,data:DT},{path:"logs",component:Wc,data:PT},{path:"telemetry",component:lf,data:MT},{path:"monitoring",data:qT,children:[{path:"",component:Vf},{path:"silence/create",component:th,data:jT},{path:"silence/create/:id",component:th,data:FT},{path:"silence/edit/:id",component:th,data:VT},{path:"silence/recreate/:id",component:th,data:GT}]},{path:"perf_counters/:type/:id",component:vh,data:BT},{path:"mgr-modules",data:zT,children:[{path:"",component:Ch},{path:"edit/:name",component:Lh,data:YT}]},{path:"pool",data:HT,loadChildren:UT},{path:"block",data:WT,loadChildren:KT},{path:"cephfs",component:Mg,canActivate:[vT.a],data:$T},{path:"rgw",canActivateChild:[vT.a,xT],data:ZT,loadChildren:JT},{path:"user-management",data:QT,loadChildren:XT},{path:"user-profile",data:tw,children:[{path:"edit",component:Bg,canActivate:[_T],data:ew}]},{path:"nfs/501/:message",component:ep,data:nw},{path:"nfs",canActivateChild:[vT.a,xT],data:aw,children:[{path:"",component:fp},{path:"create",component:Pp,data:rw},{path:"edit/:cluster_id/:export_id",component:Pp,data:iw}]}]},{path:"",component:Jb,children:[{path:"login",component:am},{path:"login-change-password",component:cm,canActivate:[_T]}]},{path:"",component:wm,children:[{path:"sso/404",component:Cm},{path:"403",component:Lm},{path:"404",component:jm},{path:"**",redirectTo:"/404"}]}]]}),[]),s["ɵmpd"](1024,Et.m,Et.A,[s.ApplicationRef,Et.u,Et.b,i.Location,s.Injector,s.NgModuleFactoryLoader,s.Compiler,Et.k,Et.i,[2,Et.t],[2,Et.l]]),s["ɵmpd"](1073742336,Et.q,Et.q,[[2,Et.v],[2,Et.m]]),s["ɵmpd"](1073742336,sw,sw,[]),s["ɵmpd"](1073742336,k,k,[]),s["ɵmpd"](1073742336,Ow.a,Ow.a,[]),s["ɵmpd"](1073742336,K.C,K.C,[]),s["ɵmpd"](1073742336,K.n,K.n,[]),s["ɵmpd"](1073742336,aa.d,aa.d,[]),s["ɵmpd"](1073742336,K.y,K.y,[]),s["ɵmpd"](1073742336,Sw.a,Sw.a,[]),s["ɵmpd"](1073742336,Qt.c,Qt.c,[]),s["ɵmpd"](1073742336,me.d,me.d,[]),s["ɵmpd"](1073742336,Wn.d,Wn.d,[]),s["ɵmpd"](1073742336,ha.b,ha.b,[]),s["ɵmpd"](1073742336,Ct.e,Ct.e,[]),s["ɵmpd"](1073742336,Iw.a,Iw.a,[]),s["ɵmpd"](1073742336,H.e,H.e,[]),s["ɵmpd"](1073742336,Q.f,Q.f,[]),s["ɵmpd"](1073742336,Nw.ClickOutsideModule,Nw.ClickOutsideModule,[]),s["ɵmpd"](1073742336,Te.b,Te.b,[]),s["ɵmpd"](1073742336,Cw.a,Cw.a,[]),s["ɵmpd"](1073742336,Df.u,Df.u,[]),s["ɵmpd"](1073742336,Rw.a,Rw.a,[]),s["ɵmpd"](1073742336,ue.a,ue.a,[]),s["ɵmpd"](1073742336,Aw.a,Aw.a,[]),s["ɵmpd"](1073742336,na.d,na.d,[]),s["ɵmpd"](1073742336,st.g,st.g,[]),s["ɵmpd"](1073742336,kw.a,kw.a,[]),s["ɵmpd"](1073742336,$t,$t,[]),s["ɵmpd"](1073742336,Ew,Ew,[]),s["ɵmpd"](1073742336,Lw,Lw,[]),s["ɵmpd"](1073742336,Dw.a,Dw.a,[]),s["ɵmpd"](1073742336,Pw,Pw,[]),s["ɵmpd"](1073742336,Du,Du,[]),s["ɵmpd"](1073742336,Oc,Oc,[]),s["ɵmpd"](1073742336,Yd.b,Yd.b,[]),s["ɵmpd"](1073742336,bi.a,bi.a,[]),s["ɵmpd"](1073742336,Mw.a,Mw.a,[]),s["ɵmpd"](1073742336,qw,qw,[]),s["ɵmpd"](1073742336,jw,jw,[]),s["ɵmpd"](1073742336,Fw,Fw,[]),s["ɵmpd"](1073742336,Vw,Vw,[]),s["ɵmpd"](1073742336,Gw,Gw,[]),s["ɵmpd"](1073742336,_w,_w,[]),s["ɵmpd"](1073742336,o,o,[]),s["ɵmpd"](256,et.n,"XSRF-TOKEN",[]),s["ɵmpd"](256,et.o,"X-XSRF-TOKEN",[]),s["ɵmpd"](256,s["ɵAPP_ROOT"],!0,[]),s["ɵmpd"](256,pT,"BrowserAnimations",[]),s["ɵmpd"](256,s.TRANSLATIONS_FORMAT,"xlf",[]),s["ɵmpd"](256,H.a,{autoClose:!0,insideClick:!1},[]),s["ɵmpd"](256,R,{},[]),s["ɵmpd"](256,d.b,{default:d.a,config:{positionClass:"toast-top-right",preventDuplicates:!0,enableHtml:!0}},[]),s["ɵmpd"](1024,Q.b,(function(){return[[]]}),[]),s["ɵmpd"](256,Q.a,1,[])])}));i.registerLocaleData(r.a),Object(s.enableProdMode)(),Ar.h().bootstrapModuleFactory(Bw).catch(t=>console.log(t))},zWsK:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return a}));class a{transform(t,e,n){return n?e.call(n,t):e(t)}}class r{}},zavE:function(t,e,n){!function(t){"use strict";t.defineLocale("en-SG",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},zk60:function(t,e,n){var a=n("2oRo"),r=n("kRJp");t.exports=function(t,e){try{r(a,t,e)}catch(n){a[t]=e}return e}},zx6S:function(t,e,n){!function(t){"use strict";var e={words:{ss:["sekunda","sekunde","sekundi"],m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(t,e){return 1===t?e[0]:t>=2&&t<=4?e[1]:e[2]},translate:function(t,n,a){var r=e.words[a];return 1===a.length?n?r[0]:r[1]:t+" "+e.correctGrammaticalCase(t,r)}};t.defineLocale("sr",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sre._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){return["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",ss:e.translate,m:e.translate,mm:e.translate,h:e.translate,hh:e.translate,d:"dan",dd:e.translate,M:"mesec",MM:e.translate,y:"godinu",yy:e.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))}},[[0,0]]]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.6fdc1558ba9057d093e0.js.LICENSE.txt b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.6fdc1558ba9057d093e0.js.LICENSE.txt
deleted file mode 100644 (file)
index e401131..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-/*!
- * Chart.js v2.8.0
- * https://www.chartjs.org
- * (c) 2019 Chart.js Contributors
- * Released under the MIT License
- */
-
-/*! *****************************************************************************
-Copyright (c) Microsoft Corporation. All rights reserved.
-Licensed under the Apache License, Version 2.0 (the "License"); you may not use
-this file except in compliance with the License. You may obtain a copy of the
-License at http://www.apache.org/licenses/LICENSE-2.0
-
-THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
-WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
-MERCHANTABLITY OR NON-INFRINGEMENT.
-
-See the Apache Version 2.0 License for specific language governing permissions
-and limitations under the License.
-***************************************************************************** */
-
-/**
- * @license
- * Copyright Google Inc. All Rights Reserved.
- *
- * Use of this source code is governed by an MIT-style license that can be
- * found in the LICENSE file at https://angular.io/license
- * @param {?} cb
- * @return {?}
- */
-
-/**
- * @license
- * Copyright Google Inc. All Rights Reserved.
- *
- * Use of this source code is governed by an MIT-style license that can be
- * found in the LICENSE file at https://angular.io/license
- * @type {?}
- */
-
-/**
- * @license
- * Copyright Google Inc. All Rights Reserved.
- *
- * Use of this source code is governed by an MIT-style license that can be
- * found in the LICENSE file at https://angular.io/license
- */
-
-/**
- * @license
- * Lodash <https://lodash.com/>
- * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
- * Released under MIT license <https://lodash.com/license>
- * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
- * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
- */
-
-/**
- * @license Angular v8.2.14
- * (c) 2010-2019 Google LLC. https://angular.io/
- * License: MIT
- */
-
-/**
-* @license
-* Copyright Google Inc. All Rights Reserved.
-*
-* Use of this source code is governed by an MIT-style license that can be
-* found in the LICENSE file at https://angular.io/license
-*/
-
-//! author : Abdel Said: https://github.com/abdelsaid
-
-//! author : Ahmed Elkhatib
-
-//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira
-
-//! author : Chris Gedrim : https://github.com/chrisgedrim
-
-//! author : Julio Napurí : https://github.com/julionc
-
-//! author : Mikolaj Dadela : https://github.com/mik01aj
-
-//! author : Rafal Hirsz : https://github.com/evoL
-
-//! author : bustta : https://github.com/bustta
-
-//! author : forabi https://github.com/forabi
-
-//! author : lluchs : https://github.com/lluchs
-
-//! author : petrbela : https://github.com/petrbela
-
-//! author: Menelion Elensúle: https://github.com/Oire
-
-//! locale : Arabic [ar]
-
-//! locale : Czech [cs]
-
-//! locale : English (United Kingdom) [en-gb]
-
-//! locale : German [de]
-
-//! locale : Polish [pl]
-
-//! locale : Portuguese (Brazil) [pt-br]
-
-//! locale : Spanish (United States) [es-us]
-
-//! locale : Spanish [es]
-
-//! moment.js locale configuration
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.8f0b1a650c943458f796.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.8f0b1a650c943458f796.js
new file mode 100644 (file)
index 0000000..bd0c168
--- /dev/null
@@ -0,0 +1,2 @@
+/*! For license information please see main.8f0b1a650c943458f796.js.LICENSE.txt */
+(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{"+0ag":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){const e=/ceph version\s+[^ ]+\s+\(.+\)\s+(.+)\s+\((.+)\)/.exec(t);return e?"dev"===e[2]?"master":e[1]:t}}},"+FhV":function(t,e,n){var a=n("IMTC")(Object.getPrototypeOf,Object);t.exports=a},"+GvH":function(t,e,n){var a=n("rk81"),r=n("ezUo"),i=n("w4fU"),s=n("2bSy"),u=n("qwH+"),o=n("0GLT"),l=n("y/5f"),d=n("uPDw"),c="[object Object]",f=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,h,g,p){var b=o(t),m=o(e),y=b?"[object Array]":u(t),v=m?"[object Array]":u(e),x=(y="[object Arguments]"==y?c:y)==c,_=(v="[object Arguments]"==v?c:v)==c,T=y==v;if(T&&l(t)){if(!l(e))return!1;b=!0,x=!1}if(T&&!x)return p||(p=new a),b||d(t)?r(t,e,n,h,g,p):i(t,e,y,n,h,g,p);if(!(1&n)){var w=x&&f.call(t,"__wrapped__"),O=_&&f.call(e,"__wrapped__");if(w||O){var S=w?t.value():t,I=O?e.value():e;return p||(p=new a),g(S,I,n,h,p)}}return!!T&&(p||(p=new a),s(t,e,n,h,g,p))}},"+GxX":function(t,e,n){var a=n("77kF"),r=n("1Yk6");t.exports=function(t,e){return a(t,r(t),e)}},"+NyF":function(t,e){t.exports=function(t,e){return null!=t&&e in Object(t)}},"+Wg/":function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="pt-BR">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Alternar navegação</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Painel de controle</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Cluster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hosts</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitores</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Serviços</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSDs</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Configuração</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>Mapa CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Módulos do gerenciador</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Registros</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pools</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Bloco</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Imagens</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Espelhamento</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Sistemas de arquivos</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Gateway de Objetos</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemons</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Usuários</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Compartimentos</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Selecionar Idioma</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Carregando dados do painel...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Seletor de Horário do Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Redefinir Configurações</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Voltar</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Falha ao carregar dados.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>selecionado(s)</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>encontrado(s)</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>total</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nome</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Descrição</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Descrição extensa</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Padrão</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Padrão do daemon</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Valores</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Salvar</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Visualizador de mapa CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Carregando...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nome de host</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Este campo é obrigatório.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Sim, desejo.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Cancelar</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Fechar</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Lista de Hosts</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Desempenho Geral</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Nenhuma entrada encontrada</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Registros do Cluster</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Registros de Auditoria</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Carregando configuração...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Não foi possível carregar a configuração.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Editar módulo do gerenciador</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>O valor inserido não é um UUID válido. Ex.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>O valor inserido precisa ser um endereço IP válido.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>O valor inserido precisa ser um número.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>O valor inserido precisa ser um número ou decimal.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Atualizar</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Status</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID do Cluster</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap modificado</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>época de monmap</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>con obrigatório</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>mon obrigatório</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>No Quorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Não está no Quorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Adicionar</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Recursos</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Flags OSD de todo o Cluster</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Enviar</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Avançado...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Prioridade de Recuperação de OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Prioridade</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Personalizar valores de prioridade</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Este campo é obrigatório!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>O valor precisa ser entre 0 e 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Reponderar</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Profundo } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {profundo} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Lista de OSDs</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Valor</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Editar</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Excluir</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Saúde</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Estatísticas</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Clientes</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Qualquer cliente pode acessar</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Endereços</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Campo obrigatório</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Deve conter um ou mais valores separados por vírgula</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Por exemplo:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Tipo de Acesso</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Executar Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Adicionar clientes</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Não há clusters disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Selecionar cluster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Adicionar daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Backend de Armazenamento</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Não há pools de dados disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Selecionar backend de armazenamento --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Usuário do Gateway de Objetos</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Não há usuários disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Selecionar usuário do gateway de objetos --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID de Usuário do CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Não há clientes disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Selecionar cliente do cephx --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nome do CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Rótulo de Segurança</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Habilitar rótulo de segurança</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Caminho do CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>O caminho precisa começar com \'/\' e pode ser seguido de uma palavra</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Novo diretório será criado</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Caminho</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>O caminho pode ser apenas uma \'/\' ou uma palavra</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Novo compartimento será criado</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protocolo NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Tag NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Clientes não podem montar subdiretórios (ou seja, se Tag = foo, o cliente não poderá montar foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Ao usar opções diferentes de Tag, o mesmo Caminho pode ser exportado várias vezes.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Ao usar opções diferentes de Pseudo, o mesmo Caminho pode ser exportado várias vezes.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Não há tipos de acesso disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Selecionar tipo de acesso --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Não há squashes disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>--Selecionar que tipo de squash de ID de usuário será executado --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protocolo de Transporte</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Bem-vindo ao Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nome de usuário é obrigatório</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Senha é obrigatória</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Login</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>O usuário não existe no Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Proibido</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Você não tem permissão para ver o que está procurando.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Configuração de RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Remova o valor de configuração local. No lugar dele, o valor de configuração pai será herdado e usado.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>O valor mínimo é 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Lista de Pools</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>O nome pode conter apenas caracteres alfanuméricos, traços e sublinhados.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>O nome do perfil de código de eliminação escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plug-in</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Pacotes de dados (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Deve ser igual ou maior do que 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Pacotes de codificação (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Deve ser igual ou maior do que 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Estimador de durabilidade (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Localidade (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Domínio de falha do Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Localidade do Crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Nenhum</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Técnica</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Tamanho do pacote</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Raiz do Crush</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Classe do dispositivo do Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>qualquer</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Diretório</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nome...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>O nome do pool do Ceph escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Tipo de pool</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Selecionar tipo de pool --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Grupos de posicionamento</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Pelo menos um grupo de posicionamento é necessário!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Seu cluster não pode processar tantos PGs. Recalcule a quantidade de PG necessária.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Ajuda no cálculo</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Tamanho replicado</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flags</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>Sobregravações de EC</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Aplicativos</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Perfil do código de eliminação</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Não há perfis de código de eliminação disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Selecionar perfil do código de eliminação --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Conjunto de regras do Crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Selecionar regra de crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Regra de Crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Etapas do Crush</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Compactação</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Modo</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritmo</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Não há algoritmos de compactação de eliminação disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Tamanho mínimo do blob</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>ex. 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>O valor deve ser maior do que 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Tamanho máximo do blob</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>ex. 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>O valor deve ser maior do que o tamanho mínimo do blob</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Taxa</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Taxa de compactação</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>O valor deve ser entre 0.0 e 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>ex. 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Detalhes</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Detalhes de Desempenho</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Detalhes das Camadas do Cache</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Mover imagem para o lixo</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Vencimento da proteção em</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NÃO PROTEGIDO</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Formato de data incorreto. Use "AAAA-MM-DD HH:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>A proteção já venceu. Escolha uma data no futuro ou deixe-a vazia.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Mover Imagem</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Visão geral</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Destinos</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Autenticação de Descoberta</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Usuário</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Os nomes de usuário devem ter entre 8 e 64 caracteres e\n              apenas podem conter letras, \'.\', \'@\', \'-\', \'_\' ou \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Senha</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Usuário Mútuo</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Senha Mútua</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informações disponíveis:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>Destinos iSCSI não disponíveis</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Pool de Dados</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Criado</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Tamanho</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objetos</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Tamanho do objeto</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Aprovisionado</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/A</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Total aprovisionado</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unidade de distribuição</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Total de distribuições</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Pai</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Prefixo do nome do bloco</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Ordem</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Instantâneos</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Imagem</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Esta configuração substitui o valor global</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Este é o valor global. Nenhum valor para esta opção foi definido para esta imagem.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' e \'@\' não são permitidos.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Não há pools de RBD disponíveis --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Selecionar pool --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Usar pool de dados dedicado</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Pool de dados</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Pool dedicado que armazena os dados de objetos do RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Você precisa aumentar o tamanho.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Avançado</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Distribuição</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unidade de distribuição</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Selecionar unidade de distribuição --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Este campo é obrigatório porque o total de distribuições foi definido!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>A unidade de distribuição é maior do que o tamanho do objeto.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Total de distribuições</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Este campo é obrigatório porque a unidade de distribuição foi definida!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>O total de distribuições deve ser maior do que 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Você está prestes a fazer rollback</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Purgar Lixo</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Tudo</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pool:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nome do pool...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Restaurar Imagem</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Para restaurar</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>digite o novo nome da imagem e clique em</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Novo Nome</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Venceu em</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Protegido até</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologia iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Não costuma ser necessário mudar o valor padrão destes parâmetros.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Configurações</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Confirmar</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Configurações Avançadas</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN de Destino</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN tem padrão incorreto.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Por exemplo: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Mais informações</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Este destino tem configurações avançadas modificadas.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portais</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Adicionar portal</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Esta imagem tem configurações modificadas.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Adicionar imagem</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Autenticação ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Iniciadores</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Iniciador</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN do Cliente</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>O IQN do Iniciador precisa ser exclusivo.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Os nomes de usuário devem ter entre 8 e 64 caracteres e\n                        apenas podem conter letras, \'.\', \'@\', \'-\', \'_\' ou \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>O iniciador pertence a um grupo. As imagens serão configuradas no grupo.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Nenhum item adicionado.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Adicionar iniciador</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Grupos</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Grupo</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Adicionar grupo</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Lixo</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Problemas</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Sincronizando</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Pronto</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Editar modo de espelho do pool</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Clusters de peer devem ser removidos antes de desabilitar o espelho.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Editar} other {Adicionar} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nome do Cluster</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>O nome do cluster não é válido.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>ID do CephX</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>ID do CephX...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>O ID do CephX não é válido.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Endereços do Monitor</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Endereços delimitados por vírgula...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>O endereço de monitoria não é válido.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Chave do CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Chave codificada com base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>A chave do CephX deve ser codificada com base64.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Contadores de desempenho não disponíveis</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Lista de Daemons</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Contadores de Desempenho</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Carregando dados do compartimento...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>O valor não é válido.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>O nome escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Proprietário</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Selecionar usuário --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Habilitado</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Tipo de índice</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Regra de posicionamento</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Marcador</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Marcador máximo</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Versão</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Versão master</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Horário da modificação</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Grupo de zonas</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Cota do compartimento</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Tamanho máximo</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Ilimitado</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Máximo de objetos</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nome de usuário</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Selecionar nome de usuário --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Gerar chave automaticamente</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Chave de acesso</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Chave secreta</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nome completo</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Endereço de e-mail</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Suspenso</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Sistema</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Máximo de compartimentos</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Subusuários</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Recursos</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Cota do usuário</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Mostrar</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Chaves</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Tipo</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Selecionar tipo --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Permissão</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Selecionar permissão --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Subusuário</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>O ID de subusuário escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>leitura, gravação</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>completo</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Chave Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Gerar segredo automaticamente</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Carregando dados do usuário...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Não foi possível carregar os dados do usuário.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>O ID de usuário escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Este não é um endereço de e-mail válido.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>O endereço de e-mail escolhido já está em uso.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Máx. de compartimentos</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Desabilitado</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Personalizado</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Chave S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Não há subusuários.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Não há chaves.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Não há recursos.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Tamanho ilimitado</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Tamanho máx.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Objetos ilimitados</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Máx. de objetos</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>O valor inserido deve ser &gt;= 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Descrição...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Permissões</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Funções</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Confirmar senha</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>A confirmação de senha não corresponde à senha.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>E-mail</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>E-mail inválido.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Você está prestes a remover as permissões de "leitura/atualização de usuário" do seu próprio usuário.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Se você continuar, não poderá mais adicionar ou remover funções de nenhum usuário.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Deseja realmente continuar?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Ajuda</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Documentação</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Sobre</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Configurações do Painel de Controle</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Gerenciamento de usuários</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Usuário que efetuou login</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Efetuar logout</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atributos (mapa OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadados não disponíveis</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadados</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Contador de desempenho</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Gravações</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Leituras</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histograma</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Valores atuais</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Mín.</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Máx.</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Origem</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Nível</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Pode ser atualizado em tempo de execução (editável)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tags</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Valores de enum</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Consulte também</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Status do Cluster</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Daemons do Gerenciador</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Gateways de Objetos</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Servidores de Metadados</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Gateways iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS do Cliente</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Throughput do Cliente</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Leitura/Gravação do Cliente</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Throughput de Recuperação</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Remoção</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Desempenho</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Capacidade Bruta</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>PGs por OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Status do PG</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Capacidade</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Posições</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Atual</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Autenticação de descoberta atualizada</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Não há portais disponíveis.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Não há imagens disponíveis.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Não há imagens disponíveis. Adicione uma imagem ao destino.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Não há iniciadores disponíveis. Adicione um iniciador ao destino.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Destino</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Estado</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Bytes de Leitura</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Bytes de Gravação</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Op. de Leitura</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Op. de Gravação</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O Desde</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instância</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problema</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Andamento</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Modo de Edição</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Adicionar Peer</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Editar Peer</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Excluir Peer</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>Nº Local</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>Nº Remoto</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>espelhar peer</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Chave</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Nivelamento profundo</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Disposição em camadas</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Bloqueio exclusivo</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mapa de objetos (requer bloqueio exclusivo)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Registro em diário (requer bloqueio exclusivo)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NÃO PROTEGIDO</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Rollback de instantâneo do RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Fazer Rollback</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Instantâneo do RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Excluído à(s)</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>tipo</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>estado</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>versão</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>raiz</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemons de standby</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Posição</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Atividade</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inodes</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Uso</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Atualizado</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>É possível atualizar o valor em temo de execução.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Daemons/clientes não extraem este valor do\n      banco de dados de configuração do monitor. A configuração desta opção não é permitida por meio de \'ceph config\n      set ...\'. Essa opção deve ser configurada por meio do ceph.conf ou da\n      linha de comando.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>A opção entra em vigor apenas durante a inicialização do daemon.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>A opção afeta apenas a criação do cluster.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>A opção afeta apenas a criação do daemon.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Serviço</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Valor atual</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Editável</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Habilitar</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Desabilitar</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Reconectando, aguarde...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Endereço Público</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Sessões Abertas</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Não Entrada</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>Os OSDs que já foram marcados como saída não serão remarcados como entrada ao serem iniciados</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Não Saída</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>Os OSDs não serão automaticamente marcados como saída após o intervalo configurado</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Não Ativo</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>Os OSDs não podem ser iniciados</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Não Inativo</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Os relatórios de falha de OSD estão sendo ignorados, portanto, os monitores não marcarão os OSDs como inativos</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pausar</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Pausa leituras e gravações</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Sem Remoção</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Remoção desabilitada</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Sem Remoção Profunda</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Remoção Profunda desabilitada</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Sem Provisionamento</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Provisionamento de PGs suspenso</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Sem Recuperação</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Recuperação de PGs suspensa</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Classificação Bit a Bit</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Usar classificação bit a bit</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Snapdirs Purgados</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSDs converteram snapsets</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Exclusões de Recuperação</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Exclusões realizadas durante a recuperação, e não o emparelhamento</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Limite Físico do Registro de PG</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Atribui um limite físico ao tamanho do registro de PG</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Flags OSD Atualizadas</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>saída</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>entrada</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>inativo</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Marcar</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD perdido</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>marcado como perdido</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Purgar</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>purgado</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>destruir</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>destruído</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>excluir</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PGs</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Bytes de leitura</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Bytes de gravação</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Op. de leitura</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Op. de gravação</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Máx. de Provisionamentos</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Máx. Recuperação Ativo</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Máx. Recuperação Inicialização Única</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Suspensão de Recuperação</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Tarefa</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Gravidade</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Iniciado</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Usado</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Disp.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Limpar</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>Em funcionamento</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Aviso</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Desconhecido</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>ativo</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>sem sistemas de arquivos</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>ativo</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>standby</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/a</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon ativo</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>O serviço NFS Ganesha não está configurado.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transporte</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Usuário do CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Sistema de Arquivos do CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(herdado da configuração global)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>herdado da configuração global</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Selecionar que tipo de squash de ID de usuário será executado --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Não há daemons disponíveis.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Modo de Cache</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Tempo Mín. Expulsão</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Tempo Mín. Descarregamento</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Máx. de Bytes de Destino</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Máx. de Objetos de Destino</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Nenhum aplicativo adicionado</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Limite de aplicativos atingido</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Um pool apenas pode ter até quatro definições de aplicativos.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Caracteres permitidos: \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Tamanho máximo de 128 caracteres</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtrar ou adicionar aplicativos</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Adicionar aplicativo</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>perfil de código de eliminação</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Tamanho da Réplica</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Última Alteração</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Perfil Codificado para Eliminação</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Conjunto de Regras do Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>compartimento</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>compartimentos</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>usuário</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>usuários</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Escopo</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Leitura</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Criar</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Função do Sistema</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Atualizar usuário</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Continuar</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Você foi automaticamente desconectado porque suas funções foram alteradas.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Cada objeto é dividido em partes de pacotes de dados, cada uma armazenada em um OSD diferente.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Calcule os pacotes de codificação de cada objeto e armazene-os em diferentes OSDs.\n      O número de pacotes de codificação é também o número de OSDs que podem ficar inativos sem perda de dados.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>O plug-in jerasure é o mais genérico e flexível,\n          além de ser o padrão para pools codificados para eliminação do Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>A técnica mais flexível é reed_sol_van: ela é suficiente para definir k\n          e m. A técnica cauchy_good pode ser mais rápida, mas você precisa escolher o tamanho do pacote\n          com cuidado. Todos os reed_sol_r6_op, liberation, blaum_roth e liber8tion são equivalentes ao RAID6\n          no sentido de que só podem ser configurados com m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>A codificação será feita em pacotes de tamanho de bytes um de cada vez.\n          A escolha do tamanho do pacote certo é difícil.\n          A documentação do jerasure contém informações completas sobre este tópico.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Com o plug-in jerasure, quando um objeto codificado para eliminação é armazenado em\n          vários OSDs, a recuperação após a perda de um OSD requer a leitura de todos os outros.\n          Por exemplo, se o jerasure for configurado com k=8 e m=4, a perda de um OSD exigirá a leitura\n          dos outros onze para fazer o reparo.\n\n          O plug-in de código de eliminação lrc cria pacotes locais de paridade para conseguir recuperar usando\n          menos OSDs. Por exemplo, se o lrc for configurado com k=8, m=4 e l=4, ele criará\n          um pacote de paridade adicional para cada quatro OSDs. Quando um único OSD é perdido, ele pode ser\n          recuperado apenas com quatro OSDs, em vez de onze.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Agrupe os pacotes de codificação e dados em conjuntos de localidades com tamanho. Por exemplo,\n          no caso de k=4 e m=2, quando locality=3, dois grupos de três são criados. Cada conjunto pode\n          ser recuperado sem a leitura dos pacotes do outro conjunto.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>O tipo do compartimento de crush em que cada conjunto de pacotes definido\n          por l será armazenado. Por exemplo, se isso for definido como rack, cada grupo de pacotes l será\n          colocado em um rack diferente. Isso é usado para criar uma etapa da regra CRUSH, como a etapa de escolha do\n          rack. Se isso não for definido, esse tipo de agrupamento não será feito.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>O plug-in isa encapsula a biblioteca ISA. Ele apenas é executado em processadores Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>O plug-in ISA vem em dois formatos de Reed Solomon.\n          Se reed_sol_van for definido, ele será Vandermonde, se cauchy for definido, ele será Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>O plug-in shec encapsula a biblioteca múltipla SHEC.\n          Ele permite ao ceph recuperar dados com mais eficiência do que os códigos de Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>O número de pacotes de paridade, em que cada um inclui cada pacote de dados em sua\n          faixa de cálculo. O número é usado como estimador de durabilidade. Por exemplo, se c=2,\n          2 OSDs podem ficar inativos sem perda de dados.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>O nome do compartimento de crush usado para a primeira etapa da regra CRUSH.\n      Por exemplo, a etapa assumir o padrão.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Verifique se não há dois pacotes em um compartimento com o mesmo domínio de\n      falha. Por exemplo, se o domínio de falha for um host, não armazene dois pacotes no mesmo\n      host. Isso é usado para criar uma etapa da regra CRUSH, como a etapa de escolha do host folha.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Restrinja o posicionamento a dispositivos de uma classe específica\n      (ex. ssd ou hdd), usando nomes de classe de dispositivo crush no mapa CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Defina o nome do diretório do qual o plug-in de código de eliminação é carregado.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Permite todas as operações</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Permite apenas as operações que não modificam o servidor</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Não permite operações de leitura ou gravação, mas permite qualquer outra operação</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Não permite leitura, gravação ou qualquer operação que modifica os atributos do arquivo ou o conteúdo do diretório</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Não permite nenhum tipo de acesso</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Selecionar prioridade --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Baixa</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Alta</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informações</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Últimos 5 minutos</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Últimos 15 minutos</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Últimos 30 minutos</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Última 1 hora (Padrão)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Últimas 3 horas</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Últimas 6 horas</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Últimas 12 horas</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Últimas 24 horas</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Ontem</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Hoje</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Até agora hoje</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Antes de ontem</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Últimos 2 dias</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Este dia na semana passada</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Semana anterior</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Esta semana</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Até agora nesta semana</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Últimos 7 dias</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Mês anterior</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Este mês</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Até agora neste mês</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Últimos 30 dias</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Últimos 90 dias</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Últimos 6 meses</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Último ano</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Ano anterior</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Este ano</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Até agora neste ano</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Últimos 2 anos</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Últimos 5 anos</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Nenhum item selecionado.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Desmarcar item para selecionar novamente</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Limite de seleção atingido</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Tags de filtro</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Adicionar selo</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Não há itens disponíveis.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Clonar</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Copiar</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Remoção Profunda</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Destruir</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Nivelar</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Marcar como Inativo</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Marcar como Entrada</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Marcar como Perdido</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Marcar como Saída</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Proteger</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Renomear</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Restaurar</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Mover para Lixo</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Cancelar proteção</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Excluído</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Clonado</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Copiado</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Nivelado</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Purgado</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Restaurado</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Rollback feito</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Sim</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Não</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Qualidade do Serviço</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limite de BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>O limite de bytes por segundo de E/S desejado.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limite de IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>O limite de operações por segundo de E/S desejado.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limite de BPS de Leitura</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>O limite de bytes por segundo de leitura desejado.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limite de IOPS de Leitura</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>O limite de operações por segundo de leitura desejado.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limite de BPS de Gravação</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>O limite de bytes por segundo de gravação desejado.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limite de IOPS de Gravação</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>O limite de operações por segundo de gravação desejado.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Intermitência de BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>O limite de bytes de E/S de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Intermitência de IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>O limite de operações de E/S de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Intermitência de BPS de Leitura</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>O limite de bytes de leitura de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Intermitência de IOPS de Leitura</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>O limite de operações de leitura de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Intermitência de BPS de Gravação</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>O limite de bytes de gravação de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Intermitência de IOPS de Gravação</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>O limite de operações de gravação de intermitência desejado.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Executando</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>executar</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Executado</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>tarefa desconhecida</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Criando</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>criar</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Atualizando</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>atualizar</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Excluindo</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Clonando</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>clonar</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Copiando</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>copiar</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Nivelando</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>nivelar</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Fazendo rollback</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>rollback</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Movendo</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>mover</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Movido</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Imagem não encontrada.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Restaurando</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>restaurar</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Purgando</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>purgar</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>todos os pools</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Impossível desabilitar espelhamento porque ele contém um peer.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"+Z6c":function(t,e,n){var a=n("TbD+"),r=n("LJNh")((function(t,e){return null==t?{}:a(t,e)}));t.exports=r},"+fVR":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{setExpandedRow(t){this.expandedRow=t}}},"+gVj":function(t,e,n){"use strict";n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return u})),n.d(e,"c",(function(){return f})),n.d(e,"d",(function(){return i})),n.d(e,"e",(function(){return l})),n.d(e,"f",(function(){return g})),n.d(e,"g",(function(){return c})),n.d(e,"h",(function(){return h}));var a=n("8Y7J"),r=n("s7LF");class i{constructor(){this.validSubmit=new a.EventEmitter}onSubmit(){this.markAsTouchedAndDirty(this.formGroup),this.formGroup.valid&&this.validSubmit.emit(this.formGroup.value)}markAsTouchedAndDirty(t){t instanceof r.k?Object.keys(t.controls).forEach(e=>this.markAsTouchedAndDirty(t.controls[e])):t instanceof r.f?t.controls.forEach(t=>this.markAsTouchedAndDirty(t)):t instanceof r.i&&t.enabled&&(t.markAsDirty(),t.markAsTouched(),t.updateValueAndValidity())}}const s=function(){var t={Three:0,Four:1};return t[t.Three]="Three",t[t.Four]="Four",t}(),u=new a.InjectionToken("ng-bootstrap-form-validation custom error messages"),o=new a.InjectionToken("ng-bootstrap-form-validation module options");class l{constructor(t){this.bootstrapVersion=t,this.messages=()=>[]}get className(){switch(this.bootstrapVersion){case s.Three:return"help-block";case s.Four:return"invalid-feedback"}}}const d=[{error:"required",format:t=>t+" is required"},{error:"pattern",format:t=>t+" is invalid"},{error:"minlength",format:(t,e)=>`${t} must be at least ${e.requiredLength} characters`},{error:"maxlength",format:(t,e)=>`${t} must be no longer than ${e.requiredLength} characters`},{error:"requiredTrue",format:(t,e)=>t+" is required"},{error:"email",format:(t,e)=>"Invalid email address"},{error:"max",format:(t,e)=>`${t} must be no greater than ${e.max}`},{error:"min",format:(t,e)=>`${t} must be no less than ${e.min}`}];let c=(()=>{class t{constructor(t){this.customErrorMessages=t,this.defaultErrors=d,this.errorMessages=t.reduce((t,e)=>t.concat(e),this.defaultErrors)}}return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t(Object(a["ɵɵinject"])(u))},token:t,providedIn:"root"}),t})();class f{constructor(t,e){this.elRef=t,this.errorMessageService=e,this.customErrorMessages=[],this.validationDisabled=!1,this.messages=()=>this.getMessages()}get hasErrors(){return this.FormControlNames.some(t=>!t.valid&&t.dirty&&t.touched)&&!this.validationDisabled}get hasSuccess(){return!this.FormControlNames.some(t=>!t.valid)&&this.FormControlNames.some(t=>t.dirty&&t.touched)&&!this.validationDisabled}ngAfterContentInit(){this.messagesBlock&&(this.messagesBlock.messages=this.messages)}ngOnInit(){this.errorMessages=this.errorMessageService.errorMessages.concat(this.customErrorMessages).reverse()}get label(){const t=this.elRef.nativeElement.querySelector("label");return t&&t.textContent?t.textContent.trim():"This field"}get isDirtyAndTouched(){return this.FormControlNames.some(t=>t.dirty&&t.touched)}getMessages(){const t=[];if(!this.isDirtyAndTouched||this.validationDisabled)return t;const e=this.FormControlNames.map(t=>t.name);return this.FormControlNames.filter((t,n)=>!t.valid&&!!t.errors&&e.indexOf(t.name)===n).forEach(e=>{Object.keys(e.errors).forEach(n=>{const a=this.errorMessages.find(t=>t.error===n);a&&t.push(a.format(this.label,e.errors[n]))})}),t}}class h{constructor(t,e){this.parent=t,this.bootstrapVersion=e}get validClass(){return!!this.control&&this.bootstrapFour&&this.control.valid&&(this.control.touched||this.control.dirty)}get invalidClass(){return!!this.control&&this.bootstrapFour&&this.control.invalid&&this.control.touched&&this.control.dirty}get path(){return[...this.parent.path,this.formControlName]}get control(){return this.formDirective&&this.formDirective.getControl(this)}get formDirective(){return this.parent?this.parent.formDirective:null}get bootstrapFour(){return this.bootstrapVersion===s.Four}}class g{static forRoot(t={bootstrapVersion:s.Four}){return{ngModule:g,providers:[{provide:u,useValue:t.customErrorMessages||[],multi:!0},{provide:o,useValue:t.bootstrapVersion},c]}}}},"+s0g":function(t,e,n){!function(t){"use strict";var e="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),n="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),a=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],r=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;t.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}})}(n("wd/R"))},"+xYL":function(t,e){var n=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return n.call(t)}catch(e){}try{return t+""}catch(e){}}return""}},"//9w":function(t,e,n){!function(t){"use strict";t.defineLocale("se",{months:"ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"),monthsShort:"ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov".split("_"),weekdays:"sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"),weekdaysShort:"sotn_vuos_maŋ_gask_duor_bear_láv".split("_"),weekdaysMin:"s_v_m_g_d_b_L".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"MMMM D. [b.] YYYY",LLL:"MMMM D. [b.] YYYY [ti.] HH:mm",LLLL:"dddd, MMMM D. [b.] YYYY [ti.] HH:mm"},calendar:{sameDay:"[otne ti] LT",nextDay:"[ihttin ti] LT",nextWeek:"dddd [ti] LT",lastDay:"[ikte ti] LT",lastWeek:"[ovddit] dddd [ti] LT",sameElse:"L"},relativeTime:{future:"%s geažes",past:"maŋit %s",s:"moadde sekunddat",ss:"%d sekunddat",m:"okta minuhta",mm:"%d minuhtat",h:"okta diimmu",hh:"%d diimmut",d:"okta beaivi",dd:"%d beaivvit",M:"okta mánnu",MM:"%d mánut",y:"okta jahki",yy:"%d jagit"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},"/F2L":function(t,e,n){var a=n("emnf"),r=n("G3uG")(a);t.exports=r},"/GqU":function(t,e,n){var a=n("RK3t"),r=n("HYAF");t.exports=function(t){return a(r(t))}},"/Gx3":function(t,e,n){var a=n("aHcz"),r=n("8V0S"),i=n("/F2L");t.exports=function(t,e){return i(r(t,e,a),t+"")}},"/NlG":function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("8Y7J"),r=n("oxzT");class i{constructor(t){this.i18n=t,this.title="",this.bootstrapClass="",this.backAction=new a.EventEmitter,this.size="normal",this.showIcon=!0,this.showTitle=!0,this.dismissible=!1,this.dismissed=new a.EventEmitter,this.icons=r.a}ngOnInit(){switch(this.type){case"warning":this.title=this.title||this.i18n("Warning"),this.typeIcon=this.typeIcon||r.a.warning,this.bootstrapClass=this.bootstrapClass||"warning";break;case"error":this.title=this.title||this.i18n("Error"),this.typeIcon=this.typeIcon||r.a.destroyCircle,this.bootstrapClass=this.bootstrapClass||"danger";break;case"info":this.title=this.title||this.i18n("Information"),this.typeIcon=this.typeIcon||r.a.infoCircle,this.bootstrapClass=this.bootstrapClass||"info";break;case"success":this.title=this.title||this.i18n("Success"),this.typeIcon=this.typeIcon||r.a.check,this.bootstrapClass=this.bootstrapClass||"success";break;case"danger":this.title=this.title||this.i18n("Danger"),this.typeIcon=this.typeIcon||r.a.warning,this.bootstrapClass=this.bootstrapClass||"danger"}}onClose(){this.dismissed.emit()}}},"/X5v":function(t,e,n){!function(t){"use strict";t.defineLocale("x-pseudo",{months:"J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér".split("_"),monthsShort:"J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc".split("_"),monthsParseExact:!0,weekdays:"S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý".split("_"),weekdaysShort:"S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát".split("_"),weekdaysMin:"S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[T~ódá~ý át] LT",nextDay:"[T~ómó~rró~w át] LT",nextWeek:"dddd [át] LT",lastDay:"[Ý~ést~érdá~ý át] LT",lastWeek:"[L~ást] dddd [át] LT",sameElse:"L"},relativeTime:{future:"í~ñ %s",past:"%s á~gó",s:"á ~féw ~sécó~ñds",ss:"%d s~écóñ~ds",m:"á ~míñ~úté",mm:"%d m~íñú~tés",h:"á~ñ hó~úr",hh:"%d h~óúrs",d:"á ~dáý",dd:"%d d~áýs",M:"á ~móñ~th",MM:"%d m~óñt~hs",y:"á ~ýéár",yy:"%d ý~éárs"},dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},"/b8u":function(t,e,n){var a=n("STAE");t.exports=a&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},"/byt":function(t,e){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},"/rd/":function(t,e,n){var a=n("im1V"),r=n("x3F9");t.exports=function(t){return r(t)&&a(t)}},0:function(t,e,n){t.exports=n("zUnb")},"0+/T":function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("s7LF"),r=n("QFaf");n("sb0X");class i{constructor(t){this.modalRef=t,this.actionDescription="delete"}ngOnInit(){const t={confirmation:new a.i(!1,[a.B.requiredTrue])};if(this.childFormGroup&&(t.child=this.childFormGroup),this.deletionForm=new r.a(t),!this.submitAction&&!this.submitActionObservable)throw new Error("No submit action defined")}callSubmitAction(){this.submitActionObservable?this.submitActionObservable().subscribe(null,this.stopLoadingSpinner.bind(this),this.hideModal.bind(this)):this.submitAction()}hideModal(){this.modalRef.hide()}stopLoadingSpinner(){this.deletionForm.setErrors({cdSubmitButton:!0})}}},"02OF":function(t,e,n){var a=n("IfUl"),r=n("j09V"),i=n("lEOU"),s=n("Y3RO"),u=n("pcUq"),o=n("PHub"),l=n("0GLT"),d=n("/rd/"),c=n("y/5f"),f=n("Q7RW"),h=n("hmSm"),g=n("CslI"),p=n("uPDw"),b=n("dCge"),m=n("eAIQ");t.exports=function(t,e,n,y,v,x,_){var T=b(t,n),w=b(e,n),O=_.get(w);if(O)a(t,n,O);else{var S=x?x(T,w,n+"",t,e,_):void 0,I=void 0===S;if(I){var N=l(w),C=!N&&c(w),R=!N&&!C&&p(w);S=w,N||C||R?l(T)?S=T:d(T)?S=s(T):C?(I=!1,S=r(w,!0)):R?(I=!1,S=i(w,!0)):S=[]:g(w)||o(w)?(S=T,o(T)?S=m(T):h(T)&&!f(T)||(S=u(w))):I=!1}I&&(_.set(w,S),v(S,w,y,x,_),_.delete(w)),a(t,n,S)}}},"07d7":function(t,e,n){var a=n("AO7/"),r=n("busE"),i=n("sEFX");a||r(Object.prototype,"toString",i,{unsafe:!0})},"0BK2":function(t,e){t.exports={}},"0BcO":function(t,e,n){var a=n("KFwg")(n("Wa4q"),"WeakMap");t.exports=a},"0Dky":function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},"0EUg":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("bHdf");function r(){return Object(a.a)(1)}},"0GLT":function(t,e){t.exports=Array.isArray},"0GbY":function(t,e,n){var a=n("Qo9l"),r=n("2oRo"),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(a[t])||i(r[t]):a[t]&&a[t][e]||r[t]&&r[t][e]}},"0eef":function(t,e,n){"use strict";var a={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,i=r&&!a.call({1:2},1);e.f=i?function(t){var e=r(this,t);return!!e&&e.enumerable}:a},"0mo+":function(t,e,n){!function(t){"use strict";var e={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},n={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"};t.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",ss:"%d སྐར་ཆ།",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(t){return t.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,meridiemHour:function(t,e){return 12===t&&(t=0),"མཚན་མོ"===e&&t>=4||"ཉིན་གུང"===e&&t<5||"དགོང་དག"===e?t+12:t},meridiem:function(t,e,n){return t<4?"མཚན་མོ":t<10?"ཞོགས་ཀས":t<17?"ཉིན་གུང":t<20?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}})}(n("wd/R"))},"0nKi":function(t,e){t.exports=function(t){return function(e){return t(e)}}},"0rEg":function(t,e){t.exports=function(t,e,n){for(var a=n-1,r=t.length;++a<r;)if(t[a]===e)return a;return-1}},"0rvr":function(t,e,n){var a=n("glrk"),r=n("O741");t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(i){}return function(n,i){return a(n),r(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},"0tRk":function(t,e,n){!function(t){"use strict";t.defineLocale("pt-br",{months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº"})}(n("wd/R"))},"128B":function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("Kqap"),r=n("BFxc"),i=n("xbPD"),s=n("mCNh");function u(t,e){return arguments.length>=2?function(n){return Object(s.a)(Object(a.a)(t,e),Object(r.a)(1),Object(i.a)(e))(n)}:function(e){return Object(s.a)(Object(a.a)((e,n,a)=>t(e,n,a+1)),Object(r.a)(1))(e)}}},"14R3":function(t,e){"undefined"!=typeof Element&&("function"!=typeof Element.prototype.matches&&(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.webkitMatchesSelector||function(t){for(var e=(this.document||this.ownerDocument).querySelectorAll(t),n=0;e[n]&&e[n]!==this;)++n;return Boolean(e[n])}),"function"!=typeof Element.prototype.closest&&(Element.prototype.closest=function(t){for(var e=this;e&&1===e.nodeType;){if(e.matches(t))return e;e=e.parentNode}return null}))},"14Sl":function(t,e,n){"use strict";n("rB9j");var a=n("busE"),r=n("0Dky"),i=n("tiKp"),s=n("kmMV"),u=n("kRJp"),o=i("species"),l=!r((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),d="$0"==="a".replace(/./,"$0"),c=i("replace"),f=!!/./[c]&&""===/./[c]("a","$0"),h=!r((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));t.exports=function(t,e,n,c){var g=i(t),p=!r((function(){var e={};return e[g]=function(){return 7},7!=""[t](e)})),b=p&&!r((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[o]=function(){return n},n.flags="",n[g]=/./[g]),n.exec=function(){return e=!0,null},n[g](""),!e}));if(!p||!b||"replace"===t&&(!l||!d||f)||"split"===t&&!h){var m=/./[g],y=n(g,""[t],(function(t,e,n,a,r){return e.exec===s?p&&!r?{done:!0,value:m.call(e,n,a)}:{done:!0,value:t.call(n,e,a)}:{done:!1}}),{REPLACE_KEEPS_$0:d,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:f}),v=y[1];a(String.prototype,t,y[0]),a(RegExp.prototype,g,2==e?function(t,e){return v.call(t,this,e)}:function(t){return v.call(t,this)})}c&&u(RegExp.prototype[g],"sham",!0)}},"1E5z":function(t,e,n){var a=n("m/L8").f,r=n("UTVS"),i=n("tiKp")("toStringTag");t.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,i)&&a(t,i,{configurable:!0,value:e})}},"1Ni5":function(t,e,n){"use strict";n.d(e,"b",(function(){return f})),n.d(e,"a",(function(){return h}));var a=n("s7LF"),r=n("LvDl"),i=n("LRne"),s=n("PqYM"),u=n("aGrj"),o=n("lJxs"),l=n("IzEk"),d=n("Fgil"),c=n("aXbf");function f(t){return null==t||0===t.length}class h{static email(t){return f(t.value)?null:a.B.email(t)}static ip(t=0){const e=/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i,n=/^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}$/i;return a.B.pattern(4===t?e:6===t?n:new RegExp(e.source+"|"+n.source))}static number(t=!0){return a.B.pattern(t?/^-?[0-9]+$/i:/^[0-9]+$/i)}static decimalNumber(t=!0){return a.B.pattern(t?/^-?[0-9]+(.[0-9]+)?$/i:/^[0-9]+(.[0-9]+)?$/i)}static sslCert(){return a.B.pattern(/^-----BEGIN CERTIFICATE-----(\n|\r|\f)((.+)?((\n|\r|\f).+)*)(\n|\r|\f)-----END CERTIFICATE-----[\n\r\f]*$/)}static sslPrivKey(){return a.B.pattern(/^-----BEGIN RSA PRIVATE KEY-----(\n|\r|\f)((.+)?((\n|\r|\f).+)*)(\n|\r|\f)-----END RSA PRIVATE KEY-----[\n\r\f]*$/)}static requiredIf(t,e){let n=!1;return a=>(!n&&a.parent&&(Object.keys(t).forEach(t=>{a.parent.get(t).valueChanges.subscribe(()=>{a.updateValueAndValidity({emitEvent:!1})})}),n=!0),Object.keys(t).every(e=>{if(!a.parent)return!1;const n=a.parent.get(e).value,i=t[e];if(r.isObjectLike(i)){let t=!1;switch(i.op){case"empty":t=r.isEmpty(n);break;case"!empty":t=!r.isEmpty(n);break;case"equal":t=n===i.arg1;break;case"!equal":t=n!==i.arg1;break;case"minLength":r.isString(n)&&(t=n.length>=i.arg1)}return t}return n===i})&&(r.isFunction(e)?e.call(e,a.value):f(a.value))?{required:!0}:null)}static composeIf(t,e){let n=!1;return r=>(!n&&r.parent&&(Object.keys(t).forEach(t=>{r.parent.get(t).valueChanges.subscribe(()=>{r.updateValueAndValidity({emitEvent:!1})})}),n=!0),Object.keys(t).every(e=>r.parent&&r.parent.get(e).value===t[e])?a.B.compose(e)(r):null)}static custom(t,e){return n=>{const a=e.call(this,n.value);return a?{[t]:a}:null}}static validateIf(t,e,n,r=[],i=[]){n=n.concat(r),t.setValidators(t=>e.call(this)?a.B.compose(n)(t):r.length>0?a.B.compose(r)(t):null),i.forEach(e=>{e.valueChanges.subscribe(()=>{t.updateValueAndValidity({emitEvent:!1})})})}static match(t,e){return n=>{const a=n.get(t),i=n.get(e);if(!a||!i)return null;if(a.value!==i.value)i.setErrors({match:!0});else if(i.hasError("match")){const t=i.errors;r.unset(t,"match"),i.setErrors(r.isEmpty(r.keys(t))?null:t)}return null}}static unique(t,e=null,n,a=!1){let d;return c=>c.pristine||f(c.value)?Object(i.a)(null):(d=c.value,r.isFunction(n)&&null!==n()&&""!==n()&&(d=a?`${c.value}$${n()}`:`${n()}$${c.value}`),Object(s.a)().pipe(Object(u.a)(t.call(e,d)),Object(o.a)(t=>t?{notUnique:!0}:null),Object(l.a)(1)))}static uuid(t=!1){const e=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;return n=>n.pristine&&n.untouched?null:t||n.value?e.test(n.value)?null:{invalidUuid:"This is not a valid UUID"}:null}static binaryMin(t){return e=>{const n=new c.a,a=(new c.a).toBytes(e.value);if(t<=a)return null;const r=new d.a(n).transform(t);return{binaryMin:t=>t("Size has to be at least {{value}} or more",{value:r})}}}static binaryMax(t){return e=>{const n=new c.a,a=n.toBytes(e.value);if(t>=a)return null;const r=new d.a(n).transform(t);return{binaryMax:t=>t("Size has to be at most {{value}} or less",{value:r})}}}static passwordPolicy(t,e,n){return a=>{if(a.pristine||""===a.value)return r.isFunction(n)&&n(!0,0),Object(i.a)(null);let d;return r.isFunction(e)&&(d=e()),Object(s.a)(500).pipe(Object(u.a)(r.invoke(t,"validatePassword",a.value,d)),Object(o.a)(t=>(r.isFunction(n)&&n(t.valid,t.credits,t.valuation),t.valid?null:{passwordPolicy:!0})),Object(l.a)(1))}}}},"1Y/n":function(t,e,n){var a=n("HAuM"),r=n("ewvW"),i=n("RK3t"),s=n("UMSQ"),u=function(t){return function(e,n,u,o){a(n);var l=r(e),d=i(l),c=s(l.length),f=t?c-1:0,h=t?-1:1;if(u<2)for(;;){if(f in d){o=d[f],f+=h;break}if(f+=h,t?f<0:c<=f)throw TypeError("Reduce of empty array with no initial value")}for(;t?f>=0:c>f;f+=h)f in d&&(o=n(o,d[f],f,l));return o}};t.exports={left:u(!1),right:u(!0)}},"1Yk6":function(t,e,n){var a=n("IyEx"),r=n("kA6G"),i=Object.prototype.propertyIsEnumerable,s=Object.getOwnPropertySymbols;t.exports=s?function(t){return null==t?[]:(t=Object(t),a(s(t),(function(e){return i.call(t,e)})))}:r},"1nQr":function(t,e,n){"use strict";var a=n("LvDl"),r=n("lJxs"),i=n("20UP");class s{constructor(t){this.pwdPolicyEnabled=t.pwd_policy_enabled,this.pwdPolicyMinLength=t.pwd_policy_min_length,this.pwdPolicyCheckLengthEnabled=t.pwd_policy_check_length_enabled,this.pwdPolicyCheckOldpwdEnabled=t.pwd_policy_check_oldpwd_enabled,this.pwdPolicyCheckUsernameEnabled=t.pwd_policy_check_username_enabled,this.pwdPolicyCheckExclusionListEnabled=t.pwd_policy_check_exclusion_list_enabled,this.pwdPolicyCheckRepetitiveCharsEnabled=t.pwd_policy_check_repetitive_chars_enabled,this.pwdPolicyCheckSequentialCharsEnabled=t.pwd_policy_check_sequential_chars_enabled,this.pwdPolicyCheckComplexityEnabled=t.pwd_policy_check_complexity_enabled}}var u=n("8Y7J"),o=n("GiVz");n.d(e,"a",(function(){return l}));let l=(()=>{class t{constructor(t,e){this.i18n=t,this.settingsService=e}getHelpText(){return this.settingsService.getStandardSettings().pipe(Object(r.a)(t=>{const e=new s(t);let n=[];if(e.pwdPolicyEnabled){n.push(this.i18n("Required rules for passwords:"));const t={pwdPolicyCheckLengthEnabled:this.i18n("Must contain at least {{length}} characters",{length:e.pwdPolicyMinLength}),pwdPolicyCheckOldpwdEnabled:this.i18n("Must not be the same as the previous one"),pwdPolicyCheckUsernameEnabled:this.i18n("Cannot contain the username"),pwdPolicyCheckExclusionListEnabled:this.i18n("Cannot contain any configured keyword"),pwdPolicyCheckRepetitiveCharsEnabled:this.i18n('Cannot contain any repetitive characters e.g. "aaa"'),pwdPolicyCheckSequentialCharsEnabled:this.i18n('Cannot contain any sequential characters e.g. "abc"'),pwdPolicyCheckComplexityEnabled:this.i18n("Must consist of characters from the following groups:\n  * Alphabetic a-z, A-Z\n  * Numbers 0-9\n  * Special chars: !\"#$%& '()*+,-./:;<=>?@[\\]^_`{{|}}~\n  * Any other characters (signs)")};n=n.concat(a.keys(t).filter(t=>a.get(e,t)).map(e=>"- "+a.get(t,e)))}return n.join("\n")}))}mapCreditsToCssClass(t){let e="very-strong";return t<10?e="too-weak":t<15?e="weak":t<20?e="ok":t<25&&(e="strong"),e}}return t.ngInjectableDef=u["ɵɵdefineInjectable"]({factory:function(){return new t(u["ɵɵinject"](o.a),u["ɵɵinject"](i.a))},token:t,providedIn:"root"}),t})()},"1rYy":function(t,e,n){!function(t){"use strict";t.defineLocale("hy-am",{months:{format:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_"),standalone:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_")},monthsShort:"հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_"),weekdays:"կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_"),weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., HH:mm",LLLL:"dddd, D MMMM YYYY թ., HH:mm"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",ss:"%d վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(t){return/^(ցերեկվա|երեկոյան)$/.test(t)},meridiem:function(t){return t<4?"գիշերվա":t<12?"առավոտվա":t<17?"ցերեկվա":"երեկոյան"},dayOfMonthOrdinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(t,e){switch(e){case"DDD":case"w":case"W":case"DDDo":return 1===t?t+"-ին":t+"-րդ";default:return t}},week:{dow:1,doy:7}})}(n("wd/R"))},"1xZ4":function(t,e,n){!function(t){"use strict";t.defineLocale("ca",{months:{standalone:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),format:"de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split("_"),isFormat:/D[oD]?(\s)+MMMM/},monthsShort:"gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.".split("_"),monthsParseExact:!0,weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"dg_dl_dt_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [de] YYYY",ll:"D MMM YYYY",LLL:"D MMMM [de] YYYY [a les] H:mm",lll:"D MMM YYYY, H:mm",LLLL:"dddd D MMMM [de] YYYY [a les] H:mm",llll:"ddd D MMM YYYY, H:mm"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"d'aquí %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},dayOfMonthOrdinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(t,e){var n=1===t?"r":2===t?"n":3===t?"r":4===t?"t":"è";return"w"!==e&&"W"!==e||(n="a"),t+n},week:{dow:1,doy:4}})}(n("wd/R"))},"20UP":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("LvDl"),r=n("lJxs"),i=n("8Y7J"),s=n("IheW"),u=n("pL04");let o=(()=>{class t{constructor(t){this.http=t,this.settings={}}getValues(t){return a.isArray(t)&&(t=t.join(",")),this.http.get("api/settings?names="+t).pipe(Object(r.a)(t=>{const e={};return a.forEach(t,t=>{a.set(e,t.name,t.value)}),e}))}ifSettingConfigured(t,e,n){const a=this.settings[t];void 0===a?this.http.get(t).subscribe(a=>{this.settings[t]=this.getSettingsValue(a),this.ifSettingConfigured(t,e,n)},e=>{401!==e.status&&(this.settings[t]="")}):""!==a?e(a):n&&n()}disableSetting(t){this.settings[t]=""}getSettingsValue(t){return t.value||t.instance||""}validateGrafanaDashboardUrl(t){return this.http.get("api/grafana/validation/"+t)}getStandardSettings(){return this.http.get("ui-api/standard_settings")}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](s.c))},token:t,providedIn:u.a}),t})()},2316:function(t,e,n){var a=n("LWR0"),r=n("hmSm");t.exports=function(t,e,n){var i=!0,s=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return r(n)&&(i="leading"in n?!!n.leading:i,s="trailing"in n?!!n.trailing:s),a(t,e,{leading:i,maxWait:e,trailing:s})}},"25BL":function(t,e,n){"use strict";var a=n("8Y7J"),r=n("DqMs"),i=n("/NlG"),s=n("GiVz"),u=n("SVse"),o=n("FE24"),l=n("z/SZ"),d=n("GS7A"),c=n("s7LF"),f=n("w9WL"),h=a["ɵcrt"]({encapsulation:2,styles:[".ngx-datatable{display:block;overflow:hidden;justify-content:center;position:relative;-webkit-transform:translate3d(0,0,0)}.ngx-datatable [hidden]{display:none!important}.ngx-datatable *,.ngx-datatable :after,.ngx-datatable :before{box-sizing:border-box}.ngx-datatable.scroll-vertical .datatable-body{overflow-y:auto}.ngx-datatable.scroll-vertical.virtualized .datatable-body .datatable-row-wrapper{position:absolute}.ngx-datatable.scroll-horz .datatable-body{overflow-x:auto;-webkit-overflow-scrolling:touch}.ngx-datatable.fixed-header .datatable-header .datatable-header-inner{white-space:nowrap}.ngx-datatable.fixed-header .datatable-header .datatable-header-inner .datatable-header-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ngx-datatable.fixed-row .datatable-scroll,.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row{white-space:nowrap}.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row .datatable-body-cell,.ngx-datatable.fixed-row .datatable-scroll .datatable-body-row .datatable-body-group-cell{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ngx-datatable .datatable-body-row,.ngx-datatable .datatable-header-inner,.ngx-datatable .datatable-row-center{display:flex;flex-direction:row;-o-flex-flow:row;flex-flow:row}.ngx-datatable .datatable-body-cell,.ngx-datatable .datatable-header-cell{overflow-x:hidden;vertical-align:top;display:inline-block;line-height:1.625}.ngx-datatable .datatable-body-cell:focus,.ngx-datatable .datatable-header-cell:focus{outline:0}.ngx-datatable .datatable-row-left,.ngx-datatable .datatable-row-right{z-index:9}.ngx-datatable .datatable-row-center,.ngx-datatable .datatable-row-group,.ngx-datatable .datatable-row-left,.ngx-datatable .datatable-row-right{position:relative}.ngx-datatable .datatable-header{display:block;overflow:hidden}.ngx-datatable .datatable-header .datatable-header-inner{align-items:stretch;-webkit-align-items:stretch}.ngx-datatable .datatable-header .datatable-header-cell{position:relative;display:inline-block}.ngx-datatable .datatable-header .datatable-header-cell.sortable .datatable-header-cell-wrapper{cursor:pointer}.ngx-datatable .datatable-header .datatable-header-cell.longpress .datatable-header-cell-wrapper{cursor:move}.ngx-datatable .datatable-header .datatable-header-cell .sort-btn{line-height:100%;vertical-align:middle;display:inline-block;cursor:pointer}.ngx-datatable .datatable-header .datatable-header-cell .resize-handle,.ngx-datatable .datatable-header .datatable-header-cell .resize-handle--not-resizable{display:inline-block;position:absolute;right:0;top:0;bottom:0;width:5px;padding:0 4px;visibility:hidden}.ngx-datatable .datatable-header .datatable-header-cell .resize-handle{cursor:ew-resize}.ngx-datatable .datatable-header .datatable-header-cell.resizeable:hover .resize-handle,.ngx-datatable .datatable-header .datatable-header-cell:hover .resize-handle--not-resizable{visibility:visible}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker{position:absolute;top:0;bottom:0}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker.dragFromLeft{right:0}.ngx-datatable .datatable-header .datatable-header-cell .targetMarker.dragFromRight{left:0}.ngx-datatable .datatable-header .datatable-header-cell .datatable-header-cell-template-wrap{height:inherit}.ngx-datatable .datatable-body{position:relative;z-index:10;display:block}.ngx-datatable .datatable-body .datatable-scroll{display:inline-block}.ngx-datatable .datatable-body .datatable-row-detail{overflow-y:hidden}.ngx-datatable .datatable-body .datatable-row-wrapper{display:flex;flex-direction:column}.ngx-datatable .datatable-body .datatable-body-row{outline:0}.ngx-datatable .datatable-body .datatable-body-row>div{display:flex}.ngx-datatable .datatable-footer{display:block;width:100%;overflow:auto}.ngx-datatable .datatable-footer .datatable-footer-inner{display:flex;align-items:center;width:100%}.ngx-datatable .datatable-footer .selected-count .page-count{flex:1 1 40%}.ngx-datatable .datatable-footer .selected-count .datatable-pager{flex:1 1 60%}.ngx-datatable .datatable-footer .page-count{flex:1 1 20%}.ngx-datatable .datatable-footer .datatable-pager{flex:1 1 80%;text-align:right}.ngx-datatable .datatable-footer .datatable-pager .pager,.ngx-datatable .datatable-footer .datatable-pager .pager li{padding:0;margin:0;display:inline-block;list-style:none}.ngx-datatable .datatable-footer .datatable-pager .pager li,.ngx-datatable .datatable-footer .datatable-pager .pager li a{outline:0}.ngx-datatable .datatable-footer .datatable-pager .pager li a{cursor:pointer;display:inline-block}.ngx-datatable .datatable-footer .datatable-pager .pager li.disabled a{cursor:not-allowed}"],data:{}});function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"datatable-header",[["class","datatable-header"]],[[4,"height",null],[4,"width",null]],[[null,"sort"],[null,"resize"],[null,"reorder"],[null,"select"],[null,"columnContextmenu"]],(function(t,e,n){var a=!0,r=t.component;return"sort"===e&&(a=!1!==r.onColumnSort(n)&&a),"resize"===e&&(a=!1!==r.onColumnResize(n)&&a),"reorder"===e&&(a=!1!==r.onColumnReorder(n)&&a),"select"===e&&(a=!1!==r.onHeaderSelect(n)&&a),"columnContextmenu"===e&&(a=!1!==r.onColumnContextmenu(n)&&a),a}),x,m)),a["ɵdid"](1,180224,[[2,4]],0,f.i,[a.ChangeDetectorRef],{sortAscendingIcon:[0,"sortAscendingIcon"],sortDescendingIcon:[1,"sortDescendingIcon"],scrollbarH:[2,"scrollbarH"],dealsWithGroup:[3,"dealsWithGroup"],targetMarkerTemplate:[4,"targetMarkerTemplate"],innerWidth:[5,"innerWidth"],sorts:[6,"sorts"],sortType:[7,"sortType"],allRowsSelected:[8,"allRowsSelected"],selectionType:[9,"selectionType"],reorderable:[10,"reorderable"],headerHeight:[11,"headerHeight"],columns:[12,"columns"],offsetX:[13,"offsetX"]},{sort:"sort",reorder:"reorder",resize:"resize",select:"select",columnContextmenu:"columnContextmenu"}),a["ɵpid"](131072,u.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,1,[n.cssClasses.sortAscending,n.cssClasses.sortDescending,n.scrollbarH,void 0!==n.groupedRows,n.targetMarkerTemplate,n._innerWidth,n.sorts,n.sortType,n.allRowsSelected,n.selectionType,n.reorderable,n.headerHeight,n._internalColumns,a["ɵunv"](e,1,13,a["ɵnov"](e,2).transform(n._offsetX))])}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).headerHeight,a["ɵnov"](e,1).headerWidth)}))}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-footer",[["class","datatable-footer"]],null,[[null,"page"]],(function(t,e,n){var a=!0;return"page"===e&&(a=!1!==t.component.onFooterPage(n)&&a),a}),Nt,_t)),a["ɵdid"](1,49152,null,0,f.f,[],{footerHeight:[0,"footerHeight"],rowCount:[1,"rowCount"],pageSize:[2,"pageSize"],offset:[3,"offset"],pagerLeftArrowIcon:[4,"pagerLeftArrowIcon"],pagerRightArrowIcon:[5,"pagerRightArrowIcon"],pagerPreviousIcon:[6,"pagerPreviousIcon"],pagerNextIcon:[7,"pagerNextIcon"],totalMessage:[8,"totalMessage"],footerTemplate:[9,"footerTemplate"],selectedCount:[10,"selectedCount"],selectedMessage:[11,"selectedMessage"]},{page:"page"})],(function(t,e){var n=e.component;t(e,1,1,[n.footerHeight,n.rowCount,n.pageSize,n.offset,n.cssClasses.pagerLeftArrow,n.cssClasses.pagerRightArrow,n.cssClasses.pagerPrevious,n.cssClasses.pagerNext,n.messages.totalMessage,n.footer,n.selected.length,!!n.selectionType&&n.messages.selectedMessage])}),null)}function b(t){return a["ɵvid"](2,[a["ɵqud"](671088640,1,{bodyComponent:0}),a["ɵqud"](671088640,2,{headerComponent:0}),(t()(),a["ɵeld"](2,0,null,null,8,"div",[["visibilityObserver",""]],[[2,"visible",null]],[[null,"visible"]],(function(t,e,n){var a=!0;return"visible"===e&&(a=!1!==t.component.recalculate()&&a),a}),null,null)),a["ɵdid"](3,212992,null,0,f.B,[a.ElementRef,a.NgZone],null,{visible:"visible"}),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](6,0,null,null,2,"datatable-body",[["class","datatable-body"]],[[4,"width",null],[4,"height",null]],[[null,"page"],[null,"activate"],[null,"rowContextmenu"],[null,"select"],[null,"scroll"],[null,"treeAction"]],(function(t,e,n){var a=!0,r=t.component;return"page"===e&&(a=!1!==r.onBodyPage(n)&&a),"activate"===e&&(a=!1!==r.activate.emit(n)&&a),"rowContextmenu"===e&&(a=!1!==r.onRowContextmenu(n)&&a),"select"===e&&(a=!1!==r.onBodySelect(n)&&a),"scroll"===e&&(a=!1!==r.onBodyScroll(n)&&a),"treeAction"===e&&(a=!1!==r.onTreeAction(n)&&a),a}),F,R)),a["ɵdid"](7,245760,[[1,4]],0,f.c,[a.ChangeDetectorRef],{scrollbarV:[0,"scrollbarV"],scrollbarH:[1,"scrollbarH"],loadingIndicator:[2,"loadingIndicator"],externalPaging:[3,"externalPaging"],rowHeight:[4,"rowHeight"],offsetX:[5,"offsetX"],emptyMessage:[6,"emptyMessage"],selectionType:[7,"selectionType"],selected:[8,"selected"],rowIdentity:[9,"rowIdentity"],rowDetail:[10,"rowDetail"],groupHeader:[11,"groupHeader"],selectCheck:[12,"selectCheck"],displayCheck:[13,"displayCheck"],trackByProp:[14,"trackByProp"],rowClass:[15,"rowClass"],groupedRows:[16,"groupedRows"],groupExpansionDefault:[17,"groupExpansionDefault"],innerWidth:[18,"innerWidth"],groupRowsBy:[19,"groupRowsBy"],virtualization:[20,"virtualization"],summaryRow:[21,"summaryRow"],summaryPosition:[22,"summaryPosition"],summaryHeight:[23,"summaryHeight"],pageSize:[24,"pageSize"],rows:[25,"rows"],columns:[26,"columns"],offset:[27,"offset"],rowCount:[28,"rowCount"],bodyHeight:[29,"bodyHeight"]},{scroll:"scroll",page:"page",activate:"activate",select:"select",rowContextmenu:"rowContextmenu",treeAction:"treeAction"}),a["ɵpid"](131072,u.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](10,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0),t(e,5,0,n.headerHeight),t(e,7,1,[n.scrollbarV,n.scrollbarH,n.loadingIndicator,n.externalPaging,n.rowHeight,a["ɵunv"](e,7,5,a["ɵnov"](e,8).transform(n._offsetX)),n.messages.emptyMessage,n.selectionType,n.selected,n.rowIdentity,n.rowDetail,n.groupHeader,n.selectCheck,n.displayCheck,n.trackByProp,n.rowClass,n.groupedRows,n.groupExpansionDefault,n._innerWidth,n.groupRowsBy,n.virtualization,n.summaryRow,n.summaryPosition,n.summaryHeight,n.pageSize,n._internalRows,n._internalColumns,n.offset,n.rowCount,n.bodyHeight]),t(e,10,0,n.footerHeight)}),(function(t,e){t(e,2,0,a["ɵnov"](e,3).isVisible),t(e,6,0,a["ɵnov"](e,7).bodyWidth,a["ɵnov"](e,7).bodyHeight)}))}var m=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"datatable-header-cell",[["class","datatable-header-cell"],["draggable",""],["long-press",""],["resizeable",""]],[[2,"resizeable",null],[2,"press",null],[2,"longpress",null],[4,"height","px"],[8,"className",0],[1,"title",0],[4,"minWidth","px"],[4,"maxWidth","px"],[4,"width","px"]],[[null,"resize"],[null,"longPressStart"],[null,"longPressEnd"],[null,"sort"],[null,"select"],[null,"columnContextmenu"],[null,"mousedown"],[null,"contextmenu"]],(function(t,e,n){var r=!0,i=t.component;return"mousedown"===e&&(r=!1!==a["ɵnov"](t,2).onMousedown(n)&&r),"mousedown"===e&&(r=!1!==a["ɵnov"](t,3).onMouseDown(n)&&r),"contextmenu"===e&&(r=!1!==a["ɵnov"](t,4).onContextmenu(n)&&r),"resize"===e&&(r=!1!==i.onColumnResized(n,t.context.$implicit)&&r),"longPressStart"===e&&(r=!1!==i.onLongPressStart(n)&&r),"longPressEnd"===e&&(r=!1!==i.onLongPressEnd(n)&&r),"sort"===e&&(r=!1!==i.onSort(n)&&r),"select"===e&&(r=!1!==i.select.emit(n)&&r),"columnContextmenu"===e&&(r=!1!==i.columnContextmenu.emit(n)&&r),r}),C,_)),a["ɵdid"](1,671744,[[1,4]],0,f.s,[a.ElementRef],{dragEventTarget:[0,"dragEventTarget"],dragModel:[1,"dragModel"],dragX:[2,"dragX"],dragY:[3,"dragY"]},null),a["ɵdid"](2,4341760,null,0,f.x,[a.ElementRef,a.Renderer2],{resizeEnabled:[0,"resizeEnabled"]},{resize:"resize"}),a["ɵdid"](3,147456,null,0,f.t,[],{pressEnabled:[0,"pressEnabled"],pressModel:[1,"pressModel"]},{longPressStart:"longPressStart",longPressEnd:"longPressEnd"}),a["ɵdid"](4,49152,null,0,f.h,[a.ChangeDetectorRef],{sortType:[0,"sortType"],sortAscendingIcon:[1,"sortAscendingIcon"],sortDescendingIcon:[2,"sortDescendingIcon"],isTarget:[3,"isTarget"],targetMarkerTemplate:[4,"targetMarkerTemplate"],targetMarkerContext:[5,"targetMarkerContext"],allRowsSelected:[6,"allRowsSelected"],selectionType:[7,"selectionType"],column:[8,"column"],headerHeight:[9,"headerHeight"],sorts:[10,"sorts"]},{sort:"sort",select:"select",columnContextmenu:"columnContextmenu"})],(function(t,e){var n=e.component;t(e,1,0,n.dragEventTarget,e.context.$implicit,n.reorderable&&e.context.$implicit.draggable&&e.context.$implicit.dragging,!1),t(e,2,0,e.context.$implicit.resizeable),t(e,3,0,n.reorderable&&e.context.$implicit.draggable,e.context.$implicit),t(e,4,1,[n.sortType,n.sortAscendingIcon,n.sortDescendingIcon,e.context.$implicit.isTarget,n.targetMarkerTemplate,e.context.$implicit.targetMarkerContext,n.allRowsSelected,n.selectionType,e.context.$implicit,n.headerHeight,n.sorts])}),(function(t,e){t(e,0,0,a["ɵnov"](e,2).resizeEnabled,a["ɵnov"](e,3).press,a["ɵnov"](e,3).isLongPress,a["ɵnov"](e,4).headerHeight,a["ɵnov"](e,4).columnCssClasses,a["ɵnov"](e,4).name,a["ɵnov"](e,4).minWidth,a["ɵnov"](e,4).maxWidth,a["ɵnov"](e,4).width)}))}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[],[[8,"className",0]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](4,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,2,0,n._styleByGroup[e.context.$implicit.type]),t(e,4,0,e.context.$implicit.columns,n.columnTrackingFn)}),(function(t,e){t(e,0,0,"datatable-row-"+e.context.$implicit.type)}))}function x(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","datatable-header-inner"],["orderable",""]],[[4,"width","px"]],[[null,"reorder"],[null,"targetChanged"]],(function(t,e,n){var a=!0,r=t.component;return"reorder"===e&&(a=!1!==r.onColumnReordered(n)&&a),"targetChanged"===e&&(a=!1!==r.onTargetChanged(n)&&a),a}),null,null)),a["ɵdid"](1,1196032,null,1,f.v,[a.KeyValueDiffers,u.DOCUMENT],null,{reorder:"reorder",targetChanged:"targetChanged"}),a["ɵqud"](603979776,1,{draggables:1}),(t()(),a["ɵand"](16777216,null,null,1,null,v)),a["ɵdid"](4,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,4,0,n._columnsByPin,n.trackByGroups)}),(function(t,e){t(e,0,0,e.component._columnGroupWidths.total)}))}var _=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function T(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function w(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.targetMarkerContext,n.targetMarkerTemplate)}),null)}function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"label",[["class","datatable-checkbox"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"input",[["type","checkbox"]],[[8,"checked",0]],[[null,"change"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==r.select.emit(!r.allRowsSelected)&&a),a}),null,null))],null,(function(t,e){t(e,1,0,e.component.allRowsSelected)}))}function S(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","datatable-header-cell-wrapper"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"span",[["class","datatable-header-cell-label draggable"]],[[8,"innerHTML",1]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onSort()&&a),a}),null,null))],null,(function(t,e){t(e,1,0,e.component.name)}))}function I(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function N(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,I)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.cellContext,n.column.headerTemplate)}),null)}function C(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,9,"div",[["class","datatable-header-cell-template-wrap"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,w)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,S)),a["ɵdid"](6,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,N)),a["ɵdid"](8,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](9,0,null,null,0,"span",[],[[8,"className",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onSort()&&a),a}),null,null))],(function(t,e){var n=e.component;t(e,2,0,n.isTarget),t(e,4,0,n.isCheckboxable),t(e,6,0,!n.column.headerTemplate),t(e,8,0,n.column.headerTemplate)}),(function(t,e){t(e,9,0,e.component.sortClass)}))}var R=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function A(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-progress",[],null,null,null,rt,at)),a["ɵdid"](1,49152,null,0,f.w,[],null,null)],null,null)}function k(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-summary-row",[["class","datatable-summary-row"]],null,null,null,xt,yt)),a["ɵdid"](1,573440,null,0,f.m,[],{rows:[0,"rows"],columns:[1,"columns"],rowHeight:[2,"rowHeight"],offsetX:[3,"offsetX"],innerWidth:[4,"innerWidth"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.rows,n.columns,n.summaryHeight,n.offsetX,n.innerWidth)}),null)}function E(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-body-row",[["tabindex","-1"]],[[8,"className",0],[4,"height","px"],[4,"width","px"]],[[null,"treeAction"],[null,"activate"],[null,"keydown"],[null,"mouseenter"]],(function(t,e,n){var r=!0,i=t.component;return"keydown"===e&&(r=!1!==a["ɵnov"](t,1).onKeyDown(n)&&r),"mouseenter"===e&&(r=!1!==a["ɵnov"](t,1).onMouseenter(n)&&r),"treeAction"===e&&(r=!1!==i.onTreeAction(t.parent.context.$implicit)&&r),"activate"===e&&(r=!1!==a["ɵnov"](t.parent.parent.parent,2).onActivate(n,i.indexes.first+t.parent.context.index)&&r),r}),nt,X)),a["ɵdid"](1,311296,null,0,f.d,[a.KeyValueDiffers,[1,f.y],a.ChangeDetectorRef,a.ElementRef],{columns:[0,"columns"],innerWidth:[1,"innerWidth"],expanded:[2,"expanded"],rowClass:[3,"rowClass"],row:[4,"row"],isSelected:[5,"isSelected"],rowIndex:[6,"rowIndex"],displayCheck:[7,"displayCheck"],treeStatus:[8,"treeStatus"],offsetX:[9,"offsetX"],rowHeight:[10,"rowHeight"]},{activate:"activate",treeAction:"treeAction"})],(function(t,e){var n=e.component;t(e,1,1,[n.columns,n.innerWidth,n.getRowExpanded(e.parent.context.$implicit),n.rowClass,e.parent.context.$implicit,a["ɵnov"](e.parent.parent.parent,2).getRowSelected(e.parent.context.$implicit),n.getRowIndex(e.parent.context.$implicit),n.displayCheck,e.parent.context.$implicit.treeStatus,n.offsetX,n.getRowHeight(e.parent.context.$implicit)])}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).cssClass,a["ɵnov"](e,1).rowHeight,a["ɵnov"](e,1).columnsTotalWidths)}))}function L(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-body-row",[["tabindex","-1"]],[[8,"className",0],[4,"height","px"],[4,"width","px"]],[[null,"activate"],[null,"keydown"],[null,"mouseenter"]],(function(t,e,n){var r=!0;return"keydown"===e&&(r=!1!==a["ɵnov"](t,1).onKeyDown(n)&&r),"mouseenter"===e&&(r=!1!==a["ɵnov"](t,1).onMouseenter(n)&&r),"activate"===e&&(r=!1!==a["ɵnov"](t.parent.parent.parent.parent,2).onActivate(n,t.context.index)&&r),r}),nt,X)),a["ɵdid"](1,311296,null,0,f.d,[a.KeyValueDiffers,[1,f.y],a.ChangeDetectorRef,a.ElementRef],{columns:[0,"columns"],innerWidth:[1,"innerWidth"],expanded:[2,"expanded"],rowClass:[3,"rowClass"],row:[4,"row"],group:[5,"group"],isSelected:[6,"isSelected"],rowIndex:[7,"rowIndex"],offsetX:[8,"offsetX"],rowHeight:[9,"rowHeight"]},{activate:"activate"})],(function(t,e){var n=e.component;t(e,1,0,n.columns,n.innerWidth,n.getRowExpanded(e.context.$implicit),n.rowClass,e.context.$implicit,e.parent.parent.context.$implicit.value,a["ɵnov"](e.parent.parent.parent.parent,2).getRowSelected(e.context.$implicit),n.getRowIndex(e.context.$implicit),n.offsetX,n.getRowHeight(e.context.$implicit))}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).cssClass,a["ɵnov"](e,1).rowHeight,a["ɵnov"](e,1).columnsTotalWidths)}))}function D(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,L)),a["ɵdid"](1,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.parent.context.$implicit.value,e.component.rowTrackingFn)}),null)}function P(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"datatable-row-wrapper",[["class","datatable-row-wrapper"]],null,[[null,"rowContextmenu"],[null,"contextmenu"]],(function(t,e,n){var r=!0,i=t.component;return"contextmenu"===e&&(r=!1!==a["ɵnov"](t,3).onContextmenu(n)&&r),"rowContextmenu"===e&&(r=!1!==i.rowContextmenu.emit(n)&&r),r}),pt,ut)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),a["ɵdid"](3,311296,null,0,f.k,[a.ChangeDetectorRef,a.KeyValueDiffers],{innerWidth:[0,"innerWidth"],rowDetail:[1,"rowDetail"],groupHeader:[2,"groupHeader"],offsetX:[3,"offsetX"],detailRowHeight:[4,"detailRowHeight"],row:[5,"row"],groupedRows:[6,"groupedRows"],rowIndex:[7,"rowIndex"],expanded:[8,"expanded"]},{rowContextmenu:"rowContextmenu"}),(t()(),a["ɵand"](16777216,null,0,1,null,E)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["groupedRowsTemplate",2]],0,0,null,D))],(function(t,e){var n=e.component;t(e,2,0,n.getRowsStyles(e.context.$implicit)),t(e,3,0,n.innerWidth,n.rowDetail,n.groupHeader,n.offsetX,n.getDetailRowHeight(e.context.$implicit[e.context.index],e.context.index),e.context.$implicit,n.groupedRows,n.getRowIndex(e.context.$implicit[e.context.index]),n.getRowExpanded(e.context.$implicit)),t(e,5,0,!n.groupedRows,a["ɵnov"](e,6))}),null)}function M(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"datatable-summary-row",[["class","datatable-summary-row"]],null,null,null,xt,yt)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),a["ɵdid"](3,573440,null,0,f.m,[],{rows:[0,"rows"],columns:[1,"columns"],rowHeight:[2,"rowHeight"],offsetX:[3,"offsetX"],innerWidth:[4,"innerWidth"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.getBottomSummaryRowStyles()),t(e,3,0,n.rows,n.columns,n.summaryHeight,n.offsetX,n.innerWidth)}),null)}function q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"datatable-scroller",[["class","datatable-scroll"]],[[4,"height","px"],[4,"width","px"]],[[null,"scroll"]],(function(t,e,n){var a=!0;return"scroll"===e&&(a=!1!==t.component.onBodyScroll(n)&&a),a}),st,it)),a["ɵdid"](1,245760,[[1,4]],0,f.z,[a.NgZone,a.ElementRef,a.Renderer2],{scrollbarV:[0,"scrollbarV"],scrollbarH:[1,"scrollbarH"],scrollHeight:[2,"scrollHeight"],scrollWidth:[3,"scrollWidth"]},{scroll:"scroll"}),(t()(),a["ɵand"](16777216,null,0,1,null,k)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,P)),a["ɵdid"](5,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,M)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.scrollbarV,n.scrollbarH,n.scrollHeight,null==n.columnGroupWidths?null:n.columnGroupWidths.total),t(e,3,0,n.summaryRow&&"top"===n.summaryPosition),t(e,5,0,n.temp,n.rowTrackingFn),t(e,7,0,n.summaryRow&&"bottom"===n.summaryPosition)}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).scrollHeight,a["ɵnov"](e,1).scrollWidth)}))}function j(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"div",[["class","empty-row"]],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,0,0,e.component.emptyMessage)}))}function F(t){return a["ɵvid"](2,[a["ɵqud"](671088640,1,{scroller:0}),(t()(),a["ɵeld"](1,0,null,null,7,"datatable-selection",[],null,[[null,"select"],[null,"activate"]],(function(t,e,n){var a=!0,r=t.component;return"select"===e&&(a=!1!==r.select.emit(n)&&a),"activate"===e&&(a=!1!==r.activate.emit(n)&&a),a}),mt,bt)),a["ɵdid"](2,49152,[["selector",4]],0,f.l,[],{rows:[0,"rows"],selected:[1,"selected"],selectEnabled:[2,"selectEnabled"],selectionType:[3,"selectionType"],rowIdentity:[4,"rowIdentity"],selectCheck:[5,"selectCheck"]},{activate:"activate",select:"select"}),(t()(),a["ɵand"](16777216,null,0,1,null,A)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,q)),a["ɵdid"](6,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,j)),a["ɵdid"](8,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.rows,n.selected,n.selectEnabled,n.selectionType,n.rowIdentity,n.selectCheck),t(e,4,0,n.loadingIndicator),t(e,6,0,null==n.rows?null:n.rows.length),t(e,8,0,!(null!=n.rows&&n.rows.length||n.loadingIndicator))}),null)}var V=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function G(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"label",[["class","datatable-checkbox"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"input",[["type","checkbox"]],[[8,"checked",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onCheckboxChange(n)&&a),a}),null,null))],null,(function(t,e){t(e,1,0,e.component.isSelected)}))}function B(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"i",[["class","icon datatable-icon-collapse"]],null,null,null,null,null))],null,null)}function z(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"i",[["class","icon datatable-icon-up"]],null,null,null,null,null))],null,null)}function Y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"i",[["class","icon datatable-icon-down"]],null,null,null,null,null))],null,null)}function H(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"button",[["class","datatable-tree-button"]],[[8,"disabled",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onTreeAction()&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,B)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,z)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Y)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,"loading"===n.treeStatus),t(e,5,0,"collapsed"===n.treeStatus),t(e,7,0,"expanded"===n.treeStatus||"disabled"===n.treeStatus)}),(function(t,e){t(e,0,0,"disabled"===e.component.treeStatus)}))}function U(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function W(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,U)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](2,{cellContext:0}),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=t(e,2,0,n.cellContext);t(e,1,0,a,n.column.treeToggleTemplate)}),null)}function K(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,H)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,W)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,!n.column.treeToggleTemplate),t(e,4,0,n.column.treeToggleTemplate)}),null)}function $(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"span",[],[[8,"title",0],[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.sanitizedValue,n.value)}))}function Z(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function J(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,[[1,3],["cellTemplate",2]],null,1,null,Z)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.cellContext,n.column.cellTemplate)}),null)}function Q(t){return a["ɵvid"](2,[a["ɵqud"](402653184,1,{cellTemplate:0}),(t()(),a["ɵeld"](1,0,null,null,8,"div",[["class","datatable-body-cell-label"]],[[4,"margin-left","px"]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,G)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,K)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,$)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,J)),a["ɵdid"](9,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.column.checkboxable&&(!n.displayCheck||n.displayCheck(n.row,n.column,n.value))),t(e,5,0,n.column.isTreeColumn),t(e,7,0,!n.column.cellTemplate),t(e,9,0,n.column.cellTemplate)}),(function(t,e){var n=e.component;t(e,1,0,n.calcLeftMargin(n.column,n.row))}))}var X=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function tt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-body-cell",[["tabindex","-1"]],[[8,"className",0],[4,"width","px"],[4,"minWidth","px"],[4,"maxWidth","px"],[4,"height",null]],[[null,"activate"],[null,"treeAction"],[null,"focus"],[null,"blur"],[null,"click"],[null,"dblclick"],[null,"keydown"]],(function(t,e,n){var r=!0,i=t.component;return"focus"===e&&(r=!1!==a["ɵnov"](t,1).onFocus()&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,1).onBlur()&&r),"click"===e&&(r=!1!==a["ɵnov"](t,1).onClick(n)&&r),"dblclick"===e&&(r=!1!==a["ɵnov"](t,1).onDblClick(n)&&r),"keydown"===e&&(r=!1!==a["ɵnov"](t,1).onKeyDown(n)&&r),"activate"===e&&(r=!1!==i.onActivate(n,t.context.index)&&r),"treeAction"===e&&(r=!1!==i.onTreeAction()&&r),r}),Q,V)),a["ɵdid"](1,442368,null,0,f.b,[a.ElementRef,a.ChangeDetectorRef],{displayCheck:[0,"displayCheck"],group:[1,"group"],rowHeight:[2,"rowHeight"],isSelected:[3,"isSelected"],expanded:[4,"expanded"],rowIndex:[5,"rowIndex"],column:[6,"column"],row:[7,"row"],treeStatus:[8,"treeStatus"]},{activate:"activate",treeAction:"treeAction"})],(function(t,e){var n=e.component;t(e,1,0,n.displayCheck,n.group,n.rowHeight,n.isSelected,n.expanded,n.rowIndex,e.context.$implicit,n.row,n.treeStatus)}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).columnCssClasses,a["ɵnov"](e,1).width,a["ɵnov"](e,1).minWidth,a["ɵnov"](e,1).maxWidth,a["ɵnov"](e,1).height)}))}function et(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[],[[8,"className",0]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,tt)),a["ɵdid"](4,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,2,0,n._groupStyles[e.context.$implicit.type]),t(e,4,0,e.context.$implicit.columns,n.columnTrackingFn)}),(function(t,e){t(e,0,0,a["ɵinlineInterpolate"](1,"datatable-row-",e.context.$implicit.type," datatable-row-group"))}))}function nt(t){return a["ɵvid"](2,[(t()(),a["ɵand"](16777216,null,null,1,null,et)),a["ɵdid"](1,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,1,0,n._columnsByPin,n.trackByGroups)}),null)}var at=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function rt(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","progress-linear"],["role","progressbar"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","container"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,0,"div",[["class","bar"]],null,null,null,null,null))],null,null)}var it=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function st(t){return a["ɵvid"](2,[a["ɵncd"](null,0)],null,null)}var ut=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function ot(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function lt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,ot)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.groupContext,n.groupHeader.template)}),null)}function dt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","datatable-group-header"]],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgStyleImpl"],u["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgStyle,[u["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,lt)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.getGroupHeaderStyle()),t(e,4,0,n.groupHeader&&n.groupHeader.template)}),null)}function ct(t){return a["ɵvid"](0,[a["ɵncd"](null,0),(t()(),a["ɵand"](0,null,null,0))],null,null)}function ft(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function ht(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,ft)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.rowContext,n.rowDetail.template)}),null)}function gt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","datatable-row-detail"]],[[4,"height","px"]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ht)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.rowDetail&&n.rowDetail.template)}),(function(t,e){t(e,0,0,e.component.detailRowHeight)}))}function pt(t){return a["ɵvid"](2,[(t()(),a["ɵand"](16777216,null,null,1,null,dt)),a["ɵdid"](1,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ct)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,gt)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.groupHeader&&n.groupHeader.template),t(e,3,0,n.groupHeader&&n.groupHeader.template&&n.expanded||!n.groupHeader||!n.groupHeader.template),t(e,5,0,n.rowDetail&&n.rowDetail.template&&n.expanded)}),null)}var bt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function mt(t){return a["ɵvid"](2,[a["ɵncd"](null,0)],null,null)}var yt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function vt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-body-row",[["tabindex","-1"]],[[8,"className",0],[4,"height","px"],[4,"width","px"]],[[null,"keydown"],[null,"mouseenter"]],(function(t,e,n){var r=!0;return"keydown"===e&&(r=!1!==a["ɵnov"](t,1).onKeyDown(n)&&r),"mouseenter"===e&&(r=!1!==a["ɵnov"](t,1).onMouseenter(n)&&r),r}),nt,X)),a["ɵdid"](1,311296,null,0,f.d,[a.KeyValueDiffers,[1,f.y],a.ChangeDetectorRef,a.ElementRef],{columns:[0,"columns"],innerWidth:[1,"innerWidth"],row:[2,"row"],rowIndex:[3,"rowIndex"],offsetX:[4,"offsetX"],rowHeight:[5,"rowHeight"]},null)],(function(t,e){var n=e.component;t(e,1,0,n._internalColumns,n.innerWidth,n.summaryRow,-1,n.offsetX,n.rowHeight)}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).cssClass,a["ɵnov"](e,1).rowHeight,a["ɵnov"](e,1).columnsTotalWidths)}))}function xt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,vt)),a["ɵdid"](1,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.summaryRow&&n._internalColumns)}),null)}var _t=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Tt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,null,null,0))],null,null)}function wt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,Tt)),a["ɵdid"](1,540672,null,0,u.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](2,{rowCount:0,pageSize:1,selectedCount:2,curPage:3,offset:4}),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=t(e,2,0,n.rowCount,n.pageSize,n.selectedCount,n.curPage,n.offset);t(e,1,0,a,n.footerTemplate.template)}),null)}function Ot(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "," / "]))],null,(function(t,e){var n=e.component;t(e,1,0,null==n.selectedCount?null:n.selectedCount.toLocaleString(),n.selectedMessage)}))}function St(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","page-count"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Ot)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](3,null,[" "," "," "]))],(function(t,e){t(e,2,0,e.component.selectedMessage)}),(function(t,e){var n=e.component;t(e,3,0,null==n.rowCount?null:n.rowCount.toLocaleString(),n.totalMessage)}))}function It(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"datatable-pager",[["class","datatable-pager"]],[[8,"hidden",0]],[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.page.emit(n)&&a),a}),At,Ct)),a["ɵdid"](1,49152,null,0,f.j,[],{pagerLeftArrowIcon:[0,"pagerLeftArrowIcon"],pagerRightArrowIcon:[1,"pagerRightArrowIcon"],pagerPreviousIcon:[2,"pagerPreviousIcon"],pagerNextIcon:[3,"pagerNextIcon"],size:[4,"size"],count:[5,"count"],page:[6,"page"]},{change:"change"})],(function(t,e){var n=e.component;t(e,1,0,n.pagerLeftArrowIcon,n.pagerRightArrowIcon,n.pagerPreviousIcon,n.pagerNextIcon,n.pageSize,n.rowCount,n.curPage)}),(function(t,e){t(e,0,0,!e.component.isVisible)}))}function Nt(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,9,"div",[["class","datatable-footer-inner"]],[[4,"height","px"]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](3,{"selected-count":0}),(t()(),a["ɵand"](16777216,null,null,1,null,wt)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,St)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,It)),a["ɵdid"](9,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component,a=t(e,3,0,n.selectedMessage);t(e,2,0,"datatable-footer-inner",a),t(e,5,0,n.footerTemplate),t(e,7,0,!n.footerTemplate),t(e,9,0,!n.footerTemplate)}),(function(t,e){t(e,0,0,e.component.footerHeight)}))}var Ct=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Rt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"li",[["class","pages"],["role","button"]],[[1,"aria-label",0],[2,"active",null]],null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"a",[["href","javascript:void(0)"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.selectPage(t.context.$implicit.number)&&a),a}),null,null)),(t()(),a["ɵted"](2,null,[" "," "]))],null,(function(t,e){t(e,0,0,"page "+e.context.$implicit.number,e.context.$implicit.number===e.component.page),t(e,2,0,e.context.$implicit.text)}))}function At(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,14,"ul",[["class","pager"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,2,"li",[],[[2,"disabled",null]],null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"a",[["aria-label","go to first page"],["href","javascript:void(0)"],["role","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.selectPage(1)&&a),a}),null,null)),(t()(),a["ɵeld"](3,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵeld"](4,0,null,null,2,"li",[],[[2,"disabled",null]],null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,1,"a",[["aria-label","go to previous page"],["href","javascript:void(0)"],["role","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.prevPage()&&a),a}),null,null)),(t()(),a["ɵeld"](6,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Rt)),a["ɵdid"](8,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](9,0,null,null,2,"li",[],[[2,"disabled",null]],null,null,null,null)),(t()(),a["ɵeld"](10,0,null,null,1,"a",[["aria-label","go to next page"],["href","javascript:void(0)"],["role","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.nextPage()&&a),a}),null,null)),(t()(),a["ɵeld"](11,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵeld"](12,0,null,null,2,"li",[],[[2,"disabled",null]],null,null,null,null)),(t()(),a["ɵeld"](13,0,null,null,1,"a",[["aria-label","go to last page"],["href","javascript:void(0)"],["role","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.selectPage(r.totalPages)&&a),a}),null,null)),(t()(),a["ɵeld"](14,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],(function(t,e){t(e,8,0,e.component.pages)}),(function(t,e){var n=e.component;t(e,1,0,!n.canPrevious()),t(e,3,0,a["ɵinlineInterpolate"](1,"",n.pagerPreviousIcon,"")),t(e,4,0,!n.canPrevious()),t(e,6,0,a["ɵinlineInterpolate"](1,"",n.pagerLeftArrowIcon,"")),t(e,9,0,!n.canNext()),t(e,11,0,a["ɵinlineInterpolate"](1,"",n.pagerRightArrowIcon,"")),t(e,12,0,!n.canNext()),t(e,14,0,a["ɵinlineInterpolate"](1,"",n.pagerNextIcon,""))}))}var kt=n("JxMD"),Et=n("dgut"),Lt=n("Fgil"),Dt=n("iInd"),Pt=n("4DD9"),Mt=n("yT6U"),qt=n("TJUb"),jt=n("efK2");n("uIqm"),n.d(e,"a",(function(){return Ft})),n.d(e,"b",(function(){return Oe}));var Ft=a["ɵcrt"]({encapsulation:0,styles:[['@charset "UTF-8";.dataTables_wrapper[_ngcontent-%COMP%]{margin-bottom:25px}.dataTables_wrapper[_ngcontent-%COMP%]   .separator[_ngcontent-%COMP%]{height:30px;border-left:1px solid rgba(0,0,0,.09);padding-left:5px;margin-left:5px;display:inline-block;vertical-align:middle}.dataTables_wrapper[_ngcontent-%COMP%]   .widget-toolbar[_ngcontent-%COMP%]{float:right;border-left:1px solid rgba(0,0,0,.09);padding:0 8px}.dataTables_wrapper[_ngcontent-%COMP%]   .widget-toolbar[_ngcontent-%COMP%]   .form-check[_ngcontent-%COMP%]{padding-left:0}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]{white-space:nowrap}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]{cursor:default}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{width:100%;margin-bottom:0;padding-left:0;padding-right:0;cursor:pointer}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:hover{background-color:#f5f5f5}.dataTables_wrapper[_ngcontent-%COMP%]   .dropdown-menu[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]{cursor:pointer}.dataTables_wrapper[_ngcontent-%COMP%]   .dataTables_length[_ngcontent-%COMP%] > input[_ngcontent-%COMP%]{line-height:25px;text-align:right}.dataTables_header[_ngcontent-%COMP%]{background-color:#f5f5f5;border:1px solid #d1d1d1;border-bottom:none;padding:5px;position:relative}.dataTables_header[_ngcontent-%COMP%]   .cd-datatable-actions[_ngcontent-%COMP%]{float:left}.dataTables_header[_ngcontent-%COMP%]     .table-filters{float:right;border-left:1px solid rgba(0,0,0,.09);padding-left:8px}.dataTables_header[_ngcontent-%COMP%]     .table-filters label{margin-right:4px}.dataTables_header[_ngcontent-%COMP%]   .form-group[_ngcontent-%COMP%]{padding-left:8px}.dataTables_header[_ngcontent-%COMP%]   .input-group[_ngcontent-%COMP%]{float:right;border-left:1px solid rgba(0,0,0,.09);padding-left:8px;padding-right:8px;width:40%;max-width:250px}.dataTables_header[_ngcontent-%COMP%]   .input-group[_ngcontent-%COMP%]   .form-control[_ngcontent-%COMP%]{height:30px}.dataTables_header[_ngcontent-%COMP%]   .input-group.dataTables_paginate[_ngcontent-%COMP%]{width:8%;min-width:85px;padding-right:8px}.dataTables_header[_ngcontent-%COMP%]   .filter-chips[_ngcontent-%COMP%]{float:right;padding:0 8px}  .cd-datatable{border:1px solid #d1d1d1;margin-bottom:0;max-width:none!important}  .cd-datatable .progress-linear{display:block;position:relative;width:100%;height:5px;padding:0;margin:0}  .cd-datatable .progress-linear .container{background-color:#afd9ee}  .cd-datatable .progress-linear .container .bar{left:0;height:100%;width:100%;position:absolute;overflow:hidden;background-color:#afd9ee}  .cd-datatable .progress-linear .container .bar:before{display:block;position:absolute;content:"";left:-200px;width:200px;height:100%;background-color:#2b99a8;animation:3s linear infinite progress-loading}  .cd-datatable .datatable-header{background-clip:padding-box;background-color:#f5f5f5;background-image:linear-gradient(to bottom,#f5f5f5 0,#ededed 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#fffafafa", endColorstr="#ffededed", GradientType=0)}  .cd-datatable .datatable-header .sort-asc,   .cd-datatable .datatable-header .sort-desc{color:#2b99a8}  .cd-datatable .datatable-header .datatable-header-cell{padding:5px;border:none;border-left:1px solid #d1d1d1;border-bottom:1px solid #d1d1d1;text-align:left;font-weight:700}  .cd-datatable .datatable-header .datatable-header-cell .datatable-header-cell-label:after{font-family:ForkAwesome;font-weight:400;height:9px;left:10px;line-height:12px;position:relative;vertical-align:baseline;width:12px}  .cd-datatable .datatable-header .datatable-header-cell.sortable .datatable-header-cell-label:after{content:" "}  .cd-datatable .datatable-header .datatable-header-cell.sortable.sort-active.sort-asc .datatable-header-cell-label:after{content:" "}  .cd-datatable .datatable-header .datatable-header-cell.sortable.sort-active.sort-desc .datatable-header-cell-label:after{content:" "}  .cd-datatable .datatable-header .datatable-header-cell:first-child{border-left:none}  .cd-datatable .datatable-body{margin-bottom:-6px}  .cd-datatable .datatable-body .empty-row{background-color:#fff3cd;text-align:center;font-weight:700;font-style:italic;padding-top:5px;padding-bottom:5px}  .cd-datatable .datatable-body .datatable-body-row.clickable:hover .datatable-row-group{background-color:#eee;transition-property:background;transition-duration:.3s;transition-timing-function:linear}  .cd-datatable .datatable-body .datatable-body-row.datatable-row-even{background-color:#fff}  .cd-datatable .datatable-body .datatable-body-row.datatable-row-odd{background-color:#f5f5f5}  .cd-datatable .datatable-body .datatable-body-row.active,   .cd-datatable .datatable-body .datatable-body-row.active:hover{background-color:#d1ecf1}  .cd-datatable .datatable-body .datatable-body-row .datatable-body-cell{padding:5px;border:none;border-left:1px solid #d1d1d1;border-bottom:1px solid #d1d1d1}  .cd-datatable .datatable-body .datatable-body-row .datatable-body-cell:first-child{border-left:none}  .cd-datatable .datatable-body .datatable-body-row .datatable-body-cell .datatable-body-cell-label{display:block;height:100%}  .cd-datatable .datatable-body .datatable-row-detail{padding:20px;border-bottom:2px solid #d1d1d1;overflow-y:visible!important}  .cd-datatable .datatable-body .expand-collapse-icon{display:block;height:100%;text-align:center}  .cd-datatable .datatable-body .expand-collapse-icon:hover{text-decoration:none}  .cd-datatable .datatable-body .expand-collapse-icon-right:before{font-family:ForkAwesome,sans-serif;font-size:1rem;color:#212529;line-height:1;content:""}  .cd-datatable .datatable-body .expand-collapse-icon-down:before{font-family:ForkAwesome,sans-serif;font-size:1rem;color:#212529;line-height:1;content:""}  .cd-datatable .datatable-footer{display:unset!important}  .cd-datatable .datatable-footer .page-count,   .cd-datatable .datatable-footer .selected-count{font-style:italic;padding-left:5px}  .cd-datatable .cd-datatable-checkbox{text-align:center}@keyframes progress-loading{from{left:-200px;width:15%}50%{width:30%}70%{width:70%}80%{left:50%}95%{left:120%}to{left:100%}}']],data:{}});function Vt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,r.b,r.a)),a["ɵdid"](1,114688,null,0,i.a,[s.a],{type:[0,"type"]},null),(t()(),a["ɵted"](-1,0,["Failed to load data."]))],(function(t,e){t(e,1,0,"error")}),null)}function Gt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","dataTables_header clearfix"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","cd-datatable-actions"]],null,null,null,null,null)),a["ɵncd"](null,0)],null,null)}function Bt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"li",[["role","menuitem"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"a",[["class","dropdown-item"],["href",""]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.onSelectFilter(t.context.$implicit),a=!1),a}),null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit.column.name)}))}function zt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"ul",[["class","dropdown-menu dropdown-menu-right px-1"],["role","menu"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Bt)),a["ɵdid"](2,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.columnFilters)}),null)}function Yt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,1)],(function(t,e){var n=t(e,3,0,e.component.icons.check);t(e,2,0,n)}),null)}function Ht(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"li",[["role","menuitem"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,3,"a",[["class","dropdown-item"],["href",""]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(r.onChangeFilter(r.selectedFilter,t.context.$implicit),a=!1),a}),null,null)),(t()(),a["ɵted"](2,null,[""," "])),(t()(),a["ɵand"](16777216,null,null,1,null,Yt)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,4,0,void 0!==n.selectedFilter.value&&n.selectedFilter.value.raw===e.context.$implicit.raw)}),(function(t,e){t(e,2,0,e.context.$implicit.formatted)}))}function Ut(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"ul",[["class","dropdown-menu dropdown-menu-right px-1"],["role","menu"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Ht)),a["ɵdid"](2,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.selectedFilter.options)}),null)}function Wt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,20,"div",[["class","btn-group widget-toolbar"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,16777216,null,null,11,"div",[["class","btn-group tc_filter_name"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),a["ɵprd"](512,null,o.f,o.f,[]),a["ɵdid"](3,212992,null,0,o.c,[a.ElementRef,a.Renderer2,a.ViewContainerRef,l.a,o.f,o.a,d.b],null,null),(t()(),a["ɵeld"](4,0,null,null,6,"a",[["class","btn btn-light dropdown-toggle"],["data-toggle","dropdown"],["dropdownToggle",""]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,5).onClick()&&r),r}),null,null)),a["ɵdid"](5,147456,null,0,o.g,[a.ChangeDetectorRef,o.c,a.ElementRef,a.Renderer2,o.f],null,null),(t()(),a["ɵeld"](6,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](8,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](9,2),(t()(),a["ɵted"](10,null,[" "," "])),(t()(),a["ɵand"](16777216,null,null,1,null,zt)),a["ɵdid"](12,16384,null,0,o.d,[o.f,a.ViewContainerRef,a.TemplateRef],null,null),(t()(),a["ɵeld"](13,16777216,null,null,7,"div",[["class","btn-group tc_filter_option"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),a["ɵprd"](512,null,o.f,o.f,[]),a["ɵdid"](15,212992,null,0,o.c,[a.ElementRef,a.Renderer2,a.ViewContainerRef,l.a,o.f,o.a,d.b],null,null),(t()(),a["ɵeld"](16,0,null,null,2,"a",[["class","btn btn-light dropdown-toggle"],["data-toggle","dropdown"],["dropdownToggle",""]],[[2,"disabled",null],[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,17).onClick()&&r),r}),null,null)),a["ɵdid"](17,147456,null,0,o.g,[a.ChangeDetectorRef,o.c,a.ElementRef,a.Renderer2,o.f],null,null),(t()(),a["ɵted"](18,null,[" "," "])),(t()(),a["ɵand"](16777216,null,null,1,null,Ut)),a["ɵdid"](20,16384,null,0,o.d,[o.f,a.ViewContainerRef,a.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,3,0);var a=t(e,9,0,n.icons.large,n.icons.filter);t(e,8,0,a),t(e,15,0)}),(function(t,e){var n=e.component;t(e,1,0,a["ɵnov"](e,3).dropup,a["ɵnov"](e,3).isOpen,a["ɵnov"](e,3).isOpen&&a["ɵnov"](e,3).isBs4),t(e,4,0,!0,a["ɵnov"](e,5).isDisabled,a["ɵnov"](e,5).isOpen),t(e,10,0,n.selectedFilter.column.name),t(e,13,0,a["ɵnov"](e,15).dropup,a["ɵnov"](e,15).isOpen,a["ɵnov"](e,15).isOpen&&a["ɵnov"](e,15).isBs4),t(e,16,0,0===n.selectedFilter.options.length,!0,a["ɵnov"](e,17).isDisabled,a["ɵnov"](e,17).isOpen),t(e,18,0,n.selectedFilter.value?n.selectedFilter.value.formatted:"Any")}))}function Kt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,15,"div",[["class","input-group search"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,5,"span",[["class","input-group-prepend"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,4,"span",[["class","input-group-text"]],null,null,null,null,null)),(t()(),a["ɵeld"](3,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](5,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](6,1),(t()(),a["ɵeld"](7,0,null,null,5,"input",[["class","form-control"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"keyup"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var r=!0,i=t.component;return"input"===e&&(r=!1!==a["ɵnov"](t,8)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,8).onTouched()&&r),"compositionstart"===e&&(r=!1!==a["ɵnov"](t,8)._compositionStart()&&r),"compositionend"===e&&(r=!1!==a["ɵnov"](t,8)._compositionEnd(n.target.value)&&r),"ngModelChange"===e&&(r=!1!==(i.search=n)&&r),"keyup"===e&&(r=!1!==i.updateFilter()&&r),r}),null,null)),a["ɵdid"](8,16384,null,0,c.e,[a.Renderer2,a.ElementRef,[2,c.b]],null,null),a["ɵprd"](1024,null,c.p,(function(t){return[t]}),[c.e]),a["ɵdid"](10,671744,null,0,c.u,[[8,null],[8,null],[8,null],[6,c.p]],{model:[0,"model"]},{update:"ngModelChange"}),a["ɵprd"](2048,null,c.q,null,[c.u]),a["ɵdid"](12,16384,null,0,c.r,[[4,c.q]],null,null),(t()(),a["ɵeld"](13,0,null,null,2,"div",[["class","input-group-append"]],null,null,null,null,null)),(t()(),a["ɵeld"](14,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onClearSearch()&&a),a}),null,null)),(t()(),a["ɵeld"](15,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null))],(function(t,e){var n=e.component,a=t(e,6,0,n.icons.search);t(e,5,0,a),t(e,10,0,n.search)}),(function(t,e){var n=e.component;t(e,7,0,a["ɵnov"](e,12).ngClassUntouched,a["ɵnov"](e,12).ngClassTouched,a["ɵnov"](e,12).ngClassPristine,a["ɵnov"](e,12).ngClassDirty,a["ɵnov"](e,12).ngClassValid,a["ɵnov"](e,12).ngClassInvalid,a["ɵnov"](e,12).ngClassPending),t(e,15,0,a["ɵinlineInterpolate"](1,"icon-prepend ",n.icons.destroy,""))}))}function $t(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"div",[["class","input-group dataTables_paginate"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"input",[["class","form-control"],["max","9999"],["min","1"],["type","number"]],[[8,"value",0]],[[null,"click"],[null,"keyup"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.setLimit(n)&&a),"keyup"===e&&(a=!1!==r.setLimit(n)&&a),"blur"===e&&(a=!1!==r.setLimit(n)&&a),a}),null,null))],null,(function(t,e){t(e,1,0,e.component.userConfig.limit)}))}function Zt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"li",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,3,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,0,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"name",0],[8,"id",0],[8,"checked",0]],[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.toggleColumn(n)&&a),a}),null,null)),(t()(),a["ɵeld"](3,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),a["ɵted"](4,null,["",""]))],null,(function(t,e){t(e,2,0,e.parent.context.$implicit.prop,e.parent.context.$implicit.prop,!e.parent.context.$implicit.isHidden),t(e,3,0,e.parent.context.$implicit.prop),t(e,4,0,e.parent.context.$implicit.name)}))}function Jt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Zt)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,2,0,""!==e.context.$implicit.name)}),null)}function Qt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"ul",[["class","dropdown-menu px-3"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Jt)),a["ɵdid"](2,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.columns)}),null)}function Xt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"div",[["class","widget-toolbar tc_refreshBtn"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.refreshBtn()&&a),a}),null,null)),(t()(),a["ɵeld"](2,0,null,null,3,"i",[],[[2,"fa-spin",null]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](4,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](5,2)],(function(t,e){var n=e.component,a=t(e,5,0,n.icons.large,n.icons.refresh);t(e,4,0,a)}),(function(t,e){var n=e.component;t(e,2,0,n.updating||n.loadingIndicator)}))}function te(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,23,"div",[["class","dataTables_header clearfix"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","cd-datatable-actions"]],null,null,null,null,null)),a["ɵncd"](null,1),a["ɵncd"](null,2),(t()(),a["ɵand"](16777216,null,null,1,null,Wt)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Kt)),a["ɵdid"](7,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,$t)),a["ɵdid"](9,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](10,0,null,null,11,"div",[["class","widget-toolbar"]],null,null,null,null,null)),(t()(),a["ɵeld"](11,16777216,null,null,10,"div",[["class","dropdown tc_menuitem tc_menuitem_cluster"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),a["ɵprd"](512,null,o.f,o.f,[]),a["ɵdid"](13,212992,null,0,o.c,[a.ElementRef,a.Renderer2,a.ViewContainerRef,l.a,o.f,o.a,d.b],{insideClick:[0,"insideClick"]},null),(t()(),a["ɵeld"](14,0,null,null,5,"a",[["class","btn btn-light dropdown-toggle tc_columnBtn"],["data-toggle","dropdown"],["dropdownToggle",""]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,15).onClick()&&r),r}),null,null)),a["ɵdid"](15,147456,null,0,o.g,[a.ChangeDetectorRef,o.c,a.ElementRef,a.Renderer2,o.f],null,null),(t()(),a["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](18,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](19,2),(t()(),a["ɵand"](16777216,null,null,1,null,Qt)),a["ɵdid"](21,16384,null,0,o.d,[o.f,a.ViewContainerRef,a.TemplateRef],null,null),(t()(),a["ɵand"](16777216,null,null,1,null,Xt)),a["ɵdid"](23,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,5,0,0!==n.columnFilters.length),t(e,7,0,n.searchField),t(e,9,0,n.limit),t(e,13,0,!0);var a=t(e,19,0,n.icons.large,n.icons.table);t(e,18,0,a),t(e,23,0,n.fetchData.observers.length>0)}),(function(t,e){t(e,11,0,a["ɵnov"](e,13).dropup,a["ɵnov"](e,13).isOpen,a["ɵnov"](e,13).isOpen&&a["ɵnov"](e,13).isBs4),t(e,14,0,!0,a["ɵnov"](e,15).isDisabled,a["ɵnov"](e,15).isOpen)}))}function ee(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"span",[["class","badge badge-info mr-2"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[["class","mr-2"]],null,null,null,null,null)),(t()(),a["ɵted"](2,null,["",": ",""])),(t()(),a["ɵeld"](3,0,null,null,4,"a",[["class","badge-remove"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.onChangeFilter(t.parent.context.$implicit),a=!1),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](6,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](7,1)],(function(t,e){var n=t(e,7,0,e.component.icons.destroy);t(e,6,0,n)}),(function(t,e){t(e,2,0,e.parent.context.$implicit.column.name,e.parent.context.$implicit.value.formatted)}))}function ne(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ee)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit.value)}),null)}function ae(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"div",[["class","dataTables_header clearfix"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,5,"div",[["class","filter-chips"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ne)),a["ɵdid"](3,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](4,0,null,null,2,"a",[["class","tc_clearSelections"],["href",""]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.onClearFilters(),a=!1),a}),null,null)),(t()(),a["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Clear filters"]))],(function(t,e){t(e,3,0,e.component.columnFilters)}),null)}function re(t){return a["ɵvid"](0,[a["ɵncd"](null,3),(t()(),a["ɵand"](0,null,null,0))],null,null)}function ie(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "])),(t()(),a["ɵeld"](2,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["selected"])),(t()(),a["ɵted"](-1,null,[" / "]))],null,(function(t,e){t(e,1,0,e.parent.context.selectedCount)}))}function se(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "])),(t()(),a["ɵeld"](2,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["found"])),(t()(),a["ɵted"](-1,null,[" / "]))],null,(function(t,e){t(e,1,0,e.parent.context.rowCount)}))}function ue(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"div",[["class","page-count"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ie)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,se)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](5,0,null,null,3,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](6,null,[" "," "])),(t()(),a["ɵeld"](7,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["total"])),(t()(),a["ɵeld"](9,0,null,null,1,"datatable-pager",[["class","datatable-pager"]],[[8,"hidden",0]],[[null,"change"]],(function(t,e,n){var r=!0;return"change"===e&&(r=!1!==a["ɵnov"](t.parent,26).onFooterPage(n)&&r),r}),At,Ct)),a["ɵdid"](10,49152,null,0,f.j,[],{pagerLeftArrowIcon:[0,"pagerLeftArrowIcon"],pagerRightArrowIcon:[1,"pagerRightArrowIcon"],pagerPreviousIcon:[2,"pagerPreviousIcon"],pagerNextIcon:[3,"pagerNextIcon"],size:[4,"size"],count:[5,"count"],page:[6,"page"]},{change:"change"})],(function(t,e){var n=e.component;t(e,2,0,n.selectionType),t(e,4,0,e.context.rowCount!=(null==n.data?null:n.data.length)),t(e,10,0,n.paginationClasses.pagerLeftArrow,n.paginationClasses.pagerRightArrow,n.paginationClasses.pagerPrevious,n.paginationClasses.pagerNext,e.context.pageSize,e.context.rowCount,e.context.curPage)}),(function(t,e){var n=e.component;t(e,6,0,(null==n.data?null:n.data.length)||0),t(e,9,0,!(e.context.rowCount/e.context.pageSize>1))}))}function oe(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.value)}))}function le(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-sparkline",[],null,null,null,kt.b,kt.a)),a["ɵdid"](1,638976,null,0,Et.a,[Lt.a],{data:[0,"data"],isBinary:[1,"isBinary"]},null)],(function(t,e){t(e,1,0,e.context.value,e.context.row.cdIsBinary)}),null)}function de(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"a",[],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,1).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&r),r}),null,null)),a["ɵdid"](1,671744,null,0,Dt.p,[Dt.m,Dt.a,u.LocationStrategy],{queryParams:[0,"queryParams"],routerLink:[1,"routerLink"]},null),a["ɵpad"](2,1),(t()(),a["ɵted"](3,null,["",""]))],(function(t,e){var n=e.context.row.cdParams,a=t(e,2,0,e.context.row.cdLink);t(e,1,0,n,a)}),(function(t,e){t(e,0,0,a["ɵnov"](e,1).target,a["ɵnov"](e,1).href),t(e,3,0,e.context.value)}))}function ce(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"i",[],[[8,"hidden",0]],null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,1),a["ɵppd"](4,1)],(function(t,e){var n=t(e,3,0,e.component.icons.check);t(e,2,0,n)}),(function(t,e){var n=!a["ɵunv"](e,0,0,t(e,4,0,a["ɵnov"](e.parent,0),e.context.value));t(e,0,0,n)}))}function fe(t){return a["ɵvid"](0,[(t()(),a["ɵted"](0,null,[" "," /s\n"]))],null,(function(t,e){t(e,0,0,e.context.value)}))}function he(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,2)],(function(t,e){var n=e.component,a=t(e,3,0,n.icons.spinner,n.icons.spin);t(e,2,0,a)}),null)}function ge(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","text-muted italic"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["(",")"]))],null,(function(t,e){t(e,1,0,e.parent.context.row.cdExecuting)}))}function pe(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,he)),a["ɵdid"](1,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](2,null,[" "," "])),(t()(),a["ɵand"](16777216,null,null,1,null,ge)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.row.cdExecuting),t(e,4,0,e.context.row.cdExecuting)}),(function(t,e){t(e,2,0,e.context.value)}))}function be(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,0,0,a["ɵinlineInterpolate"](1,"",e.component.useCustomClass(e.context.value),"")),t(e,1,0,e.context.value)}))}function me(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"span",[["class","badge"]],null,null,null,null,null)),a["ɵprd"](512,null,u["ɵNgClassImpl"],u["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,u.NgClass,[u["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,"badge",null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&e.parent.parent.context.column.customTemplateConfig.map&&null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&null!=e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit]&&e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit].class?e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit].class:null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&e.parent.parent.context.column.customTemplateConfig.class?e.parent.parent.context.column.customTemplateConfig.class:"badge-primary")}),(function(t,e){t(e,3,0,null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&e.parent.parent.context.column.customTemplateConfig.map&&null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&null!=e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit]&&e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit].value?e.parent.parent.context.column.customTemplateConfig.map[e.parent.context.$implicit].value:null!=e.parent.parent.context.column&&null!=e.parent.parent.context.column.customTemplateConfig&&e.parent.parent.context.column.customTemplateConfig.prefix?e.parent.parent.context.column.customTemplateConfig.prefix+e.parent.context.$implicit:e.parent.context.$implicit)}))}function ye(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,[" "]))],null,null)}function ve(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,me)),a["ɵdid"](2,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ye)),a["ɵdid"](4,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,null!=e.parent.context.column&&null!=e.parent.context.column.customTemplateConfig&&e.parent.context.column.customTemplateConfig.map&&null!=e.parent.context.column&&null!=e.parent.context.column.customTemplateConfig&&null!=e.parent.context.column.customTemplateConfig.map[e.context.$implicit]&&e.parent.context.column.customTemplateConfig.map[e.context.$implicit].value?e.parent.context.column.customTemplateConfig.map[e.context.$implicit].value:null!=e.parent.context.column&&null!=e.parent.context.column.customTemplateConfig&&e.parent.context.column.customTemplateConfig.prefix?e.parent.context.column.customTemplateConfig.prefix+e.context.$implicit:e.context.$implicit),t(e,4,0,!e.context.last)}),null)}function xe(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,ve)),a["ɵdid"](1,278528,null,0,u.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵppd"](2,1),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent,1),e.context.value));t(e,1,0,n)}),null)}function _e(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""])),a["ɵppd"](2,2)],null,(function(t,e){var n=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent,2),e.context.value,null==e.context.column?null:e.context.column.customTemplateConfig));t(e,1,0,n)}))}function Te(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[["data-toggle","tooltip"]],[[8,"title",0]],null,null,null,null)),(t()(),a["ɵted"](1,null,["",""])),a["ɵppd"](2,3)],null,(function(t,e){t(e,0,0,e.context.value);var n=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent,3),e.context.value,null==e.context.column||null==e.context.column.customTemplateConfig?null:e.context.column.customTemplateConfig.length,null==e.context.column||null==e.context.column.customTemplateConfig?null:e.context.column.customTemplateConfig.omission));t(e,1,0,n)}))}function we(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"a",[["class","expand-collapse-icon tc_expand-collapse"],["href","javascript:void(0)"],["title","Expand/Collapse Row"]],[[2,"expand-collapse-icon-right",null],[2,"expand-collapse-icon-down",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleExpandRow(t.context.row,t.context.expanded,n)&&a),a}),null,null))],null,(function(t,e){t(e,0,0,!e.context.expanded,e.context.expanded)}))}function Oe(t){return a["ɵvid"](2,[a["ɵpid"](0,Pt.a,[]),a["ɵpid"](0,Mt.a,[]),a["ɵpid"](0,qt.a,[]),a["ɵpid"](0,jt.a,[]),a["ɵqud"](402653184,1,{table:0}),a["ɵqud"](402653184,2,{tableCellBoldTpl:0}),a["ɵqud"](402653184,3,{sparklineTpl:0}),a["ɵqud"](402653184,4,{routerLinkTpl:0}),a["ɵqud"](402653184,5,{checkIconTpl:0}),a["ɵqud"](402653184,6,{perSecondTpl:0}),a["ɵqud"](402653184,7,{executingTpl:0}),a["ɵqud"](402653184,8,{classAddingTpl:0}),a["ɵqud"](402653184,9,{badgeTpl:0}),a["ɵqud"](402653184,10,{mapTpl:0}),a["ɵqud"](402653184,11,{truncateTpl:0}),a["ɵqud"](402653184,12,{rowDetailsTpl:0}),(t()(),a["ɵand"](16777216,null,null,1,null,Vt)),a["ɵdid"](17,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](18,0,null,null,22,"div",[["class","dataTables_wrapper"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Gt)),a["ɵdid"](20,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,te)),a["ɵdid"](22,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ae)),a["ɵdid"](24,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](25,0,null,null,15,"ngx-datatable",[["class","bootstrap cd-datatable ngx-datatable"]],[[2,"fixed-header",null],[2,"fixed-row",null],[2,"scroll-vertical",null],[2,"virtualized",null],[2,"scroll-horz",null],[2,"selectable",null],[2,"checkbox-selection",null],[2,"cell-selection",null],[2,"single-selection",null],[2,"multi-selection",null],[2,"multi-click-selection",null]],[[null,"select"],[null,"sort"],["window","resize"]],(function(t,e,n){var r=!0,i=t.component;return"window:resize"===e&&(r=!1!==a["ɵnov"](t,26).onWindowResize()&&r),"select"===e&&(r=!1!==i.onSelect(n)&&r),"sort"===e&&(r=!1!==i.changeSorting(n)&&r),r}),b,h)),a["ɵdid"](26,5750784,[[1,4],["table",4]],4,f.n,[[1,f.y],[1,f.r],a.ChangeDetectorRef,a.ElementRef,a.KeyValueDiffers,f.a,[2,"configuration"]],{rows:[0,"rows"],columns:[1,"columns"],selected:[2,"selected"],rowHeight:[3,"rowHeight"],columnMode:[4,"columnMode"],headerHeight:[5,"headerHeight"],footerHeight:[6,"footerHeight"],limit:[7,"limit"],loadingIndicator:[8,"loadingIndicator"],selectionType:[9,"selectionType"],sorts:[10,"sorts"],cssClasses:[11,"cssClasses"],rowClass:[12,"rowClass"],rowIdentity:[13,"rowIdentity"]},{select:"select",sort:"sort"}),a["ɵqud"](603979776,13,{columnTemplates:1}),a["ɵqud"](603979776,14,{rowDetail:0}),a["ɵqud"](603979776,15,{groupHeader:0}),a["ɵqud"](603979776,16,{footer:0}),(t()(),a["ɵeld"](31,0,[["detailRow",1]],null,4,"ngx-datatable-row-detail",[["rowHeight","auto"]],null,null,null,null,null)),a["ɵdid"](32,16384,[[14,4]],1,f.p,[],{rowHeight:[0,"rowHeight"]},null),a["ɵqud"](335544320,17,{_templateQuery:0}),(t()(),a["ɵand"](0,[[17,2]],null,1,null,re)),a["ɵdid"](35,16384,null,0,f.q,[a.TemplateRef],null,null),(t()(),a["ɵeld"](36,0,null,null,4,"ngx-datatable-footer",[],null,null,null,null,null)),a["ɵdid"](37,16384,[[16,4]],1,f.o,[],null,null),a["ɵqud"](603979776,18,{_templateQuery:0}),(t()(),a["ɵand"](0,[[18,2]],null,1,null,ue)),a["ɵdid"](40,16384,null,0,f.g,[a.TemplateRef],null,null),(t()(),a["ɵand"](0,[[2,2],["tableCellBoldTpl",2]],null,0,null,oe)),(t()(),a["ɵand"](0,[[3,2],["sparklineTpl",2]],null,0,null,le)),(t()(),a["ɵand"](0,[[4,2],["routerLinkTpl",2]],null,0,null,de)),(t()(),a["ɵand"](0,[[5,2],["checkIconTpl",2]],null,0,null,ce)),(t()(),a["ɵand"](0,[[6,2],["perSecondTpl",2]],null,0,null,fe)),(t()(),a["ɵand"](0,[[7,2],["executingTpl",2]],null,0,null,pe)),(t()(),a["ɵand"](0,[[8,2],["classAddingTpl",2]],null,0,null,be)),(t()(),a["ɵand"](0,[[9,2],["badgeTpl",2]],null,0,null,xe)),(t()(),a["ɵand"](0,[[10,2],["mapTpl",2]],null,0,null,_e)),(t()(),a["ɵand"](0,[[11,2],["truncateTpl",2]],null,0,null,Te)),(t()(),a["ɵand"](0,[[12,2],["rowDetailsTpl",2]],null,1,null,we)),a["ɵdid"](52,16384,null,0,f.e,[a.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,17,0,n.loadingError),t(e,20,0,n.onlyActionHeader),t(e,22,0,n.toolHeader),t(e,24,0,n.toolHeader&&n.columnFiltered),t(e,26,1,[n.rows,n.tableColumns,n.selection.selected,"auto",n.columnMode,n.header?"auto":0,n.footer?"auto":0,n.userConfig.limit>0?n.userConfig.limit:void 0,n.loadingIndicator,n.selectionType,n.userConfig.sorts,n.paginationClasses,n.getRowClass(),n.rowIdentity()]),t(e,32,0,"auto")}),(function(t,e){t(e,25,1,[a["ɵnov"](e,26).isFixedHeader,a["ɵnov"](e,26).isFixedRow,a["ɵnov"](e,26).isVertScroll,a["ɵnov"](e,26).isVirtualized,a["ɵnov"](e,26).isHorScroll,a["ɵnov"](e,26).isSelectable,a["ɵnov"](e,26).isCheckboxSelection,a["ɵnov"](e,26).isCellSelection,a["ɵnov"](e,26).isSingleSelection,a["ɵnov"](e,26).isMultiSelection,a["ɵnov"](e,26).isMultiClickSelection])}))}},"2EZI":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("s7LF"),r=n("QFaf"),i=n("8Y7J");let s=(()=>{class t extends a.h{group(t,e=null){const n=super.group(t,e);return new r.a(n.controls,n.validator,n.asyncValidator)}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})()},"2QA8":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())()},"2Vo4":function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("XNiG"),r=n("9ppp");class i extends a.a{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new r.a;return this._value}next(t){super.next(this._value=t)}}},"2ZVE":function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return u})),n.d(e,"c",(function(){return o})),n.d(e,"d",(function(){return l})),n.d(e,"e",(function(){return s})),n.d(e,"f",(function(){return i}));var a=n("8Y7J");class r{constructor(t){this.viewRef=t}set ngTransclude(t){this._ngTransclude=t,t&&this.viewRef.createEmbeddedView(t)}get ngTransclude(){return this._ngTransclude}}class i{constructor(){this.type="tabs",this.ariaLabel="Tabs"}}class s{constructor(t,e,n){this.renderer=e,this.elementRef=n,this.clazz=!0,this.tabs=[],this.classMap={},Object.assign(this,t)}get vertical(){return this._vertical}set vertical(t){this._vertical=t,this.setClassMap()}get justified(){return this._justified}set justified(t){this._justified=t,this.setClassMap()}get type(){return this._type}set type(t){this._type=t,this.setClassMap()}ngOnDestroy(){this.isDestroyed=!0}addTab(t){this.tabs.push(t),t.active=1===this.tabs.length&&void 0===t.active}removeTab(t,e={reselect:!0,emit:!0}){const n=this.tabs.indexOf(t);if(-1!==n&&!this.isDestroyed){if(e.reselect&&t.active&&this.hasAvailableTabs(n)){const t=this.getClosestTabIndex(n);this.tabs[t].active=!0}e.emit&&t.removed.emit(t),this.tabs.splice(n,1),t.elementRef.nativeElement.parentNode&&this.renderer.removeChild(t.elementRef.nativeElement.parentNode,t.elementRef.nativeElement)}}keyNavActions(t,e){const n=Array.from(this.elementRef.nativeElement.querySelectorAll(".nav-link"));if(13!==t.keyCode&&"Enter"!==t.key&&32!==t.keyCode&&"Space"!==t.key)if(39!==t.keyCode&&"RightArrow"!==t.key)if(37!==t.keyCode&&"LeftArrow"!==t.key)if(36!==t.keyCode&&"Home"!==t.key)if(35!==t.keyCode&&"End"!==t.key){if((46===t.keyCode||"Delete"===t.key)&&this.tabs[e].removable){if(this.removeTab(this.tabs[e]),n[e+1])return void n[(e+1)%n.length].focus();n[n.length-1]&&n[0].focus()}}else{let a;t.preventDefault();let r=1,i=e;do{i-r<0?(i=n.length-1,a=n[i],r=0):a=n[i-r],r++}while(a.classList.contains("disabled"));a.focus()}else{let e;t.preventDefault();let a=0;do{e=n[a%n.length],a++}while(e.classList.contains("disabled"));e.focus()}else{let t,a=1,r=e;do{r-a<0?(r=n.length-1,t=n[r],a=0):t=n[r-a],a++}while(t.classList.contains("disabled"));t.focus()}else{let t,a=1;do{t=n[(e+a)%n.length],a++}while(t.classList.contains("disabled"));t.focus()}else t.preventDefault(),n[e%n.length].click()}getClosestTabIndex(t){const e=this.tabs.length;if(!e)return-1;for(let n=1;n<=e;n+=1){const e=t-n,a=t+n;if(this.tabs[e]&&!this.tabs[e].disabled)return e;if(this.tabs[a]&&!this.tabs[a].disabled)return a}return-1}hasAvailableTabs(t){const e=this.tabs.length;if(!e)return!1;for(let n=0;n<e;n+=1)if(!this.tabs[n].disabled&&n!==t)return!0;return!1}setClassMap(){this.classMap={"nav-stacked":this.vertical,"flex-column":this.vertical,"nav-justified":this.justified,["nav-"+this.type]:!0}}}class u{constructor(t,e,n){this.elementRef=e,this.renderer=n,this.selectTab=new a.EventEmitter,this.deselect=new a.EventEmitter,this.removed=new a.EventEmitter,this.addClass=!0,this.role="tabpanel",this.tabset=t,this.tabset.addTab(this)}get customClass(){return this._customClass}set customClass(t){this.customClass&&this.customClass.split(" ").forEach(t=>{this.renderer.removeClass(this.elementRef.nativeElement,t)}),this._customClass=t?t.trim():null,this.customClass&&this.customClass.split(" ").forEach(t=>{this.renderer.addClass(this.elementRef.nativeElement,t)})}get active(){return this._active}set active(t){this._active!==t&&(this.disabled&&t||!t?this._active&&!t&&(this.deselect.emit(this),this._active=t):(this._active=t,this.selectTab.emit(this),this.tabset.tabs.forEach(t=>{t!==this&&(t.active=!1)})))}get ariaLabelledby(){return this.id?this.id+"-link":""}ngOnInit(){this.removable=this.removable}ngOnDestroy(){this.tabset.removeTab(this,{reselect:!1,emit:!1})}}class o{constructor(t,e){e.headingRef=t}}class l{static forRoot(){return{ngModule:l,providers:[i]}}}},"2bSy":function(t,e,n){var a=n("iQ+a"),r=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,i,s,u){var o=1&n,l=a(t),d=l.length;if(d!=a(e).length&&!o)return!1;for(var c=d;c--;){var f=l[c];if(!(o?f in e:r.call(e,f)))return!1}var h=u.get(t),g=u.get(e);if(h&&g)return h==e&&g==t;var p=!0;u.set(t,e),u.set(e,t);for(var b=o;++c<d;){var m=t[f=l[c]],y=e[f];if(i)var v=o?i(y,m,f,e,t,u):i(m,y,f,t,e,u);if(!(void 0===v?m===y||s(m,y,n,i,u):v)){p=!1;break}b||(b="constructor"==f)}if(p&&!b){var x=t.constructor,_=e.constructor;x==_||!("constructor"in t)||!("constructor"in e)||"function"==typeof x&&x instanceof x&&"function"==typeof _&&_ instanceof _||(p=!1)}return u.delete(t),u.delete(e),p}},"2fFW":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));let a=!1;const r={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else a&&console.log("RxJS: Back to a better error behavior. Thank you. <3");a=t},get useDeprecatedSynchronousErrorHandling(){return a}}},"2fjn":function(t,e,n){!function(t){"use strict";t.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(t,e){switch(e){default:case"M":case"Q":case"D":case"DDD":case"d":return t+(1===t?"er":"e");case"w":case"W":return t+(1===t?"re":"e")}}})}(n("wd/R"))},"2oRo":function(t,e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof global&&global)||Function("return this")()},"2oum":function(t,e){t.exports=function(t){return this.__data__.has(t)}},"2uy1":function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("XNiG"),s=n("VRyK"),u=n("xgIS"),o=n("LRne"),l=n("3N8a");class d extends l.a{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}var c=n("IjjT");class f extends c.a{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,a=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++a<r&&(t=e.shift()));if(this.active=!1,n){for(;++a<r&&(t=e.shift());)t.unsubscribe();throw n}}}const h=new f(d);function g(t,e){if(1!==t.nodeType)return[];const n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function p(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function b(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}const{overflow:e,overflowX:n,overflowY:a}=g(t);return/(auto|scroll|overlay)/.test(String(e)+String(a)+String(n))?t:b(p(t))}n.d(e,"a",(function(){return U}));const m="undefined"!=typeof window&&"undefined"!=typeof document,y=m&&!(!window.MSInputMethodContext||!document.documentMode),v=m&&!(!window.MSInputMethodContext||!/MSIE 10/.test(navigator.userAgent));function x(t){return 11===t?y:10===t?v:y||v}function _(t){if(!t)return document.documentElement;const e=x(10)?document.body:null;let n,a=t.offsetParent||null;for(;a===e&&t.nextElementSibling&&n!==t.nextElementSibling;)n=t.nextElementSibling,a=n.offsetParent;const r=a&&a.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(a.nodeName)&&"static"===g(a,"position")?_(a):a:n?n.ownerDocument.documentElement:document.documentElement}function T(t){return null!==t.parentNode?T(t.parentNode):t}function w(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;const n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,a=n?t:e,r=n?e:t,i=document.createRange();i.setStart(a,0),i.setEnd(r,0);const{commonAncestorContainer:s}=i;if(t!==s&&e!==s||a.contains(r))return function(t){const{nodeName:e}=t;return"BODY"!==e&&("HTML"===e||_(t.firstElementChild)===t)}(s)?s:_(s);const u=T(t);return u.host?w(u.host,e):w(t,T(e).host)}function O(t,e){const n="x"===e?"Left":"Top",a="Left"===n?"Right":"Bottom";return parseFloat(t[`border${n}Width`])+parseFloat(t[`border${a}Width`])}function S(t,e,n,a){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],x(10)?parseInt(n["offset"+t],10)+parseInt(a["margin"+("Height"===t?"Top":"Left")],10)+parseInt(a["margin"+("Height"===t?"Bottom":"Right")],10):0)}function I(t){const e=t.body,n=t.documentElement,a=x(10)&&getComputedStyle(n);return{height:S("Height",e,n,a),width:S("Width",e,n,a)}}function N(t,e="top"){const n="top"===e?"scrollTop":"scrollLeft",a=t.nodeName;if("BODY"===a||"HTML"===a){const e=t.ownerDocument.documentElement;return(t.ownerDocument.scrollingElement||e)[n]}return t[n]}function C(t){return Object.assign({},t,{right:t.left+t.width,bottom:t.top+t.height})}function R(t){let e={};try{if(x(10)){e=t.getBoundingClientRect();const n=N(t,"top"),a=N(t,"left");e.top+=n,e.left+=a,e.bottom+=n,e.right+=a}else e=t.getBoundingClientRect()}catch(s){return}const n={left:e.left,top:e.top,width:e.right-e.left,height:e.bottom-e.top},a="HTML"===t.nodeName?I(t.ownerDocument):{};let r=t.offsetWidth-(a.width||t.clientWidth||n.right-n.left),i=t.offsetHeight-(a.height||t.clientHeight||n.bottom-n.top);if(r||i){const e=g(t);r-=O(e,"x"),i-=O(e,"y"),n.width-=r,n.height-=i}return C(n)}function A(t,e,n=!1){const a=x(10),r="HTML"===e.nodeName,i=R(t),s=R(e),u=b(t),o=g(e),l=parseFloat(o.borderTopWidth),d=parseFloat(o.borderLeftWidth);n&&r&&(s.top=Math.max(s.top,0),s.left=Math.max(s.left,0));let c=C({top:i.top-s.top-l,left:i.left-s.left-d,width:i.width,height:i.height});if(c.marginTop=0,c.marginLeft=0,!a&&r){const t=parseFloat(o.marginTop),e=parseFloat(o.marginLeft);c.top-=l-t,c.bottom-=l-t,c.left-=d-e,c.right-=d-e,c.marginTop=t,c.marginLeft=e}return(a&&!n?e.contains(u):e===u&&"BODY"!==u.nodeName)&&(c=function(t,e,n=!1){const a=N(e,"top"),r=N(e,"left"),i=n?-1:1;return t.top+=a*i,t.bottom+=a*i,t.left+=r*i,t.right+=r*i,t}(c,e)),c}function k(t){if(!t||!t.parentElement||x())return document.documentElement;let e=t.parentElement;for(;e&&"none"===g(e,"transform");)e=e.parentElement;return e||document.documentElement}function E(t,e,n=0,a,r=!1){let i={top:0,left:0};const s=r?k(t):w(t,e);if("viewport"===a)i=function(t,e=!1){const n=t.ownerDocument.documentElement,a=A(t,n),r=Math.max(n.clientWidth,window.innerWidth||0),i=Math.max(n.clientHeight,window.innerHeight||0),s=e?0:N(n),u=e?0:N(n,"left");return C({top:s-Number(a.top)+Number(a.marginTop),left:u-Number(a.left)+Number(a.marginLeft),width:r,height:i})}(s,r);else{let n;"scrollParent"===a?(n=b(p(e)),"BODY"===n.nodeName&&(n=t.ownerDocument.documentElement)):n="window"===a?t.ownerDocument.documentElement:a;const u=A(n,s,r);if("HTML"!==n.nodeName||function t(e){const n=e.nodeName;return"BODY"!==n&&"HTML"!==n&&("fixed"===g(e,"position")||t(p(e)))}(s))i=u;else{const{height:e,width:n}=I(t.ownerDocument);i.top+=u.top-u.marginTop,i.bottom=Number(e)+Number(u.top),i.left+=u.left-u.marginLeft,i.right=Number(n)+Number(u.left)}}return i.left+=n,i.top+=n,i.right-=n,i.bottom-=n,i}function L({width:t,height:e}){return t*e}function D(t,e,n,a,r=["top","bottom","right","left"],i="viewport",s=0){if(-1===t.indexOf("auto"))return t;const u=E(n,a,s,i),o={top:{width:u.width,height:e.top-u.top},right:{width:u.right-e.right,height:u.height},bottom:{width:u.width,height:u.bottom-e.bottom},left:{width:e.left-u.left,height:u.height}},l=Object.keys(o).map(t=>Object.assign({key:t},o[t],{area:L(o[t])})).sort((t,e)=>e.area-t.area);let d=l.filter(({width:t,height:e})=>t>=n.clientWidth&&e>=n.clientHeight);d=d.filter(t=>r.some(e=>e===t.key));const c=d.length>0?d[0].key:l[0].key,f=t.split(" ")[1];return n.className=n.className.replace(/bs-tooltip-auto/g,"bs-tooltip-"+c),c+(f?"-"+f:"")}function P(t){const e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),a=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:Number(t.offsetWidth)+a,height:Number(t.offsetHeight)+n}}function M(t,e,n=null){return A(e,n?k(t):w(t,e),n)}function q(t,e,n){const a=n.split(" ")[0],r=P(t),i={width:r.width,height:r.height},s=-1!==["right","left"].indexOf(a),u=s?"top":"left",o=s?"left":"top",l=s?"height":"width",d=s?"width":"height";return i[u]=e[u]+e[l]/2-r[l]/2,i[o]=a===o?e[o]-r[d]:e[function(t){const e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,t=>e[t])}(o)],i}function j(t,e){return t&&t.modifiers&&t.modifiers[e]&&t.modifiers[e].enabled}function F(t,e,n){Object.keys(e).forEach(a=>{let r="";var i;-1!==["width","height","top","right","bottom","left"].indexOf(a)&&""!==(i=e[a])&&!isNaN(parseFloat(i))&&isFinite(i)&&(r="px"),n?n.setStyle(t,a,`${String(e[a])}${r}`):t.style[a]=String(e[a])+r})}function V(t){let e=t.offsets.target;const n=t.instance.target.querySelector(".arrow");if(!n)return t;const a=-1!==["left","right"].indexOf(t.placement),r=a?"height":"width",i=a?"Top":"Left",s=i.toLowerCase(),u=a?"left":"top",o=a?"bottom":"right",l=P(n)[r];t.offsets.host[o]-l<e[s]&&(e[s]-=e[s]-(t.offsets.host[o]-l)),Number(t.offsets.host[s])+Number(l)>e[o]&&(e[s]+=Number(t.offsets.host[s])+Number(l)-Number(e[o])),e=C(e);const d=Number(t.offsets.host[s])+Number(t.offsets.host[r]/2-l/2),c=g(t.instance.target),f=parseFloat(c["margin"+i]),h=parseFloat(c[`border${i}Width`]);let p=d-e[s]-f-h;return p=Math.max(Math.min(e[r]-l,p),0),t.offsets.arrow={[s]:Math.round(p),[u]:""},t.instance.arrow=n,t}function G(t){if(t.offsets.target=C(t.offsets.target),!j(t.options,"flip"))return t.offsets.target=Object.assign({},t.offsets.target,q(t.instance.target,t.offsets.host,t.placement)),t;const e=E(t.instance.target,t.instance.host,0,"viewport",!1);let n=t.placement.split(" ")[0],a=t.placement.split(" ")[1]||"";const r=D("auto",t.offsets.host,t.instance.target,t.instance.host,t.options.allowedPositions),i=[n,r];return i.forEach((r,s)=>{if(n!==r||i.length===s+1)return t;n=t.placement.split(" ")[0];const u="left"===n&&Math.floor(t.offsets.target.right)>Math.floor(t.offsets.host.left)||"right"===n&&Math.floor(t.offsets.target.left)<Math.floor(t.offsets.host.right)||"top"===n&&Math.floor(t.offsets.target.bottom)>Math.floor(t.offsets.host.top)||"bottom"===n&&Math.floor(t.offsets.target.top)<Math.floor(t.offsets.host.bottom),o=Math.floor(t.offsets.target.left)<Math.floor(e.left),l=Math.floor(t.offsets.target.right)>Math.floor(e.right),d=Math.floor(t.offsets.target.top)<Math.floor(e.top),c=Math.floor(t.offsets.target.bottom)>Math.floor(e.bottom),f="left"===n&&o||"right"===n&&l||"top"===n&&d||"bottom"===n&&c,h=-1!==["top","bottom"].indexOf(n),g=h&&"left"===a&&o||h&&"right"===a&&l||!h&&"left"===a&&d||!h&&"right"===a&&c;(u||f||g)&&((u||f)&&(n=i[s+1]),g&&(a=function(t){return"right"===t?"left":"left"===t?"right":t}(a)),t.placement=n+(a?" "+a:""),t.offsets.target=Object.assign({},t.offsets.target,q(t.instance.target,t.offsets.host,t.placement)))}),t}function B(t){if(!j(t.options,"preventOverflow"))return t;const e="transform",n=t.instance.target.style,{top:a,left:r,[e]:i}=n;n.top="",n.left="",n[e]="";const s=E(t.instance.target,t.instance.host,0,"scrollParent",!1);n.top=a,n.left=r,n[e]=i;const u={primary(e){let n=t.offsets.target[e];return t.offsets.target[e]<s[e]&&(n=Math.max(t.offsets.target[e],s[e])),{[e]:n}},secondary(e){const n="right"===e?"left":"top";let a=t.offsets.target[n];return t.offsets.target[e]>s[e]&&(a=Math.min(t.offsets.target[n],s[e]-("right"===e?t.offsets.target.width:t.offsets.target.height))),{[n]:a}}};let o;return["left","right","top","bottom"].forEach(e=>{o=-1!==["left","top"].indexOf(e)?"primary":"secondary",t.offsets.target=Object.assign({},t.offsets.target,u[o](e))}),t}function z(t){const e=t.placement,n=e.split(" ")[0],a=e.split(" ")[1];if(a){const{host:e,target:r}=t.offsets,i=-1!==["bottom","top"].indexOf(n),s=i?"left":"top",u=i?"width":"height";t.offsets.target=Object.assign({},r,{start:{[s]:e[s]},end:{[s]:e[s]+e[u]-r[u]}}[a])}return t}class Y{position(t,e,n=!0){return this.offset(t,e,!1)}offset(t,e,n=!0){return M(e,t)}positionElements(t,e,n,a,r){return[G,z,B,V].reduce((t,e)=>e(t),function(t,e,n,a){const r=M(t,e);n.match(/^(auto)*\s*(left|right|top|bottom)*$/)||n.match(/^(left|right|top|bottom)*\s*(start|end)*$/)||(n="auto");const i=!!n.match(/auto/g);let s=n.match(/auto\s(left|right|top|bottom)/)?n.split(" ")[1]||"auto":n;const u=q(t,r,s);return s=D(s,r,t,e,a?a.allowedPositions:void 0),{options:a,instance:{target:t,host:e,arrow:null},offsets:{target:u,host:r,arrow:null},positionFixed:!1,placement:s,placementAuto:i}}(e,t,n,r))}}const H=new Y;class U{constructor(t,e,n){this.update$$=new i.a,this.positionElements=new Map,this.isDisabled=!1,Object(r.isPlatformBrowser)(n)&&t.runOutsideAngular(()=>{this.triggerEvent$=Object(s.a)(Object(u.a)(window,"scroll",{passive:!0}),Object(u.a)(window,"resize",{passive:!0}),Object(o.a)(0,h),this.update$$),this.triggerEvent$.subscribe(()=>{this.isDisabled||this.positionElements.forEach(t=>{!function(t,e,n,a,r,i){const s=H.positionElements(t,e,n,a,r),u=function(t){return{width:t.offsets.target.width,height:t.offsets.target.height,left:Math.floor(t.offsets.target.left),top:Math.round(t.offsets.target.top),bottom:Math.round(t.offsets.target.bottom),right:Math.floor(t.offsets.target.right)}}(s);F(e,{"will-change":"transform",top:"0px",left:"0px",transform:`translate3d(${u.left}px, ${u.top}px, 0px)`},i),s.instance.arrow&&F(s.instance.arrow,s.offsets.arrow,i),function(t,e){const n=t.instance.target;let a=n.className;t.placementAuto&&(a=a.replace(/bs-popover-auto/g,"bs-popover-"+t.placement),a=a.replace(/bs-tooltip-auto/g,"bs-tooltip-"+t.placement),a=a.replace(/\sauto/g," "+t.placement),-1!==a.indexOf("popover")&&-1===a.indexOf("popover-auto")&&(a+=" popover-auto"),-1!==a.indexOf("tooltip")&&-1===a.indexOf("tooltip-auto")&&(a+=" tooltip-auto")),a=a.replace(/left|right|top|bottom/g,""+t.placement.split(" ")[0]),e?e.setAttribute(n,"class",a):n.className=a}(s,i)}(W(t.target),W(t.element),t.attachment,t.appendToBody,this.options,e.createRenderer(null,null))})})})}position(t){this.addPositionElement(t)}get event$(){return this.triggerEvent$}disable(){this.isDisabled=!0}enable(){this.isDisabled=!1}addPositionElement(t){this.positionElements.set(W(t.element),t)}calcPosition(){this.update$$.next()}deletePositionElement(t){this.positionElements.delete(W(t))}setOptions(t){this.options=t}}function W(t){return"string"==typeof t?document.querySelector(t):t instanceof a.ElementRef?t.nativeElement:t}},"2vnA":function(t,e,n){"use strict";n.d(e,"a",(function(){return Zt})),n.d(e,"b",(function(){return Qt})),n.d(e,"c",(function(){return it})),n.d(e,"d",(function(){return et})),n.d(e,"e",(function(){return ee}));var a=[];Object.freeze(a);var r={};Object.freeze(r);var i={};function s(){return"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:i}function u(){return++kt.mobxGuid}function o(t){throw l(!1,t),"X"}function l(t,e){if(!t)throw new Error("[mobx] "+(e||"An invariant failed, however the error is obfuscated because this is an production build."))}function d(t){var e=!1;return function(){if(!e)return e=!0,t.apply(this,arguments)}}var c=function(){};function f(t){return null!==t&&"object"==typeof t}function h(t){if(null===t||"object"!=typeof t)return!1;var e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}function g(t,e,n){Object.defineProperty(t,e,{enumerable:!1,writable:!0,configurable:!0,value:n})}function p(t,e,n){Object.defineProperty(t,e,{enumerable:!1,writable:!1,configurable:!0,value:n})}function b(t,e){var n="isMobX"+t;return e.prototype[n]=!0,function(t){return f(t)&&!0===t[n]}}function m(t){return void 0!==s().Map&&t instanceof s().Map}function y(t){return t instanceof Set}function v(t){for(var e=[];;){var n=t.next();if(n.done)break;e.push(n.value)}return e}function x(){return"function"==typeof Symbol&&Symbol.toPrimitive||"@@toPrimitive"}function _(t){return null===t?null:"object"==typeof t?""+t:t}function T(t,e){for(var n=t.next();!n.done;)e(n.value),n=t.next()}function w(){return"function"==typeof Symbol&&Symbol.iterator||"@@iterator"}function O(t,e){p(t,w(),e)}function S(t){return t[w()]=N,t}function I(){return"function"==typeof Symbol&&Symbol.toStringTag||"@@toStringTag"}function N(){return this}var C=function(){function t(t){void 0===t&&(t="Atom@"+u()),this.name=t,this.isPendingUnobservation=!1,this.isBeingObserved=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.lastAccessedBy=0,this.lowestObserverState=st.NOT_TRACKING}return t.prototype.onBecomeUnobserved=function(){},t.prototype.onBecomeObserved=function(){},t.prototype.reportObserved=function(){return qt(this)},t.prototype.reportChanged=function(){Pt(),function(t){if(t.lowestObserverState!==st.STALE){t.lowestObserverState=st.STALE;for(var e=t.observers,n=e.length;n--;){var a=e[n];a.dependenciesState===st.UP_TO_DATE&&(a.isTracing!==ut.NONE&&jt(a,t),a.onBecomeStale()),a.dependenciesState=st.STALE}}}(this),Mt()},t.prototype.toString=function(){return this.name},t}(),R=b("Atom",C);function A(t,e,n){void 0===e&&(e=c),void 0===n&&(n=c);var a=new C(t);return ae("onBecomeObserved",a,e,void 0),ne(a,n),a}function k(t,e){return t===e}var E={identity:k,structural:function(t,e){return We(t,e)},default:function(t,e){return function(t,e){return"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)}(t,e)||k(t,e)},shallow:function(t,e){return We(t,e,1)}},L=function(t,e){return(L=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function D(t,e){function n(){this.constructor=t}L(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var P=function(){return(P=Object.assign||function(t){for(var e,n=1,a=arguments.length;n<a;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function M(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var a,r,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(a=i.next()).done;)s.push(a.value)}catch(u){r={error:u}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return s}function q(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(M(arguments[e]));return t}var j={},F={};function V(t,e){var n=e?j:F;return n[t]||(n[t]={configurable:!0,enumerable:e,get:function(){return G(this),this[t]},set:function(e){G(this),this[t]=e}})}function G(t){if(!0!==t.__mobxDidRunLazyInitializers){var e=t.__mobxDecorators;if(e)for(var n in g(t,"__mobxDidRunLazyInitializers",!0),e){var a=e[n];a.propertyCreator(t,a.prop,a.descriptor,a.decoratorTarget,a.decoratorArguments)}}}function B(t,e){return function(){var n,r=function(a,r,i,s){return!0===s?(e(a,r,i,a,n),null):(Object.prototype.hasOwnProperty.call(a,"__mobxDecorators")||g(a,"__mobxDecorators",P({},a.__mobxDecorators)),a.__mobxDecorators[r]={prop:r,propertyCreator:e,descriptor:i,decoratorTarget:a,decoratorArguments:n},V(r,t))};return z(arguments)?(n=a,r.apply(null,arguments)):(n=Array.prototype.slice.call(arguments),r)}}function z(t){return(2===t.length||3===t.length)&&"string"==typeof t[1]||4===t.length&&!0===t[3]}function Y(t,e,n){return ue(t)?t:Array.isArray(t)?et.array(t,{name:n}):h(t)?et.object(t,void 0,{name:n}):m(t)?et.map(t,{name:n}):y(t)?et.set(t,{name:n}):t}function H(t){return t}function U(t){l(t);var e=B(!0,(function(e,n,a,r,i){!function(t,e,n,a){var r=Fe(t);if(de(r)){var i=fe(r,{object:t,name:e,type:"add",newValue:n});if(!i)return;n=i.newValue}n=(r.values[e]=new It(n,a,r.name+"."+e,!1)).value,Object.defineProperty(t,e,function(t){return Ve[t]||(Ve[t]={configurable:!0,enumerable:!0,get:function(){return this.$mobx.read(this,t)},set:function(e){this.$mobx.write(this,t,e)}})}(e)),r.keys&&r.keys.push(e),function(t,e,n,a){var r=he(t),i=Bt(),s=r||i?{type:"add",object:e,name:n,newValue:a}:null;i&&Yt(P(P({},s),{name:t.name,key:n})),r&&pe(t,s),i&&Ut()}(r,t,e,n)}(e,n,a?a.initializer?a.initializer.call(e):a.value:void 0,t)})),n=("undefined"!=typeof process&&process,e);return n.enhancer=t,n}var W={deep:!0,name:void 0,defaultDecorator:void 0};function K(t){return null==t?W:"string"==typeof t?{name:t,deep:!0}:t}function $(t){return t.defaultDecorator?t.defaultDecorator.enhancer:!1===t.deep?H:Y}Object.freeze(W),Object.freeze({deep:!1,name:void 0,defaultDecorator:void 0});var Z=U(Y),J=U((function(t,e,n){return null==t||Ye(t)||Ae(t)||De(t)||qe(t)?t:Array.isArray(t)?et.array(t,{name:n,deep:!1}):h(t)?et.object(t,void 0,{name:n,deep:!1}):m(t)?et.map(t,{name:n,deep:!1}):y(t)?et.set(t,{name:n,deep:!1}):o(!1)})),Q=U(H),X=U((function(t,e,n){return We(t,e)?e:t})),tt={box:function(t,e){arguments.length>2&&nt("box");var n=K(e);return new It(t,$(n),n.name,!0,n.equals)},shallowBox:function(t,e){return arguments.length>2&&nt("shallowBox"),et.box(t,{name:e,deep:!1})},array:function(t,e){arguments.length>2&&nt("array");var n=K(e);return new Oe(t,$(n),n.name)},shallowArray:function(t,e){return arguments.length>2&&nt("shallowArray"),et.array(t,{name:e,deep:!1})},map:function(t,e){arguments.length>2&&nt("map");var n=K(e);return new Ee(t,$(n),n.name)},shallowMap:function(t,e){return arguments.length>2&&nt("shallowMap"),et.map(t,{name:e,deep:!1})},set:function(t,e){arguments.length>2&&nt("set");var n=K(e);return new Me(t,$(n),n.name)},object:function(t,e,n){"string"==typeof arguments[1]&&nt("object");var a=K(n);return re({},t,e,a)},shallowObject:function(t,e){return"string"==typeof arguments[1]&&nt("shallowObject"),et.object(t,{},{name:e,deep:!1})},ref:Q,shallow:J,deep:Z,struct:X},et=function(t,e,n){if("string"==typeof arguments[1])return Z.apply(null,arguments);if(ue(t))return t;var a=h(t)?et.object(t,e,n):Array.isArray(t)?et.array(t,e):m(t)?et.map(t,e):y(t)?et.set(t,e):t;if(a!==t)return a;o(!1)};function nt(t){o("Expected one or two arguments to observable."+t+". Did you accidentally try to use observable."+t+" as decorator?")}Object.keys(tt).forEach((function(t){return et[t]=tt[t]}));var at=B(!1,(function(t,e,n,a,r){var i,s,u,o;i=t,s=e,u=P({get:n.get,set:n.set},r[0]||{}),o=Fe(i),u.name=o.name+"."+s,u.context=i,o.values[s]=new Nt(u),Object.defineProperty(i,s,function(t){return Ge[t]||(Ge[t]={configurable:kt.computedConfigurable,enumerable:!1,get:function(){return Be(this).read(this,t)},set:function(e){Be(this).write(this,t,e)}})}(s))})),rt=at({equals:E.structural}),it=function(t,e,n){if("string"==typeof e)return at.apply(null,arguments);if(null!==t&&"object"==typeof t&&1===arguments.length)return at.apply(null,arguments);var a="object"==typeof e?e:{};return a.get=t,a.set="function"==typeof e?e:a.set,a.name=a.name||t.name||"",new Nt(a)};it.struct=rt;var st=function(t){return t[t.NOT_TRACKING=-1]="NOT_TRACKING",t[t.UP_TO_DATE=0]="UP_TO_DATE",t[t.POSSIBLY_STALE=1]="POSSIBLY_STALE",t[t.STALE=2]="STALE",t}({}),ut=function(t){return t[t.NONE=0]="NONE",t[t.LOG=1]="LOG",t[t.BREAK=2]="BREAK",t}({}),ot=function(){return function(t){this.cause=t}}();function lt(t){return t instanceof ot}function dt(t){switch(t.dependenciesState){case st.UP_TO_DATE:return!1;case st.NOT_TRACKING:case st.STALE:return!0;case st.POSSIBLY_STALE:for(var e=mt(!0),n=pt(),a=t.observing,r=a.length,i=0;i<r;i++){var s=a[i];if(Ct(s)){if(kt.disableErrorBoundaries)s.get();else try{s.get()}catch(u){return bt(n),yt(e),!0}if(t.dependenciesState===st.STALE)return bt(n),yt(e),!0}}return vt(t),bt(n),yt(e),!1}}function ct(t){var e=t.observers.length>0;kt.computationDepth>0&&e&&o(!1),kt.allowStateChanges||!e&&"strict"!==kt.enforceActions||o(!1)}function ft(t,e,n){var a=mt(!0);vt(t),t.newObserving=new Array(t.observing.length+100),t.unboundDepsCount=0,t.runId=++kt.runId;var r,i=kt.trackingDerivation;if(kt.trackingDerivation=t,!0===kt.disableErrorBoundaries)r=e.call(n);else try{r=e.call(n)}catch(s){r=new ot(s)}return kt.trackingDerivation=i,function(t){for(var e=t.observing,n=t.observing=t.newObserving,a=st.UP_TO_DATE,r=0,i=t.unboundDepsCount,s=0;s<i;s++)0===(u=n[s]).diffValue&&(u.diffValue=1,r!==s&&(n[r]=u),r++),u.dependenciesState>a&&(a=u.dependenciesState);for(n.length=r,t.newObserving=null,i=e.length;i--;)0===(u=e[i]).diffValue&&Lt(u,t),u.diffValue=0;for(;r--;){var u;1===(u=n[r]).diffValue&&(u.diffValue=0,Et(u,t))}a!==st.UP_TO_DATE&&(t.dependenciesState=a,t.onBecomeStale())}(t),yt(a),r}function ht(t){var e=t.observing;t.observing=[];for(var n=e.length;n--;)Lt(e[n],t);t.dependenciesState=st.NOT_TRACKING}function gt(t){var e=pt(),n=t();return bt(e),n}function pt(){var t=kt.trackingDerivation;return kt.trackingDerivation=null,t}function bt(t){kt.trackingDerivation=t}function mt(t){var e=kt.allowStateReads;return kt.allowStateReads=t,e}function yt(t){kt.allowStateReads=t}function vt(t){if(t.dependenciesState!==st.UP_TO_DATE){t.dependenciesState=st.UP_TO_DATE;for(var e=t.observing,n=e.length;n--;)e[n].lowestObserverState=st.UP_TO_DATE}}var xt=0,_t=1;function Tt(t,e){var n=function(){return wt(t,e,this,arguments)};return n.isMobxAction=!0,n}function wt(t,e,n,a){var r=function(t,e,n){var a=Bt()&&!!t,r=0;if(a){r=Date.now();var i=n&&n.length||0,s=new Array(i);if(i>0)for(var u=0;u<i;u++)s[u]=n[u];Yt({type:"action",name:t,object:e,arguments:s})}var o=pt();Pt();var l={prevDerivation:o,prevAllowStateChanges:Ot(!0),prevAllowStateReads:mt(!0),notifySpy:a,startTime:r,actionId:_t++,parentActionId:xt};return xt=l.actionId,l}(t,n,a);try{return e.apply(n,a)}catch(i){throw r.error=i,i}finally{!function(t){xt!==t.actionId&&o("invalid action stack. did you forget to finish an action?"),xt=t.parentActionId,void 0!==t.error&&(kt.suppressReactionErrors=!0),St(t.prevAllowStateChanges),yt(t.prevAllowStateReads),Mt(),bt(t.prevDerivation),t.notifySpy&&Ut({time:Date.now()-t.startTime}),kt.suppressReactionErrors=!1}(r)}}function Ot(t){var e=kt.allowStateChanges;return kt.allowStateChanges=t,e}function St(t){kt.allowStateChanges=t}Object.getOwnPropertyDescriptor((function(){}),"name");var It=function(t){function e(e,n,a,r,i){void 0===a&&(a="ObservableValue@"+u()),void 0===r&&(r=!0),void 0===i&&(i=E.default);var s=t.call(this,a)||this;return s.enhancer=n,s.name=a,s.equals=i,s.hasUnreportedChange=!1,s.value=n(e,void 0,a),r&&Bt()&&zt({type:"create",name:s.name,newValue:""+s.value}),s}return D(e,t),e.prototype.dehanceValue=function(t){return void 0!==this.dehancer?this.dehancer(t):t},e.prototype.set=function(t){var e=this.value;if((t=this.prepareNewValue(t))!==kt.UNCHANGED){var n=Bt();n&&Yt({type:"update",name:this.name,newValue:t,oldValue:e}),this.setNewValue(t),n&&Ut()}},e.prototype.prepareNewValue=function(t){if(ct(this),de(this)){var e=fe(this,{object:this,type:"update",newValue:t});if(!e)return kt.UNCHANGED;t=e.newValue}return t=this.enhancer(t,this.value,this.name),this.equals(this.value,t)?kt.UNCHANGED:t},e.prototype.setNewValue=function(t){var e=this.value;this.value=t,this.reportChanged(),he(this)&&pe(this,{type:"update",object:this,newValue:t,oldValue:e})},e.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},e.prototype.intercept=function(t){return ce(this,t)},e.prototype.observe=function(t,e){return e&&t({object:this,type:"update",newValue:this.value,oldValue:void 0}),ge(this,t)},e.prototype.toJSON=function(){return this.get()},e.prototype.toString=function(){return this.name+"["+this.value+"]"},e.prototype.valueOf=function(){return _(this.get())},e}(C);It.prototype[x()]=It.prototype.valueOf,b("ObservableValue",It);var Nt=function(){function t(t){this.dependenciesState=st.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=st.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+u(),this.value=new ot(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=ut.NONE,l(t.get,"missing option for computed: get"),this.derivation=t.get,this.name=t.name||"ComputedValue@"+u(),t.set&&(this.setter=Tt(this.name+"-setter",t.set)),this.equals=t.equals||(t.compareStructural||t.struct?E.structural:E.default),this.scope=t.context,this.requiresReaction=!!t.requiresReaction,this.keepAlive=!!t.keepAlive}return t.prototype.onBecomeStale=function(){!function(t){if(t.lowestObserverState===st.UP_TO_DATE){t.lowestObserverState=st.POSSIBLY_STALE;for(var e=t.observers,n=e.length;n--;){var a=e[n];a.dependenciesState===st.UP_TO_DATE&&(a.dependenciesState=st.POSSIBLY_STALE,a.isTracing!==ut.NONE&&jt(a,t),a.onBecomeStale())}}}(this)},t.prototype.onBecomeUnobserved=function(){},t.prototype.onBecomeObserved=function(){},t.prototype.get=function(){this.isComputing&&o("Cycle detected in computation "+this.name+": "+this.derivation),0!==kt.inBatch||0!==this.observers.length||this.keepAlive?(qt(this),dt(this)&&this.trackAndCompute()&&function(t){if(t.lowestObserverState!==st.STALE){t.lowestObserverState=st.STALE;for(var e=t.observers,n=e.length;n--;){var a=e[n];a.dependenciesState===st.POSSIBLY_STALE?a.dependenciesState=st.STALE:a.dependenciesState===st.UP_TO_DATE&&(t.lowestObserverState=st.UP_TO_DATE)}}}(this)):dt(this)&&(this.warnAboutUntrackedRead(),Pt(),this.value=this.computeValue(!1),Mt());var t=this.value;if(lt(t))throw t.cause;return t},t.prototype.peek=function(){var t=this.computeValue(!1);if(lt(t))throw t.cause;return t},t.prototype.set=function(t){if(this.setter){l(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,t)}finally{this.isRunningSetter=!1}}else l(!1,!1)},t.prototype.trackAndCompute=function(){Bt()&&zt({object:this.scope,type:"compute",name:this.name});var t=this.value,e=this.dependenciesState===st.NOT_TRACKING,n=this.computeValue(!0),a=e||lt(t)||lt(n)||!this.equals(t,n);return a&&(this.value=n),a},t.prototype.computeValue=function(t){var e;if(this.isComputing=!0,kt.computationDepth++,t)e=ft(this,this.derivation,this.scope);else if(!0===kt.disableErrorBoundaries)e=this.derivation.call(this.scope);else try{e=this.derivation.call(this.scope)}catch(n){e=new ot(n)}return kt.computationDepth--,this.isComputing=!1,e},t.prototype.suspend=function(){this.keepAlive||(ht(this),this.value=void 0)},t.prototype.observe=function(t,e){var n=this,a=!0,r=void 0;return Qt((function(){var i=n.get();if(!a||e){var s=pt();t({type:"update",object:n,newValue:i,oldValue:r}),bt(s)}a=!1,r=i}))},t.prototype.warnAboutUntrackedRead=function(){},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},t.prototype.valueOf=function(){return _(this.get())},t}();Nt.prototype[x()]=Nt.prototype.valueOf;var Ct=b("ComputedValue",Nt),Rt=function(){return function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.allowStateReads=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.reactionRequiresObservable=!1,this.observableRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1}}(),At=!0,kt=function(){var t=s();return t.__mobxInstanceCount>0&&!t.__mobxGlobals&&(At=!1),t.__mobxGlobals&&t.__mobxGlobals.version!==(new Rt).version&&(At=!1),At?t.__mobxGlobals?(t.__mobxInstanceCount+=1,t.__mobxGlobals.UNCHANGED||(t.__mobxGlobals.UNCHANGED={}),t.__mobxGlobals):(t.__mobxInstanceCount=1,t.__mobxGlobals=new Rt):(setTimeout((function(){o("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")}),1),new Rt)}();function Et(t,e){var n=t.observers.length;n&&(t.observersIndexes[e.__mapid]=n),t.observers[n]=e,t.lowestObserverState>e.dependenciesState&&(t.lowestObserverState=e.dependenciesState)}function Lt(t,e){if(1===t.observers.length)t.observers.length=0,Dt(t);else{var n=t.observers,a=t.observersIndexes,r=n.pop();if(r!==e){var i=a[e.__mapid]||0;i?a[r.__mapid]=i:delete a[r.__mapid],n[i]=r}delete a[e.__mapid]}}function Dt(t){!1===t.isPendingUnobservation&&(t.isPendingUnobservation=!0,kt.pendingUnobservations.push(t))}function Pt(){kt.inBatch++}function Mt(){if(0==--kt.inBatch){Vt();for(var t=kt.pendingUnobservations,e=0;e<t.length;e++){var n=t[e];n.isPendingUnobservation=!1,0===n.observers.length&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBecomeUnobserved()),n instanceof Nt&&n.suspend())}kt.pendingUnobservations=[]}}function qt(t){var e=kt.trackingDerivation;return null!==e?(e.runId!==t.lastAccessedBy&&(t.lastAccessedBy=e.runId,e.newObserving[e.unboundDepsCount++]=t,t.isBeingObserved||(t.isBeingObserved=!0,t.onBecomeObserved())),!0):(0===t.observers.length&&kt.inBatch>0&&Dt(t),!1)}function jt(t,e){if(console.log("[mobx.trace] '"+t.name+"' is invalidated due to a change in: '"+e.name+"'"),t.isTracing===ut.BREAK){var n=[];!function t(e,n,a){n.length>=1e3?n.push("(and many more)"):(n.push(""+new Array(a).join("\t")+e.name),e.dependencies&&e.dependencies.forEach((function(e){return t(e,n,a+1)})))}((a=t,ie(He(a,void 0))),n,1),new Function("debugger;\n/*\nTracing '"+t.name+"'\n\nYou are entering this break point because derivation '"+t.name+"' is being traced and '"+e.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(t instanceof Nt?t.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+n.join("\n")+"\n*/\n    ")()}var a}var Ft=function(){function t(t,e,n,a){void 0===t&&(t="Reaction@"+u()),void 0===a&&(a=!1),this.name=t,this.onInvalidate=e,this.errorHandler=n,this.requiresObservable=a,this.observing=[],this.newObserving=[],this.dependenciesState=st.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+u(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=ut.NONE}return t.prototype.onBecomeStale=function(){this.schedule()},t.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,kt.pendingReactions.push(this),Vt())},t.prototype.isScheduled=function(){return this._isScheduled},t.prototype.runReaction=function(){if(!this.isDisposed){if(Pt(),this._isScheduled=!1,dt(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending&&Bt()&&zt({name:this.name,type:"scheduled-reaction"})}catch(t){this.reportExceptionInDerivation(t)}}Mt()}},t.prototype.track=function(t){Pt();var e,n=Bt();n&&(e=Date.now(),Yt({name:this.name,type:"reaction"})),this._isRunning=!0;var a=ft(this,t,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&ht(this),lt(a)&&this.reportExceptionInDerivation(a.cause),n&&Ut({time:Date.now()-e}),Mt()},t.prototype.reportExceptionInDerivation=function(t){var e=this;if(this.errorHandler)this.errorHandler(t,this);else{if(kt.disableErrorBoundaries)throw t;var n="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";kt.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(n,t),Bt()&&zt({type:"error",name:this.name,message:n,error:""+t}),kt.globalReactionErrorHandlers.forEach((function(n){return n(t,e)}))}},t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(Pt(),ht(this),Mt()))},t.prototype.getDisposer=function(){var t=this.dispose.bind(this);return t.$mobx=this,t},t.prototype.toString=function(){return"Reaction["+this.name+"]"},t.prototype.trace=function(t){void 0===t&&(t=!1),function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=!1;"boolean"==typeof t[t.length-1]&&(n=t.pop());var a=oe(t);if(!a)return o(!1);a.isTracing===ut.NONE&&console.log("[mobx.trace] '"+a.name+"' tracing enabled"),a.isTracing=n?ut.BREAK:ut.LOG}(this,t)},t}();function Vt(){kt.inBatch>0||kt.isRunningReactions||function(){kt.isRunningReactions=!0;for(var t=kt.pendingReactions,e=0;t.length>0;){100==++e&&(console.error("Reaction doesn't converge to a stable state after 100 iterations. Probably there is a cycle in the reactive function: "+t[0]),t.splice(0));for(var n=t.splice(0),a=0,r=n.length;a<r;a++)n[a].runReaction()}kt.isRunningReactions=!1}()}var Gt=b("Reaction",Ft);function Bt(){return!!kt.spyListeners.length}function zt(t){if(kt.spyListeners.length)for(var e=kt.spyListeners,n=0,a=e.length;n<a;n++)e[n](t)}function Yt(t){zt(P(P({},t),{spyReportStart:!0}))}var Ht={spyReportEnd:!0};function Ut(t){zt(t?P(P({},t),{spyReportEnd:!0}):Ht)}function Wt(){o(!1)}function Kt(t){return function(e,n,a){if(a){if(a.value)return{value:Tt(t,a.value),enumerable:!1,configurable:!0,writable:!0};var r=a.initializer;return{enumerable:!1,configurable:!0,writable:!0,initializer:function(){return Tt(t,r.call(this))}}}return $t(t).apply(this,arguments)}}function $t(t){return function(e,n,a){Object.defineProperty(e,n,{configurable:!0,enumerable:!1,get:function(){},set:function(e){g(this,n,Zt(t,e))}})}}var Zt=function(t,e,n,a){return 1===arguments.length&&"function"==typeof t?Tt(t.name||"<unnamed action>",t):2===arguments.length&&"function"==typeof e?Tt(t,e):1===arguments.length&&"string"==typeof t?Kt(t):!0!==a?Kt(e).apply(null,arguments):void(t[e]=Tt(t.name||e,n.value))};function Jt(t,e,n){g(t,e,Tt(e,n.bind(t)))}function Qt(t,e){void 0===e&&(e=r);var n,a=e&&e.name||t.name||"Autorun@"+u();if(e.scheduler||e.delay){var i=te(e),s=!1;n=new Ft(a,(function(){s||(s=!0,i((function(){s=!1,n.isDisposed||n.track(o)})))}),e.onError,e.requiresObservable)}else n=new Ft(a,(function(){this.track(o)}),e.onError,e.requiresObservable);function o(){t(n)}return n.schedule(),n.getDisposer()}Zt.bound=function(t,e,n,a){return!0===a?(Jt(t,e,n.value),null):n?{configurable:!0,enumerable:!1,get:function(){return Jt(this,e,n.value||n.initializer.call(this)),this[e]},set:Wt}:{enumerable:!1,configurable:!0,set:function(t){Jt(this,e,t)},get:function(){}}};var Xt=function(t){return t()};function te(t){return t.scheduler?t.scheduler:t.delay?function(e){return setTimeout(e,t.delay)}:Xt}function ee(t,e,n){void 0===n&&(n=r),"boolean"==typeof n&&(n={fireImmediately:n});var a,i,s,o=n.name||"Reaction@"+u(),l=Zt(o,n.onError?(a=n.onError,i=e,function(){try{return i.apply(this,arguments)}catch(t){a.call(this,t)}}):e),d=!n.scheduler&&!n.delay,c=te(n),f=!0,h=!1,g=n.compareStructural?E.structural:n.equals||E.default,p=new Ft(o,(function(){f||d?b():h||(h=!0,c(b))}),n.onError,n.requiresObservable);function b(){if(h=!1,!p.isDisposed){var e=!1;p.track((function(){var n=t(p);e=f||!g(s,n),s=n})),f&&n.fireImmediately&&l(s,p),f||!0!==e||l(s,p),f&&(f=!1)}}return p.schedule(),p.getDisposer()}function ne(t,e,n){return ae("onBecomeUnobserved",t,e,n)}function ae(t,e,n,a){var r="function"==typeof a?He(e,n):He(e),i="function"==typeof a?a:n,s=r[t];return"function"!=typeof s?o(!1):(r[t]=function(){s.call(this),i.call(this)},function(){r[t]=s})}function re(t,e,n,a){var r=(a=K(a)).defaultDecorator||(!1===a.deep?Q:Z);G(t),Fe(t,a.name,r.enhancer),Pt();try{for(var i=Object.getOwnPropertyNames(e),s=0,u=i.length;s<u;s++){var o=i[s],l=Object.getOwnPropertyDescriptor(e,o),d=(n&&o in n?n[o]:l.get?at:r)(t,o,l,!0);d&&Object.defineProperty(t,o,d)}}finally{Mt()}return t}function ie(t){var e,n,a={name:t.name};return t.observing&&t.observing.length>0&&(a.dependencies=(e=t.observing,n=[],e.forEach((function(t){-1===n.indexOf(t)&&n.push(t)})),n).map(ie)),a}function se(t,e){if(null==t)return!1;if(void 0!==e){if(Ye(t)){var n=t.$mobx;return n.values&&!!n.values[e]}return!1}return Ye(t)||!!t.$mobx||R(t)||Gt(t)||Ct(t)}function ue(t){return 1!==arguments.length&&o(!1),se(t)}function oe(t){switch(t.length){case 0:return kt.trackingDerivation;case 1:return He(t[0]);case 2:return He(t[0],t[1])}}function le(t,e){void 0===e&&(e=void 0),Pt();try{return t.apply(e)}finally{Mt()}}function de(t){return void 0!==t.interceptors&&t.interceptors.length>0}function ce(t,e){var n=t.interceptors||(t.interceptors=[]);return n.push(e),d((function(){var t=n.indexOf(e);-1!==t&&n.splice(t,1)}))}function fe(t,e){var n=pt();try{var a=t.interceptors;if(a)for(var r=0,i=a.length;r<i&&(l(!(e=a[r](e))||e.type,"Intercept handlers should return nothing or a change object"),e);r++);return e}finally{bt(n)}}function he(t){return void 0!==t.changeListeners&&t.changeListeners.length>0}function ge(t,e){var n=t.changeListeners||(t.changeListeners=[]);return n.push(e),d((function(){var t=n.indexOf(e);-1!==t&&n.splice(t,1)}))}function pe(t,e){var n=pt(),a=t.changeListeners;if(a){for(var r=0,i=(a=a.slice()).length;r<i;r++)a[r](e);bt(n)}}Object.create(Error.prototype);var be,me,ye,ve,xe=(be=!1,me={},Object.defineProperty(me,"0",{set:function(){be=!0}}),Object.create(me)[0]=1,!1===be),_e=0,Te=function(){return function(){}}();ye=Te,ve=Array.prototype,void 0!==Object.setPrototypeOf?Object.setPrototypeOf(ye.prototype,ve):void 0!==ye.prototype.__proto__?ye.prototype.__proto__=ve:ye.prototype=ve,Object.isFrozen(Array)&&["constructor","push","shift","concat","pop","unshift","replace","find","findIndex","splice","reverse","sort"].forEach((function(t){Object.defineProperty(Te.prototype,t,{configurable:!0,writable:!0,value:Array.prototype[t]})}));var we=function(){function t(t,e,n,a){this.array=n,this.owned=a,this.values=[],this.lastKnownLength=0,this.atom=new C(t||"ObservableArray@"+u()),this.enhancer=function(n,a){return e(n,a,t+"[..]")}}return t.prototype.dehanceValue=function(t){return void 0!==this.dehancer?this.dehancer(t):t},t.prototype.dehanceValues=function(t){return void 0!==this.dehancer&&t.length>0?t.map(this.dehancer):t},t.prototype.intercept=function(t){return ce(this,t)},t.prototype.observe=function(t,e){return void 0===e&&(e=!1),e&&t({object:this.array,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),ge(this,t)},t.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},t.prototype.setArrayLength=function(t){if("number"!=typeof t||t<0)throw new Error("[mobx.array] Out of range: "+t);var e=this.values.length;if(t!==e)if(t>e){for(var n=new Array(t-e),a=0;a<t-e;a++)n[a]=void 0;this.spliceWithArray(e,0,n)}else this.spliceWithArray(t,e-t)},t.prototype.updateArrayLength=function(t,e){if(t!==this.lastKnownLength)throw new Error("[mobx] Modification exception: the internal structure of an observable array was changed. Did you use peek() to change it?");this.lastKnownLength+=e,e>0&&t+e+1>_e&&Ce(t+e+1)},t.prototype.spliceWithArray=function(t,e,n){var r=this;ct(this.atom);var i=this.values.length;if(void 0===t?t=0:t>i?t=i:t<0&&(t=Math.max(0,i+t)),e=1===arguments.length?i-t:null==e?0:Math.max(0,Math.min(e,i-t)),void 0===n&&(n=a),de(this)){var s=fe(this,{object:this.array,type:"splice",index:t,removedCount:e,added:n});if(!s)return a;e=s.removedCount,n=s.added}var u=(n=0===n.length?n:n.map((function(t){return r.enhancer(t,void 0)}))).length-e;this.updateArrayLength(i,u);var o=this.spliceItemsIntoValues(t,e,n);return 0===e&&0===n.length||this.notifyArraySplice(t,n,o),this.dehanceValues(o)},t.prototype.spliceItemsIntoValues=function(t,e,n){var a;if(n.length<1e4)return(a=this.values).splice.apply(a,q([t,e],n));var r=this.values.slice(t,t+e);return this.values=this.values.slice(0,t).concat(n,this.values.slice(t+e)),r},t.prototype.notifyArrayChildUpdate=function(t,e,n){var a=!this.owned&&Bt(),r=he(this),i=r||a?{object:this.array,type:"update",index:t,newValue:e,oldValue:n}:null;a&&Yt(P(P({},i),{name:this.atom.name})),this.atom.reportChanged(),r&&pe(this,i),a&&Ut()},t.prototype.notifyArraySplice=function(t,e,n){var a=!this.owned&&Bt(),r=he(this),i=r||a?{object:this.array,type:"splice",index:t,removed:n,added:e,removedCount:n.length,addedCount:e.length}:null;a&&Yt(P(P({},i),{name:this.atom.name})),this.atom.reportChanged(),r&&pe(this,i),a&&Ut()},t}(),Oe=function(t){function e(e,n,a,r){void 0===a&&(a="ObservableArray@"+u()),void 0===r&&(r=!1);var i=t.call(this)||this,s=new we(a,n,i,r);if(p(i,"$mobx",s),e&&e.length){var o=Ot(!0);i.spliceWithArray(0,0,e),St(o)}return xe&&Object.defineProperty(s.array,"0",Se),i}return D(e,t),e.prototype.intercept=function(t){return this.$mobx.intercept(t)},e.prototype.observe=function(t,e){return void 0===e&&(e=!1),this.$mobx.observe(t,e)},e.prototype.clear=function(){return this.splice(0)},e.prototype.concat=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return this.$mobx.atom.reportObserved(),Array.prototype.concat.apply(this.peek(),t.map((function(t){return Ae(t)?t.peek():t})))},e.prototype.replace=function(t){return this.$mobx.spliceWithArray(0,this.$mobx.values.length,t)},e.prototype.toJS=function(){return this.slice()},e.prototype.toJSON=function(){return this.toJS()},e.prototype.peek=function(){return this.$mobx.atom.reportObserved(),this.$mobx.dehanceValues(this.$mobx.values)},e.prototype.find=function(t,e,n){void 0===n&&(n=0);var a=this.findIndex.apply(this,arguments);return-1===a?void 0:this.get(a)},e.prototype.findIndex=function(t,e,n){void 0===n&&(n=0);for(var a=this.peek(),r=a.length,i=n;i<r;i++)if(t.call(e,a[i],i,this))return i;return-1},e.prototype.splice=function(t,e){for(var n=[],a=2;a<arguments.length;a++)n[a-2]=arguments[a];switch(arguments.length){case 0:return[];case 1:return this.$mobx.spliceWithArray(t);case 2:return this.$mobx.spliceWithArray(t,e)}return this.$mobx.spliceWithArray(t,e,n)},e.prototype.spliceWithArray=function(t,e,n){return this.$mobx.spliceWithArray(t,e,n)},e.prototype.push=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=this.$mobx;return n.spliceWithArray(n.values.length,0,t),n.values.length},e.prototype.pop=function(){return this.splice(Math.max(this.$mobx.values.length-1,0),1)[0]},e.prototype.shift=function(){return this.splice(0,1)[0]},e.prototype.unshift=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=this.$mobx;return n.spliceWithArray(0,0,t),n.values.length},e.prototype.reverse=function(){var t=this.slice();return t.reverse.apply(t,arguments)},e.prototype.sort=function(t){var e=this.slice();return e.sort.apply(e,arguments)},e.prototype.remove=function(t){var e=this.$mobx.dehanceValues(this.$mobx.values).indexOf(t);return e>-1&&(this.splice(e,1),!0)},e.prototype.move=function(t,e){function n(t){if(t<0)throw new Error("[mobx.array] Index out of bounds: "+t+" is negative");var e=this.$mobx.values.length;if(t>=e)throw new Error("[mobx.array] Index out of bounds: "+t+" is not smaller than "+e)}if(n.call(this,t),n.call(this,e),t!==e){var a,r=this.$mobx.values;a=t<e?q(r.slice(0,t),r.slice(t+1,e+1),[r[t]],r.slice(e+1)):q(r.slice(0,e),[r[t]],r.slice(e,t),r.slice(t+1)),this.replace(a)}},e.prototype.get=function(t){var e=this.$mobx;if(e){if(t<e.values.length)return e.atom.reportObserved(),e.dehanceValue(e.values[t]);console.warn("[mobx.array] Attempt to read an array index ("+t+") that is out of bounds ("+e.values.length+"). Please check length first. Out of bound indices will not be tracked by MobX")}},e.prototype.set=function(t,e){var n=this.$mobx,a=n.values;if(t<a.length){ct(n.atom);var r=a[t];if(de(n)){var i=fe(n,{type:"update",object:this,index:t,newValue:e});if(!i)return;e=i.newValue}(e=n.enhancer(e,r))!==r&&(a[t]=e,n.notifyArrayChildUpdate(t,e,r))}else{if(t!==a.length)throw new Error("[mobx.array] Index out of bounds, "+t+" is larger than "+a.length);n.spliceWithArray(t,0,[e])}},e}(Te);O(Oe.prototype,(function(){this.$mobx.atom.reportObserved();var t=this,e=0;return S({next:function(){return e<t.length?{value:t[e++],done:!1}:{done:!0,value:void 0}}})})),Object.defineProperty(Oe.prototype,"length",{enumerable:!1,configurable:!0,get:function(){return this.$mobx.getArrayLength()},set:function(t){this.$mobx.setArrayLength(t)}}),g(Oe.prototype,I(),"Array"),["indexOf","join","lastIndexOf","slice","toString","toLocaleString"].forEach((function(t){var e=Array.prototype[t];l("function"==typeof e,"Base function not defined on Array prototype: '"+t+"'"),g(Oe.prototype,t,(function(){return e.apply(this.peek(),arguments)}))})),["every","filter","forEach","map","some"].forEach((function(t){l("function"==typeof Array.prototype[t],"Base function not defined on Array prototype: '"+t+"'"),g(Oe.prototype,t,(function(e,n){var a=this,r=this.$mobx;return r.atom.reportObserved(),r.dehanceValues(r.values)[t]((function(t,r){return e.call(n,t,r,a)}),n)}))})),["reduce","reduceRight"].forEach((function(t){g(Oe.prototype,t,(function(e,n){var a=this,r=this.$mobx;return r.atom.reportObserved(),r.values[t]((function(t,n,i){return n=r.dehanceValue(n),e(t,n,i,a)}),n)}))})),function(t,e){for(var n=0;n<e.length;n++)g(t,e[n],t[e[n]])}(Oe.prototype,["constructor","intercept","observe","clear","concat","get","replace","toJS","toJSON","peek","find","findIndex","splice","spliceWithArray","push","pop","set","shift","unshift","reverse","sort","remove","move","toString","toLocaleString"]);var Se=Ie(0);function Ie(t){return{enumerable:!1,configurable:!1,get:function(){return this.get(t)},set:function(e){this.set(t,e)}}}function Ne(t){Object.defineProperty(Oe.prototype,""+t,Ie(t))}function Ce(t){for(var e=_e;e<t;e++)Ne(e);_e=t}Ce(1e3);var Re=b("ObservableArrayAdministration",we);function Ae(t){return f(t)&&Re(t.$mobx)}var ke={},Ee=function(){function t(t,e,n){if(void 0===e&&(e=Y),void 0===n&&(n="ObservableMap@"+u()),this.enhancer=e,this.name=n,this.$mobx=ke,this._keysAtom=A(this.name+".keys()"),"function"!=typeof Map)throw new Error("mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js");this._data=new Map,this._hasMap=new Map,this.merge(t)}return t.prototype._has=function(t){return this._data.has(t)},t.prototype.has=function(t){var e=this;if(!kt.trackingDerivation)return this._has(t);var n=this._hasMap.get(t);if(!n){var a=n=new It(this._has(t),H,this.name+"."+Le(t)+"?",!1);this._hasMap.set(t,a),ne(a,(function(){return e._hasMap.delete(t)}))}return n.get()},t.prototype.set=function(t,e){var n=this._has(t);if(de(this)){var a=fe(this,{type:n?"update":"add",object:this,newValue:e,name:t});if(!a)return this;e=a.newValue}return n?this._updateValue(t,e):this._addValue(t,e),this},t.prototype.delete=function(t){var e=this;if(ct(this._keysAtom),de(this)&&!(r=fe(this,{type:"delete",object:this,name:t})))return!1;if(this._has(t)){var n=Bt(),a=he(this),r=a||n?{type:"delete",object:this,oldValue:this._data.get(t).value,name:t}:null;return n&&Yt(P(P({},r),{name:this.name,key:t})),le((function(){e._keysAtom.reportChanged(),e._updateHasMapEntry(t,!1),e._data.get(t).setNewValue(void 0),e._data.delete(t)})),a&&pe(this,r),n&&Ut(),!0}return!1},t.prototype._updateHasMapEntry=function(t,e){var n=this._hasMap.get(t);n&&n.setNewValue(e)},t.prototype._updateValue=function(t,e){var n=this._data.get(t);if((e=n.prepareNewValue(e))!==kt.UNCHANGED){var a=Bt(),r=he(this),i=r||a?{type:"update",object:this,oldValue:n.value,name:t,newValue:e}:null;a&&Yt(P(P({},i),{name:this.name,key:t})),n.setNewValue(e),r&&pe(this,i),a&&Ut()}},t.prototype._addValue=function(t,e){var n=this;ct(this._keysAtom),le((function(){var a=new It(e,n.enhancer,n.name+"."+Le(t),!1);n._data.set(t,a),e=a.value,n._updateHasMapEntry(t,!0),n._keysAtom.reportChanged()}));var a=Bt(),r=he(this),i=r||a?{type:"add",object:this,name:t,newValue:e}:null;a&&Yt(P(P({},i),{name:this.name,key:t})),r&&pe(this,i),a&&Ut()},t.prototype.get=function(t){return this.has(t)?this.dehanceValue(this._data.get(t).get()):this.dehanceValue(void 0)},t.prototype.dehanceValue=function(t){return void 0!==this.dehancer?this.dehancer(t):t},t.prototype.keys=function(){return this._keysAtom.reportObserved(),this._data.keys()},t.prototype.values=function(){var t=this,e=this.keys();return S({next:function(){var n=e.next(),a=n.done;return{done:a,value:a?void 0:t.get(n.value)}}})},t.prototype.entries=function(){var t=this,e=this.keys();return S({next:function(){var n=e.next(),a=n.done,r=n.value;return{done:a,value:a?void 0:[r,t.get(r)]}}})},t.prototype.forEach=function(t,e){var n=this;this._keysAtom.reportObserved(),this._data.forEach((function(a,r){return t.call(e,n.get(r),r,n)}))},t.prototype.merge=function(t){var e=this;return De(t)&&(t=t.toJS()),le((function(){var n=Ot(!0);try{h(t)?Object.keys(t).forEach((function(n){return e.set(n,t[n])})):Array.isArray(t)?t.forEach((function(t){var n=M(t,2);return e.set(n[0],n[1])})):m(t)?t.constructor!==Map?o("Cannot initialize from classes that inherit from Map: "+t.constructor.name):t.forEach((function(t,n){return e.set(n,t)})):null!=t&&o("Cannot initialize map from "+t)}finally{St(n)}})),this},t.prototype.clear=function(){var t=this;le((function(){gt((function(){t._data.forEach((function(e,n){return t.delete(n)}))}))}))},t.prototype.replace=function(t){var e=this;return le((function(){var n=function(t){if(m(t)||De(t))return t;if(Array.isArray(t))return new Map(t);if(h(t)){var e=new Map;for(var n in t)e.set(n,t[n]);return e}return o("Cannot convert to map from '"+t+"'")}(t),a=new Map,r=!1;if(T(e._data.keys(),(function(t){if(!n.has(t))if(e.delete(t))r=!0;else{var i=e._data.get(t);a.set(t,i)}})),T(n.entries(),(function(t){var n=M(t,2),i=n[0],s=n[1],u=e._data.has(i);if(e.set(i,s),e._data.has(i)){var o=e._data.get(i);a.set(i,o),u||(r=!0)}})),!r)if(e._data.size!==a.size)e._keysAtom.reportChanged();else for(var i=e._data.keys(),s=a.keys(),u=i.next(),l=s.next();!u.done;){if(u.value!==l.value){e._keysAtom.reportChanged();break}u=i.next(),l=s.next()}e._data=a})),this},Object.defineProperty(t.prototype,"size",{get:function(){return this._keysAtom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),t.prototype.toPOJO=function(){var t=this,e={};return this.forEach((function(n,a){return e["symbol"==typeof a?a:Le(a)]=t.get(a)})),e},t.prototype.toJS=function(){return new Map(this)},t.prototype.toJSON=function(){return this.toPOJO()},t.prototype.toString=function(){var t=this;return this.name+"[{ "+v(this.keys()).map((function(e){return Le(e)+": "+t.get(e)})).join(", ")+" }]"},t.prototype.observe=function(t,e){return ge(this,t)},t.prototype.intercept=function(t){return ce(this,t)},t}();function Le(t){return t&&t.toString?t.toString():new String(t).toString()}O(Ee.prototype,(function(){return this.entries()})),p(Ee.prototype,I(),"Map");var De=b("ObservableMap",Ee),Pe={},Me=function(){function t(t,e,n){if(void 0===e&&(e=Y),void 0===n&&(n="ObservableSet@"+u()),this.name=n,this.$mobx=Pe,this._data=new Set,this._atom=A(this.name),"function"!=typeof Set)throw new Error("mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js");this.enhancer=function(t,a){return e(t,a,n)},t&&this.replace(t)}return t.prototype.dehanceValue=function(t){return void 0!==this.dehancer?this.dehancer(t):t},t.prototype.clear=function(){var t=this;le((function(){gt((function(){t._data.forEach((function(e){t.delete(e)}))}))}))},t.prototype.forEach=function(t,e){var n=this;this._atom.reportObserved(),this._data.forEach((function(a){t.call(e,a,a,n)}))},Object.defineProperty(t.prototype,"size",{get:function(){return this._atom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),t.prototype.add=function(t){var e=this;if(ct(this._atom),de(this)&&!(r=fe(this,{type:"add",object:this,newValue:t})))return this;if(!this.has(t)){le((function(){e._data.add(e.enhancer(t,void 0)),e._atom.reportChanged()}));var n=Bt(),a=he(this),r=a||n?{type:"add",object:this,newValue:t}:null;a&&pe(this,r)}return this},t.prototype.delete=function(t){var e=this;if(de(this)&&!(r=fe(this,{type:"delete",object:this,oldValue:t})))return!1;if(this.has(t)){var n=Bt(),a=he(this),r=a||n?{type:"delete",object:this,oldValue:t}:null;return le((function(){e._atom.reportChanged(),e._data.delete(t)})),a&&pe(this,r),!0}return!1},t.prototype.has=function(t){return this._atom.reportObserved(),this._data.has(this.dehanceValue(t))},t.prototype.entries=function(){var t=0,e=v(this.keys()),n=v(this.values());return S({next:function(){var a=t;return t+=1,a<n.length?{value:[e[a],n[a]],done:!1}:{done:!0}}})},t.prototype.keys=function(){return this.values()},t.prototype.values=function(){this._atom.reportObserved();var t,e=this,n=0;return void 0!==this._data.values?t=v(this._data.values()):(t=[],this._data.forEach((function(e){return t.push(e)}))),S({next:function(){return n<t.length?{value:e.dehanceValue(t[n++]),done:!1}:{done:!0}}})},t.prototype.replace=function(t){var e=this;return qe(t)&&(t=t.toJS()),le((function(){var n=Ot(!0);try{Array.isArray(t)||y(t)?(e.clear(),t.forEach((function(t){return e.add(t)}))):null!=t&&o("Cannot initialize set from "+t)}finally{St(n)}})),this},t.prototype.observe=function(t,e){return ge(this,t)},t.prototype.intercept=function(t){return ce(this,t)},t.prototype.toJS=function(){return new Set(this)},t.prototype.toString=function(){return this.name+"[ "+v(this.keys()).join(", ")+" ]"},t}();O(Me.prototype,(function(){return this.values()})),p(Me.prototype,I(),"Set");var qe=b("ObservableSet",Me),je=function(){function t(t,e,n){this.target=t,this.name=e,this.defaultEnhancer=n,this.values={}}return t.prototype.read=function(t,e){if(this.target===t||(this.illegalAccess(t,e),this.values[e]))return this.values[e].get()},t.prototype.write=function(t,e,n){var a=this.target;a!==t&&this.illegalAccess(t,e);var r=this.values[e];if(r instanceof Nt)r.set(n);else{if(de(this)){if(!(u=fe(this,{type:"update",object:a,name:e,newValue:n})))return;n=u.newValue}if((n=r.prepareNewValue(n))!==kt.UNCHANGED){var i=he(this),s=Bt(),u=i||s?{type:"update",object:a,oldValue:r.value,name:e,newValue:n}:null;s&&Yt(P(P({},u),{name:this.name,key:e})),r.setNewValue(n),i&&pe(this,u),s&&Ut()}}},t.prototype.remove=function(t){if(this.values[t]){var e=this.target;if(de(this)&&!(i=fe(this,{object:e,name:t,type:"remove"})))return;try{Pt();var n=he(this),a=Bt(),r=this.values[t].get();this.keys&&this.keys.remove(t),delete this.values[t],delete this.target[t];var i=n||a?{type:"remove",object:e,oldValue:r,name:t}:null;a&&Yt(P(P({},i),{name:this.name,key:t})),n&&pe(this,i),a&&Ut()}finally{Mt()}}},t.prototype.illegalAccess=function(t,e){console.warn("Property '"+e+"' of '"+t+"' was accessed through the prototype chain. Use 'decorate' instead to declare the prop or access it statically through it's owner")},t.prototype.observe=function(t,e){return ge(this,t)},t.prototype.intercept=function(t){return ce(this,t)},t.prototype.getKeys=function(){var t=this;return void 0===this.keys&&(this.keys=new Oe(Object.keys(this.values).filter((function(e){return t.values[e]instanceof It})),H,"keys("+this.name+")",!0)),this.keys.slice()},t}();function Fe(t,e,n){void 0===e&&(e=""),void 0===n&&(n=Y);var a=t.$mobx;return a||(h(t)||(e=(t.constructor.name||"ObservableObject")+"@"+u()),e||(e="ObservableObject@"+u()),p(t,"$mobx",a=new je(t,e,n)),a)}var Ve=Object.create(null),Ge=Object.create(null);function Be(t){return t.$mobx||(G(t),t.$mobx)}var ze=b("ObservableObjectAdministration",je);function Ye(t){return!!f(t)&&(G(t),ze(t.$mobx))}function He(t,e){if("object"==typeof t&&null!==t){if(Ae(t))return void 0!==e&&o(!1),t.$mobx.atom;if(qe(t))return t.$mobx;if(De(t)){var n=t;return void 0===e?n._keysAtom:((a=n._data.get(e)||n._hasMap.get(e))||o(!1),a)}var a;if(G(t),Ye(t))return e?((a=t.$mobx.values[e])||o(!1),a):o(!1);if(R(t)||Ct(t)||Gt(t))return t}else if("function"==typeof t&&Gt(t.$mobx))return t.$mobx;return o(!1)}var Ue=Object.prototype.toString;function We(t,e,n){return void 0===n&&(n=-1),function t(e,n,a,r,i){if(e===n)return 0!==e||1/e==1/n;if(null==e||null==n)return!1;if(e!=e)return n!=n;var s=typeof e;if("function"!==s&&"object"!==s&&"object"!=typeof n)return!1;e=Ke(e),n=Ke(n);var u=Ue.call(e);if(u!==Ue.call(n))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+e==""+n;case"[object Number]":return+e!=+e?+n!=+n:0==+e?1/+e==1/n:+e==+n;case"[object Date]":case"[object Boolean]":return+e==+n;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(n)}var o="[object Array]"===u;if(!o){if("object"!=typeof e||"object"!=typeof n)return!1;var l=e.constructor,d=n.constructor;if(l!==d&&!("function"==typeof l&&l instanceof l&&"function"==typeof d&&d instanceof d)&&"constructor"in e&&"constructor"in n)return!1}if(0===a)return!1;a<0&&(a=-1),i=i||[];for(var c=(r=r||[]).length;c--;)if(r[c]===e)return i[c]===n;if(r.push(e),i.push(n),o){if((c=e.length)!==n.length)return!1;for(;c--;)if(!t(e[c],n[c],a-1,r,i))return!1}else{var f=Object.keys(e),h=void 0;if(c=f.length,Object.keys(n).length!==c)return!1;for(;c--;)if(!$e(n,h=f[c])||!t(e[h],n[h],a-1,r,i))return!1}return r.pop(),i.pop(),!0}(t,e,n)}function Ke(t){return Ae(t)?t.peek():m(t)||De(t)||y(t)||qe(t)?v(t.entries()):t}function $e(t,e){return Object.prototype.hasOwnProperty.call(t,e)}"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:function(t){return kt.spyListeners.push(t),d((function(){kt.spyListeners=kt.spyListeners.filter((function(e){return e!==t}))}))},extras:{getDebugName:function(t,e){return(void 0!==e?He(t,e):Ye(t)||De(t)||qe(t)?function t(e,n){return e||o("Expecting some object"),void 0!==n?t(He(e,n)):R(e)||Ct(e)||Gt(e)||De(e)||qe(e)?e:(G(e),e.$mobx?e.$mobx:void o(!1))}(t):He(t)).name}},$mobx:"$mobx"})},"2ykv":function(t,e,n){!function(t){"use strict";var e="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),n="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),a=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],r=/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i;t.defineLocale("nl-be",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}})}(n("wd/R"))},"2zzJ":function(t,e,n){var a=n("MOZO"),r=n("Wv1A");t.exports=function(t,e){for(var n=0,i=(e=a(e,t)).length;null!=t&&n<i;)t=t[r(e[n++])];return n&&n==i?t:void 0}},"3+CB":function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="ko-KR">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>네비게이션 전환</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>현황판</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>클러스터</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>호스트들</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>모니터들</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>서비스들</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD들</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>설정</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>크러쉬맵</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>메니저 모듈들</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>로그들</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>풀들</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>블럭</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>이미지들</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>미러링</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>파일시스템들</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>오브젝트게이트웨이</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>데몬들</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>사용자</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>버킷들</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>언어선택</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>패널 데이타 로딩 중...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>그라파나 타임 픽커</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>설정 초기화</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>뒤로</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>데이타 로딩 실폐</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>선택된</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>발견된</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>전체</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>이름</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>설명</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>자세한 설명</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>기본값</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>데모 기본값</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>값들</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>저장하기</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>크러쉬맵 보기</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>로딩중...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>호스트이름</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>이 필드는 필수적입니다.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>예, 확실합니다.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>취소</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>닫기</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>호스트 목록들</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>통합 성능치</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>항목들을 찾을 수 없음</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>클러스터 로그들</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>감사 로그들</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>설정 로딩 중</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>설정을 로드할 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>관리모듈 편집하기</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>입력된 값이 유효한 UUID가 아닙니다, 예.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>입력된 값은 유효한 IP주소 여야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>입력된 값은 적어도 하나의 숫자를 필요로 합니다.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>입력 된 값은 숫자 또는 십진수여야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>갱신</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>상태</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>클러스터 ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>몬맵 변경시간</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>몬맵 변경번호</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>정족수 일치번호</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>정족수 모니터상태</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>요구되는 일치번호</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>요구되는 모니터상태</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>정족수에 포함</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>정족수 미포함</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>추가</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>특징들</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>클러스터-수준의 OSD 플레그들</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>제출</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>자세한 옵션...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD 복구 우선순위</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>우선순위</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>우선 순위 값 맞춤 설정</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>이 필드는 요구됩니다!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>값은 0과 1사이어야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>재-조정</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, 선택, 1 {깊이 } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, 선택, 1 {깊이 } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSD 목록들</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>값</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>편집</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>삭제</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>건강상태</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>통계들</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>클라이언트들</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>모든 클라이언트 접근가능</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>주소들</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>필수 입력란</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>반드시 하나 이상의 쉼표로 구분 된 값을 포함해야 함</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>예를들면:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>접근형태</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>클라이언트들 추가</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- 사용가능 클러스터 없음 --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- 클러스터 선택 --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>데몬 추가하기</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>스토리지 백엔드</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- 이용가능한 데이타풀 없음 --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- 스토리지 백엔드 선택 --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>객체 게이트웨이 사용자</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- 사용가능한 사용자들 없음 --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- 객체 게이트웨이 사용자 선택 --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS 사용자 ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- 사용가능한 클라이언트 없음 --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- cephx 클라이언트 선택 --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS 이름</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>보안 레이블</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>보안 레이블 사용</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS 경로</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>경로는 \'/\'로 시작해야하며 그 뒤에 단어가 올 수 있습니다</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>새로운 디렉토리가 만들어 질 것입니다</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>경로</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>경로는 하나의 \'/\' 또는 하나의 단어 일 수 있습니다</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>새로운 버킷이 만들어 질 것입니다</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS 프로토콜</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS 태크</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>클라이언트는 하위 디렉토리를 마운트 할 수 없습니다 (즉, Tag = foo 인 경우 클라이언트가 foo / baz를 마운트하지 못할 수 있습니다).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>다른 태그 옵션을 사용하면 같은 경로를 여러 번 내보낼 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>다른 Pseudo 옵션을 사용하면 동일한 경로를 여러 번 내보낼 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- 사용가능한 접근형태 없음 --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- 접근형태 선택 --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- 사용가능한 squash 없음 --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- 어떤 종류의 사용자 ID 스쿼시가 수행되는지 선택하세요 --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>전송프로토콜</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Ceph 사용을 환영합니다.</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>사용자이름이 필요합니다</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>암호가 필요합니다</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>로그인</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>미안합니다. 사용자가 Ceph내에 존재하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>금지됨</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>미안합니다. 당신이 요청할 것을 열람하는 것이 허락되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD 설정들</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>로컬 구성 값을 제거하십시오. 상위 구성 값은 계승되고 대신 사용됩니다.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>최소값은 0입니다.</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>풀 목록들</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>이름은 영숫자, 대시 및 밑줄로만 구성 될 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>선택한 Erasure Code 프로파일 이름이 이미 사용 중입니다.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>플러그인</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>데이터 덩어리들 (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>반드시 2보다 크거나 같아야합니다.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>코딩 덩어리들 (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>반드시 1보다 크거나 같아야합니다.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>내구성 평가(c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>지역 (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>크러쉬 실패 도메인</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>크러쉬 지역</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>없음</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>기술</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>패킷크기</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>크러쉬루트</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>크러쉬 장치 클래스</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>모든</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>디렉토리</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>이름...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>선택한 Ceph 풀이름이 이미 사용중입니다.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>풀 형태</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- 풀 형태 선택 --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>게재위치 그룹</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>적어도 하나의 게재위치 그룹이 필요함!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>클러스터는 이 많은 PG들를 처리 할 수 없습니다. 필요한 PG 양을 다시 계산하십시오.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>계산 도움말</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>복제되는 크기</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>플레그들</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC 덮어쓰기</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>응용프로그램들</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Erasure Code 프로파일</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- 사용가능한 Erasure Code 프로파일 없음 --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- 한개의 Erasure Code 프로파일 선택 --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>크러쉬 룰셋</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- 크러쉬 룰 선택 --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>크러쉬 룰</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>크러쉬 단계들</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>압축</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>양식</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>알고리즘</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- 이용가능한 Erasure 압축알고리즘 없음 --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>최소 blob 크기</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>예) 128KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>값은 0보다 커야합니다</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>최대 blob 크기</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>예) 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>값은 최소 blob 크기보다 커야 합니다</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>비율</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>압축율</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>값은 0.0과 1.0 사이 여야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>예., 100 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>세부설명</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>성능 세부정보들</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>케쉬 계층들 상세설명들</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>이미지를 휴지통에 이동</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>보호가 만료되는 </target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>보호되지 않음</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>날짜 형식 오류. "YYYY-MM-DD HH:mm:ss" 형식으로 지정하세요.</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>보호기간이 이미 만료되었습니다. 더 미래의 날짜를 선택하거나 공란으로 남겨두세요.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>이미지 옮기기</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>개관</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>타겟들</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>인증 탐색</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>사용자</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>사용자이름은 8~64자까지 길이의 문자들을 가져야 하며 그리고, 오직 , \'.\', \'@\', \'-\', \'_\', \':\' 등의 특수 문자들만을 포함가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>암호</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>공동 사용자</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>공통 암호</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>이용가능한 정보:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>iSCSI 타겟이 이용 불가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>풀</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>데이타 풀</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>생성된</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>크기</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>오브젝트들</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>객체크기</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>준비된</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>이용불가</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>준비된 총계</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>스트라이핑 단위</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>스트라이핑 횟수</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>상위</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>블록 이름 접두사</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>순서</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>스냅삿</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>이미지</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>이 설정은 전역 값을 덮어씁니다.</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>글로벌</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>이것은 전역 값입니다. 이 이미지에 대해 이 옵션의 값이 설정되지 않았습니다.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' 와 \'@\' 문자는 사용불가입니다.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- 이용가능한 rbd풀 없음 --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- 풀 선택 --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>전용 데이타 풀들을 사용하세요</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>데이타 풀</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>RBD의 객체-데이타를 저장하고 있는 전용 풀</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>사이즈를 증가시켜야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>자세한</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>분산저장</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>분산저장단위</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- 분산저장단위 선택 --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>분산저장 개수가 정의되어 있으므로 이 필드는 필수입니다!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>분산저장단위는 객체크기보다 커야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>분산저장 갯수</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>분산저장 단위가 정의되어 있으므로 이 필드는 필수입니다!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>분산저장 갯수는 반드시 0보다 커야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>롤백하려고 합니다.</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>휴지통 비우기</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>모든</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>풀:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>풀 이름:</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>이미지 복구하기</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>복구를 위해</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>이미지들의 새로운 이름을 입력하고 클릭하세요</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>새로운 이름</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>폐기될</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>까지 보호됨</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSI 토폴로지</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>기본설정 값들로 부터 인자를 변경하는 것은 일반적으로 필요하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>설정들</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>백스토어</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>확인</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>고급설정들</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>타겟 IQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN이 잘못된 패턴을 가지고 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Key\n예를들면: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>추가 정보</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>이 타겟은 고급설정들을 수정했습니다.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>포털</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>포털 추가</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>이 이미지는 설정들을 수정했습니다. </target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>이미지 추가</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL 인증</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>개시자들</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>개시자들</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>클라이언트 IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>개시자 IQN은 유일해야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>사용자이름은 8~64자까지 길이의 문자들을 가져야 하며 그리고, 오직 , \'.\', \'@\', \'-\', \'_\', \':\' 등의 특수 문자들만 포함이 가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>개시자는 하나의 그룹에 속해야 하고, 이미지는 그룹안에서 설정합니다.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>추가된 아이템들이 없음</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>게시자 추가</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>그룹들</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>그룹</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>그룹추가</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>휴지통</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>이슈들</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>동기화중</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>준비됨</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>풀 미러모드를 편집하기</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>상대방 클러스터들은 미러를 단절하기 전에 반드시 제거되어야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>클러스터 이름</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>클러스터 이름이 유효하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX 아이디</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX 아이디...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX 아이디가 유효하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>모니터 주소들</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>콤마로 분리된 주소들...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>모니터 주소가 유효하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX 키</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64로 인코딩 된 키 ...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephX 키는 반드시 base64로 인코드 되어야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>성능 카운터들을 사용 할 수 없음</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>데몬 목록들</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>성능 카운터</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>버킷데이타 적재 중</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>아이디</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>값이 유효하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>선택한 이름이 이미 사용중입니다.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>소유자</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- 사용자 선택 --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>이용가능</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>아이디</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>색인형식</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>위치규칙</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>표시</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>최대 마커</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>버젼</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>마스터 버젼</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>수정된 시간</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>제로그룹</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>버킷 할당량</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>최대 크기</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>무제한</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>최대 객체들</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>사용자명</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- 사용자명 선택 --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>자동생성된 키</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>접근 키</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>비밀 키</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>전체 이름</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>전자우편 주소</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>유예되다.</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>시스템</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>최대 버킷들</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>보조사용자들</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>능력치들</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>사용자 할당량</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>보기</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>키들</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>형태</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- 형태 선택 --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>권한</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- 권한 선택 --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>보조사용자</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>선택한 보조사용자 아이디가 이미 사용중입니다.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>읽기, 쓰기</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>가득찬</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>스위프트 키</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>자동생선된 비밀</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>사용자 데이타 적재 중...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>사용자 데이타를 적재할 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>선택된 사용자 아이디가 이미 사용 중입니다.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>이것은 유효한 전자우편 주소가 아닙니다.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>선택한 전자우편 주소가 이미 사용 중입니다.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>최대 버킷들</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>설정해제됨</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>커스텀</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3 키</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>보조사용자가 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>키가 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>스위프트</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>능력치가 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>무제한 크기</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>최대 크기</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>무제한 객체들</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>최대 객체들</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>입력된 값은 반드시 0보다 커야 합니다.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>세부설명...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>권한들</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>역할들</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>암호 확인</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>암호 확인이 암호와 일치하지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>전자우편</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>유효하지않는 전자우편.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>당신의 사용자로부터 "사용자 읽기 / 업데이트"권한을 제거하려고합니다.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>계속하면 모든 사용자에게 역할을 추가하거나 제거 할 수 없게됩니다.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>계속 진행하기를 원하십니까?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>도움말</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>문서</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>대하여</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>대쉬보드 설정</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>사용자 관리</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>로그인된 사용자</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>로그아웃</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>속성들 (OSD 맵)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>메타데이타 사용할 수 없음</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>메타데이타</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>성능 카운터</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>쓰기</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>읽기</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>히스토그램</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>현재 값들</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>최소</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>최대</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>소스</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>수준</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>수행시간에 갱신가능함(편집가능)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>테크들</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>열거형 값들</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>추가로 더보기</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>클러스터 상태</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>관리자 데몬들</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>오브젝트 게이트웨이들</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>메타데이타 서버들</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI 게이트웨이들</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>클라이언트 IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>클라이언트 처리량</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>클라이언트 읽기/쓰기</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>복구 처리량</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>세정작업</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>성능</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>원시용량</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>OSD당 PG들</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>PG 상태들</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>용량</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>순위</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>현재</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>업데이트된 검색 인증</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>사용가능한 포탈들이 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>사용가능한 이미지들이 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>사용할 수있는 이미지가 없습니다. 대상에 이미지를 추가했는지 확인하십시오.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>사용할 수있는 개시자가 없습니다. 대상에 개시자를 추가했는지 확인하십시오.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>타겟</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>상태</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>읽은 바이트들</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>쓰기 바이트들</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>읽기 Ops</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>쓰기 Ops</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O 이래로</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>인스탄스</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>이슈</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>진행중</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>편집모드</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>상대방 추가</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>상대방 편집</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>상대방 삭제</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>리더</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># 로컬</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># 원격</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>상대방 미러</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>키</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>딥 패턴</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>계층화</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>배타적인 락</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>오프젝트-맵(배타적인-락을 요구한다)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>저널링(배탁적인-락을 요구합니다.)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>보호안됨</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>RBD 스냅샷 롤백</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>롤백</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBD 스냅샷</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>삭제될 </target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>아이디</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>형태</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>상태</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>버젼</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>호스트</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>루트</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>대기 데몬들</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>순위</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>데몬</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>활동</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>덴트리들</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>아이노드들</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>사용량</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>갱신된</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>이 값은 런타임에 업데이트 할 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>데몬들 / 클라이언트들은 모니터 구성 데이터베이스에서이 값을 가져 오지 않습니다. \'ceph config set ...\'을 통해이 옵션을 설정하는 것은 허락되지 않습니다. 이 옵션은 ceph.conf 또는 명령 줄을 통해 구성해야합니다.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>옵션은 데몬 시작 중에 만 적용됩니다.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>옵션은 클러스터 생성할 때 만 영향을 줍니다.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>옵션은 데몬 생성할 때만 영향을줍니다.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>서비스</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>현재값</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>편집가능</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>사용가능</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>사용불가</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>재-접속 중, 기다려 주세요...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>공개 주소</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>열린 세션들</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>들어올 수 없는</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>이전에 마크 아웃 된 OSD는 시작시 다시 표시되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>나갈 수 없는</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD들은 구성된 간격 후에는 자동으로 표시되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>살아나지 않는</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSD는 시작할 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>죽일 수 없는</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>모니터가 OSD들의 다운을 표시하지 않도록 OSD 장애 보고서가 무시되고 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>멈출</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>읽기와 쓰기를 멈춤</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>스크러빙 않됨</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>스크러빙이 비활성화되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>딥 스크럽 안됨</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>딥 스크러빙이 비활성되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>백필 없음</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>PG들의 백필이 일시중지 되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>복구 않됨</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>PG들의 복구가 일시중지 되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>비트단위 정렬</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>비트단위 정렬을 사용하세요</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>완전삭제된 스냅디렉토리들</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD들이 변화된 스냅셋을 가지고 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>삭제된 복구들</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>피어링 대신 복구 중에 수행된 삭제물들</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>PG 로그 하드 한계</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>pg 로그 길이에 하드 한계를 넣으세요</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>갱신된 OSD 플래그들</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>아웃</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>인</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>다운</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>표시</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD 손실</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>손실 표시</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>완전제거</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>완전제거된</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>파괴됨</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>파괴된</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>삭제</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>파괴됨</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>읽은 바이트들</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>쓰여진 바이트들</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>읽기 ops</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>쓰기 ops</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>최대 백필들</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>최대 활성화를 복구하기</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>최대 단일 시작을 복구하기</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>잠자기를 복구하기</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>일</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>심각도</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>시작된</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>사용된</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>이용가능:</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>깨끗한</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>정상동작중</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>경고</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>알려지지 않은</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>정상</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>파일시스템들 없음</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>활성화된</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>대기중인</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>이용불가</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>활성화된 데몬들</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>정족수</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>NFS Ganesha 서비스가 설정되지 않음</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>전송</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS 사용자</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFS 파일시스템</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(전역 구성에서 상속)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>전역 구성에서 상속</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>- 어떤 종류의 사용자 ID 스쿼시가 수행되는지 선택 -</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>사용가능한 데몬이 없읍니다.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>캐쉬모드</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>최소 퇴거 연령</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>최소 플러시 연령</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>목표 최대 바이트들</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>목표 최대 오브젝트들</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>추가된 응용프로그램 없음</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>응용프로그램 한계에 도달함</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>하나의 풀은 오직 네개의 응용프로그램 정의들을 가질 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target> \'_a-zA-Z0-9\' 문자들만 허락됨</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>최대 길이는 128글자이다.</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>필터 또는 추가된 응용프로그램들</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>응용프로그램 추가</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>Erasure 코드 프로파일</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>복제 크기</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>마지막 변경</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Erasure 코드화된 프로파일</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>크러쉬 룰셋</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>버킷</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>버킷들</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>사용자</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>사용자들</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>범위</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>읽기</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>만들기</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>시스템 롤</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>갱신된 사용자</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>계속</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>당신의 롤들이 변경되어 당신은 자동적으로 로그아웃되었습니다.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>각각의 오브젝트들은 데이타-청크 부분들로 분리되어, 각기 다른 OSD에 보관됩니다.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>각 오브젝트들에 대한 코딩 청크를 계산하고 서로 다른 OSD에 저장합니다. \n코딩된 청크의 수는 데이터 손실없이 작동중지 되어 질 수있는 OSD의 숫자이기도합니다.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Jerasure 플러그인은 가장 일반적이고 유연한 플러그인으로,\n또한 Ceph erasure 코드 풀의 기본값이기도합니다.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>보다 유연한 기술은 reed_sol_van입니다 : k와 m을 설정하면 충분합니다. \ncauchy_good 기술은 빠를 수 있지만 패킷크기를 주의깊게 선택해야합니다. \nreed_sol_r6_op, liberation, blaum_roth, liber8tion은 모두 m = 2로만 구성 할 수 있다는 점에서 RAID-6에 해당합니다.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>인코딩은 한번에 바이트들 크기의 패킷에 대해 수행됩니다. 올바른 패킷 크기를 선택하는 것은 어렵습니다. jerasure 문서에는이 주제에 대한 광범위한 정보가 들어 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>jerasure 플러그인을 사용하면 삭제 된 코딩 된 객체가 여러 OSD에 저장 될 때 하나의 OSD가 손실되는 것을 복구하려면 다른 모든 OSD를 읽어야합니다. 예를 들어 jerasure가 k = 8 및 m = 4로 구성되어있는 경우 하나의 OSD를 잃어 버리면 11 명의 다른 사람들이 수리해야합니다.\nlrc erasure code plugin은 적은 양의 OSD를 사용하여 복구 할 수 있도록 로컬 패리티 청크를 만듭니다. 예를 들어, lrc가 k = 8, m = 4 및 l = 4로 구성된 경우 4 개의 OSD마다 추가 패리티 덩어리가 생성됩니다. 단일 OSD가 손실되면 11 개 대신 4 개의 OSD만으로 복구 할 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>코딩 및 데이터 청크를 크기 지역 집합으로 그룹화합니다. 예를 들어, k = 4 및 m = 2에 대해, 지역성 = 3 일 때 두 개의 세 그룹이 생성됩니다. 각 세트는 다른 세트의 청크를 읽지 않고도 복구 될 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>l로 정의 된 각 청크 집합이 저장되는 크러시 버킷의 유형입니다. 예를 들어 랙으로 설정하면 l 개의 청크 그룹이 각각 다른 랙에 배치됩니다. \n랙 선택 단계와 같은 CRUSH 규칙 단계를 만드는 데 사용됩니다. 설정되어 있지 않으면, 그러한 그룹화가 수행되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>isa 플러그인은 ISA 라이브러리를 캡슐화합니다. 인텔 프로세서에서만 실행됩니다.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>ISA 플러그인은 두 개의 리드 솔로몬 형식으로 제공됩니다.\nreed_sol_van이 설정되면 Vandermonde, cauchy가 설정되면 Cauchy입니다.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>shec plugin은 다중 SHEC 라이브러리를 캡슐화합니다.\n           ceph가 리드 솔로몬 코드보다 더 효율적으로 데이터를 복구 할 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>각 데이터 청크가 계산 범위에 포함되는 패리티 청크의 수입니다. 이 수치는 내구성 측정기로 사용됩니다. 예를 들어, c = 2 인 경우 2 개의 OSD가 데이터 손실없이 중단 될 수 있습니다.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>CRUSH 규칙의 첫 번째 단계에 사용 된 크러시 버킷의 이름입니다. 예를 들어 step은 기본값을 취합니다.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>동일한 실패 도메인을 가진 양동이에 두 개의 청크가 없는지 확인하십시오. 예를 들어 실패 도메인이 호스트 인 경우 두 개의 청크가 동일한 호스트에 저장되지 않습니다. 이 단계는 리프 호스트를 선택하는 단계와 같은 CRUSH 규칙 단계를 만드는 데 사용됩니다.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>CRUSH지도에서 크래시 장치 클래스 이름을 사용하여 특정 클래스 (예 : ssd 또는 hdd)의 장치로 배치를 제한합니다.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>삭제 코드 플러그인이로드되는 디렉토리 이름을 설정하십시오.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>모든 작업들 허용</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>오직 서버를 수정하지 않는 작업들만 가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>읽기와 쓰기 작업은 허용되지 않지만, 그외 모든 작업이 가능합니다.</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>파일의 속성과 디렉토리 내용을 변경하는 읽기, 쓰기 또는 어떠한 작업은 허용되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>전혀 어떠한 접근도 허용되지 않습니다.</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- 우선순위 선택 --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>낮음</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>높음</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>정보</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>마지막 5분</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>지난 15분</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>지난 30분</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>지난 1시간(기본)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>지난 3시간</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>지난 6시간</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>지난 12시간</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>지난 24시간</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>어제</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>오늘</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>오늘 지금까지</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>그저께</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>지난 2일</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>이번 주 마지막날</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>전주</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>이번주</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>이번주 지금까지</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>지난 7일</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>지난 달</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>이번 달</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>이번 달 지금까지</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>지난 30일</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>지난 90일</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>지난 6개월</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>지난 1년</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>전년도</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>금년도</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>금년 지금까지</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>지난 2년</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>지난 5년</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>선택된 아이템 없음</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>다시 선택하기 위해 아이템 선택을 취소</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>선택 한계에 도달함</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>필터 테그들</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>베찌 추가</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>사용가능한 아이템 없음</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>복제</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>복사</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>딥 스크럽</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>파괴됨</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>단조로움</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>다운 표시</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>인 표시</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>손실 표시</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>아웃 표시</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>보호</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>이름변경</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>복구</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>휴지통으로 옮기기</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>보호않됨</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>삭제돔</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>복제된</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>복사된</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>평평하게 됨</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>완전삭제됨</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>복구됨</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>롤백됨</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>예</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>아니오</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>서비스 량</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS 한계</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>원하는 초당 IO 바이트 수 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS 제한</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>원하는 초당 IO 작업 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>읽기 BPS 제한</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>원하는 초당 읽기 바이스 수 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>읽기 IOPS 한도</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>원하는 초당 읽기 작업 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>쓰기 BPS 한도</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>원하는 초당 쓰기 바이트 수 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>쓰기 IOPS 제한</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>원하는 초당 쓰기 작업 제한입니다.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>원하는 버스트 IO 바이트 한도 입니다.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>원하는 IO 작업의 버스트 한계입니다.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>읽기 BPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>원하는 읽기 버스트 한계입니다.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>읽기 IOPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>원하는 읽기 작업의 버스트 한도입니다.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>쓰기 BPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>쓰기 바이트의 원하는 버스트 한도.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>쓰기 IOPS 버스트</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>쓰기 바이트의 원하는 버스트 한도.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>수행중</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>수행</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>수행된</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>알려지지 않는 작업</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>생성하는 중</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>생성</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>갱신 중</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>갱신</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>삭제 중</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>복제중</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>복제</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>복사중</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>복사</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>평평하게 하는 중</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>평평함</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>롤백 중</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>롤백</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>옮기는 중</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>옮기기</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>옮겨짐</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>이미지를 찾을 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>복구중</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>복구</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>완전삭제 중</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>완전삭제</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>모든 풀들</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>피어가 포함되어 있기 때문에 미러링을 비활성화 할 수 없습니다.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"33Wh":function(t,e,n){var a=n("yoRg"),r=n("eDl+");t.exports=Object.keys||function(t){return a(t,r)}},"372+":function(t,e,n){var a=n("LaC8"),r=n("0GLT"),i=n("x3F9");t.exports=function(t){return"string"==typeof t||!r(t)&&i(t)&&"[object String]"==a(t)}},"38Bd":function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return i})),n.d(e,"c",(function(){return r})),n.d(e,"d",(function(){return u}));var a=n("hpHm");class r{constructor(){this.animate=!1,this.max=100}}class i{constructor(t){this.isStacked=!1,this.addClass=!0,this.bars=[],this._max=100,Object.assign(this,t)}set animate(t){this._animate=t,this.bars.forEach(e=>{e.animate=t})}set striped(t){this._striped=t,this.bars.forEach(e=>{e.striped=t})}set value(t){this.isStacked=Array.isArray(t),this._value=t}get isBs3(){return Object(a.d)()}get max(){return this._max}set max(t){this._max=t,this.bars.forEach(t=>{t.recalculatePercentage()})}addBar(t){t.animate=this._animate,t.striped=this._striped,this.bars.push(t)}removeBar(t){this.bars.splice(this.bars.indexOf(t),1)}}class s{constructor(t,e,n){this.el=t,this.renderer=n,this.addClass=!0,this.percent=0,this.progress=e}get type(){return this._type}set type(t){this._type=t,this.applyTypeClasses()}get value(){return this._value}set value(t){(t||0===t)&&(this._value=t,this.recalculatePercentage())}get setBarWidth(){return this.recalculatePercentage(),this.percent}get isBs3(){return Object(a.d)()}ngOnInit(){this.progress.addBar(this)}ngOnDestroy(){this.progress.removeBar(this)}recalculatePercentage(){this.percent=+(this.value/this.progress.max*100).toFixed(2);const t=this.progress.bars.reduce((function(t,e){return t+e.percent}),0);t>100&&(this.percent-=t-100)}applyTypeClasses(){if(this._prevType){const t="bg-"+this._prevType;this.renderer.removeClass(this.el.nativeElement,"progress-bar-"+this._prevType),this.renderer.removeClass(this.el.nativeElement,t),this._prevType=null}if(this._type){const t="bg-"+this._type;this.renderer.addClass(this.el.nativeElement,"progress-bar-"+this._type),this.renderer.addClass(this.el.nativeElement,t),this._prevType=this._type}}}class u{static forRoot(){return{ngModule:u,providers:[r]}}}},"3E1r":function(t,e,n){!function(t){"use strict";var e={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};t.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",LTS:"A h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm बजे",LLLL:"dddd, D MMMM YYYY, A h:mm बजे"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",ss:"%d सेकंड",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(t){return t.replace(/[१२३४५६७८९०]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(t,e){return 12===t&&(t=0),"रात"===e?t<4?t:t+12:"सुबह"===e?t:"दोपहर"===e?t>=10?t:t+12:"शाम"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"रात":t<10?"सुबह":t<17?"दोपहर":t<20?"शाम":"रात"},week:{dow:0,doy:6}})}(n("wd/R"))},"3ENo":function(t,e,n){var a=n("Ytn0");t.exports=function(t){return a(this,t).has(t)}},"3N8a":function(t,e,n){"use strict";var a=n("quSY");class r extends a.a{constructor(t,e){super()}schedule(t,e=0){return this}}n.d(e,"a",(function(){return i}));class i extends r{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,a=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(a,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(a,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,a=void 0;try{this.work(t)}catch(r){n=!0,a=!!r&&r||new Error(r)}if(n)return this.unsubscribe(),a}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,a=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==a&&n.splice(a,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}},"3a3P":function(t,e,n){var a=n("2zzJ");t.exports=function(t){return function(e){return a(e,t)}}},"3bBZ":function(t,e,n){var a=n("2oRo"),r=n("/byt"),i=n("4mDm"),s=n("kRJp"),u=n("tiKp"),o=u("iterator"),l=u("toStringTag"),d=i.values;for(var c in r){var f=a[c],h=f&&f.prototype;if(h){if(h[o]!==d)try{s(h,o,d)}catch(p){h[o]=d}if(h[l]||s(h,l,c),r[c])for(var g in i)if(h[g]!==i[g])try{s(h,g,i[g])}catch(p){h[g]=i[g]}}}},"43VP":function(t,e,n){var a=n("SDUG"),r=n("TAQX")(a);t.exports=r},"4DD9":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){let e=!1;switch(t){case!0:case 1:case"y":case"yes":case"t":case"true":case"on":case"1":e=!0}return e}}},"4Dmd":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},i=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},s=function(){function t(t,e,n){this.renderer=t,this.templateRef=e,this.viewContainerRef=n}return Object.defineProperty(t.prototype,"isOpen",{set:function(t){t?(this._show(),this.isEnabled&&!1===this._isOpen&&this._animateOpen()):this.isEnabled?this._animateClose():this._hide(),this._isOpen=!!t},enumerable:!0,configurable:!0}),t.prototype._show=function(){this.innerElement||(this.innerElement=this.viewContainerRef.createEmbeddedView(this.templateRef).rootNodes[0])},t.prototype._hide=function(){this.viewContainerRef.clear(),this.innerElement=null},t.prototype._animateOpen=function(){var t=this,e=this.animateSpeed,n=this.animateAcceleration,a=0;this.renderer.setStyle(this.innerElement,"max-height","0"),setTimeout((function(){var r=setInterval((function(){if(!t._isOpen||!t.innerElement)return clearInterval(r);var i=Math.round(a+=e);t.renderer.setStyle(t.innerElement,"max-height",i+"px");var s=t.innerElement.getBoundingClientRect?t.innerElement.getBoundingClientRect().height:0;e*=n,n*=1.005,s<i&&(t.renderer.setStyle(t.innerElement,"max-height",null),clearInterval(r))}),17)}))},t.prototype._animateClose=function(){var t=this;if(this.innerElement)var e=this.animateSpeed,n=this.animateAcceleration,a=this.innerElement.getBoundingClientRect().height,r=setInterval((function(){if(t._isOpen||!t.innerElement)return clearInterval(r);t.renderer.setStyle(t.innerElement,"max-height",(a-=e)+"px"),e*=n,n*=1.005,a<=0&&(t.viewContainerRef.clear(),t.innerElement=null,clearInterval(r))}),17)},r([Object(a.Input)("treeAnimateOpenSpeed"),i("design:type",Number)],t.prototype,"animateSpeed",void 0),r([Object(a.Input)("treeAnimateOpenAcceleration"),i("design:type",Number)],t.prototype,"animateAcceleration",void 0),r([Object(a.Input)("treeAnimateOpenEnabled"),i("design:type",Boolean)],t.prototype,"isEnabled",void 0),r([Object(a.Input)("treeAnimateOpen"),i("design:type",Boolean),i("design:paramtypes",[Boolean])],t.prototype,"isOpen",null),r([Object(a.Directive)({selector:"[treeAnimateOpen]"}),i("design:paramtypes",[a.Renderer2,a.TemplateRef,a.ViewContainerRef])],t)}()},"4HWh":function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("KOzp"),s=n("z/SZ"),u=n("2uy1");n("p4Cf"),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return d}));var o=a["ɵcrt"]({encapsulation:0,styles:[["i[_ngcontent-%COMP%]{color:#2b99a8;cursor:pointer;padding-left:4px}"]],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"div",[],[[8,"className",0],[8,"innerHTML",1]],null,null,null,null)),a["ɵncd"](null,0),(t()(),a["ɵand"](0,null,null,0))],null,(function(t,e){var n=e.component;t(e,0,0,n.class,n.html)}))}function d(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,[["popoverTpl",2]],null,0,null,l)),(t()(),a["ɵeld"](1,16777216,null,null,4,"i",[["aria-hidden","true"],["container","body"],["placement","bottom"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==n.preventDefault()&&a),a}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](3,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](4,1),a["ɵdid"](5,212992,null,0,i.c,[i.a,a.ElementRef,a.Renderer2,a.ViewContainerRef,s.a,u.a],{popover:[0,"popover"],placement:[1,"placement"],outsideClick:[2,"outsideClick"],container:[3,"container"]},null)],(function(t,e){var n=t(e,4,0,e.component.icons.questionCircle);t(e,3,0,n),t(e,5,0,a["ɵnov"](e,0),"bottom",!0,"body")}),null)}},"4I5i":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>{function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t})()},"4MV3":function(t,e,n){!function(t){"use strict";var e={1:"૧",2:"૨",3:"૩",4:"૪",5:"૫",6:"૬",7:"૭",8:"૮",9:"૯",0:"૦"},n={"૧":"1","૨":"2","૩":"3","૪":"4","૫":"5","૬":"6","૭":"7","૮":"8","૯":"9","૦":"0"};t.defineLocale("gu",{months:"જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર".split("_"),monthsShort:"જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.".split("_"),monthsParseExact:!0,weekdays:"રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર".split("_"),weekdaysShort:"રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ".split("_"),weekdaysMin:"ર_સો_મં_બુ_ગુ_શુ_શ".split("_"),longDateFormat:{LT:"A h:mm વાગ્યે",LTS:"A h:mm:ss વાગ્યે",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm વાગ્યે",LLLL:"dddd, D MMMM YYYY, A h:mm વાગ્યે"},calendar:{sameDay:"[આજ] LT",nextDay:"[કાલે] LT",nextWeek:"dddd, LT",lastDay:"[ગઇકાલે] LT",lastWeek:"[પાછલા] dddd, LT",sameElse:"L"},relativeTime:{future:"%s મા",past:"%s પેહલા",s:"અમુક પળો",ss:"%d સેકંડ",m:"એક મિનિટ",mm:"%d મિનિટ",h:"એક કલાક",hh:"%d કલાક",d:"એક દિવસ",dd:"%d દિવસ",M:"એક મહિનો",MM:"%d મહિનો",y:"એક વર્ષ",yy:"%d વર્ષ"},preparse:function(t){return t.replace(/[૧૨૩૪૫૬૭૮૯૦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/રાત|બપોર|સવાર|સાંજ/,meridiemHour:function(t,e){return 12===t&&(t=0),"રાત"===e?t<4?t:t+12:"સવાર"===e?t:"બપોર"===e?t>=10?t:t+12:"સાંજ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"રાત":t<10?"સવાર":t<17?"બપોર":t<20?"સાંજ":"રાત"},week:{dow:0,doy:6}})}(n("wd/R"))},"4WOD":function(t,e,n){var a=n("UTVS"),r=n("ewvW"),i=n("93I0"),s=n("4Xet"),u=i("IE_PROTO"),o=Object.prototype;t.exports=s?Object.getPrototypeOf:function(t){return t=r(t),a(t,u)?t[u]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?o:null}},"4Xet":function(t,e,n){var a=n("0Dky");t.exports=!a((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},"4a5m":function(t,e,n){var a=n("zAeO");t.exports=function(t){var e=a(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}},"4dOw":function(t,e,n){!function(t){"use strict";t.defineLocale("en-ie",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},"4l63":function(t,e,n){var a=n("I+eb"),r=n("wg0c");a({global:!0,forced:parseInt!=r},{parseInt:r})},"4mDm":function(t,e,n){"use strict";var a=n("/GqU"),r=n("RNIs"),i=n("P4y1"),s=n("afO8"),u=n("fdAy"),o=s.set,l=s.getterFor("Array Iterator");t.exports=u(Array,"Array",(function(t,e){o(this,{type:"Array Iterator",target:a(t),index:0,kind:e})}),(function(){var t=l(this),e=t.target,n=t.kind,a=t.index++;return!e||a>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:a,done:!1}:"values"==n?{value:e[a],done:!1}:{value:[a,e[a]],done:!1}}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},"4syw":function(t,e,n){var a=n("busE");t.exports=function(t,e,n){for(var r in e)a(t,r,e[r],n);return t}},"5+tZ":function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("ZUHj"),r=n("l7GE"),i=n("51Dv"),s=n("lJxs"),u=n("Cfvw");function o(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?a=>a.pipe(o((n,a)=>Object(u.a)(t(n,a)).pipe(Object(s.a)((t,r)=>e(n,t,a,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new l(t,n)))}class l{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new d(t,this.project,this.concurrent))}}class d extends r.a{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active<this.concurrent?this._tryNext(t):this.buffer.push(t)}_tryNext(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(a){return void this.destination.error(a)}this.active++,this._innerSub(e,t,n)}_innerSub(t,e,n){const r=new i.a(this,e,n),s=this.destination;s.add(r);const u=Object(a.a)(this,t,void 0,void 0,r);u!==r&&s.add(u)}_complete(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()}notifyNext(t,e,n,a,r){this.destination.next(e)}notifyComplete(t){const e=this.buffer;this.remove(t),this.active--,e.length>0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}},"51Dv":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");class r extends a.a{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}},"5DBd":function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length;++n<a&&!1!==e(t[n],n,t););return t}},"5EpR":function(t,e,n){var a=n("jNLg");t.exports=function(t){return t?(t=a(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}},"5itS":function(t,e){var n=Object.prototype;t.exports=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||n)}},"6+QB":function(t,e,n){!function(t){"use strict";t.defineLocale("ms",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(t,e){return 12===t&&(t=0),"pagi"===e?t:"tengahari"===e?t>=11?t:t+12:"petang"===e||"malam"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"pagi":t<15?"tengahari":t<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n("wd/R"))},"6B0Y":function(t,e,n){!function(t){"use strict";var e={1:"១",2:"២",3:"៣",4:"៤",5:"៥",6:"៦",7:"៧",8:"៨",9:"៩",0:"០"},n={"១":"1","២":"2","៣":"3","៤":"4","៥":"5","៦":"6","៧":"7","៨":"8","៩":"9","០":"0"};t.defineLocale("km",{months:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),weekdaysMin:"អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/ព្រឹក|ល្ងាច/,isPM:function(t){return"ល្ងាច"===t},meridiem:function(t,e,n){return t<12?"ព្រឹក":"ល្ងាច"},calendar:{sameDay:"[ថ្ងៃនេះ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",ss:"%d វិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},dayOfMonthOrdinalParse:/ទី\d{1,2}/,ordinal:"ទី%d",preparse:function(t){return t.replace(/[១២៣៤៥៦៧៨៩០]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},week:{dow:1,doy:4}})}(n("wd/R"))},"6II+":function(t,e,n){var a=n("R8cQ");t.exports=function(t){return null==t?"":a(t)}},"6JNq":function(t,e,n){var a=n("UTVS"),r=n("Vu81"),i=n("Bs8V"),s=n("m/L8");t.exports=function(t,e){for(var n=r(e),u=s.f,o=i.f,l=0;l<n.length;l++){var d=n[l];a(t,d)||u(t,d,o(e,d))}}},"6LWA":function(t,e,n){var a=n("xrYK");t.exports=Array.isArray||function(t){return"Array"==a(t)}},"6MU2":function(t,e){t.exports=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}},"6VoE":function(t,e,n){var a=n("tiKp"),r=n("P4y1"),i=a("iterator"),s=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||s[i]===t)}},"6eui":function(t,e,n){var a=n("hmSm"),r=n("5itS"),i=n("l2xC"),s=Object.prototype.hasOwnProperty;t.exports=function(t){if(!a(t))return i(t);var e=r(t),n=[];for(var u in t)("constructor"!=u||!e&&s.call(t,u))&&n.push(u);return n}},"6qls":function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("tz6c");class a{constructor(t,e){this.docService=t,this.i18n=e,this.docText=this.i18n("documentation")}ngOnInit(){this.docService.subscribeOnce(this.section,t=>{this.docUrl=t})}}},"7+rY":function(t,e,n){var a=n("bQrF"),r=n("MOZO"),i=n("Uies"),s=n("hmSm"),u=n("Wv1A");t.exports=function(t,e,n,o){if(!s(t))return t;for(var l=-1,d=(e=r(e,t)).length,c=d-1,f=t;null!=f&&++l<d;){var h=u(e[l]),g=n;if("__proto__"===h||"constructor"===h||"prototype"===h)return t;if(l!=c){var p=f[h];void 0===(g=o?o(p,h,f):void 0)&&(g=s(p)?p:i(e[l+1])?[]:{})}a(f,h,g),f=f[h]}return t}},"77kF":function(t,e,n){var a=n("bQrF"),r=n("ZPW6");t.exports=function(t,e,n,i){var s=!n;n||(n={});for(var u=-1,o=e.length;++u<o;){var l=e[u],d=i?i(n[l],t[l],l,n,t):void 0;void 0===d&&(d=t[l]),s?r(n,l,d):a(n,l,d)}return n}},"7BjC":function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={s:["mõne sekundi","mõni sekund","paar sekundit"],ss:[t+"sekundi",t+"sekundit"],m:["ühe minuti","üks minut"],mm:[t+" minuti",t+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[t+" tunni",t+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[t+" kuu",t+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[t+" aasta",t+" aastat"]};return e?r[n][2]?r[n][2]:r[n][1]:a?r[n][0]:r[n][1]}t.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:"%d päeva",M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},"7Igq":function(t,e){t.exports=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}},"7Nlv":function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(!e(t[n],n,t))return!1;return!0}},"7VGY":function(t,e,n){var a=n("7Nlv"),r=n("BkBO"),i=n("l9nr"),s=n("0GLT"),u=n("QUkU");t.exports=function(t,e,n){var o=s(t)?a:r;return n&&u(t,e,n)&&(e=void 0),o(t,i(e,3))}},"7aV9":function(t,e,n){!function(t){"use strict";t.defineLocale("si",{months:"ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්".split("_"),monthsShort:"ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ".split("_"),weekdays:"ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා".split("_"),weekdaysShort:"ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන".split("_"),weekdaysMin:"ඉ_ස_අ_බ_බ්‍ර_සි_සෙ".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"a h:mm",LTS:"a h:mm:ss",L:"YYYY/MM/DD",LL:"YYYY MMMM D",LLL:"YYYY MMMM D, a h:mm",LLLL:"YYYY MMMM D [වැනි] dddd, a h:mm:ss"},calendar:{sameDay:"[අද] LT[ට]",nextDay:"[හෙට] LT[ට]",nextWeek:"dddd LT[ට]",lastDay:"[ඊයේ] LT[ට]",lastWeek:"[පසුගිය] dddd LT[ට]",sameElse:"L"},relativeTime:{future:"%sකින්",past:"%sකට පෙර",s:"තත්පර කිහිපය",ss:"තත්පර %d",m:"මිනිත්තුව",mm:"මිනිත්තු %d",h:"පැය",hh:"පැය %d",d:"දිනය",dd:"දින %d",M:"මාසය",MM:"මාස %d",y:"වසර",yy:"වසර %d"},dayOfMonthOrdinalParse:/\d{1,2} වැනි/,ordinal:function(t){return t+" වැනි"},meridiemParse:/පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,isPM:function(t){return"ප.ව."===t||"පස් වරු"===t},meridiem:function(t,e,n){return t>11?n?"ප.ව.":"පස් වරු":n?"පෙ.ව.":"පෙර වරු"}})}(n("wd/R"))},"7o/Q":function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("n6bG"),r=n("gRHU"),i=n("quSY"),s=n("2QA8"),u=n("2fFW"),o=n("NJ4a");class l extends i.a{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=r.a;break;case 1:if(!t){this.destination=r.a;break}if("object"==typeof t){t instanceof l?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new d(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new d(this,t,e,n)}}[s.a](){return this}static create(t,e,n){const a=new l(t,e,n);return a.syncErrorThrowable=!1,a}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class d extends l{constructor(t,e,n,i){let s;super(),this._parentSubscriber=t;let u=this;Object(a.a)(e)?s=e:e&&(s=e.next,n=e.error,i=e.complete,e!==r.a&&(u=Object.create(e),Object(a.a)(u.unsubscribe)&&this.add(u.unsubscribe.bind(u)),u.unsubscribe=this.unsubscribe.bind(this))),this._context=u,this._next=s,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;u.a.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=u.a;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):Object(o.a)(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;Object(o.a)(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);u.a.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),u.a.useDeprecatedSynchronousErrorHandling)throw n;Object(o.a)(n)}}__tryOrSetError(t,e,n){if(!u.a.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(a){return u.a.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=a,t.syncErrorThrown=!0,!0):(Object(o.a)(a),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}},"7qid":function(t,e,n){"use strict";n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return f}));var a=n("8Y7J"),r=n("38Bd"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function u(t){return a["ɵvid"](0,[a["ɵncd"](null,0)],null,null)}var o=a["ɵcrt"]({encapsulation:0,styles:["[_nghost-%COMP%] {\n      width: 100%;\n      display: flex;\n    }"],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bar",[["aria-valuemin","0"],["role","progressbar"]],[[2,"progress-bar-animated",null],[2,"progress-bar-striped",null],[2,"active",null],[1,"aria-valuenow",0],[1,"aria-valuetext",0],[1,"aria-valuemax",0],[4,"height","%"],[4,"width","%"],[2,"progress-bar",null]],null,null,u,s)),a["ɵdid"](1,245760,null,0,r.a,[a.ElementRef,r.b,a.Renderer2],{type:[0,"type"],value:[1,"value"]},null),a["ɵncd"](0,0)],(function(t,e){var n=e.component;t(e,1,0,n.type,n._value)}),(function(t,e){t(e,0,0,!a["ɵnov"](e,1).isBs3&&a["ɵnov"](e,1).animate,a["ɵnov"](e,1).striped,a["ɵnov"](e,1).isBs3&&a["ɵnov"](e,1).animate,a["ɵnov"](e,1).value,a["ɵnov"](e,1).percent?a["ɵnov"](e,1).percent.toFixed(0)+"%":"",a["ɵnov"](e,1).max,"100",a["ɵnov"](e,1).setBarWidth,a["ɵnov"](e,1).addClass)}))}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bar",[["aria-valuemin","0"],["role","progressbar"]],[[2,"progress-bar-animated",null],[2,"progress-bar-striped",null],[2,"active",null],[1,"aria-valuenow",0],[1,"aria-valuetext",0],[1,"aria-valuemax",0],[4,"height","%"],[4,"width","%"],[2,"progress-bar",null]],null,null,u,s)),a["ɵdid"](1,245760,null,0,r.a,[a.ElementRef,r.b,a.Renderer2],{type:[0,"type"],value:[1,"value"]},null),(t()(),a["ɵted"](2,0,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.type,e.context.$implicit.value)}),(function(t,e){t(e,0,0,!a["ɵnov"](e,1).isBs3&&a["ɵnov"](e,1).animate,a["ɵnov"](e,1).striped,a["ɵnov"](e,1).isBs3&&a["ɵnov"](e,1).animate,a["ɵnov"](e,1).value,a["ɵnov"](e,1).percent?a["ɵnov"](e,1).percent.toFixed(0)+"%":"",a["ɵnov"](e,1).max,"100",a["ɵnov"](e,1).setBarWidth,a["ɵnov"](e,1).addClass),t(e,2,0,e.context.$implicit.label)}))}function c(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](1,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component._value)}),null)}function f(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](3,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,!n.isStacked),t(e,3,0,n.isStacked)}),null)}},"8+Q7":function(t,e){var n=Object.prototype.hasOwnProperty;t.exports=function(t){var e=t.length,a=new t.constructor(e);return e&&"string"==typeof t[0]&&n.call(t,"index")&&(a.index=t.index,a.input=t.input),a}},"8+is":function(t,e,n){var a=n("IWUC"),r=n("0nKi"),i=n("L0Z1"),s=i&&i.isSet,u=s?r(s):a;t.exports=u},"8/+R":function(t,e,n){!function(t){"use strict";var e={1:"੧",2:"੨",3:"੩",4:"੪",5:"੫",6:"੬",7:"੭",8:"੮",9:"੯",0:"੦"},n={"੧":"1","੨":"2","੩":"3","੪":"4","੫":"5","੬":"6","੭":"7","੮":"8","੯":"9","੦":"0"};t.defineLocale("pa-in",{months:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),monthsShort:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),weekdays:"ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ".split("_"),weekdaysShort:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),weekdaysMin:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),longDateFormat:{LT:"A h:mm ਵਜੇ",LTS:"A h:mm:ss ਵਜੇ",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm ਵਜੇ",LLLL:"dddd, D MMMM YYYY, A h:mm ਵਜੇ"},calendar:{sameDay:"[ਅਜ] LT",nextDay:"[ਕਲ] LT",nextWeek:"[ਅਗਲਾ] dddd, LT",lastDay:"[ਕਲ] LT",lastWeek:"[ਪਿਛਲੇ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ਵਿੱਚ",past:"%s ਪਿਛਲੇ",s:"ਕੁਝ ਸਕਿੰਟ",ss:"%d ਸਕਿੰਟ",m:"ਇਕ ਮਿੰਟ",mm:"%d ਮਿੰਟ",h:"ਇੱਕ ਘੰਟਾ",hh:"%d ਘੰਟੇ",d:"ਇੱਕ ਦਿਨ",dd:"%d ਦਿਨ",M:"ਇੱਕ ਮਹੀਨਾ",MM:"%d ਮਹੀਨੇ",y:"ਇੱਕ ਸਾਲ",yy:"%d ਸਾਲ"},preparse:function(t){return t.replace(/[੧੨੩੪੫੬੭੮੯੦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,meridiemHour:function(t,e){return 12===t&&(t=0),"ਰਾਤ"===e?t<4?t:t+12:"ਸਵੇਰ"===e?t:"ਦੁਪਹਿਰ"===e?t>=10?t:t+12:"ਸ਼ਾਮ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"ਰਾਤ":t<10?"ਸਵੇਰ":t<17?"ਦੁਪਹਿਰ":t<20?"ਸ਼ਾਮ":"ਰਾਤ"},week:{dow:0,doy:6}})}(n("wd/R"))},"85J/":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){const e=/ceph version\s+([^ ]+)\s+\(.+\)/.exec(t);return e?e[1]:t}}},"8SuI":function(t,e,n){t.exports=n("K3g9")},"8Tpr":function(t,e,n){var a=n("r2+u"),r=n("0nKi"),i=n("L0Z1"),s=i&&i.isMap,u=s?r(s):a;t.exports=u},"8V0S":function(t,e,n){var a=n("6MU2"),r=Math.max;t.exports=function(t,e,n){return e=r(void 0===e?t.length-1:e,0),function(){for(var i=arguments,s=-1,u=r(i.length-e,0),o=Array(u);++s<u;)o[s]=i[e+s];s=-1;for(var l=Array(e+1);++s<e;)l[s]=i[s];return l[e]=n(o),a(t,this,l)}}},"8Y7J":function(t,e,n){"use strict";n.r(e);var a=n("XNiG"),r=n("quSY"),i=n("HDdC"),s=n("VRyK"),u=n("7o/Q");function o(){return function(t){return t.lift(new l(t))}}class l{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const a=new d(t,n),r=e.subscribe(a);return a.closed||(a.connection=n.connect()),r}}class d extends u.a{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,a=t._connection;this.connection=null,!a||n&&a!==n||a.unsubscribe()}}class c extends i.a{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new r.a,t.add(this.source.subscribe(new h(this.getSubject(),this))),t.closed&&(this._connection=null,t=r.a.EMPTY)),t}refCount(){return o()(this)}}const f=(()=>{const t=c.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class h extends a.b{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function g(){return new a.a}n.d(e,"ɵangular_packages_core_core_q",(function(){return fv})),n.d(e,"ɵangular_packages_core_core_n",(function(){return lv})),n.d(e,"ɵangular_packages_core_core_o",(function(){return dv})),n.d(e,"ɵangular_packages_core_core_p",(function(){return cv})),n.d(e,"ɵangular_packages_core_core_r",(function(){return hv})),n.d(e,"ɵangular_packages_core_core_f",(function(){return xm})),n.d(e,"ɵangular_packages_core_core_l",(function(){return lf})),n.d(e,"ɵangular_packages_core_core_m",(function(){return bf})),n.d(e,"ɵangular_packages_core_core_k",(function(){return Wy})),n.d(e,"ɵangular_packages_core_core_j",(function(){return Uy})),n.d(e,"ɵangular_packages_core_core_b",(function(){return ot})),n.d(e,"ɵangular_packages_core_core_a",(function(){return at})),n.d(e,"ɵangular_packages_core_core_c",(function(){return yo})),n.d(e,"ɵangular_packages_core_core_d",(function(){return io})),n.d(e,"ɵangular_packages_core_core_e",(function(){return fo})),n.d(e,"ɵangular_packages_core_core_i",(function(){return Py})),n.d(e,"ɵangular_packages_core_core_s",(function(){return ty})),n.d(e,"ɵangular_packages_core_core_u",(function(){return Zm})),n.d(e,"ɵangular_packages_core_core_t",(function(){return $m})),n.d(e,"ɵangular_packages_core_core_x",(function(){return Xm})),n.d(e,"ɵangular_packages_core_core_v",(function(){return Jm})),n.d(e,"ɵangular_packages_core_core_w",(function(){return Qm})),n.d(e,"ɵangular_packages_core_core_ba",(function(){return Sg})),n.d(e,"ɵangular_packages_core_core_bb",(function(){return xa})),n.d(e,"ɵangular_packages_core_core_bc",(function(){return Ae})),n.d(e,"ɵangular_packages_core_core_bd",(function(){return Ge})),n.d(e,"ɵangular_packages_core_core_be",(function(){return rn})),n.d(e,"ɵangular_packages_core_core_bm",(function(){return ca})),n.d(e,"ɵangular_packages_core_core_bl",(function(){return ve})),n.d(e,"ɵangular_packages_core_core_g",(function(){return $s})),n.d(e,"ɵangular_packages_core_core_h",(function(){return Zs})),n.d(e,"ɵangular_packages_core_core_bg",(function(){return Cr})),n.d(e,"ɵangular_packages_core_core_bk",(function(){return Ot})),n.d(e,"ɵangular_packages_core_core_bh",(function(){return x})),n.d(e,"ɵangular_packages_core_core_bi",(function(){return _})),n.d(e,"ɵangular_packages_core_core_bn",(function(){return R})),n.d(e,"ɵangular_packages_core_core_y",(function(){return dg})),n.d(e,"ɵangular_packages_core_core_z",(function(){return Vf})),n.d(e,"createPlatform",(function(){return Sy})),n.d(e,"assertPlatform",(function(){return Ny})),n.d(e,"destroyPlatform",(function(){return Cy})),n.d(e,"getPlatform",(function(){return Ry})),n.d(e,"PlatformRef",(function(){return Ay})),n.d(e,"ApplicationRef",(function(){return Ey})),n.d(e,"createPlatformFactory",(function(){return Iy})),n.d(e,"NgProbeToken",(function(){return Oy})),n.d(e,"enableProdMode",(function(){return Ka})),n.d(e,"isDevMode",(function(){return Wa})),n.d(e,"APP_ID",(function(){return vm})),n.d(e,"PACKAGE_ROOT_URL",(function(){return Im})),n.d(e,"PLATFORM_INITIALIZER",(function(){return wm})),n.d(e,"PLATFORM_ID",(function(){return Om})),n.d(e,"APP_BOOTSTRAP_LISTENER",(function(){return Sm})),n.d(e,"APP_INITIALIZER",(function(){return mm})),n.d(e,"ApplicationInitStatus",(function(){return ym})),n.d(e,"DebugElement",(function(){return uv})),n.d(e,"DebugEventListener",(function(){return Hy})),n.d(e,"DebugNode",(function(){return sv})),n.d(e,"asNativeElements",(function(){return Ky})),n.d(e,"getDebugNode",(function(){return rv})),n.d(e,"Testability",(function(){return py})),n.d(e,"TestabilityRegistry",(function(){return by})),n.d(e,"setTestabilityGetter",(function(){return yy})),n.d(e,"TRANSLATIONS",(function(){return Rm})),n.d(e,"TRANSLATIONS_FORMAT",(function(){return Am})),n.d(e,"LOCALE_ID",(function(){return Cm})),n.d(e,"MissingTranslationStrategy",(function(){return km})),n.d(e,"ApplicationModule",(function(){return gv})),n.d(e,"wtfCreateScope",(function(){return ny})),n.d(e,"wtfLeave",(function(){return ay})),n.d(e,"wtfStartTimeRange",(function(){return ry})),n.d(e,"wtfEndTimeRange",(function(){return iy})),n.d(e,"Type",(function(){return nu})),n.d(e,"EventEmitter",(function(){return tb})),n.d(e,"ErrorHandler",(function(){return Da})),n.d(e,"Sanitizer",(function(){return vr})),n.d(e,"SecurityContext",(function(){return yr})),n.d(e,"Attribute",(function(){return N})),n.d(e,"ANALYZE_FOR_ENTRY_COMPONENTS",(function(){return vo})),n.d(e,"ContentChild",(function(){return To})),n.d(e,"ContentChildren",(function(){return _o})),n.d(e,"Query",(function(){return xo})),n.d(e,"ViewChild",(function(){return Oo})),n.d(e,"ViewChildren",(function(){return wo})),n.d(e,"Component",(function(){return nm})),n.d(e,"Directive",(function(){return em})),n.d(e,"HostBinding",(function(){return sm})),n.d(e,"HostListener",(function(){return um})),n.d(e,"Input",(function(){return rm})),n.d(e,"Output",(function(){return im})),n.d(e,"Pipe",(function(){return am})),n.d(e,"NgModule",(function(){return gm})),n.d(e,"CUSTOM_ELEMENTS_SCHEMA",(function(){return Pa})),n.d(e,"NO_ERRORS_SCHEMA",(function(){return Ma})),n.d(e,"ViewEncapsulation",(function(){return wt})),n.d(e,"Version",(function(){return uf})),n.d(e,"VERSION",(function(){return of})),n.d(e,"InjectFlags",(function(){return C})),n.d(e,"ɵɵdefineInjectable",(function(){return k})),n.d(e,"defineInjectable",(function(){return E})),n.d(e,"ɵɵdefineInjector",(function(){return L})),n.d(e,"forwardRef",(function(){return V})),n.d(e,"resolveForwardRef",(function(){return G})),n.d(e,"Injectable",(function(){return Ou})),n.d(e,"Injector",(function(){return Bu})),n.d(e,"ɵɵinject",(function(){return rt})),n.d(e,"inject",(function(){return it})),n.d(e,"INJECTOR",(function(){return $})),n.d(e,"ReflectiveInjector",(function(){return mo})),n.d(e,"ResolvedReflectiveFactory",(function(){return oo})),n.d(e,"ReflectiveKey",(function(){return to})),n.d(e,"InjectionToken",(function(){return K})),n.d(e,"Inject",(function(){return T})),n.d(e,"Optional",(function(){return w})),n.d(e,"Self",(function(){return O})),n.d(e,"SkipSelf",(function(){return S})),n.d(e,"Host",(function(){return I})),n.d(e,"NgZone",(function(){return oy})),n.d(e,"ɵNoopNgZone",(function(){return gy})),n.d(e,"RenderComponentType",(function(){return Jc})),n.d(e,"Renderer",(function(){return Xc})),n.d(e,"Renderer2",(function(){return af})),n.d(e,"RendererFactory2",(function(){return ef})),n.d(e,"RendererStyleFlags2",(function(){return nf})),n.d(e,"RootRenderer",(function(){return tf})),n.d(e,"COMPILER_OPTIONS",(function(){return Hm})),n.d(e,"Compiler",(function(){return Ym})),n.d(e,"CompilerFactory",(function(){return Um})),n.d(e,"ModuleWithComponentFactories",(function(){return Dm})),n.d(e,"ComponentFactory",(function(){return Vc})),n.d(e,"ɵComponentFactory",(function(){return Vc})),n.d(e,"ComponentRef",(function(){return Fc})),n.d(e,"ComponentFactoryResolver",(function(){return Yc})),n.d(e,"ElementRef",(function(){return Kc})),n.d(e,"NgModuleFactory",(function(){return ht})),n.d(e,"NgModuleRef",(function(){return ft})),n.d(e,"NgModuleFactoryLoader",(function(){return Dy})),n.d(e,"getModuleFactory",(function(){return qy})),n.d(e,"QueryList",(function(){return nb})),n.d(e,"SystemJsNgModuleLoader",(function(){return Gy})),n.d(e,"SystemJsNgModuleLoaderConfig",(function(){return Fy})),n.d(e,"TemplateRef",(function(){return Of})),n.d(e,"ViewContainerRef",(function(){return Nf})),n.d(e,"EmbeddedViewRef",(function(){return Yy})),n.d(e,"ViewRef",(function(){return zy})),n.d(e,"ChangeDetectionStrategy",(function(){return xt})),n.d(e,"ChangeDetectorRef",(function(){return Xs})),n.d(e,"DefaultIterableDiffer",(function(){return cf})),n.d(e,"IterableDiffers",(function(){return vf})),n.d(e,"KeyValueDiffers",(function(){return xf})),n.d(e,"SimpleChange",(function(){return Tc})),n.d(e,"WrappedValue",(function(){return Mo})),n.d(e,"platformCore",(function(){return ov})),n.d(e,"ɵALLOW_MULTIPLE_PLATFORMS",(function(){return wy})),n.d(e,"ɵAPP_ID_RANDOM_PROVIDER",(function(){return _m})),n.d(e,"ɵdefaultIterableDiffers",(function(){return Tf})),n.d(e,"ɵdefaultKeyValueDiffers",(function(){return wf})),n.d(e,"ɵdevModeEqual",(function(){return Po})),n.d(e,"ɵisListLikeIterable",(function(){return qo})),n.d(e,"ɵChangeDetectorStatus",(function(){return _t})),n.d(e,"ɵisDefaultChangeDetectionStrategy",(function(){return Tt})),n.d(e,"ɵConsole",(function(){return Nm})),n.d(e,"ɵsetCurrentInjector",(function(){return et})),n.d(e,"ɵgetInjectableDef",(function(){return D})),n.d(e,"ɵAPP_ROOT",(function(){return Nu})),n.d(e,"ɵDEFAULT_LOCALE_ID",(function(){return Dg})),n.d(e,"ɵivyEnabled",(function(){return Lm})),n.d(e,"ɵCodegenComponentFactoryResolver",(function(){return Hc})),n.d(e,"ɵclearResolutionOfComponentResourcesQueue",(function(){return Ro})),n.d(e,"ɵresolveComponentResources",(function(){return So})),n.d(e,"ɵReflectionCapabilities",(function(){return ou})),n.d(e,"ɵRenderDebugInfo",(function(){return Qc})),n.d(e,"ɵ_sanitizeHtml",(function(){return br})),n.d(e,"ɵ_sanitizeStyle",(function(){return Tr})),n.d(e,"ɵ_sanitizeUrl",(function(){return Qa})),n.d(e,"ɵglobal",(function(){return U})),n.d(e,"ɵlooseIdentical",(function(){return Do})),n.d(e,"ɵstringify",(function(){return j})),n.d(e,"ɵmakeDecorator",(function(){return y})),n.d(e,"ɵisObservable",(function(){return ed})),n.d(e,"ɵisPromise",(function(){return td})),n.d(e,"ɵclearOverrides",(function(){return zx})),n.d(e,"ɵinitServicesIfNeeded",(function(){return rx})),n.d(e,"ɵoverrideComponentView",(function(){return Bx})),n.d(e,"ɵoverrideProvider",(function(){return Gx})),n.d(e,"ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR",(function(){return mg})),n.d(e,"ɵgetLocalePluralCase",(function(){return Eg})),n.d(e,"ɵfindLocaleData",(function(){return Lg})),n.d(e,"ɵLOCALE_DATA",(function(){return Cg})),n.d(e,"ɵLocaleDataIndex",(function(){return Rg})),n.d(e,"ɵɵattribute",(function(){return Wo})),n.d(e,"ɵɵattributeInterpolate1",(function(){return al})),n.d(e,"ɵɵattributeInterpolate2",(function(){return rl})),n.d(e,"ɵɵattributeInterpolate3",(function(){return il})),n.d(e,"ɵɵattributeInterpolate4",(function(){return sl})),n.d(e,"ɵɵattributeInterpolate5",(function(){return ul})),n.d(e,"ɵɵattributeInterpolate6",(function(){return ol})),n.d(e,"ɵɵattributeInterpolate7",(function(){return ll})),n.d(e,"ɵɵattributeInterpolate8",(function(){return dl})),n.d(e,"ɵɵattributeInterpolateV",(function(){return cl})),n.d(e,"ɵɵdefineBase",(function(){return Bt})),n.d(e,"ɵɵdefineComponent",(function(){return Pt})),n.d(e,"ɵɵdefineDirective",(function(){return zt})),n.d(e,"ɵɵdefinePipe",(function(){return Yt})),n.d(e,"ɵɵdefineNgModule",(function(){return Ft})),n.d(e,"ɵdetectChanges",(function(){return fl})),n.d(e,"ɵrenderComponent",(function(){return bc})),n.d(e,"ɵRender3ComponentFactory",(function(){return Ig})),n.d(e,"ɵRender3ComponentRef",(function(){return Ng})),n.d(e,"ɵɵdirectiveInject",(function(){return Tl})),n.d(e,"ɵɵinjectAttribute",(function(){return wl})),n.d(e,"ɵɵinjectPipeChangeDetectorRef",(function(){return Sb})),n.d(e,"ɵɵgetFactoryOf",(function(){return Ra})),n.d(e,"ɵɵgetInheritedFactory",(function(){return Aa})),n.d(e,"ɵɵsetComponentScope",(function(){return Mt})),n.d(e,"ɵɵsetNgModuleScope",(function(){return Vt})),n.d(e,"ɵɵtemplateRefExtractor",(function(){return Ob})),n.d(e,"ɵɵProvidersFeature",(function(){return jc})),n.d(e,"ɵɵInheritDefinitionFeature",(function(){return Nc})),n.d(e,"ɵɵNgOnChangesFeature",(function(){return wc})),n.d(e,"ɵLifecycleHooksFeature",(function(){return xc})),n.d(e,"ɵRender3NgModuleRef",(function(){return Lp})),n.d(e,"ɵmarkDirty",(function(){return hl})),n.d(e,"ɵNgModuleFactory",(function(){return Dp})),n.d(e,"ɵNO_CHANGE",(function(){return ci})),n.d(e,"ɵɵcontainer",(function(){return gl})),n.d(e,"ɵɵnextContext",(function(){return ud})),n.d(e,"ɵɵelementStart",(function(){return zl})),n.d(e,"ɵɵnamespaceHTML",(function(){return gn})),n.d(e,"ɵɵnamespaceMathML",(function(){return hn})),n.d(e,"ɵɵnamespaceSVG",(function(){return fn})),n.d(e,"ɵɵelement",(function(){return Hl})),n.d(e,"ɵɵlistener",(function(){return nd})),n.d(e,"ɵɵtext",(function(){return wd})),n.d(e,"ɵɵtextInterpolate",(function(){return Sd})),n.d(e,"ɵɵtextInterpolate1",(function(){return Id})),n.d(e,"ɵɵtextInterpolate2",(function(){return Nd})),n.d(e,"ɵɵtextInterpolate3",(function(){return Cd})),n.d(e,"ɵɵtextInterpolate4",(function(){return Rd})),n.d(e,"ɵɵtextInterpolate5",(function(){return Ad})),n.d(e,"ɵɵtextInterpolate6",(function(){return kd})),n.d(e,"ɵɵtextInterpolate7",(function(){return Ed})),n.d(e,"ɵɵtextInterpolate8",(function(){return Ld})),n.d(e,"ɵɵtextInterpolateV",(function(){return Dd})),n.d(e,"ɵɵembeddedViewStart",(function(){return Jl})),n.d(e,"ɵɵprojection",(function(){return fd})),n.d(e,"ɵɵpipeBind1",(function(){return Wp})),n.d(e,"ɵɵpipeBind2",(function(){return Kp})),n.d(e,"ɵɵpipeBind3",(function(){return $p})),n.d(e,"ɵɵpipeBind4",(function(){return Zp})),n.d(e,"ɵɵpipeBindV",(function(){return Jp})),n.d(e,"ɵɵpureFunction0",(function(){return Mp})),n.d(e,"ɵɵpureFunction1",(function(){return qp})),n.d(e,"ɵɵpureFunction2",(function(){return jp})),n.d(e,"ɵɵpureFunction3",(function(){return Fp})),n.d(e,"ɵɵpureFunction4",(function(){return Vp})),n.d(e,"ɵɵpureFunction5",(function(){return Gp})),n.d(e,"ɵɵpureFunction6",(function(){return Bp})),n.d(e,"ɵɵpureFunction7",(function(){return zp})),n.d(e,"ɵɵpureFunction8",(function(){return Yp})),n.d(e,"ɵɵpureFunctionV",(function(){return Hp})),n.d(e,"ɵɵgetCurrentView",(function(){return Xl})),n.d(e,"ɵgetDirectives",(function(){return sc})),n.d(e,"ɵgetHostElement",(function(){return oc})),n.d(e,"ɵɵrestoreView",(function(){return Ve})),n.d(e,"ɵɵcontainerRefreshStart",(function(){return bl})),n.d(e,"ɵɵcontainerRefreshEnd",(function(){return ml})),n.d(e,"ɵɵqueryRefresh",(function(){return cb})),n.d(e,"ɵɵviewQuery",(function(){return hb})),n.d(e,"ɵɵstaticViewQuery",(function(){return fb})),n.d(e,"ɵɵstaticContentQuery",(function(){return mb})),n.d(e,"ɵɵloadViewQuery",(function(){return pb})),n.d(e,"ɵɵcontentQuery",(function(){return bb})),n.d(e,"ɵɵloadContentQuery",(function(){return vb})),n.d(e,"ɵɵelementEnd",(function(){return Yl})),n.d(e,"ɵɵhostProperty",(function(){return Xd})),n.d(e,"ɵɵproperty",(function(){return Ho})),n.d(e,"ɵɵpropertyInterpolate",(function(){return hd})),n.d(e,"ɵɵpropertyInterpolate1",(function(){return gd})),n.d(e,"ɵɵpropertyInterpolate2",(function(){return pd})),n.d(e,"ɵɵpropertyInterpolate3",(function(){return bd})),n.d(e,"ɵɵpropertyInterpolate4",(function(){return md})),n.d(e,"ɵɵpropertyInterpolate5",(function(){return yd})),n.d(e,"ɵɵpropertyInterpolate6",(function(){return vd})),n.d(e,"ɵɵpropertyInterpolate7",(function(){return xd})),n.d(e,"ɵɵpropertyInterpolate8",(function(){return _d})),n.d(e,"ɵɵpropertyInterpolateV",(function(){return Td})),n.d(e,"ɵɵupdateSyntheticHostBinding",(function(){return tc})),n.d(e,"ɵɵcomponentHostSyntheticListener",(function(){return ad})),n.d(e,"ɵɵprojectionDef",(function(){return ld})),n.d(e,"ɵɵreference",(function(){return xl})),n.d(e,"ɵɵenableBindings",(function(){return Ce})),n.d(e,"ɵɵdisableBindings",(function(){return Re})),n.d(e,"ɵɵallocHostVars",(function(){return ko})),n.d(e,"ɵɵelementContainerStart",(function(){return Kl})),n.d(e,"ɵɵelementContainerEnd",(function(){return $l})),n.d(e,"ɵɵelementContainer",(function(){return Zl})),n.d(e,"ɵɵstyling",(function(){return Ol})),n.d(e,"ɵɵstyleMap",(function(){return Al})),n.d(e,"ɵɵstyleSanitizer",(function(){return Sl})),n.d(e,"ɵɵclassMap",(function(){return kl})),n.d(e,"ɵɵclassMapInterpolate1",(function(){return Pd})),n.d(e,"ɵɵclassMapInterpolate2",(function(){return Md})),n.d(e,"ɵɵclassMapInterpolate3",(function(){return qd})),n.d(e,"ɵɵclassMapInterpolate4",(function(){return jd})),n.d(e,"ɵɵclassMapInterpolate5",(function(){return Fd})),n.d(e,"ɵɵclassMapInterpolate6",(function(){return Vd})),n.d(e,"ɵɵclassMapInterpolate7",(function(){return Gd})),n.d(e,"ɵɵclassMapInterpolate8",(function(){return Bd})),n.d(e,"ɵɵclassMapInterpolateV",(function(){return zd})),n.d(e,"ɵɵstyleProp",(function(){return Il})),n.d(e,"ɵɵstylePropInterpolate1",(function(){return Yd})),n.d(e,"ɵɵstylePropInterpolate2",(function(){return Hd})),n.d(e,"ɵɵstylePropInterpolate3",(function(){return Ud})),n.d(e,"ɵɵstylePropInterpolate4",(function(){return Wd})),n.d(e,"ɵɵstylePropInterpolate5",(function(){return Kd})),n.d(e,"ɵɵstylePropInterpolate6",(function(){return $d})),n.d(e,"ɵɵstylePropInterpolate7",(function(){return Zd})),n.d(e,"ɵɵstylePropInterpolate8",(function(){return Jd})),n.d(e,"ɵɵstylePropInterpolateV",(function(){return Qd})),n.d(e,"ɵɵstylingApply",(function(){return Pl})),n.d(e,"ɵɵclassProp",(function(){return Cl})),n.d(e,"ɵɵelementHostAttrs",(function(){return Ul})),n.d(e,"ɵɵselect",(function(){return wi})),n.d(e,"ɵɵtextBinding",(function(){return Od})),n.d(e,"ɵɵtemplate",(function(){return pl})),n.d(e,"ɵɵembeddedViewEnd",(function(){return Ql})),n.d(e,"ɵstore",(function(){return vl})),n.d(e,"ɵɵload",(function(){return _l})),n.d(e,"ɵɵpipe",(function(){return Up})),n.d(e,"ɵwhenRendered",(function(){return _c})),n.d(e,"ɵɵi18n",(function(){return dp})),n.d(e,"ɵɵi18nAttributes",(function(){return cp})),n.d(e,"ɵɵi18nExp",(function(){return gp})),n.d(e,"ɵɵi18nStart",(function(){return np})),n.d(e,"ɵɵi18nEnd",(function(){return sp})),n.d(e,"ɵɵi18nApply",(function(){return pp})),n.d(e,"ɵɵi18nPostprocess",(function(){return ip})),n.d(e,"ɵi18nConfigureLocalize",(function(){return Tp})),n.d(e,"ɵɵi18nLocalize",(function(){return Op})),n.d(e,"ɵsetLocaleId",(function(){return Ip})),n.d(e,"ɵsetClassMetadata",(function(){return Pp})),n.d(e,"ɵɵresolveWindow",(function(){return Tn})),n.d(e,"ɵɵresolveDocument",(function(){return wn})),n.d(e,"ɵɵresolveBody",(function(){return On})),n.d(e,"ɵcompileComponent",(function(){return Bb})),n.d(e,"ɵcompileDirective",(function(){return zb})),n.d(e,"ɵcompileNgModule",(function(){return Eb})),n.d(e,"ɵcompileNgModuleDefs",(function(){return Lb})),n.d(e,"ɵpatchComponentDefWithScope",(function(){return jb})),n.d(e,"ɵresetCompiledComponents",(function(){return Mb})),n.d(e,"ɵflushModuleScopingQueueAsMuchAsPossible",(function(){return Ab})),n.d(e,"ɵtransitiveScopesFor",(function(){return Fb})),n.d(e,"ɵcompilePipe",(function(){return tm})),n.d(e,"ɵɵsanitizeHtml",(function(){return wr})),n.d(e,"ɵɵsanitizeStyle",(function(){return Or})),n.d(e,"ɵɵdefaultStyleSanitizer",(function(){return Ar})),n.d(e,"ɵɵsanitizeScript",(function(){return Nr})),n.d(e,"ɵɵsanitizeUrl",(function(){return Sr})),n.d(e,"ɵɵsanitizeResourceUrl",(function(){return Ir})),n.d(e,"ɵɵsanitizeUrlOrResourceUrl",(function(){return Rr})),n.d(e,"ɵbypassSanitizationTrustHtml",(function(){return Fa})),n.d(e,"ɵbypassSanitizationTrustStyle",(function(){return Va})),n.d(e,"ɵbypassSanitizationTrustScript",(function(){return Ga})),n.d(e,"ɵbypassSanitizationTrustUrl",(function(){return Ba})),n.d(e,"ɵbypassSanitizationTrustResourceUrl",(function(){return za})),n.d(e,"ɵgetLContext",(function(){return Dr})),n.d(e,"ɵNG_ELEMENT_ID",(function(){return Lt})),n.d(e,"ɵNG_COMPONENT_DEF",(function(){return Nt})),n.d(e,"ɵNG_DIRECTIVE_DEF",(function(){return Ct})),n.d(e,"ɵNG_PIPE_DEF",(function(){return Rt})),n.d(e,"ɵNG_MODULE_DEF",(function(){return At})),n.d(e,"ɵNG_BASE_DEF",(function(){return Et})),n.d(e,"ɵNG_INJECTABLE_DEF",(function(){return M})),n.d(e,"ɵNG_INJECTOR_DEF",(function(){return q})),n.d(e,"ɵcompileNgModuleFactory__POST_R3__",(function(){return _y})),n.d(e,"ɵisBoundToModule__POST_R3__",(function(){return Ty})),n.d(e,"ɵSWITCH_COMPILE_COMPONENT__POST_R3__",(function(){return om})),n.d(e,"ɵSWITCH_COMPILE_DIRECTIVE__POST_R3__",(function(){return lm})),n.d(e,"ɵSWITCH_COMPILE_PIPE__POST_R3__",(function(){return dm})),n.d(e,"ɵSWITCH_COMPILE_NGMODULE__POST_R3__",(function(){return pm})),n.d(e,"ɵgetDebugNode__POST_R3__",(function(){return av})),n.d(e,"ɵSWITCH_COMPILE_INJECTABLE__POST_R3__",(function(){return Su})),n.d(e,"ɵSWITCH_IVY_ENABLED__POST_R3__",(function(){return Em})),n.d(e,"ɵSWITCH_CHANGE_DETECTOR_REF_FACTORY__POST_R3__",(function(){return tu})),n.d(e,"ɵCompiler_compileModuleSync__POST_R3__",(function(){return Mm})),n.d(e,"ɵCompiler_compileModuleAsync__POST_R3__",(function(){return jm})),n.d(e,"ɵCompiler_compileModuleAndAllComponentsSync__POST_R3__",(function(){return Vm})),n.d(e,"ɵCompiler_compileModuleAndAllComponentsAsync__POST_R3__",(function(){return Bm})),n.d(e,"ɵSWITCH_ELEMENT_REF_FACTORY__POST_R3__",(function(){return $c})),n.d(e,"ɵSWITCH_TEMPLATE_REF_FACTORY__POST_R3__",(function(){return Sf})),n.d(e,"ɵSWITCH_VIEW_CONTAINER_REF_FACTORY__POST_R3__",(function(){return Cf})),n.d(e,"ɵSWITCH_RENDERER2_FACTORY__POST_R3__",(function(){return rf})),n.d(e,"ɵgetModuleFactory__POST_R3__",(function(){return My})),n.d(e,"ɵregisterNgModuleType",(function(){return Ap})),n.d(e,"ɵpublishGlobalUtil",(function(){return pc})),n.d(e,"ɵpublishDefaultGlobalUtils",(function(){return gc})),n.d(e,"ɵcreateInjector",(function(){return Lu})),n.d(e,"ɵINJECTOR_IMPL__POST_R3__",(function(){return Vu})),n.d(e,"ɵregisterModuleFactory",(function(){return Cp})),n.d(e,"ɵEMPTY_ARRAY",(function(){return Th})),n.d(e,"ɵEMPTY_MAP",(function(){return wh})),n.d(e,"ɵand",(function(){return pv})),n.d(e,"ɵccf",(function(){return Mh})),n.d(e,"ɵcmf",(function(){return Yx})),n.d(e,"ɵcrt",(function(){return Uf})),n.d(e,"ɵdid",(function(){return ug})),n.d(e,"ɵeld",(function(){return bv})),n.d(e,"ɵgetComponentViewDefinitionFactory",(function(){return qh})),n.d(e,"ɵinlineInterpolate",(function(){return xh})),n.d(e,"ɵinterpolate",(function(){return vh})),n.d(e,"ɵmod",(function(){return Rh})),n.d(e,"ɵmpd",(function(){return Ch})),n.d(e,"ɵncd",(function(){return Iv})),n.d(e,"ɵnov",(function(){return Kh})),n.d(e,"ɵpid",(function(){return og})),n.d(e,"ɵprd",(function(){return lg})),n.d(e,"ɵpad",(function(){return Rv})),n.d(e,"ɵpod",(function(){return Av})),n.d(e,"ɵppd",(function(){return Cv})),n.d(e,"ɵqud",(function(){return _v})),n.d(e,"ɵted",(function(){return Ev})),n.d(e,"ɵunv",(function(){return Hf})),n.d(e,"ɵvid",(function(){return Pv}));const p="__annotations__",b="__parameters__",m="__prop__metadata__";function y(t,e,n,a,r){const i=v(e);function s(...t){if(this instanceof s)return i.call(this,...t),this;const e=new s(...t);return function(n){return r&&r(n,...t),(n.hasOwnProperty(p)?n[p]:Object.defineProperty(n,p,{value:[]})[p]).push(e),a&&a(n),n}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s}function v(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}function x(t,e,n){const a=v(e);function r(...t){if(this instanceof r)return a.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,a){const r=t.hasOwnProperty(b)?t[b]:Object.defineProperty(t,b,{value:[]})[b];for(;r.length<=a;)r.push(null);return(r[a]=r[a]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r}function _(t,e,n,a){const r=v(e);function i(...t){if(this instanceof i)return r.apply(this,t),this;const e=new i(...t);return function(n,r){const i=n.constructor,s=i.hasOwnProperty(m)?i[m]:Object.defineProperty(i,m,{value:{}})[m];s[r]=s.hasOwnProperty(r)&&s[r]||[],s[r].unshift(e),a&&a(n,r,...t)}}return n&&(i.prototype=Object.create(n.prototype)),i.prototype.ngMetadataName=t,i.annotationCls=i,i}const T=x("Inject",t=>({token:t})),w=x("Optional"),O=x("Self"),S=x("SkipSelf"),I=x("Host"),N=x("Attribute",t=>({attributeName:t}));var C=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});function R(t){for(let e in t)if(t[e]===R)return e;throw Error("Could not find renamed property on target object.")}function A(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function k(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}const E=k;function L(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function D(t){const e=t[M];return e&&e.token===t?e:null}function P(t){return t&&t.hasOwnProperty(q)?t[q]:null}const M=R({ngInjectableDef:R}),q=R({ngInjectorDef:R});function j(t){if("string"==typeof t)return t;if(t instanceof Array)return"["+t.map(j).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}const F=R({__forward_ref__:R});function V(t){return t.__forward_ref__=V,t.toString=function(){return j(this())},t}function G(t){const e=t;return"function"==typeof e&&e.hasOwnProperty(F)&&e.__forward_ref__===V?e():t}const B="undefined"!=typeof globalThis&&globalThis,z="undefined"!=typeof window&&window,Y="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,H="undefined"!=typeof global&&global,U=B||H||z||Y;function W(){const t=U.ng;if(!t||!t.ɵcompilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n  - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n  - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n  - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return t.ɵcompilerFacade}class K{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ngInjectableDef=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ngInjectableDef=k({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}const $=new K("INJECTOR",-1),Z=new Object,J=/\n/gm,Q=R({provide:String,useValue:R});let X,tt=void 0;function et(t){const e=tt;return tt=t,e}function nt(t){const e=X;return X=t,e}function at(t,e=C.Default){if(void 0===tt)throw new Error("inject() must be called from an injection context");return null===tt?st(t,void 0,e):tt.get(t,e&C.Optional?null:void 0,e)}function rt(t,e=C.Default){return(X||at)(t,e)}const it=rt;function st(t,e,n){const a=D(t);if(a&&"root"==a.providedIn)return void 0===a.value?a.value=a.factory():a.value;if(n&C.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${j(t)}]`)}function ut(t){const e=[];for(let n=0;n<t.length;n++){const a=G(t[n]);if(Array.isArray(a)){if(0===a.length)throw new Error("Arguments array must have arguments.");let t=void 0,n=C.Default;for(let e=0;e<a.length;e++){const r=a[e];r instanceof w||"Optional"===r.ngMetadataName||r===w?n|=C.Optional:r instanceof S||"SkipSelf"===r.ngMetadataName||r===S?n|=C.SkipSelf:r instanceof O||"Self"===r.ngMetadataName||r===O?n|=C.Self:t=r instanceof T||r===T?r.token:r}e.push(rt(t,n))}else e.push(rt(a))}return e}class ot{get(t,e=Z){if(e===Z){const e=new Error(`NullInjectorError: No provider for ${j(t)}!`);throw e.name="NullInjectorError",e}return e}}function lt(t,e,n,a){const r=t.ngTempTokenPath;throw e.__source&&r.unshift(e.__source),t.message=dt("\n"+t.message,r,n,a),t.ngTokenPath=r,t.ngTempTokenPath=null,t}function dt(t,e,n,a=null){t=t&&"\n"===t.charAt(0)&&"ɵ"==t.charAt(1)?t.substr(2):t;let r=j(e);if(e instanceof Array)r=e.map(j).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let a=e[n];t.push(n+":"+("string"==typeof a?JSON.stringify(a):j(a)))}r=`{${t.join(", ")}}`}return`${n}${a?"("+a+")":""}[${r}]: ${t.replace(J,"\n  ")}`}const ct={"ɵɵdefineInjectable":k,"ɵɵdefineInjector":L,"ɵɵinject":rt,"ɵɵgetFactoryOf":function(t){const e=t,n=D(e)||P(e);return n&&void 0!==n.factory?n.factory:null}};class ft{}class ht{}function gt(t,e){for(let n=0;n<t.length;n++)e.push(t[n])}function pt(t,e){void 0===e&&(e=t);for(let n=0;n<t.length;n++){let a=t[n];Array.isArray(a)?(e===t&&(e=t.slice(0,n)),pt(a,e)):e!==t&&e.push(a)}return e}function bt(t,e){t.forEach(t=>Array.isArray(t)?bt(t,e):e(t))}function mt(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function yt(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function vt(t){throw new Error("ASSERTION ERROR: "+t)}const xt=function(){var t={OnPush:0,Default:1};return t[t.OnPush]="OnPush",t[t.Default]="Default",t}(),_t=function(){var t={CheckOnce:0,Checked:1,CheckAlways:2,Detached:3,Errored:4,Destroyed:5};return t[t.CheckOnce]="CheckOnce",t[t.Checked]="Checked",t[t.CheckAlways]="CheckAlways",t[t.Detached]="Detached",t[t.Errored]="Errored",t[t.Destroyed]="Destroyed",t}();function Tt(t){return null==t||t===xt.Default}const wt=function(){var t={Emulated:0,Native:1,None:2,ShadowDom:3};return t[t.Emulated]="Emulated",t[t.Native]="Native",t[t.None]="None",t[t.ShadowDom]="ShadowDom",t}();function Ot(t){return""+{toString:t}}const St={},It=[],Nt=R({ngComponentDef:R}),Ct=R({ngDirectiveDef:R}),Rt=R({ngPipeDef:R}),At=R({ngModuleDef:R}),kt=R({ngLocaleIdDef:R}),Et=R({ngBaseDef:R}),Lt=R({__NG_ELEMENT_ID__:R});let Dt=0;function Pt(t){const e=t.type,n=e.prototype,a={},r={type:e,providersResolver:null,consts:t.consts,vars:t.vars,factory:t.factory,template:t.template||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,contentQueries:t.contentQueries||null,declaredInputs:a,inputs:null,outputs:null,exportAs:t.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:t.changeDetection===xt.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||wt.Emulated,id:"c",styles:t.styles||It,_:null,setInput:null,schemas:t.schemas||null,tView:null};return r._=Ot(()=>{const n=t.directives,i=t.features,s=t.pipes;r.id+=Dt++,r.inputs=Gt(t.inputs,a),r.outputs=Gt(t.outputs),i&&i.forEach(t=>t(r)),r.directiveDefs=n?()=>("function"==typeof n?n():n).map(qt):null,r.pipeDefs=s?()=>("function"==typeof s?s():s).map(jt):null,e.hasOwnProperty(M)||(e[M]=k({token:e,factory:t.factory}))}),r}function Mt(t,e,n){const a=t.ngComponentDef;a.directiveDefs=()=>e.map(qt),a.pipeDefs=()=>n.map(jt)}function qt(t){return Ht(t)||Ut(t)}function jt(t){return Wt(t)}function Ft(t){return{type:t.type,bootstrap:t.bootstrap||It,declarations:t.declarations||It,imports:t.imports||It,exports:t.exports||It,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null}}function Vt(t,e){return Ot(()=>{const n=$t(t,!0);n.declarations=e.declarations||It,n.imports=e.imports||It,n.exports=e.exports||It})}function Gt(t,e){if(null==t)return St;const n={};for(const a in t)if(t.hasOwnProperty(a)){let r=t[a],i=r;Array.isArray(r)&&(i=r[1],r=r[0]),n[r]=a,e&&(e[r]=i)}return n}function Bt(t){const e={};return{inputs:Gt(t.inputs,e),declaredInputs:e,outputs:Gt(t.outputs),viewQuery:t.viewQuery||null,contentQueries:t.contentQueries||null,hostBindings:t.hostBindings||null}}const zt=Pt;function Yt(t){return{name:t.name,factory:t.factory,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function Ht(t){return t[Nt]||null}function Ut(t){return t[Ct]||null}function Wt(t){return t[Rt]||null}function Kt(t){return t[Et]||null}function $t(t,e){const n=t[At]||null;if(!n&&!0===e)throw new Error(`Type ${j(t)} does not have 'ngModuleDef' property.`);return n}function Zt(t){return Array.isArray(t)&&"object"==typeof t[1]}function Jt(t){return Array.isArray(t)&&!0===t[1]}function Qt(t){return 0!=(4&t.flags)}function Xt(t){return 1==(1&t.flags)}function te(t){return null!==t.template}function ee(t){return 0!=(512&t[2])}class ne{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function ae(t,e,n,a,r,i){const{onChanges:s,onInit:u,doCheck:o}=e;r>=0&&(!n.preOrderHooks||r===n.preOrderHooks.length)&&(s||u||o)&&(n.preOrderHooks||(n.preOrderHooks=[])).push(a),i>=0&&(!n.preOrderCheckHooks||i===n.preOrderCheckHooks.length)&&(s||o)&&(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(a),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,s)),u&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-t,u),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}function re(t,e){if(t.firstTemplatePass)for(let n=e.directiveStart,a=e.directiveEnd;n<a;n++){const e=t.data[n];e.afterContentInit&&(t.contentHooks||(t.contentHooks=[])).push(-n,e.afterContentInit),e.afterContentChecked&&((t.contentHooks||(t.contentHooks=[])).push(n,e.afterContentChecked),(t.contentCheckHooks||(t.contentCheckHooks=[])).push(n,e.afterContentChecked)),e.afterViewInit&&(t.viewHooks||(t.viewHooks=[])).push(-n,e.afterViewInit),e.afterViewChecked&&((t.viewHooks||(t.viewHooks=[])).push(n,e.afterViewChecked),(t.viewCheckHooks||(t.viewCheckHooks=[])).push(n,e.afterViewChecked)),null!=e.onDestroy&&(t.destroyHooks||(t.destroyHooks=[])).push(n,e.onDestroy)}}function ie(t,e,n,a){n||se(t,e.preOrderHooks,e.preOrderCheckHooks,n,0,void 0!==a?a:null)}function se(t,e,n,a,r,i){if(a)return;const s=(3&t[2])===r?e:n;s&&function(t,e,n,a){const r=null!=a?a:-1;let i=0;for(let s=void 0!==a?65535&t[18]:0;s<e.length;s++)if("number"==typeof e[s+1]){if(i=e[s],null!=a&&i>=a)break}else e[s]<0&&(t[18]+=65536),(i<r||-1==r)&&(ue(t,n,e,s),t[18]=(4294901760&t[18])+s+2),s++}(t,s,r,i),null==i&&(3&t[2])===r&&3!==r&&(t[2]&=1023,t[2]+=1)}function ue(t,e,n,a){const r=n[a]<0,i=n[a+1],s=t[r?-n[a]:n[a]];r?t[2]>>10<t[18]>>16&&(3&t[2])===e&&(t[2]+=1024,i.call(s)):i.call(s)}let oe=null;const le=new Map;let de,ce=null;function fe(t,e){return ce&&t===ce||(ce=t,e&&(oe=le.get(t)||null),oe=oe||{classesBitMask:0,classesIndex:1,stylesBitMask:0,stylesIndex:1}),oe}function he(){oe=null,ce=null}function ge(t){for(;Array.isArray(t);)t=t[0];return t}function pe(t,e){return ge(e[t+19])}function be(t,e){return ge(e[t.index])}function me(t,e){const n=t.index;return-1==n?null:ge(e[n])}function ye(t,e){return e[1].data[t+19]}function ve(t,e){return t[e+19]}function xe(t,e){const n=e[t];return Zt(n)?n:n[0]}function _e(t){return t.__ngContext__}function Te(t){const e=_e(t);return e?Array.isArray(e)?e:e.lView:null}function we(t){t[18]=0}let Oe,Se=null;function Ie(t){Se=t}function Ne(){return Oe}function Ce(){Oe=!0}function Re(){Oe=!1}function Ae(){return Le}let ke,Ee,Le,De=1,Pe=0,Me=0;function qe(t=null){un!==t&&(ln(null==t?-1:t),De=null==t?0:1,Pe=0,Me=0)}function je(){De+=1+Me,Pe=0,Me=0}function Fe(t){Pe+=t,Me=Math.max(Me,Pe)}function Ve(t){We=t}function Ge(){return ke}function Be(t,e){ke=t,Ee=e}function ze(t,e){ke=t,Le=e}function Ye(){return Ee}function He(){Ee=!1}function Ue(t=Le){return 4==(4&t[2])}let We=null,Ke=!1;function $e(){return Ke}function Ze(t){Ke=t}let Je=-1;function Qe(){return Je}function Xe(t){Je=t}let tn=0;function en(){return tn}function nn(t){tn=t}function an(t,e){const n=Le;return t&&(Je=t[1].bindingStartIndex),ke=e,Ee=!0,Le=We=t,n}function rn(t=1){return We=function(t,e){for(;t>0;)e=e[16],t--;return e}(t,We),We[9]}function sn(t,e){const n=Le[1];if(Ue(Le))Le[2]&=-5;else try{we(Le),e&&se(Le,n.viewHooks,n.viewCheckHooks,Ke,2,void 0)}finally{Le[2]&=-73,Le[7]=n.bindingStartIndex}an(t,null)}let un=-1;function on(){return un}function ln(t){un=t,he()}let dn,cn=null;function fn(){cn="http://www.w3.org/2000/svg"}function hn(){cn="http://www.w3.org/1998/MathML/"}function gn(){pn()}function pn(){cn=null}function bn(t){dn=t}function mn(){return dn}function yn(t,e){return!(t!=t&&e!=e)&&t!==e}function vn(t){return"string"==typeof t?t:null==t?"":""+t}function xn(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():vn(t)}const _n=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(U))();function Tn(t){return{name:"window",target:t.ownerDocument.defaultView}}function wn(t){return{name:"document",target:t.ownerDocument}}function On(t){return{name:"body",target:t.ownerDocument.body}}function Sn(t){return t.indexOf("�")>=0}function In(t){return t instanceof Function?t():t}function Nn(t,e){0===e?t[2]>0&&function(t){Rn(t,2|Cn(t))}(t):t[2]=e}function Cn(t){return t[1]}function Rn(t,e){t[1]=e}function An(t,e){return t[e+2]}function kn(t,e){return 1&t[e+0]}function En(t,e){return(1&kn(t,e))>0}function Ln(t,e){return t[e+0]>>1}function Dn(t,e,n){const a=kn(t,e);t[e+0]=a|n<<1}function Pn(t,e){return t[e+1]}function Mn(t,e,n){return t[e+3+n]}function qn(t,e){return!(!t||e!==t[2])}function jn(t){return(1&Cn(t))>0}function Fn(t){return(2&Cn(t))>0}function Vn(t){return 6+t[4]}function Gn(t,e){let n=Array.isArray(t)?t[0]:t,a=Array.isArray(e)?e[0]:e;return n instanceof String&&(n=n.toString()),a instanceof String&&(a=a.toString()),yn(n,a)}function Bn(t){return null!=t&&""!==t}function zn(t,e,n=" "){return t+(e.length&&t.length?n:"")+e}function Yn(t){return t.replace(/[a-z][A-Z]/g,t=>t.charAt(0)+"-"+t.charAt(1)).toLowerCase()}function Hn(t){return Un(t)?t[0]:t}function Un(t){return Array.isArray(t)&&t.length>=6&&"string"!=typeof t[1]}function Wn(t){const e=Hn(t);return e&&e[0]||""}function Kn(t){return 0!=(8&t.flags)}function $n(t){return 0!=(16&t.flags)}function Zn(t,e){return t[e+0]}function Jn(t,e,n){t[e+1]=n}function Qn(t,e){return t[e+1]}const Xn=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}();function ta(t){return!!t.listen}const ea={createRenderer:(t,e)=>document};function na(t,e){const n=Ae()[12],a=ta(n);let r=0;for(;r<e.length;){const i=e[r];if("number"==typeof i){if(0!==i)break;r++;const s=e[r++],u=e[r++],o=e[r++];a?n.setAttribute(t,u,o,s):t.setAttributeNS(s,u,o)}else{const s=i,u=e[++r];ra(s)?a&&n.setProperty(t,s,u):a?n.setAttribute(t,s,u):t.setAttribute(s,u),r++}}return r}function aa(t){return 3===t||4===t||6===t}function ra(t){return"@"===t[0]}function ia(t){return-1!==t}function sa(t){return 32767&t}function ua(t){return t>>16}function oa(t,e){let n=ua(t),a=e;for(;n>0;)a=a[16],n--;return a}function la(t){const e=t[3];return Jt(e)?e[3]:e}function da(t){let e=t[6];for(;null!==e&&2===e.type;)e=(t=t[16])[6];return t}function ca(t){return function(t){let e=Zt(t)?t:Te(t);for(;e&&!(512&e[2]);)e=la(e);return e}(t)[9]}let fa=!0;function ha(t){const e=fa;return fa=t,e}let ga=0;function pa(t,e){const n=ma(t,e);if(-1!==n)return n;const a=e[1];a.firstTemplatePass&&(t.injectorIndex=e.length,ba(a.data,t),ba(e,null),ba(a.blueprint,null));const r=ya(t,e),i=sa(r),s=oa(r,e),u=t.injectorIndex;if(ia(r)){const t=s[1].data;for(let n=0;n<8;n++)e[u+n]=s[i+n]|t[i+n]}return e[u+8]=r,u}function ba(t,e){t.push(0,0,0,0,0,0,0,0,e)}function ma(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null==e[t.injectorIndex+8]?-1:t.injectorIndex}function ya(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=e[6],a=1;for(;n&&-1===n.injectorIndex;)n=(e=e[16])?e[6]:null,a++;return n?n.injectorIndex|a<<16:-1}function va(t,e,n){!function(t,e,n){let a="string"!=typeof n?n[Lt]:n.charCodeAt(0)||0;null==a&&(a=n[Lt]=ga++);const r=255&a,i=1<<r,s=64&r,u=32&r,o=e.data;128&r?s?u?o[t+7]|=i:o[t+6]|=i:u?o[t+5]|=i:o[t+4]|=i:s?u?o[t+3]|=i:o[t+2]|=i:u?o[t+1]|=i:o[t]|=i}(t,e,n)}function xa(t,e){if("class"===e)return Wn(t.classes);if("style"===e)return Wn(t.styles);const n=t.attrs;if(n){const t=n.length;let a=0;for(;a<t;){const r=n[a];if(aa(r))break;if(0===r)a+=2;else if("number"==typeof r)for(a++;a<t&&"string"==typeof n[a];)a++;else{if(r===e)return n[a+1];a+=2}}}return null}function _a(t,e,n,a=C.Default,r){if(t){const r=function(t){if("string"==typeof t)return t.charCodeAt(0)||0;const e=t[Lt];return"number"==typeof e&&e>0?255&e:e}(n);if("function"==typeof r){const i=Ge(),s=Ae();ze(t,e);try{const t=r();if(null!=t||a&C.Optional)return t;throw new Error(`No provider for ${xn(n)}!`)}finally{ze(i,s)}}else if("number"==typeof r){if(-1===r)return new Ca(t,e);let i=null,s=ma(t,e),u=-1,o=a&C.Host?da(e)[6]:null;for((-1===s||a&C.SkipSelf)&&(u=-1===s?ya(t,e):e[s+8],Na(a,!1)?(i=e[1],s=sa(u),e=oa(u,e)):s=-1);-1!==s;){u=e[s+8];const t=e[1];if(Ia(r,s,t.data)){const t=wa(s,e,n,i,a,o);if(t!==Ta)return t}Na(a,e[1].data[s+8]===o)&&Ia(r,s,e)?(i=t,s=sa(u),e=oa(u,e)):s=-1}}}if(a&C.Optional&&void 0===r&&(r=null),0==(a&(C.Self|C.Host))){const t=e[10],i=nt(void 0);try{return t?t.get(n,r,a&C.Optional):st(n,r,a&C.Optional)}finally{nt(i)}}if(a&C.Optional)return r;throw new Error(`NodeInjector: NOT_FOUND [${xn(n)}]`)}const Ta={};function wa(t,e,n,a,r,i){const s=e[1],u=s.data[t+8],o=Oa(u,s,n,null==a?Xt(u)&&fa:a!=s&&3===u.type,r&C.Host&&i===u);return null!==o?Sa(s.data,e,o,u):Ta}function Oa(t,e,n,a,r){const i=t.providerIndexes,s=e.data,u=65535&i,o=t.directiveStart,l=i>>16,d=r?u+l:t.directiveEnd;for(let c=a?u:u+l;c<d;c++){const t=s[c];if(c<o&&n===t||c>=o&&t.type===n)return c}if(r){const t=s[o];if(t&&te(t)&&t.type===n)return o}return null}function Sa(t,e,n,a){let r=e[n];if(null!==(i=r)&&"object"==typeof i&&Object.getPrototypeOf(i)==ne.prototype){const i=r;if(i.resolving)throw new Error("Circular dep for "+xn(t[n]));const s=ha(i.canSeeViewProviders);let u;i.resolving=!0,i.injectImpl&&(u=nt(i.injectImpl));const o=Ge(),l=Ae();ze(a,e);try{r=e[n]=i.factory(void 0,t,e,a)}finally{i.injectImpl&&nt(u),ha(s),i.resolving=!1,ze(o,l)}}var i;return r}function Ia(t,e,n){const a=64&t,r=32&t;let i;return i=128&t?a?r?n[e+7]:n[e+6]:r?n[e+5]:n[e+4]:a?r?n[e+3]:n[e+2]:r?n[e+1]:n[e],!!(i&1<<t)}function Na(t,e){return!(t&C.Self||t&C.Host&&e)}class Ca{constructor(t,e){this._tNode=t,this._lView=e}get(t,e){return _a(this._tNode,this._lView,t,void 0,e)}}function Ra(t){const e=t,n=Ht(e)||Ut(e)||Wt(e)||D(e)||P(e);return n&&void 0!==n.factory?n.factory:null}function Aa(t){const e=Ra(Object.getPrototypeOf(t.prototype).constructor);return null!==e?e:t=>new t}function ka(t){return t.ngDebugContext}function Ea(t){return t.ngOriginalError}function La(t,...e){t.error(...e)}class Da{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),a=function(t){return t.ngErrorLogger||La}(t);a(this._console,"ERROR",t),e&&a(this._console,"ORIGINAL ERROR",e),n&&a(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?ka(t)?ka(t):this._findContext(Ea(t)):null}_findOriginalError(t){let e=Ea(t);for(;e&&Ea(e);)e=Ea(e);return e}}const Pa={name:"custom-elements"},Ma={name:"no-errors-schema"},qa="__SANITIZER_TRUSTED_BRAND__";function ja(t,e){return t instanceof String&&t[qa]===e}function Fa(t){return Ya(t,"Html")}function Va(t){return Ya(t,"Style")}function Ga(t){return Ya(t,"Script")}function Ba(t){return Ya(t,"Url")}function za(t){return Ya(t,"ResourceUrl")}function Ya(t,e){const n=new String(t);return n[qa]=e,n}let Ha=!0,Ua=!1;function Wa(){return Ua=!0,Ha}function Ka(){if(Ua)throw new Error("Cannot enable prod mode after platform setup.");Ha=!1}class $a{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),this.inertBodyElement=this.inertDocument.body,null==this.inertBodyElement){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t),this.inertBodyElement=this.inertDocument.createElement("body"),t.appendChild(this.inertBodyElement)}this.inertBodyElement.innerHTML='<svg><g onload="this.parentNode.remove()"></g></svg>',!this.inertBodyElement.querySelector||this.inertBodyElement.querySelector("svg")?(this.inertBodyElement.innerHTML='<svg><p><style><img src="</style><img src=x onerror=alert(1)//">',this.getInertBodyElement=this.inertBodyElement.querySelector&&this.inertBodyElement.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}()?this.getInertBodyElement_DOMParser:this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}getInertBodyElement_XHR(t){t="<body><remove></remove>"+t+"</body>";try{t=encodeURI(t)}catch(a){return null}const e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);const n=e.response.body;return n.removeChild(n.firstChild),n}getInertBodyElement_DOMParser(t){t="<body><remove></remove>"+t+"</body>";try{const e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(e){return null}}getInertBodyElement_InertDocument(t){const e=this.inertDocument.createElement("template");return"content"in e?(e.innerHTML=t,e):(this.inertBodyElement.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(this.inertBodyElement),this.inertBodyElement)}stripCustomNsAttrs(t){const e=t.attributes;for(let a=e.length-1;0<a;a--){const n=e.item(a).name;"xmlns:ns1"!==n&&0!==n.indexOf("ns1:")||t.removeAttribute(n)}let n=t.firstChild;for(;n;)n.nodeType===Node.ELEMENT_NODE&&this.stripCustomNsAttrs(n),n=n.nextSibling}}const Za=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,Ja=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+\/]+=*$/i;function Qa(t){return(t=String(t)).match(Za)||t.match(Ja)?t:(Wa()&&console.warn(`WARNING: sanitizing unsafe URL value ${t} (see http://g.co/ng/security#xss)`),"unsafe:"+t)}function Xa(t){return(t=String(t)).split(",").map(t=>Qa(t.trim())).join(", ")}function tr(t){const e={};for(const n of t.split(","))e[n]=!0;return e}function er(...t){const e={};for(const n of t)for(const t in n)n.hasOwnProperty(t)&&(e[t]=!0);return e}const nr=tr("area,br,col,hr,img,wbr"),ar=tr("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),rr=tr("rp,rt"),ir=er(rr,ar),sr=er(nr,er(ar,tr("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),er(rr,tr("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),ir),ur=tr("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),or=tr("srcset"),lr=er(ur,or,tr("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),tr("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),dr=tr("script,style,template");class cr{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let e=t.firstChild,n=!0;for(;e;)if(e.nodeType===Node.ELEMENT_NODE?n=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,n&&e.firstChild)e=e.firstChild;else for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let t=this.checkClobberedElement(e,e.nextSibling);if(t){e=t;break}e=this.checkClobberedElement(e,e.parentNode)}return this.buf.join("")}startElement(t){const e=t.nodeName.toLowerCase();if(!sr.hasOwnProperty(e))return this.sanitizedSomething=!0,!dr.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);const n=t.attributes;for(let a=0;a<n.length;a++){const t=n.item(a),e=t.name,r=e.toLowerCase();if(!lr.hasOwnProperty(r)){this.sanitizedSomething=!0;continue}let i=t.value;ur[r]&&(i=Qa(i)),or[r]&&(i=Xa(i)),this.buf.push(" ",e,'="',gr(i),'"')}return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();sr.hasOwnProperty(e)&&!nr.hasOwnProperty(e)&&(this.buf.push("</"),this.buf.push(e),this.buf.push(">"))}chars(t){this.buf.push(gr(t))}checkClobberedElement(t,e){if(e&&(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+t.outerHTML);return e}}const fr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,hr=/([^\#-~ |!])/g;function gr(t){return t.replace(/&/g,"&amp;").replace(fr,(function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"})).replace(hr,(function(t){return"&#"+t.charCodeAt(0)+";"})).replace(/</g,"&lt;").replace(/>/g,"&gt;")}let pr;function br(t,e){let n=null;try{pr=pr||new $a(t);let a=e?String(e):"";n=pr.getInertBodyElement(a);let r=5,i=a;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,a=i,i=n.innerHTML,n=pr.getInertBodyElement(a)}while(a!==i);const s=new cr,u=s.sanitizeChildren(mr(n)||n);return Wa()&&s.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),u}finally{if(n){const t=mr(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function mr(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}const yr=function(){var t={NONE:0,HTML:1,STYLE:2,SCRIPT:3,URL:4,RESOURCE_URL:5};return t[t.NONE]="NONE",t[t.HTML]="HTML",t[t.STYLE]="STYLE",t[t.SCRIPT]="SCRIPT",t[t.URL]="URL",t[t.RESOURCE_URL]="RESOURCE_URL",t}();class vr{}const xr=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|Z|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:calc|attr))\\([-0-9.%, #a-zA-Z]+\\))$","g"),_r=/^url\(([^)]+)\)$/;function Tr(t){if(!(t=String(t).trim()))return"";const e=t.match(_r);return e&&Qa(e[1])===e[1]||t.match(xr)&&function(t){let e=!0,n=!0;for(let a=0;a<t.length;a++){const r=t.charAt(a);"'"===r&&n?e=!e:'"'===r&&e&&(n=!n)}return e&&n}(t)?t:(Wa()&&console.warn(`WARNING: sanitizing unsafe style value ${t} (see http://g.co/ng/security#xss).`),"unsafe")}function wr(t){const e=kr();return e?e.sanitize(yr.HTML,t)||"":ja(t,"Html")?t.toString():br(document,vn(t))}function Or(t){const e=kr();return e?e.sanitize(yr.STYLE,t)||"":ja(t,"Style")?t.toString():Tr(vn(t))}function Sr(t){const e=kr();return e?e.sanitize(yr.URL,t)||"":ja(t,"Url")?t.toString():Qa(vn(t))}function Ir(t){const e=kr();if(e)return e.sanitize(yr.RESOURCE_URL,t)||"";if(ja(t,"ResourceUrl"))return t.toString();throw new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)")}function Nr(t){const e=kr();if(e)return e.sanitize(yr.SCRIPT,t)||"";if(ja(t,"Script"))return t.toString();throw new Error("unsafe value used in a script context")}function Cr(t,e){return"src"===e&&("embed"===t||"frame"===t||"iframe"===t||"media"===t||"script"===t)||"href"===e&&("base"===t||"link"===t)?Ir:Sr}function Rr(t,e,n){return Cr(e,n)(t)}const Ar=function(t,e,n){let a=!0;return 1&(n=n||3)&&(a="background-image"===t||"background"===t||"border-image"===t||"filter"===t||"list-style"===t||"list-style-image"===t||"clip-path"===t),2&n?a?Or(e):e:a};function kr(){const t=Ae();return t&&t[13]}const Er=/([A-Z])/g;function Lr(t){try{return null!=t?t.toString().slice(0,30):t}catch(e){return"[ERROR] Exception while trying to serialize the value"}}function Dr(t){let e=_e(t);if(e){if(Array.isArray(e)){const a=e;let r,i=void 0,s=void 0;if((n=t)&&n.constructor&&n.constructor.ngComponentDef){if(r=Vr(a,t),-1==r)throw new Error("The provided component was not found in the application");i=t}else if(function(t){return t&&t.constructor&&t.constructor.ngDirectiveDef}(t)){if(r=function(t,e){let n=t[1].firstChild;for(;n;){const a=n.directiveEnd;for(let r=n.directiveStart;r<a;r++)if(t[r]===e)return n.index;n=Fr(n)}return-1}(a,t),-1==r)throw new Error("The provided directive was not found in the application");s=Gr(r,a,!1)}else if(r=jr(a,t),-1==r)return null;const u=ge(a[r]),o=_e(u),l=o&&!Array.isArray(o)?o:Pr(a,r,u);if(i&&void 0===l.component&&(l.component=i,qr(l.component,l)),s&&void 0===l.directives){l.directives=s;for(let t=0;t<s.length;t++)qr(s[t],l)}qr(l.native,l),e=l}}else{const n=t;let a=n;for(;a=a.parentNode;){const t=_e(a);if(t){let a;if(a=Array.isArray(t)?t:t.lView,!a)return null;const r=jr(a,n);if(r>=0){const t=ge(a[r]),n=Pr(a,r,t);qr(t,n),e=n;break}}}}var n;return e||null}function Pr(t,e,n){return{lView:t,nodeIndex:e,native:n,component:void 0,directives:void 0,localRefs:void 0}}function Mr(t){let e,n=_e(t);if(Array.isArray(n)){const a=Vr(n,t);e=xe(a,n);const r=Pr(n,a,e[0]);r.component=t,qr(t,r),qr(r.native,r)}else e=xe(n.nodeIndex,n.lView);return e}function qr(t,e){t.__ngContext__=e}function jr(t,e){let n=t[1].firstChild;for(;n;){if(me(n,t)===e)return n.index;n=Fr(n)}return-1}function Fr(t){if(t.child)return t.child;if(t.next)return t.next;for(;t.parent&&!t.parent.next;)t=t.parent;return t.parent&&t.parent.next}function Vr(t,e){const n=t[1].components;if(n)for(let a=0;a<n.length;a++){const r=n[a];if(xe(r,t)[9]===e)return r}else if(xe(19,t)[9]===e)return 19;return-1}function Gr(t,e,n){const a=e[1].data[t];let r=a.directiveStart;return 0==r?It:(!n&&1&a.flags&&r++,e.slice(r,a.directiveEnd))}function Br(t){throw new Error("Multiple components match node with tagname "+t.tagName)}function zr(){throw new Error("Cannot mix multi providers and regular providers")}function Yr(t,e){const n=t.length,a=t.indexOf(e),r=a+e.length;return!(-1===a||a>0&&" "!==t[a-1]||r<n&&" "!==t[r])}function Hr(t,e,n){return e===(0!==t.type||n?t.tagName:"ng-template")}function Ur(t,e,n){let a=4;const r=t.attrs||[],i=function(t){for(let e=0;e<t.length;e++)if(aa(t[e]))return e;return t.length}(r);let s=!1;for(let u=0;u<e.length;u++){const o=e[u];if("number"!=typeof o){if(!s)if(4&a){if(a=2|1&a,""!==o&&!Hr(t,o,n)||""===o&&1===e.length){if(Wr(a))return!1;s=!0}}else{const l=8&a?o:e[++u];if(8&a&&t.classes){if(!Yr(Wn(t.classes),l)){if(Wr(a))return!1;s=!0}continue}const d=Kr(8&a?"class":o,r,0==t.type&&"ng-template"!==t.tagName,n);if(-1===d){if(Wr(a))return!1;s=!0;continue}if(""!==l){let t;t=d>i?"":r[d+1];const e=8&a?t:null;if(e&&!Yr(e,l)||2&a&&l!==t){if(Wr(a))return!1;s=!0}}}}else{if(!s&&!Wr(a)&&!Wr(o))return!1;if(s&&Wr(o))continue;s=!1,a=o|1&a}}return Wr(a)||s}function Wr(t){return 0==(1&t)}function Kr(t,e,n,a){if(null===e)return-1;let r=0;if(a||!n){let n=!1;for(;r<e.length;){const a=e[r];if(a===t)return r;if(3===a||6===a)n=!0;else{if(1===a){let t=e[++r];for(;"string"==typeof t;)t=e[++r];continue}if(4===a)break;if(0===a){r+=4;continue}}r+=n?1:2}return-1}return function(t,e){let n=t.indexOf(4);if(n>-1)for(n++;n<t.length;){if(t[n]===e)return n;n++}return-1}(e,t)}function $r(t,e,n=!1){for(let a=0;a<e.length;a++)if(Ur(t,e[a],n))return!0;return!1}function Zr(t,e){t:for(let n=0;n<e.length;n++){const a=e[n];if(t.length===a.length){for(let e=0;e<t.length;e++)if(t[e]!==a[e])continue t;return!0}}return!1}let Jr=[];function Qr(t,e,n,a,r,i,s,u){const o=!a,l=fe(n,Fn(t)),d=o?0:l.classesIndex++;return!(!ti(t,e,d,a,r,i,s,u,!1)&&!u||(l.classesBitMask|=1<<d,0))}function Xr(t,e,n,a,r,i,s,u,o){const l=!a,d=fe(n,Fn(t)),c=l?0:d.stylesIndex++;return!(!ti(t,e,c,a,r,i,u,o,!!l||!!s&&s(a,null,1))&&!o||(d.stylesBitMask|=1<<c,0))}function ti(t,e,n,a,r,i,s,u,o){jn(t)||(s?function(t,e,n,a,r){Jr.unshift(t,e,n,a,r)}(t,n,a,r,o):(Jr.length&&ei(),ni(t,n,a,r,o)));const l=u||Gn(e[r],i);return l&&(e[r]=i),l}function ei(){let t=0;for(;t<Jr.length;)ni(Jr[t++],Jr[t++],Jr[t++],Jr[t++],Jr[t++]);Jr.length=0}function ni(t,e,n,a,r){let i=!1;if(n){let s=!1,u=Vn(t);for(;u<t.length;){const i=Pn(t,u),o=An(t,u);if(s=n<=o,s){n<o&&ai(t,u,n,r),ri(t,!1,u,a,e);break}u+=3+i}s||(ai(t,t.length,n,r),ri(t,!1,u,a,e),i=!0)}else ri(t,!0,3,a,e),i=!0;return i}function ai(t,e,n,a){t.splice(e,0,a?1:0,1,n,null),Dn(t,e,1)}function ri(t,e,n,a,r){const i=n+3;let s=i+Pn(t,n);if(e||s--,"number"==typeof a){for(let e=i;e<=s;e++)if(t[e]===a)return;t.splice(s,0,a),t[n+1]++,Dn(t,n,Ln(t,n)|1<<r)}else null!==a&&null==t[s]&&(t[s]=a)}function ii(t,e,n,a,r,i,s,u){return r&&a&&(function(t){if(!jn(t)){const e=Hn(t);e&&function(t,e){for(let n=1;n<e.length;n+=2){const a=Qn(e,n);a&&ni(t,-1,Zn(e,n),a,!1)}}(t,e),function(t){Rn(t,1|Cn(t))}(t)}}(a),function(t,e){return t&&e>0}(a,i))?(si(a,t,e,n,i,s,u),!0):r}function si(t,e,n,a,r,i,s){const u=!0===(o=r)?-1:!1===o?0:o;var o;const l=ui,d=(u&Ln(t,3))>0?1:0;let c=Vn(t);for(;c<t.length;){const r=Pn(t,c);if(u&Ln(t,c)){let u=!1;const o=An(t,c),f=r-1,h=Mn(t,c,f);for(let r=0;r<f;r++){const l=Mn(t,c,r),d=a[l];if(Bn(d)){i(e,n,o,s&&En(t,c)?s(o,d,2):d,l),u=!0;break}}if(l){const r=l(t,e,n,a,i,s,d|(u?4:2),o,h);u=u||r}u||i(e,n,o,h)}c+=3+r}l&&l(t,e,n,a,i,s,d)}let ui=null;const oi=(t,e,n,a)=>{const r=e.style;a?(a=a.toString(),t&&ta(t)?t.setStyle(e,n,a,Xn.DashCase):r&&r.setProperty(n,a)):t&&ta(t)?t.removeStyle(e,n,Xn.DashCase):r&&r.removeProperty(n)},li=(t,e,n,a)=>{if(""!==n){const r=e.classList;a?t&&ta(t)?t.addClass(e,n):r&&r.add(n):t&&ta(t)?t.removeClass(e,n):r&&r.remove(n)}};function di(t,e,n,a){const r=Hn(n);if(r)for(let i=1;i<r.length;i+=2){const n=Zn(r,i),s=Qn(r,i);a?li(t,e,n,s):oi(t,e,n,s)}}const ci={},fi={marker:"element"},hi={marker:"comment"},gi=(t,e,n,a,r,i,s,u,o)=>{let l=!1;if(Pn(t,3)){let d=!0;const c=!u;c&&-2&s&&(d=!1,l=!0),d&&(l=function t(e,n,a,r,i,s,u,o,l,d){let c=!1;if(l<Pn(e,3)){const f=Mn(e,3,l),h=r[f];let g=function(t){return t>=yi.length&&yi.push(1),yi[t]}(l);for(;g<h.length;){const p=Zn(h,g),b=o&&p>o,m=!b&&p===o,y=Qn(h,g),v=Bn(y);let x=t(e,n,a,r,i,s,b?u:bi(u,v,m),b?o:p,l+1,d);if(b){c||(c=x);break}if(!x&&mi(u,m)){const t=m&&!v,e=t?d:y,r=t?f:null;i(n,a,p,s?s(p,e,3):e,r),x=!0}c=x&&m,g+=2}if(yi[l]=g,1===h.length||!o)return t(e,n,a,r,i,s,u,o,l+1,d)}return c}(t,e,n,a,r,i,s,u||null,0,o||null)),c&&function(){for(let t=0;t<yi.length;t++)yi[t]=1}()}return l};function pi(){ui=gi}function bi(t,e,n){let a=t;return e||4&t||!(n||1&t)?(a|=4,a&=-3):(a|=2,a&=-5),a}function mi(t,e){let n=(1&t)>0;return n?4&t&&e&&(n=!1):2&t&&(n=e),n}const yi=[];function vi(t,e,n,a){for(let r=1;r<t.length;r+=2){const i=Zn(t,r);if(e<=i){let s=!1;if(i===e){const e=t[r];!a&&Bn(e)||(s=!0,Jn(t,r,n))}else s=!0,t.splice(r,0,e,n);return s}}return t.push(e,n),!0}function xi(t,e){let n="";for(let a=1;a<t.length;a+=2){const r=Zn(t,a),i=Qn(t,a),s=zn(r,e?"":i,":");n=zn(n,s,e?" ":"; ")}return n}function _i(t){let e={};if(t)for(let n=1;n<t.length;n+=2){const a=Zn(t,n),r=Qn(t,n);e[a]=r}return e}class Ti{constructor(t,e,n){this.context=t,this._data=e,this._isClassBased=n,this._sanitizer=null}overrideSanitizer(t){this._sanitizer=t}get summary(){const t={};return this._mapValues((e,n,a)=>{t[e]={prop:e,value:n,bindingIndex:a}}),t}get values(){const t={};return this._mapValues((e,n)=>{t[e]=n}),t}_mapValues(t){Pn(this.context,3)>0&&pi();const e=this._isClassBased?null:this._sanitizer||mn();si(this.context,null,{},this._data,!0,(e,n,a,r,i)=>{t(a,r,i||null)},e)}}function wi(t){Oi(Ae(),t)}function Oi(t,e){ie(t,t[1],$e(),e),ln(e)}const Si=(()=>Promise.resolve(null))();function Ii(t){const e=t[1],n=Ue(t);if(e.firstTemplatePass=!1,t[7]=e.bindingStartIndex,!n){const n=$e();ie(t,e,n,void 0),function(t){for(let e=t[14];null!==e;e=e[4])if(-1===e[2]&&Jt(e))for(let t=9;t<e.length;t++){const n=e[t];Ei(n,n[1],n[9])}}(t),Ni(e,t),we(t),se(t,e.contentHooks,e.contentCheckHooks,n,1,void 0),function(t,e){const n=on();try{if(t.expandoInstructions){let n=e[7]=t.expandoStartIndex;Xe(n);let a=-1,r=-1;for(let i=0;i<t.expandoInstructions.length;i++){const s=t.expandoInstructions[i];"number"==typeof s?(s<=0?(r=-s,qe(r),n+=9+t.expandoInstructions[++i],a=n):n+=s,Xe(n)):(null!==s&&(e[7]=n,s(2,ge(e[a]),r),je()),a++)}}}finally{qe(n)}}(e,t)}n&&e.staticContentQueries&&Ni(e,t),n&&!e.staticViewQueries||ds(2,e,t[9]),function(t,e){if(null!=e)for(let n=0;n<e.length;n++)as(t,e[n])}(t,e.components)}function Ni(t,e){const n=t.contentQueries;if(null!==n)for(let a=0;a<n.length;a+=2){const r=n[a],i=n[a+1];if(-1!==i){const n=t.data[i];nn(r),n.contentQueries(2,e[i],i)}}}function Ci(t,e){let n;const a=e||Ae()[12],r=cn;return n=ta(a)?a.createElement(t,r):null===r?a.createElement(t):a.createElementNS(r,t),n}function Ri(t,e,n,a,r,i,s,u,o,l){const d=e.blueprint.slice();return d[0]=r,d[2]=140|a,we(d),d[3]=d[16]=t,d[9]=n,d[11]=s||t&&t[11],d[12]=u||t&&t[12],d[13]=o||t&&t[13]||null,d[10]=l||t&&t[10]||null,d[6]=i,d}function Ai(t,e,n,a,r,i){const s=n+19,u=t.data[s]||function(t,e,n,a,r,i,s){const u=Ge(),o=Ye(),l=o?u:u&&u.parent,d=t.data[n]=Gi(0,l&&l!==e?l:null,a,n,r,i);return 0!==s&&t.firstChild||(t.firstChild=d),u&&(!o||null!=u.child||null===d.parent&&2!==u.type?o||(u.next=d):u.child=d),d}(t,e,s,a,r,i,n);return Be(u,!0),u}function ki(t,e,n,a){let r=t.node;return null==r&&(t.node=r=Gi(0,e,2,n,null,null)),a[6]=r}function Ei(t,e,n){const a=Ye(),r=Ge();let i;if(512&t[2])ss(ca(t));else{let s=!1;try{Be(null,!0),i=an(t,t[6]),we(t),Di(t,e.template,Pi(t),n),e.firstTemplatePass=!1,Ii(t),s=!0}finally{sn(i,s),Be(r,a)}}}function Li(t,e,n){const a=t[11],r=an(t,t[6]),i=!$e(),s=Ue(t);let u=!1;try{i&&!s&&a.begin&&a.begin(),s&&(n&&Di(t,n,1,e),Ii(t),t[2]&=-5),we(t),n&&Di(t,n,2,e),Ii(t),u=!0}finally{i&&!s&&a.end&&a.end(),sn(r,u)}}function Di(t,e,n,a){pn();const r=on();try{qe(null),2&n&&Oi(t,0),e(n,a)}finally{ln(r)}}function Pi(t){return Ue(t)?1:2}function Mi(t,e,n){if(Qt(e)){const a=e.directiveEnd;for(let r=e.directiveStart;r<a;r++){const e=t.data[r];e.contentQueries&&e.contentQueries(1,n[r],r)}}}function qi(t,e,n,a=be){Ne()&&(function(t,e,n){const a=n.directiveStart,r=n.directiveEnd;!t.firstTemplatePass&&a<r&&pa(n,e);for(let i=a;i<r;i++){const a=t.data[i];te(a)&&ts(e,n,a),Ki(e,Sa(t.data,e,i,n),a,i)}}(t,e,n),function(t,e,n){const a=n.directiveStart,r=n.directiveEnd,i=t.expandoInstructions,s=t.firstTemplatePass,u=n.index-19,o=on();try{qe(u);for(let u=a;u<r;u++){const a=t.data[u],r=e[u];a.hostBindings?(Ui(a,i,r,n,s),je()):s&&i.push(null)}}finally{qe(o)}}(t,e,n),function(t,e,n){const a=e.localNames;if(a){let r=e.index+1;for(let i=0;i<a.length;i+=2){const s=a[i+1],u=-1===s?n(e,t):t[s];t[r++]=u}}}(e,n,a),qe(null))}function ji(t){return t.tView||(t.tView=Fi(-1,t.template,t.consts,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas))}function Fi(t,e,n,a,r,i,s,u){const o=19+n,l=o+a,d=function(t,e){const n=new Array(e).fill(null,0,t).fill(ci,t);return n[7]=t,n}(o,l);return d[1]={id:t,blueprint:d,template:e,queries:null,viewQuery:s,node:null,data:d.slice().fill(null,o),bindingStartIndex:o,expandoStartIndex:l,expandoInstructions:null,firstTemplatePass:!0,staticViewQueries:!1,staticContentQueries:!1,preOrderHooks:null,preOrderCheckHooks:null,contentHooks:null,contentCheckHooks:null,viewHooks:null,viewCheckHooks:null,destroyHooks:null,cleanup:null,contentQueries:null,components:null,directiveRegistry:"function"==typeof r?r():r,pipeRegistry:"function"==typeof i?i():i,firstChild:null,schemas:u}}function Vi(t,e){const n=t.createRenderer(null,null);return"string"==typeof e?ta(n)?n.selectRootElement(e):n.querySelector(e):e}function Gi(t,e,n,a,r,i){return{type:n,index:a,injectorIndex:e?e.injectorIndex:-1,directiveStart:-1,directiveEnd:-1,propertyMetadataStartIndex:-1,propertyMetadataEndIndex:-1,flags:0,providerIndexes:0,tagName:r,attrs:i,localNames:null,initialInputs:void 0,inputs:void 0,outputs:void 0,tViews:null,next:null,projectionNext:null,child:null,parent:e,projection:null,styles:null,classes:null}}function Bi(t,e){const n=Ae()[1];let a=null;const r=t.directiveStart,i=t.directiveEnd;if(i>r){const t=0===e,s=n.data;for(let e=r;e<i;e++){const n=s[e],r=t?n.inputs:n.outputs;for(let t in r)if(r.hasOwnProperty(t)){a=a||{};const n=r[t];a.hasOwnProperty(t)?a[t].push(e,t,n):a[t]=[e,t,n]}}}return a}const zi={class:"className",for:"htmlFor",formaction:"formAction",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"};function Yi(t,e,n,a,r,i){const s=Ae(),u=pe(t,s),o=ye(t,s);let l,d;if(!r&&(l=hs(o))&&(d=l[e]))ys(s,d,n),Xt(o)&&function(t,e){const n=xe(e,t);16&n[2]||(n[2]|=64)}(s,t+19);else if(3===o.type){!function(t,e,n,a,r){const i=e[7]-1,s=a[i];"�"==s[0]&&(a[i]=n+s,r||(-1==t.propertyMetadataStartIndex&&(t.propertyMetadataStartIndex=i),t.propertyMetadataEndIndex=i+1))}(o,s,e=zi[e]||e,s[1].data,r);const t=i?i(o,s):s[12];n=null!=a?a(n,o.tagName||"",e):n,ta(t)?t.setProperty(u,e,n):ra(e)||(u.setProperty?u.setProperty(e,n):u[e]=n)}}function Hi(t,e,n,a){if(!Ne())return;const r=function(t,e,n){const a=t.directiveRegistry;let r=null;if(a)for(let i=0;i<a.length;i++){const s=a[i];$r(n,s.selectors,!1)&&(r||(r=[]),va(pa(n,e),t,s.type),te(s)?(1&n.flags&&Br(n),n.flags=1,r.unshift(s)):r.push(s))}return r}(t,e,n),i=a?{"":-1}:null;if(r){Qi(n,t.data.length,r.length);for(let t=0;t<r.length;t++){const e=r[t];e.providersResolver&&e.providersResolver(e)}Wi(t,n,r.length);const a=t.preOrderHooks&&t.preOrderHooks.length||0,s=t.preOrderCheckHooks&&t.preOrderCheckHooks.length||0,u=n.index-19;for(let n=0;n<r.length;n++){const o=r[n],l=t.data.length;Xi(t,e,o,o.factory),Ji(t.data.length-1,o,i),ae(l,o,t,u,a,s)}}i&&function(t,e,n){if(e){const a=t.localNames=[];for(let t=0;t<e.length;t+=2){const r=n[e[t+1]];if(null==r)throw new Error(`Export of name '${e[t+1]}' not found!`);a.push(e[t],r)}}}(n,a,i)}function Ui(t,e,n,a,r){const i=e.length;Ie(t),t.hostBindings(1,n,a.index-19),Ie(null),i===e.length&&r&&e.push(t.hostBindings)}function Wi(t,e,n){const a=-(e.index-19),r=t.data.length-(65535&e.providerIndexes);(t.expandoInstructions||(t.expandoInstructions=[])).push(a,r,n)}function Ki(t,e,n,a){const r=Ge();$i(t,r,e),r&&r.attrs&&function(t,e,n,a){let r=a.initialInputs;(void 0===r||t>=r.length)&&(r=function(t,e,n){const a=n.initialInputs||(n.initialInputs=[]);for(let s=a.length;s<=t;s++)a.push(null);const r=n.attrs;let i=0;for(;i<r.length;){const n=r[i];if(0===n){i+=4;continue}if(5===n){i+=2;continue}if("number"==typeof n)break;const s=e[n],u=r[i+1];void 0!==s&&(a[t]||(a[t]=[])).push(n,s,u),i+=2}return a}(t,n.inputs,a));const i=r[t];if(i){const t=n.setInput;for(let a=0;a<i.length;){const r=i[a++],s=i[a++],u=i[a++];t?n.setInput(e,u,r,s):e[s]=u}}}(a,e,n,r),t[1].firstTemplatePass&&n.contentQueries&&(r.flags|=4),te(n)&&(xe(r.index,t)[9]=e)}function $i(t,e,n){const a=be(e,t);qr(n,t),a&&qr(a,t)}function Zi(t){const e=Ae()[1];(e.components||(e.components=[])).push(t.index)}function Ji(t,e,n){if(n){if(e.exportAs)for(let a=0;a<e.exportAs.length;a++)n[e.exportAs[a]]=t;e.template&&(n[""]=t)}}function Qi(t,e,n){t.flags=1&t.flags,t.directiveStart=e,t.directiveEnd=e+n,t.providerIndexes=e}function Xi(t,e,n,a){t.data.push(n);const r=new ne(a,te(n),null);t.blueprint.push(r),e.push(r)}function ts(t,e,n){const a=be(e,t),r=ji(n),i=t[11],s=rs(t,Ri(t,r,null,n.onPush?64:16,t[e.index],e,i,i.createRenderer(a,n)));s[6]=e,t[e.index]=s,t[1].firstTemplatePass&&Zi(e)}function es(t,e,n,a,r,i){const s=pe(t,a),u=a[12];if(null==n)ta(u)?u.removeAttribute(s,e,i):s.removeAttribute(e);else{const o=ye(t,a),l=null==r?vn(n):r(n,o.tagName||"",e);ta(u)?u.setAttribute(s,e,l,i):i?s.setAttributeNS(i,e,l):s.setAttribute(e,l)}}function ns(t,e,n,a,r){return new Array(t,!0,r?-1:0,e,null,null,a,n,null)}function as(t,e){const n=xe(e,t);(128==(128&n[2])||Ue(t))&&80&n[2]&&(function(t){const e=t[1];for(let n=t.length;n<e.blueprint.length;n++)t[n]=e.blueprint[n]}(n),ls(n,n[9]))}function rs(t,e){return t[14]?t[15][4]=e:t[14]=e,t[15]=e,e}function is(t){for(;t;){t[2]|=64;const e=la(t);if(ee(t)&&!e)return t;t=e}return null}function ss(t){for(let e=0;e<t.components.length;e++){const n=t.components[e];Li(Te(n),n)}}function us(t,e){const n=t[11];n.begin&&n.begin();try{Ue(t)&&ls(t,e),ls(t,e)}catch(a){throw ms(t,a),a}finally{n.end&&n.end()}}function os(t){ss(t[9])}function ls(t,e){const n=t[1],a=an(t,t[6]),r=n.template,i=Ue(t);let s=!1;try{we(t),i&&ds(1,n,e),Di(t,r,Pi(t),e),Ii(t),s=!0}finally{sn(a,s)}}function ds(t,e,n){const a=e.viewQuery;null!==a&&(nn(0),a(t,n))}function cs(t,e="",n=""){const a=t[1].data,r=t[7]-1;return null==a[r]?a[r]="�"+e+"�"+n:null}const fs=Si;function hs(t){return void 0===t.inputs&&(t.inputs=Bi(t,0)),t.inputs}function gs(t){return t[8]||(t[8]=[])}function ps(t){return t[1].cleanup||(t[1].cleanup=[])}function bs(t,e){return e[t.index][12]}function ms(t,e){const n=t[10],a=n?n.get(Da,null):null;a&&a.handleError(e)}function ys(t,e,n){const a=t[1];for(let r=0;r<e.length;){const i=e[r++],s=e[r++],u=e[r++],o=t[i],l=a.data[i];l.setInput?l.setInput(o,n,s,u):o[u]=n}}function vs(t,e,n){const a=pe(e,t),r=t[12];ta(r)?r.setValue(a,n):a.textContent=n}function xs(t,e,n){di(t,e,n.classes,!0),di(t,e,n.styles,!1)}function _s(t,e){const n=e[3];return-1===t.index?Jt(n)?n:null:n}function Ts(t,e){const n=_s(t,e);return n?Ps(e[12],n[7]):null}function ws(t,e,n,a,r){if(null!=a){let i,s=!1;Jt(a)?i=a:Zt(a)&&(s=!0,a=a[0]);const u=ge(a);0===t?Ls(e,n,u,r||null):1===t?js(e,u,s):2===t&&e.destroyNode(u),null!=i&&function(t,e,n,a,r){const i=n[7];i!==ge(n)&&ws(e,t,a,i,r);for(let s=9;s<n.length;s++)Bs(t,e,n[s],a,i)}(e,t,i,n,r)}}function Os(t,e){return ta(e)?e.createText(vn(t)):e.createTextNode(vn(t))}function Ss(t,e,n){const a=Ts(t[1].node,t);a&&Bs(t[12],e?0:1,t,a,n)}function Is(t,e,n){const a=9+n,r=e.length;n>0&&(e[a-1][4]=t),n<r-9?(t[4]=e[a],mt(e,9+n,t)):(e.push(t),t[4]=null),t[3]=e;const i=t[17];null!==i&&e!==i&&function(t,e){const n=t[5];null===n?t[5]=[e]:n.push(e)}(i,t);const s=t[5];null!==s&&s.insertView(t[1]),t[2]|=128}function Ns(t,e){const n=t[5],a=n.indexOf(e);n.splice(a,1)}function Cs(t,e){if(t.length<=9)return;const n=9+e,a=t[n];if(a){const r=a[17];null!==r&&r!==t&&Ns(r,a),e>0&&(t[n-1][4]=a[4]);const i=yt(t,9+e);Ss(a,!1);const s=i[5];null!==s&&s.detachView(i[1]),a[3]=null,a[4]=null,a[2]&=-129}return a}function Rs(t,e){const n=Cs(t,e);n&&As(n)}function As(t){if(!(256&t[2])){const e=t[12];ta(e)&&e.destroyNode&&Bs(e,2,t,null,null),function(t){let e=t[14];if(!e)return Es(t);for(;e;){let n=null;if(Zt(e))n=e[14];else{const t=e[9];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)Es(e),e=ks(e,t);Es(e||t),n=e&&e[4]}e=n}}(t)}}function ks(t,e){let n;return Zt(t)&&(n=t[6])&&2===n.type?_s(n,t):t[3]===e?null:t[3]}function Es(t){if(Zt(t)&&!(256&t[2])){t[2]&=-129,t[2]|=256,function(t){const e=t[1];let n;if(null!=e&&null!=(n=e.destroyHooks))for(let a=0;a<n.length;a+=2){const e=t[n[a]];e instanceof ne||n[a+1].call(e)}}(t),function(t){const e=t[1].cleanup;if(null!==e){const n=t[8];for(let a=0;a<e.length-1;a+=2)if("string"==typeof e[a]){const r=e[a+1],i="function"==typeof r?r(t):ge(t[r]),s=n[e[a+2]],u=e[a+3];"boolean"==typeof u?i.removeEventListener(e[a],s,u):u>=0?n[u]():n[-u].unsubscribe(),a+=2}else e[a].call(n[e[a+1]]);t[8]=null}}(t);const e=t[6];e&&3===e.type&&ta(t[12])&&t[12].destroy();const n=t[17];if(null!==n&&Jt(t[3])){n!==t[3]&&Ns(n,t);const e=t[5];null!==e&&e.detachView(t[1])}}}function Ls(t,e,n,a){ta(t)?t.insertBefore(e,n,a):e.insertBefore(n,a,!0)}function Ds(t,e,n,a){null!==a?Ls(t,e,n,a):function(t,e,n){ta(t)?t.appendChild(e,n):e.appendChild(n)}(t,e,n)}function Ps(t,e){return ta(t)?t.parentNode(e):e.parentNode}function Ms(t,e,n){const a=function(t,e){if(ee(e))return Ps(e[12],be(t,e));const n=function(t){for(;null!=t.parent&&(4===t.parent.type||5===t.parent.type);)t=t.parent;return t}(t),a=n.parent;if(null==a){const t=e[6];return 2===t.type?Ts(t,e):function(t){const e=t[6];return e&&3===e.type?be(e,la(t)):null}(e)}{const t=n&&5===n.type;if(t&&2&n.flags)return be(n,e).parentNode;if(1&a.flags&&!t){const t=e[1].data,n=t[t[a.index].directiveStart].encapsulation;if(n!==wt.ShadowDom&&n!==wt.Native)return null}return be(a,e)}}(e,n);if(null!=a){const r=n[12],i=function(t,e){if(2===t.type){const n=_s(t,e);return qs(n.indexOf(e,9)-9,n)}return 4===t.type||5===t.type?be(t,e):null}(e.parent||n[6],n);if(Array.isArray(t))for(let e of t)Ds(r,a,e,i);else Ds(r,a,t,i)}}function qs(t,e){const n=9+t+1;if(n<e.length){const t=e[n],a=t[6].child;return null!==a?me(a,t):e[7]}return e[7]}function js(t,e,n){const a=Ps(t,e);a&&function(t,e,n,a){ta(t)?t.removeChild(e,n,a):e.removeChild(n)}(t,a,e,n)}function Fs(t,e,n,a){const r=a[3];let i=a[6].projection[n];if(Array.isArray(i))Ms(i,e,t);else for(;i;)32&i.flags||(1===i.type?Fs(t,e,i.projection,da(r)):(i.flags|=2,Gs(i,e,t,r))),i=i.projectionNext}function Vs(t,e,n,a){for(;t;)Gs(t,e,n,a),t=t.next}function Gs(t,e,n,a){const r=be(t,a);Ms(r,e,n),qr(r,a);const i=a[t.index];if(0===t.type)for(let s=9;s<i.length;s++)Ss(i[s],!0,i[7]);else if(5===t.type){let e=t.child;Vs(e,e,a,a)}else 4===t.type&&Vs(t.child,e,n,a),Jt(i)&&Ms(i[7],e,n)}function Bs(t,e,n,a,r){let i=n[1].node.child;for(;null!==i;)zs(t,e,n,i,a,r),i=i.next}function zs(t,e,n,a,r,i){const s=a.type;32&a.flags||(4===s||5===s?function(t,e,n,a,r,i){ws(e,t,r,n[a.index],i);let s=a.child;for(;s;)zs(t,e,n,s,r,i),s=s.next}(t,e,n,a,r,i):1===s?function(t,e,n,a,r,i){const s=da(n),u=s[6].projection[a.projection];if(void 0!==u)if(Array.isArray(u))for(let o=0;o<u.length;o++)ws(e,t,r,u[o],i);else{let n=u;const a=s[3];for(;null!==n;)zs(t,e,a,n,r,i),n=n.projectionNext}}(t,e,n,a,r,i):ws(e,t,r,n[a.index],i))}class Ys{constructor(t,e,n){this._context=e,this._componentIndex=n,this._appRef=null,this._viewContainerRef=null,this._tViewNode=null,this._lView=t}get rootNodes(){return null==this._lView[0]?function t(e,n,a){let r=n.child;for(;r;){const n=me(r,e);if(n&&a.push(n),4===r.type)t(e,r,a);else if(1===r.type){const t=da(e),n=t[6],i=la(t);let s=n.projection[r.projection];for(;s&&i;)a.push(be(s,i)),s=s.next}r=r.next}return a}(this._lView,this._lView[6],[]):[]}get context(){return this._context?this._context:this._lookUpContext()}get destroyed(){return 256==(256&this._lView[2])}destroy(){if(this._appRef)this._appRef.detachView(this);else if(this._viewContainerRef){const t=this._viewContainerRef.indexOf(this);t>-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}As(this._lView)}onDestroy(t){var e,n;n=t,gs(e=this._lView).push(n),e[1].firstTemplatePass&&ps(e).push(e[8].length-1,null)}markForCheck(){is(this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){us(this._lView,this.context)}checkNoChanges(){!function(t,e){Ze(!0);try{us(t,e)}finally{Ze(!1)}}(this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){this._appRef=null,function(t){Bs(t[12],1,t,null,null)}(this._lView)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}_lookUpContext(){return this._context=la(this._lView)[this._componentIndex]}}class Hs extends Ys{constructor(t){super(t,null,-1),this._view=t}detectChanges(){os(this._view)}checkNoChanges(){!function(t){Ze(!0);try{os(t)}finally{Ze(!1)}}(this._view)}get context(){return null}}let Us,Ws,Ks;function $s(t,e,n){return Us||(Us=class extends t{}),new Us(be(e,n))}function Zs(t,e,n,a){return Ws||(Ws=class extends t{constructor(t,e,n){super(),this._declarationView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=function(t,e,n,a){const r=Ye(),i=Ge();Be(null,!0);const s=Ri(n,t,e,16,null,null);return s[16]=n,ki(t,null,-1,s),t.firstTemplatePass&&(t.node.injectorIndex=a),Be(i,r),s}(e,t,this._declarationView,this._declarationTContainer.injectorIndex);n[17]=this._declarationView[this._declarationTContainer.index];const a=this._declarationView[5];null!==a&&(n[5]=a.createEmbeddedView(e)),Ei(n,e,t);const r=new Ys(n,t,-1);return r._tViewNode=n[6],r}}),0===n.type?new Ws(a,n,$s(e,n,a)):null}function Js(t,e,n,a){let r;Ks||(Ks=class extends t{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostView=n}get element(){return $s(e,this._hostTNode,this._hostView)}get injector(){return new Ca(this._hostTNode,this._hostView)}get parentInjector(){const t=ya(this._hostTNode,this._hostView),e=oa(t,this._hostView),n=function(t,e,n){if(n.parent&&-1!==n.parent.injectorIndex){const t=n.parent.injectorIndex;let e=n.parent;for(;null!=e.parent&&t==e.injectorIndex;)e=e.parent;return e}let a=ua(t),r=e,i=e[6];for(;a>1;)r=r[16],i=r[6],a--;return i}(t,this._hostView,this._hostTNode);return ia(t)&&null!=n?new Ca(n,e):new Ca(null,this._hostView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){return null!==this._lContainer[8]&&this._lContainer[8][t]||null}get length(){return this._lContainer.length-9}createEmbeddedView(t,e,n){const a=t.createEmbeddedView(e||{});return this.insert(a,n),a}createComponent(t,e,n,a,r){const i=n||this.parentInjector;!r&&null==t.ngModule&&i&&(r=i.get(ft,null));const s=t.create(i,a,void 0,r);return this.insert(s.hostView,e),s}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");this.allocateContainerIfNeeded();const n=t._lView,a=this._adjustIndex(e);return Jt(n[3])?this.move(t,a):(Is(n,this._lContainer,a),Ss(n,!0,qs(a,this._lContainer)),t.attachToViewContainerRef(this),mt(this._lContainer[8],a,t),t)}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this.indexOf(t);return-1!==n&&this.detach(n),this.insert(t,e),t}indexOf(t){return null!==this._lContainer[8]?this._lContainer[8].indexOf(t):0}remove(t){this.allocateContainerIfNeeded();const e=this._adjustIndex(t,-1);Rs(this._lContainer,e),yt(this._lContainer[8],e)}detach(t){this.allocateContainerIfNeeded();const e=this._adjustIndex(t,-1),n=Cs(this._lContainer,e);return n&&null!=yt(this._lContainer[8],e)?new Ys(n,n[9],-1):null}_adjustIndex(t,e=0){return null==t?this.length+e:t}allocateContainerIfNeeded(){null===this._lContainer[8]&&(this._lContainer[8]=[])}});const i=a[n.index];if(Jt(i))r=i,r[2]=-1;else{let t;if(t=4===n.type?ge(i):a[12].createComment(""),ee(a)){const e=a[12],r=be(n,a);Ls(e,Ps(e,r),t,function(t,e){return ta(t)?t.nextSibling(e):e.nextSibling}(e,r))}else Ms(t,n,a);a[n.index]=r=ns(i,a,t,n,!0),rs(a,r)}return new Ks(r,n,a)}function Qs(t=!1){return function(t,e,n){if(Xt(t)&&!n){const n=t.directiveStart,a=xe(t.index,e);return new Ys(a,null,n)}if(3===t.type||0===t.type||4===t.type){const t=da(e);return new Ys(t,t[9],-1)}return null}(Ge(),Ae(),t)}let Xs=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>eu(),t})();const tu=Qs,eu=(...t)=>{},nu=Function;function au(t){return"function"==typeof t}const ru=/^function\s+\S+\(\)\s*{[\s\S]+\.apply\(this,\s*arguments\)/,iu=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{/,su=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{[\s\S]*constructor\s*\(/,uu=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{[\s\S]*constructor\s*\(\)\s*{\s+super\(\.\.\.arguments\)/;class ou{constructor(t){this._reflect=t||U.Reflect}isReflectionEnabled(){return!0}factory(t){return(...e)=>new t(...e)}_zipTypesAndAnnotations(t,e){let n;n=new Array(void 0===t?e.length:t.length);for(let a=0;a<n.length;a++)n[a]=void 0===t?[]:t[a]&&t[a]!=Object?[t[a]]:[],e&&null!=e[a]&&(n[a]=n[a].concat(e[a]));return n}_ownParameters(t,e){if(n=t.toString(),ru.test(n)||uu.test(n)||iu.test(n)&&!su.test(n))return null;var n;if(t.parameters&&t.parameters!==e.parameters)return t.parameters;const a=t.ctorParameters;if(a&&a!==e.ctorParameters){const t="function"==typeof a?a():a,e=t.map(t=>t&&t.type),n=t.map(t=>t&&lu(t.decorators));return this._zipTypesAndAnnotations(e,n)}const r=t.hasOwnProperty(b)&&t[b],i=this._reflect&&this._reflect.getOwnMetadata&&this._reflect.getOwnMetadata("design:paramtypes",t);return i||r?this._zipTypesAndAnnotations(i,r):new Array(t.length).fill(void 0)}parameters(t){if(!au(t))return[];const e=du(t);let n=this._ownParameters(t,e);return n||e===Object||(n=this.parameters(e)),n||[]}_ownAnnotations(t,e){if(t.annotations&&t.annotations!==e.annotations){let e=t.annotations;return"function"==typeof e&&e.annotations&&(e=e.annotations),e}return t.decorators&&t.decorators!==e.decorators?lu(t.decorators):t.hasOwnProperty(p)?t[p]:null}annotations(t){if(!au(t))return[];const e=du(t),n=this._ownAnnotations(t,e)||[];return(e!==Object?this.annotations(e):[]).concat(n)}_ownPropMetadata(t,e){if(t.propMetadata&&t.propMetadata!==e.propMetadata){let e=t.propMetadata;return"function"==typeof e&&e.propMetadata&&(e=e.propMetadata),e}if(t.propDecorators&&t.propDecorators!==e.propDecorators){const e=t.propDecorators,n={};return Object.keys(e).forEach(t=>{n[t]=lu(e[t])}),n}return t.hasOwnProperty(m)?t[m]:null}propMetadata(t){if(!au(t))return{};const e=du(t),n={};if(e!==Object){const t=this.propMetadata(e);Object.keys(t).forEach(e=>{n[e]=t[e]})}const a=this._ownPropMetadata(t,e);return a&&Object.keys(a).forEach(t=>{const e=[];n.hasOwnProperty(t)&&e.push(...n[t]),e.push(...a[t]),n[t]=e}),n}ownPropMetadata(t){return au(t)&&this._ownPropMetadata(t,du(t))||{}}hasLifecycleHook(t,e){return t instanceof nu&&e in t.prototype}guards(t){return{}}getter(t){return new Function("o","return o."+t+";")}setter(t){return new Function("o","v","return o."+t+" = v;")}method(t){return new Function("o","args",`if (!o.${t}) throw new Error('"${t}" is undefined');\n        return o.${t}.apply(o, args);`)}importUri(t){return"object"==typeof t&&t.filePath?t.filePath:"./"+j(t)}resourceUri(t){return"./"+j(t)}resolveIdentifier(t,e,n,a){return a}resolveEnum(t,e){return t[e]}}function lu(t){return t?t.map(t=>new(0,t.type.annotationCls)(...t.args?t.args:[])):[]}function du(t){const e=t.prototype?Object.getPrototypeOf(t.prototype):null;return(e?e.constructor:null)||Object}let cu=null;function fu(){return cu=cu||new ou}function hu(t){return gu(fu().parameters(t))}function gu(t){const e=W();return t.map(t=>function(t,e){const n={token:null,host:!1,optional:!1,resolved:t.R3ResolvedDependencyType.Token,self:!1,skipSelf:!1};function a(e){n.resolved=t.R3ResolvedDependencyType.Token,n.token=e}if(Array.isArray(e)){if(0===e.length)throw new Error("Dependency array must have arguments.");for(let r=0;r<e.length;r++){const i=e[r];if(void 0!==i)if(i instanceof w||"Optional"===i.__proto__.ngMetadataName)n.optional=!0;else if(i instanceof S||"SkipSelf"===i.__proto__.ngMetadataName)n.skipSelf=!0;else if(i instanceof O||"Self"===i.__proto__.ngMetadataName)n.self=!0;else if(i instanceof I||"Host"===i.__proto__.ngMetadataName)n.host=!0;else if(i instanceof T)n.token=i.token;else if(i instanceof N){if(void 0===i.attributeName)throw new Error("Attribute name must be defined.");n.token=i.attributeName,n.resolved=t.R3ResolvedDependencyType.Attribute}else i===Xs?(n.token=i,n.resolved=t.R3ResolvedDependencyType.ChangeDetectorRef):a(i)}}else a(e);return n}(e,t))}function pu(t,e){let n=null;t.hasOwnProperty(M)||Object.defineProperty(t,M,{get:()=>{if(null===n){const a=e||{providedIn:null},r=mu(a)||vu(a)||yu(a)||xu(a),i={name:t.name,type:t,typeArgumentCount:0,providedIn:a.providedIn,ctorDeps:hu(t),userDeps:void 0};if((mu(a)||vu(a))&&void 0!==a.deps&&(i.userDeps=gu(a.deps)),r)if(mu(a))i.useClass=a.useClass;else if(yu(a))i.useValue=a.useValue;else if(vu(a))i.useFactory=a.useFactory;else{if(!xu(a))throw new Error("Unreachable state.");i.useExisting=a.useExisting}else i.useClass=t;n=W().compileInjectable(ct,`ng:///${t.name}/ngInjectableDef.js`,i)}return n}})}const bu=R({provide:String,useValue:R});function mu(t){return void 0!==t.useClass}function yu(t){return bu in t}function vu(t){return void 0!==t.useFactory}function xu(t){return void 0!==t.useExisting}const _u=R({provide:String,useValue:R}),Tu=[];function wu(t,e){if(!e){const e=(new ou).parameters(t);return()=>new t(...ut(e))}if(_u in e){const t=e;return()=>t.useValue}if(e.useExisting){const t=e;return()=>rt(t.useExisting)}if(e.useFactory){const t=e;return()=>t.useFactory(...ut(t.deps||Tu))}if(e.useClass){const n=e;let a=e.deps;if(!a){const e=new ou;a=e.parameters(t)}return()=>new n.useClass(...ut(a))}{let n=e.deps;if(!n){const e=new ou;n=e.parameters(t)}return()=>new t(...ut(n))}}const Ou=y("Injectable",void 0,void 0,void 0,(t,e)=>Iu(t,e)),Su=pu,Iu=function(t,e){e&&void 0!==e.providedIn&&!D(t)&&(t.ngInjectableDef=k({token:t,providedIn:e.providedIn,factory:wu(t,e)}))},Nu=new K("The presence of this token marks an injector as being the root injector."),Cu={},Ru={},Au=[];let ku=void 0;function Eu(){return void 0===ku&&(ku=new ot),ku}function Lu(t,e=null,n=null,a){return e=e||Eu(),new Du(t,n,e,a)}class Du{constructor(t,e,n,a=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const r=[];bt([t],t=>this.processInjectorType(t,[],r)),e&&bt(e,n=>this.processProvider(n,t,e)),this.records.set($,qu(void 0,this)),this.isRootInjector=this.records.has(Nu),this.injectorDefTypes.forEach(t=>this.get(t)),this.source=a||("object"==typeof t?null:j(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=Z,n=C.Default){this.assertNotDestroyed();const a=et(this);try{if(!(n&C.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(r=t)||"object"==typeof r&&r instanceof K)&&D(t);n&&this.injectableDefInScope(n)&&(e=qu(Pu(t),Cu),this.records.set(t,e))}if(void 0!==e)return this.hydrate(t,e)}return(n&C.Self?Eu():this.parent).get(t,n&C.Optional?null:e)}catch(i){if("NullInjectorError"===i.name){if((i.ngTempTokenPath=i.ngTempTokenPath||[]).unshift(j(t)),a)throw i;return lt(i,t,"R3InjectorError",this.source)}throw i}finally{et(a)}var r}toString(){const t=[];return this.records.forEach((e,n)=>t.push(j(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=G(t)))return!1;let a=P(t);const r=null==a&&t.ngModule||void 0,i=void 0===r?t:r,s=-1!==n.indexOf(i);if(void 0!==r&&(a=P(r)),null==a)return!1;if(this.injectorDefTypes.add(i),this.records.set(i,qu(a.factory,Cu)),null!=a.imports&&!s){let t;n.push(i);try{bt(a.imports,a=>{this.processInjectorType(a,e,n)&&(void 0===t&&(t=[]),t.push(a))})}finally{}if(void 0!==t)for(let e=0;e<t.length;e++){const{ngModule:n,providers:a}=t[e];bt(a,t=>this.processProvider(t,n,a||Au))}}const u=a.providers;if(null!=u&&!s){const e=t;bt(u,t=>this.processProvider(t,e,u))}return void 0!==r&&void 0!==t.providers}processProvider(t,e,n){let a=Fu(t=G(t))?t:G(t&&t.provide);const r=function(t,e,n){let a=Mu(t,e,n);return ju(t)?qu(void 0,t.useValue):qu(a,Cu)}(t,e,n);if(Fu(t)||!0!==t.multi){const t=this.records.get(a);t&&void 0!==t.multi&&zr()}else{let e=this.records.get(a);e?void 0===e.multi&&zr():(e=qu(void 0,Cu,!0),e.factory=()=>ut(e.multi),this.records.set(a,e)),a=t,e.multi.push(t)}this.records.set(a,r)}hydrate(t,e){var n;return e.value===Ru?function(t){throw new Error("Cannot instantiate cyclic dependency! "+t)}(j(t)):e.value===Cu&&(e.value=Ru,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||"root"===t.providedIn&&this.isRootInjector:this.injectorDefTypes.has(t.providedIn))}}function Pu(t){const e=D(t);if(null!==e)return e.factory;const n=P(t);if(null!==n)return n.factory;if(t instanceof K)throw new Error(`Token ${j(t)} is missing an ngInjectableDef definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=new Array(e).fill("?");throw new Error(`Can't resolve all parameters for ${j(t)}: (${n.join(", ")}).`)}const n=(a=t)&&a[M]?(console.warn(`DEPRECATED: DI is instantiating a token "${a.name}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in v10. Please add @Injectable() to the "${a.name}" class.`),a[M]):null;var a;return null!==n?()=>n.factory(t):()=>new t}(t);throw new Error("unreachable")}function Mu(t,e,n){let a=void 0;if(Fu(t))return Pu(G(t));if(ju(t))a=()=>G(t.useValue);else if((r=t)&&r.useExisting)a=()=>rt(G(t.useExisting));else if(function(t){return!(!t||!t.useFactory)}(t))a=()=>t.useFactory(...ut(t.deps||[]));else{const r=G(t&&(t.useClass||t.provide));if(r||function(t,e,n){let a="";throw t&&e&&(a=` - only instances of Provider and Type are allowed, got: [${e.map(t=>t==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${j(t)}'`+a)}(e,n,t),!function(t){return!!t.deps}(t))return Pu(r);a=()=>new r(...ut(t.deps))}var r;return a}function qu(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function ju(t){return null!==t&&"object"==typeof t&&Q in t}function Fu(t){return"function"==typeof t}function Vu(t,e,n){return Lu({name:n},e,t,n)}const Gu=function(t,e,n){return new Wu(t,e,n)};let Bu=(()=>{class t{static create(t,e){return Array.isArray(t)?Gu(t,e,""):Gu(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=Z,t.NULL=new ot,t.ngInjectableDef=k({token:t,providedIn:"any",factory:()=>rt($)}),t.__NG_ELEMENT_ID__=-1,t})();const zu=function(t){return t},Yu=[],Hu=zu,Uu=function(){return Array.prototype.slice.call(arguments)};class Wu{constructor(t,e=Bu.NULL,n=null){this.parent=e,this.source=n;const a=this._records=new Map;a.set(Bu,{token:Bu,fn:zu,deps:Yu,value:this,useNew:!1}),a.set($,{token:$,fn:zu,deps:Yu,value:this,useNew:!1}),function t(e,n){if(n)if((n=G(n))instanceof Array)for(let a=0;a<n.length;a++)t(e,n[a]);else{if("function"==typeof n)throw $u("Function/Class not supported",n);if(!n||"object"!=typeof n||!n.provide)throw $u("Unexpected provider",n);{let t=G(n.provide);const a=function(t){const e=function(t){let e=Yu;const n=t.deps;if(n&&n.length){e=[];for(let t=0;t<n.length;t++){let a=6,r=G(n[t]);if(r instanceof Array)for(let t=0,e=r;t<e.length;t++){const n=e[t];n instanceof w||n==w?a|=1:n instanceof S||n==S?a&=-3:n instanceof O||n==O?a&=-5:r=n instanceof T?n.token:G(n)}e.push({token:r,options:a})}}else if(t.useExisting)e=[{token:G(t.useExisting),options:6}];else if(!n&&!(Q in t))throw $u("'deps' required",t);return e}(t);let n=zu,a=Yu,r=!1,i=G(t.provide);if(Q in t)a=t.useValue;else if(t.useFactory)n=t.useFactory;else if(t.useExisting);else if(t.useClass)r=!0,n=G(t.useClass);else{if("function"!=typeof i)throw $u("StaticProvider does not have [useValue|useFactory|useExisting|useClass] or [provide] is not newable",t);r=!0,n=i}return{deps:e,fn:n,useNew:r,value:a}}(n);if(!0===n.multi){let a=e.get(t);if(a){if(a.fn!==Uu)throw Ku(t)}else e.set(t,a={token:n.provide,deps:[],useNew:!1,fn:Uu,value:Yu});t=n,a.deps.push({token:t,options:6})}const r=e.get(t);if(r&&r.fn==Uu)throw Ku(t);e.set(t,a)}}}(a,t)}get(t,e,n=C.Default){const a=this._records.get(t);try{return function t(e,n,a,r,i,s){try{return function(e,n,a,r,i,s){let u;if(!n||s&C.SkipSelf)s&C.Self||(u=r.get(e,i,C.Default));else{if(u=n.value,u==Hu)throw Error("ɵCircular dependency");if(u===Yu){n.value=Hu;let e=void 0,i=n.useNew,s=n.fn,o=n.deps,l=Yu;if(o.length){l=[];for(let e=0;e<o.length;e++){const n=o[e],i=n.options,s=2&i?a.get(n.token):void 0;l.push(t(n.token,s,a,s||4&i?r:Bu.NULL,1&i?null:Bu.THROW_IF_NOT_FOUND,C.Default))}}n.value=u=i?new s(...l):s.apply(e,l)}}return u}(e,n,a,r,i,s)}catch(u){throw u instanceof Error||(u=new Error(u)),(u.ngTempTokenPath=u.ngTempTokenPath||[]).unshift(e),n&&n.value==Hu&&(n.value=Yu),u}}(t,a,this._records,this.parent,e,n)}catch(r){return lt(r,t,"StaticInjectorError",this.source)}}toString(){const t=[];return this._records.forEach((e,n)=>t.push(j(n))),`StaticInjector[${t.join(", ")}]`}}function Ku(t){return $u("Cannot mix multi providers and regular providers",t)}function $u(t,e){return new Error(dt(t,e,"StaticInjectorError"))}function Zu(t){return t.length>1?" ("+function(t){const e=[];for(let n=0;n<t.length;++n){if(e.indexOf(t[n])>-1)return e.push(t[n]),e;e.push(t[n])}return e}(t.slice().reverse()).map(t=>j(t.token)).join(" -> ")+")":""}function Ju(t,e,n,a){const r=[e],i=n(r),s=a?function(t,e){const n=`${t} caused by: ${e instanceof Error?e.message:e}`,a=Error(n);return a.ngOriginalError=e,a}(i,a):Error(i);return s.addKey=Qu,s.keys=r,s.injectors=[t],s.constructResolvingMessage=n,s.ngOriginalError=a,s}function Qu(t,e){this.injectors.push(t),this.keys.push(e),this.message=this.constructResolvingMessage(this.keys)}function Xu(t,e){const n=[];for(let a=0,r=e.length;a<r;a++){const t=e[a];n.push(t&&0!=t.length?t.map(j).join(" "):"?")}return Error("Cannot resolve all parameters for '"+j(t)+"'("+n.join(", ")+"). Make sure that all the parameters are decorated with Inject or have valid type annotations and that '"+j(t)+"' is decorated with Injectable.")}class to{constructor(t,e){if(this.token=t,this.id=e,!t)throw new Error("Token must be defined!");this.displayName=j(this.token)}static get(t){return no.get(G(t))}static get numberOfKeys(){return no.numberOfKeys}}class eo{constructor(){this._allKeys=new Map}get(t){if(t instanceof to)return t;if(this._allKeys.has(t))return this._allKeys.get(t);const e=new to(t,to.numberOfKeys);return this._allKeys.set(t,e),e}get numberOfKeys(){return this._allKeys.size}}const no=new eo;class ao{constructor(t){this.reflectionCapabilities=t}updateCapabilities(t){this.reflectionCapabilities=t}factory(t){return this.reflectionCapabilities.factory(t)}parameters(t){return this.reflectionCapabilities.parameters(t)}annotations(t){return this.reflectionCapabilities.annotations(t)}propMetadata(t){return this.reflectionCapabilities.propMetadata(t)}hasLifecycleHook(t,e){return this.reflectionCapabilities.hasLifecycleHook(t,e)}getter(t){return this.reflectionCapabilities.getter(t)}setter(t){return this.reflectionCapabilities.setter(t)}method(t){return this.reflectionCapabilities.method(t)}importUri(t){return this.reflectionCapabilities.importUri(t)}resourceUri(t){return this.reflectionCapabilities.resourceUri(t)}resolveIdentifier(t,e,n,a){return this.reflectionCapabilities.resolveIdentifier(t,e,n,a)}resolveEnum(t,e){return this.reflectionCapabilities.resolveEnum(t,e)}}const ro=new ao(new ou);class io{constructor(t,e,n){this.key=t,this.optional=e,this.visibility=n}static fromKey(t){return new io(t,!1,null)}}const so=[];class uo{constructor(t,e,n){this.key=t,this.resolvedFactories=e,this.multiProvider=n,this.resolvedFactory=this.resolvedFactories[0]}}class oo{constructor(t,e){this.factory=t,this.dependencies=e}}function lo(t){let e,n;if(t.useClass){const a=G(t.useClass);e=ro.factory(a),n=ho(a)}else t.useExisting?(e=t=>t,n=[io.fromKey(to.get(t.useExisting))]):t.useFactory?(e=t.useFactory,n=function(t,e){if(e){const n=e.map(t=>[t]);return e.map(e=>go(t,e,n))}return ho(t)}(t.useFactory,t.deps)):(e=()=>t.useValue,n=so);return new oo(e,n)}function co(t){return new uo(to.get(t.provide),[lo(t)],t.multi||!1)}function fo(t){const e=function(t,e){for(let n=0;n<t.length;n++){const a=t[n],r=e.get(a.key.id);if(r){if(a.multiProvider!==r.multiProvider)throw Error(`Cannot mix multi providers and regular providers, got: ${r} ${a}`);if(a.multiProvider)for(let t=0;t<a.resolvedFactories.length;t++)r.resolvedFactories.push(a.resolvedFactories[t]);else e.set(a.key.id,a)}else{let t;t=a.multiProvider?new uo(a.key,a.resolvedFactories.slice(),a.multiProvider):a,e.set(a.key.id,t)}}return e}(function t(e,n){return e.forEach(e=>{if(e instanceof nu)n.push({provide:e,useClass:e});else if(e&&"object"==typeof e&&void 0!==e.provide)n.push(e);else{if(!(e instanceof Array))throw Error("Invalid provider - only instances of Provider and Type are allowed, got: "+e);t(e,n)}}),n}(t,[]).map(co),new Map);return Array.from(e.values())}function ho(t){const e=ro.parameters(t);if(!e)return[];if(e.some(t=>null==t))throw Xu(t,e);return e.map(n=>go(t,n,e))}function go(t,e,n){let a=null,r=!1;if(!Array.isArray(e))return po(e instanceof T?e.token:e,r,null);let i=null;for(let s=0;s<e.length;++s){const t=e[s];t instanceof nu?a=t:t instanceof T?a=t.token:t instanceof w?r=!0:t instanceof O||t instanceof S?i=t:t instanceof K&&(a=t)}if(a=G(a),null!=a)return po(a,r,i);throw Xu(t,n)}function po(t,e,n){return new io(to.get(t),e,n)}const bo=new Object;class mo{static resolve(t){return fo(t)}static resolveAndCreate(t,e){const n=mo.resolve(t);return mo.fromResolvedProviders(n,e)}static fromResolvedProviders(t,e){return new yo(t,e)}}let yo=(()=>{class t{constructor(t,e){this._constructionCounter=0,this._providers=t,this.parent=e||null;const n=t.length;this.keyIds=new Array(n),this.objs=new Array(n);for(let a=0;a<n;a++)this.keyIds[a]=t[a].key.id,this.objs[a]=bo}get(t,e=Z){return this._getByKey(to.get(t),null,e)}resolveAndCreateChild(t){const e=mo.resolve(t);return this.createChildFromResolved(e)}createChildFromResolved(e){const n=new t(e);return n.parent=this,n}resolveAndInstantiate(t){return this.instantiateResolved(mo.resolve([t])[0])}instantiateResolved(t){return this._instantiateProvider(t)}getProviderAtIndex(t){if(t<0||t>=this._providers.length)throw function(t){return Error(`Index ${t} is out-of-bounds.`)}(t);return this._providers[t]}_new(t){if(this._constructionCounter++>this._getMaxNumberOfObjects())throw Ju(this,t.key,(function(t){return"Cannot instantiate cyclic dependency!"+Zu(t)}));return this._instantiateProvider(t)}_getMaxNumberOfObjects(){return this.objs.length}_instantiateProvider(t){if(t.multiProvider){const e=new Array(t.resolvedFactories.length);for(let n=0;n<t.resolvedFactories.length;++n)e[n]=this._instantiate(t,t.resolvedFactories[n]);return e}return this._instantiate(t,t.resolvedFactories[0])}_instantiate(t,e){const n=e.factory;let a,r;try{a=e.dependencies.map(t=>this._getByReflectiveDependency(t))}catch(s){throw s.addKey&&s.addKey(this,t.key),s}try{r=n(...a)}catch(s){throw Ju(this,t.key,(function(t){const e=j(t[0].token);return`${i.message}: Error during instantiation of ${e}!${Zu(t)}.`}),i=s)}var i;return r}_getByReflectiveDependency(t){return this._getByKey(t.key,t.visibility,t.optional?null:Z)}_getByKey(e,n,a){return e===t.INJECTOR_KEY?this:n instanceof O?this._getByKeySelf(e,a):this._getByKeyDefault(e,a,n)}_getObjByKeyId(t){for(let e=0;e<this.keyIds.length;e++)if(this.keyIds[e]===t)return this.objs[e]===bo&&(this.objs[e]=this._new(this._providers[e])),this.objs[e];return bo}_throwOrNull(t,e){if(e!==Z)return e;throw function(t,e){return Ju(t,e,(function(t){return`No provider for ${j(t[0].token)}!${Zu(t)}`}))}(this,t)}_getByKeySelf(t,e){const n=this._getObjByKeyId(t.id);return n!==bo?n:this._throwOrNull(t,e)}_getByKeyDefault(e,n,a){let r;for(r=a instanceof S?this.parent:this;r instanceof t;){const t=r,n=t._getObjByKeyId(e.id);if(n!==bo)return n;r=t.parent}return null!==r?r.get(e.token,n):this._throwOrNull(e,n)}get displayName(){return`ReflectiveInjector(providers: [${function(t,e){const n=new Array(t._providers.length);for(let a=0;a<t._providers.length;++a)n[a]=e(t.getProviderAtIndex(a));return n}(this,t=>' "'+t.key.displayName+'" ').join(", ")}])`}toString(){return this.displayName}}return t.INJECTOR_KEY=to.get(Bu),t})();const vo=new K("AnalyzeForEntryComponents");class xo{}const _o=_("ContentChildren",(t,e={})=>Object.assign({selector:t,first:!1,isViewQuery:!1,descendants:!1},e),xo),To=_("ContentChild",(t,e={})=>Object.assign({selector:t,first:!0,isViewQuery:!1,descendants:!0},e),xo),wo=_("ViewChildren",(t,e={})=>Object.assign({selector:t,first:!1,isViewQuery:!0,descendants:!0},e),xo),Oo=_("ViewChild",(t,e)=>Object.assign({selector:t,first:!0,isViewQuery:!0,descendants:!0},e),xo);function So(t){const e=[],n=new Map;function a(e){let a=n.get(e);if(!a){const r=t(e);n.set(e,a=r.then(Ao))}return a}return Io.forEach((t,n)=>{const r=[];t.templateUrl&&r.push(a(t.templateUrl).then(e=>{t.template=e}));const i=t.styleUrls,s=t.styles||(t.styles=[]),u=t.styles.length;i&&i.forEach((e,n)=>{s.push(""),r.push(a(e).then(a=>{s[u+n]=a,i.splice(i.indexOf(e),1),0==i.length&&(t.styleUrls=void 0)}))});const o=Promise.all(r).then(()=>function(t){No.delete(t)}(n));e.push(o)}),Ro(),Promise.all(e).then(()=>{})}let Io=new Map;const No=new Set;function Co(t){return!!(t.templateUrl&&!t.hasOwnProperty("template")||t.styleUrls&&t.styleUrls.length)}function Ro(){const t=Io;return Io=new Map,t}function Ao(t){return"string"==typeof t?t:t.text()}function ko(t){const e=Ae(),n=e[1];n.firstTemplatePass&&(function(t,e,n){const a=t.expandoInstructions,r=a.length;r>=2&&a[r-2]===e.hostBindings?a[r-1]=a[r-1]+n:a.push(e.hostBindings,n)}(n,Se,t),function(t,e,n){for(let a=0;a<n;a++)e.push(ci),t.blueprint.push(ci),t.data.push(null)}(n,e,t))}let Eo=null;function Lo(){if(!Eo){const t=U.Symbol;if(t&&t.iterator)Eo=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;e<t.length;++e){const n=t[e];"entries"!==n&&"size"!==n&&Map.prototype[n]===Map.prototype.entries&&(Eo=n)}}}return Eo}function Do(t,e){return t===e||"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)}function Po(t,e){const n=qo(t),a=qo(e);if(n&&a)return function(t,e,n){const a=t[Lo()](),r=e[Lo()]();for(;;){const t=a.next(),e=r.next();if(t.done&&e.done)return!0;if(t.done||e.done)return!1;if(!n(t.value,e.value))return!1}}(t,e,Po);{const r=t&&("object"==typeof t||"function"==typeof t),i=e&&("object"==typeof e||"function"==typeof e);return!(n||!r||a||!i)||Do(t,e)}}class Mo{constructor(t){this.wrapped=t}static wrap(t){return new Mo(t)}static unwrap(t){return Mo.isWrapped(t)?t.wrapped:t}static isWrapped(t){return t instanceof Mo}}function qo(t){return!!jo(t)&&(Array.isArray(t)||!(t instanceof Map)&&Lo()in t)}function jo(t){return null!==t&&("function"==typeof t||"object"==typeof t)}function Fo(t,e,n){return t[e]=n}function Vo(t,e){return t[e]}function Go(t,e,n){return!!yn(t[e],n)&&(t[e]=n,!0)}function Bo(t,e,n,a){const r=Go(t,e,n);return Go(t,e+1,a)||r}function zo(t,e,n,a,r){const i=Bo(t,e,n,a);return Go(t,e+2,r)||i}function Yo(t,e,n,a,r,i){const s=Bo(t,e,n,a);return Bo(t,e+2,r,i)||s}function Ho(t,e,n){const a=on(),r=Uo(Ae(),e);return r!==ci&&Yi(a,t,r,n),Ho}function Uo(t,e){const n=t[7]++;return cs(t),Go(t,n,e)?e:ci}function Wo(t,e,n,a){const r=on(),i=Ae(),s=Uo(i,e);return s!==ci&&es(r,t,s,i,n,a),Wo}function Ko(t,e){let n=!1;const a=t[1].data;let r=t[7];if(null==a[r]){for(let t=2;t<e.length;t+=2)a[r++]=e[t];r=t[7]}for(let s=1;s<e.length;s+=2)n=Go(t,r++,e[s])||n;if(t[7]=r,cs(t,e[0],e[e.length-1]),!n)return ci;let i=e[0];for(let s=1;s<e.length;s+=2)i+=vn(e[s])+e[s+1];return i}function $o(t,e,n,a){const r=Go(t,t[7]++,n);return cs(t,e,a),r?e+vn(n)+a:ci}function Zo(t,e,n,a,r,i){const s=t[7],u=Bo(t,s,n,r);return t[7]+=2,cs(t,e,i)&&(t[1].data[s]=a),u?e+vn(n)+a+vn(r)+i:ci}function Jo(t,e,n,a,r,i,s,u){const o=t[7],l=zo(t,o,n,r,s);if(t[7]+=3,cs(t,e,u)){const e=t[1].data;e[o]=a,e[o+1]=i}return l?e+vn(n)+a+vn(r)+i+vn(s)+u:ci}function Qo(t,e,n,a,r,i,s,u,o,l){const d=t[7],c=Yo(t,d,n,r,s,o);if(t[7]+=4,cs(t,e,l)){const e=t[1].data;e[d]=a,e[d+1]=i,e[d+2]=u}return c?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l:ci}function Xo(t,e,n,a,r,i,s,u,o,l,d,c){const f=t[7];let h=Yo(t,f,n,r,s,o);if(h=Go(t,f+4,d)||h,t[7]+=5,cs(t,e,c)){const e=t[1].data;e[f]=a,e[f+1]=i,e[f+2]=u,e[f+3]=l}return h?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l+vn(d)+c:ci}function tl(t,e,n,a,r,i,s,u,o,l,d,c,f,h){const g=t[7];let p=Yo(t,g,n,r,s,o);if(p=Bo(t,g+4,d,f)||p,t[7]+=6,cs(t,e,h)){const e=t[1].data;e[g]=a,e[g+1]=i,e[g+2]=u,e[g+3]=l,e[g+4]=c}return p?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l+vn(d)+c+vn(f)+h:ci}function el(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p){const b=t[7];let m=Yo(t,b,n,r,s,o);if(m=zo(t,b+4,d,f,g)||m,t[7]+=7,cs(t,e,p)){const e=t[1].data;e[b]=a,e[b+1]=i,e[b+2]=u,e[b+3]=l,e[b+4]=c,e[b+5]=h}return m?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l+vn(d)+c+vn(f)+h+vn(g)+p:ci}function nl(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m){const y=t[7];let v=Yo(t,y,n,r,s,o);if(v=Yo(t,y+4,d,f,g,b)||v,t[7]+=8,cs(t,e,m)){const e=t[1].data;e[y]=a,e[y+1]=i,e[y+2]=u,e[y+3]=l,e[y+4]=c,e[y+5]=h,e[y+6]=p}return v?e+vn(n)+a+vn(r)+i+vn(s)+u+vn(o)+l+vn(d)+c+vn(f)+h+vn(g)+p+vn(b)+m:ci}function al(t,e,n,a,r,i){const s=on(),u=Ae(),o=$o(u,e,n,a);return o!==ci&&es(s,t,o,u,r,i),al}function rl(t,e,n,a,r,i,s,u){const o=on(),l=Ae(),d=Zo(l,e,n,a,r,i);return d!==ci&&es(o,t,d,l,s,u),rl}function il(t,e,n,a,r,i,s,u,o,l){const d=on(),c=Ae(),f=Jo(c,e,n,a,r,i,s,u);return f!==ci&&es(d,t,f,c,o,l),il}function sl(t,e,n,a,r,i,s,u,o,l,d,c){const f=on(),h=Ae(),g=Qo(h,e,n,a,r,i,s,u,o,l);return g!==ci&&es(f,t,g,h,d,c),sl}function ul(t,e,n,a,r,i,s,u,o,l,d,c,f,h){const g=on(),p=Ae(),b=Xo(p,e,n,a,r,i,s,u,o,l,d,c);return b!==ci&&es(g,t,b,p,f,h),ul}function ol(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p){const b=on(),m=Ae(),y=tl(m,e,n,a,r,i,s,u,o,l,d,c,f,h);return y!==ci&&es(b,t,y,m,g,p),ol}function ll(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m){const y=on(),v=Ae(),x=el(v,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p);return x!==ci&&es(y,t,x,v,b,m),ll}function dl(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m,y,v){const x=on(),_=Ae(),T=nl(_,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m);return T!==ci&&es(x,t,T,_,y,v),dl}function cl(t,e,n,a){const r=on(),i=Ae(),s=Ko(i,e);return s!==ci&&es(r,t,s,i,n,a),cl}function fl(t){us(Mr(t),t)}function hl(t){!function(t,e){const n=0===t.flags;if(t.flags|=1,n&&t.clean==Si){let e;t.clean=new Promise(t=>e=t),t.scheduler(()=>{if(1&t.flags&&(t.flags&=-2,ss(t)),2&t.flags){t.flags&=-3;const e=t.playerHandler;e&&e.flushPlayers()}t.clean=Si,e(null)})}}(is(Mr(t))[9])}function gl(t){const e=Ae(),n=yl(e,t,null,null);e[1].firstTemplatePass&&(n.tViews=[]),He()}function pl(t,e,n,a,r,i,s,u){const o=Ae(),l=o[1],d=yl(o,t,r||null,i||null);if(l.firstTemplatePass){Hi(l,o,d,s||null);const t=d.tViews=Fi(-1,e,n,a,l.directiveRegistry,l.pipeRegistry,null,null);null!==l.queries&&(l.queries.template(l,d),t.queries=l.queries.embeddedTView(d))}qi(l,o,d,u),qr(be(d,o),o),re(l,d),He()}function bl(t){const e=Ae(),n=e[1];Be(ve(n.data,t),!0),e[t+19][2]=0,ie(e,n,$e(),void 0)}function ml(){let t=Ge();Ye()?He():(t=t.parent,Be(t,!1));const e=Ae()[t.index],n=e[2];for(;n<e.length-9;)Rs(e,n)}function yl(t,e,n,a){const r=e+19,i=t[r]=t[12].createComment(""),s=Ai(t[1],t[6],e,0,n,a),u=t[r]=ns(i,t,i,s);return Ms(i,s,t),rs(t,u),s}function vl(t,e){const n=Ae(),a=n[1],r=t+19;r>=a.data.length&&(a.data[r]=null,a.blueprint[r]=null),n[r]=e}function xl(t){return ve(We,t)}function _l(t){return ve(Ae(),t)}function Tl(t,e=C.Default){t=G(t);const n=Ae();return null==n?rt(t,e):_a(Ge(),n,t,e)}function wl(t){return xa(Ge(),t)}function Ol(){var t,e;Ae()[1].firstTemplatePass&&(t=Ge(),e=jl(),Nn(Vl(t),e),Nn(Fl(t),e))}function Sl(t){bn(t)}function Il(t,e,n){Nl(on(),t,e,n)}function Nl(t,e,n,a){Rl(t,Ae()[7]++,e,function(t,e){if(t===ci)return t;let n=null;return null!==t&&(n=e?vn(t)+e:t),n}(n,a),!1,Bl())}function Cl(t,e){const n=Ae()[7]++;Rl(on(),n,t,e,!0,Bl())}function Rl(t,e,n,a,r,i){const s=Ae(),u=ye(t,s),o=be(u,s);let l=!1;if(a!==ci)if(r)l=Qr(Vl(u),s,o,n,e,a,i,!1);else{const t=mn();l=Xr(Fl(u),s,o,n,e,a,t,i,!1)}return l}function Al(t){const e=on(),n=Ae(),a=ye(e,n),r=Fl(a),i=jl(),s=n[7]++;!i&&$n(a)&&t!==ci&&(Dl(r,n,a,s,t,!1),t=ci),Ll(e,r,s,t,!1,Bl())}function kl(t){El(on(),t)}function El(t,e){const n=Ae(),a=ye(t,n),r=Vl(a),i=jl(),s=n[7]++;!i&&Kn(a)&&e!==ci&&(Dl(r,n,a,s,e,!0),e=ci),Ll(t,r,s,e,!0,Bl())}function Ll(t,e,n,a,r,i){pi();const s=Ae();let u=!1;if(a!==ci){const o=be(ye(t,s),s),l=s[n];u=Gn(l,a);const d=function(t,e,n){const a=Array.isArray(t)?t:[null];a[0]=e||null;for(let u=1;u<a.length;u+=2)Jn(a,u,null);let r,i=null,s=!1;if("string"==typeof e?e.length&&(i=e.split(/\s+/),s=!0):(i=e?Object.keys(e):null,r=e),i)for(let u=0;u<i.length;u++){const t=i[u];vi(a,n?Yn(t):t,!!s||r[t],!0)}return a}(l,a,!r);r?Qr(e,s,o,null,n,d,i,u):Xr(e,s,o,null,n,d,mn(),i,u)}return u}function Dl(t,e,n,a,r,i){e[a]!==r&&((r||jn(t))&&ys(e,n.inputs[i?"class":"style"],function(t,e,n){let a=e;var r;return t.length>0&&(a=n?zn(t,((r=e)&&"string"!=typeof r&&(r=Object.keys(r).join(" ")),r||"")):zn(t,function(t){let e="";if(t){const n=Object.keys(t);for(let a=0;a<n.length;a++){const r=n[a];e=zn(e,`${r}:${t[r]}`,";")}}return e}(e),";")),a}(Wn(t),r,i)),e[a]=r)}function Pl(){const t=on(),e=Ae(),n=ye(t,e),a=function(t,e){return 3===t.type?e[12]:null}(n,e),r=be(n,e),i=jl(),s=mn();(function(t,e,n,a,r,i,s){const u=n?Fn(n):!!a&&Fn(a),o=qn(n,i),l=qn(a,i);Jr.length&&(o||l)&&ei();const d=fe(r,u),c=ii(t,r,e,n,o,d.classesBitMask,li,null),f=ii(t,r,e,a,l,d.stylesBitMask,oi,s);c&&f?(he(),u&&function(t){le.delete(t)}(r)):u&&function(t,e){le.set(t,e)}(r,d)})(a,e,Vl(n),Fl(n),r,i,s),bn(null)}function Ml(t,e,n){let a=!1,r=Hn(t.styles),i=Hn(t.classes),s=-1;for(let u=n;u<e.length;u++){const t=e[u];"number"==typeof t?s=t:1==s?(i=i||[""],vi(i,t,!0),a=!0):2==s&&(r=r||[""],vi(r,t,e[++u]),a=!0)}return i&&i.length>1&&(t.classes||(t.classes=i),ql(t.classes,xi(i,!0))),r&&r.length>1&&(t.styles||(t.styles=r),ql(t.styles,xi(r,!1))),a}function ql(t,e){Hn(t)[0]=e}function jl(){return De+Pe}function Fl(t){return Gl(t,!1)}function Vl(t){return Gl(t,!0)}function Gl(t,e){let n=e?t.classes:t.styles;return Un(n)||(n=[n||[""],0,0,1,0,"--MAP--"],e?t.classes=n:t.styles=n),n}function Bl(){return Me>0}function zl(t,e,n,a){const r=Ae(),i=r[1],s=r[t+19]=Ci(e),u=r[12],o=Ai(i,r[6],t,3,e,n||null);if(null!=n){const t=na(s,n);i.firstTemplatePass&&Ml(o,n,t)}if(xs(u,s,o),Ms(s,o,r),0===de&&qr(s,r),de++,i.firstTemplatePass){Hi(i,r,o,a||null);const t=hs(o);t&&t.hasOwnProperty("class")&&(o.flags|=8),t&&t.hasOwnProperty("style")&&(o.flags|=16),null!==i.queries&&i.queries.elementStart(i,o)}qi(i,r,o),Mi(i,o,r)}function Yl(){let t=Ge();Ye()?He():(t=t.parent,Be(t,!1));const e=t,n=Ae(),a=n[1];re(a,t),de--,a.firstTemplatePass&&null!==a.queries&&Qt(t)&&a.queries.elementEnd(t),Kn(e)&&e.classes&&Wl(e.classes,n,e.inputs.class),$n(e)&&e.styles&&Wl(e.styles,n,e.inputs.style)}function Hl(t,e,n,a){zl(t,e,n,a),Yl()}function Ul(t){const e=on(),n=Ae(),a=n[1],r=ye(e,n);if(3===r.type){const e=be(r,n),i=na(e,t);a.firstTemplatePass&&Ml(r,t,i)&&xs(n[12],e,r)}}function Wl(t,e,n){ys(e,n,Wn(t)||null)}function Kl(t,e,n){const a=Ae(),r=a[1],i=a[t+19]=a[12].createComment(""),s=Ai(r,a[6],t,4,"ng-container",e||null);e&&r.firstTemplatePass&&Ml(s,e,0),Ms(i,s,a),r.firstTemplatePass&&(Hi(r,a,s,n||null),r.queries&&r.queries.elementStart(r,s)),qi(r,a,s),qr(i,a),Mi(r,s,a)}function $l(){let t=Ge();const e=Ae()[1];Ye()?He():(t=t.parent,Be(t,!1)),re(e,t),e.firstTemplatePass&&null!==e.queries&&Qt(t)&&e.queries.elementEnd(t)}function Zl(t,e,n){Kl(t,e,n),$l()}function Jl(t,e,n){const a=Ae(),r=Ge(),i=2===r.type?r.parent:r,s=a[i.index];let u=function(t,e,n){for(let a=e+9;a<t.length;a++){const e=t[a][1].id;if(e===n)return t[a];if(!(e<n))break;Rs(t,a-9)}return null}(s,s[2],t);if(u)Ee=!0,an(u,u[1].node);else{u=Ri(a,function(t,e,n,a){const r=Ae()[1],i=a.tViews;return(t>=i.length||null==i[t])&&(i[t]=Fi(t,null,e,n,r.directiveRegistry,r.pipeRegistry,null,null)),i[t]}(t,e,n,i),null,16,null,null);const s=Ye()?r:r&&r.parent;ki(u[1],s,t,u),an(u,u[1].node)}return s&&(Ue(u)&&Is(u,s,s[2]),s[2]++),Ue(u)?3:2}function Ql(){const t=Ae(),e=t[6];Ue(t)&&(Ii(t),t[2]&=-5),we(t),Ii(t),sn(t[3][3],!0),Be(e,!1)}function Xl(){return Ae()}function td(t){return!!t&&"function"==typeof t.then}function ed(t){return!!t&&"function"==typeof t.subscribe}function nd(t,e,n=!1,a){rd(t,e,n,a)}function ad(t,e,n=!1,a){rd(t,e,n,a,bs)}function rd(t,e,n=!1,a,r){const i=Ae(),s=Ge(),u=i[1],o=u.firstTemplatePass&&(u.cleanup||(u.cleanup=[]));let l=!0;if(3===s.type){const u=be(s,i),d=a?a(u):St,c=d.target||u,f=r?r(s,i):i[12],h=gs(i),g=h.length,p=a?t=>a(ge(t[s.index])).target:s.index;if(ta(f)){let n=null;if(!a&&function(t){return t.directiveEnd>t.directiveStart}(s)&&(n=function(t,e,n){const a=t[1].cleanup;if(null!=a)for(let r=0;r<a.length-1;r+=2){const i=a[r];if(i===e&&a[r+1]===n){const e=t[8],n=a[r+2];return e.length>n?e[n]:null}"string"==typeof i&&(r+=2)}return null}(i,t,s.index)),null!==n)e.__ngNextListenerFn__=n.__ngNextListenerFn__,n.__ngNextListenerFn__=e,l=!1;else{e=sd(s,i,e,!1);const n=f.listen(d.name||c,t,e);h.push(e,n),o&&o.push(t,p,g,g+1)}}else e=sd(s,i,e,!0),c.addEventListener(t,e,n),h.push(e),o&&o.push(t,p,g,n)}void 0===s.outputs&&(s.outputs=Bi(s,1));const d=s.outputs;let c;if(l&&d&&(c=d[t])){const n=c.length;if(n){const a=gs(i);for(let r=0;r<n;r+=3){const n=i[c[r]][c[r+2]].subscribe(e),u=a.length;a.push(e,n),o&&o.push(t,s.index,u,-(u+1))}}}}function id(t,e,n){try{return!1!==e(n)}catch(a){return ms(t,a),!1}}function sd(t,e,n,a){return function r(i){const s=1&t.flags?xe(t.index,e):e;0==(32&e[2])&&is(s);let u=id(e,n,i),o=r.__ngNextListenerFn__;for(;o;)u=id(e,o,i)&&u,o=o.__ngNextListenerFn__;return a&&!1===u&&(i.preventDefault(),i.returnValue=!1),u}}function ud(t=1){return rn(t)}function od(t,e){let n=null;const a=function(t){const e=t.attrs;if(null!=e){const t=e.indexOf(5);if(0==(1&t))return e[t+1]}return null}(t);for(let r=0;r<e.length;r++){const i=e[r];if("*"!==i){if(null===a?$r(t,i,!0):Zr(a,i))return r}else n=r}return n}function ld(t){const e=da(Ae())[6];if(!e.projection){const n=e.projection=new Array(t?t.length:1).fill(null),a=n.slice();let r=e.child;for(;null!==r;){const e=t?od(r,t):0;null!==e&&(a[e]?a[e].projectionNext=r:n[e]=r,a[e]=r),r=r.next}}}let dd=!1;function cd(t){dd=t}function fd(t,e=0,n){const a=Ae(),r=Ai(a[1],a[6],t,1,null,n||null);null===r.projection&&(r.projection=e),He(),dd||Fs(a,r,e,da(a))}function hd(t,e,n){return gd(t,"",e,"",n),hd}function gd(t,e,n,a,r){const i=on(),s=$o(Ae(),e,n,a);return s!==ci&&Yi(i,t,s,r),gd}function pd(t,e,n,a,r,i,s){const u=on(),o=Zo(Ae(),e,n,a,r,i);return o!==ci&&Yi(u,t,o,s),pd}function bd(t,e,n,a,r,i,s,u,o){const l=on(),d=Jo(Ae(),e,n,a,r,i,s,u);return d!==ci&&Yi(l,t,d,o),bd}function md(t,e,n,a,r,i,s,u,o,l,d){const c=on(),f=Qo(Ae(),e,n,a,r,i,s,u,o,l);return f!==ci&&Yi(c,t,f,d),md}function yd(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=on(),g=Xo(Ae(),e,n,a,r,i,s,u,o,l,d,c);return g!==ci&&Yi(h,t,g,f),yd}function vd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g){const p=on(),b=tl(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h);return b!==ci&&Yi(p,t,b,g),vd}function xd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b){const m=on(),y=el(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h,g,p);return y!==ci&&Yi(m,t,y,b),xd}function _d(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m,y){const v=on(),x=nl(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m);return x!==ci&&Yi(v,t,x,y),_d}function Td(t,e,n){const a=on(),r=Ko(Ae(),e);return r!==ci&&Yi(a,t,r,n),Td}function wd(t,e){const n=Ae(),a=n[t+19]=Os(e,n[12]),r=Ai(n[1],n[6],t,3,null,null);He(),Ms(a,r,n)}function Od(t){const e=Ae(),n=on(),a=Uo(e,t);a!==ci&&vs(e,n,vn(a))}function Sd(t){return Id("",t,""),Sd}function Id(t,e,n){const a=on(),r=Ae(),i=$o(r,t,e,n);return i!==ci&&vs(r,a,i),Id}function Nd(t,e,n,a,r){const i=on(),s=Ae(),u=Zo(s,t,e,n,a,r);return u!==ci&&vs(s,i,u),Nd}function Cd(t,e,n,a,r,i,s){const u=on(),o=Ae(),l=Jo(o,t,e,n,a,r,i,s);return l!==ci&&vs(o,u,l),Cd}function Rd(t,e,n,a,r,i,s,u,o){const l=on(),d=Ae(),c=Qo(d,t,e,n,a,r,i,s,u,o);return c!==ci&&vs(d,l,c),Rd}function Ad(t,e,n,a,r,i,s,u,o,l,d){const c=on(),f=Ae(),h=Xo(f,t,e,n,a,r,i,s,u,o,l,d);return h!==ci&&vs(f,c,h),Ad}function kd(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=on(),g=Ae(),p=tl(g,t,e,n,a,r,i,s,u,o,l,d,c,f);return p!==ci&&vs(g,h,p),kd}function Ed(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g){const p=on(),b=Ae(),m=el(b,t,e,n,a,r,i,s,u,o,l,d,c,f,h,g);return m!==ci&&vs(b,p,m),Ed}function Ld(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b){const m=on(),y=Ae(),v=nl(y,t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b);return v!==ci&&vs(y,m,v),Ld}function Dd(t){const e=on(),n=Ae(),a=Ko(n,t);return a!==ci&&vs(n,e,a),Dd}function Pd(t,e,n){const a=$o(Ae(),t,e,n);El(on(),a)}function Md(t,e,n,a,r){const i=Zo(Ae(),t,e,n,a,r);El(on(),i)}function qd(t,e,n,a,r,i,s){const u=Jo(Ae(),t,e,n,a,r,i,s);El(on(),u)}function jd(t,e,n,a,r,i,s,u,o){const l=Qo(Ae(),t,e,n,a,r,i,s,u,o);El(on(),l)}function Fd(t,e,n,a,r,i,s,u,o,l,d){const c=Xo(Ae(),t,e,n,a,r,i,s,u,o,l,d);El(on(),c)}function Vd(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=tl(Ae(),t,e,n,a,r,i,s,u,o,l,d,c,f);El(on(),h)}function Gd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g){const p=el(Ae(),t,e,n,a,r,i,s,u,o,l,d,c,f,h,g);El(on(),p)}function Bd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b){const m=nl(Ae(),t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b);El(on(),m)}function zd(t){const e=Ko(Ae(),t);El(on(),e)}function Yd(t,e,n,a,r){const i=$o(Ae(),e,n,a);return Nl(on(),t,i,r),Yd}function Hd(t,e,n,a,r,i,s){const u=Zo(Ae(),e,n,a,r,i);return Nl(on(),t,u,s),Hd}function Ud(t,e,n,a,r,i,s,u,o){const l=Jo(Ae(),e,n,a,r,i,s,u);return Nl(on(),t,l,o),Ud}function Wd(t,e,n,a,r,i,s,u,o,l,d){const c=Qo(Ae(),e,n,a,r,i,s,u,o,l);return Nl(on(),t,c,d),Wd}function Kd(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=Xo(Ae(),e,n,a,r,i,s,u,o,l,d,c);return Nl(on(),t,h,f),Kd}function $d(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g){const p=tl(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h);return Nl(on(),t,p,g),$d}function Zd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b){const m=el(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h,g,p);return Nl(on(),t,m,b),Zd}function Jd(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m,y){const v=nl(Ae(),e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m);return Nl(on(),t,v,y),Jd}function Qd(t,e,n){const a=Ko(Ae(),e);return Nl(on(),t,a,n),Qd}function Xd(t,e,n){const a=on(),r=Uo(Ae(),e);return r!==ci&&Yi(a,t,r,n,!0),Xd}function tc(t,e,n){const a=on(),r=Uo(Ae(),e);return r!==ci&&Yi(a,t,r,n,!0,bs),tc}function ec(t){const e=lc(t);return void 0===e.component&&(e.component=function(t,e){const n=e[1].data[t];return 1&n.flags?e[n.directiveStart]:null}(e.nodeIndex,e.lView)),e.component}function nc(t){return lc(t).lView[9]}function ac(t){let e,n=uc(t).lView;for(;null===n[0]&&(e=la(n));)n=e;return 512&n[2]?null:n[9]}function rc(t){return[...ca(t).components]}function ic(t){const e=uc(t);return new Ca(e.lView[1].data[e.nodeIndex],e.lView)}function sc(t){const e=uc(t);return void 0===e.directives&&(e.directives=Gr(e.nodeIndex,e.lView,!1)),e.directives||[]}function uc(t,e=!0){const n=Dr(t);if(!n&&e)throw new Error("Invalid ng target");return n}function oc(t){return Dr(t).native}function lc(t){if(!(t instanceof Node))throw new Error("Expecting instance of DOM Node");return uc(t)}function dc(t){return"boolean"==typeof t.useCapture}function cc(t){const e=lc(t).lView,n=e[8],a=e[1].cleanup,r=[];if(a&&n)for(let i=0;i<a.length;){const s=a[i++],u=a[i++];if("string"==typeof s){const o=s,l=ge(e[u]),d=n[a[i++]],c=a[i++],f="boolean"==typeof c?c:!(c>=0)&&null;t==l&&r.push({element:t,name:o,callback:d,useCapture:f})}}return r.sort(fc),r}function fc(t,e){return t.name==e.name?0:t.name<e.name?-1:1}let hc=!1;function gc(){hc||(hc=!0,pc("getComponent",ec),pc("getContext",nc),pc("getListeners",cc),pc("getViewComponent",ac),pc("getHostElement",oc),pc("getInjector",ic),pc("getRootComponents",rc),pc("getDirectives",sc),pc("markDirty",hl))}function pc(t,e){if(U){let n=U.ng;n||(n=U.ng={}),n[t]=e}}function bc(t,e={}){qe(null);const n=e.rendererFactory||ea,a=e.sanitizer||null,r=Ht(t);r.type!=t&&(r.type=t);const i=Vi(n,e.host||r.selectors[0][0]),s=r.onPush?576:528,u=vc(e.scheduler,e.playerHandler),o=n.createRenderer(i,r),l=Ri(null,Fi(-1,null,1,0,null,null,null,null),u,s,null,null,n,o,void 0,e.injector||null),d=an(l,null);let c,f=!1;try{n.begin&&n.begin();const t=mc(i,r,l,n,o,a);c=yc(t,r,l,u,e.hostFeatures||null),rs(l,t),Ii(l),l[2]&=-5,we(l),Ii(l),f=!0}finally{sn(d,f),n.end&&n.end()}return c}function mc(t,e,n,a,r,i){Ee=!1,ke=null,de=0,Oe=!0,bn(null),he(),le.clear();const s=n[1];n[19]=t;const u=Ai(s,null,0,3,null,null),o=Ri(n,ji(e),null,e.onPush?64:16,n[19],u,a,r,i);return s.firstTemplatePass&&(va(pa(u,n),s,e.type),u.flags=1,Qi(u,n.length,1),Zi(u)),n[19]=o}function yc(t,e,n,a,r){const i=n[1],s=function(t,e,n){const a=Ge();t.firstTemplatePass&&(n.providersResolver&&n.providersResolver(n),Wi(t,a,1),Xi(t,e,n,n.factory));const r=Sa(t.data,e,e.length-1,a);return $i(e,a,r),r}(i,n,e);a.components.push(s),t[9]=s,r&&r.forEach(t=>t(s,e)),e.contentQueries&&e.contentQueries(1,s,n.length-1);const u=Ge();return i.firstTemplatePass&&e.hostBindings&&(qe(u.index-19),Ui(e,i.expandoInstructions,s,u,i.firstTemplatePass),qe(null)),s}function vc(t,e){return{components:[],scheduler:t||_n,clean:fs,playerHandler:e||null,flags:0}}function xc(t,e){const n=Te(t)[1],a=n.data.length-1;ae(a,e,n,-1,-1,-1),re(n,{directiveStart:a,directiveEnd:a+1})}function _c(t){return ca(t).clean}class Tc{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function wc(){return Oc.ngInherit=!0,Oc}function Oc(t){t.type.prototype.ngOnChanges&&(t.setInput=Sc,t.onChanges=function(){const t=Ic(this),e=t&&t.current;if(e){const n=t.previous;if(n===St)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}})}function Sc(t,e,n,a){const r=Ic(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:St,current:null}),i=r.current||(r.current={}),s=r.previous,u=this.declaredInputs[n],o=s[u];i[u]=new Tc(o&&o.currentValue,e,s===St),t[a]=e}function Ic(t){return t.__ngSimpleChanges__||null}function Nc(t){let e=Object.getPrototypeOf(t.type.prototype).constructor;for(;e;){let n=void 0;if(te(t))n=e.ngComponentDef||e.ngDirectiveDef;else{if(e.ngComponentDef)throw new Error("Directives cannot inherit Components");n=e.ngDirectiveDef}const a=e.ngBaseDef;if(a||n){const e=t;e.inputs=Cc(t.inputs),e.declaredInputs=Cc(t.declaredInputs),e.outputs=Cc(t.outputs)}if(a){const e=a.viewQuery,n=a.contentQueries,r=a.hostBindings;r&&kc(t,r),e&&Rc(t,e),n&&Ac(t,n),A(t.inputs,a.inputs),A(t.declaredInputs,a.declaredInputs),A(t.outputs,a.outputs)}if(n){const e=n.hostBindings;e&&kc(t,e);const a=n.viewQuery,r=n.contentQueries;a&&Rc(t,a),r&&Ac(t,r),A(t.inputs,n.inputs),A(t.declaredInputs,n.declaredInputs),A(t.outputs,n.outputs),t.afterContentChecked=t.afterContentChecked||n.afterContentChecked,t.afterContentInit=t.afterContentInit||n.afterContentInit,t.afterViewChecked=t.afterViewChecked||n.afterViewChecked,t.afterViewInit=t.afterViewInit||n.afterViewInit,t.doCheck=t.doCheck||n.doCheck,t.onDestroy=t.onDestroy||n.onDestroy,t.onInit=t.onInit||n.onInit;const i=n.features;if(i)for(const n of i)n&&n.ngInherit&&n(t)}else{const n=e.prototype;n&&(t.afterContentChecked=t.afterContentChecked||n.ngAfterContentChecked,t.afterContentInit=t.afterContentInit||n.ngAfterContentInit,t.afterViewChecked=t.afterViewChecked||n.ngAfterViewChecked,t.afterViewInit=t.afterViewInit||n.ngAfterViewInit,t.doCheck=t.doCheck||n.ngDoCheck,t.onDestroy=t.onDestroy||n.ngOnDestroy,t.onInit=t.onInit||n.ngOnInit,n.ngOnChanges&&wc()(t))}e=Object.getPrototypeOf(e)}}function Cc(t){return t===St?{}:t===It?[]:t}function Rc(t,e){const n=t.viewQuery;t.viewQuery=n?(t,a)=>{e(t,a),n(t,a)}:e}function Ac(t,e){const n=t.contentQueries;t.contentQueries=n?(t,a,r)=>{e(t,a,r),n(t,a,r)}:e}function kc(t,e){const n=t.hostBindings;e!==n&&(t.hostBindings=n?(t,a,r)=>{Fe(1);try{e(t,a,r)}finally{Fe(-1)}n(t,a,r)}:e)}function Ec(t,e,n,a,r){if(t=G(t),Array.isArray(t))for(let i=0;i<t.length;i++)Ec(t[i],e,n,a,r);else{const i=Ae(),s=i[1];let u=Fu(t)?t:G(t.provide),o=Mu(t);const l=Ge(),d=65535&l.providerIndexes,c=l.directiveStart,f=l.providerIndexes>>16;if(t.useClass||Fu(t)){const n=(t.useClass||t).prototype.ngOnDestroy;n&&(s.destroyHooks||(s.destroyHooks=[])).push(e.length,n)}if(Fu(t)||!t.multi){const t=new ne(o,r,Tl),a=Dc(u,e,r?d:d+f,c);-1==a?(va(pa(l,i),s,u),e.push(u),l.directiveStart++,l.directiveEnd++,r&&(l.providerIndexes+=65536),n.push(t),i.push(t)):(n[a]=t,i[a]=t)}else{const t=Dc(u,e,d+f,c),h=Dc(u,e,d,d+f),g=t>=0&&n[t],p=h>=0&&n[h];if(r&&!p||!r&&!g){va(pa(l,i),s,u);const t=function(t,e,n,a,r){const i=new ne(t,n,Tl);return i.multi=[],i.index=e,i.componentProviders=0,Lc(i,r,a&&!n),i}(r?Mc:Pc,n.length,r,a,o);!r&&p&&(n[h].providerFactory=t),e.push(u),l.directiveStart++,l.directiveEnd++,r&&(l.providerIndexes+=65536),n.push(t),i.push(t)}else Lc(n[r?h:t],o,!r&&a);!r&&a&&p&&n[h].componentProviders++}}}function Lc(t,e,n){t.multi.push(e),n&&t.componentProviders++}function Dc(t,e,n,a){for(let r=n;r<a;r++)if(e[r]===t)return r;return-1}function Pc(t,e,n,a){return qc(this.multi,[])}function Mc(t,e,n,a){const r=this.multi;let i;if(this.providerFactory){const t=this.providerFactory.componentProviders,s=Sa(e,n,this.providerFactory.index,a);i=s.slice(0,t),qc(r,i);for(let e=t;e<s.length;e++)i.push(s[e])}else i=[],qc(r,i);return i}function qc(t,e){for(let n=0;n<t.length;n++)e.push((0,t[n])());return e}function jc(t,e=[]){return n=>{n.providersResolver=(n,a)=>function(t,e,n){const a=Ae()[1];if(a.firstTemplatePass){const r=te(t);Ec(n,a.data,a.blueprint,r,!0),Ec(e,a.data,a.blueprint,r,!1)}}(n,a?a(t):t,e)}}class Fc{}class Vc{}function Gc(t){const e=Error(`No component factory found for ${j(t)}. Did you add it to @NgModule.entryComponents?`);return e[Bc]=t,e}const Bc="ngComponent";class zc{resolveComponentFactory(t){throw Gc(t)}}let Yc=(()=>{class t{}return t.NULL=new zc,t})();class Hc{constructor(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(let a=0;a<t.length;a++){const e=t[a];this._factories.set(e.componentType,e)}}resolveComponentFactory(t){let e=this._factories.get(t);if(!e&&this._parent&&(e=this._parent.resolveComponentFactory(t)),!e)throw Gc(t);return new Uc(e,this._ngModule)}}class Uc extends Vc{constructor(t,e){super(),this.factory=t,this.ngModule=e,this.selector=t.selector,this.componentType=t.componentType,this.ngContentSelectors=t.ngContentSelectors,this.inputs=t.inputs,this.outputs=t.outputs}create(t,e,n,a){return this.factory.create(t,e,n,a||this.ngModule)}}function Wc(...t){}let Kc=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=()=>Zc(t),t})();const $c=function(t){return $s(t,Ge(),Ae())},Zc=Wc;class Jc{constructor(t,e,n,a,r,i){this.id=t,this.templateUrl=e,this.slotCount=n,this.encapsulation=a,this.styles=r,this.animations=i}}class Qc{}class Xc{}class tf{}class ef{}const nf=function(){var t={Important:1,DashCase:2};return t[t.Important]="Important",t[t.DashCase]="DashCase",t}();let af=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>sf(),t})();const rf=function(){const t=Ae(),e=xe(Ge().index,t);return function(t){const e=t[12];if(ta(e))return e;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(Zt(e)?e:t)},sf=Wc;class uf{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const of=new uf("8.2.14");class lf{constructor(){}supports(t){return qo(t)}create(t){return new cf(t)}}const df=(t,e)=>e;class cf{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||df}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,a=0,r=null;for(;e||n;){const i=!n||e&&e.currentIndex<pf(n,a,r)?e:n,s=pf(i,a,r),u=i.currentIndex;if(i===n)a--,n=n._nextRemoved;else if(e=e._next,null==i.previousIndex)a++;else{r||(r=[]);const t=s-a,e=u-a;if(t!=e){for(let n=0;n<t;n++){const a=n<r.length?r[n]:r[n]=0,i=a+n;e<=i&&i<t&&(r[n]=a+1)}r[i.previousIndex]=e-t}}s!==u&&t(i,s,u)}}forEachPreviousItem(t){let e;for(e=this._previousItHead;null!==e;e=e._nextPrevious)t(e)}forEachAddedItem(t){let e;for(e=this._additionsHead;null!==e;e=e._nextAdded)t(e)}forEachMovedItem(t){let e;for(e=this._movesHead;null!==e;e=e._nextMoved)t(e)}forEachRemovedItem(t){let e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)t(e)}forEachIdentityChange(t){let e;for(e=this._identityChangesHead;null!==e;e=e._nextIdentityChange)t(e)}diff(t){if(null==t&&(t=[]),!qo(t))throw new Error(`Error trying to diff '${j(t)}'. Only arrays and iterables are allowed`);return this.check(t)?this:null}onDestroy(){}check(t){this._reset();let e,n,a,r=this._itHead,i=!1;if(Array.isArray(t)){this.length=t.length;for(let e=0;e<this.length;e++)n=t[e],a=this._trackByFn(e,n),null!==r&&Do(r.trackById,a)?(i&&(r=this._verifyReinsertion(r,n,a,e)),Do(r.item,n)||this._addIdentityChange(r,n)):(r=this._mismatch(r,n,a,e),i=!0),r=r._next}else e=0,function(t,e){if(Array.isArray(t))for(let n=0;n<t.length;n++)e(t[n]);else{const n=t[Lo()]();let a;for(;!(a=n.next()).done;)e(a.value)}}(t,t=>{a=this._trackByFn(e,t),null!==r&&Do(r.trackById,a)?(i&&(r=this._verifyReinsertion(r,t,a,e)),Do(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,a,e),i=!0),r=r._next,e++}),this.length=e;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=e)t.previousIndex=t.currentIndex,e=t._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,a){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,a))?(Do(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,a)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Do(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,a)):t=this._addAfter(new ff(e,n),r,a),t}_verifyReinsertion(t,e,n,a){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,t._prev,a):t.currentIndex!=a&&(t.currentIndex=a,this._addToMoves(t,a)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const a=t._prevRemoved,r=t._nextRemoved;return null===a?this._removalsHead=r:a._nextRemoved=r,null===r?this._removalsTail=a:r._prevRemoved=a,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const a=null===e?this._itHead:e._next;return t._next=a,t._prev=e,null===a?this._itTail=t:a._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new gf),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new gf),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class ff{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class hf{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Do(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class gf{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new hf,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function pf(t,e,n){const a=t.previousIndex;if(null===a)return a;let r=0;return n&&a<n.length&&(r=n[a]),a+e+r}class bf{constructor(){}supports(t){return t instanceof Map||jo(t)}create(){return new mf}}class mf{constructor(){this._records=new Map,this._mapHead=null,this._appendAfter=null,this._previousMapHead=null,this._changesHead=null,this._changesTail=null,this._additionsHead=null,this._additionsTail=null,this._removalsHead=null,this._removalsTail=null}get isDirty(){return null!==this._additionsHead||null!==this._changesHead||null!==this._removalsHead}forEachItem(t){let e;for(e=this._mapHead;null!==e;e=e._next)t(e)}forEachPreviousItem(t){let e;for(e=this._previousMapHead;null!==e;e=e._nextPrevious)t(e)}forEachChangedItem(t){let e;for(e=this._changesHead;null!==e;e=e._nextChanged)t(e)}forEachAddedItem(t){let e;for(e=this._additionsHead;null!==e;e=e._nextAdded)t(e)}forEachRemovedItem(t){let e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)t(e)}diff(t){if(t){if(!(t instanceof Map||jo(t)))throw new Error(`Error trying to diff '${j(t)}'. Only maps and objects are allowed`)}else t=new Map;return this.check(t)?this:null}onDestroy(){}check(t){this._reset();let e=this._mapHead;if(this._appendAfter=null,this._forEach(t,(t,n)=>{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const a=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,a)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const a=n._prev,r=n._next;return a&&(a._next=r),r&&(r._prev=a),n._next=null,n._prev=null,n}const n=new yf(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Do(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class yf{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let vf=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new S,new w]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.ngInjectableDef=k({token:t,providedIn:"root",factory:()=>new t([new lf])}),t})(),xf=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new S,new w]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.ngInjectableDef=k({token:t,providedIn:"root",factory:()=>new t([new bf])}),t})();const _f=[new bf],Tf=new vf([new lf]),wf=new xf(_f);let Of=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>If(t,Kc),t})();const Sf=function(t,e){return Zs(t,e,Ge(),Ae())},If=Wc;let Nf=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Rf(t,Kc),t})();const Cf=function(t,e){return Js(t,e,Ge(),Ae())},Rf=Wc;function Af(t,e,n,a){let r=`ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '${e}'. Current value: '${n}'.`;return a&&(r+=" It seems like the view has been created after its parent and its children have been dirty checked. Has it been created in a change detection hook ?"),function(t,e){const n=new Error(t);return kf(n,e),n}(r,t)}function kf(t,e){t.ngDebugContext=e,t.ngErrorLogger=e.logError.bind(e)}function Ef(t){return new Error("ViewDestroyedError: Attempt to use a destroyed view: "+t)}function Lf(t,e,n){const a=t.state,r=1792&a;return r===e?(t.state=-1793&a|n,t.initIndex=-1,!0):r===n}function Df(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function Pf(t,e){return t.nodes[e]}function Mf(t,e){return t.nodes[e]}function qf(t,e){return t.nodes[e]}function jf(t,e){return t.nodes[e]}function Ff(t,e){return t.nodes[e]}class Vf{}const Gf={setCurrentNode:void 0,createRootView:void 0,createEmbeddedView:void 0,createComponentView:void 0,createNgModuleRef:void 0,overrideProvider:void 0,overrideComponentView:void 0,clearOverrides:void 0,checkAndUpdateView:void 0,checkNoChangesView:void 0,destroyView:void 0,resolveDep:void 0,createDebugContext:void 0,handleEvent:void 0,updateDirectives:void 0,updateRenderer:void 0,dirtyParentQueries:void 0},Bf=()=>{},zf=new Map;function Yf(t){let e=zf.get(t);return e||(e=j(t)+"_"+zf.size,zf.set(t,e)),e}function Hf(t,e,n,a){if(Mo.isWrapped(a)){a=Mo.unwrap(a);const r=t.def.nodes[e].bindingIndex+n,i=Mo.unwrap(t.oldValues[r]);t.oldValues[r]=new Mo(i)}return a}function Uf(t){return{id:"$$undefined",styles:t.styles,encapsulation:t.encapsulation,data:t.data}}let Wf=0;function Kf(t,e,n,a){return!(!(2&t.state)&&Do(t.oldValues[e.bindingIndex+n],a))}function $f(t,e,n,a){return!!Kf(t,e,n,a)&&(t.oldValues[e.bindingIndex+n]=a,!0)}function Zf(t,e,n,a){const r=t.oldValues[e.bindingIndex+n];if(1&t.state||!Po(r,a)){const i=e.bindings[n].name;throw Af(Gf.createDebugContext(t,e.nodeIndex),`${i}: ${r}`,`${i}: ${a}`,0!=(1&t.state))}}function Jf(t){let e=t;for(;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function Qf(t,e){let n=t;for(;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function Xf(t,e,n,a){try{return Jf(33554432&t.def.nodes[e].flags?Mf(t,e).componentView:t),Gf.handleEvent(t,e,n,a)}catch(r){t.root.errorHandler.handleError(r)}}function th(t){return t.parent?Mf(t.parent,t.parentNodeDef.nodeIndex):null}function eh(t){return t.parent?t.parentNodeDef.parent:null}function nh(t,e){switch(201347067&e.flags){case 1:return Mf(t,e.nodeIndex).renderElement;case 2:return Pf(t,e.nodeIndex).renderText}}function ah(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function rh(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function ih(t){return 1<<t%32}function sh(t){const e={};let n=0;const a={};return t&&t.forEach(([t,r])=>{"number"==typeof t?(e[t]=r,n|=ih(t)):a[t]=r}),{matchedQueries:e,references:a,matchedQueryIds:n}}function uh(t,e){return t.map(t=>{let n,a;return Array.isArray(t)?[a,n]=t:(a=0,n=t),n&&("function"==typeof n||"object"==typeof n)&&e&&Object.defineProperty(n,"__source",{value:e,configurable:!0}),{flags:a,token:n,tokenKey:Yf(n)}})}function oh(t,e,n){let a=n.renderParent;return a?0==(1&a.flags)||0==(33554432&a.flags)||a.element.componentRendererType&&a.element.componentRendererType.encapsulation===wt.Native?Mf(t,n.renderParent.nodeIndex).renderElement:void 0:e}const lh=new WeakMap;function dh(t){let e=lh.get(t);return e||(e=t(()=>Bf),e.factory=t,lh.set(t,e)),e}function ch(t,e,n,a,r){3===e&&(n=t.renderer.parentNode(nh(t,t.def.lastRenderRootNode))),fh(t,e,0,t.def.nodes.length-1,n,a,r)}function fh(t,e,n,a,r,i,s){for(let u=n;u<=a;u++){const n=t.def.nodes[u];11&n.flags&&gh(t,n,e,r,i,s),u+=n.childCount}}function hh(t,e,n,a,r,i){let s=t;for(;s&&!ah(s);)s=s.parent;const u=s.parent,o=eh(s),l=o.nodeIndex+o.childCount;for(let d=o.nodeIndex+1;d<=l;d++){const t=u.def.nodes[d];t.ngContentIndex===e&&gh(u,t,n,a,r,i),d+=t.childCount}if(!u.parent){const s=t.root.projectableNodes[e];if(s)for(let e=0;e<s.length;e++)ph(t,s[e],n,a,r,i)}}function gh(t,e,n,a,r,i){if(8&e.flags)hh(t,e.ngContent.index,n,a,r,i);else{const s=nh(t,e);if(3===n&&33554432&e.flags&&48&e.bindingFlags?(16&e.bindingFlags&&ph(t,s,n,a,r,i),32&e.bindingFlags&&ph(Mf(t,e.nodeIndex).componentView,s,n,a,r,i)):ph(t,s,n,a,r,i),16777216&e.flags){const s=Mf(t,e.nodeIndex).viewContainer._embeddedViews;for(let t=0;t<s.length;t++)ch(s[t],n,a,r,i)}1&e.flags&&!e.element.name&&fh(t,n,e.nodeIndex+1,e.nodeIndex+e.childCount,a,r,i)}}function ph(t,e,n,a,r,i){const s=t.renderer;switch(n){case 1:s.appendChild(a,e);break;case 2:s.insertBefore(a,e,r);break;case 3:s.removeChild(a,e);break;case 0:i.push(e)}}const bh=/^:([^:]+):(.+)$/;function mh(t){if(":"===t[0]){const e=t.match(bh);return[e[1],e[2]]}return["",t]}function yh(t){let e=0;for(let n=0;n<t.length;n++)e|=t[n].flags;return e}function vh(t,e){let n="";for(let a=0;a<2*t;a+=2)n=n+e[a]+_h(e[a+1]);return n+e[2*t]}function xh(t,e,n,a,r,i,s,u,o,l,d,c,f,h,g,p,b,m,y,v){switch(t){case 1:return e+_h(n)+a;case 2:return e+_h(n)+a+_h(r)+i;case 3:return e+_h(n)+a+_h(r)+i+_h(s)+u;case 4:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l;case 5:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c;case 6:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c+_h(f)+h;case 7:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c+_h(f)+h+_h(g)+p;case 8:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c+_h(f)+h+_h(g)+p+_h(b)+m;case 9:return e+_h(n)+a+_h(r)+i+_h(s)+u+_h(o)+l+_h(d)+c+_h(f)+h+_h(g)+p+_h(b)+m+_h(y)+v;default:throw new Error("Does not support more than 9 expressions")}}function _h(t){return null!=t?t.toString():""}const Th=[],wh={},Oh=new Object,Sh=Yf(Bu),Ih=Yf($),Nh=Yf(ft);function Ch(t,e,n,a){return n=G(n),{index:-1,deps:uh(a,j(e)),flags:t,token:e,value:n}}function Rh(t){const e={},n=[];let a=!1;for(let r=0;r<t.length;r++){const i=t[r];i.token===Nu&&!0===i.value&&(a=!0),1073741824&i.flags&&n.push(i.token),i.index=r,e[Yf(i.token)]=i}return{factory:null,providersByKey:e,providers:t,modules:n,isRoot:a}}function Ah(t,e,n=Bu.THROW_IF_NOT_FOUND){const a=et(t);try{if(8&e.flags)return e.token;if(2&e.flags&&(n=null),1&e.flags)return t._parent.get(e.token,n);const s=e.tokenKey;switch(s){case Sh:case Ih:case Nh:return t}const u=t._def.providersByKey[s];let o;if(u){let e=t._providers[u.index];return void 0===e&&(e=t._providers[u.index]=kh(t,u)),e===Oh?void 0:e}if((o=D(e.token))&&(r=t,null!=(i=o).providedIn&&(function(t,e){return t._def.modules.indexOf(e)>-1}(r,i.providedIn)||"root"===i.providedIn&&r._def.isRoot))){const n=t._providers.length;return t._def.providers[n]=t._def.providersByKey[e.tokenKey]={flags:5120,value:o.factory,deps:[],index:n,token:e.token},t._providers[n]=Oh,t._providers[n]=kh(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{et(a)}var r,i}function kh(t,e){let n;switch(201347067&e.flags){case 512:n=function(t,e,n){const a=n.length;switch(a){case 0:return new e;case 1:return new e(Ah(t,n[0]));case 2:return new e(Ah(t,n[0]),Ah(t,n[1]));case 3:return new e(Ah(t,n[0]),Ah(t,n[1]),Ah(t,n[2]));default:const r=new Array(a);for(let e=0;e<a;e++)r[e]=Ah(t,n[e]);return new e(...r)}}(t,e.value,e.deps);break;case 1024:n=function(t,e,n){const a=n.length;switch(a){case 0:return e();case 1:return e(Ah(t,n[0]));case 2:return e(Ah(t,n[0]),Ah(t,n[1]));case 3:return e(Ah(t,n[0]),Ah(t,n[1]),Ah(t,n[2]));default:const r=Array(a);for(let e=0;e<a;e++)r[e]=Ah(t,n[e]);return e(...r)}}(t,e.value,e.deps);break;case 2048:n=Ah(t,e.deps[0]);break;case 256:n=e.value}return n===Oh||null===n||"object"!=typeof n||131072&e.flags||"function"!=typeof n.ngOnDestroy||(e.flags|=131072),void 0===n?Oh:n}function Eh(t,e){const n=t.viewContainer._embeddedViews;if((null==e||e>=n.length)&&(e=n.length-1),e<0)return null;const a=n[e];return a.viewContainerParent=null,yt(n,e),Gf.dirtyParentQueries(a),Dh(a),a}function Lh(t,e,n){const a=e?nh(e,e.def.lastRenderRootNode):t.renderElement,r=n.renderer.parentNode(a),i=n.renderer.nextSibling(a);ch(n,2,r,i,void 0)}function Dh(t){ch(t,3,null,null,void 0)}const Ph=new Object;function Mh(t,e,n,a,r,i){return new jh(t,e,n,a,r,i)}function qh(t){return t.viewDefFactory}class jh extends Vc{constructor(t,e,n,a,r,i){super(),this.selector=t,this.componentType=e,this._inputs=a,this._outputs=r,this.ngContentSelectors=i,this.viewDefFactory=n}get inputs(){const t=[],e=this._inputs;for(let n in e)t.push({propName:n,templateName:e[n]});return t}get outputs(){const t=[];for(let e in this._outputs)t.push({propName:e,templateName:this._outputs[e]});return t}create(t,e,n,a){if(!a)throw new Error("ngModule should be provided");const r=dh(this.viewDefFactory),i=r.nodes[0].element.componentProvider.nodeIndex,s=Gf.createRootView(t,e||[],n,r,a,Ph),u=qf(s,i).instance;return n&&s.renderer.setAttribute(Mf(s,0).renderElement,"ng-version",of.full),new Fh(s,new zh(s),u)}}class Fh extends Fc{constructor(t,e,n){super(),this._view=t,this._viewRef=e,this._component=n,this._elDef=this._view.def.nodes[0],this.hostView=e,this.changeDetectorRef=e,this.instance=n}get location(){return new Kc(Mf(this._view,this._elDef.nodeIndex).renderElement)}get injector(){return new Wh(this._view,this._elDef)}get componentType(){return this._component.constructor}destroy(){this._viewRef.destroy()}onDestroy(t){this._viewRef.onDestroy(t)}}function Vh(t,e,n){return new Gh(t,e,n)}class Gh{constructor(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}get element(){return new Kc(this._data.renderElement)}get injector(){return new Wh(this._view,this._elDef)}get parentInjector(){let t=this._view,e=this._elDef.parent;for(;!e&&t;)e=eh(t),t=t.parent;return t?new Wh(t,e):new Wh(this._view,null)}clear(){for(let t=this._embeddedViews.length-1;t>=0;t--){const e=Eh(this._data,t);Gf.destroyView(e)}}get(t){const e=this._embeddedViews[t];if(e){const t=new zh(e);return t.attachToViewContainerRef(this),t}return null}get length(){return this._embeddedViews.length}createEmbeddedView(t,e,n){const a=t.createEmbeddedView(e||{});return this.insert(a,n),a}createComponent(t,e,n,a,r){const i=n||this.parentInjector;r||t instanceof Uc||(r=i.get(ft));const s=t.create(i,a,void 0,r);return this.insert(s.hostView,e),s}insert(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");const n=t;return function(t,e,n,a){let r=e.viewContainer._embeddedViews;null==n&&(n=r.length),a.viewContainerParent=t,mt(r,n,a),function(t,e){const n=th(e);if(!n||n===t||16&e.state)return;e.state|=16;let a=n.template._projectedViews;a||(a=n.template._projectedViews=[]),a.push(e),function(t,e){if(4&e.flags)return;t.nodeFlags|=4,e.flags|=4;let n=e.parent;for(;n;)n.childFlags|=4,n=n.parent}(e.parent.def,e.parentNodeDef)}(e,a),Gf.dirtyParentQueries(a),Lh(e,n>0?r[n-1]:null,a)}(this._view,this._data,e,n._view),n.attachToViewContainerRef(this),t}move(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");const n=this._embeddedViews.indexOf(t._view);return function(t,e,n){const a=t.viewContainer._embeddedViews,r=a[e];yt(a,e),null==n&&(n=a.length),mt(a,n,r),Gf.dirtyParentQueries(r),Dh(r),Lh(t,n>0?a[n-1]:null,r)}(this._data,n,e),t}indexOf(t){return this._embeddedViews.indexOf(t._view)}remove(t){const e=Eh(this._data,t);e&&Gf.destroyView(e)}detach(t){const e=Eh(this._data,t);return e?new zh(e):null}}function Bh(t){return new zh(t)}class zh{constructor(t){this._view=t,this._viewContainerRef=null,this._appRef=null}get rootNodes(){return function(t){const e=[];return ch(t,0,void 0,void 0,e),e}(this._view)}get context(){return this._view.context}get destroyed(){return 0!=(128&this._view.state)}markForCheck(){Jf(this._view)}detach(){this._view.state&=-5}detectChanges(){const t=this._view.root.rendererFactory;t.begin&&t.begin();try{Gf.checkAndUpdateView(this._view)}finally{t.end&&t.end()}}checkNoChanges(){Gf.checkNoChangesView(this._view)}reattach(){this._view.state|=4}onDestroy(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)}destroy(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),Gf.destroyView(this._view)}detachFromAppRef(){this._appRef=null,Dh(this._view),Gf.dirtyParentQueries(this._view)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}}function Yh(t,e){return new Hh(t,e)}class Hh extends Of{constructor(t,e){super(),this._parentView=t,this._def=e}createEmbeddedView(t){return new zh(Gf.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))}get elementRef(){return new Kc(Mf(this._parentView,this._def.nodeIndex).renderElement)}}function Uh(t,e){return new Wh(t,e)}class Wh{constructor(t,e){this.view=t,this.elDef=e}get(t,e=Bu.THROW_IF_NOT_FOUND){return Gf.resolveDep(this.view,this.elDef,!!this.elDef&&0!=(33554432&this.elDef.flags),{flags:0,token:t,tokenKey:Yf(t)},e)}}function Kh(t,e){const n=t.def.nodes[e];if(1&n.flags){const e=Mf(t,n.nodeIndex);return n.element.template?e.template:e.renderElement}if(2&n.flags)return Pf(t,n.nodeIndex).renderText;if(20240&n.flags)return qf(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function $h(t){return new Zh(t.renderer)}class Zh{constructor(t){this.delegate=t}selectRootElement(t){return this.delegate.selectRootElement(t)}createElement(t,e){const[n,a]=mh(e),r=this.delegate.createElement(a,n);return t&&this.delegate.appendChild(t,r),r}createViewRoot(t){return t}createTemplateAnchor(t){const e=this.delegate.createComment("");return t&&this.delegate.appendChild(t,e),e}createText(t,e){const n=this.delegate.createText(e);return t&&this.delegate.appendChild(t,n),n}projectNodes(t,e){for(let n=0;n<e.length;n++)this.delegate.appendChild(t,e[n])}attachViewAfter(t,e){const n=this.delegate.parentNode(t),a=this.delegate.nextSibling(t);for(let r=0;r<e.length;r++)this.delegate.insertBefore(n,e[r],a)}detachView(t){for(let e=0;e<t.length;e++){const n=t[e],a=this.delegate.parentNode(n);this.delegate.removeChild(a,n)}}destroyView(t,e){for(let n=0;n<e.length;n++)this.delegate.destroyNode(e[n])}listen(t,e,n){return this.delegate.listen(t,e,n)}listenGlobal(t,e,n){return this.delegate.listen(t,e,n)}setElementProperty(t,e,n){this.delegate.setProperty(t,e,n)}setElementAttribute(t,e,n){const[a,r]=mh(e);null!=n?this.delegate.setAttribute(t,r,n,a):this.delegate.removeAttribute(t,r,a)}setBindingDebugInfo(t,e,n){}setElementClass(t,e,n){n?this.delegate.addClass(t,e):this.delegate.removeClass(t,e)}setElementStyle(t,e,n){null!=n?this.delegate.setStyle(t,e,n):this.delegate.removeStyle(t,e)}invokeElementMethod(t,e,n){t[e].apply(t,n)}setText(t,e){this.delegate.setValue(t,e)}animate(){throw new Error("Renderer.animate is no longer supported!")}}function Jh(t,e,n,a){return new Qh(t,e,n,a)}class Qh{constructor(t,e,n,a){this._moduleType=t,this._parent=e,this._bootstrapComponents=n,this._def=a,this._destroyListeners=[],this._destroyed=!1,this.injector=this,function(t){const e=t._def,n=t._providers=new Array(e.providers.length);for(let a=0;a<e.providers.length;a++){const r=e.providers[a];4096&r.flags||void 0===n[a]&&(n[a]=kh(t,r))}}(this)}get(t,e=Bu.THROW_IF_NOT_FOUND,n=C.Default){let a=0;return n&C.SkipSelf?a|=1:n&C.Self&&(a|=4),Ah(this,{token:t,tokenKey:Yf(t),flags:a},e)}get instance(){return this.get(this._moduleType)}get componentFactoryResolver(){return this.get(Yc)}destroy(){if(this._destroyed)throw new Error(`The ng module ${j(this.instance.constructor)} has already been destroyed.`);this._destroyed=!0,function(t,e){const n=t._def,a=new Set;for(let r=0;r<n.providers.length;r++)if(131072&n.providers[r].flags){const e=t._providers[r];if(e&&e!==Oh){const t=e.ngOnDestroy;"function"!=typeof t||a.has(e)||(t.apply(e),a.add(e))}}}(this),this._destroyListeners.forEach(t=>t())}onDestroy(t){this._destroyListeners.push(t)}}const Xh=Yf(Xc),tg=Yf(af),eg=Yf(Kc),ng=Yf(Nf),ag=Yf(Of),rg=Yf(Xs),ig=Yf(Bu),sg=Yf($);function ug(t,e,n,a,r,i,s,u){const o=[];if(s)for(let d in s){const[t,e]=s[d];o[t]={flags:8,name:d,nonMinifiedName:e,ns:null,securityContext:null,suffix:null}}const l=[];if(u)for(let d in u)l.push({type:1,propName:d,target:null,eventName:u[d]});return dg(t,e|=16384,n,a,r,r,i,o,l)}function og(t,e,n){return dg(-1,t|=16,null,0,e,e,n)}function lg(t,e,n,a,r){return dg(-1,t,e,0,n,a,r)}function dg(t,e,n,a,r,i,s,u,o){const{matchedQueries:l,references:d,matchedQueryIds:c}=sh(n);o||(o=[]),u||(u=[]),i=G(i);const f=uh(s,j(r));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:l,matchedQueryIds:c,references:d,ngContentIndex:-1,childCount:a,bindings:u,bindingFlags:yh(u),outputs:o,element:null,provider:{token:r,value:i,deps:f},text:null,query:null,ngContent:null}}function cg(t,e){return pg(t,e)}function fg(t,e){let n=t;for(;n.parent&&!ah(n);)n=n.parent;return bg(n.parent,eh(n),!0,e.provider.value,e.provider.deps)}function hg(t,e){const n=bg(t,e.parent,(32768&e.flags)>0,e.provider.value,e.provider.deps);if(e.outputs.length)for(let a=0;a<e.outputs.length;a++){const r=e.outputs[a],i=n[r.propName];if(!ed(i))throw new Error(`@Output ${r.propName} not initialized in '${n.constructor.name}'.`);{const n=i.subscribe(gg(t,e.parent.nodeIndex,r.eventName));t.disposables[e.outputIndex+a]=n.unsubscribe.bind(n)}}return n}function gg(t,e,n){return a=>Xf(t,e,n,a)}function pg(t,e){const n=(8192&e.flags)>0,a=e.provider;switch(201347067&e.flags){case 512:return bg(t,e.parent,n,a.value,a.deps);case 1024:return function(t,e,n,a,r){const i=r.length;switch(i){case 0:return a();case 1:return a(yg(t,e,n,r[0]));case 2:return a(yg(t,e,n,r[0]),yg(t,e,n,r[1]));case 3:return a(yg(t,e,n,r[0]),yg(t,e,n,r[1]),yg(t,e,n,r[2]));default:const s=Array(i);for(let a=0;a<i;a++)s[a]=yg(t,e,n,r[a]);return a(...s)}}(t,e.parent,n,a.value,a.deps);case 2048:return yg(t,e.parent,n,a.deps[0]);case 256:return a.value}}function bg(t,e,n,a,r){const i=r.length;switch(i){case 0:return new a;case 1:return new a(yg(t,e,n,r[0]));case 2:return new a(yg(t,e,n,r[0]),yg(t,e,n,r[1]));case 3:return new a(yg(t,e,n,r[0]),yg(t,e,n,r[1]),yg(t,e,n,r[2]));default:const s=new Array(i);for(let a=0;a<i;a++)s[a]=yg(t,e,n,r[a]);return new a(...s)}}const mg={};function yg(t,e,n,a,r=Bu.THROW_IF_NOT_FOUND){if(8&a.flags)return a.token;const i=t;2&a.flags&&(r=null);const s=a.tokenKey;s===rg&&(n=!(!e||!e.element.componentView)),e&&1&a.flags&&(n=!1,e=e.parent);let u=t;for(;u;){if(e)switch(s){case Xh:return $h(vg(u,e,n));case tg:return vg(u,e,n).renderer;case eg:return new Kc(Mf(u,e.nodeIndex).renderElement);case ng:return Mf(u,e.nodeIndex).viewContainer;case ag:if(e.element.template)return Mf(u,e.nodeIndex).template;break;case rg:return Bh(vg(u,e,n));case ig:case sg:return Uh(u,e);default:const t=(n?e.element.allProviders:e.element.publicProviders)[s];if(t){let e=qf(u,t.nodeIndex);return e||(e={instance:pg(u,t)},u.nodes[t.nodeIndex]=e),e.instance}}n=ah(u),e=eh(u),u=u.parent,4&a.flags&&(u=null)}const o=i.root.injector.get(a.token,mg);return o!==mg||r===mg?o:i.root.ngModule.injector.get(a.token,r)}function vg(t,e,n){let a;if(n)a=Mf(t,e.nodeIndex).componentView;else for(a=t;a.parent&&!ah(a);)a=a.parent;return a}function xg(t,e,n,a,r,i){if(32768&n.flags){const e=Mf(t,n.parent.nodeIndex).componentView;2&e.def.flags&&(e.state|=8)}if(e.instance[n.bindings[a].name]=r,524288&n.flags){i=i||{};const e=Mo.unwrap(t.oldValues[n.bindingIndex+a]);i[n.bindings[a].nonMinifiedName]=new Tc(e,r,0!=(2&t.state))}return t.oldValues[n.bindingIndex+a]=r,i}function _g(t,e){if(!(t.def.nodeFlags&e))return;const n=t.def.nodes;let a=0;for(let r=0;r<n.length;r++){const i=n[r];let s=i.parent;for(!s&&i.flags&e&&wg(t,r,i.flags&e,a++),0==(i.childFlags&e)&&(r+=i.childCount);s&&1&s.flags&&r===s.nodeIndex+s.childCount;)s.directChildFlags&e&&(a=Tg(t,s,e,a)),s=s.parent}}function Tg(t,e,n,a){for(let r=e.nodeIndex+1;r<=e.nodeIndex+e.childCount;r++){const e=t.def.nodes[r];e.flags&n&&wg(t,r,e.flags&n,a++),r+=e.childCount}return a}function wg(t,e,n,a){const r=qf(t,e);if(!r)return;const i=r.instance;i&&(Gf.setCurrentNode(t,e),1048576&n&&Df(t,512,a)&&i.ngAfterContentInit(),2097152&n&&i.ngAfterContentChecked(),4194304&n&&Df(t,768,a)&&i.ngAfterViewInit(),8388608&n&&i.ngAfterViewChecked(),131072&n&&i.ngOnDestroy())}function Og(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const Sg=new K("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>_n});class Ig extends Vc{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors[0][0]||"div",this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Og(this.componentDef.inputs)}get outputs(){return Og(this.componentDef.outputs)}create(t,e,n,a){const r=(a=a||this.ngModule)?function(t,e){return{get:(n,a,r)=>{const i=t.get(n,mg,r);return i!==mg||a===mg?i:e.get(n,a,r)}}}(t,a.injector):t,i=r.get(ef,ea),s=r.get(vr,null);pn();const u=n?Vi(i,n):Ci(this.selector,i.createRenderer(null,this.componentDef)),o=this.componentDef.onPush?576:528,l="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),d=vc(),c=i.createRenderer(u,this.componentDef);n&&u&&(ta(c)?c.setAttribute(u,"ng-version",of.full):u.setAttribute("ng-version",of.full));const f=Ri(null,Fi(-1,null,1,0,null,null,null,null),d,o,null,null,i,c,s,r),h=an(f,null);let g,p,b=!1;try{const t=mc(u,this.componentDef,f,i,c);p=ye(0,f),e&&(p.projection=e.map(t=>Array.from(t))),g=yc(t,this.componentDef,f,d,[xc]),rs(f,t),Ii(f),b=!0}finally{sn(h,b)}const m=new Ng(this.componentType,g,$s(Kc,p,f),f,p);return n&&!l||(m.hostView._tViewNode.child=p),m}}class Ng extends Fc{constructor(t,e,n,a,r){super(),this.location=n,this._rootLView=a,this._tNode=r,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Hs(a),this.hostView._tViewNode=ki(a[1],null,-1,a),this.componentType=t}get injector(){return new Ca(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const Cg={},Rg=function(){var t={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencySymbol:15,CurrencyName:16,Currencies:17,PluralCase:18,ExtraData:19};return t[t.LocaleId]="LocaleId",t[t.DayPeriodsFormat]="DayPeriodsFormat",t[t.DayPeriodsStandalone]="DayPeriodsStandalone",t[t.DaysFormat]="DaysFormat",t[t.DaysStandalone]="DaysStandalone",t[t.MonthsFormat]="MonthsFormat",t[t.MonthsStandalone]="MonthsStandalone",t[t.Eras]="Eras",t[t.FirstDayOfWeek]="FirstDayOfWeek",t[t.WeekendRange]="WeekendRange",t[t.DateFormat]="DateFormat",t[t.TimeFormat]="TimeFormat",t[t.DateTimeFormat]="DateTimeFormat",t[t.NumberSymbols]="NumberSymbols",t[t.NumberFormats]="NumberFormats",t[t.CurrencySymbol]="CurrencySymbol",t[t.CurrencyName]="CurrencyName",t[t.Currencies]="Currencies",t[t.PluralCase]="PluralCase",t[t.ExtraData]="ExtraData",t}(),Ag=void 0;var kg=["en",[["a","p"],["AM","PM"],Ag],[["AM","PM"],Ag,Ag],[["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"]],Ag,[["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"]],Ag,[["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}",Ag,"{1} 'at' {0}",Ag],[".",",",";","%","+","-","E","×","‰","∞","NaN",":"],["#,##0.###","#,##0%","¤#,##0.00","#E0"],"$","US Dollar",{},function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];function Eg(t){return Lg(t)[Rg.PluralCase]}function Lg(t){const e=t.toLowerCase().replace(/_/g,"-");let n=Cg[e];if(n)return n;const a=e.split("-")[0];if(n=Cg[a],n)return n;if("en"===a)return kg;throw new Error(`Missing locale data for the locale "${t}".`)}const Dg="en-US",Pg=/^\s*(�\d+:?\d*�)\s*,\s*(select|plural)\s*,/,Mg=/�\/?\*(\d+:\d+)�/gi,qg=/�(\/?[#*!]\d+):?\d*�/gi,jg=/�(\d+):?\d*�/gi,Fg=/({\s*�\d+:?\d*�\s*,\s*\S{6}\s*,[\s\S]*})/gi,Vg=/\[(�.+?�?)\]/,Gg=/\[(�.+?�?)\]|(�\/?\*\d+:\d+�)/g,Bg=/({\s*)(VAR_(PLURAL|SELECT)(_\d+)?)(\s*,)/g,zg=/{([A-Z0-9_]+)}/g,Yg=/�I18N_EXP_(ICU(_\d+)?)�/g,Hg=/\/\*/,Ug=/\d+\:(\d+)/;function Wg(t){if(!t)return[];let e=0;const n=[],a=[],r=/[{}]/g;let i;for(r.lastIndex=0;i=r.exec(t);){const r=i.index;if("}"==i[0]){if(n.pop(),0==n.length){const n=t.substring(e,r);Pg.test(n)?a.push(Kg(n)):a.push(n),e=r+1}}else{if(0==n.length){const n=t.substring(e,r);a.push(n),e=r+1}n.push("{")}}const s=t.substring(e);return a.push(s),a}function Kg(t){const e=[],n=[];let a=1,r=0;const i=Wg(t=t.replace(Pg,(function(t,e,n){return a="select"===n?0:1,r=parseInt(e.substr(1),10),""})));for(let s=0;s<i.length;){let t=i[s++].trim();1===a&&(t=t.replace(/\s*(?:=)?(\w+)\s*/,"$1")),t.length&&e.push(t);const r=Wg(i[s++]);e.length>n.length&&n.push(r)}return'Missing key "other" in ICU statement.',e.indexOf("other")<=-1&&vt('Missing key "other" in ICU statement.'),{type:a,mainBinding:r,cases:e,values:n}}function $g(t){let e,n,a="",r=0,i=!1;for(;null!==(e=Mg.exec(t));)i?e[0]===`�/*${n}�`&&(r=e.index,i=!1):(a+=t.substring(r,e.index+e[0].length),n=e[1],i=!0);return a+=t.substr(r),a}function Zg(t,e,n,a=null){const r=[null,null],i=t.split(jg);let s=0;for(let u=0;u<i.length;u++){const t=i[u];if(1&u){const e=parseInt(t,10);r.push(-1-e),s|=tp(e)}else""!==t&&r.push(t)}return r.push(e<<2|(n?1:0)),n&&r.push(n,a),r[0]=s,r[1]=r.length-2,r}function Jg(t,e=0){let n;e|=tp(t.mainBinding);for(let a=0;a<t.values.length;a++){const r=t.values[a];for(let t=0;t<r.length;t++){const a=r[t];if("string"==typeof a)for(;n=jg.exec(a);)e|=tp(parseInt(n[1],10));else e=Jg(a,e)}}return e}const Qg=[];let Xg=-1;function tp(t){return 1<<Math.min(t,31)}const ep=[];function np(t,e,n){const a=Ae()[1];Qg[++Xg]=t,cd(!0),a.firstTemplatePass&&null===a.data[t+19]&&function(t,e,n,a){const r=Ae(),i=t.blueprint.length-19;ap=0;const s=Ge(),u=Ye()?Ge():s&&s.parent;let o=u&&u!==r[6]?u.index-19:e,l=0;ep[l]=o;const d=[];e>0&&s!==u&&d.push(s.index<<3|0);const c=[],f=[],h=(g=function(t,e){if("number"!=typeof e)return $g(t);{const n=t.indexOf(`:${e}�`)+2+e.toString().length,a=t.search(new RegExp(`�\\/\\*\\d+:${e}�`));return $g(t.substring(n,a))}}(n,a),g.replace(xp," ")).split(qg);var g;for(let p=0;p<h.length;p++){let t=h[p];if(1&p)if("/"===t.charAt(0)){if("#"===t.charAt(1)){const e=parseInt(t.substr(2),10);o=ep[--l],d.push(e<<3|5)}}else{const e=parseInt(t.substr(1),10);d.push(e<<3|0,o<<17|1),"#"===t.charAt(0)&&(ep[++l]=o=e)}else{const e=Wg(t);for(let t=0;t<e.length;t++)if(1&t){const n=i+ap++;d.push(hi,"",n,o<<17|1);const a=e[t],r=Jg(a);mp(f,a,n,n);const s=f.length-1;c.push(tp(a.mainBinding),3,-1-a.mainBinding,n<<2|2,s,r,2,n<<2|3,s)}else if(""!==e[t]){const n=e[t],a=n.match(jg),r=i+ap++;d.push(a?"":n,r,o<<17|1),a&&gt(Zg(n,r),c)}}}ap>0&&function(t,e){if(e>0){const n=t[1];if(n.firstTemplatePass){for(let a=0;a<e;a++)n.blueprint.push(null),n.data.push(null),t.push(null);n.expandoInstructions?n.expandoInstructions.push(e):n.expandoStartIndex+=e}}}(r,ap),t.data[e+19]={vars:ap,create:d,update:c,icus:f.length?f:null}}(a,t,e,n)}let ap;function rp(t,e,n,a){const r=t.next;n||(n=e),n===e&&t!==e.child?(t.next=e.child,e.child=t):n!==e&&t!==n.next?(t.next=n.next,n.next=t):t.next=null,e!==a[6]&&(t.parent=e);let i=t.next;for(;i;)i.next===t&&(i.next=r),i=i.next;if(1===t.type)return Fs(a,t,t.projection,da(a)),t;Ms(be(t,a),t,a);const s=a[t.index];return 0!==t.type&&Jt(s)&&Ms(s[7],t,a),t}function ip(t,e={}){let n=t;if(Vg.test(t)){const t={},e=[0];n=n.replace(Gg,(n,a,r)=>{const i=a||r,s=t[i]||[];if(s.length||(i.split("|").forEach(t=>{const e=t.match(Ug),n=e?parseInt(e[1],10):0,a=Hg.test(t);s.push([n,a,t])}),t[i]=s),!s.length)throw new Error("i18n postprocess: unmatched placeholder - "+i);const u=e[e.length-1];let o=0;for(let t=0;t<s.length;t++)if(s[t][0]===u){o=t;break}const[l,d,c]=s[o];return d?e.pop():u!==l&&e.push(l),s.splice(o,1),c})}return Object.keys(e).length?(n=n.replace(Bg,(t,n,a,r,i,s)=>e.hasOwnProperty(a)?`${n}${e[a]}${s}`:t),n=n.replace(zg,(t,n)=>e.hasOwnProperty(n)?e[n]:t),n=n.replace(Yg,(t,n)=>{if(e.hasOwnProperty(n)){const a=e[n];if(!a.length)throw new Error(`i18n postprocess: unmatched ICU - ${t} with key: ${n}`);return a.shift()}return t}),n):n}function sp(){!function(t){const e=Ae(),n=Qg[Xg--],a=t.data[n+19];let r=Ge();const i=op(n,a.create,0,e);for(let s=n+1;s<=r.index-19;s++)-1===i.indexOf(s)&&lp(s,e)}(Ae()[1]),cd(!1)}function up(t,e,n,a,r){const i=Ge();t[e+19]=a;const s=Ai(t[1],t[6],e,n,r,null);return i.next===s&&(i.next=null),s}function op(t,e,n,a){const r=Ae()[12];let i=null,s=null;const u=[];for(let o=0;o<e.length;o++){const n=e[o];if("string"==typeof n){const t=Os(n,r),l=e[++o];s=i,i=up(a,l,3,t,null),u.push(l),He()}else if("number"==typeof n)switch(7&n){case 1:const r=n>>>17;let l;l=r===t?a[6]:ye(r,a),s=rp(i,l,s,a);break;case 0:const d=n>>>3;u.push(d),s=i,i=ye(d,a),i&&Be(i,3===i.type);break;case 5:s=i=ye(n>>>3,a),Be(i,!1);break;case 4:es(n>>>3,e[++o],e[++o],a);break;default:throw new Error(`Unable to determine the type of mutate operation for "${n}"`)}else switch(n){case hi:const t=e[++o],l=e[++o],d=r.createComment(t);s=i,i=up(a,l,5,d,null),u.push(l),qr(d,a),i.activeCaseIndex=null,He();break;case fi:const c=e[++o],f=e[++o];s=i,i=up(a,f,3,r.createElement(c),c),u.push(f);break;default:throw new Error(`Unable to determine the type of mutate operation for "${n}"`)}}return He(),u}function lp(t,e){const n=ye(t,e),a=pe(t,e);a&&js(e[12],a);const r=_l(t);if(Jt(r)){const t=r;0!==n.type&&js(e[12],t[7])}n.flags|=32}function dp(t,e,n){np(t,e,n),sp()}function cp(t,e){!function(t,e,n){const a=Ge().index-19,r=[];for(let i=0;i<n.length;i+=2){const s=n[i],u=n[i+1].split(Fg);for(let n=0;n<u.length;n++){const i=u[n];if(1&n)throw new Error("ICU expressions are not yet supported in attributes");if(""!==i)if(i.match(jg))t.firstTemplatePass&&null===t.data[e+19]&&gt(Zg(i,a,s),r);else{const t=Ae();es(a,s,i,t);const e=ye(a,t),n=e.inputs&&e.inputs[s];n&&ys(t,n,i)}}}t.firstTemplatePass&&null===t.data[e+19]&&(t.data[e+19]=r)}(Ae()[1],t,e)}let fp=0,hp=0;function gp(t){return Uo(Ae(),t)!==ci&&(fp|=1<<hp),hp++,gp}function pp(t){if(hp){const e=Ae(),n=e[1].data[t+19];let a,r=null;Array.isArray(n)?a=n:(a=n.update,r=n.icus),function t(e,n,a,r,i,s=!1){let u=!1;for(let o=0;o<e.length;o++){const l=e[o],d=e[++o];if(s||l&r){let s="";for(let l=o+1;l<=o+d;l++){const o=e[l];if("string"==typeof o)s+=o;else if("number"==typeof o)if(o<0)s+=vn(i[a-o]);else{const d=o>>>2;let c,f,h;switch(3&o){case 1:Yi(d,e[++l],s,e[++l]);break;case 0:vs(i,d,s);break;case 2:if(c=e[++l],f=n[c],h=ye(d,i),null!==h.activeCaseIndex){const t=f.remove[h.activeCaseIndex];for(let e=0;e<t.length;e++){const a=t[e];switch(7&a){case 3:lp(a>>>3,i);break;case 6:const r=ye(t[e+1]>>>3,i).activeCaseIndex;null!==r&&gt(n[a>>>3].remove[r],t)}}}const o=bp(f,s);h.activeCaseIndex=-1!==o?o:null,op(-1,f.create[o],0,i),u=!0;break;case 3:c=e[++l],f=n[c],h=ye(d,i),t(f.update[h.activeCaseIndex],n,a,r,i,u)}}}}o+=d}}(a,r,e[7]-hp-1,fp,e),fp=0,hp=0}}function bp(t,e){let n=t.cases.indexOf(e);if(-1===n)switch(t.type){case 1:{const a=function(t,e){switch(Eg(e)(t)){case 0:return"zero";case 1:return"one";case 2:return"two";case 3:return"few";case 4:return"many";default:return"other"}}(e,Sp);n=t.cases.indexOf(a),-1===n&&"other"!==a&&(n=t.cases.indexOf("other"));break}case 0:n=t.cases.indexOf("other")}return n}function mp(t,e,n,a){const r=[],i=[],s=[],u=[],o=[];for(let l=0;l<e.values.length;l++){const d=e.values[l],c=[];for(let t=0;t<d.length;t++){const e=d[t];if("string"!=typeof e){const n=c.push(e)-1;d[t]=`\x3c!--�${n}�--\x3e`}}const f=yp(d.join(""),n,c,t,a);r.push(f.create),i.push(f.remove),s.push(f.update),u.push(f.vars),o.push(f.childIcus)}t.push({type:e.type,vars:u,childIcus:o,cases:e.cases,create:r,remove:i,update:s}),ap+=Math.max(...u)}function yp(t,e,n,a,r){const i=new $a(document).getInertBodyElement(t);if(!i)throw new Error("Unable to generate inert body element");const s={vars:0,childIcus:[],create:[],remove:[],update:[]};return function t(e,n,a,r,i,s){if(e){const u=[];for(;e;){const o=e.nextSibling,l=s+ ++n.vars;switch(e.nodeType){case Node.ELEMENT_NODE:const o=e,d=o.tagName.toLowerCase();if(sr.hasOwnProperty(d)){n.create.push(fi,d,l,a<<17|1);const u=o.attributes;for(let t=0;t<u.length;t++){const e=u.item(t),a=e.name.toLowerCase();e.value.match(jg)?lr.hasOwnProperty(a)&&gt(ur[a]?Zg(e.value,l,e.name,Qa):or[a]?Zg(e.value,l,e.name,Xa):Zg(e.value,l,e.name),n.update):n.create.push(l<<3|4,e.name,e.value)}t(e.firstChild,n,l,r,i,s),n.remove.push(l<<3|3)}else n.vars--;break;case Node.TEXT_NODE:const c=e.textContent||"",f=c.match(jg);n.create.push(f?"":c,l,a<<17|1),n.remove.push(l<<3|3),f&&gt(Zg(c,l),n.update);break;case Node.COMMENT_NODE:const h=vp.exec(e.textContent||"");if(h){const t=parseInt(h[1],10);n.create.push(hi,"",l,a<<17|1),u.push([r[t],l])}else n.vars--;break;default:n.vars--}e=o}for(let t=0;t<u.length;t++){const e=u[t][0],a=u[t][1];mp(i,e,a,s+n.vars);const r=i.length-1;n.vars+=Math.max(...i[r].vars),n.childIcus.push(r);const o=Jg(e);n.update.push(tp(e.mainBinding),3,-1-e.mainBinding,a<<2|2,r,o,2,a<<2|3,r),n.remove.push(r<<3|6,a<<3|3)}}}((mr(i)||i).firstChild,s,e,n,a,r),s}const vp=/�(\d+)�/,xp=/\uE500/g;let _p={};function Tp(t={translations:{}}){_p=t.translations}const wp=/\{\$(.*?)\}/g;function Op(t,e){return void 0!==_p[t]&&(t=_p[t]),void 0!==e&&Object.keys(e).length?t.replace(wp,(t,n)=>e[n]||""):t}let Sp=Dg;function Ip(t){null==t&&vt("Expected localeId to be defined"),"string"==typeof t&&(Sp=t.toLowerCase().replace(/_/g,"-"))}const Np=new Map;function Cp(t,e){const n=Np.get(t);Rp(t,n&&n.moduleType,e.moduleType),Np.set(t,e)}function Rp(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${j(e)} vs ${j(e.name)}`)}function Ap(t){if(null!==t.ngModuleDef.id){const e=t.ngModuleDef.id;Rp(e,Np.get(e),t),Np.set(e,t)}let e=t.ngModuleDef.imports;e instanceof Function&&(e=e()),e&&e.forEach(t=>Ap(t))}function kp(t){return Np.get(t)}const Ep={provide:Yc,useClass:class extends Yc{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=Ht(t);return new Ig(e,this.ngModule)}},deps:[ft]};class Lp extends ft{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[];const n=$t(t),a=t[kt]||null;a&&Ip(a),this._bootstrapComponents=In(n.bootstrap),this._r3Injector=Lu(t,e,[{provide:ft,useValue:this},Ep],j(t)),this.instance=this.get(t)}get(t,e=Bu.THROW_IF_NOT_FOUND,n=C.Default){return t===Bu||t===ft||t===$?this:this._r3Injector.get(t,e,n)}get componentFactoryResolver(){return this.get(Yc)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Dp extends ht{constructor(t){super(),this.moduleType=t,null!==$t(t)&&Ap(t)}create(t){return new Lp(this.moduleType,t)}}function Pp(t,e,n,a){return Ot(()=>{const r=t,i=r.prototype?Object.getPrototypeOf(r.prototype):null,s=i&&i.constructor;null!==e&&(void 0===r.decorators||s&&s.decorators===r.decorators?r.decorators=e:r.decorators.push(...e)),null!==n&&(r.ctorParameters=n),null!==a&&(r.propDecorators=void 0===r.propDecorators||s&&s.propDecorators===r.propDecorators?a:Object.assign({},r.propDecorators,a))})}function Mp(t,e,n){const a=Qe()+t,r=Ae();return Ue()?Fo(r,a,n?e.call(n):e()):Vo(r,a)}function qp(t,e,n,a){const r=Ae(),i=Qe()+t;return Go(r,i,n)?Fo(r,i+1,a?e.call(a,n):e(n)):Vo(r,i+1)}function jp(t,e,n,a,r){const i=Qe()+t,s=Ae();return Bo(s,i,n,a)?Fo(s,i+2,r?e.call(r,n,a):e(n,a)):Vo(s,i+2)}function Fp(t,e,n,a,r,i){const s=Qe()+t,u=Ae();return zo(u,s,n,a,r)?Fo(u,s+3,i?e.call(i,n,a,r):e(n,a,r)):Vo(u,s+3)}function Vp(t,e,n,a,r,i,s){const u=Qe()+t,o=Ae();return Yo(o,u,n,a,r,i)?Fo(o,u+4,s?e.call(s,n,a,r,i):e(n,a,r,i)):Vo(o,u+4)}function Gp(t,e,n,a,r,i,s,u){const o=Qe()+t,l=Ae(),d=Yo(l,o,n,a,r,i);return Go(l,o+4,s)||d?Fo(l,o+5,u?e.call(u,n,a,r,i,s):e(n,a,r,i,s)):Vo(l,o+5)}function Bp(t,e,n,a,r,i,s,u,o){const l=Qe()+t,d=Ae(),c=Yo(d,l,n,a,r,i);return Bo(d,l+4,s,u)||c?Fo(d,l+6,o?e.call(o,n,a,r,i,s,u):e(n,a,r,i,s,u)):Vo(d,l+6)}function zp(t,e,n,a,r,i,s,u,o,l){const d=Qe()+t,c=Ae();let f=Yo(c,d,n,a,r,i);return zo(c,d+4,s,u,o)||f?Fo(c,d+7,l?e.call(l,n,a,r,i,s,u,o):e(n,a,r,i,s,u,o)):Vo(c,d+7)}function Yp(t,e,n,a,r,i,s,u,o,l,d){const c=Qe()+t,f=Ae(),h=Yo(f,c,n,a,r,i);return Yo(f,c+4,s,u,o,l)||h?Fo(f,c+8,d?e.call(d,n,a,r,i,s,u,o,l):e(n,a,r,i,s,u,o,l)):Vo(f,c+8)}function Hp(t,e,n,a){let r=Qe()+t,i=!1;const s=Ae();for(let u=0;u<n.length;u++)Go(s,r++,n[u])&&(i=!0);return i?Fo(s,r,e.apply(a,n)):Vo(s,r)}function Up(t,e){const n=Ae()[1];let a;const r=t+19;n.firstTemplatePass?(a=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const a=e[n];if(t===a.name)return a}throw new Error(`The pipe '${t}' could not be found!`)}(e,n.pipeRegistry),n.data[r]=a,a.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(r,a.onDestroy)):a=n.data[r];const i=a.factory();return vl(t,i),i}function Wp(t,e,n){const a=_l(t);return Xp(Qp(t)?qp(e,a.transform,n,a):a.transform(n))}function Kp(t,e,n,a){const r=_l(t);return Xp(Qp(t)?jp(e,r.transform,n,a,r):r.transform(n,a))}function $p(t,e,n,a,r){const i=_l(t);return Xp(Qp(t)?Fp(e,i.transform,n,a,r,i):i.transform(n,a,r))}function Zp(t,e,n,a,r,i){const s=_l(t);return Xp(Qp(t)?Vp(e,s.transform,n,a,r,i,s):s.transform(n,a,r,i))}function Jp(t,e,n){const a=_l(t);return Xp(Qp(t)?Hp(e,a.transform,n,a):a.transform.apply(a,n))}function Qp(t){return Ae()[1].data[t+19].pure}function Xp(t){if(Mo.isWrapped(t)){t=Mo.unwrap(t);const e=Ae();e[e[7]]=ci}return t}class tb extends a.a{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let a,i=t=>null,s=()=>null;t&&"object"==typeof t?(a=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(i=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(s=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(a=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(i=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(s=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const u=super.subscribe(a,i,s);return t instanceof r.a&&t.add(u),u}}function eb(){return this._results[Lo()]()}class nb{constructor(){this.dirty=!0,this._results=[],this.changes=new tb,this.length=0;const t=Lo(),e=nb.prototype;e[t]||(e[t]=eb)}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t){this._results=pt(t),this.dirty=!1,this.length=this._results.length,this.last=this._results[this.length-1],this.first=this._results[0]}notifyOnChanges(){this.changes.emit(this)}setDirty(){this.dirty=!0}destroy(){this.changes.complete(),this.changes.unsubscribe()}}class ab{constructor(t){this.queryList=t,this.matches=null}clone(){return new ab(this.queryList)}setDirty(){this.queryList.setDirty()}}class rb{constructor(t=[]){this.queries=t}createEmbeddedView(t){const e=t.queries;if(null!==e){const n=null!==t.contentQueries?t.contentQueries[0]:e.length,a=new Array(n);for(let t=0;t<n;t++){const n=e.getByIndex(t);a[t]=this.queries[n.indexInDeclarationView].clone()}return new rb(a)}return null}insertView(t){this.dirtyQueriesWithMatches(t)}detachView(t){this.dirtyQueriesWithMatches(t)}dirtyQueriesWithMatches(t){for(let e=0;e<this.queries.length;e++)null!==wb(t,e).matches&&this.queries[e].setDirty()}}class ib{constructor(t,e,n,a=null){this.predicate=t,this.descendants=e,this.isStatic=n,this.read=a}}class sb{constructor(t=[]){this.queries=t}elementStart(t,e){for(let n of this.queries)n.elementStart(t,e)}elementEnd(t){for(let e of this.queries)e.elementEnd(t)}embeddedTView(t){let e=null;for(let n=0;n<this.length;n++){const a=null!==e?e.length:0,r=this.getByIndex(n).embeddedTView(t,a);r&&(r.indexInDeclarationView=n,null!==e?e.push(r):e=[r])}return null!==e?new sb(e):null}template(t,e){for(let n of this.queries)n.template(t,e)}getByIndex(t){return this.queries[t]}get length(){return this.queries.length}track(t){this.queries.push(t)}}class ub{constructor(t,e=-1){this.metadata=t,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=e}elementStart(t,e){this.isApplyingToNode(e)&&this.matchTNode(t,e)}elementEnd(t){this._declarationNodeIndex===t.index&&(this._appliesToNextNode=!1)}template(t,e){this.elementStart(t,e)}embeddedTView(t,e){return this.isApplyingToNode(t)?(this.crossesNgTemplate=!0,this.addMatch(-t.index,e),new ub(this.metadata)):null}isApplyingToNode(t){return this._appliesToNextNode&&!1===this.metadata.descendants?this._declarationNodeIndex===(t.parent?t.parent.index:-1):this._appliesToNextNode}matchTNode(t,e){if(Array.isArray(this.metadata.predicate)){const n=this.metadata.predicate;for(let a=0;a<n.length;a++)this.matchTNodeWithReadOption(t,e,ob(e,n[a]))}else{const n=this.metadata.predicate;n===Of?0===e.type&&this.matchTNodeWithReadOption(t,e,-1):this.matchTNodeWithReadOption(t,e,Oa(e,t,n,!1,!1))}}matchTNodeWithReadOption(t,e,n){if(null!==n){const a=this.metadata.read;if(null!==a)if(a===Kc||a===Nf||a===Of&&0===e.type)this.addMatch(e.index,-2);else{const n=Oa(e,t,a,!1,!1);null!==n&&this.addMatch(e.index,n)}else this.addMatch(e.index,n)}}addMatch(t,e){null===this.matches?this.matches=[t,e]:this.matches.push(t,e)}}function ob(t,e){const n=t.localNames;if(null!==n)for(let a=0;a<n.length;a+=2)if(n[a]===e)return n[a+1];return null}function lb(t,e,n,a){return-1===n?function(t,e){return 3===t.type||4===t.type?$s(Kc,t,e):0===t.type?Zs(Of,Kc,t,e):null}(e,t):-2===n?function(t,e,n){return n===Kc?$s(Kc,e,t):n===Of?Zs(Of,Kc,e,t):n===Nf?Js(Nf,Kc,e,t):void 0}(t,e,a):Sa(t[1].data,t,n,e)}function db(t,e,n){const a=t[5].queries[n];if(null===a.matches){const n=t[1].data,r=e.matches,i=new Array(r.length/2);for(let a=0;a<r.length;a+=2){const s=r[a];i[a/2]=s<0?null:lb(t,n[s],r[a+1],e.metadata.read)}a.matches=i}return a.matches}function cb(t){const e=Ae(),n=en();nn(n+1);const a=wb(e[1],n);if(t.dirty&&Ue()===a.metadata.isStatic){if(null===a.matches)t.reset([]);else{const r=a.crossesNgTemplate?function t(e,n,a){const r=e[1].queries.getByIndex(n),i=r.matches;if(null!==i){const s=db(e,r,n);for(let n=0;n<i.length;n+=2){const r=i[n];if(r>0)a.push(s[n/2]);else{const s=i[n+1],u=e[-r];for(let e=9;e<u.length;e++){const n=u[e];n[17]===n[3]&&t(n,s,a)}if(null!==u[5])for(let e of u[5])t(e,s,a)}}}return a}(e,n,[]):db(e,a,n);t.reset(r),t.notifyOnChanges()}return!0}return!1}function fb(t,e,n){gb(Ae(),t,e,n,!0)}function hb(t,e,n){gb(Ae(),t,e,n,!1)}function gb(t,e,n,a,r){const i=t[1];i.firstTemplatePass&&(Tb(i,new ib(e,n,r,a),-1),r&&(i.staticViewQueries=!0)),_b(t)}function pb(){return xb(Ae(),en())}function bb(t,e,n,a){yb(Ae(),e,n,a,!1,Ge(),t)}function mb(t,e,n,a){yb(Ae(),e,n,a,!0,Ge(),t)}function yb(t,e,n,a,r,i,s){const u=t[1];u.firstTemplatePass&&(Tb(u,new ib(e,n,r,a),i.index),function(t,e){const n=t.contentQueries||(t.contentQueries=[]);e!==(t.contentQueries.length?n[n.length-1]:-1)&&n.push(t.queries.length-1,e)}(u,s),r&&(u.staticContentQueries=!0)),_b(t)}function vb(){return xb(Ae(),en())}function xb(t,e){return t[5].queries[e].queryList}function _b(t){const e=new nb;!function(t,e,n){const a=gs(t);a.push(e),t[1].firstTemplatePass&&ps(t).push(n,a.length-1)}(t,e,e.destroy),null===t[5]&&(t[5]=new rb),t[5].queries.push(new ab(e))}function Tb(t,e,n){null===t.queries&&(t.queries=new sb),t.queries.track(new ub(e,n))}function wb(t,e){return t.queries.getByIndex(e)}function Ob(t,e){return Zs(Of,Kc,t,e)}function Sb(t=C.Default){const e=Qs(!0);if(null!=e||t&C.Optional)return e;throw new Error("No provider for ChangeDetectorRef!")}const Ib=(()=>({"ɵɵattribute":Wo,"ɵɵattributeInterpolate1":al,"ɵɵattributeInterpolate2":rl,"ɵɵattributeInterpolate3":il,"ɵɵattributeInterpolate4":sl,"ɵɵattributeInterpolate5":ul,"ɵɵattributeInterpolate6":ol,"ɵɵattributeInterpolate7":ll,"ɵɵattributeInterpolate8":dl,"ɵɵattributeInterpolateV":cl,"ɵɵdefineBase":Bt,"ɵɵdefineComponent":Pt,"ɵɵdefineDirective":zt,"ɵɵdefineInjectable":k,"ɵɵdefineInjector":L,"ɵɵdefineNgModule":Ft,"ɵɵdefinePipe":Yt,"ɵɵdirectiveInject":Tl,"ɵɵgetFactoryOf":Ra,"ɵɵgetInheritedFactory":Aa,"ɵɵinject":rt,"ɵɵinjectAttribute":wl,"ɵɵinjectPipeChangeDetectorRef":Sb,"ɵɵtemplateRefExtractor":Ob,"ɵɵNgOnChangesFeature":wc,"ɵɵProvidersFeature":jc,"ɵɵInheritDefinitionFeature":Nc,"ɵɵcontainer":gl,"ɵɵnextContext":ud,"ɵɵcontainerRefreshStart":bl,"ɵɵcontainerRefreshEnd":ml,"ɵɵnamespaceHTML":gn,"ɵɵnamespaceMathML":hn,"ɵɵnamespaceSVG":fn,"ɵɵenableBindings":Ce,"ɵɵdisableBindings":Re,"ɵɵallocHostVars":ko,"ɵɵelementStart":zl,"ɵɵelementEnd":Yl,"ɵɵelement":Hl,"ɵɵelementContainerStart":Kl,"ɵɵelementContainerEnd":$l,"ɵɵelementContainer":Zl,"ɵɵpureFunction0":Mp,"ɵɵpureFunction1":qp,"ɵɵpureFunction2":jp,"ɵɵpureFunction3":Fp,"ɵɵpureFunction4":Vp,"ɵɵpureFunction5":Gp,"ɵɵpureFunction6":Bp,"ɵɵpureFunction7":zp,"ɵɵpureFunction8":Yp,"ɵɵpureFunctionV":Hp,"ɵɵgetCurrentView":Xl,"ɵɵrestoreView":Ve,"ɵɵlistener":nd,"ɵɵload":_l,"ɵɵprojection":fd,"ɵɵupdateSyntheticHostBinding":tc,"ɵɵcomponentHostSyntheticListener":ad,"ɵɵpipeBind1":Wp,"ɵɵpipeBind2":Kp,"ɵɵpipeBind3":$p,"ɵɵpipeBind4":Zp,"ɵɵpipeBindV":Jp,"ɵɵprojectionDef":ld,"ɵɵhostProperty":Xd,"ɵɵproperty":Ho,"ɵɵpropertyInterpolate":hd,"ɵɵpropertyInterpolate1":gd,"ɵɵpropertyInterpolate2":pd,"ɵɵpropertyInterpolate3":bd,"ɵɵpropertyInterpolate4":md,"ɵɵpropertyInterpolate5":yd,"ɵɵpropertyInterpolate6":vd,"ɵɵpropertyInterpolate7":xd,"ɵɵpropertyInterpolate8":_d,"ɵɵpropertyInterpolateV":Td,"ɵɵpipe":Up,"ɵɵqueryRefresh":cb,"ɵɵviewQuery":hb,"ɵɵstaticViewQuery":fb,"ɵɵstaticContentQuery":mb,"ɵɵloadViewQuery":pb,"ɵɵcontentQuery":bb,"ɵɵloadContentQuery":vb,"ɵɵreference":xl,"ɵɵelementHostAttrs":Ul,"ɵɵclassMap":kl,"ɵɵclassMapInterpolate1":Pd,"ɵɵclassMapInterpolate2":Md,"ɵɵclassMapInterpolate3":qd,"ɵɵclassMapInterpolate4":jd,"ɵɵclassMapInterpolate5":Fd,"ɵɵclassMapInterpolate6":Vd,"ɵɵclassMapInterpolate7":Gd,"ɵɵclassMapInterpolate8":Bd,"ɵɵclassMapInterpolateV":zd,"ɵɵstyling":Ol,"ɵɵstyleMap":Al,"ɵɵstyleProp":Il,"ɵɵstylePropInterpolate1":Yd,"ɵɵstylePropInterpolate2":Hd,"ɵɵstylePropInterpolate3":Ud,"ɵɵstylePropInterpolate4":Wd,"ɵɵstylePropInterpolate5":Kd,"ɵɵstylePropInterpolate6":$d,"ɵɵstylePropInterpolate7":Zd,"ɵɵstylePropInterpolate8":Jd,"ɵɵstylePropInterpolateV":Qd,"ɵɵstyleSanitizer":Sl,"ɵɵstylingApply":Pl,"ɵɵclassProp":Cl,"ɵɵselect":wi,"ɵɵtemplate":pl,"ɵɵtext":wd,"ɵɵtextBinding":Od,"ɵɵtextInterpolate":Sd,"ɵɵtextInterpolate1":Id,"ɵɵtextInterpolate2":Nd,"ɵɵtextInterpolate3":Cd,"ɵɵtextInterpolate4":Rd,"ɵɵtextInterpolate5":Ad,"ɵɵtextInterpolate6":kd,"ɵɵtextInterpolate7":Ed,"ɵɵtextInterpolate8":Ld,"ɵɵtextInterpolateV":Dd,"ɵɵembeddedViewStart":Jl,"ɵɵembeddedViewEnd":Ql,"ɵɵi18n":dp,"ɵɵi18nAttributes":cp,"ɵɵi18nExp":gp,"ɵɵi18nStart":np,"ɵɵi18nEnd":sp,"ɵɵi18nApply":pp,"ɵɵi18nPostprocess":ip,"ɵɵi18nLocalize":Op,"ɵɵresolveWindow":Tn,"ɵɵresolveDocument":wn,"ɵɵresolveBody":On,"ɵɵsetComponentScope":Mt,"ɵɵsetNgModuleScope":Vt,"ɵɵsanitizeHtml":wr,"ɵɵsanitizeStyle":Or,"ɵɵdefaultStyleSanitizer":Ar,"ɵɵsanitizeResourceUrl":Ir,"ɵɵsanitizeScript":Nr,"ɵɵsanitizeUrl":Sr,"ɵɵsanitizeUrlOrResourceUrl":Rr}))(),Nb=[],Cb=[];let Rb=!1;function Ab(){if(!Rb){Rb=!0;try{for(let t=Cb.length-1;t>=0;t--){const{moduleType:e,ngModule:n}=Cb[t];n.declarations&&n.declarations.every(kb)&&(Cb.splice(t,1),qb(e,n))}}finally{Rb=!1}}}function kb(t){return Array.isArray(t)?t.every(kb):!!G(t)}function Eb(t,e={}){Lb(t,e),function(t,e){Cb.push({moduleType:t,ngModule:e})}(t,e)}function Lb(t,e,n=!1){const a=pt(e.declarations||Nb);let r=null;Object.defineProperty(t,At,{configurable:!0,get:()=>(null===r&&(r=W().compileNgModule(Ib,`ng:///${t.name}/ngModuleDef.js`,{type:t,bootstrap:pt(e.bootstrap||Nb).map(G),declarations:a.map(G),imports:pt(e.imports||Nb).map(G).map(Vb),exports:pt(e.exports||Nb).map(G).map(Vb),emitInline:!0,schemas:e.schemas?pt(e.schemas):null,id:e.id||null})),r)});let i=null;Object.defineProperty(t,q,{get:()=>{if(null===i){const n={name:t.name,type:t,deps:hu(t),providers:e.providers||Nb,imports:[(e.imports||Nb).map(G),(e.exports||Nb).map(G)]};i=W().compileInjector(Ib,`ng:///${t.name}/ngInjectorDef.js`,n)}return i},configurable:!1})}let Db=new Map,Pb=new Map;function Mb(){Db=new Map,Pb=new Map,Cb.length=0}function qb(t,e){const n=pt(e.declarations||Nb),a=Fb(t);n.forEach(e=>{e.hasOwnProperty(Nt)?jb(Ht(e),a):e.hasOwnProperty(Ct)||e.hasOwnProperty(Rt)||(e.ngSelectorScope=t)})}function jb(t,e){t.directiveDefs=()=>Array.from(e.compilation.directives).map(t=>t.hasOwnProperty(Nt)?Ht(t):Ut(t)).filter(t=>!!t),t.pipeDefs=()=>Array.from(e.compilation.pipes).map(t=>Wt(t)),t.schemas=e.schemas,t.tView=null}function Fb(t,e){if(!Gb(t))throw new Error(t.name+" does not have an ngModuleDef");const n=$t(t);if(null!==n.transitiveCompileScopes)return n.transitiveCompileScopes;const a={schemas:n.schemas||null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set,pipes:new Set}};return In(n.declarations).forEach(t=>{Wt(t)?a.compilation.pipes.add(t):a.compilation.directives.add(t)}),In(n.imports).forEach(t=>{const n=t;if(!Gb(n))throw new Error(`Importing ${n.name} which does not have an ngModuleDef`);e&&e(n);const r=Fb(n,e);r.exported.directives.forEach(t=>a.compilation.directives.add(t)),r.exported.pipes.forEach(t=>a.compilation.pipes.add(t))}),In(n.exports).forEach(t=>{const n=t;if(Gb(n)){const t=Fb(n,e);t.exported.directives.forEach(t=>{a.compilation.directives.add(t),a.exported.directives.add(t)}),t.exported.pipes.forEach(t=>{a.compilation.pipes.add(t),a.exported.pipes.add(t)})}else Wt(n)?a.exported.pipes.add(n):a.exported.directives.add(n)}),n.transitiveCompileScopes=a,a}function Vb(t){return function(t){return void 0!==t.ngModule}(t)?t.ngModule:t}function Gb(t){return!!$t(t)}function Bb(t,e){let n=null;!function(t,e){Co(e)&&(Io.set(t,e),No.add(t))}(t,e),Object.defineProperty(t,Nt,{get:()=>{const a=W();if(null===n){if(Co(e)){const n=[`Component '${t.name}' is not resolved:`];throw e.templateUrl&&n.push(" - templateUrl: "+e.templateUrl),e.styleUrls&&e.styleUrls.length&&n.push(" - styleUrls: "+JSON.stringify(e.styleUrls)),n.push("Did you run and wait for 'resolveComponentResources()'?"),new Error(n.join("\n"))}const r=e.templateUrl||`ng:///${t.name}/template.html`,i=Object.assign({},Hb(t,e),{typeSourceSpan:a.createParseSourceSpan("Component",t.name,r),template:e.template||"",preserveWhitespaces:e.preserveWhitespaces||!1,styles:e.styles||It,animations:e.animations,directives:[],changeDetection:e.changeDetection,pipes:new Map,encapsulation:e.encapsulation||wt.Emulated,interpolation:e.interpolation,viewProviders:e.viewProviders||null});if(i.usesInheritance&&Ub(t),n=a.compileComponent(Ib,r,i),Ab(),void 0!==t.ngSelectorScope){const e=Fb(t.ngSelectorScope);jb(n,e)}}return n},configurable:!1}),pu(t)}function zb(t,e){let n=null;Object.defineProperty(t,Ct,{get:()=>{if(null===n){const a=t&&t.name,r=`ng:///${a}/ngDirectiveDef.js`,i=W(),s=Hb(t,e);s.typeSourceSpan=i.createParseSourceSpan("Directive",a,r),s.usesInheritance&&Ub(t),n=i.compileDirective(Ib,r,s)}return n},configurable:!1}),pu(t)}function Yb(t){return Object.getPrototypeOf(t.prototype)===Object.prototype}function Hb(t,e){const n=fu().ownPropMetadata(t);return{name:t.name,type:t,typeArgumentCount:0,selector:e.selector,deps:hu(t),host:e.host||St,propMetadata:n,inputs:e.inputs||It,outputs:e.outputs||It,queries:Zb(t,n,Jb),lifecycle:{usesOnChanges:t.prototype.hasOwnProperty("ngOnChanges")},typeSourceSpan:null,usesInheritance:!Yb(t),exportAs:(a=e.exportAs,void 0===a?null:a.split(",").map(t=>t.trim())),providers:e.providers||null,viewQueries:Zb(t,n,Qb)};var a}function Ub(t){const e=Object.prototype;let n=Object.getPrototypeOf(t);for(;n&&n!==e;){if(!Ut(n)&&!Ht(n)&&!Kt(n)){const t=Kb(n);t&&Wb(n,t)}n=Object.getPrototypeOf(n)}}function Wb(t,e){let n=null;Object.defineProperty(t,Et,{get:()=>{if(null===n){const a=`ng://${t&&t.name}/ngBaseDef.js`,r=W();n=r.compileBase(Ib,a,e)}return n},configurable:!1})}function Kb(t){const e=fu().ownPropMetadata(t),n=Zb(t,e,Qb),a=Zb(t,e,Jb);let r,i,s=!1;for(const u in e)e[u].forEach(t=>{const e=t.ngMetadataName;"Input"===e?(r=r||{},r[u]=t.bindingPropertyName?[t.bindingPropertyName,u]:u):"Output"===e?(i=i||{},i[u]=t.bindingPropertyName||u):"HostBinding"!==e&&"HostListener"!==e||(s=!0)});return r||i||n.length||a.length||s?{name:t.name,type:t,inputs:r,outputs:i,viewQueries:n,queries:a,propMetadata:e}:null}function $b(t,e){return{propertyName:t,predicate:(n=e.selector,"string"==typeof n?n.split(",").map(t=>t.trim()):G(n)),descendants:e.descendants,first:e.first,read:e.read?e.read:null,static:!!e.static};var n}function Zb(t,e,n){const a=[];for(const r in e)if(e.hasOwnProperty(r)){const i=e[r];i.forEach(e=>{if(n(e)){if(!e.selector)throw new Error(`Can't construct a query for the property "${r}" of "${xn(t)}" since the query selector wasn't defined.`);if(i.some(Xb))throw new Error("Cannot combine @Input decorators with query decorators");a.push($b(r,e))}})}return a}function Jb(t){const e=t.ngMetadataName;return"ContentChild"===e||"ContentChildren"===e}function Qb(t){const e=t.ngMetadataName;return"ViewChild"===e||"ViewChildren"===e}function Xb(t){return"Input"===t.ngMetadataName}function tm(t,e){let n=null;Object.defineProperty(t,Rt,{get:()=>{if(null===n){const a=t.name;n=W().compilePipe(Ib,`ng:///${a}/ngPipeDef.js`,{type:t,typeArgumentCount:0,name:a,deps:hu(t),pipeName:e.name,pure:void 0===e.pure||e.pure})}return n},configurable:!1})}const em=y("Directive",(t={})=>t,void 0,void 0,(t,e)=>fm(t,e)),nm=y("Component",(t={})=>Object.assign({changeDetection:xt.Default},t),em,void 0,(t,e)=>cm(t,e)),am=y("Pipe",t=>Object.assign({pure:!0},t),void 0,void 0,(t,e)=>hm(t,e)),rm=_("Input",t=>({bindingPropertyName:t})),im=_("Output",t=>({bindingPropertyName:t})),sm=_("HostBinding",t=>({hostPropertyName:t})),um=_("HostListener",(t,e)=>({eventName:t,args:e})),om=Bb,lm=zb,dm=tm,cm=Wc,fm=Wc,hm=Wc,gm=y("NgModule",t=>t,void 0,void 0,(t,e)=>bm(t,e)),pm=Eb,bm=function(t,e){let n=e&&e.imports||[];e&&e.exports&&(n=[...n,e.exports]),t.ngInjectorDef=L({factory:wu(t,{useClass:t}),providers:e&&e.providers,imports:n})},mm=new K("Application Initializer");class ym{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n<this.appInits.length;n++){const e=this.appInits[n]();td(e)&&t.push(e)}Promise.all(t).then(()=>{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}const vm=new K("AppId");function xm(){return`${Tm()}${Tm()}${Tm()}`}const _m={provide:vm,useFactory:xm,deps:[]};function Tm(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const wm=new K("Platform Initializer"),Om=new K("Platform ID"),Sm=new K("appBootstrapListener"),Im=new K("Application Packages Root URL");class Nm{log(t){console.log(t)}warn(t){console.warn(t)}}const Cm=new K("LocaleId"),Rm=new K("Translations"),Am=new K("TranslationsFormat"),km=function(){var t={Error:0,Warning:1,Ignore:2};return t[t.Error]="Error",t[t.Warning]="Warning",t[t.Ignore]="Ignore",t}(),Em=!0,Lm=!1;class Dm{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}function Pm(){throw new Error("Runtime compiler is not loaded")}const Mm=function(t){return new Dp(t)},qm=Pm,jm=function(t){return Promise.resolve(Mm(t))},Fm=Pm,Vm=function(t){const e=Mm(t),n=In($t(t).declarations).reduce((t,e)=>{const n=Ht(e);return n&&t.push(new Ig(n)),t},[]);return new Dm(e,n)},Gm=Pm,Bm=function(t){return Promise.resolve(Vm(t))},zm=Pm;class Ym{constructor(){this.compileModuleSync=qm,this.compileModuleAsync=Fm,this.compileModuleAndAllComponentsSync=Gm,this.compileModuleAndAllComponentsAsync=zm}clearCache(){}clearCacheFor(t){}getModuleId(t){}}const Hm=new K("compilerOptions");class Um{}let Wm,Km;function $m(){const t=U.wtf;return!(!t||(Wm=t.trace,!Wm)||(Km=Wm.events,0))}function Zm(t,e=null){return Km.createScope(t,e)}function Jm(t,e){return Wm.leaveScope(t,e),e}function Qm(t,e){return Wm.beginTimeRange(t,e)}function Xm(t){Wm.endTimeRange(t)}const ty=$m();function ey(t,e){return null}const ny=ty?Zm:(t,e)=>ey,ay=ty?Jm:(t,e)=>e,ry=ty?Qm:(t,e)=>null,iy=ty?Xm:t=>null,sy=(()=>Promise.resolve(0))();function uy(t){"undefined"==typeof Zone?sy.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class oy{constructor({enableLongStackTrace:t=!1}){if(this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new tb(!1),this.onMicrotaskEmpty=new tb(!1),this.onStable=new tb(!1),this.onError=new tb(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");var e;Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),(e=this)._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,n,a,r,i,s)=>{try{return fy(e),t.invokeTask(a,r,i,s)}finally{hy(e)}},onInvoke:(t,n,a,r,i,s,u)=>{try{return fy(e),t.invoke(a,r,i,s,u)}finally{hy(e)}},onHasTask:(t,n,a,r)=>{t.hasTask(a,r),n===a&&("microTask"==r.change?(e.hasPendingMicrotasks=r.microTask,cy(e)):"macroTask"==r.change&&(e.hasPendingMacrotasks=r.macroTask))},onHandleError:(t,n,a,r)=>(t.handleError(a,r),e.runOutsideAngular(()=>e.onError.emit(r)),!1)})}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!oy.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(oy.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,a){const r=this._inner,i=r.scheduleEventTask("NgZoneEvent: "+a,t,dy,ly,ly);try{return r.runTask(i,e,n)}finally{r.cancelTask(i)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function ly(){}const dy={};function cy(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function fy(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function hy(t){t._nesting--,cy(t)}class gy{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new tb,this.onMicrotaskEmpty=new tb,this.onStable=new tb,this.onError=new tb}run(t){return t()}runGuarded(t){return t()}runOutsideAngular(t){return t()}runTask(t){return t()}}class py{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{oy.assertNotInAngularZone(),uy(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())uy(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let a=-1;e&&e>0&&(a=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==a),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:a,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}class by{constructor(){this._applications=new Map,xy.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return xy.findTestabilityInTree(this,t,e)}}class my{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}function yy(t){xy=t}let vy,xy=new my;function _y(t,e,n){const a=new Dp(n);if(0===Io.size)return Promise.resolve(a);const r=function(t){const e=[];return t.forEach(t=>t&&e.push(...t)),e}(t.get(Hm,[]).concat(e).map(t=>t.providers));if(0===r.length)return Promise.resolve(a);const i=W(),s=Bu.create({providers:r}).get(i.ResourceLoader);return So(t=>Promise.resolve(s.get(t))).then(()=>a)}function Ty(t){return t.isBoundToModule}const wy=new K("AllowMultipleToken");class Oy{constructor(t,e){this.name=t,this.token=e}}function Sy(t){if(vy&&!vy.destroyed&&!vy.injector.get(wy,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");vy=t.get(Ay);const e=t.get(wm,null);return e&&e.forEach(t=>t()),vy}function Iy(t,e,n=[]){const a="Platform: "+e,r=new K(a);return(e=[])=>{let i=Ry();if(!i||i.injector.get(wy,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0});Sy(Bu.create({providers:t,name:a}))}return Ny(r)}}function Ny(t){const e=Ry();if(!e)throw new Error("No platform exists!");if(!e.injector.get(t,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return e}function Cy(){vy&&!vy.destroyed&&vy.destroy()}function Ry(){return vy&&!vy.destroyed?vy:null}class Ay{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t){let e;return e="noop"===t?new gy:("zone.js"===t?void 0:t)||new oy({enableLongStackTrace:Wa()}),e}(e?e.ngZone:void 0),a=[{provide:oy,useValue:n}];return n.run(()=>{const e=Bu.create({providers:a,parent:this.injector,name:t.moduleType.name}),r=t.create(e),i=r.injector.get(Da,null);if(!i)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return Lm&&Ip(r.injector.get(Cm,Dg)||Dg),r.onDestroy(()=>Ly(this._modules,r)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{i.handleError(t)}})),function(t,e,n){try{const a=n();return td(a)?a.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):a}catch(a){throw e.runOutsideAngular(()=>t.handleError(a)),a}}(i,n,()=>{const t=r.injector.get(ym);return t.runInitializers(),t.donePromise.then(()=>(this._moduleDoBootstrap(r),r))})})}bootstrapModule(t,e=[]){const n=ky({},e);return function(t,e,n){return t.get(Um).createCompiler([e]).compileModuleAsync(n)}(this.injector,n,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Ey);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${j(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}function ky(t,e){return Array.isArray(e)?e.reduce(ky,t):Object.assign({},t,e)}let Ey=(()=>{class t{constructor(t,e,n,a,r,u){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=a,this._componentFactoryResolver=r,this._initStatus=u,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Wa(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const l=new i.a(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),d=new i.a(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{oy.assertNotInAngularZone(),uy(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{oy.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=Object(s.a)(l,d.pipe(t=>{return o()((e=g,function(t){let n;n="function"==typeof e?e:function(){return e};const a=Object.create(t,f);return a.source=t,a.subjectFactory=n,a})(t));var e}))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof Vc?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const a=n instanceof Uc?null:this._injector.get(ft),r=n.create(Bu.NULL,[],e||n.selector,a);r.onDestroy(()=>{this._unloadComponent(r)});const i=r.injector.get(py,null);return i&&r.injector.get(by).registerApplication(r.location.nativeElement,i),this._loadComponent(r),Wa()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");const e=t._tickScope();try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(n){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(n))}finally{this._runningTick=!1,ay(e)}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;Ly(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Sm,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),Ly(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t._tickScope=ny("ApplicationRef#tick()"),t})();function Ly(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class Dy{}function Py(t){const e=kp(t);if(!e)throw jy(t);return e}function My(t){const e=kp(t);if(!e)throw jy(t);return new Dp(e)}const qy=Py;function jy(t){return new Error(`No module with ID ${t} loaded`)}class Fy{}const Vy={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"};class Gy{constructor(t,e){this._compiler=t,this._config=e||Vy}load(t){return!Lm&&this._compiler instanceof Ym?this.loadFactory(t):this.loadAndCompile(t)}loadAndCompile(t){let[e,a]=t.split("#");return void 0===a&&(a="default"),n("crnd")(e).then(t=>t[a]).then(t=>By(t,e,a)).then(t=>this._compiler.compileModuleAsync(t))}loadFactory(t){let[e,a]=t.split("#"),r="NgFactory";return void 0===a&&(a="default",r=""),n("crnd")(this._config.factoryPathPrefix+e+this._config.factoryPathSuffix).then(t=>t[a+r]).then(t=>By(t,e,a))}}function By(t,e,n){if(!t)throw new Error(`Cannot find '${n}' in '${e}'`);return t}class zy extends Xs{}class Yy extends zy{}class Hy{constructor(t,e){this.name=t,this.callback=e}}class Uy{constructor(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Wy&&e.addChild(this)}get injector(){return this._debugContext.injector}get componentInstance(){return this._debugContext.component}get context(){return this._debugContext.context}get references(){return this._debugContext.references}get providerTokens(){return this._debugContext.providerTokens}}class Wy extends Uy{constructor(t,e,n){super(t,e,n),this.properties={},this.attributes={},this.classes={},this.styles={},this.childNodes=[],this.nativeElement=t}addChild(t){t&&(this.childNodes.push(t),t.parent=this)}removeChild(t){const e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))}insertChildrenAfter(t,e){const n=this.childNodes.indexOf(t);-1!==n&&(this.childNodes.splice(n+1,0,...e),e.forEach(e=>{e.parent&&e.parent.removeChild(e),t.parent=this}))}insertBefore(t,e){const n=this.childNodes.indexOf(t);-1===n?this.addChild(e):(e.parent&&e.parent.removeChild(e),e.parent=this,this.childNodes.splice(n,0,e))}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return function t(e,n,a){e.childNodes.forEach(e=>{e instanceof Wy&&(n(e)&&a.push(e),t(e,n,a))})}(this,t,e),e}queryAllNodes(t){const e=[];return function t(e,n,a){e instanceof Wy&&e.childNodes.forEach(e=>{n(e)&&a.push(e),e instanceof Wy&&t(e,n,a)})}(this,t,e),e}get children(){return this.childNodes.filter(t=>t instanceof Wy)}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name==t&&n.callback(e)})}}function Ky(t){return t.map(t=>t.nativeElement)}class $y{constructor(t){this.nativeNode=t}get parent(){const t=this.nativeNode.parentNode;return t?new Zy(t):null}get injector(){return ic(this.nativeNode)}get componentInstance(){const t=this.nativeNode;return t&&(ec(t)||ac(t))}get context(){return ec(this.nativeNode)||nc(this.nativeNode)}get listeners(){return cc(this.nativeNode).filter(dc)}get references(){return function(t){const e=uc(t);return void 0===e.localRefs&&(e.localRefs=function(t,e){const n=t[1].data[e];if(n&&n.localNames){const e={};let a=n.index+1;for(let r=0;r<n.localNames.length;r+=2)e[n.localNames[r]]=t[a],a++;return e}return null}(e.lView,e.nodeIndex)),e.localRefs||{}}(this.nativeNode)}get providerTokens(){return function(t){const e=uc(t,!1);if(!e)return[];const n=e.lView[1],a=n.data[e.nodeIndex],r=[],i=a.directiveEnd;for(let u=65535&a.providerIndexes;u<i;u++){let t=n.data[u];void 0!==(s=t).type&&void 0!==s.template&&void 0!==s.declaredInputs&&(t=t.type),r.push(t)}var s;return r}(this.nativeNode)}}class Zy extends $y{constructor(t){super(t)}get nativeElement(){return this.nativeNode.nodeType==Node.ELEMENT_NODE?this.nativeNode:null}get name(){return this.nativeElement.nodeName}get properties(){const t=uc(this.nativeNode),e=t.lView,n=e[1].data,a=n[t.nodeIndex],r=function(t,e,n){const a={};let r=function(t,e){let n=t-1,a=e[n];for(;"string"==typeof a&&!Sn(a);)a=e[--n];return n+1}(t.propertyMetadataStartIndex,n);for(;r<t.propertyMetadataEndIndex;){let t,i=n[r];for(;!Sn(i);)t=(t||"")+vn(e[r])+n[r],i=n[++r];t=void 0===t?e[r]:t+=e[r];const s=i.split("�"),u=s[0];u&&(a[u]=s[1]&&s[2]?s[1]+t+s[2]:t),r++}return a}(a,e,n),i=function(t,e,n){const a={};let r=t.directiveEnd,i=n[r];for(;"string"==typeof i;)a[i.split("�")[0]]=e[r],i=n[++r];return a}(a,e,n),s=function(t){const e=t.classes;let n="";for(const a of Object.keys(e))e[a]&&(n=n?n+" "+a:a);return n}(this),u=Object.assign({},r,i);return s&&(u.className=u.className?u.className+" "+s:s),u}get attributes(){const t={},e=this.nativeElement;if(!e)return t;const n=uc(e),a=n.lView[1].data[n.nodeIndex].attrs,r=[];if(a){let e=0;for(;e<a.length;){const n=a[e];if("string"!=typeof n)break;t[n]=a[e+1],r.push(n.toLowerCase()),e+=2}}const i=e.attributes;for(let s=0;s<i.length;s++){const e=i[s];-1===r.indexOf(e.name)&&(t[e.name]=e.value)}return t}get styles(){return Jy(this.nativeElement,!1)}get classes(){return Jy(this.nativeElement,!0)}get childNodes(){const t=this.nativeNode.childNodes,e=[];for(let n=0;n<t.length;n++)e.push(av(t[n]));return e}get children(){const t=this.nativeElement;if(!t)return[];const e=t.children,n=[];for(let a=0;a<e.length;a++)n.push(av(e[a]));return n}query(t){return this.queryAll(t)[0]||null}queryAll(t){const e=[];return Qy(this,t,e,!0),e}queryAllNodes(t){const e=[];return Qy(this,t,e,!1),e}triggerEventHandler(t,e){this.listeners.forEach(n=>{n.name===t&&n.callback(e)})}}function Jy(t,e){if(t){const n=lc(t),a=n.lView,r=a[1].data[n.nodeIndex];return e?Un(r.classes)?new Ti(r.classes,a,!0).values:_i(r.classes):Un(r.styles)?new Ti(r.styles,a,!1).values:_i(r.styles)}return{}}function Qy(t,e,n,a){const r=uc(t.nativeNode);Xy(r.lView[1].data[r.nodeIndex],r.lView,e,n,a,t.nativeNode)}function Xy(t,e,n,a,r,i){const s=me(t,e);if(3===t.type||4===t.type){if(ev(s,n,a,r,i),Xt(t)){const s=xe(t.index,e);s&&s[1].firstChild&&Xy(s[1].firstChild,s,n,a,r,i)}else t.child&&Xy(t.child,e,n,a,r,i),s&&function t(e,n,a,r){const i=e.childNodes,s=i.length;for(let u=0;u<s;u++){const e=i[u],s=rv(e);s&&((r&&s instanceof Zy&&n(s)&&-1===a.indexOf(s)||!r&&n(s)&&-1===a.indexOf(s))&&a.push(s),t(e,n,a,r))}}(s,n,a,r);const u=e[t.index];Jt(u)&&tv(u,n,a,r,i)}else if(0===t.type){const s=e[t.index];ev(s[7],n,a,r,i),tv(s,n,a,r,i)}else if(1===t.type){const s=da(e),u=s[6].projection[t.projection];if(Array.isArray(u))for(let t of u)ev(t,n,a,r,i);else if(u){const t=s[3];Xy(t[1].data[u.index],t,n,a,r,i)}}else t.child&&Xy(t.child,e,n,a,r,i);if(i!==s){const s=2&t.flags?t.projectionNext:t.next;s&&Xy(s,e,n,a,r,i)}}function tv(t,e,n,a,r){for(let i=9;i<t.length;i++){const s=t[i];Xy(s[1].node,s,e,n,a,r)}}function ev(t,e,n,a,r){if(r!==t){const r=rv(t);if(!r)return;(a&&r instanceof Zy&&e(r)&&-1===n.indexOf(r)||!a&&e(r)&&-1===n.indexOf(r))&&n.push(r)}}const nv=new Map;function av(t){return t instanceof Node?(t.hasOwnProperty("__ng_debug__")||(t.__ng_debug__=t.nodeType==Node.ELEMENT_NODE?new Zy(t):new $y(t)),t.__ng_debug__):null}const rv=function(t){return nv.get(t)||null};function iv(t){nv.set(t.nativeNode,t)}const sv=Uy,uv=Wy,ov=Iy(null,"core",[{provide:Om,useValue:"unknown"},{provide:Ay,deps:[Bu]},{provide:by,deps:[]},{provide:Nm,deps:[]}]);function lv(){return Tf}function dv(){return wf}function cv(t){return t?(Lm&&Ip(t),t):Dg}const fv=[{provide:Ey,useClass:Ey,deps:[oy,Nm,Bu,Da,Yc,ym]},{provide:Sg,deps:[oy],useFactory:hv},{provide:ym,useClass:ym,deps:[[new w,mm]]},{provide:Ym,useClass:Ym,deps:[]},_m,{provide:vf,useFactory:lv,deps:[]},{provide:xf,useFactory:dv,deps:[]},{provide:Cm,useFactory:cv,deps:[[new T(Cm),new w,new S]]}];function hv(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}class gv{constructor(t){}}function pv(t,e,n,a,r,i){t|=1;const{matchedQueries:s,references:u,matchedQueryIds:o}=sh(e);return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s,matchedQueryIds:o,references:u,ngContentIndex:n,childCount:a,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:i?dh(i):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:r||Bf},provider:null,text:null,query:null,ngContent:null}}function bv(t,e,n,a,r,i,s=[],u,o,l,d,c){l||(l=Bf);const{matchedQueries:f,references:h,matchedQueryIds:g}=sh(n);let p=null,b=null;i&&([p,b]=mh(i)),u=u||[];const m=new Array(u.length);for(let x=0;x<u.length;x++){const[t,e,n]=u[x],[a,r]=mh(e);let i=void 0,s=void 0;switch(15&t){case 4:s=n;break;case 1:case 8:i=n}m[x]={flags:t,ns:a,name:r,nonMinifiedName:r,securityContext:i,suffix:s}}o=o||[];const y=new Array(o.length);for(let x=0;x<o.length;x++){const[t,e]=o[x];y[x]={type:0,target:t,eventName:e,propName:null}}const v=(s=s||[]).map(([t,e])=>{const[n,a]=mh(t);return[n,a,e]});return c=function(t){if(t&&"$$undefined"===t.id){const e=null!=t.encapsulation&&t.encapsulation!==wt.None||t.styles.length||Object.keys(t.data).length;t.id=e?"c"+Wf++:"$$empty"}return t&&"$$empty"===t.id&&(t=null),t||null}(c),d&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:f,matchedQueryIds:g,references:h,ngContentIndex:a,childCount:r,bindings:m,bindingFlags:yh(m),outputs:y,element:{ns:p,name:b,attrs:v,template:null,componentProvider:null,componentView:d||null,componentRendererType:c,publicProviders:null,allProviders:null,handleEvent:l||Bf},provider:null,text:null,query:null,ngContent:null}}function mv(t,e,n){const a=n.element,r=t.root.selectorOrNode,i=t.renderer;let s;if(t.parent||!r){s=a.name?i.createElement(a.name,a.ns):i.createComment("");const r=oh(t,e,n);r&&i.appendChild(r,s)}else s=i.selectRootElement(r,!!a.componentRendererType&&a.componentRendererType.encapsulation===wt.ShadowDom);if(a.attrs)for(let u=0;u<a.attrs.length;u++){const[t,e,n]=a.attrs[u];i.setAttribute(s,e,n,t)}return s}function yv(t,e,n,a){for(let s=0;s<n.outputs.length;s++){const u=n.outputs[s],o=vv(t,n.nodeIndex,(i=u.eventName,(r=u.target)?`${r}:${i}`:i));let l=u.target,d=t;"component"===u.target&&(l=null,d=e);const c=d.renderer.listen(l||a,u.eventName,o);t.disposables[n.outputIndex+s]=c}var r,i}function vv(t,e,n){return a=>Xf(t,e,n,a)}function xv(t,e,n,a){if(!$f(t,e,n,a))return!1;const r=e.bindings[n],i=Mf(t,e.nodeIndex),s=i.renderElement,u=r.name;switch(15&r.flags){case 1:!function(t,e,n,a,r,i){const s=e.securityContext;let u=s?t.root.sanitizer.sanitize(s,i):i;u=null!=u?u.toString():null;const o=t.renderer;null!=i?o.setAttribute(n,r,u,a):o.removeAttribute(n,r,a)}(t,r,s,r.ns,u,a);break;case 2:!function(t,e,n,a){const r=t.renderer;a?r.addClass(e,n):r.removeClass(e,n)}(t,s,u,a);break;case 4:!function(t,e,n,a,r){let i=t.root.sanitizer.sanitize(yr.STYLE,r);if(null!=i){i=i.toString();const t=e.suffix;null!=t&&(i+=t)}else i=null;const s=t.renderer;null!=i?s.setStyle(n,a,i):s.removeStyle(n,a)}(t,r,s,u,a);break;case 8:!function(t,e,n,a,r){const i=e.securityContext;let s=i?t.root.sanitizer.sanitize(i,r):r;t.renderer.setProperty(n,a,s)}(33554432&e.flags&&32&r.flags?i.componentView:t,r,s,u,a)}return!0}function _v(t,e,n){let a=[];for(let r in n)a.push({propName:r,bindingType:n[r]});return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:-1,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,ngContentIndex:-1,matchedQueries:{},matchedQueryIds:0,references:{},childCount:0,bindings:[],bindingFlags:0,outputs:[],element:null,provider:null,text:null,query:{id:e,filterId:ih(e),bindings:a},ngContent:null}}function Tv(t){const e=t.def.nodeMatchedQueries;for(;t.parent&&rh(t);){let n=t.parentNodeDef;t=t.parent;const a=n.nodeIndex+n.childCount;for(let r=0;r<=a;r++){const a=t.def.nodes[r];67108864&a.flags&&536870912&a.flags&&(a.query.filterId&e)===a.query.filterId&&Ff(t,r).setDirty(),!(1&a.flags&&r+a.childCount<n.nodeIndex)&&67108864&a.childFlags&&536870912&a.childFlags||(r+=a.childCount)}}if(134217728&t.def.nodeFlags)for(let n=0;n<t.def.nodes.length;n++){const e=t.def.nodes[n];134217728&e.flags&&536870912&e.flags&&Ff(t,n).setDirty(),n+=e.childCount}}function wv(t,e){const n=Ff(t,e.nodeIndex);if(!n.dirty)return;let a,r=void 0;if(67108864&e.flags){const n=e.parent.parent;r=Ov(t,n.nodeIndex,n.nodeIndex+n.childCount,e.query,[]),a=qf(t,e.parent.nodeIndex).instance}else 134217728&e.flags&&(r=Ov(t,0,t.def.nodes.length-1,e.query,[]),a=t.component);n.reset(r);const i=e.query.bindings;let s=!1;for(let u=0;u<i.length;u++){const t=i[u];let e;switch(t.bindingType){case 0:e=n.first;break;case 1:e=n,s=!0}a[t.propName]=e}s&&n.notifyOnChanges()}function Ov(t,e,n,a,r){for(let i=e;i<=n;i++){const e=t.def.nodes[i],n=e.matchedQueries[a.id];if(null!=n&&r.push(Sv(t,e,n)),1&e.flags&&e.element.template&&(e.element.template.nodeMatchedQueries&a.filterId)===a.filterId){const n=Mf(t,i);if((e.childMatchedQueries&a.filterId)===a.filterId&&(Ov(t,i+1,i+e.childCount,a,r),i+=e.childCount),16777216&e.flags){const t=n.viewContainer._embeddedViews;for(let e=0;e<t.length;e++){const i=t[e],s=th(i);s&&s===n&&Ov(i,0,i.def.nodes.length-1,a,r)}}const s=n.template._projectedViews;if(s)for(let t=0;t<s.length;t++){const e=s[t];Ov(e,0,e.def.nodes.length-1,a,r)}}(e.childMatchedQueries&a.filterId)!==a.filterId&&(i+=e.childCount)}return r}function Sv(t,e,n){if(null!=n)switch(n){case 1:return Mf(t,e.nodeIndex).renderElement;case 0:return new Kc(Mf(t,e.nodeIndex).renderElement);case 2:return Mf(t,e.nodeIndex).template;case 3:return Mf(t,e.nodeIndex).viewContainer;case 4:return qf(t,e.nodeIndex).instance}}function Iv(t,e){return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:-1,flags:8,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:t,childCount:0,bindings:[],bindingFlags:0,outputs:[],element:null,provider:null,text:null,query:null,ngContent:{index:e}}}function Nv(t,e,n){const a=oh(t,e,n);a&&hh(t,n.ngContent.index,1,a,null,void 0)}function Cv(t,e){return kv(128,t,new Array(e+1))}function Rv(t,e){return kv(32,t,new Array(e))}function Av(t,e){const n=Object.keys(e),a=n.length,r=new Array(a);for(let i=0;i<a;i++){const t=n[i];r[e[t]]=t}return kv(64,t,r)}function kv(t,e,n){const a=new Array(n.length);for(let r=0;r<n.length;r++){const t=n[r];a[r]={flags:8,name:t,ns:null,nonMinifiedName:t,securityContext:null,suffix:null}}return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:e,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:-1,childCount:0,bindings:a,bindingFlags:yh(a),outputs:[],element:null,provider:null,text:null,query:null,ngContent:null}}function Ev(t,e,n){const a=new Array(n.length-1);for(let r=1;r<n.length;r++)a[r-1]={flags:8,name:null,ns:null,nonMinifiedName:null,securityContext:null,suffix:n[r]};return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:2,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:e,childCount:0,bindings:a,bindingFlags:8,outputs:[],element:null,provider:null,text:{prefix:n[0]},query:null,ngContent:null}}function Lv(t,e,n){let a;const r=t.renderer;a=r.createText(n.text.prefix);const i=oh(t,e,n);return i&&r.appendChild(i,a),{renderText:a}}function Dv(t,e){return(null!=t?t.toString():"")+e.suffix}function Pv(t,e,n,a){let r=0,i=0,s=0,u=0,o=0,l=null,d=null,c=!1,f=!1,h=null;for(let g=0;g<e.length;g++){const t=e[g];if(t.nodeIndex=g,t.parent=l,t.bindingIndex=r,t.outputIndex=i,t.renderParent=d,s|=t.flags,o|=t.matchedQueryIds,t.element){const e=t.element;e.publicProviders=l?l.element.publicProviders:Object.create(null),e.allProviders=e.publicProviders,c=!1,f=!1,t.element.template&&(o|=t.element.template.nodeMatchedQueries)}if(qv(l,t,e.length),r+=t.bindings.length,i+=t.outputs.length,!d&&3&t.flags&&(h=t),20224&t.flags){c||(c=!0,l.element.publicProviders=Object.create(l.element.publicProviders),l.element.allProviders=l.element.publicProviders);const e=0!=(32768&t.flags);0==(8192&t.flags)||e?l.element.publicProviders[Yf(t.provider.token)]=t:(f||(f=!0,l.element.allProviders=Object.create(l.element.publicProviders)),l.element.allProviders[Yf(t.provider.token)]=t),e&&(l.element.componentProvider=t)}if(l?(l.childFlags|=t.flags,l.directChildFlags|=t.flags,l.childMatchedQueries|=t.matchedQueryIds,t.element&&t.element.template&&(l.childMatchedQueries|=t.element.template.nodeMatchedQueries)):u|=t.flags,t.childCount>0)l=t,Mv(t)||(d=t);else for(;l&&g===l.nodeIndex+l.childCount;){const t=l.parent;t&&(t.childFlags|=l.childFlags,t.childMatchedQueries|=l.childMatchedQueries),l=t,d=l&&Mv(l)?l.renderParent:l}}return{factory:null,nodeFlags:s,rootNodeFlags:u,nodeMatchedQueries:o,flags:t,nodes:e,updateDirectives:n||Bf,updateRenderer:a||Bf,handleEvent:(t,n,a,r)=>e[n].element.handleEvent(t,a,r),bindingCount:r,outputCount:i,lastRenderRootNode:h}}function Mv(t){return 0!=(1&t.flags)&&null===t.element.name}function qv(t,e,n){const a=e.element&&e.element.template;if(a){if(!a.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(a.lastRenderRootNode&&16777216&a.lastRenderRootNode.flags)throw new Error(`Illegal State: Last root node of a template can't have embedded views, at index ${e.nodeIndex}!`)}if(20224&e.flags&&0==(1&(t?t.flags:0)))throw new Error(`Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index ${e.nodeIndex}!`);if(e.query){if(67108864&e.flags&&(!t||0==(16384&t.flags)))throw new Error(`Illegal State: Content Query nodes need to be children of directives, at index ${e.nodeIndex}!`);if(134217728&e.flags&&t)throw new Error(`Illegal State: View Query nodes have to be top level nodes, at index ${e.nodeIndex}!`)}if(e.childCount){const a=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=a&&e.nodeIndex+e.childCount>a)throw new Error(`Illegal State: childCount of node leads outside of parent, at index ${e.nodeIndex}!`)}}function jv(t,e,n,a){const r=Gv(t.root,t.renderer,t,e,n);return Bv(r,t.component,a),zv(r),r}function Fv(t,e,n){const a=Gv(t,t.renderer,null,null,e);return Bv(a,n,n),zv(a),a}function Vv(t,e,n,a){const r=e.element.componentRendererType;let i;return i=r?t.root.rendererFactory.createRenderer(a,r):t.root.renderer,Gv(t.root,i,t,e.element.componentProvider,n)}function Gv(t,e,n,a,r){const i=new Array(r.nodes.length),s=r.outputCount?new Array(r.outputCount):null;return{def:r,parent:n,viewContainerParent:null,parentNodeDef:a,context:null,component:null,nodes:i,state:13,root:t,renderer:e,oldValues:new Array(r.bindingCount),disposables:s,initIndex:-1}}function Bv(t,e,n){t.component=e,t.context=n}function zv(t){let e;ah(t)&&(e=Mf(t.parent,t.parentNodeDef.parent.nodeIndex).renderElement);const n=t.def,a=t.nodes;for(let r=0;r<n.nodes.length;r++){const i=n.nodes[r];let s;switch(Gf.setCurrentNode(t,r),201347067&i.flags){case 1:const n=mv(t,e,i);let u=void 0;if(33554432&i.flags){const e=dh(i.element.componentView);u=Gf.createComponentView(t,i,e,n)}yv(t,u,i,n),s={renderElement:n,componentView:u,viewContainer:null,template:i.element.template?Yh(t,i):void 0},16777216&i.flags&&(s.viewContainer=Vh(t,i,s));break;case 2:s=Lv(t,e,i);break;case 512:case 1024:case 2048:case 256:s=a[r],s||4096&i.flags||(s={instance:cg(t,i)});break;case 16:s={instance:fg(t,i)};break;case 16384:s=a[r],s||(s={instance:hg(t,i)}),32768&i.flags&&Bv(Mf(t,i.parent.nodeIndex).componentView,s.instance,s.instance);break;case 32:case 64:case 128:s={value:void 0};break;case 67108864:case 134217728:s=new nb;break;case 8:Nv(t,e,i),s=void 0}a[r]=s}Qv(t,Jv.CreateViewNodes),nx(t,201326592,268435456,0)}function Yv(t){Wv(t),Gf.updateDirectives(t,1),Xv(t,Jv.CheckNoChanges),Gf.updateRenderer(t,1),Qv(t,Jv.CheckNoChanges),t.state&=-97}function Hv(t){1&t.state?(t.state&=-2,t.state|=2):t.state&=-3,Lf(t,0,256),Wv(t),Gf.updateDirectives(t,0),Xv(t,Jv.CheckAndUpdate),nx(t,67108864,536870912,0);let e=Lf(t,256,512);_g(t,2097152|(e?1048576:0)),Gf.updateRenderer(t,0),Qv(t,Jv.CheckAndUpdate),nx(t,134217728,536870912,0),e=Lf(t,512,768),_g(t,8388608|(e?4194304:0)),2&t.def.flags&&(t.state&=-9),t.state&=-97,Lf(t,768,1024)}function Uv(t,e,n,a,r,i,s,u,o,l,d,c,f){return 0===n?function(t,e,n,a,r,i,s,u,o,l,d,c){switch(201347067&e.flags){case 1:return function(t,e,n,a,r,i,s,u,o,l,d,c){const f=e.bindings.length;let h=!1;return f>0&&xv(t,e,0,n)&&(h=!0),f>1&&xv(t,e,1,a)&&(h=!0),f>2&&xv(t,e,2,r)&&(h=!0),f>3&&xv(t,e,3,i)&&(h=!0),f>4&&xv(t,e,4,s)&&(h=!0),f>5&&xv(t,e,5,u)&&(h=!0),f>6&&xv(t,e,6,o)&&(h=!0),f>7&&xv(t,e,7,l)&&(h=!0),f>8&&xv(t,e,8,d)&&(h=!0),f>9&&xv(t,e,9,c)&&(h=!0),h}(t,e,n,a,r,i,s,u,o,l,d,c);case 2:return function(t,e,n,a,r,i,s,u,o,l,d,c){let f=!1;const h=e.bindings,g=h.length;if(g>0&&$f(t,e,0,n)&&(f=!0),g>1&&$f(t,e,1,a)&&(f=!0),g>2&&$f(t,e,2,r)&&(f=!0),g>3&&$f(t,e,3,i)&&(f=!0),g>4&&$f(t,e,4,s)&&(f=!0),g>5&&$f(t,e,5,u)&&(f=!0),g>6&&$f(t,e,6,o)&&(f=!0),g>7&&$f(t,e,7,l)&&(f=!0),g>8&&$f(t,e,8,d)&&(f=!0),g>9&&$f(t,e,9,c)&&(f=!0),f){let f=e.text.prefix;g>0&&(f+=Dv(n,h[0])),g>1&&(f+=Dv(a,h[1])),g>2&&(f+=Dv(r,h[2])),g>3&&(f+=Dv(i,h[3])),g>4&&(f+=Dv(s,h[4])),g>5&&(f+=Dv(u,h[5])),g>6&&(f+=Dv(o,h[6])),g>7&&(f+=Dv(l,h[7])),g>8&&(f+=Dv(d,h[8])),g>9&&(f+=Dv(c,h[9]));const p=Pf(t,e.nodeIndex).renderText;t.renderer.setValue(p,f)}return f}(t,e,n,a,r,i,s,u,o,l,d,c);case 16384:return function(t,e,n,a,r,i,s,u,o,l,d,c){const f=qf(t,e.nodeIndex),h=f.instance;let g=!1,p=void 0;const b=e.bindings.length;return b>0&&Kf(t,e,0,n)&&(g=!0,p=xg(t,f,e,0,n,p)),b>1&&Kf(t,e,1,a)&&(g=!0,p=xg(t,f,e,1,a,p)),b>2&&Kf(t,e,2,r)&&(g=!0,p=xg(t,f,e,2,r,p)),b>3&&Kf(t,e,3,i)&&(g=!0,p=xg(t,f,e,3,i,p)),b>4&&Kf(t,e,4,s)&&(g=!0,p=xg(t,f,e,4,s,p)),b>5&&Kf(t,e,5,u)&&(g=!0,p=xg(t,f,e,5,u,p)),b>6&&Kf(t,e,6,o)&&(g=!0,p=xg(t,f,e,6,o,p)),b>7&&Kf(t,e,7,l)&&(g=!0,p=xg(t,f,e,7,l,p)),b>8&&Kf(t,e,8,d)&&(g=!0,p=xg(t,f,e,8,d,p)),b>9&&Kf(t,e,9,c)&&(g=!0,p=xg(t,f,e,9,c,p)),p&&h.ngOnChanges(p),65536&e.flags&&Df(t,256,e.nodeIndex)&&h.ngOnInit(),262144&e.flags&&h.ngDoCheck(),g}(t,e,n,a,r,i,s,u,o,l,d,c);case 32:case 64:case 128:return function(t,e,n,a,r,i,s,u,o,l,d,c){const f=e.bindings;let h=!1;const g=f.length;if(g>0&&$f(t,e,0,n)&&(h=!0),g>1&&$f(t,e,1,a)&&(h=!0),g>2&&$f(t,e,2,r)&&(h=!0),g>3&&$f(t,e,3,i)&&(h=!0),g>4&&$f(t,e,4,s)&&(h=!0),g>5&&$f(t,e,5,u)&&(h=!0),g>6&&$f(t,e,6,o)&&(h=!0),g>7&&$f(t,e,7,l)&&(h=!0),g>8&&$f(t,e,8,d)&&(h=!0),g>9&&$f(t,e,9,c)&&(h=!0),h){const h=jf(t,e.nodeIndex);let p;switch(201347067&e.flags){case 32:p=new Array(f.length),g>0&&(p[0]=n),g>1&&(p[1]=a),g>2&&(p[2]=r),g>3&&(p[3]=i),g>4&&(p[4]=s),g>5&&(p[5]=u),g>6&&(p[6]=o),g>7&&(p[7]=l),g>8&&(p[8]=d),g>9&&(p[9]=c);break;case 64:p={},g>0&&(p[f[0].name]=n),g>1&&(p[f[1].name]=a),g>2&&(p[f[2].name]=r),g>3&&(p[f[3].name]=i),g>4&&(p[f[4].name]=s),g>5&&(p[f[5].name]=u),g>6&&(p[f[6].name]=o),g>7&&(p[f[7].name]=l),g>8&&(p[f[8].name]=d),g>9&&(p[f[9].name]=c);break;case 128:const t=n;switch(g){case 1:p=t.transform(n);break;case 2:p=t.transform(a);break;case 3:p=t.transform(a,r);break;case 4:p=t.transform(a,r,i);break;case 5:p=t.transform(a,r,i,s);break;case 6:p=t.transform(a,r,i,s,u);break;case 7:p=t.transform(a,r,i,s,u,o);break;case 8:p=t.transform(a,r,i,s,u,o,l);break;case 9:p=t.transform(a,r,i,s,u,o,l,d);break;case 10:p=t.transform(a,r,i,s,u,o,l,d,c)}}h.value=p}return h}(t,e,n,a,r,i,s,u,o,l,d,c);default:throw"unreachable"}}(t,e,a,r,i,s,u,o,l,d,c,f):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){let a=!1;for(let r=0;r<n.length;r++)xv(t,e,r,n[r])&&(a=!0);return a}(t,e,n);case 2:return function(t,e,n){const a=e.bindings;let r=!1;for(let i=0;i<n.length;i++)$f(t,e,i,n[i])&&(r=!0);if(r){let r="";for(let t=0;t<n.length;t++)r+=Dv(n[t],a[t]);r=e.text.prefix+r;const i=Pf(t,e.nodeIndex).renderText;t.renderer.setValue(i,r)}return r}(t,e,n);case 16384:return function(t,e,n){const a=qf(t,e.nodeIndex),r=a.instance;let i=!1,s=void 0;for(let u=0;u<n.length;u++)Kf(t,e,u,n[u])&&(i=!0,s=xg(t,a,e,u,n[u],s));return s&&r.ngOnChanges(s),65536&e.flags&&Df(t,256,e.nodeIndex)&&r.ngOnInit(),262144&e.flags&&r.ngDoCheck(),i}(t,e,n);case 32:case 64:case 128:return function(t,e,n){const a=e.bindings;let r=!1;for(let i=0;i<n.length;i++)$f(t,e,i,n[i])&&(r=!0);if(r){const r=jf(t,e.nodeIndex);let i;switch(201347067&e.flags){case 32:i=n;break;case 64:i={};for(let r=0;r<n.length;r++)i[a[r].name]=n[r];break;case 128:const t=n[0],e=n.slice(1);i=t.transform(...e)}r.value=i}return r}(t,e,n);default:throw"unreachable"}}(t,e,a)}function Wv(t){const e=t.def;if(4&e.nodeFlags)for(let n=0;n<e.nodes.length;n++){const a=e.nodes[n];if(4&a.flags){const e=Mf(t,n).template._projectedViews;if(e)for(let n=0;n<e.length;n++){const a=e[n];a.state|=32,Qf(a,t)}}else 0==(4&a.childFlags)&&(n+=a.childCount)}}function Kv(t,e,n,a,r,i,s,u,o,l,d,c,f){return 0===n?function(t,e,n,a,r,i,s,u,o,l,d,c){const f=e.bindings.length;f>0&&Zf(t,e,0,n),f>1&&Zf(t,e,1,a),f>2&&Zf(t,e,2,r),f>3&&Zf(t,e,3,i),f>4&&Zf(t,e,4,s),f>5&&Zf(t,e,5,u),f>6&&Zf(t,e,6,o),f>7&&Zf(t,e,7,l),f>8&&Zf(t,e,8,d),f>9&&Zf(t,e,9,c)}(t,e,a,r,i,s,u,o,l,d,c,f):function(t,e,n){for(let a=0;a<n.length;a++)Zf(t,e,a,n[a])}(t,e,a),!1}function $v(t,e){if(Ff(t,e.nodeIndex).dirty)throw Af(Gf.createDebugContext(t,e.nodeIndex),`Query ${e.query.id} not dirty`,`Query ${e.query.id} dirty`,0!=(1&t.state))}function Zv(t){if(!(128&t.state)){if(Xv(t,Jv.Destroy),Qv(t,Jv.Destroy),_g(t,131072),t.disposables)for(let e=0;e<t.disposables.length;e++)t.disposables[e]();!function(t){if(!(16&t.state))return;const e=th(t);if(e){const n=e.template._projectedViews;n&&(yt(n,n.indexOf(t)),Gf.dirtyParentQueries(t))}}(t),t.renderer.destroyNode&&function(t){const e=t.def.nodes.length;for(let n=0;n<e;n++){const e=t.def.nodes[n];1&e.flags?t.renderer.destroyNode(Mf(t,n).renderElement):2&e.flags?t.renderer.destroyNode(Pf(t,n).renderText):(67108864&e.flags||134217728&e.flags)&&Ff(t,n).destroy()}}(t),ah(t)&&t.renderer.destroy(),t.state|=128}}const Jv=function(){var t={CreateViewNodes:0,CheckNoChanges:1,CheckNoChangesProjectedViews:2,CheckAndUpdate:3,CheckAndUpdateProjectedViews:4,Destroy:5};return t[t.CreateViewNodes]="CreateViewNodes",t[t.CheckNoChanges]="CheckNoChanges",t[t.CheckNoChangesProjectedViews]="CheckNoChangesProjectedViews",t[t.CheckAndUpdate]="CheckAndUpdate",t[t.CheckAndUpdateProjectedViews]="CheckAndUpdateProjectedViews",t[t.Destroy]="Destroy",t}();function Qv(t,e){const n=t.def;if(33554432&n.nodeFlags)for(let a=0;a<n.nodes.length;a++){const r=n.nodes[a];33554432&r.flags?tx(Mf(t,a).componentView,e):0==(33554432&r.childFlags)&&(a+=r.childCount)}}function Xv(t,e){const n=t.def;if(16777216&n.nodeFlags)for(let a=0;a<n.nodes.length;a++){const r=n.nodes[a];if(16777216&r.flags){const n=Mf(t,a).viewContainer._embeddedViews;for(let t=0;t<n.length;t++)tx(n[t],e)}else 0==(16777216&r.childFlags)&&(a+=r.childCount)}}function tx(t,e){const n=t.state;switch(e){case Jv.CheckNoChanges:0==(128&n)&&(12==(12&n)?Yv(t):64&n&&ex(t,Jv.CheckNoChangesProjectedViews));break;case Jv.CheckNoChangesProjectedViews:0==(128&n)&&(32&n?Yv(t):64&n&&ex(t,e));break;case Jv.CheckAndUpdate:0==(128&n)&&(12==(12&n)?Hv(t):64&n&&ex(t,Jv.CheckAndUpdateProjectedViews));break;case Jv.CheckAndUpdateProjectedViews:0==(128&n)&&(32&n?Hv(t):64&n&&ex(t,e));break;case Jv.Destroy:Zv(t);break;case Jv.CreateViewNodes:zv(t)}}function ex(t,e){Xv(t,e),Qv(t,e)}function nx(t,e,n,a){if(!(t.def.nodeFlags&e&&t.def.nodeFlags&n))return;const r=t.def.nodes.length;for(let i=0;i<r;i++){const r=t.def.nodes[i];if(r.flags&e&&r.flags&n)switch(Gf.setCurrentNode(t,r.nodeIndex),a){case 0:wv(t,r);break;case 1:$v(t,r)}r.childFlags&e&&r.childFlags&n||(i+=r.childCount)}}let ax=!1;function rx(){if(ax)return;ax=!0;const t=Wa()?{setCurrentNode:Nx,createRootView:sx,createEmbeddedView:ox,createComponentView:lx,createNgModuleRef:dx,overrideProvider:gx,overrideComponentView:px,clearOverrides:bx,checkAndUpdateView:xx,checkNoChangesView:_x,destroyView:Tx,createDebugContext:(t,e)=>new Px(t,e),handleEvent:Cx,updateDirectives:Rx,updateRenderer:Ax}:{setCurrentNode:()=>{},createRootView:ix,createEmbeddedView:jv,createComponentView:Vv,createNgModuleRef:Jh,overrideProvider:Bf,overrideComponentView:Bf,clearOverrides:Bf,checkAndUpdateView:Hv,checkNoChangesView:Yv,destroyView:Zv,createDebugContext:(t,e)=>new Px(t,e),handleEvent:(t,e,n,a)=>t.def.handleEvent(t,e,n,a),updateDirectives:(t,e)=>t.def.updateDirectives(0===e?yx:vx,t),updateRenderer:(t,e)=>t.def.updateRenderer(0===e?yx:vx,t)};Gf.setCurrentNode=t.setCurrentNode,Gf.createRootView=t.createRootView,Gf.createEmbeddedView=t.createEmbeddedView,Gf.createComponentView=t.createComponentView,Gf.createNgModuleRef=t.createNgModuleRef,Gf.overrideProvider=t.overrideProvider,Gf.overrideComponentView=t.overrideComponentView,Gf.clearOverrides=t.clearOverrides,Gf.checkAndUpdateView=t.checkAndUpdateView,Gf.checkNoChangesView=t.checkNoChangesView,Gf.destroyView=t.destroyView,Gf.resolveDep=yg,Gf.createDebugContext=t.createDebugContext,Gf.handleEvent=t.handleEvent,Gf.updateDirectives=t.updateDirectives,Gf.updateRenderer=t.updateRenderer,Gf.dirtyParentQueries=Tv}function ix(t,e,n,a,r,i){const s=r.injector.get(ef);return Fv(ux(t,r,s,e,n),a,i)}function sx(t,e,n,a,r,i){const s=r.injector.get(ef),u=ux(t,r,new Fx(s),e,n),o=mx(a);return qx(wx.create,Fv,null,[u,o,i])}function ux(t,e,n,a,r){const i=e.injector.get(vr),s=e.injector.get(Da),u=n.createRenderer(null,null);return{ngModule:e,injector:t,projectableNodes:a,selectorOrNode:r,sanitizer:i,rendererFactory:n,renderer:u,errorHandler:s}}function ox(t,e,n,a){const r=mx(n);return qx(wx.create,jv,null,[t,e,r,a])}function lx(t,e,n,a){return n=hx.get(e.element.componentProvider.provider.token)||mx(n),qx(wx.create,Vv,null,[t,e,n,a])}function dx(t,e,n,a){return Jh(t,e,n,function(t){const{hasOverrides:e,hasDeprecatedOverrides:n}=function(t){let e=!1,n=!1;return 0===cx.size||(t.providers.forEach(t=>{const a=cx.get(t.token);3840&t.flags&&a&&(e=!0,n=n||a.deprecatedBehavior)}),t.modules.forEach(t=>{fx.forEach((a,r)=>{D(r).providedIn===t&&(e=!0,n=n||a.deprecatedBehavior)})})),{hasOverrides:e,hasDeprecatedOverrides:n}}(t);return e?(function(t){for(let e=0;e<t.providers.length;e++){const a=t.providers[e];n&&(a.flags|=4096);const r=cx.get(a.token);r&&(a.flags=-3841&a.flags|r.flags,a.deps=uh(r.deps),a.value=r.value)}if(fx.size>0){let e=new Set(t.modules);fx.forEach((a,r)=>{if(e.has(D(r).providedIn)){let e={token:r,flags:a.flags|(n?4096:0),deps:uh(a.deps),value:a.value,index:t.providers.length};t.providers.push(e),t.providersByKey[Yf(r)]=e}})}}(t=t.factory(()=>Bf)),t):t}(a))}const cx=new Map,fx=new Map,hx=new Map;function gx(t){let e;cx.set(t.token,t),"function"==typeof t.token&&(e=D(t.token))&&"function"==typeof e.providedIn&&fx.set(t.token,t)}function px(t,e){const n=dh(qh(e)),a=dh(n.nodes[0].element.componentView);hx.set(t,a)}function bx(){cx.clear(),fx.clear(),hx.clear()}function mx(t){if(0===cx.size)return t;const e=function(t){const e=[];let n=null;for(let a=0;a<t.nodes.length;a++){const r=t.nodes[a];1&r.flags&&(n=r),n&&3840&r.flags&&cx.has(r.provider.token)&&(e.push(n.nodeIndex),n=null)}return e}(t);if(0===e.length)return t;t=t.factory(()=>Bf);for(let a=0;a<e.length;a++)n(t,e[a]);return t;function n(t,e){for(let n=e+1;n<t.nodes.length;n++){const e=t.nodes[n];if(1&e.flags)return;if(3840&e.flags){const t=e.provider,n=cx.get(t.token);n&&(e.flags=-3841&e.flags|n.flags,t.deps=uh(n.deps),t.value=n.value)}}}}function yx(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=t.def.nodes[e];return Uv(t,h,n,a,r,i,s,u,o,l,d,c,f),224&h.flags?jf(t,e).value:void 0}function vx(t,e,n,a,r,i,s,u,o,l,d,c,f){const h=t.def.nodes[e];return Kv(t,h,n,a,r,i,s,u,o,l,d,c,f),224&h.flags?jf(t,e).value:void 0}function xx(t){return qx(wx.detectChanges,Hv,null,[t])}function _x(t){return qx(wx.checkNoChanges,Yv,null,[t])}function Tx(t){return qx(wx.destroy,Zv,null,[t])}const wx=function(){var t={create:0,detectChanges:1,checkNoChanges:2,destroy:3,handleEvent:4};return t[t.create]="create",t[t.detectChanges]="detectChanges",t[t.checkNoChanges]="checkNoChanges",t[t.destroy]="destroy",t[t.handleEvent]="handleEvent",t}();let Ox,Sx,Ix;function Nx(t,e){Sx=t,Ix=e}function Cx(t,e,n,a){return Nx(t,e),qx(wx.handleEvent,t.def.handleEvent,null,[t,e,n,a])}function Rx(t,e){if(128&t.state)throw Ef(wx[Ox]);return Nx(t,Lx(t,0)),t.def.updateDirectives((function(t,n,a,...r){const i=t.def.nodes[n];return 0===e?kx(t,i,a,r):Ex(t,i,a,r),16384&i.flags&&Nx(t,Lx(t,n)),224&i.flags?jf(t,i.nodeIndex).value:void 0}),t)}function Ax(t,e){if(128&t.state)throw Ef(wx[Ox]);return Nx(t,Dx(t,0)),t.def.updateRenderer((function(t,n,a,...r){const i=t.def.nodes[n];return 0===e?kx(t,i,a,r):Ex(t,i,a,r),3&i.flags&&Nx(t,Dx(t,n)),224&i.flags?jf(t,i.nodeIndex).value:void 0}),t)}function kx(t,e,n,a){if(Uv(t,e,n,...a)){const i=1===n?a[0]:a;if(16384&e.flags){const n={};for(let t=0;t<e.bindings.length;t++){const a=e.bindings[t],s=i[t];8&a.flags&&(n[(r=a.nonMinifiedName,"ng-reflect-"+r.replace(/[$@]/g,"_").replace(Er,(...t)=>"-"+t[1].toLowerCase()))]=Lr(s))}const a=e.parent,s=Mf(t,a.nodeIndex).renderElement;if(a.element.name)for(let e in n){const a=n[e];null!=a?t.renderer.setAttribute(s,e,a):t.renderer.removeAttribute(s,e)}else t.renderer.setValue(s,"bindings="+JSON.stringify(n,null,2))}}var r}function Ex(t,e,n,a){Kv(t,e,n,...a)}function Lx(t,e){for(let n=e;n<t.def.nodes.length;n++){const e=t.def.nodes[n];if(16384&e.flags&&e.bindings&&e.bindings.length)return n}return null}function Dx(t,e){for(let n=e;n<t.def.nodes.length;n++){const e=t.def.nodes[n];if(3&e.flags&&e.bindings&&e.bindings.length)return n}return null}class Px{constructor(t,e){this.view=t,this.nodeIndex=e,null==e&&(this.nodeIndex=e=0),this.nodeDef=t.def.nodes[e];let n=this.nodeDef,a=t;for(;n&&0==(1&n.flags);)n=n.parent;if(!n)for(;!n&&a;)n=eh(a),a=a.parent;this.elDef=n,this.elView=a}get elOrCompView(){return Mf(this.elView,this.elDef.nodeIndex).componentView||this.view}get injector(){return Uh(this.elView,this.elDef)}get component(){return this.elOrCompView.component}get context(){return this.elOrCompView.context}get providerTokens(){const t=[];if(this.elDef)for(let e=this.elDef.nodeIndex+1;e<=this.elDef.nodeIndex+this.elDef.childCount;e++){const n=this.elView.def.nodes[e];20224&n.flags&&t.push(n.provider.token),e+=n.childCount}return t}get references(){const t={};if(this.elDef){Mx(this.elView,this.elDef,t);for(let e=this.elDef.nodeIndex+1;e<=this.elDef.nodeIndex+this.elDef.childCount;e++){const n=this.elView.def.nodes[e];20224&n.flags&&Mx(this.elView,n,t),e+=n.childCount}}return t}get componentRenderElement(){const t=function(t){for(;t&&!ah(t);)t=t.parent;return t.parent?Mf(t.parent,eh(t).nodeIndex):null}(this.elOrCompView);return t?t.renderElement:void 0}get renderNode(){return 2&this.nodeDef.flags?nh(this.view,this.nodeDef):nh(this.elView,this.elDef)}logError(t,...e){let n,a;2&this.nodeDef.flags?(n=this.view.def,a=this.nodeDef.nodeIndex):(n=this.elView.def,a=this.elDef.nodeIndex);const r=function(t,e){let n=-1;for(let a=0;a<=e;a++)3&t.nodes[a].flags&&n++;return n}(n,a);let i=-1;n.factory(()=>(i++,i===r?t.error.bind(t,...e):Bf)),i<r&&(t.error("Illegal state: the ViewDefinitionFactory did not call the logger!"),t.error(...e))}}function Mx(t,e,n){for(let a in e.references)n[a]=Sv(t,e,e.references[a])}function qx(t,e,n,a){const r=Ox,i=Sx,s=Ix;try{Ox=t;const u=e.apply(n,a);return Sx=i,Ix=s,Ox=r,u}catch(u){if(ka(u)||!Sx)throw u;throw function(t,e){return t instanceof Error||(t=new Error(t.toString())),kf(t,e),t}(u,jx())}}function jx(){return Sx?new Px(Sx,Ix):null}class Fx{constructor(t){this.delegate=t}createRenderer(t,e){return new Vx(this.delegate.createRenderer(t,e))}begin(){this.delegate.begin&&this.delegate.begin()}end(){this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.delegate.whenRenderingDone?this.delegate.whenRenderingDone():Promise.resolve(null)}}class Vx{constructor(t){this.delegate=t,this.debugContextFactory=jx,this.data=this.delegate.data}createDebugContext(t){return this.debugContextFactory(t)}destroyNode(t){const e=rv(t);!function(t){nv.delete(t.nativeNode)}(e),e instanceof Uy&&(e.listeners.length=0),this.delegate.destroyNode&&this.delegate.destroyNode(t)}destroy(){this.delegate.destroy()}createElement(t,e){const n=this.delegate.createElement(t,e),a=this.createDebugContext(n);if(a){const e=new Wy(n,null,a);e.name=t,iv(e)}return n}createComment(t){const e=this.delegate.createComment(t),n=this.createDebugContext(e);return n&&iv(new Uy(e,null,n)),e}createText(t){const e=this.delegate.createText(t),n=this.createDebugContext(e);return n&&iv(new Uy(e,null,n)),e}appendChild(t,e){const n=rv(t),a=rv(e);n&&a&&n instanceof Wy&&n.addChild(a),this.delegate.appendChild(t,e)}insertBefore(t,e,n){const a=rv(t),r=rv(e),i=rv(n);a&&r&&a instanceof Wy&&a.insertBefore(i,r),this.delegate.insertBefore(t,e,n)}removeChild(t,e){const n=rv(t),a=rv(e);n&&a&&n instanceof Wy&&n.removeChild(a),this.delegate.removeChild(t,e)}selectRootElement(t,e){const n=this.delegate.selectRootElement(t,e),a=jx();return a&&iv(new Wy(n,null,a)),n}setAttribute(t,e,n,a){const r=rv(t);r&&r instanceof Wy&&(r.attributes[a?a+":"+e:e]=n),this.delegate.setAttribute(t,e,n,a)}removeAttribute(t,e,n){const a=rv(t);a&&a instanceof Wy&&(a.attributes[n?n+":"+e:e]=null),this.delegate.removeAttribute(t,e,n)}addClass(t,e){const n=rv(t);n&&n instanceof Wy&&(n.classes[e]=!0),this.delegate.addClass(t,e)}removeClass(t,e){const n=rv(t);n&&n instanceof Wy&&(n.classes[e]=!1),this.delegate.removeClass(t,e)}setStyle(t,e,n,a){const r=rv(t);r&&r instanceof Wy&&(r.styles[e]=n),this.delegate.setStyle(t,e,n,a)}removeStyle(t,e,n){const a=rv(t);a&&a instanceof Wy&&(a.styles[e]=null),this.delegate.removeStyle(t,e,n)}setProperty(t,e,n){const a=rv(t);a&&a instanceof Wy&&(a.properties[e]=n),this.delegate.setProperty(t,e,n)}listen(t,e,n){if("string"!=typeof t){const a=rv(t);a&&a.listeners.push(new Hy(e,n))}return this.delegate.listen(t,e,n)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setValue(t,e){return this.delegate.setValue(t,e)}}function Gx(t){return rx(),Gf.overrideProvider(t)}function Bx(t,e){return rx(),Gf.overrideComponentView(t,e)}function zx(){return rx(),Gf.clearOverrides()}function Yx(t,e,n){return new Hx(t,e,n)}class Hx extends ht{constructor(t,e,n){super(),this.moduleType=t,this._bootstrapComponents=e,this._ngModuleDefFactory=n}create(t){rx();const e=function(t){const e=Array.from(t.providers),n=Array.from(t.modules),a={};for(const r in t.providersByKey)a[r]=t.providersByKey[r];return{factory:t.factory,isRoot:t.isRoot,providers:e,modules:n,providersByKey:a}}(dh(this._ngModuleDefFactory));return Gf.createNgModuleRef(this.moduleType,t||Bu.NULL,this._bootstrapComponents,e)}}},"8YOa":function(t,e,n){var a=n("0BK2"),r=n("hh1v"),i=n("UTVS"),s=n("m/L8").f,u=n("kOOl"),o=n("uy83"),l=u("meta"),d=0,c=Object.isExtensible||function(){return!0},f=function(t){s(t,l,{value:{objectID:"O"+ ++d,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!r(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,l)){if(!c(t))return"F";if(!e)return"E";f(t)}return t[l].objectID},getWeakData:function(t,e){if(!i(t,l)){if(!c(t))return!0;if(!e)return!1;f(t)}return t[l].weakData},onFreeze:function(t){return o&&h.REQUIRED&&c(t)&&!i(t,l)&&f(t),t}};a[l]=!0},"8a/S":function(t,e){t.exports=function(t){return function(e){return null==e?void 0:e[t]}}},"8j5A":function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="it-IT">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Attiva/Disattiva barra di navigazione</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Dashboard</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Cluster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitor</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Servizi</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Configurazione</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>Mappa CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Moduli Manager</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Log</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Blocco</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Immagini</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Esecuzione della copia speculare</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI </target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>File system</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Utenti</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Compartimenti</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Selezionare una lingua</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Caricamento pannello dati in corso...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Selezione ora di Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Impostazioni di ripristino</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Indietro</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Non è stato possibile caricare i dati.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>selezionato</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>trovato</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>totale</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nome</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Descrizione</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Descrizione lunga</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Default</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Default del daemon</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Valori</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Salva</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Visualizzatore mappa CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Caricamento in corso...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nome host</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Questo campo è obbligatorio.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Sì.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Annulla</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Chiudi</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Elenco degli host</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Prestazioni complessive</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Nessuna voce trovata</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Log dei cluster</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Log delle revisioni</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Caricamento della configurazione in corso...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Impossibile caricare la configurazione.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Modifica modulo Manager</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Il valore immesso non è un UUID valido, ad es.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Il valore immesso deve essere un indirizzo IP valido.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Il valore immesso deve essere un numero.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Il valore immesso deve essere un numero o un decimale.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Aggiorna</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Stato</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID cluster</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>mappa mon modificata</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>epoca mappa mon</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>con richiesta</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>mon richiesto</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>Nel quorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Non nel quorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Aggiungi</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Funzioni</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Flag OSD in tutto il cluster</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Invia</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Avanzate...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Priorità di recupero OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorità</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Personalizza valori di priorità</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Questo campo è obbligatorio.</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Il valore deve essere compreso tra 0 e 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Ripesa</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Deep } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {deep } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Elenco degli OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Valore</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Modifica</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Elimina</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Stato</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistiche</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Client</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Può accedere qualsiasi client</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Indirizzi</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Campo obbligatorio</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Deve contenere uno o più valori delimitati da virgole</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Ad esempio:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Tipo di accesso</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Esegui squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Aggiungi client</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Nessun cluster disponibile --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Selezionare il cluster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Aggiungi daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Backend di storage</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Nessun pool di dati disponibile --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Selezionare il backend di storage --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Utente Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Nessun utente disponibile --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Selezionare l\'utente Object Gateway --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID utente CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Nessun client disponibile --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Selezionare il client Cephx --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nome CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Etichetta di sicurezza</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Abilita etichetta di sicurezza</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Percorso CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Il percorso deve iniziare con una barra \'/\' e può essere seguito da una parola</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Viene creata la nuova directory</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Percorso</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Il percorso può essere solo una singola barra \'/\' o parola</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Viene creato il nuovo compartimento</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protocollo NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Tag NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>I client non possono montare le sottodirectory (ad es. se Tag = foo, il client non può montare foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Utilizzando diverse opzioni Tag, è possibile esportare più volte lo stesso percorso.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Utilizzando diverse opzioni Pseudo, è possibile esportare più volte lo stesso percorso.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Nessun tipo di accesso disponibile --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Selezionare il tipo di accesso --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Nessuno squash disponibile --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>--Selezionare il tipo di squash dell\'ID utente da eseguire --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protocollo di trasporto</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Benvenuto in Ceph.</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nome utente necessario</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Password richiesta</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Login</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Spiacenti, l\'utente non esiste in Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Non consentito</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Spiacenti, non è consentito visualizzare ciò che si stava cercando.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Configurazione RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Rimuovere il valore della configurazione locale. Al suo posto verrà ereditato e utilizzato il valore della configurazione superiore.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Il valore minimo è 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Elenco dei pool</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Il nome può contenere solo caratteri alfanumerici, trattini e caratteri di sottolineatura.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Il nome del profilo del codice di cancellazione selezionato è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plugin</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Porzioni di dati (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Deve essere uguale o maggiore di 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Porzioni di codice (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Deve essere uguale o maggiore di 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Stima durata (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Località (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Dominio di errore Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Località Crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Nessuno</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Tecnica</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Dimensione del pacchetto</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Radice Crush</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Classe dispositivo Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>qualsiasi</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Directory</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nome...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Il nome del pool Ceph scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Tipo di pool</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Selezionare un tipo di pool --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Gruppi di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>È necessario almeno un gruppo di posizionamento.</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Il cluster non può gestire questo numero eccessivo di gruppi di posizionamento. Ricalcolare il numero di gruppi di posizionamento necessari.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Guida per il calcolo</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Dimensioni replicate</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flag</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>Sovrascritture EC</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Applicazioni</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Profilo del codice di cancellazione</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Nessun profilo del codice di cancellazione disponibile --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Selezionare un profilo del codice di cancellazione --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Set di regole Crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Selezionare una regola Crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Regola Crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Passaggi Crush</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Compressione</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Modalità</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritmo</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Nessun algoritmo di compressione della cancellazione disponibile --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Dimensioni minime del blob</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>ad es. 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Il valore deve essere maggiore di 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Dimensioni massime del blob</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>ad es. 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Il valore deve essere maggiore delle dimensioni minime del blob</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Rapporto</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Rapporto di compressione</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Il valore deve essere compreso tra 0,0 e 1,0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>ad es. 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Dettagli</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Dettagli sulle prestazioni</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Dettagli livelli cache</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Sposta un\'immagine nel cestino</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>La protezione scade alle</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NON PROTETTO</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Formato data errato. Utilizzare "AAAA-MM-GG HH:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>La protezione è già scaduta. Selezionare una data futura o lasciarla vuota.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Sposta immagine</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Panoramica</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Destinazioni</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Autenticazione rilevazione</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Utente</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>I nomi utente devono avere una lunghezza compresa tra 8 e 64 caratteri e\n              possono contenere solo lettere, \'.\', \'@\', \'-\', \'_\' o \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Password</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Utente reciproco</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Password reciproca</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informazioni disponibili:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>Destinazioni iSCSI non disponibili</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Pool di dati</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Creato</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Dimensioni</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Oggetti</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Dimensioni oggetto</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Soggetto al provisioning</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/D</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Totale soggetto al provisioning</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unità di striping</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Conteggio di striping</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Superiore</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Prefisso nome blocco</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Ordine</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Snapshot</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Immagine</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Questa impostazione sostituisce il valore globale</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Globale</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Questo è il valore globale. Nessun valore di opzione è stato impostato per questa immagine.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' e \'@\' non sono consentiti.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Nessun pool rbd disponibile --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Selezionare un pool --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Utilizza un pool di dati dedicato</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Pool di dati</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Pool dedicato che archivia i dati oggetto dell\'RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>È necessario aumentare le dimensioni.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Avanzate</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Striping</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unità di striping</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Selezionare l\'unità di striping --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Questo campo è obbligatorio perché è specificato il numero di striping.</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>L\'unità di striping è maggiore delle dimensioni dell\'oggetto.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Numero di striping</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Questo campo è obbligatorio perché è specificata l\'unità di striping.</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Il numero di striping deve essere maggiore di 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Si sta per eseguire il rollback</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Elimina definitivamente contenuto del cestino</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Tutto</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pool:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nome pool...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Ripristina immagine</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Per ripristinare,</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>digitare il nuovo nome dell\'immagine e fare clic su</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nuovo nome</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Scaduto alle</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Protetto fino alle</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologia iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Di solito non è necessario modificare questi parametri rispetto ai valori di default.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Impostazioni</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Conferma</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Impostazioni avanzate</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN di destinazione</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN contiene un modello errato.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Ad esempio: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Ulteriori informazioni</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Questa destinazione contiene impostazioni avanzate modificate.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portali</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Aggiungi portale</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Questa immagine contiene impostazioni modificate.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Aggiungi immagine</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Autenticazione ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Iniziatori</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Iniziatore</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN client</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>L\'IQN dell\'iniziatore deve essere univoco.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>I nomi utente devono avere una lunghezza compresa tra 8 e 64 caratteri e\n                        possono contenere solo lettere, \'.\', \'@\', \'-\', \'_\' o \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>L\'iniziatore appartiene a un gruppo. Le immagini verranno configurate nel gruppo.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Nessun elemento aggiunto.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Aggiungi iniziatore</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Gruppi</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Gruppo</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Aggiungi gruppo</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Cestino</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Problemi</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Sincronizzazione in corso</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Pronto</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Modifica modalità speculare per il pool</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>È necessario rimuovere i cluster peer prima di disabilitare la copia speculare.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nome cluster</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Il nome del cluster non è valido.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>ID CephX</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>ID CephX...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>L\'ID CephX non è valido.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Indirizzi dei monitor</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Indirizzi con valori delimitati da virgole...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>L\'indirizzo del monitor non è valido.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Chiave CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Chiave con codifica Base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>La chiave CephX deve essere con codifica Base64.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Contatori delle prestazioni non disponibili</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Elenco dei daemon</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Contatori delle prestazioni</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Caricamento dati compartimento in corso...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Il valore non è valido.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Il nome scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Proprietario</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Selezionare un utente --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Abilitato</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Tipo di indice</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Regola di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Contrassegno</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Contrassegno massimo</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Versione</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Versione master</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Ora di modifica</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Gruppo di zone</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Quota compartimenti</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Dimensioni massime</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Illimitato</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Numero massimo di oggetti</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nome utente</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Selezionare un nome utente --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Generazione automatica chiave</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Chiave di accesso</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Chiave segreta</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nome completo</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Indirizzo e-mail</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Sospeso</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Sistema</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Numero massimo di compartimenti</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Sottoutenti</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Capacità</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Quota utenti</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Mostra</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Chiavi</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Tipo</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Selezionare un tipo --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Autorizzazione</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Selezionare un\'autorizzazione --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Sottoutente</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>L\'ID del sottoutente scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>lettura, scrittura</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>pieno</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Chiave Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Generazione automatica segreto</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Caricamento dati utente in corso...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Impossibile caricare i dati utente.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>L\'ID utente scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Non è un indirizzo e-mail valido.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>L\'indirizzo e-mail scelto è già in uso.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Numero max. di compartimenti</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Disabilitato</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Personalizzato</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Chiave S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Non esistono sottoutenti.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Non esistono chiavi.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Non esistono capacità.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Dimensioni illimitate</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Dimensione max.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Oggetti illimitati</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Numero max. di oggetti</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Il valore immesso deve essere &gt;= a 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Descrizione...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Autorizzazioni</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Ruoli</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Conferma password</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>La password di conferma non corrisponde alla password.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>E-mail</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>E-mail non valida.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Si stanno per rimuovere le autorizzazioni di "lettura/aggiornamento utente" dal proprio utente.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Se si continua, non è più possibile aggiungere o rimuovere ruoli da qualsiasi utente.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Continuare?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Guida</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Documentazione</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Informazioni su</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Impostazioni del dashboard</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Gestione utenti</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Utente connesso</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Disconnetti</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Attributi (mappa OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadati non disponibili</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadati</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Contatore delle prestazioni</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Scritture</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Letture</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Istogramma</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Valori attuali</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Max</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Origine</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Livello</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Può essere aggiornato al runtime (modificabile)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tag</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Valori di enumerazione</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Vedere anche</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Stato del cluster</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Manager Daemon</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Server di metadati</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI Gateway</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS client</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Velocità effettiva client</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Lettura/scrittura client</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Velocità effettiva di recupero</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Pulitura</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Prestazioni</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Capacità di base</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Gruppi di posizionamento per OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Stato gruppo di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Capacità</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Classificazioni</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Attuale</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Autenticazione rilevazione aggiornata</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Non sono disponibili pool.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Non sono disponibili immagini.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Non sono disponibili immagini. Assicurarsi di aggiungere un\'immagine alla destinazione.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Non sono disponibili iniziatori. Assicurarsi di aggiungere un iniziatore alla destinazione.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Destinazione</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Stato</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Byte letti</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Byte scritti</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Operazioni di lettura</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Operazioni di scrittura</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O da</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Istanza</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problema</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Avanzamento</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Modalità di modifica</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Aggiungi peer</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Modifica peer</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Elimina peer</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Sequenza iniziale</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># Locale</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># Remoto</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>peer copia speculare</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Chiave</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Appiattimento profondo</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Su strati</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Blocco esclusivo</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mappa oggetti (richiede il blocco escluso)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Journaling (richiede il blocco esclusivo)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NON PROTETTO</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Rollback snapshot RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Esegui rollback</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Snapshot RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Eliminato alle</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>tipo</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>stato</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>versione</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>root</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemon in standby</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Classificazione</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Task</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentry</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inode</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Utilizzo</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Aggiornato</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>È possibile aggiornare il valore al runtime.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>I daemon/client non estraggono questo valore dal\n      database della configurazione di monitoraggio. Non è consentito impostare questa opzione tramite \'ceph config\n      set ...\'. È necessario configurare questa opzione tramite ceph.conf o dalla\n      riga di comando.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>L\'opzione diventa attiva solo all\'avvio del daemon.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>L\'opzione interessa solo la creazione del cluster.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>L\'opzione interessa solo la creazione del daemon.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Servizio</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Valore attuale</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Modificabile</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Abilita</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Disabilita</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Riconnessione in corso. Attendere.</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Indirizzo pubblico</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Sessioni aperte</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Nessuno in entrata</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>Gli OSD che sono stati contrassegnati come disattivi in precedenza non verranno contrassegnati nuovamente come attivi all\'avvio</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Nessuno in uscita</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>Gli OSD non verranno disattivati automaticamente dopo l\'intervallo configurato</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Nessuno attivo</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>Non è consentito l\'avvio degli OSD</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Nessuno disattivo</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>I rapporti di errore degli OSD vengono ignorati in modo che i monitor non disattivino gli OSD</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Sospendi</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Sospende le operazioni di lettura e scrittura</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Nessuna pulitura</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Pulitura disabilitata</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Nessun pulitura approfondita</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Pulitura approfondita disabilitata</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Nessuna operazione di recupero</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Recupero dei gruppi di posizionamento sospeso</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Nessun recupero</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Recupero dei gruppi di posizionamento sospeso</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Ordinamento bitwise</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Usa ordinamento bitwise</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Snapdir eliminate definitivamente</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>Gli OSD contengono set di snap convertiti</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Eliminazioni recuperi</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Eliminazioni eseguite durante il recupero invece del peering</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Limite rigido log gruppo di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Inserisce un limite rigido alla lunghezza del log del gruppo di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Flag OSD aggiornati</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>esterno</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>interno</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>in basso</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Contrassegna</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD perso</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>contrassegnato come perso</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Elimina definitivamente</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>eliminato definitivamente</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>elimina definitivamente</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>eliminato definitivamente</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>elimina</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>Gruppi di posizionamento</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Byte letti</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Byte scritti</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Operazioni di lettura</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Operazioni di scrittura</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Numero max di recuperi informazioni</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Numero max di recuperi attivi</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Avvio singolo numero max di recuperi</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Sospensione recupero</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Lavoro</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Gravità</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Avviato</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Utilizzato</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Dispon.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Pulisci</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>In funzione</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Avviso</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Sconosciuto</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>su</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>nessun file system</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>attivo</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>standby</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/d</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon attivo</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target> quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Il servizio NFS Ganesha non è configurato.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Trasporto</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Utente CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>File system CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(ereditato dalla configurazione globale)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>importato dalla configurazione globale</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Selezionare il tipo di squash dell\'ID utente che viene eseguito --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Non vi sono daemon disponibili.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Modalità cache</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Numero minimo di giorni per la rimozione</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Numero minimo di giorni per la cancellazione</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Numero max di byte di destinazione</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Numero max di oggetti di destinazione</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Non sono state aggiunte applicazioni.</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Raggiunto il limite di applicazioni</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Un pool può contenere solo fino a quattro definizioni delle applicazioni.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Caratteri consentiti \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>La lunghezza massima è di 128 caratteri</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtra o aggiungi applicazioni</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Aggiungi applicazione</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>profilo del codice di cancellazione</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Dimensioni della replica</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Ultima modifica</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Profilo con codice di cancellazione</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Set di regole Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>compartimento</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>compartimenti</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>utente</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>utenti</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Ambito</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Lettura</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Crea</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Ruolo di sistema</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Aggiorna utente</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Continua</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Si è stati automaticamente disconnessi perché i ruoli sono stati modificati.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Ogni oggetto è suddiviso in porzioni di dati, ciascuna delle quali è memorizzata su un diverso OSD.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Calcola le porzioni di codice relative a ciascun oggetto e le memorizza su diversi OSD.\n      Il numero di porzioni di codice è anche il numero degli OSD che è possibile disattivare senza perdere i dati.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Il plugin jerasure è il plugin più generico e flessibile,\n          ed è anche il plugin di default dei pool con codice di cancellazione di Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>La tecnica più flessibile è reed_sol_van: è sufficiente impostare k\n          ed m. La tecnica cauchy_good può essere più rapida ma occorre selezionare attentamente la dimensione del\n          pacchetto. reed_sol_r6_op, liberation, blaum_roth, liber8tion sono tutti equivalenti a RAID6,\n          nel senso che è possibile configurarli solo con m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>La codifica viene eseguita su pacchetti di dimensioni in byte, uno alla volta.\n          È difficile scegliere la dimensione del pacchetto corretta.\n          La documentazione su jerasure fornisce informazioni esaustive su questo argomento.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Con il plugin di jerasure, quando un oggetto con codice di cancellazione viene memorizzato su\n          più OSD, il recupero della perdita di un OSD richiede la lettura di tutti gli altri.\n          Ad esempio, se jerasure è configurato con k=8 e m=4, la perdita di un OSD richiede la lettura\n          degli altri undici per il ripristino.\n\n          Il plugin del codice di cancellazione lrc crea porzioni di parità locali che è possibile recuperare utilizzando un\n          minor numero di OSD. Ad esempio, se lrc è configurato con k=8, m=4 e l=4, crea\n          una porzione di parità aggiuntiva ogni quattro OSD. Quando si perde un singolo OSD, è possibile\n          recuperarlo solo con quattro OSD invece che con undici.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Raggruppa le porzioni di codice e dati in set di località dimensione. Ad esempio,\n          per k=4 e m=2, se località=3 vengono creati due gruppi su tre. È possibile recuperare ciascun set\n          senza leggere le porzioni di un altro set.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Il tipo di compartimento Crush in cui viene memorizzato ciascun set di porzioni definito\n          dall\'utente. Ad esempio, se è impostato su rack, ciascun gruppo di porzioni viene\n          posizionato in un diverso rack. Viene utilizzato per creare un passaggio della regola CRUSH come il passaggio choose\n          rack. Se non è impostato, il raggruppamento non viene eseguito.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Il plugin ISA incapsula la libreria ISA. Viene eseguito solo su processori Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Il plugin ISA è disponibile in due formati Reed Solomon.\n          Se è impostato reed_sol_van, il formato è Vandermonde, se è impostato cauchy, il formato è Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Il plugin shec incapsula la libreria SHEC multipla.\n          Consente a Ceph di recuperare i dati in modo più efficiente rispetto ai codici Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Il numero di compartimenti di parità, ciascuno dei quali include i singoli compartimenti di dati\n          nell\'intervallo di calcolo. Il numero viene utilizzato come strumento di stima della durabilità. Ad esempio, se c=2,\n          è possibile disattivare 2 OSD senza perdere i dati.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Il nome del compartimento Crush utilizzato per il primo passaggio della regola CRUSH.\n      Ad esempio il passaggio take default.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Assicurarsi che non esistano due porzioni in un compartimento con lo stesso dominio\n      di errore. Ad esempio, se il dominio di errore è l\'host, non verranno memorizzate due porzioni sullo stesso\n      host. Viene utilizzato per creare un passaggio della regola CRUSH come passaggio chooseleaf host.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Limitare il posizionamento ai dispositivi di una classe specifica\n      (ad es. ssd o hdd) usando i nomi delle classi di dispositivi Crush nella mappa CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Impostare il nome della directory da cui viene caricato il plugin del codice di cancellazione.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Consente tutte le operazioni</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Consente solo le operazioni che non modificano il server</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Non consente operazioni di lettura o scrittura, ma consente qualsiasi altra operazione</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Non consente operazioni di lettura o scrittura o qualsiasi operazione che modifichi gli attributi dei file o il contenuto della directory</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Non consente alcun accesso</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Selezionare la priorità --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Bassa</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Alta</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informazioni</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Ultimi 5 minuti</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Ultimi 15 minuti</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Ultimi 30 minuti</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Ultima ora (Default)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Ultime 3 ore</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Ultime 6 ore</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Ultime 12 ore</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Ultime 24 ore</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Ieri</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Oggi</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Fino a oggi</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Giorno prima di ieri</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Ultimi 2 giorni</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Questo giorno della scorsa settimana</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Settimana precedente</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Questa settimana</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Fino a questa settimana</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Ultimi 7 giorni</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Mese precedente</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Questo mese</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Fino a questo mese</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Ultimi 30 giorni</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Ultimi 90 giorni</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Ultimi 6 mesi</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Ultimo anno</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Anno precedente</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Quest\'anno</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Fino a quest\'anno</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Ultimi 2 anni</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Ultimi 5 anni</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Nessun elemento selezionato.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Deselezionare l\'elemento per selezionare di nuovo</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target> Raggiunto il limite per la selezione</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Filtra tag</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Aggiungi badge</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Non vi sono elementi disponibili.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Clona</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Copia</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Pulitura approfondita</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Eliminazione definitiva</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Appiattisci</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Declassa</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Attiva</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Contrassegna come perso</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Disattiva</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Proteggi</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Rinomina</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Ripristina</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Sposta nel cestino</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Rimuovi protezione</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Eliminato</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Clonato</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Copiato</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Appiattito</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Eliminato definitivamente</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Ripristinato</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Rollback eseguito</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Sì</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>No</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Qualità di servizio</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limite di BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Il limite desiderato di byte I/O al secondo.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limite di IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Il limite desiderato di operazioni I/O al secondo.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limite BPS in lettura</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Il limite desiderato dei byte letti al secondo.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limite di IOPS in lettura</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Il limite desiderato di operazioni di lettura al secondo.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limite di BPS in scrittura</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Il limite desiderato di byte scritti al secondo.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limite di IOPS in scrittura</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Il limite desiderato di operazioni di scrittura al secondo.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Burst BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Il limite di burst desiderato dei byte di I/O.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Burst IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Il limite di burst desiderato delle operazioni di I/O.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Burst BPS in lettura</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Il limite di burst desiderato dei byte letti.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Burst IOPS in lettura</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Il limite di burst desiderato delle operazioni di lettura.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Burst BPS in scrittura</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Il limite di burst desiderato dei byte scritti.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Burst di IOPS in scrittura</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Il limite di burst desiderato delle operazioni di scrittura.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>In esecuzione</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>esegui</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Eseguito</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>task sconosciuto</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Creazione in corso</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>crea</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Aggiornamento in corso</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>aggiorna</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Eliminazione in corso</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Clonazione in corso</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>clona</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Copia in corso</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>copia</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Appiattimento</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>appiattisci</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Rollback in corso</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>rollback</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Spostamento in corso</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>sposta</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Spostato</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Impossibile trovare l\'immagine.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Ripristino in corso</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>ripristina</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Eliminazione in corso</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>elimina definitivamente</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>tutti i pool</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Impossibile disabilitare l\'esecuzione della copia speculare perché contiene un peer.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"8mBD":function(t,e,n){!function(t){"use strict";t.defineLocale("pt",{months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},"8rQ2":function(t,e,n){var a=n("6MU2"),r=n("/Gx3"),i=n("Uqmq"),s=n("qjUL"),u=r((function(t){return t.push(void 0,i),a(s,void 0,t)}));t.exports=u},"8xTl":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t){return a.upperFirst(t)}}},"9/5/":function(t,e){var n=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,r=/^0b[01]+$/i,i=/^0o[0-7]+$/i,s=parseInt,u="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,l=u||o||Function("return this")(),d=Object.prototype.toString,c=Math.max,f=Math.min,h=function(){return l.Date.now()};function g(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function p(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&"[object Symbol]"==d.call(t)}(t))return NaN;if(g(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=g(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(n,"");var u=r.test(t);return u||i.test(t)?s(t.slice(2),u?2:8):a.test(t)?NaN:+t}t.exports=function(t,e,n){var a,r,i,s,u,o,l=0,d=!1,b=!1,m=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function y(e){var n=a,i=r;return a=r=void 0,l=e,s=t.apply(i,n)}function v(t){return l=t,u=setTimeout(_,e),d?y(t):s}function x(t){var n=t-o;return void 0===o||n>=e||n<0||b&&t-l>=i}function _(){var t=h();if(x(t))return T(t);u=setTimeout(_,function(t){var n=e-(t-o);return b?f(n,i-(t-l)):n}(t))}function T(t){return u=void 0,m&&a?y(t):(a=r=void 0,s)}function w(){var t=h(),n=x(t);if(a=arguments,r=this,o=t,n){if(void 0===u)return v(o);if(b)return u=setTimeout(_,e),y(o)}return void 0===u&&(u=setTimeout(_,e)),s}return e=p(e)||0,g(n)&&(d=!!n.leading,i=(b="maxWait"in n)?c(p(n.maxWait)||0,e):i,m="trailing"in n?!!n.trailing:m),w.cancel=function(){void 0!==u&&clearTimeout(u),l=0,a=o=r=u=void 0},w.flush=function(){return void 0===u?s:T(h())},w}},"93I0":function(t,e,n){var a=n("VpIT"),r=n("kOOl"),i=a("keys");t.exports=function(t){return i[t]||(i[t]=r(t))}},"978R":function(t,e,n){"use strict";n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return d})),n.d(e,"c",(function(){return f})),n.d(e,"d",(function(){return h}));var a=n("8Y7J"),r=n("hpHm"),i=n("mrSG"),s=n("z/SZ"),u=n("2uy1"),o=n("PqYM");class l{constructor(){this.adaptivePosition=!0,this.placement="top",this.triggers="hover focus",this.delay=0}}class d{constructor(t){Object.assign(this,t)}get isBs3(){return Object(r.d)()}ngAfterViewInit(){this.classMap={in:!1,fade:!1},this.classMap[this.placement]=!0,this.classMap["tooltip-"+this.placement]=!0,this.classMap.in=!0,this.animation&&(this.classMap.fade=!0),this.containerClass&&(this.classMap[this.containerClass]=!0)}}let c=0,f=(()=>{class t{constructor(t,e,n,r,i,s){this._elementRef=r,this._renderer=i,this._positionService=s,this.tooltipId=c++,this.tooltipChange=new a.EventEmitter,this.containerClass="",this.tooltipAnimation=!0,this.tooltipFadeDuration=150,this.tooltipStateChanged=new a.EventEmitter,this._tooltip=e.createLoader(this._elementRef,t,this._renderer).provide({provide:l,useValue:n}),Object.assign(this,n),this.onShown=this._tooltip.onShown,this.onHidden=this._tooltip.onHidden}get isOpen(){return this._tooltip.isShown}set isOpen(t){t?this.show():this.hide()}set htmlContent(t){Object(r.i)("tooltipHtml was deprecated, please use `tooltip` instead"),this.tooltip=t}set _placement(t){Object(r.i)("tooltipPlacement was deprecated, please use `placement` instead"),this.placement=t}set _isOpen(t){Object(r.i)("tooltipIsOpen was deprecated, please use `isOpen` instead"),this.isOpen=t}get _isOpen(){return Object(r.i)("tooltipIsOpen was deprecated, please use `isOpen` instead"),this.isOpen}set _enable(t){Object(r.i)("tooltipEnable was deprecated, please use `isDisabled` instead"),this.isDisabled=!t}get _enable(){return Object(r.i)("tooltipEnable was deprecated, please use `isDisabled` instead"),this.isDisabled}set _appendToBody(t){Object(r.i)('tooltipAppendToBody was deprecated, please use `container="body"` instead'),this.container=t?"body":this.container}get _appendToBody(){return Object(r.i)('tooltipAppendToBody was deprecated, please use `container="body"` instead'),"body"===this.container}set _popupClass(t){Object(r.i)("tooltipClass deprecated")}set _tooltipContext(t){Object(r.i)("tooltipContext deprecated")}set _tooltipPopupDelay(t){Object(r.i)("tooltipPopupDelay is deprecated, use `delay` instead"),this.delay=t}get _tooltipTrigger(){return Object(r.i)("tooltipTrigger was deprecated, please use `triggers` instead"),this.triggers}set _tooltipTrigger(t){Object(r.i)("tooltipTrigger was deprecated, please use `triggers` instead"),this.triggers=(t||"").toString()}ngOnInit(){this._tooltip.listen({triggers:this.triggers,show:()=>this.show()}),this.tooltipChange.subscribe(t=>{t||this._tooltip.hide()}),this.onShown.subscribe(()=>{this.setAriaDescribedBy()}),this.onHidden.subscribe(()=>{this.setAriaDescribedBy()})}setAriaDescribedBy(){this._ariaDescribedby=this.isOpen?"tooltip-"+this.tooltipId:null,this._ariaDescribedby?this._renderer.setAttribute(this._elementRef.nativeElement,"aria-describedby",this._ariaDescribedby):this._renderer.removeAttribute(this._elementRef.nativeElement,"aria-describedby")}toggle(){if(this.isOpen)return this.hide();this.show()}show(){if(this._positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition},preventOverflow:{enabled:this.adaptivePosition}}}),this.isOpen||this.isDisabled||this._delayTimeoutId||!this.tooltip)return;const t=()=>{this._delayTimeoutId&&(this._delayTimeoutId=void 0),this._tooltip.attach(d).to(this.container).position({attachment:this.placement}).show({content:this.tooltip,placement:this.placement,containerClass:this.containerClass,id:"tooltip-"+this.tooltipId})},e=()=>{this._tooltipCancelShowFn&&this._tooltipCancelShowFn()};if(this.delay){const n=Object(o.a)(this.delay).subscribe(()=>{t(),e()});this.triggers&&Object(r.f)(this.triggers).forEach(t=>{this._tooltipCancelShowFn=this._renderer.listen(this._elementRef.nativeElement,t.close,()=>{n.unsubscribe(),e()})})}else t()}hide(){this._delayTimeoutId&&(clearTimeout(this._delayTimeoutId),this._delayTimeoutId=void 0),this._tooltip.isShown&&(this._tooltip.instance.classMap.in=!1,setTimeout(()=>{this._tooltip.hide()},this.tooltipFadeDuration))}ngOnDestroy(){this._tooltip.dispose(),this.tooltipChange.unsubscribe(),this.onShown.unsubscribe(),this.onHidden.unsubscribe()}}return Object(i.__decorate)([Object(r.a)(),Object(i.__metadata)("design:type",Object)],t.prototype,"tooltip",void 0),t})();class h{static forRoot(){return{ngModule:h,providers:[l,s.a,u.a]}}}},"9Xeq":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},"9d/t":function(t,e,n){var a=n("AO7/"),r=n("xrYK"),i=n("tiKp")("toStringTag"),s="Arguments"==r(function(){return arguments}());t.exports=a?r:function(t){var e,n,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),i))?n:s?r(e):"Object"==(a=r(e))&&"function"==typeof e.callee?"Arguments":a}},"9nlD":function(t,e,n){"use strict";n.d(e,"a",(function(){return f}));var a=n("LvDl"),r=n("2Vo4"),i=n("XNiG"),s=n("mtw6"),u=n("G1I9"),o=n("a0VL"),l=n("ufoC"),d=n("8Y7J"),c=n("EApP");let f=(()=>{class t{constructor(t,e,n){this.toastr=t,this.taskMessageService=e,this.cdDatePipe=n,this.hideToasties=!1,this.dataSource=new r.a([]),this.data$=this.dataSource.asObservable(),this.sidebarSubject=new i.a,this.queued=[],this.KEY="cdNotifications";const s=localStorage.getItem(this.KEY);let o=[];a.isString(s)&&(o=JSON.parse(s,(t,e)=>a.isPlainObject(e)?a.assign(new u.a,e):e)),this.dataSource.next(o)}removeAll(){localStorage.removeItem(this.KEY),this.dataSource.next([])}remove(t){const e=this.dataSource.getValue();e.splice(t,1),this.dataSource.next(e),localStorage.setItem(this.KEY,JSON.stringify(e))}save(t){const e=this.dataSource.getValue();for(e.push(t),e.sort((t,e)=>t.timestamp>e.timestamp?-1:1);e.length>10;)e.pop();this.dataSource.next(e),localStorage.setItem(this.KEY,JSON.stringify(e))}show(t,e,n,r,i){return window.setTimeout(()=>{let s;s=a.isFunction(t)?t():a.isObject(t)?t:new u.b(t,e,n,r,i),this.queueToShow(s)},10)}queueToShow(t){this.cancel(this.queuedTimeoutId),this.queued.find(e=>a.isEqual(e,t))||this.queued.push(t),this.queuedTimeoutId=window.setTimeout(()=>{this.showQueued()},500)}showQueued(){this.getUnifiedTitleQueue().forEach(t=>{const e=new u.a(t);e.isFinishedTask||this.save(e),this.showToasty(e)})}getUnifiedTitleQueue(){return Object.values(this.queueShiftByTitle()).map(t=>{const e=t[0];return t.length>1&&(e.message="<ul>"+t.map(t=>`<li>${t.message}</li>`).join("")+"</ul>"),e})}queueShiftByTitle(){const t={};let e;for(;e=this.queued.shift();)t[e.title]||(t[e.title]=[]),t[e.title].push(e);return t}showToasty(t){this.hideToasties||this.toastr[["error","info","success"][t.type]]((t.message?t.message+"<br>":"")+this.renderTimeAndApplicationHtml(t),t.title,t.options)}renderTimeAndApplicationHtml(t){return`<small class="date">${this.cdDatePipe.transform(t.timestamp)}</small><i class="float-right custom-icon ${t.applicationClass}" title="${t.application}"></i>`}notifyTask(t,e=!0){const n=this.finishedTaskToNotification(t,e);return n.isFinishedTask=!0,this.show(n)}finishedTaskToNotification(t,e=!0){let n;return n=t.success&&e?new u.b(s.a.success,this.taskMessageService.getSuccessTitle(t)):new u.b(s.a.error,this.taskMessageService.getErrorTitle(t),this.taskMessageService.getErrorMessage(t)),n.isFinishedTask=!0,n}cancel(t){window.clearTimeout(t)}suspendToasties(t){this.hideToasties=t}toggleSidebar(t=!1){this.sidebarSubject.next(t)}}return t.ngInjectableDef=d["ɵɵdefineInjectable"]({factory:function(){return new t(d["ɵɵinject"](c.j),d["ɵɵinject"](l.a),d["ɵɵinject"](o.a))},token:t,providedIn:"root"}),t})()},"9ppp":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})()},"9rRi":function(t,e,n){!function(t){"use strict";t.defineLocale("gd",{months:["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd"],monthsShort:["Faoi","Gear","Màrt","Gibl","Cèit","Ògmh","Iuch","Lùn","Sult","Dàmh","Samh","Dùbh"],monthsParseExact:!0,weekdays:["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],weekdaysShort:["Did","Dil","Dim","Dic","Dia","Dih","Dis"],weekdaysMin:["Dò","Lu","Mà","Ci","Ar","Ha","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[An-diugh aig] LT",nextDay:"[A-màireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-dè aig] LT",lastWeek:"dddd [seo chaidh] [aig] LT",sameElse:"L"},relativeTime:{future:"ann an %s",past:"bho chionn %s",s:"beagan diogan",ss:"%d diogan",m:"mionaid",mm:"%d mionaidean",h:"uair",hh:"%d uairean",d:"latha",dd:"%d latha",M:"mìos",MM:"%d mìosan",y:"bliadhna",yy:"%d bliadhna"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(t){return t+(1===t?"d":t%10==2?"na":"mh")},week:{dow:1,doy:4}})}(n("wd/R"))},"A+xa":function(t,e,n){!function(t){"use strict";t.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(t){return t+(/сехет$/i.exec(t)?"рен":/ҫул$/i.exec(t)?"тан":"ран")},past:"%s каялла",s:"пӗр-ик ҫеккунт",ss:"%d ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},dayOfMonthOrdinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}})}(n("wd/R"))},A2ZE:function(t,e,n){var a=n("HAuM");t.exports=function(t,e,n){if(a(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,a){return t.call(e,n,a)};case 3:return function(n,a,r){return t.call(e,n,a,r)}}return function(){return t.apply(e,arguments)}}},ANnk:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("aexS"),n("f/UV");class a{constructor(t,e,n){this.formScope=t,this.authStorageService=e,this.elementRef=n}ngAfterViewInit(){this.permissions=this.authStorageService.getPermissions(),null!==this.formScope&&(this.service_name=this.formScope.cdFormScope),this.service_name&&!this.permissions[this.service_name].update&&(this.elementRef.nativeElement.disabled=!0)}}},"AO7/":function(t,e,n){var a={};a[n("tiKp")("toStringTag")]="z",t.exports="[object z]"===String(a)},AQ68:function(t,e,n){!function(t){"use strict";t.defineLocale("uz-latn",{months:"Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr".split("_"),monthsShort:"Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek".split("_"),weekdays:"Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba".split("_"),weekdaysShort:"Yak_Dush_Sesh_Chor_Pay_Jum_Shan".split("_"),weekdaysMin:"Ya_Du_Se_Cho_Pa_Ju_Sha".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Bugun soat] LT [da]",nextDay:"[Ertaga] LT [da]",nextWeek:"dddd [kuni soat] LT [da]",lastDay:"[Kecha soat] LT [da]",lastWeek:"[O'tgan] dddd [kuni soat] LT [da]",sameElse:"L"},relativeTime:{future:"Yaqin %s ichida",past:"Bir necha %s oldin",s:"soniya",ss:"%d soniya",m:"bir daqiqa",mm:"%d daqiqa",h:"bir soat",hh:"%d soat",d:"bir kun",dd:"%d kun",M:"bir oy",MM:"%d oy",y:"bir yil",yy:"%d yil"},week:{dow:1,doy:7}})}(n("wd/R"))},AWcq:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("yJti");class r{constructor(){this.vcs=a.a}ngOnInit(){}}},AfCQ:function(t,e,n){"use strict";var a=n("2Vo4"),r=n("qgXg"),i=n("HDdC"),s=n("pxpQ"),u=n("Kqap"),o=n("lJxs"),l=n("7o/Q");class d{constructor(t,e){this.compare=t,this.keySelector=e}call(t,e){return e.subscribe(new c(t,this.compare,this.keySelector))}}class c extends l.a{constructor(t,e,n){super(t),this.keySelector=n,this.hasKey=!1,"function"==typeof e&&(this.compare=e)}compare(t,e){return t===e}_next(t){let e;try{const{keySelector:n}=this;e=n?n(t):t}catch(a){return this.destination.error(a)}let n=!1;if(this.hasKey)try{const{compare:t}=this;n=t(this.key,e)}catch(a){return this.destination.error(a)}else this.hasKey=!0;n||(this.key=e,this.destination.next(t))}}n.d(e,"a",(function(){return f})),n.d(e,"b",(function(){return h}));class f extends a.a{constructor(t,e,n){super(t),e.pipe(Object(s.b)(r.a)).pipe(Object(u.a)((t,e)=>e?n(t,e):t,t)).subscribe(t=>this.next(t))}}class h extends i.a{constructor(t,e,n){super(),this._dispatcher=t,this._reducer=e,this.source=n}select(t){return this.source.pipe(Object(o.a)(t)).pipe(t=>t.lift(new d(void 0,void 0)))}lift(t){const e=new h(this._dispatcher,this._reducer,this);return e.operator=t,e}dispatch(t){this._dispatcher.next(t)}next(t){this._dispatcher.next(t)}error(t){this._dispatcher.error(t)}complete(){}}},AiMb:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="zh-CN">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>切换导航</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>仪表盘</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>集群</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>主机</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitor</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>对应的服务</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>配置项</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH 索引</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Manager 扩展模块</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>日志</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>存储池</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>块设备</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>映像</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>镜像</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>文件系统</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>对象网关</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>守护进程</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>用户</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>存储桶</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>请选择语言</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>正在加载面板的相关数据…</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Grafana 时间选择工具</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>重新设置</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>返回</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>无法加载数据。</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>选中个数</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>命中个数</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>总数</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>名称</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>解释</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>更详尽的解释</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>缺省值</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>守护进程的缺省值</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>可选值</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>保存</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>检查 CRUSH 索引图</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>正在加载…</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>主机名</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>请填写此栏目!</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>是的,我确定。</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>取消</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>关闭</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>主机列表</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>总体性能</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>无法找到相关条目</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>集群日志</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>审计日志</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>正在加载相关配置信息...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>配置信息无法加载。</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>编辑 Manager 扩展模块</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>输入值不是有效的 UUID,如:67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>输入的应该是个有效的 IP 地址。</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>输入须为数字。</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>输入的应该是一个浮点数或者十进制整数。</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>状态</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>集群 ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap 修改时间</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap epoch</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con </target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>required con</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>required mon</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>仲裁成员</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>非仲裁成员</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>添加</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>特性</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>集群范围的 OSD 标志</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>提交</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>高级设置…</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD 恢复优先级</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>优先级</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>自定义优先级</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>这个字段是必填的!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>权重值必须在 0 和 1 之间</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>重设权重</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {深度}}</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {深度} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSD 列表</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>值</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>编辑</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>删除</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>健康状况</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>统计数据</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>客户端</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>任何客户端均可访问</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>地址</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>必填项</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>必须包含一个或多个逗号分隔值</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>例如:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>访问类型</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>添加客户端</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- 无可用集群 --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- 请选择一个集群 --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>添加守护进程</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>存储后端</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- 没有可用的数据存储池 --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- 请选择存储后端 --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>对象网关用户</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- 无可选用户 --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- 请选择对象网关用户 --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS 用户 ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- 无可用客户端 --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- 请选择 cephx 客户端 --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS 名称</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>安全标签</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>启用安全标签</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS 路径</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>路径需以“/”开头,后面可跟单词</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>将创建新文件夹</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>路径</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>路径只能是单个“/”或单词</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>将创建新的桶</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS 协议</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS 标签</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>客户端不能装入子目录(即如果标记为 foo,则客户端无法装入 foo/baz)。</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>通过使用不同标记选项,可将同一路径导出多次。</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>伪</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>通过使用不同伪选项,可将同一路径导出多次。</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- 没有可用的访问类型 --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- 选择访问类型 --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- 没有可用的 squash --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- 选择执行哪种类型的用户 ID 匿名访问 --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>传输协议</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>欢迎使用 Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>请输入用户名</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>请输入密码</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>登录</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>抱歉,此用户不存在。</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>禁止访问</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>抱歉,您无权访问这个页面。</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD 配置</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>删除本地的配置项,改用更高作用域的配置值。</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>最小值为 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>存储池列表</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>名称只能由字母、数字、短划线和下划线组成。</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>此纠删码配置名称已被使用。</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>纠删码算法</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>数据块 (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>必须大于等于 2</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>校验块 (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>必须大于等于 1</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>持久因子 (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>局部性因子 (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>CRUSH 故障域</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>CRUSH 局部性</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>无</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>算法</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>packetsize</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>CRUSH 根</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>CRUSH 设备类型</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>任意</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>目录</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>名称…</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>此 Ceph 存储池名称已被使用。</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>存储池类型</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- 请选择存储池的类型 --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>归置组 (PG)</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>至少需要一个归置组!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>您的集群没法支持这么多的 PG。请重新计算需要的 PG 个数。</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>在线 PG 计算器</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>副本个数</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>标志</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC 重写 (overwrite)</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>应用类型</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>纠删码配置</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- 无纠删码配置可选 --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- 请选择一个纠删码配置 --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>CRUSH 算法规则组</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- 选择 CRUSH 规则 --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>CRUSH 规则</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>CRUSH 步骤</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>压缩</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>模式</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>算法</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- 无可用的纠删码压缩算法 --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>blob 大小下限</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>比如 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>取值必须大于 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>blob 大小上限</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>如 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>取值必须大于 blob 大小下限</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>比例</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>压缩率</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>取值必须在 0.0 和 1.0 之间</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>如 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>详情</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>性能详情</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>缓存层详细信息</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>将映像移至回收站</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>保护期一直到</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>无保护</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>日期格式有问题。请使用“YYYY-MM-DD HH:mm:ss”。</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>保护期限已经过了。请设置一个将来的日期,或者清空不填。</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>移动映像</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>概览</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>目标</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>发现身份验证</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>用户</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>用户名长度必须在 8 到 64 个字符之间,且只能包含\n以下字符:英文字母、“.”、“@”、“-”、“_”或“:”。</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>密码</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>互认证用户</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>互认证密码</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>可用信息:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>无可用 iSCSI 目标</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>存储池</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>数据存储池</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>创建</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>容量</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>对象数</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>对象大小</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>供给容量</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/A</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>总供给容量</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>条带单元</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>条带个数</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>父节点</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>块存储名字前缀</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>order</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>快照</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>映像</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>此设置会覆盖全局值</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>全局</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>该值为全局值。没有为此映像设置此选项的值。</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>不允许使用“/”和“@”。</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- 没有可用的 RBD 存储池 --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- 请选择存储池 --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>使用一个专用的数据池</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>数据池</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>为保存 RBD 的对象数据单独分配的存储池。</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>您需要设置大一些的容量。</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>高级设置</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>条带</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>条带单元大小</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- 选择条带单元大小 --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>因为设置了条带个数,所以这个字段是必选的!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>条带单元大小超过了对象大小。</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>条带个数</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>因为设置了条带单元大小,所以这个字段是必选的!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>条带的个数必须大于 0。</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>您即将进行回滚操作</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>清空回收站</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>全选</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>存储池:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>存储池名称…</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>恢复映像</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>要恢复</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>输入映像的新名称,并点击</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>新名称</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>过期时间</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>保护期限</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSI 结构图</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>通常无须改变这些默认参数值。</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>设置</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>后备存储</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>确认</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>高级设置</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>目标限定名</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN 格式错误。</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>例如:iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>更多信息</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>此目标的高级设置项存在修改。</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>端口</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>添加端口</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>此映像的设置项存在修改。</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>添加映像</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL 身份验证</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>授权人</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>授权人</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>客户端 IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>授权人 IQN 必须唯一。</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>用户名长度必须在 8 到 64 个字符之间,且只能包含\n以下字符:英文字母、“.”、“@”、“-”、“_”或“:”。</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>授权人属于群组。映像须在群组中进行设置。</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>无项目添加。</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>添加授权人</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>群组</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>群组</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>添加群组</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>回收站</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>问题</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>正在同步</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>已就绪</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>编辑存储池镜像模式</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>在禁用镜像功能前必须先移除同伴集群。</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {编辑} other {添加} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>集群名称</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>集群名称无效。</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX ID 无效。</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Monitor 地址</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>逗号分割的地址...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Monitor 地址无效。</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX 密钥</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64 编码的密钥...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephX 密钥必须是 base64 编码的。</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>无法读取性能计数器</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>守护进程列表</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>性能计数器</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>正在加载存储桶数据…</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>输入值无效。</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>所选名称已经被使用。</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>所有者</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- 请选择一个用户 --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>开启</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>索引类型</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>归置规则</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>标识</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>max marker</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>版本</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>主版本</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>修改时间</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>zonegroup</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>存储桶配额</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>最大数目</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>无限制</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>最大对象数目</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>用户名</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- 请选择用户名 --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>自动生成密钥</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>访问密钥</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>秘密密钥</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>全名</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>邮箱</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>冻结</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>系统</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>最大存储桶数目</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>子用户</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>用户权限</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>用户配额</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>显示</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>密钥</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>类型</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- 请选择一个类型 --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>权限</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- 请选择权限类型 --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>子用户</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>所选的子用户 ID 已被使用。</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>读、写</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>全部</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Swift 密钥</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>自动生成密钥</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>正在加载用户数据…</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>用户数据无法加载。 </target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>所选的用户 ID 已被使用。</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>无效的邮箱地址。</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>此邮箱地址已被使用。</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>存储桶个数的上限</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>禁用</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>自定义</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3 密钥</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>没有子用户。</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>没有任何密钥。</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>权限为空。</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>空间无限制</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>空间上限</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>对象个数无限制</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>对象个数上限</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>设置的值必须 &gt;= 0。</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>描述…</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>权限</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>角色</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>确认密码</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>密码和之前的输入不匹配。</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>邮箱</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>邮箱地址无效。</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>您即将取消您自己用户的 "user read / update" 权限。</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>如果您继续的话,您以后就没办法为其他用户添加或者删除角色了。</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>您确实要继续吗?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>帮助</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>文档</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>关于</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>仪表盘设置</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>用户管理</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>登录的用户</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>登出</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>OSD map</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>元数据不可用</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>相关元数据</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>性能计数器</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>写入请求</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>读取请求</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>直方图</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>当前值</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>下限</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>上限</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>来源</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>级别</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>可在运行时更新(可编辑)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>标记</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>可选项</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>参见</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>集群状态</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>manager 守护进程</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>对象网关</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>metadata 服务器</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI 网关</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>客户端 IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>客户端吞吐量</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>客户端读/写</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>恢复吞吐量</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>洗刷</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>性能</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>基本容量</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>每个 OSD 的 PG 数</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>PG 状态</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>容量</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>排位</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>当前</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>已更新发现身份验证</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>无可用端口。</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>无可用映像。</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>无可用映像。请确保为目标添加一个映像。</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>无可用授权人。请确保为目标添加一个授权人。</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>目标</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>状态</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>读字节数</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>写字节数</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>读请求数</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>写请求数</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>活动/优化自</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>实例</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>问题</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>进度</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>编辑模式</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>添加 peer</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>编辑 peer</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>删除 peer</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># 本地</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># 远程</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>镜像 peer</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>密钥</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>完全展开</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>分层</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>互斥锁</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>object map(要求互斥锁支持)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>日志(要求互斥锁支持)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>无保护的</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>RBD 快照回滚</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>回滚</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBD 快照</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>定点删除</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>类型</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>状态</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>版本</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>主机</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>根</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>备用服务</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>排位</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>守护进程</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>活跃度</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>inodes</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>使用率</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>更新完成</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>该值可在运行时更新。</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>服务器或客户端不会主动从 monitor 的配置数据库读取这个配置。\n 所以不能用“ceph config set ...”设置它。但是可以通过\n ceph.conf 或者用命令行进行配置。</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>该配置只有在服务启动的时候才会生效。</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>该配置只在创建集群的时候才会生效。</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>该配置只在服务创建的时候才会生效。</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>服务</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>当前值</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>可编辑</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>启用</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>禁用</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>正在重新连接,请稍候…</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>外部地址</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>活动会话</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>禁止加入</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>之前被除名的 OSD 在启动之后,不会被加入集群</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>禁止除名</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>在发现 OSD 没有响应之后一段时间,该 OSD 会被踢出集群。该标志会禁止这个功能。</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>禁止启用</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>不允许 OSD 启动</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>禁止停用</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>当前不受理对 OSD 的失效报告,因而 monitor 不会停用 OSD</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>暂停</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>暂停读写</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>禁止洗刷</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>洗刷已禁止</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>禁止深层洗刷</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>深层洗刷已禁止</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>禁止回填</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>PG 回填已推迟</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>禁止恢复</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>PG 恢复已推迟</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>逐位排序</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>使用逐位排序</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>老版本的快照已全部升级</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD 上的快照已全部转换完毕</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>在恢复时进行删除操作</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>在恢复时,而非对齐阶段进行删除</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>PG 日志硬限制</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>为 pg 日志长度添加硬限制</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>已更新 OSD 标志</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>除名</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>加入</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>停用</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>标记</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD 丢失</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>已标记丢失</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>清除</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>已清除</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>销毁</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>已销毁</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>删除</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PG</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>读字节数</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>写字节数</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>读请求数</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>写请求数</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>最大回填量</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>最大活跃恢复请求数</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>最大单次恢复操作数</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>恢复/回填操作间隔睡眠时间</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>任务</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>严重程度</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>已启动</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>已使用</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>空闲</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>正常</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>运行中</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>警报</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>未知</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>启用中</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>无文件系统</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>工作</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>待机</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/a</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>工作的守护进程</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>NFS Ganesha 服务的配置还没有完成。</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>传输</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS 用户</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFS 文件系统</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(继承自全局配置)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>继承自全局配置</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- 选择执行哪种类型的用户 ID 匿名访问 --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>没有可用的守护进程。</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>缓存模式</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>最少延迟赶出时间</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>最少延迟刷回时间</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>目标器最大字节数</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>目标器最大对象数</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>还没有任何应用标记</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>应用标记到了上限</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>一个存储池最多能有四个应用标记。</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>可用的字符为“_a-zA-Z0-9”</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>长度限制为 128 个字符</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>添加应用标记或根据其进行筛选</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>添加应用标记</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>纠删码配置</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>副本个数</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>最后修改时间</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>纠删码配置</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>CRUSH 规则集</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>存储桶</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>存储桶</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>用户</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>用户</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>作用范围</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>读权限</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>新建</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>系统角色</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>更新用户</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>继续</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>您被自动登出,因为您的角色有了变动。</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target> 各对象都被分割为数据块,分别存储于不同 OSD 。</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>计算各对象的编码块、并存储于不同 OSD 。\n编码块的数量等同于在不丢数据的前提下允许同时失效的 OSD 数量。</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>jerasure 插件是最通用、最灵活的插件,\n也是 Ceph 纠删码存储池的默认插件。</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>reed_sol_van 技术更灵活:它足以设置 k 和 m 值。 \ncauchy_good 技术更快,但你得谨慎地选择 packetsize 值。\nreed_sol_r6_op 、 liberation 、 blaum_roth 、 liber8tion 都是与 RAID6 等价的技术,\n它们只能配置为 m=2 。</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target> 以 bytes 大小的包为单位进行编码。\n确定合适的包尺寸很难, \njerasure 文档对此有很详细的描述。</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>用 jerasure 插件时,纠删码编码的对象存储在多个 OSD 上,\n丢失一个 OSD 的恢复过程需读取所有其他的 OSD 。\n比如 jerasure 的配置为 k=8 且 m=4 ,丢失一个 OSD 后需读取其他 11 个 OSD 才能恢复。\n\nlrc 纠删码插件创建的是局部校验块,这样只需较少的 OSD 即可恢复。\n比如 lrc 的配置为 k=8 、 m=4 且 l=4 ,它将为每四个 OSD 创建额外的校验块,\n当一个 OSD 丢失时,它只需四个 OSD 即可恢复,而不需要十一个。</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>把编码块和数据块分组为大小为 locality 的集合。\n比如, k=4 且 m=2 时,若设置 locality=3 ,将会分组为大小为三的两组,\n这样各组都能自行恢复,无需从另一组读数据块。</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>由 l 定义的块集合将按哪种 crush 桶类型存储。\n比如,若设置为 rack ,大小为 l 块的各组将被存入不同的机架,\n此值会被用于创建类似 step choose rack 的规则集。\n如果没设置,就不会这样分组。</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>isa 插件封装了 ISA 库。它只能运行在 Intel 处理器上。</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>ISA 插件包含两种 Reed Solomon 编码形式。\n设置为 reed_sol_van 表示用 Vandermonde 算法,设置为 cauchy 表示用 Cauchy 算法。</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>shec 插件封装了 multiple SHEC 库。\n与 Reed Solomon 编码相比,它能使 Ceph 更高效地恢复数据。</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target> 奇偶校验块数量,它们在各自的计算范围内包含了各数据块。\n此数值被用作持久性估值。\n例如,假设 c=2 ,就是说不丟数据的情况下可损失 2 个 OSD 。</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>规则集第一步所指向的 CRUSH 桶之名,\n如 step take default 。</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>确保两个编码块不会存在于同一故障域的桶里面。\n比如,假设故障域是 host ,就不会有两个编码块存储到同一主机;\n此值用于在规则集中创建类似 step chooseleaf host 的步骤。</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>使用 CRUSH 索引中的 crush 设备类名,\n将归置限制于特定类的设备(例如,ssd 或 hdd)。</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>设置纠删码插件所在目录。</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>允许所有操作</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>只允许不修改服务器端数据的操作</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>禁止读写,但是允许其他的操作</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>禁止读、写以及任何可能修改文件内容的操作</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>完全禁止访问</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- 选择优先级 --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>低</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>高</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>信息</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>过去 5 分钟</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>过去 15 分钟</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>过去 30 分钟</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>过去 1 小时(默认)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>过去 3 小时</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>过去 6 小时</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>过去 12 小时</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>过去 24 小时</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>昨天</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>今天</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>今天到现在为止</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>前天</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>过去 2 天</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>上周的今天</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>上个星期</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>本周</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>本周以来</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>过去 7 天</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>上个月</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>当月</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>本月以来</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>过去 30 天</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>过去 90 天</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>过去 6 个月</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>过去 1 年</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>去年</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>今年</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>今年以来</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>过去 2 年</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>过去 5 年</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>无选中项目。</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>取消选择</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>达到选择项数上限。</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>过滤标签</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>添加 badge</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>无可选项目。</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>克隆</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>复制</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>深层洗刷</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>销毁</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>展开</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>标记为停用</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>标记为加入</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>标记为丢失</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>标记为已除名</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>保护</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>重命名</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>恢复</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>移至回收站</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>解除保护</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>删除完成</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>克隆完成</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>复制完成</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>展开完成</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>已清除</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>已经把</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>回滚完成</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>是</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>否</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>服务质量 (QoS)</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>指定的每秒 IO 字节数上限。</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>指定的每秒 IO 操作次数上限。</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>读 BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>指定的每秒内读取的字节数上限。</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>读 IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>指定的每秒读操作次数上限。</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>写 BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>指定的每秒内写入的字节数上限。</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>写 IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>指定的每秒写操作次数上限。</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS 突发</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>指定的 IO 字节数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS 突发</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>指定的 IO 操作次数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>读 BPS 突发</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>指定的读取的字节数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>读 IOPS 突发</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>指定的读操作次数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>写 BPS 突发</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>指定的写入的字节数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>写 IOPS 突发</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>指定的写操作次数突发上限。</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>正在执行</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>执行</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>执行完毕</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>未知任务</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>正在创建</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>创建</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>正在更新</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>正在删除</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>正在克隆</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>克隆</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>正在复制</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>复制</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>正在展开</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>展开</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>正在回滚</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>回滚</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>正在把</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>把</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>已经把</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>无法找到映像。</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>正在把</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>把</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>正在清除</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>清除</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>所有存储池</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>因为包含同伴集群,无法禁用镜像功能</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},Avrn:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("aexS"),r=n("8Y7J"),i=n("iInd");let s=(()=>{class t{constructor(t,e){this.router=t,this.authStorageService=e}canActivate(t,e){return!!this.authStorageService.isLoggedIn()||(this.router.navigate(["/login"],{queryParams:{returnUrl:e.url}}),!1)}canActivateChild(t,e){return this.canActivate(t,e)}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t(r["ɵɵinject"](i.m),r["ɵɵinject"](a.a))},token:t,providedIn:"root"}),t})()},AvvY:function(t,e,n){!function(t){"use strict";t.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),monthsParseExact:!0,weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",LTS:"A h:mm:ss -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -നു",LLLL:"dddd, D MMMM YYYY, A h:mm -നു"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",ss:"%d സെക്കൻഡ്",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,meridiemHour:function(t,e){return 12===t&&(t=0),"രാത്രി"===e&&t>=4||"ഉച്ച കഴിഞ്ഞ്"===e||"വൈകുന്നേരം"===e?t+12:t},meridiem:function(t,e,n){return t<4?"രാത്രി":t<12?"രാവിലെ":t<17?"ഉച്ച കഴിഞ്ഞ്":t<20?"വൈകുന്നേരം":"രാത്രി"}})}(n("wd/R"))},AxL3:function(t,e){var n=!("undefined"==typeof window||!window.document||!window.document.createElement);t.exports=n},B55N:function(t,e,n){!function(t){"use strict";t.defineLocale("ja",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiemParse:/午前|午後/i,isPM:function(t){return"午後"===t},meridiem:function(t,e,n){return t<12?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:function(t){return t.week()<this.week()?"[来週]dddd LT":"dddd LT"},lastDay:"[昨日] LT",lastWeek:function(t){return this.week()<t.week()?"[先週]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";default:return t}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}})}(n("wd/R"))},BFxc:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("7o/Q"),r=n("4I5i"),i=n("EY2u");function s(t){return function(e){return 0===t?Object(i.b)():e.lift(new u(t))}}class u{constructor(t){if(this.total=t,this.total<0)throw new r.a}call(t,e){return e.subscribe(new o(t,this.total))}}class o extends a.a{constructor(t,e){super(t),this.total=e,this.ring=new Array,this.count=0}_next(t){const e=this.ring,n=this.total,a=this.count++;e.length<n?e.push(t):e[a%n]=t}_complete(){const t=this.destination;let e=this.count;if(e>0){const n=this.count>=this.total?this.total:this.count,a=this.ring;for(let r=0;r<n;r++){const r=e++%n;t.next(a[r])}}t.complete()}}},BJMh:function(t,e,n){var a=n("KFwg")(n("Wa4q"),"Promise");t.exports=a},BQkM:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return t+" IOPS"}}},BVg3:function(t,e,n){!function(t){"use strict";function e(t){return t%100==11||t%10!=1}function n(t,n,a,r){var i=t+" ";switch(a){case"s":return n||r?"nokkrar sekúndur":"nokkrum sekúndum";case"ss":return e(t)?i+(n||r?"sekúndur":"sekúndum"):i+"sekúnda";case"m":return n?"mínúta":"mínútu";case"mm":return e(t)?i+(n||r?"mínútur":"mínútum"):n?i+"mínúta":i+"mínútu";case"hh":return e(t)?i+(n||r?"klukkustundir":"klukkustundum"):i+"klukkustund";case"d":return n?"dagur":r?"dag":"degi";case"dd":return e(t)?n?i+"dagar":i+(r?"daga":"dögum"):n?i+"dagur":i+(r?"dag":"degi");case"M":return n?"mánuður":r?"mánuð":"mánuði";case"MM":return e(t)?n?i+"mánuðir":i+(r?"mánuði":"mánuðum"):n?i+"mánuður":i+(r?"mánuð":"mánuði");case"y":return n||r?"ár":"ári";case"yy":return e(t)?i+(n||r?"ár":"árum"):i+(n||r?"ár":"ári")}}t.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:n,ss:n,m:n,mm:n,h:"klukkustund",hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},BVkS:function(t,e,n){var a=n("2zzJ"),r=n("Eey9");t.exports=function(t,e){return e.length<2?t:a(t,r(e,0,-1))}},BkBO:function(t,e,n){var a=n("43VP");t.exports=function(t,e){var n=!0;return a(t,(function(t,a,r){return n=!!e(t,a,r)})),n}},Bs8V:function(t,e,n){var a=n("g6v/"),r=n("0eef"),i=n("XGwC"),s=n("/GqU"),u=n("wE6v"),o=n("UTVS"),l=n("DPsx"),d=Object.getOwnPropertyDescriptor;e.f=a?d:function(t,e){if(t=s(t),e=u(e,!0),l)try{return d(t,e)}catch(n){}if(o(t,e))return i(!r.f.call(t,e),t[e])}},ByF4:function(t,e,n){!function(t){"use strict";t.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",ss:"%d sekundir",m:"ein minuttur",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaður",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},C523:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("gk6K"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(t,e,n,a){this.el=t,this.renderer=e,this.treeDraggedElement=n,this.ngZone=a,this.dragEventHandler=this.onDrag.bind(this)}return t.prototype.ngAfterViewInit=function(){var t=this,e=this.el.nativeElement;this.ngZone.runOutsideAngular((function(){e.addEventListener("drag",t.dragEventHandler)}))},t.prototype.ngDoCheck=function(){this.renderer.setAttribute(this.el.nativeElement,"draggable",this.treeDragEnabled?"true":"false")},t.prototype.ngOnDestroy=function(){this.el.nativeElement.removeEventListener("drag",this.dragEventHandler)},t.prototype.onDragStart=function(t){t.dataTransfer.setData("text",t.target.id),this.treeDraggedElement.set(this.draggedElement),this.draggedElement.mouseAction&&this.draggedElement.mouseAction("dragStart",t)},t.prototype.onDrag=function(t){this.draggedElement.mouseAction&&this.draggedElement.mouseAction("drag",t)},t.prototype.onDragEnd=function(){this.draggedElement.mouseAction&&this.draggedElement.mouseAction("dragEnd"),this.treeDraggedElement.set(null)},i([Object(a.Input)("treeDrag"),s("design:type",Object)],t.prototype,"draggedElement",void 0),i([Object(a.Input)(),s("design:type",Object)],t.prototype,"treeDragEnabled",void 0),i([Object(a.HostListener)("dragstart",["$event"]),s("design:type",Function),s("design:paramtypes",[Object]),s("design:returntype",void 0)],t.prototype,"onDragStart",null),i([Object(a.HostListener)("dragend"),s("design:type",Function),s("design:paramtypes",[]),s("design:returntype",void 0)],t.prototype,"onDragEnd",null),i([Object(a.Directive)({selector:"[treeDrag]"}),s("design:paramtypes",[a.ElementRef,a.Renderer2,r.a,a.NgZone])],t)}()},C6Ij:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("DqMs"),i=n("/NlG"),s=n("GiVz"),u=n("SVse");n("AWcq"),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return p}));var o=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,[" for "])),(t()(),a["ɵeld"](2,0,null,null,0,"span",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,2,0,e.component.statusFor)}))}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"cd-alert-panel",[["type","info"]],null,null,null,r.b,r.a)),a["ɵdid"](1,114688,null,0,i.a,[s.a],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,4,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Retrieving data"])),(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,[". Please wait..."]))],(function(t,e){var n=e.component;t(e,1,0,"info"),t(e,5,0,n.statusFor)}),null)}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,[" for "])),(t()(),a["ɵeld"](2,0,null,null,0,"span",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,2,0,e.component.statusFor)}))}function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"cd-alert-panel",[["type","warning"]],null,null,null,r.b,r.a)),a["ɵdid"](1,114688,null,0,i.a,[s.a],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,4,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Displaying previously cached data"])),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,["."]))],(function(t,e){var n=e.component;t(e,1,0,"warning"),t(e,5,0,n.statusFor)}),null)}function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,[" for "])),(t()(),a["ɵeld"](2,0,null,null,0,"span",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,2,0,e.component.statusFor)}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,6,"cd-alert-panel",[["type","error"]],null,null,null,r.b,r.a)),a["ɵdid"](1,114688,null,0,i.a,[s.a],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,4,null,null,null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Could not load data"])),(t()(),a["ɵand"](16777216,null,null,1,null,h)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,[". Please check the cluster health."]))],(function(t,e){var n=e.component;t(e,1,0,"error"),t(e,5,0,n.statusFor)}),null)}function p(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](1,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,f)),a["ɵdid"](3,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](5,16384,null,0,u.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.status===n.vcs.ValueNone),t(e,3,0,n.status===n.vcs.ValueStale),t(e,5,0,n.status===n.vcs.ValueException)}),null)}},CFvb:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a={LEFT:37,UP:38,RIGHT:39,DOWN:40,ENTER:13,SPACE:32,CONTEXT_MENU:32}},CNMR:function(t,e,n){"use strict";n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return s})),n.d(e,"c",(function(){return o}));var a=n("mrSG"),r=n("8Y7J"),i=n("hpHm");class s{constructor(){this.type="warning",this.dismissible=!1,this.dismissOnTimeout=void 0}}let u=(()=>{class t{constructor(t,e){this.changeDetection=e,this.type="warning",this.dismissible=!1,this.isOpen=!0,this.onClose=new r.EventEmitter,this.onClosed=new r.EventEmitter,this.classes="",this.dismissibleChange=new r.EventEmitter,Object.assign(this,t),this.dismissibleChange.subscribe(t=>{this.classes=this.dismissible?"alert-dismissible":"",this.changeDetection.markForCheck()})}ngOnInit(){this.dismissOnTimeout&&setTimeout(()=>this.close(),parseInt(this.dismissOnTimeout,10))}close(){this.isOpen&&(this.onClose.emit(this),this.isOpen=!1,this.changeDetection.markForCheck(),this.onClosed.emit(this))}}return Object(a.__decorate)([Object(i.a)(),Object(a.__metadata)("design:type",Object)],t.prototype,"dismissible",void 0),t})();class o{static forRoot(){return{ngModule:o,providers:[s]}}}},CNUl:function(t,e,n){var a=n("XhiP");t.exports=function(t){var e=new t.constructor(t.byteLength);return new a(e).set(new a(t)),e}},CUJ1:function(t,e,n){var a=n("xAZD"),r=n("J9xi"),i=n("kna9"),s=n("MOZO"),u=n("77kF"),o=n("tpUd"),l=n("LJNh"),d=n("mOnh"),c=l((function(t,e){var n={};if(null==t)return n;var l=!1;e=a(e,(function(e){return e=s(e,t),l||(l=e.length>1),e})),u(t,d(t),n),l&&(n=r(n,7,o));for(var c=e.length;c--;)i(n,e[c]);return n}));t.exports=c},Cfvw:function(t,e,n){"use strict";var a=n("HDdC"),r=n("SeVD"),i=n("quSY"),s=n("kJWO"),u=n("jZKg"),o=n("Lhse"),l=n("c2HN"),d=n("I55L");function c(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[s.a]}(t))return function(t,e){return new a.a(n=>{const a=new i.a;return a.add(e.schedule(()=>{const r=t[s.a]();a.add(r.subscribe({next(t){a.add(e.schedule(()=>n.next(t)))},error(t){a.add(e.schedule(()=>n.error(t)))},complete(){a.add(e.schedule(()=>n.complete()))}}))})),a})}(t,e);if(Object(l.a)(t))return function(t,e){return new a.a(n=>{const a=new i.a;return a.add(e.schedule(()=>t.then(t=>{a.add(e.schedule(()=>{n.next(t),a.add(e.schedule(()=>n.complete()))}))},t=>{a.add(e.schedule(()=>n.error(t)))}))),a})}(t,e);if(Object(d.a)(t))return Object(u.a)(t,e);if(function(t){return t&&"function"==typeof t[o.a]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new a.a(n=>{const a=new i.a;let r;return a.add(()=>{r&&"function"==typeof r.return&&r.return()}),a.add(e.schedule(()=>{r=t[o.a](),a.add(e.schedule((function(){if(n.closed)return;let t,e;try{const n=r.next();t=n.value,e=n.done}catch(a){return void n.error(a)}e?n.complete():(n.next(t),this.schedule())})))})),a})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}(t,e):t instanceof a.a?t:new a.a(Object(r.a)(t))}n.d(e,"a",(function(){return c}))},ChqD:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},CjzT:function(t,e,n){!function(t){"use strict";var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;t.defineLocale("es-do",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},CoRJ:function(t,e,n){!function(t){"use strict";t.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}})}(n("wd/R"))},CoVI:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("2vnA"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(t,e){this.templateRef=t,this.viewContainer=e,this.templateBindings={}}return t.prototype.ngOnInit=function(){this.view=this.viewContainer.createEmbeddedView(this.templateRef),this.dispose&&this.dispose(),this.shouldDetach()&&this.view.detach(),this.autoDetect(this.view)},t.prototype.shouldDetach=function(){return this.treeMobxAutorun&&this.treeMobxAutorun.detach},t.prototype.autoDetect=function(t){this.dispose=Object(r.b)((function(){return t.detectChanges()}))},t.prototype.ngOnDestroy=function(){this.dispose&&this.dispose()},i([Object(a.Input)(),s("design:type",Object)],t.prototype,"treeMobxAutorun",void 0),i([Object(a.Directive)({selector:"[treeMobxAutorun]"}),s("design:paramtypes",[a.TemplateRef,a.ViewContainerRef])],t)}()},CqXF:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t){return e=>e.lift(new i(t))}class i{constructor(t){this.value=t}call(t,e){return e.subscribe(new s(t,this.value))}}class s extends a.a{constructor(t,e){super(t),this.value=e}_next(t){this.destination.next(this.value)}}},CslI:function(t,e,n){var a=n("LaC8"),r=n("+FhV"),i=n("x3F9"),s=Function.prototype.toString,u=Object.prototype.hasOwnProperty,o=s.call(Object);t.exports=function(t){if(!i(t)||"[object Object]"!=a(t))return!1;var e=r(t);if(null===e)return!0;var n=u.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&s.call(n)==o}},CwBR:function(t,e,n){var a=n("pMcL"),r=n("PHub"),i=n("0GLT"),s=a?a.isConcatSpreadable:void 0;t.exports=function(t){return i(t)||r(t)||!!(s&&t&&t[s])}},"D/JM":function(t,e,n){!function(t){"use strict";t.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),monthsParseExact:!0,weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",ss:"%d segundo",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},D0XW:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("3N8a");const r=new(n("IjjT").a)(a.a)},D4zM:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e){this.elementRef=t,this.renderer=e}ngOnInit(){this.renderer.setAttribute(this.elementRef.nativeElement,"tabindex","-1"),this.iElement=this.renderer.createElement("i"),this.renderer.addClass(this.iElement,"fa"),this.renderer.appendChild(this.elementRef.nativeElement,this.iElement),this.update()}getInputElement(){return document.getElementById(this.cdPasswordButton)}update(){const t=this.getInputElement();t&&"text"===t.type?(this.renderer.removeClass(this.iElement,"fa-eye"),this.renderer.addClass(this.iElement,"fa-eye-slash")):(this.renderer.removeClass(this.iElement,"fa-eye-slash"),this.renderer.addClass(this.iElement,"fa-eye"))}onClick(){const t=this.getInputElement();t.type="password"===t.type?"text":"password",this.update()}}},DH7j:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))()},"DKr+":function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={s:["thodde secondanim","thodde second"],ss:[t+" secondanim",t+" second"],m:["eka mintan","ek minute"],mm:[t+" mintanim",t+" mintam"],h:["eka voran","ek vor"],hh:[t+" voranim",t+" voram"],d:["eka disan","ek dis"],dd:[t+" disanim",t+" dis"],M:["eka mhoinean","ek mhoino"],MM:[t+" mhoineanim",t+" mhoine"],y:["eka vorsan","ek voros"],yy:[t+" vorsanim",t+" vorsam"]};return e?r[n][0]:r[n][1]}t.defineLocale("gom-latn",{months:"Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),monthsShort:"Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Aitar_Somar_Mongllar_Budvar_Brestar_Sukrar_Son'var".split("_"),weekdaysShort:"Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),weekdaysMin:"Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"A h:mm [vazta]",LTS:"A h:mm:ss [vazta]",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY A h:mm [vazta]",LLLL:"dddd, MMMM[achea] Do, YYYY, A h:mm [vazta]",llll:"ddd, D MMM YYYY, A h:mm [vazta]"},calendar:{sameDay:"[Aiz] LT",nextDay:"[Faleam] LT",nextWeek:"[Ieta to] dddd[,] LT",lastDay:"[Kal] LT",lastWeek:"[Fatlo] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%s",past:"%s adim",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}(er)/,ordinal:function(t,e){switch(e){case"D":return t+"er";default:case"M":case"Q":case"DDD":case"d":case"w":case"W":return t}},week:{dow:1,doy:4},meridiemParse:/rati|sokalli|donparam|sanje/,meridiemHour:function(t,e){return 12===t&&(t=0),"rati"===e?t<4?t:t+12:"sokalli"===e?t:"donparam"===e?t>12?t:t+12:"sanje"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"rati":t<12?"sokalli":t<16?"donparam":t<20?"sanje":"rati"}})}(n("wd/R"))},DNAf:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{constructor(t,e){this.customValidations={},this.i18n=e,this.empty=this.i18n("No items selected."),this.selectionLimit={tooltip:this.i18n("Deselect item to select again"),text:this.i18n("Selection limit reached")},this.filter=this.i18n("Filter tags"),this.add=this.i18n("Add badge"),this.noOptions=this.i18n("There are no items available."),a.merge(this,t)}}},DPsx:function(t,e,n){var a=n("g6v/"),r=n("0Dky"),i=n("zBJ4");t.exports=!a&&!r((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},DSvg:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("vkgz"),r=n("aexS"),i=n("8Y7J"),s=n("IheW"),u=n("iInd"),o=n("pL04");let l=(()=>{class t{constructor(t,e,n){this.authStorageService=t,this.http=e,this.router=n}check(t){return this.http.post("api/auth/check",{token:t})}login(t){return this.http.post("api/auth",t).pipe(Object(a.a)(t=>{this.authStorageService.set(t.username,t.permissions,t.sso,t.pwdExpirationDate,t.pwdUpdateRequired)}))}logout(t=null){return this.http.post("api/auth/logout",null).subscribe(e=>{this.authStorageService.remove(),this.router.navigate(["/login"],{skipLocationChange:!0}),t&&t(),window.location.replace(e.redirect_url)})}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](r.a),i["ɵɵinject"](s.c),i["ɵɵinject"](u.m))},token:t,providedIn:o.a}),t})()},Dd78:function(t,e,n){var a=n("qG07"),r=n("aT2Y"),i=n("Gf4A");t.exports=function(){this.size=0,this.__data__={hash:new a,map:new(i||r),string:new a}}},Dkky:function(t,e,n){!function(t){"use strict";t.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e)/,ordinal:function(t,e){switch(e){default:case"M":case"Q":case"D":case"DDD":case"d":return t+(1===t?"er":"e");case"w":case"W":return t+(1===t?"re":"e")}},week:{dow:1,doy:4}})}(n("wd/R"))},Dmvi:function(t,e,n){!function(t){"use strict";t.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},DoHr:function(t,e,n){!function(t){"use strict";var e={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"};t.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinal:function(t,n){switch(n){case"d":case"D":case"Do":case"DD":return t;default:if(0===t)return t+"'ıncı";var a=t%10;return t+(e[a]||e[t%100-a]||e[t>=100?100:null])}},week:{dow:1,doy:7}})}(n("wd/R"))},DqMs:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("IZUe"),s=n("MdoF"),u=n("CNMR");n("/NlG"),n("GiVz"),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return v}));var o=a["ɵcrt"]({encapsulation:0,styles:[[".alert-panel-icon[_ngcontent-%COMP%]{vertical-align:top;padding-right:.5em}.alert-panel-title[_ngcontent-%COMP%]{font-weight:700}"]],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"td",[["class","alert-panel-icon"],["rowspan","2"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](3,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpad"](4,1)],(function(t,e){var n=e.component,r=a["ɵinlineInterpolate"](2,"alert-",n.bootstrapClass," ",n.typeIcon,""),i=t(e,4,0,n.icons.large3x);t(e,3,0,r,i)}),null)}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"td",[["class","alert-panel-title"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.title)}))}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](3,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](5,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](6,0,null,null,3,"tr",[],null,null,null,null,null)),(t()(),a["ɵeld"](7,0,null,null,2,"td",[["class","alert-panel-text"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](9,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.showIcon),t(e,5,0,n.showTitle),t(e,9,0,a["ɵnov"](e.parent,6))}),null)}function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"td",[["class","alert-panel-icon"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"i",[["aria-hidden","true"]],[[8,"className",0]],null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,a["ɵinlineInterpolate"](2,"alert-",n.bootstrapClass," ",n.typeIcon,""))}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"td",[["class","alert-panel-title"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.title)}))}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function b(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,h)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](4,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](5,0,null,null,2,"td",[["class","alert-panel-text"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](7,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.showIcon),t(e,4,0,n.showTitle),t(e,7,0,a["ɵnov"](e.parent,6))}),null)}function m(t){return a["ɵvid"](0,[a["ɵncd"](null,0),(t()(),a["ɵand"](0,null,null,0))],null,null)}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,2,"button",[["autofocus",""],["class","btn btn-light tc_backButton"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.backAction.emit()&&a),a}),null,null)),a["ɵdid"](2,4210688,null,0,i.a,[a.ElementRef],{autofocus:[0,"autofocus"]},null),(t()(),a["ɵted"](-1,null,["Back"]))],(function(t,e){t(e,2,0,"")}),null)}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"alert",[],null,[[null,"onClose"]],(function(t,e,n){var a=!0;return"onClose"===e&&(a=!1!==t.component.onClose()&&a),a}),s.c,s.b)),a["ɵdid"](1,114688,null,0,u.a,[u.b,a.ChangeDetectorRef],{type:[0,"type"],dismissible:[1,"dismissible"]},{onClose:"onClose"}),(t()(),a["ɵeld"](2,0,null,0,3,"table",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,f)),a["ɵdid"](4,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["slim",2]],null,0,null,b)),(t()(),a["ɵand"](0,[["content",2]],null,0,null,m)),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](8,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,a["ɵinlineInterpolate"](1,"",n.bootstrapClass,""),n.dismissible),t(e,4,0,"normal"===n.size,a["ɵnov"](e,5)),t(e,8,0,n.backAction.observers.length>0)}),null)}},Dwqy:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("wd/R");class r{constructor(){}transform(t){return t?a(1e3*t).fromNow():"unknown"}}},DxQv:function(t,e,n){!function(t){"use strict";t.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"på dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",ss:"%d sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},Dzi0:function(t,e,n){!function(t){"use strict";t.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"LT [ngayong araw]",nextDay:"[Bukas ng] LT",nextWeek:"LT [sa susunod na] dddd",lastDay:"LT [kahapon]",lastWeek:"LT [noong nakaraang] dddd",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",ss:"%d segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(t){return t},week:{dow:1,doy:4}})}(n("wd/R"))},"E+lV":function(t,e,n){!function(t){"use strict";var e={words:{ss:["секунда","секунде","секунди"],m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(t,e){return 1===t?e[0]:t>=2&&t<=4?e[1]:e[2]},translate:function(t,n,a){var r=e.words[a];return 1===a.length?n?r[0]:r[1]:t+" "+e.correctGrammaticalCase(t,r)}};t.defineLocale("sr-cyrl",{months:"јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар".split("_"),monthsShort:"јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.".split("_"),monthsParseExact:!0,weekdays:"недеља_понедељак_уторак_среда_четвртак_петак_субота".split("_"),weekdaysShort:"нед._пон._уто._сре._чет._пет._суб.".split("_"),weekdaysMin:"не_по_ут_ср_че_пе_су".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){return["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",ss:e.translate,m:e.translate,mm:e.translate,h:e.translate,hh:e.translate,d:"дан",dd:e.translate,M:"месец",MM:e.translate,y:"годину",yy:e.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},E2fk:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return"[INF]"===t?"info":"[WRN]"===t?"warn":"[ERR]"===t?"err":""}}},E9XD:function(t,e,n){"use strict";var a=n("I+eb"),r=n("1Y/n").left,i=n("pkCn"),s=n("rkAj"),u=i("reduce"),o=s("reduce",{1:0});a({target:"Array",proto:!0,forced:!u||!o},{reduce:function(t){return r(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},EApP:function(t,e,n){"use strict";n.d(e,"a",(function(){return _})),n.d(e,"b",(function(){return d})),n.d(e,"c",(function(){return v})),n.d(e,"d",(function(){return u})),n.d(e,"e",(function(){return S})),n.d(e,"f",(function(){return N})),n.d(e,"g",(function(){return o})),n.d(e,"h",(function(){return w})),n.d(e,"i",(function(){return T})),n.d(e,"j",(function(){return y}));var a=n("8Y7J"),r=n("XNiG"),i=n("cUpR"),s=n("SVse");let u=class{};class o{constructor(t,e,n,a,i,s){this.toastId=t,this.config=e,this.message=n,this.title=a,this.toastType=i,this.toastRef=s,this._onTap=new r.a,this._onAction=new r.a,this.toastRef.afterClosed().subscribe(()=>{this._onAction.complete(),this._onTap.complete()})}triggerTap(){this._onTap.next(),this.config.tapToDismiss&&this._onTap.complete()}onTap(){return this._onTap.asObservable()}triggerAction(t){this._onAction.next(t)}onAction(){return this._onAction.asObservable()}}const l={maxOpened:0,autoDismiss:!1,newestOnTop:!0,preventDuplicates:!1,countDuplicates:!1,resetTimeoutOnDuplicate:!1,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},closeButton:!1,disableTimeOut:!1,timeOut:5e3,extendedTimeOut:1e3,enableHtml:!1,progressBar:!1,toastClass:"ngx-toastr",positionClass:"toast-top-right",titleClass:"toast-title",messageClass:"toast-message",easing:"ease-in",easeTime:300,tapToDismiss:!0,onActivateTick:!1,progressAnimation:"decreasing"},d=new a.InjectionToken("ToastConfig");class c{constructor(t,e){this.component=t,this.injector=e}attach(t,e){return this._attachedHost=t,t.attach(this,e)}detach(){const t=this._attachedHost;if(t)return this._attachedHost=void 0,t.detach()}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class f extends class{attach(t,e){return this._attachedPortal=t,this.attachComponentPortal(t,e)}detach(){this._attachedPortal&&this._attachedPortal.setAttachedHost(),this._attachedPortal=void 0,this._disposeFn&&(this._disposeFn(),this._disposeFn=void 0)}setDisposeFn(t){this._disposeFn=t}}{constructor(t,e,n){super(),this._hostDomElement=t,this._componentFactoryResolver=e,this._appRef=n}attachComponentPortal(t,e){const n=this._componentFactoryResolver.resolveComponentFactory(t.component);let a;return a=n.create(t.injector),this._appRef.attachView(a.hostView),this.setDisposeFn(()=>{this._appRef.detachView(a.hostView),a.destroy()}),e?this._hostDomElement.insertBefore(this._getComponentRootNode(a),this._hostDomElement.firstChild):this._hostDomElement.appendChild(this._getComponentRootNode(a)),a}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}let h=(()=>{let t=class{constructor(t){this._document=t}ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t=this._document.createElement("div");t.classList.add("overlay-container"),this._document.body.appendChild(t),this._containerElement=t}};return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t(Object(a["ɵɵinject"])(s.DOCUMENT))},token:t,providedIn:"root"}),t})();class g{constructor(t){this._portalHost=t}attach(t,e=!0){return this._portalHost.attach(t,e)}detach(){return this._portalHost.detach()}}let p=(()=>{let t=class{constructor(t,e,n,a){this._overlayContainer=t,this._componentFactoryResolver=e,this._appRef=n,this._document=a,this._paneElements=new Map}create(t,e){return this._createOverlayRef(this.getPaneElement(t,e))}getPaneElement(t="",e){return this._paneElements.get(e)||this._paneElements.set(e,{}),this._paneElements.get(e)[t]||(this._paneElements.get(e)[t]=this._createPaneElement(t,e)),this._paneElements.get(e)[t]}_createPaneElement(t,e){const n=this._document.createElement("div");return n.id="toast-container",n.classList.add(t),n.classList.add("toast-container"),e?e.getContainerElement().appendChild(n):this._overlayContainer.getContainerElement().appendChild(n),n}_createPortalHost(t){return new f(t,this._componentFactoryResolver,this._appRef)}_createOverlayRef(t){return new g(this._createPortalHost(t))}};return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t(Object(a["ɵɵinject"])(h),Object(a["ɵɵinject"])(a.ComponentFactoryResolver),Object(a["ɵɵinject"])(a.ApplicationRef),Object(a["ɵɵinject"])(s.DOCUMENT))},token:t,providedIn:"root"}),t})();class b{constructor(t){this._overlayRef=t,this.duplicatesCount=0,this._afterClosed=new r.a,this._activate=new r.a,this._manualClose=new r.a,this._resetTimeout=new r.a,this._countDuplicate=new r.a}manualClose(){this._manualClose.next(),this._manualClose.complete()}manualClosed(){return this._manualClose.asObservable()}timeoutReset(){return this._resetTimeout.asObservable()}countDuplicate(){return this._countDuplicate.asObservable()}close(){this._overlayRef.detach(),this._afterClosed.next(),this._manualClose.next(),this._afterClosed.complete(),this._manualClose.complete(),this._activate.complete(),this._resetTimeout.complete(),this._countDuplicate.complete()}afterClosed(){return this._afterClosed.asObservable()}isInactive(){return this._activate.isStopped}activate(){this._activate.next(),this._activate.complete()}afterActivate(){return this._activate.asObservable()}onDuplicate(t,e){t&&this._resetTimeout.next(),e&&this._countDuplicate.next(++this.duplicatesCount)}}class m{constructor(t,e){this._toastPackage=t,this._parentInjector=e}get(t,e,n){return t===o?this._toastPackage:this._parentInjector.get(t,e,n)}}let y=(()=>{let t=class{constructor(t,e,n,a,r){this.overlay=e,this._injector=n,this.sanitizer=a,this.ngZone=r,this.currentlyActive=0,this.toasts=[],this.index=0,this.toastrConfig=Object.assign({},t.default,t.config),t.config.iconClasses&&(this.toastrConfig.iconClasses=Object.assign({},t.default.iconClasses,t.config.iconClasses))}show(t,e,n={},a=""){return this._preBuildNotification(a,t,e,this.applyConfig(n))}success(t,e,n={}){return this._preBuildNotification(this.toastrConfig.iconClasses.success||"",t,e,this.applyConfig(n))}error(t,e,n={}){return this._preBuildNotification(this.toastrConfig.iconClasses.error||"",t,e,this.applyConfig(n))}info(t,e,n={}){return this._preBuildNotification(this.toastrConfig.iconClasses.info||"",t,e,this.applyConfig(n))}warning(t,e,n={}){return this._preBuildNotification(this.toastrConfig.iconClasses.warning||"",t,e,this.applyConfig(n))}clear(t){for(const e of this.toasts)if(void 0!==t){if(e.toastId===t)return void e.toastRef.manualClose()}else e.toastRef.manualClose()}remove(t){const e=this._findToast(t);if(!e)return!1;if(e.activeToast.toastRef.close(),this.toasts.splice(e.index,1),this.currentlyActive=this.currentlyActive-1,!this.toastrConfig.maxOpened||!this.toasts.length)return!1;if(this.currentlyActive<this.toastrConfig.maxOpened&&this.toasts[this.currentlyActive]){const t=this.toasts[this.currentlyActive].toastRef;t.isInactive()||(this.currentlyActive=this.currentlyActive+1,t.activate())}return!0}findDuplicate(t,e,n){for(const a of this.toasts)if(a.message===t)return a.toastRef.onDuplicate(e,n),a;return null}applyConfig(t={}){return Object.assign({},this.toastrConfig,t)}_findToast(t){for(let e=0;e<this.toasts.length;e++)if(this.toasts[e].toastId===t)return{index:e,activeToast:this.toasts[e]};return null}_preBuildNotification(t,e,n,a){return a.onActivateTick?this.ngZone.run(()=>this._buildNotification(t,e,n,a)):this._buildNotification(t,e,n,a)}_buildNotification(t,e,n,r){if(!r.toastComponent)throw new Error("toastComponent required");const i=this.findDuplicate(e,this.toastrConfig.resetTimeoutOnDuplicate&&r.timeOut>0,this.toastrConfig.countDuplicates);if(e&&this.toastrConfig.preventDuplicates&&null!==i)return i;this.previousToastMessage=e;let s=!1;this.toastrConfig.maxOpened&&this.currentlyActive>=this.toastrConfig.maxOpened&&(s=!0,this.toastrConfig.autoDismiss&&this.clear(this.toasts[0].toastId));const u=this.overlay.create(r.positionClass,this.overlayContainer);this.index=this.index+1;let l=e;e&&r.enableHtml&&(l=this.sanitizer.sanitize(a.SecurityContext.HTML,e));const d=new b(u),f=new o(this.index,r,l,n,t,d),h=new m(f,this._injector),g=new c(r.toastComponent,h),p=u.attach(g,this.toastrConfig.newestOnTop);d.componentInstance=p._component;const y={toastId:this.index,message:e||"",toastRef:d,onShown:d.afterActivate(),onHidden:d.afterClosed(),onTap:f.onTap(),onAction:f.onAction(),portal:p};return s||(this.currentlyActive=this.currentlyActive+1,setTimeout(()=>{y.toastRef.activate()})),this.toasts.push(y),y}};return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t(Object(a["ɵɵinject"])(d),Object(a["ɵɵinject"])(p),Object(a["ɵɵinject"])(a.INJECTOR),Object(a["ɵɵinject"])(i.b),Object(a["ɵɵinject"])(a.NgZone))},token:t,providedIn:"root"}),t})(),v=class{constructor(t,e,n){this.toastrService=t,this.toastPackage=e,this.ngZone=n,this.width=-1,this.toastClasses="",this.state={value:"inactive",params:{easeTime:this.toastPackage.config.easeTime,easing:"ease-in"}},this.message=e.message,this.title=e.title,this.options=e.config,this.originalTimeout=e.config.timeOut,this.toastClasses=`${e.toastType} ${e.config.toastClass}`,this.sub=e.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=e.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=e.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=e.toastRef.countDuplicate().subscribe(t=>{this.duplicatesCount=t})}get displayStyle(){if("inactive"===this.state.value)return"none"}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state=Object.assign({},this.state,{value:"active"}),!0!==this.options.disableTimeOut&&"timeOut"!==this.options.disableTimeOut&&this.options.timeOut&&(this.outsideTimeout(()=>this.remove(),this.options.timeOut),this.hideTime=(new Date).getTime()+this.options.timeOut,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}updateProgress(){if(0===this.width||100===this.width||!this.options.timeOut)return;const t=(new Date).getTime();this.width=(this.hideTime-t)/this.options.timeOut*100,"increasing"===this.options.progressAnimation&&(this.width=100-this.width),this.width<=0&&(this.width=0),this.width>=100&&(this.width=100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state=Object.assign({},this.state,{value:"active"}),this.outsideTimeout(()=>this.remove(),this.originalTimeout),this.options.timeOut=this.originalTimeout,this.hideTime=(new Date).getTime()+(this.options.timeOut||0),this.width=-1,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10)}remove(){"removed"!==this.state.value&&(clearTimeout(this.timeout),this.state=Object.assign({},this.state,{value:"removed"}),this.outsideTimeout(()=>this.toastrService.remove(this.toastPackage.toastId),+this.toastPackage.config.easeTime))}tapToast(){"removed"!==this.state.value&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){"removed"!==this.state.value&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width=0)}delayedHideToast(){!0!==this.options.disableTimeOut&&"extendedTimeOut"!==this.options.disableTimeOut&&0!==this.options.extendedTimeOut&&"removed"!==this.state.value&&(this.outsideTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=(new Date).getTime()+(this.options.timeOut||0),this.width=-1,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}outsideTimeout(t,e){this.ngZone?this.ngZone.runOutsideAngular(()=>this.timeout=setTimeout(()=>this.runInsideAngular(t),e)):this.timeout=setTimeout(()=>t(),e)}outsideInterval(t,e){this.ngZone?this.ngZone.runOutsideAngular(()=>this.intervalId=setInterval(()=>this.runInsideAngular(t),e)):this.intervalId=setInterval(()=>t(),e)}runInsideAngular(t){this.ngZone?this.ngZone.run(()=>t()):t()}};var x;const _=Object.assign({},l,{toastComponent:v});let T=x=class{static forRoot(t={}){return{ngModule:x,providers:[{provide:d,useValue:{default:_,config:t}}]}}},w=class{static forRoot(t={}){return{ngModule:T,providers:[{provide:d,useValue:{default:l,config:t}}]}}};var O;let S=class{constructor(t,e,n){this.toastrService=t,this.toastPackage=e,this.appRef=n,this.width=-1,this.toastClasses="",this.state="inactive",this.message=e.message,this.title=e.title,this.options=e.config,this.originalTimeout=e.config.timeOut,this.toastClasses=`${e.toastType} ${e.config.toastClass}`,this.sub=e.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=e.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=e.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=e.toastRef.countDuplicate().subscribe(t=>{this.duplicatesCount=t})}get displayStyle(){if("inactive"===this.state)return"none"}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state="active",!0!==this.options.disableTimeOut&&"timeOut"!==this.options.disableTimeOut&&this.options.timeOut&&(this.timeout=setTimeout(()=>{this.remove()},this.options.timeOut),this.hideTime=(new Date).getTime()+this.options.timeOut,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))),this.options.onActivateTick&&this.appRef.tick()}updateProgress(){if(0===this.width||100===this.width||!this.options.timeOut)return;const t=(new Date).getTime();this.width=(this.hideTime-t)/this.options.timeOut*100,"increasing"===this.options.progressAnimation&&(this.width=100-this.width),this.width<=0&&(this.width=0),this.width>=100&&(this.width=100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state="active",this.options.timeOut=this.originalTimeout,this.timeout=setTimeout(()=>this.remove(),this.originalTimeout),this.hideTime=(new Date).getTime()+(this.originalTimeout||0),this.width=-1,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))}remove(){"removed"!==this.state&&(clearTimeout(this.timeout),this.state="removed",this.timeout=setTimeout(()=>this.toastrService.remove(this.toastPackage.toastId)))}tapToast(){"removed"!==this.state&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){"removed"!==this.state&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width=0)}delayedHideToast(){!0!==this.options.disableTimeOut&&"extendedTimeOut"!==this.options.disableTimeOut&&0!==this.options.extendedTimeOut&&"removed"!==this.state&&(this.timeout=setTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=(new Date).getTime()+(this.options.timeOut||0),this.width=-1,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10)))}};const I=Object.assign({},l,{toastComponent:S});let N=O=class{static forRoot(t={}){return{ngModule:O,providers:[{provide:d,useValue:{default:I,config:t}}]}}}},EEJc:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("ajRT");n.d(e,"b",(function(){return i})),n.d(e,"c",(function(){return s})),n.d(e,"a",(function(){return o}));var i=a["ɵcrt"]({encapsulation:0,styles:[[".modal-header[_ngcontent-%COMP%]{border-bottom:1px solid #d1d1d1;background-color:#f5f5f5;border-radius:5px 5px 0 0}  .modal-footer{border-bottom:1px solid #d1d1d1;background-color:#f5f5f5;border-radius:0 0 5px 5px}  .modal-body{max-height:70vh;overflow-y:auto;overflow-x:hidden}"]],data:{}});function s(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"div",[["class","modal-header"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"h4",[["class","modal-title float-left"]],null,null,null,null,null)),a["ɵncd"](null,0),(t()(),a["ɵeld"](3,0,null,null,2,"button",[["aria-label","Close"],["class","close float-right"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.close()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["×"])),a["ɵncd"](null,1)],null,null)}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-modal",[],null,null,null,s,i)),a["ɵdid"](1,49152,null,0,r.a,[],null,null)],null,null)}var o=a["ɵccf"]("cd-modal",r.a,u,{modalRef:"modalRef"},{hide:"hide"},[".modal-title",".modal-content"])},ENF9:function(t,e,n){"use strict";var a,r=n("2oRo"),i=n("4syw"),s=n("8YOa"),u=n("bWFh"),o=n("rKzb"),l=n("hh1v"),d=n("afO8").enforce,c=n("f5p1"),f=!r.ActiveXObject&&"ActiveXObject"in r,h=Object.isExtensible,g=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},p=t.exports=u("WeakMap",g,o);if(c&&f){a=o.getConstructor(g,"WeakMap",!0),s.REQUIRED=!0;var b=p.prototype,m=b.delete,y=b.has,v=b.get,x=b.set;i(b,{delete:function(t){if(l(t)&&!h(t)){var e=d(this);return e.frozen||(e.frozen=new a),m.call(this,t)||e.frozen.delete(t)}return m.call(this,t)},has:function(t){if(l(t)&&!h(t)){var e=d(this);return e.frozen||(e.frozen=new a),y.call(this,t)||e.frozen.has(t)}return y.call(this,t)},get:function(t){if(l(t)&&!h(t)){var e=d(this);return e.frozen||(e.frozen=new a),y.call(this,t)?v.call(this,t):e.frozen.get(t)}return v.call(this,t)},set:function(t,e){if(l(t)&&!h(t)){var n=d(this);n.frozen||(n.frozen=new a),y.call(this,t)?x.call(this,t,e):n.frozen.set(t,e)}else x.call(this,t,e);return this}})}},EOgW:function(t,e,n){!function(t){"use strict";t.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.".split("_"),monthsParseExact:!0,weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา H:mm",LLLL:"วันddddที่ D MMMM YYYY เวลา H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(t){return"หลังเที่ยง"===t},meridiem:function(t,e,n){return t<12?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",ss:"%d วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}})}(n("wd/R"))},ES0t:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("8Y7J"),r=n("KOzp"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:0,styles:[".bs3.popover-top[_nghost-%COMP%] {\n      margin-bottom: 10px;\n    }\n    .bs3.popover.top[_nghost-%COMP%] > .arrow[_ngcontent-%COMP%] {\n      margin-left: -2px;\n    }\n    .bs3.popover.top[_nghost-%COMP%] {\n      margin-bottom: 10px;\n    }\n    .popover.bottom[_nghost-%COMP%] > .arrow[_ngcontent-%COMP%] {\n      margin-left: -4px;\n    }\n    .bs3.bs-popover-left[_nghost-%COMP%] {\n      margin-right: .5rem;\n    }\n    .bs3.bs-popover-right[_nghost-%COMP%]   .arrow[_ngcontent-%COMP%], .bs3.bs-popover-left[_nghost-%COMP%]   .arrow[_ngcontent-%COMP%]{\n      margin: .3rem 0;\n    }"],data:{}});function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"h3",[["class","popover-title popover-header"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.title)}))}function o(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,0,"div",[["class","popover-arrow arrow"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,u)),a["ɵdid"](2,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](3,0,null,null,1,"div",[["class","popover-content popover-body"]],null,null,null,null,null)),a["ɵncd"](null,0)],(function(t,e){t(e,2,0,e.component.title)}),null)}function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"popover-container",[["role","tooltip"],["style","display:block;"]],[[8,"className",0],[2,"show",null],[2,"bs3",null]],null,null,o,s)),a["ɵdid"](1,49152,null,0,r.b,[r.a],null,null)],null,(function(t,e){t(e,0,0,"popover in popover-"+a["ɵnov"](e,1).placement+" bs-popover-"+a["ɵnov"](e,1).placement+" "+a["ɵnov"](e,1).placement+" "+a["ɵnov"](e,1).containerClass,!a["ɵnov"](e,1).isBs3,a["ɵnov"](e,1).isBs3)}))}var d=a["ɵccf"]("popover-container",r.b,l,{placement:"placement",title:"title"},{},["*"])},EWmY:function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},EY2u:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var a=n("HDdC");const r=new a.a(t=>t.complete());function i(t){return t?function(t){return new a.a(e=>t.schedule(()=>e.complete()))}(t):r}},Eey9:function(t,e){t.exports=function(t,e,n){var a=-1,r=t.length;e<0&&(e=-e>r?0:r+e),(n=n>r?r:n)<0&&(n+=r),r=e>n?0:n-e>>>0,e>>>=0;for(var i=Array(r);++a<r;)i[a]=t[a+e];return i}},EgGo:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("SVse"),r=n("sne2");class i{constructor(t){this.base=t}static concatURLSegments(t){return t.reduce(a.Location.joinWithSlash)}static buildURL(t,...e){return i.concatURLSegments([...t?["/"]:[],...e])}getURL(t,e=!0,...n){return i.buildURL(e,this.base,t,...n)}getCreate(t=!0){return this.getURL(r.e.CREATE,t)}getCreateFrom(t,e=!0){return this.getURL(r.e.CREATE,e,t)}getDelete(t=!0){return this.getURL(r.e.DELETE,t)}getEdit(t,e=!0){return this.getURL(r.e.EDIT,e,t)}getUpdate(t,e=!0){return this.getURL(r.e.UPDATE,e,t)}getAdd(t=!0){return this.getURL(r.e.ADD,t)}getRemove(t=!0){return this.getURL(r.e.REMOVE,t)}getRecreate(t,e=!0){return this.getURL(r.e.RECREATE,e,t)}}},EiPl:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="de-DE">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Navigation umschalten</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Dashboard</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Cluster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hosts</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Verzeichnis</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitore</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Services</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSDs</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Konfiguration</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH-Zuordnung</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Manager-Module</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Protokolle</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Überwachung</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pools</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Block</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Images</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Spiegelung</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Dateisysteme</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Objektgateway</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemons</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Benutzer</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Buckets</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Daten \n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> für\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>werden abgerufen. Bitte warten...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Zuvor zwischengespeicherte Daten\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  für \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/> werden angezeigt.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Daten\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> für\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/> konnten nicht geladen werden.\n  Prüfen Sie die Clusterintegrität.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Benachrichtigungen löschen</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Benachrichtigungen entfernen</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Dauer:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>Es sind keine Benachrichtigungen verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Aufträge und Benachrichtigungen</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Sprache auswählen</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Bereichsdaten werden geladen...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Lesen Sie die\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zum\n  Konfigurieren und Aktivieren der Überwachungsfunktion.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Das Grafana-Dashboard ist nicht vorhanden. In der\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> wird beschrieben,\n  wie Grafana Dashboards hinzugefügt werden.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Grafana-Zeitauswahl</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Einstellungen für Zurücksetzungen</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Aktualisieren</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Entfernen Sie den aktuellen Konfigurationswert. Stattdessen wird der Standard-Konfigurationswert übernommen und verwendet.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu hoch! Er darf nicht größer als \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu niedrig! Er darf nicht kleiner als \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Zurück</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Das Passwort läuft in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>weniger als 1 \n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>Tag ab. Klicken Sie \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> hier \n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>, um es jetzt zu ändern.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Das Passwort läuft in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>Tag(en) ab. Klicken Sie \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> hier \n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>, um es jetzt zu ändern.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Das Modul "Orchestrator" ist nicht verfügbar. Lesen Sie die \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation \n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>zum Konfigurieren und Aktivieren dieses Moduls.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Daten konnten nicht geladen werden.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Filter löschen</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>ausgewählt</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>gefunden</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>insgesamt</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Name</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Beschreibung</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Detaillierte Beschreibung</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Standard</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Daemon-Standard</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Werte</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Standard --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>wahr</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>falsch</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu hoch! Er darf nicht größer als \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu niedrig! Er darf nicht kleiner als \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Speichern</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>CRUSH-Betrachter</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Laden...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Hostname</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Dies ist ein Pflichtfeld.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>Der ausgewählte Hostname wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Sind Sie sicher dass Sie die ausgewählten Einträge \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> möchten?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Sind Sie sicher dass Sie die ausgewählten \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> möchten?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Ja, ich bin sicher.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Abbrechen</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Schließen</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Liste mit Hosts</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Gesamtleistung</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Laufwerke</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Keine Einträge gefunden</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Clusterprotokolle</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Revisionsprotokoll</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priorität:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Schlüsselwort:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Datum:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datumsauswahl</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Zeitraum:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Konfiguration wird geladen...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Die Konfiguration konnte nicht geladen werden.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Manager-Modul bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Der eingegebene Wert ist kein gültiger UUID, z. B.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Der eingegebene Wert muss eine gültige IP-Adresse sein.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu hoch! Er muss kleiner als \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/> sein oder diesem Wert entsprechen.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu niedrig! Er muss größer als \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/> sein oder diesem Wert entsprechen.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Der eingegebene Wert muss eine Zahl sein.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Der eingegebene Wert muss eine Zahl oder Dezimalzahl sein.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Aktualisiere</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Status</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>Cluster-ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>Monmap geändert</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>Monmap-Epoche</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>erforderliche Verbindung</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>erforderliche Überwachung</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>In Quorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Nicht in Quorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>Vorschau der OSD-Erstellung</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> Laufwerke\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Löschen</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Geteilte Laufwerke</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL Slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>Wie viele OSDs pro WAL-Laufwerk.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Geben Sie 0 an, um das Orchestrator-Backend entscheiden zu lassen.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Der Wert sollte größer als oder gleich 0 sein</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB Slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>Wie viele OSDs pro DB-Laufwerk.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Funktionen</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Vorschau</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Clusterweite OSD-Flags</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Absenden</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Erweitert...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Erweiterte Konfigurationsoptionen</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD-Wiederherstellungspriorität</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorität</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Prioritätswerte anpassen</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Dies ist ein Pflichtfeld!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu hoch! Er darf nicht größer als \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>Der eingegebene Wert ist zu niedrig! Er darf nicht kleiner als \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Der Wert muss zwischen 0 und 1 liegen.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Neu gewichten</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Tief } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {tief } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSD-Liste</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Aktive Warnungen</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>Alle Warnungen</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Wählen Sie das zu vergleichende Attribut --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Wert</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Regulären Ausdruck verwenden</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Löschen</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Das Bearbeiten einer Stummschaltung löscht die Vorherige und legt eine neue Stummschaltung an.</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Ersteller</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Kommentar</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Startzeit</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>Wenn die Startzeit in der Vergangenheit liegt, wird die Erstellungszeit verwendet</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Dauer</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>Ende</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Integrität</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistiken</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Lesen Sie die \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zum\n  Konfigurieren und Aktivieren der Verwaltungsfunktion für NFS Ganesha.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Clients</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Jeder Client hat Zugriff</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Adressen</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Pflichtfeld</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Muss mindestens einen kommagetrennten Wert enthalten</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Beispielsweise:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Zugriffstyp</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Clients hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Kein Cluster verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Cluster auswählen --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Daemon hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Speicher-Back-End</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Keine Datenpools verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Speicher-Back-End auswählen --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Objektgatewaybenutzer</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Keine Benutzer verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Objektgatewaybenutzer auswählen --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS-Benutzer-ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- keine Clients verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- cephx-Client auswählen --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS-Name</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- Kein CephFS Dateisystem verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- CephFS Dateisystem auswählen --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Sicherheitsbezeichnung</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Sicherheitsbezeichnung aktivieren</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS-Pfad</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Pfad muss mit einem \'/\' beginnen und kann von einem Wort gefolgt werden</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Neues Verzeichnis wird erstellt</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Pfad</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Pfad darf nur ein einzelner \'/\' oder ein Wort sein</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Neuer Bucket wird erstellt</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS-Protokoll</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS-Tag</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternativer Zugriff für \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>-Mountpunkte (dürfen keinen führenden / enthalten)\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Clients können Unterverzeichnisse möglicherweise nicht mounten (d. h. wenn der Pfad = foo ist, kann der Client foo/baz möglicherweise nicht mounten).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Wenn unterschiedliche Tag-Optionen verwendet werden, wird derselbe Pfad möglicherweise mehrfach exportiert.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>Die Position dieses \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>-Exports\n                auf dem \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo-Dateisystem\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (muss eindeutig sein).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Wenn unterschiedliche Pseudo-Optionen verwendet werden, wird derselbe Pfad möglicherweise mehrfach exportiert.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Kein Zugriffstyp verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Zugriffstyp auswählen --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>Das NFS-Backend für das Objektgateway besitzt eine Reihe von\n Einschränkungen, die Schreibvorgänge von Anwendungen auf diese\n Freigaben ernsthaft beeinträchtigen. Bitte konsultieren Sie die\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> Dokumentation \n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> für weitere Informationen, bevor Sie den Schreibzugriff aktivieren.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Kein Squash verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Durchzuführende Benutzer-ID-Squashing-Art auswählen --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Transportprotokoll</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Altes Passwort</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>Das alte und neue Passwort müssen unterschiedlich sein.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>Neues Passwort</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Neues Passwort bestätigen</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Passwortbestätigung stimmt nicht mit dem neuen Passwort überein.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Bitte legen Sie ein neues Passwort fest.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>Sie werden anschließend auf die Login-Seite weitergeleitet.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Willkommen bei Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Benutzername ist erforderlich</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Passwort ist erforderlich</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Anmeldung</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Der Benutzer ist in Ceph leider nicht enthalten.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Kehren Sie zur \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Anmeldeseite\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zurück. Sie werden vom Identitätsanbieter abgemeldet, wenn Sie versuchen, sich erneut anzumelden.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Verboten</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Leider sind Sie nicht berechtigt, den gewünschten Inhalt anzuzeigen.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Leider konnte der gewünschte Inhalt nicht gefunden werden.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Weder Hostname noch OSD ID angegeben</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>bestanden</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>fehlgeschlagen</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Laufwerksinformationen</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>Keine SMART-Daten für dieses Laufwerk verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART-Daten werden geladen.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD-Konfiguration</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Entfernen Sie den lokalen Konfigurationswert. Stattdessen wird der übergeordnete Konfigurationswert übernommen und verwendet.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Der Mindestwert lautet 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Pool-Liste</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Der Name darf nur alphanumerische Zeichen, Bindestriche und Unterstriche enthalten.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Der ausgewählte Erasure-Coding-Profilname wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Laufwerksklasse</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plugin</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Datenblöcke (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Muss größer oder gleich 2 sein.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Datenblöcke für die Codierung (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Muss größer oder gleich 1 sein.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Dauerhaftigkeitsschätzung (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Standort (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Crush-Ausfalldomäne</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Crush-Standort</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Keine</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Technik</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Paketgröße</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Crush-Stamm</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Crush-Geräteklasse</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>beliebig</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Verzeichnis</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Name...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Der ausgewählte Poolname wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Pooltyp</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Pooltyp auswählen --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoskalierung</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Platzierungsgruppen</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Es wird mindestens eine Platzierungsgruppe benötigt.</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Ihr Cluster kann nicht so viele Platzierungsgruppen verarbeiten. Berechnen Sie die benötigte Anzahl an Platzierungsgruppen.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Hilfe zur Berechnung</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>Die aktuellen Einstellungen für die Platzierungsgruppen wurden für Sie berechnet.\n                    Stellen Sie vor dem Senden sicher, dass die Werte Ihren Anforderungen entsprechen.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Reproduzierte Größe</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>Die angegebene Größe liegt außerhalb des Bereichs. Gültige Werte liegen zwischen\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> und \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flags</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC-Überschreibungen</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Anwendungen</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Erasure-Coding-Profil</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Kein Erasure-Coding-Profil verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Erasure-Coding-Profil auswählen --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Crush-Regelsatz</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>Ein neuer CRUSH Regelsatz wird implizit erstellt.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>Keine Regeln vorhanden.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Crush-Regel auswählen --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Crush-Regel</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Crush-Schritte</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Komprimierung</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Modus</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algorithmus</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Kein Komprimierungsalgorithmus für Erasure-Coding verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Minimale Blobgröße</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>z. B. 128KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Wert sollte größer als 0 sein</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Wert sollte niedriger als die maximale Blobgröße sein</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Maximale Blobgröße</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>z. B. 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Wert sollte größer als die minimale Blobgröße sein</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Verhältnis</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Komprimierungsverhältnis</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Wert sollte zwischen 0,0 und 1,0 liegen</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Kontingente</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max. Bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Lassen Sie das Feld leer oder geben Sie 0 an, um dieses Quota zu deaktivieren.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>Ein gültiges Kontingent sollte größer als 0 sein.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>z. B. 10GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max. Objekte</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>Der Wert sollte größer als oder gleich 0 sein</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Details</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Leistungsdetails</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Details zu den Cache-Ebenen</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Bootstrap-Token erstellen</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site-Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>Mindestens ein Pool ist erforderlich.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Erzeugen</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Erzeugtes Token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Bootstrap-Token importieren</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Richtung</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>Der Token ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Site-Namen bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site-Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Image in Papierkorb verschieben</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Schutz läuft ab am</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NICHT GESCHÜTZT</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Falsches Datumsformat. Verwenden Sie "TT.MM.JJJJ HH:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>Schutz ist bereits abgelaufen. Wählen Sie ein künftiges Datum aus oder lassen Sie es leer.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Image verschieben</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Muss grösser oder gleich \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Muss kleiner oder gleich \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/> sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Übersicht</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Ziele</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Ermittlungsauthentifizierung</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Benutzer</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Benutzernamen müssen zwischen 8 und 64 Zeichen lang sein und\n              dürfen nur Buchstaben, \'.\', \'@\', \'-\', \'_\' oder \':\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Passwort</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Gemeinsamer Benutzer</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Gemeinsames Passwort</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Lesen Sie die\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zum\n  Konfigurieren und Aktivieren der Verwaltungsfunktion für iSCSI-Ziele.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Verfügbare Informationen:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>iSCSI-Ziele nicht verfügbar</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Ermittlungsauthentifizierung</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Nur für RBD-Images verfügbar, bei denen \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> aktiviert ist\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Datenpool</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Erstellt</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Größe</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objekte</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Objektgröße</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Bereitgestellt</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>n. v.</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Bereitgestellt gesamt</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Striping-Einheit</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Striping-Anzahl</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Übergeordnet</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Präfix für Blockname</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Reihenfolge</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Snapshots</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Image</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Diese Einstellung überschreibt den globalen Wert</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Dies ist der globale Wert. Kein Wert für diese Option wurde für dieses Image festgelegt.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' und \'@\' sind nicht zulässig.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Keine rbd-Pools verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Pool auswählen --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- Keine Namensräume verfügbar --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Namensraum auswählen --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Dedizierten Datenpool verwenden</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Datenpool</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Dedizierter Pool zur Speicherung von RBD-Objektdaten.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Sie müssen die Größe erhöhen.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Erweitert</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Striping</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Stripe-Einheit</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Stripe-Einheit auswählen --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Dies ist ein Pflichtfeld, da eine Stripe-Anzahl definiert wurde!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>Die Stripe-Einheit ist größer als die Objektgröße.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Stripe-Anzahl</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Dies ist ein Pflichtfeld, da eine Stripe-Einheit definiert wurde!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Die Stripe-Anzahl muss größer als 0 sein.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Namensraum anlegen</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namensraum existiert bereits.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Sie sind dabei, ein Rollback durchzuführen</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Papierkorb bereinigen</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Alle</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pool:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Poolname...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Image wiederherstellen</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Zum Wiederherstellen</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>Neuen Namen des Images eingeben und klicken</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Neuer Name</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Abgelaufen am</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Geschützt bis</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>Dieses Image ist geschützt bis \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSI-Topologie</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Konfigurieren</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Eine Änderung dieser Parameter von ihren Standardwerten ist in der Regel nicht erforderlich.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Bezeichner</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Einstellungen</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Bestätigen</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Erweiterte Einstellungen</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>Ziel-IQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN hat ein fehlerhaftes Muster.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>Eine IQN hat die folgende Notation \n\'iqn.$jahr-$monat.$umkehradresse:$definierterName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Zum Beispiel: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Weitere Informationen</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Erweiterte Einstellungen bei diesem Ziel wurden geändert.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portale</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Portal hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>Es sind mindestens \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> Gateways erforderlich.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Einstellungen bei diesem Image wurden geändert.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Image hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL-Authentifizierung</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Initiatoren</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Initiator</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>Client-IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>Initiator-IQN muss eindeutig sein.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Benutzernamen müssen zwischen 8 und 64 Zeichen lang sein und\n                        dürfen nur Buchstaben, \'.\', \'@\', \'-\', \'_\' oder \':\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwörter müssen zwischen 12 und 16 Zeichen lang sein\n              und dürfen nur Buchstaben, \'@\', \'-\', \'_\' oder \'/\' enthalten.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>Der Initiator gehört zu einer Gruppe. Images werden in der Gruppe konfiguriert.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Keine Elemente hinzugefügt.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Initiator hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Gruppen</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Gruppe</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Gruppe hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namensräume</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Papierkorb</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Probleme</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Wird synchronisiert</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Fertig</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Spiegelungsmodus für Pool bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Wählen Sie zum Bearbeiten des Spiegelungsmodus für den Pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> einen neuen Modus aus der Liste aus und klicken Sie auf \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Aktualisieren\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Vor dem Deaktivieren der Spiegelung müssen Peer-Cluster entfernt werden.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  Peer für Poolspiegelung\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Bearbeiten} other {Hinzufügen} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Clustername</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Der Clustername ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX-ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX-ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>Die CephX ID ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Adressen der Monitore</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Kommagetrennte Adressen...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Die Anrede ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64-codierter Schlüssel...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephX-Schlüssel muss base64-codiert sein.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Leistungsindikatoren nicht verfügbar</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Lesen Sie die \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Dokumentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> zum\n  Konfigurieren und Aktivieren der Verwaltungsfunktion für das Objektgateway.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Liste der Daemons</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Leistungsindikatoren</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Bucket-Daten werden geladen...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Der Wert ist ungültig.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Der ausgewählte Name wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Inhaber</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Benutzer auswählen --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Aktiviert</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Indextyp</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Platzierungsregel</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Marker</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Maximum für Marker</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Version</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Masterversion</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Änderungszeit</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Zonengruppe</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Bucket-Quote</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Maximale Größe</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Unbegrenzt</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Maximale Objekte</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Benutzername</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Benutzername auswählen --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Schlüssel automatisch generieren</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Zugriffsschlüssel</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Geheimer Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Vollständiger Name</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>E-Mail-Adresse</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Angehalten</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>System</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Maximale Buckets</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Unterbenutzer</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Befähigungen</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Benutzerquote</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Anzeigen</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Typ</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Typ auswählen --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Berechtigung</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Berechtigung auswählen --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Unterbenutzer</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>Die ausgewählte Unterbenutzer-ID wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>lesen, schreiben</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>voll</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Swift-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Geheimnis automatisch generieren</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Benutzerdaten werden geladen...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Die Benutzerdaten konnten nicht geladen werden.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>Die ausgewählte Benutzer-ID wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Dies ist keine gültige E-Mail-Adresse.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>Die ausgewählte E-Mail-Adresse wird bereits verwendet.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Max. Buckets</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Deaktiviert</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Benutzerdefiniert</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Keine Unterbenutzer vorhanden.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Keine Schlüssel vorhanden.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Keine Befähigungen vorhanden.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Unbegrenzte Größe</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Max. Größe</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Unbegrenzte Objekte</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Max. Objekte</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Der eingegebene Wert muss &gt;=0 sein.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Beschreibung...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Berechtigungen</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Rollen</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Passwort bestätigen</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Passwortbestätigung stimmt nicht mit dem Passwort überein.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Ablaufdatum des Passworts</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Ablaufdatum des Passworts...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>E-Mail-Adresse</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Ungültige E-Mail-Adresse.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>Benutzer muss das Passwort bei der nächsten Anmeldung ändern</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Sie sind dabei, die Lese-/Aktualisierungsberechtigungen für Benutzer von Ihrem eigenen Benutzer zu entfernen.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Wenn Sie den Vorgang fortsetzen, können Sie Benutzerrollen nicht mehr hinzufügen oder entfernen.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Möchten Sie den Vorgang wirklich fortsetzen?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Hilfe</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Dokumentation</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Über</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Dashboard-Einstellungen</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Benutzerverwaltung</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Angemeldeter Benutzer</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Angemeldet als\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Passwort ändern</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Abmelden</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Attribute (OSD-Zuordnung)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadaten nicht verfügbar</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadaten</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Laufwerkszustand</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Leistungsindikator</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogramm nicht verfügbar: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Schreiben</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Lesen</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogramm</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>Hostname nicht gefunden.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Aktuelle Werte</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min.</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Max.</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Quelle</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Ebene</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Kann zur Laufzeit aktualisiert werden (bearbeitbar)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tags</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Auflistungswerte</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Siehe auch</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Clusterstatus</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Manager-Daemons</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Objektgateways</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Metadatenserver</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI-Gateways</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>Client-IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Clientdurchsatz</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Client-Lese-/Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Wiederherstellungsdurchsatz</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Scrub</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Leistung</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Rohkapazität</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Platzierungsgruppen pro OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Platzierungsgruppenstatus</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Kapazität</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> Weitere Details finden Sie in den \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Protokollen\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Ränge</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS Leistungsindikatoren</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Verzeichnisse</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Aktuell</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target> Ermittlungsauthentifizierung aktualisiert</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Keine Portale verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Keine Images verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Keine Images verfügbar. Fügen Sie dem Ziel ein Image hinzu.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Keine Initiatoren verfügen. Fügen Sie dem Ziel einen Initiator hinzu.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Ziel</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Zustand</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Bytes für Lesevorgang</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Bytes für Schreibvorgang</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O seit</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instanz</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problem</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Fortschritt</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Bearbeitungsmodus</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Peer hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Peer bearbeiten</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Peer löschen</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># lokal</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># remote</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>Peer spiegeln</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Umfassende Vereinfachung</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Schichtung</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Exklusive Sperre</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Objektzuordnung (erfordert exklusive Sperre)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Journaling (erfordert exklusive Sperre)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namensraum</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Images insgesamt</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namensraum enthält Images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NICHT GESCHÜTZT</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Rollback für RBD-Snapshot</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Rollback</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBD-Snapshot</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Gelöscht am</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>Typ</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>Zustand</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>Version</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>Stamm</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Standby-Daemons</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Rang</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Aktivität</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inodes</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Nutzung</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Aktualisiert</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>Der Wert kann zur Laufzeit aktualisiert werden.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Daemons/Clients rufen diesen Wert nicht aus der\n      Datenbank \'monitor config\' ab. Es ist nicht zulässig, diese Option über \'ceph config\n      set ...\' festzulegen. Diese Option sollte über \'ceph.conf\' oder an der\n      Befehlszeile konfiguriert werden.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>Die Option wird nur während des Daemon-Starts wirksam.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>Die Option wirkt sich nur auf die Cluster-Erstellung aus.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>Die Option wirkt sich nur auf die Daemon-Erstellung aus.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Aktualisierte Konfigurationsoption \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Service</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Aktueller Wert</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Bearbeitbar</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Laufwerkspfad</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identifiziere Laufwerk \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifikation von \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' auf Host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\' gestartet\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Aktivieren</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Deaktivieren</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Verbindung wird erneut hergestellt, bitte warten...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Öffentliche Adresse</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Offene Sitzungen</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Kein In-Vorgang</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>OSDs, die zuvor als \'out\' markiert wurden, werden beim Start nicht wieder markiert</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Kein Out-Vorgang</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSDs werden nach dem konfigurierten Intervall nicht automatisch als \'out\' markiert</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Kein Up-Vorgang</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSDs dürfen nicht gestartet werden</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Kein Down-Vorgang</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>OSD-Fehlerberichte werden ignoriert, sodass die Monitore die OSDs nicht als ausgefallen markieren</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pause</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Hält Lese- und Schreibvorgänge an</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Kein Scrub</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Scrubbing ist deaktiviert</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Kein umfassender Scrub</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Umfassendes Scrubbing ist deaktiviert</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Kein Abgleich</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Abgleich der Platzierungsgruppen ist ausgesetzt</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Keine Wiederherstellung</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Wiederherstellung der Platzierungsgruppen ist ausgesetzt</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Bitweise Sortierung</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Bitweise Sortierung verwenden</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Bereinigte Snapdirs</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSDs besitzen konvertierte Snapsets</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Löschvorgänge bei Wiederherstellungen</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Bei der Wiederherstellung anstelle des Peerings durchgeführte Löschvorgänge</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Hardlimit für Platzierungsgruppen-Protokoll</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Legt ein Hardlimit für die Platzierungsgruppen-Protokolllänge fest</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Aktualisierte OSD-Flags</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>aus</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>ein</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>ausgefallen</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Markieren</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD verloren</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>markierter Verlust</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Bereinigen</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>bereinigt</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>vernichten</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>vernichtet</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>löschen</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Wiederherstellungspriorität</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG Scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>Platzierungsgruppen</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Bytes für Lesevorgang</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Bytes für Schreibvorgang</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/> markieren\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/> markieren\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG Scrub-Optionen</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Aktualisierte PG Scrub-Optionen</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Max. Abgleiche</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Wiederherstellung, max. aktiv</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Wiederherstellung, max. - einzelner Start</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Wiederherstellung - Inaktivität</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Auftrag</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Schweregrad</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Gestartet</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attributname</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regulärer Ausdruck</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Bitte fügen Sie Ihren Prometheus-Host zur Dashboard-Konfiguration hinzu und aktualisieren die Seite</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Erstellt von</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Endet</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Verwendet</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Verf.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Bereinigen</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>In Bearbeitung</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Warnung</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Unbekannt</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>aktiv</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>keine Dateisysteme</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>aktiv</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>Standby</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n. v.</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>aktiver Daemon</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>Quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Der NFS Ganesha-Dienst ist nicht konfiguriert.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS-Benutzer</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFS-Dateisystem</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(aus globaler Konfiguration übernommen)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>aus globaler Konfiguration übernommen</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Durchzuführende Benutzer-ID-Squashing-Art auswählen --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Keine Daemons verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS-Export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC-Profil</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Cache-Modus</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Min. Alter für Vertreibung</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Min. Alter für Leerung</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Max. Bytes für Ziel</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Max. Objekte für Ziel</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Keine Anwendungen hinzugefügt</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Anwendungslimit erreicht</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Ein Pool kann nur bis zu vier Anwendungsdefinitionen aufweisen.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Zulässige Zeichen \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Maximale Länge beträgt 128 Zeichen</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Anwendungen filtern oder hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Anwendung hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>Erasure-Coding-Profil</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Größe des Replikats</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Letzte Änderung</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Erasure-Coding-Profil</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Crush-Regelsatz</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Das Löschen des Pools ist durch die Konfigurationsoption mon_allow_pool_delete deaktiviert.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>Bucket</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>Buckets</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>Benutzer</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>Unterbenutzer</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>Benutzer</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift-Schlüssel</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Laufwerks-ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Laufwerksname</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Bereich</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Lesen</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Erstelle</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>Rolle</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Rolle \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\' erstellt\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Rolle \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\' aktualisiert\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Systemrolle</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Rolle \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\' gelöscht\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Benutzer aktualisieren</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Fortfahren</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Sie wurden automatisch abgemeldet, da Ihre Rollen geändert wurden.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>Passwort</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Benutzerpasswort aktualisiert</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Jedes Objekt wird in Datenblöcke aufgeteilt und jeweils auf einem anderen OSD gespeichert.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Berechnen Sie Codierungsdatenblöcke für jedes Objekt und speichern Sie sie auf unterschiedlichen OSDs.\n      Die Anzahl der Codierungsdatenblöcke entspricht auch der Anzahl der OSDs, die ausfallen können, ohne dass Daten verloren gehen.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Das jerasure-Modul ist das allgemeinste und flexibelste Modul\n          und fungiert auch als der Standard für Ceph-Pools mit Löschcodierung.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Die flexiblere Technik ist \'reed_sol_van :\', wobei es ausreicht, k\n          und m festzulegen. Die Technik \'cauchy_good\' kann schneller sein. Sie müssen jedoch die Paketgröße sorgfältig\n          auswählen. Sämtliche \'reed_sol_r6_op\'-, \'liberation\'-, \'blaum_roth\'- und \'liber8tion\'-Vorgänge sind dahingehend RAID6-Entsprechungen,\n          dass sie nur mit \'m=2\' konfiguriert werden können.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>Die Codierung wird jeweils für Pakete auf Bytes-Größe vorgenommen.\n          Die Auswahl der richtigen Paketgröße ist schwierig.\n          In der Jerasure-Dokumentation sind ausführliche Informationen zu diesem Thema enthalten.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Bei Verwendung des Jerasure-Moduls, wenn ein Objekt mit Löschcodierung auf mehreren OSDs gespeichert ist,\n          müssen alle anderen OSDs gelesen werden, um die verloren gegangenen Daten eines OSDs wiederherzustellen.\n          Wenn jerasure beispielsweise mit \'k=8\' und \'m=4\' konfiguriert ist,\n          müssen bei Verlust eines OSDs zum Reparieren die elf anderen gelesen werden.\n\n          Das lrc-Löschcode-Modul erstellt lokale Paritätsdatenblöcke, um die Wiederherstellung mit weniger OSDs auszuführen.\n          Wenn lrc beispielsweise mit \'k=8\', \'m=4\' und \'l=4\' konfiguriert ist, wird ein zusätzlicher Paritätsdatenblock für jeweils vier OSDs erstellt.\n          Geht ein einzelnes OSD verloren, kann es mit nur vier OSDs anstelle\n          von elf wiederhergestellt werden.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Gruppieren Sie die Codierungs- und Datenblöcke in Sätze entsprechend dem Speicherort.\n          Beispielsweise werden für \'k=4\' und \'m=2\', wenn der Speicherort \'3\' entspricht, zwei Dreiergruppen erstellt.\n          Jeder Satz kann wiederhergestellt werden, ohne dass Datenblöcke aus einem anderen Satz gelesen werden.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Der Typ des Crush-Buckets, in dem jeder durch l definierte Satz von Datenblöcken gespeichert wird.\n          Wenn er beispielsweise auf \'rack\' festgelegt ist, wird jede Gruppe an l-Datenblöcken in einem anderen Rack platziert.\n          Er wird zum Erstellen eines CRUSH-Regelschritts verwendet, beispielsweise für einen Schritt zum Auswählen des Racks.\n          Wenn er nicht festgelegt ist, wird keine solche Gruppierung vorgenommen.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Das isa-Modul kapselt die ISA-Bibliothek und wird nur auf Intel-Prozessoren ausgeführt.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Das ISA-Modul wird in zwei Reed Solomon-Formularen bereitgestellt.\n          Wenn \'reed_sol_van\' festgelegt ist, entspricht dies Vandermonde. Ist \'cauchy\' festgelegt, entspricht dies \'Cauchy\'.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Das shec-Modul kapselt die SHEC-Mehrfachbibliothek.\n          Dadurch kann ceph Daten effizienter wiederherstellen als Reed Solomon-Codes.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Die Anzahl der Paritätsdatenblöcke, von denen jeder jeden Datenblock in seinem Berechnungsbereich enthält.\n          Die Anzahl wird als eine Dauerhaftigkeitsschätzung verwendet. Wenn beispielsweise \'c=2\' vorliegt,\n          können 2 OSDs ausfallen, ohne dass Daten verloren gehen.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Der Name des für den ersten Schritt der CRUSH-Regel verwendeten Crush-Buckets.\n      Beispielsweise \'step take default\'.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Stellen Sie sicher, dass sich keine zwei Datenblöcke in einem Bucket mit derselben Ausfalldomäne befinden.\n      Wenn die Ausfalldomäne beispielsweise als Host fungiert, werden keine zwei Datenblöcke auf demselben Host gespeichert.\n      Er wird zum Erstellen eines CRUSH-Regelschritts verwendet, beispielsweise \'step chooseleaf host\'.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Schränken Sie mithilfe der Klassennamen für Crush-Geräte in der CRUSH-Zuordnung die Platzierung\n      auf Geräte einer bestimmten Klasse (z. B. SSD oder HDD) ein.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Legen Sie den Verzeichnisnamen fest, über den das Löschcode-Modul geladen wird.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Lässt alle Vorgänge zu</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Lässt nur Vorgänge zu, die den Server nicht ändern</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Lässt weder Lese- noch Schreibvorgänge zu, jedoch alle anderen Vorgänge</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Lässt Lese-/Schreibvorgänge und andere Vorgänge nicht zu, die Dateiattribute oder Verzeichnisinhalte ändern</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Lässt überhaupt keinen Zugriff zu</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Priorität auswählen --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Niedrig</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Hoch</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informationen</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Letzte 5 Minuten</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Letzte 15 Minuten</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Letzte 30 Minuten</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Letzte Stunde (Standard)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Letzte 3 Stunden</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Letzte 6 Stunden</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Letzte 12 Stunden</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Letzte 24 Stunden</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Gestern</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Heute</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Heute bisher</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Vorgestern</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Letzte 2 Tage</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Dieser Tag letzte Woche</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Vorwoche</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Diese Woche</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Diese Woche bisher</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Letzte 7 Tage</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Vormonat</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Dieser Monat</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Dieser Monat bisher</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Letzte 30 Tage</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Letzte 90 Tage</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Letzte 6 Monate</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Letztes Jahr</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Vorjahr</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Dieses Jahr</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Dieses Jahr bisher</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Letzte 2 Jahre</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Letzte 5 Jahre</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Keine Elemente ausgewählt.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Elementauswahl zum erneuten Auswählen aufheben</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Auswahllimit erreicht</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Tags filtern</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Badge hinzufügen</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Keine Elemente verfügbar.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Entfernen</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Klonen</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Kopieren</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Umfassender Scrub</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Vernichten</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Vereinfachen</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Als ausgefallen markieren</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Mit Befehl \'In\' markieren</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Als verloren markieren</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Mit Befehl \'Out\' markieren</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Schützen</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Umbenennen</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Wiederherstellen</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>In Papierkorb verschieben</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Schutz aufheben</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Ändern</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Gelöscht</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Hinzugefügt</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Entfernt</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Bearbeitet</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Abgebrochen</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Geklont</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Kopiert</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Vereinfacht</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Geschützt</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Bereinigt</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Umbenannt</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Wiederhergestellt</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Rollback wurde ausgeführt</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>In den Papierkorb verschoben</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Schutz aufgehoben</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Abgelaufen</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Ja</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Nein</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Erforderliche Regeln für Passwörter:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>keine aktiven Warnungen</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 aktive Warnung</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> aktive Warnungen\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> mit \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Quality of Service</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS-Limit</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Das gewünschte Limit der E/A-Bytes pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS-Limit</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Das gewünschte Limit der E/A-Vorgänge pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>BPS-Limit für Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Das gewünschte Limit der gelesenen Bytes pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>IOPS-Limit für Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Das gewünschte Limit für Lesevorgänge pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>BPS-Limit für Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Das gewünschte Limit der geschriebenen Bytes pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>IOPS-Limit für Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Das gewünschte Limit für Schreibvorgänge pro Sekunde.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS-Block</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Das gewünschte Blocklimit der E/A-Bytes.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS-Block</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Das gewünschte Blocklimit der E/A-Vorgänge.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>BPS-Block für Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Das gewünschte Blocklimit der gelesenen Bytes.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>IOPS-Block für Lesevorgänge</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Das gewünschte Blocklimit der Lesevorgänge.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>BPS-Block für Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Das gewünschte Blocklimit der geschriebenen Bytes.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>IOPS-Block für Schreibvorgänge</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Das gewünschte Blocklimit der Schreibvorgänge.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Wird ausgeführt</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>ausführen</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Ausgeführt</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>Unbekannte Aufgabe</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Wird erstellt</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>erstellen</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Wird aktualisiert</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>aktualisieren</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Wird gelöscht</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD-Snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>Spiegelungsmodus für Pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>Alle Dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name wird bereits von \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/> verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name wird bereits von \n          <x id="INTERPOLATION" equiv-text="{{name}}"/> verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name wird bereits von \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> enthält Snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Wird geklont</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>klonen</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot von \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> muss geschützt sein.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Wird kopiert</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>kopieren</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Wird vereinfacht</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>vereinfachen</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name wird bereits von \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Der Schutz von \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> kann aufgrund untergeordneter Images nicht aufgehoben werden.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> kann nicht gelöscht werden, da es geschützt ist.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Rollback wird ausgeführt</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>Rollback</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Wird verschoben</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>verschieben</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Verschoben</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>Image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' in Papierkorb verschieben\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Image konnte nicht gefunden werden.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Wird wiederhergestellt</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>wiederherstellen</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>Image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' in \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\' verschieben\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image-Name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' wird bereits verwendet.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>Image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Wird bereinigt</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>bereinigen</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>alle Pools</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>Images von \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Spiegelung kann nicht deaktiviert werden, da sie einen Peer enthält.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>Pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>Erasure-Coding-Profil \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>Ziel \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},Ekvf:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("mrSG"),r=n("IheW"),i=n("lJxs"),s=n("xTzq"),u=n("o8EM"),o=n("8Y7J"),l=n("pL04");let d=(()=>{let t=class{constructor(t,e){this.http=t,this.rbdConfigurationService=e,this.apiPath="api/pool"}create(t){return this.http.post(this.apiPath,t,{observe:"response"})}update(t){let e;return t.hasOwnProperty("srcpool")?(e=t.srcpool,delete t.srcpool):(e=t.pool,delete t.pool),this.http.put(`${this.apiPath}/${encodeURIComponent(e)}`,t,{observe:"response"})}delete(t){return this.http.delete(`${this.apiPath}/${t}`,{observe:"response"})}get(t){return this.http.get(`${this.apiPath}/${t}`)}getList(){return this.http.get(this.apiPath+"?stats=true")}getConfiguration(t){return this.http.get(`${this.apiPath}/${t}/configuration`).pipe(Object(i.a)(t=>t.map(t=>Object.assign(t,this.rbdConfigurationService.getOptionByName(t.name)))))}getInfo(){return this.http.get(`ui-${this.apiPath}/info`)}list(t=[]){const e=t.join(",");return this.http.get(`${this.apiPath}?attrs=${e}`).toPromise().then(t=>t)}};return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](r.c),o["ɵɵinject"](u.a))},token:t,providedIn:l.a}),t=a.__decorate([s.a,a.__metadata("design:paramtypes",[r.c,u.a])],t),t})()},EmSq:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("8Y7J"),r=n("LvDl");n("Fgil"),n("aXbf");class i{constructor(t,e,n,r){this.elementRef=t,this.control=e,this.dimlessBinaryPipe=n,this.formatter=r,this.ngModelChange=new a.EventEmitter,this.el=this.elementRef.nativeElement}ngOnInit(){this.setValue(this.el.value)}setValue(t){/^[\d.]+$/.test(t)&&(t+=this.defaultUnit||"m");const e=this.formatter.toBytes(t),n=this.round(e);this.el.value=this.dimlessBinaryPipe.transform(n),null!==e?(this.ngModelChange.emit(this.el.value),this.control.control.setValue(this.el.value)):(this.ngModelChange.emit(null),this.control.control.setValue(null))}round(t){if(null!==t&&0!==t){if(!r.isUndefined(this.minBytes)&&t<this.minBytes)return this.minBytes;if(!r.isUndefined(this.maxBytes)&&t>this.maxBytes)return this.maxBytes;if(!r.isUndefined(this.roundPower)){const e=Math.round(Math.log(t)/Math.log(this.roundPower));return Math.pow(this.roundPower,e)}}return t}onBlur(t){this.setValue(t)}}},"F+uO":function(t,e,n){var a={"./messages.cs.xlf":"ViD7","./messages.de-DE.xlf":"EiPl","./messages.es-ES.xlf":"yt+r","./messages.fr-FR.xlf":"V5SL","./messages.id-ID.xlf":"jqst","./messages.it-IT.xlf":"8j5A","./messages.ja-JP.xlf":"bN42","./messages.ko-KR.xlf":"3+CB","./messages.pl-PL.xlf":"SPu7","./messages.pt-BR.xlf":"+Wg/","./messages.zh-CN.xlf":"AiMb","./messages.zh-TW.xlf":"HjS5"};function r(t){var e=i(t);return n(e)}function i(t){if(!n.o(a,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return a[t]}r.keys=function(){return Object.keys(a)},r.resolve=i,t.exports=r,r.id="F+uO"},F8JR:function(t,e,n){"use strict";var a=n("tycR").forEach,r=n("pkCn"),i=n("rkAj"),s=r("forEach"),u=i("forEach");t.exports=s&&u?[].forEach:function(t){return a(this,t,arguments.length>1?arguments[1]:void 0)}},FE24:function(t,e,n){"use strict";n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return f})),n.d(e,"c",(function(){return h})),n.d(e,"d",(function(){return g})),n.d(e,"e",(function(){return b})),n.d(e,"f",(function(){return d})),n.d(e,"g",(function(){return p}));var a=n("8Y7J"),r=n("pLZG"),i=n("z/SZ"),s=n("hpHm"),u=n("GS7A"),o=n("2uy1");class l{constructor(){this.autoClose=!0,this.insideClick=!1,this.isAnimated=!1}}class d{constructor(){this.direction="down",this.isOpenChange=new a.EventEmitter,this.isDisabledChange=new a.EventEmitter,this.toggleClick=new a.EventEmitter,this.dropdownMenu=new Promise(t=>{this.resolveDropdownMenu=t})}}const c=[Object(u.h)({height:0,overflow:"hidden"}),Object(u.e)("220ms cubic-bezier(0, 0, 0.2, 1)",Object(u.h)({height:"*",overflow:"hidden"}))];class f{constructor(t,e,n,a,r){this._state=t,this.cd=e,this._renderer=n,this._element=a,this.isOpen=!1,this._factoryDropDownAnimation=r.build(c),this._subscription=t.isOpenChange.subscribe(t=>{this.isOpen=t;const e=this._element.nativeElement.querySelector(".dropdown-menu");this._renderer.addClass(this._element.nativeElement.querySelector("div"),"open"),e&&!Object(s.d)()&&(this._renderer.addClass(e,"show"),e.classList.contains("dropdown-menu-right")&&(this._renderer.setStyle(e,"left","auto"),this._renderer.setStyle(e,"right","0")),"up"===this.direction&&(this._renderer.setStyle(e,"top","auto"),this._renderer.setStyle(e,"transform","translateY(-101%)"))),e&&this._state.isAnimated&&this._factoryDropDownAnimation.create(e).play(),this.cd.markForCheck(),this.cd.detectChanges()})}get direction(){return this._state.direction}_contains(t){return this._element.nativeElement.contains(t)}ngOnDestroy(){this._subscription.unsubscribe()}}class h{constructor(t,e,n,a,r,i,s){this._elementRef=t,this._renderer=e,this._viewContainerRef=n,this._cis=a,this._state=r,this._config=i,this._isInlineOpen=!1,this._subscriptions=[],this._isInited=!1,this._state.autoClose=this._config.autoClose,this._state.insideClick=this._config.insideClick,this._state.isAnimated=this._config.isAnimated,this._factoryDropDownAnimation=s.build(c),this._dropdown=this._cis.createLoader(this._elementRef,this._viewContainerRef,this._renderer).provide({provide:d,useValue:this._state}),this.onShown=this._dropdown.onShown,this.onHidden=this._dropdown.onHidden,this.isOpenChange=this._state.isOpenChange}set autoClose(t){this._state.autoClose=t}get autoClose(){return this._state.autoClose}set isAnimated(t){this._state.isAnimated=t}get isAnimated(){return this._state.isAnimated}set insideClick(t){this._state.insideClick=t}get insideClick(){return this._state.insideClick}set isDisabled(t){this._isDisabled=t,this._state.isDisabledChange.emit(t),t&&this.hide()}get isDisabled(){return this._isDisabled}get isOpen(){return this._showInline?this._isInlineOpen:this._dropdown.isShown}set isOpen(t){t?this.show():this.hide()}get isBs4(){return!Object(s.d)()}get _showInline(){return!this.container}ngOnInit(){this._isInited||(this._isInited=!0,this._dropdown.listen({outsideClick:!1,triggers:this.triggers,show:()=>this.show()}),this._subscriptions.push(this._state.toggleClick.subscribe(t=>this.toggle(t))),this._subscriptions.push(this._state.isDisabledChange.pipe(Object(r.a)(t=>t)).subscribe(t=>this.hide())))}show(){if(!this.isOpen&&!this.isDisabled)return this._showInline?(this._inlinedMenu||this._state.dropdownMenu.then(t=>{this._dropdown.attachInline(t.viewContainer,t.templateRef),this._inlinedMenu=this._dropdown._inlineViewRef,this.addBs4Polyfills(),this._renderer.addClass(this._inlinedMenu.rootNodes[0].parentNode,"open"),this.playAnimation()}).catch(),this.addBs4Polyfills(),this._isInlineOpen=!0,this.onShown.emit(!0),this._state.isOpenChange.emit(!0),void this.playAnimation()):void this._state.dropdownMenu.then(t=>{const e=this.dropup||void 0!==this.dropup&&this.dropup;this._state.direction=e?"up":"down";const n=this.placement||(e?"top start":"bottom start");this._dropdown.attach(f).to(this.container).position({attachment:n}).show({content:t.templateRef,placement:n}),this._state.isOpenChange.emit(!0)}).catch()}hide(){this.isOpen&&(this._showInline?(this.removeShowClass(),this.removeDropupStyles(),this._isInlineOpen=!1,this.onHidden.emit(!0)):this._dropdown.hide(),this._state.isOpenChange.emit(!1))}toggle(t){return this.isOpen||!t?this.hide():this.show()}_contains(t){return this._elementRef.nativeElement.contains(t.target)||this._dropdown.instance&&this._dropdown.instance._contains(t.target)}ngOnDestroy(){for(const t of this._subscriptions)t.unsubscribe();this._dropdown.dispose()}addBs4Polyfills(){Object(s.d)()||(this.addShowClass(),this.checkRightAlignment(),this.addDropupStyles())}playAnimation(){this._state.isAnimated&&this._inlinedMenu&&this._factoryDropDownAnimation.create(this._inlinedMenu.rootNodes[0]).play()}addShowClass(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&this._renderer.addClass(this._inlinedMenu.rootNodes[0],"show")}removeShowClass(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&this._renderer.removeClass(this._inlinedMenu.rootNodes[0],"show")}checkRightAlignment(){if(this._inlinedMenu&&this._inlinedMenu.rootNodes[0]){const t=this._inlinedMenu.rootNodes[0].classList.contains("dropdown-menu-right");this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"left",t?"auto":"0"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"right",t?"0":"auto")}}addDropupStyles(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&(this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"top",this.dropup?"auto":"100%"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"transform",this.dropup?"translateY(-101%)":"translateY(0)"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"bottom","auto"))}removeDropupStyles(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&(this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"top"),this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"transform"),this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"bottom"))}}class g{constructor(t,e,n){t.resolveDropdownMenu({templateRef:n,viewContainer:e})}}class p{constructor(t,e,n,a,r){this._changeDetectorRef=t,this._dropdown=e,this._element=n,this._renderer=a,this._state=r,this.isDisabled=null,this._subscriptions=[],this._subscriptions.push(this._state.isOpenChange.subscribe(t=>{this.isOpen=t,t?(this._documentClickListener=this._renderer.listen("document","click",t=>{!this._state.autoClose||2===t.button||this._element.nativeElement.contains(t.target)||this._state.insideClick&&this._dropdown._contains(t)||(this._state.toggleClick.emit(!1),this._changeDetectorRef.detectChanges())}),this._escKeyUpListener=this._renderer.listen(this._element.nativeElement,"keyup.esc",()=>{this._state.autoClose&&(this._state.toggleClick.emit(!1),this._changeDetectorRef.detectChanges())})):(this._documentClickListener(),this._escKeyUpListener())})),this._subscriptions.push(this._state.isDisabledChange.subscribe(t=>this.isDisabled=t||null))}onClick(){this.isDisabled||this._state.toggleClick.emit(!0)}ngOnDestroy(){this._documentClickListener&&this._documentClickListener(),this._escKeyUpListener&&this._escKeyUpListener();for(const t of this._subscriptions)t.unsubscribe()}}class b{static forRoot(t){return{ngModule:b,providers:[i.a,o.a,d,{provide:l,useValue:t||{autoClose:!0,insideClick:!1}}]}}}},FFMq:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return t.join(", ")}}},FGWQ:function(t,e,n){var a=n("pmjB"),r=n("p33Q"),i=n("im1V");t.exports=function(t){return i(t)?a(t):r(t)}},FMNM:function(t,e,n){var a=n("xrYK"),r=n("kmMV");t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==a(t))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(t,e)}},FSuO:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=n("LvDl"),i=n("x38r");n("a0VL"),n("uIqm");class s{constructor(t){this.datePipe=t,this.autoReload=5e3,this.renderObjects=!1,this.appendParentKey=!0,this.hideEmpty=!1,this.hideKeys=[],this.columns=[],this.fetchData=new a.EventEmitter}ngOnInit(){this.columns=[{prop:"key",flexGrow:1,cellTransformation:i.a.bold},{prop:"value",flexGrow:3}],this.customCss&&(this.columns[1].cellTransformation=i.a.classAdding),this.fetchData.observers.length>0&&this.table.fetchData.subscribe(()=>{this.fetchData.emit()}),this.useData()}ngOnChanges(){this.useData()}useData(){if(!this.data)return;let t=this.makePairs(this.data);this.hideKeys&&(t=t.filter(t=>!this.hideKeys.includes(t.key))),this.tableData=t}makePairs(t){let e=[];if(t){if(r.isArray(t))e=this.makePairsFromArray(t);else{if(!r.isObject(t))throw new Error("Wrong data format");e=this.makePairsFromObject(t)}return e=e.map(t=>(t.value=this.convertValue(t.value),t)).filter(t=>null!==t.value),r.sortBy(this.renderObjects?this.insertFlattenObjects(e):e,"key")}}makePairsFromArray(t){let e=[];const n=t[0];if(r.isArray(n)){if(2!==n.length)throw new Error(`Array contains too many elements (${n.length}). Needs to be of type [string, any][]`);e=t.map(t=>({key:t[0],value:t[1]}))}else r.isObject(n)&&(e=r.has(n,"key")&&r.has(n,"value")?[...t]:t.reduce((t,e)=>t.concat(this.makePairsFromObject(e)),e));return e}makePairsFromObject(t){return Object.keys(t).map(e=>({key:e,value:t[e]}))}insertFlattenObjects(t){return r.flattenDeep(t.map(t=>{const e=t.value,n=r.isObject(e);return!n||r.isEmpty(e)?(n&&(t.value=""),t):this.splitItemIntoItems(t)}))}splitItemIntoItems(t){return this.makePairs(t.value).map(e=>(this.appendParentKey&&(e.key=t.key+" "+e.key),e))}convertValue(t){if(r.isArray(t)){if(r.isEmpty(t)&&this.hideEmpty)return null;t=t.map(t=>r.isObject(t)?JSON.stringify(t):t).join(", ")}else if(r.isObject(t)){if(this.hideEmpty&&r.isEmpty(t)||!this.renderObjects)return null}else if(r.isString(t)){if(""===t&&this.hideEmpty)return null;this.isDate(t)&&(t=this.datePipe.transform(t)||t)}return t}isDate(t){const e="\\d{2}[ -:.TZ]";return t.match(new RegExp("^\\d{4}[ -:.TZ]"+e+e+e+e+e+"\\d*Z?$"))}}},FZtP:function(t,e,n){var a=n("2oRo"),r=n("/byt"),i=n("F8JR"),s=n("kRJp");for(var u in r){var o=a[u],l=o&&o.prototype;if(l&&l.forEach!==i)try{s(l,"forEach",i)}catch(d){l.forEach=i}}},Fgil:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("aXbf");class a{constructor(t){this.formatter=t}transform(t){return this.formatter.format_number(t,1024,["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"])}}},Fwy9:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("gk6K"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(t,e,n,r){this.el=t,this.renderer=e,this.treeDraggedElement=n,this.ngZone=r,this.allowDragoverStyling=!0,this.onDropCallback=new a.EventEmitter,this.onDragOverCallback=new a.EventEmitter,this.onDragLeaveCallback=new a.EventEmitter,this.onDragEnterCallback=new a.EventEmitter,this._allowDrop=function(t,e){return!0},this.dragOverEventHandler=this.onDragOver.bind(this),this.dragEnterEventHandler=this.onDragEnter.bind(this),this.dragLeaveEventHandler=this.onDragLeave.bind(this)}return Object.defineProperty(t.prototype,"treeAllowDrop",{set:function(t){this._allowDrop=t instanceof Function?t:function(e,n){return t}},enumerable:!0,configurable:!0}),t.prototype.allowDrop=function(t){return this._allowDrop(this.treeDraggedElement.get(),t)},t.prototype.ngAfterViewInit=function(){var t=this,e=this.el.nativeElement;this.ngZone.runOutsideAngular((function(){e.addEventListener("dragover",t.dragOverEventHandler),e.addEventListener("dragenter",t.dragEnterEventHandler),e.addEventListener("dragleave",t.dragLeaveEventHandler)}))},t.prototype.ngOnDestroy=function(){var t=this.el.nativeElement;t.removeEventListener("dragover",this.dragOverEventHandler),t.removeEventListener("dragenter",this.dragEnterEventHandler),t.removeEventListener("dragleave",this.dragLeaveEventHandler)},t.prototype.onDragOver=function(t){if(!this.allowDrop(t))return this.allowDragoverStyling?this.addDisabledClass():void 0;this.onDragOverCallback.emit({event:t,element:this.treeDraggedElement.get()}),t.preventDefault(),this.allowDragoverStyling&&this.addClass()},t.prototype.onDragEnter=function(t){this.allowDrop(t)&&(t.preventDefault(),this.onDragEnterCallback.emit({event:t,element:this.treeDraggedElement.get()}))},t.prototype.onDragLeave=function(t){if(!this.allowDrop(t))return this.allowDragoverStyling?this.removeDisabledClass():void 0;this.onDragLeaveCallback.emit({event:t,element:this.treeDraggedElement.get()}),this.allowDragoverStyling&&this.removeClass()},t.prototype.onDrop=function(t){this.allowDrop(t)&&(t.preventDefault(),this.onDropCallback.emit({event:t,element:this.treeDraggedElement.get()}),this.allowDragoverStyling&&this.removeClass(),this.treeDraggedElement.set(null))},t.prototype.addClass=function(){this.renderer.addClass(this.el.nativeElement,"is-dragging-over")},t.prototype.removeClass=function(){this.renderer.removeClass(this.el.nativeElement,"is-dragging-over")},t.prototype.addDisabledClass=function(){this.renderer.addClass(this.el.nativeElement,"is-dragging-over-disabled")},t.prototype.removeDisabledClass=function(){this.renderer.removeClass(this.el.nativeElement,"is-dragging-over-disabled")},i([Object(a.Input)(),s("design:type",Object)],t.prototype,"allowDragoverStyling",void 0),i([Object(a.Output)("treeDrop"),s("design:type",Object)],t.prototype,"onDropCallback",void 0),i([Object(a.Output)("treeDropDragOver"),s("design:type",Object)],t.prototype,"onDragOverCallback",void 0),i([Object(a.Output)("treeDropDragLeave"),s("design:type",Object)],t.prototype,"onDragLeaveCallback",void 0),i([Object(a.Output)("treeDropDragEnter"),s("design:type",Object)],t.prototype,"onDragEnterCallback",void 0),i([Object(a.Input)(),s("design:type",Object),s("design:paramtypes",[Object])],t.prototype,"treeAllowDrop",null),i([Object(a.HostListener)("drop",["$event"]),s("design:type",Function),s("design:paramtypes",[Object]),s("design:returntype",void 0)],t.prototype,"onDrop",null),i([Object(a.Directive)({selector:"[treeDrop]"}),s("design:paramtypes",[a.ElementRef,a.Renderer2,r.a,a.NgZone])],t)}()},"G+Rx":function(t,e,n){var a=n("0GbY");t.exports=a("document","documentElement")},G0Uy:function(t,e,n){!function(t){"use strict";t.defineLocale("mt",{months:"Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru".split("_"),monthsShort:"Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ".split("_"),weekdays:"Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt".split("_"),weekdaysShort:"Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib".split("_"),weekdaysMin:"Ħa_Tn_Tl_Er_Ħa_Ġi_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Illum fil-]LT",nextDay:"[Għada fil-]LT",nextWeek:"dddd [fil-]LT",lastDay:"[Il-bieraħ fil-]LT",lastWeek:"dddd [li għadda] [fil-]LT",sameElse:"L"},relativeTime:{future:"f’ %s",past:"%s ilu",s:"ftit sekondi",ss:"%d sekondi",m:"minuta",mm:"%d minuti",h:"siegħa",hh:"%d siegħat",d:"ġurnata",dd:"%d ġranet",M:"xahar",MM:"%d xhur",y:"sena",yy:"%d sni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},"G1/K":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this.i18n=t}transform(t){return""===t?this.i18n("n/a"):t}}},G1I9:function(t,e,n){"use strict";n.d(e,"b",(function(){return i})),n.d(e,"a",(function(){return s}));var a=n("oxzT"),r=n("mtw6");class i{constructor(t=r.a.info,e,n,a,i="Ceph"){this.type=t,this.title=e,this.message=n,this.options=a,this.application=i,this.isFinishedTask=!1,this.classes={Ceph:"ceph-icon",Prometheus:"prometheus-icon"},this.applicationClass=this.classes[this.application]}}class s extends i{constructor(t=new i){super(t.type,t.title,t.message,t.options,t.application),this.config=t,this.textClasses=["text-danger","text-info","text-success"],this.iconClasses=[a.a.warning,a.a.info,a.a.check],delete this.config,this.timestamp=(new Date).toJSON(),this.iconClass=this.iconClasses[this.type],this.textClass=this.textClasses[this.type],this.isFinishedTask=t.isFinishedTask}}},G3dZ:function(t,e,n){var a=n("77kF"),r=n("Z2DA");t.exports=function(t,e){return a(t,r(t),e)}},G3uG:function(t,e){var n=Date.now;t.exports=function(t){var e=0,a=0;return function(){var r=n(),i=16-(r-a);if(a=r,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}},"G6Q+":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},GS7A:function(t,e,n){"use strict";n.d(e,"b",(function(){return a})),n.d(e,"c",(function(){return r})),n.d(e,"a",(function(){return i})),n.d(e,"e",(function(){return u})),n.d(e,"f",(function(){return o})),n.d(e,"g",(function(){return d})),n.d(e,"h",(function(){return l})),n.d(e,"i",(function(){return c})),n.d(e,"j",(function(){return s})),n.d(e,"d",(function(){return h})),n.d(e,"k",(function(){return g})),n.d(e,"l",(function(){return p}));class a{}class r{}const i="*";function s(t,e){return{type:7,name:t,definitions:e,options:{}}}function u(t,e=null){return{type:4,styles:e,timings:t}}function o(t,e=null){return{type:2,steps:t,options:e}}function l(t){return{type:6,styles:t,offset:null}}function d(t,e,n){return{type:0,name:t,styles:e,options:n}}function c(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function f(t){Promise.resolve(null).then(t)}class h{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this.parentPlayer=null,this.totalTime=t+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){f(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){}setPosition(t){}getPosition(){return 0}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class g{constructor(t){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;let e=0,n=0,a=0;const r=this.players.length;0==r?f(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==r&&this._onFinish()}),t.onDestroy(()=>{++n==r&&this._onDestroy()}),t.onStart(()=>{++a==r&&this._onStart()})}),this.totalTime=this.players.reduce((t,e)=>Math.max(t,e.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this.players.forEach(t=>t.init())}onStart(t){this._onStartFns.push(t)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(t=>t()),this._onStartFns=[])}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(t=>t.play())}pause(){this.players.forEach(t=>t.pause())}restart(){this.players.forEach(t=>t.restart())}finish(){this._onFinish(),this.players.forEach(t=>t.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(t=>t.destroy()),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){this.players.forEach(t=>t.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(t){const e=t*this.totalTime;this.players.forEach(t=>{const n=t.totalTime?Math.min(1,e/t.totalTime):1;t.setPosition(n)})}getPosition(){let t=0;return this.players.forEach(e=>{const n=e.getPosition();t=Math.min(n,t)}),t}beforeDestroy(){this.players.forEach(t=>{t.beforeDestroy&&t.beforeDestroy()})}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}const p="!"},GarU:function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},Gf4A:function(t,e,n){var a=n("KFwg")(n("Wa4q"),"Map");t.exports=a},GgAd:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(){this.isBinary=!0,this.decimals=0}ngOnChanges(){this.usedPercentage=this.total>0?this.used/this.total*100:0,this.freePercentage=100-this.usedPercentage}}},GiVz:function(t,e,n){"use strict";n.d(e,"a",(function(){return We})),n.d(e,"b",(function(){return Ue}));var a=n("SVse"),r=n("8Y7J");class i{constructor(t,e){this.value=t,this.sourceSpan=e}visit(t,e){return t.visitText(this,e)}}class s{constructor(t,e,n,a,r){this.switchValue=t,this.type=e,this.cases=n,this.sourceSpan=a,this.switchValueSourceSpan=r}visit(t,e){return t.visitExpansion(this,e)}}class u{constructor(t,e,n,a,r){this.value=t,this.expression=e,this.sourceSpan=n,this.valueSourceSpan=a,this.expSourceSpan=r}visit(t,e){return t.visitExpansionCase(this,e)}}class o{constructor(t,e,n,a){this.name=t,this.value=e,this.sourceSpan=n,this.valueSpan=a}visit(t,e){return t.visitAttribute(this,e)}}class l{constructor(t,e,n,a,r=null,i=null){this.name=t,this.attrs=e,this.children=n,this.sourceSpan=a,this.startSourceSpan=r,this.endSourceSpan=i}visit(t,e){return t.visitElement(this,e)}}class d{constructor(t,e){this.value=t,this.sourceSpan=e}visit(t,e){return t.visitComment(this,e)}}function c(t,e,n=null){const a=[],r=t.visit?e=>t.visit(e,n)||e.visit(t,n):e=>e.visit(t,n);return e.forEach(t=>{const e=r(t);e&&a.push(e)}),a}class f{constructor(t,e,n,a,r,i){this.nodes=t,this.placeholders=e,this.placeholderToMessage=n,this.meaning=a,this.description=r,this.id=i,this.sources=t.length?[{filePath:t[0].sourceSpan.start.file.url,startLine:t[0].sourceSpan.start.line+1,startCol:t[0].sourceSpan.start.col+1,endLine:t[t.length-1].sourceSpan.end.line+1,endCol:t[0].sourceSpan.start.col+1}]:[]}}class h{constructor(t,e){this.value=t,this.sourceSpan=e}visit(t,e){return t.visitText(this,e)}}class g{constructor(t,e){this.children=t,this.sourceSpan=e}visit(t,e){return t.visitContainer(this,e)}}class p{constructor(t,e,n,a){this.expression=t,this.type=e,this.cases=n,this.sourceSpan=a}visit(t,e){return t.visitIcu(this,e)}}class b{constructor(t,e,n,a,r,i,s){this.tag=t,this.attrs=e,this.startName=n,this.closeName=a,this.children=r,this.isVoid=i,this.sourceSpan=s}visit(t,e){return t.visitTagPlaceholder(this,e)}}class m{constructor(t,e,n){this.value=t,this.name=e,this.sourceSpan=n}visit(t,e){return t.visitPlaceholder(this,e)}}class y{constructor(t,e,n){this.value=t,this.name=e,this.sourceSpan=n}visit(t,e){return t.visitIcuPlaceholder(this,e)}}class v{constructor(t,e,n,a){this.file=t,this.offset=e,this.line=n,this.col=a}toString(){return null!=this.offset?`${this.line}:${this.col}`:""}getContext(t,e){const n=this.file.content;let a=this.offset;if(null!=a){a>n.length-1&&(a=n.length-1);let r=a,i=0,s=0;for(;i<t&&a>0&&(a--,i++,"\n"!==n[a]||++s!==e););for(i=0,s=0;i<t&&r<n.length-1&&(r++,i++,"\n"!==n[r]||++s!==e););return{before:n.substring(a,this.offset),after:n.substring(this.offset,r+1)}}return null}}class x{constructor(t,e=""){this.content=t,this.url=e}}class _{constructor(t,e,n=null){this.start=t,this.end=e,this.details=n}toString(){return this.start.file.content.substring(this.start.offset,this.end.offset)}}const T=function(){var t={WARNING:0,ERROR:1};return t[t.WARNING]="WARNING",t[t.ERROR]="ERROR",t}();class w{constructor(t,e,n=T.ERROR){this.span=t,this.msg=e,this.level=n}contextualMessage(){const t=this.span.start.getContext(100,3);return t?` ("${t.before}[${T[this.level]} ->]${t.after}")`:""}toString(){const t=this.span.details?", "+this.span.details:"";return`${this.msg}${this.contextualMessage()}: ${this.span.start}${t}`}}class O extends w{constructor(t,e){super(t,e)}}function S(t){return t.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}class I{constructor(t,e){this.start=t,this.end=e}}const N=new I("{{","}}");function C(t){return t>=9&&t<=32||160===t}function R(t){return 48<=t&&t<=57}function A(t){return t>=97&&t<=122||t>=65&&t<=90}const k=function(){var t={RAW_TEXT:0,ESCAPABLE_RAW_TEXT:1,PARSABLE_DATA:2};return t[t.RAW_TEXT]="RAW_TEXT",t[t.ESCAPABLE_RAW_TEXT]="ESCAPABLE_RAW_TEXT",t[t.PARSABLE_DATA]="PARSABLE_DATA",t}();function E(t){if(":"!==t[0])return[null,t];const e=t.indexOf(":",1);if(-1===e)throw new Error(`Unsupported format "${t}" expecting ":namespace:name"`);return[t.slice(1,e),t.slice(e+1)]}function L(t){return null===t?null:E(t)[0]}function D(t,e){return t?`:${t}:${e}`:e}const P={Aacute:"Á",aacute:"á",Acirc:"Â",acirc:"â",acute:"´",AElig:"Æ",aelig:"æ",Agrave:"À",agrave:"à",alefsym:"ℵ",Alpha:"Α",alpha:"α",amp:"&",and:"∧",ang:"∠",apos:"'",Aring:"Å",aring:"å",asymp:"≈",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",bdquo:"„",Beta:"Β",beta:"β",brvbar:"¦",bull:"•",cap:"∩",Ccedil:"Ç",ccedil:"ç",cedil:"¸",cent:"¢",Chi:"Χ",chi:"χ",circ:"ˆ",clubs:"♣",cong:"≅",copy:"©",crarr:"↵",cup:"∪",curren:"¤",dagger:"†",Dagger:"‡",darr:"↓",dArr:"⇓",deg:"°",Delta:"Δ",delta:"δ",diams:"♦",divide:"÷",Eacute:"É",eacute:"é",Ecirc:"Ê",ecirc:"ê",Egrave:"È",egrave:"è",empty:"∅",emsp:" ",ensp:" ",Epsilon:"Ε",epsilon:"ε",equiv:"≡",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",exist:"∃",fnof:"ƒ",forall:"∀",frac12:"½",frac14:"¼",frac34:"¾",frasl:"⁄",Gamma:"Γ",gamma:"γ",ge:"≥",gt:">",harr:"↔",hArr:"⇔",hearts:"♥",hellip:"…",Iacute:"Í",iacute:"í",Icirc:"Î",icirc:"î",iexcl:"¡",Igrave:"Ì",igrave:"ì",image:"ℑ",infin:"∞",int:"∫",Iota:"Ι",iota:"ι",iquest:"¿",isin:"∈",Iuml:"Ï",iuml:"ï",Kappa:"Κ",kappa:"κ",Lambda:"Λ",lambda:"λ",lang:"⟨",laquo:"«",larr:"←",lArr:"⇐",lceil:"⌈",ldquo:"“",le:"≤",lfloor:"⌊",lowast:"∗",loz:"◊",lrm:"‎",lsaquo:"‹",lsquo:"‘",lt:"<",macr:"¯",mdash:"—",micro:"µ",middot:"·",minus:"−",Mu:"Μ",mu:"μ",nabla:"∇",nbsp:" ",ndash:"–",ne:"≠",ni:"∋",not:"¬",notin:"∉",nsub:"⊄",Ntilde:"Ñ",ntilde:"ñ",Nu:"Ν",nu:"ν",Oacute:"Ó",oacute:"ó",Ocirc:"Ô",ocirc:"ô",OElig:"Œ",oelig:"œ",Ograve:"Ò",ograve:"ò",oline:"‾",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",oplus:"⊕",or:"∨",ordf:"ª",ordm:"º",Oslash:"Ø",oslash:"ø",Otilde:"Õ",otilde:"õ",otimes:"⊗",Ouml:"Ö",ouml:"ö",para:"¶",permil:"‰",perp:"⊥",Phi:"Φ",phi:"φ",Pi:"Π",pi:"π",piv:"ϖ",plusmn:"±",pound:"£",prime:"′",Prime:"″",prod:"∏",prop:"∝",Psi:"Ψ",psi:"ψ",quot:'"',radic:"√",rang:"⟩",raquo:"»",rarr:"→",rArr:"⇒",rceil:"⌉",rdquo:"”",real:"ℜ",reg:"®",rfloor:"⌋",Rho:"Ρ",rho:"ρ",rlm:"‏",rsaquo:"›",rsquo:"’",sbquo:"‚",Scaron:"Š",scaron:"š",sdot:"⋅",sect:"§",shy:"­",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sim:"∼",spades:"♠",sub:"⊂",sube:"⊆",sum:"∑",sup:"⊃",sup1:"¹",sup2:"²",sup3:"³",supe:"⊇",szlig:"ß",Tau:"Τ",tau:"τ",there4:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thinsp:" ",THORN:"Þ",thorn:"þ",tilde:"˜",times:"×",trade:"™",Uacute:"Ú",uacute:"ú",uarr:"↑",uArr:"⇑",Ucirc:"Û",ucirc:"û",Ugrave:"Ù",ugrave:"ù",uml:"¨",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",Uuml:"Ü",uuml:"ü",weierp:"℘",Xi:"Ξ",xi:"ξ",Yacute:"Ý",yacute:"ý",yen:"¥",yuml:"ÿ",Yuml:"Ÿ",Zeta:"Ζ",zeta:"ζ",zwj:"‍",zwnj:"‌",ngsp:""},M=function(){var t={TAG_OPEN_START:0,TAG_OPEN_END:1,TAG_OPEN_END_VOID:2,TAG_CLOSE:3,TEXT:4,ESCAPABLE_RAW_TEXT:5,RAW_TEXT:6,COMMENT_START:7,COMMENT_END:8,CDATA_START:9,CDATA_END:10,ATTR_NAME:11,ATTR_VALUE:12,DOC_TYPE:13,EXPANSION_FORM_START:14,EXPANSION_CASE_VALUE:15,EXPANSION_CASE_EXP_START:16,EXPANSION_CASE_EXP_END:17,EXPANSION_FORM_END:18,EOF:19};return t[t.TAG_OPEN_START]="TAG_OPEN_START",t[t.TAG_OPEN_END]="TAG_OPEN_END",t[t.TAG_OPEN_END_VOID]="TAG_OPEN_END_VOID",t[t.TAG_CLOSE]="TAG_CLOSE",t[t.TEXT]="TEXT",t[t.ESCAPABLE_RAW_TEXT]="ESCAPABLE_RAW_TEXT",t[t.RAW_TEXT]="RAW_TEXT",t[t.COMMENT_START]="COMMENT_START",t[t.COMMENT_END]="COMMENT_END",t[t.CDATA_START]="CDATA_START",t[t.CDATA_END]="CDATA_END",t[t.ATTR_NAME]="ATTR_NAME",t[t.ATTR_VALUE]="ATTR_VALUE",t[t.DOC_TYPE]="DOC_TYPE",t[t.EXPANSION_FORM_START]="EXPANSION_FORM_START",t[t.EXPANSION_CASE_VALUE]="EXPANSION_CASE_VALUE",t[t.EXPANSION_CASE_EXP_START]="EXPANSION_CASE_EXP_START",t[t.EXPANSION_CASE_EXP_END]="EXPANSION_CASE_EXP_END",t[t.EXPANSION_FORM_END]="EXPANSION_FORM_END",t[t.EOF]="EOF",t}();class q{constructor(t,e,n){this.type=t,this.parts=e,this.sourceSpan=n}}class j extends w{constructor(t,e,n){super(n,t),this.tokenType=e}}class F{constructor(t,e){this.tokens=t,this.errors=e}}const V=/\r\n?/g;function G(t){return`Unexpected character "${0===t?"EOF":String.fromCharCode(t)}"`}function B(t){return`Unknown entity "${t}" - use the "&#<decimal>;" or  "&#x<hex>;" syntax`}class z{constructor(t){this.error=t}}class Y{constructor(t,e,n,a=N){this._file=t,this._getTagDefinition=e,this._tokenizeIcu=n,this._interpolationConfig=a,this._peek=-1,this._nextPeek=-1,this._index=-1,this._line=0,this._column=-1,this._expansionCaseStack=[],this._inInterpolation=!1,this.tokens=[],this.errors=[],this._input=t.content,this._length=t.content.length,this._advance()}_processCarriageReturns(t){return t.replace(V,"\n")}tokenize(){for(;0!==this._peek;){const e=this._getLocation();try{this._attemptCharCode(60)?this._attemptCharCode(33)?this._attemptCharCode(91)?this._consumeCdata(e):this._attemptCharCode(45)?this._consumeComment(e):this._consumeDocType(e):this._attemptCharCode(47)?this._consumeTagClose(e):this._consumeTagOpen(e):this._tokenizeIcu&&this._tokenizeExpansionForm()||this._consumeText()}catch(t){if(!(t instanceof z))throw t;this.errors.push(t.error)}}return this._beginToken(M.EOF),this._endToken([]),new F(function(t){const e=[];let n=void 0;for(let a=0;a<t.length;a++){const r=t[a];n&&n.type===M.TEXT&&r.type===M.TEXT?(n.parts[0]+=r.parts[0],n.sourceSpan.end=r.sourceSpan.end):(n=r,e.push(n))}return e}(this.tokens),this.errors)}_tokenizeExpansionForm(){if($(this._input,this._index,this._interpolationConfig))return this._consumeExpansionFormStart(),!0;if((61===(t=this._peek)||A(t)||R(t))&&this._isInExpansionForm())return this._consumeExpansionCaseStart(),!0;var t;if(125===this._peek){if(this._isInExpansionCase())return this._consumeExpansionCaseEnd(),!0;if(this._isInExpansionForm())return this._consumeExpansionFormEnd(),!0}return!1}_getLocation(){return new v(this._file,this._index,this._line,this._column)}_getSpan(t=this._getLocation(),e=this._getLocation()){return new _(t,e)}_beginToken(t,e=this._getLocation()){this._currentTokenStart=e,this._currentTokenType=t}_endToken(t,e=this._getLocation()){const n=new q(this._currentTokenType,t,new _(this._currentTokenStart,e));return this.tokens.push(n),this._currentTokenStart=null,this._currentTokenType=null,n}_createError(t,e){this._isInExpansionForm()&&(t+=' (Do you have an unescaped "{" in your template? Use "{{ \'{\' }}") to escape it.)');const n=new j(t,this._currentTokenType,e);return this._currentTokenStart=null,this._currentTokenType=null,new z(n)}_advance(){if(this._index>=this._length)throw this._createError(G(0),this._getSpan());10===this._peek?(this._line++,this._column=0):10!==this._peek&&13!==this._peek&&this._column++,this._index++,this._peek=this._index>=this._length?0:this._input.charCodeAt(this._index),this._nextPeek=this._index+1>=this._length?0:this._input.charCodeAt(this._index+1)}_attemptCharCode(t){return this._peek===t&&(this._advance(),!0)}_attemptCharCodeCaseInsensitive(t){return e=t,Z(this._peek)===Z(e)&&(this._advance(),!0);var e}_requireCharCode(t){const e=this._getLocation();if(!this._attemptCharCode(t))throw this._createError(G(this._peek),this._getSpan(e,e))}_attemptStr(t){const e=t.length;if(this._index+e>this._length)return!1;const n=this._savePosition();for(let a=0;a<e;a++)if(!this._attemptCharCode(t.charCodeAt(a)))return this._restorePosition(n),!1;return!0}_attemptStrCaseInsensitive(t){for(let e=0;e<t.length;e++)if(!this._attemptCharCodeCaseInsensitive(t.charCodeAt(e)))return!1;return!0}_requireStr(t){const e=this._getLocation();if(!this._attemptStr(t))throw this._createError(G(this._peek),this._getSpan(e))}_attemptCharCodeUntilFn(t){for(;!t(this._peek);)this._advance()}_requireCharCodeUntilFn(t,e){const n=this._getLocation();if(this._attemptCharCodeUntilFn(t),this._index-n.offset<e)throw this._createError(G(this._peek),this._getSpan(n,n))}_attemptUntilChar(t){for(;this._peek!==t;)this._advance()}_readChar(t){if(t&&38===this._peek)return this._decodeEntity();{const t=this._index;return this._advance(),this._input[t]}}_decodeEntity(){const t=this._getLocation();if(this._advance(),!this._attemptCharCode(35)){const e=this._savePosition();if(this._attemptCharCodeUntilFn(K),59!==this._peek)return this._restorePosition(e),"&";this._advance();const n=this._input.substring(t.offset+1,this._index-1),a=P[n];if(!a)throw this._createError(B(n),this._getSpan(t));return a}{const n=this._attemptCharCode(120)||this._attemptCharCode(88),a=this._getLocation().offset;if(this._attemptCharCodeUntilFn(W),59!==this._peek)throw this._createError(G(this._peek),this._getSpan());this._advance();const r=this._input.substring(a,this._index-1);try{const t=parseInt(r,n?16:10);return String.fromCharCode(t)}catch(e){const n=this._input.substring(t.offset+1,this._index-1);throw this._createError(B(n),this._getSpan(t))}}}_consumeRawText(t,e,n){let a;const r=this._getLocation();this._beginToken(t?M.ESCAPABLE_RAW_TEXT:M.RAW_TEXT,r);const i=[];for(;a=this._getLocation(),!this._attemptCharCode(e)||!n();)for(this._index>a.offset&&i.push(this._input.substring(a.offset,this._index));this._peek!==e;)i.push(this._readChar(t));return this._endToken([this._processCarriageReturns(i.join(""))],a)}_consumeComment(t){this._beginToken(M.COMMENT_START,t),this._requireCharCode(45),this._endToken([]);const e=this._consumeRawText(!1,45,()=>this._attemptStr("->"));this._beginToken(M.COMMENT_END,e.sourceSpan.end),this._endToken([])}_consumeCdata(t){this._beginToken(M.CDATA_START,t),this._requireStr("CDATA["),this._endToken([]);const e=this._consumeRawText(!1,93,()=>this._attemptStr("]>"));this._beginToken(M.CDATA_END,e.sourceSpan.end),this._endToken([])}_consumeDocType(t){this._beginToken(M.DOC_TYPE,t),this._attemptUntilChar(62),this._advance(),this._endToken([this._input.substring(t.offset+2,this._index-1)])}_consumePrefixAndName(){const t=this._index;let e=null;for(;58!==this._peek&&!(((n=this._peek)<97||122<n)&&(n<65||90<n)&&(n<48||n>57));)this._advance();var n;let a;return 58===this._peek?(this._advance(),e=this._input.substring(t,this._index-1),a=this._index):a=t,this._requireCharCodeUntilFn(U,this._index===a?1:0),[e,this._input.substring(a,this._index)]}_consumeTagOpen(t){const e=this._savePosition();let n,a;try{if(!A(this._peek))throw this._createError(G(this._peek),this._getSpan());const e=this._index;for(this._consumeTagOpenStart(t),n=this._input.substring(e,this._index),a=n.toLowerCase(),this._attemptCharCodeUntilFn(H);47!==this._peek&&62!==this._peek;)this._consumeAttributeName(),this._attemptCharCodeUntilFn(H),this._attemptCharCode(61)&&(this._attemptCharCodeUntilFn(H),this._consumeAttributeValue()),this._attemptCharCodeUntilFn(H);this._consumeTagOpenEnd()}catch(i){if(i instanceof z)return this._restorePosition(e),this._beginToken(M.TEXT,t),void this._endToken(["<"]);throw i}const r=this._getTagDefinition(n).contentType;r===k.RAW_TEXT?this._consumeRawTextWithTagClose(a,!1):r===k.ESCAPABLE_RAW_TEXT&&this._consumeRawTextWithTagClose(a,!0)}_consumeRawTextWithTagClose(t,e){const n=this._consumeRawText(e,60,()=>!!this._attemptCharCode(47)&&(this._attemptCharCodeUntilFn(H),!!this._attemptStrCaseInsensitive(t)&&(this._attemptCharCodeUntilFn(H),this._attemptCharCode(62))));this._beginToken(M.TAG_CLOSE,n.sourceSpan.end),this._endToken([null,t])}_consumeTagOpenStart(t){this._beginToken(M.TAG_OPEN_START,t);const e=this._consumePrefixAndName();this._endToken(e)}_consumeAttributeName(){this._beginToken(M.ATTR_NAME);const t=this._consumePrefixAndName();this._endToken(t)}_consumeAttributeValue(){let t;if(this._beginToken(M.ATTR_VALUE),39===this._peek||34===this._peek){const e=this._peek;this._advance();const n=[];for(;this._peek!==e;)n.push(this._readChar(!0));t=n.join(""),this._advance()}else{const e=this._index;this._requireCharCodeUntilFn(U,1),t=this._input.substring(e,this._index)}this._endToken([this._processCarriageReturns(t)])}_consumeTagOpenEnd(){const t=this._attemptCharCode(47)?M.TAG_OPEN_END_VOID:M.TAG_OPEN_END;this._beginToken(t),this._requireCharCode(62),this._endToken([])}_consumeTagClose(t){this._beginToken(M.TAG_CLOSE,t),this._attemptCharCodeUntilFn(H);const e=this._consumePrefixAndName();this._attemptCharCodeUntilFn(H),this._requireCharCode(62),this._endToken(e)}_consumeExpansionFormStart(){this._beginToken(M.EXPANSION_FORM_START,this._getLocation()),this._requireCharCode(123),this._endToken([]),this._expansionCaseStack.push(M.EXPANSION_FORM_START),this._beginToken(M.RAW_TEXT,this._getLocation());const t=this._readUntil(44);this._endToken([t],this._getLocation()),this._requireCharCode(44),this._attemptCharCodeUntilFn(H),this._beginToken(M.RAW_TEXT,this._getLocation());const e=this._readUntil(44);this._endToken([e],this._getLocation()),this._requireCharCode(44),this._attemptCharCodeUntilFn(H)}_consumeExpansionCaseStart(){this._beginToken(M.EXPANSION_CASE_VALUE,this._getLocation());const t=this._readUntil(123).trim();this._endToken([t],this._getLocation()),this._attemptCharCodeUntilFn(H),this._beginToken(M.EXPANSION_CASE_EXP_START,this._getLocation()),this._requireCharCode(123),this._endToken([],this._getLocation()),this._attemptCharCodeUntilFn(H),this._expansionCaseStack.push(M.EXPANSION_CASE_EXP_START)}_consumeExpansionCaseEnd(){this._beginToken(M.EXPANSION_CASE_EXP_END,this._getLocation()),this._requireCharCode(125),this._endToken([],this._getLocation()),this._attemptCharCodeUntilFn(H),this._expansionCaseStack.pop()}_consumeExpansionFormEnd(){this._beginToken(M.EXPANSION_FORM_END,this._getLocation()),this._requireCharCode(125),this._endToken([]),this._expansionCaseStack.pop()}_consumeText(){const t=this._getLocation();this._beginToken(M.TEXT,t);const e=[];do{this._interpolationConfig&&this._attemptStr(this._interpolationConfig.start)?(e.push(this._interpolationConfig.start),this._inInterpolation=!0):this._interpolationConfig&&this._inInterpolation&&this._attemptStr(this._interpolationConfig.end)?(e.push(this._interpolationConfig.end),this._inInterpolation=!1):e.push(this._readChar(!0))}while(!this._isTextEnd());this._endToken([this._processCarriageReturns(e.join(""))])}_isTextEnd(){if(60===this._peek||0===this._peek)return!0;if(this._tokenizeIcu&&!this._inInterpolation){if($(this._input,this._index,this._interpolationConfig))return!0;if(125===this._peek&&this._isInExpansionCase())return!0}return!1}_savePosition(){return[this._peek,this._index,this._column,this._line,this.tokens.length]}_readUntil(t){const e=this._index;return this._attemptUntilChar(t),this._input.substring(e,this._index)}_restorePosition(t){this._peek=t[0],this._index=t[1],this._column=t[2],this._line=t[3];const e=t[4];e<this.tokens.length&&(this.tokens=this.tokens.slice(0,e))}_isInExpansionCase(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===M.EXPANSION_CASE_EXP_START}_isInExpansionForm(){return this._expansionCaseStack.length>0&&this._expansionCaseStack[this._expansionCaseStack.length-1]===M.EXPANSION_FORM_START}}function H(t){return!C(t)||0===t}function U(t){return C(t)||62===t||47===t||39===t||34===t||61===t}function W(t){return 59===t||0===t||!function(t){return t>=97&&t<=102||t>=65&&t<=70||R(t)}(t)}function K(t){return 59===t||0===t||!A(t)}function $(t,e,n){const a=!!n&&t.indexOf(n.start,e)===e;return 123===t.charCodeAt(e)&&!a}function Z(t){return t>=97&&t<=122?t-97+65:t}class J extends w{constructor(t,e,n){super(e,n),this.elementName=t}static create(t,e,n){return new J(t,e,n)}}class Q{constructor(t,e){this.rootNodes=t,this.errors=e}}class X{constructor(t){this.getTagDefinition=t}parse(t,e,n=!1,a=N){const r=function(t,e,n,a=!1,r=N){return new Y(new x(t,e),n,a,r).tokenize()}(t,e,this.getTagDefinition,n,a),i=new tt(r.tokens,this.getTagDefinition).build();return new Q(i.rootNodes,r.errors.concat(i.errors))}}class tt{constructor(t,e){this.tokens=t,this.getTagDefinition=e,this._index=-1,this._rootNodes=[],this._errors=[],this._elementStack=[],this._advance()}build(){for(;this._peek.type!==M.EOF;)this._peek.type===M.TAG_OPEN_START?this._consumeStartTag(this._advance()):this._peek.type===M.TAG_CLOSE?this._consumeEndTag(this._advance()):this._peek.type===M.CDATA_START?(this._closeVoidElement(),this._consumeCdata(this._advance())):this._peek.type===M.COMMENT_START?(this._closeVoidElement(),this._consumeComment(this._advance())):this._peek.type===M.TEXT||this._peek.type===M.RAW_TEXT||this._peek.type===M.ESCAPABLE_RAW_TEXT?(this._closeVoidElement(),this._consumeText(this._advance())):this._peek.type===M.EXPANSION_FORM_START?this._consumeExpansion(this._advance()):this._advance();return new Q(this._rootNodes,this._errors)}_advance(){const t=this._peek;return this._index<this.tokens.length-1&&this._index++,this._peek=this.tokens[this._index],t}_advanceIf(t){return this._peek.type===t?this._advance():null}_consumeCdata(t){this._consumeText(this._advance()),this._advanceIf(M.CDATA_END)}_consumeComment(t){const e=this._advanceIf(M.RAW_TEXT);this._advanceIf(M.COMMENT_END);const n=null!==e?e.parts[0].trim():null;this._addToParent(new d(n,t.sourceSpan))}_consumeExpansion(t){const e=this._advance(),n=this._advance(),a=[];for(;this._peek.type===M.EXPANSION_CASE_VALUE;){const t=this._parseExpansionCase();if(!t)return;a.push(t)}if(this._peek.type!==M.EXPANSION_FORM_END)return void this._errors.push(J.create(null,this._peek.sourceSpan,"Invalid ICU message. Missing '}'."));const r=new _(t.sourceSpan.start,this._peek.sourceSpan.end);this._addToParent(new s(e.parts[0],n.parts[0],a,r,e.sourceSpan)),this._advance()}_parseExpansionCase(){const t=this._advance();if(this._peek.type!==M.EXPANSION_CASE_EXP_START)return this._errors.push(J.create(null,this._peek.sourceSpan,"Invalid ICU message. Missing '{'.")),null;const e=this._advance(),n=this._collectExpansionExpTokens(e);if(!n)return null;const a=this._advance();n.push(new q(M.EOF,[],a.sourceSpan));const r=new tt(n,this.getTagDefinition).build();if(r.errors.length>0)return this._errors=this._errors.concat(r.errors),null;const i=new _(t.sourceSpan.start,a.sourceSpan.end),s=new _(e.sourceSpan.start,a.sourceSpan.end);return new u(t.parts[0],r.rootNodes,i,t.sourceSpan,s)}_collectExpansionExpTokens(t){const e=[],n=[M.EXPANSION_CASE_EXP_START];for(;;){if(this._peek.type!==M.EXPANSION_FORM_START&&this._peek.type!==M.EXPANSION_CASE_EXP_START||n.push(this._peek.type),this._peek.type===M.EXPANSION_CASE_EXP_END){if(!et(n,M.EXPANSION_CASE_EXP_START))return this._errors.push(J.create(null,t.sourceSpan,"Invalid ICU message. Missing '}'.")),null;if(n.pop(),0===n.length)return e}if(this._peek.type===M.EXPANSION_FORM_END){if(!et(n,M.EXPANSION_FORM_START))return this._errors.push(J.create(null,t.sourceSpan,"Invalid ICU message. Missing '}'.")),null;n.pop()}if(this._peek.type===M.EOF)return this._errors.push(J.create(null,t.sourceSpan,"Invalid ICU message. Missing '}'.")),null;e.push(this._advance())}}_consumeText(t){let e=t.parts[0];if(e.length>0&&"\n"===e[0]){const t=this._getParentElement();null!==t&&0===t.children.length&&this.getTagDefinition(t.name).ignoreFirstLf&&(e=e.substring(1))}e.length>0&&this._addToParent(new i(e,t.sourceSpan))}_closeVoidElement(){const t=this._getParentElement();t&&this.getTagDefinition(t.name).isVoid&&this._elementStack.pop()}_consumeStartTag(t){const e=t.parts[0],n=t.parts[1],a=[];for(;this._peek.type===M.ATTR_NAME;)a.push(this._consumeAttr(this._advance()));const r=this._getElementFullName(e,n,this._getParentElement());let i=!1;if(this._peek.type===M.TAG_OPEN_END_VOID){this._advance(),i=!0;const e=this.getTagDefinition(r);e.canSelfClose||null!==L(r)||e.isVoid||this._errors.push(J.create(r,t.sourceSpan,`Only void and foreign elements can be self closed "${t.parts[1]}"`))}else this._peek.type===M.TAG_OPEN_END&&(this._advance(),i=!1);const s=new _(t.sourceSpan.start,this._peek.sourceSpan.start),u=new l(r,a,[],s,s,void 0);this._pushElement(u),i&&(this._popElement(r),u.endSourceSpan=s)}_pushElement(t){const e=this._getParentElement();e&&this.getTagDefinition(e.name).isClosedByChild(t.name)&&this._elementStack.pop();const n=this.getTagDefinition(t.name),{parent:a,container:r}=this._getParentElementSkippingContainers();if(a&&n.requireExtraParent(a.name)){const e=new l(n.parentToAdd,[],[],t.sourceSpan,t.startSourceSpan,t.endSourceSpan);this._insertBeforeContainer(a,r,e)}this._addToParent(t),this._elementStack.push(t)}_consumeEndTag(t){const e=this._getElementFullName(t.parts[0],t.parts[1],this._getParentElement());this._getParentElement()&&(this._getParentElement().endSourceSpan=t.sourceSpan),this.getTagDefinition(e).isVoid?this._errors.push(J.create(e,t.sourceSpan,`Void elements do not have end tags "${t.parts[1]}"`)):this._popElement(e)||this._errors.push(J.create(e,t.sourceSpan,`Unexpected closing tag "${e}". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.html#closing-elements-that-have-implied-end-tags`))}_popElement(t){for(let e=this._elementStack.length-1;e>=0;e--){const n=this._elementStack[e];if(n.name===t)return this._elementStack.splice(e,this._elementStack.length-e),!0;if(!this.getTagDefinition(n.name).closedByParent)return!1}return!1}_consumeAttr(t){const e=D(t.parts[0],t.parts[1]);let n=t.sourceSpan.end,a="",r=void 0;if(this._peek.type===M.ATTR_VALUE){const t=this._advance();a=t.parts[0],n=t.sourceSpan.end,r=t.sourceSpan}return new o(e,a,new _(t.sourceSpan.start,n),r)}_getParentElement(){return this._elementStack.length>0?this._elementStack[this._elementStack.length-1]:null}_getParentElementSkippingContainers(){let t=null;for(let e=this._elementStack.length-1;e>=0;e--){if("ng-container"!==E(this._elementStack[e].name)[1])return{parent:this._elementStack[e],container:t};t=this._elementStack[e]}return{parent:null,container:t}}_addToParent(t){const e=this._getParentElement();null!==e?e.children.push(t):this._rootNodes.push(t)}_insertBeforeContainer(t,e,n){if(e){if(t){const a=t.children.indexOf(e);t.children[a]=n}else this._rootNodes.push(n);n.children.push(e),this._elementStack.splice(this._elementStack.indexOf(e),0,n)}else this._addToParent(n),this._elementStack.push(n)}_getElementFullName(t,e,n){return null===t&&null===(t=this.getTagDefinition(e).implicitNamespacePrefix)&&null!==n&&(t=L(n.name)),D(t,e)}}function et(t,e){return t.length>0&&t[t.length-1]===e}class nt{constructor(){this.closedByParent=!1,this.contentType=k.PARSABLE_DATA,this.isVoid=!1,this.ignoreFirstLf=!1,this.canSelfClose=!0}requireExtraParent(t){return!1}isClosedByChild(t){return!1}}const at=new nt;function rt(t){return at}class it{constructor({closedByChildren:t,requiredParents:e,implicitNamespacePrefix:n,contentType:a=k.PARSABLE_DATA,closedByParent:r=!1,isVoid:i=!1,ignoreFirstLf:s=!1}={}){this.closedByChildren={},this.closedByParent=!1,this.canSelfClose=!1,t&&t.length>0&&t.forEach(t=>this.closedByChildren[t]=!0),this.isVoid=i,this.closedByParent=r||i,e&&e.length>0&&(this.requiredParents={},this.parentToAdd=e[0],e.forEach(t=>this.requiredParents[t]=!0)),this.implicitNamespacePrefix=n||null,this.contentType=a,this.ignoreFirstLf=s}requireExtraParent(t){if(!this.requiredParents)return!1;if(!t)return!0;const e=t.toLowerCase();return!("template"===e||"ng-template"===t)&&!0!==this.requiredParents[e]}isClosedByChild(t){return this.isVoid||t.toLowerCase()in this.closedByChildren}}const st={base:new it({isVoid:!0}),meta:new it({isVoid:!0}),area:new it({isVoid:!0}),embed:new it({isVoid:!0}),link:new it({isVoid:!0}),img:new it({isVoid:!0}),input:new it({isVoid:!0}),param:new it({isVoid:!0}),hr:new it({isVoid:!0}),br:new it({isVoid:!0}),source:new it({isVoid:!0}),track:new it({isVoid:!0}),wbr:new it({isVoid:!0}),p:new it({closedByChildren:["address","article","aside","blockquote","div","dl","fieldset","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","main","nav","ol","p","pre","section","table","ul"],closedByParent:!0}),thead:new it({closedByChildren:["tbody","tfoot"]}),tbody:new it({closedByChildren:["tbody","tfoot"],closedByParent:!0}),tfoot:new it({closedByChildren:["tbody"],closedByParent:!0}),tr:new it({closedByChildren:["tr"],requiredParents:["tbody","tfoot","thead"],closedByParent:!0}),td:new it({closedByChildren:["td","th"],closedByParent:!0}),th:new it({closedByChildren:["td","th"],closedByParent:!0}),col:new it({requiredParents:["colgroup"],isVoid:!0}),svg:new it({implicitNamespacePrefix:"svg"}),math:new it({implicitNamespacePrefix:"math"}),li:new it({closedByChildren:["li"],closedByParent:!0}),dt:new it({closedByChildren:["dt","dd"]}),dd:new it({closedByChildren:["dt","dd"],closedByParent:!0}),rb:new it({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),rt:new it({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),rtc:new it({closedByChildren:["rb","rtc","rp"],closedByParent:!0}),rp:new it({closedByChildren:["rb","rt","rtc","rp"],closedByParent:!0}),optgroup:new it({closedByChildren:["optgroup"],closedByParent:!0}),option:new it({closedByChildren:["option","optgroup"],closedByParent:!0}),pre:new it({ignoreFirstLf:!0}),listing:new it({ignoreFirstLf:!0}),style:new it({contentType:k.RAW_TEXT}),script:new it({contentType:k.RAW_TEXT}),title:new it({contentType:k.ESCAPABLE_RAW_TEXT}),textarea:new it({contentType:k.ESCAPABLE_RAW_TEXT,ignoreFirstLf:!0})},ut=new it;function ot(t){return st[t.toLowerCase()]||ut}class lt extends class{visitText(t,e){}visitContainer(t,e){t.children.forEach(t=>t.visit(this))}visitIcu(t,e){Object.keys(t.cases).forEach(e=>{t.cases[e].visit(this)})}visitTagPlaceholder(t,e){t.children.forEach(t=>t.visit(this))}visitPlaceholder(t,e){}visitIcuPlaceholder(t,e){}}{constructor(t,e){super(),this.mapName=e,this.internalToPublic={},this.publicToNextId={},this.publicToInternal={},t.nodes.forEach(t=>t.visit(this))}toPublicName(t){return this.internalToPublic.hasOwnProperty(t)?this.internalToPublic[t]:null}toInternalName(t){return this.publicToInternal.hasOwnProperty(t)?this.publicToInternal[t]:null}visitText(t,e){return null}visitTagPlaceholder(t,e){this.visitPlaceholderName(t.startName),super.visitTagPlaceholder(t,e),this.visitPlaceholderName(t.closeName)}visitPlaceholder(t,e){this.visitPlaceholderName(t.name)}visitIcuPlaceholder(t,e){this.visitPlaceholderName(t.name)}visitPlaceholderName(t){if(!t||this.internalToPublic.hasOwnProperty(t))return;let e=this.mapName(t);if(this.publicToInternal.hasOwnProperty(e)){const t=this.publicToNextId[e];this.publicToNextId[e]=t+1,e=`${e}_${t}`}else this.publicToNextId[e]=1;this.internalToPublic[t]=e,this.publicToInternal[e]=t}}const dt=new a.I18nSelectPipe;class ct{constructor(t,e){this.params=e,this.i18nPluralPipe=new a.I18nPluralPipe(new a.NgLocaleLocalization(t))}visitElement(t,e){return ot(t.name).isVoid?`<${t.name}${this.serializeNodes(t.attrs," ")}/>`:`<${t.name}${this.serializeNodes(t.attrs," ")}>${this.serializeNodes(t.children)}</${t.name}>`}visitAttribute(t,e){return`${t.name}="${t.value}"`}visitText(t,e){return t.value}visitComment(t,e){return`\x3c!--${t.value}--\x3e`}visitExpansion(t,e){const n={};switch(t.cases.forEach(t=>n[t.value]=this.serializeNodes(t.expression)),t.type){case"select":return dt.transform(this.params[t.switchValue]||"",n);case"plural":return this.i18nPluralPipe.transform(this.params[t.switchValue],n)}throw new Error(`Unknown expansion type "${t.type}"`)}visitExpansionCase(t,e){return` ${t.value} {${this.serializeNodes(t.expression)}}`}serializeNodes(t,e=""){return 0===t.length?"":e+t.map(t=>t.visit(this,null)).join(e)}}function ft(t){return t.id||function(t){const e=At(t),n=function(t,e){const n=Array(t.length+3>>>2);for(let a=0;a<n.length;a++)n[a]=It(t,4*a,e);return n}(e,xt.Big),a=8*e.length,r=new Array(80);let[i,s,u,o,l]=[1732584193,4023233417,2562383102,271733878,3285377520];n[a>>5]|=128<<24-a%32,n[15+(a+64>>9<<4)]=a;for(let d=0;d<n.length;d+=16){const[t,e,a,c,f]=[i,s,u,o,l];for(let h=0;h<80;h++){r[h]=h<16?n[d+h]:Ot(r[h-3]^r[h-8]^r[h-14]^r[h-16],1);const[t,e]=bt(h,s,u,o),a=[Ot(i,5),t,l,e,r[h]].reduce(_t);[l,o,u,s,i]=[o,u,Ot(s,30),i,a]}[i,s,u,o,l]=[_t(i,t),_t(s,e),_t(u,a),_t(o,c),_t(l,f)]}return function(t){let e="";for(let n=0;n<t.length;n++){const a=St(t,n);e+=(a>>>4).toString(16)+(15&a).toString(16)}return e.toLowerCase()}(Nt([i,s,u,o,l]))}((e=t.nodes,e.map(t=>t.visit(gt,null))).join("")+`[${t.meaning}]`);var e}class ht{visitText(t,e){return t.value}visitContainer(t,e){return`[${t.children.map(t=>t.visit(this)).join(", ")}]`}visitIcu(t,e){const n=Object.keys(t.cases).map(e=>`${e} {${t.cases[e].visit(this)}}`);return`{${t.expression}, ${t.type}, ${n.join(", ")}}`}visitTagPlaceholder(t,e){return t.isVoid?`<ph tag name="${t.startName}"/>`:`<ph tag name="${t.startName}">${t.children.map(t=>t.visit(this)).join(", ")}</ph name="${t.closeName}">`}visitPlaceholder(t,e){return t.value?`<ph name="${t.name}">${t.value}</ph>`:`<ph name="${t.name}"/>`}visitIcuPlaceholder(t,e){return`<ph icu name="${t.name}">${t.value.visit(this)}</ph>`}}const gt=new ht;class pt extends ht{visitIcu(t,e){const n=Object.keys(t.cases).map(e=>`${e} {${t.cases[e].visit(this)}}`);return`{${t.type}, ${n.join(", ")}}`}}function bt(t,e,n,a){return t<20?[e&n|~e&a,1518500249]:t<40?[e^n^a,1859775393]:t<60?[e&n|e&a|n&a,2400959708]:[e^n^a,3395469782]}function mt(t){const e=At(t);let[n,a]=[yt(e,0),yt(e,102072)];return 0!==n||0!==a&&1!==a||(n^=319790063,a^=-1801410264),[n,a]}function yt(t,e){let n,[a,r]=[2654435769,2654435769];const i=t.length;for(n=0;n+12<=i;n+=12)a=_t(a,It(t,n,xt.Little)),r=_t(r,It(t,n+4,xt.Little)),e=_t(e,It(t,n+8,xt.Little)),[a,r,e]=vt([a,r,e]);return a=_t(a,It(t,n,xt.Little)),r=_t(r,It(t,n+4,xt.Little)),e=_t(e,i),vt([a,r,e=_t(e,It(t,n+8,xt.Little)<<8)])[2]}function vt([t,e,n]){return t=wt(t,e),t=wt(t,n),t^=n>>>13,e=wt(e,n),e=wt(e,t),e^=t<<8,n=wt(n,t),n=wt(n,e),n^=e>>>13,t=wt(t,e),t=wt(t,n),t^=n>>>12,e=wt(e,n),e=wt(e,t),e^=t<<16,n=wt(n,t),n=wt(n,e),n^=e>>>5,t=wt(t,e),t=wt(t,n),t^=n>>>3,e=wt(e,n),e=wt(e,t),e^=t<<10,n=wt(n,t),n=wt(n,e),[t,e,n^=e>>>15]}const xt=function(){var t={Little:0,Big:1};return t[t.Little]="Little",t[t.Big]="Big",t}();function _t(t,e){return Tt(t,e)[1]}function Tt(t,e){const n=(65535&t)+(65535&e),a=(t>>>16)+(e>>>16)+(n>>>16);return[a>>>16,a<<16|65535&n]}function wt(t,e){const n=(65535&t)-(65535&e);return(t>>16)-(e>>16)+(n>>16)<<16|65535&n}function Ot(t,e){return t<<e|t>>>32-e}function St(t,e){return e>=t.length?0:255&t.charCodeAt(e)}function It(t,e,n){let a=0;if(n===xt.Big)for(let r=0;r<4;r++)a+=St(t,e+r)<<24-8*r;else for(let r=0;r<4;r++)a+=St(t,e+r)<<8*r;return a}function Nt(t){return t.reduce((t,e)=>t+function(t){let e="";for(let n=0;n<4;n++)e+=String.fromCharCode(t>>>8*(3-n)&255);return e}(e),"")}function Ct(t,e){let n="";const a=Math.max(t.length,e.length);for(let r=0,i=0;r<a||i;r++){const a=i+ +(t[r]||0)+ +(e[r]||0);a>=10?(i=1,n+=a-10):(i=0,n+=a)}return n}function Rt(t,e){let n="",a=e;for(;0!==t;t>>>=1)1&t&&(n=Ct(n,a)),a=Ct(a,a);return n}function At(t){let e="";for(let n=0;n<t.length;n++){let a=t.charCodeAt(n);if(a>=55296&&a<=56319&&t.length>n+1){const e=t.charCodeAt(n+1);e>=56320&&e<=57343&&(n++,a=(a-55296<<10)+e-56320+65536)}a<=127?e+=String.fromCharCode(a):a<=2047?e+=String.fromCharCode(a>>6&31|192,63&a|128):a<=65535?e+=String.fromCharCode(a>>12|224,a>>6&63|128,63&a|128):a<=2097151&&(e+=String.fromCharCode(a>>18&7|240,a>>12&63|128,a>>6&63|128,63&a|128))}return e}function kt(t){const e=new Lt,{msgIdToHtml:n,errors:a}=e.parse(t),r={},i=new Dt;if(Object.keys(n).forEach(t=>{const{i18nNodes:e,errors:s}=i.convert(n[t]);a.push(...s),r[t]=e}),a.length)throw new Error("xliff parse errors:\n"+a.join("\n"));return r}const Et=ft;class Lt{parse(t){this._unitMlString=null,this._msgIdToHtml={};const e=new X(rt).parse(t,"",!1);return this._errors=e.errors,c(this,e.rootNodes,null),{msgIdToHtml:this._msgIdToHtml,errors:this._errors}}visitElement(t,e){switch(t.name){case"trans-unit":this._unitMlString=null;const e=t.attrs.find(t=>"id"===t.name);if(e){const n=e.value;this._msgIdToHtml.hasOwnProperty(n)?this._addError(t,"Duplicated translations for msg "+n):(c(this,t.children,null),"string"==typeof this._unitMlString?this._msgIdToHtml[n]=this._unitMlString:this._addError(t,`Message ${n} misses a translation`))}else this._addError(t,'<trans-unit> misses the "id" attribute');break;case"source":break;case"target":const n=t.startSourceSpan.start.file.content.slice(t.startSourceSpan.end.offset,t.endSourceSpan.start.offset);this._unitMlString=n;break;case"file":c(this,t.children,null);break;default:c(this,t.children,null)}}visitAttribute(t,e){}visitText(t,e){}visitComment(t,e){}visitExpansion(t,e){}visitExpansionCase(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}class Dt{convert(t){const e=new X(rt).parse(t,"",!0);return this._errors=e.errors,{i18nNodes:this._errors.length>0||0===e.rootNodes.length?[]:c(this,e.rootNodes),errors:this._errors}}visitText(t,e){return new h(t.value,t.sourceSpan)}visitElement(t,e){if("x"===t.name){const e=t.attrs.find(t=>"id"===t.name);if(e)return new m("",e.value,t.sourceSpan);this._addError(t,'<x> misses the "id" attribute')}else this._addError(t,"Unexpected tag");return null}visitExpansion(t,e){const n={};return c(this,t.cases).forEach(e=>{n[e.value]=new g(e.nodes,t.sourceSpan)}),new p(t.switchValue,t.type,n,t.sourceSpan)}visitExpansionCase(t,e){return{value:t.value,nodes:c(this,t.expression)}}visitComment(t,e){}visitAttribute(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}function Pt(t){const e=new qt,{msgIdToHtml:n,errors:a}=e.parse(t),r={},i=new jt;if(Object.keys(n).forEach(t=>{const{i18nNodes:e,errors:s}=i.convert(n[t]);a.push(...s),r[t]=e}),a.length)throw new Error("xliff2 parse errors:\n"+a.join("\n"));return r}const Mt=function(t){if(t.id)return t.id;const e=new pt;return function(t,e){let[n,a]=mt(t);if(e){const[t,r]=mt(e);[n,a]=function([t,e],[n,a]){const[r,i]=Tt(e,a);return[_t(_t(t,n),r),i]}(function([t,e],n){return[t<<n|e>>>32-n,e<<n|t>>>32-n]}([n,a],1),[t,r])}return function(t){let e="",n="1";for(let a=t.length-1;a>=0;a--)e=Ct(e,Rt(St(t,a),n)),n=Rt(256,n);return e.split("").reverse().join("")}(Nt([2147483647&n,a]))}(t.nodes.map(t=>t.visit(e,null)).join(""),t.meaning)};class qt{parse(t){this._unitMlString=null,this._msgIdToHtml={};const e=new X(rt).parse(t,"",!1);return this._errors=e.errors,c(this,e.rootNodes,null),{msgIdToHtml:this._msgIdToHtml,errors:this._errors}}visitElement(t,e){switch(t.name){case"unit":this._unitMlString=null;const e=t.attrs.find(t=>"id"===t.name);if(e){const n=e.value;this._msgIdToHtml.hasOwnProperty(n)?this._addError(t,"Duplicated translations for msg "+n):(c(this,t.children,null),"string"==typeof this._unitMlString?this._msgIdToHtml[n]=this._unitMlString:this._addError(t,`Message ${n} misses a translation`))}else this._addError(t,'<unit> misses the "id" attribute');break;case"source":break;case"target":const n=t.startSourceSpan.start.file.content.slice(t.startSourceSpan.end.offset,t.endSourceSpan.start.offset);this._unitMlString=n;break;case"xliff":const a=t.attrs.find(t=>"version"===t.name);if(a){const e=a.value;"2.0"!==e?this._addError(t,`The XLIFF file version ${e} is not compatible with XLIFF 2.0 serializer`):c(this,t.children,null)}break;default:c(this,t.children,null)}}visitAttribute(t,e){}visitText(t,e){}visitComment(t,e){}visitExpansion(t,e){}visitExpansionCase(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}class jt{convert(t){const e=new X(rt).parse(t,"",!0);return this._errors=e.errors,{i18nNodes:this._errors.length>0||0===e.rootNodes.length?[]:[].concat(...c(this,e.rootNodes)),errors:this._errors}}visitText(t,e){return new h(t.value,t.sourceSpan)}visitElement(t,e){switch(t.name){case"ph":const e=t.attrs.find(t=>"equiv"===t.name);if(e)return[new m("",e.value,t.sourceSpan)];this._addError(t,'<ph> misses the "equiv" attribute');break;case"pc":const n=t.attrs.find(t=>"equivStart"===t.name),a=t.attrs.find(t=>"equivEnd"===t.name);if(n){if(a){const e=a.value;return[].concat(new m("",n.value,t.sourceSpan),...t.children.map(t=>t.visit(this,null)),new m("",e,t.sourceSpan))}this._addError(t,'<ph> misses the "equivEnd" attribute')}else this._addError(t,'<ph> misses the "equivStart" attribute');break;default:this._addError(t,"Unexpected tag")}return null}visitExpansion(t,e){const n={};return c(this,t.cases).forEach(e=>{n[e.value]=new g(e.nodes,t.sourceSpan)}),new p(t.switchValue,t.type,n,t.sourceSpan)}visitExpansionCase(t,e){return{value:t.value,nodes:[].concat(...c(this,t.expression))}}visitComment(t,e){}visitAttribute(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}function Ft(t){return t.toUpperCase().replace(/[^A-Z0-9_]/g,"_")}function Vt(t){const e=new zt,{msgIdToHtml:n,errors:a}=e.parse(t);if(a.length)throw new Error("xtb parse errors:\n"+a.join("\n"));const r={},i=new Yt;return Object.keys(n).forEach(t=>{var e,a;e=r,a=t,Object.defineProperty(e,a,{configurable:!0,enumerable:!0,get:()=>{const r=(()=>{const{i18nNodes:e,errors:a}=i.convert(n[t]);if(a.length)throw new Error("xtb parse errors:\n"+a.join("\n"));return e})();return Object.defineProperty(e,a,{enumerable:!0,value:r}),r},set:t=>{throw new Error("Could not overwrite an XTB translation")}})}),r}const Gt=ft,Bt=function(t){return new lt(t,Ft)};class zt{parse(t){this._bundleDepth=0,this._msgIdToHtml={};const e=new X(rt).parse(t,"",!1);return this._errors=e.errors,c(this,e.rootNodes),{msgIdToHtml:this._msgIdToHtml,errors:this._errors}}visitElement(t,e){switch(t.name){case"translationbundle":this._bundleDepth++,this._bundleDepth>1&&this._addError(t,"<translationbundle> elements can not be nested"),c(this,t.children,null),this._bundleDepth--;break;case"translation":const e=t.attrs.find(t=>"id"===t.name);if(e){const n=e.value;if(this._msgIdToHtml.hasOwnProperty(n))this._addError(t,"Duplicated translations for msg "+n);else{const e=t.startSourceSpan.start.file.content.slice(t.startSourceSpan.end.offset,t.endSourceSpan.start.offset);this._msgIdToHtml[n]=e}}else this._addError(t,'<translation> misses the "id" attribute');break;default:this._addError(t,"Unexpected tag")}}visitAttribute(t,e){}visitText(t,e){}visitComment(t,e){}visitExpansion(t,e){}visitExpansionCase(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}class Yt{convert(t){const e=new X(rt).parse(t,"",!0);return this._errors=e.errors,{i18nNodes:this._errors.length>0||0===e.rootNodes.length?[]:c(this,e.rootNodes),errors:this._errors}}visitText(t,e){return new h(t.value,t.sourceSpan)}visitExpansion(t,e){const n={};return c(this,t.cases).forEach(e=>{n[e.value]=new g(e.nodes,t.sourceSpan)}),new p(t.switchValue,t.type,n,t.sourceSpan)}visitExpansionCase(t,e){return{value:t.value,nodes:c(this,t.expression)}}visitElement(t,e){if("ph"===t.name){const e=t.attrs.find(t=>"name"===t.name);if(e)return new m("",e.value,t.sourceSpan);this._addError(t,'<ph> misses the "name" attribute')}else this._addError(t,"Unexpected tag");return null}visitComment(t,e){}visitAttribute(t,e){}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}class Ht{constructor(t,e,n,a){this.input=e,this.errLocation=n,this.ctxLocation=a,this.message=`Parser Error: ${t} ${n} [${e}] in ${a}`}}class Ut{constructor(t,e){this.start=t,this.end=e}}class Wt{constructor(t){this.span=t}visit(t,e=null){return null}toString(){return"AST"}}class Kt extends Wt{constructor(t,e,n,a){super(t),this.prefix=e,this.uninterpretedExpression=n,this.location=a}visit(t,e=null){return t.visitQuote(this,e)}toString(){return"Quote"}}class $t extends Wt{visit(t,e=null){}}class Zt extends Wt{visit(t,e=null){return t.visitImplicitReceiver(this,e)}}class Jt extends Wt{constructor(t,e){super(t),this.expressions=e}visit(t,e=null){return t.visitChain(this,e)}}class Qt extends Wt{constructor(t,e,n,a){super(t),this.condition=e,this.trueExp=n,this.falseExp=a}visit(t,e=null){return t.visitConditional(this,e)}}class Xt extends Wt{constructor(t,e,n){super(t),this.receiver=e,this.name=n}visit(t,e=null){return t.visitPropertyRead(this,e)}}class te extends Wt{constructor(t,e,n,a){super(t),this.receiver=e,this.name=n,this.value=a}visit(t,e=null){return t.visitPropertyWrite(this,e)}}class ee extends Wt{constructor(t,e,n){super(t),this.receiver=e,this.name=n}visit(t,e=null){return t.visitSafePropertyRead(this,e)}}class ne extends Wt{constructor(t,e,n){super(t),this.obj=e,this.key=n}visit(t,e=null){return t.visitKeyedRead(this,e)}}class ae extends Wt{constructor(t,e,n,a){super(t),this.obj=e,this.key=n,this.value=a}visit(t,e=null){return t.visitKeyedWrite(this,e)}}class re extends Wt{constructor(t,e,n,a){super(t),this.exp=e,this.name=n,this.args=a}visit(t,e=null){return t.visitPipe(this,e)}}class ie extends Wt{constructor(t,e){super(t),this.value=e}visit(t,e=null){return t.visitLiteralPrimitive(this,e)}}class se extends Wt{constructor(t,e){super(t),this.expressions=e}visit(t,e=null){return t.visitLiteralArray(this,e)}}class ue extends Wt{constructor(t,e,n){super(t),this.keys=e,this.values=n}visit(t,e=null){return t.visitLiteralMap(this,e)}}class oe extends Wt{constructor(t,e,n){super(t),this.strings=e,this.expressions=n}visit(t,e=null){return t.visitInterpolation(this,e)}}class le extends Wt{constructor(t,e,n,a){super(t),this.operation=e,this.left=n,this.right=a}visit(t,e=null){return t.visitBinary(this,e)}}class de extends Wt{constructor(t,e){super(t),this.expression=e}visit(t,e=null){return t.visitPrefixNot(this,e)}}class ce extends Wt{constructor(t,e){super(t),this.expression=e}visit(t,e=null){return t.visitNonNullAssert(this,e)}}class fe extends Wt{constructor(t,e,n,a){super(t),this.receiver=e,this.name=n,this.args=a}visit(t,e=null){return t.visitMethodCall(this,e)}}class he extends Wt{constructor(t,e,n,a){super(t),this.receiver=e,this.name=n,this.args=a}visit(t,e=null){return t.visitSafeMethodCall(this,e)}}class ge extends Wt{constructor(t,e,n){super(t),this.target=e,this.args=n}visit(t,e=null){return t.visitFunctionCall(this,e)}}class pe extends Wt{constructor(t,e,n,a){super(new Ut(0,null==e?0:e.length)),this.ast=t,this.source=e,this.location=n,this.errors=a}visit(t,e=null){return this.ast.visit(t,e)}toString(){return`${this.source} in ${this.location}`}}class be{constructor(t,e,n,a,r){this.span=t,this.key=e,this.keyIsVar=n,this.name=a,this.expression=r}}const me=function(){var t={Character:0,Identifier:1,Keyword:2,String:3,Operator:4,Number:5,Error:6};return t[t.Character]="Character",t[t.Identifier]="Identifier",t[t.Keyword]="Keyword",t[t.String]="String",t[t.Operator]="Operator",t[t.Number]="Number",t[t.Error]="Error",t}(),ye=["var","let","as","null","undefined","true","false","if","else","this"];class ve{tokenize(t){const e=new Oe(t),n=[];let a=e.scanToken();for(;null!=a;)n.push(a),a=e.scanToken();return n}}class xe{constructor(t,e,n,a){this.index=t,this.type=e,this.numValue=n,this.strValue=a}isCharacter(t){return this.type===me.Character&&this.numValue===t}isNumber(){return this.type===me.Number}isString(){return this.type===me.String}isOperator(t){return this.type===me.Operator&&this.strValue===t}isIdentifier(){return this.type===me.Identifier}isKeyword(){return this.type===me.Keyword}isKeywordLet(){return this.type===me.Keyword&&"let"===this.strValue}isKeywordAs(){return this.type===me.Keyword&&"as"===this.strValue}isKeywordNull(){return this.type===me.Keyword&&"null"===this.strValue}isKeywordUndefined(){return this.type===me.Keyword&&"undefined"===this.strValue}isKeywordTrue(){return this.type===me.Keyword&&"true"===this.strValue}isKeywordFalse(){return this.type===me.Keyword&&"false"===this.strValue}isKeywordThis(){return this.type===me.Keyword&&"this"===this.strValue}isError(){return this.type===me.Error}toNumber(){return this.type===me.Number?this.numValue:-1}toString(){switch(this.type){case me.Character:case me.Identifier:case me.Keyword:case me.Operator:case me.String:case me.Error:return this.strValue;case me.Number:return this.numValue.toString();default:return null}}}function _e(t,e){return new xe(t,me.Character,e,String.fromCharCode(e))}function Te(t,e){return new xe(t,me.Operator,0,e)}const we=new xe(-1,me.Character,0,"");class Oe{constructor(t){this.input=t,this.peek=0,this.index=-1,this.length=t.length,this.advance()}advance(){this.peek=++this.index>=this.length?0:this.input.charCodeAt(this.index)}scanToken(){const t=this.input,e=this.length;let n=this.peek,a=this.index;for(;n<=32;){if(++a>=e){n=0;break}n=t.charCodeAt(a)}if(this.peek=n,this.index=a,a>=e)return null;if(Se(n))return this.scanIdentifier();if(R(n))return this.scanNumber(a);const r=a;switch(n){case 46:return this.advance(),R(this.peek)?this.scanNumber(r):_e(r,46);case 40:case 41:case 123:case 125:case 91:case 93:case 44:case 58:case 59:return this.scanCharacter(r,n);case 39:case 34:return this.scanString();case 35:case 43:case 45:case 42:case 47:case 37:case 94:return this.scanOperator(r,String.fromCharCode(n));case 63:return this.scanComplexOperator(r,"?",46,".");case 60:case 62:return this.scanComplexOperator(r,String.fromCharCode(n),61,"=");case 33:case 61:return this.scanComplexOperator(r,String.fromCharCode(n),61,"=",61,"=");case 38:return this.scanComplexOperator(r,"&",38,"&");case 124:return this.scanComplexOperator(r,"|",124,"|");case 160:for(;C(this.peek);)this.advance();return this.scanToken()}return this.advance(),this.error(`Unexpected character [${String.fromCharCode(n)}]`,0)}scanCharacter(t,e){return this.advance(),_e(t,e)}scanOperator(t,e){return this.advance(),Te(t,e)}scanComplexOperator(t,e,n,a,r,i){this.advance();let s=e;return this.peek===n&&(this.advance(),s+=a),null!=r&&this.peek===r&&(this.advance(),s+=i),Te(t,s)}scanIdentifier(){const t=this.index;for(this.advance();Ie(this.peek);)this.advance();const e=this.input.substring(t,this.index);return ye.indexOf(e)>-1?new xe(t,me.Keyword,0,e):function(t,e){return new xe(t,me.Identifier,0,e)}(t,e)}scanNumber(t){let e=this.index===t;for(this.advance();;){if(R(this.peek));else if(46===this.peek)e=!1;else{if(101!==(n=this.peek)&&69!==n)break;if(this.advance(),Ne(this.peek)&&this.advance(),!R(this.peek))return this.error("Invalid exponent",-1);e=!1}this.advance()}var n;const a=this.input.substring(t,this.index),r=e?function(t){const e=parseInt(t,10);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+t);return e}(a):parseFloat(a);return new xe(t,me.Number,r,"")}scanString(){const t=this.index,e=this.peek;this.advance();let n="",a=this.index;const r=this.input;for(;this.peek!==e;)if(92===this.peek){let t;if(n+=r.substring(a,this.index),this.advance(),this.peek=this.peek,117===this.peek){const e=r.substring(this.index+1,this.index+5);if(!/^[0-9a-f]+$/i.test(e))return this.error(`Invalid unicode escape [\\u${e}]`,0);t=parseInt(e,16);for(let t=0;t<5;t++)this.advance()}else t=Ce(this.peek),this.advance();n+=String.fromCharCode(t),a=this.index}else{if(0===this.peek)return this.error("Unterminated quote",0);this.advance()}const i=r.substring(a,this.index);return this.advance(),new xe(t,me.String,0,n+i)}error(t,e){const n=this.index+e;return function(t,e){return new xe(t,me.Error,0,e)}(n,`Lexer Error: ${t} at column ${n} in expression [${this.input}]`)}}function Se(t){return 97<=t&&t<=122||65<=t&&t<=90||95===t||36===t}function Ie(t){return A(t)||R(t)||95===t||36===t}function Ne(t){return 45===t||43===t}function Ce(t){switch(t){case 110:return 10;case 102:return 12;case 114:return 13;case 116:return 9;case 118:return 11;default:return t}}class Re{constructor(t,e,n){this.strings=t,this.expressions=e,this.offsets=n}}class Ae{constructor(t,e,n){this.templateBindings=t,this.warnings=e,this.errors=n}}function ke(t){const e=S(t.start)+"([\\s\\S]*?)"+S(t.end);return new RegExp(e,"g")}class Ee{constructor(t){this._lexer=t,this.errors=[]}parseAction(t,e,n=N){this._checkNoInterpolation(t,e,n);const a=this._stripComments(t),r=this._lexer.tokenize(this._stripComments(t)),i=new Le(t,e,r,a.length,!0,this.errors,t.length-a.length).parseChain();return new pe(i,t,e,this.errors)}parseBinding(t,e,n=N){const a=this._parseBindingAst(t,e,n);return new pe(a,t,e,this.errors)}parseSimpleBinding(t,e,n=N){const a=this._parseBindingAst(t,e,n),r=De.check(a);return r.length>0&&this._reportError("Host binding expression cannot contain "+r.join(" "),t,e),new pe(a,t,e,this.errors)}_reportError(t,e,n,a){this.errors.push(new Ht(t,e,n,a))}_parseBindingAst(t,e,n){const a=this._parseQuote(t,e);if(null!=a)return a;this._checkNoInterpolation(t,e,n);const r=this._stripComments(t),i=this._lexer.tokenize(r);return new Le(t,e,i,r.length,!1,this.errors,t.length-r.length).parseChain()}_parseQuote(t,e){if(null===t)return null;const n=t.indexOf(":");if(-1===n)return null;const a=t.substring(0,n).trim();if(!function(t){if(0===t.length)return!1;const e=new Oe(t);if(!Se(e.peek))return!1;for(e.advance();0!==e.peek;){if(!Ie(e.peek))return!1;e.advance()}return!0}(a))return null;const r=t.substring(n+1);return new Kt(new Ut(0,t.length),a,r,e)}parseTemplateBindings(t,e,n){const a=this._lexer.tokenize(e);if(t){const e=this._lexer.tokenize(t).map(t=>(t.index=0,t));a.unshift(...e)}return new Le(e,n,a,e.length,!1,this.errors,0).parseTemplateBindings()}parseInterpolation(t,e,n=N){const a=this.splitInterpolation(t,e,n);if(null===a)return null;const r=[];for(let i=0;i<a.expressions.length;++i){const n=a.expressions[i],s=this._stripComments(n),u=this._lexer.tokenize(s),o=new Le(t,e,u,s.length,!1,this.errors,a.offsets[i]+(n.length-s.length)).parseChain();r.push(o)}return new pe(new oe(new Ut(0,null===t?0:t.length),a.strings,r),t,e,this.errors)}splitInterpolation(t,e,n=N){const a=ke(n),r=t.split(a);if(r.length<=1)return null;const i=[],s=[],u=[];let o=0;for(let l=0;l<r.length;l++){const a=r[l];l%2==0?(i.push(a),o+=a.length):a.trim().length>0?(o+=n.start.length,s.push(a),u.push(o),o+=a.length+n.end.length):(this._reportError("Blank expressions are not allowed in interpolated strings",t,`at column ${this._findInterpolationErrorColumn(r,l,n)} in`,e),s.push("$implict"),u.push(o))}return new Re(i,s,u)}wrapLiteralPrimitive(t,e){return new pe(new ie(new Ut(0,null===t?0:t.length),t),t,e,this.errors)}_stripComments(t){const e=this._commentStart(t);return null!=e?t.substring(0,e).trim():t}_commentStart(t){let e=null;for(let a=0;a<t.length-1;a++){const r=t.charCodeAt(a),i=t.charCodeAt(a+1);if(47===r&&47===i&&null===e)return a;e===r?e=null:null===e&&(39===(n=r)||34===n||96===n)&&(e=r)}var n;return null}_checkNoInterpolation(t,e,n){const a=ke(n),r=t.split(a);r.length>1&&this._reportError(`Got interpolation (${n.start}${n.end}) where expression was expected`,t,`at column ${this._findInterpolationErrorColumn(r,1,n)} in`,e)}_findInterpolationErrorColumn(t,e,n){let a="";for(let r=0;r<e;r++)a+=r%2==0?t[r]:`${n.start}${t[r]}${n.end}`;return a.length}}class Le{constructor(t,e,n,a,r,i,s){this.input=t,this.location=e,this.tokens=n,this.inputLength=a,this.parseAction=r,this.errors=i,this.offset=s,this.rparensExpected=0,this.rbracketsExpected=0,this.rbracesExpected=0,this.index=0}peek(t){const e=this.index+t;return e<this.tokens.length?this.tokens[e]:we}get next(){return this.peek(0)}get inputIndex(){return this.index<this.tokens.length?this.next.index+this.offset:this.inputLength+this.offset}span(t){return new Ut(t,this.inputIndex)}advance(){this.index++}optionalCharacter(t){return!!this.next.isCharacter(t)&&(this.advance(),!0)}peekKeywordLet(){return this.next.isKeywordLet()}peekKeywordAs(){return this.next.isKeywordAs()}expectCharacter(t){this.optionalCharacter(t)||this.error("Missing expected "+String.fromCharCode(t))}optionalOperator(t){return!!this.next.isOperator(t)&&(this.advance(),!0)}expectOperator(t){this.optionalOperator(t)||this.error("Missing expected operator "+t)}expectIdentifierOrKeyword(){const t=this.next;return t.isIdentifier()||t.isKeyword()?(this.advance(),t.toString()):(this.error(`Unexpected token ${t}, expected identifier or keyword`),"")}expectIdentifierOrKeywordOrString(){const t=this.next;return t.isIdentifier()||t.isKeyword()||t.isString()?(this.advance(),t.toString()):(this.error(`Unexpected token ${t}, expected identifier, keyword, or string`),"")}parseChain(){const t=[],e=this.inputIndex;for(;this.index<this.tokens.length;){const e=this.parsePipe();if(t.push(e),this.optionalCharacter(59))for(this.parseAction||this.error("Binding expression cannot contain chained expression");this.optionalCharacter(59););else this.index<this.tokens.length&&this.error(`Unexpected token '${this.next}'`)}return 0===t.length?new $t(this.span(e)):1===t.length?t[0]:new Jt(this.span(e),t)}parsePipe(){let t=this.parseExpression();if(this.optionalOperator("|")){this.parseAction&&this.error("Cannot have a pipe in an action expression");do{const e=this.expectIdentifierOrKeyword(),n=[];for(;this.optionalCharacter(58);)n.push(this.parseExpression());t=new re(this.span(t.span.start),t,e,n)}while(this.optionalOperator("|"))}return t}parseExpression(){return this.parseConditional()}parseConditional(){const t=this.inputIndex,e=this.parseLogicalOr();if(this.optionalOperator("?")){const n=this.parsePipe();let a;if(this.optionalCharacter(58))a=this.parsePipe();else{const e=this.input.substring(t,this.inputIndex);this.error(`Conditional expression ${e} requires all 3 expressions`),a=new $t(this.span(t))}return new Qt(this.span(t),e,n,a)}return e}parseLogicalOr(){let t=this.parseLogicalAnd();for(;this.optionalOperator("||");){const e=this.parseLogicalAnd();t=new le(this.span(t.span.start),"||",t,e)}return t}parseLogicalAnd(){let t=this.parseEquality();for(;this.optionalOperator("&&");){const e=this.parseEquality();t=new le(this.span(t.span.start),"&&",t,e)}return t}parseEquality(){let t=this.parseRelational();for(;this.next.type===me.Operator;){const e=this.next.strValue;switch(e){case"==":case"===":case"!=":case"!==":this.advance();const n=this.parseRelational();t=new le(this.span(t.span.start),e,t,n);continue}break}return t}parseRelational(){let t=this.parseAdditive();for(;this.next.type===me.Operator;){const e=this.next.strValue;switch(e){case"<":case">":case"<=":case">=":this.advance();const n=this.parseAdditive();t=new le(this.span(t.span.start),e,t,n);continue}break}return t}parseAdditive(){let t=this.parseMultiplicative();for(;this.next.type===me.Operator;){const e=this.next.strValue;switch(e){case"+":case"-":this.advance();const n=this.parseMultiplicative();t=new le(this.span(t.span.start),e,t,n);continue}break}return t}parseMultiplicative(){let t=this.parsePrefix();for(;this.next.type===me.Operator;){const e=this.next.strValue;switch(e){case"*":case"%":case"/":this.advance();const n=this.parsePrefix();t=new le(this.span(t.span.start),e,t,n);continue}break}return t}parsePrefix(){if(this.next.type===me.Operator){const t=this.inputIndex,e=this.next.strValue;let n;switch(e){case"+":return this.advance(),this.parsePrefix();case"-":return this.advance(),n=this.parsePrefix(),new le(this.span(t),e,new ie(new Ut(t,t),0),n);case"!":return this.advance(),n=this.parsePrefix(),new de(this.span(t),n)}}return this.parseCallChain()}parseCallChain(){let t=this.parsePrimary();for(;;)if(this.optionalCharacter(46))t=this.parseAccessMemberOrMethodCall(t,!1);else if(this.optionalOperator("?."))t=this.parseAccessMemberOrMethodCall(t,!0);else if(this.optionalCharacter(91)){this.rbracketsExpected++;const e=this.parsePipe();if(this.rbracketsExpected--,this.expectCharacter(93),this.optionalOperator("=")){const n=this.parseConditional();t=new ae(this.span(t.span.start),t,e,n)}else t=new ne(this.span(t.span.start),t,e)}else if(this.optionalCharacter(40)){this.rparensExpected++;const e=this.parseCallArguments();this.rparensExpected--,this.expectCharacter(41),t=new ge(this.span(t.span.start),t,e)}else{if(!this.optionalOperator("!"))return t;t=new ce(this.span(t.span.start),t)}}parsePrimary(){const t=this.inputIndex;if(this.optionalCharacter(40)){this.rparensExpected++;const t=this.parsePipe();return this.rparensExpected--,this.expectCharacter(41),t}if(this.next.isKeywordNull())return this.advance(),new ie(this.span(t),null);if(this.next.isKeywordUndefined())return this.advance(),new ie(this.span(t),void 0);if(this.next.isKeywordTrue())return this.advance(),new ie(this.span(t),!0);if(this.next.isKeywordFalse())return this.advance(),new ie(this.span(t),!1);if(this.next.isKeywordThis())return this.advance(),new Zt(this.span(t));if(this.optionalCharacter(91)){this.rbracketsExpected++;const e=this.parseExpressionList(93);return this.rbracketsExpected--,this.expectCharacter(93),new se(this.span(t),e)}if(this.next.isCharacter(123))return this.parseLiteralMap();if(this.next.isIdentifier())return this.parseAccessMemberOrMethodCall(new Zt(this.span(t)),!1);if(this.next.isNumber()){const e=this.next.toNumber();return this.advance(),new ie(this.span(t),e)}if(this.next.isString()){const e=this.next.toString();return this.advance(),new ie(this.span(t),e)}return this.index>=this.tokens.length?(this.error("Unexpected end of expression: "+this.input),new $t(this.span(t))):(this.error("Unexpected token "+this.next),new $t(this.span(t)))}parseExpressionList(t){const e=[];if(!this.next.isCharacter(t))do{e.push(this.parsePipe())}while(this.optionalCharacter(44));return e}parseLiteralMap(){const t=[],e=[],n=this.inputIndex;if(this.expectCharacter(123),!this.optionalCharacter(125)){this.rbracesExpected++;do{const n=this.next.isString(),a=this.expectIdentifierOrKeywordOrString();t.push({key:a,quoted:n}),this.expectCharacter(58),e.push(this.parsePipe())}while(this.optionalCharacter(44));this.rbracesExpected--,this.expectCharacter(125)}return new ue(this.span(n),t,e)}parseAccessMemberOrMethodCall(t,e=!1){const n=t.span.start,a=this.expectIdentifierOrKeyword();if(this.optionalCharacter(40)){this.rparensExpected++;const r=this.parseCallArguments();this.expectCharacter(41),this.rparensExpected--;const i=this.span(n);return e?new he(i,t,a,r):new fe(i,t,a,r)}if(e)return this.optionalOperator("=")?(this.error("The '?.' operator cannot be used in the assignment"),new $t(this.span(n))):new ee(this.span(n),t,a);if(this.optionalOperator("=")){if(!this.parseAction)return this.error("Bindings cannot contain assignments"),new $t(this.span(n));const e=this.parseConditional();return new te(this.span(n),t,a,e)}return new Xt(this.span(n),t,a)}parseCallArguments(){if(this.next.isCharacter(41))return[];const t=[];do{t.push(this.parsePipe())}while(this.optionalCharacter(44));return t}expectTemplateBindingKey(){let t="",e=!1;do{t+=this.expectIdentifierOrKeywordOrString(),e=this.optionalOperator("-"),e&&(t+="-")}while(e);return t.toString()}parseTemplateBindings(){const t=[];let e=null;for(;this.index<this.tokens.length;){const n=this.inputIndex;let a=this.peekKeywordLet();a&&this.advance();const r=this.expectTemplateBindingKey();let i=r;a||(null===e?e=i:i=e+i[0].toUpperCase()+i.substring(1)),this.optionalCharacter(58);let s=null,u=null;if(a)s=this.optionalOperator("=")?this.expectTemplateBindingKey():"$implicit";else if(this.peekKeywordAs())this.advance(),s=r,i=this.expectTemplateBindingKey(),a=!0;else if(this.next!==we&&!this.peekKeywordLet()){const t=this.inputIndex,e=this.parsePipe(),n=this.input.substring(t-this.offset,this.inputIndex-this.offset);u=new pe(e,n,this.location,this.errors)}if(t.push(new be(this.span(n),i,a,s,u)),this.peekKeywordAs()&&!a){const e=this.inputIndex;this.advance();const n=this.expectTemplateBindingKey();t.push(new be(this.span(e),n,!0,i,null))}this.optionalCharacter(59)||this.optionalCharacter(44)}return new Ae(t,[],this.errors)}error(t,e=null){this.errors.push(new Ht(t,this.input,this.locationText(e),this.location)),this.skip()}locationText(t=null){return null===t&&(t=this.index),t<this.tokens.length?`at column ${this.tokens[t].index+1} in`:"at the end of the expression"}skip(){let t=this.next;for(;this.index<this.tokens.length&&!t.isCharacter(59)&&(this.rparensExpected<=0||!t.isCharacter(41))&&(this.rbracesExpected<=0||!t.isCharacter(125))&&(this.rbracketsExpected<=0||!t.isCharacter(93));)this.next.isError()&&this.errors.push(new Ht(this.next.toString(),this.input,this.locationText(),this.location)),this.advance(),t=this.next}}class De{constructor(){this.errors=[]}static check(t){const e=new De;return t.visit(e),e.errors}visitImplicitReceiver(t,e){}visitInterpolation(t,e){}visitLiteralPrimitive(t,e){}visitPropertyRead(t,e){}visitPropertyWrite(t,e){}visitSafePropertyRead(t,e){}visitMethodCall(t,e){}visitSafeMethodCall(t,e){}visitFunctionCall(t,e){}visitLiteralArray(t,e){this.visitAll(t.expressions)}visitLiteralMap(t,e){this.visitAll(t.values)}visitBinary(t,e){}visitPrefixNot(t,e){}visitNonNullAssert(t,e){}visitConditional(t,e){}visitPipe(t,e){this.errors.push("pipes")}visitKeyedRead(t,e){}visitKeyedWrite(t,e){}visitAll(t){return t.map(t=>t.visit(this))}visitChain(t,e){}visitQuote(t,e){}}const Pe={A:"LINK",B:"BOLD_TEXT",BR:"LINE_BREAK",EM:"EMPHASISED_TEXT",H1:"HEADING_LEVEL1",H2:"HEADING_LEVEL2",H3:"HEADING_LEVEL3",H4:"HEADING_LEVEL4",H5:"HEADING_LEVEL5",H6:"HEADING_LEVEL6",HR:"HORIZONTAL_RULE",I:"ITALIC_TEXT",LI:"LIST_ITEM",LINK:"MEDIA_LINK",OL:"ORDERED_LIST",P:"PARAGRAPH",Q:"QUOTATION",S:"STRIKETHROUGH_TEXT",SMALL:"SMALL_TEXT",SUB:"SUBSTRIPT",SUP:"SUPERSCRIPT",TBODY:"TABLE_BODY",TD:"TABLE_CELL",TFOOT:"TABLE_FOOTER",TH:"TABLE_HEADER_CELL",THEAD:"TABLE_HEADER",TR:"TABLE_ROW",TT:"MONOSPACED_TEXT",U:"UNDERLINED_TEXT",UL:"UNORDERED_LIST"};class Me{constructor(){this._placeHolderNameCounts={},this._signatureToName={}}getStartTagPlaceholderName(t,e,n){const a=this._hashTag(t,e,n);if(this._signatureToName[a])return this._signatureToName[a];const r=t.toUpperCase(),i=Pe[r]||"TAG_"+r,s=this._generateUniqueName(n?i:"START_"+i);return this._signatureToName[a]=s,s}getCloseTagPlaceholderName(t){const e=this._hashClosingTag(t);if(this._signatureToName[e])return this._signatureToName[e];const n=t.toUpperCase(),a=this._generateUniqueName("CLOSE_"+(Pe[n]||"TAG_"+n));return this._signatureToName[e]=a,a}getPlaceholderName(t,e){const n=t.toUpperCase(),a=`PH: ${n}=${e}`;if(this._signatureToName[a])return this._signatureToName[a];const r=this._generateUniqueName(n);return this._signatureToName[a]=r,r}getUniquePlaceholder(t){return this._generateUniqueName(t.toUpperCase())}_hashTag(t,e,n){return"<"+t+Object.keys(e).sort().map(t=>` ${t}=${e[t]}`).join("")+(n?"/>":`></${t}>`)}_hashClosingTag(t){return this._hashTag("/"+t,{},!1)}_generateUniqueName(t){if(!this._placeHolderNameCounts.hasOwnProperty(t))return this._placeHolderNameCounts[t]=1,t;const e=this._placeHolderNameCounts[t];return this._placeHolderNameCounts[t]=e+1,`${t}_${e}`}}const qe=new Ee(new ve);class je{constructor(t,e){this._expressionParser=t,this._interpolationConfig=e}toI18nMessage(t,e,n,a){this._isIcu=1===t.length&&t[0]instanceof s,this._icuDepth=0,this._placeholderRegistry=new Me,this._placeholderToContent={},this._placeholderToMessage={};const r=c(this,t,{});return new f(r,this._placeholderToContent,this._placeholderToMessage,e,n,a)}visitElement(t,e){const n=c(this,t.children),a={};t.attrs.forEach(t=>{a[t.name]=t.value});const r=ot(t.name).isVoid,i=this._placeholderRegistry.getStartTagPlaceholderName(t.name,a,r);this._placeholderToContent[i]=t.sourceSpan?t.sourceSpan.toString():"";let s="";return r||(s=this._placeholderRegistry.getCloseTagPlaceholderName(t.name),this._placeholderToContent[s]=`</${t.name}>`),new b(t.name,a,i,s,n,r,t.sourceSpan)}visitAttribute(t,e){return this._visitTextWithInterpolation(t.value,t.sourceSpan)}visitText(t,e){return this._visitTextWithInterpolation(t.value,t.sourceSpan)}visitComment(t,e){return null}visitExpansion(t,e){this._icuDepth++;const n={},a=new p(t.switchValue,t.type,n,t.sourceSpan);if(t.cases.forEach(t=>{n[t.value]=new g(t.expression.map(t=>t.visit(this,{})),t.expSourceSpan)}),this._icuDepth--,this._isIcu||this._icuDepth>0){const e=this._placeholderRegistry.getUniquePlaceholder("VAR_"+t.type);return a.expressionPlaceholder=e,this._placeholderToContent[e]=t.switchValue,a}const r=this._placeholderRegistry.getPlaceholderName("ICU",t.sourceSpan.toString()),i=new je(this._expressionParser,this._interpolationConfig);return this._placeholderToMessage[r]=i.toI18nMessage([t],"","",""),new y(a,r,t.sourceSpan)}visitExpansionCase(t,e){throw new Error("Unreachable code")}_visitTextWithInterpolation(t,e){const n=this._expressionParser.splitInterpolation(t,e.start.toString(),this._interpolationConfig);if(!n)return new h(t,e);const a=[],r=new g(a,e),{start:i,end:s}=this._interpolationConfig;for(let o=0;o<n.strings.length-1;o++){const t=n.expressions[o],r=t.split(Fe)[2]||"INTERPOLATION",u=this._placeholderRegistry.getPlaceholderName(r,t);n.strings[o].length&&a.push(new h(n.strings[o],e)),a.push(new m(t,u,e)),this._placeholderToContent[u]=i+t+s}const u=n.strings.length-1;return n.strings[u].length&&a.push(new h(n.strings[u],e)),r}}const Fe=/\/\/[\s\S]*i18n[\s\S]*\([\s\S]*ph[\s\S]*=[\s\S]*("|')([\s\S]*?)\1[\s\S]*\)/g;class Ve extends X{constructor(t=N){super(ot),this.interpolationConfig=t}parse(t,e,n=!1){return super.parse(t,e,n,this.interpolationConfig)}extractMessages(t){const e=new He(["wrapper"]),n=new l("wrapper",[],t,void 0,void 0,void 0);return e.extract(n,this.interpolationConfig)}mergeTranslations(t,e,n,a,r=[]){const i=new He(r),s=new l("wrapper",[],t,void 0,void 0,void 0);return i.merge(s,e,this.interpolationConfig,n,a)}}class Ge{constructor(t,e){this.messages=t,this.errors=e}}class Be{constructor(t={},e,n,a,r,i){this.i18nNodesByMsgId=t,this.digest=e,this.mapperFactory=r,this.i18nToHtml=new ze(t,e,r,a,n,i)}static load(t,e,n,a,r,i,s=N){const u=r(t,e);return new Be(u,t=>n(t),s,i,t=>a(t),console)}get(t,e){const n=this.i18nToHtml.convert(t,e);if(n.errors.length)throw new Error(n.errors.join("\n"));return n.nodes}has(t){return this.digest(t)in this.i18nNodesByMsgId}}class ze{constructor(t={},e,n,a,r,i){this._i18nNodesByMsgId=t,this._digest=e,this._mapperFactory=n,this._missingTranslationStrategy=a,this._interpolationConfig=r,this._console=i,this._contextStack=[],this._errors=[]}convert(t,e){this._contextStack.length=0,this._errors.length=0,this._params=e,this._paramKeys=Object.keys(e);const n=this.convertToText(t),a=t.nodes[0].sourceSpan.start.file.url,r=(new Ve).parse(n,a,!0);return{nodes:r.rootNodes,errors:[...this._errors,...r.errors]}}visitText(t,e){return t.value}visitContainer(t,e){return t.children.map(t=>t.visit(this)).join("")}visitIcu(t,e){const n=Object.keys(t.cases).map(e=>`${e} {${t.cases[e].visit(this)}}`);return`{${this._srcMsg.placeholders.hasOwnProperty(t.expression)?this._srcMsg.placeholders[t.expression]:t.expression}, ${t.type}, ${n.join(" ")}}`}visitPlaceholder(t,e){const n=this._mapper(t.name);return this._srcMsg.placeholders.hasOwnProperty(n)?this.convertToValue(this._srcMsg.placeholders[n]):this._srcMsg.placeholderToMessage.hasOwnProperty(n)?this.convertToText(this._srcMsg.placeholderToMessage[n]):(this._addError(t,`Unknown placeholder "${t.name}"`),"")}visitTagPlaceholder(t,e){const n=""+t.tag,a=Object.keys(t.attrs).map(e=>`${e}="${t.attrs[e]}"`).join(" ");return t.isVoid?`<${n} ${a}/>`:`<${n} ${a}>${t.children.map(t=>t.visit(this)).join("")}</${n}>`}visitIcuPlaceholder(t,e){return this.convertToText(this._srcMsg.placeholderToMessage[t.name])}convertToText(t){const e=this._digest(t),n=this._mapperFactory?this._mapperFactory(t):null;let a;this._contextStack.push({msg:this._srcMsg,mapper:this._mapper}),this._srcMsg=t,this._i18nNodesByMsgId.hasOwnProperty(e)?(a=this._i18nNodesByMsgId[e],this._mapper=t=>n?n.toInternalName(t):t):(this._missingTranslationStrategy===r.MissingTranslationStrategy.Error?this._addError(t.nodes[0],`Missing translation for message "${e}"`):this._console&&this._missingTranslationStrategy===r.MissingTranslationStrategy.Warning&&this._console.warn(`Missing translation for message "${e}"`),a=t.nodes,this._mapper=t=>t);const i=a.map(t=>t.visit(this)).join(""),s=this._contextStack.pop();return this._srcMsg=s.msg,this._mapper=s.mapper,i}convertToValue(t){const e=t.replace(this._interpolationConfig.start,"").replace(this._interpolationConfig.end,"");return-1!==this._paramKeys.indexOf(e)?this._params[e]:t}_addError(t,e){this._errors.push(new O(t.sourceSpan,e))}}const Ye=function(){var t={Extract:0,Merge:1};return t[t.Extract]="Extract",t[t.Merge]="Merge",t}();class He{constructor(t=[]){this._implicitTags=t,this.blockChildren=[]}extract(t,e){return this.init(Ye.Extract,e),t.visit(this,null),this.inI18nBlock&&this._reportError(t,"Unclosed block"),new Ge(this.messages,this.errors)}merge(t,e,n,a,r={}){this.init(Ye.Merge,n,a),this.translations=e,this.metadata=r;const i=t.visit(this,null);return this.inI18nBlock&&this._reportError(t,"Unclosed block"),new Q(i.children,this.errors)}visitExpansionCase(t,e){const n=c(this,t.expression,e);if(this.mode===Ye.Merge)return new u(t.value,n,t.sourceSpan,t.valueSourceSpan,t.expSourceSpan)}visitExpansion(t,e){this.mayBeAddBlockChildren(t);const n=this.inIcu;this.inIcu||(this.isInTranslatableSection&&this.addMessage([t]),this.inIcu=!0);const a=c(this,t.cases,e);return this.mode===Ye.Merge&&(t=new s(t.switchValue,t.type,a,t.sourceSpan,t.switchValueSourceSpan)),this.inIcu=n,t}visitComment(t,e){}visitText(t,e){return this.isInTranslatableSection&&this.mayBeAddBlockChildren(t),t}visitElement(t,e){this.mayBeAddBlockChildren(t),this.depth++;const n=this.inI18nNode,a=this.inImplicitNode;let r=[],i=void 0;const s=t.attrs.find(t=>"i18n"===t.name)||null,u=this._implicitTags.some(e=>t.name===e)&&!this.inIcu&&!this.isInTranslatableSection,o=!a&&u;if(this.inImplicitNode=a||u,this.isInTranslatableSection||this.inIcu)(s||o)&&this._reportError(t,"Could not mark an element as translatable inside a translatable section"),this.mode===Ye.Extract&&c(this,t.children);else{if(s||o){this.inI18nNode=!0;const e=this.addMessage(t.children,this.metadata);i=this.translateMessage(t,e)}if(this.mode===Ye.Extract){const e=s||o;e&&this.openTranslatableSection(t),c(this,t.children),e&&this._closeTranslatableSection(t,t.children)}}return this.mode===Ye.Merge&&(i||t.children).forEach(t=>{const n=t.visit(this,e);n&&!this.isInTranslatableSection&&(r=r.concat(n))}),this.depth--,this.inI18nNode=n,this.inImplicitNode=a,this.mode===Ye.Merge?new l(t.name,[],r,t.sourceSpan,t.startSourceSpan,t.endSourceSpan):null}visitAttribute(t,e){throw new Error("unreachable code")}init(t,e,n={}){this.mode=t,this.inI18nBlock=!1,this.inI18nNode=!1,this.depth=0,this.inIcu=!1,this.msgCountAtSectionStart=void 0,this.errors=[],this.messages=[],this.inImplicitNode=!1,this.createI18nMessage=function(t){const e=new je(qe,t);return(t,n,a,r)=>e.toI18nMessage(t,n,a,r)}(e),this.params=n}addMessage(t,{meaning:e="",description:n="",id:a=""}={}){if(0===t.length||1===t.length&&t[0]instanceof o&&!t[0].value)return null;const r=this.createI18nMessage(t,e,n,a);return this.messages.push(r),r}translateMessage(t,e){if(e&&this.mode===Ye.Merge){const n=this.translations.get(e,this.params);if(n)return n;this._reportError(t,`Translation unavailable for message id="${this.translations.digest(e)}"`)}return[]}mayBeAddBlockChildren(t){this.inI18nBlock&&!this.inIcu&&this.depth===this.blockStartDepth&&this.blockChildren.push(t)}openTranslatableSection(t){this.isInTranslatableSection?this._reportError(t,"Unexpected section start"):this.msgCountAtSectionStart=this.messages.length}get isInTranslatableSection(){return void 0!==this.msgCountAtSectionStart}_closeTranslatableSection(t,e){if(!this.isInTranslatableSection)return void this._reportError(t,"Unexpected section end");const n=this.msgCountAtSectionStart;if(1===e.reduce((t,e)=>t+(e instanceof d?0:1),0))for(let a=this.messages.length-1;a>=n;a--){const t=this.messages[a].nodes;if(!(1===t.length&&t[0]instanceof h)){this.messages.splice(a,1);break}}this.msgCountAtSectionStart=void 0}_reportError(t,e){this.errors.push(new O(t.sourceSpan,e))}}const Ue=new r.InjectionToken("MissingTranslationStrategy");class We{constructor(t,e,n,a=r.MissingTranslationStrategy.Warning){let i,s,u=t=>null;switch(t=(t||"xlf").toLowerCase()){case"xtb":i=Vt,s=Gt,u=Bt;break;case"xliff2":case"xlf2":i=Pt,s=Mt;break;case"xliff":case"xlf":i=kt,s=Et;break;default:throw new Error("Unknown translations format "+t)}const o=new Ve,l=Be.load(e,"i18n",s,u,i,a);return(t,e={})=>{const a="string"==typeof t?t:t.value,r={};"object"==typeof t&&(r.id=t.id,r.meaning=t.meaning,r.description=t.description);const i=o.parse(a,"",!0);if(i.errors.length)throw i.errors;return function(t,e,n){return t.map(t=>t.visit(new ct(e,n),null))}(o.mergeTranslations(i.rootNodes,l,e,r,["wrapper"]).rootNodes,n,e).join("")}}}},GyhO:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("LRne"),r=n("0EUg");function i(...t){return Object(r.a)()(Object(a.a)(...t))}},"H+zY":function(t,e,n){var a=n("5EpR");t.exports=function(t){var e=a(t),n=e%1;return e==e?n?e-n:e:0}},H8ED:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a,r;return"m"===n?e?"хвіліна":"хвіліну":"h"===n?e?"гадзіна":"гадзіну":t+" "+(a=+t,r={ss:e?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:e?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:e?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}t.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:e,mm:e,h:e,hh:e,d:"дзень",dd:e,M:"месяц",MM:e,y:"год",yy:e},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(t){return/^(дня|вечара)$/.test(t)},meridiem:function(t,e,n){return t<4?"ночы":t<12?"раніцы":t<17?"дня":"вечара"},dayOfMonthOrdinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(t,e){switch(e){case"M":case"d":case"DDD":case"w":case"W":return t%10!=2&&t%10!=3||t%100==12||t%100==13?t+"-ы":t+"-і";case"D":return t+"-га";default:return t}},week:{dow:1,doy:7}})}(n("wd/R"))},HAuM:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},HDdC:function(t,e,n){"use strict";var a=n("7o/Q"),r=n("2QA8"),i=n("gRHU"),s=n("kJWO"),u=n("mCNh"),o=n("2fFW");n.d(e,"a",(function(){return l}));let l=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:s}=this,u=function(t,e,n){if(t){if(t instanceof a.a)return t;if(t[r.a])return t[r.a]()}return t||e||n?new a.a(t,e,n):new a.a(i.a)}(t,e,n);if(u.add(s?s.call(u,this.source):this.source||o.a.useDeprecatedSynchronousErrorHandling&&!u.syncErrorThrowable?this._subscribe(u):this._trySubscribe(u)),o.a.useDeprecatedSynchronousErrorHandling&&u.syncErrorThrowable&&(u.syncErrorThrowable=!1,u.syncErrorThrown))throw u.syncErrorValue;return u}_trySubscribe(t){try{return this._subscribe(t)}catch(e){o.a.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:r}=t;if(e||r)return!1;t=n&&n instanceof a.a?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=d(e))((e,n)=>{let a;a=this.subscribe(e=>{try{t(e)}catch(r){n(r),a&&a.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[s.a](){return this}pipe(...t){return 0===t.length?this:Object(u.b)(t)(this)}toPromise(t){return new(t=d(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function d(t){if(t||(t=o.a.Promise||Promise),!t)throw new Error("no Promise impl found");return t}},HH4o:function(t,e,n){var a=n("tiKp")("iterator"),r=!1;try{var i=0,s={next:function(){return{done:!!i++}},return:function(){r=!0}};s[a]=function(){return this},Array.from(s,(function(){throw 2}))}catch(u){}t.exports=function(t,e){if(!e&&!r)return!1;var n=!1;try{var i={};i[a]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(u){}return n}},HIU9:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("8Y7J"),r=n("dApe"),i=n("X+05"),s=n("2316"),u=n.n(s),o=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},l=function(){function t(t,e,n){var a=this;this.elementRef=t,this.ngZone=e,this.virtualScroll=n,this.setViewport=u()((function(){a.virtualScroll.setViewport(a.elementRef.nativeElement)}),17),this.scrollEventHandler=this.setViewport.bind(this)}return t.prototype.ngOnInit=function(){this.virtualScroll.init()},t.prototype.ngAfterViewInit=function(){var t=this;setTimeout((function(){t.setViewport(),t.virtualScroll.fireEvent({eventName:i.a.initialized})}));var e=this.elementRef.nativeElement;this.ngZone.runOutsideAngular((function(){e.addEventListener("scroll",t.scrollEventHandler)}))},t.prototype.ngOnDestroy=function(){this.virtualScroll.clear(),this.elementRef.nativeElement.removeEventListener("scroll",this.scrollEventHandler)},t.prototype.getTotalHeight=function(){return this.virtualScroll.isEnabled()&&this.virtualScroll.totalHeight+"px"||"auto"},function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}([Object(a.Component)({selector:"tree-viewport",styles:[],providers:[r.a],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <div [style.height]="getTotalHeight()">\n        <ng-content></ng-content>\n      </div>\n    </ng-container>\n  '}),o("design:paramtypes",[a.ElementRef,a.NgZone,r.a])],t)}()},HP3h:function(t,e,n){!function(t){"use strict";var e={1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"},n=function(t){return 0===t?0:1===t?1:2===t?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},a={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},r=function(t){return function(e,r,i,s){var u=n(e),o=a[t][n(e)];return 2===u&&(o=o[r?0:1]),o.replace(/%d/i,e)}},i=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];t.defineLocale("ar-ly",{months:i,monthsShort:i,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(t){return"م"===t},meridiem:function(t,e,n){return t<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:r("s"),ss:r("s"),m:r("m"),mm:r("m"),h:r("h"),hh:r("h"),d:r("d"),dd:r("d"),M:r("M"),MM:r("M"),y:r("y"),yy:r("y")},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n("wd/R"))},HYAF:function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},Hd5f:function(t,e,n){var a=n("0Dky"),r=n("tiKp"),i=n("LQDL"),s=r("species");t.exports=function(t){return i>=51||!a((function(){var e=[];return(e.constructor={})[s]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},HjS5:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="zh-TW">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>切換導覽</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>儀表板</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>叢集</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>主機</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>監控程式</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>服務</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>組態</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH 地圖</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>管理員模組</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>記錄</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>池</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>區塊</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>影像</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>鏡像</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>檔案系統</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>物件閘道</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>精靈</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>使用者</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>桶</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>刪除通知</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>沒有通知。</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>任務與通知</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>選取語言</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>正在載入面板資料...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Grafana 時間選擇器</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>重設設定</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>刷新</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>返回</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>無法載入資料。</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>選取的數目</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>找到的數目</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>總計</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>名稱</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>描述</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>詳細描述</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>預設值</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>精靈預設值</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>值</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>儲存</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>CRUSH 地圖檢視器</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>正在載入...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>主機名稱</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>此欄位為必填欄位。</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>是的,我確定。</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>取消</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>關閉</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>主機清單</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>整體效能</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>找不到項目</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>叢集記錄</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>稽核記錄</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>正在載入組態...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>無法載入組態。</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>編輯管理員模組</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>輸入的值不是有效的 UUID,例如 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>輸入的值必須是有效的  IP 位址。</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>輸入的值必須為數字。</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>輸入的值必須為數字或小數。</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>狀態</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>叢集 ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap 修改時間</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap 版本編號</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>required con</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>required mon</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>仲裁成員</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>非仲裁成員</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>新增</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>功能</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>叢集範圍的 OSD 旗標</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>提交</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>進階...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD 復原優先程度</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>優先程度</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>自訂優先程度值</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>此欄位為必填欄位!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>該值必須介於 0 至 1 之間。</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>重新設定權數</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {深層} }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {深層} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSD 清單</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>值</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>編輯</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>刪除</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>狀態</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>統計資料</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>用戶端</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>任何用戶端均可存取</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>位址</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>必填欄位</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>必須包含一或多個逗號分隔值</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>例如︰</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>存取類型</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>新增用戶端</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- 沒有可用的叢集 --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- 選取叢集 --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>新增精靈</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>儲存後端</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- 沒有可用的資料池 --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- 選取儲存後端 --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>物件閘道使用者</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- 沒有可用的使用者 --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- 選取物件閘道使用者 --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS 使用者 ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- 沒有可用的用戶端 --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- 選取 cephx 用戶端 --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS 名稱</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>安全標籤</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>啟用安全標籤</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS 路徑</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>路徑必須以「/」開頭,後面可接單詞</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>將建立新目錄</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>路徑</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>路徑只能以單一「/」或單詞開頭</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>將建立新桶</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS 通訊協定</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS 標記</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>用戶端不能掛接子目錄 (即如果標記為 foo,則用戶端無法掛接 foo/baz)。</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>透過使用不同標記選項,可將同一路徑輸出多次。</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>虛擬</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>透過使用不同虛擬選項,可將同一路徑輸出多次。</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- 沒有可用的存取類型 --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- 選取存取類型 --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- 沒有可用的 squash --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- 選取執行哪種類型的使用者 ID 匿名存取 --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>傳輸通訊協定</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>歡迎使用 Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>需要指定使用者名稱</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>需要指定密碼</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>登入</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>抱歉,該使用者不存在於 Ceph 中。</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>已禁止</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>抱歉,您無權查看您要尋找的內容。</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD 組態</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>移除本地組態值。將繼承並使用父組態值。</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>最小值為 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>池清單</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>名稱只能由英數字元、破折號和底線組成。</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>所選的糾刪碼設定檔名稱已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>外掛程式</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>資料區塊 (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>必須大於或等於 2。</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>編碼區塊 (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>必須大於或等於 1。</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>持久性估值 (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>本地性 (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>CRUSH 故障網域</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>CRUSH 本地性</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>無</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>技術</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>封包大小</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>CRUSH 根</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>CRUSH 裝置類別</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>任何</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>目錄</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>名稱...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>所選的 Ceph 池名稱已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>池類型</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- 選取池類型 --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>放置群組</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>至少需要一個放置群組!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>您的叢集無法處理這麼多的 PG。請重新計算所需的 PG 數量。</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>計算說明</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>複製大小</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>旗標</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC 覆寫</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>應用程式</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>糾刪碼設定檔</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- 沒有可用的糾刪碼設定檔 --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- 選取糾刪碼設定檔 --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>CRUSH 規則集</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- 選取 CRUSH 規則 --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>CRUSH 規則</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>CRUSH 步驟</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>壓縮</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>模式</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>演算法</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- 沒有可用的糾刪壓縮演算法 --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Blob 最小大小</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>例如 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>值應大於 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Blob 最大大小</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>例如 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>值應大於 blob 最小大小</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>比率</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>壓縮率</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>值應介於 0.0 至 1.0 之間</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>例如 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>詳細資料</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>效能詳細資料</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>快取層詳細資料</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>將影像移至垃圾桶</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>保護的過期日為</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>無保護</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>日期格式錯誤。請使用「YYYY-MM-DD HH:mm:ss」。</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>保護已過期。請選取一個未來的日期或保留空白。</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>移動影像</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>綜覽</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>目標</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>探查驗證</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>使用者</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>使用者名稱的長度必須介於 8 至 64 個字元之間,並且只能包含以下\n                        字元︰字母、「.」、「@」、「-」、「_」或「:」。</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>密碼</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>雙向驗證使用者</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>雙向驗證密碼</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>可用資訊︰</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>無法使用 iSCSI 目標</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>池</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>資料池</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>已建立</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>大小</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>物件</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>物件大小</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>已佈建</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>無</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>總佈建數</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>分割單位</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>分割計數</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>父</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>區塊名稱字首</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>順序</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>快照</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>影像</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>此設定會覆寫全域值</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>全域</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>此值為全域值。未為此影像設定此選項的值。</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>不允許使用「/」和「@」。</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- 沒有可用的 RBD 池 --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- 選取池 --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>使用專屬的資料池</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>資料池</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>專用於儲存 RBD 的物件資料的池</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>您必須增加大小。</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>進階</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>分割</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>分割單位</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- 選取分割單位 --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>由於已定義分割計數,因此必須填寫此欄位!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>分割單位大於物件大小。</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>分割計數</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>由於已定義分割單位,因此必須填寫此欄位!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>分割計數必須大於 0。</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>您正要復原</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>清除垃圾桶</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>全部</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>池︰</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>池名稱...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>回存影像</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>若要回存</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>鍵入影像的新名稱并按一下</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>新名稱</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>過期日為</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>保護過期日為</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSI 拓撲</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>通常不需要變更這些參數的預設值。</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>設定</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>支援儲存</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>確認</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>進階設定</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>目標 IQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN 模式錯誤。</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>例如:iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>更多資訊</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>此目標的進階設定存在修改。</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>入口網站</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>新增入口網站</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>此影像的設定存在修改。</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>新增影像</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL 驗證</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>啟動器</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>啟動器</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>用戶端 IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>啟動器 IQN 必須唯一。</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>使用者名稱的長度必須介於 8 至 64 個字元之間,並且只能包含以下\n                        字元︰字母、「.」、「@」、「-」、「_」或「:」。</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>啟動器屬於群組。影像須在群組中進行設定。 </target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>未新增項目。</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>新增啟動器</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>群組</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>群組</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>新增群組</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>垃圾桶</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>問題</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>正在同步</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>準備就緒</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>編輯池鏡像模式</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>在停用鏡像之前,必須先移除對等叢集。</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {編輯} other {新增} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>叢集名稱</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>叢集名稱無效。</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX ID 無效。</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>監控程式位址</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>逗號分隔的位址...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>監控程式位址無效。</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX 金鑰</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64 編碼的金鑰...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephX 金鑰必須為 Base64 編碼的金鑰。</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>沒有可用的效能計數器</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>精靈清單</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>效能計數器</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>正在載入桶資料...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>該值無效。</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>所選的名稱已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>擁有者</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- 選取使用者 --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>已啟用</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>索引類型</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>放置規則</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>標記</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>最大標記數</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>版本</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>主版本</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>修改時間</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>區域群組</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>桶定額</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>最大大小</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>無限制</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>最大物件數</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>使用者名稱</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- 選取使用者名稱 --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>自動產生金鑰</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>存取金鑰</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>機密金鑰</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>全名</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>電子郵件地址</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>已暫停</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>系統</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>最大桶數</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>子使用者</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>功能</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>使用者定額</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>顯示</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>金鑰</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>類型</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- 選取類型 --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>許可權</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- 選取許可權 --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>子使用者</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>所選的子使用者 ID 已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>讀取、寫入</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>完整</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Swift 金鑰</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>自動產生機密金鑰</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>正在載入使用者資料...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>無法載入使用者資料。</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>所選的使用者 ID 已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>電子郵件地址無效。</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>所選的電子郵件地址已在使用中。</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>最大桶數</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>已停用</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>自訂</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3 金鑰</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>沒有子使用者。</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>沒有金鑰。</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>沒有功能。</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>大小不限</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>最大大小</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>物件數不限</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>最大物件數</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>輸入的值必須大於或等於 0。</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>描述...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>許可權</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>角色</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>確認密碼</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>確認的密碼與之前輸入的密碼不符。</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>電子郵件</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>電子郵件無效。</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>您正要為您自己的使用者移除「使用者讀取/寫入」許可權。</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>若繼續,您將再也無法為任何使用者新增或移除角色。</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>確定要繼續嗎?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>說明</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>文件</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>關於</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>儀表板設定</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>使用者管理</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>登入的使用者</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>登出</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>屬性 (OSD 地圖)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>無法使用中繼資料</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>中繼資料</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>效能計數器</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>寫入</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>讀取</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>長條圖</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>目前的值</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>最小值</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>最大值</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>來源</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>層級</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>可在執行時期更新 (可編輯)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>標記</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>列舉值</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>另請參閱</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>叢集狀態</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>管理員精靈</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>物件閘道</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>中繼資料伺服器</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI 閘道</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>用戶端 IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>用戶端輸送量</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>用戶端讀取/寫入</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>復原輸送量</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>整理</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>效能</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>原始容量</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>每個 OSD 的 PG 數</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>PG 狀態</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>容量</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>階層</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>目前</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>已更新探查驗證</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>沒有可用的入口網站。</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>沒有可用的影像。</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>沒有可用的影像。請確定為目標新增一個影像。</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>沒有可用的啟動器。請確定為目標新增一個啟動器。</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>目標</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>狀態</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>讀取位元組數</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>寫入位元組數</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>讀取操作數</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>寫入操作數</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>使用中/最佳化開始時間</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>例項</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>問題</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>進度</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>編輯模式</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>新增對等</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>編輯對等</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>刪除對等</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>本地數量</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>遠端數量</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>鏡像對等</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>金鑰</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>深層壓平</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>分層</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>獨佔鎖定</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>物件對應 (需要獨佔鎖定)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>記錄 (需要獨佔鎖定)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>未受保護</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>RBD 快照復原</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>復原</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBD 快照</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>刪除位置</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>類型</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>狀態</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>版本</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>主機</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>根</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>待命精靈</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>階層</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>精靈</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>活動</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentry</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inode</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>使用率</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>已更新</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>該值可在執行時期更新。</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>精靈/用戶端不會從監控程式組態資料庫\n      提取此值。我們不允許透過「ceph config set ...」\n      設定此選項。應透過 ceph.conf 或使用指令行\n      進行設定。</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>該選項僅在精靈啟動期間生效。</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>該選項僅影響叢集建立。</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>該選項僅影響精靈建立。</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>服務</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>目前的值</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>可編輯</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>啟用</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>停用</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>正在重新連接,請稍候...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>公用位址</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>開啟的工作階段</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>禁止標示為 In</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>之前標示為 out 的 OSD 在啟動時將不會重新標示為 in</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>禁止標示為 Out</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD 在設定的間隔過後將不會自動標示為 out</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>禁止標示為 Up</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>不允許 OSD 啟動</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>禁止標示為 Down</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>將會忽略 OSD 故障報告,如此監控程式便不會將 OSD 標示為 down</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>暫停</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>暫停讀取和寫入</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>禁止整理</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>整理已停用</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>禁止深層整理</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>深層整理已停用</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>禁止回填</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>PG 回填已暫停</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>禁止復原</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>PG 復原已暫停</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>按位元排序</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>使用按位元排序</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>已清除 Snapdir</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD 已轉換 snapset</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>復原刪除</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>在復原期間,而非在建立互聯時執行刪除</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>PG 記錄硬限制</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>為 pg 記錄長度設定硬限制</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>已更新 OSD 旗標</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>out</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>in</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>down</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>標示</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD 遺失</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>已標示為遺失</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>清除</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>已清除</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>損毀</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>已損毀</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>刪除</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PG</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>讀取位元組數</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>寫入位元組數</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>讀取操作數</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>寫入操作數</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>最大回填數</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>處於使用中狀態的最大復原操作數</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>單次啟動的最大復原操作數</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>復原操作間隔睡眠時間</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>工作</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>嚴重性</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>已啟動</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>已使用</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>可用</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>乾淨</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>工作中</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>警告</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>未知</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>啟用中</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>無檔案系統</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>使用中</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>待命</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>無</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>使用中的精靈</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>未設定 NFS Ganesha 服務。</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>傳輸</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS 使用者</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFS 檔案系統</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(繼承自全域組態)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>繼承自全域組態</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- 選取執行哪種類型的使用者 ID 匿名存取 --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>沒有可用的精靈。</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>快取模式</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>逐出前至少可留存的時間</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>衝洗前至少可留存的時間</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>目標最大位元組數</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>目標最大物件數</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>未新增應用程式</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>已達到應用程式上限</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>一個池最多只能四個應用程式定義。</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>允許的字元為「_a-zA-Z0-9」</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>最大長度為 128 個字元</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>過濾或新增應用程式</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>新增應用程式</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>糾刪碼設定檔</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>複本大小</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>上次變更時間</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>糾刪碼設定檔</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>CRUSH 規則集</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>桶</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>桶</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>使用者</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>使用者</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>範圍</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>讀取</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>建立</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>系統角色</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>更新使用者</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>繼續</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>您已被自動登出,因為您的角色發生了變更。</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>各物件都被分割成資料區塊部分,分別儲存於不同的 OSD。</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>運算各物件的編碼區塊并將它們儲存到不同的 OSD。\n      編碼區塊的數量等同於在不遺失資料的前提下,可停機的 OSD 數量。</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Jerasure 外掛程式是最一般、最靈活的外掛程式,\n          也是 Ceph 糾刪碼池的預設外掛程式。</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Reed_sol_van 方法更靈活︰它足以設定 k\n          和 m。Cauchy_good 方法更快,但您需要小心選取封包大小。\n          所有 reed_sol_r6_op、liberation、blaum_roth、liber8tion 都\n          等同於 RAID6,它們只能設定為 m=2。</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>將以位元組大小的封包為單位進行編碼。\n          選取合適的封包大小很難。\n          Jerasure 文件包含有關此主題的詳細資訊。</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>使用 jerasure 外掛程式時,若糾刪碼物件儲存於\n          多個 OSD 上,則復原一個遺失的 OSD 時需要讀取所有其他 OSD。\n          例如,若 jerasure 設定為 k=8 且 m=4,則遺失一個 OSD 後需讀取\n          其他十一個 OSD 才能修復。\n\n          lrc 糾刪碼外掛程式會建立本地同位區塊,因此只需較少的 OSD 即\n          可復原。例如,若 lrc 設定為 k=8、m=4 且 l=4,它將為每四個 OSD\n          建立額外的同位區塊。這樣,當一個 OSD 遺失時,它只需四個 OSD\n          即可復原,而不需要十一個。</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>將編碼區塊和資料區塊分組為大小為 locality 的集合。例如,\n          k=4 且 m=2 時,若 locality=3,則會建立 2 個大小為 3 的組。這樣,各組都能\n          自行復原,而無需從另一組讀取區塊。</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>由 l 定義的區塊集將按哪種 CRUSH 桶類型儲存。\n          例如,若設定為機架,則各組 l 區塊將會被放置到不同的\n          機架中。該值用於建立類似 step choose rack 的 CRUSH\n          規則步驟。若未設定,則不會進行此類分組。</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>isa 外掛程式封包了 ISA 程式庫。它只能在 Intel 處理器上執行。</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>ISA 外掛程式包含兩種 Reed Solomon 格式。\n          若設定為 reed_sol_van,則為 Vandermonde。若設定為 cauchy,則為 Cauchy。</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>shec 外掛程式封包了多個 SHEC 程式庫。\n          與 Reed Solomon 代碼相比,它能更有效地復原資料。</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>同位區塊的數量,它們在各自的計算範圍內包含了\n          各資料區塊。該數值被用做持久性估值。例如,若 c=2,\n          則在不遺失資料的前提下,可有 2 個 OSD 停機。</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>CRUSH 規則的第一步所指向的 CRUSH 桶名稱。\n      例如 step take default。</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>確定兩個區塊不會存在於同一故障網域的桶中。\n      例如,若故障網域為主機,則不會有兩個區塊儲存於同一主機中。\n      該值用於建立類似 step chooseleaf host 的 CRUSH 規則步驟。</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>使用 CRUSH 地圖中的 crush 裝置類別名稱,\n      將放置限制於特定類別的裝置 (例如 ssd 或 hdd)。</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>設定糾刪碼外掛程式所在目錄。</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>允許所有操作</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>僅允許不修改伺服器的操作</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>不允許讀取或寫入操作,但是允許任何其他操作</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>不允許讀取、寫入或任何可能修改檔案屬性或目錄內容的操作</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>完全禁止存取</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- 選取優先程度 --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>低</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>高</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>資訊</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>過去 5 分鐘</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>過去 15 分鐘</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>過去 30 分鐘</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>過去 1 小時 (預設值)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>過去 3 小時</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>過去 6 小時</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>過去 12 小時</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>過去 24 小時</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>昨天</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>今天</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>今天到目前為止</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>前天</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>過去 2 天</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>上週的今天</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>上週</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>本週</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>本週目前為止</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>過去 7 天</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>上個月</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>本月</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>本月目前為止</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>過去 30 天</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>過去 90 天</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>過去 6 個月</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>過去 1 年</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>去年</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>今年</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>今年目前為止</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>過去 2 年</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>過去 5 年</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>未選取項目。</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>取消選取項目以再次選取</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>已達到選取上限</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>過濾標記</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>新增徽章</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>沒有可用的項目。</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>克隆</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>複製</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>深層整理</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>損毀</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>壓平</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>標示為 Down</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>標示為 In</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>標示為遺失</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>標示為 Out</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>保護</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>重新命名</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>還原</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>移至垃圾桶</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>取消保護</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>已刪除</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>已克隆</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>已複製</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>已壓平</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>已清除</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>已還原</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>已復原</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>是</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>否</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>服務品質</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>指定的每秒 IO 位元組數上限。</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>指定的每秒 IO 操作次數上限。</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>讀取 BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>指定的每秒內讀取的位元組數上限。</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>讀取 IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>指定的每秒讀取操作次數上限。</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>寫入 BPS 上限</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>指定的每秒內寫入的位元組數上限。</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>寫入 IOPS 上限</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>指定的每秒寫入操作次數上限。</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS 高載</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>指定的 IO 位元組數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS 高載</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>指定的 IO 操作次數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>讀取 BPS 高載</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>指定的讀取的位元組數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>讀取 IOPS 高載</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>指定的讀取操作次數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>寫入 BPS 高載</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>指定的寫入的位元組數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>寫入 IOPS 高載</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>指定的寫入操作次數高載上限。</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>正在執行</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>執行</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>已執行</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>未知任務</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>正在建立</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>建立</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>正在更新</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>正在刪除</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>正在克隆</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>克隆</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>正在複製</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>複製</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>正在壓平</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>壓平</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>正在復原</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>復原</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>正在移動</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>移動</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>已移動</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>找不到影像。</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>正在還原</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>還原</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>正在清除</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>清除</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>所有池</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>無法停用鏡像,因為其包含對等。</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"I+eb":function(t,e,n){var a=n("2oRo"),r=n("Bs8V").f,i=n("kRJp"),s=n("busE"),u=n("zk60"),o=n("6JNq"),l=n("lMq5");t.exports=function(t,e){var n,d,c,f,h,g=t.target,p=t.global,b=t.stat;if(n=p?a:b?a[g]||u(g,{}):(a[g]||{}).prototype)for(d in e){if(f=e[d],c=t.noTargetGet?(h=r(n,d))&&h.value:n[d],!l(p?d:g+(b?".":"#")+d,t.forced)&&void 0!==c){if(typeof f==typeof c)continue;o(f,c)}(t.sham||c&&c.sham)&&i(f,"sham",!0),s(n,d,f,t)}}},I55L:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=t=>t&&"number"==typeof t.length&&"function"!=typeof t},I8vh:function(t,e,n){var a=n("ppGB"),r=Math.max,i=Math.min;t.exports=function(t,e){var n=a(t);return n<0?r(n+e,0):i(n,e)}},IBtZ:function(t,e,n){!function(t){"use strict";t.defineLocale("ka",{months:{standalone:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),format:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(t){return/(წამი|წუთი|საათი|წელი)/.test(t)?t.replace(/ი$/,"ში"):t+"ში"},past:function(t){return/(წამი|წუთი|საათი|დღე|თვე)/.test(t)?t.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(t)?t.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",ss:"%d წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(t){return 0===t?t:1===t?t+"-ლი":t<20||t<=100&&t%20==0||t%100==0?"მე-"+t:t+"-ე"},week:{dow:1,doy:7}})}(n("wd/R"))},IMTC:function(t,e){t.exports=function(t,e){return function(n){return t(e(n))}}},IWUC:function(t,e,n){var a=n("qwH+"),r=n("x3F9");t.exports=function(t){return r(t)&&"[object Set]"==a(t)}},IZUe:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{constructor(t){this.elementRef=t,this.focus=!0}ngAfterViewInit(){const t=this.elementRef.nativeElement;this.focus&&a.isFunction(t.focus)&&t.focus()}set autofocus(t){a.isBoolean(t)?this.focus=t:a.isFunction(t)&&(this.focus=t())}}},Iab2:function(t,e,n){var a,r;void 0===(r="function"==typeof(a=function(){"use strict";function e(t,e,n){var a=new XMLHttpRequest;a.open("GET",t),a.responseType="blob",a.onload=function(){i(a.response,e,n)},a.onerror=function(){console.error("could not download file")},a.send()}function n(t){var e=new XMLHttpRequest;e.open("HEAD",t,!1);try{e.send()}catch(t){}return 200<=e.status&&299>=e.status}function a(t){try{t.dispatchEvent(new MouseEvent("click"))}catch(e){var n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t.dispatchEvent(n)}}var r="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:void 0,i=r.saveAs||("object"!=typeof window||window!==r?function(){}:"download"in HTMLAnchorElement.prototype?function(t,i,s){var u=r.URL||r.webkitURL,o=document.createElement("a");o.download=i=i||t.name||"download",o.rel="noopener","string"==typeof t?(o.href=t,o.origin===location.origin?a(o):n(o.href)?e(t,i,s):a(o,o.target="_blank")):(o.href=u.createObjectURL(t),setTimeout((function(){u.revokeObjectURL(o.href)}),4e4),setTimeout((function(){a(o)}),0))}:"msSaveOrOpenBlob"in navigator?function(t,r,i){if(r=r||t.name||"download","string"!=typeof t)navigator.msSaveOrOpenBlob(function(t,e){return void 0===e?e={autoBom:!1}:"object"!=typeof e&&(console.warn("Deprecated: Expected third argument to be a object"),e={autoBom:!e}),e.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob(["\ufeff",t],{type:t.type}):t}(t,i),r);else if(n(t))e(t,r,i);else{var s=document.createElement("a");s.href=t,s.target="_blank",setTimeout((function(){a(s)}))}}:function(t,n,a,i){if((i=i||open("","_blank"))&&(i.document.title=i.document.body.innerText="downloading..."),"string"==typeof t)return e(t,n,a);var s="application/octet-stream"===t.type,u=/constructor/i.test(r.HTMLElement)||r.safari,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||s&&u)&&"object"==typeof FileReader){var l=new FileReader;l.onloadend=function(){var t=l.result;t=o?t:t.replace(/^data:[^;]*;/,"data:attachment/file;"),i?i.location.href=t:location=t,i=null},l.readAsDataURL(t)}else{var d=r.URL||r.webkitURL,c=d.createObjectURL(t);i?i.location=c:location.href=c,i=null,setTimeout((function(){d.revokeObjectURL(c)}),4e4)}});r.saveAs=i.saveAs=i,t.exports=i})?a.apply(e,[]):a)||(t.exports=r)},IeEY:function(t,e,n){var a=n("vJUC"),r=n("CwBR");t.exports=function t(e,n,i,s,u){var o=-1,l=e.length;for(i||(i=r),u||(u=[]);++o<l;){var d=e[o];n>0&&i(d)?n>1?t(d,n-1,i,s,u):a(u,d):s||(u[u.length]=d)}return u}},IfUl:function(t,e,n){var a=n("ZPW6"),r=n("JEWA");t.exports=function(t,e,n){(void 0!==n&&!r(t[e],n)||void 0===n&&!(e in t))&&a(t,e,n)}},IheW:function(t,e,n){"use strict";n.d(e,"m",(function(){return E})),n.d(e,"p",(function(){return q})),n.d(e,"q",(function(){return j})),n.d(e,"n",(function(){return D})),n.d(e,"o",(function(){return P})),n.d(e,"b",(function(){return c})),n.d(e,"g",(function(){return d})),n.d(e,"c",(function(){return I})),n.d(e,"a",(function(){return C})),n.d(e,"d",(function(){return G})),n.d(e,"e",(function(){return V})),n.d(e,"l",(function(){return F})),n.d(e,"h",(function(){return p})),n.d(e,"f",(function(){return O})),n.d(e,"i",(function(){return L})),n.d(e,"k",(function(){return k})),n.d(e,"j",(function(){return M}));var a=n("8Y7J"),r=n("LRne"),i=n("HDdC"),s=n("bOdf"),u=n("pLZG"),o=n("lJxs"),l=n("SVse");class d{}class c{}class f{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),a=n.toLowerCase(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,a),this.headers.has(a)?this.headers.get(a).push(r):this.headers.set(a,[r])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const a=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(a,n),this.maybeSetNormalizedName(e,a))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof f?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new f;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof f?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const a=("a"===t.op?this.headers.get(e):void 0)||[];a.push(...n),this.headers.set(e,a);break;case"d":const r=t.value;if(r){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===r.indexOf(t)),0===t.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class h{encodeKey(t){return g(t)}encodeValue(t){return g(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function g(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class p{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new h,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const a=t.indexOf("="),[r,i]=-1==a?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,a)),e.decodeValue(t.slice(a+1))],s=n.get(r)||[];s.push(i),n.set(r,s)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).join("&")}clone(t){const e=new p({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function b(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function m(t){return"undefined"!=typeof Blob&&t instanceof Blob}function y(t){return"undefined"!=typeof FormData&&t instanceof FormData}class v{constructor(t,e,n,a){let r;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||a?(this.body=void 0!==n?n:null,r=a):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.params&&(this.params=r.params)),this.headers||(this.headers=new f),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":n<e.length-1?"&":"")+t}}else this.params=new p,this.urlWithParams=e}serializeBody(){return null===this.body?null:b(this.body)||m(this.body)||y(this.body)||"string"==typeof this.body?this.body:this.body instanceof p?this.body.toString():"object"==typeof this.body||"boolean"==typeof this.body||Array.isArray(this.body)?JSON.stringify(this.body):this.body.toString()}detectContentTypeHeader(){return null===this.body||y(this.body)?null:m(this.body)?this.body.type||null:b(this.body)?null:"string"==typeof this.body?"text/plain":this.body instanceof p?"application/x-www-form-urlencoded;charset=UTF-8":"object"==typeof this.body||"number"==typeof this.body||Array.isArray(this.body)?"application/json":null}clone(t={}){const e=t.method||this.method,n=t.url||this.url,a=t.responseType||this.responseType,r=void 0!==t.body?t.body:this.body,i=void 0!==t.withCredentials?t.withCredentials:this.withCredentials,s=void 0!==t.reportProgress?t.reportProgress:this.reportProgress;let u=t.headers||this.headers,o=t.params||this.params;return void 0!==t.setHeaders&&(u=Object.keys(t.setHeaders).reduce((e,n)=>e.set(n,t.setHeaders[n]),u)),t.setParams&&(o=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),o)),new v(e,n,r,{params:o,headers:u,reportProgress:s,responseType:a,withCredentials:i})}}const x=function(){var t={Sent:0,UploadProgress:1,ResponseHeader:2,DownloadProgress:3,Response:4,User:5};return t[t.Sent]="Sent",t[t.UploadProgress]="UploadProgress",t[t.ResponseHeader]="ResponseHeader",t[t.DownloadProgress]="DownloadProgress",t[t.Response]="Response",t[t.User]="User",t}();class _{constructor(t,e=200,n="OK"){this.headers=t.headers||new f,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class T extends _{constructor(t={}){super(t),this.type=x.ResponseHeader}clone(t={}){return new T({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class w extends _{constructor(t={}){super(t),this.type=x.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new w({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class O extends _{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?"Http failure during parsing for "+(t.url||"(unknown url)"):`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function S(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}class I{constructor(t){this.handler=t}request(t,e,n={}){let a;if(t instanceof v)a=t;else{let r=void 0;r=n.headers instanceof f?n.headers:new f(n.headers);let i=void 0;n.params&&(i=n.params instanceof p?n.params:new p({fromObject:n.params})),a=new v(t,e,void 0!==n.body?n.body:null,{headers:r,params:i,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const i=Object(r.a)(a).pipe(Object(s.a)(t=>this.handler.handle(t)));if(t instanceof v||"events"===n.observe)return i;const l=i.pipe(Object(u.a)(t=>t instanceof w));switch(n.observe||"body"){case"body":switch(a.responseType){case"arraybuffer":return l.pipe(Object(o.a)(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return l.pipe(Object(o.a)(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return l.pipe(Object(o.a)(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return l.pipe(Object(o.a)(t=>t.body))}case"response":return l;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new p).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,S(n,e))}post(t,e,n={}){return this.request("POST",t,S(n,e))}put(t,e,n={}){return this.request("PUT",t,S(n,e))}}class N{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const C=new a.InjectionToken("HTTP_INTERCEPTORS");class R{intercept(t,e){return e.handle(t)}}const A=/^\)\]\}',?\n/;class k{}class E{constructor(){}build(){return new XMLHttpRequest}}class L{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without JsonpClientModule installed.");return new i.a(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const a=t.serializeBody();let r=null;const i=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,a=n.statusText||"OK",i=new f(n.getAllResponseHeaders()),s=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new T({headers:i,status:e,statusText:a,url:s}),r},s=()=>{let{headers:a,status:r,statusText:s,url:u}=i(),o=null;204!==r&&(o=void 0===n.response?n.responseText:n.response),0===r&&(r=o?200:0);let l=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof o){const t=o;o=o.replace(A,"");try{o=""!==o?JSON.parse(o):null}catch(d){o=t,l&&(l=!1,o={error:d,text:o})}}l?(e.next(new w({body:o,headers:a,status:r,statusText:s,url:u||void 0})),e.complete()):e.error(new O({error:o,headers:a,status:r,statusText:s,url:u||void 0}))},u=t=>{const{url:a}=i(),r=new O({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:a||void 0});e.error(r)};let o=!1;const l=a=>{o||(e.next(i()),o=!0);let r={type:x.DownloadProgress,loaded:a.loaded};a.lengthComputable&&(r.total=a.total),"text"===t.responseType&&n.responseText&&(r.partialText=n.responseText),e.next(r)},d=t=>{let n={type:x.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",s),n.addEventListener("error",u),t.reportProgress&&(n.addEventListener("progress",l),null!==a&&n.upload&&n.upload.addEventListener("progress",d)),n.send(a),e.next({type:x.Sent}),()=>{n.removeEventListener("error",u),n.removeEventListener("load",s),t.reportProgress&&(n.removeEventListener("progress",l),null!==a&&n.upload&&n.upload.removeEventListener("progress",d)),n.abort()}})}}const D=new a.InjectionToken("XSRF_COOKIE_NAME"),P=new a.InjectionToken("XSRF_HEADER_NAME");class M{}class q{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=Object(l["ɵparseCookieValue"])(t,this.cookieName),this.lastCookieString=t),this.lastToken}}class j{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const a=this.tokenService.getToken();return null===a||t.headers.has(this.headerName)||(t=t.clone({headers:t.headers.set(this.headerName,a)})),e.handle(t)}}class F{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(C,[]);this.chain=t.reduceRight((t,e)=>new N(t,e),this.backend)}return this.chain.handle(t)}}class V{static disable(){return{ngModule:V,providers:[{provide:j,useClass:R}]}}static withOptions(t={}){return{ngModule:V,providers:[t.cookieName?{provide:D,useValue:t.cookieName}:[],t.headerName?{provide:P,useValue:t.headerName}:[]]}}}class G{}},IjjT:function(t,e,n){"use strict";let a=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=()=>Date.now(),t})();n.d(e,"a",(function(){return r}));class r extends a{constructor(t,e=a.now){super(t,()=>r.delegate&&r.delegate!==this?r.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return r.delegate&&r.delegate!==this?r.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let n;this.active=!0;do{if(n=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,n){for(;t=e.shift();)t.unsubscribe();throw n}}}},ImZN:function(t,e,n){var a=n("glrk"),r=n("6VoE"),i=n("UMSQ"),s=n("A2ZE"),u=n("NaFW"),o=n("m92n"),l=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,d,c){var f,h,g,p,b,m,y,v=s(e,n,d?2:1);if(c)f=t;else{if("function"!=typeof(h=u(t)))throw TypeError("Target is not iterable");if(r(h)){for(g=0,p=i(t.length);p>g;g++)if((b=d?v(a(y=t[g])[0],y[1]):v(t[g]))&&b instanceof l)return b;return new l(!1)}f=h.call(t)}for(m=f.next;!(y=m.call(f)).done;)if("object"==typeof(b=o(f,v,y.value,d))&&b&&b instanceof l)return b;return new l(!1)}).stop=function(t){return new l(!0,t)}},"Ivi+":function(t,e,n){!function(t){"use strict";t.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h:mm",LLLL:"YYYY년 MMMM D일 dddd A h:mm",l:"YYYY.MM.DD.",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",ss:"%d초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"일";case"M":return t+"월";case"w":case"W":return t+"주";default:return t}},meridiemParse:/오전|오후/,isPM:function(t){return"오후"===t},meridiem:function(t,e,n){return t<12?"오전":"오후"}})}(n("wd/R"))},IyEx:function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length,r=0,i=[];++n<a;){var s=t[n];e(s,n,t)&&(i[r++]=s)}return i}},IzCI:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("aXbf");class a{constructor(t){this.formatter=t}transform(t){return this.formatter.format_number(t,1024,["B/s","kB/s","MB/s","GB/s","TB/s","PB/s","EB/s","ZB/s","YB/s"])}}},IzEk:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("7o/Q"),r=n("4I5i"),i=n("EY2u");function s(t){return e=>0===t?Object(i.b)():e.lift(new u(t))}class u{constructor(t){if(this.total=t,this.total<0)throw new r.a}call(t,e){return e.subscribe(new o(t,this.total))}}class o extends a.a{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}},J3wx:function(t,e,n){var a=n("qN6l");t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=a&&void 0===e?"__lodash_hash_undefined__":e,this}},J9xi:function(t,e,n){var a=n("rk81"),r=n("5DBd"),i=n("bQrF"),s=n("xOlK"),u=n("pYe4"),o=n("j09V"),l=n("Y3RO"),d=n("+GxX"),c=n("G3dZ"),f=n("iQ+a"),h=n("mOnh"),g=n("qwH+"),p=n("8+Q7"),b=n("hTsC"),m=n("pcUq"),y=n("0GLT"),v=n("y/5f"),x=n("8Tpr"),_=n("hmSm"),T=n("8+is"),w=n("FGWQ"),O=n("MBcj"),S={};S["[object Arguments]"]=S["[object Array]"]=S["[object ArrayBuffer]"]=S["[object DataView]"]=S["[object Boolean]"]=S["[object Date]"]=S["[object Float32Array]"]=S["[object Float64Array]"]=S["[object Int8Array]"]=S["[object Int16Array]"]=S["[object Int32Array]"]=S["[object Map]"]=S["[object Number]"]=S["[object Object]"]=S["[object RegExp]"]=S["[object Set]"]=S["[object String]"]=S["[object Symbol]"]=S["[object Uint8Array]"]=S["[object Uint8ClampedArray]"]=S["[object Uint16Array]"]=S["[object Uint32Array]"]=!0,S["[object Error]"]=S["[object Function]"]=S["[object WeakMap]"]=!1,t.exports=function t(e,n,I,N,C,R){var A,k=1&n,E=2&n,L=4&n;if(I&&(A=C?I(e,N,C,R):I(e)),void 0!==A)return A;if(!_(e))return e;var D=y(e);if(D){if(A=p(e),!k)return l(e,A)}else{var P=g(e),M="[object Function]"==P||"[object GeneratorFunction]"==P;if(v(e))return o(e,k);if("[object Object]"==P||"[object Arguments]"==P||M&&!C){if(A=E||M?{}:m(e),!k)return E?c(e,u(A,e)):d(e,s(A,e))}else{if(!S[P])return C?e:{};A=b(e,P,k)}}R||(R=new a);var q=R.get(e);if(q)return q;R.set(e,A),T(e)?e.forEach((function(a){A.add(t(a,n,I,a,e,R))})):x(e)&&e.forEach((function(a,r){A.set(r,t(a,n,I,r,e,R))}));var j=D?void 0:(L?E?h:f:E?O:w)(e);return r(j||e,(function(a,r){j&&(a=e[r=a]),i(A,r,t(a,n,I,r,e,R))})),A}},JBy8:function(t,e,n){var a=n("yoRg"),r=n("eDl+").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return a(t,r)}},"JCF/":function(t,e,n){!function(t){"use strict";var e={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},a=["کانونی دووەم","شوبات","ئازار","نیسان","ئایار","حوزەیران","تەمموز","ئاب","ئەیلوول","تشرینی یەكەم","تشرینی دووەم","كانونی یەکەم"];t.defineLocale("ku",{months:a,monthsShort:a,weekdays:"یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌".split("_"),weekdaysShort:"یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌".split("_"),weekdaysMin:"ی_د_س_چ_پ_ه_ش".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/ئێواره‌|به‌یانی/,isPM:function(t){return/ئێواره‌/.test(t)},meridiem:function(t,e,n){return t<12?"به‌یانی":"ئێواره‌"},calendar:{sameDay:"[ئه‌مرۆ كاتژمێر] LT",nextDay:"[به‌یانی كاتژمێر] LT",nextWeek:"dddd [كاتژمێر] LT",lastDay:"[دوێنێ كاتژمێر] LT",lastWeek:"dddd [كاتژمێر] LT",sameElse:"L"},relativeTime:{future:"له‌ %s",past:"%s",s:"چه‌ند چركه‌یه‌ك",ss:"چركه‌ %d",m:"یه‌ك خوله‌ك",mm:"%d خوله‌ك",h:"یه‌ك كاتژمێر",hh:"%d كاتژمێر",d:"یه‌ك ڕۆژ",dd:"%d ڕۆژ",M:"یه‌ك مانگ",MM:"%d مانگ",y:"یه‌ك ساڵ",yy:"%d ساڵ"},preparse:function(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n("wd/R"))},JEWA:function(t,e){t.exports=function(t,e){return t===e||t!=t&&e!=e}},JIr8:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("l7GE"),r=n("51Dv"),i=n("ZUHj");function s(t){return function(e){const n=new u(t),a=e.lift(n);return n.caught=a}}class u{constructor(t){this.selector=t}call(t,e){return e.subscribe(new o(t,this.selector,this.caught))}}class o extends a.a{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const a=new r.a(this,void 0,void 0);this.add(a);const s=Object(i.a)(this,n,void 0,void 0,a);s!==a&&this.add(s)}}}},JTPl:function(t,e,n){var a,r=n("isl5"),i=(a=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||""))?"Symbol(src)_1."+a:"";t.exports=function(t){return!!i&&i in t}},JVSJ:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a=t+" ";switch(n){case"ss":return a+(1===t?"sekunda":2===t||3===t||4===t?"sekunde":"sekundi");case"m":return e?"jedna minuta":"jedne minute";case"mm":return a+(1===t?"minuta":2===t||3===t||4===t?"minute":"minuta");case"h":return e?"jedan sat":"jednog sata";case"hh":return a+(1===t?"sat":2===t||3===t||4===t?"sata":"sati");case"dd":return a+(1===t?"dan":"dana");case"MM":return a+(1===t?"mjesec":2===t||3===t||4===t?"mjeseca":"mjeseci");case"yy":return a+(1===t?"godina":2===t||3===t||4===t?"godine":"godina")}}t.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:e,m:e,mm:e,h:e,hh:e,d:"dan",dd:e,M:"mjesec",MM:e,y:"godinu",yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},JvlW:function(t,e,n){!function(t){"use strict";var e={ss:"sekundė_sekundžių_sekundes",m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"};function n(t,e,n,a){return e?r(n)[0]:a?r(n)[1]:r(n)[2]}function a(t){return t%10==0||t>10&&t<20}function r(t){return e[t].split("_")}function i(t,e,i,s){var u=t+" ";return 1===t?u+n(0,e,i[0],s):e?u+(a(t)?r(i)[1]:r(i)[0]):s?u+r(i)[1]:u+(a(t)?r(i)[1]:r(i)[2])}t.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:function(t,e,n,a){return e?"kelios sekundės":a?"kelių sekundžių":"kelias sekundes"},ss:i,m:n,mm:i,h:n,hh:i,d:n,dd:i,M:n,MM:i,y:n,yy:i},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal:function(t){return t+"-oji"},week:{dow:1,doy:4}})}(n("wd/R"))},JxMD:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("hrfs");n("dgut"),n("Fgil"),n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return u}));var s=a["ɵcrt"]({encapsulation:0,styles:[['canvas[_ngcontent-%COMP%]{-moz-user-select:none;user-select:none}.chartjs-tooltip[_ngcontent-%COMP%]{opacity:0;position:absolute;background:rgba(0,0,0,.7);color:#fff;border-radius:3px;transition:all .1s ease;pointer-events:none;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;transform:translate(-50%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]{transform:translate(-10%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]::after{left:10%}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]{transform:translate(-90%,0)}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]::after{left:90%}.chartjs-tooltip[_ngcontent-%COMP%]::after{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#000 transparent transparent}  .chartjs-tooltip-key{display:inline-block;width:10px;height:10px;margin-right:10px}.chart-container[_ngcontent-%COMP%]{margin:auto;cursor:pointer;overflow:visible;position:static!important}']],data:{}});function u(t){return a["ɵvid"](0,[a["ɵqud"](402653184,1,{chartCanvasRef:0}),a["ɵqud"](402653184,2,{chartTooltipRef:0}),(t()(),a["ɵeld"](2,0,null,null,6,"div",[["class","chart-container"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgStyleImpl"],r["ɵNgStyleR2Impl"],[a.ElementRef,a.KeyValueDiffers,a.Renderer2]),a["ɵdid"](4,278528,null,0,r.NgStyle,[r["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),a["ɵeld"](5,0,[[1,0],["sparkCanvas",1]],null,1,"canvas",[["baseChart",""]],null,null,null,null,null)),a["ɵdid"](6,999424,null,0,i.a,[a.ElementRef,i.c],{datasets:[0,"datasets"],labels:[1,"labels"],options:[2,"options"],chartType:[3,"chartType"],colors:[4,"colors"]},null),(t()(),a["ɵeld"](7,0,[[2,0],["sparkTooltip",1]],null,1,"div",[["class","chartjs-tooltip"]],null,null,null,null,null)),(t()(),a["ɵeld"](8,0,null,null,0,"table",[],null,null,null,null,null))],(function(t,e){var n=e.component;t(e,4,0,n.style),t(e,6,0,n.datasets,n.labels,n.options,"line",n.colors)}),null)}},"K/tc":function(t,e,n){!function(t){"use strict";t.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(t){return/^nm$/i.test(t)},meridiem:function(t,e,n){return t<12?n?"vm":"VM":n?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}})}(n("wd/R"))},K1DE:function(t,e){t.exports=function(t,e){return t.has(e)}},K3g9:function(t,e){t.exports=function(t){return t&&t.length?t[0]:void 0}},KFwg:function(t,e,n){var a=n("r467"),r=n("k9+3");t.exports=function(t,e){var n=r(t,e);return a(n)?n:void 0}},KNDS:function(t,e){t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},KOzp:function(t,e,n){"use strict";n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return o})),n.d(e,"c",(function(){return l})),n.d(e,"d",(function(){return d}));var a=n("z/SZ"),r=n("hpHm"),i=n("2uy1"),s=n("PqYM");class u{constructor(){this.adaptivePosition=!0,this.placement="top",this.triggers="click",this.outsideClick=!1,this.delay=0}}class o{constructor(t){Object.assign(this,t)}get isBs3(){return Object(r.d)()}}class l{constructor(t,e,n,a,r,i){this._elementRef=e,this._renderer=n,this._positionService=i,this.outsideClick=!1,this.containerClass="",this._isInited=!1,this._popover=r.createLoader(e,a,n).provide({provide:u,useValue:t}),Object.assign(this,t),this.onShown=this._popover.onShown,this.onHidden=this._popover.onHidden,"undefined"!=typeof window&&e.nativeElement.addEventListener("click",(function(){try{e.nativeElement.focus()}catch(t){return}}))}get isOpen(){return this._popover.isShown}set isOpen(t){t?this.show():this.hide()}show(){if(this._popover.isShown||!this.popover||this._delayTimeoutId)return;this._positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition},preventOverflow:{enabled:this.adaptivePosition}}});const t=()=>{this._delayTimeoutId&&(this._delayTimeoutId=void 0),this._popover.attach(o).to(this.container).position({attachment:this.placement}).show({content:this.popover,context:this.popoverContext,placement:this.placement,title:this.popoverTitle,containerClass:this.containerClass}),this.adaptivePosition||(this._positionService.calcPosition(),this._positionService.deletePositionElement(this._popover._componentRef.location)),this.isOpen=!0},e=()=>{this._popoverCancelShowFn&&this._popoverCancelShowFn()};if(this.delay){const n=Object(s.a)(this.delay).subscribe(()=>{t(),e()});this.triggers&&Object(r.f)(this.triggers).forEach(t=>{this._popoverCancelShowFn=this._renderer.listen(this._elementRef.nativeElement,t.close,()=>{n.unsubscribe(),e()})})}else t()}hide(){this._delayTimeoutId&&(clearTimeout(this._delayTimeoutId),this._delayTimeoutId=void 0),this.isOpen&&(this._popover.hide(),this.isOpen=!1)}toggle(){if(this.isOpen)return this.hide();this.show()}ngOnInit(){this._isInited||(this._isInited=!0,this._popover.listen({triggers:this.triggers,outsideClick:this.outsideClick,show:()=>this.show()}))}ngOnDestroy(){this._popover.dispose()}}class d{static forRoot(){return{ngModule:d,providers:[u,a.a,i.a]}}}},KQir:function(t,e){t.exports=function(){return!1}},KSF8:function(t,e,n){!function(t){"use strict";t.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),monthsParseExact:!0,weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM:function(t){return/^ch$/i.test(t)},meridiem:function(t,e,n){return t<12?n?"sa":"SA":n?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",ss:"%d giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:function(t){return t},week:{dow:1,doy:4}})}(n("wd/R"))},KTz0:function(t,e,n){!function(t){"use strict";var e={words:{ss:["sekund","sekunda","sekundi"],m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(t,e){return 1===t?e[0]:t>=2&&t<=4?e[1]:e[2]},translate:function(t,n,a){var r=e.words[a];return 1===a.length?n?r[0]:r[1]:t+" "+e.correctGrammaticalCase(t,r)}};t.defineLocale("me",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){return["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",ss:e.translate,m:e.translate,mm:e.translate,h:e.translate,hh:e.translate,d:"dan",dd:e.translate,M:"mjesec",MM:e.translate,y:"godinu",yy:e.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},KVJa:function(t,e,n){"use strict";var a=n("8Y7J");n("Z21x"),n("SVse"),n("sne2"),n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var r=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function i(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"button",[["class","btn btn-light tc_backButton"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.back()&&a),a}),null,null)),(t()(),a["ɵted"](1,null,[" ","\n"]))],null,(function(t,e){t(e,1,0,e.component.name)}))}},Kqap:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(a){return a.lift(new i(t,e,n))}}class i{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new s(t,this.accumulator,this.seed,this.hasSeed))}}class s extends a.a{constructor(t,e,n,a){super(t),this.accumulator=e,this._seed=n,this.hasSeed=a,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(a){this.destination.error(a)}this.seed=n,this.destination.next(n)}}},KqfI:function(t,e,n){"use strict";function a(){}n.d(e,"a",(function(){return a}))},L0Z1:function(t,e,n){(function(t){var a=n("qzZ1"),r=e&&!e.nodeType&&e,i=r&&"object"==typeof t&&t&&!t.nodeType&&t,s=i&&i.exports===r&&a.process,u=function(){try{return i&&i.require&&i.require("util").types||s&&s.binding&&s.binding("util")}catch(t){}}();t.exports=u}).call(this,n("YuTi")(t))},LJNh:function(t,e,n){var a=n("zDBQ"),r=n("8V0S"),i=n("/F2L");t.exports=function(t){return i(r(t,void 0,a),t+"")}},LOMR:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("Fwy9"),i=n("gk6K"),s=n("woSy"),u=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"div",[["class","node-drop-slot"]],null,[[null,"treeDrop"],[null,"drop"]],(function(t,e,n){var r=!0,i=t.component;return"drop"===e&&(r=!1!==a["ɵnov"](t,1).onDrop(n)&&r),"treeDrop"===e&&(r=!1!==i.onDrop(n)&&r),r}),null,null)),a["ɵdid"](1,4341760,null,0,r.a,[a.ElementRef,a.Renderer2,i.a,a.NgZone],{allowDragoverStyling:[0,"allowDragoverStyling"],treeAllowDrop:[1,"treeAllowDrop"]},{onDropCallback:"treeDrop"})],(function(t,e){var n=e.component;t(e,1,0,!0,n.allowDrop.bind(n))}),null)}var l=n("SVse"),d=n("CoVI"),c=n("uNpg"),f=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"input",[["class","tree-node-checkbox"],["type","checkbox"]],[[8,"checked",0],[8,"indeterminate",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.node.mouseAction("checkboxClick",n)&&a),a}),null,null))],null,(function(t,e){var n=e.component;t(e,1,0,n.node.isSelected,n.node.isPartiallySelected)}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,h)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var p=n("jV1L"),b=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function m(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","toggle-children-wrapper"]],[[2,"toggle-children-wrapper-expanded",null],[2,"toggle-children-wrapper-collapsed",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.node.mouseAction("expanderClick",n)&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"span",[["class","toggle-children"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.node.isExpanded,n.node.isCollapsed)}))}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"span",[["class","toggle-children-placeholder"]],null,null,null,null,null))],null,null)}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,m)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](4,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.node.hasChildren),t(e,4,0,!n.node.hasChildren)}),null)}function x(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,v)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var _=n("C523"),T=n("rZud"),w=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.node.displayField)}))}function S(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](1,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](2,16777216,null,null,2,null,null,null,null,null,null,null)),a["ɵdid"](3,540672,null,0,l.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](4,{$implicit:0,node:1,index:2})],(function(t,e){var n=e.component;t(e,1,0,!n.template);var a=t(e,4,0,n.node,n.node,n.index);t(e,3,0,a,n.template)}),null)}var I=n("OIDT"),N=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function C(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node-checkbox",[],null,null,null,g,f)),a["ɵdid"](1,49152,null,0,c.a,[],{node:[0,"node"]},null)],(function(t,e){t(e,1,0,e.component.node)}),null)}function R(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,9,"div",[["class","node-wrapper"]],[[4,"padding-left",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,C)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](3,0,null,null,1,"tree-node-expander",[],null,null,null,x,b)),a["ɵdid"](4,49152,null,0,p.a,[],{node:[0,"node"]},null),(t()(),a["ɵeld"](5,0,null,null,4,"div",[["class","node-content-wrapper"]],[[2,"node-content-wrapper-active",null],[2,"node-content-wrapper-focused",null]],[[null,"click"],[null,"dblclick"],[null,"mouseover"],[null,"mouseout"],[null,"contextmenu"],[null,"treeDrop"],[null,"treeDropDragOver"],[null,"treeDropDragLeave"],[null,"treeDropDragEnter"],[null,"drop"],[null,"dragstart"],[null,"dragend"]],(function(t,e,n){var r=!0,i=t.component;return"drop"===e&&(r=!1!==a["ɵnov"](t,6).onDrop(n)&&r),"dragstart"===e&&(r=!1!==a["ɵnov"](t,7).onDragStart(n)&&r),"dragend"===e&&(r=!1!==a["ɵnov"](t,7).onDragEnd()&&r),"click"===e&&(r=!1!==i.node.mouseAction("click",n)&&r),"dblclick"===e&&(r=!1!==i.node.mouseAction("dblClick",n)&&r),"mouseover"===e&&(r=!1!==i.node.mouseAction("mouseOver",n)&&r),"mouseout"===e&&(r=!1!==i.node.mouseAction("mouseOut",n)&&r),"contextmenu"===e&&(r=!1!==i.node.mouseAction("contextMenu",n)&&r),"treeDrop"===e&&(r=!1!==i.node.onDrop(n)&&r),"treeDropDragOver"===e&&(r=!1!==i.node.mouseAction("dragOver",n)&&r),"treeDropDragLeave"===e&&(r=!1!==i.node.mouseAction("dragLeave",n)&&r),"treeDropDragEnter"===e&&(r=!1!==i.node.mouseAction("dragEnter",n)&&r),r}),null,null)),a["ɵdid"](6,4341760,null,0,r.a,[a.ElementRef,a.Renderer2,i.a,a.NgZone],{allowDragoverStyling:[0,"allowDragoverStyling"],treeAllowDrop:[1,"treeAllowDrop"]},{onDropCallback:"treeDrop",onDragOverCallback:"treeDropDragOver",onDragLeaveCallback:"treeDropDragLeave",onDragEnterCallback:"treeDropDragEnter"}),a["ɵdid"](7,4603904,null,0,_.a,[a.ElementRef,a.Renderer2,i.a,a.NgZone],{draggedElement:[0,"draggedElement"],treeDragEnabled:[1,"treeDragEnabled"]},null),(t()(),a["ɵeld"](8,0,null,null,1,"tree-node-content",[],null,null,null,S,w)),a["ɵdid"](9,49152,null,0,T.a,[],{node:[0,"node"],index:[1,"index"],template:[2,"template"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.node.options.useCheckbox),t(e,4,0,n.node),t(e,6,0,n.node.allowDragoverStyling(),n.node.allowDrop),t(e,7,0,n.node,n.node.allowDrag()),t(e,9,0,n.node,n.index,n.templates.treeNodeTemplate)}),(function(t,e){var n=e.component;t(e,0,0,n.node.getNodePadding()),t(e,5,0,n.node.isActive,n.node.isFocused)}))}function A(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,R)),a["ɵdid"](1,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](2,16777216,null,null,2,null,null,null,null,null,null,null)),a["ɵdid"](3,540672,null,0,l.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](4,{$implicit:0,node:1,index:2,templates:3})],(function(t,e){var n=e.component;t(e,1,0,!n.templates.treeNodeWrapperTemplate);var a=t(e,4,0,n.node,n.node,n.index,n.templates);t(e,3,0,a,n.templates.treeNodeWrapperTemplate)}),null)}var k=n("WaXT"),E=n("ZhuC"),L=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function D(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["loading..."]))],null,null)}function P(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,D)),a["ɵdid"](1,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](2,16777216,null,null,2,null,null,null,null,null,null,null)),a["ɵdid"](3,540672,null,0,l.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](4,{$implicit:0})],(function(t,e){var n=e.component;t(e,1,0,!n.template);var a=t(e,4,0,n.node);t(e,3,0,a,n.template)}),null)}var M=n("4Dmd"),q=n("pcHL"),j=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function F(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node-collection",[],null,null,null,X,Z)),a["ɵdid"](1,245760,null,0,k.a,[],{nodes:[0,"nodes"],treeModel:[1,"treeModel"],templates:[2,"templates"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.node.children,n.node.treeModel,n.templates)}),null)}function V(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-loading-component",[["class","tree-node-loading"]],[[4,"padding-left",null]],null,null,P,L)),a["ɵdid"](1,49152,null,0,E.a,[],{template:[0,"template"],node:[1,"node"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.templates.loadingTemplate,n.node)}),(function(t,e){t(e,0,0,e.component.node.getNodePadding())}))}function G(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[],[[2,"tree-children",null],[2,"tree-children-no-padding",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,F)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,V)),a["ɵdid"](4,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.node.children),t(e,4,0,!n.node.children)}),(function(t,e){t(e,0,0,!0,e.component.node.options.levelPadding)}))}function B(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,G)),a["ɵdid"](2,16384,null,0,M.a,[a.Renderer2,a.TemplateRef,a.ViewContainerRef],{animateSpeed:[0,"animateSpeed"],animateAcceleration:[1,"animateAcceleration"],isEnabled:[2,"isEnabled"],isOpen:[3,"isOpen"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.node.options.animateSpeed,n.node.options.animateAcceleration,n.node.options.animateExpand,n.node.isExpanded)}),null)}function z(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,B)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var Y=n("TNUL"),H=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function U(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node-drop-slot",[],null,null,null,o,u)),a["ɵdid"](1,49152,null,0,s.a,[],{node:[0,"node"],dropIndex:[1,"dropIndex"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.node.parent,n.node.index)}),null)}function W(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"div",[],[[8,"className",0],[2,"tree-node",null],[2,"tree-node-expanded",null],[2,"tree-node-collapsed",null],[2,"tree-node-leaf",null],[2,"tree-node-active",null],[2,"tree-node-focused",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,U)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](3,0,null,null,1,"tree-node-wrapper",[],null,null,null,A,N)),a["ɵdid"](4,49152,null,0,I.a,[],{node:[0,"node"],index:[1,"index"],templates:[2,"templates"]},null),(t()(),a["ɵeld"](5,0,null,null,1,"tree-node-children",[],null,null,null,z,j)),a["ɵdid"](6,49152,null,0,q.a,[],{node:[0,"node"],templates:[1,"templates"]},null),(t()(),a["ɵeld"](7,0,null,null,1,"tree-node-drop-slot",[],null,null,null,o,u)),a["ɵdid"](8,49152,null,0,s.a,[],{node:[0,"node"],dropIndex:[1,"dropIndex"]},null)],(function(t,e){var n=e.component;t(e,2,0,0===n.index),t(e,4,0,n.node,n.index,n.templates),t(e,6,0,n.node,n.templates),t(e,8,0,n.node.parent,n.node.index+1)}),(function(t,e){var n=e.component;t(e,0,0,n.node.getClass(),!0,n.node.isExpanded&&n.node.hasChildren,n.node.isCollapsed&&n.node.hasChildren,n.node.isLeaf,n.node.isActive,n.node.isFocused)}))}function K(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,W)),a["ɵdid"](2,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](3,16777216,null,null,2,null,null,null,null,null,null,null)),a["ɵdid"](4,540672,null,0,l.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](5,{$implicit:0,node:1,index:2,templates:3}),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,!n.templates.treeNodeFullTemplate);var a=t(e,5,0,n.node,n.node,n.index,n.templates);t(e,4,0,a,n.templates.treeNodeFullTemplate)}),null)}function $(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,K)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var Z=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function J(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node",[],null,null,null,$,H)),a["ɵdid"](1,49152,null,0,Y.a,[],{node:[0,"node"],index:[1,"index"],templates:[2,"templates"]},null)],(function(t,e){t(e,1,0,e.context.$implicit,e.context.index,e.component.templates)}),null)}function Q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,2,"div",[],[[4,"margin-top",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,J)),a["ɵdid"](3,278528,null,0,l.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.viewportNodes,n.trackNode)}),(function(t,e){t(e,1,0,e.component.marginTop)}))}function X(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,Q)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}var tt=n("dApe"),et=n("MP8s"),nt=n("HIU9"),at=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function rt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[],[[4,"height",null]],null,null,null,null)),a["ɵncd"](null,0)],null,(function(t,e){t(e,1,0,e.component.getTotalHeight())}))}function it(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,rt)),a["ɵdid"](1,212992,null,0,d.a,[a.TemplateRef,a.ViewContainerRef],{treeMobxAutorun:[0,"treeMobxAutorun"]},null),a["ɵpod"](2,{dontDetach:0})],(function(t,e){var n=t(e,2,0,!0);t(e,1,0,n)}),null)}n("fxL3"),n.d(e,"a",(function(){return st})),n.d(e,"b",(function(){return lt}));var st=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function ut(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"tree-node-collection",[],null,null,null,X,Z)),a["ɵdid"](1,245760,null,0,k.a,[],{nodes:[0,"nodes"],treeModel:[1,"treeModel"],templates:[2,"templates"]},null),a["ɵpod"](2,{loadingTemplate:0,treeNodeTemplate:1,treeNodeWrapperTemplate:2,treeNodeFullTemplate:3})],(function(t,e){var n=e.component,a=n.treeModel.roots,r=n.treeModel,i=t(e,2,0,n.loadingTemplate,n.treeNodeTemplate,n.treeNodeWrapperTemplate,n.treeNodeFullTemplate);t(e,1,0,a,r,i)}),null)}function ot(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"tree-node-drop-slot",[["class","empty-tree-drop-slot"]],null,null,null,o,u)),a["ɵdid"](1,49152,null,0,s.a,[],{node:[0,"node"],dropIndex:[1,"dropIndex"]},null)],(function(t,e){t(e,1,0,e.component.treeModel.virtualRoot,0)}),null)}function lt(t){return a["ɵvid"](0,[a["ɵqud"](671088640,1,{viewportComponent:0}),(t()(),a["ɵeld"](1,0,null,null,7,"tree-viewport",[],null,null,null,it,at)),a["ɵprd"](512,null,tt.a,tt.a,[et.a]),a["ɵdid"](3,4440064,[[1,4],["viewport",4]],0,nt.a,[a.ElementRef,a.NgZone,tt.a],null,null),(t()(),a["ɵeld"](4,0,null,0,4,"div",[["class","angular-tree-component"]],[[2,"node-dragging",null],[2,"angular-tree-component-rtl",null]],null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ut)),a["ɵdid"](6,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ot)),a["ɵdid"](8,16384,null,0,l.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0),t(e,6,0,n.treeModel.roots),t(e,8,0,n.treeModel.isEmptyTree())}),(function(t,e){var n=e.component;t(e,4,0,n.treeDraggedElement.isDragging(),n.treeModel.options.rtl)}))}},LQDL:function(t,e,n){var a,r,i=n("2oRo"),s=n("NC/Y"),u=i.process,o=u&&u.versions,l=o&&o.v8;l?r=(a=l.split("."))[0]+a[1]:s&&(!(a=s.match(/Edge\/(\d+)/))||a[1]>=74)&&(a=s.match(/Chrome\/(\d+)/))&&(r=a[1]),t.exports=r&&+r},LRne:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("z+Ro"),r=n("yCtX"),i=n("jZKg");function s(...t){let e=t[t.length-1];return Object(a.a)(e)?(t.pop(),Object(i.a)(t,e)):Object(r.a)(t)}},LWR0:function(t,e,n){var a=n("hmSm"),r=n("fIUv"),i=n("jNLg"),s=Math.max,u=Math.min;t.exports=function(t,e,n){var o,l,d,c,f,h,g=0,p=!1,b=!1,m=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function y(e){var n=o,a=l;return o=l=void 0,g=e,c=t.apply(a,n)}function v(t){return g=t,f=setTimeout(_,e),p?y(t):c}function x(t){var n=t-h;return void 0===h||n>=e||n<0||b&&t-g>=d}function _(){var t=r();if(x(t))return T(t);f=setTimeout(_,function(t){var n=e-(t-h);return b?u(n,d-(t-g)):n}(t))}function T(t){return f=void 0,m&&o?y(t):(o=l=void 0,c)}function w(){var t=r(),n=x(t);if(o=arguments,l=this,h=t,n){if(void 0===f)return v(h);if(b)return clearTimeout(f),f=setTimeout(_,e),y(h)}return void 0===f&&(f=setTimeout(_,e)),c}return e=i(e)||0,a(n)&&(p=!!n.leading,d=(b="maxWait"in n)?s(i(n.maxWait)||0,e):d,m="trailing"in n?!!n.trailing:m),w.cancel=function(){void 0!==f&&clearTimeout(f),g=0,o=h=l=f=void 0},w.flush=function(){return void 0===f?c:T(r())},w}},LaC8:function(t,e,n){var a=n("pMcL"),r=n("sA22"),i=n("eNG0"),s=a?a.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":s&&s in Object(t)?r(t):i(t)}},LceX:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return c})),n.d(e,"c",(function(){return i})),n.d(e,"d",(function(){return s})),n.d(e,"e",(function(){return u})),n.d(e,"f",(function(){return o})),n.d(e,"g",(function(){return l})),n.d(e,"h",(function(){return d}));var a=n("sne2");n("eTJe"),n("n/D3"),n("V3my"),n("ZEkX");class r{}const i={breadcrumbs:"Users"},s={breadcrumbs:a.a.CREATE},u={breadcrumbs:a.a.EDIT},o={breadcrumbs:"Roles"},l={breadcrumbs:a.a.CREATE},d={breadcrumbs:a.a.EDIT};class c{}},LgIp:function(t,e){t.exports=function(t){for(var e=-1,n=null==t?0:t.length,a=0,r=[];++e<n;){var i=t[e];i&&(r[a++]=i)}return r}},Lhse:function(t,e,n){"use strict";function a(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}n.d(e,"a",(function(){return r}));const r=a()},Loxo:function(t,e,n){!function(t){"use strict";t.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",ss:"%d фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}})}(n("wd/R"))},LqlI:function(t,e,n){"use strict";n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return f})),n.d(e,"c",(function(){return c})),n.d(e,"d",(function(){return d})),n.d(e,"e",(function(){return h})),n.d(e,"f",(function(){return o}));var a=n("8Y7J"),r=n("hpHm"),i=n("z/SZ"),s=n("2uy1");class u{constructor(){this.hide=Function,this.setClass=Function}}class o{}const l={backdrop:!0,keyboard:!0,focus:!0,show:!1,ignoreBackdropClick:!1,class:"",animated:!0,initialState:{}};class d{constructor(t,e,n){this._element=e,this._renderer=n,this.isShown=!1,this.isModalHiding=!1,this.clickStartedInContent=!1,this.config=Object.assign({},t)}ngOnInit(){this.isAnimated&&this._renderer.addClass(this._element.nativeElement,"fade"),this._renderer.setStyle(this._element.nativeElement,"display","block"),setTimeout(()=>{this.isShown=!0,this._renderer.addClass(this._element.nativeElement,Object(r.d)()?"in":"show")},this.isAnimated?150:0),document&&document.body&&(1===this.bsModalService.getModalsCount()&&(this.bsModalService.checkScrollbar(),this.bsModalService.setScrollbar()),this._renderer.addClass(document.body,"modal-open")),this._element.nativeElement&&this._element.nativeElement.focus()}onClickStarted(t){this.clickStartedInContent=t.target!==this._element.nativeElement}onClickStop(t){this.config.ignoreBackdropClick||"static"===this.config.backdrop||t.target!==this._element.nativeElement||this.clickStartedInContent?this.clickStartedInContent=!1:(this.bsModalService.setDismissReason("backdrop-click"),this.hide())}onEsc(t){this.isShown&&(27!==t.keyCode&&"Escape"!==t.key||t.preventDefault(),this.config.keyboard&&this.level===this.bsModalService.getModalsCount()&&(this.bsModalService.setDismissReason("esc"),this.hide()))}ngOnDestroy(){this.isShown&&this.hide()}hide(){!this.isModalHiding&&this.isShown&&(this.isModalHiding=!0,this._renderer.removeClass(this._element.nativeElement,Object(r.d)()?"in":"show"),setTimeout(()=>{this.isShown=!1,document&&document.body&&1===this.bsModalService.getModalsCount()&&this._renderer.removeClass(document.body,"modal-open"),this.bsModalService.hide(this.level),this.isModalHiding=!1},this.isAnimated?300:0))}}class c{constructor(t,e){this._isShown=!1,this.element=t,this.renderer=e}get isAnimated(){return this._isAnimated}set isAnimated(t){this._isAnimated=t}get isShown(){return this._isShown}set isShown(t){this._isShown=t,t?this.renderer.addClass(this.element.nativeElement,"in"):this.renderer.removeClass(this.element.nativeElement,"in"),Object(r.d)()||(t?this.renderer.addClass(this.element.nativeElement,"show"):this.renderer.removeClass(this.element.nativeElement,"show"))}ngOnInit(){this.isAnimated&&(this.renderer.addClass(this.element.nativeElement,"fade"),r.b.reflow(this.element.nativeElement)),this.isShown=!0}}class f{constructor(t,e){this.clf=e,this.config=l,this.onShow=new a.EventEmitter,this.onShown=new a.EventEmitter,this.onHide=new a.EventEmitter,this.onHidden=new a.EventEmitter,this.isBodyOverflowing=!1,this.originalBodyPadding=0,this.scrollbarWidth=0,this.modalsCount=0,this.lastDismissReason="",this.loaders=[],this._backdropLoader=this.clf.createLoader(null,null,null),this._renderer=t.createRenderer(null,null)}show(t,e){return this.modalsCount++,this._createLoaders(),this.config=Object.assign({},l,e),this._showBackdrop(),this.lastDismissReason=null,this._showModal(t)}hide(t){1===this.modalsCount&&(this._hideBackdrop(),this.resetScrollbar()),this.modalsCount=this.modalsCount>=1?this.modalsCount-1:0,setTimeout(()=>{this._hideModal(t),this.removeLoaders(t)},this.config.animated?150:0)}_showBackdrop(){const t=this.config.backdrop||"static"===this.config.backdrop,e=!this.backdropRef||!this.backdropRef.instance.isShown;1===this.modalsCount&&(this.removeBackdrop(),t&&e&&(this._backdropLoader.attach(c).to("body").show({isAnimated:this.config.animated}),this.backdropRef=this._backdropLoader._componentRef))}_hideBackdrop(){this.backdropRef&&(this.backdropRef.instance.isShown=!1,setTimeout(()=>this.removeBackdrop(),this.config.animated?150:0))}_showModal(t){const e=this.loaders[this.loaders.length-1],n=new u,a=e.provide({provide:o,useValue:this.config}).provide({provide:u,useValue:n}).attach(d).to("body").show({content:t,isAnimated:this.config.animated,initialState:this.config.initialState,bsModalService:this});return a.instance.level=this.getModalsCount(),n.hide=()=>{setTimeout(()=>a.instance.hide(),this.config.animated?300:0)},n.content=e.getInnerComponent()||null,n.setClass=t=>{a.instance.config.class=t},n}_hideModal(t){const e=this.loaders[t-1];e&&e.hide()}getModalsCount(){return this.modalsCount}setDismissReason(t){this.lastDismissReason=t}removeBackdrop(){this._backdropLoader.hide(),this.backdropRef=null}checkScrollbar(){this.isBodyOverflowing=document.body.clientWidth<window.innerWidth,this.scrollbarWidth=this.getScrollbarWidth()}setScrollbar(){document&&(this.originalBodyPadding=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")||"0",10),this.isBodyOverflowing&&(document.body.style.paddingRight=this.originalBodyPadding+this.scrollbarWidth+"px"))}resetScrollbar(){document.body.style.paddingRight=this.originalBodyPadding+"px"}getScrollbarWidth(){const t=this._renderer.createElement("div");this._renderer.addClass(t,"modal-scrollbar-measure"),this._renderer.appendChild(document.body,t);const e=t.offsetWidth-t.clientWidth;return this._renderer.removeChild(document.body,t),e}_createLoaders(){const t=this.clf.createLoader(null,null,null);this.copyEvent(t.onBeforeShow,this.onShow),this.copyEvent(t.onShown,this.onShown),this.copyEvent(t.onBeforeHide,this.onHide),this.copyEvent(t.onHidden,this.onHidden),this.loaders.push(t)}removeLoaders(t){this.loaders.splice(t-1,1),this.loaders.forEach((t,e)=>{t.instance.level=e+1})}copyEvent(t,e){t.subscribe(()=>{e.emit(this.lastDismissReason)})}}class h{static forRoot(){return{ngModule:h,providers:[f,i.a,s.a]}}static forChild(){return{ngModule:h,providers:[f,i.a,s.a]}}}},LvDl:function(t,e,n){(function(t){var a;(function(){var r="Expected a function",i="__lodash_placeholder__",s=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],u="[object Arguments]",o="[object Array]",l="[object Boolean]",d="[object Date]",c="[object Error]",f="[object Function]",h="[object GeneratorFunction]",g="[object Map]",p="[object Number]",b="[object Object]",m="[object RegExp]",y="[object Set]",v="[object String]",x="[object Symbol]",_="[object WeakMap]",T="[object ArrayBuffer]",w="[object DataView]",O="[object Float32Array]",S="[object Float64Array]",I="[object Int8Array]",N="[object Int16Array]",C="[object Int32Array]",R="[object Uint8Array]",A="[object Uint16Array]",k="[object Uint32Array]",E=/\b__p \+= '';/g,L=/\b(__p \+=) '' \+/g,D=/(__e\(.*?\)|\b__t\)) \+\n'';/g,P=/&(?:amp|lt|gt|quot|#39);/g,M=/[&<>"']/g,q=RegExp(P.source),j=RegExp(M.source),F=/<%-([\s\S]+?)%>/g,V=/<%([\s\S]+?)%>/g,G=/<%=([\s\S]+?)%>/g,B=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,z=/^\w*$/,Y=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,H=/[\\^$.*+?()[\]{}|]/g,U=RegExp(H.source),W=/^\s+|\s+$/g,K=/^\s+/,$=/\s+$/,Z=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,J=/\{\n\/\* \[wrapped with (.+)\] \*/,Q=/,? & /,X=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,tt=/\\(\\)?/g,et=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,nt=/\w*$/,at=/^[-+]0x[0-9a-f]+$/i,rt=/^0b[01]+$/i,it=/^\[object .+?Constructor\]$/,st=/^0o[0-7]+$/i,ut=/^(?:0|[1-9]\d*)$/,ot=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,lt=/($^)/,dt=/['\n\r\u2028\u2029\\]/g,ct="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ft="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ht="["+ft+"]",gt="["+ct+"]",pt="\\d+",bt="[a-z\\xdf-\\xf6\\xf8-\\xff]",mt="[^\\ud800-\\udfff"+ft+pt+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",yt="\\ud83c[\\udffb-\\udfff]",vt="[^\\ud800-\\udfff]",xt="(?:\\ud83c[\\udde6-\\uddff]){2}",_t="[\\ud800-\\udbff][\\udc00-\\udfff]",Tt="[A-Z\\xc0-\\xd6\\xd8-\\xde]",wt="(?:"+bt+"|"+mt+")",Ot="(?:"+Tt+"|"+mt+")",St="(?:"+gt+"|"+yt+")?",It="[\\ufe0e\\ufe0f]?"+St+"(?:\\u200d(?:"+[vt,xt,_t].join("|")+")[\\ufe0e\\ufe0f]?"+St+")*",Nt="(?:"+["[\\u2700-\\u27bf]",xt,_t].join("|")+")"+It,Ct="(?:"+[vt+gt+"?",gt,xt,_t,"[\\ud800-\\udfff]"].join("|")+")",Rt=RegExp("['’]","g"),At=RegExp(gt,"g"),kt=RegExp(yt+"(?="+yt+")|"+Ct+It,"g"),Et=RegExp([Tt+"?"+bt+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ht,Tt,"$"].join("|")+")",Ot+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ht,Tt+wt,"$"].join("|")+")",Tt+"?"+wt+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Tt+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",pt,Nt].join("|"),"g"),Lt=RegExp("[\\u200d\\ud800-\\udfff"+ct+"\\ufe0e\\ufe0f]"),Dt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Pt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Mt=-1,qt={};qt[O]=qt[S]=qt[I]=qt[N]=qt[C]=qt[R]=qt["[object Uint8ClampedArray]"]=qt[A]=qt[k]=!0,qt[u]=qt[o]=qt[T]=qt[l]=qt[w]=qt[d]=qt[c]=qt[f]=qt[g]=qt[p]=qt[b]=qt[m]=qt[y]=qt[v]=qt[_]=!1;var jt={};jt[u]=jt[o]=jt[T]=jt[w]=jt[l]=jt[d]=jt[O]=jt[S]=jt[I]=jt[N]=jt[C]=jt[g]=jt[p]=jt[b]=jt[m]=jt[y]=jt[v]=jt[x]=jt[R]=jt["[object Uint8ClampedArray]"]=jt[A]=jt[k]=!0,jt[c]=jt[f]=jt[_]=!1;var Ft={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Vt=parseFloat,Gt=parseInt,Bt="object"==typeof global&&global&&global.Object===Object&&global,zt="object"==typeof self&&self&&self.Object===Object&&self,Yt=Bt||zt||Function("return this")(),Ht=e&&!e.nodeType&&e,Ut=Ht&&"object"==typeof t&&t&&!t.nodeType&&t,Wt=Ut&&Ut.exports===Ht,Kt=Wt&&Bt.process,$t=function(){try{return Ut&&Ut.require&&Ut.require("util").types||Kt&&Kt.binding&&Kt.binding("util")}catch(t){}}(),Zt=$t&&$t.isArrayBuffer,Jt=$t&&$t.isDate,Qt=$t&&$t.isMap,Xt=$t&&$t.isRegExp,te=$t&&$t.isSet,ee=$t&&$t.isTypedArray;function ne(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function ae(t,e,n,a){for(var r=-1,i=null==t?0:t.length;++r<i;){var s=t[r];e(a,s,n(s),t)}return a}function re(t,e){for(var n=-1,a=null==t?0:t.length;++n<a&&!1!==e(t[n],n,t););return t}function ie(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}function se(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(!e(t[n],n,t))return!1;return!0}function ue(t,e){for(var n=-1,a=null==t?0:t.length,r=0,i=[];++n<a;){var s=t[n];e(s,n,t)&&(i[r++]=s)}return i}function oe(t,e){return!(null==t||!t.length)&&ye(t,e,0)>-1}function le(t,e,n){for(var a=-1,r=null==t?0:t.length;++a<r;)if(n(e,t[a]))return!0;return!1}function de(t,e){for(var n=-1,a=null==t?0:t.length,r=Array(a);++n<a;)r[n]=e(t[n],n,t);return r}function ce(t,e){for(var n=-1,a=e.length,r=t.length;++n<a;)t[r+n]=e[n];return t}function fe(t,e,n,a){var r=-1,i=null==t?0:t.length;for(a&&i&&(n=t[++r]);++r<i;)n=e(n,t[r],r,t);return n}function he(t,e,n,a){var r=null==t?0:t.length;for(a&&r&&(n=t[--r]);r--;)n=e(n,t[r],r,t);return n}function ge(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(e(t[n],n,t))return!0;return!1}var pe=Te("length");function be(t,e,n){var a;return n(t,(function(t,n,r){if(e(t,n,r))return a=n,!1})),a}function me(t,e,n,a){for(var r=t.length,i=n+(a?1:-1);a?i--:++i<r;)if(e(t[i],i,t))return i;return-1}function ye(t,e,n){return e==e?function(t,e,n){for(var a=n-1,r=t.length;++a<r;)if(t[a]===e)return a;return-1}(t,e,n):me(t,xe,n)}function ve(t,e,n,a){for(var r=n-1,i=t.length;++r<i;)if(a(t[r],e))return r;return-1}function xe(t){return t!=t}function _e(t,e){var n=null==t?0:t.length;return n?Se(t,e)/n:NaN}function Te(t){return function(e){return null==e?void 0:e[t]}}function we(t){return function(e){return null==t?void 0:t[e]}}function Oe(t,e,n,a,r){return r(t,(function(t,r,i){n=a?(a=!1,t):e(n,t,r,i)})),n}function Se(t,e){for(var n,a=-1,r=t.length;++a<r;){var i=e(t[a]);void 0!==i&&(n=void 0===n?i:n+i)}return n}function Ie(t,e){for(var n=-1,a=Array(t);++n<t;)a[n]=e(n);return a}function Ne(t){return function(e){return t(e)}}function Ce(t,e){return de(e,(function(e){return t[e]}))}function Re(t,e){return t.has(e)}function Ae(t,e){for(var n=-1,a=t.length;++n<a&&ye(e,t[n],0)>-1;);return n}function ke(t,e){for(var n=t.length;n--&&ye(e,t[n],0)>-1;);return n}function Ee(t,e){for(var n=t.length,a=0;n--;)t[n]===e&&++a;return a}var Le=we({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),De=we({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function Pe(t){return"\\"+Ft[t]}function Me(t){return Lt.test(t)}function qe(t){var e=-1,n=Array(t.size);return t.forEach((function(t,a){n[++e]=[a,t]})),n}function je(t,e){return function(n){return t(e(n))}}function Fe(t,e){for(var n=-1,a=t.length,r=0,s=[];++n<a;){var u=t[n];u!==e&&u!==i||(t[n]=i,s[r++]=n)}return s}function Ve(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}function Ge(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=[t,t]})),n}function Be(t){return Me(t)?function(t){for(var e=kt.lastIndex=0;kt.test(t);)++e;return e}(t):pe(t)}function ze(t){return Me(t)?function(t){return t.match(kt)||[]}(t):function(t){return t.split("")}(t)}var Ye=we({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),He=function t(e){var n,a=(e=null==e?Yt:He.defaults(Yt.Object(),e,He.pick(Yt,Pt))).Array,ct=e.Date,ft=e.Error,ht=e.Function,gt=e.Math,pt=e.Object,bt=e.RegExp,mt=e.String,yt=e.TypeError,vt=a.prototype,xt=pt.prototype,_t=e["__core-js_shared__"],Tt=ht.prototype.toString,wt=xt.hasOwnProperty,Ot=0,St=(n=/[^.]+$/.exec(_t&&_t.keys&&_t.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",It=xt.toString,Nt=Tt.call(pt),Ct=Yt._,kt=bt("^"+Tt.call(wt).replace(H,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Lt=Wt?e.Buffer:void 0,Ft=e.Symbol,Bt=e.Uint8Array,zt=Lt?Lt.allocUnsafe:void 0,Ht=je(pt.getPrototypeOf,pt),Ut=pt.create,Kt=xt.propertyIsEnumerable,$t=vt.splice,pe=Ft?Ft.isConcatSpreadable:void 0,we=Ft?Ft.iterator:void 0,Ue=Ft?Ft.toStringTag:void 0,We=function(){try{var t=Jr(pt,"defineProperty");return t({},"",{}),t}catch(e){}}(),Ke=e.clearTimeout!==Yt.clearTimeout&&e.clearTimeout,$e=ct&&ct.now!==Yt.Date.now&&ct.now,Ze=e.setTimeout!==Yt.setTimeout&&e.setTimeout,Je=gt.ceil,Qe=gt.floor,Xe=pt.getOwnPropertySymbols,tn=Lt?Lt.isBuffer:void 0,en=e.isFinite,nn=vt.join,an=je(pt.keys,pt),rn=gt.max,sn=gt.min,un=ct.now,on=e.parseInt,ln=gt.random,dn=vt.reverse,cn=Jr(e,"DataView"),fn=Jr(e,"Map"),hn=Jr(e,"Promise"),gn=Jr(e,"Set"),pn=Jr(e,"WeakMap"),bn=Jr(pt,"create"),mn=pn&&new pn,yn={},vn=Ii(cn),xn=Ii(fn),_n=Ii(hn),Tn=Ii(gn),wn=Ii(pn),On=Ft?Ft.prototype:void 0,Sn=On?On.valueOf:void 0,In=On?On.toString:void 0;function Nn(t){if(zs(t)&&!Es(t)&&!(t instanceof kn)){if(t instanceof An)return t;if(wt.call(t,"__wrapped__"))return Ni(t)}return new An(t)}var Cn=function(){function t(){}return function(e){if(!Bs(e))return{};if(Ut)return Ut(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();function Rn(){}function An(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=void 0}function kn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function En(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Ln(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Dn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Pn(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new Dn;++e<n;)this.add(t[e])}function Mn(t){var e=this.__data__=new Ln(t);this.size=e.size}function qn(t,e){var n=Es(t),a=!n&&ks(t),r=!n&&!a&&Ms(t),i=!n&&!a&&!r&&Js(t),s=n||a||r||i,u=s?Ie(t.length,mt):[],o=u.length;for(var l in t)!e&&!wt.call(t,l)||s&&("length"==l||r&&("offset"==l||"parent"==l)||i&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||ri(l,o))||u.push(l);return u}function jn(t){var e=t.length;return e?t[Da(0,e-1)]:void 0}function Fn(t,e){return _i(pr(t),Kn(e,0,t.length))}function Vn(t){return _i(pr(t))}function Gn(t,e,n){(void 0!==n&&!Cs(t[e],n)||void 0===n&&!(e in t))&&Un(t,e,n)}function Bn(t,e,n){var a=t[e];wt.call(t,e)&&Cs(a,n)&&(void 0!==n||e in t)||Un(t,e,n)}function zn(t,e){for(var n=t.length;n--;)if(Cs(t[n][0],e))return n;return-1}function Yn(t,e,n,a){return Xn(t,(function(t,r,i){e(a,t,n(t),i)})),a}function Hn(t,e){return t&&br(e,vu(e),t)}function Un(t,e,n){"__proto__"==e&&We?We(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function Wn(t,e){for(var n=-1,r=e.length,i=a(r),s=null==t;++n<r;)i[n]=s?void 0:gu(t,e[n]);return i}function Kn(t,e,n){return t==t&&(void 0!==n&&(t=t<=n?t:n),void 0!==e&&(t=t>=e?t:e)),t}function $n(t,e,n,a,r,i){var s,o=1&e,c=2&e,_=4&e;if(n&&(s=r?n(t,a,r,i):n(t)),void 0!==s)return s;if(!Bs(t))return t;var E=Es(t);if(E){if(s=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&wt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!o)return pr(t,s)}else{var L=ti(t),D=L==f||L==h;if(Ms(t))return lr(t,o);if(L==b||L==u||D&&!r){if(s=c||D?{}:ni(t),!o)return c?function(t,e){return br(t,Xr(t),e)}(t,function(t,e){return t&&br(e,xu(e),t)}(s,t)):function(t,e){return br(t,Qr(t),e)}(t,Hn(s,t))}else{if(!jt[L])return r?t:{};s=function(t,e,n){var a=t.constructor;switch(e){case T:return dr(t);case l:case d:return new a(+t);case w:return function(t,e){var n=e?dr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case O:case S:case I:case N:case C:case R:case"[object Uint8ClampedArray]":case A:case k:return cr(t,n);case g:return new a;case p:case v:return new a(t);case m:return function(t){var e=new t.constructor(t.source,nt.exec(t));return e.lastIndex=t.lastIndex,e}(t);case y:return new a;case x:return Sn?pt(Sn.call(t)):{}}}(t,L,o)}}i||(i=new Mn);var P=i.get(t);if(P)return P;i.set(t,s),Ks(t)?t.forEach((function(a){s.add($n(a,e,n,a,t,i))})):Ys(t)&&t.forEach((function(a,r){s.set(r,$n(a,e,n,r,t,i))}));var M=E?void 0:(_?c?Yr:zr:c?xu:vu)(t);return re(M||t,(function(a,r){M&&(a=t[r=a]),Bn(s,r,$n(a,e,n,r,t,i))})),s}function Zn(t,e,n){var a=n.length;if(null==t)return!a;for(t=pt(t);a--;){var r=n[a],i=t[r];if(void 0===i&&!(r in t)||!(0,e[r])(i))return!1}return!0}function Jn(t,e,n){if("function"!=typeof t)throw new yt(r);return mi((function(){t.apply(void 0,n)}),e)}function Qn(t,e,n,a){var r=-1,i=oe,s=!0,u=t.length,o=[],l=e.length;if(!u)return o;n&&(e=de(e,Ne(n))),a?(i=le,s=!1):e.length>=200&&(i=Re,s=!1,e=new Pn(e));t:for(;++r<u;){var d=t[r],c=null==n?d:n(d);if(d=a||0!==d?d:0,s&&c==c){for(var f=l;f--;)if(e[f]===c)continue t;o.push(d)}else i(e,c,a)||o.push(d)}return o}Nn.templateSettings={escape:F,evaluate:V,interpolate:G,variable:"",imports:{_:Nn}},(Nn.prototype=Rn.prototype).constructor=Nn,(An.prototype=Cn(Rn.prototype)).constructor=An,(kn.prototype=Cn(Rn.prototype)).constructor=kn,En.prototype.clear=function(){this.__data__=bn?bn(null):{},this.size=0},En.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},En.prototype.get=function(t){var e=this.__data__;if(bn){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return wt.call(e,t)?e[t]:void 0},En.prototype.has=function(t){var e=this.__data__;return bn?void 0!==e[t]:wt.call(e,t)},En.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=bn&&void 0===e?"__lodash_hash_undefined__":e,this},Ln.prototype.clear=function(){this.__data__=[],this.size=0},Ln.prototype.delete=function(t){var e=this.__data__,n=zn(e,t);return!(n<0||(n==e.length-1?e.pop():$t.call(e,n,1),--this.size,0))},Ln.prototype.get=function(t){var e=this.__data__,n=zn(e,t);return n<0?void 0:e[n][1]},Ln.prototype.has=function(t){return zn(this.__data__,t)>-1},Ln.prototype.set=function(t,e){var n=this.__data__,a=zn(n,t);return a<0?(++this.size,n.push([t,e])):n[a][1]=e,this},Dn.prototype.clear=function(){this.size=0,this.__data__={hash:new En,map:new(fn||Ln),string:new En}},Dn.prototype.delete=function(t){var e=$r(this,t).delete(t);return this.size-=e?1:0,e},Dn.prototype.get=function(t){return $r(this,t).get(t)},Dn.prototype.has=function(t){return $r(this,t).has(t)},Dn.prototype.set=function(t,e){var n=$r(this,t),a=n.size;return n.set(t,e),this.size+=n.size==a?0:1,this},Pn.prototype.add=Pn.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Pn.prototype.has=function(t){return this.__data__.has(t)},Mn.prototype.clear=function(){this.__data__=new Ln,this.size=0},Mn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Mn.prototype.get=function(t){return this.__data__.get(t)},Mn.prototype.has=function(t){return this.__data__.has(t)},Mn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Ln){var a=n.__data__;if(!fn||a.length<199)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new Dn(a)}return n.set(t,e),this.size=n.size,this};var Xn=vr(ua),ta=vr(oa,!0);function ea(t,e){var n=!0;return Xn(t,(function(t,a,r){return n=!!e(t,a,r)})),n}function na(t,e,n){for(var a=-1,r=t.length;++a<r;){var i=t[a],s=e(i);if(null!=s&&(void 0===u?s==s&&!Zs(s):n(s,u)))var u=s,o=i}return o}function aa(t,e){var n=[];return Xn(t,(function(t,a,r){e(t,a,r)&&n.push(t)})),n}function ra(t,e,n,a,r){var i=-1,s=t.length;for(n||(n=ai),r||(r=[]);++i<s;){var u=t[i];e>0&&n(u)?e>1?ra(u,e-1,n,a,r):ce(r,u):a||(r[r.length]=u)}return r}var ia=xr(),sa=xr(!0);function ua(t,e){return t&&ia(t,e,vu)}function oa(t,e){return t&&sa(t,e,vu)}function la(t,e){return ue(e,(function(e){return Fs(t[e])}))}function da(t,e){for(var n=0,a=(e=ir(e,t)).length;null!=t&&n<a;)t=t[Si(e[n++])];return n&&n==a?t:void 0}function ca(t,e,n){var a=e(t);return Es(t)?a:ce(a,n(t))}function fa(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":Ue&&Ue in pt(t)?function(t){var e=wt.call(t,Ue),n=t[Ue];try{t[Ue]=void 0;var a=!0}catch(i){}var r=It.call(t);return a&&(e?t[Ue]=n:delete t[Ue]),r}(t):function(t){return It.call(t)}(t)}function ha(t,e){return t>e}function ga(t,e){return null!=t&&wt.call(t,e)}function pa(t,e){return null!=t&&e in pt(t)}function ba(t,e,n){for(var r=n?le:oe,i=t[0].length,s=t.length,u=s,o=a(s),l=1/0,d=[];u--;){var c=t[u];u&&e&&(c=de(c,Ne(e))),l=sn(c.length,l),o[u]=!n&&(e||i>=120&&c.length>=120)?new Pn(u&&c):void 0}c=t[0];var f=-1,h=o[0];t:for(;++f<i&&d.length<l;){var g=c[f],p=e?e(g):g;if(g=n||0!==g?g:0,!(h?Re(h,p):r(d,p,n))){for(u=s;--u;){var b=o[u];if(!(b?Re(b,p):r(t[u],p,n)))continue t}h&&h.push(p),d.push(g)}}return d}function ma(t,e,n){var a=null==(t=hi(t,e=ir(e,t)))?t:t[Si(ji(e))];return null==a?void 0:ne(a,t,n)}function ya(t){return zs(t)&&fa(t)==u}function va(t,e,n,a,r){return t===e||(null==t||null==e||!zs(t)&&!zs(e)?t!=t&&e!=e:function(t,e,n,a,r,i){var s=Es(t),f=Es(e),h=s?o:ti(t),_=f?o:ti(e),O=(h=h==u?b:h)==b,S=(_=_==u?b:_)==b,I=h==_;if(I&&Ms(t)){if(!Ms(e))return!1;s=!0,O=!1}if(I&&!O)return i||(i=new Mn),s||Js(t)?Gr(t,e,n,a,r,i):function(t,e,n,a,r,i,s){switch(n){case w:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case T:return!(t.byteLength!=e.byteLength||!i(new Bt(t),new Bt(e)));case l:case d:case p:return Cs(+t,+e);case c:return t.name==e.name&&t.message==e.message;case m:case v:return t==e+"";case g:var u=qe;case y:if(u||(u=Ve),t.size!=e.size&&!(1&a))return!1;var o=s.get(t);if(o)return o==e;a|=2,s.set(t,e);var f=Gr(u(t),u(e),a,r,i,s);return s.delete(t),f;case x:if(Sn)return Sn.call(t)==Sn.call(e)}return!1}(t,e,h,n,a,r,i);if(!(1&n)){var N=O&&wt.call(t,"__wrapped__"),C=S&&wt.call(e,"__wrapped__");if(N||C){var R=N?t.value():t,A=C?e.value():e;return i||(i=new Mn),r(R,A,n,a,i)}}return!!I&&(i||(i=new Mn),function(t,e,n,a,r,i){var s=1&n,u=zr(t),o=u.length;if(o!=zr(e).length&&!s)return!1;for(var l=o;l--;){var d=u[l];if(!(s?d in e:wt.call(e,d)))return!1}var c=i.get(t),f=i.get(e);if(c&&f)return c==e&&f==t;var h=!0;i.set(t,e),i.set(e,t);for(var g=s;++l<o;){var p=t[d=u[l]],b=e[d];if(a)var m=s?a(b,p,d,e,t,i):a(p,b,d,t,e,i);if(!(void 0===m?p===b||r(p,b,n,a,i):m)){h=!1;break}g||(g="constructor"==d)}if(h&&!g){var y=t.constructor,v=e.constructor;y==v||!("constructor"in t)||!("constructor"in e)||"function"==typeof y&&y instanceof y&&"function"==typeof v&&v instanceof v||(h=!1)}return i.delete(t),i.delete(e),h}(t,e,n,a,r,i))}(t,e,n,a,va,r))}function xa(t,e,n,a){var r=n.length,i=r,s=!a;if(null==t)return!i;for(t=pt(t);r--;){var u=n[r];if(s&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++r<i;){var o=(u=n[r])[0],l=t[o],d=u[1];if(s&&u[2]){if(void 0===l&&!(o in t))return!1}else{var c=new Mn;if(a)var f=a(l,d,o,t,e,c);if(!(void 0===f?va(d,l,3,a,c):f))return!1}}return!0}function _a(t){return!(!Bs(t)||(e=t,St&&St in e))&&(Fs(t)?kt:it).test(Ii(t));var e}function Ta(t){return"function"==typeof t?t:null==t?Hu:"object"==typeof t?Es(t)?Na(t[0],t[1]):Ia(t):to(t)}function wa(t){if(!li(t))return an(t);var e=[];for(var n in pt(t))wt.call(t,n)&&"constructor"!=n&&e.push(n);return e}function Oa(t,e){return t<e}function Sa(t,e){var n=-1,r=Ds(t)?a(t.length):[];return Xn(t,(function(t,a,i){r[++n]=e(t,a,i)})),r}function Ia(t){var e=Zr(t);return 1==e.length&&e[0][2]?ci(e[0][0],e[0][1]):function(n){return n===t||xa(n,t,e)}}function Na(t,e){return si(t)&&di(e)?ci(Si(t),e):function(n){var a=gu(n,t);return void 0===a&&a===e?pu(n,t):va(e,a,3)}}function Ca(t,e,n,a,r){t!==e&&ia(e,(function(i,s){if(r||(r=new Mn),Bs(i))!function(t,e,n,a,r,i,s){var u=pi(t,n),o=pi(e,n),l=s.get(o);if(l)Gn(t,n,l);else{var d=i?i(u,o,n+"",t,e,s):void 0,c=void 0===d;if(c){var f=Es(o),h=!f&&Ms(o),g=!f&&!h&&Js(o);d=o,f||h||g?Es(u)?d=u:Ps(u)?d=pr(u):h?(c=!1,d=lr(o,!0)):g?(c=!1,d=cr(o,!0)):d=[]:Us(o)||ks(o)?(d=u,ks(u)?d=iu(u):Bs(u)&&!Fs(u)||(d=ni(o))):c=!1}c&&(s.set(o,d),r(d,o,a,i,s),s.delete(o)),Gn(t,n,d)}}(t,e,s,n,Ca,a,r);else{var u=a?a(pi(t,s),i,s+"",t,e,r):void 0;void 0===u&&(u=i),Gn(t,s,u)}}),xu)}function Ra(t,e){var n=t.length;if(n)return ri(e+=e<0?n:0,n)?t[e]:void 0}function Aa(t,e,n){e=e.length?de(e,(function(t){return Es(t)?function(e){return da(e,1===t.length?t[0]:t)}:t})):[Hu];var a=-1;return e=de(e,Ne(Kr())),function(t,e){var a=t.length;for(t.sort((function(t,e){return function(t,e,n){for(var a=-1,r=t.criteria,i=e.criteria,s=r.length,u=n.length;++a<s;){var o=fr(r[a],i[a]);if(o)return a>=u?o:o*("desc"==n[a]?-1:1)}return t.index-e.index}(t,e,n)}));a--;)t[a]=t[a].value;return t}(Sa(t,(function(t,n,r){return{criteria:de(e,(function(e){return e(t)})),index:++a,value:t}})))}function ka(t,e,n){for(var a=-1,r=e.length,i={};++a<r;){var s=e[a],u=da(t,s);n(u,s)&&Fa(i,ir(s,t),u)}return i}function Ea(t,e,n,a){var r=a?ve:ye,i=-1,s=e.length,u=t;for(t===e&&(e=pr(e)),n&&(u=de(t,Ne(n)));++i<s;)for(var o=0,l=e[i],d=n?n(l):l;(o=r(u,d,o,a))>-1;)u!==t&&$t.call(u,o,1),$t.call(t,o,1);return t}function La(t,e){for(var n=t?e.length:0,a=n-1;n--;){var r=e[n];if(n==a||r!==i){var i=r;ri(r)?$t.call(t,r,1):Ja(t,r)}}return t}function Da(t,e){return t+Qe(ln()*(e-t+1))}function Pa(t,e){var n="";if(!t||e<1||e>9007199254740991)return n;do{e%2&&(n+=t),(e=Qe(e/2))&&(t+=t)}while(e);return n}function Ma(t,e){return yi(fi(t,e,Hu),t+"")}function qa(t){return jn(Cu(t))}function ja(t,e){var n=Cu(t);return _i(n,Kn(e,0,n.length))}function Fa(t,e,n,a){if(!Bs(t))return t;for(var r=-1,i=(e=ir(e,t)).length,s=i-1,u=t;null!=u&&++r<i;){var o=Si(e[r]),l=n;if("__proto__"===o||"constructor"===o||"prototype"===o)return t;if(r!=s){var d=u[o];void 0===(l=a?a(d,o,u):void 0)&&(l=Bs(d)?d:ri(e[r+1])?[]:{})}Bn(u,o,l),u=u[o]}return t}var Va=mn?function(t,e){return mn.set(t,e),t}:Hu,Ga=We?function(t,e){return We(t,"toString",{configurable:!0,enumerable:!1,value:Bu(e),writable:!0})}:Hu;function Ba(t){return _i(Cu(t))}function za(t,e,n){var r=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var s=a(i);++r<i;)s[r]=t[r+e];return s}function Ya(t,e){var n;return Xn(t,(function(t,a,r){return!(n=e(t,a,r))})),!!n}function Ha(t,e,n){var a=0,r=null==t?a:t.length;if("number"==typeof e&&e==e&&r<=2147483647){for(;a<r;){var i=a+r>>>1,s=t[i];null!==s&&!Zs(s)&&(n?s<=e:s<e)?a=i+1:r=i}return r}return Ua(t,e,Hu,n)}function Ua(t,e,n,a){var r=0,i=null==t?0:t.length;if(0===i)return 0;for(var s=(e=n(e))!=e,u=null===e,o=Zs(e),l=void 0===e;r<i;){var d=Qe((r+i)/2),c=n(t[d]),f=void 0!==c,h=null===c,g=c==c,p=Zs(c);if(s)var b=a||g;else b=l?g&&(a||f):u?g&&f&&(a||!h):o?g&&f&&!h&&(a||!p):!h&&!p&&(a?c<=e:c<e);b?r=d+1:i=d}return sn(i,4294967294)}function Wa(t,e){for(var n=-1,a=t.length,r=0,i=[];++n<a;){var s=t[n],u=e?e(s):s;if(!n||!Cs(u,o)){var o=u;i[r++]=0===s?0:s}}return i}function Ka(t){return"number"==typeof t?t:Zs(t)?NaN:+t}function $a(t){if("string"==typeof t)return t;if(Es(t))return de(t,$a)+"";if(Zs(t))return In?In.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Za(t,e,n){var a=-1,r=oe,i=t.length,s=!0,u=[],o=u;if(n)s=!1,r=le;else if(i>=200){var l=e?null:Pr(t);if(l)return Ve(l);s=!1,r=Re,o=new Pn}else o=e?[]:u;t:for(;++a<i;){var d=t[a],c=e?e(d):d;if(d=n||0!==d?d:0,s&&c==c){for(var f=o.length;f--;)if(o[f]===c)continue t;e&&o.push(c),u.push(d)}else r(o,c,n)||(o!==u&&o.push(c),u.push(d))}return u}function Ja(t,e){return null==(t=hi(t,e=ir(e,t)))||delete t[Si(ji(e))]}function Qa(t,e,n,a){return Fa(t,e,n(da(t,e)),a)}function Xa(t,e,n,a){for(var r=t.length,i=a?r:-1;(a?i--:++i<r)&&e(t[i],i,t););return n?za(t,a?0:i,a?i+1:r):za(t,a?i+1:0,a?r:i)}function tr(t,e){var n=t;return n instanceof kn&&(n=n.value()),fe(e,(function(t,e){return e.func.apply(e.thisArg,ce([t],e.args))}),n)}function er(t,e,n){var r=t.length;if(r<2)return r?Za(t[0]):[];for(var i=-1,s=a(r);++i<r;)for(var u=t[i],o=-1;++o<r;)o!=i&&(s[i]=Qn(s[i]||u,t[o],e,n));return Za(ra(s,1),e,n)}function nr(t,e,n){for(var a=-1,r=t.length,i=e.length,s={};++a<r;)n(s,t[a],a<i?e[a]:void 0);return s}function ar(t){return Ps(t)?t:[]}function rr(t){return"function"==typeof t?t:Hu}function ir(t,e){return Es(t)?t:si(t,e)?[t]:Oi(su(t))}var sr=Ma;function ur(t,e,n){var a=t.length;return n=void 0===n?a:n,!e&&n>=a?t:za(t,e,n)}var or=Ke||function(t){return Yt.clearTimeout(t)};function lr(t,e){if(e)return t.slice();var n=t.length,a=zt?zt(n):new t.constructor(n);return t.copy(a),a}function dr(t){var e=new t.constructor(t.byteLength);return new Bt(e).set(new Bt(t)),e}function cr(t,e){var n=e?dr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function fr(t,e){if(t!==e){var n=void 0!==t,a=null===t,r=t==t,i=Zs(t),s=void 0!==e,u=null===e,o=e==e,l=Zs(e);if(!u&&!l&&!i&&t>e||i&&s&&o&&!u&&!l||a&&s&&o||!n&&o||!r)return 1;if(!a&&!i&&!l&&t<e||l&&n&&r&&!a&&!i||u&&n&&r||!s&&r||!o)return-1}return 0}function hr(t,e,n,r){for(var i=-1,s=t.length,u=n.length,o=-1,l=e.length,d=rn(s-u,0),c=a(l+d),f=!r;++o<l;)c[o]=e[o];for(;++i<u;)(f||i<s)&&(c[n[i]]=t[i]);for(;d--;)c[o++]=t[i++];return c}function gr(t,e,n,r){for(var i=-1,s=t.length,u=-1,o=n.length,l=-1,d=e.length,c=rn(s-o,0),f=a(c+d),h=!r;++i<c;)f[i]=t[i];for(var g=i;++l<d;)f[g+l]=e[l];for(;++u<o;)(h||i<s)&&(f[g+n[u]]=t[i++]);return f}function pr(t,e){var n=-1,r=t.length;for(e||(e=a(r));++n<r;)e[n]=t[n];return e}function br(t,e,n,a){var r=!n;n||(n={});for(var i=-1,s=e.length;++i<s;){var u=e[i],o=a?a(n[u],t[u],u,n,t):void 0;void 0===o&&(o=t[u]),r?Un(n,u,o):Bn(n,u,o)}return n}function mr(t,e){return function(n,a){var r=Es(n)?ae:Yn,i=e?e():{};return r(n,t,Kr(a,2),i)}}function yr(t){return Ma((function(e,n){var a=-1,r=n.length,i=r>1?n[r-1]:void 0,s=r>2?n[2]:void 0;for(i=t.length>3&&"function"==typeof i?(r--,i):void 0,s&&ii(n[0],n[1],s)&&(i=r<3?void 0:i,r=1),e=pt(e);++a<r;){var u=n[a];u&&t(e,u,a,i)}return e}))}function vr(t,e){return function(n,a){if(null==n)return n;if(!Ds(n))return t(n,a);for(var r=n.length,i=e?r:-1,s=pt(n);(e?i--:++i<r)&&!1!==a(s[i],i,s););return n}}function xr(t){return function(e,n,a){for(var r=-1,i=pt(e),s=a(e),u=s.length;u--;){var o=s[t?u:++r];if(!1===n(i[o],o,i))break}return e}}function _r(t){return function(e){var n=Me(e=su(e))?ze(e):void 0,a=n?n[0]:e.charAt(0),r=n?ur(n,1).join(""):e.slice(1);return a[t]()+r}}function Tr(t){return function(e){return fe(Fu(ku(e).replace(Rt,"")),t,"")}}function wr(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=Cn(t.prototype),a=t.apply(n,e);return Bs(a)?a:n}}function Or(t){return function(e,n,a){var r=pt(e);if(!Ds(e)){var i=Kr(n,3);e=vu(e),n=function(t){return i(r[t],t,r)}}var s=t(e,n,a);return s>-1?r[i?e[s]:s]:void 0}}function Sr(t){return Br((function(e){var n=e.length,a=n,i=An.prototype.thru;for(t&&e.reverse();a--;){var s=e[a];if("function"!=typeof s)throw new yt(r);if(i&&!u&&"wrapper"==Ur(s))var u=new An([],!0)}for(a=u?a:n;++a<n;){var o=Ur(s=e[a]),l="wrapper"==o?Hr(s):void 0;u=l&&ui(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?u[Ur(l[0])].apply(u,l[3]):1==s.length&&ui(s)?u[o]():u.thru(s)}return function(){var t=arguments,a=t[0];if(u&&1==t.length&&Es(a))return u.plant(a).value();for(var r=0,i=n?e[r].apply(this,t):a;++r<n;)i=e[r].call(this,i);return i}}))}function Ir(t,e,n,r,i,s,u,o,l,d){var c=128&e,f=1&e,h=2&e,g=24&e,p=512&e,b=h?void 0:wr(t);return function m(){for(var y=arguments.length,v=a(y),x=y;x--;)v[x]=arguments[x];if(g)var _=Wr(m),T=Ee(v,_);if(r&&(v=hr(v,r,i,g)),s&&(v=gr(v,s,u,g)),y-=T,g&&y<d){var w=Fe(v,_);return Lr(t,e,Ir,m.placeholder,n,v,w,o,l,d-y)}var O=f?n:this,S=h?O[t]:t;return y=v.length,o?v=gi(v,o):p&&y>1&&v.reverse(),c&&l<y&&(v.length=l),this&&this!==Yt&&this instanceof m&&(S=b||wr(S)),S.apply(O,v)}}function Nr(t,e){return function(n,a){return function(t,e,n,a){return ua(t,(function(t,r,i){e(a,n(t),r,i)})),a}(n,t,e(a),{})}}function Cr(t,e){return function(n,a){var r;if(void 0===n&&void 0===a)return e;if(void 0!==n&&(r=n),void 0!==a){if(void 0===r)return a;"string"==typeof n||"string"==typeof a?(n=$a(n),a=$a(a)):(n=Ka(n),a=Ka(a)),r=t(n,a)}return r}}function Rr(t){return Br((function(e){return e=de(e,Ne(Kr())),Ma((function(n){var a=this;return t(e,(function(t){return ne(t,a,n)}))}))}))}function Ar(t,e){var n=(e=void 0===e?" ":$a(e)).length;if(n<2)return n?Pa(e,t):e;var a=Pa(e,Je(t/Be(e)));return Me(e)?ur(ze(a),0,t).join(""):a.slice(0,t)}function kr(t){return function(e,n,r){return r&&"number"!=typeof r&&ii(e,n,r)&&(n=r=void 0),e=eu(e),void 0===n?(n=e,e=0):n=eu(n),function(t,e,n,r){for(var i=-1,s=rn(Je((e-t)/(n||1)),0),u=a(s);s--;)u[r?s:++i]=t,t+=n;return u}(e,n,r=void 0===r?e<n?1:-1:eu(r),t)}}function Er(t){return function(e,n){return"string"==typeof e&&"string"==typeof n||(e=ru(e),n=ru(n)),t(e,n)}}function Lr(t,e,n,a,r,i,s,u,o,l){var d=8&e;e|=d?32:64,4&(e&=~(d?64:32))||(e&=-4);var c=[t,e,r,d?i:void 0,d?s:void 0,d?void 0:i,d?void 0:s,u,o,l],f=n.apply(void 0,c);return ui(t)&&bi(f,c),f.placeholder=a,vi(f,t,e)}function Dr(t){var e=gt[t];return function(t,n){if(t=ru(t),(n=null==n?0:sn(nu(n),292))&&en(t)){var a=(su(t)+"e").split("e");return+((a=(su(e(a[0]+"e"+(+a[1]+n)))+"e").split("e"))[0]+"e"+(+a[1]-n))}return e(t)}}var Pr=gn&&1/Ve(new gn([,-0]))[1]==1/0?function(t){return new gn(t)}:Zu;function Mr(t){return function(e){var n=ti(e);return n==g?qe(e):n==y?Ge(e):function(t,e){return de(e,(function(e){return[e,t[e]]}))}(e,t(e))}}function qr(t,e,n,s,u,o,l,d){var c=2&e;if(!c&&"function"!=typeof t)throw new yt(r);var f=s?s.length:0;if(f||(e&=-97,s=u=void 0),l=void 0===l?l:rn(nu(l),0),d=void 0===d?d:nu(d),f-=u?u.length:0,64&e){var h=s,g=u;s=u=void 0}var p=c?void 0:Hr(t),b=[t,e,n,s,u,h,g,o,l,d];if(p&&function(t,e){var n=t[1],a=e[1],r=n|a;if(!(r<131||128==a&&8==n||128==a&&256==n&&t[7].length<=e[8]||384==a&&e[7].length<=e[8]&&8==n))return t;1&a&&(t[2]=e[2],r|=1&n?0:4);var s=e[3];if(s){var u=t[3];t[3]=u?hr(u,s,e[4]):s,t[4]=u?Fe(t[3],i):e[4]}(s=e[5])&&(t[5]=(u=t[5])?gr(u,s,e[6]):s,t[6]=u?Fe(t[5],i):e[6]),(s=e[7])&&(t[7]=s),128&a&&(t[8]=null==t[8]?e[8]:sn(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=r}(b,p),t=b[0],e=b[1],n=b[2],s=b[3],u=b[4],!(d=b[9]=void 0===b[9]?c?0:t.length:rn(b[9]-f,0))&&24&e&&(e&=-25),e&&1!=e)m=8==e||16==e?function(t,e,n){var r=wr(t);return function i(){for(var s=arguments.length,u=a(s),o=s,l=Wr(i);o--;)u[o]=arguments[o];var d=s<3&&u[0]!==l&&u[s-1]!==l?[]:Fe(u,l);if((s-=d.length)<n)return Lr(t,e,Ir,i.placeholder,void 0,u,d,void 0,void 0,n-s);var c=this&&this!==Yt&&this instanceof i?r:t;return ne(c,this,u)}}(t,e,d):32!=e&&33!=e||u.length?Ir.apply(void 0,b):function(t,e,n,r){var i=1&e,s=wr(t);return function e(){for(var u=-1,o=arguments.length,l=-1,d=r.length,c=a(d+o),f=this&&this!==Yt&&this instanceof e?s:t;++l<d;)c[l]=r[l];for(;o--;)c[l++]=arguments[++u];return ne(f,i?n:this,c)}}(t,e,n,s);else var m=function(t,e,n){var a=1&e,r=wr(t);return function e(){var i=this&&this!==Yt&&this instanceof e?r:t;return i.apply(a?n:this,arguments)}}(t,e,n);return vi((p?Va:bi)(m,b),t,e)}function jr(t,e,n,a){return void 0===t||Cs(t,xt[n])&&!wt.call(a,n)?e:t}function Fr(t,e,n,a,r,i){return Bs(t)&&Bs(e)&&(i.set(e,t),Ca(t,e,void 0,Fr,i),i.delete(e)),t}function Vr(t){return Us(t)?void 0:t}function Gr(t,e,n,a,r,i){var s=1&n,u=t.length,o=e.length;if(u!=o&&!(s&&o>u))return!1;var l=i.get(t),d=i.get(e);if(l&&d)return l==e&&d==t;var c=-1,f=!0,h=2&n?new Pn:void 0;for(i.set(t,e),i.set(e,t);++c<u;){var g=t[c],p=e[c];if(a)var b=s?a(p,g,c,e,t,i):a(g,p,c,t,e,i);if(void 0!==b){if(b)continue;f=!1;break}if(h){if(!ge(e,(function(t,e){if(!Re(h,e)&&(g===t||r(g,t,n,a,i)))return h.push(e)}))){f=!1;break}}else if(g!==p&&!r(g,p,n,a,i)){f=!1;break}}return i.delete(t),i.delete(e),f}function Br(t){return yi(fi(t,void 0,Li),t+"")}function zr(t){return ca(t,vu,Qr)}function Yr(t){return ca(t,xu,Xr)}var Hr=mn?function(t){return mn.get(t)}:Zu;function Ur(t){for(var e=t.name+"",n=yn[e],a=wt.call(yn,e)?n.length:0;a--;){var r=n[a],i=r.func;if(null==i||i==t)return r.name}return e}function Wr(t){return(wt.call(Nn,"placeholder")?Nn:t).placeholder}function Kr(){var t=Nn.iteratee||Uu;return t=t===Uu?Ta:t,arguments.length?t(arguments[0],arguments[1]):t}function $r(t,e){var n,a,r=t.__data__;return("string"==(a=typeof(n=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function Zr(t){for(var e=vu(t),n=e.length;n--;){var a=e[n],r=t[a];e[n]=[a,r,di(r)]}return e}function Jr(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return _a(n)?n:void 0}var Qr=Xe?function(t){return null==t?[]:(t=pt(t),ue(Xe(t),(function(e){return Kt.call(t,e)})))}:ao,Xr=Xe?function(t){for(var e=[];t;)ce(e,Qr(t)),t=Ht(t);return e}:ao,ti=fa;function ei(t,e,n){for(var a=-1,r=(e=ir(e,t)).length,i=!1;++a<r;){var s=Si(e[a]);if(!(i=null!=t&&n(t,s)))break;t=t[s]}return i||++a!=r?i:!!(r=null==t?0:t.length)&&Gs(r)&&ri(s,r)&&(Es(t)||ks(t))}function ni(t){return"function"!=typeof t.constructor||li(t)?{}:Cn(Ht(t))}function ai(t){return Es(t)||ks(t)||!!(pe&&t&&t[pe])}function ri(t,e){var n=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==n||"symbol"!=n&&ut.test(t))&&t>-1&&t%1==0&&t<e}function ii(t,e,n){if(!Bs(n))return!1;var a=typeof e;return!!("number"==a?Ds(n)&&ri(e,n.length):"string"==a&&e in n)&&Cs(n[e],t)}function si(t,e){if(Es(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!Zs(t))||z.test(t)||!B.test(t)||null!=e&&t in pt(e)}function ui(t){var e=Ur(t),n=Nn[e];if("function"!=typeof n||!(e in kn.prototype))return!1;if(t===n)return!0;var a=Hr(n);return!!a&&t===a[0]}(cn&&ti(new cn(new ArrayBuffer(1)))!=w||fn&&ti(new fn)!=g||hn&&"[object Promise]"!=ti(hn.resolve())||gn&&ti(new gn)!=y||pn&&ti(new pn)!=_)&&(ti=function(t){var e=fa(t),n=e==b?t.constructor:void 0,a=n?Ii(n):"";if(a)switch(a){case vn:return w;case xn:return g;case _n:return"[object Promise]";case Tn:return y;case wn:return _}return e});var oi=_t?Fs:ro;function li(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||xt)}function di(t){return t==t&&!Bs(t)}function ci(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in pt(n))}}function fi(t,e,n){return e=rn(void 0===e?t.length-1:e,0),function(){for(var r=arguments,i=-1,s=rn(r.length-e,0),u=a(s);++i<s;)u[i]=r[e+i];i=-1;for(var o=a(e+1);++i<e;)o[i]=r[i];return o[e]=n(u),ne(t,this,o)}}function hi(t,e){return e.length<2?t:da(t,za(e,0,-1))}function gi(t,e){for(var n=t.length,a=sn(e.length,n),r=pr(t);a--;){var i=e[a];t[a]=ri(i,n)?r[i]:void 0}return t}function pi(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}var bi=xi(Va),mi=Ze||function(t,e){return Yt.setTimeout(t,e)},yi=xi(Ga);function vi(t,e,n){var a=e+"";return yi(t,function(t,e){var n=e.length;if(!n)return t;var a=n-1;return e[a]=(n>1?"& ":"")+e[a],e=e.join(n>2?", ":" "),t.replace(Z,"{\n/* [wrapped with "+e+"] */\n")}(a,function(t,e){return re(s,(function(n){var a="_."+n[0];e&n[1]&&!oe(t,a)&&t.push(a)})),t.sort()}(function(t){var e=t.match(J);return e?e[1].split(Q):[]}(a),n)))}function xi(t){var e=0,n=0;return function(){var a=un(),r=16-(a-n);if(n=a,r>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function _i(t,e){var n=-1,a=t.length,r=a-1;for(e=void 0===e?a:e;++n<e;){var i=Da(n,r),s=t[i];t[i]=t[n],t[n]=s}return t.length=e,t}var Ti,wi,Oi=(Ti=Ts((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(Y,(function(t,n,a,r){e.push(a?r.replace(tt,"$1"):n||t)})),e}),(function(t){return 500===wi.size&&wi.clear(),t})),wi=Ti.cache,Ti);function Si(t){if("string"==typeof t||Zs(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Ii(t){if(null!=t){try{return Tt.call(t)}catch(e){}try{return t+""}catch(e){}}return""}function Ni(t){if(t instanceof kn)return t.clone();var e=new An(t.__wrapped__,t.__chain__);return e.__actions__=pr(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}var Ci=Ma((function(t,e){return Ps(t)?Qn(t,ra(e,1,Ps,!0)):[]})),Ri=Ma((function(t,e){var n=ji(e);return Ps(n)&&(n=void 0),Ps(t)?Qn(t,ra(e,1,Ps,!0),Kr(n,2)):[]})),Ai=Ma((function(t,e){var n=ji(e);return Ps(n)&&(n=void 0),Ps(t)?Qn(t,ra(e,1,Ps,!0),void 0,n):[]}));function ki(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=null==n?0:nu(n);return r<0&&(r=rn(a+r,0)),me(t,Kr(e,3),r)}function Ei(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=a-1;return void 0!==n&&(r=nu(n),r=n<0?rn(a+r,0):sn(r,a-1)),me(t,Kr(e,3),r,!0)}function Li(t){return null!=t&&t.length?ra(t,1):[]}function Di(t){return t&&t.length?t[0]:void 0}var Pi=Ma((function(t){var e=de(t,ar);return e.length&&e[0]===t[0]?ba(e):[]})),Mi=Ma((function(t){var e=ji(t),n=de(t,ar);return e===ji(n)?e=void 0:n.pop(),n.length&&n[0]===t[0]?ba(n,Kr(e,2)):[]})),qi=Ma((function(t){var e=ji(t),n=de(t,ar);return(e="function"==typeof e?e:void 0)&&n.pop(),n.length&&n[0]===t[0]?ba(n,void 0,e):[]}));function ji(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}var Fi=Ma(Vi);function Vi(t,e){return t&&t.length&&e&&e.length?Ea(t,e):t}var Gi=Br((function(t,e){var n=null==t?0:t.length,a=Wn(t,e);return La(t,de(e,(function(t){return ri(t,n)?+t:t})).sort(fr)),a}));function Bi(t){return null==t?t:dn.call(t)}var zi=Ma((function(t){return Za(ra(t,1,Ps,!0))})),Yi=Ma((function(t){var e=ji(t);return Ps(e)&&(e=void 0),Za(ra(t,1,Ps,!0),Kr(e,2))})),Hi=Ma((function(t){var e=ji(t);return e="function"==typeof e?e:void 0,Za(ra(t,1,Ps,!0),void 0,e)}));function Ui(t){if(!t||!t.length)return[];var e=0;return t=ue(t,(function(t){if(Ps(t))return e=rn(t.length,e),!0})),Ie(e,(function(e){return de(t,Te(e))}))}function Wi(t,e){if(!t||!t.length)return[];var n=Ui(t);return null==e?n:de(n,(function(t){return ne(e,void 0,t)}))}var Ki=Ma((function(t,e){return Ps(t)?Qn(t,e):[]})),$i=Ma((function(t){return er(ue(t,Ps))})),Zi=Ma((function(t){var e=ji(t);return Ps(e)&&(e=void 0),er(ue(t,Ps),Kr(e,2))})),Ji=Ma((function(t){var e=ji(t);return e="function"==typeof e?e:void 0,er(ue(t,Ps),void 0,e)})),Qi=Ma(Ui),Xi=Ma((function(t){var e=t.length,n=e>1?t[e-1]:void 0;return n="function"==typeof n?(t.pop(),n):void 0,Wi(t,n)}));function ts(t){var e=Nn(t);return e.__chain__=!0,e}function es(t,e){return e(t)}var ns=Br((function(t){var e=t.length,n=e?t[0]:0,a=this.__wrapped__,r=function(e){return Wn(e,t)};return!(e>1||this.__actions__.length)&&a instanceof kn&&ri(n)?((a=a.slice(n,+n+(e?1:0))).__actions__.push({func:es,args:[r],thisArg:void 0}),new An(a,this.__chain__).thru((function(t){return e&&!t.length&&t.push(void 0),t}))):this.thru(r)})),as=mr((function(t,e,n){wt.call(t,n)?++t[n]:Un(t,n,1)})),rs=Or(ki),is=Or(Ei);function ss(t,e){return(Es(t)?re:Xn)(t,Kr(e,3))}function us(t,e){return(Es(t)?ie:ta)(t,Kr(e,3))}var os=mr((function(t,e,n){wt.call(t,n)?t[n].push(e):Un(t,n,[e])})),ls=Ma((function(t,e,n){var r=-1,i="function"==typeof e,s=Ds(t)?a(t.length):[];return Xn(t,(function(t){s[++r]=i?ne(e,t,n):ma(t,e,n)})),s})),ds=mr((function(t,e,n){Un(t,n,e)}));function cs(t,e){return(Es(t)?de:Sa)(t,Kr(e,3))}var fs=mr((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]})),hs=Ma((function(t,e){if(null==t)return[];var n=e.length;return n>1&&ii(t,e[0],e[1])?e=[]:n>2&&ii(e[0],e[1],e[2])&&(e=[e[0]]),Aa(t,ra(e,1),[])})),gs=$e||function(){return Yt.Date.now()};function ps(t,e,n){return e=n?void 0:e,qr(t,128,void 0,void 0,void 0,void 0,e=t&&null==e?t.length:e)}function bs(t,e){var n;if("function"!=typeof e)throw new yt(r);return t=nu(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=void 0),n}}var ms=Ma((function(t,e,n){var a=1;if(n.length){var r=Fe(n,Wr(ms));a|=32}return qr(t,a,e,n,r)})),ys=Ma((function(t,e,n){var a=3;if(n.length){var r=Fe(n,Wr(ys));a|=32}return qr(e,a,t,n,r)}));function vs(t,e,n){var a,i,s,u,o,l,d=0,c=!1,f=!1,h=!0;if("function"!=typeof t)throw new yt(r);function g(e){var n=a,r=i;return a=i=void 0,d=e,u=t.apply(r,n)}function p(t){return d=t,o=mi(m,e),c?g(t):u}function b(t){var n=t-l;return void 0===l||n>=e||n<0||f&&t-d>=s}function m(){var t=gs();if(b(t))return y(t);o=mi(m,function(t){var n=e-(t-l);return f?sn(n,s-(t-d)):n}(t))}function y(t){return o=void 0,h&&a?g(t):(a=i=void 0,u)}function v(){var t=gs(),n=b(t);if(a=arguments,i=this,l=t,n){if(void 0===o)return p(l);if(f)return or(o),o=mi(m,e),g(l)}return void 0===o&&(o=mi(m,e)),u}return e=ru(e)||0,Bs(n)&&(c=!!n.leading,s=(f="maxWait"in n)?rn(ru(n.maxWait)||0,e):s,h="trailing"in n?!!n.trailing:h),v.cancel=function(){void 0!==o&&or(o),d=0,a=l=i=o=void 0},v.flush=function(){return void 0===o?u:y(gs())},v}var xs=Ma((function(t,e){return Jn(t,1,e)})),_s=Ma((function(t,e,n){return Jn(t,ru(e)||0,n)}));function Ts(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new yt(r);var n=function(){var a=arguments,r=e?e.apply(this,a):a[0],i=n.cache;if(i.has(r))return i.get(r);var s=t.apply(this,a);return n.cache=i.set(r,s)||i,s};return n.cache=new(Ts.Cache||Dn),n}function ws(t){if("function"!=typeof t)throw new yt(r);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Ts.Cache=Dn;var Os=sr((function(t,e){var n=(e=1==e.length&&Es(e[0])?de(e[0],Ne(Kr())):de(ra(e,1),Ne(Kr()))).length;return Ma((function(a){for(var r=-1,i=sn(a.length,n);++r<i;)a[r]=e[r].call(this,a[r]);return ne(t,this,a)}))})),Ss=Ma((function(t,e){return qr(t,32,void 0,e,Fe(e,Wr(Ss)))})),Is=Ma((function(t,e){return qr(t,64,void 0,e,Fe(e,Wr(Is)))})),Ns=Br((function(t,e){return qr(t,256,void 0,void 0,void 0,e)}));function Cs(t,e){return t===e||t!=t&&e!=e}var Rs=Er(ha),As=Er((function(t,e){return t>=e})),ks=ya(function(){return arguments}())?ya:function(t){return zs(t)&&wt.call(t,"callee")&&!Kt.call(t,"callee")},Es=a.isArray,Ls=Zt?Ne(Zt):function(t){return zs(t)&&fa(t)==T};function Ds(t){return null!=t&&Gs(t.length)&&!Fs(t)}function Ps(t){return zs(t)&&Ds(t)}var Ms=tn||ro,qs=Jt?Ne(Jt):function(t){return zs(t)&&fa(t)==d};function js(t){if(!zs(t))return!1;var e=fa(t);return e==c||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!Us(t)}function Fs(t){if(!Bs(t))return!1;var e=fa(t);return e==f||e==h||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Vs(t){return"number"==typeof t&&t==nu(t)}function Gs(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function Bs(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function zs(t){return null!=t&&"object"==typeof t}var Ys=Qt?Ne(Qt):function(t){return zs(t)&&ti(t)==g};function Hs(t){return"number"==typeof t||zs(t)&&fa(t)==p}function Us(t){if(!zs(t)||fa(t)!=b)return!1;var e=Ht(t);if(null===e)return!0;var n=wt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Tt.call(n)==Nt}var Ws=Xt?Ne(Xt):function(t){return zs(t)&&fa(t)==m},Ks=te?Ne(te):function(t){return zs(t)&&ti(t)==y};function $s(t){return"string"==typeof t||!Es(t)&&zs(t)&&fa(t)==v}function Zs(t){return"symbol"==typeof t||zs(t)&&fa(t)==x}var Js=ee?Ne(ee):function(t){return zs(t)&&Gs(t.length)&&!!qt[fa(t)]},Qs=Er(Oa),Xs=Er((function(t,e){return t<=e}));function tu(t){if(!t)return[];if(Ds(t))return $s(t)?ze(t):pr(t);if(we&&t[we])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[we]());var e=ti(t);return(e==g?qe:e==y?Ve:Cu)(t)}function eu(t){return t?(t=ru(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function nu(t){var e=eu(t),n=e%1;return e==e?n?e-n:e:0}function au(t){return t?Kn(nu(t),0,4294967295):0}function ru(t){if("number"==typeof t)return t;if(Zs(t))return NaN;if(Bs(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Bs(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(W,"");var n=rt.test(t);return n||st.test(t)?Gt(t.slice(2),n?2:8):at.test(t)?NaN:+t}function iu(t){return br(t,xu(t))}function su(t){return null==t?"":$a(t)}var uu=yr((function(t,e){if(li(e)||Ds(e))br(e,vu(e),t);else for(var n in e)wt.call(e,n)&&Bn(t,n,e[n])})),ou=yr((function(t,e){br(e,xu(e),t)})),lu=yr((function(t,e,n,a){br(e,xu(e),t,a)})),du=yr((function(t,e,n,a){br(e,vu(e),t,a)})),cu=Br(Wn),fu=Ma((function(t,e){t=pt(t);var n=-1,a=e.length,r=a>2?e[2]:void 0;for(r&&ii(e[0],e[1],r)&&(a=1);++n<a;)for(var i=e[n],s=xu(i),u=-1,o=s.length;++u<o;){var l=s[u],d=t[l];(void 0===d||Cs(d,xt[l])&&!wt.call(t,l))&&(t[l]=i[l])}return t})),hu=Ma((function(t){return t.push(void 0,Fr),ne(Tu,void 0,t)}));function gu(t,e,n){var a=null==t?void 0:da(t,e);return void 0===a?n:a}function pu(t,e){return null!=t&&ei(t,e,pa)}var bu=Nr((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=It.call(e)),t[e]=n}),Bu(Hu)),mu=Nr((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=It.call(e)),wt.call(t,e)?t[e].push(n):t[e]=[n]}),Kr),yu=Ma(ma);function vu(t){return Ds(t)?qn(t):wa(t)}function xu(t){return Ds(t)?qn(t,!0):function(t){if(!Bs(t))return function(t){var e=[];if(null!=t)for(var n in pt(t))e.push(n);return e}(t);var e=li(t),n=[];for(var a in t)("constructor"!=a||!e&&wt.call(t,a))&&n.push(a);return n}(t)}var _u=yr((function(t,e,n){Ca(t,e,n)})),Tu=yr((function(t,e,n,a){Ca(t,e,n,a)})),wu=Br((function(t,e){var n={};if(null==t)return n;var a=!1;e=de(e,(function(e){return e=ir(e,t),a||(a=e.length>1),e})),br(t,Yr(t),n),a&&(n=$n(n,7,Vr));for(var r=e.length;r--;)Ja(n,e[r]);return n})),Ou=Br((function(t,e){return null==t?{}:function(t,e){return ka(t,e,(function(e,n){return pu(t,n)}))}(t,e)}));function Su(t,e){if(null==t)return{};var n=de(Yr(t),(function(t){return[t]}));return e=Kr(e),ka(t,n,(function(t,n){return e(t,n[0])}))}var Iu=Mr(vu),Nu=Mr(xu);function Cu(t){return null==t?[]:Ce(t,vu(t))}var Ru=Tr((function(t,e,n){return e=e.toLowerCase(),t+(n?Au(e):e)}));function Au(t){return ju(su(t).toLowerCase())}function ku(t){return(t=su(t))&&t.replace(ot,Le).replace(At,"")}var Eu=Tr((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),Lu=Tr((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Du=_r("toLowerCase"),Pu=Tr((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()})),Mu=Tr((function(t,e,n){return t+(n?" ":"")+ju(e)})),qu=Tr((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),ju=_r("toUpperCase");function Fu(t,e,n){return t=su(t),void 0===(e=n?void 0:e)?function(t){return Dt.test(t)}(t)?function(t){return t.match(Et)||[]}(t):function(t){return t.match(X)||[]}(t):t.match(e)||[]}var Vu=Ma((function(t,e){try{return ne(t,void 0,e)}catch(n){return js(n)?n:new ft(n)}})),Gu=Br((function(t,e){return re(e,(function(e){e=Si(e),Un(t,e,ms(t[e],t))})),t}));function Bu(t){return function(){return t}}var zu=Sr(),Yu=Sr(!0);function Hu(t){return t}function Uu(t){return Ta("function"==typeof t?t:$n(t,1))}var Wu=Ma((function(t,e){return function(n){return ma(n,t,e)}})),Ku=Ma((function(t,e){return function(n){return ma(t,n,e)}}));function $u(t,e,n){var a=vu(e),r=la(e,a);null!=n||Bs(e)&&(r.length||!a.length)||(n=e,e=t,t=this,r=la(e,vu(e)));var i=!(Bs(n)&&"chain"in n&&!n.chain),s=Fs(t);return re(r,(function(n){var a=e[n];t[n]=a,s&&(t.prototype[n]=function(){var e=this.__chain__;if(i||e){var n=t(this.__wrapped__),r=n.__actions__=pr(this.__actions__);return r.push({func:a,args:arguments,thisArg:t}),n.__chain__=e,n}return a.apply(t,ce([this.value()],arguments))})})),t}function Zu(){}var Ju=Rr(de),Qu=Rr(se),Xu=Rr(ge);function to(t){return si(t)?Te(Si(t)):function(t){return function(e){return da(e,t)}}(t)}var eo=kr(),no=kr(!0);function ao(){return[]}function ro(){return!1}var io,so=Cr((function(t,e){return t+e}),0),uo=Dr("ceil"),oo=Cr((function(t,e){return t/e}),1),lo=Dr("floor"),co=Cr((function(t,e){return t*e}),1),fo=Dr("round"),ho=Cr((function(t,e){return t-e}),0);return Nn.after=function(t,e){if("function"!=typeof e)throw new yt(r);return t=nu(t),function(){if(--t<1)return e.apply(this,arguments)}},Nn.ary=ps,Nn.assign=uu,Nn.assignIn=ou,Nn.assignInWith=lu,Nn.assignWith=du,Nn.at=cu,Nn.before=bs,Nn.bind=ms,Nn.bindAll=Gu,Nn.bindKey=ys,Nn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Es(t)?t:[t]},Nn.chain=ts,Nn.chunk=function(t,e,n){e=(n?ii(t,e,n):void 0===e)?1:rn(nu(e),0);var r=null==t?0:t.length;if(!r||e<1)return[];for(var i=0,s=0,u=a(Je(r/e));i<r;)u[s++]=za(t,i,i+=e);return u},Nn.compact=function(t){for(var e=-1,n=null==t?0:t.length,a=0,r=[];++e<n;){var i=t[e];i&&(r[a++]=i)}return r},Nn.concat=function(){var t=arguments.length;if(!t)return[];for(var e=a(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return ce(Es(n)?pr(n):[n],ra(e,1))},Nn.cond=function(t){var e=null==t?0:t.length,n=Kr();return t=e?de(t,(function(t){if("function"!=typeof t[1])throw new yt(r);return[n(t[0]),t[1]]})):[],Ma((function(n){for(var a=-1;++a<e;){var r=t[a];if(ne(r[0],this,n))return ne(r[1],this,n)}}))},Nn.conforms=function(t){return function(t){var e=vu(t);return function(n){return Zn(n,t,e)}}($n(t,1))},Nn.constant=Bu,Nn.countBy=as,Nn.create=function(t,e){var n=Cn(t);return null==e?n:Hn(n,e)},Nn.curry=function t(e,n,a){var r=qr(e,8,void 0,void 0,void 0,void 0,void 0,n=a?void 0:n);return r.placeholder=t.placeholder,r},Nn.curryRight=function t(e,n,a){var r=qr(e,16,void 0,void 0,void 0,void 0,void 0,n=a?void 0:n);return r.placeholder=t.placeholder,r},Nn.debounce=vs,Nn.defaults=fu,Nn.defaultsDeep=hu,Nn.defer=xs,Nn.delay=_s,Nn.difference=Ci,Nn.differenceBy=Ri,Nn.differenceWith=Ai,Nn.drop=function(t,e,n){var a=null==t?0:t.length;return a?za(t,(e=n||void 0===e?1:nu(e))<0?0:e,a):[]},Nn.dropRight=function(t,e,n){var a=null==t?0:t.length;return a?za(t,0,(e=a-(e=n||void 0===e?1:nu(e)))<0?0:e):[]},Nn.dropRightWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!0,!0):[]},Nn.dropWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!0):[]},Nn.fill=function(t,e,n,a){var r=null==t?0:t.length;return r?(n&&"number"!=typeof n&&ii(t,e,n)&&(n=0,a=r),function(t,e,n,a){var r=t.length;for((n=nu(n))<0&&(n=-n>r?0:r+n),(a=void 0===a||a>r?r:nu(a))<0&&(a+=r),a=n>a?0:au(a);n<a;)t[n++]=e;return t}(t,e,n,a)):[]},Nn.filter=function(t,e){return(Es(t)?ue:aa)(t,Kr(e,3))},Nn.flatMap=function(t,e){return ra(cs(t,e),1)},Nn.flatMapDeep=function(t,e){return ra(cs(t,e),1/0)},Nn.flatMapDepth=function(t,e,n){return n=void 0===n?1:nu(n),ra(cs(t,e),n)},Nn.flatten=Li,Nn.flattenDeep=function(t){return null!=t&&t.length?ra(t,1/0):[]},Nn.flattenDepth=function(t,e){return null!=t&&t.length?ra(t,e=void 0===e?1:nu(e)):[]},Nn.flip=function(t){return qr(t,512)},Nn.flow=zu,Nn.flowRight=Yu,Nn.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,a={};++e<n;){var r=t[e];a[r[0]]=r[1]}return a},Nn.functions=function(t){return null==t?[]:la(t,vu(t))},Nn.functionsIn=function(t){return null==t?[]:la(t,xu(t))},Nn.groupBy=os,Nn.initial=function(t){return null!=t&&t.length?za(t,0,-1):[]},Nn.intersection=Pi,Nn.intersectionBy=Mi,Nn.intersectionWith=qi,Nn.invert=bu,Nn.invertBy=mu,Nn.invokeMap=ls,Nn.iteratee=Uu,Nn.keyBy=ds,Nn.keys=vu,Nn.keysIn=xu,Nn.map=cs,Nn.mapKeys=function(t,e){var n={};return e=Kr(e,3),ua(t,(function(t,a,r){Un(n,e(t,a,r),t)})),n},Nn.mapValues=function(t,e){var n={};return e=Kr(e,3),ua(t,(function(t,a,r){Un(n,a,e(t,a,r))})),n},Nn.matches=function(t){return Ia($n(t,1))},Nn.matchesProperty=function(t,e){return Na(t,$n(e,1))},Nn.memoize=Ts,Nn.merge=_u,Nn.mergeWith=Tu,Nn.method=Wu,Nn.methodOf=Ku,Nn.mixin=$u,Nn.negate=ws,Nn.nthArg=function(t){return t=nu(t),Ma((function(e){return Ra(e,t)}))},Nn.omit=wu,Nn.omitBy=function(t,e){return Su(t,ws(Kr(e)))},Nn.once=function(t){return bs(2,t)},Nn.orderBy=function(t,e,n,a){return null==t?[]:(Es(e)||(e=null==e?[]:[e]),Es(n=a?void 0:n)||(n=null==n?[]:[n]),Aa(t,e,n))},Nn.over=Ju,Nn.overArgs=Os,Nn.overEvery=Qu,Nn.overSome=Xu,Nn.partial=Ss,Nn.partialRight=Is,Nn.partition=fs,Nn.pick=Ou,Nn.pickBy=Su,Nn.property=to,Nn.propertyOf=function(t){return function(e){return null==t?void 0:da(t,e)}},Nn.pull=Fi,Nn.pullAll=Vi,Nn.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?Ea(t,e,Kr(n,2)):t},Nn.pullAllWith=function(t,e,n){return t&&t.length&&e&&e.length?Ea(t,e,void 0,n):t},Nn.pullAt=Gi,Nn.range=eo,Nn.rangeRight=no,Nn.rearg=Ns,Nn.reject=function(t,e){return(Es(t)?ue:aa)(t,ws(Kr(e,3)))},Nn.remove=function(t,e){var n=[];if(!t||!t.length)return n;var a=-1,r=[],i=t.length;for(e=Kr(e,3);++a<i;){var s=t[a];e(s,a,t)&&(n.push(s),r.push(a))}return La(t,r),n},Nn.rest=function(t,e){if("function"!=typeof t)throw new yt(r);return Ma(t,e=void 0===e?e:nu(e))},Nn.reverse=Bi,Nn.sampleSize=function(t,e,n){return e=(n?ii(t,e,n):void 0===e)?1:nu(e),(Es(t)?Fn:ja)(t,e)},Nn.set=function(t,e,n){return null==t?t:Fa(t,e,n)},Nn.setWith=function(t,e,n,a){return a="function"==typeof a?a:void 0,null==t?t:Fa(t,e,n,a)},Nn.shuffle=function(t){return(Es(t)?Vn:Ba)(t)},Nn.slice=function(t,e,n){var a=null==t?0:t.length;return a?(n&&"number"!=typeof n&&ii(t,e,n)?(e=0,n=a):(e=null==e?0:nu(e),n=void 0===n?a:nu(n)),za(t,e,n)):[]},Nn.sortBy=hs,Nn.sortedUniq=function(t){return t&&t.length?Wa(t):[]},Nn.sortedUniqBy=function(t,e){return t&&t.length?Wa(t,Kr(e,2)):[]},Nn.split=function(t,e,n){return n&&"number"!=typeof n&&ii(t,e,n)&&(e=n=void 0),(n=void 0===n?4294967295:n>>>0)?(t=su(t))&&("string"==typeof e||null!=e&&!Ws(e))&&!(e=$a(e))&&Me(t)?ur(ze(t),0,n):t.split(e,n):[]},Nn.spread=function(t,e){if("function"!=typeof t)throw new yt(r);return e=null==e?0:rn(nu(e),0),Ma((function(n){var a=n[e],r=ur(n,0,e);return a&&ce(r,a),ne(t,this,r)}))},Nn.tail=function(t){var e=null==t?0:t.length;return e?za(t,1,e):[]},Nn.take=function(t,e,n){return t&&t.length?za(t,0,(e=n||void 0===e?1:nu(e))<0?0:e):[]},Nn.takeRight=function(t,e,n){var a=null==t?0:t.length;return a?za(t,(e=a-(e=n||void 0===e?1:nu(e)))<0?0:e,a):[]},Nn.takeRightWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!1,!0):[]},Nn.takeWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3)):[]},Nn.tap=function(t,e){return e(t),t},Nn.throttle=function(t,e,n){var a=!0,i=!0;if("function"!=typeof t)throw new yt(r);return Bs(n)&&(a="leading"in n?!!n.leading:a,i="trailing"in n?!!n.trailing:i),vs(t,e,{leading:a,maxWait:e,trailing:i})},Nn.thru=es,Nn.toArray=tu,Nn.toPairs=Iu,Nn.toPairsIn=Nu,Nn.toPath=function(t){return Es(t)?de(t,Si):Zs(t)?[t]:pr(Oi(su(t)))},Nn.toPlainObject=iu,Nn.transform=function(t,e,n){var a=Es(t),r=a||Ms(t)||Js(t);if(e=Kr(e,4),null==n){var i=t&&t.constructor;n=r?a?new i:[]:Bs(t)&&Fs(i)?Cn(Ht(t)):{}}return(r?re:ua)(t,(function(t,a,r){return e(n,t,a,r)})),n},Nn.unary=function(t){return ps(t,1)},Nn.union=zi,Nn.unionBy=Yi,Nn.unionWith=Hi,Nn.uniq=function(t){return t&&t.length?Za(t):[]},Nn.uniqBy=function(t,e){return t&&t.length?Za(t,Kr(e,2)):[]},Nn.uniqWith=function(t,e){return e="function"==typeof e?e:void 0,t&&t.length?Za(t,void 0,e):[]},Nn.unset=function(t,e){return null==t||Ja(t,e)},Nn.unzip=Ui,Nn.unzipWith=Wi,Nn.update=function(t,e,n){return null==t?t:Qa(t,e,rr(n))},Nn.updateWith=function(t,e,n,a){return a="function"==typeof a?a:void 0,null==t?t:Qa(t,e,rr(n),a)},Nn.values=Cu,Nn.valuesIn=function(t){return null==t?[]:Ce(t,xu(t))},Nn.without=Ki,Nn.words=Fu,Nn.wrap=function(t,e){return Ss(rr(e),t)},Nn.xor=$i,Nn.xorBy=Zi,Nn.xorWith=Ji,Nn.zip=Qi,Nn.zipObject=function(t,e){return nr(t||[],e||[],Bn)},Nn.zipObjectDeep=function(t,e){return nr(t||[],e||[],Fa)},Nn.zipWith=Xi,Nn.entries=Iu,Nn.entriesIn=Nu,Nn.extend=ou,Nn.extendWith=lu,$u(Nn,Nn),Nn.add=so,Nn.attempt=Vu,Nn.camelCase=Ru,Nn.capitalize=Au,Nn.ceil=uo,Nn.clamp=function(t,e,n){return void 0===n&&(n=e,e=void 0),void 0!==n&&(n=(n=ru(n))==n?n:0),void 0!==e&&(e=(e=ru(e))==e?e:0),Kn(ru(t),e,n)},Nn.clone=function(t){return $n(t,4)},Nn.cloneDeep=function(t){return $n(t,5)},Nn.cloneDeepWith=function(t,e){return $n(t,5,e="function"==typeof e?e:void 0)},Nn.cloneWith=function(t,e){return $n(t,4,e="function"==typeof e?e:void 0)},Nn.conformsTo=function(t,e){return null==e||Zn(t,e,vu(e))},Nn.deburr=ku,Nn.defaultTo=function(t,e){return null==t||t!=t?e:t},Nn.divide=oo,Nn.endsWith=function(t,e,n){t=su(t),e=$a(e);var a=t.length,r=n=void 0===n?a:Kn(nu(n),0,a);return(n-=e.length)>=0&&t.slice(n,r)==e},Nn.eq=Cs,Nn.escape=function(t){return(t=su(t))&&j.test(t)?t.replace(M,De):t},Nn.escapeRegExp=function(t){return(t=su(t))&&U.test(t)?t.replace(H,"\\$&"):t},Nn.every=function(t,e,n){var a=Es(t)?se:ea;return n&&ii(t,e,n)&&(e=void 0),a(t,Kr(e,3))},Nn.find=rs,Nn.findIndex=ki,Nn.findKey=function(t,e){return be(t,Kr(e,3),ua)},Nn.findLast=is,Nn.findLastIndex=Ei,Nn.findLastKey=function(t,e){return be(t,Kr(e,3),oa)},Nn.floor=lo,Nn.forEach=ss,Nn.forEachRight=us,Nn.forIn=function(t,e){return null==t?t:ia(t,Kr(e,3),xu)},Nn.forInRight=function(t,e){return null==t?t:sa(t,Kr(e,3),xu)},Nn.forOwn=function(t,e){return t&&ua(t,Kr(e,3))},Nn.forOwnRight=function(t,e){return t&&oa(t,Kr(e,3))},Nn.get=gu,Nn.gt=Rs,Nn.gte=As,Nn.has=function(t,e){return null!=t&&ei(t,e,ga)},Nn.hasIn=pu,Nn.head=Di,Nn.identity=Hu,Nn.includes=function(t,e,n,a){t=Ds(t)?t:Cu(t),n=n&&!a?nu(n):0;var r=t.length;return n<0&&(n=rn(r+n,0)),$s(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&ye(t,e,n)>-1},Nn.indexOf=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=null==n?0:nu(n);return r<0&&(r=rn(a+r,0)),ye(t,e,r)},Nn.inRange=function(t,e,n){return e=eu(e),void 0===n?(n=e,e=0):n=eu(n),function(t,e,n){return t>=sn(e,n)&&t<rn(e,n)}(t=ru(t),e,n)},Nn.invoke=yu,Nn.isArguments=ks,Nn.isArray=Es,Nn.isArrayBuffer=Ls,Nn.isArrayLike=Ds,Nn.isArrayLikeObject=Ps,Nn.isBoolean=function(t){return!0===t||!1===t||zs(t)&&fa(t)==l},Nn.isBuffer=Ms,Nn.isDate=qs,Nn.isElement=function(t){return zs(t)&&1===t.nodeType&&!Us(t)},Nn.isEmpty=function(t){if(null==t)return!0;if(Ds(t)&&(Es(t)||"string"==typeof t||"function"==typeof t.splice||Ms(t)||Js(t)||ks(t)))return!t.length;var e=ti(t);if(e==g||e==y)return!t.size;if(li(t))return!wa(t).length;for(var n in t)if(wt.call(t,n))return!1;return!0},Nn.isEqual=function(t,e){return va(t,e)},Nn.isEqualWith=function(t,e,n){var a=(n="function"==typeof n?n:void 0)?n(t,e):void 0;return void 0===a?va(t,e,void 0,n):!!a},Nn.isError=js,Nn.isFinite=function(t){return"number"==typeof t&&en(t)},Nn.isFunction=Fs,Nn.isInteger=Vs,Nn.isLength=Gs,Nn.isMap=Ys,Nn.isMatch=function(t,e){return t===e||xa(t,e,Zr(e))},Nn.isMatchWith=function(t,e,n){return n="function"==typeof n?n:void 0,xa(t,e,Zr(e),n)},Nn.isNaN=function(t){return Hs(t)&&t!=+t},Nn.isNative=function(t){if(oi(t))throw new ft("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return _a(t)},Nn.isNil=function(t){return null==t},Nn.isNull=function(t){return null===t},Nn.isNumber=Hs,Nn.isObject=Bs,Nn.isObjectLike=zs,Nn.isPlainObject=Us,Nn.isRegExp=Ws,Nn.isSafeInteger=function(t){return Vs(t)&&t>=-9007199254740991&&t<=9007199254740991},Nn.isSet=Ks,Nn.isString=$s,Nn.isSymbol=Zs,Nn.isTypedArray=Js,Nn.isUndefined=function(t){return void 0===t},Nn.isWeakMap=function(t){return zs(t)&&ti(t)==_},Nn.isWeakSet=function(t){return zs(t)&&"[object WeakSet]"==fa(t)},Nn.join=function(t,e){return null==t?"":nn.call(t,e)},Nn.kebabCase=Eu,Nn.last=ji,Nn.lastIndexOf=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=a;return void 0!==n&&(r=(r=nu(n))<0?rn(a+r,0):sn(r,a-1)),e==e?function(t,e,n){for(var a=n+1;a--;)if(t[a]===e)return a;return a}(t,e,r):me(t,xe,r,!0)},Nn.lowerCase=Lu,Nn.lowerFirst=Du,Nn.lt=Qs,Nn.lte=Xs,Nn.max=function(t){return t&&t.length?na(t,Hu,ha):void 0},Nn.maxBy=function(t,e){return t&&t.length?na(t,Kr(e,2),ha):void 0},Nn.mean=function(t){return _e(t,Hu)},Nn.meanBy=function(t,e){return _e(t,Kr(e,2))},Nn.min=function(t){return t&&t.length?na(t,Hu,Oa):void 0},Nn.minBy=function(t,e){return t&&t.length?na(t,Kr(e,2),Oa):void 0},Nn.stubArray=ao,Nn.stubFalse=ro,Nn.stubObject=function(){return{}},Nn.stubString=function(){return""},Nn.stubTrue=function(){return!0},Nn.multiply=co,Nn.nth=function(t,e){return t&&t.length?Ra(t,nu(e)):void 0},Nn.noConflict=function(){return Yt._===this&&(Yt._=Ct),this},Nn.noop=Zu,Nn.now=gs,Nn.pad=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;if(!e||a>=e)return t;var r=(e-a)/2;return Ar(Qe(r),n)+t+Ar(Je(r),n)},Nn.padEnd=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;return e&&a<e?t+Ar(e-a,n):t},Nn.padStart=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;return e&&a<e?Ar(e-a,n)+t:t},Nn.parseInt=function(t,e,n){return n||null==e?e=0:e&&(e=+e),on(su(t).replace(K,""),e||0)},Nn.random=function(t,e,n){if(n&&"boolean"!=typeof n&&ii(t,e,n)&&(e=n=void 0),void 0===n&&("boolean"==typeof e?(n=e,e=void 0):"boolean"==typeof t&&(n=t,t=void 0)),void 0===t&&void 0===e?(t=0,e=1):(t=eu(t),void 0===e?(e=t,t=0):e=eu(e)),t>e){var a=t;t=e,e=a}if(n||t%1||e%1){var r=ln();return sn(t+r*(e-t+Vt("1e-"+((r+"").length-1))),e)}return Da(t,e)},Nn.reduce=function(t,e,n){var a=Es(t)?fe:Oe,r=arguments.length<3;return a(t,Kr(e,4),n,r,Xn)},Nn.reduceRight=function(t,e,n){var a=Es(t)?he:Oe,r=arguments.length<3;return a(t,Kr(e,4),n,r,ta)},Nn.repeat=function(t,e,n){return e=(n?ii(t,e,n):void 0===e)?1:nu(e),Pa(su(t),e)},Nn.replace=function(){var t=arguments,e=su(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Nn.result=function(t,e,n){var a=-1,r=(e=ir(e,t)).length;for(r||(r=1,t=void 0);++a<r;){var i=null==t?void 0:t[Si(e[a])];void 0===i&&(a=r,i=n),t=Fs(i)?i.call(t):i}return t},Nn.round=fo,Nn.runInContext=t,Nn.sample=function(t){return(Es(t)?jn:qa)(t)},Nn.size=function(t){if(null==t)return 0;if(Ds(t))return $s(t)?Be(t):t.length;var e=ti(t);return e==g||e==y?t.size:wa(t).length},Nn.snakeCase=Pu,Nn.some=function(t,e,n){var a=Es(t)?ge:Ya;return n&&ii(t,e,n)&&(e=void 0),a(t,Kr(e,3))},Nn.sortedIndex=function(t,e){return Ha(t,e)},Nn.sortedIndexBy=function(t,e,n){return Ua(t,e,Kr(n,2))},Nn.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var a=Ha(t,e);if(a<n&&Cs(t[a],e))return a}return-1},Nn.sortedLastIndex=function(t,e){return Ha(t,e,!0)},Nn.sortedLastIndexBy=function(t,e,n){return Ua(t,e,Kr(n,2),!0)},Nn.sortedLastIndexOf=function(t,e){if(null!=t&&t.length){var n=Ha(t,e,!0)-1;if(Cs(t[n],e))return n}return-1},Nn.startCase=Mu,Nn.startsWith=function(t,e,n){return t=su(t),n=null==n?0:Kn(nu(n),0,t.length),e=$a(e),t.slice(n,n+e.length)==e},Nn.subtract=ho,Nn.sum=function(t){return t&&t.length?Se(t,Hu):0},Nn.sumBy=function(t,e){return t&&t.length?Se(t,Kr(e,2)):0},Nn.template=function(t,e,n){var a=Nn.templateSettings;n&&ii(t,e,n)&&(e=void 0),t=su(t),e=lu({},e,a,jr);var r,i,s=lu({},e.imports,a.imports,jr),u=vu(s),o=Ce(s,u),l=0,d=e.interpolate||lt,c="__p += '",f=bt((e.escape||lt).source+"|"+d.source+"|"+(d===G?et:lt).source+"|"+(e.evaluate||lt).source+"|$","g"),h="//# sourceURL="+(wt.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Mt+"]")+"\n";t.replace(f,(function(e,n,a,s,u,o){return a||(a=s),c+=t.slice(l,o).replace(dt,Pe),n&&(r=!0,c+="' +\n__e("+n+") +\n'"),u&&(i=!0,c+="';\n"+u+";\n__p += '"),a&&(c+="' +\n((__t = ("+a+")) == null ? '' : __t) +\n'"),l=o+e.length,e})),c+="';\n";var g=wt.call(e,"variable")&&e.variable;g||(c="with (obj) {\n"+c+"\n}\n"),c=(i?c.replace(E,""):c).replace(L,"$1").replace(D,"$1;"),c="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(r?", __e = _.escape":"")+(i?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+c+"return __p\n}";var p=Vu((function(){return ht(u,h+"return "+c).apply(void 0,o)}));if(p.source=c,js(p))throw p;return p},Nn.times=function(t,e){if((t=nu(t))<1||t>9007199254740991)return[];var n=4294967295,a=sn(t,4294967295);t-=4294967295;for(var r=Ie(a,e=Kr(e));++n<t;)e(n);return r},Nn.toFinite=eu,Nn.toInteger=nu,Nn.toLength=au,Nn.toLower=function(t){return su(t).toLowerCase()},Nn.toNumber=ru,Nn.toSafeInteger=function(t){return t?Kn(nu(t),-9007199254740991,9007199254740991):0===t?t:0},Nn.toString=su,Nn.toUpper=function(t){return su(t).toUpperCase()},Nn.trim=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace(W,"");if(!t||!(e=$a(e)))return t;var a=ze(t),r=ze(e);return ur(a,Ae(a,r),ke(a,r)+1).join("")},Nn.trimEnd=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace($,"");if(!t||!(e=$a(e)))return t;var a=ze(t);return ur(a,0,ke(a,ze(e))+1).join("")},Nn.trimStart=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace(K,"");if(!t||!(e=$a(e)))return t;var a=ze(t);return ur(a,Ae(a,ze(e))).join("")},Nn.truncate=function(t,e){var n=30,a="...";if(Bs(e)){var r="separator"in e?e.separator:r;n="length"in e?nu(e.length):n,a="omission"in e?$a(e.omission):a}var i=(t=su(t)).length;if(Me(t)){var s=ze(t);i=s.length}if(n>=i)return t;var u=n-Be(a);if(u<1)return a;var o=s?ur(s,0,u).join(""):t.slice(0,u);if(void 0===r)return o+a;if(s&&(u+=o.length-u),Ws(r)){if(t.slice(u).search(r)){var l,d=o;for(r.global||(r=bt(r.source,su(nt.exec(r))+"g")),r.lastIndex=0;l=r.exec(d);)var c=l.index;o=o.slice(0,void 0===c?u:c)}}else if(t.indexOf($a(r),u)!=u){var f=o.lastIndexOf(r);f>-1&&(o=o.slice(0,f))}return o+a},Nn.unescape=function(t){return(t=su(t))&&q.test(t)?t.replace(P,Ye):t},Nn.uniqueId=function(t){var e=++Ot;return su(t)+e},Nn.upperCase=qu,Nn.upperFirst=ju,Nn.each=ss,Nn.eachRight=us,Nn.first=Di,$u(Nn,(io={},ua(Nn,(function(t,e){wt.call(Nn.prototype,e)||(io[e]=t)})),io),{chain:!1}),Nn.VERSION="4.17.20",re(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Nn[t].placeholder=Nn})),re(["drop","take"],(function(t,e){kn.prototype[t]=function(n){n=void 0===n?1:rn(nu(n),0);var a=this.__filtered__&&!e?new kn(this):this.clone();return a.__filtered__?a.__takeCount__=sn(n,a.__takeCount__):a.__views__.push({size:sn(n,4294967295),type:t+(a.__dir__<0?"Right":"")}),a},kn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),re(["filter","map","takeWhile"],(function(t,e){var n=e+1,a=1==n||3==n;kn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Kr(t,3),type:n}),e.__filtered__=e.__filtered__||a,e}})),re(["head","last"],(function(t,e){var n="take"+(e?"Right":"");kn.prototype[t]=function(){return this[n](1).value()[0]}})),re(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");kn.prototype[t]=function(){return this.__filtered__?new kn(this):this[n](1)}})),kn.prototype.compact=function(){return this.filter(Hu)},kn.prototype.find=function(t){return this.filter(t).head()},kn.prototype.findLast=function(t){return this.reverse().find(t)},kn.prototype.invokeMap=Ma((function(t,e){return"function"==typeof t?new kn(this):this.map((function(n){return ma(n,t,e)}))})),kn.prototype.reject=function(t){return this.filter(ws(Kr(t)))},kn.prototype.slice=function(t,e){t=nu(t);var n=this;return n.__filtered__&&(t>0||e<0)?new kn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),void 0!==e&&(n=(e=nu(e))<0?n.dropRight(-e):n.take(e-t)),n)},kn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},kn.prototype.toArray=function(){return this.take(4294967295)},ua(kn.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),a=/^(?:head|last)$/.test(e),r=Nn[a?"take"+("last"==e?"Right":""):e],i=a||/^find/.test(e);r&&(Nn.prototype[e]=function(){var e=this.__wrapped__,s=a?[1]:arguments,u=e instanceof kn,o=s[0],l=u||Es(e),d=function(t){var e=r.apply(Nn,ce([t],s));return a&&c?e[0]:e};l&&n&&"function"==typeof o&&1!=o.length&&(u=l=!1);var c=this.__chain__,f=!!this.__actions__.length,h=i&&!c,g=u&&!f;if(!i&&l){e=g?e:new kn(this);var p=t.apply(e,s);return p.__actions__.push({func:es,args:[d],thisArg:void 0}),new An(p,c)}return h&&g?t.apply(this,s):(p=this.thru(d),h?a?p.value()[0]:p.value():p)})})),re(["pop","push","shift","sort","splice","unshift"],(function(t){var e=vt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",a=/^(?:pop|shift)$/.test(t);Nn.prototype[t]=function(){var t=arguments;if(a&&!this.__chain__){var r=this.value();return e.apply(Es(r)?r:[],t)}return this[n]((function(n){return e.apply(Es(n)?n:[],t)}))}})),ua(kn.prototype,(function(t,e){var n=Nn[e];if(n){var a=n.name+"";wt.call(yn,a)||(yn[a]=[]),yn[a].push({name:e,func:n})}})),yn[Ir(void 0,2).name]=[{name:"wrapper",func:void 0}],kn.prototype.clone=function(){var t=new kn(this.__wrapped__);return t.__actions__=pr(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=pr(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=pr(this.__views__),t},kn.prototype.reverse=function(){if(this.__filtered__){var t=new kn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},kn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Es(t),a=e<0,r=n?t.length:0,i=function(t,e,n){for(var a=-1,r=n.length;++a<r;){var i=n[a],s=i.size;switch(i.type){case"drop":t+=s;break;case"dropRight":e-=s;break;case"take":e=sn(e,t+s);break;case"takeRight":t=rn(t,e-s)}}return{start:t,end:e}}(0,r,this.__views__),s=i.start,u=i.end,o=u-s,l=a?u:s-1,d=this.__iteratees__,c=d.length,f=0,h=sn(o,this.__takeCount__);if(!n||!a&&r==o&&h==o)return tr(t,this.__actions__);var g=[];t:for(;o--&&f<h;){for(var p=-1,b=t[l+=e];++p<c;){var m=d[p],y=m.type,v=(0,m.iteratee)(b);if(2==y)b=v;else if(!v){if(1==y)continue t;break t}}g[f++]=b}return g},Nn.prototype.at=ns,Nn.prototype.chain=function(){return ts(this)},Nn.prototype.commit=function(){return new An(this.value(),this.__chain__)},Nn.prototype.next=function(){void 0===this.__values__&&(this.__values__=tu(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?void 0:this.__values__[this.__index__++]}},Nn.prototype.plant=function(t){for(var e,n=this;n instanceof Rn;){var a=Ni(n);a.__index__=0,a.__values__=void 0,e?r.__wrapped__=a:e=a;var r=a;n=n.__wrapped__}return r.__wrapped__=t,e},Nn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof kn){var e=t;return this.__actions__.length&&(e=new kn(this)),(e=e.reverse()).__actions__.push({func:es,args:[Bi],thisArg:void 0}),new An(e,this.__chain__)}return this.thru(Bi)},Nn.prototype.toJSON=Nn.prototype.valueOf=Nn.prototype.value=function(){return tr(this.__wrapped__,this.__actions__)},Nn.prototype.first=Nn.prototype.head,we&&(Nn.prototype[we]=function(){return this}),Nn}();Yt._=He,void 0===(a=(function(){return He}).call(e,n,e,t))||(t.exports=a)}).call(this)}).call(this,n("YuTi")(t))},LxgN:function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(e(t[n],n,t))return!0;return!1}},"M+Mf":function(t,e,n){var a=n("rk81"),r=n("IfUl"),i=n("PjNX"),s=n("02OF"),u=n("hmSm"),o=n("MBcj"),l=n("dCge");t.exports=function t(e,n,d,c,f){e!==n&&i(n,(function(i,o){if(f||(f=new a),u(i))s(e,n,o,d,t,c,f);else{var h=c?c(l(e,o),i,o+"",e,n,f):void 0;void 0===h&&(h=i),r(e,o,h)}}),o)}},MBcj:function(t,e,n){var a=n("pmjB"),r=n("6eui"),i=n("im1V");t.exports=function(t){return i(t)?a(t,!0):r(t)}},"MO+k":function(t,e,n){t.exports=function(t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var e={rgb2hsl:n,rgb2hsv:a,rgb2hwb:i,rgb2cmyk:s,rgb2keyword:u,rgb2xyz:o,rgb2lab:l,rgb2lch:function(t){return v(l(t))},hsl2rgb:d,hsl2hsv:function(t){var e=t[1]/100,n=t[2]/100;return 0===n?[0,0,0]:[t[0],2*(e*=(n*=2)<=1?n:2-n)/(n+e)*100,(n+e)/2*100]},hsl2hwb:function(t){return i(d(t))},hsl2cmyk:function(t){return s(d(t))},hsl2keyword:function(t){return u(d(t))},hsv2rgb:c,hsv2hsl:function(t){var e,n,a=t[1]/100,r=t[2]/100;return e=a*r,[t[0],100*(e=(e/=(n=(2-a)*r)<=1?n:2-n)||0),100*(n/=2)]},hsv2hwb:function(t){return i(c(t))},hsv2cmyk:function(t){return s(c(t))},hsv2keyword:function(t){return u(c(t))},hwb2rgb:f,hwb2hsl:function(t){return n(f(t))},hwb2hsv:function(t){return a(f(t))},hwb2cmyk:function(t){return s(f(t))},hwb2keyword:function(t){return u(f(t))},cmyk2rgb:h,cmyk2hsl:function(t){return n(h(t))},cmyk2hsv:function(t){return a(h(t))},cmyk2hwb:function(t){return i(h(t))},cmyk2keyword:function(t){return u(h(t))},keyword2rgb:T,keyword2hsl:function(t){return n(T(t))},keyword2hsv:function(t){return a(T(t))},keyword2hwb:function(t){return i(T(t))},keyword2cmyk:function(t){return s(T(t))},keyword2lab:function(t){return l(T(t))},keyword2xyz:function(t){return o(T(t))},xyz2rgb:p,xyz2lab:m,xyz2lch:function(t){return v(m(t))},lab2xyz:y,lab2rgb:x,lab2lch:v,lch2lab:_,lch2xyz:function(t){return y(_(t))},lch2rgb:function(t){return x(_(t))}};function n(t){var e,n,a=t[0]/255,r=t[1]/255,i=t[2]/255,s=Math.min(a,r,i),u=Math.max(a,r,i),o=u-s;return u==s?e=0:a==u?e=(r-i)/o:r==u?e=2+(i-a)/o:i==u&&(e=4+(a-r)/o),(e=Math.min(60*e,360))<0&&(e+=360),n=(s+u)/2,[e,100*(u==s?0:n<=.5?o/(u+s):o/(2-u-s)),100*n]}function a(t){var e,n,a=t[0],r=t[1],i=t[2],s=Math.min(a,r,i),u=Math.max(a,r,i),o=u-s;return n=0==u?0:o/u*1e3/10,u==s?e=0:a==u?e=(r-i)/o:r==u?e=2+(i-a)/o:i==u&&(e=4+(a-r)/o),(e=Math.min(60*e,360))<0&&(e+=360),[e,n,u/255*1e3/10]}function i(t){var e=t[0],a=t[1],r=t[2];return[n(t)[0],1/255*Math.min(e,Math.min(a,r))*100,100*(r=1-1/255*Math.max(e,Math.max(a,r)))]}function s(t){var e,n=t[0]/255,a=t[1]/255,r=t[2]/255;return[100*((1-n-(e=Math.min(1-n,1-a,1-r)))/(1-e)||0),100*((1-a-e)/(1-e)||0),100*((1-r-e)/(1-e)||0),100*e]}function u(t){return O[JSON.stringify(t)]}function o(t){var e=t[0]/255,n=t[1]/255,a=t[2]/255;return[100*(.4124*(e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92)+.3576*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)+.1805*(a=a>.04045?Math.pow((a+.055)/1.055,2.4):a/12.92)),100*(.2126*e+.7152*n+.0722*a),100*(.0193*e+.1192*n+.9505*a)]}function l(t){var e=o(t),n=e[0],a=e[1],r=e[2];return a/=100,r/=108.883,n=(n/=95.047)>.008856?Math.pow(n,1/3):7.787*n+16/116,[116*(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116)-16,500*(n-a),200*(a-(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116))]}function d(t){var e,n,a,r,i,s=t[0]/360,u=t[1]/100,o=t[2]/100;if(0==u)return[i=255*o,i,i];e=2*o-(n=o<.5?o*(1+u):o+u-o*u),r=[0,0,0];for(var l=0;l<3;l++)(a=s+1/3*-(l-1))<0&&a++,a>1&&a--,r[l]=255*(i=6*a<1?e+6*(n-e)*a:2*a<1?n:3*a<2?e+(n-e)*(2/3-a)*6:e);return r}function c(t){var e=t[0]/60,n=t[1]/100,a=t[2]/100,r=Math.floor(e)%6,i=e-Math.floor(e),s=255*a*(1-n),u=255*a*(1-n*i),o=255*a*(1-n*(1-i));switch(a*=255,r){case 0:return[a,o,s];case 1:return[u,a,s];case 2:return[s,a,o];case 3:return[s,u,a];case 4:return[o,s,a];case 5:return[a,s,u]}}function f(t){var e,n,a,i,s=t[0]/360,u=t[1]/100,o=t[2]/100,l=u+o;switch(l>1&&(u/=l,o/=l),a=6*s-(e=Math.floor(6*s)),0!=(1&e)&&(a=1-a),i=u+a*((n=1-o)-u),e){default:case 6:case 0:r=n,g=i,b=u;break;case 1:r=i,g=n,b=u;break;case 2:r=u,g=n,b=i;break;case 3:r=u,g=i,b=n;break;case 4:r=i,g=u,b=n;break;case 5:r=n,g=u,b=i}return[255*r,255*g,255*b]}function h(t){var e=t[1]/100,n=t[2]/100,a=t[3]/100;return[255*(1-Math.min(1,t[0]/100*(1-a)+a)),255*(1-Math.min(1,e*(1-a)+a)),255*(1-Math.min(1,n*(1-a)+a))]}function p(t){var e,n,a,r=t[0]/100,i=t[1]/100,s=t[2]/100;return n=-.9689*r+1.8758*i+.0415*s,a=.0557*r+-.204*i+1.057*s,e=(e=3.2406*r+-1.5372*i+-.4986*s)>.0031308?1.055*Math.pow(e,1/2.4)-.055:e*=12.92,n=n>.0031308?1.055*Math.pow(n,1/2.4)-.055:n*=12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*=12.92,[255*(e=Math.min(Math.max(0,e),1)),255*(n=Math.min(Math.max(0,n),1)),255*(a=Math.min(Math.max(0,a),1))]}function m(t){var e=t[0],n=t[1],a=t[2];return n/=100,a/=108.883,e=(e/=95.047)>.008856?Math.pow(e,1/3):7.787*e+16/116,[116*(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116)-16,500*(e-n),200*(n-(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116))]}function y(t){var e,n,a,r,i=t[0],s=t[1],u=t[2];return i<=8?r=(n=100*i/903.3)/100*7.787+16/116:(n=100*Math.pow((i+16)/116,3),r=Math.pow(n/100,1/3)),[e=e/95.047<=.008856?e=95.047*(s/500+r-16/116)/7.787:95.047*Math.pow(s/500+r,3),n,a=a/108.883<=.008859?a=108.883*(r-u/200-16/116)/7.787:108.883*Math.pow(r-u/200,3)]}function v(t){var e,n=t[0],a=t[1],r=t[2];return(e=360*Math.atan2(r,a)/2/Math.PI)<0&&(e+=360),[n,Math.sqrt(a*a+r*r),e]}function x(t){return p(y(t))}function _(t){var e,n=t[1];return e=t[2]/360*2*Math.PI,[t[0],n*Math.cos(e),n*Math.sin(e)]}function T(t){return w[t]}var w={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},O={};for(var S in w)O[JSON.stringify(w[S])]=S;var I=function(){return new k};for(var N in e){I[N+"Raw"]=function(t){return function(n){return"number"==typeof n&&(n=Array.prototype.slice.call(arguments)),e[t](n)}}(N);var C=/(\w+)2(\w+)/.exec(N),R=C[1],A=C[2];(I[R]=I[R]||{})[A]=I[N]=function(t){return function(n){"number"==typeof n&&(n=Array.prototype.slice.call(arguments));var a=e[t](n);if("string"==typeof a||void 0===a)return a;for(var r=0;r<a.length;r++)a[r]=Math.round(a[r]);return a}}(N)}var k=function(){this.convs={}};k.prototype.routeSpace=function(t,e){var n=e[0];return void 0===n?this.getValues(t):("number"==typeof n&&(n=Array.prototype.slice.call(e)),this.setValues(t,n))},k.prototype.setValues=function(t,e){return this.space=t,this.convs={},this.convs[t]=e,this},k.prototype.getValues=function(t){var e=this.convs[t];if(!e){var n=this.space;e=I[n][t](this.convs[n]),this.convs[t]=e}return e},["rgb","hsl","hsv","cmyk","keyword"].forEach((function(t){k.prototype[t]=function(e){return this.routeSpace(t,arguments)}}));var E=I,L={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},D={getRgba:P,getHsla:M,getRgb:function(t){var e=P(t);return e&&e.slice(0,3)},getHsl:function(t){var e=M(t);return e&&e.slice(0,3)},getHwb:q,getAlpha:function(t){var e=P(t);return e||(e=M(t))||(e=q(t))?e[3]:void 0},hexString:function(t,e){return e=void 0!==e&&3===t.length?e:t[3],"#"+B(t[0])+B(t[1])+B(t[2])+(e>=0&&e<1?B(Math.round(255*e)):"")},rgbString:function(t,e){return e<1||t[3]&&t[3]<1?j(t,e):"rgb("+t[0]+", "+t[1]+", "+t[2]+")"},rgbaString:j,percentString:function(t,e){return e<1||t[3]&&t[3]<1?F(t,e):"rgb("+Math.round(t[0]/255*100)+"%, "+Math.round(t[1]/255*100)+"%, "+Math.round(t[2]/255*100)+"%)"},percentaString:F,hslString:function(t,e){return e<1||t[3]&&t[3]<1?V(t,e):"hsl("+t[0]+", "+t[1]+"%, "+t[2]+"%)"},hslaString:V,hwbString:function(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"hwb("+t[0]+", "+t[1]+"%, "+t[2]+"%"+(void 0!==e&&1!==e?", "+e:"")+")"},keyword:function(t){return z[t.slice(0,3)]}};function P(t){if(t){var e=[0,0,0],n=1,a=t.match(/^#([a-fA-F0-9]{3,4})$/i),r="";if(a){r=(a=a[1])[3];for(var i=0;i<e.length;i++)e[i]=parseInt(a[i]+a[i],16);r&&(n=Math.round(parseInt(r+r,16)/255*100)/100)}else if(a=t.match(/^#([a-fA-F0-9]{6}([a-fA-F0-9]{2})?)$/i)){for(r=a[2],a=a[1],i=0;i<e.length;i++)e[i]=parseInt(a.slice(2*i,2*i+2),16);r&&(n=Math.round(parseInt(r,16)/255*100)/100)}else if(a=t.match(/^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)){for(i=0;i<e.length;i++)e[i]=parseInt(a[i+1]);n=parseFloat(a[4])}else if(a=t.match(/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)){for(i=0;i<e.length;i++)e[i]=Math.round(2.55*parseFloat(a[i+1]));n=parseFloat(a[4])}else if(a=t.match(/(\w+)/)){if("transparent"==a[1])return[0,0,0,0];if(!(e=L[a[1]]))return}for(i=0;i<e.length;i++)e[i]=G(e[i],0,255);return n=n||0==n?G(n,0,1):1,e[3]=n,e}}function M(t){if(t){var e=t.match(/^hsla?\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/);if(e){var n=parseFloat(e[4]);return[G(parseInt(e[1]),0,360),G(parseFloat(e[2]),0,100),G(parseFloat(e[3]),0,100),G(isNaN(n)?1:n,0,1)]}}}function q(t){if(t){var e=t.match(/^hwb\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/);if(e){var n=parseFloat(e[4]);return[G(parseInt(e[1]),0,360),G(parseFloat(e[2]),0,100),G(parseFloat(e[3]),0,100),G(isNaN(n)?1:n,0,1)]}}}function j(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"rgba("+t[0]+", "+t[1]+", "+t[2]+", "+e+")"}function F(t,e){return"rgba("+Math.round(t[0]/255*100)+"%, "+Math.round(t[1]/255*100)+"%, "+Math.round(t[2]/255*100)+"%, "+(e||t[3]||1)+")"}function V(t,e){return void 0===e&&(e=void 0!==t[3]?t[3]:1),"hsla("+t[0]+", "+t[1]+"%, "+t[2]+"%, "+e+")"}function G(t,e,n){return Math.min(Math.max(e,t),n)}function B(t){var e=t.toString(16).toUpperCase();return e.length<2?"0"+e:e}var z={};for(var Y in L)z[L[Y]]=Y;var H=function(t){return t instanceof H?t:this instanceof H?(this.valid=!1,this.values={rgb:[0,0,0],hsl:[0,0,0],hsv:[0,0,0],hwb:[0,0,0],cmyk:[0,0,0,0],alpha:1},void("string"==typeof t?(e=D.getRgba(t))?this.setValues("rgb",e):(e=D.getHsla(t))?this.setValues("hsl",e):(e=D.getHwb(t))&&this.setValues("hwb",e):"object"==typeof t&&(void 0!==(e=t).r||void 0!==e.red?this.setValues("rgb",e):void 0!==e.l||void 0!==e.lightness?this.setValues("hsl",e):void 0!==e.v||void 0!==e.value?this.setValues("hsv",e):void 0!==e.w||void 0!==e.whiteness?this.setValues("hwb",e):void 0===e.c&&void 0===e.cyan||this.setValues("cmyk",e)))):new H(t);var e};H.prototype={isValid:function(){return this.valid},rgb:function(){return this.setSpace("rgb",arguments)},hsl:function(){return this.setSpace("hsl",arguments)},hsv:function(){return this.setSpace("hsv",arguments)},hwb:function(){return this.setSpace("hwb",arguments)},cmyk:function(){return this.setSpace("cmyk",arguments)},rgbArray:function(){return this.values.rgb},hslArray:function(){return this.values.hsl},hsvArray:function(){return this.values.hsv},hwbArray:function(){var t=this.values;return 1!==t.alpha?t.hwb.concat([t.alpha]):t.hwb},cmykArray:function(){return this.values.cmyk},rgbaArray:function(){var t=this.values;return t.rgb.concat([t.alpha])},hslaArray:function(){var t=this.values;return t.hsl.concat([t.alpha])},alpha:function(t){return void 0===t?this.values.alpha:(this.setValues("alpha",t),this)},red:function(t){return this.setChannel("rgb",0,t)},green:function(t){return this.setChannel("rgb",1,t)},blue:function(t){return this.setChannel("rgb",2,t)},hue:function(t){return t&&(t=(t%=360)<0?360+t:t),this.setChannel("hsl",0,t)},saturation:function(t){return this.setChannel("hsl",1,t)},lightness:function(t){return this.setChannel("hsl",2,t)},saturationv:function(t){return this.setChannel("hsv",1,t)},whiteness:function(t){return this.setChannel("hwb",1,t)},blackness:function(t){return this.setChannel("hwb",2,t)},value:function(t){return this.setChannel("hsv",2,t)},cyan:function(t){return this.setChannel("cmyk",0,t)},magenta:function(t){return this.setChannel("cmyk",1,t)},yellow:function(t){return this.setChannel("cmyk",2,t)},black:function(t){return this.setChannel("cmyk",3,t)},hexString:function(){return D.hexString(this.values.rgb)},rgbString:function(){return D.rgbString(this.values.rgb,this.values.alpha)},rgbaString:function(){return D.rgbaString(this.values.rgb,this.values.alpha)},percentString:function(){return D.percentString(this.values.rgb,this.values.alpha)},hslString:function(){return D.hslString(this.values.hsl,this.values.alpha)},hslaString:function(){return D.hslaString(this.values.hsl,this.values.alpha)},hwbString:function(){return D.hwbString(this.values.hwb,this.values.alpha)},keyword:function(){return D.keyword(this.values.rgb,this.values.alpha)},rgbNumber:function(){var t=this.values.rgb;return t[0]<<16|t[1]<<8|t[2]},luminosity:function(){for(var t=this.values.rgb,e=[],n=0;n<t.length;n++){var a=t[n]/255;e[n]=a<=.03928?a/12.92:Math.pow((a+.055)/1.055,2.4)}return.2126*e[0]+.7152*e[1]+.0722*e[2]},contrast:function(t){var e=this.luminosity(),n=t.luminosity();return e>n?(e+.05)/(n+.05):(n+.05)/(e+.05)},level:function(t){var e=this.contrast(t);return e>=7.1?"AAA":e>=4.5?"AA":""},dark:function(){var t=this.values.rgb;return(299*t[0]+587*t[1]+114*t[2])/1e3<128},light:function(){return!this.dark()},negate:function(){for(var t=[],e=0;e<3;e++)t[e]=255-this.values.rgb[e];return this.setValues("rgb",t),this},lighten:function(t){var e=this.values.hsl;return e[2]+=e[2]*t,this.setValues("hsl",e),this},darken:function(t){var e=this.values.hsl;return e[2]-=e[2]*t,this.setValues("hsl",e),this},saturate:function(t){var e=this.values.hsl;return e[1]+=e[1]*t,this.setValues("hsl",e),this},desaturate:function(t){var e=this.values.hsl;return e[1]-=e[1]*t,this.setValues("hsl",e),this},whiten:function(t){var e=this.values.hwb;return e[1]+=e[1]*t,this.setValues("hwb",e),this},blacken:function(t){var e=this.values.hwb;return e[2]+=e[2]*t,this.setValues("hwb",e),this},greyscale:function(){var t=this.values.rgb,e=.3*t[0]+.59*t[1]+.11*t[2];return this.setValues("rgb",[e,e,e]),this},clearer:function(t){var e=this.values.alpha;return this.setValues("alpha",e-e*t),this},opaquer:function(t){var e=this.values.alpha;return this.setValues("alpha",e+e*t),this},rotate:function(t){var e=this.values.hsl,n=(e[0]+t)%360;return e[0]=n<0?360+n:n,this.setValues("hsl",e),this},mix:function(t,e){var n=t,a=void 0===e?.5:e,r=2*a-1,i=this.alpha()-n.alpha(),s=((r*i==-1?r:(r+i)/(1+r*i))+1)/2,u=1-s;return this.rgb(s*this.red()+u*n.red(),s*this.green()+u*n.green(),s*this.blue()+u*n.blue()).alpha(this.alpha()*a+n.alpha()*(1-a))},toJSON:function(){return this.rgb()},clone:function(){var t,e,n=new H,a=this.values,r=n.values;for(var i in a)a.hasOwnProperty(i)&&("[object Array]"===(e={}.toString.call(t=a[i]))?r[i]=t.slice(0):"[object Number]"===e?r[i]=t:console.error("unexpected color value:",t));return n}},H.prototype.spaces={rgb:["red","green","blue"],hsl:["hue","saturation","lightness"],hsv:["hue","saturation","value"],hwb:["hue","whiteness","blackness"],cmyk:["cyan","magenta","yellow","black"]},H.prototype.maxes={rgb:[255,255,255],hsl:[360,100,100],hsv:[360,100,100],hwb:[360,100,100],cmyk:[100,100,100,100]},H.prototype.getValues=function(t){for(var e=this.values,n={},a=0;a<t.length;a++)n[t.charAt(a)]=e[t][a];return 1!==e.alpha&&(n.a=e.alpha),n},H.prototype.setValues=function(t,e){var n,a,r=this.values,i=this.spaces,s=this.maxes,u=1;if(this.valid=!0,"alpha"===t)u=e;else if(e.length)r[t]=e.slice(0,t.length),u=e[t.length];else if(void 0!==e[t.charAt(0)]){for(n=0;n<t.length;n++)r[t][n]=e[t.charAt(n)];u=e.a}else if(void 0!==e[i[t][0]]){var o=i[t];for(n=0;n<t.length;n++)r[t][n]=e[o[n]];u=e.alpha}if(r.alpha=Math.max(0,Math.min(1,void 0===u?r.alpha:u)),"alpha"===t)return!1;for(n=0;n<t.length;n++)a=Math.max(0,Math.min(s[t][n],r[t][n])),r[t][n]=Math.round(a);for(var l in i)l!==t&&(r[l]=E[t][l](r[t]));return!0},H.prototype.setSpace=function(t,e){var n=e[0];return void 0===n?this.getValues(t):("number"==typeof n&&(n=Array.prototype.slice.call(e)),this.setValues(t,n),this)},H.prototype.setChannel=function(t,e,n){var a=this.values[t];return void 0===n?a[e]:(n===a[e]||(a[e]=n,this.setValues(t,a)),this)},"undefined"!=typeof window&&(window.Color=H);var U,W=H,K={noop:function(){},uid:(U=0,function(){return U++}),isNullOrUndef:function(t){return null==t},isArray:function(t){if(Array.isArray&&Array.isArray(t))return!0;var e=Object.prototype.toString.call(t);return"[object"===e.substr(0,7)&&"Array]"===e.substr(-6)},isObject:function(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)},isFinite:function(t){return("number"==typeof t||t instanceof Number)&&isFinite(t)},valueOrDefault:function(t,e){return void 0===t?e:t},valueAtIndexOrDefault:function(t,e,n){return K.valueOrDefault(K.isArray(t)?t[e]:t,n)},callback:function(t,e,n){if(t&&"function"==typeof t.call)return t.apply(n,e)},each:function(t,e,n,a){var r,i,s;if(K.isArray(t))if(i=t.length,a)for(r=i-1;r>=0;r--)e.call(n,t[r],r);else for(r=0;r<i;r++)e.call(n,t[r],r);else if(K.isObject(t))for(i=(s=Object.keys(t)).length,r=0;r<i;r++)e.call(n,t[s[r]],s[r])},arrayEquals:function(t,e){var n,a,r,i;if(!t||!e||t.length!==e.length)return!1;for(n=0,a=t.length;n<a;++n)if(i=e[n],(r=t[n])instanceof Array&&i instanceof Array){if(!K.arrayEquals(r,i))return!1}else if(r!==i)return!1;return!0},clone:function(t){if(K.isArray(t))return t.map(K.clone);if(K.isObject(t)){for(var e={},n=Object.keys(t),a=n.length,r=0;r<a;++r)e[n[r]]=K.clone(t[n[r]]);return e}return t},_merger:function(t,e,n,a){var r=e[t],i=n[t];K.isObject(r)&&K.isObject(i)?K.merge(r,i,a):e[t]=K.clone(i)},_mergerIf:function(t,e,n){var a=e[t],r=n[t];K.isObject(a)&&K.isObject(r)?K.mergeIf(a,r):e.hasOwnProperty(t)||(e[t]=K.clone(r))},merge:function(t,e,n){var a,r,i,s,u,o=K.isArray(e)?e:[e],l=o.length;if(!K.isObject(t))return t;for(a=(n=n||{}).merger||K._merger,r=0;r<l;++r)if(K.isObject(e=o[r]))for(u=0,s=(i=Object.keys(e)).length;u<s;++u)a(i[u],t,e,n);return t},mergeIf:function(t,e){return K.merge(t,e,{merger:K._mergerIf})},extend:function(t){for(var e=function(e,n){t[n]=e},n=1,a=arguments.length;n<a;++n)K.each(arguments[n],e);return t},inherits:function(t){var e=this,n=t&&t.hasOwnProperty("constructor")?t.constructor:function(){return e.apply(this,arguments)},a=function(){this.constructor=n};return a.prototype=e.prototype,n.prototype=new a,n.extend=K.inherits,t&&K.extend(n.prototype,t),n.__super__=e.prototype,n}},$=K;K.callCallback=K.callback,K.indexOf=function(t,e,n){return Array.prototype.indexOf.call(t,e,n)},K.getValueOrDefault=K.valueOrDefault,K.getValueAtIndexOrDefault=K.valueAtIndexOrDefault;var Z={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return-t*(t-2)},easeInOutQuad:function(t){return(t/=.5)<1?.5*t*t:-.5*(--t*(t-2)-1)},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return(t-=1)*t*t+1},easeInOutCubic:function(t){return(t/=.5)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return-((t-=1)*t*t*t-1)},easeInOutQuart:function(t){return(t/=.5)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return(t-=1)*t*t*t*t+1},easeInOutQuint:function(t){return(t/=.5)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},easeInSine:function(t){return 1-Math.cos(t*(Math.PI/2))},easeOutSine:function(t){return Math.sin(t*(Math.PI/2))},easeInOutSine:function(t){return-.5*(Math.cos(Math.PI*t)-1)},easeInExpo:function(t){return 0===t?0:Math.pow(2,10*(t-1))},easeOutExpo:function(t){return 1===t?1:1-Math.pow(2,-10*t)},easeInOutExpo:function(t){return 0===t?0:1===t?1:(t/=.5)<1?.5*Math.pow(2,10*(t-1)):.5*(2-Math.pow(2,-10*--t))},easeInCirc:function(t){return t>=1?t:-(Math.sqrt(1-t*t)-1)},easeOutCirc:function(t){return Math.sqrt(1-(t-=1)*t)},easeInOutCirc:function(t){return(t/=.5)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},easeInElastic:function(t){var e=1.70158,n=0,a=1;return 0===t?0:1===t?1:(n||(n=.3),a<1?(a=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/a),-a*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n))},easeOutElastic:function(t){var e=1.70158,n=0,a=1;return 0===t?0:1===t?1:(n||(n=.3),a<1?(a=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/a),a*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/n)+1)},easeInOutElastic:function(t){var e=1.70158,n=0,a=1;return 0===t?0:2==(t/=.5)?1:(n||(n=.45),a<1?(a=1,e=n/4):e=n/(2*Math.PI)*Math.asin(1/a),t<1?a*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n)*-.5:a*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/n)*.5+1)},easeInBack:function(t){var e=1.70158;return t*t*((e+1)*t-e)},easeOutBack:function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},easeInOutBack:function(t){var e=1.70158;return(t/=.5)<1?t*t*((1+(e*=1.525))*t-e)*.5:.5*((t-=2)*t*((1+(e*=1.525))*t+e)+2)},easeInBounce:function(t){return 1-Z.easeOutBounce(1-t)},easeOutBounce:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},easeInOutBounce:function(t){return t<.5?.5*Z.easeInBounce(2*t):.5*Z.easeOutBounce(2*t-1)+.5}},J={effects:Z};$.easingEffects=Z;var Q=Math.PI,X=Q/180,tt=2*Q,et=Q/2,nt=Q/4,at=2*Q/3,rt={clear:function(t){t.ctx.clearRect(0,0,t.width,t.height)},roundedRect:function(t,e,n,a,r,i){if(i){var s=Math.min(i,r/2,a/2),u=e+s,o=n+s,l=e+a-s,d=n+r-s;t.moveTo(e,o),u<l&&o<d?(t.arc(u,o,s,-Q,-et),t.arc(l,o,s,-et,0),t.arc(l,d,s,0,et),t.arc(u,d,s,et,Q)):u<l?(t.moveTo(u,n),t.arc(l,o,s,-et,et),t.arc(u,o,s,et,Q+et)):o<d?(t.arc(u,o,s,-Q,0),t.arc(u,d,s,0,Q)):t.arc(u,o,s,-Q,Q),t.closePath(),t.moveTo(e,n)}else t.rect(e,n,a,r)},drawPoint:function(t,e,n,a,r,i){var s,u,o,l,d,c=(i||0)*X;if(!e||"object"!=typeof e||"[object HTMLImageElement]"!==(s=e.toString())&&"[object HTMLCanvasElement]"!==s){if(!(isNaN(n)||n<=0)){switch(t.beginPath(),e){default:t.arc(a,r,n,0,tt),t.closePath();break;case"triangle":t.moveTo(a+Math.sin(c)*n,r-Math.cos(c)*n),c+=at,t.lineTo(a+Math.sin(c)*n,r-Math.cos(c)*n),c+=at,t.lineTo(a+Math.sin(c)*n,r-Math.cos(c)*n),t.closePath();break;case"rectRounded":l=n-(d=.516*n),u=Math.cos(c+nt)*l,o=Math.sin(c+nt)*l,t.arc(a-u,r-o,d,c-Q,c-et),t.arc(a+o,r-u,d,c-et,c),t.arc(a+u,r+o,d,c,c+et),t.arc(a-o,r+u,d,c+et,c+Q),t.closePath();break;case"rect":if(!i){l=Math.SQRT1_2*n,t.rect(a-l,r-l,2*l,2*l);break}c+=nt;case"rectRot":u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+o,r-u),t.lineTo(a+u,r+o),t.lineTo(a-o,r+u),t.closePath();break;case"crossRot":c+=nt;case"cross":u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+u,r+o),t.moveTo(a+o,r-u),t.lineTo(a-o,r+u);break;case"star":u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+u,r+o),t.moveTo(a+o,r-u),t.lineTo(a-o,r+u),c+=nt,u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+u,r+o),t.moveTo(a+o,r-u),t.lineTo(a-o,r+u);break;case"line":u=Math.cos(c)*n,o=Math.sin(c)*n,t.moveTo(a-u,r-o),t.lineTo(a+u,r+o);break;case"dash":t.moveTo(a,r),t.lineTo(a+Math.cos(c)*n,r+Math.sin(c)*n)}t.fill(),t.stroke()}}else t.drawImage(e,a-e.width/2,r-e.height/2,e.width,e.height)},_isPointInArea:function(t,e){return t.x>e.left-1e-6&&t.x<e.right+1e-6&&t.y>e.top-1e-6&&t.y<e.bottom+1e-6},clipArea:function(t,e){t.save(),t.beginPath(),t.rect(e.left,e.top,e.right-e.left,e.bottom-e.top),t.clip()},unclipArea:function(t){t.restore()},lineTo:function(t,e,n,a){var r=n.steppedLine;if(r){if("middle"===r){var i=(e.x+n.x)/2;t.lineTo(i,a?n.y:e.y),t.lineTo(i,a?e.y:n.y)}else"after"===r&&!a||"after"!==r&&a?t.lineTo(e.x,n.y):t.lineTo(n.x,e.y);t.lineTo(n.x,n.y)}else n.tension?t.bezierCurveTo(a?e.controlPointPreviousX:e.controlPointNextX,a?e.controlPointPreviousY:e.controlPointNextY,a?n.controlPointNextX:n.controlPointPreviousX,a?n.controlPointNextY:n.controlPointPreviousY,n.x,n.y):t.lineTo(n.x,n.y)}},it=rt;$.clear=rt.clear,$.drawRoundedRectangle=function(t){t.beginPath(),rt.roundedRect.apply(rt,arguments)};var st={_set:function(t,e){return $.merge(this[t]||(this[t]={}),e)}};st._set("global",{defaultColor:"rgba(0,0,0,0.1)",defaultFontColor:"#666",defaultFontFamily:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",defaultFontSize:12,defaultFontStyle:"normal",defaultLineHeight:1.2,showLines:!0});var ut=st,ot=$.valueOrDefault,lt={toLineHeight:function(t,e){var n=(""+t).match(/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/);if(!n||"normal"===n[1])return 1.2*e;switch(t=+n[2],n[3]){case"px":return t;case"%":t/=100}return e*t},toPadding:function(t){var e,n,a,r;return $.isObject(t)?(e=+t.top||0,n=+t.right||0,a=+t.bottom||0,r=+t.left||0):e=n=a=r=+t||0,{top:e,right:n,bottom:a,left:r,height:e+a,width:r+n}},_parseFont:function(t){var e=ut.global,n=ot(t.fontSize,e.defaultFontSize),a={family:ot(t.fontFamily,e.defaultFontFamily),lineHeight:$.options.toLineHeight(ot(t.lineHeight,e.defaultLineHeight),n),size:n,style:ot(t.fontStyle,e.defaultFontStyle),weight:null,string:""};return a.string=function(t){return!t||$.isNullOrUndef(t.size)||$.isNullOrUndef(t.family)?null:(t.style?t.style+" ":"")+(t.weight?t.weight+" ":"")+t.size+"px "+t.family}(a),a},resolve:function(t,e,n){var a,r,i;for(a=0,r=t.length;a<r;++a)if(void 0!==(i=t[a])&&(void 0!==e&&"function"==typeof i&&(i=i(e)),void 0!==n&&$.isArray(i)&&(i=i[n]),void 0!==i))return i}},dt=$,ct=it,ft=lt;dt.easing=J,dt.canvas=ct,dt.options=ft;var ht=function(t){dt.extend(this,t),this.initialize.apply(this,arguments)};dt.extend(ht.prototype,{initialize:function(){this.hidden=!1},pivot:function(){var t=this;return t._view||(t._view=dt.clone(t._model)),t._start={},t},transition:function(t){var e=this,n=e._model,a=e._start,r=e._view;return n&&1!==t?(r||(r=e._view={}),a||(a=e._start={}),function(t,e,n,a){var r,i,s,u,o,l,d,c,f,h=Object.keys(n);for(r=0,i=h.length;r<i;++r)if(l=n[s=h[r]],e.hasOwnProperty(s)||(e[s]=l),(u=e[s])!==l&&"_"!==s[0]){if(t.hasOwnProperty(s)||(t[s]=u),(d=typeof l)==typeof(o=t[s]))if("string"===d){if((c=W(o)).valid&&(f=W(l)).valid){e[s]=f.mix(c,a).rgbString();continue}}else if(dt.isFinite(o)&&dt.isFinite(l)){e[s]=o+(l-o)*a;continue}e[s]=l}}(a,r,n,t),e):(e._view=n,e._start=null,e)},tooltipPosition:function(){return{x:this._model.x,y:this._model.y}},hasValue:function(){return dt.isNumber(this._model.x)&&dt.isNumber(this._model.y)}}),ht.extend=dt.inherits;var gt=ht,pt=gt.extend({chart:null,currentStep:0,numSteps:60,easing:"",render:null,onAnimationProgress:null,onAnimationComplete:null}),bt=pt;Object.defineProperty(pt.prototype,"animationObject",{get:function(){return this}}),Object.defineProperty(pt.prototype,"chartInstance",{get:function(){return this.chart},set:function(t){this.chart=t}}),ut._set("global",{animation:{duration:1e3,easing:"easeOutQuart",onProgress:dt.noop,onComplete:dt.noop}});var mt={animations:[],request:null,addAnimation:function(t,e,n,a){var r,i,s=this.animations;for(e.chart=t,e.startTime=Date.now(),e.duration=n,a||(t.animating=!0),r=0,i=s.length;r<i;++r)if(s[r].chart===t)return void(s[r]=e);s.push(e),1===s.length&&this.requestAnimationFrame()},cancelAnimation:function(t){var e=dt.findIndex(this.animations,(function(e){return e.chart===t}));-1!==e&&(this.animations.splice(e,1),t.animating=!1)},requestAnimationFrame:function(){var t=this;null===t.request&&(t.request=dt.requestAnimFrame.call(window,(function(){t.request=null,t.startDigest()})))},startDigest:function(){this.advance(),this.animations.length>0&&this.requestAnimationFrame()},advance:function(){for(var t,e,n,a,r=this.animations,i=0;i<r.length;)e=(t=r[i]).chart,n=t.numSteps,a=Math.floor((Date.now()-t.startTime)/t.duration*n)+1,t.currentStep=Math.min(a,n),dt.callback(t.render,[e,t],e),dt.callback(t.onAnimationProgress,[t],e),t.currentStep>=n?(dt.callback(t.onAnimationComplete,[t],e),e.animating=!1,r.splice(i,1)):++i}},yt=dt.options.resolve,vt=["push","pop","shift","splice","unshift"];function xt(t,e){var n=t._chartjs;if(n){var a=n.listeners,r=a.indexOf(e);-1!==r&&a.splice(r,1),a.length>0||(vt.forEach((function(e){delete t[e]})),delete t._chartjs)}}var _t=function(t,e){this.initialize(t,e)};dt.extend(_t.prototype,{datasetElementType:null,dataElementType:null,initialize:function(t,e){this.chart=t,this.index=e,this.linkScales(),this.addElements()},updateIndex:function(t){this.index=t},linkScales:function(){var t=this,e=t.getMeta(),n=t.getDataset();null!==e.xAxisID&&e.xAxisID in t.chart.scales||(e.xAxisID=n.xAxisID||t.chart.options.scales.xAxes[0].id),null!==e.yAxisID&&e.yAxisID in t.chart.scales||(e.yAxisID=n.yAxisID||t.chart.options.scales.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)},getScaleForId:function(t){return this.chart.scales[t]},_getValueScaleId:function(){return this.getMeta().yAxisID},_getIndexScaleId:function(){return this.getMeta().xAxisID},_getValueScale:function(){return this.getScaleForId(this._getValueScaleId())},_getIndexScale:function(){return this.getScaleForId(this._getIndexScaleId())},reset:function(){this.update(!0)},destroy:function(){this._data&&xt(this._data,this)},createMetaDataset:function(){var t=this.datasetElementType;return t&&new t({_chart:this.chart,_datasetIndex:this.index})},createMetaData:function(t){var e=this.dataElementType;return e&&new e({_chart:this.chart,_datasetIndex:this.index,_index:t})},addElements:function(){var t,e,n=this.getMeta(),a=this.getDataset().data||[],r=n.data;for(t=0,e=a.length;t<e;++t)r[t]=r[t]||this.createMetaData(t);n.dataset=n.dataset||this.createMetaDataset()},addElementAndReset:function(t){var e=this.createMetaData(t);this.getMeta().data.splice(t,0,e),this.updateElement(e,t,!0)},buildOrUpdateElements:function(){var t,e,n=this,a=n.getDataset(),r=a.data||(a.data=[]);n._data!==r&&(n._data&&xt(n._data,n),r&&Object.isExtensible(r)&&(e=n,(t=r)._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),vt.forEach((function(e){var n="onData"+e.charAt(0).toUpperCase()+e.slice(1),a=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value:function(){var e=Array.prototype.slice.call(arguments),r=a.apply(this,e);return dt.each(t._chartjs.listeners,(function(t){"function"==typeof t[n]&&t[n].apply(t,e)})),r}})})))),n._data=r),n.resyncElements()},update:dt.noop,transition:function(t){for(var e=this.getMeta(),n=e.data||[],a=n.length,r=0;r<a;++r)n[r].transition(t);e.dataset&&e.dataset.transition(t)},draw:function(){var t=this.getMeta(),e=t.data||[],n=e.length,a=0;for(t.dataset&&t.dataset.draw();a<n;++a)e[a].draw()},removeHoverStyle:function(t){dt.merge(t._model,t.$previousStyle||{}),delete t.$previousStyle},setHoverStyle:function(t){var e=this.chart.data.datasets[t._datasetIndex],n=t._index,a=t.custom||{},r=t._model,i=dt.getHoverColor;t.$previousStyle={backgroundColor:r.backgroundColor,borderColor:r.borderColor,borderWidth:r.borderWidth},r.backgroundColor=yt([a.hoverBackgroundColor,e.hoverBackgroundColor,i(r.backgroundColor)],void 0,n),r.borderColor=yt([a.hoverBorderColor,e.hoverBorderColor,i(r.borderColor)],void 0,n),r.borderWidth=yt([a.hoverBorderWidth,e.hoverBorderWidth,r.borderWidth],void 0,n)},resyncElements:function(){var t=this.getMeta(),e=this.getDataset().data,n=t.data.length,a=e.length;a<n?t.data.splice(a,n-a):a>n&&this.insertElements(n,a-n)},insertElements:function(t,e){for(var n=0;n<e;++n)this.addElementAndReset(t+n)},onDataPush:function(){var t=arguments.length;this.insertElements(this.getDataset().data.length-t,t)},onDataPop:function(){this.getMeta().data.pop()},onDataShift:function(){this.getMeta().data.shift()},onDataSplice:function(t,e){this.getMeta().data.splice(t,e),this.insertElements(t,arguments.length-2)},onDataUnshift:function(){this.insertElements(0,arguments.length)}}),_t.extend=dt.inherits;var Tt=_t;ut._set("global",{elements:{arc:{backgroundColor:ut.global.defaultColor,borderColor:"#fff",borderWidth:2,borderAlign:"center"}}});var wt=gt.extend({inLabelRange:function(t){var e=this._view;return!!e&&Math.pow(t-e.x,2)<Math.pow(e.radius+e.hoverRadius,2)},inRange:function(t,e){var n=this._view;if(n){for(var a=dt.getAngleFromPoint(n,{x:t,y:e}),r=a.angle,i=a.distance,s=n.startAngle,u=n.endAngle;u<s;)u+=2*Math.PI;for(;r>u;)r-=2*Math.PI;for(;r<s;)r+=2*Math.PI;return r>=s&&r<=u&&i>=n.innerRadius&&i<=n.outerRadius}return!1},getCenterPoint:function(){var t=this._view,e=(t.startAngle+t.endAngle)/2,n=(t.innerRadius+t.outerRadius)/2;return{x:t.x+Math.cos(e)*n,y:t.y+Math.sin(e)*n}},getArea:function(){var t=this._view;return Math.PI*((t.endAngle-t.startAngle)/(2*Math.PI))*(Math.pow(t.outerRadius,2)-Math.pow(t.innerRadius,2))},tooltipPosition:function(){var t=this._view,e=t.startAngle+(t.endAngle-t.startAngle)/2,n=(t.outerRadius-t.innerRadius)/2+t.innerRadius;return{x:t.x+Math.cos(e)*n,y:t.y+Math.sin(e)*n}},draw:function(){var t,e=this._chart.ctx,n=this._view,a=n.startAngle,r=n.endAngle,i="inner"===n.borderAlign?.33:0;e.save(),e.beginPath(),e.arc(n.x,n.y,Math.max(n.outerRadius-i,0),a,r),e.arc(n.x,n.y,n.innerRadius,r,a,!0),e.closePath(),e.fillStyle=n.backgroundColor,e.fill(),n.borderWidth&&("inner"===n.borderAlign?(e.beginPath(),e.arc(n.x,n.y,n.outerRadius,a-(t=i/n.outerRadius),r+t),n.innerRadius>i?e.arc(n.x,n.y,n.innerRadius-i,r+(t=i/n.innerRadius),a-t,!0):e.arc(n.x,n.y,i,r+Math.PI/2,a-Math.PI/2),e.closePath(),e.clip(),e.beginPath(),e.arc(n.x,n.y,n.outerRadius,a,r),e.arc(n.x,n.y,n.innerRadius,r,a,!0),e.closePath(),e.lineWidth=2*n.borderWidth,e.lineJoin="round"):(e.lineWidth=n.borderWidth,e.lineJoin="bevel"),e.strokeStyle=n.borderColor,e.stroke()),e.restore()}}),Ot=dt.valueOrDefault,St=ut.global.defaultColor;ut._set("global",{elements:{line:{tension:.4,backgroundColor:St,borderWidth:3,borderColor:St,borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",capBezierPoints:!0,fill:!0}}});var It=gt.extend({draw:function(){var t,e,n,a,r=this._view,i=this._chart.ctx,s=r.spanGaps,u=this._children.slice(),o=ut.global,l=o.elements.line,d=-1;for(this._loop&&u.length&&u.push(u[0]),i.save(),i.lineCap=r.borderCapStyle||l.borderCapStyle,i.setLineDash&&i.setLineDash(r.borderDash||l.borderDash),i.lineDashOffset=Ot(r.borderDashOffset,l.borderDashOffset),i.lineJoin=r.borderJoinStyle||l.borderJoinStyle,i.lineWidth=Ot(r.borderWidth,l.borderWidth),i.strokeStyle=r.borderColor||o.defaultColor,i.beginPath(),d=-1,t=0;t<u.length;++t)e=u[t],n=dt.previousItem(u,t),a=e._view,0===t?a.skip||(i.moveTo(a.x,a.y),d=t):(n=-1===d?n:u[d],a.skip||(d!==t-1&&!s||-1===d?i.moveTo(a.x,a.y):dt.canvas.lineTo(i,n._view,e._view),d=t));i.stroke(),i.restore()}}),Nt=dt.valueOrDefault,Ct=ut.global.defaultColor;function Rt(t){var e=this._view;return!!e&&Math.abs(t-e.x)<e.radius+e.hitRadius}ut._set("global",{elements:{point:{radius:3,pointStyle:"circle",backgroundColor:Ct,borderColor:Ct,borderWidth:1,hitRadius:1,hoverRadius:4,hoverBorderWidth:1}}});var At=gt.extend({inRange:function(t,e){var n=this._view;return!!n&&Math.pow(t-n.x,2)+Math.pow(e-n.y,2)<Math.pow(n.hitRadius+n.radius,2)},inLabelRange:Rt,inXRange:Rt,inYRange:function(t){var e=this._view;return!!e&&Math.abs(t-e.y)<e.radius+e.hitRadius},getCenterPoint:function(){var t=this._view;return{x:t.x,y:t.y}},getArea:function(){return Math.PI*Math.pow(this._view.radius,2)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y,padding:t.radius+t.borderWidth}},draw:function(t){var e=this._view,n=this._chart.ctx,a=e.pointStyle,r=e.rotation,i=e.radius,s=e.x,u=e.y,o=ut.global,l=o.defaultColor;e.skip||(void 0===t||dt.canvas._isPointInArea(e,t))&&(n.strokeStyle=e.borderColor||l,n.lineWidth=Nt(e.borderWidth,o.elements.point.borderWidth),n.fillStyle=e.backgroundColor||l,dt.canvas.drawPoint(n,a,i,s,u,r))}}),kt=ut.global.defaultColor;function Et(t){return t&&void 0!==t.width}function Lt(t){var e,n,a,r,i;return Et(t)?(e=t.x-(i=t.width/2),n=t.x+i,a=Math.min(t.y,t.base),r=Math.max(t.y,t.base)):(i=t.height/2,e=Math.min(t.x,t.base),n=Math.max(t.x,t.base),a=t.y-i,r=t.y+i),{left:e,top:a,right:n,bottom:r}}function Dt(t,e,n){return t===e?n:t===n?e:t}function Pt(t,e,n){var a=null===e,r=null===n,i=!(!t||a&&r)&&Lt(t);return i&&(a||e>=i.left&&e<=i.right)&&(r||n>=i.top&&n<=i.bottom)}ut._set("global",{elements:{rectangle:{backgroundColor:kt,borderColor:kt,borderSkipped:"bottom",borderWidth:0}}});var Mt=gt.extend({draw:function(){var t=this._chart.ctx,e=this._view,n=function(t){var e=Lt(t),n=e.right-e.left,a=e.bottom-e.top,r=function(t,e,n){var a,r,i,s,u=t.borderWidth,o=function(t){var e=t.borderSkipped,n={};return e?(t.horizontal?t.base>t.x&&(e=Dt(e,"left","right")):t.base<t.y&&(e=Dt(e,"bottom","top")),n[e]=!0,n):n}(t);return dt.isObject(u)?(a=+u.top||0,r=+u.right||0,i=+u.bottom||0,s=+u.left||0):a=r=i=s=+u||0,{t:o.top||a<0?0:a>n?n:a,r:o.right||r<0?0:r>e?e:r,b:o.bottom||i<0?0:i>n?n:i,l:o.left||s<0?0:s>e?e:s}}(t,n/2,a/2);return{outer:{x:e.left,y:e.top,w:n,h:a},inner:{x:e.left+r.l,y:e.top+r.t,w:n-r.l-r.r,h:a-r.t-r.b}}}(e),a=n.outer,r=n.inner;t.fillStyle=e.backgroundColor,t.fillRect(a.x,a.y,a.w,a.h),a.w===r.w&&a.h===r.h||(t.save(),t.beginPath(),t.rect(a.x,a.y,a.w,a.h),t.clip(),t.fillStyle=e.borderColor,t.rect(r.x,r.y,r.w,r.h),t.fill("evenodd"),t.restore())},height:function(){var t=this._view;return t.base-t.y},inRange:function(t,e){return Pt(this._view,t,e)},inLabelRange:function(t,e){var n=this._view;return Et(n)?Pt(n,t,null):Pt(n,null,e)},inXRange:function(t){return Pt(this._view,t,null)},inYRange:function(t){return Pt(this._view,null,t)},getCenterPoint:function(){var t,e,n=this._view;return Et(n)?(t=n.x,e=(n.y+n.base)/2):(t=(n.x+n.base)/2,e=n.y),{x:t,y:e}},getArea:function(){var t=this._view;return Et(t)?t.width*Math.abs(t.y-t.base):t.height*Math.abs(t.x-t.base)},tooltipPosition:function(){var t=this._view;return{x:t.x,y:t.y}}}),qt={},jt=It,Ft=At,Vt=Mt;qt.Arc=wt,qt.Line=jt,qt.Point=Ft,qt.Rectangle=Vt;var Gt=dt.options.resolve;ut._set("bar",{hover:{mode:"label"},scales:{xAxes:[{type:"category",categoryPercentage:.8,barPercentage:.9,offset:!0,gridLines:{offsetGridLines:!0}}],yAxes:[{type:"linear"}]}});var Bt=Tt.extend({dataElementType:qt.Rectangle,initialize:function(){var t,e=this;Tt.prototype.initialize.apply(e,arguments),(t=e.getMeta()).stack=e.getDataset().stack,t.bar=!0},update:function(t){var e,n,a=this.getMeta().data;for(this._ruler=this.getRuler(),e=0,n=a.length;e<n;++e)this.updateElement(a[e],e,t)},updateElement:function(t,e,n){var a=this,r=a.getMeta(),i=a.getDataset(),s=a._resolveElementOptions(t,e);t._xScale=a.getScaleForId(r.xAxisID),t._yScale=a.getScaleForId(r.yAxisID),t._datasetIndex=a.index,t._index=e,t._model={backgroundColor:s.backgroundColor,borderColor:s.borderColor,borderSkipped:s.borderSkipped,borderWidth:s.borderWidth,datasetLabel:i.label,label:a.chart.data.labels[e]},a._updateElementGeometry(t,e,n),t.pivot()},_updateElementGeometry:function(t,e,n){var a=this,r=t._model,i=a._getValueScale(),s=i.getBasePixel(),u=i.isHorizontal(),o=a._ruler||a.getRuler(),l=a.calculateBarValuePixels(a.index,e),d=a.calculateBarIndexPixels(a.index,e,o);r.horizontal=u,r.base=n?s:l.base,r.x=u?n?s:l.head:d.center,r.y=u?d.center:n?s:l.head,r.height=u?d.size:void 0,r.width=u?void 0:d.size},_getStacks:function(t){var e,n,a=this.chart,r=this._getIndexScale().options.stacked,i=void 0===t?a.data.datasets.length:t+1,s=[];for(e=0;e<i;++e)(n=a.getDatasetMeta(e)).bar&&a.isDatasetVisible(e)&&(!1===r||!0===r&&-1===s.indexOf(n.stack)||void 0===r&&(void 0===n.stack||-1===s.indexOf(n.stack)))&&s.push(n.stack);return s},getStackCount:function(){return this._getStacks().length},getStackIndex:function(t,e){var n=this._getStacks(t),a=void 0!==e?n.indexOf(e):-1;return-1===a?n.length-1:a},getRuler:function(){var t,e,n=this._getIndexScale(),a=this.getStackCount(),r=this.index,i=n.isHorizontal(),s=i?n.left:n.top,u=s+(i?n.width:n.height),o=[];for(t=0,e=this.getMeta().data.length;t<e;++t)o.push(n.getPixelForValue(null,t,r));return{min:dt.isNullOrUndef(n.options.barThickness)?function(t,e){var n,a,r,i,s=t.isHorizontal()?t.width:t.height,u=t.getTicks();for(r=1,i=e.length;r<i;++r)s=Math.min(s,Math.abs(e[r]-e[r-1]));for(r=0,i=u.length;r<i;++r)a=t.getPixelForTick(r),s=r>0?Math.min(s,a-n):s,n=a;return s}(n,o):-1,pixels:o,start:s,end:u,stackCount:a,scale:n}},calculateBarValuePixels:function(t,e){var n,a,r,i,s,u,o=this.chart,l=this.getMeta(),d=this._getValueScale(),c=d.isHorizontal(),f=o.data.datasets,h=+d.getRightValue(f[t].data[e]),g=d.options.minBarLength,p=d.options.stacked,b=l.stack,m=0;if(p||void 0===p&&void 0!==b)for(n=0;n<t;++n)(a=o.getDatasetMeta(n)).bar&&a.stack===b&&a.controller._getValueScaleId()===d.id&&o.isDatasetVisible(n)&&(r=+d.getRightValue(f[n].data[e]),(h<0&&r<0||h>=0&&r>0)&&(m+=r));return i=d.getPixelForValue(m),u=(s=d.getPixelForValue(m+h))-i,void 0!==g&&Math.abs(u)<g&&(u=g,s=h>=0&&!c||h<0&&c?i-g:i+g),{size:u,base:i,head:s,center:s+u/2}},calculateBarIndexPixels:function(t,e,n){var a=n.scale.options,r="flex"===a.barThickness?function(t,e,n){var a,r=e.pixels,i=r[t],s=t>0?r[t-1]:null,u=t<r.length-1?r[t+1]:null,o=n.categoryPercentage;return null===s&&(s=i-(null===u?e.end-e.start:u-i)),null===u&&(u=i+i-s),a=i-(i-Math.min(s,u))/2*o,{chunk:Math.abs(u-s)/2*o/e.stackCount,ratio:n.barPercentage,start:a}}(e,n,a):function(t,e,n){var a,r,i=n.barThickness,s=e.stackCount,u=e.pixels[t];return dt.isNullOrUndef(i)?(a=e.min*n.categoryPercentage,r=n.barPercentage):(a=i*s,r=1),{chunk:a/s,ratio:r,start:u-a/2}}(e,n,a),i=this.getStackIndex(t,this.getMeta().stack),s=r.start+r.chunk*i+r.chunk/2,u=Math.min(dt.valueOrDefault(a.maxBarThickness,1/0),r.chunk*r.ratio);return{base:s-u/2,head:s+u/2,center:s,size:u}},draw:function(){var t=this.chart,e=this._getValueScale(),n=this.getMeta().data,a=this.getDataset(),r=n.length,i=0;for(dt.canvas.clipArea(t.ctx,t.chartArea);i<r;++i)isNaN(e.getRightValue(a.data[i]))||n[i].draw();dt.canvas.unclipArea(t.ctx)},_resolveElementOptions:function(t,e){var n,a,r,i=this.chart,s=i.data.datasets[this.index],u=t.custom||{},o=i.options.elements.rectangle,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c=["backgroundColor","borderColor","borderSkipped","borderWidth"];for(n=0,a=c.length;n<a;++n)l[r=c[n]]=Gt([u[r],s[r],o[r]],d,e);return l}}),zt=dt.valueOrDefault,Yt=dt.options.resolve;ut._set("bubble",{hover:{mode:"single"},scales:{xAxes:[{type:"linear",position:"bottom",id:"x-axis-0"}],yAxes:[{type:"linear",position:"left",id:"y-axis-0"}]},tooltips:{callbacks:{title:function(){return""},label:function(t,e){return(e.datasets[t.datasetIndex].label||"")+": ("+t.xLabel+", "+t.yLabel+", "+e.datasets[t.datasetIndex].data[t.index].r+")"}}}});var Ht=Tt.extend({dataElementType:qt.Point,update:function(t){var e=this,n=e.getMeta();dt.each(n.data,(function(n,a){e.updateElement(n,a,t)}))},updateElement:function(t,e,n){var a=this,r=a.getMeta(),i=t.custom||{},s=a.getScaleForId(r.xAxisID),u=a.getScaleForId(r.yAxisID),o=a._resolveElementOptions(t,e),l=a.getDataset().data[e],d=a.index,c=n?s.getPixelForDecimal(.5):s.getPixelForValue("object"==typeof l?l:NaN,e,d),f=n?u.getBasePixel():u.getPixelForValue(l,e,d);t._xScale=s,t._yScale=u,t._options=o,t._datasetIndex=d,t._index=e,t._model={backgroundColor:o.backgroundColor,borderColor:o.borderColor,borderWidth:o.borderWidth,hitRadius:o.hitRadius,pointStyle:o.pointStyle,rotation:o.rotation,radius:n?0:o.radius,skip:i.skip||isNaN(c)||isNaN(f),x:c,y:f},t.pivot()},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=zt(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=zt(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=zt(n.hoverBorderWidth,n.borderWidth),e.radius=n.radius+n.hoverRadius},_resolveElementOptions:function(t,e){var n,a,r,i=this.chart,s=i.data.datasets[this.index],u=t.custom||{},o=i.options.elements.point,l=s.data[e],d={},c={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},f=["backgroundColor","borderColor","borderWidth","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth","hoverRadius","hitRadius","pointStyle","rotation"];for(n=0,a=f.length;n<a;++n)d[r=f[n]]=Yt([u[r],s[r],o[r]],c,e);return d.radius=Yt([u.radius,l?l.r:void 0,s.radius,o.radius],c,e),d}}),Ut=dt.options.resolve,Wt=dt.valueOrDefault;ut._set("doughnut",{animation:{animateRotate:!0,animateScale:!1},hover:{mode:"single"},legendCallback:function(t){var e=[];e.push('<ul class="'+t.id+'-legend">');var n=t.data,a=n.datasets,r=n.labels;if(a.length)for(var i=0;i<a[0].data.length;++i)e.push('<li><span style="background-color:'+a[0].backgroundColor[i]+'"></span>'),r[i]&&e.push(r[i]),e.push("</li>");return e.push("</ul>"),e.join("")},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map((function(n,a){var r=t.getDatasetMeta(0),i=e.datasets[0],s=r.data[a],u=s&&s.custom||{},o=t.options.elements.arc;return{text:n,fillStyle:Ut([u.backgroundColor,i.backgroundColor,o.backgroundColor],void 0,a),strokeStyle:Ut([u.borderColor,i.borderColor,o.borderColor],void 0,a),lineWidth:Ut([u.borderWidth,i.borderWidth,o.borderWidth],void 0,a),hidden:isNaN(i.data[a])||r.data[a].hidden,index:a}})):[]}},onClick:function(t,e){var n,a,r,i=e.index,s=this.chart;for(n=0,a=(s.data.datasets||[]).length;n<a;++n)(r=s.getDatasetMeta(n)).data[i]&&(r.data[i].hidden=!r.data[i].hidden);s.update()}},cutoutPercentage:50,rotation:-.5*Math.PI,circumference:2*Math.PI,tooltips:{callbacks:{title:function(){return""},label:function(t,e){var n=e.labels[t.index],a=": "+e.datasets[t.datasetIndex].data[t.index];return dt.isArray(n)?(n=n.slice())[0]+=a:n+=a,n}}}});var Kt=Tt.extend({dataElementType:qt.Arc,linkScales:dt.noop,getRingIndex:function(t){for(var e=0,n=0;n<t;++n)this.chart.isDatasetVisible(n)&&++e;return e},update:function(t){var e,n,a=this,r=a.chart,i=r.chartArea,s=r.options,u=i.right-i.left,o=i.bottom-i.top,l=Math.min(u,o),d={x:0,y:0},c=a.getMeta(),f=c.data,h=s.cutoutPercentage,g=s.circumference,p=a._getRingWeight(a.index);if(g<2*Math.PI){var b=s.rotation%(2*Math.PI),m=(b+=2*Math.PI*(b>=Math.PI?-1:b<-Math.PI?1:0))+g,y={x:Math.cos(b),y:Math.sin(b)},v={x:Math.cos(m),y:Math.sin(m)},x=b<=0&&m>=0||b<=2*Math.PI&&2*Math.PI<=m,_=b<=.5*Math.PI&&.5*Math.PI<=m||b<=2.5*Math.PI&&2.5*Math.PI<=m,T=b<=-Math.PI&&-Math.PI<=m||b<=Math.PI&&Math.PI<=m,w=b<=.5*-Math.PI&&.5*-Math.PI<=m||b<=1.5*Math.PI&&1.5*Math.PI<=m,O=h/100,S={x:T?-1:Math.min(y.x*(y.x<0?1:O),v.x*(v.x<0?1:O)),y:w?-1:Math.min(y.y*(y.y<0?1:O),v.y*(v.y<0?1:O))},I={x:x?1:Math.max(y.x*(y.x>0?1:O),v.x*(v.x>0?1:O)),y:_?1:Math.max(y.y*(y.y>0?1:O),v.y*(v.y>0?1:O))},N={width:.5*(I.x-S.x),height:.5*(I.y-S.y)};l=Math.min(u/N.width,o/N.height),d={x:-.5*(I.x+S.x),y:-.5*(I.y+S.y)}}for(e=0,n=f.length;e<n;++e)f[e]._options=a._resolveElementOptions(f[e],e);for(r.borderWidth=a.getMaxBorderWidth(),r.outerRadius=Math.max((l-r.borderWidth)/2,0),r.innerRadius=Math.max(h?r.outerRadius/100*h:0,0),r.radiusLength=(r.outerRadius-r.innerRadius)/(a._getVisibleDatasetWeightTotal()||1),r.offsetX=d.x*r.outerRadius,r.offsetY=d.y*r.outerRadius,c.total=a.calculateTotal(),a.outerRadius=r.outerRadius-r.radiusLength*a._getRingWeightOffset(a.index),a.innerRadius=Math.max(a.outerRadius-r.radiusLength*p,0),e=0,n=f.length;e<n;++e)a.updateElement(f[e],e,t)},updateElement:function(t,e,n){var a=this,r=a.chart,i=r.chartArea,s=r.options,u=s.animation,o=(i.left+i.right)/2,l=(i.top+i.bottom)/2,d=s.rotation,c=s.rotation,f=a.getDataset(),h=n&&u.animateRotate||t.hidden?0:a.calculateCircumference(f.data[e])*(s.circumference/(2*Math.PI)),g=t._options||{};dt.extend(t,{_datasetIndex:a.index,_index:e,_model:{backgroundColor:g.backgroundColor,borderColor:g.borderColor,borderWidth:g.borderWidth,borderAlign:g.borderAlign,x:o+r.offsetX,y:l+r.offsetY,startAngle:d,endAngle:c,circumference:h,outerRadius:n&&u.animateScale?0:a.outerRadius,innerRadius:n&&u.animateScale?0:a.innerRadius,label:dt.valueAtIndexOrDefault(f.label,e,r.data.labels[e])}});var p=t._model;n&&u.animateRotate||(p.startAngle=0===e?s.rotation:a.getMeta().data[e-1]._model.endAngle,p.endAngle=p.startAngle+p.circumference),t.pivot()},calculateTotal:function(){var t,e=this.getDataset(),n=this.getMeta(),a=0;return dt.each(n.data,(function(n,r){t=e.data[r],isNaN(t)||n.hidden||(a+=Math.abs(t))})),a},calculateCircumference:function(t){var e=this.getMeta().total;return e>0&&!isNaN(t)?2*Math.PI*(Math.abs(t)/e):0},getMaxBorderWidth:function(t){var e,n,a,r,i,s,u,o,l=0,d=this.chart;if(!t)for(e=0,n=d.data.datasets.length;e<n;++e)if(d.isDatasetVisible(e)){t=(a=d.getDatasetMeta(e)).data,e!==this.index&&(i=a.controller);break}if(!t)return 0;for(e=0,n=t.length;e<n;++e)r=t[e],"inner"!==(s=i?i._resolveElementOptions(r,e):r._options).borderAlign&&(l=(o=s.hoverBorderWidth)>(l=(u=s.borderWidth)>l?u:l)?o:l);return l},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=Wt(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=Wt(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=Wt(n.hoverBorderWidth,n.borderWidth)},_resolveElementOptions:function(t,e){var n,a,r,i=this.chart,s=this.getDataset(),u=t.custom||{},o=i.options.elements.arc,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c=["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"];for(n=0,a=c.length;n<a;++n)l[r=c[n]]=Ut([u[r],s[r],o[r]],d,e);return l},_getRingWeightOffset:function(t){for(var e=0,n=0;n<t;++n)this.chart.isDatasetVisible(n)&&(e+=this._getRingWeight(n));return e},_getRingWeight:function(t){return Math.max(Wt(this.chart.data.datasets[t].weight,1),0)},_getVisibleDatasetWeightTotal:function(){return this._getRingWeightOffset(this.chart.data.datasets.length)}});ut._set("horizontalBar",{hover:{mode:"index",axis:"y"},scales:{xAxes:[{type:"linear",position:"bottom"}],yAxes:[{type:"category",position:"left",categoryPercentage:.8,barPercentage:.9,offset:!0,gridLines:{offsetGridLines:!0}}]},elements:{rectangle:{borderSkipped:"left"}},tooltips:{mode:"index",axis:"y"}});var $t=Bt.extend({_getValueScaleId:function(){return this.getMeta().xAxisID},_getIndexScaleId:function(){return this.getMeta().yAxisID}}),Zt=dt.valueOrDefault,Jt=dt.options.resolve,Qt=dt.canvas._isPointInArea;function Xt(t,e){return Zt(t.showLine,e.showLines)}ut._set("line",{showLines:!0,spanGaps:!1,hover:{mode:"label"},scales:{xAxes:[{type:"category",id:"x-axis-0"}],yAxes:[{type:"linear",id:"y-axis-0"}]}});var te=Tt.extend({datasetElementType:qt.Line,dataElementType:qt.Point,update:function(t){var e,n,a=this,r=a.getMeta(),i=r.dataset,s=r.data||[],u=a.getScaleForId(r.yAxisID),o=a.getDataset(),l=Xt(o,a.chart.options);for(l&&(void 0!==o.tension&&void 0===o.lineTension&&(o.lineTension=o.tension),i._scale=u,i._datasetIndex=a.index,i._children=s,i._model=a._resolveLineOptions(i),i.pivot()),e=0,n=s.length;e<n;++e)a.updateElement(s[e],e,t);for(l&&0!==i._model.tension&&a.updateBezierControlPoints(),e=0,n=s.length;e<n;++e)s[e].pivot()},updateElement:function(t,e,n){var a,r,i=this,s=i.getMeta(),u=t.custom||{},o=i.getDataset(),l=i.index,d=o.data[e],c=i.getScaleForId(s.yAxisID),f=i.getScaleForId(s.xAxisID),h=s.dataset._model,g=i._resolvePointOptions(t,e);a=f.getPixelForValue("object"==typeof d?d:NaN,e,l),r=n?c.getBasePixel():i.calculatePointY(d,e,l),t._xScale=f,t._yScale=c,t._options=g,t._datasetIndex=l,t._index=e,t._model={x:a,y:r,skip:u.skip||isNaN(a)||isNaN(r),radius:g.radius,pointStyle:g.pointStyle,rotation:g.rotation,backgroundColor:g.backgroundColor,borderColor:g.borderColor,borderWidth:g.borderWidth,tension:Zt(u.tension,h?h.tension:0),steppedLine:!!h&&h.steppedLine,hitRadius:g.hitRadius}},_resolvePointOptions:function(t,e){var n,a,r,i=this.chart,s=i.data.datasets[this.index],u=t.custom||{},o=i.options.elements.point,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c={backgroundColor:"pointBackgroundColor",borderColor:"pointBorderColor",borderWidth:"pointBorderWidth",hitRadius:"pointHitRadius",hoverBackgroundColor:"pointHoverBackgroundColor",hoverBorderColor:"pointHoverBorderColor",hoverBorderWidth:"pointHoverBorderWidth",hoverRadius:"pointHoverRadius",pointStyle:"pointStyle",radius:"pointRadius",rotation:"pointRotation"},f=Object.keys(c);for(n=0,a=f.length;n<a;++n)l[r=f[n]]=Jt([u[r],s[c[r]],s[r],o[r]],d,e);return l},_resolveLineOptions:function(t){var e,n,a,r=this.chart,i=r.data.datasets[this.index],s=t.custom||{},u=r.options,o=u.elements.line,l={},d=["backgroundColor","borderWidth","borderColor","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","fill","cubicInterpolationMode"];for(e=0,n=d.length;e<n;++e)l[a=d[e]]=Jt([s[a],i[a],o[a]]);return l.spanGaps=Zt(i.spanGaps,u.spanGaps),l.tension=Zt(i.lineTension,o.tension),l.steppedLine=Jt([s.steppedLine,i.steppedLine,o.stepped]),l},calculatePointY:function(t,e,n){var a,r,i,s=this.chart,u=this.getMeta(),o=this.getScaleForId(u.yAxisID),l=0,d=0;if(o.options.stacked){for(a=0;a<n;a++)if(r=s.data.datasets[a],"line"===(i=s.getDatasetMeta(a)).type&&i.yAxisID===o.id&&s.isDatasetVisible(a)){var c=Number(o.getRightValue(r.data[e]));c<0?d+=c||0:l+=c||0}var f=Number(o.getRightValue(t));return o.getPixelForValue(f<0?d+f:l+f)}return o.getPixelForValue(t)},updateBezierControlPoints:function(){var t,e,n,a,r=this.chart,i=this.getMeta(),s=i.dataset._model,u=r.chartArea,o=i.data||[];function l(t,e,n){return Math.max(Math.min(t,n),e)}if(s.spanGaps&&(o=o.filter((function(t){return!t._model.skip}))),"monotone"===s.cubicInterpolationMode)dt.splineCurveMonotone(o);else for(t=0,e=o.length;t<e;++t)n=o[t]._model,a=dt.splineCurve(dt.previousItem(o,t)._model,n,dt.nextItem(o,t)._model,s.tension),n.controlPointPreviousX=a.previous.x,n.controlPointPreviousY=a.previous.y,n.controlPointNextX=a.next.x,n.controlPointNextY=a.next.y;if(r.options.elements.line.capBezierPoints)for(t=0,e=o.length;t<e;++t)Qt(n=o[t]._model,u)&&(t>0&&Qt(o[t-1]._model,u)&&(n.controlPointPreviousX=l(n.controlPointPreviousX,u.left,u.right),n.controlPointPreviousY=l(n.controlPointPreviousY,u.top,u.bottom)),t<o.length-1&&Qt(o[t+1]._model,u)&&(n.controlPointNextX=l(n.controlPointNextX,u.left,u.right),n.controlPointNextY=l(n.controlPointNextY,u.top,u.bottom)))},draw:function(){var t,e=this.chart,n=this.getMeta(),a=n.data||[],r=e.chartArea,i=a.length,s=0;for(Xt(this.getDataset(),e.options)&&(dt.canvas.clipArea(e.ctx,{left:r.left,right:r.right,top:r.top-(t=(n.dataset._model.borderWidth||0)/2),bottom:r.bottom+t}),n.dataset.draw(),dt.canvas.unclipArea(e.ctx));s<i;++s)a[s].draw(r)},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=Zt(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=Zt(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=Zt(n.hoverBorderWidth,n.borderWidth),e.radius=Zt(n.hoverRadius,n.radius)}}),ee=dt.options.resolve;ut._set("polarArea",{scale:{type:"radialLinear",angleLines:{display:!1},gridLines:{circular:!0},pointLabels:{display:!1},ticks:{beginAtZero:!0}},animation:{animateRotate:!0,animateScale:!0},startAngle:-.5*Math.PI,legendCallback:function(t){var e=[];e.push('<ul class="'+t.id+'-legend">');var n=t.data,a=n.datasets,r=n.labels;if(a.length)for(var i=0;i<a[0].data.length;++i)e.push('<li><span style="background-color:'+a[0].backgroundColor[i]+'"></span>'),r[i]&&e.push(r[i]),e.push("</li>");return e.push("</ul>"),e.join("")},legend:{labels:{generateLabels:function(t){var e=t.data;return e.labels.length&&e.datasets.length?e.labels.map((function(n,a){var r=t.getDatasetMeta(0),i=e.datasets[0],s=r.data[a].custom||{},u=t.options.elements.arc;return{text:n,fillStyle:ee([s.backgroundColor,i.backgroundColor,u.backgroundColor],void 0,a),strokeStyle:ee([s.borderColor,i.borderColor,u.borderColor],void 0,a),lineWidth:ee([s.borderWidth,i.borderWidth,u.borderWidth],void 0,a),hidden:isNaN(i.data[a])||r.data[a].hidden,index:a}})):[]}},onClick:function(t,e){var n,a,r,i=e.index,s=this.chart;for(n=0,a=(s.data.datasets||[]).length;n<a;++n)(r=s.getDatasetMeta(n)).data[i].hidden=!r.data[i].hidden;s.update()}},tooltips:{callbacks:{title:function(){return""},label:function(t,e){return e.labels[t.index]+": "+t.yLabel}}}});var ne=Tt.extend({dataElementType:qt.Arc,linkScales:dt.noop,update:function(t){var e,n,a,r=this,i=r.getDataset(),s=r.getMeta(),u=r.chart.options.startAngle||0,o=r._starts=[],l=r._angles=[],d=s.data;for(r._updateRadius(),s.count=r.countVisibleElements(),e=0,n=i.data.length;e<n;e++)o[e]=u,a=r._computeAngle(e),l[e]=a,u+=a;for(e=0,n=d.length;e<n;++e)d[e]._options=r._resolveElementOptions(d[e],e),r.updateElement(d[e],e,t)},_updateRadius:function(){var t=this,e=t.chart,n=e.chartArea,a=e.options,r=Math.min(n.right-n.left,n.bottom-n.top);e.outerRadius=Math.max(r/2,0),e.innerRadius=Math.max(a.cutoutPercentage?e.outerRadius/100*a.cutoutPercentage:1,0),e.radiusLength=(e.outerRadius-e.innerRadius)/e.getVisibleDatasetCount(),t.outerRadius=e.outerRadius-e.radiusLength*t.index,t.innerRadius=t.outerRadius-e.radiusLength},updateElement:function(t,e,n){var a=this,r=a.chart,i=a.getDataset(),s=r.options,u=s.animation,o=r.scale,l=r.data.labels,d=o.xCenter,c=o.yCenter,f=s.startAngle,h=t.hidden?0:o.getDistanceFromCenterForValue(i.data[e]),g=a._starts[e],p=g+(t.hidden?0:a._angles[e]),b=u.animateScale?0:o.getDistanceFromCenterForValue(i.data[e]),m=t._options||{};dt.extend(t,{_datasetIndex:a.index,_index:e,_scale:o,_model:{backgroundColor:m.backgroundColor,borderColor:m.borderColor,borderWidth:m.borderWidth,borderAlign:m.borderAlign,x:d,y:c,innerRadius:0,outerRadius:n?b:h,startAngle:n&&u.animateRotate?f:g,endAngle:n&&u.animateRotate?f:p,label:dt.valueAtIndexOrDefault(l,e,l[e])}}),t.pivot()},countVisibleElements:function(){var t=this.getDataset(),e=this.getMeta(),n=0;return dt.each(e.data,(function(e,a){isNaN(t.data[a])||e.hidden||n++})),n},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor,r=dt.valueOrDefault;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth},e.backgroundColor=r(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=r(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=r(n.hoverBorderWidth,n.borderWidth)},_resolveElementOptions:function(t,e){var n,a,r,i=this.chart,s=this.getDataset(),u=t.custom||{},o=i.options.elements.arc,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c=["backgroundColor","borderColor","borderWidth","borderAlign","hoverBackgroundColor","hoverBorderColor","hoverBorderWidth"];for(n=0,a=c.length;n<a;++n)l[r=c[n]]=ee([u[r],s[r],o[r]],d,e);return l},_computeAngle:function(t){var e=this,n=this.getMeta().count,a=e.getDataset(),r=e.getMeta();return isNaN(a.data[t])||r.data[t].hidden?0:ee([e.chart.options.elements.arc.angle,2*Math.PI/n],{chart:e.chart,dataIndex:t,dataset:a,datasetIndex:e.index},t)}});ut._set("pie",dt.clone(ut.doughnut)),ut._set("pie",{cutoutPercentage:0});var ae=Kt,re=dt.valueOrDefault,ie=dt.options.resolve;ut._set("radar",{scale:{type:"radialLinear"},elements:{line:{tension:0}}});var se=Tt.extend({datasetElementType:qt.Line,dataElementType:qt.Point,linkScales:dt.noop,update:function(t){var e,n,a=this,r=a.getMeta(),i=r.dataset,s=r.data||[],u=a.chart.scale,o=a.getDataset();for(void 0!==o.tension&&void 0===o.lineTension&&(o.lineTension=o.tension),i._scale=u,i._datasetIndex=a.index,i._children=s,i._loop=!0,i._model=a._resolveLineOptions(i),i.pivot(),e=0,n=s.length;e<n;++e)a.updateElement(s[e],e,t);for(a.updateBezierControlPoints(),e=0,n=s.length;e<n;++e)s[e].pivot()},updateElement:function(t,e,n){var a=this,r=t.custom||{},i=a.getDataset(),s=a.chart.scale,u=s.getPointPositionForValue(e,i.data[e]),o=a._resolvePointOptions(t,e),l=a.getMeta().dataset._model,d=n?s.xCenter:u.x,c=n?s.yCenter:u.y;t._scale=s,t._options=o,t._datasetIndex=a.index,t._index=e,t._model={x:d,y:c,skip:r.skip||isNaN(d)||isNaN(c),radius:o.radius,pointStyle:o.pointStyle,rotation:o.rotation,backgroundColor:o.backgroundColor,borderColor:o.borderColor,borderWidth:o.borderWidth,tension:re(r.tension,l?l.tension:0),hitRadius:o.hitRadius}},_resolvePointOptions:function(t,e){var n,a,r,i=this.chart,s=i.data.datasets[this.index],u=t.custom||{},o=i.options.elements.point,l={},d={chart:i,dataIndex:e,dataset:s,datasetIndex:this.index},c={backgroundColor:"pointBackgroundColor",borderColor:"pointBorderColor",borderWidth:"pointBorderWidth",hitRadius:"pointHitRadius",hoverBackgroundColor:"pointHoverBackgroundColor",hoverBorderColor:"pointHoverBorderColor",hoverBorderWidth:"pointHoverBorderWidth",hoverRadius:"pointHoverRadius",pointStyle:"pointStyle",radius:"pointRadius",rotation:"pointRotation"},f=Object.keys(c);for(n=0,a=f.length;n<a;++n)l[r=f[n]]=ie([u[r],s[c[r]],s[r],o[r]],d,e);return l},_resolveLineOptions:function(t){var e,n,a,r=this.chart,i=r.data.datasets[this.index],s=t.custom||{},u=r.options.elements.line,o={},l=["backgroundColor","borderWidth","borderColor","borderCapStyle","borderDash","borderDashOffset","borderJoinStyle","fill"];for(e=0,n=l.length;e<n;++e)o[a=l[e]]=ie([s[a],i[a],u[a]]);return o.tension=re(i.lineTension,u.tension),o},updateBezierControlPoints:function(){var t,e,n,a,r=this.getMeta(),i=this.chart.chartArea,s=r.data||[];function u(t,e,n){return Math.max(Math.min(t,n),e)}for(t=0,e=s.length;t<e;++t)n=s[t]._model,a=dt.splineCurve(dt.previousItem(s,t,!0)._model,n,dt.nextItem(s,t,!0)._model,n.tension),n.controlPointPreviousX=u(a.previous.x,i.left,i.right),n.controlPointPreviousY=u(a.previous.y,i.top,i.bottom),n.controlPointNextX=u(a.next.x,i.left,i.right),n.controlPointNextY=u(a.next.y,i.top,i.bottom)},setHoverStyle:function(t){var e=t._model,n=t._options,a=dt.getHoverColor;t.$previousStyle={backgroundColor:e.backgroundColor,borderColor:e.borderColor,borderWidth:e.borderWidth,radius:e.radius},e.backgroundColor=re(n.hoverBackgroundColor,a(n.backgroundColor)),e.borderColor=re(n.hoverBorderColor,a(n.borderColor)),e.borderWidth=re(n.hoverBorderWidth,n.borderWidth),e.radius=re(n.hoverRadius,n.radius)}});ut._set("scatter",{hover:{mode:"single"},scales:{xAxes:[{id:"x-axis-1",type:"linear",position:"bottom"}],yAxes:[{id:"y-axis-1",type:"linear",position:"left"}]},showLines:!1,tooltips:{callbacks:{title:function(){return""},label:function(t){return"("+t.xLabel+", "+t.yLabel+")"}}}});var ue={bar:Bt,bubble:Ht,doughnut:Kt,horizontalBar:$t,line:te,polarArea:ne,pie:ae,radar:se,scatter:te};function oe(t,e){return t.native?{x:t.x,y:t.y}:dt.getRelativePosition(t,e)}function le(t,e){var n,a,r,i,s;for(a=0,i=t.data.datasets.length;a<i;++a)if(t.isDatasetVisible(a))for(r=0,s=(n=t.getDatasetMeta(a)).data.length;r<s;++r){var u=n.data[r];u._view.skip||e(u)}}function de(t,e){var n=[];return le(t,(function(t){t.inRange(e.x,e.y)&&n.push(t)})),n}function ce(t,e,n,a){var r=Number.POSITIVE_INFINITY,i=[];return le(t,(function(t){if(!n||t.inRange(e.x,e.y)){var s=t.getCenterPoint(),u=a(e,s);u<r?(i=[t],r=u):u===r&&i.push(t)}})),i}function fe(t){var e=-1!==t.indexOf("x"),n=-1!==t.indexOf("y");return function(t,a){var r=e?Math.abs(t.x-a.x):0,i=n?Math.abs(t.y-a.y):0;return Math.sqrt(Math.pow(r,2)+Math.pow(i,2))}}function he(t,e,n){var a=oe(e,t);n.axis=n.axis||"x";var r=fe(n.axis),i=n.intersect?de(t,a):ce(t,a,!1,r),s=[];return i.length?(t.data.datasets.forEach((function(e,n){if(t.isDatasetVisible(n)){var a=t.getDatasetMeta(n).data[i[0]._index];a&&!a._view.skip&&s.push(a)}})),s):[]}var ge={modes:{single:function(t,e){var n=oe(e,t),a=[];return le(t,(function(t){if(t.inRange(n.x,n.y))return a.push(t),a})),a.slice(0,1)},label:he,index:he,dataset:function(t,e,n){var a=oe(e,t);n.axis=n.axis||"xy";var r=fe(n.axis),i=n.intersect?de(t,a):ce(t,a,!1,r);return i.length>0&&(i=t.getDatasetMeta(i[0]._datasetIndex).data),i},"x-axis":function(t,e){return he(t,e,{intersect:!1})},point:function(t,e){return de(t,oe(e,t))},nearest:function(t,e,n){var a=oe(e,t);n.axis=n.axis||"xy";var r=fe(n.axis);return ce(t,a,n.intersect,r)},x:function(t,e,n){var a=oe(e,t),r=[],i=!1;return le(t,(function(t){t.inXRange(a.x)&&r.push(t),t.inRange(a.x,a.y)&&(i=!0)})),n.intersect&&!i&&(r=[]),r},y:function(t,e,n){var a=oe(e,t),r=[],i=!1;return le(t,(function(t){t.inYRange(a.y)&&r.push(t),t.inRange(a.x,a.y)&&(i=!0)})),n.intersect&&!i&&(r=[]),r}}};function pe(t,e){return dt.where(t,(function(t){return t.position===e}))}function be(t,e){t.forEach((function(t,e){return t._tmpIndex_=e,t})),t.sort((function(t,n){var a=e?n:t,r=e?t:n;return a.weight===r.weight?a._tmpIndex_-r._tmpIndex_:a.weight-r.weight})),t.forEach((function(t){delete t._tmpIndex_}))}function me(t,e){dt.each(t,(function(t){e[t.position]+=t.isHorizontal()?t.height:t.width}))}ut._set("global",{layout:{padding:{top:0,right:0,bottom:0,left:0}}});var ye,ve={defaults:{},addBox:function(t,e){t.boxes||(t.boxes=[]),e.fullWidth=e.fullWidth||!1,e.position=e.position||"top",e.weight=e.weight||0,t.boxes.push(e)},removeBox:function(t,e){var n=t.boxes?t.boxes.indexOf(e):-1;-1!==n&&t.boxes.splice(n,1)},configure:function(t,e,n){for(var a,r=["fullWidth","position","weight"],i=r.length,s=0;s<i;++s)n.hasOwnProperty(a=r[s])&&(e[a]=n[a])},update:function(t,e,n){if(t){var a=dt.options.toPadding((t.options.layout||{}).padding),r=a.left,i=a.right,s=a.top,u=a.bottom,o=pe(t.boxes,"left"),l=pe(t.boxes,"right"),d=pe(t.boxes,"top"),c=pe(t.boxes,"bottom"),f=pe(t.boxes,"chartArea");be(o,!0),be(l,!1),be(d,!0),be(c,!1);var h,g=o.concat(l),p=d.concat(c),b=g.concat(p),m=e-r-i,y=n-s-u,v=(e-m/2)/g.length,x=m,_=y,T={top:s,left:r,bottom:u,right:i},w=[];dt.each(b,(function(t){var e,n=t.isHorizontal();n?(e=t.update(t.fullWidth?m:x,y/2),_-=e.height):(e=t.update(v,_),x-=e.width),w.push({horizontal:n,width:e.width,box:t})})),h=function(t){var e=0,n=0,a=0,r=0;return dt.each(t,(function(t){if(t.getPadding){var i=t.getPadding();e=Math.max(e,i.top),n=Math.max(n,i.left),a=Math.max(a,i.bottom),r=Math.max(r,i.right)}})),{top:e,left:n,bottom:a,right:r}}(b),dt.each(g,A),me(g,T),dt.each(p,A),me(p,T),dt.each(g,(function(t){var e=dt.findNextWhere(w,(function(e){return e.box===t}));e&&t.update(e.width,_,{left:0,right:0,top:T.top,bottom:T.bottom})})),me(b,T={top:s,left:r,bottom:u,right:i});var O=Math.max(h.left-T.left,0);T.left+=O,T.right+=Math.max(h.right-T.right,0);var S=Math.max(h.top-T.top,0);T.top+=S,T.bottom+=Math.max(h.bottom-T.bottom,0);var I=n-T.top-T.bottom,N=e-T.left-T.right;N===x&&I===_||(dt.each(g,(function(t){t.height=I})),dt.each(p,(function(t){t.fullWidth||(t.width=N)})),_=I,x=N);var C=r+O,R=s+S;dt.each(o.concat(d),k),C+=x,R+=_,dt.each(l,k),dt.each(c,k),t.chartArea={left:T.left,top:T.top,right:T.left+x,bottom:T.top+_},dt.each(f,(function(e){e.left=t.chartArea.left,e.top=t.chartArea.top,e.right=t.chartArea.right,e.bottom=t.chartArea.bottom,e.update(x,_)}))}function A(t){var e=dt.findNextWhere(w,(function(e){return e.box===t}));if(e)if(e.horizontal){var n={left:Math.max(T.left,h.left),right:Math.max(T.right,h.right),top:0,bottom:0};t.update(t.fullWidth?m:x,y/2,n)}else t.update(e.width,_)}function k(t){t.isHorizontal()?(t.left=t.fullWidth?r:T.left,t.right=t.fullWidth?e-i:T.left+x,t.top=R,t.bottom=R+t.height,R=t.bottom):(t.left=C,t.right=C+t.width,t.top=T.top,t.bottom=T.top+_,C=t.right)}}},xe=(ye=Object.freeze({default:"/*\n * DOM element rendering detection\n * https://davidwalsh.name/detect-node-insertion\n */\n@keyframes chartjs-render-animation {\n\tfrom { opacity: 0.99; }\n\tto { opacity: 1; }\n}\n\n.chartjs-render-monitor {\n\tanimation: chartjs-render-animation 0.001s;\n}\n\n/*\n * DOM element resizing detection\n * https://github.com/marcj/css-element-queries\n */\n.chartjs-size-monitor,\n.chartjs-size-monitor-expand,\n.chartjs-size-monitor-shrink {\n\tposition: absolute;\n\tdirection: ltr;\n\tleft: 0;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\toverflow: hidden;\n\tpointer-events: none;\n\tvisibility: hidden;\n\tz-index: -1;\n}\n\n.chartjs-size-monitor-expand > div {\n\tposition: absolute;\n\twidth: 1000000px;\n\theight: 1000000px;\n\tleft: 0;\n\ttop: 0;\n}\n\n.chartjs-size-monitor-shrink > div {\n\tposition: absolute;\n\twidth: 200%;\n\theight: 200%;\n\tleft: 0;\n\ttop: 0;\n}\n"}))&&ye.default||ye,_e=["animationstart","webkitAnimationStart"],Te={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"};function we(t,e){var n=dt.getStyle(t,e),a=n&&n.match(/^(\d+)(\.\d+)?px$/);return a?Number(a[1]):void 0}var Oe=!!function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("e",null,e)}catch(n){}return t}()&&{passive:!0};function Se(t,e,n){t.addEventListener(e,n,Oe)}function Ie(t,e,n){t.removeEventListener(e,n,Oe)}function Ne(t,e,n,a,r){return{type:t,chart:e,native:r||null,x:void 0!==n?n:null,y:void 0!==a?a:null}}function Ce(t){var e=document.createElement("div");return e.className=t||"",e}var Re={disableCSSInjection:!1,_enabled:"undefined"!=typeof window&&"undefined"!=typeof document,_ensureLoaded:function(){this._loaded||(this._loaded=!0,this.disableCSSInjection||function(t,e){var n=t._style||document.createElement("style");t._style||(t._style=n,e="/* Chart.js */\n"+e,n.setAttribute("type","text/css"),document.getElementsByTagName("head")[0].appendChild(n)),n.appendChild(document.createTextNode(e))}(this,xe))},acquireContext:function(t,e){"string"==typeof t?t=document.getElementById(t):t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas);var n=t&&t.getContext&&t.getContext("2d");return this._ensureLoaded(),n&&n.canvas===t?(function(t,e){var n=t.style,a=t.getAttribute("height"),r=t.getAttribute("width");if(t.$chartjs={initial:{height:a,width:r,style:{display:n.display,height:n.height,width:n.width}}},n.display=n.display||"block",null===r||""===r){var i=we(t,"width");void 0!==i&&(t.width=i)}if(null===a||""===a)if(""===t.style.height)t.height=t.width/(e.options.aspectRatio||2);else{var s=we(t,"height");void 0!==i&&(t.height=s)}}(t,e),n):null},releaseContext:function(t){var e=t.canvas;if(e.$chartjs){var n=e.$chartjs.initial;["height","width"].forEach((function(t){var a=n[t];dt.isNullOrUndef(a)?e.removeAttribute(t):e.setAttribute(t,a)})),dt.each(n.style||{},(function(t,n){e.style[n]=t})),e.width=e.width,delete e.$chartjs}},addEventListener:function(t,e,n){var a=t.canvas;if("resize"!==e){var r=n.$chartjs||(n.$chartjs={});Se(a,e,(r.proxies||(r.proxies={}))[t.id+"_"+e]=function(e){n(function(t,e){var n=Te[t.type]||t.type,a=dt.getRelativePosition(t,e);return Ne(n,e,a.x,a.y,t)}(e,t))})}else!function(t,e,n){var a,r,i,s,u=t.$chartjs||(t.$chartjs={}),o=u.resizer=function(t){var e=Ce("chartjs-size-monitor"),n=Ce("chartjs-size-monitor-expand"),a=Ce("chartjs-size-monitor-shrink");n.appendChild(Ce()),a.appendChild(Ce()),e.appendChild(n),e.appendChild(a),e._reset=function(){n.scrollLeft=1e6,n.scrollTop=1e6,a.scrollLeft=1e6,a.scrollTop=1e6};var r=function(){e._reset(),t()};return Se(n,"scroll",r.bind(n,"expand")),Se(a,"scroll",r.bind(a,"shrink")),e}((a=function(){if(u.resizer){var a=n.options.maintainAspectRatio&&t.parentNode,r=a?a.clientWidth:0;e(Ne("resize",n)),a&&a.clientWidth<r&&n.canvas&&e(Ne("resize",n))}},i=!1,s=[],function(){s=Array.prototype.slice.call(arguments),r=r||this,i||(i=!0,dt.requestAnimFrame.call(window,(function(){i=!1,a.apply(r,s)})))}));!function(t,e){var n=t.$chartjs||(t.$chartjs={}),a=n.renderProxy=function(t){"chartjs-render-animation"===t.animationName&&e()};dt.each(_e,(function(e){Se(t,e,a)})),n.reflow=!!t.offsetParent,t.classList.add("chartjs-render-monitor")}(t,(function(){if(u.resizer){var e=t.parentNode;e&&e!==o.parentNode&&e.insertBefore(o,e.firstChild),o._reset()}}))}(a,n,t)},removeEventListener:function(t,e,n){var a,r,i,s=t.canvas;if("resize"!==e){var u=((n.$chartjs||{}).proxies||{})[t.id+"_"+e];u&&Ie(s,e,u)}else i=(r=(a=s).$chartjs||{}).resizer,delete r.resizer,function(t){var e=t.$chartjs||{},n=e.renderProxy;n&&(dt.each(_e,(function(e){Ie(t,e,n)})),delete e.renderProxy),t.classList.remove("chartjs-render-monitor")}(a),i&&i.parentNode&&i.parentNode.removeChild(i)}};dt.addEvent=Se,dt.removeEvent=Ie;var Ae=dt.extend({initialize:function(){},acquireContext:function(){},releaseContext:function(){},addEventListener:function(){},removeEventListener:function(){}},Re._enabled?Re:{acquireContext:function(t){return t&&t.canvas&&(t=t.canvas),t&&t.getContext("2d")||null}});ut._set("global",{plugins:{}});var ke={_plugins:[],_cacheId:0,register:function(t){var e=this._plugins;[].concat(t).forEach((function(t){-1===e.indexOf(t)&&e.push(t)})),this._cacheId++},unregister:function(t){var e=this._plugins;[].concat(t).forEach((function(t){var n=e.indexOf(t);-1!==n&&e.splice(n,1)})),this._cacheId++},clear:function(){this._plugins=[],this._cacheId++},count:function(){return this._plugins.length},getAll:function(){return this._plugins},notify:function(t,e,n){var a,r,i,s,u,o=this.descriptors(t),l=o.length;for(a=0;a<l;++a)if("function"==typeof(u=(i=(r=o[a]).plugin)[e])&&((s=[t].concat(n||[])).push(r.options),!1===u.apply(i,s)))return!1;return!0},descriptors:function(t){var e=t.$plugins||(t.$plugins={});if(e.id===this._cacheId)return e.descriptors;var n=[],a=[],r=t&&t.config||{},i=r.options&&r.options.plugins||{};return this._plugins.concat(r.plugins||[]).forEach((function(t){if(-1===n.indexOf(t)){var e=t.id,r=i[e];!1!==r&&(!0===r&&(r=dt.clone(ut.global.plugins[e])),n.push(t),a.push({plugin:t,options:r||{}}))}})),e.descriptors=a,e.id=this._cacheId,a},_invalidate:function(t){delete t.$plugins}},Ee={constructors:{},defaults:{},registerScaleType:function(t,e,n){this.constructors[t]=e,this.defaults[t]=dt.clone(n)},getScaleConstructor:function(t){return this.constructors.hasOwnProperty(t)?this.constructors[t]:void 0},getScaleDefaults:function(t){return this.defaults.hasOwnProperty(t)?dt.merge({},[ut.scale,this.defaults[t]]):{}},updateScaleDefaults:function(t,e){this.defaults.hasOwnProperty(t)&&(this.defaults[t]=dt.extend(this.defaults[t],e))},addScalesToLayout:function(t){dt.each(t.scales,(function(e){e.fullWidth=e.options.fullWidth,e.position=e.options.position,e.weight=e.options.weight,ve.addBox(t,e)}))}},Le=dt.valueOrDefault;ut._set("global",{tooltips:{enabled:!0,custom:null,mode:"nearest",position:"average",intersect:!0,backgroundColor:"rgba(0,0,0,0.8)",titleFontStyle:"bold",titleSpacing:2,titleMarginBottom:6,titleFontColor:"#fff",titleAlign:"left",bodySpacing:2,bodyFontColor:"#fff",bodyAlign:"left",footerFontStyle:"bold",footerSpacing:2,footerMarginTop:6,footerFontColor:"#fff",footerAlign:"left",yPadding:6,xPadding:6,caretPadding:2,caretSize:5,cornerRadius:6,multiKeyBackground:"#fff",displayColors:!0,borderColor:"rgba(0,0,0,0)",borderWidth:0,callbacks:{beforeTitle:dt.noop,title:function(t,e){var n="",a=e.labels,r=a?a.length:0;if(t.length>0){var i=t[0];i.label?n=i.label:i.xLabel?n=i.xLabel:r>0&&i.index<r&&(n=a[i.index])}return n},afterTitle:dt.noop,beforeBody:dt.noop,beforeLabel:dt.noop,label:function(t,e){var n=e.datasets[t.datasetIndex].label||"";return n&&(n+=": "),dt.isNullOrUndef(t.value)?n+=t.yLabel:n+=t.value,n},labelColor:function(t,e){var n=e.getDatasetMeta(t.datasetIndex).data[t.index]._view;return{borderColor:n.borderColor,backgroundColor:n.backgroundColor}},labelTextColor:function(){return this._options.bodyFontColor},afterLabel:dt.noop,afterBody:dt.noop,beforeFooter:dt.noop,footer:dt.noop,afterFooter:dt.noop}}});var De={average:function(t){if(!t.length)return!1;var e,n,a=0,r=0,i=0;for(e=0,n=t.length;e<n;++e){var s=t[e];if(s&&s.hasValue()){var u=s.tooltipPosition();a+=u.x,r+=u.y,++i}}return{x:a/i,y:r/i}},nearest:function(t,e){var n,a,r,i=e.x,s=e.y,u=Number.POSITIVE_INFINITY;for(n=0,a=t.length;n<a;++n){var o=t[n];if(o&&o.hasValue()){var l=o.getCenterPoint(),d=dt.distanceBetweenPoints(e,l);d<u&&(u=d,r=o)}}if(r){var c=r.tooltipPosition();i=c.x,s=c.y}return{x:i,y:s}}};function Pe(t,e){return e&&(dt.isArray(e)?Array.prototype.push.apply(t,e):t.push(e)),t}function Me(t){return("string"==typeof t||t instanceof String)&&t.indexOf("\n")>-1?t.split("\n"):t}function qe(t){var e=ut.global;return{xPadding:t.xPadding,yPadding:t.yPadding,xAlign:t.xAlign,yAlign:t.yAlign,bodyFontColor:t.bodyFontColor,_bodyFontFamily:Le(t.bodyFontFamily,e.defaultFontFamily),_bodyFontStyle:Le(t.bodyFontStyle,e.defaultFontStyle),_bodyAlign:t.bodyAlign,bodyFontSize:Le(t.bodyFontSize,e.defaultFontSize),bodySpacing:t.bodySpacing,titleFontColor:t.titleFontColor,_titleFontFamily:Le(t.titleFontFamily,e.defaultFontFamily),_titleFontStyle:Le(t.titleFontStyle,e.defaultFontStyle),titleFontSize:Le(t.titleFontSize,e.defaultFontSize),_titleAlign:t.titleAlign,titleSpacing:t.titleSpacing,titleMarginBottom:t.titleMarginBottom,footerFontColor:t.footerFontColor,_footerFontFamily:Le(t.footerFontFamily,e.defaultFontFamily),_footerFontStyle:Le(t.footerFontStyle,e.defaultFontStyle),footerFontSize:Le(t.footerFontSize,e.defaultFontSize),_footerAlign:t.footerAlign,footerSpacing:t.footerSpacing,footerMarginTop:t.footerMarginTop,caretSize:t.caretSize,cornerRadius:t.cornerRadius,backgroundColor:t.backgroundColor,opacity:0,legendColorBackground:t.multiKeyBackground,displayColors:t.displayColors,borderColor:t.borderColor,borderWidth:t.borderWidth}}function je(t,e){return"center"===e?t.x+t.width/2:"right"===e?t.x+t.width-t.xPadding:t.x+t.xPadding}function Fe(t){return Pe([],Me(t))}var Ve=gt.extend({initialize:function(){this._model=qe(this._options),this._lastActive=[]},getTitle:function(){var t=this,e=t._options,n=e.callbacks,a=n.beforeTitle.apply(t,arguments),r=n.title.apply(t,arguments),i=n.afterTitle.apply(t,arguments),s=[];return s=Pe(s,Me(a)),s=Pe(s,Me(r)),Pe(s,Me(i))},getBeforeBody:function(){return Fe(this._options.callbacks.beforeBody.apply(this,arguments))},getBody:function(t,e){var n=this,a=n._options.callbacks,r=[];return dt.each(t,(function(t){var i={before:[],lines:[],after:[]};Pe(i.before,Me(a.beforeLabel.call(n,t,e))),Pe(i.lines,a.label.call(n,t,e)),Pe(i.after,Me(a.afterLabel.call(n,t,e))),r.push(i)})),r},getAfterBody:function(){return Fe(this._options.callbacks.afterBody.apply(this,arguments))},getFooter:function(){var t=this,e=t._options.callbacks,n=e.beforeFooter.apply(t,arguments),a=e.footer.apply(t,arguments),r=e.afterFooter.apply(t,arguments),i=[];return i=Pe(i,Me(n)),i=Pe(i,Me(a)),Pe(i,Me(r))},update:function(t){var e,n,a,r,i,s,u,o,l,d,c=this,f=c._options,h=c._model,g=c._model=qe(f),p=c._active,b=c._data,m={xAlign:h.xAlign,yAlign:h.yAlign},y={x:h.x,y:h.y},v={width:h.width,height:h.height},x={x:h.caretX,y:h.caretY};if(p.length){g.opacity=1;var _=[],T=[];x=De[f.position].call(c,p,c._eventPosition);var w=[];for(e=0,n=p.length;e<n;++e)w.push((r=void 0,i=void 0,o=void 0,l=void 0,d=void 0,r=(a=p[e])._xScale,i=a._yScale||a._scale,s=a._index,l=(o=a._chart.getDatasetMeta(u=a._datasetIndex).controller)._getIndexScale(),d=o._getValueScale(),{xLabel:r?r.getLabelForIndex(s,u):"",yLabel:i?i.getLabelForIndex(s,u):"",label:l?""+l.getLabelForIndex(s,u):"",value:d?""+d.getLabelForIndex(s,u):"",index:s,datasetIndex:u,x:a._model.x,y:a._model.y}));f.filter&&(w=w.filter((function(t){return f.filter(t,b)}))),f.itemSort&&(w=w.sort((function(t,e){return f.itemSort(t,e,b)}))),dt.each(w,(function(t){_.push(f.callbacks.labelColor.call(c,t,c._chart)),T.push(f.callbacks.labelTextColor.call(c,t,c._chart))})),g.title=c.getTitle(w,b),g.beforeBody=c.getBeforeBody(w,b),g.body=c.getBody(w,b),g.afterBody=c.getAfterBody(w,b),g.footer=c.getFooter(w,b),g.x=x.x,g.y=x.y,g.caretPadding=f.caretPadding,g.labelColors=_,g.labelTextColors=T,g.dataPoints=w,v=function(t,e){var n=t._chart.ctx,a=2*e.yPadding,r=0,i=e.body,s=i.reduce((function(t,e){return t+e.before.length+e.lines.length+e.after.length}),0),u=e.title.length,o=e.footer.length,l=e.titleFontSize,d=e.bodyFontSize,c=e.footerFontSize;a+=u*l,a+=u?(u-1)*e.titleSpacing:0,a+=u?e.titleMarginBottom:0,a+=(s+=e.beforeBody.length+e.afterBody.length)*d,a+=s?(s-1)*e.bodySpacing:0,a+=o?e.footerMarginTop:0,a+=o*c,a+=o?(o-1)*e.footerSpacing:0;var f=0,h=function(t){r=Math.max(r,n.measureText(t).width+f)};return n.font=dt.fontString(l,e._titleFontStyle,e._titleFontFamily),dt.each(e.title,h),n.font=dt.fontString(d,e._bodyFontStyle,e._bodyFontFamily),dt.each(e.beforeBody.concat(e.afterBody),h),f=e.displayColors?d+2:0,dt.each(i,(function(t){dt.each(t.before,h),dt.each(t.lines,h),dt.each(t.after,h)})),f=0,n.font=dt.fontString(c,e._footerFontStyle,e._footerFontFamily),dt.each(e.footer,h),{width:r+=2*e.xPadding,height:a}}(this,g),y=function(t,e,n,a){var r=t.x,i=t.y,s=t.caretPadding,u=n.xAlign,o=n.yAlign,l=t.caretSize+s,d=t.cornerRadius+s;return"right"===u?r-=e.width:"center"===u&&((r-=e.width/2)+e.width>a.width&&(r=a.width-e.width),r<0&&(r=0)),"top"===o?i+=l:i-="bottom"===o?e.height+l:e.height/2,"center"===o?"left"===u?r+=l:"right"===u&&(r-=l):"left"===u?r-=d:"right"===u&&(r+=d),{x:r,y:i}}(g,v,m=function(t,e){var n,a,r,i,s,u=t._model,o=t._chart,l=t._chart.chartArea,d="center",c="center";u.y<e.height?c="top":u.y>o.height-e.height&&(c="bottom");var f=(l.left+l.right)/2,h=(l.top+l.bottom)/2;"center"===c?(n=function(t){return t<=f},a=function(t){return t>f}):(n=function(t){return t<=e.width/2},a=function(t){return t>=o.width-e.width/2}),r=function(t){return t+e.width+u.caretSize+u.caretPadding>o.width},i=function(t){return t-e.width-u.caretSize-u.caretPadding<0},s=function(t){return t<=h?"top":"bottom"},n(u.x)?(d="left",r(u.x)&&(d="center",c=s(u.y))):a(u.x)&&(d="right",i(u.x)&&(d="center",c=s(u.y)));var g=t._options;return{xAlign:g.xAlign?g.xAlign:d,yAlign:g.yAlign?g.yAlign:c}}(this,v),c._chart)}else g.opacity=0;return g.xAlign=m.xAlign,g.yAlign=m.yAlign,g.x=y.x,g.y=y.y,g.width=v.width,g.height=v.height,g.caretX=x.x,g.caretY=x.y,c._model=g,t&&f.custom&&f.custom.call(c,g),c},drawCaret:function(t,e){var n=this._chart.ctx,a=this.getCaretPosition(t,e,this._view);n.lineTo(a.x1,a.y1),n.lineTo(a.x2,a.y2),n.lineTo(a.x3,a.y3)},getCaretPosition:function(t,e,n){var a,r,i,s,u,o,l=n.caretSize,d=n.cornerRadius,c=n.xAlign,f=n.yAlign,h=t.x,g=t.y,p=e.width,b=e.height;if("center"===f)u=g+b/2,"left"===c?(r=(a=h)-l,i=a,s=u+l,o=u-l):(r=(a=h+p)+l,i=a,s=u-l,o=u+l);else if("left"===c?(a=(r=h+d+l)-l,i=r+l):"right"===c?(a=(r=h+p-d-l)-l,i=r+l):(a=(r=n.caretX)-l,i=r+l),"top"===f)u=(s=g)-l,o=s;else{u=(s=g+b)+l,o=s;var m=i;i=a,a=m}return{x1:a,x2:r,x3:i,y1:s,y2:u,y3:o}},drawTitle:function(t,e,n){var a=e.title;if(a.length){t.x=je(e,e._titleAlign),n.textAlign=e._titleAlign,n.textBaseline="top";var r,i,s=e.titleFontSize,u=e.titleSpacing;for(n.fillStyle=e.titleFontColor,n.font=dt.fontString(s,e._titleFontStyle,e._titleFontFamily),r=0,i=a.length;r<i;++r)n.fillText(a[r],t.x,t.y),t.y+=s+u,r+1===a.length&&(t.y+=e.titleMarginBottom-u)}},drawBody:function(t,e,n){var a,r=e.bodyFontSize,i=e.bodySpacing,s=e._bodyAlign,u=e.body,o=e.displayColors,l=e.labelColors,d=0,c=o?je(e,"left"):0;n.textAlign=s,n.textBaseline="top",n.font=dt.fontString(r,e._bodyFontStyle,e._bodyFontFamily),t.x=je(e,s);var f=function(e){n.fillText(e,t.x+d,t.y),t.y+=r+i};n.fillStyle=e.bodyFontColor,dt.each(e.beforeBody,f),d=o&&"right"!==s?"center"===s?r/2+1:r+2:0,dt.each(u,(function(i,s){n.fillStyle=a=e.labelTextColors[s],dt.each(i.before,f),dt.each(i.lines,(function(i){o&&(n.fillStyle=e.legendColorBackground,n.fillRect(c,t.y,r,r),n.lineWidth=1,n.strokeStyle=l[s].borderColor,n.strokeRect(c,t.y,r,r),n.fillStyle=l[s].backgroundColor,n.fillRect(c+1,t.y+1,r-2,r-2),n.fillStyle=a),f(i)})),dt.each(i.after,f)})),d=0,dt.each(e.afterBody,f),t.y-=i},drawFooter:function(t,e,n){var a=e.footer;a.length&&(t.x=je(e,e._footerAlign),t.y+=e.footerMarginTop,n.textAlign=e._footerAlign,n.textBaseline="top",n.fillStyle=e.footerFontColor,n.font=dt.fontString(e.footerFontSize,e._footerFontStyle,e._footerFontFamily),dt.each(a,(function(a){n.fillText(a,t.x,t.y),t.y+=e.footerFontSize+e.footerSpacing})))},drawBackground:function(t,e,n,a){n.fillStyle=e.backgroundColor,n.strokeStyle=e.borderColor,n.lineWidth=e.borderWidth;var r=e.xAlign,i=e.yAlign,s=t.x,u=t.y,o=a.width,l=a.height,d=e.cornerRadius;n.beginPath(),n.moveTo(s+d,u),"top"===i&&this.drawCaret(t,a),n.lineTo(s+o-d,u),n.quadraticCurveTo(s+o,u,s+o,u+d),"center"===i&&"right"===r&&this.drawCaret(t,a),n.lineTo(s+o,u+l-d),n.quadraticCurveTo(s+o,u+l,s+o-d,u+l),"bottom"===i&&this.drawCaret(t,a),n.lineTo(s+d,u+l),n.quadraticCurveTo(s,u+l,s,u+l-d),"center"===i&&"left"===r&&this.drawCaret(t,a),n.lineTo(s,u+d),n.quadraticCurveTo(s,u,s+d,u),n.closePath(),n.fill(),e.borderWidth>0&&n.stroke()},draw:function(){var t=this._chart.ctx,e=this._view;if(0!==e.opacity){var n={width:e.width,height:e.height},a={x:e.x,y:e.y},r=Math.abs(e.opacity<.001)?0:e.opacity;this._options.enabled&&(e.title.length||e.beforeBody.length||e.body.length||e.afterBody.length||e.footer.length)&&(t.save(),t.globalAlpha=r,this.drawBackground(a,e,t,n),a.y+=e.yPadding,this.drawTitle(a,e,t),this.drawBody(a,e,t),this.drawFooter(a,e,t),t.restore())}},handleEvent:function(t){var e,n=this,a=n._options;return n._lastActive=n._lastActive||[],n._active="mouseout"===t.type?[]:n._chart.getElementsAtEventForMode(t,a.mode,a),(e=!dt.arrayEquals(n._active,n._lastActive))&&(n._lastActive=n._active,(a.enabled||a.custom)&&(n._eventPosition={x:t.x,y:t.y},n.update(!0),n.pivot())),e}});Ve.positioners=De;var Ge=dt.valueOrDefault;function Be(){return dt.merge({},[].slice.call(arguments),{merger:function(t,e,n,a){if("xAxes"===t||"yAxes"===t){var r,i,s,u=n[t].length;for(e[t]||(e[t]=[]),r=0;r<u;++r)i=Ge((s=n[t][r]).type,"xAxes"===t?"category":"linear"),r>=e[t].length&&e[t].push({}),dt.merge(e[t][r],!e[t][r].type||s.type&&s.type!==e[t][r].type?[Ee.getScaleDefaults(i),s]:s)}else dt._merger(t,e,n,a)}})}function ze(){return dt.merge({},[].slice.call(arguments),{merger:function(t,e,n,a){var r=e[t]||{},i=n[t];"scales"===t?e[t]=Be(r,i):"scale"===t?e[t]=dt.merge(r,[Ee.getScaleDefaults(i.type),i]):dt._merger(t,e,n,a)}})}function Ye(t){var e=t.options;dt.each(t.scales,(function(e){ve.removeBox(t,e)})),e=ze(ut.global,ut[t.config.type],e),t.options=t.config.options=e,t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t.tooltip._options=e.tooltips,t.tooltip.initialize()}function He(t){return"top"===t||"bottom"===t}ut._set("global",{elements:{},events:["mousemove","mouseout","click","touchstart","touchmove"],hover:{onHover:null,mode:"nearest",intersect:!0,animationDuration:400},onClick:null,maintainAspectRatio:!0,responsive:!0,responsiveAnimationDuration:0});var Ue=function(t,e){return this.construct(t,e),this};dt.extend(Ue.prototype,{construct:function(t,e){var n=this;e=function(t){var e=(t=t||{}).data=t.data||{};return e.datasets=e.datasets||[],e.labels=e.labels||[],t.options=ze(ut.global,ut[t.type],t.options||{}),t}(e);var a=Ae.acquireContext(t,e),r=a&&a.canvas,i=r&&r.height,s=r&&r.width;n.id=dt.uid(),n.ctx=a,n.canvas=r,n.config=e,n.width=s,n.height=i,n.aspectRatio=i?s/i:null,n.options=e.options,n._bufferedRender=!1,n.chart=n,n.controller=n,Ue.instances[n.id]=n,Object.defineProperty(n,"data",{get:function(){return n.config.data},set:function(t){n.config.data=t}}),a&&r?(n.initialize(),n.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var t=this;return ke.notify(t,"beforeInit"),dt.retinaScale(t,t.options.devicePixelRatio),t.bindEvents(),t.options.responsive&&t.resize(!0),t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t.initToolTip(),ke.notify(t,"afterInit"),t},clear:function(){return dt.canvas.clear(this),this},stop:function(){return mt.cancelAnimation(this),this},resize:function(t){var e=this,n=e.options,a=e.canvas,r=n.maintainAspectRatio&&e.aspectRatio||null,i=Math.max(0,Math.floor(dt.getMaximumWidth(a))),s=Math.max(0,Math.floor(r?i/r:dt.getMaximumHeight(a)));if((e.width!==i||e.height!==s)&&(a.width=e.width=i,a.height=e.height=s,a.style.width=i+"px",a.style.height=s+"px",dt.retinaScale(e,n.devicePixelRatio),!t)){var u={width:i,height:s};ke.notify(e,"resize",[u]),n.onResize&&n.onResize(e,u),e.stop(),e.update({duration:n.responsiveAnimationDuration})}},ensureScalesHaveIDs:function(){var t=this.options,e=t.scales||{},n=t.scale;dt.each(e.xAxes,(function(t,e){t.id=t.id||"x-axis-"+e})),dt.each(e.yAxes,(function(t,e){t.id=t.id||"y-axis-"+e})),n&&(n.id=n.id||"scale")},buildOrUpdateScales:function(){var t=this,e=t.options,n=t.scales||{},a=[],r=Object.keys(n).reduce((function(t,e){return t[e]=!1,t}),{});e.scales&&(a=a.concat((e.scales.xAxes||[]).map((function(t){return{options:t,dtype:"category",dposition:"bottom"}})),(e.scales.yAxes||[]).map((function(t){return{options:t,dtype:"linear",dposition:"left"}})))),e.scale&&a.push({options:e.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"}),dt.each(a,(function(e){var a=e.options,i=a.id,s=Ge(a.type,e.dtype);He(a.position)!==He(e.dposition)&&(a.position=e.dposition),r[i]=!0;var u=null;if(i in n&&n[i].type===s)(u=n[i]).options=a,u.ctx=t.ctx,u.chart=t;else{var o=Ee.getScaleConstructor(s);if(!o)return;u=new o({id:i,type:s,options:a,ctx:t.ctx,chart:t}),n[u.id]=u}u.mergeTicksOptions(),e.isDefault&&(t.scale=u)})),dt.each(r,(function(t,e){t||delete n[e]})),t.scales=n,Ee.addScalesToLayout(this)},buildOrUpdateControllers:function(){var t=this,e=[];return dt.each(t.data.datasets,(function(n,a){var r=t.getDatasetMeta(a),i=n.type||t.config.type;if(r.type&&r.type!==i&&(t.destroyDatasetMeta(a),r=t.getDatasetMeta(a)),r.type=i,r.controller)r.controller.updateIndex(a),r.controller.linkScales();else{var s=ue[r.type];if(void 0===s)throw new Error('"'+r.type+'" is not a chart type.');r.controller=new s(t,a),e.push(r.controller)}}),t),e},resetElements:function(){var t=this;dt.each(t.data.datasets,(function(e,n){t.getDatasetMeta(n).controller.reset()}),t)},reset:function(){this.resetElements(),this.tooltip.initialize()},update:function(t){var e=this;if(t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]}),Ye(e),ke._invalidate(e),!1!==ke.notify(e,"beforeUpdate")){e.tooltip._data=e.data;var n=e.buildOrUpdateControllers();dt.each(e.data.datasets,(function(t,n){e.getDatasetMeta(n).controller.buildOrUpdateElements()}),e),e.updateLayout(),e.options.animation&&e.options.animation.duration&&dt.each(n,(function(t){t.reset()})),e.updateDatasets(),e.tooltip.initialize(),e.lastActive=[],ke.notify(e,"afterUpdate"),e._bufferedRender?e._bufferedRequest={duration:t.duration,easing:t.easing,lazy:t.lazy}:e.render(t)}},updateLayout:function(){!1!==ke.notify(this,"beforeLayout")&&(ve.update(this,this.width,this.height),ke.notify(this,"afterScaleUpdate"),ke.notify(this,"afterLayout"))},updateDatasets:function(){if(!1!==ke.notify(this,"beforeDatasetsUpdate")){for(var t=0,e=this.data.datasets.length;t<e;++t)this.updateDataset(t);ke.notify(this,"afterDatasetsUpdate")}},updateDataset:function(t){var e=this.getDatasetMeta(t),n={meta:e,index:t};!1!==ke.notify(this,"beforeDatasetUpdate",[n])&&(e.controller.update(),ke.notify(this,"afterDatasetUpdate",[n]))},render:function(t){var e=this;t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]});var n=e.options.animation,a=Ge(t.duration,n&&n.duration),r=t.lazy;if(!1!==ke.notify(e,"beforeRender")){var i=function(t){ke.notify(e,"afterRender"),dt.callback(n&&n.onComplete,[t],e)};if(n&&a){var s=new bt({numSteps:a/16.66,easing:t.easing||n.easing,render:function(t,e){var n=e.currentStep,a=n/e.numSteps;t.draw((0,dt.easing.effects[e.easing])(a),a,n)},onAnimationProgress:n.onProgress,onAnimationComplete:i});mt.addAnimation(e,s,a,r)}else e.draw(),i(new bt({numSteps:0,chart:e}));return e}},draw:function(t){var e=this;e.clear(),dt.isNullOrUndef(t)&&(t=1),e.transition(t),e.width<=0||e.height<=0||!1!==ke.notify(e,"beforeDraw",[t])&&(dt.each(e.boxes,(function(t){t.draw(e.chartArea)}),e),e.drawDatasets(t),e._drawTooltip(t),ke.notify(e,"afterDraw",[t]))},transition:function(t){for(var e=0,n=(this.data.datasets||[]).length;e<n;++e)this.isDatasetVisible(e)&&this.getDatasetMeta(e).controller.transition(t);this.tooltip.transition(t)},drawDatasets:function(t){var e=this;if(!1!==ke.notify(e,"beforeDatasetsDraw",[t])){for(var n=(e.data.datasets||[]).length-1;n>=0;--n)e.isDatasetVisible(n)&&e.drawDataset(n,t);ke.notify(e,"afterDatasetsDraw",[t])}},drawDataset:function(t,e){var n=this.getDatasetMeta(t),a={meta:n,index:t,easingValue:e};!1!==ke.notify(this,"beforeDatasetDraw",[a])&&(n.controller.draw(e),ke.notify(this,"afterDatasetDraw",[a]))},_drawTooltip:function(t){var e=this.tooltip,n={tooltip:e,easingValue:t};!1!==ke.notify(this,"beforeTooltipDraw",[n])&&(e.draw(),ke.notify(this,"afterTooltipDraw",[n]))},getElementAtEvent:function(t){return ge.modes.single(this,t)},getElementsAtEvent:function(t){return ge.modes.label(this,t,{intersect:!0})},getElementsAtXAxis:function(t){return ge.modes["x-axis"](this,t,{intersect:!0})},getElementsAtEventForMode:function(t,e,n){var a=ge.modes[e];return"function"==typeof a?a(this,t,n):[]},getDatasetAtEvent:function(t){return ge.modes.dataset(this,t,{intersect:!0})},getDatasetMeta:function(t){var e=this.data.datasets[t];e._meta||(e._meta={});var n=e._meta[this.id];return n||(n=e._meta[this.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null}),n},getVisibleDatasetCount:function(){for(var t=0,e=0,n=this.data.datasets.length;e<n;++e)this.isDatasetVisible(e)&&t++;return t},isDatasetVisible:function(t){var e=this.getDatasetMeta(t);return"boolean"==typeof e.hidden?!e.hidden:!this.data.datasets[t].hidden},generateLegend:function(){return this.options.legendCallback(this)},destroyDatasetMeta:function(t){var e=this.id,n=this.data.datasets[t],a=n._meta&&n._meta[e];a&&(a.controller.destroy(),delete n._meta[e])},destroy:function(){var t,e,n=this,a=n.canvas;for(n.stop(),t=0,e=n.data.datasets.length;t<e;++t)n.destroyDatasetMeta(t);a&&(n.unbindEvents(),dt.canvas.clear(n),Ae.releaseContext(n.ctx),n.canvas=null,n.ctx=null),ke.notify(n,"destroy"),delete Ue.instances[n.id]},toBase64Image:function(){return this.canvas.toDataURL.apply(this.canvas,arguments)},initToolTip:function(){var t=this;t.tooltip=new Ve({_chart:t,_chartInstance:t,_data:t.data,_options:t.options.tooltips},t)},bindEvents:function(){var t=this,e=t._listeners={},n=function(){t.eventHandler.apply(t,arguments)};dt.each(t.options.events,(function(a){Ae.addEventListener(t,a,n),e[a]=n})),t.options.responsive&&(n=function(){t.resize()},Ae.addEventListener(t,"resize",n),e.resize=n)},unbindEvents:function(){var t=this,e=t._listeners;e&&(delete t._listeners,dt.each(e,(function(e,n){Ae.removeEventListener(t,n,e)})))},updateHoverStyle:function(t,e,n){var a,r,i,s=n?"setHoverStyle":"removeHoverStyle";for(r=0,i=t.length;r<i;++r)(a=t[r])&&this.getDatasetMeta(a._datasetIndex).controller[s](a)},eventHandler:function(t){var e=this,n=e.tooltip;if(!1!==ke.notify(e,"beforeEvent",[t])){e._bufferedRender=!0,e._bufferedRequest=null;var a=e.handleEvent(t);n&&(a=n._start?n.handleEvent(t):a|n.handleEvent(t)),ke.notify(e,"afterEvent",[t]);var r=e._bufferedRequest;return r?e.render(r):a&&!e.animating&&(e.stop(),e.render({duration:e.options.hover.animationDuration,lazy:!0})),e._bufferedRender=!1,e._bufferedRequest=null,e}},handleEvent:function(t){var e,n=this,a=n.options||{},r=a.hover;return n.lastActive=n.lastActive||[],n.active="mouseout"===t.type?[]:n.getElementsAtEventForMode(t,r.mode,r),dt.callback(a.onHover||a.hover.onHover,[t.native,n.active],n),"mouseup"!==t.type&&"click"!==t.type||a.onClick&&a.onClick.call(n,t.native,n.active),n.lastActive.length&&n.updateHoverStyle(n.lastActive,r.mode,!1),n.active.length&&r.mode&&n.updateHoverStyle(n.active,r.mode,!0),e=!dt.arrayEquals(n.active,n.lastActive),n.lastActive=n.active,e}}),Ue.instances={};var We=Ue;function Ke(){throw new Error("This method is not implemented: either no adapter can be found or an incomplete integration was provided.")}function $e(t){this.options=t||{}}Ue.Controller=Ue,Ue.types={},dt.configMerge=ze,dt.scaleMerge=Be,dt.extend($e.prototype,{formats:Ke,parse:Ke,format:Ke,add:Ke,diff:Ke,startOf:Ke,endOf:Ke,_create:function(t){return t}}),$e.override=function(t){dt.extend($e.prototype,t)};var Ze={_date:$e},Je={formatters:{values:function(t){return dt.isArray(t)?t:""+t},linear:function(t,e,n){var a=n.length>3?n[2]-n[1]:n[1]-n[0];Math.abs(a)>1&&t!==Math.floor(t)&&(a=t-Math.floor(t));var r=dt.log10(Math.abs(a)),i="";if(0!==t)if(Math.max(Math.abs(n[0]),Math.abs(n[n.length-1]))<1e-4){var s=dt.log10(Math.abs(t));i=t.toExponential(Math.floor(s)-Math.floor(r))}else{var u=-1*Math.floor(r);u=Math.max(Math.min(u,20),0),i=t.toFixed(u)}else i="0";return i},logarithmic:function(t,e,n){var a=t/Math.pow(10,Math.floor(dt.log10(t)));return 0===t?"0":1===a||2===a||5===a||0===e||e===n.length-1?t.toExponential():""}}},Qe=dt.valueOrDefault,Xe=dt.valueAtIndexOrDefault;function tn(t){var e,n,a=[];for(e=0,n=t.length;e<n;++e)a.push(t[e].label);return a}function en(t,e,n){return dt.isArray(e)?dt.longestText(t,n,e):t.measureText(e).width}ut._set("scale",{display:!0,position:"left",offset:!1,gridLines:{display:!0,color:"rgba(0, 0, 0, 0.1)",lineWidth:1,drawBorder:!0,drawOnChartArea:!0,drawTicks:!0,tickMarkLength:10,zeroLineWidth:1,zeroLineColor:"rgba(0,0,0,0.25)",zeroLineBorderDash:[],zeroLineBorderDashOffset:0,offsetGridLines:!1,borderDash:[],borderDashOffset:0},scaleLabel:{display:!1,labelString:"",padding:{top:4,bottom:4}},ticks:{beginAtZero:!1,minRotation:0,maxRotation:50,mirror:!1,padding:0,reverse:!1,display:!0,autoSkip:!0,autoSkipPadding:0,labelOffset:0,callback:Je.formatters.values,minor:{},major:{}}});var nn=gt.extend({getPadding:function(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}},getTicks:function(){return this._ticks},mergeTicksOptions:function(){var t=this.options.ticks;for(var e in!1===t.minor&&(t.minor={display:!1}),!1===t.major&&(t.major={display:!1}),t)"major"!==e&&"minor"!==e&&(void 0===t.minor[e]&&(t.minor[e]=t[e]),void 0===t.major[e]&&(t.major[e]=t[e]))},beforeUpdate:function(){dt.callback(this.options.beforeUpdate,[this])},update:function(t,e,n){var a,r,i,s,u,o,l=this;for(l.beforeUpdate(),l.maxWidth=t,l.maxHeight=e,l.margins=dt.extend({left:0,right:0,top:0,bottom:0},n),l._maxLabelLines=0,l.longestLabelWidth=0,l.longestTextCache=l.longestTextCache||{},l.beforeSetDimensions(),l.setDimensions(),l.afterSetDimensions(),l.beforeDataLimits(),l.determineDataLimits(),l.afterDataLimits(),l.beforeBuildTicks(),u=l.buildTicks()||[],u=l.afterBuildTicks(u)||u,l.beforeTickToLabelConversion(),i=l.convertTicksToLabels(u)||l.ticks,l.afterTickToLabelConversion(),l.ticks=i,a=0,r=i.length;a<r;++a)s=i[a],(o=u[a])?o.label=s:u.push(o={label:s,major:!1});return l._ticks=u,l.beforeCalculateTickRotation(),l.calculateTickRotation(),l.afterCalculateTickRotation(),l.beforeFit(),l.fit(),l.afterFit(),l.afterUpdate(),l.minSize},afterUpdate:function(){dt.callback(this.options.afterUpdate,[this])},beforeSetDimensions:function(){dt.callback(this.options.beforeSetDimensions,[this])},setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0},afterSetDimensions:function(){dt.callback(this.options.afterSetDimensions,[this])},beforeDataLimits:function(){dt.callback(this.options.beforeDataLimits,[this])},determineDataLimits:dt.noop,afterDataLimits:function(){dt.callback(this.options.afterDataLimits,[this])},beforeBuildTicks:function(){dt.callback(this.options.beforeBuildTicks,[this])},buildTicks:dt.noop,afterBuildTicks:function(t){var e=this;return dt.isArray(t)&&t.length?dt.callback(e.options.afterBuildTicks,[e,t]):(e.ticks=dt.callback(e.options.afterBuildTicks,[e,e.ticks])||e.ticks,t)},beforeTickToLabelConversion:function(){dt.callback(this.options.beforeTickToLabelConversion,[this])},convertTicksToLabels:function(){var t=this.options.ticks;this.ticks=this.ticks.map(t.userCallback||t.callback,this)},afterTickToLabelConversion:function(){dt.callback(this.options.afterTickToLabelConversion,[this])},beforeCalculateTickRotation:function(){dt.callback(this.options.beforeCalculateTickRotation,[this])},calculateTickRotation:function(){var t=this,e=t.ctx,n=t.options.ticks,a=tn(t._ticks),r=dt.options._parseFont(n);e.font=r.string;var i=n.minRotation||0;if(a.length&&t.options.display&&t.isHorizontal())for(var s,u=dt.longestText(e,r.string,a,t.longestTextCache),o=u,l=t.getPixelForTick(1)-t.getPixelForTick(0)-6;o>l&&i<n.maxRotation;){var d=dt.toRadians(i);if(s=Math.cos(d),Math.sin(d)*u>t.maxHeight){i--;break}i++,o=s*u}t.labelRotation=i},afterCalculateTickRotation:function(){dt.callback(this.options.afterCalculateTickRotation,[this])},beforeFit:function(){dt.callback(this.options.beforeFit,[this])},fit:function(){var t=this,e=t.minSize={width:0,height:0},n=tn(t._ticks),a=t.options,r=a.ticks,i=a.scaleLabel,s=a.gridLines,u=t._isVisible(),o=a.position,l=t.isHorizontal(),d=dt.options._parseFont,c=d(r),f=a.gridLines.tickMarkLength;if(e.width=l?t.isFullWidth()?t.maxWidth-t.margins.left-t.margins.right:t.maxWidth:u&&s.drawTicks?f:0,e.height=l?u&&s.drawTicks?f:0:t.maxHeight,i.display&&u){var h=d(i),g=dt.options.toPadding(i.padding),p=h.lineHeight+g.height;l?e.height+=p:e.width+=p}if(r.display&&u){var b=dt.longestText(t.ctx,c.string,n,t.longestTextCache),m=dt.numberOfLabelLines(n),y=.5*c.size,v=t.options.ticks.padding;if(t._maxLabelLines=m,t.longestLabelWidth=b,l){var x=dt.toRadians(t.labelRotation),_=Math.cos(x),T=Math.sin(x);e.height=Math.min(t.maxHeight,e.height+(T*b+c.lineHeight*m+y)+v),t.ctx.font=c.string;var w,O,S=en(t.ctx,n[0],c.string),I=en(t.ctx,n[n.length-1],c.string),N=t.getPixelForTick(0)-t.left,C=t.right-t.getPixelForTick(n.length-1);0!==t.labelRotation?(w="bottom"===o?_*S:_*y,O="bottom"===o?_*y:_*I):(w=S/2,O=I/2),t.paddingLeft=Math.max(w-N,0)+3,t.paddingRight=Math.max(O-C,0)+3}else r.mirror?b=0:b+=v+y,e.width=Math.min(t.maxWidth,e.width+b),t.paddingTop=c.size/2,t.paddingBottom=c.size/2}t.handleMargins(),t.width=e.width,t.height=e.height},handleMargins:function(){var t=this;t.margins&&(t.paddingLeft=Math.max(t.paddingLeft-t.margins.left,0),t.paddingTop=Math.max(t.paddingTop-t.margins.top,0),t.paddingRight=Math.max(t.paddingRight-t.margins.right,0),t.paddingBottom=Math.max(t.paddingBottom-t.margins.bottom,0))},afterFit:function(){dt.callback(this.options.afterFit,[this])},isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(t){if(dt.isNullOrUndef(t))return NaN;if(("number"==typeof t||t instanceof Number)&&!isFinite(t))return NaN;if(t)if(this.isHorizontal()){if(void 0!==t.x)return this.getRightValue(t.x)}else if(void 0!==t.y)return this.getRightValue(t.y);return t},getLabelForIndex:dt.noop,getPixelForValue:dt.noop,getValueForPixel:dt.noop,getPixelForTick:function(t){var e=this,n=e.options.offset;if(e.isHorizontal()){var a=(e.width-(e.paddingLeft+e.paddingRight))/Math.max(e._ticks.length-(n?0:1),1),r=a*t+e.paddingLeft;return n&&(r+=a/2),e.left+r+(e.isFullWidth()?e.margins.left:0)}return e.top+t*((e.height-(e.paddingTop+e.paddingBottom))/(e._ticks.length-1))},getPixelForDecimal:function(t){var e=this;return e.isHorizontal()?e.left+((e.width-(e.paddingLeft+e.paddingRight))*t+e.paddingLeft)+(e.isFullWidth()?e.margins.left:0):e.top+t*e.height},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var t=this.min,e=this.max;return this.beginAtZero?0:t<0&&e<0?e:t>0&&e>0?t:0},_autoSkip:function(t){var e,n,a=this,r=a.isHorizontal(),i=t.length,s=!1,u=a.options.ticks.minor.maxTicksLimit,o=a._tickSize()*(i-1),l=r?a.width-(a.paddingLeft+a.paddingRight):a.height-(a.paddingTop+a.PaddingBottom),d=[];for(o>l&&(s=1+Math.floor(o/l)),i>u&&(s=Math.max(s,1+Math.floor(i/u))),e=0;e<i;e++)n=t[e],s>1&&e%s>0&&delete n.label,d.push(n);return d},_tickSize:function(){var t=this,e=t.isHorizontal(),n=t.options.ticks.minor,a=dt.toRadians(t.labelRotation),r=Math.abs(Math.cos(a)),i=Math.abs(Math.sin(a)),s=n.autoSkipPadding||0,u=t.longestLabelWidth+s||0,o=dt.options._parseFont(n),l=t._maxLabelLines*o.lineHeight+s||0;return e?l*r>u*i?u/r:l/i:l*i<u*r?l/r:u/i},_isVisible:function(){var t,e,n,a=this.chart,r=this.options.display;if("auto"!==r)return!!r;for(t=0,e=a.data.datasets.length;t<e;++t)if(a.isDatasetVisible(t)&&((n=a.getDatasetMeta(t)).xAxisID===this.id||n.yAxisID===this.id))return!0;return!1},draw:function(t){var e=this,n=e.options;if(e._isVisible()){var a,r,i,s=e.chart,u=e.ctx,o=ut.global.defaultFontColor,l=n.ticks.minor,d=n.ticks.major||l,c=n.gridLines,f=n.scaleLabel,h=n.position,g=0!==e.labelRotation,p=l.mirror,b=e.isHorizontal(),m=dt.options._parseFont,y=l.display&&l.autoSkip?e._autoSkip(e.getTicks()):e.getTicks(),v=Qe(l.fontColor,o),x=m(l),_=x.lineHeight,T=Qe(d.fontColor,o),w=m(d),O=l.padding,S=l.labelOffset,I=c.drawTicks?c.tickMarkLength:0,N=Qe(f.fontColor,o),C=m(f),R=dt.options.toPadding(f.padding),A=dt.toRadians(e.labelRotation),k=[],E=c.drawBorder?Xe(c.lineWidth,0,0):0,L=dt._alignPixel;if("top"===h?(a=L(s,e.bottom,E),r=e.bottom-I,i=a-E/2):"bottom"===h?(a=L(s,e.top,E),r=a+E/2,i=e.top+I):"left"===h?(a=L(s,e.right,E),r=e.right-I,i=a-E/2):(a=L(s,e.left,E),r=a+E/2,i=e.left+I),dt.each(y,(function(a,u){if(!dt.isNullOrUndef(a.label)){var o,l,d,f,m,y,v,x,T,w,N,C,R,D,P,M,q=a.label;u===e.zeroLineIndex&&n.offset===c.offsetGridLines?(o=c.zeroLineWidth,l=c.zeroLineColor,d=c.zeroLineBorderDash||[],f=c.zeroLineBorderDashOffset||0):(o=Xe(c.lineWidth,u),l=Xe(c.color,u),d=c.borderDash||[],f=c.borderDashOffset||0);var j=dt.isArray(q)?q.length:1,F=function(t,e,n){var a=t.getPixelForTick(e);return n&&(1===t.getTicks().length?a-=t.isHorizontal()?Math.max(a-t.left,t.right-a):Math.max(a-t.top,t.bottom-a):a-=0===e?(t.getPixelForTick(1)-a)/2:(a-t.getPixelForTick(e-1))/2),a}(e,u,c.offsetGridLines);if(b){var V=I+O;F<e.left-1e-7&&(l="rgba(0,0,0,0)"),m=v=T=N=L(s,F,o),y=r,x=i,R=e.getPixelForTick(u)+S,"top"===h?(w=L(s,t.top,E)+E/2,C=t.bottom,P=((g?1:.5)-j)*_,M=g?"left":"center",D=e.bottom-V):(w=t.top,C=L(s,t.bottom,E)-E/2,P=(g?0:.5)*_,M=g?"right":"center",D=e.top+V)}else{var G=(p?0:I)+O;F<e.top-1e-7&&(l="rgba(0,0,0,0)"),m=r,v=i,y=x=w=C=L(s,F,o),D=e.getPixelForTick(u)+S,P=(1-j)*_/2,"left"===h?(T=L(s,t.left,E)+E/2,N=t.right,M=p?"left":"right",R=e.right-G):(T=t.left,N=L(s,t.right,E)-E/2,M=p?"right":"left",R=e.left+G)}k.push({tx1:m,ty1:y,tx2:v,ty2:x,x1:T,y1:w,x2:N,y2:C,labelX:R,labelY:D,glWidth:o,glColor:l,glBorderDash:d,glBorderDashOffset:f,rotation:-1*A,label:q,major:a.major,textOffset:P,textAlign:M})}})),dt.each(k,(function(t){var e=t.glWidth,n=t.glColor;if(c.display&&e&&n&&(u.save(),u.lineWidth=e,u.strokeStyle=n,u.setLineDash&&(u.setLineDash(t.glBorderDash),u.lineDashOffset=t.glBorderDashOffset),u.beginPath(),c.drawTicks&&(u.moveTo(t.tx1,t.ty1),u.lineTo(t.tx2,t.ty2)),c.drawOnChartArea&&(u.moveTo(t.x1,t.y1),u.lineTo(t.x2,t.y2)),u.stroke(),u.restore()),l.display){u.save(),u.translate(t.labelX,t.labelY),u.rotate(t.rotation),u.font=t.major?w.string:x.string,u.fillStyle=t.major?T:v,u.textBaseline="middle",u.textAlign=t.textAlign;var a=t.label,r=t.textOffset;if(dt.isArray(a))for(var i=0;i<a.length;++i)u.fillText(""+a[i],0,r),r+=_;else u.fillText(a,0,r);u.restore()}})),f.display){var D,P,M=0,q=C.lineHeight/2;if(b)D=e.left+(e.right-e.left)/2,P="bottom"===h?e.bottom-q-R.bottom:e.top+q+R.top;else{var j="left"===h;D=j?e.left+q+R.top:e.right-q-R.top,P=e.top+(e.bottom-e.top)/2,M=j?-.5*Math.PI:.5*Math.PI}u.save(),u.translate(D,P),u.rotate(M),u.textAlign="center",u.textBaseline="middle",u.fillStyle=N,u.font=C.string,u.fillText(f.labelString,0,0),u.restore()}if(E){var F,V,G,B,z=E,Y=Xe(c.lineWidth,y.length-1,0);b?(F=L(s,e.left,z)-z/2,V=L(s,e.right,Y)+Y/2,G=B=a):(G=L(s,e.top,z)-z/2,B=L(s,e.bottom,Y)+Y/2,F=V=a),u.lineWidth=E,u.strokeStyle=Xe(c.color,0),u.beginPath(),u.moveTo(F,G),u.lineTo(V,B),u.stroke()}}}}),an=nn.extend({getLabels:function(){var t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels},determineDataLimits:function(){var t,e=this,n=e.getLabels();e.minIndex=0,e.maxIndex=n.length-1,void 0!==e.options.ticks.min&&(t=n.indexOf(e.options.ticks.min),e.minIndex=-1!==t?t:e.minIndex),void 0!==e.options.ticks.max&&(t=n.indexOf(e.options.ticks.max),e.maxIndex=-1!==t?t:e.maxIndex),e.min=n[e.minIndex],e.max=n[e.maxIndex]},buildTicks:function(){var t=this,e=t.getLabels();t.ticks=0===t.minIndex&&t.maxIndex===e.length-1?e:e.slice(t.minIndex,t.maxIndex+1)},getLabelForIndex:function(t,e){var n=this,a=n.chart;return a.getDatasetMeta(e).controller._getValueScaleId()===n.id?n.getRightValue(a.data.datasets[e].data[t]):n.ticks[t-n.minIndex]},getPixelForValue:function(t,e){var n,a=this,r=a.options.offset,i=Math.max(a.maxIndex+1-a.minIndex-(r?0:1),1);if(null!=t&&(n=a.isHorizontal()?t.x:t.y),void 0!==n||void 0!==t&&isNaN(e)){var s=a.getLabels().indexOf(t=n||t);e=-1!==s?s:e}if(a.isHorizontal()){var u=a.width/i,o=u*(e-a.minIndex);return r&&(o+=u/2),a.left+o}var l=a.height/i,d=l*(e-a.minIndex);return r&&(d+=l/2),a.top+d},getPixelForTick:function(t){return this.getPixelForValue(this.ticks[t],t+this.minIndex,null)},getValueForPixel:function(t){var e=this,n=e.options.offset,a=Math.max(e._ticks.length-(n?0:1),1),r=e.isHorizontal(),i=(r?e.width:e.height)/a;return t-=r?e.left:e.top,n&&(t-=i/2),(t<=0?0:Math.round(t/i))+e.minIndex},getBasePixel:function(){return this.bottom}});an._defaults={position:"bottom"};var rn=dt.isNullOrUndef,sn=nn.extend({getRightValue:function(t){return"string"==typeof t?+t:nn.prototype.getRightValue.call(this,t)},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;if(e.beginAtZero){var n=dt.sign(t.min),a=dt.sign(t.max);n<0&&a<0?t.max=0:n>0&&a>0&&(t.min=0)}var r=void 0!==e.min||void 0!==e.suggestedMin,i=void 0!==e.max||void 0!==e.suggestedMax;void 0!==e.min?t.min=e.min:void 0!==e.suggestedMin&&(t.min=null===t.min?e.suggestedMin:Math.min(t.min,e.suggestedMin)),void 0!==e.max?t.max=e.max:void 0!==e.suggestedMax&&(t.max=null===t.max?e.suggestedMax:Math.max(t.max,e.suggestedMax)),r!==i&&t.min>=t.max&&(r?t.max=t.min+1:t.min=t.max-1),t.min===t.max&&(t.max++,e.beginAtZero||t.min--)},getTickLimit:function(){var t,e=this.options.ticks,n=e.stepSize,a=e.maxTicksLimit;return n?t=Math.ceil(this.max/n)-Math.floor(this.min/n)+1:(t=this._computeTickLimit(),a=a||11),a&&(t=Math.min(a,t)),t},_computeTickLimit:function(){return Number.POSITIVE_INFINITY},handleDirectionalChanges:dt.noop,buildTicks:function(){var t=this,e=t.options.ticks,n=t.getTickLimit(),a={maxTicks:n=Math.max(2,n),min:e.min,max:e.max,precision:e.precision,stepSize:dt.valueOrDefault(e.fixedStepSize,e.stepSize)},r=t.ticks=function(t,e){var n,a,r,i,s=[],u=t.stepSize,o=u||1,l=t.maxTicks-1,d=t.min,c=t.max,f=t.precision,h=e.min,g=e.max,p=dt.niceNum((g-h)/l/o)*o;if(p<1e-14&&rn(d)&&rn(c))return[h,g];(i=Math.ceil(g/p)-Math.floor(h/p))>l&&(p=dt.niceNum(i*p/l/o)*o),u||rn(f)?n=Math.pow(10,dt._decimalPlaces(p)):(n=Math.pow(10,f),p=Math.ceil(p*n)/n),a=Math.floor(h/p)*p,r=Math.ceil(g/p)*p,u&&(!rn(d)&&dt.almostWhole(d/p,p/1e3)&&(a=d),!rn(c)&&dt.almostWhole(c/p,p/1e3)&&(r=c)),i=dt.almostEquals(i=(r-a)/p,Math.round(i),p/1e3)?Math.round(i):Math.ceil(i),a=Math.round(a*n)/n,r=Math.round(r*n)/n,s.push(rn(d)?a:d);for(var b=1;b<i;++b)s.push(Math.round((a+b*p)*n)/n);return s.push(rn(c)?r:c),s}(a,t);t.handleDirectionalChanges(),t.max=dt.max(r),t.min=dt.min(r),e.reverse?(r.reverse(),t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max)},convertTicksToLabels:function(){var t=this;t.ticksAsNumbers=t.ticks.slice(),t.zeroLineIndex=t.ticks.indexOf(0),nn.prototype.convertTicksToLabels.call(t)}}),un={position:"left",ticks:{callback:Je.formatters.linear}},on=sn.extend({determineDataLimits:function(){var t=this,e=t.options,n=t.chart,a=n.data.datasets,r=t.isHorizontal();function i(e){return r?e.xAxisID===t.id:e.yAxisID===t.id}t.min=null,t.max=null;var s=e.stacked;if(void 0===s&&dt.each(a,(function(t,e){if(!s){var a=n.getDatasetMeta(e);n.isDatasetVisible(e)&&i(a)&&void 0!==a.stack&&(s=!0)}})),e.stacked||s){var u={};dt.each(a,(function(a,r){var s=n.getDatasetMeta(r),o=[s.type,void 0===e.stacked&&void 0===s.stack?r:"",s.stack].join(".");void 0===u[o]&&(u[o]={positiveValues:[],negativeValues:[]});var l=u[o].positiveValues,d=u[o].negativeValues;n.isDatasetVisible(r)&&i(s)&&dt.each(a.data,(function(n,a){var r=+t.getRightValue(n);isNaN(r)||s.data[a].hidden||(l[a]=l[a]||0,d[a]=d[a]||0,e.relativePoints?l[a]=100:r<0?d[a]+=r:l[a]+=r)}))})),dt.each(u,(function(e){var n=e.positiveValues.concat(e.negativeValues),a=dt.min(n),r=dt.max(n);t.min=null===t.min?a:Math.min(t.min,a),t.max=null===t.max?r:Math.max(t.max,r)}))}else dt.each(a,(function(e,a){var r=n.getDatasetMeta(a);n.isDatasetVisible(a)&&i(r)&&dt.each(e.data,(function(e,n){var a=+t.getRightValue(e);isNaN(a)||r.data[n].hidden||((null===t.min||a<t.min)&&(t.min=a),(null===t.max||a>t.max)&&(t.max=a))}))}));t.min=isFinite(t.min)&&!isNaN(t.min)?t.min:0,t.max=isFinite(t.max)&&!isNaN(t.max)?t.max:1,this.handleTickRangeOptions()},_computeTickLimit:function(){var t;return this.isHorizontal()?Math.ceil(this.width/40):(t=dt.options._parseFont(this.options.ticks),Math.ceil(this.height/t.lineHeight))},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},getPixelForValue:function(t){var e=this,n=e.start,a=+e.getRightValue(t),r=e.end-n;return e.isHorizontal()?e.left+e.width/r*(a-n):e.bottom-e.height/r*(a-n)},getValueForPixel:function(t){var e=this,n=e.isHorizontal();return e.start+(n?t-e.left:e.bottom-t)/(n?e.width:e.height)*(e.end-e.start)},getPixelForTick:function(t){return this.getPixelForValue(this.ticksAsNumbers[t])}});on._defaults=un;var ln=dt.valueOrDefault,dn={position:"left",ticks:{callback:Je.formatters.logarithmic}};function cn(t,e){return dt.isFinite(t)&&t>=0?t:e}var fn=nn.extend({determineDataLimits:function(){var t=this,e=t.options,n=t.chart,a=n.data.datasets,r=t.isHorizontal();function i(e){return r?e.xAxisID===t.id:e.yAxisID===t.id}t.min=null,t.max=null,t.minNotZero=null;var s=e.stacked;if(void 0===s&&dt.each(a,(function(t,e){if(!s){var a=n.getDatasetMeta(e);n.isDatasetVisible(e)&&i(a)&&void 0!==a.stack&&(s=!0)}})),e.stacked||s){var u={};dt.each(a,(function(a,r){var s=n.getDatasetMeta(r),o=[s.type,void 0===e.stacked&&void 0===s.stack?r:"",s.stack].join(".");n.isDatasetVisible(r)&&i(s)&&(void 0===u[o]&&(u[o]=[]),dt.each(a.data,(function(e,n){var a=u[o],r=+t.getRightValue(e);isNaN(r)||s.data[n].hidden||r<0||(a[n]=a[n]||0,a[n]+=r)})))})),dt.each(u,(function(e){if(e.length>0){var n=dt.min(e),a=dt.max(e);t.min=null===t.min?n:Math.min(t.min,n),t.max=null===t.max?a:Math.max(t.max,a)}}))}else dt.each(a,(function(e,a){var r=n.getDatasetMeta(a);n.isDatasetVisible(a)&&i(r)&&dt.each(e.data,(function(e,n){var a=+t.getRightValue(e);isNaN(a)||r.data[n].hidden||a<0||((null===t.min||a<t.min)&&(t.min=a),(null===t.max||a>t.max)&&(t.max=a),0!==a&&(null===t.minNotZero||a<t.minNotZero)&&(t.minNotZero=a))}))}));this.handleTickRangeOptions()},handleTickRangeOptions:function(){var t=this,e=t.options.ticks;t.min=cn(e.min,t.min),t.max=cn(e.max,t.max),t.min===t.max&&(0!==t.min&&null!==t.min?(t.min=Math.pow(10,Math.floor(dt.log10(t.min))-1),t.max=Math.pow(10,Math.floor(dt.log10(t.max))+1)):(t.min=1,t.max=10)),null===t.min&&(t.min=Math.pow(10,Math.floor(dt.log10(t.max))-1)),null===t.max&&(t.max=0!==t.min?Math.pow(10,Math.floor(dt.log10(t.min))+1):10),null===t.minNotZero&&(t.minNotZero=t.min>0?t.min:t.max<1?Math.pow(10,Math.floor(dt.log10(t.max))):1)},buildTicks:function(){var t=this,e=t.options.ticks,n=!t.isHorizontal(),a={min:cn(e.min),max:cn(e.max)},r=t.ticks=function(t,e){var n,a,r=[],i=ln(t.min,Math.pow(10,Math.floor(dt.log10(e.min)))),s=Math.floor(dt.log10(e.max)),u=Math.ceil(e.max/Math.pow(10,s));0===i?(n=Math.floor(dt.log10(e.minNotZero)),a=Math.floor(e.minNotZero/Math.pow(10,n)),r.push(i),i=a*Math.pow(10,n)):(n=Math.floor(dt.log10(i)),a=Math.floor(i/Math.pow(10,n)));var o=n<0?Math.pow(10,Math.abs(n)):1;do{r.push(i),10==++a&&(a=1,o=++n>=0?1:o),i=Math.round(a*Math.pow(10,n)*o)/o}while(n<s||n===s&&a<u);var l=ln(t.max,i);return r.push(l),r}(a,t);t.max=dt.max(r),t.min=dt.min(r),e.reverse?(n=!n,t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max),n&&r.reverse()},convertTicksToLabels:function(){this.tickValues=this.ticks.slice(),nn.prototype.convertTicksToLabels.call(this)},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},getPixelForTick:function(t){return this.getPixelForValue(this.tickValues[t])},_getFirstTickValue:function(t){var e=Math.floor(dt.log10(t));return Math.floor(t/Math.pow(10,e))*Math.pow(10,e)},getPixelForValue:function(t){var e,n,a,r,i,s=this,u=s.options.ticks,o=u.reverse,l=dt.log10,d=s._getFirstTickValue(s.minNotZero),c=0;return t=+s.getRightValue(t),o?(a=s.end,r=s.start,i=-1):(a=s.start,r=s.end,i=1),s.isHorizontal()?(e=s.width,n=o?s.right:s.left):(e=s.height,i*=-1,n=o?s.top:s.bottom),t!==a&&(0===a&&(e-=c=ln(u.fontSize,ut.global.defaultFontSize),a=d),0!==t&&(c+=e/(l(r)-l(a))*(l(t)-l(a))),n+=i*c),n},getValueForPixel:function(t){var e,n,a,r,i=this,s=i.options.ticks,u=s.reverse,o=dt.log10,l=i._getFirstTickValue(i.minNotZero);if(u?(n=i.end,a=i.start):(n=i.start,a=i.end),i.isHorizontal()?(e=i.width,r=u?i.right-t:t-i.left):(e=i.height,r=u?t-i.top:i.bottom-t),r!==n){if(0===n){var d=ln(s.fontSize,ut.global.defaultFontSize);r-=d,e-=d,n=l}r*=o(a)-o(n),r/=e,r=Math.pow(10,o(n)+r)}return r}});fn._defaults=dn;var hn=dt.valueOrDefault,gn=dt.valueAtIndexOrDefault,pn=dt.options.resolve,bn={display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,color:"rgba(0, 0, 0, 0.1)",lineWidth:1,borderDash:[],borderDashOffset:0},gridLines:{circular:!1},ticks:{showLabelBackdrop:!0,backdropColor:"rgba(255,255,255,0.75)",backdropPaddingY:2,backdropPaddingX:2,callback:Je.formatters.linear},pointLabels:{display:!0,fontSize:10,callback:function(t){return t}}};function mn(t){var e=t.options;return e.angleLines.display||e.pointLabels.display?t.chart.data.labels.length:0}function yn(t){var e=t.ticks;return e.display&&t.display?hn(e.fontSize,ut.global.defaultFontSize)+2*e.backdropPaddingY:0}function vn(t,e,n,a,r){return t===a||t===r?{start:e-n/2,end:e+n/2}:t<a||t>r?{start:e-n,end:e}:{start:e,end:e+n}}function xn(t){return 0===t||180===t?"center":t<180?"left":"right"}function _n(t,e,n,a){var r,i,s=n.y+a/2;if(dt.isArray(e))for(r=0,i=e.length;r<i;++r)t.fillText(e[r],n.x,s),s+=a;else t.fillText(e,n.x,s)}function Tn(t,e,n){90===t||270===t?n.y-=e.h/2:(t>270||t<90)&&(n.y-=e.h)}function wn(t){return dt.isNumber(t)?t:0}var On=sn.extend({setDimensions:function(){var t=this;t.width=t.maxWidth,t.height=t.maxHeight,t.paddingTop=yn(t.options)/2,t.xCenter=Math.floor(t.width/2),t.yCenter=Math.floor((t.height-t.paddingTop)/2),t.drawingArea=Math.min(t.height-t.paddingTop,t.width)/2},determineDataLimits:function(){var t=this,e=t.chart,n=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY;dt.each(e.data.datasets,(function(r,i){if(e.isDatasetVisible(i)){var s=e.getDatasetMeta(i);dt.each(r.data,(function(e,r){var i=+t.getRightValue(e);isNaN(i)||s.data[r].hidden||(n=Math.min(i,n),a=Math.max(i,a))}))}})),t.min=n===Number.POSITIVE_INFINITY?0:n,t.max=a===Number.NEGATIVE_INFINITY?0:a,t.handleTickRangeOptions()},_computeTickLimit:function(){return Math.ceil(this.drawingArea/yn(this.options))},convertTicksToLabels:function(){var t=this;sn.prototype.convertTicksToLabels.call(t),t.pointLabels=t.chart.data.labels.map(t.options.pointLabels.callback,t)},getLabelForIndex:function(t,e){return+this.getRightValue(this.chart.data.datasets[e].data[t])},fit:function(){var t=this.options;t.display&&t.pointLabels.display?function(t){var e,n,a,r=dt.options._parseFont(t.options.pointLabels),i={l:0,r:t.width,t:0,b:t.height-t.paddingTop},s={};t.ctx.font=r.string,t._pointLabelSizes=[];var u,o,l,d=mn(t);for(e=0;e<d;e++){a=t.getPointPosition(e,t.drawingArea+5),u=t.ctx,o=r.lineHeight,n=dt.isArray(l=t.pointLabels[e]||"")?{w:dt.longestText(u,u.font,l),h:l.length*o}:{w:u.measureText(l).width,h:o},t._pointLabelSizes[e]=n;var c=t.getIndexAngle(e),f=dt.toDegrees(c)%360,h=vn(f,a.x,n.w,0,180),g=vn(f,a.y,n.h,90,270);h.start<i.l&&(i.l=h.start,s.l=c),h.end>i.r&&(i.r=h.end,s.r=c),g.start<i.t&&(i.t=g.start,s.t=c),g.end>i.b&&(i.b=g.end,s.b=c)}t.setReductions(t.drawingArea,i,s)}(this):this.setCenterPoint(0,0,0,0)},setReductions:function(t,e,n){var a=this,r=e.l/Math.sin(n.l),i=Math.max(e.r-a.width,0)/Math.sin(n.r),s=-e.t/Math.cos(n.t),u=-Math.max(e.b-(a.height-a.paddingTop),0)/Math.cos(n.b);r=wn(r),i=wn(i),s=wn(s),u=wn(u),a.drawingArea=Math.min(Math.floor(t-(r+i)/2),Math.floor(t-(s+u)/2)),a.setCenterPoint(r,i,s,u)},setCenterPoint:function(t,e,n,a){var r=this,i=n+r.drawingArea,s=r.height-r.paddingTop-a-r.drawingArea;r.xCenter=Math.floor((t+r.drawingArea+(r.width-e-r.drawingArea))/2+r.left),r.yCenter=Math.floor((i+s)/2+r.top+r.paddingTop)},getIndexAngle:function(t){return t*(2*Math.PI/mn(this))+(this.chart.options&&this.chart.options.startAngle?this.chart.options.startAngle:0)*Math.PI*2/360},getDistanceFromCenterForValue:function(t){var e=this;if(null===t)return 0;var n=e.drawingArea/(e.max-e.min);return e.options.ticks.reverse?(e.max-t)*n:(t-e.min)*n},getPointPosition:function(t,e){var n=this.getIndexAngle(t)-Math.PI/2;return{x:Math.cos(n)*e+this.xCenter,y:Math.sin(n)*e+this.yCenter}},getPointPositionForValue:function(t,e){return this.getPointPosition(t,this.getDistanceFromCenterForValue(e))},getBasePosition:function(){var t=this.min,e=this.max;return this.getPointPositionForValue(0,this.beginAtZero?0:t<0&&e<0?e:t>0&&e>0?t:0)},draw:function(){var t=this,e=t.options,n=e.gridLines,a=e.ticks;if(e.display){var r=t.ctx,i=this.getIndexAngle(0),s=dt.options._parseFont(a);(e.angleLines.display||e.pointLabels.display)&&function(t){var e=t.ctx,n=t.options,a=n.angleLines,r=n.gridLines,i=n.pointLabels,s=hn(a.lineWidth,r.lineWidth),u=hn(a.color,r.color),o=yn(n);e.save(),e.lineWidth=s,e.strokeStyle=u,e.setLineDash&&(e.setLineDash(pn([a.borderDash,r.borderDash,[]])),e.lineDashOffset=pn([a.borderDashOffset,r.borderDashOffset,0]));var l=t.getDistanceFromCenterForValue(n.ticks.reverse?t.min:t.max),d=dt.options._parseFont(i);e.font=d.string,e.textBaseline="middle";for(var c=mn(t)-1;c>=0;c--){if(a.display&&s&&u){var f=t.getPointPosition(c,l);e.beginPath(),e.moveTo(t.xCenter,t.yCenter),e.lineTo(f.x,f.y),e.stroke()}if(i.display){var h=t.getPointPosition(c,l+(0===c?o/2:0)+5),g=gn(i.fontColor,c,ut.global.defaultFontColor);e.fillStyle=g;var p=t.getIndexAngle(c),b=dt.toDegrees(p);e.textAlign=xn(b),Tn(b,t._pointLabelSizes[c],h),_n(e,t.pointLabels[c]||"",h,d.lineHeight)}}e.restore()}(t),dt.each(t.ticks,(function(e,u){if(u>0||a.reverse){var o=t.getDistanceFromCenterForValue(t.ticksAsNumbers[u]);if(n.display&&0!==u&&function(t,e,n,a){var r,i=t.ctx,s=e.circular,u=mn(t),o=gn(e.color,a-1),l=gn(e.lineWidth,a-1);if((s||u)&&o&&l){if(i.save(),i.strokeStyle=o,i.lineWidth=l,i.setLineDash&&(i.setLineDash(e.borderDash||[]),i.lineDashOffset=e.borderDashOffset||0),i.beginPath(),s)i.arc(t.xCenter,t.yCenter,n,0,2*Math.PI);else{r=t.getPointPosition(0,n),i.moveTo(r.x,r.y);for(var d=1;d<u;d++)r=t.getPointPosition(d,n),i.lineTo(r.x,r.y)}i.closePath(),i.stroke(),i.restore()}}(t,n,o,u),a.display){var l=hn(a.fontColor,ut.global.defaultFontColor);if(r.font=s.string,r.save(),r.translate(t.xCenter,t.yCenter),r.rotate(i),a.showLabelBackdrop){var d=r.measureText(e).width;r.fillStyle=a.backdropColor,r.fillRect(-d/2-a.backdropPaddingX,-o-s.size/2-a.backdropPaddingY,d+2*a.backdropPaddingX,s.size+2*a.backdropPaddingY)}r.textAlign="center",r.textBaseline="middle",r.fillStyle=l,r.fillText(e,0,-o),r.restore()}}}))}}});On._defaults=bn;var Sn=dt.valueOrDefault,In=Number.MIN_SAFE_INTEGER||-9007199254740991,Nn=Number.MAX_SAFE_INTEGER||9007199254740991,Cn={millisecond:{common:!0,size:1,steps:[1,2,5,10,20,50,100,250,500]},second:{common:!0,size:1e3,steps:[1,2,5,10,15,30]},minute:{common:!0,size:6e4,steps:[1,2,5,10,15,30]},hour:{common:!0,size:36e5,steps:[1,2,3,6,12]},day:{common:!0,size:864e5,steps:[1,2,5]},week:{common:!1,size:6048e5,steps:[1,2,3,4]},month:{common:!0,size:2628e6,steps:[1,2,3]},quarter:{common:!1,size:7884e6,steps:[1,2,3,4]},year:{common:!0,size:3154e7}},Rn=Object.keys(Cn);function An(t,e){return t-e}function kn(t){var e,n,a,r={},i=[];for(e=0,n=t.length;e<n;++e)r[a=t[e]]||(r[a]=!0,i.push(a));return i}function En(t,e,n,a){var r=function(t,e,n){for(var a,r,i,s=0,u=t.length-1;s>=0&&s<=u;){if(i=t[a=s+u>>1],!(r=t[a-1]||null))return{lo:null,hi:i};if(i[e]<n)s=a+1;else{if(!(r[e]>n))return{lo:r,hi:i};u=a-1}}return{lo:i,hi:null}}(t,e,n),i=r.lo?r.hi?r.lo:t[t.length-2]:t[0],s=r.lo?r.hi?r.hi:t[t.length-1]:t[1],u=s[e]-i[e];return i[a]+(s[a]-i[a])*(u?(n-i[e])/u:0)}function Ln(t,e){var n=t._adapter,a=t.options.time,r=a.parser,i=r||a.format,s=e;return"function"==typeof r&&(s=r(s)),dt.isFinite(s)||(s="string"==typeof i?n.parse(s,i):n.parse(s)),null!==s?+s:(r||"function"!=typeof i||(s=i(e),dt.isFinite(s)||(s=n.parse(s))),s)}function Dn(t,e){if(dt.isNullOrUndef(e))return null;var n=t.options.time,a=Ln(t,t.getRightValue(e));return null===a||n.round&&(a=+t._adapter.startOf(a,n.round)),a}function Pn(t){for(var e=Rn.indexOf(t)+1,n=Rn.length;e<n;++e)if(Cn[Rn[e]].common)return Rn[e]}var Mn=nn.extend({initialize:function(){this.mergeTicksOptions(),nn.prototype.initialize.call(this)},update:function(){var t=this,e=t.options,n=e.time||(e.time={}),a=t._adapter=new Ze._date(e.adapters.date);return n.format&&console.warn("options.time.format is deprecated and replaced by options.time.parser."),dt.mergeIf(n.displayFormats,a.formats()),nn.prototype.update.apply(t,arguments)},getRightValue:function(t){return t&&void 0!==t.t&&(t=t.t),nn.prototype.getRightValue.call(this,t)},determineDataLimits:function(){var t,e,n,a,r,i,s=this,u=s.chart,o=s._adapter,l=s.options.time,d=l.unit||"day",c=Nn,f=In,h=[],g=[],p=[],b=u.data.labels||[];for(t=0,n=b.length;t<n;++t)p.push(Dn(s,b[t]));for(t=0,n=(u.data.datasets||[]).length;t<n;++t)if(u.isDatasetVisible(t))if(dt.isObject((r=u.data.datasets[t].data)[0]))for(g[t]=[],e=0,a=r.length;e<a;++e)i=Dn(s,r[e]),h.push(i),g[t][e]=i;else{for(e=0,a=p.length;e<a;++e)h.push(p[e]);g[t]=p.slice(0)}else g[t]=[];p.length&&(p=kn(p).sort(An),c=Math.min(c,p[0]),f=Math.max(f,p[p.length-1])),h.length&&(h=kn(h).sort(An),c=Math.min(c,h[0]),f=Math.max(f,h[h.length-1])),c=Dn(s,l.min)||c,f=Dn(s,l.max)||f,c=c===Nn?+o.startOf(Date.now(),d):c,f=f===In?+o.endOf(Date.now(),d)+1:f,s.min=Math.min(c,f),s.max=Math.max(c+1,f),s._horizontal=s.isHorizontal(),s._table=[],s._timestamps={data:h,datasets:g,labels:p}},buildTicks:function(){var t,e,n,a=this,r=a.min,i=a.max,s=a.options,u=s.time,o=[],l=[];switch(s.ticks.source){case"data":o=a._timestamps.data;break;case"labels":o=a._timestamps.labels;break;case"auto":default:o=function(t,e,n,a){var r,i=t._adapter,s=t.options,u=s.time,o=u.unit||function(t,e,n,a){var r,i,s=Rn.length;for(r=Rn.indexOf(t);r<s-1;++r)if((i=Cn[Rn[r]]).common&&Math.ceil((n-e)/((i.steps?i.steps[i.steps.length-1]:Nn)*i.size))<=a)return Rn[r];return Rn[s-1]}(u.minUnit,e,n,a),l=Pn(o),d=Sn(u.stepSize,u.unitStepSize),c="week"===o&&u.isoWeekday,f=s.ticks.major.enabled,h=Cn[o],g=e,p=n,b=[];for(d||(d=function(t,e,n,a){var r,i,s,u=e-t,o=Cn[n],l=o.size,d=o.steps;if(!d)return Math.ceil(u/(a*l));for(r=0,i=d.length;r<i&&(s=d[r],!(Math.ceil(u/(l*s))<=a));++r);return s}(e,n,o,a)),c&&(g=+i.startOf(g,"isoWeek",c),p=+i.startOf(p,"isoWeek",c)),g=+i.startOf(g,c?"day":o),(p=+i.startOf(p,c?"day":o))<n&&(p=+i.add(p,1,o)),r=g,f&&l&&!c&&!u.round&&(r=+i.startOf(r,l),r=+i.add(r,~~((g-r)/(h.size*d))*d,o));r<p;r=+i.add(r,d,o))b.push(+r);return b.push(+r),b}(a,r,i,a.getLabelCapacity(r))}for("ticks"===s.bounds&&o.length&&(r=o[0],i=o[o.length-1]),r=Dn(a,u.min)||r,i=Dn(a,u.max)||i,t=0,e=o.length;t<e;++t)(n=o[t])>=r&&n<=i&&l.push(n);return a.min=r,a.max=i,a._unit=u.unit||function(t,e,n,a,r){var i,s;for(i=Rn.length-1;i>=Rn.indexOf(n);i--)if(Cn[s=Rn[i]].common&&t._adapter.diff(r,a,s)>=e.length)return s;return Rn[n?Rn.indexOf(n):0]}(a,l,u.minUnit,a.min,a.max),a._majorUnit=Pn(a._unit),a._table=function(t,e,n,a){if("linear"===a||!t.length)return[{time:e,pos:0},{time:n,pos:1}];var r,i,s,u,o,l=[],d=[e];for(r=0,i=t.length;r<i;++r)(u=t[r])>e&&u<n&&d.push(u);for(d.push(n),r=0,i=d.length;r<i;++r)o=d[r+1],u=d[r],void 0!==(s=d[r-1])&&void 0!==o&&Math.round((o+s)/2)===u||l.push({time:u,pos:r/(i-1)});return l}(a._timestamps.data,r,i,s.distribution),a._offsets=function(t,e,n,a,r){var i,s,u=0,o=0;return r.offset&&e.length&&(r.time.min||(i=En(t,"time",e[0],"pos"),u=1===e.length?1-i:(En(t,"time",e[1],"pos")-i)/2),r.time.max||(s=En(t,"time",e[e.length-1],"pos"),o=1===e.length?s:(s-En(t,"time",e[e.length-2],"pos"))/2)),{start:u,end:o}}(a._table,l,0,0,s),s.ticks.reverse&&l.reverse(),function(t,e,n){var a,r,i,s,u=[];for(a=0,r=e.length;a<r;++a)i=e[a],s=!!n&&i===+t._adapter.startOf(i,n),u.push({value:i,major:s});return u}(a,l,a._majorUnit)},getLabelForIndex:function(t,e){var n=this,a=n._adapter,r=n.chart.data,i=n.options.time,s=r.labels&&t<r.labels.length?r.labels[t]:"",u=r.datasets[e].data[t];return dt.isObject(u)&&(s=n.getRightValue(u)),i.tooltipFormat?a.format(Ln(n,s),i.tooltipFormat):"string"==typeof s?s:a.format(Ln(n,s),i.displayFormats.datetime)},tickFormatFunction:function(t,e,n,a){var r=this._adapter,i=this.options,s=i.time.displayFormats,u=s[this._unit],o=this._majorUnit,l=s[o],d=+r.startOf(t,o),c=i.ticks.major,f=c.enabled&&o&&l&&t===d,h=r.format(t,a||(f?l:u)),g=f?c:i.ticks.minor,p=Sn(g.callback,g.userCallback);return p?p(h,e,n):h},convertTicksToLabels:function(t){var e,n,a=[];for(e=0,n=t.length;e<n;++e)a.push(this.tickFormatFunction(t[e].value,e,t));return a},getPixelForOffset:function(t){var e=this,n=e.options.ticks.reverse,a=e._horizontal?e.width:e.height,r=e._horizontal?n?e.right:e.left:n?e.bottom:e.top,i=En(e._table,"time",t,"pos"),s=a*(e._offsets.start+i)/(e._offsets.start+1+e._offsets.end);return n?r-s:r+s},getPixelForValue:function(t,e,n){var a=null;if(void 0!==e&&void 0!==n&&(a=this._timestamps.datasets[n][e]),null===a&&(a=Dn(this,t)),null!==a)return this.getPixelForOffset(a)},getPixelForTick:function(t){var e=this.getTicks();return t>=0&&t<e.length?this.getPixelForOffset(e[t].value):null},getValueForPixel:function(t){var e=this,n=e._horizontal?e.width:e.height,a=En(e._table,"pos",(n?(t-(e._horizontal?e.left:e.top))/n:0)*(e._offsets.start+1+e._offsets.start)-e._offsets.end,"time");return e._adapter._create(a)},getLabelWidth:function(t){var e=this.options.ticks,n=this.ctx.measureText(t).width,a=dt.toRadians(e.maxRotation),r=Math.cos(a),i=Math.sin(a);return n*r+Sn(e.fontSize,ut.global.defaultFontSize)*i},getLabelCapacity:function(t){var e=this,n=e.tickFormatFunction(t,0,[],e.options.time.displayFormats.millisecond),a=e.getLabelWidth(n),r=e.isHorizontal()?e.width:e.height,i=Math.floor(r/a);return i>0?i:1}});Mn._defaults={position:"bottom",distribution:"linear",bounds:"data",adapters:{},time:{parser:!1,format:!1,unit:!1,round:!1,displayFormat:!1,isoWeekday:!1,minUnit:"millisecond",displayFormats:{}},ticks:{autoSkip:!1,source:"auto",major:{enabled:!1}}};var qn={category:an,linear:on,logarithmic:fn,radialLinear:On,time:Mn},jn={datetime:"MMM D, YYYY, h:mm:ss a",millisecond:"h:mm:ss.SSS a",second:"h:mm:ss a",minute:"h:mm a",hour:"hA",day:"MMM D",week:"ll",month:"MMM YYYY",quarter:"[Q]Q - YYYY",year:"YYYY"};Ze._date.override("function"==typeof t?{_id:"moment",formats:function(){return jn},parse:function(e,n){return"string"==typeof e&&"string"==typeof n?e=t(e,n):e instanceof t||(e=t(e)),e.isValid()?e.valueOf():null},format:function(e,n){return t(e).format(n)},add:function(e,n,a){return t(e).add(n,a).valueOf()},diff:function(e,n,a){return t.duration(t(e).diff(t(n))).as(a)},startOf:function(e,n,a){return e=t(e),"isoWeek"===n?e.isoWeekday(a).valueOf():e.startOf(n).valueOf()},endOf:function(e,n){return t(e).endOf(n).valueOf()},_create:function(e){return t(e)}}:{}),ut._set("global",{plugins:{filler:{propagate:!0}}});var Fn={dataset:function(t){var e=t.fill,n=t.chart,a=n.getDatasetMeta(e),r=a&&n.isDatasetVisible(e)&&a.dataset._children||[],i=r.length||0;return i?function(t,e){return e<i&&r[e]._view||null}:null},boundary:function(t){var e=t.boundary,n=e?e.x:null,a=e?e.y:null;return function(t){return{x:null===n?t.x:n,y:null===a?t.y:a}}}};function Vn(t,e,n){var a,r=t._model||{},i=r.fill;if(void 0===i&&(i=!!r.backgroundColor),!1===i||null===i)return!1;if(!0===i)return"origin";if(a=parseFloat(i,10),isFinite(a)&&Math.floor(a)===a)return"-"!==i[0]&&"+"!==i[0]||(a=e+a),!(a===e||a<0||a>=n)&&a;switch(i){case"bottom":return"start";case"top":return"end";case"zero":return"origin";case"origin":case"start":case"end":return i;default:return!1}}function Gn(t){var e,n=t.el._model||{},a=t.el._scale||{},r=t.fill,i=null;if(isFinite(r))return null;if("start"===r?i=void 0===n.scaleBottom?a.bottom:n.scaleBottom:"end"===r?i=void 0===n.scaleTop?a.top:n.scaleTop:void 0!==n.scaleZero?i=n.scaleZero:a.getBasePosition?i=a.getBasePosition():a.getBasePixel&&(i=a.getBasePixel()),null!=i){if(void 0!==i.x&&void 0!==i.y)return i;if(dt.isFinite(i))return{x:(e=a.isHorizontal())?i:null,y:e?null:i}}return null}function Bn(t,e,n){var a,r=t[e].fill,i=[e];if(!n)return r;for(;!1!==r&&-1===i.indexOf(r);){if(!isFinite(r))return r;if(!(a=t[r]))return!1;if(a.visible)return r;i.push(r),r=a.fill}return!1}function zn(t){var e=t.fill,n="dataset";return!1===e?null:(isFinite(e)||(n="boundary"),Fn[n](t))}function Yn(t){return t&&!t.skip}function Hn(t,e,n,a,r){var i;if(a&&r){for(t.moveTo(e[0].x,e[0].y),i=1;i<a;++i)dt.canvas.lineTo(t,e[i-1],e[i]);for(t.lineTo(n[r-1].x,n[r-1].y),i=r-1;i>0;--i)dt.canvas.lineTo(t,n[i],n[i-1],!0)}}var Un={id:"filler",afterDatasetsUpdate:function(t,e){var n,a,r,i,s=(t.data.datasets||[]).length,u=e.propagate,o=[];for(a=0;a<s;++a)i=null,(r=(n=t.getDatasetMeta(a)).dataset)&&r._model&&r instanceof qt.Line&&(i={visible:t.isDatasetVisible(a),fill:Vn(r,a,s),chart:t,el:r}),n.$filler=i,o.push(i);for(a=0;a<s;++a)(i=o[a])&&(i.fill=Bn(o,a,u),i.boundary=Gn(i),i.mapper=zn(i))},beforeDatasetDraw:function(t,e){var n=e.meta.$filler;if(n){var a=t.ctx,r=n.el,i=r._view,s=r._children||[],u=n.mapper,o=i.backgroundColor||ut.global.defaultColor;u&&o&&s.length&&(dt.canvas.clipArea(a,t.chartArea),function(t,e,n,a,r,i){var s,u,o,l,d,c,f,h=e.length,g=a.spanGaps,p=[],b=[],m=0,y=0;for(t.beginPath(),s=0,u=h+!!i;s<u;++s)d=n(l=e[o=s%h]._view,o,a),c=Yn(l),f=Yn(d),c&&f?(m=p.push(l),y=b.push(d)):m&&y&&(g?(c&&p.push(l),f&&b.push(d)):(Hn(t,p,b,m,y),m=y=0,p=[],b=[]));Hn(t,p,b,m,y),t.closePath(),t.fillStyle=r,t.fill()}(a,s,u,i,o,r._loop),dt.canvas.unclipArea(a))}}},Wn=dt.noop,Kn=dt.valueOrDefault;function $n(t,e){return t.usePointStyle&&t.boxWidth>e?e:t.boxWidth}ut._set("global",{legend:{display:!0,position:"top",fullWidth:!0,reverse:!1,weight:1e3,onClick:function(t,e){var n=e.datasetIndex,a=this.chart,r=a.getDatasetMeta(n);r.hidden=null===r.hidden?!a.data.datasets[n].hidden:null,a.update()},onHover:null,onLeave:null,labels:{boxWidth:40,padding:10,generateLabels:function(t){var e=t.data;return dt.isArray(e.datasets)?e.datasets.map((function(e,n){return{text:e.label,fillStyle:dt.isArray(e.backgroundColor)?e.backgroundColor[0]:e.backgroundColor,hidden:!t.isDatasetVisible(n),lineCap:e.borderCapStyle,lineDash:e.borderDash,lineDashOffset:e.borderDashOffset,lineJoin:e.borderJoinStyle,lineWidth:e.borderWidth,strokeStyle:e.borderColor,pointStyle:e.pointStyle,datasetIndex:n}}),this):[]}}},legendCallback:function(t){var e=[];e.push('<ul class="'+t.id+'-legend">');for(var n=0;n<t.data.datasets.length;n++)e.push('<li><span style="background-color:'+t.data.datasets[n].backgroundColor+'"></span>'),t.data.datasets[n].label&&e.push(t.data.datasets[n].label),e.push("</li>");return e.push("</ul>"),e.join("")}});var Zn=gt.extend({initialize:function(t){dt.extend(this,t),this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1},beforeUpdate:Wn,update:function(t,e,n){var a=this;return a.beforeUpdate(),a.maxWidth=t,a.maxHeight=e,a.margins=n,a.beforeSetDimensions(),a.setDimensions(),a.afterSetDimensions(),a.beforeBuildLabels(),a.buildLabels(),a.afterBuildLabels(),a.beforeFit(),a.fit(),a.afterFit(),a.afterUpdate(),a.minSize},afterUpdate:Wn,beforeSetDimensions:Wn,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:Wn,beforeBuildLabels:Wn,buildLabels:function(){var t=this,e=t.options.labels||{},n=dt.callback(e.generateLabels,[t.chart],t)||[];e.filter&&(n=n.filter((function(n){return e.filter(n,t.chart.data)}))),t.options.reverse&&n.reverse(),t.legendItems=n},afterBuildLabels:Wn,beforeFit:Wn,fit:function(){var t=this,e=t.options,n=e.labels,a=e.display,r=t.ctx,i=dt.options._parseFont(n),s=i.size,u=t.legendHitBoxes=[],o=t.minSize,l=t.isHorizontal();if(l?(o.width=t.maxWidth,o.height=a?10:0):(o.width=a?10:0,o.height=t.maxHeight),a)if(r.font=i.string,l){var d=t.lineWidths=[0],c=0;r.textAlign="left",r.textBaseline="top",dt.each(t.legendItems,(function(t,e){var a=$n(n,s)+s/2+r.measureText(t.text).width;(0===e||d[d.length-1]+a+n.padding>o.width)&&(c+=s+n.padding,d[d.length-(e>0?0:1)]=n.padding),u[e]={left:0,top:0,width:a,height:s},d[d.length-1]+=a+n.padding})),o.height+=c}else{var f=n.padding,h=t.columnWidths=[],g=n.padding,p=0,b=0,m=s+f;dt.each(t.legendItems,(function(t,e){var a=$n(n,s)+s/2+r.measureText(t.text).width;e>0&&b+m>o.height-f&&(g+=p+n.padding,h.push(p),p=0,b=0),p=Math.max(p,a),b+=m,u[e]={left:0,top:0,width:a,height:s}})),g+=p,h.push(p),o.width+=g}t.width=o.width,t.height=o.height},afterFit:Wn,isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},draw:function(){var t=this,e=t.options,n=e.labels,a=ut.global,r=a.defaultColor,i=a.elements.line,s=t.width,u=t.lineWidths;if(e.display){var o,l=t.ctx,d=Kn(n.fontColor,a.defaultFontColor),c=dt.options._parseFont(n),f=c.size;l.textAlign="left",l.textBaseline="middle",l.lineWidth=.5,l.strokeStyle=d,l.fillStyle=d,l.font=c.string;var h=$n(n,f),g=t.legendHitBoxes,p=t.isHorizontal();o=p?{x:t.left+(s-u[0])/2+n.padding,y:t.top+n.padding,line:0}:{x:t.left+n.padding,y:t.top+n.padding,line:0};var b=f+n.padding;dt.each(t.legendItems,(function(a,d){var c=l.measureText(a.text).width,m=h+f/2+c,y=o.x,v=o.y;p?d>0&&y+m+n.padding>t.left+t.minSize.width&&(v=o.y+=b,o.line++,y=o.x=t.left+(s-u[o.line])/2+n.padding):d>0&&v+b>t.top+t.minSize.height&&(y=o.x=y+t.columnWidths[o.line]+n.padding,v=o.y=t.top+n.padding,o.line++),function(t,n,a){if(!(isNaN(h)||h<=0)){l.save();var s=Kn(a.lineWidth,i.borderWidth);if(l.fillStyle=Kn(a.fillStyle,r),l.lineCap=Kn(a.lineCap,i.borderCapStyle),l.lineDashOffset=Kn(a.lineDashOffset,i.borderDashOffset),l.lineJoin=Kn(a.lineJoin,i.borderJoinStyle),l.lineWidth=s,l.strokeStyle=Kn(a.strokeStyle,r),l.setLineDash&&l.setLineDash(Kn(a.lineDash,i.borderDash)),e.labels&&e.labels.usePointStyle){var u=h*Math.SQRT2/2;dt.canvas.drawPoint(l,a.pointStyle,u,t+h/2,n+f/2)}else 0!==s&&l.strokeRect(t,n,h,f),l.fillRect(t,n,h,f);l.restore()}}(y,v,a),g[d].left=y,g[d].top=v,function(t,e,n,a){var r=f/2,i=h+r+t,s=e+r;l.fillText(n.text,i,s),n.hidden&&(l.beginPath(),l.lineWidth=2,l.moveTo(i,s),l.lineTo(i+a,s),l.stroke())}(y,v,a,c),p?o.x+=m+n.padding:o.y+=b}))}},_getLegendItemAt:function(t,e){var n,a,r,i=this;if(t>=i.left&&t<=i.right&&e>=i.top&&e<=i.bottom)for(r=i.legendHitBoxes,n=0;n<r.length;++n)if(t>=(a=r[n]).left&&t<=a.left+a.width&&e>=a.top&&e<=a.top+a.height)return i.legendItems[n];return null},handleEvent:function(t){var e,n=this,a=n.options,r="mouseup"===t.type?"click":t.type;if("mousemove"===r){if(!a.onHover&&!a.onLeave)return}else{if("click"!==r)return;if(!a.onClick)return}e=n._getLegendItemAt(t.x,t.y),"click"===r?e&&a.onClick&&a.onClick.call(n,t.native,e):(a.onLeave&&e!==n._hoveredItem&&(n._hoveredItem&&a.onLeave.call(n,t.native,n._hoveredItem),n._hoveredItem=e),a.onHover&&e&&a.onHover.call(n,t.native,e))}});function Jn(t,e){var n=new Zn({ctx:t.ctx,options:e,chart:t});ve.configure(t,n,e),ve.addBox(t,n),t.legend=n}var Qn={id:"legend",_element:Zn,beforeInit:function(t){var e=t.options.legend;e&&Jn(t,e)},beforeUpdate:function(t){var e=t.options.legend,n=t.legend;e?(dt.mergeIf(e,ut.global.legend),n?(ve.configure(t,n,e),n.options=e):Jn(t,e)):n&&(ve.removeBox(t,n),delete t.legend)},afterEvent:function(t,e){var n=t.legend;n&&n.handleEvent(e)}},Xn=dt.noop;ut._set("global",{title:{display:!1,fontStyle:"bold",fullWidth:!0,padding:10,position:"top",text:"",weight:2e3}});var ta=gt.extend({initialize:function(t){dt.extend(this,t),this.legendHitBoxes=[]},beforeUpdate:Xn,update:function(t,e,n){var a=this;return a.beforeUpdate(),a.maxWidth=t,a.maxHeight=e,a.margins=n,a.beforeSetDimensions(),a.setDimensions(),a.afterSetDimensions(),a.beforeBuildLabels(),a.buildLabels(),a.afterBuildLabels(),a.beforeFit(),a.fit(),a.afterFit(),a.afterUpdate(),a.minSize},afterUpdate:Xn,beforeSetDimensions:Xn,setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0,t.minSize={width:0,height:0}},afterSetDimensions:Xn,beforeBuildLabels:Xn,buildLabels:Xn,afterBuildLabels:Xn,beforeFit:Xn,fit:function(){var t=this,e=t.options,n=e.display,a=t.minSize,r=dt.isArray(e.text)?e.text.length:1,i=dt.options._parseFont(e),s=n?r*i.lineHeight+2*e.padding:0;t.isHorizontal()?(a.width=t.maxWidth,a.height=s):(a.width=s,a.height=t.maxHeight),t.width=a.width,t.height=a.height},afterFit:Xn,isHorizontal:function(){var t=this.options.position;return"top"===t||"bottom"===t},draw:function(){var t=this,e=t.ctx,n=t.options;if(n.display){var a,r,i,s=dt.options._parseFont(n),u=s.lineHeight,o=u/2+n.padding,l=0,d=t.top,c=t.left,f=t.bottom,h=t.right;e.fillStyle=dt.valueOrDefault(n.fontColor,ut.global.defaultFontColor),e.font=s.string,t.isHorizontal()?(r=c+(h-c)/2,i=d+o,a=h-c):(r="left"===n.position?c+o:h-o,i=d+(f-d)/2,a=f-d,l=Math.PI*("left"===n.position?-.5:.5)),e.save(),e.translate(r,i),e.rotate(l),e.textAlign="center",e.textBaseline="middle";var g=n.text;if(dt.isArray(g))for(var p=0,b=0;b<g.length;++b)e.fillText(g[b],0,p,a),p+=u;else e.fillText(g,0,0,a);e.restore()}}});function ea(t,e){var n=new ta({ctx:t.ctx,options:e,chart:t});ve.configure(t,n,e),ve.addBox(t,n),t.titleBlock=n}var na={},aa=Un,ra=Qn,ia={id:"title",_element:ta,beforeInit:function(t){var e=t.options.title;e&&ea(t,e)},beforeUpdate:function(t){var e=t.options.title,n=t.titleBlock;e?(dt.mergeIf(e,ut.global.title),n?(ve.configure(t,n,e),n.options=e):ea(t,e)):n&&(ve.removeBox(t,n),delete t.titleBlock)}};for(var sa in na.filler=aa,na.legend=ra,na.title=ia,We.helpers=dt,function(){function t(t,e,n){var a;return"string"==typeof t?(a=parseInt(t,10),-1!==t.indexOf("%")&&(a=a/100*e.parentNode[n])):a=t,a}function e(t){return null!=t&&"none"!==t}function n(n,a,r){var i=document.defaultView,s=dt._getParentNode(n),u=i.getComputedStyle(n)[a],o=i.getComputedStyle(s)[a],l=e(u),d=e(o),c=Number.POSITIVE_INFINITY;return l||d?Math.min(l?t(u,n,r):c,d?t(o,s,r):c):"none"}dt.where=function(t,e){if(dt.isArray(t)&&Array.prototype.filter)return t.filter(e);var n=[];return dt.each(t,(function(t){e(t)&&n.push(t)})),n},dt.findIndex=Array.prototype.findIndex?function(t,e,n){return t.findIndex(e,n)}:function(t,e,n){n=void 0===n?t:n;for(var a=0,r=t.length;a<r;++a)if(e.call(n,t[a],a,t))return a;return-1},dt.findNextWhere=function(t,e,n){dt.isNullOrUndef(n)&&(n=-1);for(var a=n+1;a<t.length;a++){var r=t[a];if(e(r))return r}},dt.findPreviousWhere=function(t,e,n){dt.isNullOrUndef(n)&&(n=t.length);for(var a=n-1;a>=0;a--){var r=t[a];if(e(r))return r}},dt.isNumber=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},dt.almostEquals=function(t,e,n){return Math.abs(t-e)<n},dt.almostWhole=function(t,e){var n=Math.round(t);return n-e<t&&n+e>t},dt.max=function(t){return t.reduce((function(t,e){return isNaN(e)?t:Math.max(t,e)}),Number.NEGATIVE_INFINITY)},dt.min=function(t){return t.reduce((function(t,e){return isNaN(e)?t:Math.min(t,e)}),Number.POSITIVE_INFINITY)},dt.sign=Math.sign?function(t){return Math.sign(t)}:function(t){return 0==(t=+t)||isNaN(t)?t:t>0?1:-1},dt.log10=Math.log10?function(t){return Math.log10(t)}:function(t){var e=Math.log(t)*Math.LOG10E,n=Math.round(e);return t===Math.pow(10,n)?n:e},dt.toRadians=function(t){return t*(Math.PI/180)},dt.toDegrees=function(t){return t*(180/Math.PI)},dt._decimalPlaces=function(t){if(dt.isFinite(t)){for(var e=1,n=0;Math.round(t*e)/e!==t;)e*=10,n++;return n}},dt.getAngleFromPoint=function(t,e){var n=e.x-t.x,a=e.y-t.y,r=Math.sqrt(n*n+a*a),i=Math.atan2(a,n);return i<-.5*Math.PI&&(i+=2*Math.PI),{angle:i,distance:r}},dt.distanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},dt.aliasPixel=function(t){return t%2==0?0:.5},dt._alignPixel=function(t,e,n){var a=t.currentDevicePixelRatio,r=n/2;return Math.round((e-r)*a)/a+r},dt.splineCurve=function(t,e,n,a){var r=t.skip?e:t,i=e,s=n.skip?e:n,u=Math.sqrt(Math.pow(i.x-r.x,2)+Math.pow(i.y-r.y,2)),o=Math.sqrt(Math.pow(s.x-i.x,2)+Math.pow(s.y-i.y,2)),l=u/(u+o),d=o/(u+o),c=a*(l=isNaN(l)?0:l),f=a*(d=isNaN(d)?0:d);return{previous:{x:i.x-c*(s.x-r.x),y:i.y-c*(s.y-r.y)},next:{x:i.x+f*(s.x-r.x),y:i.y+f*(s.y-r.y)}}},dt.EPSILON=Number.EPSILON||1e-14,dt.splineCurveMonotone=function(t){var e,n,a,r,i,s,u,o,l,d=(t||[]).map((function(t){return{model:t._model,deltaK:0,mK:0}})),c=d.length;for(e=0;e<c;++e)if(!(a=d[e]).model.skip){if(n=e>0?d[e-1]:null,(r=e<c-1?d[e+1]:null)&&!r.model.skip){var f=r.model.x-a.model.x;a.deltaK=0!==f?(r.model.y-a.model.y)/f:0}a.mK=!n||n.model.skip?a.deltaK:!r||r.model.skip?n.deltaK:this.sign(n.deltaK)!==this.sign(a.deltaK)?0:(n.deltaK+a.deltaK)/2}for(e=0;e<c-1;++e)r=d[e+1],(a=d[e]).model.skip||r.model.skip||(dt.almostEquals(a.deltaK,0,this.EPSILON)?a.mK=r.mK=0:(i=a.mK/a.deltaK,s=r.mK/a.deltaK,(o=Math.pow(i,2)+Math.pow(s,2))<=9||(u=3/Math.sqrt(o),a.mK=i*u*a.deltaK,r.mK=s*u*a.deltaK)));for(e=0;e<c;++e)(a=d[e]).model.skip||(r=e<c-1?d[e+1]:null,(n=e>0?d[e-1]:null)&&!n.model.skip&&(a.model.controlPointPreviousX=a.model.x-(l=(a.model.x-n.model.x)/3),a.model.controlPointPreviousY=a.model.y-l*a.mK),r&&!r.model.skip&&(a.model.controlPointNextX=a.model.x+(l=(r.model.x-a.model.x)/3),a.model.controlPointNextY=a.model.y+l*a.mK))},dt.nextItem=function(t,e,n){return n?e>=t.length-1?t[0]:t[e+1]:e>=t.length-1?t[t.length-1]:t[e+1]},dt.previousItem=function(t,e,n){return n?e<=0?t[t.length-1]:t[e-1]:e<=0?t[0]:t[e-1]},dt.niceNum=function(t,e){var n=Math.floor(dt.log10(t)),a=t/Math.pow(10,n);return(e?a<1.5?1:a<3?2:a<7?5:10:a<=1?1:a<=2?2:a<=5?5:10)*Math.pow(10,n)},dt.requestAnimFrame="undefined"==typeof window?function(t){t()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){return window.setTimeout(t,1e3/60)},dt.getRelativePosition=function(t,e){var n,a,r=t.originalEvent||t,i=t.target||t.srcElement,s=i.getBoundingClientRect(),u=r.touches;u&&u.length>0?(n=u[0].clientX,a=u[0].clientY):(n=r.clientX,a=r.clientY);var o=parseFloat(dt.getStyle(i,"padding-left")),l=parseFloat(dt.getStyle(i,"padding-top")),d=parseFloat(dt.getStyle(i,"padding-right")),c=parseFloat(dt.getStyle(i,"padding-bottom")),f=s.bottom-s.top-l-c;return{x:n=Math.round((n-s.left-o)/(s.right-s.left-o-d)*i.width/e.currentDevicePixelRatio),y:a=Math.round((a-s.top-l)/f*i.height/e.currentDevicePixelRatio)}},dt.getConstraintWidth=function(t){return n(t,"max-width","clientWidth")},dt.getConstraintHeight=function(t){return n(t,"max-height","clientHeight")},dt._calculatePadding=function(t,e,n){return(e=dt.getStyle(t,e)).indexOf("%")>-1?n*parseInt(e,10)/100:parseInt(e,10)},dt._getParentNode=function(t){var e=t.parentNode;return e&&"[object ShadowRoot]"===e.toString()&&(e=e.host),e},dt.getMaximumWidth=function(t){var e=dt._getParentNode(t);if(!e)return t.clientWidth;var n=e.clientWidth,a=n-dt._calculatePadding(e,"padding-left",n)-dt._calculatePadding(e,"padding-right",n),r=dt.getConstraintWidth(t);return isNaN(r)?a:Math.min(a,r)},dt.getMaximumHeight=function(t){var e=dt._getParentNode(t);if(!e)return t.clientHeight;var n=e.clientHeight,a=n-dt._calculatePadding(e,"padding-top",n)-dt._calculatePadding(e,"padding-bottom",n),r=dt.getConstraintHeight(t);return isNaN(r)?a:Math.min(a,r)},dt.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,null).getPropertyValue(e)},dt.retinaScale=function(t,e){var n=t.currentDevicePixelRatio=e||"undefined"!=typeof window&&window.devicePixelRatio||1;if(1!==n){var a=t.canvas,r=t.height,i=t.width;a.height=r*n,a.width=i*n,t.ctx.scale(n,n),a.style.height||a.style.width||(a.style.height=r+"px",a.style.width=i+"px")}},dt.fontString=function(t,e,n){return e+" "+t+"px "+n},dt.longestText=function(t,e,n,a){var r=(a=a||{}).data=a.data||{},i=a.garbageCollect=a.garbageCollect||[];a.font!==e&&(r=a.data={},i=a.garbageCollect=[],a.font=e),t.font=e;var s=0;dt.each(n,(function(e){null!=e&&!0!==dt.isArray(e)?s=dt.measureText(t,r,i,s,e):dt.isArray(e)&&dt.each(e,(function(e){null==e||dt.isArray(e)||(s=dt.measureText(t,r,i,s,e))}))}));var u=i.length/2;if(u>n.length){for(var o=0;o<u;o++)delete r[i[o]];i.splice(0,u)}return s},dt.measureText=function(t,e,n,a,r){var i=e[r];return i||(i=e[r]=t.measureText(r).width,n.push(r)),i>a&&(a=i),a},dt.numberOfLabelLines=function(t){var e=1;return dt.each(t,(function(t){dt.isArray(t)&&t.length>e&&(e=t.length)})),e},dt.color=W?function(t){return t instanceof CanvasGradient&&(t=ut.global.defaultColor),W(t)}:function(t){return console.error("Color.js not found!"),t},dt.getHoverColor=function(t){return t instanceof CanvasPattern||t instanceof CanvasGradient?t:dt.color(t).saturate(.5).darken(.1).rgbString()}}(),We._adapters=Ze,We.Animation=bt,We.animationService=mt,We.controllers=ue,We.DatasetController=Tt,We.defaults=ut,We.Element=gt,We.elements=qt,We.Interaction=ge,We.layouts=ve,We.platform=Ae,We.plugins=ke,We.Scale=nn,We.scaleService=Ee,We.Ticks=Je,We.Tooltip=Ve,We.helpers.each(qn,(function(t,e){We.scaleService.registerScaleType(e,t,t._defaults)})),na)na.hasOwnProperty(sa)&&We.plugins.register(na[sa]);We.platform.initialize();var ua=We;return"undefined"!=typeof window&&(window.Chart=We),We.Chart=We,We.Legend=na.legend._element,We.Title=na.title._element,We.pluginService=We.plugins,We.PluginBase=We.Element.extend({}),We.canvasHelpers=We.helpers.canvas,We.layoutService=We.layouts,We.LinearScaleBase=sn,We.helpers.each(["Bar","Bubble","Doughnut","Line","PolarArea","Radar","Scatter"],(function(t){We[t]=function(e,n){return new We(e,We.helpers.merge(n||{},{type:t.charAt(0).toLowerCase()+t.slice(1)}))}})),ua}(function(){try{return n("wd/R")}catch(t){}}())},MOZO:function(t,e,n){var a=n("0GLT"),r=n("VLqJ"),i=n("fqHM"),s=n("6II+");t.exports=function(t,e){return a(t)?t:r(t,e)?[t]:i(s(t))}},MP8s:function(t,e,n){"use strict";n.d(e,"a",(function(){return T}));var a=n("8Y7J"),r=n("2vnA"),i=n("f95s"),s=n("mfoh"),u=n("X+05"),o=n("8SuI"),l=n.n(o),d=n("gBXJ"),c=n.n(d),f=n("LgIp"),h=n.n(f),g=n("n9Vz"),p=n.n(g),b=n("372+"),m=n.n(b),y=n("Q7RW"),v=n.n(y),x=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},_=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},T=function(){function t(){this.options=new s.b,this.eventNames=Object.keys(u.a),this.expandedNodeIds={},this.selectedLeafNodeIds={},this.activeNodeIds={},this.hiddenNodeIds={},this.focusedNodeId=null,this.firstUpdate=!0,this.subscriptions=[]}var e;return e=t,t.prototype.fireEvent=function(t){t.treeModel=this,this.events[t.eventName].emit(t),this.events.event.emit(t)},t.prototype.subscribe=function(t,e){var n=this.events[t].subscribe(e);this.subscriptions.push(n)},t.prototype.getFocusedNode=function(){return this.focusedNode},t.prototype.getActiveNode=function(){return this.activeNodes[0]},t.prototype.getActiveNodes=function(){return this.activeNodes},t.prototype.getVisibleRoots=function(){return this.virtualRoot.visibleChildren},t.prototype.getFirstRoot=function(t){return void 0===t&&(t=!1),l()(t?this.getVisibleRoots():this.roots)},t.prototype.getLastRoot=function(t){return void 0===t&&(t=!1),c()(t?this.getVisibleRoots():this.roots)},Object.defineProperty(t.prototype,"isFocused",{get:function(){return e.focusedTree===this},enumerable:!0,configurable:!0}),t.prototype.isNodeFocused=function(t){return this.focusedNode===t},t.prototype.isEmptyTree=function(){return this.roots&&0===this.roots.length},Object.defineProperty(t.prototype,"focusedNode",{get:function(){return this.focusedNodeId?this.getNodeById(this.focusedNodeId):null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"expandedNodes",{get:function(){var t=this,e=Object.keys(this.expandedNodeIds).filter((function(e){return t.expandedNodeIds[e]})).map((function(e){return t.getNodeById(e)}));return h()(e)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"activeNodes",{get:function(){var t=this,e=Object.keys(this.activeNodeIds).filter((function(e){return t.activeNodeIds[e]})).map((function(e){return t.getNodeById(e)}));return h()(e)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hiddenNodes",{get:function(){var t=this,e=Object.keys(this.hiddenNodeIds).filter((function(e){return t.hiddenNodeIds[e]})).map((function(e){return t.getNodeById(e)}));return h()(e)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"selectedLeafNodes",{get:function(){var t=this,e=Object.keys(this.selectedLeafNodeIds).filter((function(e){return t.selectedLeafNodeIds[e]})).map((function(e){return t.getNodeById(e)}));return h()(e)},enumerable:!0,configurable:!0}),t.prototype.getNodeByPath=function(t,e){if(void 0===e&&(e=null),!t)return null;if(e=e||this.virtualRoot,0===t.length)return e;if(!e.children)return null;var n=t.shift(),a=p()(e.children,{id:n});return a?this.getNodeByPath(t,a):null},t.prototype.getNodeById=function(t){var e=t.toString();return this.getNodeBy((function(t){return t.id.toString()===e}))},t.prototype.getNodeBy=function(t,e){if(void 0===e&&(e=null),!(e=e||this.virtualRoot).children)return null;var n=p()(e.children,t);if(n)return n;for(var a=0,r=e.children;a<r.length;a++){var i=this.getNodeBy(t,r[a]);if(i)return i}},t.prototype.isExpanded=function(t){return this.expandedNodeIds[t.id]},t.prototype.isHidden=function(t){return this.hiddenNodeIds[t.id]},t.prototype.isActive=function(t){return this.activeNodeIds[t.id]},t.prototype.isSelected=function(t){return this.selectedLeafNodeIds[t.id]},t.prototype.ngOnDestroy=function(){this.dispose(),this.unsubscribeAll()},t.prototype.dispose=function(){this.virtualRoot&&this.virtualRoot.dispose()},t.prototype.unsubscribeAll=function(){this.subscriptions.forEach((function(t){return t.unsubscribe()})),this.subscriptions=[]},t.prototype.setData=function(t){var e=t.nodes,n=t.options,a=void 0===n?null:n,r=t.events,i=void 0===r?null:r;a&&(this.options=new s.b(a)),i&&(this.events=i),e&&(this.nodes=e),this.update()},t.prototype.update=function(){var t,e=((t={id:this.options.rootId,virtual:!0})[this.options.childrenField]=this.nodes,t);this.dispose(),this.virtualRoot=new i.a(e,null,this,0),this.roots=this.virtualRoot.children,this.firstUpdate?this.roots&&(this.firstUpdate=!1,this._calculateExpandedNodes()):this.fireEvent({eventName:u.a.updateData})},t.prototype.setFocusedNode=function(t){this.focusedNodeId=t?t.id:null},t.prototype.setFocus=function(t){e.focusedTree=t?this:null},t.prototype.doForAll=function(t){this.roots.forEach((function(e){return e.doForAll(t)}))},t.prototype.focusNextNode=function(){var t=this.getFocusedNode(),e=t?t.findNextNode(!0,!0):this.getFirstRoot(!0);e&&e.focus()},t.prototype.focusPreviousNode=function(){var t=this.getFocusedNode(),e=t?t.findPreviousNode(!0):this.getLastRoot(!0);e&&e.focus()},t.prototype.focusDrillDown=function(){var t=this.getFocusedNode();if(t&&t.isCollapsed&&t.hasChildren)t.toggleExpanded();else{var e=t?t.getFirstChild(!0):this.getFirstRoot(!0);e&&e.focus()}},t.prototype.focusDrillUp=function(){var t=this.getFocusedNode();if(t)if(t.isExpanded)t.toggleExpanded();else{var e=t.realParent;e&&e.focus()}},t.prototype.setActiveNode=function(t,e,n){void 0===n&&(n=!1),n?this._setActiveNodeMulti(t,e):this._setActiveNodeSingle(t,e),e?(t.focus(this.options.scrollOnActivate),this.fireEvent({eventName:u.a.activate,node:t}),this.fireEvent({eventName:u.a.nodeActivate,node:t})):(this.fireEvent({eventName:u.a.deactivate,node:t}),this.fireEvent({eventName:u.a.nodeDeactivate,node:t}))},t.prototype.setSelectedNode=function(t,e){var n;this.selectedLeafNodeIds=Object.assign({},this.selectedLeafNodeIds,((n={})[t.id]=e,n)),e?(t.focus(),this.fireEvent({eventName:u.a.select,node:t})):this.fireEvent({eventName:u.a.deselect,node:t})},t.prototype.setExpandedNode=function(t,e){var n;this.expandedNodeIds=Object.assign({},this.expandedNodeIds,((n={})[t.id]=e,n)),this.fireEvent({eventName:u.a.toggleExpanded,node:t,isExpanded:e})},t.prototype.expandAll=function(){this.roots.forEach((function(t){return t.expandAll()}))},t.prototype.collapseAll=function(){this.roots.forEach((function(t){return t.collapseAll()}))},t.prototype.setIsHidden=function(t,e){var n;this.hiddenNodeIds=Object.assign({},this.hiddenNodeIds,((n={})[t.id]=e,n))},t.prototype.setHiddenNodeIds=function(t){this.hiddenNodeIds=t.reduce((function(t,e){var n;return Object.assign(t,((n={})[e]=!0,n))}),{})},t.prototype.performKeyAction=function(t,e){var n=this.options.actionMapping.keys[e.keyCode];return!!n&&(e.preventDefault(),n(this,t,e),!0)},t.prototype.filterNodes=function(t,e){var n,a=this;if(void 0===e&&(e=!0),!t)return this.clearFilter();if(m()(t))n=function(e){return-1!==e.displayField.toLowerCase().indexOf(t.toLowerCase())};else{if(!v()(t))return console.error("Don't know what to do with filter",t),void console.error("Should be either a string or function");n=t}var r={};this.roots.forEach((function(t){return a._filterNode(r,t,n,e)})),this.hiddenNodeIds=r,this.fireEvent({eventName:u.a.changeFilter})},t.prototype.clearFilter=function(){this.hiddenNodeIds={},this.fireEvent({eventName:u.a.changeFilter})},t.prototype.moveNode=function(t,e){var n=t.getIndexInParent(),a=t.parent;if(this.canMoveNode(t,e,n)){var r=a.getField("children");e.parent.getField("children")||e.parent.setField("children",[]);var i=e.parent.getField("children"),s=r.splice(n,1)[0],o=a===e.parent&&e.index>n?e.index-1:e.index;i.splice(o,0,s),a.treeModel.update(),e.parent.treeModel!==a.treeModel&&e.parent.treeModel.update(),this.fireEvent({eventName:u.a.moveNode,node:s,to:{parent:e.parent.data,index:o},from:{parent:a.data,index:n}})}},t.prototype.copyNode=function(t,e){var n=t.getIndexInParent();if(this.canMoveNode(t,e,n)){e.parent.getField("children")||e.parent.setField("children",[]);var a=e.parent.getField("children"),r=this.options.getNodeClone(t);a.splice(e.index,0,r),t.treeModel.update(),e.parent.treeModel!==t.treeModel&&e.parent.treeModel.update(),this.fireEvent({eventName:u.a.copyNode,node:r,to:{parent:e.parent.data,index:e.index}})}},t.prototype.getState=function(){return{expandedNodeIds:this.expandedNodeIds,selectedLeafNodeIds:this.selectedLeafNodeIds,activeNodeIds:this.activeNodeIds,hiddenNodeIds:this.hiddenNodeIds,focusedNodeId:this.focusedNodeId}},t.prototype.setState=function(t){t&&Object.assign(this,{expandedNodeIds:t.expandedNodeIds||{},selectedLeafNodeIds:t.selectedLeafNodeIds||{},activeNodeIds:t.activeNodeIds||{},hiddenNodeIds:t.hiddenNodeIds||{},focusedNodeId:t.focusedNodeId})},t.prototype.subscribeToState=function(t){var e=this;Object(r.b)((function(){return t(e.getState())}))},t.prototype.canMoveNode=function(t,e,n){return void 0===n&&(n=void 0),n||t.getIndexInParent(),(t.parent!==e.parent||n!==e.index)&&!e.parent.isDescendantOf(t)},t.prototype.calculateExpandedNodes=function(){this._calculateExpandedNodes()},t.prototype._filterNode=function(t,e,n,a){var r=this,i=n(e);return e.children&&e.children.forEach((function(e){r._filterNode(t,e,n,a)&&(i=!0)})),i||(t[e.id]=!0),a&&i&&e.ensureVisible(),i},t.prototype._calculateExpandedNodes=function(t){var e,n=this;void 0===t&&(t=null),(t=t||this.virtualRoot).data[this.options.isExpandedField]&&(this.expandedNodeIds=Object.assign({},this.expandedNodeIds,((e={})[t.id]=!0,e))),t.children&&t.children.forEach((function(t){return n._calculateExpandedNodes(t)}))},t.prototype._setActiveNodeSingle=function(t,e){var n,a=this;this.activeNodes.filter((function(e){return e!==t})).forEach((function(t){a.fireEvent({eventName:u.a.deactivate,node:t}),a.fireEvent({eventName:u.a.nodeDeactivate,node:t})})),this.activeNodeIds=e?((n={})[t.id]=!0,n):{}},t.prototype._setActiveNodeMulti=function(t,e){var n;this.activeNodeIds=Object.assign({},this.activeNodeIds,((n={})[t.id]=e,n))},t.focusedTree=null,x([r.d,_("design:type",Array)],t.prototype,"roots",void 0),x([r.d,_("design:type",Object)],t.prototype,"expandedNodeIds",void 0),x([r.d,_("design:type",Object)],t.prototype,"selectedLeafNodeIds",void 0),x([r.d,_("design:type",Object)],t.prototype,"activeNodeIds",void 0),x([r.d,_("design:type",Object)],t.prototype,"hiddenNodeIds",void 0),x([r.d,_("design:type",Object)],t.prototype,"focusedNodeId",void 0),x([r.d,_("design:type",i.a)],t.prototype,"virtualRoot",void 0),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"focusedNode",null),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"expandedNodes",null),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"activeNodes",null),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"hiddenNodes",null),x([r.c,_("design:type",Object),_("design:paramtypes",[])],t.prototype,"selectedLeafNodes",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setData",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"update",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setFocusedNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setFocus",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"doForAll",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"focusNextNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"focusPreviousNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"focusDrillDown",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"focusDrillUp",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object,Object]),_("design:returntype",void 0)],t.prototype,"setActiveNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"setSelectedNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"setExpandedNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"expandAll",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"collapseAll",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"setIsHidden",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setHiddenNodeIds",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"filterNodes",null),x([r.a,_("design:type",Function),_("design:paramtypes",[]),_("design:returntype",void 0)],t.prototype,"clearFilter",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"moveNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object,Object]),_("design:returntype",void 0)],t.prototype,"copyNode",null),x([r.a,_("design:type",Function),_("design:paramtypes",[Object]),_("design:returntype",void 0)],t.prototype,"setState",null),e=x([Object(a.Injectable)()],t)}()},MaPG:function(t,e,n){var a=n("8a/S"),r=n("3a3P"),i=n("VLqJ"),s=n("Wv1A");t.exports=function(t){return i(t)?a(s(t)):r(t)}},MdoF:function(t,e,n){"use strict";n.d(e,"b",(function(){return s})),n.d(e,"c",(function(){return l})),n.d(e,"a",(function(){return c}));var a=n("8Y7J"),r=n("CNMR"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"button",[["aria-label","Close"],["class","close"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.close()&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["×"])),(t()(),a["ɵeld"](3,0,null,null,1,"span",[["class","sr-only"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Close"]))],null,null)}function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"div",[["role","alert"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,u)),a["ɵdid"](4,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵncd"](null,0)],(function(t,e){var n=e.component;t(e,2,0,"alert alert-"+n.type,n.classes),t(e,4,0,n.dismissible)}),null)}function l(t){return a["ɵvid"](2,[(t()(),a["ɵand"](16777216,null,null,1,null,o)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.isOpen)}),null)}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"alert",[],null,null,null,l,s)),a["ɵdid"](1,114688,null,0,r.a,[r.b,a.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}var c=a["ɵccf"]("alert,bs-alert",r.a,d,{type:"type",dismissible:"dismissible",dismissOnTimeout:"dismissOnTimeout",isOpen:"isOpen"},{onClose:"onClose",onClosed:"onClosed"},["*"])},MuvH:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=n("IheW"),i=n("pL04");let s=(()=>{class t{constructor(t){this.http=t}findValue(t,e){if(t.value)return t.value.find(t=>t.section===e)}getValue(t,e){let n=this.findValue(t,e);if(!n){const a=e.indexOf(".");-1!==a&&(n=this.findValue(t,e.substring(0,a)))}return n||(n=this.findValue(t,"global")),n?n.value:t.default}getConfigData(){return this.http.get("api/cluster_conf/")}get(t){return this.http.get("api/cluster_conf/"+t)}filter(t){return this.http.get("api/cluster_conf/filter?names="+t.join(","))}create(t){return this.http.post("api/cluster_conf/",t)}delete(t,e){return this.http.delete(`api/cluster_conf/${t}?section=${e}`)}bulkCreate(t){return this.http.put("api/cluster_conf/",t)}}return t.ngInjectableDef=a["ɵɵdefineInjectable"]({factory:function(){return new t(a["ɵɵinject"](r.c))},token:t,providedIn:i.a}),t})()},Mxhz:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("LRne"),r=n("CqXF"),i=n("JIr8"),s=n("8Y7J"),u=n("IheW"),o=n("pL04");let l=(()=>{class t{constructor(t){this.http=t}list(){return this.http.get("api/user")}delete(t){return this.http.delete("api/user/"+t)}get(t){return this.http.get("api/user/"+t)}create(t){return this.http.post("api/user",t)}update(t){return this.http.put("api/user/"+t.username,t)}changePassword(t,e,n){return this.http.post(`api/user/${t}/change_password`,{old_password:e,new_password:n})}validateUserName(t){return this.get(t).pipe(Object(r.a)(!0),Object(i.a)(t=>(t.preventDefault(),Object(a.a)(!1))))}validatePassword(t,e=null,n=null){return this.http.post("api/user/validate_password",{password:t,username:e,old_password:n})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](u.c))},token:t,providedIn:o.a}),t})()},"N+g0":function(t,e,n){var a=n("g6v/"),r=n("m/L8"),i=n("glrk"),s=n("33Wh");t.exports=a?Object.defineProperties:function(t,e){i(t);for(var n,a=s(e),u=a.length,o=0;u>o;)r.f(t,n=a[o++],e[n]);return t}},"NC/Y":function(t,e,n){var a=n("0GbY");t.exports=a("navigator","userAgent")||""},NEZu:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e,n,a){this.customColors={backgroundColor:void 0,borderColor:void 0},this.checkOffset=!1,this.chartEl=t.nativeElement,this.getStyleLeft=n,this.getStyleTop=a,this.tooltipEl=e.nativeElement}customTooltips(t){if(0===t.opacity)return void(this.tooltipEl.style.opacity=0);if(this.tooltipEl.classList.remove("above","below","no-transform"),this.tooltipEl.classList.add(t.yAlign?t.yAlign:"no-transform"),t.body){const e=t.title||[],n=t.body.map(t=>t.lines);let a="<thead>";e.forEach(t=>{a+="<tr><th>"+this.getTitle(t)+"</th></tr>"}),a+="</thead><tbody>",n.forEach((e,n)=>{const r=t.labelColors[n];let i="background:"+(this.customColors.backgroundColor||r.backgroundColor);i+="; border-color:"+(this.customColors.borderColor||r.borderColor),i+="; border-width: 2px",a+='<tr><td nowrap><span class="chartjs-tooltip-key" style="'+i+'"></span>'+this.getBody(e)+"</td></tr>"}),a+="</tbody>",this.tooltipEl.querySelector("table").innerHTML=a}const e=this.chartEl.offsetTop,n=this.chartEl.offsetLeft;if(this.checkOffset){const e=t.width/2;this.tooltipEl.classList.remove("transform-left"),this.tooltipEl.classList.remove("transform-right"),t.caretX-e<0?this.tooltipEl.classList.add("transform-left"):t.caretX+e>this.chartEl.width&&this.tooltipEl.classList.add("transform-right")}this.tooltipEl.style.left=this.getStyleLeft(t,n),this.tooltipEl.style.top=this.getStyleTop(t,e),this.tooltipEl.style.opacity=1,this.tooltipEl.style.fontFamily=t._fontFamily,this.tooltipEl.style.fontSize=t.fontSize,this.tooltipEl.style.fontStyle=t._fontStyle,this.tooltipEl.style.padding=t.yPadding+"px "+t.xPadding+"px"}getBody(t){return t}getTitle(t){return t}}},NJ4a:function(t,e,n){"use strict";function a(t){setTimeout(()=>{throw t},0)}n.d(e,"a",(function(){return a}))},NJ9Y:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("sVev"),r=n("pLZG"),i=n("BFxc"),s=n("XDbj"),u=n("xbPD"),o=n("SpAZ");function l(t,e){const n=arguments.length>=2;return l=>l.pipe(t?Object(r.a)((e,n)=>t(e,n,l)):o.a,Object(i.a)(1),n?Object(u.a)(e):Object(s.a)(()=>new a.a))}},NSEa:function(t,e,n){var a=n("CNUl");t.exports=function(t,e){var n=e?a(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}},NUGo:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("iInd"),s=n("FE24"),u=n("z/SZ"),o=n("GS7A");n("S7zO"),n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return b}));var l=a["ɵcrt"]({encapsulation:0,styles:[[".dropdown-menu[_ngcontent-%COMP%] > .disabled[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]{pointer-events:auto;cursor:default!important}"]],data:{}});function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,11,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,10,"button",[["type","button"]],null,[[null,"click"]],(function(t,e,n){var r=!0,i=t.component;return"click"===e&&(r=!1!==a["ɵnov"](t,5).onClick()&&r),"click"===e&&(r=!1!==i.useClickAction(t.context.ngIf)&&r),r}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](3,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](4,{disabled:0}),a["ɵdid"](5,16384,null,0,i.n,[i.m,i.a,[8,null],a.Renderer2,a.ElementRef],{preserveFragment:[0,"preserveFragment"],routerLink:[1,"routerLink"]},null),(t()(),a["ɵeld"](6,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](8,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](9,1),(t()(),a["ɵeld"](10,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](11,null,["",""]))],(function(t,e){var n=e.component,r=a["ɵinlineInterpolate"](1,"btn btn-",n.btnColor,""),i=t(e,4,0,n.disableSelectionAction(e.context.ngIf));t(e,3,0,r,i),t(e,5,0,e.context.ngIf.preserveFragment?"":null,n.useRouterLink(e.context.ngIf));var s=t(e,9,0,e.context.ngIf.icon);t(e,8,0,s)}),(function(t,e){t(e,11,0,e.context.ngIf.name)}))}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](1,null,[""," "]))],null,(function(t,e){t(e,1,0,e.component.dropDownOnly)}))}function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"span",[["class","sr-only"]],null,null,null,null,null))],null,null)}function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"button",[["dropdownToggle",""],["type","button"]],[[8,"className",0],[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,1).onClick()&&r),r}),null,null)),a["ɵdid"](1,147456,null,0,s.g,[a.ChangeDetectorRef,s.c,a.ElementRef,a.Renderer2,s.f],null,null),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](3,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,f)),a["ɵdid"](5,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.dropDownOnly),t(e,5,0,!n.dropDownOnly)}),(function(t,e){t(e,0,0,a["ɵinlineInterpolate"](1,"btn btn-",e.component.btnColor," dropdown-toggle dropdown-toggle-split"),!0,a["ɵnov"](e,1).isDisabled,a["ɵnov"](e,1).isOpen)}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,12,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,11,"li",[["data-toggle","tooltip"],["role","menuitem"]],[[8,"className",0],[8,"title",0]],null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,10,"a",[["class","dropdown-item"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var r=!0,i=t.component;return"click"===e&&(r=!1!==a["ɵnov"](t,6).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&r),"click"===e&&(r=!1!==i.useClickAction(t.context.$implicit)&&r),r}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](4,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](5,{disabled:0}),a["ɵdid"](6,671744,null,0,i.p,[i.m,i.a,r.LocationStrategy],{preserveFragment:[0,"preserveFragment"],routerLink:[1,"routerLink"]},null),(t()(),a["ɵeld"](7,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](9,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](10,1),(t()(),a["ɵeld"](11,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](12,null,["",""]))],(function(t,e){var n=e.component,a=t(e,5,0,n.disableSelectionAction(e.context.$implicit));t(e,4,0,"dropdown-item",a),t(e,6,0,e.context.$implicit.preserveFragment?"":null,n.useRouterLink(e.context.$implicit));var r=t(e,10,0,e.context.$implicit.icon);t(e,9,0,r)}),(function(t,e){var n=e.component;t(e,1,0,a["ɵinlineInterpolate"](1,"",n.toClassName(e.context.$implicit.name),""),a["ɵinlineInterpolate"](1,"",n.useDisableDesc(e.context.$implicit),"")),t(e,2,0,a["ɵnov"](e,6).target,a["ɵnov"](e,6).href),t(e,12,0,e.context.$implicit.name)}))}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"ul",[["class","dropdown-menu"],["role","menu"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](2,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.dropDownActions)}),null)}function b(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,16777216,null,null,8,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),a["ɵprd"](512,null,s.f,s.f,[]),a["ɵdid"](2,212992,null,0,s.c,[a.ElementRef,a.Renderer2,a.ViewContainerRef,u.a,s.f,s.a,o.b],null,null),(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](4,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,h)),a["ɵdid"](6,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](8,16384,null,0,s.d,[s.f,a.ViewContainerRef,a.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,2,0),t(e,4,0,n.getCurrentButton()),t(e,6,0,n.showDropDownActions())}),(function(t,e){t(e,0,0,a["ɵnov"](e,2).dropup,a["ɵnov"](e,2).isOpen,a["ɵnov"](e,2).isOpen&&a["ɵnov"](e,2).isBs4)}))}},NaFW:function(t,e,n){var a=n("9d/t"),r=n("P4y1"),i=n("tiKp")("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||r[a(t)]}},NtIB:function(t,e,n){var a=n("uy3s"),r=n("eQba"),i=n("jqoL"),s=n("VLqJ"),u=n("kXVT"),o=n("YLnZ"),l=n("Wv1A");t.exports=function(t,e){return s(t)&&u(e)?o(l(t),e):function(n){var s=r(n,t);return void 0===s&&s===e?i(n,t):a(e,s,3)}}},O741:function(t,e,n){var a=n("hh1v");t.exports=function(t){if(!a(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},O9Tv:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=n("YzqF");e.Mutex=a.default},OIDT:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Number)],t.prototype,"index",void 0),i([Object(a.Input)(),s("design:type",Object)],t.prototype,"templates",void 0),i([Object(a.Component)({selector:"tree-node-wrapper",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n      <div *ngIf="!templates.treeNodeWrapperTemplate" class="node-wrapper" [style.padding-left]="node.getNodePadding()">\n          <tree-node-checkbox *ngIf="node.options.useCheckbox" [node]="node"></tree-node-checkbox>\n          <tree-node-expander [node]="node"></tree-node-expander>\n          <div class="node-content-wrapper"\n               [class.node-content-wrapper-active]="node.isActive"\n               [class.node-content-wrapper-focused]="node.isFocused"\n               (click)="node.mouseAction(\'click\', $event)"\n               (dblclick)="node.mouseAction(\'dblClick\', $event)"\n               (mouseover)="node.mouseAction(\'mouseOver\', $event)"\n               (mouseout)="node.mouseAction(\'mouseOut\', $event)"\n               (contextmenu)="node.mouseAction(\'contextMenu\', $event)"\n               (treeDrop)="node.onDrop($event)"\n               (treeDropDragOver)="node.mouseAction(\'dragOver\', $event)"\n               (treeDropDragLeave)="node.mouseAction(\'dragLeave\', $event)"\n               (treeDropDragEnter)="node.mouseAction(\'dragEnter\', $event)"\n               [treeAllowDrop]="node.allowDrop"\n               [allowDragoverStyling]="node.allowDragoverStyling()"\n               [treeDrag]="node"\n               [treeDragEnabled]="node.allowDrag()">\n\n              <tree-node-content [node]="node" [index]="index" [template]="templates.treeNodeTemplate">\n              </tree-node-content>\n          </div>\n      </div>\n      <ng-container\n              [ngTemplateOutlet]="templates.treeNodeWrapperTemplate"\n              [ngTemplateOutletContext]="{ $implicit: node, node: node, index: index, templates: templates }">\n      </ng-container>\n  '}),s("design:paramtypes",[])],t)}()},OIYi:function(t,e,n){!function(t){"use strict";t.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}})}(n("wd/R"))},OLbh:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("s7LF");class r{constructor(t,e){this.modalRef=t,this.modalService=e,this.boundCancel=this.cancel.bind(this),this.canceled=!1,this.confirmationForm=new a.k({}),this.onHide=this.modalService.onHide.subscribe(t=>{this.onCancel&&(t||this.canceled)&&this.onCancel()})}ngOnInit(){if(this.bodyContext=this.bodyContext||{},this.bodyContext.$implicit=this.bodyData,!this.onSubmit)throw new Error("No submit action defined");if(!this.buttonText)throw new Error("No action name defined");if(!this.titleText)throw new Error("No title defined");if(!this.bodyTpl&&!this.description)throw new Error("No description defined")}ngOnDestroy(){this.onHide.unsubscribe()}cancel(){this.canceled=!0,this.modalRef.hide()}stopLoadingSpinner(){this.confirmationForm.setErrors({cdSubmitButton:!0})}}},Oaa7:function(t,e,n){!function(t){"use strict";t.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},Ob0Z:function(t,e,n){!function(t){"use strict";var e={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};function a(t,e,n,a){var r="";if(e)switch(n){case"s":r="काही सेकंद";break;case"ss":r="%d सेकंद";break;case"m":r="एक मिनिट";break;case"mm":r="%d मिनिटे";break;case"h":r="एक तास";break;case"hh":r="%d तास";break;case"d":r="एक दिवस";break;case"dd":r="%d दिवस";break;case"M":r="एक महिना";break;case"MM":r="%d महिने";break;case"y":r="एक वर्ष";break;case"yy":r="%d वर्षे"}else switch(n){case"s":r="काही सेकंदां";break;case"ss":r="%d सेकंदां";break;case"m":r="एका मिनिटा";break;case"mm":r="%d मिनिटां";break;case"h":r="एका तासा";break;case"hh":r="%d तासां";break;case"d":r="एका दिवसा";break;case"dd":r="%d दिवसां";break;case"M":r="एका महिन्या";break;case"MM":r="%d महिन्यां";break;case"y":r="एका वर्षा";break;case"yy":r="%d वर्षां"}return r.replace(/%d/i,t)}t.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),monthsParseExact:!0,weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm वाजता",LLLL:"dddd, D MMMM YYYY, A h:mm वाजता"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},preparse:function(t){return t.replace(/[१२३४५६७८९०]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/रात्री|सकाळी|दुपारी|सायंकाळी/,meridiemHour:function(t,e){return 12===t&&(t=0),"रात्री"===e?t<4?t:t+12:"सकाळी"===e?t:"दुपारी"===e?t>=10?t:t+12:"सायंकाळी"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"रात्री":t<10?"सकाळी":t<17?"दुपारी":t<20?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}})}(n("wd/R"))},OcYo:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("e0ae");class r{constructor(t,e,n,a){this.elementRef=t,this.renderer=e,this.toastr=n,this.i18n=a}ngOnInit(){const t=this.renderer.createElement("i");this.renderer.addClass(t,"fa"),this.renderer.addClass(t,"fa-clipboard"),this.renderer.setAttribute(t,"title",this.i18n("Copy to clipboard")),this.renderer.appendChild(this.elementRef.nativeElement,t)}getText(){return document.getElementById(this.cdCopy2ClipboardButton).value}onClick(){try{const t=Object(a.a)(),e=this.getText(),n=()=>{this.toastr.success("Copied text to the clipboard successfully.")};["firefox","ie","ios","safari"].includes(t.name)?navigator.clipboard.writeText(e).then(()=>n()):navigator.permissions.query({name:"clipboard-write"}).then(t=>{"granted"!==t.state&&"prompt"!==t.state||navigator.clipboard.writeText(e).then(()=>n())})}catch(t){this.toastr.error("Failed to copy text to the clipboard.")}}}},OjkT:function(t,e,n){!function(t){"use strict";var e={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"};t.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),monthsParseExact:!0,weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, Aको h:mm बजे",LLLL:"dddd, D MMMM YYYY, Aको h:mm बजे"},preparse:function(t){return t.replace(/[१२३४५६७८९०]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(t,e){return 12===t&&(t=0),"राति"===e?t<4?t:t+12:"बिहान"===e?t:"दिउँसो"===e?t>=10?t:t+12:"साँझ"===e?t+12:void 0},meridiem:function(t,e,n){return t<3?"राति":t<12?"बिहान":t<16?"दिउँसो":t<20?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",ss:"%d सेकेण्ड",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}})}(n("wd/R"))},Oxv6:function(t,e,n){!function(t){"use strict";var e={0:"-ум",1:"-ум",2:"-юм",3:"-юм",4:"-ум",5:"-ум",6:"-ум",7:"-ум",8:"-ум",9:"-ум",10:"-ум",12:"-ум",13:"-ум",20:"-ум",30:"-юм",40:"-ум",50:"-ум",60:"-ум",70:"-ум",80:"-ум",90:"-ум",100:"-ум"};t.defineLocale("tg",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе".split("_"),weekdaysShort:"яшб_дшб_сшб_чшб_пшб_ҷум_шнб".split("_"),weekdaysMin:"яш_дш_сш_чш_пш_ҷм_шб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Имрӯз соати] LT",nextDay:"[Пагоҳ соати] LT",lastDay:"[Дирӯз соати] LT",nextWeek:"dddd[и] [ҳафтаи оянда соати] LT",lastWeek:"dddd[и] [ҳафтаи гузашта соати] LT",sameElse:"L"},relativeTime:{future:"баъди %s",past:"%s пеш",s:"якчанд сония",m:"як дақиқа",mm:"%d дақиқа",h:"як соат",hh:"%d соат",d:"як рӯз",dd:"%d рӯз",M:"як моҳ",MM:"%d моҳ",y:"як сол",yy:"%d сол"},meridiemParse:/шаб|субҳ|рӯз|бегоҳ/,meridiemHour:function(t,e){return 12===t&&(t=0),"шаб"===e?t<4?t:t+12:"субҳ"===e?t:"рӯз"===e?t>=11?t:t+12:"бегоҳ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"шаб":t<11?"субҳ":t<16?"рӯз":t<19?"бегоҳ":"шаб"},dayOfMonthOrdinalParse:/\d{1,2}-(ум|юм)/,ordinal:function(t){return t+(e[t]||e[t%10]||e[t>=100?100:null])},week:{dow:1,doy:7}})}(n("wd/R"))},P4y1:function(t,e){t.exports={}},P8lu:function(t,e,n){"use strict";n.d(e,"a",(function(){return g}));var a=n("mrSG"),r=n("IheW"),i=n("LvDl"),s=n("cp0P"),u=n("LRne"),o=n("5+tZ"),l=n("CqXF"),d=n("JIr8"),c=n("xTzq"),f=n("8Y7J"),h=n("pL04");let g=(()=>{let t=class{constructor(t){this.http=t,this.url="api/rgw/user"}list(){return this.enumerate().pipe(Object(o.a)(t=>t.length>0?Object(s.a)(t.map(t=>this.get(t))):Object(u.a)([])))}enumerate(){return this.http.get(this.url)}enumerateEmail(){return this.http.get(this.url+"/get_emails")}get(t){return this.http.get(`${this.url}/${t}`)}getQuota(t){return this.http.get(`${this.url}/${t}/quota`)}create(t){let e=new r.h;return i.keys(t).forEach(n=>{e=e.append(n,t[n])}),this.http.post(this.url,null,{params:e})}update(t,e){let n=new r.h;return i.keys(e).forEach(t=>{n=n.append(t,e[t])}),this.http.put(`${this.url}/${t}`,null,{params:n})}updateQuota(t,e){let n=new r.h;return i.keys(e).forEach(t=>{n=n.append(t,e[t])}),this.http.put(`${this.url}/${t}/quota`,null,{params:n})}delete(t){return this.http.delete(`${this.url}/${t}`)}createSubuser(t,e){let n=new r.h;return i.keys(e).forEach(t=>{n=n.append(t,e[t])}),this.http.post(`${this.url}/${t}/subuser`,null,{params:n})}deleteSubuser(t,e){return this.http.delete(`${this.url}/${t}/subuser/${e}`)}addCapability(t,e,n){let a=new r.h;return a=a.append("type",e),a=a.append("perm",n),this.http.post(`${this.url}/${t}/capability`,null,{params:a})}deleteCapability(t,e,n){let a=new r.h;return a=a.append("type",e),a=a.append("perm",n),this.http.delete(`${this.url}/${t}/capability`,{params:a})}addS3Key(t,e){let n=new r.h;return n=n.append("key_type","s3"),i.keys(e).forEach(t=>{n=n.append(t,e[t])}),this.http.post(`${this.url}/${t}/key`,null,{params:n})}deleteS3Key(t,e){let n=new r.h;return n=n.append("key_type","s3"),n=n.append("access_key",e),this.http.delete(`${this.url}/${t}/key`,{params:n})}exists(t){return this.get(t).pipe(Object(l.a)(!0),Object(d.a)(t=>(i.isFunction(t.preventDefault)&&t.preventDefault(),Object(u.a)(!1))))}emailExists(t){return t=decodeURIComponent(t),this.enumerateEmail().pipe(Object(o.a)(e=>{const n=i.indexOf(e,t);return Object(u.a)(-1!==n)}))}};return t.ngInjectableDef=f["ɵɵdefineInjectable"]({factory:function(){return new t(f["ɵɵinject"](r.c))},token:t,providedIn:h.a}),t=a.__decorate([c.a,a.__metadata("design:paramtypes",[r.c])],t),t})()},PA2r:function(t,e,n){!function(t){"use strict";var e="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),n="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),a=[/^led/i,/^úno/i,/^bře/i,/^dub/i,/^kvě/i,/^(čvn|červen$|června)/i,/^(čvc|červenec|července)/i,/^srp/i,/^zář/i,/^říj/i,/^lis/i,/^pro/i],r=/^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;function i(t){return t>1&&t<5&&1!=~~(t/10)}function s(t,e,n,a){var r=t+" ";switch(n){case"s":return e||a?"pár sekund":"pár sekundami";case"ss":return e||a?r+(i(t)?"sekundy":"sekund"):r+"sekundami";case"m":return e?"minuta":a?"minutu":"minutou";case"mm":return e||a?r+(i(t)?"minuty":"minut"):r+"minutami";case"h":return e?"hodina":a?"hodinu":"hodinou";case"hh":return e||a?r+(i(t)?"hodiny":"hodin"):r+"hodinami";case"d":return e||a?"den":"dnem";case"dd":return e||a?r+(i(t)?"dny":"dní"):r+"dny";case"M":return e||a?"měsíc":"měsícem";case"MM":return e||a?r+(i(t)?"měsíce":"měsíců"):r+"měsíci";case"y":return e||a?"rok":"rokem";case"yy":return e||a?r+(i(t)?"roky":"let"):r+"lety"}}t.defineLocale("cs",{months:e,monthsShort:n,monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,monthsShortStrictRegex:/^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:s,ss:s,m:s,mm:s,h:s,hh:s,d:s,dd:s,M:s,MM:s,y:s,yy:s},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},PCNd:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},"PEr+":function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("EEJc"),s=n("ajRT"),u=n("s7LF"),o=n("+gVj"),l=n("mXUL"),d=n("IZUe"),c=n("ANnk"),f=n("f/UV"),h=n("aexS"),g=n("gp3X"),p=n("sb0X"),b=n("KVJa"),m=n("Z21x"),y=n("sne2"),v=n("0+/T"),x=n("LqlI");n.d(e,"a",(function(){return D}));var _=a["ɵcrt"]({encapsulation:0,styles:[[".modal-body[_ngcontent-%COMP%]   .question[_ngcontent-%COMP%]{margin-top:1em}.modal-body[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{font-weight:700}.modal-body[_ngcontent-%COMP%]   .question[_ngcontent-%COMP%]   .form-check[_ngcontent-%COMP%]{padding-top:7px}"]],data:{}});function T(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function w(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["Are you sure that you want to "," "])),a["ɵppd"](2,1),(t()(),a["ɵeld"](3,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](4,null,["",""])),(t()(),a["ɵted"](-1,null,["?"]))],null,(function(t,e){var n=e.component,r=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent.parent,0),n.actionDescription));t(e,1,0,r),t(e,4,0,n.itemNames[0])}))}function S(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"li",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit)}))}function I(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["Are you sure that you want to "," the selected items?"])),a["ɵppd"](2,1),(t()(),a["ɵeld"](3,0,null,null,2,"ul",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,S)),a["ɵdid"](5,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,5,0,e.component.itemNames)}),(function(t,e){var n=e.component,r=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent.parent,0),n.actionDescription));t(e,1,0,r)}))}function N(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["manyNames",2]],null,0,null,I))],(function(t,e){t(e,2,0,1===e.component.itemNames.length,a["ɵnov"](e,3))}),null)}function C(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["Are you sure that you want to "," the selected ","?"])),a["ɵppd"](2,1)],null,(function(t,e){var n=e.component,r=a["ɵunv"](e,1,0,t(e,2,0,a["ɵnov"](e.parent,0),n.actionDescription));t(e,1,0,r,n.itemDescription)}))}function R(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function A(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function k(t){return a["ɵvid"](0,[(t()(),a["ɵted"](0,null,[" "," ","\n"])),a["ɵppd"](1,1)],null,(function(t,e){var n=e.component,r=a["ɵunv"](e,0,0,t(e,1,0,a["ɵnov"](e.parent,1),n.actionDescription));t(e,0,0,r,n.itemDescription)}))}function E(t){return a["ɵvid"](0,[a["ɵpid"](0,r.LowerCasePipe,[]),a["ɵpid"](0,r.TitleCasePipe,[]),a["ɵqud"](402653184,1,{submitButton:0}),(t()(),a["ɵeld"](3,0,null,null,44,"cd-modal",[],null,null,null,i.c,i.b)),a["ɵdid"](4,49152,[["modal",4]],0,s.a,[],{modalRef:[0,"modalRef"]},null),(t()(),a["ɵeld"](5,0,null,0,2,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](7,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),a["ɵeld"](8,0,null,1,39,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](9,0,null,null,38,"form",[["name","deletionForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var r=!0;return"submit"===e&&(r=!1!==a["ɵnov"](t,11).onSubmit(n)&&r),"reset"===e&&(r=!1!==a["ɵnov"](t,11).onReset()&&r),"submit"===e&&(r=!1!==a["ɵnov"](t,14).onSubmit()&&r),r}),null,null)),a["ɵdid"](10,16384,null,0,u.G,[],null,null),a["ɵdid"](11,540672,[["formDir",4]],0,u.l,[[8,null],[8,null]],{form:[0,"form"]},null),a["ɵprd"](2048,null,u.d,null,[u.l]),a["ɵdid"](13,16384,null,0,u.s,[[4,u.d]],null,null),a["ɵdid"](14,16384,null,0,o.d,[],{formGroup:[0,"formGroup"]},null),(t()(),a["ɵeld"](15,0,null,null,25,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,w)),a["ɵdid"](17,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵeld"](18,0,null,null,22,"div",[["class","question"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,N)),a["ɵdid"](20,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["noNames",2]],null,0,null,C)),(t()(),a["ɵand"](16777216,null,null,2,null,R)),a["ɵdid"](23,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),a["ɵpod"](24,{form:0}),(t()(),a["ɵeld"](25,0,null,null,15,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,l.b,l.a)),a["ɵdid"](26,1163264,null,2,o.c,[a.ElementRef,o.g],null,null),a["ɵqud"](603979776,2,{FormControlNames:1}),a["ɵqud"](603979776,3,{messagesBlock:0}),(t()(),a["ɵeld"](29,0,null,0,11,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),a["ɵeld"](30,0,null,null,8,"input",[["autofocus",""],["class","custom-control-input"],["formControlName","confirmation"],["id","confirmation"],["name","confirmation"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var r=!0;return"change"===e&&(r=!1!==a["ɵnov"](t,31).onChange(n.target.checked)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,31).onTouched()&&r),r}),null,null)),a["ɵdid"](31,16384,null,0,u.c,[a.Renderer2,a.ElementRef],null,null),a["ɵprd"](1024,null,u.p,(function(t){return[t]}),[u.c]),a["ɵdid"](33,671744,[[2,4]],0,u.j,[[3,u.d],[8,null],[8,null],[6,u.p],[2,u.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,u.q,null,[u.j]),a["ɵdid"](35,16384,null,0,u.r,[[4,u.q]],null,null),a["ɵdid"](36,4210688,null,0,d.a,[a.ElementRef],{autofocus:[0,"autofocus"]},null),a["ɵdid"](37,4210688,null,0,c.a,[[2,f.a],h.a,a.ElementRef],null,null),a["ɵdid"](38,16384,null,0,o.h,[[3,u.d],o.a],{formControlName:[0,"formControlName"]},null),(t()(),a["ɵeld"](39,0,null,null,1,"label",[["class","custom-control-label"],["for","confirmation"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Yes, I am sure."])),(t()(),a["ɵeld"](41,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),a["ɵeld"](42,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.callSubmitAction()&&a),a}),g.b,g.a)),a["ɵdid"](43,114688,[[1,4],["submitButton",4]],0,p.a,[a.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),a["ɵand"](16777216,null,0,1,null,A)),a["ɵdid"](45,540672,null,0,r.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),a["ɵeld"](46,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,b.b,b.a)),a["ɵdid"](47,49152,null,0,m.a,[r.Location,y.b],{name:[0,"name"],back:[1,"back"]},null),(t()(),a["ɵand"](0,[["deletionHeading",2]],null,0,null,k))],(function(t,e){var n=e.component;t(e,4,0,n.modalRef),t(e,7,0,a["ɵnov"](e,48)),t(e,11,0,n.deletionForm),t(e,14,0,n.deletionForm),t(e,17,0,n.bodyContext,n.bodyTemplate),t(e,20,0,n.itemNames,a["ɵnov"](e,21));var r=t(e,24,0,n.deletionForm);t(e,23,0,r,n.childFormGroupTemplate),t(e,26,0),t(e,33,0,"confirmation"),t(e,36,0,""),t(e,38,0,"confirmation"),t(e,43,0,n.deletionForm),t(e,45,0,a["ɵnov"](e,48)),t(e,47,0,"Cancel",n.modalRef.hide)}),(function(t,e){t(e,9,0,a["ɵnov"](e,13).ngClassUntouched,a["ɵnov"](e,13).ngClassTouched,a["ɵnov"](e,13).ngClassPristine,a["ɵnov"](e,13).ngClassDirty,a["ɵnov"](e,13).ngClassValid,a["ɵnov"](e,13).ngClassInvalid,a["ɵnov"](e,13).ngClassPending),t(e,25,0,a["ɵnov"](e,26).hasErrors,a["ɵnov"](e,26).hasSuccess),t(e,30,0,a["ɵnov"](e,35).ngClassUntouched,a["ɵnov"](e,35).ngClassTouched,a["ɵnov"](e,35).ngClassPristine,a["ɵnov"](e,35).ngClassDirty,a["ɵnov"](e,35).ngClassValid,a["ɵnov"](e,35).ngClassInvalid,a["ɵnov"](e,35).ngClassPending,a["ɵnov"](e,38).validClass,a["ɵnov"](e,38).invalidClass)}))}function L(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-deletion-modal",[],null,null,null,E,_)),a["ɵdid"](1,114688,null,0,v.a,[x.a],null,null)],(function(t,e){t(e,1,0)}),null)}var D=a["ɵccf"]("cd-deletion-modal",v.a,L,{},{},[])},PHub:function(t,e,n){var a=n("PnUS"),r=n("x3F9"),i=Object.prototype,s=i.hasOwnProperty,u=i.propertyIsEnumerable,o=a(function(){return arguments}())?a:function(t){return r(t)&&s.call(t,"callee")&&!u.call(t,"callee")};t.exports=o},PKPk:function(t,e,n){"use strict";var a=n("ZUd8").charAt,r=n("afO8"),i=n("fdAy"),s=r.set,u=r.getterFor("String Iterator");i(String,"String",(function(t){s(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=u(this),n=e.string,r=e.index;return r>=n.length?{value:void 0,done:!0}:(t=a(n,r),e.index+=t.length,{value:t,done:!1})}))},PeUW:function(t,e,n){!function(t){"use strict";var e={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},n={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"};t.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",ss:"%d விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},dayOfMonthOrdinalParse:/\d{1,2}வது/,ordinal:function(t){return t+"வது"},preparse:function(t){return t.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(t,e,n){return t<2?" யாமம்":t<6?" வைகறை":t<10?" காலை":t<14?" நண்பகல்":t<18?" எற்பாடு":t<22?" மாலை":" யாமம்"},meridiemHour:function(t,e){return 12===t&&(t=0),"யாமம்"===e?t<2?t:t+12:"வைகறை"===e||"காலை"===e||"நண்பகல்"===e&&t>=10?t:t+12},week:{dow:0,doy:6}})}(n("wd/R"))},PhyI:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return r}));var a=function(t){return t[t.global=0]="global",t[t.pool=1]="pool",t[t.image=2]="image",t}({}),r=function(t){return t[t.bps=0]="bps",t[t.iops=1]="iops",t[t.milliseconds=2]="milliseconds",t}({})},PjNX:function(t,e,n){var a=n("eH2F")();t.exports=a},PnUS:function(t,e,n){var a=n("LaC8"),r=n("x3F9");t.exports=function(t){return r(t)&&"[object Arguments]"==a(t)}},PpIw:function(t,e,n){!function(t){"use strict";var e={1:"೧",2:"೨",3:"೩",4:"೪",5:"೫",6:"೬",7:"೭",8:"೮",9:"೯",0:"೦"},n={"೧":"1","೨":"2","೩":"3","೪":"4","೫":"5","೬":"6","೭":"7","೮":"8","೯":"9","೦":"0"};t.defineLocale("kn",{months:"ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್".split("_"),monthsShort:"ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ".split("_"),monthsParseExact:!0,weekdays:"ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ".split("_"),weekdaysShort:"ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ".split("_"),weekdaysMin:"ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[ಇಂದು] LT",nextDay:"[ನಾಳೆ] LT",nextWeek:"dddd, LT",lastDay:"[ನಿನ್ನೆ] LT",lastWeek:"[ಕೊನೆಯ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ನಂತರ",past:"%s ಹಿಂದೆ",s:"ಕೆಲವು ಕ್ಷಣಗಳು",ss:"%d ಸೆಕೆಂಡುಗಳು",m:"ಒಂದು ನಿಮಿಷ",mm:"%d ನಿಮಿಷ",h:"ಒಂದು ಗಂಟೆ",hh:"%d ಗಂಟೆ",d:"ಒಂದು ದಿನ",dd:"%d ದಿನ",M:"ಒಂದು ತಿಂಗಳು",MM:"%d ತಿಂಗಳು",y:"ಒಂದು ವರ್ಷ",yy:"%d ವರ್ಷ"},preparse:function(t){return t.replace(/[೧೨೩೪೫೬೭೮೯೦]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,meridiemHour:function(t,e){return 12===t&&(t=0),"ರಾತ್ರಿ"===e?t<4?t:t+12:"ಬೆಳಿಗ್ಗೆ"===e?t:"ಮಧ್ಯಾಹ್ನ"===e?t>=10?t:t+12:"ಸಂಜೆ"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"ರಾತ್ರಿ":t<10?"ಬೆಳಿಗ್ಗೆ":t<17?"ಮಧ್ಯಾಹ್ನ":t<20?"ಸಂಜೆ":"ರಾತ್ರಿ"},dayOfMonthOrdinalParse:/\d{1,2}(ನೇ)/,ordinal:function(t){return t+"ನೇ"},week:{dow:0,doy:6}})}(n("wd/R"))},PqYM:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("HDdC"),r=n("D0XW"),i=n("Y7HM"),s=n("z+Ro");function u(t=0,e,n){let u=-1;return Object(i.a)(e)?u=Number(e)<1?1:Number(e):Object(s.a)(e)&&(n=e),Object(s.a)(n)||(n=r.a),new a.a(e=>{const a=Object(i.a)(t)?t:+t-n.now();return n.schedule(o,a,{index:0,period:u,subscriber:e})})}function o(t){const{index:e,period:n,subscriber:a}=t;if(a.next(e),!a.closed){if(-1===n)return a.complete();t.index=e+1,this.schedule(t,n)}}},Q7RW:function(t,e,n){var a=n("LaC8"),r=n("hmSm");t.exports=function(t){if(!r(t))return!1;var e=a(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},QC43:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("MdoF"),i=n("CNMR"),s=n("SVse");n("XFyV"),n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return o}));var u=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"alert",[["type","info"]],null,null,null,r.c,r.b)),a["ɵdid"](1,114688,null,0,i.a,[i.b,a.ChangeDetectorRef],{type:[0,"type"]},null),(t()(),a["ɵeld"](2,0,null,0,4,"strong",[],null,null,null,null,null)),(t()(),a["ɵeld"](3,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,s["ɵNgClassImpl"],s["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](5,278528,null,0,s.NgClass,[s["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](6,2),a["ɵncd"](0,0)],(function(t,e){var n=e.component;t(e,1,0,"info");var a=t(e,6,0,n.icons.spinner,n.icons.spin);t(e,5,0,a)}),null)}},QCZx:function(t,e,n){var a=n("2zzJ"),r=n("7+rY"),i=n("MOZO");t.exports=function(t,e,n){for(var s=-1,u=e.length,o={};++s<u;){var l=e[s],d=a(t,l);n(d,l)&&r(o,i(l,t),d)}return o}},QFaf:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("s7LF");class r extends a.k{constructor(t,e,n){super(t,e,n),this.controls=t}get(t){const e=this._get(t);if(!e)throw new Error(`Control '${t}' could not be found!`);return e}_get(t){return super.get(t)||Object.values(this.controls).filter(t=>t.get).map(e=>e instanceof r?e._get(t):e.get(t)).find(t=>Boolean(t))}getValue(t){return this.get(t).value}silentSet(t,e){this.get(t).setValue(e,{emitEvent:!1})}showError(t,e,n){const a=this.get(t);return(e.submitted||a.dirty)&&(n?a.hasError(n):a.invalid)}}},QTAa:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("t/zF");class r extends a.a{}},QUkU:function(t,e,n){var a=n("JEWA"),r=n("im1V"),i=n("Uies"),s=n("hmSm");t.exports=function(t,e,n){if(!s(n))return!1;var u=typeof e;return!!("number"==u?r(n)&&i(e,n.length):"string"==u&&e in n)&&a(n[e],t)}},QWBl:function(t,e,n){"use strict";var a=n("I+eb"),r=n("F8JR");a({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},Qj4J:function(t,e,n){!function(t){"use strict";t.defineLocale("ar-kw",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:12}})}(n("wd/R"))},QjCD:function(t,e,n){var a=n("kGkW"),r=n("nC65"),i=n("YLnZ");t.exports=function(t){var e=r(t);return 1==e.length&&e[0][2]?i(e[0][0],e[0][1]):function(n){return n===t||a(n,t,e)}}},Qo9l:function(t,e,n){var a=n("2oRo");t.exports=a},QpVZ:function(t,e,n){var a=n("LaC8"),r=n("x3F9");t.exports=function(t){return"symbol"==typeof t||r(t)&&"[object Symbol]"==a(t)}},QuoE:function(t,e,n){var a=n("bX23"),r=n("vIot"),i=n("0rEg");t.exports=function(t,e,n){return e==e?i(t,e,n):a(t,r,n)}},R2cF:function(t,e){var n=/\w*$/;t.exports=function(t){var e=new t.constructor(t.source,n.exec(t));return e.lastIndex=t.lastIndex,e}},R6RA:function(t,e,n){var a=n("hmSm"),r=Object.create,i=function(){function t(){}return function(e){if(!a(e))return{};if(r)return r(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=i},R8cQ:function(t,e,n){var a=n("pMcL"),r=n("xAZD"),i=n("0GLT"),s=n("QpVZ"),u=a?a.prototype:void 0,o=u?u.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(i(e))return r(e,t)+"";if(s(e))return o?o.call(e):"";var n=e+"";return"0"==n&&1/e==-1/0?"-0":n}},RAwQ:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return e?r[n][0]:r[n][1]}function n(t){if(t=parseInt(t,10),isNaN(t))return!1;if(t<0)return!0;if(t<10)return 4<=t&&t<=7;if(t<100){var e=t%10;return n(0===e?t/10:e)}if(t<1e4){for(;t>=10;)t/=10;return n(t)}return n(t/=1e3)}t.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:function(t){return n(t.substr(0,t.indexOf(" ")))?"a "+t:"an "+t},past:function(t){return n(t.substr(0,t.indexOf(" ")))?"viru "+t:"virun "+t},s:"e puer Sekonnen",ss:"%d Sekonnen",m:e,mm:"%d Minutten",h:e,hh:"%d Stonnen",d:e,dd:"%d Deeg",M:e,MM:"%d Méint",y:e,yy:"%d Joer"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},RBUI:function(t,e){t.exports=function(t,e){for(var n=-1,a=Array(t);++n<t;)a[n]=e(n);return a}},RK3t:function(t,e,n){var a=n("0Dky"),r=n("xrYK"),i="".split;t.exports=a((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==r(t)?i.call(t,""):Object(t)}:Object},RNIs:function(t,e,n){var a=n("tiKp"),r=n("fHMY"),i=n("m/L8"),s=a("unscopables"),u=Array.prototype;null==u[s]&&i.f(u,s,{configurable:!0,value:r(null)}),t.exports=function(t){u[s][t]=!0}},Rf2I:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("s7LF"),r=n("LvDl");n("2EZI"),n("Fgil"),n("aXbf");class i{constructor(t,e,n,a,r){this.bsModalRef=t,this.formBuilder=e,this.formatter=n,this.dimlessBinaryPipe=a,this.i18n=r}ngOnInit(){this.createForm()}createForm(){const t={};this.fields.forEach(e=>{t[e.name]=this.createFormControl(e)}),this.formGroup=this.formBuilder.group(t)}createFormControl(t){let e=[];return r.isBoolean(t.required)&&t.required&&e.push(a.B.required),t.validators&&(e=e.concat(t.validators)),new a.i(r.defaultTo("binary"===t.type?this.dimlessBinaryPipe.transform(t.value):t.value,null),{validators:e})}getError(t){const e=this.formGroup.get(t.name).errors;return Object.keys(e).map(n=>this.getErrorMessage(n,e[n],t.errors)).join("<br>")}getErrorMessage(t,e,n){if(n){const e=n[t];if(e)return e}return["binaryMin","binaryMax"].includes(t)?e(this.i18n):this.i18n("required"===t?"This field is required.":"An error occurred.")}onSubmitForm(t){this.fields.filter(t=>"binary"===t.type).map(t=>t.name).forEach(e=>{const n=t[e];n&&(t[e]=this.formatter.toBytes(n))}),this.bsModalRef.hide(),r.isFunction(this.onSubmit)&&this.onSubmit(t)}}},Rm1S:function(t,e,n){"use strict";var a=n("14Sl"),r=n("glrk"),i=n("UMSQ"),s=n("HYAF"),u=n("iqWW"),o=n("FMNM");a("match",1,(function(t,e,n){return[function(e){var n=s(this),a=null==e?void 0:e[t];return void 0!==a?a.call(e,n):new RegExp(e)[t](String(n))},function(t){var a=n(e,t,this);if(a.done)return a.value;var s=r(t),l=String(this);if(!s.global)return o(s,l);var d=s.unicode;s.lastIndex=0;for(var c,f=[],h=0;null!==(c=o(s,l));){var g=String(c[0]);f[h]=g,""===g&&(s.lastIndex=u(l,i(s.lastIndex),d)),h++}return 0===h?null:f}]}))},RnhZ:function(t,e,n){var a={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-SG":"zavE","./en-SG.js":"zavE","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function r(t){var e=i(t);return n(e)}function i(t){if(!n.o(a,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return a[t]}r.keys=function(){return Object.keys(a)},r.resolve=i,t.exports=r,r.id="RnhZ"},RvDp:function(t,e,n){var a=n("MOZO"),r=n("PHub"),i=n("0GLT"),s=n("Uies"),u=n("KNDS"),o=n("Wv1A");t.exports=function(t,e,n){for(var l=-1,d=(e=a(e,t)).length,c=!1;++l<d;){var f=o(e[l]);if(!(c=null!=t&&n(t,f)))break;t=t[f]}return c||++l!=d?c:!!(d=null==t?0:t.length)&&u(d)&&s(f,d)&&(i(t)||r(t))}},S6ln:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a=t+" ";switch(n){case"ss":return a+(1===t?"sekunda":2===t||3===t||4===t?"sekunde":"sekundi");case"m":return e?"jedna minuta":"jedne minute";case"mm":return a+(1===t?"minuta":2===t||3===t||4===t?"minute":"minuta");case"h":return e?"jedan sat":"jednog sata";case"hh":return a+(1===t?"sat":2===t||3===t||4===t?"sata":"sati");case"dd":return a+(1===t?"dan":"dana");case"MM":return a+(1===t?"mjesec":2===t||3===t||4===t?"mjeseca":"mjeseci");case"yy":return a+(1===t?"godina":2===t||3===t||4===t?"godine":"godina")}}t.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),monthsParseExact:!0,weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",ss:e,m:e,mm:e,h:e,hh:e,d:"dan",dd:e,M:"mjesec",MM:e,y:"godinu",yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},S7zO:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("LvDl"),r=n("oxzT");n("vCyI"),n("jKX/");class i{constructor(){this.btnColor="secondary",this.dropDownActions=[],this.icons=r.a}ngOnInit(){this.removeActionsWithNoPermissions(),this.updateDropDownActions()}toClassName(t){return t.replace(/ /g,"-").replace(/[^a-z-]/gi,"").toLowerCase()}removeActionsWithNoPermissions(){if(!this.permission)return void(this.tableActions=[]);const t=Object.keys(this.permission).filter(t=>this.permission[t]);this.tableActions=this.tableActions.filter(e=>t.includes(e.permission))}updateDropDownActions(){this.dropDownActions=this.tableActions.filter(t=>t.visible?t.visible(this.selection):t)}getCurrentButton(){if(this.dropDownOnly)return;let t=this.dropDownActions.find(t=>this.showableAction(t));return!t&&this.dropDownActions.length>0&&(t=this.dropDownActions[0]),t}showableAction(t){const e=t.canBePrimary,n=this.selection.hasSingleSelection,a="create"===t.permission?!n:n;return e&&e(this.selection)||!e&&a}useRouterLink(t){if(t.routerLink&&!this.disableSelectionAction(t))return a.isString(t.routerLink)?t.routerLink:t.routerLink()}disableSelectionAction(t){const e=t.disable;if(e)return Boolean(e(this.selection));const n=t.permission,a=this.selection.hasSingleSelection&&this.selection.first();return Boolean(["update","delete"].includes(n)&&(!a||a.cdExecuting))}showDropDownActions(){return this.updateDropDownActions(),this.dropDownActions.length>1}useClickAction(t){return!this.disableSelectionAction(t)&&t.click&&t.click()}useDisableDesc(t){if(t.disable){const e=t.disable(this.selection);return a.isString(e)?e:void 0}}}},"SB+Q":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return encodeURIComponent(t)}}},SDUG:function(t,e,n){var a=n("PjNX"),r=n("FGWQ");t.exports=function(t,e){return t&&a(t,e,r)}},SFxW:function(t,e,n){!function(t){"use strict";var e={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"};t.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyə",ss:"%d saniyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(t){return/^(gündüz|axşam)$/.test(t)},meridiem:function(t,e,n){return t<4?"gecə":t<12?"səhər":t<17?"gündüz":"axşam"},dayOfMonthOrdinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(t){if(0===t)return t+"-ıncı";var n=t%10;return t+(e[n]||e[t%100-n]||e[t>=100?100:null])},week:{dow:1,doy:7}})}(n("wd/R"))},SPu7:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="pl-PL">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Rozwiń</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Pulpit</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Klaster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hosty</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitory</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Usługi</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD-ki</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Konfiguracja</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH mapa</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Zarządca modułów</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Logi</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pule</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Dostęp blokowy</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Obrazy</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Kopia lustrzana</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>Sieciowy system plików NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Systemy plików</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Dostęp obiektowy</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Demony</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Użytkownicy</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Wiadra</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Wybierz język</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Trwa ładowanie danych...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Wybór czasu Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Zresetuj ustawienia</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Wstecz</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Błąd wczytywania danych.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>Wybrane</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>Znaleziono</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>Razem</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nazwa</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Opis</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Długi opis</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Domyślna</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Domyślny demon</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Wartości</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Zapisz</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>widok CRUSH mapy</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Ładowanie...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nazwa hosta</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Pole jest wymagane.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Tak, jestem pewny.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Anuluj</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Zamknij</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Lista hostów</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Całkowita wydajność</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Nie znaleziono wejść</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Logi z klastra </target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Audyt logów</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Ładowanie konfiguracji.</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Nie można załadować konfiguracji</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Edytuj moduł zarządzania</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Wpisana wartość nie jest poprawnym UUID, np. 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Wpisana wartość musi być poprawnym adresem IP</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Podana wartość musi być liczbą</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Podana wartość musi być liczbą albo dziesiętną.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Zaktualizuj</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Status</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>Klaster ID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>Zmodyfikowana monmapa</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>epoka monmap</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>kworum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>kworum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>wymagany con</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>Wymagane mon </target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>W kworum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Nie w kworum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Dodaj</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Funkcje</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Flagi OSD w całym klastrze</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Zatwierdź</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Zaawansowane...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Priorytet odzyskiwania OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorytet</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Dostosuj wartości priorytetowe</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>To pole jest wymagane.</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Wartość powinna być pomiędzy 0 a 1. </target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Ponowne ważenie</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, wybierz, 1 {Głębokość} }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, wybierz, 1 {głębokość} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Lista OSD-ków </target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Wartość</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Edytuj</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Usuń</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Zdrowie</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statystyki</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Klienci</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Każdy klient ma dostęp</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Adresy</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Obowiązkowe pole</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Musi zawierać jedną albo więcej ,rozdzielonych przecinkiem, wartości </target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Na przykład: </target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Typ dostępu</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Dodaj klientów </target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Brak dostępnego klastra -- </target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Wybierz klaster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Dodaj demona</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Pamięć Podręczna</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Brak danych puli -- </target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Wybierz pamięć podręczną -- </target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Użytkownik dostępu obiektowego</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Brak dostępnych użytkowników -- </target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Wybierz użytkownika dostępu obiektowego -- </target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFS Użytkownik ID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Brak dostępnych klientów -- </target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Wybierz klienta cephx -- </target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nazwa CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Etykieta bezpieczeństwa</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Uruchom etykietę bezpieczeństwa</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Ścieżka CephFS </target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Ścieżka powinna zaczynać się z \'/\' i następne może być słowo</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Nowy katalog będzie stworzony. </target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Ścieżka</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Ścieżką może być tylko \'/\' albo słowo</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Nowe wiadro będzie stworzone </target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protokół NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Tag NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Klient może nie montować podkatalogów ( np. jeśli Tag = foo, klient może nie montować foo/baz) </target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Używając różnych opcji Tagu, ta sama Ścieżka może być wyeksportowana kilka razy.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Używając różnych opcji Pseudo, ta sama Ścieżka może być wyeksportowana kilka razy.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Brak dostępnych typów dostępu --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Wybierz typ dostępu --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>- Brak squasha -</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Wybierz, jakiego rodzaju identyfikacja użytkownika ma być przeprowadzana --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protokół Transportu </target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Witamy w Cephie! </target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nazwa użytkownika jest wymagana</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Hasło jest wymagane.</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Zaloguj</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Przepraszam, użytkownik nie istnieje w  Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Zakazany</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Przepraszam, nie masz dostępu do tego czego szukasz. </target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Konfiguracja RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Usuń wartość konfiguracji lokalnej. Wartość konfiguracji rodzica będzie odziedziczona i zostanie użyta zamiast tej.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Minimalna wartość wynosi 0.</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Lista puli</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Nazwa może składać się z alfanumerycznych znaków, kresek i podkreśleń.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Wybrana nazwa profilu kodu kasowania jest już używana.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Wtyczka</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Ramka danych (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Musi być większa bądź równa 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Kodowanie kawałka (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Musi być większa bądź równa 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Estymator trwałości (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Lokalność  (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Domena niepowodzenia Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Lokalność Crusha</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Nic</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Technika</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Rozmiar pakietu</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>korzeń Crusha</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>urządzenie klasy Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>którykolwiek</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Katalog</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nazwa...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Wybrana nazwa Ceph pula jest już użyta.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Typ pula</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Wybierz typ pula --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Grupa umieszczenia</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Przynajmniej jedna grupa umieszczenia jest wymagana</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Twój klaster nie obsługuje tylu PG. Skalkuluj proszę potrzebną ilość PG.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Pomoc obliczeniowa</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Replikowany rozmiar</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flagi</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC Nadpisuje</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Zastosowania</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Skasuj profil kodu.</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Brak profilu kasowania --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Wybierz profil kodu wymazywania --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>zbiór zasad Crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Wybierz zasadę Crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>zasada Crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Kroki Crush</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Kompresja</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Tryb</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algorytm</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Brak algorytmu kompresji wymazywania --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Minimalny rozmiar blob</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>np. 128 KB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Wartość powinna być większa niż 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Maksymalny rozmiar blob</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>np. 512 KB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Wartość powinna być większa niż minimalny rozmiar blob</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Stosunek</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Skompresowany stosunek</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Wartość powinna być pomiędzy 0.0, a 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>np. 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Szczegóły</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Szczegóły wydajności</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Szczegóły poziomów pamięci podręcznej</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Przenieś obraz do kosza</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Zabezpieczenie wygasa w </target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NIEZABEZPIECZONY </target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Zły format daty. Proszę używać "RRRR-MM-DD GG:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>Ochrona już wygasła. Proszę wybrać przyszłą datę lub zostawić pustą.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Przenieś obraz</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Przegląd</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Obiekty docelowe</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Uwierzytelnianie wykrywania</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Użytkownik</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Nazwy użytkowników muszą mieć długość od 8 do 64 znaków i \nmogą zawierać jedynie litery, \'.\', \'@\', \'-\', \'_\' lub \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Hasło</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Wspólny użytkownik </target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Wspólne hasło</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Dostępne informacje: </target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>obiekty docelowe iSCSI niedostępne </target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pul</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Dane pula</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Utworzony</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Rozmiar</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Obiekty</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Rozmiar obiektu</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Zaopatrzony</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>Niedostępny</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Całkowite rezerwy</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Jednostka maskowana</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Licznik maskowania</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Rodzic</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Prefiks nazwy bloku</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Zamówienie</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Migawki</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Obraz</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>To ustawienie zastępuję wartość globalną.</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Globalne</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>To jest globalna wartość. Dla tego obrazu nie ustawiono żadnej wartości dla tej opcji.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' and \'@\' nie są dozwolone.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Brak dostępnych rbd puli --  </target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Wybierz pul --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Użyj dedykowanych danych pul </target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Dane pul</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Dedykowany pul, który przechowuje dane obiektowe z RBD</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Musisz zwiększyć rozmiar.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Zaawansowane</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Maskowanie</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Jednostka pasków</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Wybierz jednostkę pasków -- </target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Pole jest wymagane, ponieważ licznik pasków jest zdefiniowany. </target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>Jednostka pasków jest większa niż rozmiar obiektu.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Licznik pasków </target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Pole jest wymagane, ponieważ jednostka pasków jest zdefiniowana! </target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Licznik pasków musi być większy od 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Zaraz się wycofasz. </target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Usuń Śmieci</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Wszystkie</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pul:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nazwa pula</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Przywróć obraz</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Przywróć</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>Wpisz nazwe nowego obrazu i kliknij. </target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nowa Nazwa</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Wygasły w</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Zabezpieczony do</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologia iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Zmiana tych parametrów z domyślnych wartości przeważnie nie jest potrzebna.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Ustawienia</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Tylny koniec przechowywania</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Potwierdź</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Ustawienia zaawansowane</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>Nazwa IQN obiektu docelowego iSCSI</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>Błędna składnia nazwy IQN.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Na przykład: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Więcej informacji</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Ten obiekt docelowy  zmodyfikował zaawansowane ustawienia.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portale</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Dodaj portal</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Ten obraz zmodyfikował ustawienia. </target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Dodaj obraz.</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Uwierzytelnianie ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Inicjatory iSCSI</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Inicjator iSCSI</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>Klient IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>Inicjator IQN powinien być unikalny.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Nazwy użytkowników muszą mieć długość od 8 do 64 znaków i mogą zawierać jedynie litery,  \'.\', \'@\', \'-\', \'_\' lub  \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>Inicjator iSCSI należą do grupy. Obrazy będą skonfigurowane w grupie. </target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Brak dodanych pozycji.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Dodaj inicjator iSCSI</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Grupy</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Grupa</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Dodaj grupę</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Kosz</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Zagadnienia</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Synchronizacja</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Gotowy</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Tryb edycji lustrzanego pula</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Sparowany klaster musi być usunięty  przed wyłączeniem lustra. </target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, wybierz, edytuj{Edytuj} inaczej {Dodaj} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nazwa Klastra</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Nazwa klastra jest niepoprawna </target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>ID CephX nie jest poprawne.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Adres monitora </target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Adresy rozdzielane przecinkami... </target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Adres monitora nie jest poprawny.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Klucz CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Klucz zakodowany w Base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>Klucz CephX musi być zakodowany w Base64/</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Liczniki wydajności nie są dostępne</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Lista demonów</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Liczniki wydajności</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Ładowanie wiadra danych</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>Number ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Wartość nie jest poprawna.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Wybrana nazwa już jest użyta.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Właściciel</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Wybierz użytkownika -- </target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Uaktywniony</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Typ indeksu</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Zasada umieszczania</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Znacznik</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Maksymalny znacznik</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Wersja</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Główna wersja</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Czas modyfikacji</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Strefa </target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>kontyngent wiadra</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Maksymalny rozmiar</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Nielimitowany</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Maksimum obiektów</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nazwa użytkownika</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Wybierz nazwę użytkownika -- </target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Auto-generowany klucz</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Klucz dostępu</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Tajny klucz </target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Pełne imię </target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Adres email</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Zawieszony</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>System</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Maksimum wiader</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>pod-użytkownicy</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Zdolności</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Limit użytkownika</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Pokaż</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Klucze</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Typ</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- wybierz typ --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Pozwolenie </target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Wybierz pozwolenie --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>pod-użytkownik</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>Wybrane ID pod-użytkownika jest już użyte.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>odczyt, zapis</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>pełny</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Szybki klucz</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Auto-generowany sekret</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Ładowanie danych użytkownika...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Nie można załadować danych użytkownika.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>Wybrane ID użytkownika jest już użyte.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Ten adres email nie jest poprawny.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>Wybrany adres email jest już użyty.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Max. wiader </target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Wyłączony</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Zwyczaj</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>klucz S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Nie ma pod-użytkowników.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3 (prosty serwis przechowywania) </target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Nie ma kluczy.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Szybki</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Nie ma zdolności. </target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Nielimitowany rozmiar</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Max. rozmiar</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Nielimitowane obiekty</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Max. obiektów</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Podana wartość musi być &gt;= 0</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Opis...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Pozwolenia</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Role</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Potwierdź hasło</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Potwierdzające hasło nie pokrywa się z hasłem.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>Email</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Niepoprawny email.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Zamierzasz usunąć uprawnienia „odczytu / aktualizacji użytkownika” od własnego użytkownika.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Jeśli kontynuujesz, nie będziesz mógł dodawać albo usuwać role od użytkowników.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Jesteś pewny, że chcesz kontynuować? </target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Pomoc</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Dokumentacja</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>Interfejs API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>O</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Ustawienia Pulpitu</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Zarządzanie użytkownikami</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Zalogowany użytkownik</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Wyloguj</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atrybuty (mapa OSD-ków)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Niedostępne metadane</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadane</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Licznik wydajności</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Pisze</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Czyta</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogram</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Obecne wartości </target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Max</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Źródło </target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Poziom</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Może być aktualizowany w czasie wykonywania (edytowalny)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tagi</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Wartości enumerowane </target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Zobacz także </target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Status klastra</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Zarządzanie demonami</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Obiekty bram </target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Serwery metadanych</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Bramy iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>Klient IOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Przepustowość klienta</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Odczyt/Zapis klienta</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Przepustowość odzyskiwania</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Szoruj</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Wydajność</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Pojemność rzędu</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>PG-y na OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Status PG</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Pojemność</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Szeregi</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Obecny</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Zaktualizowane uwierzytelnianie wykrywania</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Brak dostępnych portali.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Nie ma dostępnych obrazów. </target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Nie ma dostępnych obrazów. Proszę się upewnić, że dodajesz obraz do obiektu docelowego. </target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Nie ma dostępnych inicjatorów iSCSI. Proszę upewnić się, że dodajesz inicjator iSCSI do obiektu docelowego.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>obiekt docelowy iSCSI</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Stan</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Odczyt bajtów </target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Zapis bajtów</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Odczyt Ops</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Zapis Ops</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O Od</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instancja</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Zagadnienie </target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Progres</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Tryb Edycji</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Dodaj parowanie </target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Edytuj parowanie</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Usuń parowanie</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Lider</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># Lokalny</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># Zdalny</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>lustrzane parowanie</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Klucz</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Głębokie spłaszczenie</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Warstwowanie </target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Wyłączna blokada</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mapa obiektów (wymaga wyłącznej blokady)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Kronikowanie  (wymaga wyłącznej blokady)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NIEZABEZPIECZONY </target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Wycofywanie migawek RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Wycofanie</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>migawka RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Usunięty o </target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>id</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>typ</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>stan</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>wersja</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>administrator</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Czuwanie demona </target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Ranga</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Demon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Aktywność</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>centrale</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>i-węzły</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Użycie</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Zaktualizowany</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>Wartość może być zaktualizowana w czasie wykonywania . </target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Demony/klienci nie pobierają tej wartości z\nbazy danych skonfigurowanego monitora. Nie zezwalamy na ustawienie tej opcji przez \'konfiguracje ceph\nustaw.. \'. Ta opcja powinna być skonfigurowana przez ceph.conf albo przez\nterminal.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>Opcja działa tylko podczas startu demona.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>Opcja dotyczy tylko tworzenia klastra.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>Opcja tylko wpływa na tworzenie demona.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Usługa</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Obecna wartość</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Edytowalny</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Włączyć</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Wyłączyć</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Ponowne łączenie, proszę czekać</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Adres publiczny</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Otwarte sesje</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Nie w </target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>OSD-ki, które zostały oznaczone jako poza, nie będą oznaczone ponownie jako w gdy zostaną uruchomion</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Nie poza</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD-ki nie będą automatycznie oznaczone jako poza po konfiguracji interwału</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Nie powstały </target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSD-ki nie mogą startować</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Nie upadły</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Raport z niepowodzenia OSD jest ignorowany, także monitory nie oznaczą OSD jako upadłego. </target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pauza </target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Pauzuje czytanie i zapisywanie</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Nie szoruj</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Szorowanie jest wyłączone</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Nie ma głębokiego szorowania</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Głębokie szorowanie jest wyłączone</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Brak zasypywania</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Zasypywanie PG jest zawieszone</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Nie przywrócono</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Przywrócenie PGy jest zawieszone </target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Sortuj bitowo</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Użyj sortowania bitowego</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Usuń snap katalogi</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD-ki zmieniły snapsety</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Odzyskaj usunięte</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Podczas zdrowienia zastosowano usunięcie zamiast parowania</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Twardy limit logów PG</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Ustawia twardy limit na długość logów PG</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Zaktualizowane flagi OSD-ków</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD-ik</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>poza</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>w</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>upadły</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Zaznacz</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>Stracony OSD</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>Zaznaczony jako stracony</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Czyść</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>Oczyszczony</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>Zniszcz</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>Zniszczony</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>Usuń</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PG-y</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Czytanie bajtów</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Zapis bajtów </target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Czytanie ops</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Zapis ops</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Max zasypywanie</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Max aktywność wyzdrowienia</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Max pojedynczy start wyzdrowienia</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Uśpienie wyzdrowienia</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Praca</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>surowość</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Wystartowany</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Użyty</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Dostępny</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Czyść</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>Działający</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Ostrzeżenie </target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Nieznany</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>Podniesiony</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>brak systemów plików</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>aktywny</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>Rezerwa</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>niedostępny</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>aktywny demon</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>kworum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Usługa NFS Ganesha nie jest skonfigurowana</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Użytkownik CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>system plików CephFS </target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(Odziedziczyło z globalnej konfiguracji)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>Odziedziczyło z globalnej konfiguracji</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Wybierz, jakiego rodzaju identyfikacja użytkownika ma być przeprowadzana -- </target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Brak dostępnym demonów</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Tryb pamięci podręcznej</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Min wiek eksmisji</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Min wiek wyrównania </target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Max bajtów obiektu docelowego </target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Max obiektów docelowych</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Nie dodano żadnego zastosowania</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Osiągnięto limit zastosowań </target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Pul może mieć maksymalnie 4 definicje aplikacji. </target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Dozwolone znaki \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Maksymalna długość wynosi 128 znaków</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtruj lub dodaj zastosowanie</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Dodaj zastosowanie</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>skasuj profil kodu</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Rozmiar repliki</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Ostatnia zmiana</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Skasuj profil zakodowany</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Zbiór zasad Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>wiadro</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>Wiadra</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>użytkownik</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>użytkownicy</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Zakres</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Czytaj</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Stwórz</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>System roli </target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Zaktualizuj użytkownika</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Kontynuuj </target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Zostałeś automatycznie wylogowany, ponieważ zostały zmienione twoje role.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Każdy obiekt jest podzielony na części fragmentów danych, każdy jest przechowywany na innym OSD.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Oblicz porcje kodu dla każdego obiektu i przechowuj je na różnych OSD.\n Liczba fragmentów kodujących to również liczba OSD, które mogą zostać wyłączone bez utraty danych.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Wtyczka jerasure jest najbardziej uniwersalną i elastyczną wtyczką,\n jest to również domyślne ustawienie dla pui kodowanych przez Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Bardziej elastyczną techniką jest reed_sol_van: wystarczy ustawić k\n oraz m. Technika cauchy_good może być szybsza, ale musisz wybrać rozmiar pakietu\n ostrożnie. Wszystkie reed_sol_r6_op, liberation, blaum_roth, liber8tion są odpowiednikami RAID6\n w tym sensie, że mogą być skonfigurowane tylko z m = 2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>Kodowanie będzie wykonywane na pakietach o rozmiarze bajtów naraz.\n Wybór odpowiedniego rozmiaru pakietu jest trudny.\n Dokumentacja jerasure zawiera obszerne informacje na ten temat.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Z wtyczką jerasure, gdy obiekt zakodowany przy użyciu skasowania jest przechowywany na \n wielu OSD-kach, odzyskiwanie po utracie jednego OSD wymaga odczytu ze wszystkich pozostałych.\n Na przykład, jeśli konfiguracja skryptu ma wartość k = 8 ,m = 4 i l=4, utrata jednego OSD wymaga odczytu\n od jedenastu innych do naprawy.\n\n Wtyczka kodu wymazywania lrc tworzy fragmenty o parzystości lokalnej, aby móc je odzyskać\n mniej OSD. Na przykład, jeśli lrc jest skonfigurowane z k = 8, m = 4 i l = 4, zostanie utworzony\n dodatkowy fragment parzystości na każde cztery OSD. Gdy jeden OSD zostanie utracone, może to być\n odzyskane tylko z czterema OSD zamiast jedenastu.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Grupuj fragmenty kodu i danych w zestawy lokalizacji wielkości. Na przykład,\n dla k = 4 i m = 2, gdy lokalność = 3 tworzone są dwie grupy po trzy. Każdy zestaw może\n odzyskać bez czytania kawałków z innego zestawu.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Typ wiadra CRUSH, w którym zdefiniowano każdy zestaw porcji\n przez l zostaną zapisane. Na przykład, jeśli jest ustawiony na rack, każda grupa l porcji będzie\n umieszczona w innym raku. Służy do utworzenia kroku reguły CRUSH, takiego jak krok wyboru\n racka. Jeśli nie jest ustawiony, nie ma takiego grupowania.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Wtyczka isa zawiera bibliotekę ISA. Działa tylko na procesorach Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Wtyczka ISA jest dostępna w dwóch formach Reed Solomon.\n Jeśli ustawiono reed_sol_van, jest to Vandermonde, jeśli ustawiono cauchy, to jest to Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Wtyczka shec zawiera wiele bibliotek SHEC.\n Pozwala ceph odzyskać dane bardziej efektywnie niż kody Reeda Solomona.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Liczba kawałków parzystości, z których każdy zawiera każdą porcję danych w swoim zakresie obliczeń. Liczba jest używana jako estymator trwałości. Na przykład, jeśli c = 2,\n 2 OSD można wyłączyć bez utraty danych.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Nazwa wiadra crush jest użyte do pierwszego kroku reguły CRUSH.\nNa przykład krok jest domyślny.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Upewnij się, że żadne dwie porcje nie znajdują się w wiadrze z tą samą awarią\n domeny. Na przykład, jeśli domena awarii jest hostem, nie zostaną na niej zapisane dwie porcje\n hosta. Służy do utworzenia kroku reguły CRUSH, takiego jak krok wyboru hosta.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Ogranicz umieszczanie do urządzeń określonej klasy\n (np. ssd lub hdd), używając nazw klas urządzeń zgniatających na mapie CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Ustaw nazwę katalogu, z którego ładowana jest wtyczka kodu kasowania.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Dozwolone są wszystkie operacje</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Dozwolone są operacje, które nie modyfikują serweru</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Operacje odczytu i zapisu są zakazane, wszystkie inne dozwolone</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Operacje odczytu i zapisu, oraz wszystkie operacje modyfikujące atrybuty albo katalogi są zakazane </target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Brak dostępu w ogóle</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- wybierz priorytet -- </target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Niski</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Wysoki</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informacja</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Ostatnie 5 minut</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Ostatnie 15 minut</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Ostatnie 30 minut</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Ostatnia 1 godzina (domyślnie)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Ostatnie 3 godziny</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Ostatnie 6 godzin</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Ostatnie 12 godzin</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Ostatnie 24 godziny</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Wczoraj</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Dzisiaj</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Do tej pory dzisiaj</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Przedwczoraj</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Ostatnie 2 dni</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Tego dnia tydzień temu</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Poprzedni tydzień</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Ten tydzień </target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Do tej pory w tym tygodniu</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Ostatnie 7 dni</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Poprzedniego miesiąca</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>ten miesiąc</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Do tej pory w tym miesiącu</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Ostatnie 30 dni</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Ostatnie 90 dni</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Ostatnie 6 miesięcy</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Ostatni 1 rok</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Poprzedniego roku</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Bieżącego roku</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Do tej pory bieżącego roku</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Ostatnie 2 lata</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Ostatnie 5 lat</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Nie wybrano żadnej pozycji</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Odznacz pozycję, żeby wybrać ponownie</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Osiągnięto limit wyboru. </target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Filtr tagów.</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Dodaj odznakę</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Brak dostępnych pozycji.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Sklonuj</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Kopia</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Szoruj głęboko</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Zniszcz</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Spłaszcz</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>zaznacz jako upadły</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Zaznacz jako w </target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Zaznacz jako stracony</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Zaznacz jako poza</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Zabezpiecz</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Zmień nazwę</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Przywróć</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Przenieś do kosza</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Odbezpiecz </target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Usunięty</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Sklonowano</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Skopiowano </target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Spłaszczony</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Oczyszczony</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Przywrócony</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Wycofaj</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Tak</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Nie</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Jakość serwisu</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limit BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Pożądany limit IO bajtów na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limit IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Pożądany limit operacji IO na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>limit odczytu BPS</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Pożądany limit odczytu bajtów na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>limit  odczytu IOPS</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Pożądany limit operacji odczytu na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limit zapisu BPS</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Pożądany limit zapisu bajtów na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limit zapisu IOPS</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Pożądany limit operacji zapisu na sekundę.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Wiązka BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Żądana granica serii IO bajtów.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Wiązka IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Żądana granica serii operacji IO.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Odczyt wiązki BPS</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Żądana granica serii odczytanych bajtów.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Odczyt wiązki IOPS</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target> Żądana granica serii operacji odczytu.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Zapis wiązki BPS</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Żądana granica serii bajtów zapisu.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Zapis wiązki IOPS</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Żądana granica serii operacji zapisu.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Wykonywanie </target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>Wykonaj</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Wykonany</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>Nieznane zadanie</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Tworzenie</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>Utwórz</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Aktualizowanie </target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>Zaktualizuj</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Usuwanie</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Klonowanie</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>Sklonuj </target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Kopiowanie </target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>Kopiuj</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Spłaszczanie</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>Spłaszcz</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Wycofywanie </target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>Wycofanie</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Przenoszenie</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>Przenieś</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Przeniesiono</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Nie znaleziono obrazu.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Przywracanie</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>Przywróć </target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>oczyszczać</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>oczyść</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>Wszystkie pule</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Nie można wyłączyć lustrzenia ponieważ zawiera parowanie.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},SQuY:function(t,e,n){var a=n("Dd78"),r=n("Tq0f"),i=n("lPUB"),s=n("3ENo"),u=n("wgvl");function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}o.prototype.clear=a,o.prototype.delete=r,o.prototype.get=i,o.prototype.has=s,o.prototype.set=u,t.exports=o},STAE:function(t,e,n){var a=n("0Dky");t.exports=!!Object.getOwnPropertySymbols&&!a((function(){return!String(Symbol())}))},SVse:function(t,e,n){"use strict";n.r(e),n.d(e,"ɵangular_packages_common_common_c",(function(){return ae})),n.d(e,"ɵangular_packages_common_common_h",(function(){return At})),n.d(e,"ɵangular_packages_common_common_g",(function(){return Ct})),n.d(e,"ɵangular_packages_common_common_f",(function(){return Nt})),n.d(e,"ɵangular_packages_common_common_k",(function(){return Qt})),n.d(e,"ɵangular_packages_common_common_j",(function(){return Zt})),n.d(e,"ɵangular_packages_common_common_i",(function(){return $t})),n.d(e,"ɵangular_packages_common_common_a",(function(){return ft})),n.d(e,"ɵangular_packages_common_common_b",(function(){return bt})),n.d(e,"ɵangular_packages_common_common_e",(function(){return Se})),n.d(e,"ɵangular_packages_common_common_d",(function(){return Ke})),n.d(e,"ɵregisterLocaleData",(function(){return mt})),n.d(e,"registerLocaleData",(function(){return mt})),n.d(e,"formatDate",(function(){return K})),n.d(e,"formatCurrency",(function(){return ut})),n.d(e,"formatNumber",(function(){return lt})),n.d(e,"formatPercent",(function(){return ot})),n.d(e,"NgLocaleLocalization",(function(){return pt})),n.d(e,"NgLocalization",(function(){return ht})),n.d(e,"Plural",(function(){return g})),n.d(e,"NumberFormatStyle",(function(){return h})),n.d(e,"FormStyle",(function(){return p})),n.d(e,"TranslationWidth",(function(){return b})),n.d(e,"FormatWidth",(function(){return m})),n.d(e,"NumberSymbol",(function(){return y})),n.d(e,"WeekDay",(function(){return v})),n.d(e,"getNumberOfCurrencyDigits",(function(){return G})),n.d(e,"getCurrencySymbol",(function(){return V})),n.d(e,"getLocaleDayPeriods",(function(){return _})),n.d(e,"getLocaleDayNames",(function(){return T})),n.d(e,"getLocaleMonthNames",(function(){return w})),n.d(e,"getLocaleId",(function(){return x})),n.d(e,"getLocaleEraNames",(function(){return O})),n.d(e,"getLocaleWeekEndRange",(function(){return I})),n.d(e,"getLocaleFirstDayOfWeek",(function(){return S})),n.d(e,"getLocaleDateFormat",(function(){return N})),n.d(e,"getLocaleDateTimeFormat",(function(){return R})),n.d(e,"getLocaleExtraDayPeriodRules",(function(){return M})),n.d(e,"getLocaleExtraDayPeriods",(function(){return q})),n.d(e,"getLocalePluralCase",(function(){return D})),n.d(e,"getLocaleTimeFormat",(function(){return C})),n.d(e,"getLocaleNumberSymbol",(function(){return A})),n.d(e,"getLocaleNumberFormat",(function(){return k})),n.d(e,"getLocaleCurrencyName",(function(){return L})),n.d(e,"getLocaleCurrencySymbol",(function(){return E})),n.d(e,"ɵparseCookieValue",(function(){return yt})),n.d(e,"CommonModule",(function(){return $e})),n.d(e,"DeprecatedI18NPipesModule",(function(){return Ze})),n.d(e,"NgClass",(function(){return Lt})),n.d(e,"NgClassBase",(function(){return Et})),n.d(e,"NgForOf",(function(){return Mt})),n.d(e,"NgForOfContext",(function(){return Pt})),n.d(e,"NgIf",(function(){return jt})),n.d(e,"NgIfContext",(function(){return Ft})),n.d(e,"NgPlural",(function(){return Ht})),n.d(e,"NgPluralCase",(function(){return Ut})),n.d(e,"NgStyle",(function(){return ee})),n.d(e,"NgStyleBase",(function(){return te})),n.d(e,"NgSwitch",(function(){return Bt})),n.d(e,"NgSwitchCase",(function(){return zt})),n.d(e,"NgSwitchDefault",(function(){return Yt})),n.d(e,"NgTemplateOutlet",(function(){return ne})),n.d(e,"NgComponentOutlet",(function(){return Dt})),n.d(e,"DOCUMENT",(function(){return Je})),n.d(e,"AsyncPipe",(function(){return Ae})),n.d(e,"DatePipe",(function(){return Pe})),n.d(e,"I18nPluralPipe",(function(){return qe})),n.d(e,"I18nSelectPipe",(function(){return je})),n.d(e,"JsonPipe",(function(){return Fe})),n.d(e,"LowerCasePipe",(function(){return ke})),n.d(e,"CurrencyPipe",(function(){return Ye})),n.d(e,"DecimalPipe",(function(){return Be})),n.d(e,"PercentPipe",(function(){return ze})),n.d(e,"SlicePipe",(function(){return We})),n.d(e,"UpperCasePipe",(function(){return De})),n.d(e,"TitleCasePipe",(function(){return Le})),n.d(e,"KeyValuePipe",(function(){return Ve})),n.d(e,"DeprecatedDatePipe",(function(){return ve})),n.d(e,"DeprecatedCurrencyPipe",(function(){return Oe})),n.d(e,"DeprecatedDecimalPipe",(function(){return Te})),n.d(e,"DeprecatedPercentPipe",(function(){return we})),n.d(e,"ɵPLATFORM_BROWSER_ID",(function(){return Qe})),n.d(e,"ɵPLATFORM_SERVER_ID",(function(){return Xe})),n.d(e,"ɵPLATFORM_WORKER_APP_ID",(function(){return tn})),n.d(e,"ɵPLATFORM_WORKER_UI_ID",(function(){return en})),n.d(e,"isPlatformBrowser",(function(){return nn})),n.d(e,"isPlatformServer",(function(){return an})),n.d(e,"isPlatformWorkerApp",(function(){return rn})),n.d(e,"isPlatformWorkerUi",(function(){return sn})),n.d(e,"VERSION",(function(){return un})),n.d(e,"ViewportScroller",(function(){return on})),n.d(e,"ɵNullViewportScroller",(function(){return dn})),n.d(e,"ɵNgClassImplProvider__POST_R3__",(function(){return Rt})),n.d(e,"ɵNgClassR2Impl",(function(){return It})),n.d(e,"ɵNgClassImpl",(function(){return St})),n.d(e,"ɵNgStyleImplProvider__POST_R3__",(function(){return Jt})),n.d(e,"ɵNgStyleR2Impl",(function(){return Kt})),n.d(e,"ɵNgStyleImpl",(function(){return Wt})),n.d(e,"ɵngStyleDirectiveDef__POST_R3__",(function(){return Xt})),n.d(e,"ɵngClassDirectiveDef__POST_R3__",(function(){return kt})),n.d(e,"PlatformLocation",(function(){return r})),n.d(e,"LOCATION_INITIALIZED",(function(){return i})),n.d(e,"LocationStrategy",(function(){return s})),n.d(e,"APP_BASE_HREF",(function(){return u})),n.d(e,"HashLocationStrategy",(function(){return d})),n.d(e,"PathLocationStrategy",(function(){return c})),n.d(e,"Location",(function(){return o}));var a=n("8Y7J");class r{}const i=new a.InjectionToken("Location Initialized");class s{}const u=new a.InjectionToken("appBaseHref");class o{constructor(t,e){this._subject=new a.EventEmitter,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=o.stripTrailingSlash(l(n)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(t,e=""){return this.path()==this.normalize(t+o.normalizeQueryParams(e))}normalize(t){return o.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,l(t)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+o.normalizeQueryParams(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+o.normalizeQueryParams(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}onUrlChange(t){this._urlChangeListeners.push(t),this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)})}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}static normalizeQueryParams(t){return t&&"?"!==t[0]?"?"+t:t}static joinWithSlash(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}static stripTrailingSlash(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}}function l(t){return t.replace(/\/index.html$/,"")}class d extends s{constructor(t,e){super(),this._platformLocation=t,this._baseHref="",null!=e&&(this._baseHref=e)}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}path(t=!1){let e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e}prepareExternalUrl(t){const e=o.joinWithSlash(this._baseHref,t);return e.length>0?"#"+e:e}pushState(t,e,n,a){let r=this.prepareExternalUrl(n+o.normalizeQueryParams(a));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,a){let r=this.prepareExternalUrl(n+o.normalizeQueryParams(a));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}class c extends s{constructor(t,e){if(super(),this._platformLocation=t,null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=e}onPopState(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return o.joinWithSlash(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+o.normalizeQueryParams(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,a){const r=this.prepareExternalUrl(n+o.normalizeQueryParams(a));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,a){const r=this.prepareExternalUrl(n+o.normalizeQueryParams(a));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}}const f={ADP:[void 0,void 0,0],AFN:[void 0,void 0,0],ALL:[void 0,void 0,0],AMD:[void 0,void 0,0],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"৳"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,"р.",2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN¥","¥"],COP:[void 0,"$",0],CRC:[void 0,"₡",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"Kč",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E£"],ESP:[void 0,"₧",0],EUR:["€"],FJD:[void 0,"$"],FKP:[void 0,"£"],GBP:["£"],GEL:[void 0,"₾"],GIP:[void 0,"£"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",0],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",0],ILS:["₪"],INR:["₹"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["¥",void 0,0],KHR:[void 0,"៛"],KMF:[void 0,"CF",0],KPW:[void 0,"₩",0],KRW:["₩",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"₸"],LAK:[void 0,"₭",0],LBP:[void 0,"L£",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"₮",0],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",0],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"₦"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:[void 0,"₱"],PKR:[void 0,"Rs",0],PLN:[void 0,"zł"],PYG:[void 0,"₲",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"₽"],RUR:[void 0,"р."],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"£"],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"£"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"£",0],THB:[void 0,"฿"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"₺"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,0],UAH:[void 0,"₴"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UZS:[void 0,void 0,0],VEF:[void 0,"Bs"],VND:["₫",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["CFA",void 0,0],XPF:["CFPF",void 0,0],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]},h=function(){var t={Decimal:0,Percent:1,Currency:2,Scientific:3};return t[t.Decimal]="Decimal",t[t.Percent]="Percent",t[t.Currency]="Currency",t[t.Scientific]="Scientific",t}(),g=function(){var t={Zero:0,One:1,Two:2,Few:3,Many:4,Other:5};return t[t.Zero]="Zero",t[t.One]="One",t[t.Two]="Two",t[t.Few]="Few",t[t.Many]="Many",t[t.Other]="Other",t}(),p=function(){var t={Format:0,Standalone:1};return t[t.Format]="Format",t[t.Standalone]="Standalone",t}(),b=function(){var t={Narrow:0,Abbreviated:1,Wide:2,Short:3};return t[t.Narrow]="Narrow",t[t.Abbreviated]="Abbreviated",t[t.Wide]="Wide",t[t.Short]="Short",t}(),m=function(){var t={Short:0,Medium:1,Long:2,Full:3};return t[t.Short]="Short",t[t.Medium]="Medium",t[t.Long]="Long",t[t.Full]="Full",t}(),y=function(){var t={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};return t[t.Decimal]="Decimal",t[t.Group]="Group",t[t.List]="List",t[t.PercentSign]="PercentSign",t[t.PlusSign]="PlusSign",t[t.MinusSign]="MinusSign",t[t.Exponential]="Exponential",t[t.SuperscriptingExponent]="SuperscriptingExponent",t[t.PerMille]="PerMille",t[t.Infinity]="Infinity",t[t.NaN]="NaN",t[t.TimeSeparator]="TimeSeparator",t[t.CurrencyDecimal]="CurrencyDecimal",t[t.CurrencyGroup]="CurrencyGroup",t}(),v=function(){var t={Sunday:0,Monday:1,Tuesday:2,Wednesday:3,Thursday:4,Friday:5,Saturday:6};return t[t.Sunday]="Sunday",t[t.Monday]="Monday",t[t.Tuesday]="Tuesday",t[t.Wednesday]="Wednesday",t[t.Thursday]="Thursday",t[t.Friday]="Friday",t[t.Saturday]="Saturday",t}();function x(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].LocaleId]}function _(t,e,n){const r=Object(a["ɵfindLocaleData"])(t),i=j([r[a["ɵLocaleDataIndex"].DayPeriodsFormat],r[a["ɵLocaleDataIndex"].DayPeriodsStandalone]],e);return j(i,n)}function T(t,e,n){const r=Object(a["ɵfindLocaleData"])(t),i=j([r[a["ɵLocaleDataIndex"].DaysFormat],r[a["ɵLocaleDataIndex"].DaysStandalone]],e);return j(i,n)}function w(t,e,n){const r=Object(a["ɵfindLocaleData"])(t),i=j([r[a["ɵLocaleDataIndex"].MonthsFormat],r[a["ɵLocaleDataIndex"].MonthsStandalone]],e);return j(i,n)}function O(t,e){return j(Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].Eras],e)}function S(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].FirstDayOfWeek]}function I(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].WeekendRange]}function N(t,e){return j(Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].DateFormat],e)}function C(t,e){return j(Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].TimeFormat],e)}function R(t,e){return j(Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].DateTimeFormat],e)}function A(t,e){const n=Object(a["ɵfindLocaleData"])(t),r=n[a["ɵLocaleDataIndex"].NumberSymbols][e];if(void 0===r){if(e===y.CurrencyDecimal)return n[a["ɵLocaleDataIndex"].NumberSymbols][y.Decimal];if(e===y.CurrencyGroup)return n[a["ɵLocaleDataIndex"].NumberSymbols][y.Group]}return r}function k(t,e){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].NumberFormats][e]}function E(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].CurrencySymbol]||null}function L(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].CurrencyName]||null}const D=a["ɵgetLocalePluralCase"];function P(t){if(!t[a["ɵLocaleDataIndex"].ExtraData])throw new Error(`Missing extra locale data for the locale "${t[a["ɵLocaleDataIndex"].LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function M(t){const e=Object(a["ɵfindLocaleData"])(t);return P(e),(e[a["ɵLocaleDataIndex"].ExtraData][2]||[]).map(t=>"string"==typeof t?F(t):[F(t[0]),F(t[1])])}function q(t,e,n){const r=Object(a["ɵfindLocaleData"])(t);P(r);const i=j([r[a["ɵLocaleDataIndex"].ExtraData][0],r[a["ɵLocaleDataIndex"].ExtraData][1]],e)||[];return j(i,n)||[]}function j(t,e){for(let n=e;n>-1;n--)if(void 0!==t[n])return t[n];throw new Error("Locale data API: locale data undefined")}function F(t){const[e,n]=t.split(":");return{hours:+e,minutes:+n}}function V(t,e,n="en"){const r=function(t){return Object(a["ɵfindLocaleData"])(t)[a["ɵLocaleDataIndex"].Currencies]}(n)[t]||f[t]||[],i=r[1];return"narrow"===e&&"string"==typeof i?i:r[0]||t}function G(t){let e;const n=f[t];return n&&(e=n[2]),"number"==typeof e?e:2}const B=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,z={},Y=/((?:[^GyMLwWdEabBhHmsSzZO']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/,H=function(){var t={Short:0,ShortGMT:1,Long:2,Extended:3};return t[t.Short]="Short",t[t.ShortGMT]="ShortGMT",t[t.Long]="Long",t[t.Extended]="Extended",t}(),U=function(){var t={FullYear:0,Month:1,Date:2,Hours:3,Minutes:4,Seconds:5,FractionalSeconds:6,Day:7};return t[t.FullYear]="FullYear",t[t.Month]="Month",t[t.Date]="Date",t[t.Hours]="Hours",t[t.Minutes]="Minutes",t[t.Seconds]="Seconds",t[t.FractionalSeconds]="FractionalSeconds",t[t.Day]="Day",t}(),W=function(){var t={DayPeriods:0,Days:1,Months:2,Eras:3};return t[t.DayPeriods]="DayPeriods",t[t.Days]="Days",t[t.Months]="Months",t[t.Eras]="Eras",t}();function K(t,e,n,a){let r=function(t){if(rt(t))return t;if("number"==typeof t&&!isNaN(t))return new Date(t);if("string"==typeof t){t=t.trim();const e=parseFloat(t);if(!isNaN(t-e))return new Date(e);if(/^(\d{4}-\d{1,2}-\d{1,2})$/.test(t)){const[e,n,a]=t.split("-").map(t=>+t);return new Date(e,n-1,a)}let n;if(n=t.match(B))return at(n)}const e=new Date(t);if(!rt(e))throw new Error(`Unable to convert "${t}" into a date`);return e}(t);e=function t(e,n){const a=x(e);if(z[a]=z[a]||{},z[a][n])return z[a][n];let r="";switch(n){case"shortDate":r=N(e,m.Short);break;case"mediumDate":r=N(e,m.Medium);break;case"longDate":r=N(e,m.Long);break;case"fullDate":r=N(e,m.Full);break;case"shortTime":r=C(e,m.Short);break;case"mediumTime":r=C(e,m.Medium);break;case"longTime":r=C(e,m.Long);break;case"fullTime":r=C(e,m.Full);break;case"short":const n=t(e,"shortTime"),a=t(e,"shortDate");r=$(R(e,m.Short),[n,a]);break;case"medium":const i=t(e,"mediumTime"),s=t(e,"mediumDate");r=$(R(e,m.Medium),[i,s]);break;case"long":const u=t(e,"longTime"),o=t(e,"longDate");r=$(R(e,m.Long),[u,o]);break;case"full":const l=t(e,"fullTime"),d=t(e,"fullDate");r=$(R(e,m.Full),[l,d])}return r&&(z[a][n]=r),r}(n,e)||e;let i,s=[];for(;e;){if(i=Y.exec(e),!i){s.push(e);break}{s=s.concat(i.slice(1));const t=s.pop();if(!t)break;e=t}}let u=r.getTimezoneOffset();a&&(u=nt(a,u),r=function(t,e,n){const a=t.getTimezoneOffset();return function(t,e){return(t=new Date(t.getTime())).setMinutes(t.getMinutes()+e),t}(t,-1*(nt(e,a)-a))}(r,a));let o="";return s.forEach(t=>{const e=function(t){if(et[t])return et[t];let e;switch(t){case"G":case"GG":case"GGG":e=Q(W.Eras,b.Abbreviated);break;case"GGGG":e=Q(W.Eras,b.Wide);break;case"GGGGG":e=Q(W.Eras,b.Narrow);break;case"y":e=J(U.FullYear,1,0,!1,!0);break;case"yy":e=J(U.FullYear,2,0,!0,!0);break;case"yyy":e=J(U.FullYear,3,0,!1,!0);break;case"yyyy":e=J(U.FullYear,4,0,!1,!0);break;case"M":case"L":e=J(U.Month,1,1);break;case"MM":case"LL":e=J(U.Month,2,1);break;case"MMM":e=Q(W.Months,b.Abbreviated);break;case"MMMM":e=Q(W.Months,b.Wide);break;case"MMMMM":e=Q(W.Months,b.Narrow);break;case"LLL":e=Q(W.Months,b.Abbreviated,p.Standalone);break;case"LLLL":e=Q(W.Months,b.Wide,p.Standalone);break;case"LLLLL":e=Q(W.Months,b.Narrow,p.Standalone);break;case"w":e=tt(1);break;case"ww":e=tt(2);break;case"W":e=tt(1,!0);break;case"d":e=J(U.Date,1);break;case"dd":e=J(U.Date,2);break;case"E":case"EE":case"EEE":e=Q(W.Days,b.Abbreviated);break;case"EEEE":e=Q(W.Days,b.Wide);break;case"EEEEE":e=Q(W.Days,b.Narrow);break;case"EEEEEE":e=Q(W.Days,b.Short);break;case"a":case"aa":case"aaa":e=Q(W.DayPeriods,b.Abbreviated);break;case"aaaa":e=Q(W.DayPeriods,b.Wide);break;case"aaaaa":e=Q(W.DayPeriods,b.Narrow);break;case"b":case"bb":case"bbb":e=Q(W.DayPeriods,b.Abbreviated,p.Standalone,!0);break;case"bbbb":e=Q(W.DayPeriods,b.Wide,p.Standalone,!0);break;case"bbbbb":e=Q(W.DayPeriods,b.Narrow,p.Standalone,!0);break;case"B":case"BB":case"BBB":e=Q(W.DayPeriods,b.Abbreviated,p.Format,!0);break;case"BBBB":e=Q(W.DayPeriods,b.Wide,p.Format,!0);break;case"BBBBB":e=Q(W.DayPeriods,b.Narrow,p.Format,!0);break;case"h":e=J(U.Hours,1,-12);break;case"hh":e=J(U.Hours,2,-12);break;case"H":e=J(U.Hours,1);break;case"HH":e=J(U.Hours,2);break;case"m":e=J(U.Minutes,1);break;case"mm":e=J(U.Minutes,2);break;case"s":e=J(U.Seconds,1);break;case"ss":e=J(U.Seconds,2);break;case"S":e=J(U.FractionalSeconds,1);break;case"SS":e=J(U.FractionalSeconds,2);break;case"SSS":e=J(U.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":e=X(H.Short);break;case"ZZZZZ":e=X(H.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":e=X(H.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":e=X(H.Long);break;default:return null}return et[t]=e,e}(t);o+=e?e(r,n,u):"''"===t?"'":t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),o}function $(t,e){return e&&(t=t.replace(/\{([^}]+)}/g,(function(t,n){return null!=e&&n in e?e[n]:t}))),t}function Z(t,e,n="-",a,r){let i="";(t<0||r&&t<=0)&&(r?t=1-t:(t=-t,i=n));let s=String(t);for(;s.length<e;)s="0"+s;return a&&(s=s.substr(s.length-e)),i+s}function J(t,e,n=0,a=!1,r=!1){return function(i,s){let u=function(t,e){switch(t){case U.FullYear:return e.getFullYear();case U.Month:return e.getMonth();case U.Date:return e.getDate();case U.Hours:return e.getHours();case U.Minutes:return e.getMinutes();case U.Seconds:return e.getSeconds();case U.FractionalSeconds:return e.getMilliseconds();case U.Day:return e.getDay();default:throw new Error(`Unknown DateType value "${t}".`)}}(t,i);if((n>0||u>-n)&&(u+=n),t===U.Hours)0===u&&-12===n&&(u=12);else if(t===U.FractionalSeconds)return o=e,Z(u,3).substr(0,o);var o;const l=A(s,y.MinusSign);return Z(u,e,l,a,r)}}function Q(t,e,n=p.Format,a=!1){return function(r,i){return function(t,e,n,a,r,i){switch(n){case W.Months:return w(e,r,a)[t.getMonth()];case W.Days:return T(e,r,a)[t.getDay()];case W.DayPeriods:const s=t.getHours(),u=t.getMinutes();if(i){const t=M(e),n=q(e,r,a);let i;if(t.forEach((t,e)=>{if(Array.isArray(t)){const{hours:a,minutes:r}=t[0],{hours:o,minutes:l}=t[1];s>=a&&u>=r&&(s<o||s===o&&u<l)&&(i=n[e])}else{const{hours:a,minutes:r}=t;a===s&&r===u&&(i=n[e])}}),i)return i}return _(e,r,a)[s<12?0:1];case W.Eras:return O(e,a)[t.getFullYear()<=0?0:1];default:throw new Error("unexpected translation type "+n)}}(r,i,t,e,n,a)}}function X(t){return function(e,n,a){const r=-1*a,i=A(n,y.MinusSign),s=r>0?Math.floor(r/60):Math.ceil(r/60);switch(t){case H.Short:return(r>=0?"+":"")+Z(s,2,i)+Z(Math.abs(r%60),2,i);case H.ShortGMT:return"GMT"+(r>=0?"+":"")+Z(s,1,i);case H.Long:return"GMT"+(r>=0?"+":"")+Z(s,2,i)+":"+Z(Math.abs(r%60),2,i);case H.Extended:return 0===a?"Z":(r>=0?"+":"")+Z(s,2,i)+":"+Z(Math.abs(r%60),2,i);default:throw new Error(`Unknown zone width "${t}"`)}}}function tt(t,e=!1){return function(n,a){let r;if(e){const t=new Date(n.getFullYear(),n.getMonth(),1).getDay()-1,e=n.getDate();r=1+Math.floor((e+t)/7)}else{const t=function(t){const e=new Date(t,0,1).getDay();return new Date(t,0,1+(e<=4?4:11)-e)}(n.getFullYear()),e=(i=n,new Date(i.getFullYear(),i.getMonth(),i.getDate()+(4-i.getDay()))).getTime()-t.getTime();r=1+Math.round(e/6048e5)}var i;return Z(r,t,A(a,y.MinusSign))}}const et={};function nt(t,e){t=t.replace(/:/g,"");const n=Date.parse("Jan 01, 1970 00:00:00 "+t)/6e4;return isNaN(n)?e:n}function at(t){const e=new Date(0);let n=0,a=0;const r=t[8]?e.setUTCFullYear:e.setFullYear,i=t[8]?e.setUTCHours:e.setHours;t[9]&&(n=Number(t[9]+t[10]),a=Number(t[9]+t[11])),r.call(e,Number(t[1]),Number(t[2])-1,Number(t[3]));const s=Number(t[4]||0)-n,u=Number(t[5]||0)-a,o=Number(t[6]||0),l=Math.round(1e3*parseFloat("0."+(t[7]||0)));return i.call(e,s,u,o,l),e}function rt(t){return t instanceof Date&&!isNaN(t.valueOf())}const it=/^(\d+)?\.((\d+)(-(\d+))?)?$/;function st(t,e,n,a,r,i,s=!1){let u="",o=!1;if(isFinite(t)){let l=function(t){let e,n,a,r,i,s=Math.abs(t)+"",u=0;for((n=s.indexOf("."))>-1&&(s=s.replace(".","")),(a=s.search(/e/i))>0?(n<0&&(n=a),n+=+s.slice(a+1),s=s.substring(0,a)):n<0&&(n=s.length),a=0;"0"===s.charAt(a);a++);if(a===(i=s.length))e=[0],n=1;else{for(i--;"0"===s.charAt(i);)i--;for(n-=a,e=[],r=0;a<=i;a++,r++)e[r]=Number(s.charAt(a))}return n>22&&(e=e.splice(0,21),u=n-1,n=1),{digits:e,exponent:u,integerLen:n}}(t);s&&(l=function(t){if(0===t.digits[0])return t;const e=t.digits.length-t.integerLen;return t.exponent?t.exponent+=2:(0===e?t.digits.push(0,0):1===e&&t.digits.push(0),t.integerLen+=2),t}(l));let d=e.minInt,c=e.minFrac,f=e.maxFrac;if(i){const t=i.match(it);if(null===t)throw new Error(i+" is not a valid digit info");const e=t[1],n=t[3],a=t[5];null!=e&&(d=ct(e)),null!=n&&(c=ct(n)),null!=a?f=ct(a):null!=n&&c>f&&(f=c)}!function(t,e,n){if(e>n)throw new Error(`The minimum number of digits after fraction (${e}) is higher than the maximum (${n}).`);let a=t.digits,r=a.length-t.integerLen;const i=Math.min(Math.max(e,r),n);let s=i+t.integerLen,u=a[s];if(s>0){a.splice(Math.max(t.integerLen,s));for(let t=s;t<a.length;t++)a[t]=0}else{r=Math.max(0,r),t.integerLen=1,a.length=Math.max(1,s=i+1),a[0]=0;for(let t=1;t<s;t++)a[t]=0}if(u>=5)if(s-1<0){for(let e=0;e>s;e--)a.unshift(0),t.integerLen++;a.unshift(1),t.integerLen++}else a[s-1]++;for(;r<Math.max(0,i);r++)a.push(0);let o=0!==i;const l=e+t.integerLen,d=a.reduceRight((function(t,e,n,a){return a[n]=(e+=t)<10?e:e-10,o&&(0===a[n]&&n>=l?a.pop():o=!1),e>=10?1:0}),0);d&&(a.unshift(d),t.integerLen++)}(l,c,f);let h=l.digits,g=l.integerLen;const p=l.exponent;let b=[];for(o=h.every(t=>!t);g<d;g++)h.unshift(0);for(;g<0;g++)h.unshift(0);g>0?b=h.splice(g,h.length):(b=h,h=[0]);const m=[];for(h.length>=e.lgSize&&m.unshift(h.splice(-e.lgSize,h.length).join(""));h.length>e.gSize;)m.unshift(h.splice(-e.gSize,h.length).join(""));h.length&&m.unshift(h.join("")),u=m.join(A(n,a)),b.length&&(u+=A(n,r)+b.join("")),p&&(u+=A(n,y.Exponential)+"+"+p)}else u=A(n,y.Infinity);return u=t<0&&!o?e.negPre+u+e.negSuf:e.posPre+u+e.posSuf,u}function ut(t,e,n,a,r){const i=dt(k(e,h.Currency),A(e,y.MinusSign));return i.minFrac=G(a),i.maxFrac=i.minFrac,st(t,i,e,y.CurrencyGroup,y.CurrencyDecimal,r).replace("¤",n).replace("¤","")}function ot(t,e,n){return st(t,dt(k(e,h.Percent),A(e,y.MinusSign)),e,y.Group,y.Decimal,n,!0).replace(new RegExp("%","g"),A(e,y.PercentSign))}function lt(t,e,n){return st(t,dt(k(e,h.Decimal),A(e,y.MinusSign)),e,y.Group,y.Decimal,n)}function dt(t,e="-"){const n={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},a=t.split(";"),r=a[0],i=a[1],s=-1!==r.indexOf(".")?r.split("."):[r.substring(0,r.lastIndexOf("0")+1),r.substring(r.lastIndexOf("0")+1)],u=s[0],o=s[1]||"";n.posPre=u.substr(0,u.indexOf("#"));for(let d=0;d<o.length;d++){const t=o.charAt(d);"0"===t?n.minFrac=n.maxFrac=d+1:"#"===t?n.maxFrac=d+1:n.posSuf+=t}const l=u.split(",");if(n.gSize=l[1]?l[1].length:0,n.lgSize=l[2]||l[1]?(l[2]||l[1]).length:0,i){const t=r.length-n.posPre.length-n.posSuf.length,e=i.indexOf("#");n.negPre=i.substr(0,e).replace(/'/g,""),n.negSuf=i.substr(e+t).replace(/'/g,"")}else n.negPre=e+n.posPre,n.negSuf=n.posSuf;return n}function ct(t){const e=parseInt(t);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+t);return e}const ft=new a.InjectionToken("UseV4Plurals");class ht{}function gt(t,e,n,a){let r="="+t;if(e.indexOf(r)>-1)return r;if(r=n.getPluralCategory(t,a),e.indexOf(r)>-1)return r;if(e.indexOf("other")>-1)return"other";throw new Error(`No plural message found for value "${t}"`)}class pt extends ht{constructor(t,e){super(),this.locale=t,this.deprecatedPluralFn=e}getPluralCategory(t,e){switch(this.deprecatedPluralFn?this.deprecatedPluralFn(e||this.locale,t):D(e||this.locale)(t)){case g.Zero:return"zero";case g.One:return"one";case g.Two:return"two";case g.Few:return"few";case g.Many:return"many";default:return"other"}}}function bt(t,e){"string"==typeof e&&(e=parseInt(e,10));const n=e,a=n.toString().replace(/^[^.]*\.?/,""),r=Math.floor(Math.abs(n)),i=a.length,s=parseInt(a,10),u=parseInt(n.toString().replace(/^[^.]*\.?|0+$/g,""),10)||0;switch(t.split("-")[0].toLowerCase()){case"af":case"asa":case"az":case"bem":case"bez":case"bg":case"brx":case"ce":case"cgg":case"chr":case"ckb":case"ee":case"el":case"eo":case"es":case"eu":case"fo":case"fur":case"gsw":case"ha":case"haw":case"hu":case"jgo":case"jmc":case"ka":case"kk":case"kkj":case"kl":case"ks":case"ksb":case"ky":case"lb":case"lg":case"mas":case"mgo":case"ml":case"mn":case"nb":case"nd":case"ne":case"nn":case"nnh":case"nyn":case"om":case"or":case"os":case"ps":case"rm":case"rof":case"rwk":case"saq":case"seh":case"sn":case"so":case"sq":case"ta":case"te":case"teo":case"tk":case"tr":case"ug":case"uz":case"vo":case"vun":case"wae":case"xog":return 1===n?g.One:g.Other;case"ak":case"ln":case"mg":case"pa":case"ti":return n===Math.floor(n)&&n>=0&&n<=1?g.One:g.Other;case"am":case"as":case"bn":case"fa":case"gu":case"hi":case"kn":case"mr":case"zu":return 0===r||1===n?g.One:g.Other;case"ar":return 0===n?g.Zero:1===n?g.One:2===n?g.Two:n%100===Math.floor(n%100)&&n%100>=3&&n%100<=10?g.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=99?g.Many:g.Other;case"ast":case"ca":case"de":case"en":case"et":case"fi":case"fy":case"gl":case"it":case"nl":case"sv":case"sw":case"ur":case"yi":return 1===r&&0===i?g.One:g.Other;case"be":return n%10==1&&n%100!=11?g.One:n%10===Math.floor(n%10)&&n%10>=2&&n%10<=4&&!(n%100>=12&&n%100<=14)?g.Few:n%10==0||n%10===Math.floor(n%10)&&n%10>=5&&n%10<=9||n%100===Math.floor(n%100)&&n%100>=11&&n%100<=14?g.Many:g.Other;case"br":return n%10==1&&n%100!=11&&n%100!=71&&n%100!=91?g.One:n%10==2&&n%100!=12&&n%100!=72&&n%100!=92?g.Two:n%10===Math.floor(n%10)&&(n%10>=3&&n%10<=4||n%10==9)&&!(n%100>=10&&n%100<=19||n%100>=70&&n%100<=79||n%100>=90&&n%100<=99)?g.Few:0!==n&&n%1e6==0?g.Many:g.Other;case"bs":case"hr":case"sr":return 0===i&&r%10==1&&r%100!=11||s%10==1&&s%100!=11?g.One:0===i&&r%10===Math.floor(r%10)&&r%10>=2&&r%10<=4&&!(r%100>=12&&r%100<=14)||s%10===Math.floor(s%10)&&s%10>=2&&s%10<=4&&!(s%100>=12&&s%100<=14)?g.Few:g.Other;case"cs":case"sk":return 1===r&&0===i?g.One:r===Math.floor(r)&&r>=2&&r<=4&&0===i?g.Few:0!==i?g.Many:g.Other;case"cy":return 0===n?g.Zero:1===n?g.One:2===n?g.Two:3===n?g.Few:6===n?g.Many:g.Other;case"da":return 1===n||0!==u&&(0===r||1===r)?g.One:g.Other;case"dsb":case"hsb":return 0===i&&r%100==1||s%100==1?g.One:0===i&&r%100==2||s%100==2?g.Two:0===i&&r%100===Math.floor(r%100)&&r%100>=3&&r%100<=4||s%100===Math.floor(s%100)&&s%100>=3&&s%100<=4?g.Few:g.Other;case"ff":case"fr":case"hy":case"kab":return 0===r||1===r?g.One:g.Other;case"fil":return 0===i&&(1===r||2===r||3===r)||0===i&&r%10!=4&&r%10!=6&&r%10!=9||0!==i&&s%10!=4&&s%10!=6&&s%10!=9?g.One:g.Other;case"ga":return 1===n?g.One:2===n?g.Two:n===Math.floor(n)&&n>=3&&n<=6?g.Few:n===Math.floor(n)&&n>=7&&n<=10?g.Many:g.Other;case"gd":return 1===n||11===n?g.One:2===n||12===n?g.Two:n===Math.floor(n)&&(n>=3&&n<=10||n>=13&&n<=19)?g.Few:g.Other;case"gv":return 0===i&&r%10==1?g.One:0===i&&r%10==2?g.Two:0!==i||r%100!=0&&r%100!=20&&r%100!=40&&r%100!=60&&r%100!=80?0!==i?g.Many:g.Other:g.Few;case"he":return 1===r&&0===i?g.One:2===r&&0===i?g.Two:0!==i||n>=0&&n<=10||n%10!=0?g.Other:g.Many;case"is":return 0===u&&r%10==1&&r%100!=11||0!==u?g.One:g.Other;case"ksh":return 0===n?g.Zero:1===n?g.One:g.Other;case"kw":case"naq":case"se":case"smn":return 1===n?g.One:2===n?g.Two:g.Other;case"lag":return 0===n?g.Zero:0!==r&&1!==r||0===n?g.Other:g.One;case"lt":return n%10!=1||n%100>=11&&n%100<=19?n%10===Math.floor(n%10)&&n%10>=2&&n%10<=9&&!(n%100>=11&&n%100<=19)?g.Few:0!==s?g.Many:g.Other:g.One;case"lv":case"prg":return n%10==0||n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19||2===i&&s%100===Math.floor(s%100)&&s%100>=11&&s%100<=19?g.Zero:n%10==1&&n%100!=11||2===i&&s%10==1&&s%100!=11||2!==i&&s%10==1?g.One:g.Other;case"mk":return 0===i&&r%10==1||s%10==1?g.One:g.Other;case"mt":return 1===n?g.One:0===n||n%100===Math.floor(n%100)&&n%100>=2&&n%100<=10?g.Few:n%100===Math.floor(n%100)&&n%100>=11&&n%100<=19?g.Many:g.Other;case"pl":return 1===r&&0===i?g.One:0===i&&r%10===Math.floor(r%10)&&r%10>=2&&r%10<=4&&!(r%100>=12&&r%100<=14)?g.Few:0===i&&1!==r&&r%10===Math.floor(r%10)&&r%10>=0&&r%10<=1||0===i&&r%10===Math.floor(r%10)&&r%10>=5&&r%10<=9||0===i&&r%100===Math.floor(r%100)&&r%100>=12&&r%100<=14?g.Many:g.Other;case"pt":return n===Math.floor(n)&&n>=0&&n<=2&&2!==n?g.One:g.Other;case"ro":return 1===r&&0===i?g.One:0!==i||0===n||1!==n&&n%100===Math.floor(n%100)&&n%100>=1&&n%100<=19?g.Few:g.Other;case"ru":case"uk":return 0===i&&r%10==1&&r%100!=11?g.One:0===i&&r%10===Math.floor(r%10)&&r%10>=2&&r%10<=4&&!(r%100>=12&&r%100<=14)?g.Few:0===i&&r%10==0||0===i&&r%10===Math.floor(r%10)&&r%10>=5&&r%10<=9||0===i&&r%100===Math.floor(r%100)&&r%100>=11&&r%100<=14?g.Many:g.Other;case"shi":return 0===r||1===n?g.One:n===Math.floor(n)&&n>=2&&n<=10?g.Few:g.Other;case"si":return 0===n||1===n||0===r&&1===s?g.One:g.Other;case"sl":return 0===i&&r%100==1?g.One:0===i&&r%100==2?g.Two:0===i&&r%100===Math.floor(r%100)&&r%100>=3&&r%100<=4||0!==i?g.Few:g.Other;case"tzm":return n===Math.floor(n)&&n>=0&&n<=1||n===Math.floor(n)&&n>=11&&n<=99?g.One:g.Other;default:return g.Other}}function mt(t,e,n){"string"!=typeof e&&(n=e,e=t[a["ɵLocaleDataIndex"].LocaleId]),e=e.toLowerCase().replace(/_/g,"-"),a["ɵLOCALE_DATA"][e]=t,n&&(a["ɵLOCALE_DATA"][e][a["ɵLocaleDataIndex"].ExtraData]=n)}function yt(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[a,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(a.trim()===e)return decodeURIComponent(r)}return null}class vt{constructor(t,e){this._name=t,this._options=e,this.value=null,this._lastSetValue=null,this._lastSetValueType=0,this._lastSetValueIdentityChange=!1}setValue(t){if(Array.isArray(t))this._lastSetValueType=4;else if(t instanceof Set)this._lastSetValueType=8;else if(t&&"string"==typeof t){if(!(4&this._options))throw new Error(this._name+" string values are not allowed");this._lastSetValueType=1}else this._lastSetValueType=t?2:0;this._lastSetValueIdentityChange=!0,this._lastSetValue=t||null}hasValueChanged(){let t=this._lastSetValueIdentityChange;if(!(t||14&this._lastSetValueType))return!1;let e=null;const n=!!(1&this._options),a=!!(8&this._options),r=!!(2&this._options);switch(this._lastSetValueType){case 1:const i=this._lastSetValue.split(/\s+/g);16&this._options?(e={},i.forEach((t,n)=>e[t]=!0)):e=i.reduce((t,e,n)=>t+(n?" ":"")+e);break;case 2:const s=this._lastSetValue,u=Object.keys(s);t||(t=!this.value||function(t,e,n){const a=t;if(!Ot(Object.keys(e),a))return!0;for(let r=0;r<a.length;r++){const t=a[r];if(e[t]!==n[t])return!0}return!1}(u,this.value,s)),t&&(e=xt(this._name,n,a,r,s,u));break;case 4:case 8:const o=Array.from(this._lastSetValue);t||(t=!Ot(Object.keys(this.value),o)),t&&(e=xt(this._name,n,a,r,o));break;default:e=null}return t&&(this.value=e),t}}function xt(t,e,n,a,r,i){const s={};if(i)for(let u=0;u<i.length;u++){let t=i[u];t=e?t.trim():t,Tt(s,t,r[t],n,a)}else for(let u=0;u<r.length;u++){let n=r[u];_t(t,n),n=e?n.trim():n,Tt(s,n,!0,!1,a)}return s}function _t(t,e){if("string"!=typeof e)throw new Error(`${t} can only toggle CSS classes expressed as strings, got ${e}`)}function Tt(t,e,n,a,r){if(r&&e.indexOf(" ")>0){const r=e.split(/\s+/g);for(let e=0;e<r.length;e++)wt(t,r[e],n,a)}else wt(t,e,n,a)}function wt(t,e,n,a){if(a){const t=function(t,e){const n=t.indexOf(".");if(n>0){const a=t.substr(n+1);t=t.substring(0,n),null!=e&&(e+=a)}return{key:t,value:e}}(e,n);n=t.value,e=t.key}t[e]=n}function Ot(t,e){if(t&&e){if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(-1===e.indexOf(t[n]))return!1;return!0}return!1}class St{}class It{constructor(t,e,n,a){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=a,this._initialClasses=[]}getValue(){return null}setClass(t){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}setNgClass(t){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(Object(a["ɵisListLikeIterable"])(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}applyChanges(){if(this._iterableDiffer){const t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){const t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}_applyKeyValueChanges(t){t.forEachAddedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachChangedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachRemovedItem(t=>{t.previousValue&&this._toggleClass(t.key,!1)})}_applyIterableChanges(t){t.forEachAddedItem(t=>{if("string"!=typeof t.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got "+Object(a["ɵstringify"])(t.item));this._toggleClass(t.item,!0)}),t.forEachRemovedItem(t=>this._toggleClass(t.item,!1))}_applyClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!0)):Object.keys(t).forEach(e=>this._toggleClass(e,!!t[e])))}_removeClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!1)):Object.keys(t).forEach(t=>this._toggleClass(t,!1)))}_toggleClass(t,e){(t=t.trim())&&t.split(/\s+/g).forEach(t=>{e?this._renderer.addClass(this._ngEl.nativeElement,t):this._renderer.removeClass(this._ngEl.nativeElement,t)})}}class Nt{constructor(){this._value=null,this._ngClassDiffer=new vt("NgClass",23),this._classStringDiffer=null}getValue(){return this._value}setClass(t){(t||this._classStringDiffer)&&(this._classStringDiffer=this._classStringDiffer||new vt("class",20),this._classStringDiffer.setValue(t))}setNgClass(t){this._ngClassDiffer.setValue(t)}applyChanges(){const t=!!this._classStringDiffer&&this._classStringDiffer.hasValueChanged(),e=this._ngClassDiffer.hasValueChanged();if(t||e){let t=this._ngClassDiffer.value;if(this._classStringDiffer){let e=this._classStringDiffer.value;e&&(t=t?Object.assign({},e,t):e)}this._value=t}}}const Ct={provide:St,useClass:It},Rt={provide:St,useClass:Nt},At=Ct,kt=Object(a["ɵɵdefineDirective"])({type:function(){},selectors:null,factory:()=>{},hostBindings:function(t,e,n){1&t&&(Object(a["ɵɵallocHostVars"])(1),Object(a["ɵɵstyling"])()),2&t&&(Object(a["ɵɵclassMap"])(e.getValue()),Object(a["ɵɵstylingApply"])())}});let Et=(()=>{class t{constructor(t){this._delegate=t}getValue(){return this._delegate.getValue()}}return t.ngDirectiveDef=void 0,t})();class Lt extends Et{constructor(t){super(t)}set klass(t){this._delegate.setClass(t)}set ngClass(t){this._delegate.setNgClass(t)}ngDoCheck(){this._delegate.applyChanges()}}class Dt{constructor(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}ngOnChanges(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){const e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){const t=e.get(a.NgModuleRef);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(t.injector)}else this._moduleRef=null;const n=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(a.ComponentFactoryResolver)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(n,this._viewContainerRef.length,e,this.ngComponentOutletContent)}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}class Pt{constructor(t,e,n,a){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=a}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}class Mt{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){Object(a.isDevMode)()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. See https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html#!#change-propagation for more information.`),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,a)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Pt(null,this._ngForOf,-1,-1),null===a?void 0:a),r=new qt(t,n);e.push(r)}else if(null==a)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const r=this._viewContainer.get(n);this._viewContainer.move(r,a);const i=new qt(t,r);e.push(i)}});for(let n=0;n<e.length;n++)this._perViewChange(e[n].view,e[n].record);for(let n=0,a=this._viewContainer.length;n<a;n++){const t=this._viewContainer.get(n);t.context.index=n,t.context.count=a,t.context.ngForOf=this._ngForOf}t.forEachIdentityChange(t=>{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}class qt{constructor(t,e){this.record=t,this.view=e}}class jt{constructor(t,e){this._viewContainer=t,this._context=new Ft,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){Vt("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){Vt("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}}class Ft{constructor(){this.$implicit=null,this.ngIf=null}}function Vt(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${Object(a["ɵstringify"])(e)}'.`)}class Gt{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}class Bt{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const e=t==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||e,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),e}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e<this._defaultViews.length;e++)this._defaultViews[e].enforceState(t)}}}class zt{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new Gt(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}class Yt{constructor(t,e,n){n._addDefault(new Gt(t,e))}}class Ht{constructor(t){this._localization=t,this._caseViews={}}set ngPlural(t){this._switchValue=t,this._updateView()}addCase(t,e){this._caseViews[t]=e}_updateView(){this._clearViews();const t=Object.keys(this._caseViews),e=gt(this._switchValue,t,this._localization);this._activateView(this._caseViews[e])}_clearViews(){this._activeView&&this._activeView.destroy()}_activateView(t){t&&(this._activeView=t,this._activeView.create())}}class Ut{constructor(t,e,n,a){this.value=t;const r=!isNaN(Number(t));a.addCase(r?"="+t:t,new Gt(n,e))}}class Wt{}class Kt{constructor(t,e,n){this._ngEl=t,this._differs=e,this._renderer=n}getValue(){return null}setNgStyle(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())}applyChanges(){if(this._differ){const t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}}_applyChanges(t){t.forEachRemovedItem(t=>this._setStyle(t.key,null)),t.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),t.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}_setStyle(t,e){const[n,a]=t.split(".");null!=(e=null!=e&&a?`${e}${a}`:e)?this._renderer.setStyle(this._ngEl.nativeElement,n,e):this._renderer.removeStyle(this._ngEl.nativeElement,n)}}class $t{constructor(){this._differ=new vt("NgStyle",8),this._value=null}getValue(){return this._value}setNgStyle(t){this._differ.setValue(t)}applyChanges(){this._differ.hasValueChanged()&&(this._value=this._differ.value)}}const Zt={provide:Wt,useClass:Kt},Jt={provide:Wt,useClass:$t},Qt=Zt,Xt=Object(a["ɵɵdefineDirective"])({type:function(){},selectors:null,factory:()=>{},hostBindings:function(t,e,n){1&t&&Object(a["ɵɵstyling"])(),2&t&&(Object(a["ɵɵstyleMap"])(e.getValue()),Object(a["ɵɵstylingApply"])())}});let te=(()=>{class t{constructor(t){this._delegate=t}getValue(){return this._delegate.getValue()}}return t.ngDirectiveDef=void 0,t})();class ee extends te{constructor(t){super(t)}set ngStyle(t){this._delegate.setNgStyle(t)}ngDoCheck(){this._delegate.applyChanges()}}class ne{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){this._shouldRecreateView(t)?(this._viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._viewRef)),this.ngTemplateOutlet&&(this._viewRef=this._viewContainerRef.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext))):this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)}_shouldRecreateView(t){const e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)}_hasContextShapeChanged(t){const e=Object.keys(t.previousValue||{}),n=Object.keys(t.currentValue||{});if(e.length===n.length){for(let t of n)if(-1===e.indexOf(t))return!0;return!1}return!0}_updateExistingContext(t){for(let e of Object.keys(t))this._viewRef.context[e]=this.ngTemplateOutletContext[e]}}const ae=[Lt,Dt,Mt,jt,ne,ee,Bt,zt,Yt,Ht,Ut];function re(t,e){return Error(`InvalidPipeArgument: '${e}' for pipe '${Object(a["ɵstringify"])(t)}'`)}const ie=/((?:[^yMLdHhmsazZEwGjJ']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|J+|j+|m+|s+|a|z|Z|G+|w+))(.*)/,se={yMMMdjms:me(be([ge("year",1),pe("month",3),ge("day",1),ge("hour",1),ge("minute",1),ge("second",1)])),yMdjm:me(be([ge("year",1),ge("month",1),ge("day",1),ge("hour",1),ge("minute",1)])),yMMMMEEEEd:me(be([ge("year",1),pe("month",4),pe("weekday",4),ge("day",1)])),yMMMMd:me(be([ge("year",1),pe("month",4),ge("day",1)])),yMMMd:me(be([ge("year",1),pe("month",3),ge("day",1)])),yMd:me(be([ge("year",1),ge("month",1),ge("day",1)])),jms:me(be([ge("hour",1),ge("second",1),ge("minute",1)])),jm:me(be([ge("hour",1),ge("minute",1)]))},ue={yyyy:me(ge("year",4)),yy:me(ge("year",2)),y:me(ge("year",1)),MMMM:me(pe("month",4)),MMM:me(pe("month",3)),MM:me(ge("month",2)),M:me(ge("month",1)),LLLL:me(pe("month",4)),L:me(pe("month",1)),dd:me(ge("day",2)),d:me(ge("day",1)),HH:oe(de(me(he(ge("hour",2),!1)))),H:de(me(he(ge("hour",1),!1))),hh:oe(de(me(he(ge("hour",2),!0)))),h:de(me(he(ge("hour",1),!0))),jj:me(ge("hour",2)),j:me(ge("hour",1)),mm:oe(me(ge("minute",2))),m:me(ge("minute",1)),ss:oe(me(ge("second",2))),s:me(ge("second",1)),sss:me(ge("second",3)),EEEE:me(pe("weekday",4)),EEE:me(pe("weekday",3)),EE:me(pe("weekday",2)),E:me(pe("weekday",1)),a:le(me(he(ge("hour",1),!0))),Z:fe("short"),z:fe("long"),ww:me({}),w:me({}),G:me(pe("era",1)),GG:me(pe("era",2)),GGG:me(pe("era",3)),GGGG:me(pe("era",4))};function oe(t){return function(e,n){const a=t(e,n);return 1==a.length?"0"+a:a}}function le(t){return function(e,n){return t(e,n).split(" ")[1]}}function de(t){return function(e,n){return t(e,n).split(" ")[0]}}function ce(t,e,n){return new Intl.DateTimeFormat(e,n).format(t).replace(/[\u200e\u200f]/g,"")}function fe(t){const e={hour:"2-digit",hour12:!1,timeZoneName:t};return function(t,n){const a=ce(t,n,e);return a?a.substring(3):""}}function he(t,e){return t.hour12=e,t}function ge(t,e){const n={};return n[t]=2===e?"2-digit":"numeric",n}function pe(t,e){const n={};return n[t]=e<4?e>1?"short":"narrow":"long",n}function be(t){return t.reduce((t,e)=>Object.assign({},t,e),{})}function me(t){return(e,n)=>ce(e,n,t)}const ye=new Map;let ve=(()=>{class t{constructor(t){this._locale=t}transform(e,n="mediumDate"){if(null==e||""===e||e!=e)return null;let a;if("string"==typeof e&&(e=e.trim()),xe(e))a=e;else if(isNaN(e-parseFloat(e)))if("string"==typeof e&&/^(\d{4}-\d{1,2}-\d{1,2})$/.test(e)){const[t,n,r]=e.split("-").map(t=>parseInt(t,10));a=new Date(t,n-1,r)}else a=new Date(e);else a=new Date(parseFloat(e));if(!xe(a)){let n;if("string"!=typeof e||!(n=e.match(B)))throw re(t,e);a=at(n)}return class{static format(t,e,n){return function(t,e,n){const a=se[t];if(a)return a(e,n);const r=t;let i=ye.get(r);if(!i){let e;i=[],ie.exec(t);let n=t;for(;n;)e=ie.exec(n),e?(i=i.concat(e.slice(1)),n=i.pop()):(i.push(n),n=null);ye.set(r,i)}return i.reduce((t,a)=>{const r=ue[a];return t+(r?r(e,n):function(t){return"''"===t?"'":t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}(a))},"")}(n,t,e)}}.format(a,this._locale,t._ALIASES[n]||n)}}return t._ALIASES={medium:"yMMMdjms",short:"yMdjm",fullDate:"yMMMMEEEEd",longDate:"yMMMMd",mediumDate:"yMMMd",shortDate:"yMd",mediumTime:"jms",shortTime:"jm"},t})();function xe(t){return t instanceof Date&&!isNaN(t.valueOf())}function _e(t,e,n,a,r,i=null,s=!1){if(null==n)return null;if("number"!=typeof(n="string"!=typeof n||isNaN(+n-parseFloat(n))?n:+n))throw re(t,n);let u,o,l;if(a!==h.Currency&&(u=1,o=0,l=3),r){const t=r.match(it);if(null===t)throw new Error(r+" is not a valid digit info for number pipes");null!=t[1]&&(u=ct(t[1])),null!=t[3]&&(o=ct(t[3])),null!=t[5]&&(l=ct(t[5]))}return class{static format(t,e,n,a={}){const{minimumIntegerDigits:r,minimumFractionDigits:i,maximumFractionDigits:s,currency:u,currencyAsSymbol:o=!1}=a,l={minimumIntegerDigits:r,minimumFractionDigits:i,maximumFractionDigits:s,style:h[n].toLowerCase()};return n==h.Currency&&(l.currency="string"==typeof u?u:void 0,l.currencyDisplay=o?"symbol":"code"),new Intl.NumberFormat(e,l).format(t)}}.format(n,e,a,{minimumIntegerDigits:u,minimumFractionDigits:o,maximumFractionDigits:l,currency:i,currencyAsSymbol:s})}class Te{constructor(t){this._locale=t}transform(t,e){return _e(Te,this._locale,t,h.Decimal,e)}}class we{constructor(t){this._locale=t}transform(t,e){return _e(we,this._locale,t,h.Percent,e)}}class Oe{constructor(t){this._locale=t}transform(t,e="USD",n=!1,a){return _e(Oe,this._locale,t,h.Currency,a,e,n)}}const Se=[Te,we,Oe,ve];class Ie{createSubscription(t,e){return t.subscribe({next:e,error:t=>{throw t}})}dispose(t){t.unsubscribe()}onDestroy(t){t.unsubscribe()}}class Ne{createSubscription(t,e){return t.then(e,t=>{throw t})}dispose(t){}onDestroy(t){}}const Ce=new Ne,Re=new Ie;class Ae{constructor(t){this._ref=t,this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(t){return this._obj?t!==this._obj?(this._dispose(),this.transform(t)):Object(a["ɵlooseIdentical"])(this._latestValue,this._latestReturnedValue)?this._latestReturnedValue:(this._latestReturnedValue=this._latestValue,a.WrappedValue.wrap(this._latestValue)):(t&&this._subscribe(t),this._latestReturnedValue=this._latestValue,this._latestValue)}_subscribe(t){this._obj=t,this._strategy=this._selectStrategy(t),this._subscription=this._strategy.createSubscription(t,e=>this._updateLatestValue(t,e))}_selectStrategy(t){if(Object(a["ɵisPromise"])(t))return Ce;if(Object(a["ɵisObservable"])(t))return Re;throw re(Ae,t)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null}_updateLatestValue(t,e){t===this._obj&&(this._latestValue=e,this._ref.markForCheck())}}class ke{transform(t){if(!t)return t;if("string"!=typeof t)throw re(ke,t);return t.toLowerCase()}}const Ee=/(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D])\S*/g;class Le{transform(t){if(!t)return t;if("string"!=typeof t)throw re(Le,t);return t.replace(Ee,t=>t[0].toUpperCase()+t.substr(1).toLowerCase())}}class De{transform(t){if(!t)return t;if("string"!=typeof t)throw re(De,t);return t.toUpperCase()}}class Pe{constructor(t){this.locale=t}transform(t,e="mediumDate",n,a){if(null==t||""===t||t!=t)return null;try{return K(t,e,a||this.locale,n)}catch(r){throw re(Pe,r.message)}}}const Me=/#/g;class qe{constructor(t){this._localization=t}transform(t,e,n){if(null==t)return"";if("object"!=typeof e||null===e)throw re(qe,e);return e[gt(t,Object.keys(e),this._localization,n)].replace(Me,t.toString())}}class je{transform(t,e){if(null==t)return"";if("object"!=typeof e||"string"!=typeof t)throw re(je,e);return e.hasOwnProperty(t)?e[t]:e.hasOwnProperty("other")?e.other:""}}class Fe{transform(t){return JSON.stringify(t,null,2)}}class Ve{constructor(t){this.differs=t,this.keyValues=[]}transform(t,e=Ge){if(!t||!(t instanceof Map)&&"object"!=typeof t)return null;this.differ||(this.differ=this.differs.find(t).create());const n=this.differ.diff(t);return n&&(this.keyValues=[],n.forEachItem(t=>{this.keyValues.push({key:t.key,value:t.currentValue})}),this.keyValues.sort(e)),this.keyValues}}function Ge(t,e){const n=t.key,a=e.key;if(n===a)return 0;if(void 0===n)return 1;if(void 0===a)return-1;if(null===n)return 1;if(null===a)return-1;if("string"==typeof n&&"string"==typeof a)return n<a?-1:1;if("number"==typeof n&&"number"==typeof a)return n-a;if("boolean"==typeof n&&"boolean"==typeof a)return n<a?-1:1;const r=String(n),i=String(a);return r==i?0:r<i?-1:1}class Be{constructor(t){this._locale=t}transform(t,e,n){if(He(t))return null;n=n||this._locale;try{return lt(Ue(t),n,e)}catch(a){throw re(Be,a.message)}}}class ze{constructor(t){this._locale=t}transform(t,e,n){if(He(t))return null;n=n||this._locale;try{return ot(Ue(t),n,e)}catch(a){throw re(ze,a.message)}}}class Ye{constructor(t){this._locale=t}transform(t,e,n="symbol",a,r){if(He(t))return null;r=r||this._locale,"boolean"==typeof n&&(console&&console.warn&&console.warn('Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".'),n=n?"symbol":"code");let i=e||"USD";"code"!==n&&(i="symbol"===n||"symbol-narrow"===n?V(i,"symbol"===n?"wide":"narrow",r):n);try{return ut(Ue(t),r,i,e,a)}catch(s){throw re(Ye,s.message)}}}function He(t){return null==t||""===t||t!=t}function Ue(t){if("string"==typeof t&&!isNaN(Number(t)-parseFloat(t)))return Number(t);if("number"!=typeof t)throw new Error(t+" is not a number");return t}class We{transform(t,e,n){if(null==t)return t;if(!this.supports(t))throw re(We,t);return t.slice(e,n)}supports(t){return"string"==typeof t||Array.isArray(t)}}const Ke=[Ae,De,ke,Fe,We,Be,ze,Le,Ye,Pe,qe,je,Ve];class $e{}class Ze{}const Je=new a.InjectionToken("DocumentToken"),Qe="browser",Xe="server",tn="browserWorkerApp",en="browserWorkerUi";function nn(t){return t===Qe}function an(t){return t===Xe}function rn(t){return t===tn}function sn(t){return t===en}const un=new a.Version("8.2.14");let on=(()=>{class t{}return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({token:t,providedIn:"root",factory:()=>new ln(Object(a["ɵɵinject"])(Je),window,Object(a["ɵɵinject"])(a.ErrorHandler))}),t})();class ln{constructor(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=()=>[0,0]}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]}scrollToPosition(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{const e=this.document.querySelector("#"+t);if(e)return void this.scrollToElement(e);const n=this.document.querySelector(`[name='${t}']`);if(n)return void this.scrollToElement(n)}catch(e){this.errorHandler.handleError(e)}}}setHistoryScrollRestoration(t){if(this.supportScrollRestoration()){const e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}}scrollToElement(t){const e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,a=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(n-r[0],a-r[1])}supportScrollRestoration(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}}}class dn{setOffset(t){}getScrollPosition(){return[0,0]}scrollToPosition(t){}scrollToAnchor(t){}setHistoryScrollRestoration(t){}}},SatO:function(t,e,n){!function(t){"use strict";t.defineLocale("zh-hk",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"中午"===e?t>=11?t:t+12:"下午"===e||"晚上"===e?t+12:void 0},meridiem:function(t,e,n){var a=100*t+e;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"週";default:return t}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(n("wd/R"))},SeVD:function(t,e,n){"use strict";var a=n("ngJS"),r=n("NJ4a"),i=n("Lhse"),s=n("kJWO"),u=n("I55L"),o=n("c2HN"),l=n("XoHu");n.d(e,"a",(function(){return d}));const d=t=>{if(t&&"function"==typeof t[s.a])return d=t,t=>{const e=d[s.a]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(Object(u.a)(t))return Object(a.a)(t);if(Object(o.a)(t))return n=t,t=>(n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,r.a),t);if(t&&"function"==typeof t[i.a])return e=t,t=>{const n=e[i.a]();for(;;){const e=n.next();if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t};{const e=Object(l.a)(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}var e,n,d}},SgmB:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("LRne"),r=n("5+tZ"),i=n("8Y7J"),s=n("IheW"),u=n("pL04");let o=(()=>{class t{constructor(t){this.http=t}list(){return this.http.get("api/role")}delete(t){return this.http.delete("api/role/"+t)}get(t){return this.http.get("api/role/"+t)}create(t){return this.http.post("api/role",t)}clone(t,e){return this.http.post(`api/role/${t}/clone`,{new_name:e})}update(t){return this.http.put("api/role/"+t.name,t)}exists(t){return this.list().pipe(Object(r.a)(e=>{const n=e.some(e=>e.name===t);return Object(a.a)(n)}))}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](s.c))},token:t,providedIn:u.a}),t})()},SpAZ:function(t,e,n){"use strict";function a(t){return t}n.d(e,"a",(function(){return a}))},SxV6:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("sVev"),r=n("pLZG"),i=n("IzEk"),s=n("xbPD"),u=n("XDbj"),o=n("SpAZ");function l(t,e){const n=arguments.length>=2;return l=>l.pipe(t?Object(r.a)((e,n)=>t(e,n,l)):o.a,Object(i.a)(1),n?Object(s.a)(e):Object(u.a)(()=>new a.a))}},TAQX:function(t,e,n){var a=n("im1V");t.exports=function(t,e){return function(n,r){if(null==n)return n;if(!a(n))return t(n,r);for(var i=n.length,s=e?i:-1,u=Object(n);(e?s--:++s<i)&&!1!==r(u[s],s,u););return n}}},THq6:function(t,e,n){var a=n("pMcL"),r=a?a.prototype:void 0,i=r?r.valueOf:void 0;t.exports=function(t){return i?Object(i.call(t)):{}}},TJUb:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t,e){return a.isPlainObject(e)?a.get(e,t,t):t}}},TNUL:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Number)],t.prototype,"index",void 0),i([Object(a.Input)(),s("design:type",Object)],t.prototype,"templates",void 0),i([Object(a.Component)({selector:"TreeNode, tree-node",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <div\n        *ngIf="!templates.treeNodeFullTemplate"\n        [class]="node.getClass()"\n        [class.tree-node]="true"\n        [class.tree-node-expanded]="node.isExpanded && node.hasChildren"\n        [class.tree-node-collapsed]="node.isCollapsed && node.hasChildren"\n        [class.tree-node-leaf]="node.isLeaf"\n        [class.tree-node-active]="node.isActive"\n        [class.tree-node-focused]="node.isFocused"\n      >\n        <tree-node-drop-slot\n          *ngIf="index === 0"\n          [dropIndex]="node.index"\n          [node]="node.parent"\n        ></tree-node-drop-slot>\n\n        <tree-node-wrapper\n          [node]="node"\n          [index]="index"\n          [templates]="templates"\n        ></tree-node-wrapper>\n\n        <tree-node-children\n          [node]="node"\n          [templates]="templates"\n        ></tree-node-children>\n        <tree-node-drop-slot\n          [dropIndex]="node.index + 1"\n          [node]="node.parent"\n        ></tree-node-drop-slot>\n      </div>\n      <ng-container\n        [ngTemplateOutlet]="templates.treeNodeFullTemplate"\n        [ngTemplateOutletContext]="{\n          $implicit: node,\n          node: node,\n          index: index,\n          templates: templates\n        }"\n      >\n      </ng-container>\n    </ng-container>\n  '})],t)}()},TWQb:function(t,e,n){var a=n("/GqU"),r=n("UMSQ"),i=n("I8vh"),s=function(t){return function(e,n,s){var u,o=a(e),l=r(o.length),d=i(s,l);if(t&&n!=n){for(;l>d;)if((u=o[d++])!=u)return!0}else for(;l>d;d++)if((t||d in o)&&o[d]===n)return t||d||0;return!t&&-1}};t.exports={includes:s(!0),indexOf:s(!1)}},TYzs:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){const e=parseInt(t,10);return isNaN(e)?t:t+(1===Math.floor(e/10)?"th":e%10==1?"st":e%10==2?"nd":e%10==3?"rd":"th")}}},"TbD+":function(t,e,n){var a=n("QCZx"),r=n("jqoL");t.exports=function(t,e){return a(t,e,(function(e,n){return r(t,n)}))}},TeQF:function(t,e,n){"use strict";var a=n("I+eb"),r=n("tycR").filter,i=n("Hd5f"),s=n("rkAj"),u=i("filter"),o=s("filter");a({target:"Array",proto:!0,forced:!u||!o},{filter:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}})},Tq0f:function(t,e,n){var a=n("Ytn0");t.exports=function(t){var e=a(this,t).delete(t);return this.size-=e?1:0,e}},U02d:function(t,e,n){var a=n("qN6l"),r=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(a){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return r.call(e,t)?e[t]:void 0}},UDhR:function(t,e,n){!function(t){"use strict";t.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(t,e){return 12===t&&(t=0),"pagi"===e?t:"siang"===e?t>=11?t:t+12:"sore"===e||"malam"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"pagi":t<15?"siang":t<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n("wd/R"))},UMSQ:function(t,e,n){var a=n("ppGB"),r=Math.min;t.exports=function(t){return t>0?r(a(t),9007199254740991):0}},USCx:function(t,e,n){!function(t){"use strict";t.defineLocale("ga",{months:["Eanáir","Feabhra","Márta","Aibreán","Bealtaine","Méitheamh","Iúil","Lúnasa","Meán Fómhair","Deaireadh Fómhair","Samhain","Nollaig"],monthsShort:["Eaná","Feab","Márt","Aibr","Beal","Méit","Iúil","Lúna","Meán","Deai","Samh","Noll"],monthsParseExact:!0,weekdays:["Dé Domhnaigh","Dé Luain","Dé Máirt","Dé Céadaoin","Déardaoin","Dé hAoine","Dé Satharn"],weekdaysShort:["Dom","Lua","Mái","Céa","Déa","hAo","Sat"],weekdaysMin:["Do","Lu","Má","Ce","Dé","hA","Sa"],longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Inniu ag] LT",nextDay:"[Amárach ag] LT",nextWeek:"dddd [ag] LT",lastDay:"[Inné aig] LT",lastWeek:"dddd [seo caite] [ag] LT",sameElse:"L"},relativeTime:{future:"i %s",past:"%s ó shin",s:"cúpla soicind",ss:"%d soicind",m:"nóiméad",mm:"%d nóiméad",h:"uair an chloig",hh:"%d uair an chloig",d:"lá",dd:"%d lá",M:"mí",MM:"%d mí",y:"bliain",yy:"%d bliain"},dayOfMonthOrdinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(t){return t+(1===t?"d":t%10==2?"na":"mh")},week:{dow:1,doy:4}})}(n("wd/R"))},UTVS:function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},Uies:function(t,e){var n=/^(?:0|[1-9]\d*)$/;t.exports=function(t,e){var a=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==a||"symbol"!=a&&n.test(t))&&t>-1&&t%1==0&&t<e}},UnOm:function(t,e,n){var a=n("ktBm"),r=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=a(e,t);return!(n<0||(n==e.length-1?e.pop():r.call(e,n,1),--this.size,0))}},UpQW:function(t,e,n){!function(t){"use strict";var e=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];t.defineLocale("ur",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(t){return"شام"===t},meridiem:function(t,e,n){return t<12?"صبح":"شام"},calendar:{sameDay:"[آج بوقت] LT",nextDay:"[کل بوقت] LT",nextWeek:"dddd [بوقت] LT",lastDay:"[گذشتہ روز بوقت] LT",lastWeek:"[گذشتہ] dddd [بوقت] LT",sameElse:"L"},relativeTime:{future:"%s بعد",past:"%s قبل",s:"چند سیکنڈ",ss:"%d سیکنڈ",m:"ایک منٹ",mm:"%d منٹ",h:"ایک گھنٹہ",hh:"%d گھنٹے",d:"ایک دن",dd:"%d دن",M:"ایک ماہ",MM:"%d ماہ",y:"ایک سال",yy:"%d سال"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:4}})}(n("wd/R"))},Uqmq:function(t,e,n){var a=n("M+Mf"),r=n("hmSm");t.exports=function t(e,n,i,s,u,o){return r(e)&&r(n)&&(o.set(n,e),a(e,n,void 0,t,o),o.delete(n)),e}},Ur1D:function(t,e,n){!function(t){"use strict";t.defineLocale("ss",{months:"Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),monthsShort:"Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),weekdays:"Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),weekdaysShort:"Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),weekdaysMin:"Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Namuhla nga] LT",nextDay:"[Kusasa nga] LT",nextWeek:"dddd [nga] LT",lastDay:"[Itolo nga] LT",lastWeek:"dddd [leliphelile] [nga] LT",sameElse:"L"},relativeTime:{future:"nga %s",past:"wenteka nga %s",s:"emizuzwana lomcane",ss:"%d mzuzwana",m:"umzuzu",mm:"%d emizuzu",h:"lihora",hh:"%d emahora",d:"lilanga",dd:"%d emalanga",M:"inyanga",MM:"%d tinyanga",y:"umnyaka",yy:"%d iminyaka"},meridiemParse:/ekuseni|emini|entsambama|ebusuku/,meridiem:function(t,e,n){return t<11?"ekuseni":t<15?"emini":t<19?"entsambama":"ebusuku"},meridiemHour:function(t,e){return 12===t&&(t=0),"ekuseni"===e?t:"emini"===e?t>=11?t:t+12:"entsambama"===e||"ebusuku"===e?0===t?0:t+12:void 0},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal:"%d",week:{dow:1,doy:4}})}(n("wd/R"))},UxlC:function(t,e,n){"use strict";var a=n("14Sl"),r=n("glrk"),i=n("ewvW"),s=n("UMSQ"),u=n("ppGB"),o=n("HYAF"),l=n("iqWW"),d=n("FMNM"),c=Math.max,f=Math.min,h=Math.floor,g=/\$([$&'`]|\d\d?|<[^>]*>)/g,p=/\$([$&'`]|\d\d?)/g;a("replace",2,(function(t,e,n,a){var b=a.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,m=a.REPLACE_KEEPS_$0,y=b?"$":"$0";return[function(n,a){var r=o(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,r,a):e.call(String(r),n,a)},function(t,a){if(!b&&m||"string"==typeof a&&-1===a.indexOf(y)){var i=n(e,t,this,a);if(i.done)return i.value}var o=r(t),h=String(this),g="function"==typeof a;g||(a=String(a));var p=o.global;if(p){var x=o.unicode;o.lastIndex=0}for(var _=[];;){var T=d(o,h);if(null===T)break;if(_.push(T),!p)break;""===String(T[0])&&(o.lastIndex=l(h,s(o.lastIndex),x))}for(var w,O="",S=0,I=0;I<_.length;I++){T=_[I];for(var N=String(T[0]),C=c(f(u(T.index),h.length),0),R=[],A=1;A<T.length;A++)R.push(void 0===(w=T[A])?w:String(w));var k=T.groups;if(g){var E=[N].concat(R,C,h);void 0!==k&&E.push(k);var L=String(a.apply(void 0,E))}else L=v(N,h,C,R,k,a);C>=S&&(O+=h.slice(S,C)+L,S=C+N.length)}return O+h.slice(S)}];function v(t,n,a,r,s,u){var o=a+t.length,l=r.length,d=p;return void 0!==s&&(s=i(s),d=g),e.call(u,d,(function(e,i){var u;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,a);case"'":return n.slice(o);case"<":u=s[i.slice(1,-1)];break;default:var d=+i;if(0===d)return e;if(d>l){var c=h(d/10);return 0===c?e:c<=l?void 0===r[c-1]?i.charAt(1):r[c-1]+i.charAt(1):e}u=r[d-1]}return void 0===u?"":u}))}}))},"V/fk":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},V2x9:function(t,e,n){!function(t){"use strict";t.defineLocale("tet",{months:"Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),weekdaysShort:"Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),weekdaysMin:"Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Ohin iha] LT",nextDay:"[Aban iha] LT",nextWeek:"dddd [iha] LT",lastDay:"[Horiseik iha] LT",lastWeek:"dddd [semana kotuk] [iha] LT",sameElse:"L"},relativeTime:{future:"iha %s",past:"%s liuba",s:"minutu balun",ss:"minutu %d",m:"minutu ida",mm:"minutu %d",h:"oras ida",hh:"oras %d",d:"loron ida",dd:"loron %d",M:"fulan ida",MM:"fulan %d",y:"tinan ida",yy:"tinan %d"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},V3my:function(t,e,n){"use strict";var a=n("s7LF"),r=n("LvDl"),i=n("cp0P"),s=(n("DSvg"),n("SgmB"),n("20UP"),n("Mxhz"),n("OLbh")),u=n("DNAf"),o=(n("sne2"),n("oxzT")),l=n("mtw6"),d=(n("2EZI"),n("1Ni5")),c=n("oMSZ"),f=(n("aexS"),n("9nlD"),n("1nQr"),function(t){return t.editing="editing",t}({}));class h{}n.d(e,"a",(function(){return g}));class g{constructor(t,e,n,a,r,i,s,l,d,c,h,g,p){this.authService=t,this.authStorageService=e,this.route=n,this.router=a,this.modalService=r,this.roleService=i,this.userService=s,this.notificationService=l,this.i18n=d,this.actionLabels=c,this.passwordPolicyService=h,this.formBuilder=g,this.settingsService=p,this.userFormMode=f,this.messages=new u.a({empty:this.i18n("There are no roles.")},this.i18n),this.passwordPolicyHelpText="",this.icons=o.a,this.bsConfig={dateInputFormat:"YYYY-MM-DD",containerClass:"theme-default"},this.resource=this.i18n("user"),this.createForm(),this.messages=new u.a({empty:this.i18n("There are no roles.")},this.i18n)}createForm(){this.passwordPolicyService.getHelpText().subscribe(t=>{this.passwordPolicyHelpText=t}),this.userForm=this.formBuilder.group({username:["",[a.B.required],[d.a.unique(this.userService.validateUserName,this.userService)]],name:[""],password:["",[],[d.a.passwordPolicy(this.userService,()=>this.userForm.getValue("username"),(t,e,n)=>{this.passwordStrengthLevelClass=this.passwordPolicyService.mapCreditsToCssClass(e),this.passwordValuation=r.defaultTo(n,"")})]],confirmpassword:[""],pwdExpirationDate:[""],email:["",[d.a.email]],roles:[[]],enabled:[!0,[a.B.required]],pwdUpdateRequired:[!0]},{validators:[d.a.match("password","confirmpassword")]})}ngOnInit(){this.router.url.startsWith("/user-management/users/edit")?(this.mode=this.userFormMode.editing,this.action=this.actionLabels.EDIT):this.action=this.actionLabels.CREATE,this.minDate=new Date;const t=[this.roleService.list(),this.settingsService.getStandardSettings()];Object(i.a)(t).subscribe(t=>{if(this.allRoles=r.map(t[0],t=>(t.enabled=!0,t)),this.pwdExpirationSettings=new c.a(t[1]),this.mode===this.userFormMode.editing)this.initEdit();else if(this.pwdExpirationSettings.pwdExpirationSpan>0){const t=this.userForm.get("pwdExpirationDate"),e=new Date;e.setDate(this.minDate.getDate()+this.pwdExpirationSettings.pwdExpirationSpan),t.setValue(e),t.setValidators([a.B.required])}})}initEdit(){this.disableForEdit(),this.route.params.subscribe(t=>{this.userService.get(t.username).subscribe(t=>{this.response=r.cloneDeep(t),this.setResponse(t)})})}disableForEdit(){this.userForm.get("username").disable()}setResponse(t){["username","name","email","roles","enabled","pwdUpdateRequired"].forEach(e=>this.userForm.get(e).setValue(t[e]));const e=t.pwdExpirationDate;e&&this.userForm.get("pwdExpirationDate").setValue(new Date(1e3*e))}getRequest(){const t=new h;["username","password","name","email","roles","enabled","pwdUpdateRequired"].forEach(e=>t[e]=this.userForm.get(e).value);const e=this.userForm.get("pwdExpirationDate").value;return e&&(this.mode===this.userFormMode.editing&&this.response.pwdExpirationDate===Number(e)/1e3||e.setHours(23,59,59),t.pwdExpirationDate=Number(e)/1e3),t}createAction(){const t=this.getRequest();this.userService.create(t).subscribe(()=>{this.notificationService.show(l.a.success,this.i18n('Created user "{{username}}"',{username:t.username})),this.router.navigate(["/user-management/users"])},()=>{this.userForm.setErrors({cdSubmitButton:!0})})}editAction(){if(this.isUserRemovingNeededRolePermissions()){const t={titleText:this.i18n("Update user"),buttonText:this.i18n("Continue"),bodyTpl:this.removeSelfUserReadUpdatePermissionTpl,onSubmit:()=>{this.modalRef.hide(),this.doEditAction()},onCancel:()=>{this.userForm.setErrors({cdSubmitButton:!0}),this.userForm.get("roles").reset(this.userForm.get("roles").value)}};this.modalRef=this.modalService.show(s.a,{initialState:t})}else this.doEditAction()}isCurrentUser(){return this.authStorageService.getUsername()===this.userForm.getValue("username")}isUserChangingRoles(){return this.isCurrentUser()&&this.response&&!r.isEqual(this.response.roles,this.userForm.getValue("roles"))}isUserRemovingNeededRolePermissions(){return this.isCurrentUser()&&!this.hasUserReadUpdatePermissions(this.userForm.getValue("roles"))}hasUserReadUpdatePermissions(t=[]){for(const e of this.allRoles)if(-1!==t.indexOf(e.name)&&e.scopes_permissions.user){const t=e.scopes_permissions.user;return["read","update"].every(e=>-1!==t.indexOf(e))}return!1}doEditAction(){const t=this.getRequest();this.userService.update(t).subscribe(()=>{this.isUserChangingRoles()?this.authService.logout(()=>{this.notificationService.show(l.a.info,this.i18n("You were automatically logged out because your roles have been changed."))}):(this.notificationService.show(l.a.success,this.i18n('Updated user "{{username}}"',{username:t.username})),this.router.navigate(["/user-management/users"]))},()=>{this.userForm.setErrors({cdSubmitButton:!0})})}clearExpirationDate(){this.userForm.get("pwdExpirationDate").setValue(void 0)}submit(){this.mode===this.userFormMode.editing?this.editAction():this.createAction()}}},V5SL:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="fr-FR">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Activer/Désactiver la navigation</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Tableau de bord</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Grappe</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Serveurs</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Moniteurs</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Services</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Configuration</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>Carte CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Modules Manager</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Journaux</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Réserves</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Bloc</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Images</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Mise en miroir</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Systèmes de fichiers</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemons</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Utilisateurs</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Compartiments</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Sélectionner une langue</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Chargement des données du panneau...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Sélecteur d\'heure Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Réinitialiser les paramètres</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Retour</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Échec du chargement des données.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>sélectionné(e)(s)</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>trouvé(e)(s)</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>total</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nom</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Description</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Description longue</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Valeur par défaut</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Valeur par défaut du daemon</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Valeurs</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Sauvegarder</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Visionneuse de carte CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Chargement...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nom d\'hôte</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Ce champs est requis.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Oui.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Annuler</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Fermer</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Liste d\'hôtes</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Performance globale</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Aucune entrée trouvée</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Journaux de grappes</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Journaux d\'audit</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Chargement de la configuration...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>La configuration n\'a pas pu être chargée.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Modifier le module Manager</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>La valeur entrée n\'est pas un UUID valide, par exemple : 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>La valeur entrée doit être une adresse IP valide.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>La valeur entrée doit être un nombre.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>La valeur entrée doit être un nombre ou une valeur décimale.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Mise à jour</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Statut</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID de grappe</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap modifié</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap epoch</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>required con</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>required mon</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>Dans le quorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Hors quorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Ajouter</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Fonctionnalités</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Drapeaux OSD à l\'échelle de la grappe</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Soumettre</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Avancé...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Priorité de récupération des OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorité</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Personnaliser les valeurs de priorité</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Ce champ est obligatoire !</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>La valeur doit être comprise entre 0 et 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Réévaluer</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Profondeur } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {profondeur } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Liste des OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Valeur</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Modifier</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Supprimer</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Santé</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistiques</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Clients</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Accès possible par tous les clients</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Adresses</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Champ obligatoire</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Doit contenir une ou plusieurs valeurs séparées par une virgule</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Par exemple :</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Type d\'accès</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Ajouter des clients</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Aucune grappe disponible --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Sélectionner la grappe --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Ajouter un daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Backend de stockage</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Aucune réserve de données disponible --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Sélectionner le backend de stockage --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Utilisateur Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Aucun utilisateur disponible --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Sélectionner l\'utilisateur Object Gateway --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID utilisateur CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Aucun client disponible --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Sélectionner le client cephx --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nom CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Libellé de sécurité</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Activer le libellé de sécurité</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Chemin CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Le chemin doit commencer par \'/\' et peut être suivi d\'un mot</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Un nouveau répertoire sera créé</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Chemin</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Le chemin peut être constitué d\'un seul \'/\' ou d\'un seul mot</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Un compartiment sera créé</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protocole NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Balise NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Les clients ne peuvent pas monter de sous-répertoires (si la balise = foo, le client ne peut pas monter foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>En utilisant différentes options de balise, il est possible d\'exporter plusieurs fois le même chemin.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>En utilisant différentes options de pseudo, il est possible d\'exporter exporter plusieurs fois le même chemin.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Aucun type d\'accès disponible --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Sélectionner le type d\'accès --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Aucun squash disponible --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Sélectionnez le type de squash d\'ID utilisateur qui est effectué --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protocole de transport</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Bienvenue dans Ceph !</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nom d\'utilisateur requis</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Mot de passe requis</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Connexion</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Désolé, l\'utilisateur n\'existe pas dans Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Interdit</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Désolé, vous n\'êtes pas autorisé à voir ce que vous cherchez.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Configuration RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Supprimez la valeur de configuration locale. La valeur de configuration parent sera héritée et utilisée à la place.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>La valeur minimale est 0.</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Liste des réserves</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Le nom doit être exclusivement composé de caractères alphanumériques, de tirets et de traits de soulignement.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Le nom de profil du code d\'effacement sélectionné est déjà utilisé.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plug-in</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Blocs de données (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Doit être égal ou supérieur à 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Blocs de codage (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Doit être égal ou supérieur à 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Estimateur de durabilité (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Localité (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Domaine de défaillance Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Localité Crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Aucun</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Technique</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Taille de paquet</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Racine Crush</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Classe de périphérique Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>tout</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Répertoire</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nom...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Le nom de réserve Ceph sélectionné est déjà utilisé.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Type de réserve</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Sélectionner un type de réserve --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Groupes de placements</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Au moins un groupe de placements est nécessaire.</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Votre grappe ne peut pas gérer autant de groupes de placements. Veuillez recalculer le nombre de groupes de placements nécessaires.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Aide au calcul</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Taille de réplication</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Drapeaux</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>Écrasements EC</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Applications</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Profil de code d\'effacement</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Aucun profil de code d\'effacement n\'est disponible --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Sélectionner un profil de code d\'effacement --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Jeu de règles Crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Sélectionner une règle crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Règle Crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Étapes Crush</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Compression</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Mode</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algorithme</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Aucun algorithme de compression d\'effacement n\'est disponible --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Taille de blob minimale</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>par ex. 128 Kio</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>La valeur doit être supérieure à 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Taille de blob maximale</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>par ex., 512 Kio</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>La valeur doit être supérieure à la taille de blob minimale.</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Rapport</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Rapport de compression</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>La valeur doit se situer entre 0.0 et 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>par exemple, 10 Gio</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Détails</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Détails des performances</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Détails des niveaux de mise en cache</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Déplacer une image vers la corbeille.</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>La protection expire le </target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NON PROTÉGÉ</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Format de date incorrect. Veuillez utiliser "AAAA-MM-JJ HH:mm:ss"</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>La protection a déjà expiré. Veuillez sélectionner une date ultérieure ou laisser le champ vide.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Déplacer une image</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Présentation</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Cibles</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Authentification de la découverte</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Utilisateur</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Les noms d\'utilisateur doivent comporter entre 8 et 64 caractères et\n                        ne peuvent contenir que des lettres et les caractères \'.\', \'@\', \'-\', \'_\' ou \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Mot de passe</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Utilisateur commun</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Mot de passe commun</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informations disponibles :</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>Cibles iSCSI non disponibles</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Réserve</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Réserve de données</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Créé</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Taille</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objets</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Taille de l\'objet</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Provisionné</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/A</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Provisionnement total</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unité de segmentation</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Nombre de segmentations</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Parent</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Préfixe du nom de bloc</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Tri</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Instantanés</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Image</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Ce paramètre remplace la valeur globale</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Il s\'agit de la valeur globale. Aucune valeur de cette option n\'a été définie pour cette image.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>Les caractères \'/\' et \'@\' ne sont pas autorisés.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Aucune réserve RBD disponible --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Sélectionner une réserve --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Utiliser une réserve de données dédiée</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Réserve de données</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Réserve dédiée qui stocke les données objet du RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Vous devez augmenter la taille.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Avancé</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Segmentation</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unité de segmentation</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Sélectionner une unité de segmentation --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Ce champ est obligatoire, car le nombre de segments est défini.</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>L\'unité de segmentation est supérieure à la taille de l\'objet.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Nombre de segments</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Ce champ est obligatoire, car l\'unité de segmentation est définie.</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Le nombre de segments doit être supérieur à 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Vous êtes sur le point de revenir à l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Vider la corbeille</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Tout</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Réserve :</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nom de la réserve...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Restaurer l\'image</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Pour restaurer</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>saisissez le nouveau nom de l\'image, puis cliquez sur</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nouveau nom</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Expiration le </target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Protection jusqu\'au</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologie iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Il n\'est généralement pas nécessaire de modifier ces paramètres par défaut.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Paramètres</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Confirmer</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Paramètres avancés</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN cible</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>Modèle IQN incorrect.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Par exemple : iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Plus d\'informations</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Des paramètres avancés de cette cible ont été modifiés.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portails</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Ajouter un portail</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Des paramètres avancés de cette image ont été modifiés.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Ajouter une image</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Authentification ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Initiateurs</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Initiateur</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN client</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>L\'IQN de l\'initiateur doit être unique.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Les noms d\'utilisateur doivent comporter entre 8 et 64 caractères et\n                        ne peuvent contenir que des lettres et les caractères \'.\', \'@\', \'-\', \'_\' ou \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>L\'initiateur appartient à un groupe dans lequel les images seront configurées.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Aucun élément ajouté.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Ajouter un initiateur</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Groupes</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Groupe</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Ajouter un groupe</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Corbeille</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Problèmes</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Synchronisation en cours</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Prêt</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Modifier le mode de mise en miroir de la réserve</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Les grappes d\'homologues doivent être supprimées avant de désactiver la mise en miroir.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Modifier} other {Ajouter} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nom de grappe</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Le nom de grappe n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>ID CephX</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>ID CephX</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>L\'ID CephX n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Adresses du moniteur</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Adresses séparées par une virgule...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>L\'adresse du moniteur n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Clef CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Clef Base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>La clef CephX doit être codée en base64.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Compteurs de performance non disponibles</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Liste de daemons</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Compteurs de performance</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Chargement des données de compartiment...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>La valeur n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Le nom sélectionné est déjà en cours d\'utilisation.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Propriétaire</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Sélectionner un utilisateur --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Activé</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Type d\'index</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Règle de placement</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Marqueur</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Marqueur maximum</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Version</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Version principale</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Date de modification</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Groupe de zones</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Quota de compartiments</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Taille maximale</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Illimité</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Nombre maximal d\'objets</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nom d\'utilisateur</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Sélectionner un nom d\'utilisateur --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Générer automatiquement la clef</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Clef d\'accès</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Clef secrète</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nom complet</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Adresse électronique</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Suspendu</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Système</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Nombre maximal de compartiments</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Utilisateurs secondaires</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Fonctionnalités</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Quota utilisateur</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Afficher</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Clefs</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Type</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Sélectionner un type --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Autorisation</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Sélectionner une autorisation --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Utilisateur secondaire</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>L\'ID d\'utilisateur secondaire sélectionné est déjà utilisé.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>lire, écrire</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>complet</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Clé Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Générer automatiquement le secret</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Chargement des donnés utilisateur…</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Les donnés utilisateur n\'ont pas pu être chargées.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>L\'ID utilisateur spécifié est déjà utilisé.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Ceci n\'est pas une adresse électronique valide.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>L\'adresse électronique spécifiée est déjà utilisée.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Nombre max. de compartiments</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Désactivé</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Personnalisé</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Clef S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Il n\'y a aucun utilisateur secondaire.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Il n\'y a pas de clefs.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Il n\'y a aucune fonctionnalité.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Taille illimitée</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Taille max.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Objets illimités</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Nombre max. d\'objets</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>La valeur saisie doit être &gt;= 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Description...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Autorisations</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Rôles</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Confirmer le mot de passe</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Le mot de passe de confirmation ne correspond pas au mot de passe.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>Adresse électronique</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>L\'adresse électronique n\'est pas valide.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Vous êtes sur le point de supprimer les autorisations "lecture/mise à jour utilisateur" de votre propre utilisateur.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Si vous continuez, vous ne serez plus en mesure d\'ajouter ni de supprimer des rôles pour n\'importe quel utilisateur.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Voulez-vous vraiment continuer ?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Aide</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Documentation</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>À propos de</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Paramètres du tableau de bord</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Gestion des utilisateurs</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Utilisateur connecté</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Se déconnecter</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Attributs (carte OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Métadonnées non disponibles</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Métadonnées</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Compteur de performance</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Écritures</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Lectures</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogramme</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Valeurs actuelles</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Minimum</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Maximum</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Source</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Niveau</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Mise à jour possible lors de l\'exécution (modifiable)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Balises</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Valeurs d\'énuménation</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Voir aussi</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Statut de la grappe</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Daemons du gestionnaire</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Passerelles d\'objet</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Serveurs de métadonnées</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Passerelles iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS client</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Débit client</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Lectures/Écritures client</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Débit de récupération</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Nettoyer</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Performance</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Capacité brute</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Groupes de placements par OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Statut du groupe de placements</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Capacité</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Rangs</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Actuel</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Authentification de la découverte mise à jour</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Il n\'y a aucun portail disponible.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Il n\'y a aucune image disponible.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Il n\'y a aucune image disponible. Veillez à ajouter une image à la cible.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Il n\'y a aucun initiateur disponible. Veillez à ajouter un initiateur à la cible.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Cible</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>État</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Octets de lecture</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Octets d\'écriture</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Opérations de lecture</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Opérations d\'écriture</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O depuis</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instance</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problème</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Avancement</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Mode d\'édition</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Ajouter un homologue</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Modifier un homologue</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Supprimer un homologue</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Leader</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>nb en local</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>nb à distance</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>mettre en miroir l\'homologue</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Clef</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Aplatissement en profondeur</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Superposition</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Verrou exclusif</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Assignation d\'objet (nécessite exclusive-lock)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Journalisation (nécessite exclusive-lock)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NON PROTÉGÉ</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Retour à l\'état initial de l\'instantané RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Revenir à l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Intantané RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Supprimé le</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>type</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>état</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>version</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Hôte</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>racine</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemons en veille</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Rang</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Activité</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inodes</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Utilisation</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Mis à jour</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>La valeur peut être mise à jour au moment de l\'exécution.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Les daemons/clients ne tirent pas cette valeur de\n  la base de données de configuration de Monitor. Nous n\'autorisons pas le réglage de cette option via \'ceph config\n  set ...\'. Cette option doit être configurée via ceph.conf ou via\n  la ligne de commande.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>L\'option ne prend effet qu\'au démarrage du daemon.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>L\'option n\'affecte que la création des grappes.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>L\'option n\'affecte que la création des daemons.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Service</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Valeur actuelle</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Modifiable</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Activer</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Désactiver</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Reconnexion en cours… Veuillez patienter.</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Adresse publique</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Sessions ouvertes</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Pas rentrés</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>Les OSD qui ont été marqués comme sortis ne seront pas marqués comme rentrés à leur démarrage.</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Pas sortis</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>Les OSD ne seront pas marqués automatiquement comme sortis après l\'intervalle configuré.</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Pas démarrés</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>Les OSD ne sont pas autorisés à démarrer.</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Pas arrêtés</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Les rapports de défaillance des OSD sont ignorés, de sorte que les moniteurs ne marquent pas les OSD comme étant arrêtés.</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pause</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Met en pause les lectures et écritures</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Pas de nettoyage</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Nettoyage désactivé</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Pas de nettoyage en profondeur</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Le nettoyage en profondeur est désactivé</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Pas de renvoi</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Le renvoi des groupes de placements est suspendu</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Pas de récupération</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>La récupération des groupes de placements est suspendue</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Tri au niveau du bit</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Utiliser le tri au niveau du bit</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Variables snapdir purgées</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>Les OSD ont converti les variables snapset</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Suppressions des récupérations</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Suppressions effectuées pendant la restauration et non l\'homologation</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Limite stricte de journalisation des groupes de placements</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Impose une limite stricte à la longueur du journal des groupes de placements</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Drapeaux OSD mis à jour</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>sorti</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>rentré</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>arrêté</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Marquer</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD perdu</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>marqué comme perdu</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Purger</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>purgé</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>détruire</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>détruit</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>supprimer</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>Groupes de placements</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Octets de lecture</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Octets d\'écriture</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Opérations de lecture</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Opérations d\'écriture</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Nbre max. de renvois</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Nombre maximum de récupérations actives</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Nombre maximum de démarrages uniques de récupérations</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Mise en veille de la récupération</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Travail</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Gravité</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Démarré</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Utilisé</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Dispo.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Nettoyé</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>En cours</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Avertissement</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Inconnu</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>opérationnel</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>aucun système de fichiers</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>actif</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>veille</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/a</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon actif</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Le service NFS Ganesha n\'est pas configuré.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Utilisateur CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Système de fichiers CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(hérité de la configuration globale)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>hérité de la configuration globale</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Sélectionner le type de squashing d\'ID utilisateur effectué --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Aucun daemon n\'est disponible.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Mode cache</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Âge évict min.</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Âge vidage min.</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Nombre max d\'octets cibles</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Nombre max. d\'objets cibles</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Aucune application ajoutée</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Limite d\'applications atteinte</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Une réserve peut avoir quatre définitions d\'application maximum.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Caractère autorisés \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>La longueur maximale est de 128 caractères.</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtrer ou ajouter des applications</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Ajouter une application</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>profil de code d\'effacement</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Taille de la réplique</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Dernier changement</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Profil de code d\'effacement</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Jeu de règles Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>compartiment</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>compartiments</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>utilisateur</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>utilisateurs</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Périmètre</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Lecture</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Créer</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Rôle système</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Mettre à jour l\'utilisateur</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Continuer</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Vous avez été automatiquement déconnecté, car vos rôles ont changé.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Chaque objet est divisé en parties de blocs de données, chacune étant stockée sur un OSD différent.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Calculez des blocs de codage pour chaque objet et stockez-les sur différents OSD.\n Le nombre de blocs de codage correspond également au nombre d\'OSD qui peuvent être arrêtés sans perdre de données.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Le plugin jerasure est le plugin le plus générique et le plus flexible,\n  c\'est aussi la valeur par défaut des réserves codées à effacement Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>La technique la plus flexible est reed_sol_van_van : il suffit de définir k\n et m. La technique cauchy_good peut être plus rapide, mais vous devez choisir la taille du paquet\n avec précaution. reed_sol_r6_op, liberation, blaum_roth et liber8tion sont des équivalents RAID6\n en ce sens qu\'ils ne peuvent être configurés qu\'avec m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>L\'encodage se fera sur des paquets de taille d\'octets.\n  Choisir la bonne taille de paquet est difficile.\n  La documentation de jerasure contient de nombreuses informations à ce sujet.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Avec le plugin jerasure, lorsqu\'un objet codé à effacement est stocké sur\n plusieurs OSD, la récupération à la suite de la perte d\'un OSD nécessite la lecture de tous les autres.\n Par exemple, si jerasure est configuré avec k=8 et m=4, la perte d\'un OSD nécessite de lire\n les onze autres pour pouvoir effectuer une réparation.\n\n Le plugin de code d\'effacement lrc crée des blocs de parité locale pour permettre la récupération avec\n moins d\'OSD. Par exemple, si lrc est configuré avec k=8, m=4 et l=4,\n un bloc de parité supplémentaire est créé pour chaque groupe de quatre OSD. Lorsqu\'un seul OSD est perdu, il peut être\n récupéré avec seulement quatre OSD au lieu de onze.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Regroupez les blocs de données et de codage en ensembles de localité de taille. Par exemple,\n pour k=4 et m=2, lorsque locality=3, deux groupes de trois sont créés. Chaque ensemble peut\n être récupéré sans lire les blocs d\'un autre jeu.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Type de compartiment Crush dans lequel chaque ensemble de blocs défini\n par I sera stocké. Par exemple, s\'il est réglé sur rack, chaque groupe de blocs I sera\n placé dans un rack différent. Il est utilisé pour créer une étape de la règle CRUSH telle que l\'étape de choix\n d\'un rack. S\'il n\'est pas défini, aucun regroupement de ce type n\'est effectué.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Le plug-in isa encapsule la bibliothèque ISA. Il ne fonctionne qu\'avec des processeurs Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Le plugin ISA se présente sous deux formes Reed Solomon.\n Si reed_sol_van est défini, il équivaut à Vandermonde. Si cauchy est configuré, il équivaut à Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Le plug-in shec encapsule la bibliothèque SHEC multiple.\n Il permet à Ceph de récupérer les données plus efficacement qu\'avec les codes Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Nombre de blocs de parité, chacun incluant chaque bloc de données dans sa\n plage de calcul. Ce nombre est utilisé comme estimateur de durabilité. Par exemple, si c=2,\n 2 OSD peuvent être arrêtés sans perte de données.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Nom du compartiment crush utilisé pour la première étape de la règle CRUSH.\n Par exemple, l\'étape de définition des valeurs par défaut.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Vérifiez qu\'il n\'existe pas deux blocs dans un compartiment avec le même domaine de\n défaillance. Par exemple, si le domaine de défaillance est un hôte, deux blocs ne seront pas stockés sur le même\n hôte. Cette option est utilisée pour créer une étape de la règle CRUSH telle que chooseleaf host.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Restreindre le placement aux périphériques d\'une classe spécifique\n (par exemple, ssd ou hdd), en utilisant les noms des classes de périphériques crush dans la carte CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Définissez le nom du répertoire à partir duquel le plug-in de code d\'effacement est chargé.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Autoriser toutes les opérations</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Autorise uniquement les opérations qui ne modifient pas le serveur</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>N\'autorise pas les opérations de lecture ou d\'écriture, mais toutes les autres.</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>N\'autorise pas la lecture, l\'écriture ni aucune autre opération modifiant les attributs d\'un fichier ou le contenu d\'un répertoire.</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>N\'autorise aucun accès</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Sélectionner la priorité --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Faible</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Élevée</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informations</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Les 5 dernières minutes</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Les 15 dernières minutes</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Les 30 dernières minutes</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>La dernière heure (par défaut)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Les 3 dernières heures</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Les 6 dernières heures</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Les 12 dernières heures</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Les 24 dernières heures</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Hier</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Aujourd\'hui</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Depuis le début de la journée</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Avant-hier</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Les 2 derniers jours</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Il y a huit jours</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>La semaine dernière</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Cette semaine</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Depuis le début de la semaine</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Les 7 derniers jours</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Le mois dernier</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Ce mois</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Depuis le début du mois</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Les 30 derniers jours</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Les 90 derniers jours</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Les 6 derniers mois</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>L\'année écoulée</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>L\'année dernière</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Cette année</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Depuis le début de l\'année</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Les 2 dernières années</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Les 5 dernières années</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Aucun élément sélectionné.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Désélectionnez l\'élément pour le sélectionner à nouveau.</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Limite de sélection atteinte</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Balises de filtre</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Ajouter un badge</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Aucun élément disponible.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Cloner</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Copier</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Nettoyage en profondeur</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Détruire</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Aplatir</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Marquer comme arrêté</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Marquer comme rentré</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Marquer comme perdu</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Marquer comme sorti</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Protéger</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Renommer</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Restaurer</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Déplacer vers la corbeille</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Annuler la protection</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Supprimé</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Cloné</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Copié</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Applati</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Purgé</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Restauré</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Rétabli à l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Oui</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Non</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Qualité de service</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limite de bits/s</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Limite souhaitée d\'octets E/S par seconde.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limite E/S par seconde</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Limite souhaitée d\'opérations E/S par seconde.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limite de bits/s en lecture</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Limite souhaitée de lecture d\'octets par seconde.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limite E/S par seconde en lecture</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Limite souhaitée d\'opérations de lecture par seconde.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limite de bits/s en écriture</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Limite souhaitée d\'écriture d\'octets par seconde.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limite E/S par seconde en écriture</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Limite souhaitée d\'opérations d\'écriture par seconde.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Rafale de bits/s</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Limite de rafale d\'octets en E/S souhaitée.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Rafale E/S par seconde</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Limite de rafale d\'opérations E/S souhaitée.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Rafale E/S par seconde en lecture</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Limite de rafale d\'octets lus par seconde.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Rafale E/S par seconde en lecture</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Limite de rafale d\'opérations de lecture</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Rafale E/S par seconde en écriture</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Limite de rafale de lectures d\'octets souhaitée.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Rafale d\'E/S par seconde en écriture</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Limite de rafale d\'opérations d\'écriture souhaitée.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>En cours d\'exécution</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>exécuter</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Exécuté</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>tâche inconnue</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>En cours de création</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>créer</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>En cours de mise à jour</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>mettre à jour</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>En cours de suppression</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Clonage en cours</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>cloner</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>En cours de copie</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>copie</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Aplatissement</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>aplatir</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Retour à l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>rétablir l\'état initial</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>En cours de déplacement</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>déplacer</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Déplacé</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Impossible de trouver l\'image.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>En cours de restauration.</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>restaurer</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>En cours de purge</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>purger</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>toutes les réserves</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Impossible de désactiver la mise en miroir, car l\'élément contient un homologue.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},VLqJ:function(t,e,n){var a=n("0GLT"),r=n("QpVZ"),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s=/^\w*$/;t.exports=function(t,e){if(a(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!r(t))||s.test(t)||!i.test(t)||null!=e&&t in Object(e)}},VRyK:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("HDdC"),r=n("z+Ro"),i=n("bHdf"),s=n("yCtX");function u(...t){let e=Number.POSITIVE_INFINITY,n=null,u=t[t.length-1];return Object(r.a)(u)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof u&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof a.a?t[0]:Object(i.a)(e)(Object(s.a)(t,n))}},VTlA:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("mSOc"),n("ufoC");class a{constructor(t,e){this.taskMessageService=t,this.summaryService=e}init(t,e,n,a,r,i,s){this.getUpdate=t,this.preProcessing=e,this.setList=n,this.onFetchError=a,this.taskFilter=r,this.itemFilter=i,this.builders=s||{},this.summaryDataSubscription=this.summaryService.subscribe(t=>{this.getUpdate().subscribe(e=>{this.updateData(e,t.executing_tasks.filter(this.taskFilter))},this.onFetchError)},this.onFetchError)}updateData(t,e){const n=this.preProcessing?this.preProcessing(t):t;this.addMissing(n,e),n.forEach(t=>{const n=e.filter(e=>this.itemFilter(t,e));t.cdExecuting=this.getTaskAction(n)}),this.setList(n)}addMissing(t,e){const n=this.builders.default;e.forEach(e=>{const a=t.find(t=>this.itemFilter(t,e)),r=this.builders[e.name];a||!r&&!n||t.push(r?r(e.metadata):n(e.metadata))})}getTaskAction(t){if(0!==t.length)return t.map(t=>{const e=t.progress?` ${t.progress}%`:"";return this.taskMessageService.getRunningText(t)+"..."+e}).join(", ")}ngOnDestroy(){this.summaryDataSubscription&&this.summaryDataSubscription.unsubscribe()}}},VXsX:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("LvDl"),r=n("8Y7J");class i{constructor(t,e,n){this.name=t,this.metadata=e,this.onTaskFinished=n}}let s=(()=>{class t{constructor(){this.subscriptions=[]}init(t){return t.subscribe(t=>{const e=t.executing_tasks,n=t.finished_tasks,a=[];for(const r of this.subscriptions){const t=this._getTask(r,n),i=this._getTask(r,e);null!==t&&null===i&&r.onTaskFinished(t),null!==i&&a.push(r),this.subscriptions=a}})}subscribe(t,e,n){this.subscriptions.push(new i(t,e,n))}_getTask(t,e){for(const n of e)if(n.name===t.name&&a.isEqual(n.metadata,t.metadata))return n;return null}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})()},Vclq:function(t,e,n){!function(t){"use strict";var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;t.defineLocale("es-us",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:0,doy:6}})}(n("wd/R"))},Vhfg:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("lJxs"),r=n("ej+x"),i=n("8Y7J"),s=n("iInd");let u=(()=>{class t{constructor(t,e){this.router=t,this.featureToggles=e}canActivate(t){return this.featureToggles.get().pipe(Object(a.a)(e=>!1!==e[t.routeConfig.path]||(this.router.navigate(["404"]),!1)))}canActivateChild(t){return this.canActivate(t.parent)}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](s.m),i["ɵɵinject"](r.a))},token:t,providedIn:"root"}),t})()},ViD7:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="cs">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Zobraz./skrýt navigaci</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Přehled</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Klastr</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Stroje</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitory</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Služby</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Nastavení</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSH mapa</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Moduly správy</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Záznamy událostí</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Fondy</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Blok</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Obrazy</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Zrcadlení</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Souborové systémy</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Objektová brána</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Procesy služeb</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Uživatelé</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Nádoby</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Získávají se data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> pro\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Čekejte…\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Zobrazují se data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>z mezipaměti\n  pro \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Nedaří se načíst dat \n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> pro\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Zkontrolujte zdraví klastru.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Vyčistit oznámení</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Odebrat oznámení</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Trvání:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>Nejsou zde žádná oznámení.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Úlohy a oznámení</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Vyberte jazyk</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Načítání údajů panelu…</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Nahlédněte do\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>, kde naleznete jak\n  nastavit a zapnout funkci monitorování.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana přehled neexistuje. Podívejte se do\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> jak\n  přidat přehledy do Grafany.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Volič čas Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Resetovat nastavení</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Načíst znovu</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Odebrat uživatelsky určenou hodnotu nastavení. Namísto toho bude převzato a použito výchozí nastavení.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš vysoká! Nemůže být vyšší než \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš nízká! Nemůže být nižší než 1.</target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Zpět</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Data se nepodařilo načíst</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>vybráno</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>nalezeno</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>celkem</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Název</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Popis</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Podrobnější popis</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Výchozí</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Výchozí pro proces služby</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Hodnoty</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš vysoká! Nemůže být vyšší než \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš nízká! Nemůže být nižší než \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Uložit</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>prohlížeč CRUSH mapy</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Načítání…</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Název stroje</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Tuto kolonku je třeba vyplnit.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>Zvolený název stroje už je používán.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Opravdu chcete \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Opravdu chcete označené položky \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> ?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Opravdu chcete \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> označené \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Ano, opravdu to chci.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Storno</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Zavřít</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Seznam strojů</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Celková výkonnost</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Zařízení</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Nenalezeny žádné položky</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Záznamy událostí v klastra</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Auditní záznamy událostí</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priorita:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Klíčové slovo:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Datum:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Volba data</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Časový rozsah:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Načítání nastavení…</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Toto nastavení se nepodařilo načíst.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Upravit modul správy</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Zadaná hodnota není platné UUID, např.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Je třeba, aby zadaná hodnota byla platnou IP adresou.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš vysoká! Je třeba, aby byla nižší nebo rovná \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš nízká! Je třeba, aby byla vyšší než nebo rovná \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Je třeba, aby zadaná hodnota byla číslo.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Je třeba, aby zadaná hodnota byla číslo nebo desítkové.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Aktualizovat</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Stav</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>Identif. kastru</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>mapa monitorů změněna</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap epocha</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>kvórum spojení</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>kvórum monitor</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>vyžadováno spojení</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>vyžadováno monitorů</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>V kvóru</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Není v kvóru</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Přidat</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Funkce</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Příznaky OSD pro celý klastr</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Odeslat</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Pokročilé…</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Pokročilé volby nastavení</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Priorita obnovení OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Priorita</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Přizpůsobit hodnoty priority</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Tuto kolonku je třeba vyplnit!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš vysoká, je třeba, aby nebyla vyšší než \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>Zadaná hodnota je příliš nízká! Je třeba, aby byla nižší než \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Je třeba, aby hodnota byla mezi 0 a 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Znovu vyvážit</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSD \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>kontrola\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, vybrat, 1 {Deep } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, vybrat, 1 {deep } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Seznam OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Ticha</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Vyberte atribut vůči kterému hledat shodu --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Hodnota</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Použít regulární výraz</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Upravit</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Smazat</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Úprava ticha skončí platnost původního ticha a znovu ho vytvoří jako nové ticho</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Tvůrce</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Komentář</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Čas začátku</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>Pokud čas začátku leží v minulosti, bude namísto něj použit okamžik vytvoření</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Trvání</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>Čas konce</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Zdraví</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistiky</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Ohledně nastavení a zapnutí funkce správy NFS Ganesha nahlédněte do \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Klienti</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Přistupovat může libovolný klient</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Adresy</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Vyžadovaná kolonka</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Je třeba, aby obsahovalo jednu nebo více čárkou oddělovaných hodnot</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Například:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Typ přístupu</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Přidat klienty</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Žádný klastr k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Vyberte klastr --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Přidat proces služby</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Podpůrná vrstva úložiště</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Žádné fondy k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Vyberte podpůrnou vrstvu úložiště --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Uživatel objektové brány</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Žádní uživatelé k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Vyberte uživatele brány objektů --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>Identif. uživatele CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Žádní klienti k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Vyberte cephx klienta --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Název CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- Žádný souborový systém CephFS k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Vyberte CephFS souborový systém --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Štítek zabezpečení</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Zapnout štítek zabezpečení</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Popis umístění CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Je třeba, aby popis umístění začínal na „/“, za kterým následuje slovo</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Bude vytvořena nová složka</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Popis umístění</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Popis umístění může být pouze jediné „/“ nebo slovo</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Bude vytvořena nová nádoba</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFS protokol</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFS štítek</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternativní přístup pro \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> připojení (nemůže začínat na /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Klienti nemohou připojovat podsložky (tj. pokud Tag = neco, klient nemůže připojit neco/podslozka).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Použitím různých voleb Štítku, může to stejné umístění být exportováno vícekrát.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>Pozice kterou tento \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export zabírá\n                v \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (je třeba, aby se neopakovalo).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>By using different Pseudo options, the same Path may be exported multiple times.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Je třeba, aby Pseudo začínalo na „/“ a a nemůže obsahovat nic z následujícího: &gt;, &lt;, |, &amp;, ( nebo ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Žádný typ přístupu k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Vyberte typ přístupu --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Žádné squash k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Vyberte jaký druh squashování identifikátor uživatele je prováděn --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Transportní protokol</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Původní heslo</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>Je třeba, aby původní a nové heslo nebyly stejné</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>Nové heslo</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Zopakování zadání nového hesla</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Kontrolní zadání nového hesla se neshoduje.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Vítejte v Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Je třeba vyplnit uživatelské jméno</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Je třeba vyplnit heslo</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Přihlásit</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Je nám líto, uživatel v Ceph neexistuje.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Vrátit se na \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Přihlašovací stránku\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. Budete odhlášeni od poskytovatele identity když se pokusíte znovu přihlásit.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Odepřeno</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Omlouváme se, ale nemáte oprávnění zobrazit to, po čem se  poohlížíte.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>Data obdržena v JSON formátu verze 2.x, což je v tuto chvíli nekompatibilní s přehledem.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>výsledek SMART testu samoposouzení celkového stavu</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Informace o zařízení</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Nastavení RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Odebrat hodnotu místnímu nastavení. Namísto ní bude použita hodnota nadřazeného nastavení.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Minimální hodnota je 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Seznam fondů</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Název může být tvořen pouze písmeny a číslicemi, dále ještě spojovníky a podtržítky.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Zvolený název pro profil mazacího kódu je už používán.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Zásuvný modul</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Shluky dat (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Je třeba, aby bylo 2 a více.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Shluky kódování (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Je třeba, aby bylo 1 a více.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Odhadování odolnosti (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Umístění (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Doména selhání crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Lokalita crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Žádné</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Technika</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Velikostpaketu</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Kořen crush</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Třída crush zařízení</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>libovolné</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Složka</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Název…</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Zvolený název pro Ceph fond je už používán.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>Není možné vytvořit RBD fond s názvem „/“ v názvu.\n              Změňte název nebo \'rbd\' odeberte ze seznamu aplikací.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Typ fondul</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Vybrat typ fondu --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Skupiny umístění</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Je třeba alespoň jedné skupiny umístění!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Váš klastr nemůže obsloužit tolik skupin umístění. Přepočítejte potřebné množství skupin umístění.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Nápověda k výpočtu</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Replikovaná velikost</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Nejméně: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Nejvíce: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>Zadaná velikost je mimo rozsah. Platná hodnota je\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> až \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> .\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Příznaky</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC přebití</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Aplikace</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Profil mazacího kódu</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Žádný profil mazacího kódu --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Vyberte profil mazacího kódu --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Sada pravidel crush</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Vybrat crush pravidlo --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Crush pravidlo</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Crush kroky</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Komprese</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Režim</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritmus</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Žádný algoritmus komprese mazání --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Minimální velikost blobu</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>např. 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Hodnota by měla být vyšší než nula</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Hodnota by měla být nižší než maximální velikost blobu</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Nejvyšší velikost blobu</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>např. 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Hodnota by měla být vyšší než nejnižší velikost blobu</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Poměr</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Kompresní poměr</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Hodnota by měla být z rozmezí 0.0 až 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Kvóty</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Nejvýše bajtů</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Pro vypnutí této kvóty nevyplňujte nebo zadejte 0 (nulu).</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>Platná kvóta by měla být vyšší než 0 (nula).</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>např. 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Nejvýše objektů</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>Hodnota by měla být vyšší nebo rovna 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Podrobnosti</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Podrobnosti o výkonnosti</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Podrobnosti o stupních mezipaměti</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Přesunout obraz do koše</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Platnost ochrany skončí v</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>NECHRÁNĚNO</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Chybný formát data. Použijte „RRRR-MM-DD HH:mm:ss“.</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>Platnost ochrany už skončila. Zvolte budoucí datum nebo nevyplňujte.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Přesunout obraz</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Brány</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Je třeba, aby bylo vyšší nebo rovno \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Je třeba, aby bylo nižší nebo rovno \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Přehled</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Cíle</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Ověřování pro objevování</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Uživatele</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Je třeba, aby uživatelská jména byla 8 až 64 znaků dlouhá a\n              mohu obsahovat pouze písmena a znaky „.“, „@“, „-“, „_“ a „:“.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Heslo</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby hesla byla 12 až 16 znaků dlouhá\n              a mohou obsahovat pouze písmena, „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Uživatel pro vzájemné ověření</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Heslo pro vzájemné ověření</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby heslo byla 12 až 16 znaků dlouhá a\n              mohou obsahovat pouze písmena, „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Podívejte se do \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  jak nastavit a zapnout funkci správy iSCSI cílů.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informace k dispozici:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>iSCSI cíl není k dispozici</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Ověřování pro objevování</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>K dispozici pouze pro RBD obrazy se zapnutým \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Fond</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Datový fond</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Vytvořeno</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Velikost</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objekty</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Velikost objektu</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Poskytováno</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>neaplikovatelné</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Celkem poskytováno</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Proužkovací jednotka</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Počet proužkování</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Nadřazené</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Předpona názvu bloku</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Pořadí</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Zachycené stavy</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Obraz</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Toto nastavení přebije globální hodnotu</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Globální</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Toto je globální hodnota. Pro tento obraz nebyla u této volby nastavena žádná hodnota.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> od\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>„/“ a „@“ nejsou dovoleny.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Žádné rbd fondy k dispozici --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Vybrat fond --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Použít vyhrazený datový fond</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Datový fond</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Vyhrazený fond který uchovává objektová data RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Je třeba zvětšit.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Pokročilé</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Proužkování</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Jednotka proužku</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Vybrat jednotku proužku --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Tuto kolonku je třeba vyplnit, protože je definován počet proužků!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>Jednotka proužku je vyšší než velikost objektu.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Počet proužků</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Tuto kolonku je třeba vyplnit, protože je definována jednotka proužku!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Je třeba, aby počet proužků byl větší než nula.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Chystáte se vrátit zpět</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Vysypat koš</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Vše</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Fond:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Název fondu…</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Obnovit obraz</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Pro obnovení</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>zadejte nový název pro obraz a klikněte na</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nový název</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Platnost skončila v</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Chráněno do</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>Tento obraz je chráněn do\n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologie iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Měnit tyto parametry z jejich výchozích hodnot obvykle není potřeba.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Nastavení</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Potvrdit</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Pokročilá nastavení</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN cíle</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQN nemá správný formát.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>IQN má následující formu zápisu\n                \'iqn.$rok-$mesic.$adresaObracene:$definovanyNazev\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Například: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Další informace</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Tento cíl má změněná pokročilá nastavení.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portály</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Přidat portál</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>Je třeba alespoň \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> bran.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Tento obraz má změněná nastavení.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Přidat obraz</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL ověřování</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Je třeba, aby uživatelská jména měla délku 8 až 64 znaků a\n                obsahovala pouze písmena a případně ještě znaky „.“, „@“, „-“, „_“ nebo „:“.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby hesla měla délku 12 až 16 znaků\n                a obsahovala písmena a znaky „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Iniciátory</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Iniciátor</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN klienta</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>Je třeba, aby se IQN iniciátoru neopakovalo.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Je třeba, aby uživatelská jména měla délku 8 až 64 znaků a\n                        mohou obsahovat pouze písmena a znaky „.“, „@“, „-“, „_“ nebo „:“.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby hesla měla délku 12 až 16 znaků\n                        a mohou obsahovat pouze písmena, „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Je třeba, aby hesla měla délku 12 znaků 16 a\n                        mohou obsahovat pouze písmena, „@“, „-“, „_“ nebo „/“.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>Iniciátor spadá do skupiny. Obrazy budou nastaveny ve skupině.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Nepřidány žádné položky.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Přidat iniciátor</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Skupiny</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Skupina</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Přidat skupinu</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Koš</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>problémy</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Synchronizuje se</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Připraveno</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Upravit režim zrcadlení fondu</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Pro úpravu režimu zrcadlení pro fond \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, vyberte ze seznamu nový režim a klikněte na \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Aktualizovat\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Před vypnutím zrcadlení je třeba odebrat klastry-protějšky.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  protějšek zrcadlení fondu\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Název klastru</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Název klastru není platný</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX identif.</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX identif. …</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX identif. není platný.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Adresy monitorů</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Čárkou oddělované adresy…</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Adresa monitoru není platná.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX klíč</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Klíč v base64 kódování…</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>Je třeba, aby CephX klíč byl v kódování base64.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Výkonnostní čítače nejsou k dispozici</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Podívejte se do \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>dokumentace\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  jak nastavit a zapnout funkci správy brány objektů.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Seznam procesů služeb</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Výkonnostní čítače</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Načítání dat nádoby…</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>Identif.</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Hodnota není platná.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Zvolený název už je používán.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Vlastník</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Vybrat uživatele --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Cíl umístění</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Vybrat cíl umístění --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Verzování</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Zapnuto</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>Identif.</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Typ rejstříku</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Pravidlo umístění</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Označovač</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Nejvyšší označovač</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Verze</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Hlavní verze</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Okamžik úpravy</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Skupinazóny</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Kvóta nádoby</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Nejvyšší velikost</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Neomezeno</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Nejvýše objektů</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Uživatelské jméno</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Vybrat uživatelské jméno --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Automaticky vytvořit klíč</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Přístupový klíč</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Tajný klíč</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Celé jméno</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>E-mailová adresa</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Pozastaveno</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Systém</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Nejvýše nádob</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Dílčí uživatelé</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Schopnosti</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Kvóta uživatele</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Zobrazit</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Klíče</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Typ</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Vybrat typ --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Oprávnění</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Vybrat oprávnění --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Dílčí uživatel</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>Zvolený identifikátor dílčího uživatele už je používán.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>číst, zapisovat</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>plné</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Swift klíč</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Automaticky vytvořit tajemství</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Načítání údajů uživatele…</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Údaje uživatele se nepodařilo načíst.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>Zvolený identif. uživatele už je používán.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Toto není platná e-mailová adresa.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>Zvolená e-mailová adresa už je používána.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Nejvýše nádob</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Vypnuto</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Uživatelsky určené</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3 klíč</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Nejsou zde žádní dílčí uživatelé.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Nejsou zde žádné klíče.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Nejsou zde žádné schopnosti.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Neomezená velikost</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Nejvyšší velikost</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Neomezené objekty</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Nejvýše objektů</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Je třeba, aby zadaná hodnota byla 0 a vyšší.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Popis…</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Oprávnění</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Role</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Potvrzení zadání hesla</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Zadání hesla se neshodují.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>E-mail</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Neplatný e-mail.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Chystáte se odebrat oprávnění „uživatel číst/aktualizovat“ svému vlastnímu účtu.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Pokud budete pokračovat, nebudete nadále schopní přidávat nebo nebo odebírat role žádnému z uživatelů.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Opravdu chcete pokračovat?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Nápověda</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Dokumentace</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>Aplikační program. rozhraní</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>O aplikaci</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Nastavení přehledu</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Správa uživatelů</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Přihlášený uživatel</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Přihlášeni jako\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Změnit heslo</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Odhlásit</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atributy (OSD mapa)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadata nejsou k dispozici</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadata</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Stav zařízení</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Výkonnostní čítač</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram není k dispozici: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Zápisy</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Čtení</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogram</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Stávající hodnoty</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Max</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Zdroj</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Úroveň</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Je možné aktualizovat za provozu (upravitelné)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Štítky</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Vyčíslit hodnoty</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Viz také</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Stav klastru</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Procesy služby správy</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Objektové brány</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Metadata servery</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSI brány</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>vst/výst. klienta</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Propustnost klienta</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Čtení/zápis klienta</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Propustnost zotavení</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Kontrola</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Výkonnost</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Holá kapacita</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Skupin umístění na OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Stav skupiny umístění</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Kapacita</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>Další podrobnosti \n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> naleznete v \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>záznamech událostí\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Hodnocení</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Pohotovosti</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>čítače výkonnosti MDS</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Složky</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Klienti (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Stávající</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Aktualizováno ověřování pro objevování</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Nejsou k dispozici žádné portály.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Nejsou k dispozici žádné obrazy.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Nejsou k dispozici žádné obrazy. Ověřte, že jste cíli přidali obraz.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Nejsou k dispozici žádné iniciátory. Ověřte, že jste cíli přidali iniciátor.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>cíl</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Cíl</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target>Počet relací</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Cíl má aktivní relace</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI cíl</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Stav</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target>Počet cílů</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Bajtů čtení</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Bajtů zápis</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Operací/s čtení</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Operací/s zápis</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O od</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instance</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problém</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Ukazatel postupu</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Upravit režim</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Přidat protějšek</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Upravit protějšek</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Smazat protějšek</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Vedoucí</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>Počet místních</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>Počet vzdálených</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>zrcadlit protějšek</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Klíč</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Hluboké zploštění</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Vrstvení</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Výhradní zámek</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mapa objektů (vyžaduje výhradní zámek)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Žurnálování (vyžaduje výhradní zámek)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Je třeba, aby nadřazený obraz podporoval vrstvy</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>CHRÁNĚNO</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>NECHRÁNĚNO</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Vrácení zachyceného stavu RBD zpět</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Vrácení zpět</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Zachycený stav RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Smazáno v</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>identif.</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>typ</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>stav</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>verze</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Stroj</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>kořen</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Procesy služeb v pohotovosti</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Hodnocení</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Proces služby</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Aktivita</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Struktury složek</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>I-uzlů</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Využití</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Původ</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Aktualizováno</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>Hodnotu je možné aktualizovat za chodu.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Procesy služeb / klienti nezískávají tuto hodnotu\n      z databáze nastavení monitoru. Není umožněno nastavit tuto volbu\n      prostřednictvím „ceph config set …\'. Tato volba by měla být nastavena\n      z příkazového řádku.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>Volba se uplatní pouze při spouštění procesu služby.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>Volba ovlivní pouze vytváření klastru.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>Volba ovlivní pouze vytvoření procesu služby.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Aktualizována volba nastavení \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Služba</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Stávající hodnota</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Upravitelné</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>stroj</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Popis umístění zařízení</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>K dispozici</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Aktualizována volba pro modul „\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Zapnout</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Vypnout</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>Modul Zpráva je vždy zapnutý.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Opětovné připojování, čekejte…</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Veřejná adresa</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Otevřené relace</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Počet do</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>OSD které byly dříve odznačeny nebudou označeny nazpět když spustí</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Počet ven</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD nebudou automaticky odznačeny po nastaveném intervalu</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Počet aktivních</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSD není dovoleno spuštění</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Počet neaktivních</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Hlášení o selhání OSD jsou ignorovány, jako například že monitory OSD neoznačí jako nedostupné</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pozastavit</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Pozastavit čtení a zápisy</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Žádná kontrola</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Kontrola je vypnutá</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Žádná hloubková kontrola</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Hloubková kontrola je vypnutá</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Žádné zasypávání</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Zasypávání skupin umístění je pozastaveno</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Žádné obnovení</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Obnovování skupin umístění je pozastaveno</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Bitové třídění</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Třídit podle bitů</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Vyčištěné složky zachycených stavů</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD mají převedené sady zachycených stavů</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Smazáno při zotavování</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Mazání provedená při obnovování namísto peeringu</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Nepřekročitelný limit záznamu událostí PG</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Zapne nepřekročitelný limit na délku záznamu událostí v pg</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Aktualizovány OSD příznaky</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>ven</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>dovnitř</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>nedostupné</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Značka</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD ztraceno</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>označeno jako ztracené</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Vyčistit</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>vyčištěno</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>zlikvidovat</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>zlikvidováno</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>smazat</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Priorita zotavování</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>skupiny umístění</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Přečteno bajtů</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Zapsáno bajtů</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Operací/s čtení</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Operací/s zápis</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Označit OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Označit \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Max Backfills</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Recovery Max Active</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Recovery Max Single Start</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Uspání zotavení</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Aktualizována rychlost zotavení OSD „\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Úloha</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Závažnost</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Zahájeno</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL adresa</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>ticho</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Název atributu</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regulární výraz</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Přidejte hostitele s Prometheus do nastavení přehledu a znovu načtete stránku</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Vytvořil(a)</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Končí</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Ticho</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Popis stavu</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Použito</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>K dispozici</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Čisté</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>Pracující</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Varování</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Neznámé</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Zdravé</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Chybně umístěno</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degradováno</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Odnalezeno</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>repliky</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>aktivní</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>žádné souborové systémy</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>aktivní</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>v pohotovosti</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>neaplikovatelné</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>aktivní proces služby</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>kvórum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Služba NFS Ganesha není nastavena.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFS uživatel</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Souborový systém CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(převzato z globálního nastavení)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>převzato z globálního nastavení</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Vyberte jaký druh squashování identifikátor uživatele je prováděn --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Nejsou k dispozici žádné procesy služeb.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC profil</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Režim mezipaměti</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Min Evict Age</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Min Flush Age</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Nejvýše bajtů cíle</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Nejvýše objektů cíle</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Nebyla přidána žádná aplikace</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Dosažen limit aplikací</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Fond může mít nejvýše čtyři definice aplikací.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Použitelné znaky „_a-zA-Z0-9“</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Nejvyšší délka je 128 znaků</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtrovat nebo přidat aplikace</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Přidat aplikaci</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>fond</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>profil mazacího kódu</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Velikost repliky</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Nejnovější změna</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Mazáním kódovaný profil</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Sada crush pravidel</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Smazání fondu je vypnuto nastavením mon_allow_pool_delete configuration.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>nádoba</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Vytvořena nádoba objektové brány „\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>nádoby</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>schopnost</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>uživatel</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>dílčí uživatel</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 klíč</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Aktualizován uživatel objektové brány „\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Vytvořen uživatel objektové brány „\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>uživatelé</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift klíč</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>Vyskytla se chyba s kódem \n          <x id="INTERPOLATION" equiv-text="{{code}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Nezpracované</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Práh</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>Když se nezdařilo</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Nejhorší</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Rozsah</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Čtení</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Vytvořit</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Vytvořena role „\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Aktualizována role „\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Systémová role</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Smazána role „\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>Nejsou zde žádné role.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Vytvořen uživatel „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Aktualizovat uživatele</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Pokračovat</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Byli jste automaticky odhlášeni protože vaše role byly změněny.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Aktualizován uživatel „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Smazán uživatel „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Nepodařilo se smazat uživatele „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>Nyní jste přihlášení jako „\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>“.\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>heslo</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Aktualizované heslo uživatele"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Každý objekt je rozdělen v částech shluků dat, každé uložené na jiném OSD.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Počítat kódovací shluky pro každý objekt a ukládat je na různých OSD.\n      Počet kódovacích shluků je také počet OSD, které mohou vypadnou, aniž dojde ke ztrátě dat.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Zásuvný modul jerasure je nejobecnější a nejpřizpůsobivější,\n je také výchozí pro Ceph fondy kódované mazáním.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Přizpůsobivější technikou je reed_sol_van: postačí nastvit k\n          a m. Technika cauchy_good technique může být rychlejší, ale je třeba pečlivě nastavit velikost\n          paketu. Všechny z reed_sol_r6_op, liberation, blaum_roth, liber8tion jsou ekvivalenty RAID6\n          v tom smyslu, že je možné je nastavit pouze s m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Zásuvný modul isa obaluje knihovnu ISA. Funguje pouze na procesorech Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Zásuvný modul ISA přichází ve dvou Reed Solomon podobách.\n          Pokud je nastaveno reed_sol_van, je to Vandermonde, pokud je nastaveno Cauchy, je Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Počet paritních shluků, ze kterých každý obsahuje každý shluk dat ve svém\n          výpočetním rozsahu. Číslo je použito pro odhad odolnosti. Například, pokud c=2,\n          2 OSD mohou vypadnou aniž by byla ztracena data.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Název crush nádoby sloužící jako první krok CRUSH pravidla.\n Například krok vzít výchozí.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Zajistit, aby žádné dva shluky nebyly v nádobě nacházejícící se ve stejné\n      doméně selhání. Například, pokud doména selhání je hostitel, žádné dva shluky nebudou uloženy na stejném hostiteli\n      Je použito pro vytvoření kroku CRUSH pravidla jako krok chooseleaf hostitele.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Omezit umístění na zařízení určité třídy\n      (např., ssd nebo hdd), pomocí názvu crush třídy zařízení v  CRUSH mapě.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Nastavit složku ze které načítat zásuvný modul mazacího kódu.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Umožnit všechny operace</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Umožnit pouze operace které neupraví server</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Neumožňuje operace čtení či zápisu, ale umožňuje ostatní</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Neumožňuje čtení, zápis nebo jinou operaci která upravuje atributy        souboru nebo obsah složky</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Neumožnit vůbec žádný přístup</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Vyberte prioritu --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Nízká</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Vysoká</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Chyba</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informace</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Úspěch</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Uplynulých 5 minut</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Uplynulých 15 minut</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Uplynulých 30 minut</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Uplynulá 1 hodina (výchozí)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Uplynulé 3 hodiny</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Uplynulých 6 hodin</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Uplynulých 12 hodin</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Uplynulých 24 hodin</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Včera</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Dnes</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Dnes doposud</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Včerejšek</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Uplynulé 2 dny</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Tento den minulý týden</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Předchozí týden</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Tento týden</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Tento týden doposud</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Uplynulých 7 dnů</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Předchozí měsíc</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Tento měsíc</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Tento měsíc doposud</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Uplynulých 30 dnů</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Uplynulých 90 dnů</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Uplynulých 6 měsíců</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>Uplynulý 1 rok</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Předchozí rok</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Tento rok</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Tento rok doposud</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Uplynulé 2 roky</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Uplynulých 5 let</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Nevybrány žádné položky.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Aby položku bylo možné znovu vybrat, je třeba nejprve zrušit její výběr</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Dosažen limit výběru</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Filtrovat štítky</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Přidat odznak</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Nejsou k dispozici žádné položky.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Odebrat</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Klonovat</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Kopírovat</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Hloubková kontrola</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Zlikvidovat</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Zploštit</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Označit</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Označit</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Označit ztracené</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Odznačit</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Ochránit</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Přejmenovat</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Obnovit</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Přesunout do koše</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Zrušit ochranu</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Změnit</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Znovuvytvořit</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Ukončit platnost</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Smazáno</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Přidáno</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Odebráno</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Upraveno</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Zrušeno</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Naklonováno</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Zkopírováno</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Zlikvidováno</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Zploštěno</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Označeno jako ztracené</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Chráněno</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Vyčištěno</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Přejmenováno</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Obnoveno</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Vzato zpět</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Zobrazeno</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Přesunout do koše</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Ochrana zrušena</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Znovu vytvořeno</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Platnost skončila</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Ano</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Ne</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>žádné aktivní výstrahy</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>Jedna aktivní výstraha</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> aktivních výstrah\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Odpovídá jednomu pravidlu</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Odpovídá \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> pravidlům\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> s \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Kvalita služby</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limit BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Požadovaný limit vst./výstup. bajtů za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limit vst/výstup. operací / s</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Požadovaný limit vst./výstup. operací za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limit BPS čtení</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Požadovaný limit čtení bajtů za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limit IOPS čtení</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Požadovaný limit operací čtení za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limit BPS zápisu</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Požadovaný limit zápisu bajtů za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limit IOPS zápisu</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Požadovaný limit operací čtení za sekundu.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPS dávka</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Požadovaný limit dávky bajtů vstup/výstupu.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPS dávka</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Požadovaný limit dávky vst./výstup. operací.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Dávka BPS čtení</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Požadovaný limit dávky bajtů čtení.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Dávka IOPS čtení</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Požadovaný limit dávky čtení bajtů.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Dávka BPS zápisu</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Požadovaný limit bajtů dávky zápisu.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Dávka IOPS zápisu</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Požadovaný limit dávky operace zápisu.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Nepodařilo se \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Vykonává se</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>vykonat</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Vykonáno</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>neznámý úkol</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Vytváří se</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>vytvořit</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Aktualizuje se</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>aktualizovat</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Maže se</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Přidávání</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>přidat</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Odebírání</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>odebrat</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD zachycený stav „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>režim zrcadlení pro fond „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>protějšek zrcadlení pro fond „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>všechny přehledy</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Název už je používán \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Název už je používán \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Název už je používán \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> obsahuje zachycené stavy.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Klonuje se</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>klonovat</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Je třeba, aby zachycený stav \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> byl chráněný.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Kopíruje se</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>zkopírovat</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Zploštění</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>zploštit</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Název už je používán pro \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Není možné zrušit ochranu \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>, protože obsahuje podřízené obrazy.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> není možné smazat, protože je chráněné.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Bere se zpět</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>vzít zpět</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Přesouvá se</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>přesunout</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Přesunuto</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>obraz „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“ do koše\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Obraz se nedaří najít.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Obnovuje se</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>obnovit</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>obraz „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“ do „\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Název „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“ už je používán pro jiný obraz.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>obraz „\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Čistí se</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>vyčistit</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>všechny fondy</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>obrazy z \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Zrcadlení nelze vypnout protože obsahuje protějšek.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>stroj „\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>fond „\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>profil mazacího kódu „\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>cíl „\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>“\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},VpIT:function(t,e,n){var a=n("xDBR"),r=n("xs3f");(t.exports=function(t,e){return r[t]||(r[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.5",mode:a?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},Vu81:function(t,e,n){var a=n("0GbY"),r=n("JBy8"),i=n("dBg+"),s=n("glrk");t.exports=a("Reflect","ownKeys")||function(t){var e=r.f(s(t)),n=i.f;return n?e.concat(n(t)):e}},WF9J:function(t,e,n){"use strict";n("TeQF"),n("QWBl"),n("4mDm"),n("zKZe"),n("07d7"),n("4l63"),n("PKPk"),n("ENF9"),n("3bBZ");var a=n("hKI/"),r=n.n(a),i=n("9/5/"),s=n.n(i),u=n("uyHG"),o=n.n(u),l=function(){if("undefined"!=typeof Map)return Map;function t(t,e){var n=-1;return t.some((function(t,a){return t[0]===e&&(n=a,!0)})),n}return function(){function e(){this.__entries__=[]}return Object.defineProperty(e.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),e.prototype.get=function(e){var n=t(this.__entries__,e),a=this.__entries__[n];return a&&a[1]},e.prototype.set=function(e,n){var a=t(this.__entries__,e);~a?this.__entries__[a][1]=n:this.__entries__.push([e,n])},e.prototype.delete=function(e){var n=this.__entries__,a=t(n,e);~a&&n.splice(a,1)},e.prototype.has=function(e){return!!~t(this.__entries__,e)},e.prototype.clear=function(){this.__entries__.splice(0)},e.prototype.forEach=function(t,e){void 0===e&&(e=null);for(var n=0,a=this.__entries__;n<a.length;n++){var r=a[n];t.call(e,r[1],r[0])}},e}()}(),d="undefined"!=typeof window&&"undefined"!=typeof document&&window.document===document,c="undefined"!=typeof global&&global.Math===Math?global:"undefined"!=typeof self&&self.Math===Math?self:"undefined"!=typeof window&&window.Math===Math?window:Function("return this")(),f="function"==typeof requestAnimationFrame?requestAnimationFrame.bind(c):function(t){return setTimeout((function(){return t(Date.now())}),1e3/60)},h=["top","right","bottom","left","width","height","size","weight"],g="undefined"!=typeof MutationObserver,p=function(){function t(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=function(t,e){var n=!1,a=!1,r=0;function i(){n&&(n=!1,t()),a&&u()}function s(){f(i)}function u(){var t=Date.now();if(n){if(t-r<2)return;a=!0}else n=!0,a=!1,setTimeout(s,20);r=t}return u}(this.refresh.bind(this))}return t.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},t.prototype.removeObserver=function(t){var e=this.observers_,n=e.indexOf(t);~n&&e.splice(n,1),!e.length&&this.connected_&&this.disconnect_()},t.prototype.refresh=function(){this.updateObservers_()&&this.refresh()},t.prototype.updateObservers_=function(){var t=this.observers_.filter((function(t){return t.gatherActive(),t.hasActive()}));return t.forEach((function(t){return t.broadcastActive()})),t.length>0},t.prototype.connect_=function(){d&&!this.connected_&&(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),g?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},t.prototype.disconnect_=function(){d&&this.connected_&&(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},t.prototype.onTransitionEnd_=function(t){var e=t.propertyName,n=void 0===e?"":e;h.some((function(t){return!!~n.indexOf(t)}))&&this.refresh()},t.getInstance=function(){return this.instance_||(this.instance_=new t),this.instance_},t.instance_=null,t}(),b=function(t,e){for(var n=0,a=Object.keys(e);n<a.length;n++){var r=a[n];Object.defineProperty(t,r,{value:e[r],enumerable:!1,writable:!1,configurable:!0})}return t},m=function(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView||c},y=T(0,0,0,0);function v(t){return parseFloat(t)||0}function x(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return e.reduce((function(e,n){return e+v(t["border-"+n+"-width"])}),0)}var _="undefined"!=typeof SVGGraphicsElement?function(t){return t instanceof m(t).SVGGraphicsElement}:function(t){return t instanceof m(t).SVGElement&&"function"==typeof t.getBBox};function T(t,e,n,a){return{x:t,y:e,width:n,height:a}}var w=function(){function t(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=T(0,0,0,0),this.target=t}return t.prototype.isActive=function(){var t,e=(t=this.target,d?_(t)?function(t){var e=t.getBBox();return T(0,0,e.width,e.height)}(t):function(t){var e=t.clientWidth,n=t.clientHeight;if(!e&&!n)return y;var a=m(t).getComputedStyle(t),r=function(t){for(var e={},n=0,a=["top","right","bottom","left"];n<a.length;n++){var r=a[n];e[r]=v(t["padding-"+r])}return e}(a),i=r.left+r.right,s=r.top+r.bottom,u=v(a.width),o=v(a.height);if("border-box"===a.boxSizing&&(Math.round(u+i)!==e&&(u-=x(a,"left","right")+i),Math.round(o+s)!==n&&(o-=x(a,"top","bottom")+s)),!function(t){return t===m(t).document.documentElement}(t)){var l=Math.round(u+i)-e,d=Math.round(o+s)-n;1!==Math.abs(l)&&(u-=l),1!==Math.abs(d)&&(o-=d)}return T(r.left,r.top,u,o)}(t):y);return this.contentRect_=e,e.width!==this.broadcastWidth||e.height!==this.broadcastHeight},t.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t},t}(),O=function(t,e){var n,a,r,i,s,u,o,l=(a=(n=e).x,r=n.y,i=n.width,s=n.height,u="undefined"!=typeof DOMRectReadOnly?DOMRectReadOnly:Object,o=Object.create(u.prototype),b(o,{x:a,y:r,width:i,height:s,top:r,right:a+i,bottom:s+r,left:a}),o);b(this,{target:t,contentRect:l})},S=function(){function t(t,e,n){if(this.activeObservations_=[],this.observations_=new l,"function"!=typeof t)throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=t,this.controller_=e,this.callbackCtx_=n}return t.prototype.observe=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(t instanceof m(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)||(e.set(t,new w(t)),this.controller_.addObserver(this),this.controller_.refresh())}},t.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(t instanceof m(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)&&(e.delete(t),e.size||this.controller_.removeObserver(this))}},t.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},t.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach((function(e){e.isActive()&&t.activeObservations_.push(e)}))},t.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,e=this.activeObservations_.map((function(t){return new O(t.target,t.broadcastRect())}));this.callback_.call(t,e,t),this.clearActive()}},t.prototype.clearActive=function(){this.activeObservations_.splice(0)},t.prototype.hasActive=function(){return this.activeObservations_.length>0},t}(),I="undefined"!=typeof WeakMap?new WeakMap:new l,N=function t(e){if(!(this instanceof t))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var n=p.getInstance(),a=new S(e,n,this);I.set(this,a)};["observe","unobserve","disconnect"].forEach((function(t){N.prototype[t]=function(){var e;return(e=I.get(this))[t].apply(e,arguments)}}));var C=void 0!==c.ResizeObserver?c.ResizeObserver:N,R=n("AxL3"),A=n.n(R),k=(n("E9XD"),n("sMBO"),n("rB9j"),n("Rm1S"),n("UxlC"),null),E=null;function L(){if(null===k){if("undefined"==typeof document)return k=0;var t=document.body,e=document.createElement("div");e.classList.add("simplebar-hide-scrollbar"),t.appendChild(e);var n=e.getBoundingClientRect().right;t.removeChild(e),k=n}return k}function D(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView?t.ownerDocument.defaultView:window}function P(t){return t&&t.ownerDocument?t.ownerDocument:document}A.a&&window.addEventListener("resize",(function(){E!==window.devicePixelRatio&&(E=window.devicePixelRatio,k=null)}));var M=function(){function t(e,n){var a=this;this.onScroll=function(){var t=D(a.el);a.scrollXTicking||(t.requestAnimationFrame(a.scrollX),a.scrollXTicking=!0),a.scrollYTicking||(t.requestAnimationFrame(a.scrollY),a.scrollYTicking=!0)},this.scrollX=function(){a.axis.x.isOverflowing&&(a.showScrollbar("x"),a.positionScrollbar("x")),a.scrollXTicking=!1},this.scrollY=function(){a.axis.y.isOverflowing&&(a.showScrollbar("y"),a.positionScrollbar("y")),a.scrollYTicking=!1},this.onMouseEnter=function(){a.showScrollbar("x"),a.showScrollbar("y")},this.onMouseMove=function(t){a.mouseX=t.clientX,a.mouseY=t.clientY,(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&a.onMouseMoveForAxis("x"),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&a.onMouseMoveForAxis("y")},this.onMouseLeave=function(){a.onMouseMove.cancel(),(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&a.onMouseLeaveForAxis("x"),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&a.onMouseLeaveForAxis("y"),a.mouseX=-1,a.mouseY=-1},this.onWindowResize=function(){a.scrollbarWidth=a.getScrollbarWidth(),a.hideNativeScrollbar()},this.hideScrollbars=function(){a.axis.x.track.rect=a.axis.x.track.el.getBoundingClientRect(),a.axis.y.track.rect=a.axis.y.track.el.getBoundingClientRect(),a.isWithinBounds(a.axis.y.track.rect)||(a.axis.y.scrollbar.el.classList.remove(a.classNames.visible),a.axis.y.isVisible=!1),a.isWithinBounds(a.axis.x.track.rect)||(a.axis.x.scrollbar.el.classList.remove(a.classNames.visible),a.axis.x.isVisible=!1)},this.onPointerEvent=function(t){var e,n;a.axis.x.track.rect=a.axis.x.track.el.getBoundingClientRect(),a.axis.y.track.rect=a.axis.y.track.el.getBoundingClientRect(),(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&(e=a.isWithinBounds(a.axis.x.track.rect)),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&(n=a.isWithinBounds(a.axis.y.track.rect)),(e||n)&&(t.preventDefault(),t.stopPropagation(),"mousedown"===t.type&&(e&&(a.axis.x.scrollbar.rect=a.axis.x.scrollbar.el.getBoundingClientRect(),a.isWithinBounds(a.axis.x.scrollbar.rect)?a.onDragStart(t,"x"):a.onTrackClick(t,"x")),n&&(a.axis.y.scrollbar.rect=a.axis.y.scrollbar.el.getBoundingClientRect(),a.isWithinBounds(a.axis.y.scrollbar.rect)?a.onDragStart(t,"y"):a.onTrackClick(t,"y"))))},this.drag=function(e){var n=a.axis[a.draggedAxis].track,r=n.rect[a.axis[a.draggedAxis].sizeAttr],i=a.axis[a.draggedAxis].scrollbar,s=a.contentWrapperEl[a.axis[a.draggedAxis].scrollSizeAttr],u=parseInt(a.elStyles[a.axis[a.draggedAxis].sizeAttr],10);e.preventDefault(),e.stopPropagation();var o=(("y"===a.draggedAxis?e.pageY:e.pageX)-n.rect[a.axis[a.draggedAxis].offsetAttr]-a.axis[a.draggedAxis].dragOffset)/(r-i.size)*(s-u);"x"===a.draggedAxis&&(o=a.isRtl&&t.getRtlHelpers().isRtlScrollbarInverted?o-(r+i.size):o,o=a.isRtl&&t.getRtlHelpers().isRtlScrollingInverted?-o:o),a.contentWrapperEl[a.axis[a.draggedAxis].scrollOffsetAttr]=o},this.onEndDrag=function(t){var e=P(a.el),n=D(a.el);t.preventDefault(),t.stopPropagation(),a.el.classList.remove(a.classNames.dragging),e.removeEventListener("mousemove",a.drag,!0),e.removeEventListener("mouseup",a.onEndDrag,!0),a.removePreventClickId=n.setTimeout((function(){e.removeEventListener("click",a.preventClick,!0),e.removeEventListener("dblclick",a.preventClick,!0),a.removePreventClickId=null}))},this.preventClick=function(t){t.preventDefault(),t.stopPropagation()},this.el=e,this.minScrollbarWidth=20,this.options=Object.assign({},t.defaultOptions,{},n),this.classNames=Object.assign({},t.defaultOptions.classNames,{},this.options.classNames),this.axis={x:{scrollOffsetAttr:"scrollLeft",sizeAttr:"width",scrollSizeAttr:"scrollWidth",offsetSizeAttr:"offsetWidth",offsetAttr:"left",overflowAttr:"overflowX",dragOffset:0,isOverflowing:!0,isVisible:!1,forceVisible:!1,track:{},scrollbar:{}},y:{scrollOffsetAttr:"scrollTop",sizeAttr:"height",scrollSizeAttr:"scrollHeight",offsetSizeAttr:"offsetHeight",offsetAttr:"top",overflowAttr:"overflowY",dragOffset:0,isOverflowing:!0,isVisible:!1,forceVisible:!1,track:{},scrollbar:{}}},this.removePreventClickId=null,t.instances.has(this.el)||(this.recalculate=r()(this.recalculate.bind(this),64),this.onMouseMove=r()(this.onMouseMove.bind(this),64),this.hideScrollbars=s()(this.hideScrollbars.bind(this),this.options.timeout),this.onWindowResize=s()(this.onWindowResize.bind(this),64,{leading:!0}),t.getRtlHelpers=o()(t.getRtlHelpers),this.init())}t.getRtlHelpers=function(){var e=document.createElement("div");e.innerHTML='<div class="hs-dummy-scrollbar-size"><div style="height: 200%; width: 200%; margin: 10px 0;"></div></div>';var n=e.firstElementChild;document.body.appendChild(n);var a=n.firstElementChild;n.scrollLeft=0;var r=t.getOffset(n),i=t.getOffset(a);n.scrollLeft=999;var s=t.getOffset(a);return{isRtlScrollingInverted:r.left!==i.left&&i.left-s.left!=0,isRtlScrollbarInverted:r.left!==i.left}},t.getOffset=function(t){var e=t.getBoundingClientRect(),n=P(t),a=D(t);return{top:e.top+(a.pageYOffset||n.documentElement.scrollTop),left:e.left+(a.pageXOffset||n.documentElement.scrollLeft)}};var e=t.prototype;return e.init=function(){t.instances.set(this.el,this),A.a&&(this.initDOM(),this.scrollbarWidth=this.getScrollbarWidth(),this.recalculate(),this.initListeners())},e.initDOM=function(){var t=this;if(Array.prototype.filter.call(this.el.children,(function(e){return e.classList.contains(t.classNames.wrapper)})).length)this.wrapperEl=this.el.querySelector("."+this.classNames.wrapper),this.contentWrapperEl=this.options.scrollableNode||this.el.querySelector("."+this.classNames.contentWrapper),this.contentEl=this.options.contentNode||this.el.querySelector("."+this.classNames.contentEl),this.offsetEl=this.el.querySelector("."+this.classNames.offset),this.maskEl=this.el.querySelector("."+this.classNames.mask),this.placeholderEl=this.findChild(this.wrapperEl,"."+this.classNames.placeholder),this.heightAutoObserverWrapperEl=this.el.querySelector("."+this.classNames.heightAutoObserverWrapperEl),this.heightAutoObserverEl=this.el.querySelector("."+this.classNames.heightAutoObserverEl),this.axis.x.track.el=this.findChild(this.el,"."+this.classNames.track+"."+this.classNames.horizontal),this.axis.y.track.el=this.findChild(this.el,"."+this.classNames.track+"."+this.classNames.vertical);else{for(this.wrapperEl=document.createElement("div"),this.contentWrapperEl=document.createElement("div"),this.offsetEl=document.createElement("div"),this.maskEl=document.createElement("div"),this.contentEl=document.createElement("div"),this.placeholderEl=document.createElement("div"),this.heightAutoObserverWrapperEl=document.createElement("div"),this.heightAutoObserverEl=document.createElement("div"),this.wrapperEl.classList.add(this.classNames.wrapper),this.contentWrapperEl.classList.add(this.classNames.contentWrapper),this.offsetEl.classList.add(this.classNames.offset),this.maskEl.classList.add(this.classNames.mask),this.contentEl.classList.add(this.classNames.contentEl),this.placeholderEl.classList.add(this.classNames.placeholder),this.heightAutoObserverWrapperEl.classList.add(this.classNames.heightAutoObserverWrapperEl),this.heightAutoObserverEl.classList.add(this.classNames.heightAutoObserverEl);this.el.firstChild;)this.contentEl.appendChild(this.el.firstChild);this.contentWrapperEl.appendChild(this.contentEl),this.offsetEl.appendChild(this.contentWrapperEl),this.maskEl.appendChild(this.offsetEl),this.heightAutoObserverWrapperEl.appendChild(this.heightAutoObserverEl),this.wrapperEl.appendChild(this.heightAutoObserverWrapperEl),this.wrapperEl.appendChild(this.maskEl),this.wrapperEl.appendChild(this.placeholderEl),this.el.appendChild(this.wrapperEl)}if(!this.axis.x.track.el||!this.axis.y.track.el){var e=document.createElement("div"),n=document.createElement("div");e.classList.add(this.classNames.track),n.classList.add(this.classNames.scrollbar),e.appendChild(n),this.axis.x.track.el=e.cloneNode(!0),this.axis.x.track.el.classList.add(this.classNames.horizontal),this.axis.y.track.el=e.cloneNode(!0),this.axis.y.track.el.classList.add(this.classNames.vertical),this.el.appendChild(this.axis.x.track.el),this.el.appendChild(this.axis.y.track.el)}this.axis.x.scrollbar.el=this.axis.x.track.el.querySelector("."+this.classNames.scrollbar),this.axis.y.scrollbar.el=this.axis.y.track.el.querySelector("."+this.classNames.scrollbar),this.options.autoHide||(this.axis.x.scrollbar.el.classList.add(this.classNames.visible),this.axis.y.scrollbar.el.classList.add(this.classNames.visible)),this.el.setAttribute("data-simplebar","init")},e.initListeners=function(){var t=this,e=D(this.el);this.options.autoHide&&this.el.addEventListener("mouseenter",this.onMouseEnter),["mousedown","click","dblclick"].forEach((function(e){t.el.addEventListener(e,t.onPointerEvent,!0)})),["touchstart","touchend","touchmove"].forEach((function(e){t.el.addEventListener(e,t.onPointerEvent,{capture:!0,passive:!0})})),this.el.addEventListener("mousemove",this.onMouseMove),this.el.addEventListener("mouseleave",this.onMouseLeave),this.contentWrapperEl.addEventListener("scroll",this.onScroll),e.addEventListener("resize",this.onWindowResize);var n=!1;this.resizeObserver=new(e.ResizeObserver||C)((function(){n&&t.recalculate()})),this.resizeObserver.observe(this.el),this.resizeObserver.observe(this.contentEl),e.requestAnimationFrame((function(){n=!0})),this.mutationObserver=new e.MutationObserver(this.recalculate),this.mutationObserver.observe(this.contentEl,{childList:!0,subtree:!0,characterData:!0})},e.recalculate=function(){var t=D(this.el);this.elStyles=t.getComputedStyle(this.el),this.isRtl="rtl"===this.elStyles.direction;var e=this.contentEl.offsetWidth,n=this.heightAutoObserverEl.offsetHeight<=1,a=this.heightAutoObserverEl.offsetWidth<=1||e>0,r=this.contentWrapperEl.offsetWidth,i=this.elStyles.overflowX,s=this.elStyles.overflowY;this.contentEl.style.padding=this.elStyles.paddingTop+" "+this.elStyles.paddingRight+" "+this.elStyles.paddingBottom+" "+this.elStyles.paddingLeft,this.wrapperEl.style.margin="-"+this.elStyles.paddingTop+" -"+this.elStyles.paddingRight+" -"+this.elStyles.paddingBottom+" -"+this.elStyles.paddingLeft;var u=this.contentEl.scrollHeight,o=this.contentEl.scrollWidth;this.contentWrapperEl.style.height=n?"auto":"100%",this.placeholderEl.style.width=a?(e||o)+"px":"auto",this.placeholderEl.style.height=u+"px";var l=this.contentWrapperEl.offsetHeight;this.axis.x.isOverflowing=0!==e&&o>e,this.axis.y.isOverflowing=u>l,this.axis.x.isOverflowing="hidden"!==i&&this.axis.x.isOverflowing,this.axis.y.isOverflowing="hidden"!==s&&this.axis.y.isOverflowing,this.axis.x.forceVisible="x"===this.options.forceVisible||!0===this.options.forceVisible,this.axis.y.forceVisible="y"===this.options.forceVisible||!0===this.options.forceVisible,this.hideNativeScrollbar();var d=this.axis.x.isOverflowing?this.scrollbarWidth:0;this.axis.x.isOverflowing=this.axis.x.isOverflowing&&o>r-(this.axis.y.isOverflowing?this.scrollbarWidth:0),this.axis.y.isOverflowing=this.axis.y.isOverflowing&&u>l-d,this.axis.x.scrollbar.size=this.getScrollbarSize("x"),this.axis.y.scrollbar.size=this.getScrollbarSize("y"),this.axis.x.scrollbar.el.style.width=this.axis.x.scrollbar.size+"px",this.axis.y.scrollbar.el.style.height=this.axis.y.scrollbar.size+"px",this.positionScrollbar("x"),this.positionScrollbar("y"),this.toggleTrackVisibility("x"),this.toggleTrackVisibility("y")},e.getScrollbarSize=function(t){if(void 0===t&&(t="y"),!this.axis[t].isOverflowing)return 0;var e,n=this.axis[t].track.el[this.axis[t].offsetSizeAttr];return e=Math.max(~~(n/this.contentEl[this.axis[t].scrollSizeAttr]*n),this.options.scrollbarMinSize),this.options.scrollbarMaxSize&&(e=Math.min(e,this.options.scrollbarMaxSize)),e},e.positionScrollbar=function(e){if(void 0===e&&(e="y"),this.axis[e].isOverflowing){var n=this.contentWrapperEl[this.axis[e].scrollSizeAttr],a=this.axis[e].track.el[this.axis[e].offsetSizeAttr],r=parseInt(this.elStyles[this.axis[e].sizeAttr],10),i=this.axis[e].scrollbar,s=this.contentWrapperEl[this.axis[e].scrollOffsetAttr],u=~~((s="x"===e&&this.isRtl&&t.getRtlHelpers().isRtlScrollingInverted?-s:s)/(n-r)*(a-i.size));u="x"===e&&this.isRtl&&t.getRtlHelpers().isRtlScrollbarInverted?u+(a-i.size):u,i.el.style.transform="x"===e?"translate3d("+u+"px, 0, 0)":"translate3d(0, "+u+"px, 0)"}},e.toggleTrackVisibility=function(t){void 0===t&&(t="y");var e=this.axis[t].track.el,n=this.axis[t].scrollbar.el;this.axis[t].isOverflowing||this.axis[t].forceVisible?(e.style.visibility="visible",this.contentWrapperEl.style[this.axis[t].overflowAttr]="scroll"):(e.style.visibility="hidden",this.contentWrapperEl.style[this.axis[t].overflowAttr]="hidden"),n.style.display=this.axis[t].isOverflowing?"block":"none"},e.hideNativeScrollbar=function(){this.offsetEl.style[this.isRtl?"left":"right"]=this.axis.y.isOverflowing||this.axis.y.forceVisible?"-"+this.scrollbarWidth+"px":0,this.offsetEl.style.bottom=this.axis.x.isOverflowing||this.axis.x.forceVisible?"-"+this.scrollbarWidth+"px":0},e.onMouseMoveForAxis=function(t){void 0===t&&(t="y"),this.axis[t].track.rect=this.axis[t].track.el.getBoundingClientRect(),this.axis[t].scrollbar.rect=this.axis[t].scrollbar.el.getBoundingClientRect(),this.isWithinBounds(this.axis[t].scrollbar.rect)?this.axis[t].scrollbar.el.classList.add(this.classNames.hover):this.axis[t].scrollbar.el.classList.remove(this.classNames.hover),this.isWithinBounds(this.axis[t].track.rect)?(this.showScrollbar(t),this.axis[t].track.el.classList.add(this.classNames.hover)):this.axis[t].track.el.classList.remove(this.classNames.hover)},e.onMouseLeaveForAxis=function(t){void 0===t&&(t="y"),this.axis[t].track.el.classList.remove(this.classNames.hover),this.axis[t].scrollbar.el.classList.remove(this.classNames.hover)},e.showScrollbar=function(t){void 0===t&&(t="y"),this.axis[t].isVisible||(this.axis[t].scrollbar.el.classList.add(this.classNames.visible),this.axis[t].isVisible=!0),this.options.autoHide&&this.hideScrollbars()},e.onDragStart=function(t,e){void 0===e&&(e="y");var n=P(this.el),a=D(this.el);this.axis[e].dragOffset=("y"===e?t.pageY:t.pageX)-this.axis[e].scrollbar.rect[this.axis[e].offsetAttr],this.draggedAxis=e,this.el.classList.add(this.classNames.dragging),n.addEventListener("mousemove",this.drag,!0),n.addEventListener("mouseup",this.onEndDrag,!0),null===this.removePreventClickId?(n.addEventListener("click",this.preventClick,!0),n.addEventListener("dblclick",this.preventClick,!0)):(a.clearTimeout(this.removePreventClickId),this.removePreventClickId=null)},e.onTrackClick=function(t,e){var n=this;if(void 0===e&&(e="y"),this.options.clickOnTrack){var a=D(this.el);this.axis[e].scrollbar.rect=this.axis[e].scrollbar.el.getBoundingClientRect();var r=this.axis[e].scrollbar.rect[this.axis[e].offsetAttr],i=parseInt(this.elStyles[this.axis[e].sizeAttr],10),s=this.contentWrapperEl[this.axis[e].scrollOffsetAttr],u=("y"===e?this.mouseY-r:this.mouseX-r)<0?-1:1,o=-1===u?s-i:s+i;!function t(){var r,i;-1===u?s>o&&(n.contentWrapperEl.scrollTo(((r={})[n.axis[e].offsetAttr]=s-=40,r)),a.requestAnimationFrame(t)):s<o&&(n.contentWrapperEl.scrollTo(((i={})[n.axis[e].offsetAttr]=s+=40,i)),a.requestAnimationFrame(t))}()}},e.getContentElement=function(){return this.contentEl},e.getScrollElement=function(){return this.contentWrapperEl},e.getScrollbarWidth=function(){try{return"none"===getComputedStyle(this.contentWrapperEl,"::-webkit-scrollbar").display||"scrollbarWidth"in document.documentElement.style||"-ms-overflow-style"in document.documentElement.style?0:L()}catch(t){return L()}},e.removeListeners=function(){var t=this,e=D(this.el);this.options.autoHide&&this.el.removeEventListener("mouseenter",this.onMouseEnter),["mousedown","click","dblclick"].forEach((function(e){t.el.removeEventListener(e,t.onPointerEvent,!0)})),["touchstart","touchend","touchmove"].forEach((function(e){t.el.removeEventListener(e,t.onPointerEvent,{capture:!0,passive:!0})})),this.el.removeEventListener("mousemove",this.onMouseMove),this.el.removeEventListener("mouseleave",this.onMouseLeave),this.contentWrapperEl.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onWindowResize),this.mutationObserver.disconnect(),this.resizeObserver.disconnect(),this.recalculate.cancel(),this.onMouseMove.cancel(),this.hideScrollbars.cancel(),this.onWindowResize.cancel()},e.unMount=function(){this.removeListeners(),t.instances.delete(this.el)},e.isWithinBounds=function(t){return this.mouseX>=t.left&&this.mouseX<=t.left+t.width&&this.mouseY>=t.top&&this.mouseY<=t.top+t.height},e.findChild=function(t,e){var n=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.msMatchesSelector;return Array.prototype.filter.call(t.children,(function(t){return n.call(t,e)}))[0]},t}();M.defaultOptions={autoHide:!0,forceVisible:!1,clickOnTrack:!0,classNames:{contentEl:"simplebar-content",contentWrapper:"simplebar-content-wrapper",offset:"simplebar-offset",mask:"simplebar-mask",wrapper:"simplebar-wrapper",placeholder:"simplebar-placeholder",scrollbar:"simplebar-scrollbar",track:"simplebar-track",heightAutoObserverWrapperEl:"simplebar-height-auto-observer-wrapper",heightAutoObserverEl:"simplebar-height-auto-observer",visible:"simplebar-visible",horizontal:"simplebar-horizontal",vertical:"simplebar-vertical",hover:"simplebar-hover",dragging:"simplebar-dragging"},scrollbarMinSize:25,scrollbarMaxSize:0,timeout:1e3},M.instances=new WeakMap;var q=M,j=(n("FZtP"),null),F=null;function V(){if(null===j){if("undefined"==typeof document)return j=0;var t=document.body,e=document.createElement("div");e.classList.add("simplebar-hide-scrollbar"),t.appendChild(e);var n=e.getBoundingClientRect().right;t.removeChild(e),j=n}return j}A.a&&window.addEventListener("resize",(function(){F!==window.devicePixelRatio&&(F=window.devicePixelRatio,j=null)}));var G=function(t){return Array.prototype.reduce.call(t,(function(t,e){var n=e.name.match(/data-simplebar-(.+)/);if(n){var a=n[1].replace(/\W+(.)/g,(function(t,e){return e.toUpperCase()}));switch(e.value){case"true":t[a]=!0;break;case"false":t[a]=!1;break;case void 0:t[a]=!0;break;default:t[a]=e.value}}return t}),{})};function B(t){return t&&t.ownerDocument&&t.ownerDocument.defaultView?t.ownerDocument.defaultView:window}function z(t){return t&&t.ownerDocument?t.ownerDocument:document}var Y=function(){function t(e,n){var a=this;this.onScroll=function(){var t=B(a.el);a.scrollXTicking||(t.requestAnimationFrame(a.scrollX),a.scrollXTicking=!0),a.scrollYTicking||(t.requestAnimationFrame(a.scrollY),a.scrollYTicking=!0)},this.scrollX=function(){a.axis.x.isOverflowing&&(a.showScrollbar("x"),a.positionScrollbar("x")),a.scrollXTicking=!1},this.scrollY=function(){a.axis.y.isOverflowing&&(a.showScrollbar("y"),a.positionScrollbar("y")),a.scrollYTicking=!1},this.onMouseEnter=function(){a.showScrollbar("x"),a.showScrollbar("y")},this.onMouseMove=function(t){a.mouseX=t.clientX,a.mouseY=t.clientY,(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&a.onMouseMoveForAxis("x"),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&a.onMouseMoveForAxis("y")},this.onMouseLeave=function(){a.onMouseMove.cancel(),(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&a.onMouseLeaveForAxis("x"),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&a.onMouseLeaveForAxis("y"),a.mouseX=-1,a.mouseY=-1},this.onWindowResize=function(){a.scrollbarWidth=a.getScrollbarWidth(),a.hideNativeScrollbar()},this.hideScrollbars=function(){a.axis.x.track.rect=a.axis.x.track.el.getBoundingClientRect(),a.axis.y.track.rect=a.axis.y.track.el.getBoundingClientRect(),a.isWithinBounds(a.axis.y.track.rect)||(a.axis.y.scrollbar.el.classList.remove(a.classNames.visible),a.axis.y.isVisible=!1),a.isWithinBounds(a.axis.x.track.rect)||(a.axis.x.scrollbar.el.classList.remove(a.classNames.visible),a.axis.x.isVisible=!1)},this.onPointerEvent=function(t){var e,n;a.axis.x.track.rect=a.axis.x.track.el.getBoundingClientRect(),a.axis.y.track.rect=a.axis.y.track.el.getBoundingClientRect(),(a.axis.x.isOverflowing||a.axis.x.forceVisible)&&(e=a.isWithinBounds(a.axis.x.track.rect)),(a.axis.y.isOverflowing||a.axis.y.forceVisible)&&(n=a.isWithinBounds(a.axis.y.track.rect)),(e||n)&&(t.preventDefault(),t.stopPropagation(),"mousedown"===t.type&&(e&&(a.axis.x.scrollbar.rect=a.axis.x.scrollbar.el.getBoundingClientRect(),a.isWithinBounds(a.axis.x.scrollbar.rect)?a.onDragStart(t,"x"):a.onTrackClick(t,"x")),n&&(a.axis.y.scrollbar.rect=a.axis.y.scrollbar.el.getBoundingClientRect(),a.isWithinBounds(a.axis.y.scrollbar.rect)?a.onDragStart(t,"y"):a.onTrackClick(t,"y"))))},this.drag=function(e){var n=a.axis[a.draggedAxis].track,r=n.rect[a.axis[a.draggedAxis].sizeAttr],i=a.axis[a.draggedAxis].scrollbar,s=a.contentWrapperEl[a.axis[a.draggedAxis].scrollSizeAttr],u=parseInt(a.elStyles[a.axis[a.draggedAxis].sizeAttr],10);e.preventDefault(),e.stopPropagation();var o=(("y"===a.draggedAxis?e.pageY:e.pageX)-n.rect[a.axis[a.draggedAxis].offsetAttr]-a.axis[a.draggedAxis].dragOffset)/(r-i.size)*(s-u);"x"===a.draggedAxis&&(o=a.isRtl&&t.getRtlHelpers().isRtlScrollbarInverted?o-(r+i.size):o,o=a.isRtl&&t.getRtlHelpers().isRtlScrollingInverted?-o:o),a.contentWrapperEl[a.axis[a.draggedAxis].scrollOffsetAttr]=o},this.onEndDrag=function(t){var e=z(a.el),n=B(a.el);t.preventDefault(),t.stopPropagation(),a.el.classList.remove(a.classNames.dragging),e.removeEventListener("mousemove",a.drag,!0),e.removeEventListener("mouseup",a.onEndDrag,!0),a.removePreventClickId=n.setTimeout((function(){e.removeEventListener("click",a.preventClick,!0),e.removeEventListener("dblclick",a.preventClick,!0),a.removePreventClickId=null}))},this.preventClick=function(t){t.preventDefault(),t.stopPropagation()},this.el=e,this.minScrollbarWidth=20,this.options=Object.assign({},t.defaultOptions,{},n),this.classNames=Object.assign({},t.defaultOptions.classNames,{},this.options.classNames),this.axis={x:{scrollOffsetAttr:"scrollLeft",sizeAttr:"width",scrollSizeAttr:"scrollWidth",offsetSizeAttr:"offsetWidth",offsetAttr:"left",overflowAttr:"overflowX",dragOffset:0,isOverflowing:!0,isVisible:!1,forceVisible:!1,track:{},scrollbar:{}},y:{scrollOffsetAttr:"scrollTop",sizeAttr:"height",scrollSizeAttr:"scrollHeight",offsetSizeAttr:"offsetHeight",offsetAttr:"top",overflowAttr:"overflowY",dragOffset:0,isOverflowing:!0,isVisible:!1,forceVisible:!1,track:{},scrollbar:{}}},this.removePreventClickId=null,t.instances.has(this.el)||(this.recalculate=r()(this.recalculate.bind(this),64),this.onMouseMove=r()(this.onMouseMove.bind(this),64),this.hideScrollbars=s()(this.hideScrollbars.bind(this),this.options.timeout),this.onWindowResize=s()(this.onWindowResize.bind(this),64,{leading:!0}),t.getRtlHelpers=o()(t.getRtlHelpers),this.init())}t.getRtlHelpers=function(){var e=document.createElement("div");e.innerHTML='<div class="hs-dummy-scrollbar-size"><div style="height: 200%; width: 200%; margin: 10px 0;"></div></div>';var n=e.firstElementChild;document.body.appendChild(n);var a=n.firstElementChild;n.scrollLeft=0;var r=t.getOffset(n),i=t.getOffset(a);n.scrollLeft=999;var s=t.getOffset(a);return{isRtlScrollingInverted:r.left!==i.left&&i.left-s.left!=0,isRtlScrollbarInverted:r.left!==i.left}},t.getOffset=function(t){var e=t.getBoundingClientRect(),n=z(t),a=B(t);return{top:e.top+(a.pageYOffset||n.documentElement.scrollTop),left:e.left+(a.pageXOffset||n.documentElement.scrollLeft)}};var e=t.prototype;return e.init=function(){t.instances.set(this.el,this),A.a&&(this.initDOM(),this.scrollbarWidth=this.getScrollbarWidth(),this.recalculate(),this.initListeners())},e.initDOM=function(){var t=this;if(Array.prototype.filter.call(this.el.children,(function(e){return e.classList.contains(t.classNames.wrapper)})).length)this.wrapperEl=this.el.querySelector("."+this.classNames.wrapper),this.contentWrapperEl=this.options.scrollableNode||this.el.querySelector("."+this.classNames.contentWrapper),this.contentEl=this.options.contentNode||this.el.querySelector("."+this.classNames.contentEl),this.offsetEl=this.el.querySelector("."+this.classNames.offset),this.maskEl=this.el.querySelector("."+this.classNames.mask),this.placeholderEl=this.findChild(this.wrapperEl,"."+this.classNames.placeholder),this.heightAutoObserverWrapperEl=this.el.querySelector("."+this.classNames.heightAutoObserverWrapperEl),this.heightAutoObserverEl=this.el.querySelector("."+this.classNames.heightAutoObserverEl),this.axis.x.track.el=this.findChild(this.el,"."+this.classNames.track+"."+this.classNames.horizontal),this.axis.y.track.el=this.findChild(this.el,"."+this.classNames.track+"."+this.classNames.vertical);else{for(this.wrapperEl=document.createElement("div"),this.contentWrapperEl=document.createElement("div"),this.offsetEl=document.createElement("div"),this.maskEl=document.createElement("div"),this.contentEl=document.createElement("div"),this.placeholderEl=document.createElement("div"),this.heightAutoObserverWrapperEl=document.createElement("div"),this.heightAutoObserverEl=document.createElement("div"),this.wrapperEl.classList.add(this.classNames.wrapper),this.contentWrapperEl.classList.add(this.classNames.contentWrapper),this.offsetEl.classList.add(this.classNames.offset),this.maskEl.classList.add(this.classNames.mask),this.contentEl.classList.add(this.classNames.contentEl),this.placeholderEl.classList.add(this.classNames.placeholder),this.heightAutoObserverWrapperEl.classList.add(this.classNames.heightAutoObserverWrapperEl),this.heightAutoObserverEl.classList.add(this.classNames.heightAutoObserverEl);this.el.firstChild;)this.contentEl.appendChild(this.el.firstChild);this.contentWrapperEl.appendChild(this.contentEl),this.offsetEl.appendChild(this.contentWrapperEl),this.maskEl.appendChild(this.offsetEl),this.heightAutoObserverWrapperEl.appendChild(this.heightAutoObserverEl),this.wrapperEl.appendChild(this.heightAutoObserverWrapperEl),this.wrapperEl.appendChild(this.maskEl),this.wrapperEl.appendChild(this.placeholderEl),this.el.appendChild(this.wrapperEl)}if(!this.axis.x.track.el||!this.axis.y.track.el){var e=document.createElement("div"),n=document.createElement("div");e.classList.add(this.classNames.track),n.classList.add(this.classNames.scrollbar),e.appendChild(n),this.axis.x.track.el=e.cloneNode(!0),this.axis.x.track.el.classList.add(this.classNames.horizontal),this.axis.y.track.el=e.cloneNode(!0),this.axis.y.track.el.classList.add(this.classNames.vertical),this.el.appendChild(this.axis.x.track.el),this.el.appendChild(this.axis.y.track.el)}this.axis.x.scrollbar.el=this.axis.x.track.el.querySelector("."+this.classNames.scrollbar),this.axis.y.scrollbar.el=this.axis.y.track.el.querySelector("."+this.classNames.scrollbar),this.options.autoHide||(this.axis.x.scrollbar.el.classList.add(this.classNames.visible),this.axis.y.scrollbar.el.classList.add(this.classNames.visible)),this.el.setAttribute("data-simplebar","init")},e.initListeners=function(){var t=this,e=B(this.el);this.options.autoHide&&this.el.addEventListener("mouseenter",this.onMouseEnter),["mousedown","click","dblclick"].forEach((function(e){t.el.addEventListener(e,t.onPointerEvent,!0)})),["touchstart","touchend","touchmove"].forEach((function(e){t.el.addEventListener(e,t.onPointerEvent,{capture:!0,passive:!0})})),this.el.addEventListener("mousemove",this.onMouseMove),this.el.addEventListener("mouseleave",this.onMouseLeave),this.contentWrapperEl.addEventListener("scroll",this.onScroll),e.addEventListener("resize",this.onWindowResize);var n=!1;this.resizeObserver=new(e.ResizeObserver||C)((function(){n&&t.recalculate()})),this.resizeObserver.observe(this.el),this.resizeObserver.observe(this.contentEl),e.requestAnimationFrame((function(){n=!0})),this.mutationObserver=new e.MutationObserver(this.recalculate),this.mutationObserver.observe(this.contentEl,{childList:!0,subtree:!0,characterData:!0})},e.recalculate=function(){var t=B(this.el);this.elStyles=t.getComputedStyle(this.el),this.isRtl="rtl"===this.elStyles.direction;var e=this.contentEl.offsetWidth,n=this.heightAutoObserverEl.offsetHeight<=1,a=this.heightAutoObserverEl.offsetWidth<=1||e>0,r=this.contentWrapperEl.offsetWidth,i=this.elStyles.overflowX,s=this.elStyles.overflowY;this.contentEl.style.padding=this.elStyles.paddingTop+" "+this.elStyles.paddingRight+" "+this.elStyles.paddingBottom+" "+this.elStyles.paddingLeft,this.wrapperEl.style.margin="-"+this.elStyles.paddingTop+" -"+this.elStyles.paddingRight+" -"+this.elStyles.paddingBottom+" -"+this.elStyles.paddingLeft;var u=this.contentEl.scrollHeight,o=this.contentEl.scrollWidth;this.contentWrapperEl.style.height=n?"auto":"100%",this.placeholderEl.style.width=a?(e||o)+"px":"auto",this.placeholderEl.style.height=u+"px";var l=this.contentWrapperEl.offsetHeight;this.axis.x.isOverflowing=0!==e&&o>e,this.axis.y.isOverflowing=u>l,this.axis.x.isOverflowing="hidden"!==i&&this.axis.x.isOverflowing,this.axis.y.isOverflowing="hidden"!==s&&this.axis.y.isOverflowing,this.axis.x.forceVisible="x"===this.options.forceVisible||!0===this.options.forceVisible,this.axis.y.forceVisible="y"===this.options.forceVisible||!0===this.options.forceVisible,this.hideNativeScrollbar();var d=this.axis.x.isOverflowing?this.scrollbarWidth:0;this.axis.x.isOverflowing=this.axis.x.isOverflowing&&o>r-(this.axis.y.isOverflowing?this.scrollbarWidth:0),this.axis.y.isOverflowing=this.axis.y.isOverflowing&&u>l-d,this.axis.x.scrollbar.size=this.getScrollbarSize("x"),this.axis.y.scrollbar.size=this.getScrollbarSize("y"),this.axis.x.scrollbar.el.style.width=this.axis.x.scrollbar.size+"px",this.axis.y.scrollbar.el.style.height=this.axis.y.scrollbar.size+"px",this.positionScrollbar("x"),this.positionScrollbar("y"),this.toggleTrackVisibility("x"),this.toggleTrackVisibility("y")},e.getScrollbarSize=function(t){if(void 0===t&&(t="y"),!this.axis[t].isOverflowing)return 0;var e,n=this.axis[t].track.el[this.axis[t].offsetSizeAttr];return e=Math.max(~~(n/this.contentEl[this.axis[t].scrollSizeAttr]*n),this.options.scrollbarMinSize),this.options.scrollbarMaxSize&&(e=Math.min(e,this.options.scrollbarMaxSize)),e},e.positionScrollbar=function(e){if(void 0===e&&(e="y"),this.axis[e].isOverflowing){var n=this.contentWrapperEl[this.axis[e].scrollSizeAttr],a=this.axis[e].track.el[this.axis[e].offsetSizeAttr],r=parseInt(this.elStyles[this.axis[e].sizeAttr],10),i=this.axis[e].scrollbar,s=this.contentWrapperEl[this.axis[e].scrollOffsetAttr],u=~~((s="x"===e&&this.isRtl&&t.getRtlHelpers().isRtlScrollingInverted?-s:s)/(n-r)*(a-i.size));u="x"===e&&this.isRtl&&t.getRtlHelpers().isRtlScrollbarInverted?u+(a-i.size):u,i.el.style.transform="x"===e?"translate3d("+u+"px, 0, 0)":"translate3d(0, "+u+"px, 0)"}},e.toggleTrackVisibility=function(t){void 0===t&&(t="y");var e=this.axis[t].track.el,n=this.axis[t].scrollbar.el;this.axis[t].isOverflowing||this.axis[t].forceVisible?(e.style.visibility="visible",this.contentWrapperEl.style[this.axis[t].overflowAttr]="scroll"):(e.style.visibility="hidden",this.contentWrapperEl.style[this.axis[t].overflowAttr]="hidden"),n.style.display=this.axis[t].isOverflowing?"block":"none"},e.hideNativeScrollbar=function(){this.offsetEl.style[this.isRtl?"left":"right"]=this.axis.y.isOverflowing||this.axis.y.forceVisible?"-"+this.scrollbarWidth+"px":0,this.offsetEl.style.bottom=this.axis.x.isOverflowing||this.axis.x.forceVisible?"-"+this.scrollbarWidth+"px":0},e.onMouseMoveForAxis=function(t){void 0===t&&(t="y"),this.axis[t].track.rect=this.axis[t].track.el.getBoundingClientRect(),this.axis[t].scrollbar.rect=this.axis[t].scrollbar.el.getBoundingClientRect(),this.isWithinBounds(this.axis[t].scrollbar.rect)?this.axis[t].scrollbar.el.classList.add(this.classNames.hover):this.axis[t].scrollbar.el.classList.remove(this.classNames.hover),this.isWithinBounds(this.axis[t].track.rect)?(this.showScrollbar(t),this.axis[t].track.el.classList.add(this.classNames.hover)):this.axis[t].track.el.classList.remove(this.classNames.hover)},e.onMouseLeaveForAxis=function(t){void 0===t&&(t="y"),this.axis[t].track.el.classList.remove(this.classNames.hover),this.axis[t].scrollbar.el.classList.remove(this.classNames.hover)},e.showScrollbar=function(t){void 0===t&&(t="y"),this.axis[t].isVisible||(this.axis[t].scrollbar.el.classList.add(this.classNames.visible),this.axis[t].isVisible=!0),this.options.autoHide&&this.hideScrollbars()},e.onDragStart=function(t,e){void 0===e&&(e="y");var n=z(this.el),a=B(this.el);this.axis[e].dragOffset=("y"===e?t.pageY:t.pageX)-this.axis[e].scrollbar.rect[this.axis[e].offsetAttr],this.draggedAxis=e,this.el.classList.add(this.classNames.dragging),n.addEventListener("mousemove",this.drag,!0),n.addEventListener("mouseup",this.onEndDrag,!0),null===this.removePreventClickId?(n.addEventListener("click",this.preventClick,!0),n.addEventListener("dblclick",this.preventClick,!0)):(a.clearTimeout(this.removePreventClickId),this.removePreventClickId=null)},e.onTrackClick=function(t,e){var n=this;if(void 0===e&&(e="y"),this.options.clickOnTrack){var a=B(this.el);this.axis[e].scrollbar.rect=this.axis[e].scrollbar.el.getBoundingClientRect();var r=this.axis[e].scrollbar.rect[this.axis[e].offsetAttr],i=parseInt(this.elStyles[this.axis[e].sizeAttr],10),s=this.contentWrapperEl[this.axis[e].scrollOffsetAttr],u=("y"===e?this.mouseY-r:this.mouseX-r)<0?-1:1,o=-1===u?s-i:s+i;!function t(){var r,i;-1===u?s>o&&(n.contentWrapperEl.scrollTo(((r={})[n.axis[e].offsetAttr]=s-=40,r)),a.requestAnimationFrame(t)):s<o&&(n.contentWrapperEl.scrollTo(((i={})[n.axis[e].offsetAttr]=s+=40,i)),a.requestAnimationFrame(t))}()}},e.getContentElement=function(){return this.contentEl},e.getScrollElement=function(){return this.contentWrapperEl},e.getScrollbarWidth=function(){try{return"none"===getComputedStyle(this.contentWrapperEl,"::-webkit-scrollbar").display||"scrollbarWidth"in document.documentElement.style||"-ms-overflow-style"in document.documentElement.style?0:V()}catch(t){return V()}},e.removeListeners=function(){var t=this,e=B(this.el);this.options.autoHide&&this.el.removeEventListener("mouseenter",this.onMouseEnter),["mousedown","click","dblclick"].forEach((function(e){t.el.removeEventListener(e,t.onPointerEvent,!0)})),["touchstart","touchend","touchmove"].forEach((function(e){t.el.removeEventListener(e,t.onPointerEvent,{capture:!0,passive:!0})})),this.el.removeEventListener("mousemove",this.onMouseMove),this.el.removeEventListener("mouseleave",this.onMouseLeave),this.contentWrapperEl.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onWindowResize),this.mutationObserver.disconnect(),this.resizeObserver.disconnect(),this.recalculate.cancel(),this.onMouseMove.cancel(),this.hideScrollbars.cancel(),this.onWindowResize.cancel()},e.unMount=function(){this.removeListeners(),t.instances.delete(this.el)},e.isWithinBounds=function(t){return this.mouseX>=t.left&&this.mouseX<=t.left+t.width&&this.mouseY>=t.top&&this.mouseY<=t.top+t.height},e.findChild=function(t,e){var n=t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.msMatchesSelector;return Array.prototype.filter.call(t.children,(function(t){return n.call(t,e)}))[0]},t}();Y.defaultOptions={autoHide:!0,forceVisible:!1,clickOnTrack:!0,classNames:{contentEl:"simplebar-content",contentWrapper:"simplebar-content-wrapper",offset:"simplebar-offset",mask:"simplebar-mask",wrapper:"simplebar-wrapper",placeholder:"simplebar-placeholder",scrollbar:"simplebar-scrollbar",track:"simplebar-track",heightAutoObserverWrapperEl:"simplebar-height-auto-observer-wrapper",heightAutoObserverEl:"simplebar-height-auto-observer",visible:"simplebar-visible",horizontal:"simplebar-horizontal",vertical:"simplebar-vertical",hover:"simplebar-hover",dragging:"simplebar-dragging"},scrollbarMinSize:25,scrollbarMaxSize:0,timeout:1e3},Y.instances=new WeakMap,Y.initDOMLoadedElements=function(){document.removeEventListener("DOMContentLoaded",this.initDOMLoadedElements),window.removeEventListener("load",this.initDOMLoadedElements),Array.prototype.forEach.call(document.querySelectorAll("[data-simplebar]"),(function(t){"init"===t.getAttribute("data-simplebar")||Y.instances.has(t)||new Y(t,G(t.attributes))}))},Y.removeObserver=function(){this.globalObserver.disconnect()},Y.initHtmlApi=function(){this.initDOMLoadedElements=this.initDOMLoadedElements.bind(this),"undefined"!=typeof MutationObserver&&(this.globalObserver=new MutationObserver(Y.handleMutations),this.globalObserver.observe(document,{childList:!0,subtree:!0})),"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?window.setTimeout(this.initDOMLoadedElements):(document.addEventListener("DOMContentLoaded",this.initDOMLoadedElements),window.addEventListener("load",this.initDOMLoadedElements))},Y.handleMutations=function(t){t.forEach((function(t){Array.prototype.forEach.call(t.addedNodes,(function(t){1===t.nodeType&&(t.hasAttribute("data-simplebar")?!Y.instances.has(t)&&new Y(t,G(t.attributes)):Array.prototype.forEach.call(t.querySelectorAll("[data-simplebar]"),(function(t){"init"===t.getAttribute("data-simplebar")||Y.instances.has(t)||new Y(t,G(t.attributes))})))})),Array.prototype.forEach.call(t.removedNodes,(function(t){1===t.nodeType&&(t.hasAttribute('[data-simplebar="init"]')?Y.instances.has(t)&&Y.instances.get(t).unMount():Array.prototype.forEach.call(t.querySelectorAll('[data-simplebar="init"]'),(function(t){Y.instances.has(t)&&Y.instances.get(t).unMount()})))}))}))},Y.getOptions=G,A.a&&Y.initHtmlApi(),n.d(e,"a",(function(){return H})),n.d(e,"b",(function(){return U}));class H{constructor(t){this.elRef=t}ngOnInit(){}ngAfterViewInit(){this.SimpleBar=new q(this.elRef.nativeElement,this.options||{})}ngOnDestroy(){this.SimpleBar.unMount(),this.SimpleBar=null}}class U{}},WJkJ:function(t,e){t.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},WKiH:function(t,e,n){var a=n("HYAF"),r="["+n("WJkJ")+"]",i=RegExp("^"+r+r+"*"),s=RegExp(r+r+"*$"),u=function(t){return function(e){var n=String(a(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(s,"")),n}};t.exports={start:u(1),end:u(2),trim:u(3)}},WMd4:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("EY2u"),r=n("LRne"),i=n("z6cu");let s=(()=>{class t{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}}do(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return Object(r.a)(this.value);case"E":return Object(i.a)(this.error);case"C":return Object(a.b)()}throw new Error("unexpected notification kind value")}static createNext(e){return void 0!==e?new t("N",e):t.undefinedValueNotification}static createError(e){return new t("E",void 0,e)}static createComplete(){return t.completeNotification}}return t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t})()},WYrj:function(t,e,n){!function(t){"use strict";var e=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],n=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"];t.defineLocale("dv",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/މކ|މފ/,isPM:function(t){return"މފ"===t},meridiem:function(t,e,n){return t<12?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",ss:"d% ސިކުންތު",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:7,doy:12}})}(n("wd/R"))},Wa4q:function(t,e,n){var a=n("qzZ1"),r="object"==typeof self&&self&&self.Object===Object&&self,i=a||r||Function("return this")();t.exports=i},WaXT:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("2vnA"),i=Object.assign((function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return r.a.apply(void 0,t)}),r.a),s=Object.assign((function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return r.c.apply(void 0,t)}),r.c),u=Object.assign((function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return r.d.apply(void 0,t)}),r.d),o=n("MP8s");n.d(e,"a",(function(){return c}));var l=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},d=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},c=function(){function t(){this._dispose=[]}return Object.defineProperty(t.prototype,"nodes",{get:function(){return this._nodes},set:function(t){this.setNodes(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"marginTop",{get:function(){var t=this.viewportNodes&&this.viewportNodes.length&&this.viewportNodes[0];return(t&&t.parent?t.position-t.parent.position-t.parent.getSelfHeight():0)+"px"},enumerable:!0,configurable:!0}),t.prototype.setNodes=function(t){this._nodes=t},t.prototype.ngOnInit=function(){var t=this;this.virtualScroll=this.treeModel.virtualScroll,this._dispose=[Object(r.e)((function(){return t.virtualScroll.getViewportNodes(t.nodes).map((function(t){return t.index}))}),(function(e){t.viewportNodes=e.map((function(e){return t.nodes[e]}))}),{compareStructural:!0,fireImmediately:!0}),Object(r.e)((function(){return t.nodes}),(function(e){t.viewportNodes=t.virtualScroll.getViewportNodes(e)}))]},t.prototype.ngOnDestroy=function(){this._dispose.forEach((function(t){return t()}))},t.prototype.trackNode=function(t,e){return e.id},l([Object(a.Input)(),d("design:type",Object),d("design:paramtypes",[Object])],t.prototype,"nodes",null),l([Object(a.Input)(),d("design:type",o.a)],t.prototype,"treeModel",void 0),l([u,d("design:type",Object)],t.prototype,"_nodes",void 0),l([Object(a.Input)(),d("design:type",Object)],t.prototype,"templates",void 0),l([u,d("design:type",Array)],t.prototype,"viewportNodes",void 0),l([s,d("design:type",String),d("design:paramtypes",[])],t.prototype,"marginTop",null),l([i,d("design:type",Function),d("design:paramtypes",[Object]),d("design:returntype",void 0)],t.prototype,"setNodes",null),l([Object(a.Component)({selector:"tree-node-collection",encapsulation:a.ViewEncapsulation.None,template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <div [style.margin-top]="marginTop">\n        <tree-node\n          *ngFor="let node of viewportNodes; let i = index; trackBy: trackNode"\n          [node]="node"\n          [index]="i"\n          [templates]="templates"\n        >\n        </tree-node>\n      </div>\n    </ng-container>\n  '})],t)}()},WiuZ:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("978R"),s=n("z/SZ"),u=n("2uy1"),o=n("s7LF"),l=n("+gVj"),d=n("ANnk"),c=n("f/UV"),f=n("aexS"),h=n("KOzp");n("wnGv"),n("GiVz"),n.d(e,"a",(function(){return g})),n.d(e,"b",(function(){return N}));var g=a["ɵcrt"]({encapsulation:0,styles:[[".select-menu-item[_ngcontent-%COMP%]{display:block;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.09);font-size:12px}.select-menu-item[_ngcontent-%COMP%]:hover{background-color:#f5f5f5}.select-menu-item-icon[_ngcontent-%COMP%]{float:left;padding:.5em;width:3em}.select-menu-item-content[_ngcontent-%COMP%]{padding:.5em}"]],data:{}});function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback text-center"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.messages.customValidations[e.parent.context.$implicit])}))}function b(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,null,null,null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.form.showError("filter",a["ɵnov"](e.parent,2))&&n.filter.hasError(e.context.$implicit))}),null)}function m(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,1)],(function(t,e){var n=t(e,3,0,e.component.icons.check);t(e,2,0,n)}),null)}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"small",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),a["ɵted"](3,null,[" ","  "]))],null,(function(t,e){t(e,3,0,e.parent.context.$implicit.description)}))}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,11,"div",[["class","select-menu-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.triggerSelection(t.context.$implicit)&&a),a}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](3,{"help-block disabled":0}),(t()(),a["ɵeld"](4,0,null,null,3,"div",[["class","select-menu-item-icon"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,m)),a["ɵdid"](6,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,["   "])),(t()(),a["ɵeld"](8,0,null,null,3,"div",[["class","select-menu-item-content"]],null,null,null,null,null)),(t()(),a["ɵted"](9,null,[" "," "])),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](11,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component,a=t(e,3,0,!(n.data.length!==n.selectionLimit&&e.context.$implicit.enabled||e.context.$implicit.selected));t(e,2,0,"select-menu-item",a),t(e,6,0,e.context.$implicit.selected),t(e,11,0,e.context.$implicit.description)}),(function(t,e){t(e,9,0,e.context.$implicit.name)}))}function x(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"div",[["class","select-menu-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.addCustomOption()&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,5,"div",[["class","select-menu-item-icon"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](4,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](5,1),(t()(),a["ɵted"](-1,null,["   "])),(t()(),a["ɵeld"](7,0,null,null,1,"div",[["class","select-menu-item-content"]],null,null,null,null,null)),(t()(),a["ɵted"](8,null,[" "," '","' "]))],(function(t,e){var n=t(e,5,0,e.component.icons.tag);t(e,4,0,n)}),(function(t,e){var n=e.component;t(e,8,0,n.messages.add,n.filter.value)}))}function _(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,16777216,null,null,2,"span",[["class","form-text text-muted text-center text-warning"]],null,null,null,null,null)),a["ɵdid"](1,212992,null,0,i.c,[a.ViewContainerRef,s.a,i.a,a.ElementRef,a.Renderer2,u.a],{tooltip:[0,"tooltip"]},null),(t()(),a["ɵted"](2,null,[" "," "])),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component.messages.selectionLimit.tooltip)}),(function(t,e){t(e,2,0,e.component.messages.selectionLimit.text)}))}function T(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","is-invalid"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,_)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.data.length===n.selectionLimit)}),null)}function w(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"form",[["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var r=!0;return"submit"===e&&(r=!1!==a["ɵnov"](t,2).onSubmit(n)&&r),"reset"===e&&(r=!1!==a["ɵnov"](t,2).onReset()&&r),"submit"===e&&(r=!1!==a["ɵnov"](t,5).onSubmit()&&r),r}),null,null)),a["ɵdid"](1,16384,null,0,o.G,[],null,null),a["ɵdid"](2,540672,[["formDir",4]],0,o.l,[[8,null],[8,null]],{form:[0,"form"]},null),a["ɵprd"](2048,null,o.d,null,[o.l]),a["ɵdid"](4,16384,null,0,o.s,[[4,o.d]],null,null),a["ɵdid"](5,16384,null,0,l.d,[],{formGroup:[0,"formGroup"]},null),(t()(),a["ɵeld"](6,0,null,null,10,"div",[],null,null,null,null,null)),(t()(),a["ɵeld"](7,0,null,null,7,"input",[["class","form-control text-center"],["formControlName","filter"],["type","text"]],[[8,"placeholder",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"keyup"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var r=!0,i=t.component;return"input"===e&&(r=!1!==a["ɵnov"](t,8)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,8).onTouched()&&r),"compositionstart"===e&&(r=!1!==a["ɵnov"](t,8)._compositionStart()&&r),"compositionend"===e&&(r=!1!==a["ɵnov"](t,8)._compositionEnd(n.target.value)&&r),"keyup"===e&&(r=!1!==(13==n.keyCode?i.selectOption():i.updateFilter())&&r),r}),null,null)),a["ɵdid"](8,16384,null,0,o.e,[a.Renderer2,a.ElementRef,[2,o.b]],null,null),a["ɵprd"](1024,null,o.p,(function(t){return[t]}),[o.e]),a["ɵdid"](10,671744,null,0,o.j,[[3,o.d],[8,null],[8,null],[6,o.p],[2,o.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,o.q,null,[o.j]),a["ɵdid"](12,16384,null,0,o.r,[[4,o.q]],null,null),a["ɵdid"](13,4210688,null,0,d.a,[[2,c.a],f.a,a.ElementRef],null,null),a["ɵdid"](14,16384,null,0,l.h,[[3,o.d],l.a],{formControlName:[0,"formControlName"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,b)),a["ɵdid"](16,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,v)),a["ɵdid"](18,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,x)),a["ɵdid"](20,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](22,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.form),t(e,5,0,n.form),t(e,10,0,"filter"),t(e,14,0,"filter"),t(e,16,0,n.Object.keys(n.messages.customValidations)),t(e,18,0,n.filteredOptions),t(e,20,0,n.isCreatable()),t(e,22,0,n.data.length===n.selectionLimit)}),(function(t,e){var n=e.component;t(e,0,0,a["ɵnov"](e,4).ngClassUntouched,a["ɵnov"](e,4).ngClassTouched,a["ɵnov"](e,4).ngClassPristine,a["ɵnov"](e,4).ngClassDirty,a["ɵnov"](e,4).ngClassValid,a["ɵnov"](e,4).ngClassInvalid,a["ɵnov"](e,4).ngClassPending),t(e,7,0,n.messages.filter,a["ɵnov"](e,12).ngClassUntouched,a["ɵnov"](e,12).ngClassTouched,a["ɵnov"](e,12).ngClassPristine,a["ɵnov"](e,12).ngClassDirty,a["ɵnov"](e,12).ngClassValid,a["ɵnov"](e,12).ngClassInvalid,a["ɵnov"](e,12).ngClassPending,a["ɵnov"](e,14).validClass,a["ɵnov"](e,14).invalidClass)}))}function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,16777216,null,null,4,"a",[["class","select-menu-edit float-left"],["container","body"],["outsideClick","true"],["placement","bottom"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵdid"](3,212992,null,0,h.c,[h.a,a.ElementRef,a.Renderer2,a.ViewContainerRef,s.a,u.a],{popover:[0,"popover"],placement:[1,"placement"],outsideClick:[2,"outsideClick"],container:[3,"container"]},null),a["ɵncd"](null,0),(t()(),a["ɵand"](0,null,null,0))],(function(t,e){t(e,2,0,"select-menu-edit float-left",e.component.elemClass),t(e,3,0,a["ɵnov"](e.parent,0),"bottom","true","body")}),null)}function S(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted float-left"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" ","\n"]))],null,(function(t,e){t(e,1,0,e.component.messages.empty)}))}function I(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted  float-left"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" ","\n"]))],null,(function(t,e){t(e,1,0,e.component.messages.noOptions)}))}function N(t){return a["ɵvid"](0,[(t()(),a["ɵand"](0,[["popTemplate",2]],null,0,null,w)),(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](2,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,S)),a["ɵdid"](4,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,I)),a["ɵdid"](6,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.customBadges||n.options.length>0),t(e,4,0,0===n.data.length&&!(!n.customBadges&&0===n.options.length)),t(e,6,0,!n.customBadges&&0===n.options.length)}),null)}},Wv1A:function(t,e,n){var a=n("QpVZ");t.exports=function(t){if("string"==typeof t||a(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}},WxRl:function(t,e,n){!function(t){"use strict";var e="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" ");function n(t,e,n,a){var r=t;switch(n){case"s":return a||e?"néhány másodperc":"néhány másodperce";case"ss":return r+(a||e)?" másodperc":" másodperce";case"m":return"egy"+(a||e?" perc":" perce");case"mm":return r+(a||e?" perc":" perce");case"h":return"egy"+(a||e?" óra":" órája");case"hh":return r+(a||e?" óra":" órája");case"d":return"egy"+(a||e?" nap":" napja");case"dd":return r+(a||e?" nap":" napja");case"M":return"egy"+(a||e?" hónap":" hónapja");case"MM":return r+(a||e?" hónap":" hónapja");case"y":return"egy"+(a||e?" év":" éve");case"yy":return r+(a||e?" év":" éve")}return""}function a(t){return(t?"":"[múlt] ")+"["+e[this.day()]+"] LT[-kor]"}t.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(t){return"u"===t.charAt(1).toLowerCase()},meridiem:function(t,e,n){return t<12?!0===n?"de":"DE":!0===n?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return a.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return a.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:n,ss:n,m:n,mm:n,h:n,hh:n,d:n,dd:n,M:n,MM:n,y:n,yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},"X+05":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a={toggleExpanded:"toggleExpanded",activate:"activate",deactivate:"deactivate",nodeActivate:"nodeActivate",nodeDeactivate:"nodeDeactivate",select:"select",deselect:"deselect",focus:"focus",blur:"blur",initialized:"initialized",updateData:"updateData",moveNode:"moveNode",copyNode:"copyNode",event:"event",loadNodeChildren:"loadNodeChildren",changeFilter:"changeFilter",stateChange:"stateChange"}},X709:function(t,e,n){!function(t){"use strict";t.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"[På] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}(e|a)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"e":1===e||2===e?"a":"e")},week:{dow:1,doy:4}})}(n("wd/R"))},XDbj:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("sVev"),r=n("7o/Q");function i(t=o){return e=>e.lift(new s(t))}class s{constructor(t){this.errorFactory=t}call(t,e){return e.subscribe(new u(t,this.errorFactory))}}class u extends r.a{constructor(t,e){super(t),this.errorFactory=e,this.hasValue=!1}_next(t){this.hasValue=!0,this.destination.next(t)}_complete(){if(this.hasValue)return this.destination.complete();{let e;try{e=this.errorFactory()}catch(t){e=t}this.destination.error(e)}}}function o(){return new a.a}},XDpg:function(t,e,n){!function(t){"use strict";t.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"下午"===e||"晚上"===e?t+12:t>=11?t:t+12},meridiem:function(t,e,n){var a=100*t+e;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"周";default:return t}},relativeTime:{future:"%s内",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}})}(n("wd/R"))},XFPk:function(t,e,n){var a=n("qN6l"),r=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return a?void 0!==e[t]:r.call(e,t)}},XFyV:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("oxzT");class r{constructor(){this.icons=a.a}}},XGwC:function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},XLvN:function(t,e,n){!function(t){"use strict";t.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),monthsParseExact:!0,weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",ss:"%d సెకన్లు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},dayOfMonthOrdinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(t,e){return 12===t&&(t=0),"రాత్రి"===e?t<4?t:t+12:"ఉదయం"===e?t:"మధ్యాహ్నం"===e?t>=10?t:t+12:"సాయంత్రం"===e?t+12:void 0},meridiem:function(t,e,n){return t<4?"రాత్రి":t<10?"ఉదయం":t<17?"మధ్యాహ్నం":t<20?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}})}(n("wd/R"))},XNiG:function(t,e,n){"use strict";n.d(e,"b",(function(){return l})),n.d(e,"a",(function(){return d}));var a=n("HDdC"),r=n("7o/Q"),i=n("quSY"),s=n("9ppp"),u=n("Ylt2"),o=n("2QA8");class l extends r.a{constructor(t){super(t),this.destination=t}}let d=(()=>{class t extends a.a{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[o.a](){return new l(this)}lift(t){const e=new c(this,this);return e.operator=t,e}next(t){if(this.closed)throw new s.a;if(!this.isStopped){const{observers:e}=this,n=e.length,a=e.slice();for(let r=0;r<n;r++)a[r].next(t)}}error(t){if(this.closed)throw new s.a;this.hasError=!0,this.thrownError=t,this.isStopped=!0;const{observers:e}=this,n=e.length,a=e.slice();for(let r=0;r<n;r++)a[r].error(t);this.observers.length=0}complete(){if(this.closed)throw new s.a;this.isStopped=!0;const{observers:t}=this,e=t.length,n=t.slice();for(let a=0;a<e;a++)n[a].complete();this.observers.length=0}unsubscribe(){this.isStopped=!0,this.closed=!0,this.observers=null}_trySubscribe(t){if(this.closed)throw new s.a;return super._trySubscribe(t)}_subscribe(t){if(this.closed)throw new s.a;return this.hasError?(t.error(this.thrownError),i.a.EMPTY):this.isStopped?(t.complete(),i.a.EMPTY):(this.observers.push(t),new u.a(this,t))}asObservable(){const t=new a.a;return t.source=this,t}}return t.create=(t,e)=>new c(t,e),t})();class c extends d{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):i.a.EMPTY}}},Xg1U:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("8Y7J"),r=n("978R"),i=(n("SVse"),a["ɵcrt"]({encapsulation:0,styles:[".tooltip[_nghost-%COMP%] {\n      display: block;\n      pointer-events: none;\n    }\n    .bs3.tooltip.top[_nghost-%COMP%] > .arrow[_ngcontent-%COMP%] {\n      margin-left: -2px;\n    }\n    .bs3.tooltip.bottom[_nghost-%COMP%] {\n      margin-top: 0px;\n    }\n    .bs3.bs-tooltip-left[_nghost-%COMP%], .bs3.bs-tooltip-right[_nghost-%COMP%]{\n      margin: 0px;\n    }\n    .bs3.bs-tooltip-right[_nghost-%COMP%]   .arrow[_ngcontent-%COMP%], .bs3.bs-tooltip-left[_nghost-%COMP%]   .arrow[_ngcontent-%COMP%] {\n      margin: .3rem 0;\n    }"],data:{}}));function s(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,0,"div",[["class","tooltip-arrow arrow"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","tooltip-inner"]],null,null,null,null,null)),a["ɵncd"](null,0)],null,null)}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-tooltip-container",[["role","tooltip"]],[[8,"className",0],[2,"show",null],[2,"bs3",null],[1,"id",0]],null,null,s,i)),a["ɵdid"](1,4243456,null,0,r.b,[r.a],null,null)],null,(function(t,e){t(e,0,0,"tooltip in tooltip-"+a["ɵnov"](e,1).placement+" bs-tooltip-"+a["ɵnov"](e,1).placement+" "+a["ɵnov"](e,1).placement+" "+a["ɵnov"](e,1).containerClass,!a["ɵnov"](e,1).isBs3,a["ɵnov"](e,1).isBs3,a["ɵnov"](e,1).id)}))}var o=a["ɵccf"]("bs-tooltip-container",r.b,u,{},{},["*"])},XhiP:function(t,e,n){var a=n("Wa4q");t.exports=a.Uint8Array},XoHu:function(t,e,n){"use strict";function a(t){return null!==t&&"object"==typeof t}n.d(e,"a",(function(){return a}))},Y3RO:function(t,e){t.exports=function(t,e){var n=-1,a=t.length;for(e||(e=Array(a));++n<a;)e[n]=t[n];return e}},Y7HM:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("DH7j");function r(t){return!Object(a.a)(t)&&t-parseFloat(t)+1>=0}},YCpU:function(t,e,n){var a=n("QuoE"),r=n("im1V"),i=n("372+"),s=n("H+zY"),u=n("yb/u"),o=Math.max;t.exports=function(t,e,n,l){t=r(t)?t:u(t),n=n&&!l?s(n):0;var d=t.length;return n<0&&(n=o(d+n,0)),i(t)?n<=d&&t.indexOf(e,n)>-1:!!d&&a(t,e,n)>-1}},YGUN:function(t,e){t.exports=function(t){return function(){return t}}},YLnZ:function(t,e){t.exports=function(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in Object(n))}}},YNrV:function(t,e,n){"use strict";var a=n("g6v/"),r=n("0Dky"),i=n("33Wh"),s=n("dBg+"),u=n("0eef"),o=n("ewvW"),l=n("RK3t"),d=Object.assign,c=Object.defineProperty;t.exports=!d||r((function(){if(a&&1!==d({b:1},d(c({},"a",{enumerable:!0,get:function(){c(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=d({},t)[n]||"abcdefghijklmnopqrst"!=i(d({},e)).join("")}))?function(t,e){for(var n=o(t),r=arguments.length,d=1,c=s.f,f=u.f;r>d;)for(var h,g=l(arguments[d++]),p=c?i(g).concat(c(g)):i(g),b=p.length,m=0;b>m;)h=p[m++],a&&!f.call(g,h)||(n[h]=g[h]);return n}:d},YRex:function(t,e,n){!function(t){"use strict";t.defineLocale("ug-cn",{months:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),monthsShort:"يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),weekdays:"يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە".split("_"),weekdaysShort:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),weekdaysMin:"يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY-يىلىM-ئاينىڭD-كۈنى",LLL:"YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm",LLLL:"dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm"},meridiemParse:/يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,meridiemHour:function(t,e){return 12===t&&(t=0),"يېرىم كېچە"===e||"سەھەر"===e||"چۈشتىن بۇرۇن"===e?t:"چۈشتىن كېيىن"===e||"كەچ"===e?t+12:t>=11?t:t+12},meridiem:function(t,e,n){var a=100*t+e;return a<600?"يېرىم كېچە":a<900?"سەھەر":a<1130?"چۈشتىن بۇرۇن":a<1230?"چۈش":a<1800?"چۈشتىن كېيىن":"كەچ"},calendar:{sameDay:"[بۈگۈن سائەت] LT",nextDay:"[ئەتە سائەت] LT",nextWeek:"[كېلەركى] dddd [سائەت] LT",lastDay:"[تۆنۈگۈن] LT",lastWeek:"[ئالدىنقى] dddd [سائەت] LT",sameElse:"L"},relativeTime:{future:"%s كېيىن",past:"%s بۇرۇن",s:"نەچچە سېكونت",ss:"%d سېكونت",m:"بىر مىنۇت",mm:"%d مىنۇت",h:"بىر سائەت",hh:"%d سائەت",d:"بىر كۈن",dd:"%d كۈن",M:"بىر ئاي",MM:"%d ئاي",y:"بىر يىل",yy:"%d يىل"},dayOfMonthOrdinalParse:/\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"-كۈنى";case"w":case"W":return t+"-ھەپتە";default:return t}},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:7}})}(n("wd/R"))},"Yj/I":function(t,e,n){var a=n("l9nr"),r=n("im1V"),i=n("FGWQ");t.exports=function(t){return function(e,n,s){var u=Object(e);if(!r(e)){var o=a(n,3);e=i(e),n=function(t){return o(u[t],t,u)}}var l=t(e,n,s);return l>-1?u[o?e[l]:l]:void 0}}},Ylt2:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("quSY");class r extends a.a{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}},Yrry:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("8Y7J");class r{constructor(t){this.domSanitizer=t}transform(t){return this.domSanitizer.sanitize(a.SecurityContext.HTML,t)}}},Ytn0:function(t,e,n){var a=n("sEik");t.exports=function(t,e){var n=t.__data__;return a(e)?n["string"==typeof e?"string":"hash"]:n.map}},YuTi:function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},YzqF:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(){this._queue=[],this._pending=!1}return t.prototype.isLocked=function(){return this._pending},t.prototype.acquire=function(){var t=this,e=new Promise((function(e){return t._queue.push(e)}));return this._pending||this._dispatchNext(),e},t.prototype.runExclusive=function(t){return this.acquire().then((function(e){var n;try{n=t()}catch(a){throw e(),a}return Promise.resolve(n).then((function(t){return e(),t}),(function(t){throw e(),t}))}))},t.prototype._dispatchNext=function(){this._queue.length>0?(this._pending=!0,this._queue.shift()(this._dispatchNext.bind(this))):this._pending=!1},t}();e.default=a},Z21x:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("sne2");class a{constructor(t,e){this.location=t,this.actionLabels=e,this.name=this.actionLabels.CANCEL,this.back=()=>this.location.back()}}},Z2DA:function(t,e,n){var a=n("vJUC"),r=n("+FhV"),i=n("1Yk6"),s=n("kA6G");t.exports=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)a(e,i(t)),t=r(t);return e}:s},Z4QM:function(t,e,n){!function(t){"use strict";var e=["جنوري","فيبروري","مارچ","اپريل","مئي","جون","جولاءِ","آگسٽ","سيپٽمبر","آڪٽوبر","نومبر","ڊسمبر"],n=["آچر","سومر","اڱارو","اربع","خميس","جمع","ڇنڇر"];t.defineLocale("sd",{months:e,monthsShort:e,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY HH:mm"},meridiemParse:/صبح|شام/,isPM:function(t){return"شام"===t},meridiem:function(t,e,n){return t<12?"صبح":"شام"},calendar:{sameDay:"[اڄ] LT",nextDay:"[سڀاڻي] LT",nextWeek:"dddd [اڳين هفتي تي] LT",lastDay:"[ڪالهه] LT",lastWeek:"[گزريل هفتي] dddd [تي] LT",sameElse:"L"},relativeTime:{future:"%s پوء",past:"%s اڳ",s:"چند سيڪنڊ",ss:"%d سيڪنڊ",m:"هڪ منٽ",mm:"%d منٽ",h:"هڪ ڪلاڪ",hh:"%d ڪلاڪ",d:"هڪ ڏينهن",dd:"%d ڏينهن",M:"هڪ مهينو",MM:"%d مهينا",y:"هڪ سال",yy:"%d سال"},preparse:function(t){return t.replace(/،/g,",")},postformat:function(t){return t.replace(/,/g,"،")},week:{dow:1,doy:4}})}(n("wd/R"))},ZAMP:function(t,e,n){!function(t){"use strict";t.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(t,e){return 12===t&&(t=0),"pagi"===e?t:"tengahari"===e?t>=11?t:t+12:"petang"===e||"malam"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"pagi":t<15?"tengahari":t<19?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",ss:"%d saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}})}(n("wd/R"))},ZDA6:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=n("IheW"),i=n("pL04");let s=(()=>{class t{constructor(t){this.http=t}list(){return this.http.get("ui-api/scope")}}return t.ngInjectableDef=a["ɵɵdefineInjectable"]({factory:function(){return new t(a["ɵɵinject"](r.c))},token:t,providedIn:i.a}),t})()},ZEkX:function(t,e,n){"use strict";n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return o})),n("Mxhz");var a=n("0+/T"),r=(n("sne2"),n("x38r")),i=n("oxzT"),s=n("mtw6"),u=n("vCyI");n("a0VL"),n("nSDx"),n("aexS"),n("9nlD");const o=new(n("EgGo").a)("user-management/users");class l{constructor(t,e,n,a,r,s,o,l,d){this.userService=t,this.emptyPipe=e,this.modalService=n,this.notificationService=a,this.authStorageService=r,this.i18n=s,this.urlBuilder=o,this.cdDatePipe=l,this.actionLabels=d,this.selection=new u.a,this.permission=this.authStorageService.getPermissions().user,this.tableActions=[{permission:"create",icon:i.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE},{permission:"update",icon:i.a.edit,routerLink:()=>this.selection.first()&&this.urlBuilder.getEdit(this.selection.first().username),name:this.actionLabels.EDIT},{permission:"delete",icon:i.a.destroy,click:()=>this.deleteUserModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:this.i18n("Username"),prop:"username",flexGrow:1},{name:this.i18n("Name"),prop:"name",flexGrow:1,pipe:this.emptyPipe},{name:this.i18n("Email"),prop:"email",flexGrow:1,pipe:this.emptyPipe},{name:this.i18n("Roles"),prop:"roles",flexGrow:1,cellTemplate:this.userRolesTpl},{name:this.i18n("Enabled"),prop:"enabled",flexGrow:1,cellTransformation:r.a.checkIcon},{name:this.i18n("Password expiration date"),prop:"pwdExpirationDate",flexGrow:1,pipe:this.cdDatePipe}]}getUsers(){this.userService.list().subscribe(t=>{t.forEach(t=>{t.pwdExpirationDate&&t.pwdExpirationDate>0&&(t.pwdExpirationDate=1e3*t.pwdExpirationDate)}),this.users=t})}updateSelection(t){this.selection=t}deleteUser(t){this.userService.delete(t).subscribe(()=>{this.getUsers(),this.modalRef.hide(),this.notificationService.show(s.a.success,this.i18n('Deleted user "{{username}}"',{username:t}))},()=>{this.modalRef.content.stopLoadingSpinner()})}deleteUserModal(){const t=this.authStorageService.getUsername(),e=this.selection.first().username;t!==e?this.modalRef=this.modalService.show(a.a,{initialState:{itemDescription:"User",itemNames:[e],submitAction:()=>this.deleteUser(e)}}):this.notificationService.show(s.a.error,this.i18n('Failed to delete user "{{username}}"',{username:e}),this.i18n('You are currently logged in as "{{username}}".',{username:e}))}}},ZPW6:function(t,e,n){var a=n("w/8D");t.exports=function(t,e,n){"__proto__"==e&&a?a(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},ZUHj:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("51Dv"),r=n("SeVD"),i=n("HDdC");function s(t,e,n,s,u=new a.a(t,n,s)){if(!u.closed)return e instanceof i.a?e.subscribe(u):Object(r.a)(e)(u)}},ZUd8:function(t,e,n){var a=n("ppGB"),r=n("HYAF"),i=function(t){return function(e,n){var i,s,u=String(r(e)),o=a(n),l=u.length;return o<0||o>=l?t?"":void 0:(i=u.charCodeAt(o))<55296||i>56319||o+1===l||(s=u.charCodeAt(o+1))<56320||s>57343?t?u.charAt(o):i:t?u.slice(o,o+2):s-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},ZY2H:function(t,e,n){var a=n("/Gx3"),r=n("QUkU");t.exports=function(t){return a((function(e,n){var a=-1,i=n.length,s=i>1?n[i-1]:void 0,u=i>2?n[2]:void 0;for(s=t.length>3&&"function"==typeof s?(i--,s):void 0,u&&r(n[0],n[1],u)&&(s=i<3?void 0:s,i=1),e=Object(e);++a<i;){var o=n[a];o&&t(e,o,a,s)}return e}))}},Zduo:function(t,e,n){!function(t){"use strict";t.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato".split("_"),weekdaysShort:"dim_lun_mard_merk_ĵaŭ_ven_sab".split("_"),weekdaysMin:"di_lu_ma_me_ĵa_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D[-a de] MMMM, YYYY",LLL:"D[-a de] MMMM, YYYY HH:mm",LLLL:"dddd, [la] D[-a de] MMMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(t){return"p"===t.charAt(0).toLowerCase()},meridiem:function(t,e,n){return t>11?n?"p.t.m.":"P.T.M.":n?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"post %s",past:"antaŭ %s",s:"sekundoj",ss:"%d sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},dayOfMonthOrdinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}})}(n("wd/R"))},ZfDv:function(t,e,n){var a=n("hh1v"),r=n("6LWA"),i=n("tiKp")("species");t.exports=function(t,e){var n;return r(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!r(n.prototype)?a(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},ZhuC:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",a.TemplateRef)],t.prototype,"template",void 0),i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Component)({encapsulation:a.ViewEncapsulation.None,selector:"tree-loading-component",template:'\n    <span *ngIf="!template">loading...</span>\n    <ng-container\n      [ngTemplateOutlet]="template"\n      [ngTemplateOutletContext]="{ $implicit: node }">\n    </ng-container>\n  '})],t)}()},a0VL:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this.datePipe=t}transform(t){return null===t||""===t?"":this.datePipe.transform(t,"shortDate")+" "+this.datePipe.transform(t,"mediumTime")}}},a1D2:function(t,e,n){var a=n("43VP");t.exports=function(t,e){var n;return a(t,(function(t,a,r){return!(n=e(t,a,r))})),!!n}},a278:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("QC43"),i=n("XFyV"),s=n("DqMs"),u=n("/NlG"),o=n("GiVz"),l=n("i4WA"),d=n("6qls"),c=n("tz6c"),f=n("s7LF"),h=n("ANnk"),g=n("f/UV"),p=n("aexS"),b=n("SVse");n("insk"),n("cUpR"),n("20UP"),n.d(e,"a",(function(){return m})),n.d(e,"b",(function(){return w}));var m=a["ɵcrt"]({encapsulation:0,styles:[[".grafana[_ngcontent-%COMP%]{width:100%;height:600px;z-index:0}.grafana_one[_ngcontent-%COMP%]{height:400px}.grafana_two[_ngcontent-%COMP%]{height:750px}.grafana_three[_ngcontent-%COMP%]{height:900px}.grafana_four[_ngcontent-%COMP%]{height:1160px}.timepicker[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{font-weight:700}.dropdown-menu[_ngcontent-%COMP%]{top:20px;right:20px;left:auto}"]],data:{}});function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,r.b,r.a)),a["ɵdid"](1,49152,null,0,i.a,[],null,null),(t()(),a["ɵted"](-1,0,["Loading panel data..."]))],null,null)}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,s.b,s.a)),a["ɵdid"](1,114688,null,0,u.a,[o.a],{type:[0,"type"]},null),(t()(),a["ɵted"](-1,0,["Please consult the "])),(t()(),a["ɵeld"](3,0,null,0,1,"cd-doc",[["section","grafana"]],null,null,null,l.b,l.a)),a["ɵdid"](4,114688,null,0,d.a,[c.a,o.a],{section:[0,"section"]},null),(t()(),a["ɵted"](-1,0,[" on how to configure and enable the monitoring functionality."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"grafana")}),null)}function x(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,s.b,s.a)),a["ɵdid"](1,114688,null,0,u.a,[o.a],{type:[0,"type"]},null),(t()(),a["ɵted"](-1,0,["Grafana Dashboard doesn't exist. Please refer to "])),(t()(),a["ɵeld"](3,0,null,0,1,"cd-doc",[["section","grafana"]],null,null,null,l.b,l.a)),a["ɵdid"](4,114688,null,0,d.a,[c.a,o.a],{section:[0,"section"]},null),(t()(),a["ɵted"](-1,0,[" on how to add dashboards to Grafana."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"grafana")}),null)}function _(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),a["ɵdid"](1,147456,null,0,f.v,[a.ElementRef,a.Renderer2,[2,f.A]],{ngValue:[0,"ngValue"]},null),a["ɵdid"](2,147456,null,0,f.F,[a.ElementRef,a.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),a["ɵted"](3,null,[""," "]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.name)}))}function T(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,25,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,18,"div",[["class","row"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,17,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),a["ɵeld"](3,0,null,null,16,"div",[["class","form-inline timepicker"]],null,null,null,null,null)),(t()(),a["ɵeld"](4,0,null,null,1,"label",[["class","ml-1 my-1 col-form-label"],["for","timepicker"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Grafana Time Picker"])),(t()(),a["ɵeld"](6,0,null,null,8,"select",[["class","custom-select my-1 mx-3"],["id","timepicker"],["name","timepicker"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],(function(t,e,n){var r=!0,i=t.component;return"change"===e&&(r=!1!==a["ɵnov"](t,7).onChange(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,7).onTouched()&&r),"ngModelChange"===e&&(r=!1!==(i.time=n)&&r),"ngModelChange"===e&&(r=!1!==i.onTimepickerChange(n)&&r),r}),null,null)),a["ɵdid"](7,16384,null,0,f.A,[a.Renderer2,a.ElementRef],null,null),a["ɵprd"](1024,null,f.p,(function(t){return[t]}),[f.A]),a["ɵdid"](9,671744,null,0,f.u,[[8,null],[8,null],[8,null],[6,f.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),a["ɵprd"](2048,null,f.q,null,[f.u]),a["ɵdid"](11,16384,null,0,f.r,[[4,f.q]],null,null),a["ɵdid"](12,4210688,null,0,h.a,[[2,g.a],p.a,a.ElementRef],null,null),(t()(),a["ɵand"](16777216,null,null,1,null,_)),a["ɵdid"](14,278528,null,0,b.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](15,0,null,null,4,"button",[["class","btn btn-light my-1"],["title","Reset Settings"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.reset()&&a),a}),null,null)),(t()(),a["ɵeld"](16,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](18,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](19,1),(t()(),a["ɵeld"](20,0,null,null,5,"div",[["class","row"]],null,null,null,null,null)),(t()(),a["ɵeld"](21,0,null,null,4,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),a["ɵeld"](22,0,null,null,3,"div",[["class","grafana-container"]],null,null,null,null,null)),(t()(),a["ɵeld"](23,0,[["iframe",1]],null,2,"iframe",[["class","grafana"],["frameborder","0"],["id","iframe"],["scrolling","no"]],[[8,"src",5]],null,null,null,null)),a["ɵprd"](512,null,b["ɵNgClassImpl"],b["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](25,278528,null,0,b.NgClass,[b["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null)],(function(t,e){var n=e.component;t(e,9,0,"timepicker",n.time),t(e,14,0,n.grafanaTimes);var a=t(e,19,0,n.icons.undo);t(e,18,0,a),t(e,25,0,"grafana",n.panelStyle)}),(function(t,e){var n=e.component;t(e,6,0,a["ɵnov"](e,11).ngClassUntouched,a["ɵnov"](e,11).ngClassTouched,a["ɵnov"](e,11).ngClassPristine,a["ɵnov"](e,11).ngClassDirty,a["ɵnov"](e,11).ngClassValid,a["ɵnov"](e,11).ngClassInvalid,a["ɵnov"](e,11).ngClassPending),t(e,23,0,n.grafanaSrc)}))}function w(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](1,16384,null,0,b.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,v)),a["ɵdid"](3,16384,null,0,b.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,x)),a["ɵdid"](5,16384,null,0,b.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](7,16384,null,0,b.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.loading&&n.grafanaExist),t(e,3,0,!n.grafanaExist),t(e,5,0,!n.dashboardExist),t(e,7,0,n.grafanaExist&&n.dashboardExist)}),null)}},a40w:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("EEJc"),i=n("ajRT"),s=n("s7LF"),u=n("+gVj"),o=n("SVse"),l=n("gp3X"),d=n("sb0X"),c=n("KVJa"),f=n("Z21x"),h=n("sne2"),g=n("OLbh"),p=n("LqlI");n.d(e,"a",(function(){return _}));var b=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function m(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.description)}))}function v(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,22,"cd-modal",[],null,[[null,"hide"]],(function(t,e,n){var a=!0;return"hide"===e&&(a=!1!==t.component.cancel()&&a),a}),r.c,r.b)),a["ɵdid"](1,49152,null,0,i.a,[],null,{hide:"hide"}),(t()(),a["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](3,null,["",""])),(t()(),a["ɵeld"](4,0,null,1,18,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,17,"form",[["name","confirmationForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var r=!0;return"submit"===e&&(r=!1!==a["ɵnov"](t,7).onSubmit(n)&&r),"reset"===e&&(r=!1!==a["ɵnov"](t,7).onReset()&&r),"submit"===e&&(r=!1!==a["ɵnov"](t,10).onSubmit()&&r),r}),null,null)),a["ɵdid"](6,16384,null,0,s.G,[],null,null),a["ɵdid"](7,540672,[["formDir",4]],0,s.l,[[8,null],[8,null]],{form:[0,"form"]},null),a["ɵprd"](2048,null,s.d,null,[s.l]),a["ɵdid"](9,16384,null,0,s.s,[[4,s.d]],null,null),a["ɵdid"](10,16384,null,0,u.d,[],{formGroup:[0,"formGroup"]},null),(t()(),a["ɵeld"](11,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,m)),a["ɵdid"](13,540672,null,0,o.NgTemplateOutlet,[a.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,y)),a["ɵdid"](15,16384,null,0,o.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](16,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),a["ɵeld"](17,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](18,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0,r=t.component;return"submitAction"===e&&(a=!1!==r.onSubmit(r.confirmationForm.value)&&a),a}),l.b,l.a)),a["ɵdid"](19,114688,null,0,d.a,[a.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),a["ɵted"](20,0,[" "," "])),(t()(),a["ɵeld"](21,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,c.b,c.a)),a["ɵdid"](22,49152,null,0,f.a,[o.Location,h.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,7,0,n.confirmationForm),t(e,10,0,n.confirmationForm),t(e,13,0,n.bodyContext,n.bodyTpl),t(e,15,0,n.description),t(e,19,0,n.confirmationForm),t(e,22,0,"Cancel",n.boundCancel)}),(function(t,e){var n=e.component;t(e,3,0,n.titleText),t(e,5,0,a["ɵnov"](e,9).ngClassUntouched,a["ɵnov"](e,9).ngClassTouched,a["ɵnov"](e,9).ngClassPristine,a["ɵnov"](e,9).ngClassDirty,a["ɵnov"](e,9).ngClassValid,a["ɵnov"](e,9).ngClassInvalid,a["ɵnov"](e,9).ngClassPending),t(e,20,0,n.buttonText)}))}function x(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-confirmation-modal",[],null,null,null,v,b)),a["ɵdid"](1,245760,null,0,g.a,[p.a,p.b],null,null)],(function(t,e){t(e,1,0)}),null)}var _=a["ɵccf"]("cd-confirmation-modal",g.a,x,{},{},[])},a96k:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e,n,a=!0){this.selected=t,this.name=e,this.description=n,this.enabled=a}}},aGrj:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("eIep");function r(t,e){return e?Object(a.a)(()=>t,e):Object(a.a)(()=>t)}},aHM3:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("8Y7J"),n("s7LF");class a{static forRoot(){return{ngModule:a,providers:[]}}}},aHcz:function(t,e){t.exports=function(t){return t}},aIdf:function(t,e,n){!function(t){"use strict";function e(t,e,n){return t+" "+function(t,e){return 2===e?function(t){var e={m:"v",b:"v",d:"z"};return void 0===e[t.charAt(0)]?t:e[t.charAt(0)]+t.substring(1)}(t):t}({mm:"munutenn",MM:"miz",dd:"devezh"}[n],t)}t.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h[e]mm A",LTS:"h[e]mm:ss A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY h[e]mm A",LLLL:"dddd, D [a viz] MMMM YYYY h[e]mm A"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",ss:"%d eilenn",m:"ur vunutenn",mm:e,h:"un eur",hh:"%d eur",d:"un devezh",dd:e,M:"ur miz",MM:e,y:"ur bloaz",yy:function(t){switch(function t(e){return e>9?t(e%10):e}(t)){case 1:case 3:case 4:case 5:case 9:return t+" bloaz";default:return t+" vloaz"}}},dayOfMonthOrdinalParse:/\d{1,2}(añ|vet)/,ordinal:function(t){return t+(1===t?"añ":"vet")},week:{dow:1,doy:4}})}(n("wd/R"))},aIsn:function(t,e,n){!function(t){"use strict";t.defineLocale("mi",{months:"Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea".split("_"),monthsShort:"Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),monthsRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,monthsShortStrictRegex:/(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,weekdays:"Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei".split("_"),weekdaysShort:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),weekdaysMin:"Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [i] HH:mm",LLLL:"dddd, D MMMM YYYY [i] HH:mm"},calendar:{sameDay:"[i teie mahana, i] LT",nextDay:"[apopo i] LT",nextWeek:"dddd [i] LT",lastDay:"[inanahi i] LT",lastWeek:"dddd [whakamutunga i] LT",sameElse:"L"},relativeTime:{future:"i roto i %s",past:"%s i mua",s:"te hēkona ruarua",ss:"%d hēkona",m:"he meneti",mm:"%d meneti",h:"te haora",hh:"%d haora",d:"he ra",dd:"%d ra",M:"he marama",MM:"%d marama",y:"he tau",yy:"%d tau"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},aKKh:function(t,e,n){var a=n("ktBm");t.exports=function(t,e){var n=this.__data__,r=a(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this}},aQkU:function(t,e,n){!function(t){"use strict";t.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(t){var e=t%10,n=t%100;return 0===t?t+"-ев":0===n?t+"-ен":n>10&&n<20?t+"-ти":1===e?t+"-ви":2===e?t+"-ри":7===e||8===e?t+"-ми":t+"-ти"},week:{dow:1,doy:7}})}(n("wd/R"))},aT2Y:function(t,e,n){var a=n("o3PY"),r=n("UnOm"),i=n("mWP/"),s=n("bdl3"),u=n("aKKh");function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}o.prototype.clear=a,o.prototype.delete=r,o.prototype.get=i,o.prototype.has=s,o.prototype.set=u,t.exports=o},aTV8:function(t,e,n){var a=n("LxgN"),r=n("l9nr"),i=n("a1D2"),s=n("0GLT"),u=n("QUkU");t.exports=function(t,e,n){var o=s(t)?a:i;return n&&u(t,e,n)&&(e=void 0),o(t,r(e,3))}},aXbf:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("LvDl"),r=n("8Y7J");let i=(()=>{class t{constructor(){}format_number(t,e,n,r=1){if(a.isString(t)&&(t=Number(t)),!a.isNumber(t))return"-";let i=t<1?0:Math.floor(Math.log(t)/Math.log(e));i=i>=n.length?n.length-1:i;let s=a.round(t/Math.pow(e,i),r).toString();return""===s?"-":(""!==n[i]&&(s=`${s} ${n[i]}`),s)}toBytes(t,e=null){const n=["b","k","m","g","t","p","e","z","y"],r=RegExp("^(\\d+(.\\d+)?) ?(["+n.join("")+"]?(b|ib|B/s)?)?$","i").exec(t);if(null===r)return e;let i=parseFloat(r[1]);return a.isString(r[3])&&(i*=Math.pow(1024,n.indexOf(r[3].toLowerCase()[0]))),Math.round(i)}toMilliseconds(t){const e=/^\s*(\d+)\s*(ms)?\s*$/i.exec(t);return null!==e?+e[1]:0}toIops(t){const e=/^\s*(\d+)\s*(IOPS)?\s*$/i.exec(t);return null!==e?+e[1]:0}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})()},aexS:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("2Vo4"),r=n("jKX/"),i=n("8Y7J");let s=(()=>{class t{constructor(){this.isPwdDisplayedSource=new a.a(!1),this.isPwdDisplayed$=this.isPwdDisplayedSource.asObservable()}set(t,e={},n=!1,a=null,i=!1){localStorage.setItem("dashboard_username",t),localStorage.setItem("dashboard_permissions",JSON.stringify(new r.a(e))),localStorage.setItem("user_pwd_expiration_date",String(a)),localStorage.setItem("user_pwd_update_required",String(i)),localStorage.setItem("sso",String(n))}remove(){localStorage.removeItem("dashboard_username"),localStorage.removeItem("user_pwd_expiration_data"),localStorage.removeItem("user_pwd_update_required")}isLoggedIn(){return null!==localStorage.getItem("dashboard_username")}getUsername(){return localStorage.getItem("dashboard_username")}getPermissions(){return JSON.parse(localStorage.getItem("dashboard_permissions")||JSON.stringify(new r.a({})))}getPwdExpirationDate(){return Number(localStorage.getItem("user_pwd_expiration_date"))}getPwdUpdateRequired(){return"true"===localStorage.getItem("user_pwd_update_required")}isSSO(){return"true"===localStorage.getItem("sso")}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})()},afO8:function(t,e,n){var a,r,i,s=n("f5p1"),u=n("2oRo"),o=n("hh1v"),l=n("kRJp"),d=n("UTVS"),c=n("93I0"),f=n("0BK2");if(s){var h=new(0,u.WeakMap),g=h.get,p=h.has,b=h.set;a=function(t,e){return b.call(h,t,e),e},r=function(t){return g.call(h,t)||{}},i=function(t){return p.call(h,t)}}else{var m=c("state");f[m]=!0,a=function(t,e){return l(t,m,e),e},r=function(t){return d(t,m)?t[m]:{}},i=function(t){return d(t,m)}}t.exports={set:a,get:r,has:i,enforce:function(t){return i(t)?r(t):a(t,{})},getterFor:function(t){return function(e){var n;if(!o(e)||(n=r(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},ajRT:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("8Y7J");class r{constructor(){this.hide=new a.EventEmitter}close(){this.modalRef&&this.modalRef.hide(),this.hide.emit()}}},atuK:function(t,e,n){"use strict";n.d(e,"a",(function(){return v})),n.d(e,"b",(function(){return E})),n.d(e,"d",(function(){return H})),n.d(e,"c",(function(){return rt}));var a=n("8Y7J"),r=n("ienR"),i=n("SVse"),s=(n("s7LF"),n("2uy1")),u=a["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"datepickerAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-days-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onHoverWeek"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.dayHoverHandler(n)&&a),"onHoverWeek"===e&&(a=!1!==r.weekHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.daySelectHandler(n)&&a),a}),It,xt)),a["ɵdid"](1,49152,null,0,r.B,[r.a],{calendar:[0,"calendar"],options:[1,"options"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit,a["ɵunv"](e,1,1,a["ɵnov"](e,2).transform(n.options)))}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,3).transform(r.daysCalendar)))?null:n.length)>1)}))}function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,o)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.daysCalendar)))}),null)}function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-month-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.monthHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.monthSelectHandler(n)&&a),a}),At,Nt)),a["ɵdid"](1,49152,null,0,r.C,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,d)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.monthsCalendar)))}),null)}function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-years-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.yearHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.yearSelectHandler(n)&&a),a}),Mt,Lt)),a["ɵdid"](1,49152,null,0,r.E,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function h(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,f)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.yearsCalendar)))}),null)}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-buttons"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-success"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Apply"])),(t()(),a["ɵeld"](3,0,null,null,1,"button",[["class","btn btn-default"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Cancel"]))],null,null)}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","bs-datepicker-custom-range"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"bs-custom-date-view",[],null,null,null,gt,ct)),a["ɵdid"](2,49152,null,0,r.y,[],{ranges:[0,"ranges"]},null)],(function(t,e){t(e,2,0,e.component._customRangesFish)}),null)}function b(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"div",[["class","bs-datepicker"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵeld"](3,0,null,null,11,"div",[["class","bs-datepicker-container"]],[[24,"@datepickerAnimation",0]],[[null,"@datepickerAnimation.done"]],(function(t,e,n){var a=!0;return"@datepickerAnimation.done"===e&&(a=!1!==t.component.positionServiceEnable()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,8,"div",[["class","bs-calendar-container"],["role","application"]],null,null,null,null,null)),a["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](8,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,c)),a["ɵdid"](10,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,h)),a["ɵdid"](12,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](14,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,p)),a["ɵdid"](16,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"bs-datepicker",n.containerClass),t(e,5,0,a["ɵunv"](e,5,0,a["ɵnov"](e,6).transform(n.viewMode))),t(e,8,0,"day"),t(e,10,0,"month"),t(e,12,0,"year"),t(e,14,0,!1),t(e,16,0,!1)}),(function(t,e){t(e,3,0,e.component.animationState)}))}function m(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,b)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,a["ɵunv"](e,1,0,a["ɵnov"](e,2).transform(n.viewMode)))}),null)}function y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-datepicker-container",[["aria-label","calendar"],["class","bottom"],["role","dialog"]],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,3)._stopPropagation(n)&&r),r}),m,u)),a["ɵprd"](512,null,r.t,r.t,[]),a["ɵprd"](512,null,r.u,r.u,[r.v,r.l]),a["ɵdid"](3,245760,null,0,r.b,[a.Renderer2,r.a,r.t,a.ElementRef,r.v,r.u,s.a],null,null)],(function(t,e){t(e,3,0)}),null)}var v=a["ɵccf"]("bs-datepicker-container",r.b,y,{},{},[]),x=a["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"datepickerAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function _(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-days-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onHoverWeek"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.dayHoverHandler(n)&&a),"onHoverWeek"===e&&(a=!1!==r.weekHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.daySelectHandler(n)&&a),a}),It,xt)),a["ɵdid"](1,49152,null,0,r.B,[r.a],{calendar:[0,"calendar"],options:[1,"options"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit,a["ɵunv"](e,1,1,a["ɵnov"](e,2).transform(n.options)))}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,3).transform(r.daysCalendar)))?null:n.length)>1)}))}function T(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,_)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.daysCalendar)))}),null)}function w(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-month-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.monthHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.monthSelectHandler(n)&&a),a}),At,Nt)),a["ɵdid"](1,49152,null,0,r.C,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function O(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,w)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.monthsCalendar)))}),null)}function S(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-years-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.yearHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.yearSelectHandler(n)&&a),a}),Mt,Lt)),a["ɵdid"](1,49152,null,0,r.E,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function I(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,S)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.yearsCalendar)))}),null)}function N(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-buttons"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-success"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Apply"])),(t()(),a["ɵeld"](3,0,null,null,1,"button",[["class","btn btn-default"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Cancel"]))],null,null)}function C(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","bs-datepicker-custom-range"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"bs-custom-date-view",[],null,null,null,gt,ct)),a["ɵdid"](2,49152,null,0,r.y,[],{ranges:[0,"ranges"]},null)],(function(t,e){t(e,2,0,e.component._customRangesFish)}),null)}function R(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"div",[["class","bs-datepicker"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵeld"](3,0,null,null,11,"div",[["class","bs-datepicker-container"]],[[24,"@datepickerAnimation",0]],[[null,"@datepickerAnimation.done"]],(function(t,e,n){var a=!0;return"@datepickerAnimation.done"===e&&(a=!1!==t.component.positionServiceEnable()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,8,"div",[["class","bs-calendar-container"],["role","application"]],null,null,null,null,null)),a["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,T)),a["ɵdid"](8,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,O)),a["ɵdid"](10,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,I)),a["ɵdid"](12,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,N)),a["ɵdid"](14,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,C)),a["ɵdid"](16,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"bs-datepicker",n.containerClass),t(e,5,0,a["ɵunv"](e,5,0,a["ɵnov"](e,6).transform(n.viewMode))),t(e,8,0,"day"),t(e,10,0,"month"),t(e,12,0,"year"),t(e,14,0,!1),t(e,16,0,!1)}),(function(t,e){t(e,3,0,e.component.animationState)}))}function A(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,R)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,a["ɵunv"](e,1,0,a["ɵnov"](e,2).transform(n.viewMode)))}),null)}function k(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-datepicker-inline-container",[],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,3)._stopPropagation(n)&&r),r}),A,x)),a["ɵprd"](512,null,r.t,r.t,[]),a["ɵprd"](512,null,r.u,r.u,[r.v,r.l]),a["ɵdid"](3,245760,null,0,r.e,[a.Renderer2,r.a,r.t,a.ElementRef,r.v,r.u,s.a],null,null)],(function(t,e){t(e,3,0)}),null)}var E=a["ɵccf"]("bs-datepicker-inline-container",r.e,k,{},{},[]),L=a["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"datepickerAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function D(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-days-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onHoverWeek"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.dayHoverHandler(n)&&a),"onHoverWeek"===e&&(a=!1!==r.weekHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.daySelectHandler(n)&&a),a}),It,xt)),a["ɵdid"](1,49152,null,0,r.B,[r.a],{calendar:[0,"calendar"],options:[1,"options"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit,a["ɵunv"](e,1,1,a["ɵnov"](e,2).transform(n.options)))}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,3).transform(r.daysCalendar)))?null:n.length)>1)}))}function P(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,D)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.daysCalendar)))}),null)}function M(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-month-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.monthHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.monthSelectHandler(n)&&a),a}),At,Nt)),a["ɵdid"](1,49152,null,0,r.C,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,M)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.monthsCalendar)))}),null)}function j(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-years-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.yearHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.yearSelectHandler(n)&&a),a}),Mt,Lt)),a["ɵdid"](1,49152,null,0,r.E,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function F(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,j)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.yearsCalendar)))}),null)}function V(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-buttons"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-success"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Apply"])),(t()(),a["ɵeld"](3,0,null,null,1,"button",[["class","btn btn-default"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Cancel"]))],null,null)}function G(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","bs-datepicker-custom-range"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"bs-custom-date-view",[],null,null,null,gt,ct)),a["ɵdid"](2,49152,null,0,r.y,[],{ranges:[0,"ranges"]},null)],(function(t,e){t(e,2,0,e.component._customRangesFish)}),null)}function B(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"div",[["class","bs-datepicker"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵeld"](3,0,null,null,11,"div",[["class","bs-datepicker-container"]],[[24,"@datepickerAnimation",0]],[[null,"@datepickerAnimation.done"]],(function(t,e,n){var a=!0;return"@datepickerAnimation.done"===e&&(a=!1!==t.component.positionServiceEnable()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,8,"div",[["class","bs-calendar-container"],["role","application"]],null,null,null,null,null)),a["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,P)),a["ɵdid"](8,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,q)),a["ɵdid"](10,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,F)),a["ɵdid"](12,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,V)),a["ɵdid"](14,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,G)),a["ɵdid"](16,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"bs-datepicker",n.containerClass),t(e,5,0,a["ɵunv"](e,5,0,a["ɵnov"](e,6).transform(n.viewMode))),t(e,8,0,"day"),t(e,10,0,"month"),t(e,12,0,"year"),t(e,14,0,!1),t(e,16,0,!1)}),(function(t,e){t(e,3,0,e.component.animationState)}))}function z(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,B)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,a["ɵunv"](e,1,0,a["ɵnov"](e,2).transform(n.viewMode)))}),null)}function Y(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-daterangepicker-inline-container",[],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,3)._stopPropagation(n)&&r),r}),z,L)),a["ɵprd"](512,null,r.t,r.t,[]),a["ɵprd"](512,null,r.u,r.u,[r.v,r.l]),a["ɵdid"](3,245760,null,0,r.k,[a.Renderer2,r.a,r.t,a.ElementRef,r.v,r.u,s.a],null,null)],(function(t,e){t(e,3,0)}),null)}var H=a["ɵccf"]("bs-daterangepicker-inline-container",r.k,Y,{},{},[]),U=a["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"datepickerAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function W(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-days-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onHoverWeek"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.dayHoverHandler(n)&&a),"onHoverWeek"===e&&(a=!1!==r.weekHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.daySelectHandler(n)&&a),a}),It,xt)),a["ɵdid"](1,49152,null,0,r.B,[r.a],{calendar:[0,"calendar"],options:[1,"options"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit,a["ɵunv"](e,1,1,a["ɵnov"](e,2).transform(n.options)))}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,3).transform(r.daysCalendar)))?null:n.length)>1)}))}function K(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,W)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.daysCalendar)))}),null)}function $(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-month-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.monthHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.monthSelectHandler(n)&&a),a}),At,Nt)),a["ɵdid"](1,49152,null,0,r.C,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function Z(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,$)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.monthsCalendar)))}),null)}function J(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"bs-years-calendar-view",[],[[2,"bs-datepicker-multiple",null]],[[null,"onNavigate"],[null,"onViewMode"],[null,"onHover"],[null,"onSelect"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.setViewMode(n)&&a),"onHover"===e&&(a=!1!==r.yearHoverHandler(n)&&a),"onSelect"===e&&(a=!1!==r.yearSelectHandler(n)&&a),a}),Mt,Lt)),a["ɵdid"](1,49152,null,0,r.E,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"}),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){t(e,1,0,e.context.$implicit)}),(function(t,e){var n,r=e.component;t(e,0,0,(null==(n=a["ɵunv"](e,0,0,a["ɵnov"](e,2).transform(r.daysCalendar)))?null:n.length)>1)}))}function Q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"div",[["class","bs-media-container"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,2,null,J)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,2,0,a["ɵunv"](e,2,0,a["ɵnov"](e,3).transform(n.yearsCalendar)))}),null)}function X(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-buttons"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-success"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Apply"])),(t()(),a["ɵeld"](3,0,null,null,1,"button",[["class","btn btn-default"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Cancel"]))],null,null)}function tt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","bs-datepicker-custom-range"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"bs-custom-date-view",[],null,null,null,gt,ct)),a["ɵdid"](2,49152,null,0,r.y,[],{ranges:[0,"ranges"]},null)],(function(t,e){t(e,2,0,e.component._customRangesFish)}),null)}function et(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"div",[["class","bs-datepicker"]],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵeld"](3,0,null,null,11,"div",[["class","bs-datepicker-container"]],[[24,"@datepickerAnimation",0]],[[null,"@datepickerAnimation.done"]],(function(t,e,n){var a=!0;return"@datepickerAnimation.done"===e&&(a=!1!==t.component.positionServiceEnable()&&a),a}),null,null)),(t()(),a["ɵeld"](4,0,null,null,8,"div",[["class","bs-calendar-container"],["role","application"]],null,null,null,null,null)),a["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef]),(t()(),a["ɵand"](16777216,null,null,1,null,K)),a["ɵdid"](8,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Z)),a["ɵdid"](10,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Q)),a["ɵdid"](12,278528,null,0,i.NgSwitchCase,[a.ViewContainerRef,a.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,X)),a["ɵdid"](14,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,tt)),a["ɵdid"](16,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"bs-datepicker",n.containerClass),t(e,5,0,a["ɵunv"](e,5,0,a["ɵnov"](e,6).transform(n.viewMode))),t(e,8,0,"day"),t(e,10,0,"month"),t(e,12,0,"year"),t(e,14,0,!1),t(e,16,0,!1)}),(function(t,e){t(e,3,0,e.component.animationState)}))}function nt(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,2,null,et)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpid"](131072,i.AsyncPipe,[a.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,1,0,a["ɵunv"](e,1,0,a["ɵnov"](e,2).transform(n.viewMode)))}),null)}function at(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"bs-daterangepicker-container",[["aria-label","calendar"],["class","bottom"],["role","dialog"]],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t,3)._stopPropagation(n)&&r),r}),nt,U)),a["ɵprd"](512,null,r.t,r.t,[]),a["ɵprd"](512,null,r.u,r.u,[r.v,r.l]),a["ɵdid"](3,245760,null,0,r.i,[a.Renderer2,r.a,r.t,a.ElementRef,r.v,r.u,s.a],null,null)],(function(t,e){t(e,3,0)}),null)}var rt=a["ɵccf"]("bs-daterangepicker-container",r.i,at,{},{},[]),it=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function st(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-current-date",[["title","hey there"]],null,null,null,dt,lt)),a["ɵdid"](1,49152,null,0,r.x,[],{title:[0,"title"]},null)],(function(t,e){t(e,1,0,"hey there")}),null)}function ut(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-timepicker",[],null,null,null,Et,kt)),a["ɵdid"](1,49152,null,0,r.D,[],null,null)],null,null)}function ot(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,st)),a["ɵdid"](1,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](2,0,null,null,1,"div",[["class","bs-datepicker-head"]],null,null,null,null,null)),a["ɵncd"](null,0),(t()(),a["ɵeld"](4,0,null,null,1,"div",[["class","bs-datepicker-body"]],null,null,null,null,null)),a["ɵncd"](null,1),(t()(),a["ɵand"](16777216,null,null,1,null,ut)),a["ɵdid"](7,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,!1),t(e,7,0,!1)}),null)}var lt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function dt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["class","current-timedate"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.component.title)}))}var ct=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function ft(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"button",[["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.$implicit.label)}))}function ht(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"button",[["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Custom Range"]))],null,null)}function gt(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,4,"div",[["class","bs-datepicker-predefined-btns"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,ft)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,ht)),a["ɵdid"](4,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.ranges),t(e,4,0,n.isCustomRangeShown)}),null)}var pt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function bt(t){return a["ɵvid"](2,[(t()(),a["ɵted"](0,null,["",""]))],null,(function(t,e){t(e,0,0,e.component.day.label)}))}var mt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function yt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"button",[["class","current"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.view("month")&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.component.calendar.monthTitle)}))}function vt(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,2,"button",[["class","previous"],["type","button"]],[[8,"disabled",0],[4,"visibility",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.navTo(!0)&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["‹"])),(t()(),a["ɵted"](-1,null,[" ​ "])),(t()(),a["ɵand"](16777216,null,null,1,null,yt)),a["ɵdid"](5,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵted"](-1,null,[" ​ "])),(t()(),a["ɵeld"](7,0,null,null,2,"button",[["class","current"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.view("year")&&a),a}),null,null)),(t()(),a["ɵeld"](8,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](9,null,["",""])),(t()(),a["ɵted"](-1,null,[" ​ "])),(t()(),a["ɵeld"](11,0,null,null,2,"button",[["class","next"],["type","button"]],[[8,"disabled",0],[4,"visibility",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.navTo(!1)&&a),a}),null,null)),(t()(),a["ɵeld"](12,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["›"]))],(function(t,e){t(e,5,0,e.component.calendar.monthTitle)}),(function(t,e){var n=e.component;t(e,0,0,n.calendar.disableLeftArrow,n.calendar.hideLeftArrow?"hidden":"visible"),t(e,9,0,n.calendar.yearTitle),t(e,11,0,n.calendar.disableRightArrow,n.calendar.hideRightArrow?"hidden":"visible")}))}var xt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function _t(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,0,"th",[],null,null,null,null,null))],null,null)}function Tt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"th",[["aria-label","weekday"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[""," "]))],null,(function(t,e){t(e,1,0,e.component.calendar.weekdays[e.context.index])}))}function wt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"td",[["class","week"]],[[2,"active-week",null]],null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],null,[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.selectWeek(t.parent.context.$implicit)&&a),"mouseenter"===e&&(a=!1!==r.weekHoverHandler(t.parent.context.$implicit,!0)&&a),"mouseleave"===e&&(a=!1!==r.weekHoverHandler(t.parent.context.$implicit,!1)&&a),a}),null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){var n=e.component;t(e,0,0,n.isWeekHovered),t(e,2,0,n.calendar.weekNumbers[e.parent.context.index])}))}function Ot(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"td",[["role","gridcell"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,2,"span",[["bsDatepickerDayDecorator",""]],[[2,"disabled",null],[2,"is-highlighted",null],[2,"is-other-month",null],[2,"is-active-other-month",null],[2,"in-range",null],[2,"select-start",null],[2,"select-end",null],[2,"selected",null]],[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.selectDay(t.context.$implicit)&&a),"mouseenter"===e&&(a=!1!==r.hoverDay(t.context.$implicit,!0)&&a),"mouseleave"===e&&(a=!1!==r.hoverDay(t.context.$implicit,!1)&&a),a}),bt,pt)),a["ɵdid"](2,114688,null,0,r.z,[r.a,a.ElementRef,a.Renderer2],{day:[0,"day"]},null),(t()(),a["ɵted"](3,null,["",""]))],(function(t,e){t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,1,0,a["ɵnov"](e,2).day.isDisabled,a["ɵnov"](e,2).day.isHovered,a["ɵnov"](e,2).day.isOtherMonth,a["ɵnov"](e,2).day.isOtherMonthHovered,a["ɵnov"](e,2).day.isInRange,a["ɵnov"](e,2).day.isSelectionStart,a["ɵnov"](e,2).day.isSelectionEnd,a["ɵnov"](e,2).day.isSelected),t(e,3,0,e.context.$implicit.label)}))}function St(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,wt)),a["ɵdid"](2,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Ot)),a["ɵdid"](4,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.options.showWeekNumbers),t(e,4,0,e.context.$implicit.days)}),null)}function It(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,13,"bs-calendar-layout",[],null,null,null,ot,it)),a["ɵdid"](1,49152,null,0,r.w,[],null,null),(t()(),a["ɵeld"](2,0,null,0,1,"bs-datepicker-navigation-view",[],null,[[null,"onNavigate"],[null,"onViewMode"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.changeViewMode(n)&&a),a}),vt,mt)),a["ɵdid"](3,49152,null,0,r.A,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode"}),(t()(),a["ɵeld"](4,0,null,1,9,"table",[["class","days weeks"],["role","grid"]],null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,5,"thead",[],null,null,null,null,null)),(t()(),a["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,_t)),a["ɵdid"](8,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,Tt)),a["ɵdid"](10,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](11,0,null,null,2,"tbody",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,St)),a["ɵdid"](13,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.calendar),t(e,8,0,n.options.showWeekNumbers),t(e,10,0,n.calendar.weekdays),t(e,13,0,n.calendar.weeks)}),null)}var Nt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Ct(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"td",[["role","gridcell"]],[[2,"disabled",null],[2,"is-highlighted",null]],[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.viewMonth(t.context.$implicit)&&a),"mouseenter"===e&&(a=!1!==r.hoverMonth(t.context.$implicit,!0)&&a),"mouseleave"===e&&(a=!1!==r.hoverMonth(t.context.$implicit,!1)&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],[[2,"selected",null]],null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,0,0,e.context.$implicit.isDisabled,e.context.$implicit.isHovered),t(e,1,0,e.context.$implicit.isSelected),t(e,2,0,e.context.$implicit.label)}))}function Rt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Ct)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit)}),null)}function At(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"bs-calendar-layout",[],null,null,null,ot,it)),a["ɵdid"](1,49152,null,0,r.w,[],null,null),(t()(),a["ɵeld"](2,0,null,0,1,"bs-datepicker-navigation-view",[],null,[[null,"onNavigate"],[null,"onViewMode"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.changeViewMode(n)&&a),a}),vt,mt)),a["ɵdid"](3,49152,null,0,r.A,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode"}),(t()(),a["ɵeld"](4,0,null,1,3,"table",[["class","months"],["role","grid"]],null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,2,"tbody",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Rt)),a["ɵdid"](7,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.calendar),t(e,7,0,n.calendar.months)}),null)}var kt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Et(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,15,"div",[["class","bs-timepicker-container"]],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,5,"div",[["class","bs-timepicker-controls"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"button",[["class","bs-decrease"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["-"])),(t()(),a["ɵeld"](4,0,null,null,0,"input",[["placeholder","00"],["type","text"]],[[8,"value",0]],null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,1,"button",[["class","bs-increase"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["+"])),(t()(),a["ɵeld"](7,0,null,null,5,"div",[["class","bs-timepicker-controls"]],null,null,null,null,null)),(t()(),a["ɵeld"](8,0,null,null,1,"button",[["class","bs-decrease"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["-"])),(t()(),a["ɵeld"](10,0,null,null,0,"input",[["placeholder","00"],["type","text"]],[[8,"value",0]],null,null,null,null)),(t()(),a["ɵeld"](11,0,null,null,1,"button",[["class","bs-increase"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["+"])),(t()(),a["ɵeld"](13,0,null,null,2,"button",[["class","switch-time-format"],["type","button"]],null,null,null,null,null)),(t()(),a["ɵted"](14,null,[""," "])),(t()(),a["ɵeld"](15,0,null,null,0,"img",[["alt",""],["src","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAKCAYAAABi8KSDAAABSElEQVQYV3XQPUvDUBQG4HNuagtVqc6KgouCv6GIuIntYBLB9hcIQpLStCAIV7DYmpTcRWcXqZio3Vwc/UCc/QEqfgyKGbr0I7nS1EiHeqYzPO/h5SD0jaxUZjmSLCB+OFb+UFINFwASAEAdpu9gaGXVyAHHFQBkHpKHc6a9dzECvADyY9sqlAMsK9W0jzxDXqeytr3mhQckxSji27TJJ5/rPmIpwJJq3HrtduriYOurv1a4i1p5HnhkG9OFymi0ReoO05cGwb+ayv4dysVygjeFmsP05f8wpZQ8fsdvfmuY9zjWSNqUtgYFVnOVReILYoBFzdQI5/GGFzNHhGbeZnopDGU29sZbscgldmC99w35VOATTycIMMcBXIfpSVGzZhA6C8hh00conln6VQ9TGgV32OEAKQC4DrBq7CJwd0ggR7Vq/rPrfgB+C3sGypY5DAAAAABJRU5ErkJggg=="]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,4,0,n.hours),t(e,10,0,n.minutes),t(e,14,0,n.ampm)}))}var Lt=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function Dt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"td",[["role","gridcell"]],[[2,"disabled",null],[2,"is-highlighted",null]],[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.viewYear(t.context.$implicit)&&a),"mouseenter"===e&&(a=!1!==r.hoverYear(t.context.$implicit,!0)&&a),"mouseleave"===e&&(a=!1!==r.hoverYear(t.context.$implicit,!1)&&a),a}),null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"span",[],[[2,"selected",null]],null,null,null,null)),(t()(),a["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,0,0,e.context.$implicit.isDisabled,e.context.$implicit.isHovered),t(e,1,0,e.context.$implicit.isSelected),t(e,2,0,e.context.$implicit.label)}))}function Pt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"tr",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Dt)),a["ɵdid"](2,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit)}),null)}function Mt(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"bs-calendar-layout",[],null,null,null,ot,it)),a["ɵdid"](1,49152,null,0,r.w,[],null,null),(t()(),a["ɵeld"](2,0,null,0,1,"bs-datepicker-navigation-view",[],null,[[null,"onNavigate"],[null,"onViewMode"]],(function(t,e,n){var a=!0,r=t.component;return"onNavigate"===e&&(a=!1!==r.navigateTo(n)&&a),"onViewMode"===e&&(a=!1!==r.changeViewMode(n)&&a),a}),vt,mt)),a["ɵdid"](3,49152,null,0,r.A,[],{calendar:[0,"calendar"]},{onNavigate:"onNavigate",onViewMode:"onViewMode"}),(t()(),a["ɵeld"](4,0,null,1,3,"table",[["class","years"],["role","grid"]],null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,2,"tbody",[],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,Pt)),a["ɵdid"](7,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.calendar),t(e,7,0,n.calendar.years)}),null)}},b1Dy:function(t,e,n){!function(t){"use strict";t.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},b5OY:function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("pxLl");class a{constructor(t,e){this.performanceCounterService=t,this.i18n=e,this.columns=[],this.counters=[]}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"name",flexGrow:1},{name:this.i18n("Description"),prop:"description",flexGrow:1},{name:this.i18n("Value"),prop:"value",cellTemplate:this.valueTpl,flexGrow:1}]}getCounters(t){this.performanceCounterService.get(this.serviceType,this.serviceId).subscribe(t=>{this.counters=t},e=>{404===e.status?(e.preventDefault(),this.counters=null):t.error()})}}},bHdf:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("5+tZ"),r=n("SpAZ");function i(t=Number.POSITIVE_INFINITY){return Object(a.a)(r.a,t)}},bN42:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="ja-JP">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>ナビゲーションの切り替え</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>ダッシュボード</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>クラスタ</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>ホスト</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>モニター</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>サービス</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>設定</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>CRUSHマップ</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>マネージャモジュール</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>ログ</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>プール</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>ブロック</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>イメージ</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>ミラーリング</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>ファイルシステム</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>オブジェクトゲートウェイ</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>デーモン</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>ユーザ</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>バケット</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>言語の選択</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>パネルデータを読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Grafana Time Picker</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>設定のリセット</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>戻る</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>データを読み込めませんでした。</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>選択済み</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>検出済み</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>合計</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>名前</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>説明</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>長い説明</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>デフォルト</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>デーモンのデフォルト</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>値</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>保存</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>CRUSHマップビューア</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>ホスト名</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>このフィールドは必須です。</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>はい。</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>キャンセル</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>閉じる</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>ホストリスト</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>全体的なパフォーマンス</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>エントリが見つかりません</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>クラスタログ</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>監査ログ</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>設定を読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>設定を読み込めませんでした。</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>マネージャモジュールの編集</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>入力された値は有効なUUIDではありません(有効なUUIDの例: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8)。</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>有効なIPアドレスを入力する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>数字を入力する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>数字または小数を入力する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>ステータス</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>クラスタID</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmapが変更されました</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmapエポック</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>定数con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>定数mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>必須のcon</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>必須のmon</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>定数内</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>非定数内</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>追加</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>機能</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>クラスタ全体のOSDフラグ</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>送信</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>詳細...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>OSD回復優先度</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>優先度</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>優先度値のカスタマイズ</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>このフィールドは必須です。</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>値は0と1の間である必要があります。</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>再重みづけ</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Deep } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {deep } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>OSDリスト</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>値</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>編集</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>削除</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>ヘルス</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>統計情報</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>クライアント</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>任意のクライアントからアクセスできます</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>アドレス</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>必須フィールド</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>1つ以上のカンマ区切り値を含んでいる必要があります</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>例:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>アクセスタイプ</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>スカッシュ</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>クライアントの追加</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- 使用可能なクラスタがありません --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- クラスタを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>デーモンの追加</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>ストレージバックエンド</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- 使用可能なデータプールがありません --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- ストレージバックエンドを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>オブジェクトゲートウェイユーザ</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- 使用可能なユーザがありません --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- オブジェクトゲートウェイユーザを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>CephFSユーザID</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- 使用可能なクライアントがありません --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- cephxクライアントを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>CephFS名</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>セキュリティラベル</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>セキュリティラベルの有効化</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFSパス</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>パスは「/」で始まる必要があり、その後ろに1つの単語を配置できます</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>新しいディレクトリが作成されます</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>パス</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>パスは単一の「/」または1つの単語である必要があります</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>新しいバケットが作成されます</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>NFSプロトコル</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>NFSタグ</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>クライアントはサブディレクトリをマウントできません(たとえば、[タグ] = fooの場合は、クライアントはfoo/bazをマウントできません)。</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>異なる[タグ]オプションを使用することで、同じパスを複数回エクスポートできます。</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>疑似</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>異なる[疑似]オプションを使用することで、同じパスを複数回エクスポートできます。</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- 使用可能なアクセスタイプがありません --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- アクセスタイプを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- 使用可能なスカッシュがありません --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- 実行されるユーザIDスカッシュ操作の種類を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>トランスポートプロトコル</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Cephにようこそ!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>ユーザ名は必須です</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>パスワードは必須です</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>ログイン</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>このユーザはCephに存在しません。</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>禁止</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>検索していた内容を表示することは許可されていません。</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>RBD設定</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>ローカル設定値を削除します。親設定値が継承されて代わりに使用されます。</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>最小値は0です</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>プールリスト</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>名前は英数字、ダッシュ、および下線のみで構成される必要があります。</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>選択されたイレイジャコードプロファイル名はすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>プラグイン</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>データチャンク(k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>2以上である必要があります。</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>コーディングチャンク(m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>1以上である必要があります。</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>耐久性推定子(c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>地域(l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Crush障害ドメイン</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Crush地域</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>なし</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>技法</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>パケットサイズ</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Crushルート</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Crushデバイスクラス</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>任意</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>ディレクトリ</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>名前...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>選択されたCephプール名はすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>プールタイプ</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- プールタイプを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>配置グループ</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>少なくとも1つの配置グループが必要です。</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>ご使用のクラスタはこれだけ多数の配置グループを処理できません。必要な配置グループの数を再計算してください。</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>計算のヘルプ</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>複製されたサイズ</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>フラグ</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>ECの上書き</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>アプリケーション</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>イレイジャコードプロファイル</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- 使用可能なイレイジャコードプロファイルがありません --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- イレイジャコードプロファイルを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Crushルールセット</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Crushルールを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Crushルール</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Crushステップ</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>圧縮</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>モード</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>アルゴリズム</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- 使用可能なイレイジャ圧縮アルゴリズムがありません --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>最小blobサイズ</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>例: 128KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>値は0より大きい必要があります</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>最大blobサイズ</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>例: 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>値は最小blobサイズより大きい必要があります</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>率</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>圧縮率</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>値は0.0~1.0の間である必要があります</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>例: 10GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>詳細</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>パフォーマンスの詳細</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>キャッシュ層の詳細</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>イメージをごみ箱に移動する</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>保護の失効日</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>保護されていません</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>日付の形式が正しくありません。「YYYY-MM-DD HH:mm:ss」という形式を使用してください。</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>保護はすでに失効しています。将来の日付を選択するか、日付を空白のままにしてください。</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>イメージの移動</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>概要</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>ターゲット</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>検出認証</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>ユーザ</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>ユーザ名は8~64文字の長さである必要があり、\n英字、「.」、「@」、「-」、「_」、または「:」のみで構成される必要があります。</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>パスワード</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>相互ユーザ</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>相互パスワード</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>取得可能な情報:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>使用可能なiSCSIターゲットがありません</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>プール</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>データプール</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>作成済み</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>サイズ</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>オブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>オブジェクトサイズ</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>プロビジョニング済み</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>なし</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>プロビジョニング済み合計</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>ストライピング単位</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>ストライピング数</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>親</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>ブロック名のプレフィックス</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>順番</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>スナップショット</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>イメージ</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>この設定はグローバル値よりも優先されます</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>グローバル</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>これはグローバル値です。このイメージについて、このオプションの値は設定されていません。</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>「/」と「@」は使用できません。</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- 使用可能なrbdプールがありません --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- プールを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>専用のデータプールを使用してください</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>データプール</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>RBDのオブジェクトデータを保管するための専用プール</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>サイズを大きくする必要があります。</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>詳細</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>ストライピング</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>ストライプ単位</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- ストライプ単位を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>ストライプ数が定義されているため、このフィールドは必須です。</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>ストライプ単位がオブジェクトサイズより大きいです。</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>ストライプ数</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>ストライプ単位が定義されているため、このフィールドは必須です。</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>ストライプ数は0より大きい必要があります。</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>ロールバックしようとしています</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>ごみ箱を空にする</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>すべて</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>プール:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>プール名...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>イメージの復元</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>復元するには</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>イメージの新しい名前を入力してクリックします</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>新しい名前</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>失効日</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>保護の終了日</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>iSCSIトポロジ</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>通常はこれらのパラメータをデフォルト値から変更する必要はありません。</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>設定</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>バックストア</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>確認</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>詳細設定</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>ターゲットIQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>IQNのパターンが正しくありません。</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>例: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>詳細情報</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>このターゲットの詳細設定は変更されています。</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>ポータル</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>ポータルの追加</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>このイメージの設定は変更されています。</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>イメージの追加</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>ACL認証</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>イニシエータ</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>イニシエータ</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>クライアントIQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>イニシエータIQNは一意である必要があります。</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>ユーザ名は8~64文字の長さである必要があり、\n英字、「.」、「@」、「-」、「_」、または「:」のみで構成される必要があります。</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>イニシエータはいずれかのグループに属します。イメージはそのグループ内で設定されます。</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>アイテムが追加されていません。</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>イニシエータの追加</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>グループ</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>グループ</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>グループの追加</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>ごみ箱</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>問題</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>同期中</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>準備完了</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>プールのミラーモードの編集</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>ミラーを無効にする前に、ピアクラスタを削除する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>クラスタ名</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>このクラスタ名は無効です。</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>このCephX IDは無効です。</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>モニターアドレス</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>カンマ区切りアドレス...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>この警告アドレスは無効です。</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephXキー</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64エンコード化済みキー...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>CephXキーはbase64でエンコードされている必要があります。</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>パフォーマンスカウンタを使用できません</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>デーモンリスト</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>パフォーマンスカウンタ</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>バケットデータを読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>Id</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>この値は無効です。</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>選択された名前はすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>所有者</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- ユーザを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>有効化済み</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>インデックスタイプ</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>配置ルール</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>マーカー</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>最大マーカー</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>バージョン</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>マスタバージョン</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>変更時間</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>ゾーングループ</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>バケットクォータ</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>最大サイズ</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>無制限</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>最大オブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>ユーザ名</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- ユーザ名を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>キーの自動生成</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>アクセスキー</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>秘密キー</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>氏名</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>電子メールアドレス</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>中断済み</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>システム</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>最大バケット数</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>サブユーザ</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>機能</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>ユーザクォータ</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>表示</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>キー</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>タイプ</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- タイプを選択してください --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>許可</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- 許可を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>サブユーザ</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>選択されたサブユーザIDはすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>読み取り、書き込み</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>フル</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>スウィフトキー</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>秘密の自動生成</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>ユーザデータを読み込んでいます...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>ユーザデータを読み込めませんでした。</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>選択されたユーザIDはすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>これは有効な電子メールアドレスではありません。</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>選択された電子メールアドレスはすでに使用されています。</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>最大バケット数</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>無効化済み</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>カスタム</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>S3キー</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>サブユーザがいません。</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>キーがありません。</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>スウィフト</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>機能がありません。</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>無制限のサイズ</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>最大サイズ</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>無制限のオブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>最大オブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>0以上の値を入力する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>説明...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>許可</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>役割</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>パスワードの確認入力</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>確認入力されたパスワードがパスワードと一致しません。</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>電子メール</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>無効な電子メールです。</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>自身のユーザから「user read / update」という許可を削除しようとしています。</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>続行した場合は、どのユーザの役割も追加および削除できなくなります。</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>続行してもよろしいですか?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>ヘルプ</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>ドキュメント</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>バージョン情報</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>ダッシュボード設定</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>ユーザ管理</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>ログイン済みユーザ</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>サインアウト</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>属性(OSDマップ)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>メタデータを使用できません</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>メタデータ</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>パフォーマンスカウンタ</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>書き込み回数</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>読み取り回数</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>ヒストグラム</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>現行値</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>最小</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>最大</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>ソース</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>レベル</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>実行時に更新できます(編集可能)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>タグ</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>列挙値</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>関連項目</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>クラスタのステータス</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>マネージャデーモン</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>オブジェクトゲートウェイ</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>メタデータサーバ</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>iSCSIゲートウェイ</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>クライアントのIOPS</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>クライアントのスループット</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>クライアントの読み取り/書き込み</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>回復スループット</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>スクラブ</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>パフォーマンス</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>未フォーマット時の容量</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>OSDあたりの配置グループ数</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>配置グループのステータス</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>容量</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>ランク</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>現在</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>検出認証を更新しました</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>使用可能なポータルはありません。</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>使用可能なイメージはありません。</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>使用可能なイメージはありません。ターゲットにイメージを追加したことを確認してください。</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>使用可能なイニシエータはありません。ターゲットにイニシエータを追加したことを確認してください。</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>ターゲット</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>状態</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>読み取りバイト数</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>書き込みバイト数</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>読み取り操作数</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>書き込み操作数</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>次の日付以降のA/O</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>インスタンス</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>問題</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>進捗</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>モードの編集</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>ピアの追加</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>ピアの編集</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>ピアの削除</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>リーダー</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>#ローカル</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>#リモート</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>ミラーピア</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>キー</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>ディープフラット化</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>階層化</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>排他ロック</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>オブジェクトマップ(排他ロックが必要)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>ジャーナリング(排他ロックが必要)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>未保護</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>RBDスナップショットのロールバック</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>ロールバック</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>RBDスナップショット</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>削除日時</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>id</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>タイプ</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>状態</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>バージョン</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>ホスト</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>ルート</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>スタンバイデーモン</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>ランク</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>デーモン</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>アクティビティ</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>dエントリ</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>iノード</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>使用量</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>更新済み</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>この値は実行時に更新できます。</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>デーモン/クライアントはこの値をモニター設定データベースから取得しません。\nこのオプションを「ceph config set ...」を通じて設定することは禁止されています。\nこのオプションは、ceph.confまたはコマンドラインを通じて\n設定する必要があります。</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>オプションはデーモン始動時のみに有効になります。</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>オプションはクラスタの作成のみに適用されます。</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>オプションはデーモンの作成のみに適用されます。</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>サービス</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>現行値</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>編集可能</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>有効化</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>無効化</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>再接続していますので、しばらくお待ちください...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>パブリックアドレス</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>セッションの開始</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>インなし</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>以前にアウトとしてマークされたOSDは、それらの始動時にインとしてマークされることはありません</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>アウトなし</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSDは、設定済みの間隔が経過した後に自動的にアウトとしてマークされます</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>アップなし</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSDを始動することは許可されていません</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>ダウンなし</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>OSDの障害レポートは無視されているため、OSDはモニターによってダウンとしてマークされません</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>一時停止</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>読み取りと書き込みを一時停止します</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>スクラブなし</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>スクラブ処理は無効化されています</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>ディープスクラブなし</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>ディープスクラブ処理は無効化されています</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>バックフィルなし</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>配置グループのバックフィルは中断されています</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>回復なし</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>配置グループの回復は中断されています</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>ビット単位のソート</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>ビット単位のソートを使用する</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>消去されたスナップディレクトリ</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSDによってスナップセットが変換されました</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>回復の削除</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>ピアリングの代わりに回復時に削除が実行されました</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>配置グループログのハード制限</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>配置グループログ長のハード制限を適用します</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>OSDフラグを更新しました</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>アウト</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>イン</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>ダウン</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>マーク</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>喪失したOSD</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>喪失としてマーク済み</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>消去</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>消去済み</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>破棄</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>破棄済み</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>削除</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>配置グループ数</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>読み取りバイト数</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>書き込みバイト数</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>読み取り操作数</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>書き込み操作数</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>最大バックフィル数</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>回復最大アクティブ</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>回復最大単一始動</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>回復スリープ</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>ジョブ</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>重大度</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>始動済み</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>使用済み</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>使用可能</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>クリーン</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>動作中</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>警告</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>不明</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>アップ</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>ファイルシステムがありません</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>アクティブ</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>スタンバイ</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>なし</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>アクティブデーモン</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>定数</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>NFS Ganeshaサービスが設定されていません。</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>トランスポート</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>CephFSユーザ</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>CephFSファイルシステム</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(グローバル設定から継承)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>グローバル設定から継承されました</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- 実行されるユーザIDスカッシュ操作を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>使用可能なデーモンがありません。</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>キャッシュモード</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>退去までの最小経過時間</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>消去までの最小経過時間</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>ターゲットの最大バイト数</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>ターゲットの最大オブジェクト数</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>アプリケーションは追加されていません</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>アプリケーション数の上限に達しました</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>1つのプールは最大で4つのアプリケーション定義しか保有できません。</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>使用可能な文字「_a-zA-Z0-9」</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>最大長は128文字です</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>アプリケーションのフィルタリングまたは追加</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>アプリケーションの追加</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>イレイジャコードプロファイル</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>レプリカサイズ</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>最後の変更</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>イレイジャコード化済みプロファイル</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Crushルールセット</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>バケット</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>バケット数</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>ユーザ</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>ユーザ数</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>範囲</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>読み取り</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>作成</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>システム役割</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>ユーザの更新</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>続行</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>このユーザの役割が変更されたため、このユーザは自動的にログアウトされました。</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>各オブジェクトは複数のデータチャンクパートに分割されており、それぞれのパートは異なるOSDに保管されています。</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>各オブジェクトのコーディングチャンクを計算して、これらのチャンクを別々のOSDに保管します。\nコーディングチャンクの数は、データを失うことなくダウン状態になることができるOSDの数でもあります。</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>jerasureプラグインは最も汎用的で柔軟性の高いプラグインです。\nこのプラグインは、Cephイレイジャコード化済みプール用のデフォルトでもあります。</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>さらに柔軟性の高い技法はreed_sol_vanです。kとmを\n設定するだけで十分です。\ncauchy_good技法はより高速となり得ますが、パケットサイズを慎重に選択する必要があります。\nreed_sol_r6_op、liberation、blaum_roth、liber8tionはすべて、\nm=2を使用した設定のみが可能という意味でRAID6と同等です。</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>エンコードはバイトサイズのパケット群に対して同時に実行されます。\n適切なパケットサイズを選択することは困難です。\njerasureのドキュメントにはこのトピックに関する詳細な情報が記載されています。</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>jerasureプラグインを使用すると、イレイジャコード化済みオブジェクトが複数のOSDに保管されている場合は、\n1つのOSDの喪失から回復するには、他のすべてのOSDからの読み取りが必要になります。\nたとえば、k=8およびm=4を使用してjerasureが設定されている場合は、1つのOSDが失われた場合、\n修復のためには他の11個のOSDからの読み取りが必要になります。\n\nlrcイレイジャコードプラグインは、これより少ないOSDを使用した回復を可能にするために、\nローカルパリティチャンクを作成します。たとえば、lrcがk=8、m=4、およびl=4を使用して設定されている場合は、\nlrcは、4つのOSDごとに1つの追加パリティチャンクを作成します。1つのOSDが失われた場合は、\n11個の代わりに4つのOSDのみを使用してそのOSDを回復できます。</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>コーディングチャンクとデータチャンクをサイズ地域の複数セットにグループ分けします。\nたとえば、k=4およびm=2の場合に、[地域]=3の場合は、3つのチャンクからなるグループが2つ作成されます。\n各セットは、別のセットからチャンクを読み取ることなく回復できます。</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>1によって定義されたチャンクの各セットが保管されるCrushバケットのタイプ。\nたとえば、このバケットタイプがラックに設定されている場合は、1のチャンクの各グループは異なるラックに配置されます。\nこのバケットタイプを使用して、「ラックの選択」ステップなどのCRUSHルールステップが作成されます。\nこのバケットタイプが設定されていない場合は、このようなグループ分けは行われません。</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>isaプラグインはISAライブラリをカプセル化します。このプラグインはIntelプロセッサ上のみで動作します。</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>ISAプラグインは2つのリードソロモン形式で提供されています。reed_sol_vanが設定されている場合は、Vandermondeであり、cauchyが設定されている場合は、Cauchyです。</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>shecプラグインは複数のSHECライブラリをカプセル化します。\nこのプラグインを使用すると、cephはリードソロモンコードより効率的にデータを回復できます。</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>それぞれが各データチャンクを各自の計算範囲内に含んでいるパリティチャンクの数。\nこの数は、耐久性推定子として使用されます。\nたとえば、c=2の場合は、データを失うことなく2つのOSDがダウン状態になることができます。</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>CRUSHルールの最初のステップ(「デフォルトの使用」ステップなど)用に\n使用されるCrushバケットの名前。</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>同じ障害ドメインの単一バケット内に2つのチャンクが配置されることを防止します。\nたとえば、障害ドメインがホストである場合は、2つのチャンクが同じホストに保管されることはありません。\nこれを使用して、「リーフホストの選択」ステップなどのCRUSHルールステップが作成されます。</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>CRUSHマップ内でCrushデバイスクラス名を使用して、配置先を特定クラス(ssdやhddなど)のデバイスのみに制限します。</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>イレイジャコードプラグインの読み込み元となるディレクトリ名を設定します。</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>すべての操作を許可します</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>サーバに変更を加えない操作のみを許可します</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>読み取り/書き込み操作を許可しませんが、他のすべての操作を許可します</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>読み取り/書き込み操作、およびファイル属性やディレクトリ内容を変更するどの操作も許可しません</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>アクセスを一切許可しません</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- 優先度を選択してください --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>低</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>高</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>情報</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>直前の5分間</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>直前の15分間</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>直前の30分間</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>直前の1時間(デフォルト)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>直前の3時間</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>直前の6時間</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>直前の12時間</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>直前の24時間</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>昨日</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>本日</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>本日の現時点まで</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>一昨日</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>過去2日間</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>先週の同じ曜日</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>前週</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>今週</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>今週の現時点まで</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>過去7日間</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>前月</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>今月</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>今月の現時点まで</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>過去30日間</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>過去90日間</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>過去6カ月</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>過去1年間</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>前年</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>今年</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>今年の現時点まで</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>過去2年間</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>過去5年間</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>アイテムが選択されていません。</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>アイテムを選択解除して再選択してください</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>選択の上限に達しました</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>タグのフィルタリング</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>バッジの追加</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>使用可能なアイテムはありません。</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>複製</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>コピー</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>ディープスクラブ</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>破棄</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>フラット化</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>ダウンとしてマーク</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>インとしてマーク</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>喪失としてマーク</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>アウトとしてマーク</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>保護</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>名前の変更</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>復元</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>ごみ箱に移動する</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>保護解除</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>削除済み</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>複製済み</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>コピー済み</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>フラット化済み</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>消去済み</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>復元済み</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>ロールバック済み</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>はい</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>いいえ</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>サービス品質</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>BPS制限</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>希望する秒あたり入出力バイト数の上限。</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>IOPS制限</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>希望する秒あたり入出力操作数の上限。</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>読み取りBPS制限</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>希望する秒あたり読み取りバイト数の上限。</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>読み取りIOPS制限</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>希望する秒あたり読み取り操作数の上限。</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>書き込みBPS制限</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>希望する秒あたり書き込みバイト数の上限。</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>書き込みIOPS制限</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>希望する秒あたり書き込み操作数の上限。</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>BPSバースト</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>希望する入出力バイト数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>IOPSバースト</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>希望する入出力操作数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>読み取りBPSバースト</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>希望する読み取りバイト数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>読み取りIOPSバースト</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>希望する読み取り操作数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>書き込みBPSバースト</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>希望する書き込みバイト数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>書き込みIOPSバースト</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>希望する書き込み操作数のバースト上限。</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>実行中</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>実行</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>実行済み</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>不明なタスク</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>作成中</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>作成</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>更新中</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>更新</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>削除中</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>複製中</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>複製</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>コピー中</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>コピー</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>フラット化中</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>フラット化</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>ロールバック中</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>ロールバック</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>移動中</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>移動</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>移動済み</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>イメージが見つかりませんでした。</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>復元中</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>復元</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>消去中</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>消去</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>すべてのプール</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>ピアを含んでいるためミラーリングを無効化できません。</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},bOMt:function(t,e,n){!function(t){"use strict";t.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},bOdf:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("5+tZ");function r(t,e){return Object(a.a)(t,e,1)}},bQrF:function(t,e,n){var a=n("ZPW6"),r=n("JEWA"),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){var s=t[e];i.call(t,e)&&r(s,n)&&(void 0!==n||e in t)||a(t,e,n)}},bWFh:function(t,e,n){"use strict";var a=n("I+eb"),r=n("2oRo"),i=n("lMq5"),s=n("busE"),u=n("8YOa"),o=n("ImZN"),l=n("GarU"),d=n("hh1v"),c=n("0Dky"),f=n("HH4o"),h=n("1E5z"),g=n("cVYH");t.exports=function(t,e,n){var p=-1!==t.indexOf("Map"),b=-1!==t.indexOf("Weak"),m=p?"set":"add",y=r[t],v=y&&y.prototype,x=y,_={},T=function(t){var e=v[t];s(v,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(b&&!d(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return b&&!d(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(b&&!d(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof y||!(b||v.forEach&&!c((function(){(new y).entries().next()})))))x=n.getConstructor(e,t,p,m),u.REQUIRED=!0;else if(i(t,!0)){var w=new x,O=w[m](b?{}:-0,1)!=w,S=c((function(){w.has(1)})),I=f((function(t){new y(t)})),N=!b&&c((function(){for(var t=new y,e=5;e--;)t[m](e,e);return!t.has(-0)}));I||((x=e((function(e,n){l(e,x,t);var a=g(new y,e,x);return null!=n&&o(n,a[m],a,p),a}))).prototype=v,v.constructor=x),(S||N)&&(T("delete"),T("has"),p&&T("get")),(N||O)&&T(m),b&&v.clear&&delete v.clear}return _[t]=x,a({global:!0,forced:x!=y},_),h(x,t),b||n.setStrong(x,t,p),x}},bWnS:function(t,e,n){var a=n("qN6l");t.exports=function(){this.__data__=a?a(null):{},this.size=0}},bX23:function(t,e){t.exports=function(t,e,n,a){for(var r=t.length,i=n+(a?1:-1);a?i--:++i<r;)if(e(t[i],i,t))return i;return-1}},bXm7:function(t,e,n){!function(t){"use strict";var e={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"};t.defineLocale("kk",{months:"қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан".split("_"),monthsShort:"қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел".split("_"),weekdays:"жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі".split("_"),weekdaysShort:"жек_дүй_сей_сәр_бей_жұм_сен".split("_"),weekdaysMin:"жк_дй_сй_ср_бй_жм_сн".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",ss:"%d секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(t){return t+(e[t]||e[t%10]||e[t>=100?100:null])},week:{dow:1,doy:7}})}(n("wd/R"))},bYM6:function(t,e,n){!function(t){"use strict";t.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}})}(n("wd/R"))},bdl3:function(t,e,n){var a=n("ktBm");t.exports=function(t){return a(this.__data__,t)>-1}},bpih:function(t,e,n){!function(t){"use strict";t.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(t){return(/^[0-9].+$/.test(t)?"tra":"in")+" "+t},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},busE:function(t,e,n){var a=n("2oRo"),r=n("kRJp"),i=n("UTVS"),s=n("zk60"),u=n("iSVu"),o=n("afO8"),l=o.get,d=o.enforce,c=String(String).split("String");(t.exports=function(t,e,n,u){var o=!!u&&!!u.unsafe,l=!!u&&!!u.enumerable,f=!!u&&!!u.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||r(n,"name",e),d(n).source=c.join("string"==typeof e?e:"")),t!==a?(o?!f&&t[e]&&(l=!0):delete t[e],l?t[e]=n:r(t,e,n)):l?t[e]=n:s(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&l(this).source||u(this)}))},bxKX:function(t,e,n){!function(t){"use strict";t.defineLocale("it-ch",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(t){return(/^[0-9].+$/.test(t)?"tra":"in")+" "+t},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},bxSN:function(t,e,n){var a=n("mrSG").__decorate;Object.defineProperty(e,"__esModule",{value:!0});var r=n("8Y7J"),i=n("moLw");e.ClickOutsideModule=function(){return a([r.NgModule({declarations:[i.ClickOutsideDirective],exports:[i.ClickOutsideDirective]})],(function(){}))}()},c2HN:function(t,e,n){"use strict";function a(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}n.d(e,"a",(function(){return a}))},cRL0:function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},cRix:function(t,e,n){!function(t){"use strict";var e="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),n="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_");t.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsParseExact:!0,weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",ss:"%d sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(t){return t+(1===t||8===t||t>=20?"ste":"de")},week:{dow:1,doy:4}})}(n("wd/R"))},cUpR:function(t,e,n){"use strict";n.d(e,"p",(function(){return _})),n.d(e,"a",(function(){return dt})),n.d(e,"h",(function(){return lt})),n.d(e,"c",(function(){return T})),n.d(e,"d",(function(){return w})),n.d(e,"e",(function(){return W})),n.d(e,"f",(function(){return K})),n.d(e,"g",(function(){return $})),n.d(e,"b",(function(){return tt})),n.d(e,"q",(function(){return s})),n.d(e,"j",(function(){return k})),n.d(e,"i",(function(){return H})),n.d(e,"m",(function(){return Z})),n.d(e,"n",(function(){return X})),n.d(e,"l",(function(){return I})),n.d(e,"o",(function(){return S})),n.d(e,"k",(function(){return et}));var a=n("SVse"),r=n("8Y7J");let i=null;function s(){return i}const u={class:"className",innerHtml:"innerHTML",readonly:"readOnly",tabindex:"tabIndex"},o={"\b":"Backspace","\t":"Tab","\7f":"Delete","\e":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},l={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\90":"NumLock"},d=(()=>{if(r["ɵglobal"].Node)return r["ɵglobal"].Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))}})();class c extends class extends class{constructor(){this.resourceLoaderType=null}get attrToPropMap(){return this._attrToPropMap}set attrToPropMap(t){this._attrToPropMap=t}}{constructor(){super(),this._animationPrefix=null,this._transitionEnd=null;try{const t=this.createElement("div",document);if(null!=this.getStyle(t,"animationName"))this._animationPrefix="";else{const e=["Webkit","Moz","O","ms"];for(let n=0;n<e.length;n++)if(null!=this.getStyle(t,e[n]+"AnimationName")){this._animationPrefix="-"+e[n].toLowerCase()+"-";break}}const e={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};Object.keys(e).forEach(n=>{null!=this.getStyle(t,n)&&(this._transitionEnd=e[n])})}catch(t){this._animationPrefix=null,this._transitionEnd=null}}getDistributedNodes(t){return t.getDistributedNodes()}resolveAndSetHref(t,e,n){t.href=null==n?e:e+"/../"+n}supportsDOMEvents(){return!0}supportsNativeShadowDOM(){return"function"==typeof document.body.createShadowRoot}getAnimationPrefix(){return this._animationPrefix?this._animationPrefix:""}getTransitionEnd(){return this._transitionEnd?this._transitionEnd:""}supportsAnimation(){return null!=this._animationPrefix&&null!=this._transitionEnd}}{parse(t){throw new Error("parse not implemented")}static makeCurrent(){var t;t=new c,i||(i=t)}hasProperty(t,e){return e in t}setProperty(t,e,n){t[e]=n}getProperty(t,e){return t[e]}invoke(t,e,n){t[e](...n)}logError(t){window.console&&(console.error?console.error(t):console.log(t))}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}get attrToPropMap(){return u}contains(t,e){return d.call(t,e)}querySelector(t,e){return t.querySelector(e)}querySelectorAll(t,e){return t.querySelectorAll(e)}on(t,e,n){t.addEventListener(e,n,!1)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}createMouseEvent(t){const e=this.getDefaultDocument().createEvent("MouseEvent");return e.initEvent(t,!0,!0),e}createEvent(t){const e=this.getDefaultDocument().createEvent("Event");return e.initEvent(t,!0,!0),e}preventDefault(t){t.preventDefault(),t.returnValue=!1}isPrevented(t){return t.defaultPrevented||null!=t.returnValue&&!t.returnValue}getInnerHTML(t){return t.innerHTML}getTemplateContent(t){return"content"in t&&this.isTemplateElement(t)?t.content:null}getOuterHTML(t){return t.outerHTML}nodeName(t){return t.nodeName}nodeValue(t){return t.nodeValue}type(t){return t.type}content(t){return this.hasProperty(t,"content")?t.content:t}firstChild(t){return t.firstChild}nextSibling(t){return t.nextSibling}parentElement(t){return t.parentNode}childNodes(t){return t.childNodes}childNodesAsList(t){const e=t.childNodes,n=new Array(e.length);for(let a=0;a<e.length;a++)n[a]=e[a];return n}clearNodes(t){for(;t.firstChild;)t.removeChild(t.firstChild)}appendChild(t,e){t.appendChild(e)}removeChild(t,e){t.removeChild(e)}replaceChild(t,e,n){t.replaceChild(e,n)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}insertBefore(t,e,n){t.insertBefore(n,e)}insertAllBefore(t,e,n){n.forEach(n=>t.insertBefore(n,e))}insertAfter(t,e,n){t.insertBefore(n,e.nextSibling)}setInnerHTML(t,e){t.innerHTML=e}getText(t){return t.textContent}setText(t,e){t.textContent=e}getValue(t){return t.value}setValue(t,e){t.value=e}getChecked(t){return t.checked}setChecked(t,e){t.checked=e}createComment(t){return this.getDefaultDocument().createComment(t)}createTemplate(t){const e=this.getDefaultDocument().createElement("template");return e.innerHTML=t,e}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createElementNS(t,e,n){return(n=n||this.getDefaultDocument()).createElementNS(t,e)}createTextNode(t,e){return(e=e||this.getDefaultDocument()).createTextNode(t)}createScriptTag(t,e,n){const a=(n=n||this.getDefaultDocument()).createElement("SCRIPT");return a.setAttribute(t,e),a}createStyleElement(t,e){const n=(e=e||this.getDefaultDocument()).createElement("style");return this.appendChild(n,this.createTextNode(t,e)),n}createShadowRoot(t){return t.createShadowRoot()}getShadowRoot(t){return t.shadowRoot}getHost(t){return t.host}clone(t){return t.cloneNode(!0)}getElementsByClassName(t,e){return t.getElementsByClassName(e)}getElementsByTagName(t,e){return t.getElementsByTagName(e)}classList(t){return Array.prototype.slice.call(t.classList,0)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}hasClass(t,e){return t.classList.contains(e)}setStyle(t,e,n){t.style[e]=n}removeStyle(t,e){t.style[e]=""}getStyle(t,e){return t.style[e]}hasStyle(t,e,n){const a=this.getStyle(t,e)||"";return n?a==n:a.length>0}tagName(t){return t.tagName}attributeMap(t){const e=new Map,n=t.attributes;for(let a=0;a<n.length;a++){const t=n.item(a);e.set(t.name,t.value)}return e}hasAttribute(t,e){return t.hasAttribute(e)}hasAttributeNS(t,e,n){return t.hasAttributeNS(e,n)}getAttribute(t,e){return t.getAttribute(e)}getAttributeNS(t,e,n){return t.getAttributeNS(e,n)}setAttribute(t,e,n){t.setAttribute(e,n)}setAttributeNS(t,e,n,a){t.setAttributeNS(e,n,a)}removeAttribute(t,e){t.removeAttribute(e)}removeAttributeNS(t,e,n){t.removeAttributeNS(e,n)}templateAwareRoot(t){return this.isTemplateElement(t)?this.content(t):t}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}getBoundingClientRect(t){try{return t.getBoundingClientRect()}catch(e){return{top:0,bottom:0,left:0,right:0,width:0,height:0}}}getTitle(t){return t.title}setTitle(t,e){t.title=e||""}elementMatches(t,e){return!!this.isElementNode(t)&&(t.matches&&t.matches(e)||t.msMatchesSelector&&t.msMatchesSelector(e)||t.webkitMatchesSelector&&t.webkitMatchesSelector(e))}isTemplateElement(t){return this.isElementNode(t)&&"TEMPLATE"===t.nodeName}isTextNode(t){return t.nodeType===Node.TEXT_NODE}isCommentNode(t){return t.nodeType===Node.COMMENT_NODE}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}hasShadowRoot(t){return null!=t.shadowRoot&&t instanceof HTMLElement}isShadowRoot(t){return t instanceof DocumentFragment}importIntoDoc(t){return document.importNode(this.templateAwareRoot(t),!0)}adoptNode(t){return document.adoptNode(t)}getHref(t){return t.getAttribute("href")}getEventKey(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&l.hasOwnProperty(e)&&(e=l[e]))}return o[e]||e}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=h||(h=document.querySelector("base"),h)?h.getAttribute("href"):null;return null==e?null:(n=e,f||(f=document.createElement("a")),f.setAttribute("href",n),"/"===f.pathname.charAt(0)?f.pathname:"/"+f.pathname);var n}resetBaseElement(){h=null}getUserAgent(){return window.navigator.userAgent}setData(t,e,n){this.setAttribute(t,"data-"+e,n)}getData(t,e){return this.getAttribute(t,"data-"+e)}getComputedStyle(t){return getComputedStyle(t)}supportsWebAnimation(){return"function"==typeof Element.prototype.animate}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return Object(a["ɵparseCookieValue"])(document.cookie,t)}setCookie(t,e){document.cookie=encodeURIComponent(t)+"="+encodeURIComponent(e)}}let f,h=null;function g(){return!!window.history.pushState}const p=new r.InjectionToken("TRANSITION_ID"),b=[{provide:r.APP_INITIALIZER,useFactory:function(t,e,n){return()=>{n.get(r.ApplicationInitStatus).donePromise.then(()=>{const n=s();Array.prototype.slice.apply(n.querySelectorAll(e,"style[ng-transition]")).filter(e=>n.getAttribute(e,"ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[p,a.DOCUMENT,r.Injector],multi:!0}];class m{static init(){Object(r.setTestabilityGetter)(new m)}addToWindow(t){r["ɵglobal"].getAngularTestability=(e,n=!0)=>{const a=t.findTestabilityInTree(e,n);if(null==a)throw new Error("Could not find testability for element.");return a},r["ɵglobal"].getAllAngularTestabilities=()=>t.getAllTestabilities(),r["ɵglobal"].getAllAngularRootElements=()=>t.getAllRootElements(),r["ɵglobal"].frameworkStabilizers||(r["ɵglobal"].frameworkStabilizers=[]),r["ɵglobal"].frameworkStabilizers.push(t=>{const e=r["ɵglobal"].getAllAngularTestabilities();let n=e.length,a=!1;const i=function(e){a=a||e,n--,0==n&&t(a)};e.forEach((function(t){t.whenStable(i)}))})}findTestabilityInTree(t,e,n){if(null==e)return null;const a=t.getTestability(e);return null!=a?a:n?s().isShadowRoot(e)?this.findTestabilityInTree(t,s().getHost(e),!0):this.findTestabilityInTree(t,s().parentElement(e),!0):null}}function y(t,e){"undefined"!=typeof COMPILED&&COMPILED||((r["ɵglobal"].ng=r["ɵglobal"].ng||{})[t]=e)}const v=(()=>({ApplicationRef:r.ApplicationRef,NgZone:r.NgZone}))();function x(t){return Object(r.getDebugNode)(t)}function _(t){return y("probe",x),y("coreTokens",Object.assign({},v,(t||[]).reduce((t,e)=>(t[e.name]=e.token,t),{}))),()=>x}const T=new r.InjectionToken("EventManagerPlugins");class w{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let a=0;a<n.length;a++){const e=n[a];if(e.supports(t))return this._eventNameToPlugin.set(t,e),e}throw new Error("No event manager plugin found for event "+t)}}class O{constructor(t){this._doc=t}addGlobalEventListener(t,e,n){const a=s().getGlobalEventTarget(this._doc,t);if(!a)throw new Error(`Unsupported event target ${a} for event ${e}`);return this.addEventListener(a,e,n)}}class S{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}class I extends S{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>s().remove(t))}}const N={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},C=/%COMP%/g;function R(t,e,n){for(let a=0;a<e.length;a++){let r=e[a];Array.isArray(r)?R(t,r,n):(r=r.replace(C,t),n.push(r))}return n}function A(t){return e=>{!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}class k{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new E(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case r.ViewEncapsulation.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new P(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case r.ViewEncapsulation.Native:case r.ViewEncapsulation.ShadowDom:return new M(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=R(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}class E{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(N[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,a){if(a){e=a+":"+e;const r=N[a];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const a=N[n];a?t.removeAttributeNS(a,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,a){a&r.RendererStyleFlags2.DashCase?t.style.setProperty(e,n,a&r.RendererStyleFlags2.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&r.RendererStyleFlags2.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){D(e,"property"),t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return D(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,A(n)):this.eventManager.addEventListener(t,e,A(n))}}const L=(()=>"@".charCodeAt(0))();function D(t,e){if(t.charCodeAt(0)===L)throw new Error(`Found the synthetic ${e} ${t}. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.`)}class P extends E{constructor(t,e,n,a){super(t),this.component=n;const r=R(a+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr="_ngcontent-%COMP%".replace(C,a+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(C,t)}(a+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class M extends E{constructor(t,e,n,a){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=a,this.shadowRoot=a.encapsulation===r.ViewEncapsulation.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const i=R(a.id,a.styles,[]);for(let r=0;r<i.length;r++){const t=document.createElement("style");t.textContent=i[r],this.shadowRoot.appendChild(t)}}nodeOrShadowRoot(t){return t===this.hostEl?this.shadowRoot:t}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}appendChild(t,e){return super.appendChild(this.nodeOrShadowRoot(t),e)}insertBefore(t,e,n){return super.insertBefore(this.nodeOrShadowRoot(t),e,n)}removeChild(t,e){return super.removeChild(this.nodeOrShadowRoot(t),e)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}}const q=(()=>"undefined"!=typeof Zone&&Zone.__symbol__||function(t){return"__zone_symbol__"+t})(),j=q("addEventListener"),F=q("removeEventListener"),V={},G="__zone_symbol__propagationStopped",B=(()=>{const t="undefined"!=typeof Zone&&Zone[q("BLACK_LISTED_EVENTS")];if(t){const e={};return t.forEach(t=>{e[t]=t}),e}})(),z=function(t){return!!B&&B.hasOwnProperty(t)},Y=function(t){const e=V[t.type];if(!e)return;const n=this[e];if(!n)return;const a=[t];if(1===n.length){const t=n[0];return t.zone!==Zone.current?t.zone.run(t.handler,this,a):t.handler.apply(this,a)}{const e=n.slice();for(let n=0;n<e.length&&!0!==t[G];n++){const t=e[n];t.zone!==Zone.current?t.zone.run(t.handler,this,a):t.handler.apply(this,a)}}};class H extends O{constructor(t,e,n){super(t),this.ngZone=e,n&&Object(a.isPlatformServer)(n)||this.patchEvent()}patchEvent(){if("undefined"==typeof Event||!Event||!Event.prototype)return;if(Event.prototype.__zone_symbol__stopImmediatePropagation)return;const t=Event.prototype.__zone_symbol__stopImmediatePropagation=Event.prototype.stopImmediatePropagation;Event.prototype.stopImmediatePropagation=function(){this&&(this[G]=!0),t&&t.apply(this,arguments)}}supports(t){return!0}addEventListener(t,e,n){let a=n;if(!t[j]||r.NgZone.isInAngularZone()&&!z(e))t.addEventListener(e,a,!1);else{let n=V[e];n||(n=V[e]=q("ANGULAR"+e+"FALSE"));let r=t[n];const i=r&&r.length>0;r||(r=t[n]=[]);const s=z(e)?Zone.root:Zone.current;if(0===r.length)r.push({zone:s,handler:a});else{let t=!1;for(let e=0;e<r.length;e++)if(r[e].handler===a){t=!0;break}t||r.push({zone:s,handler:a})}i||t[j](e,Y,!1)}return()=>this.removeEventListener(t,e,a)}removeEventListener(t,e,n){let a=t[F];if(!a)return t.removeEventListener.apply(t,[e,n,!1]);let r=V[e],i=r&&t[r];if(!i)return t.removeEventListener.apply(t,[e,n,!1]);let s=!1;for(let u=0;u<i.length;u++)if(i[u].handler===n){s=!0,i.splice(u,1);break}s?0===i.length&&a.apply(t,[e,Y,!1]):t.removeEventListener.apply(t,[e,n,!1])}}const U={pan:!0,panstart:!0,panmove:!0,panend:!0,pancancel:!0,panleft:!0,panright:!0,panup:!0,pandown:!0,pinch:!0,pinchstart:!0,pinchmove:!0,pinchend:!0,pinchcancel:!0,pinchin:!0,pinchout:!0,press:!0,pressup:!0,rotate:!0,rotatestart:!0,rotatemove:!0,rotateend:!0,rotatecancel:!0,swipe:!0,swipeleft:!0,swiperight:!0,swipeup:!0,swipedown:!0,tap:!0},W=new r.InjectionToken("HammerGestureConfig"),K=new r.InjectionToken("HammerLoader");class ${constructor(){this.events=[],this.overrides={}}buildHammer(t){const e=new Hammer(t,this.options);e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0});for(const n in this.overrides)e.get(n).set(this.overrides[n]);return e}}class Z extends O{constructor(t,e,n,a){super(t),this._config=e,this.console=n,this.loader=a}supports(t){return!(!U.hasOwnProperty(t.toLowerCase())&&!this.isCustomEvent(t)||!window.Hammer&&!this.loader&&(this.console.warn(`The "${t}" event cannot be bound because Hammer.JS is not loaded and no custom loader has been specified.`),1))}addEventListener(t,e,n){const a=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){let a=!1,r=()=>{a=!0};return this.loader().then(()=>{if(!window.Hammer)return this.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(r=()=>{});a||(r=this.addEventListener(t,e,n))}).catch(()=>{this.console.warn(`The "${e}" event cannot be bound because the custom Hammer.JS loader failed.`),r=()=>{}}),()=>{r()}}return a.runOutsideAngular(()=>{const r=this._config.buildHammer(t),i=function(t){a.runGuarded((function(){n(t)}))};return r.on(e,i),()=>{r.off(e,i),"function"==typeof r.destroy&&r.destroy()}})}isCustomEvent(t){return this._config.events.indexOf(t)>-1}}const J=["alt","control","meta","shift"],Q={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};class X extends O{constructor(t){super(t)}supports(t){return null!=X.parseEventName(t)}addEventListener(t,e,n){const a=X.parseEventName(e),r=X.eventCallback(a.fullKey,n,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>s().onAndCancel(t,a.domEventName,r))}static parseEventName(t){const e=t.toLowerCase().split("."),n=e.shift();if(0===e.length||"keydown"!==n&&"keyup"!==n)return null;const a=X._normalizeKey(e.pop());let r="";if(J.forEach(t=>{const n=e.indexOf(t);n>-1&&(e.splice(n,1),r+=t+".")}),r+=a,0!=e.length||0===a.length)return null;const i={};return i.domEventName=n,i.fullKey=r,i}static getEventFullKey(t){let e="",n=s().getEventKey(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),J.forEach(a=>{a!=n&&(0,Q[a])(t)&&(e+=a+".")}),e+=n,e}static eventCallback(t,e,n){return a=>{X.getEventFullKey(a)===t&&n.runGuarded(()=>e(a))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}class tt{}class et extends tt{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case r.SecurityContext.NONE:return e;case r.SecurityContext.HTML:return e instanceof at?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"HTML"),Object(r["ɵ_sanitizeHtml"])(this._doc,String(e)));case r.SecurityContext.STYLE:return e instanceof rt?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"Style"),Object(r["ɵ_sanitizeStyle"])(e));case r.SecurityContext.SCRIPT:if(e instanceof it)return e.changingThisBreaksApplicationSecurity;throw this.checkNotSafeValue(e,"Script"),new Error("unsafe value used in a script context");case r.SecurityContext.URL:return e instanceof ut||e instanceof st?e.changingThisBreaksApplicationSecurity:(this.checkNotSafeValue(e,"URL"),Object(r["ɵ_sanitizeUrl"])(String(e)));case r.SecurityContext.RESOURCE_URL:if(e instanceof ut)return e.changingThisBreaksApplicationSecurity;throw this.checkNotSafeValue(e,"ResourceURL"),new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see http://g.co/ng/security#xss)`)}}checkNotSafeValue(t,e){if(t instanceof nt)throw new Error(`Required a safe ${e}, got a ${t.getTypeName()} (see http://g.co/ng/security#xss)`)}bypassSecurityTrustHtml(t){return new at(t)}bypassSecurityTrustStyle(t){return new rt(t)}bypassSecurityTrustScript(t){return new it(t)}bypassSecurityTrustUrl(t){return new st(t)}bypassSecurityTrustResourceUrl(t){return new ut(t)}}class nt{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"}}class at extends nt{getTypeName(){return"HTML"}}class rt extends nt{getTypeName(){return"Style"}}class it extends nt{getTypeName(){return"Script"}}class st extends nt{getTypeName(){return"URL"}}class ut extends nt{getTypeName(){return"ResourceURL"}}const ot=[{provide:r.PLATFORM_ID,useValue:a["ɵPLATFORM_BROWSER_ID"]},{provide:r.PLATFORM_INITIALIZER,useValue:function(){c.makeCurrent(),m.init()},multi:!0},{provide:a.PlatformLocation,useClass:class extends a.PlatformLocation{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=s().getLocation(),this._history=s().getHistory()}getBaseHrefFromDOM(){return s().getBaseHref(this._doc)}onPopState(t){s().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)}onHashChange(t){s().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){g()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){g()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}getState(){return this._history.state}},deps:[a.DOCUMENT]},{provide:a.DOCUMENT,useFactory:function(){return document},deps:[]}],lt=Object(r.createPlatformFactory)(r.platformCore,"browser",ot);class dt{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:dt,providers:[{provide:r.APP_ID,useValue:t.appId},{provide:p,useExisting:r.APP_ID},b]}}}"undefined"!=typeof window&&window},cVYH:function(t,e,n){var a=n("hh1v"),r=n("0rvr");t.exports=function(t,e,n){var i,s;return r&&"function"==typeof(i=e.constructor)&&i!==n&&a(s=i.prototype)&&s!==n.prototype&&r(t,s),t}},cjaf:function(t,e){t.exports=function(t){return this.__data__.get(t)}},cp0P:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("HDdC"),r=n("DH7j"),i=n("lJxs"),s=n("XoHu"),u=n("Cfvw");function o(...t){if(1===t.length){const e=t[0];if(Object(r.a)(e))return l(e,null);if(Object(s.a)(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return l(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return l(t=1===t.length&&Object(r.a)(t[0])?t[0]:t,null).pipe(Object(i.a)(t=>e(...t)))}return l(t,null)}function l(t,e){return new a.a(n=>{const a=t.length;if(0===a)return void n.complete();const r=new Array(a);let i=0,s=0;for(let o=0;o<a;o++){const l=Object(u.a)(t[o]);let d=!1;n.add(l.subscribe({next:t=>{d||(d=!0,s++),r[o]=t},error:t=>n.error(t),complete:()=>{i++,i!==a&&d||(s===a&&n.next(e?e.reduce((t,e,n)=>(t[e]=r[n],t),{}):r),n.complete())}}))}})}},crnd:function(t,e){function n(t){return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}))}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="crnd"},czMo:function(t,e,n){!function(t){"use strict";t.defineLocale("en-il",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}})}(n("wd/R"))},"d+Og":function(t,e,n){"use strict";var a=n("LvDl");let r=(()=>{class t{constructor(t){if(this.type=t,!this.isValidType())throw new Error("Wrong placement group category type");this.setTypeStates()}isValidType(){return t.VALID_CATEGORIES.includes(this.type)}setTypeStates(){switch(this.type){case t.CATEGORY_CLEAN:this.states=["active","clean"];break;case t.CATEGORY_WORKING:this.states=["activating","backfill_wait","backfilling","creating","deep","degraded","forced_backfill","forced_recovery","peering","peered","recovering","recovery_wait","repair","scrubbing","snaptrim","snaptrim_wait"];break;case t.CATEGORY_WARNING:this.states=["backfill_toofull","backfill_unfound","down","incomplete","inconsistent","recovery_toofull","recovery_unfound","remapped","snaptrim_error","stale","undersized"];break;default:this.states=[]}}}return t.CATEGORY_CLEAN="clean",t.CATEGORY_WORKING="working",t.CATEGORY_WARNING="warning",t.CATEGORY_UNKNOWN="unknown",t.VALID_CATEGORIES=[t.CATEGORY_CLEAN,t.CATEGORY_WORKING,t.CATEGORY_WARNING,t.CATEGORY_UNKNOWN],t})();var i=n("8Y7J"),s=n("kJI8");n.d(e,"a",(function(){return u}));let u=(()=>{class t{constructor(){this.categories=this.createCategories()}getAllTypes(){return r.VALID_CATEGORIES}getTypeByStates(t){const e=this.getPgStatesFromText(t);if(0===e.length)return r.CATEGORY_UNKNOWN;const n=a.zipObject(r.VALID_CATEGORIES,r.VALID_CATEGORIES.map(t=>a.intersection(this.categories[t].states,e).length));if(n[r.CATEGORY_WARNING]>0)return r.CATEGORY_WARNING;const i=n[r.CATEGORY_WORKING];return e.length>n[r.CATEGORY_CLEAN]+i?r.CATEGORY_UNKNOWN:i?r.CATEGORY_WORKING:r.CATEGORY_CLEAN}createCategories(){return a.zipObject(r.VALID_CATEGORIES,r.VALID_CATEGORIES.map(t=>new r(t)))}getPgStatesFromText(t){const e=t.replace(/[^a-z]+/g," ").trim().split(" ");return a.uniq(e)}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:s.a}),t})()},dApe:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("8Y7J"),r=n("2vnA"),i=n("MP8s"),s=n("X+05"),u=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},o=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},l=function(){function t(t){var e=this;this.treeModel=t,this.yBlocks=0,this.x=0,this.viewportHeight=null,this.viewport=null,t.virtualScroll=this,this._dispose=[Object(r.b)((function(){return e.fixScroll()}))]}return Object.defineProperty(t.prototype,"y",{get:function(){return 150*this.yBlocks},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalHeight",{get:function(){return this.treeModel.virtualRoot?this.treeModel.virtualRoot.height:0},enumerable:!0,configurable:!0}),t.prototype.fireEvent=function(t){this.treeModel.fireEvent(t)},t.prototype.init=function(){var t=this,e=this.recalcPositions.bind(this);e(),this._dispose=this._dispose.concat([Object(r.e)((function(){return t.treeModel.roots}),e),Object(r.e)((function(){return t.treeModel.expandedNodeIds}),e),Object(r.e)((function(){return t.treeModel.hiddenNodeIds}),e)]),this.treeModel.subscribe(s.a.loadNodeChildren,e)},t.prototype.isEnabled=function(){return this.treeModel.options.useVirtualScroll},t.prototype._setYBlocks=function(t){this.yBlocks=t},t.prototype.recalcPositions=function(){this.treeModel.virtualRoot.height=this._getPositionAfter(this.treeModel.getVisibleRoots(),0)},t.prototype._getPositionAfter=function(t,e){var n=this,a=e;return t.forEach((function(t){t.position=a,a=n._getPositionAfterNode(t,a)})),a},t.prototype._getPositionAfterNode=function(t,e){var n=t.getSelfHeight()+e;return t.children&&t.isExpanded&&(n=this._getPositionAfter(t.visibleChildren,n)),t.height=n-e,n},t.prototype.clear=function(){this._dispose.forEach((function(t){return t()}))},t.prototype.setViewport=function(t){Object.assign(this,{viewport:t,x:t.scrollLeft,yBlocks:Math.round(t.scrollTop/150),viewportHeight:t.getBoundingClientRect?t.getBoundingClientRect().height:0})},t.prototype.scrollIntoView=function(t,e,n){if(void 0===n&&(n=!0),t.options.scrollContainer){var a=t.options.scrollContainer,r=a.getBoundingClientRect().height,i=a.getBoundingClientRect().top,s=this.viewport.getBoundingClientRect().top+t.position-i;(e||s<a.scrollTop||s+t.getSelfHeight()>a.scrollTop+r)&&(a.scrollTop=n?s-r/2:s)}else(e||t.position<this.y||t.position+t.getSelfHeight()>this.y+this.viewportHeight)&&this.viewport&&(this.viewport.scrollTop=n?t.position-this.viewportHeight/2:t.position,this._setYBlocks(Math.floor(this.viewport.scrollTop/150)))},t.prototype.getViewportNodes=function(t){var e=this;if(!t)return[];var n=t.filter((function(t){return!t.isHidden}));if(!this.isEnabled())return n;if(!this.viewportHeight||!n.length)return[];var a=d(n,(function(t){return t.position+500>e.y||t.position+t.height>e.y})),r=d(n,(function(t){return t.position-500>e.y+e.viewportHeight}),a),i=[];if(r-a>(1e3+this.viewportHeight)/n[0].treeModel.options.options.nodeHeight)return[];for(var s=a;s<=r;s++)i.push(n[s]);return i},t.prototype.fixScroll=function(){var t=Math.max(0,this.totalHeight-this.viewportHeight);this.y<0&&this._setYBlocks(0),this.y>t&&this._setYBlocks(t/150)},u([r.d,o("design:type",Object)],t.prototype,"yBlocks",void 0),u([r.d,o("design:type",Object)],t.prototype,"x",void 0),u([r.d,o("design:type",Object)],t.prototype,"viewportHeight",void 0),u([r.c,o("design:type",Object),o("design:paramtypes",[])],t.prototype,"y",null),u([r.c,o("design:type",Object),o("design:paramtypes",[])],t.prototype,"totalHeight",null),u([r.a,o("design:type",Function),o("design:paramtypes",[Object]),o("design:returntype",void 0)],t.prototype,"_setYBlocks",null),u([r.a,o("design:type",Function),o("design:paramtypes",[]),o("design:returntype",void 0)],t.prototype,"recalcPositions",null),u([r.a,o("design:type",Function),o("design:paramtypes",[Object]),o("design:returntype",void 0)],t.prototype,"setViewport",null),u([r.a,o("design:type",Function),o("design:paramtypes",[Object,Object,Object]),o("design:returntype",void 0)],t.prototype,"scrollIntoView",null),u([Object(a.Injectable)(),o("design:paramtypes",[i.a])],t)}();function d(t,e,n){void 0===n&&(n=0);for(var a=n,r=t.length-1;a!==r;){var i=Math.floor((a+r)/2);e(t[i])?r=i:a=a===i?r:i}return a}},"dBg+":function(t,e){e.f=Object.getOwnPropertySymbols},dCge:function(t,e){t.exports=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}},dEH0:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{transform(t){return t+" ms"}}},dNwA:function(t,e,n){!function(t){"use strict";t.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",ss:"sekunde %d",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"masiku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}})}(n("wd/R"))},dX5L:function(t,e,n){var a=n("KFwg")(n("Wa4q"),"DataView");t.exports=a},dgut:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("NEZu");n("Fgil");class r{constructor(t){this.dimlessBinaryPipe=t,this.style={height:"30px",width:"100px"},this.colors=[{backgroundColor:"rgba(40,140,234,0.2)",borderColor:"rgba(40,140,234,1)",pointBackgroundColor:"rgba(40,140,234,1)",pointBorderColor:"#fff",pointHoverBackgroundColor:"#fff",pointHoverBorderColor:"rgba(40,140,234,0.8)"}],this.options={animation:{duration:0},responsive:!0,maintainAspectRatio:!1,legend:{display:!1},elements:{line:{borderWidth:1}},tooltips:{enabled:!1,mode:"index",intersect:!1,custom:void 0,callbacks:{label:t=>this.isBinary?this.dimlessBinaryPipe.transform(t.yLabel):t.yLabel,title:()=>""}},scales:{yAxes:[{display:!1}],xAxes:[{display:!1}]}},this.datasets=[{data:[]}],this.labels=[]}ngOnInit(){const t=new a.a(this.chartCanvasRef,this.chartTooltipRef,(t,e)=>e+t.caretX+"px",t=>t.caretY-t.height-t.yPadding-5+"px");t.customColors={backgroundColor:this.colors[0].pointBackgroundColor,borderColor:this.colors[0].pointBorderColor},this.options.tooltips.custom=e=>{t.customTooltips(e)}}ngOnChanges(t){this.datasets[0].data=t.data.currentValue,this.labels=[...Array(t.data.currentValue.length)]}}},"e+ae":function(t,e,n){!function(t){"use strict";var e="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),n="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_");function a(t){return t>1&&t<5}function r(t,e,n,r){var i=t+" ";switch(n){case"s":return e||r?"pár sekúnd":"pár sekundami";case"ss":return e||r?i+(a(t)?"sekundy":"sekúnd"):i+"sekundami";case"m":return e?"minúta":r?"minútu":"minútou";case"mm":return e||r?i+(a(t)?"minúty":"minút"):i+"minútami";case"h":return e?"hodina":r?"hodinu":"hodinou";case"hh":return e||r?i+(a(t)?"hodiny":"hodín"):i+"hodinami";case"d":return e||r?"deň":"dňom";case"dd":return e||r?i+(a(t)?"dni":"dní"):i+"dňami";case"M":return e||r?"mesiac":"mesiacom";case"MM":return e||r?i+(a(t)?"mesiace":"mesiacov"):i+"mesiacmi";case"y":return e||r?"rok":"rokom";case"yy":return e||r?i+(a(t)?"roky":"rokov"):i+"rokmi"}}t.defineLocale("sk",{months:e,monthsShort:n,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:r,ss:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},e0ae:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=function(t,e,n){this.name=t,this.version=e,this.os=n,this.type="browser"},r=function(t){this.version=t,this.type="node",this.name="node",this.os=process.platform},i=function(t,e,n,a){this.name=t,this.version=e,this.os=n,this.bot=a,this.type="bot-device"},s=function(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null},u=/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,o=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["vivaldi",/Vivaldi\/([0-9\.]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/Edg\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FBAV\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["searchbot",/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/]],l=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function d(t){return t?c(t):"undefined"!=typeof navigator?c(navigator.userAgent):"undefined"!=typeof process&&process.version?new r(process.version.slice(1)):null}function c(t){var e=function(t){return""!==t&&o.reduce((function(e,n){var a=n[0];if(e)return e;var r=n[1].exec(t);return!!r&&[a,r]}),!1)}(t);if(!e)return null;var n=e[0],r=e[1];if("searchbot"===n)return new s;var d=r[1]&&r[1].split(/[._]/).slice(0,3);d?d.length<3&&(d=function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var a=Array(t),r=0;for(e=0;e<n;e++)for(var i=arguments[e],s=0,u=i.length;s<u;s++,r++)a[r]=i[s];return a}(d,function(t){for(var e=[],n=0;n<t;n++)e.push("0");return e}(3-d.length))):d=[];var c=d.join("."),f=function(t){for(var e=0,n=l.length;e<n;e++){var a=l[e],r=a[0];if(a[1].exec(t))return r}return null}(t),h=u.exec(t);return h&&h[1]?new i(n,c,f,h[1]):new a(n,d.join("."),f)}},eAIQ:function(t,e,n){var a=n("77kF"),r=n("MBcj");t.exports=function(t){return a(t,r(t))}},"eDl+":function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},eH2F:function(t,e){t.exports=function(t){return function(e,n,a){for(var r=-1,i=Object(e),s=a(e),u=s.length;u--;){var o=s[t?u:++r];if(!1===n(i[o],o,i))break}return e}}},eIep:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("l7GE"),r=n("51Dv"),i=n("ZUHj"),s=n("lJxs"),u=n("Cfvw");function o(t,e){return"function"==typeof e?n=>n.pipe(o((n,a)=>Object(u.a)(t(n,a)).pipe(Object(s.a)((t,r)=>e(n,t,a,r))))):e=>e.lift(new l(t))}class l{constructor(t){this.project=t}call(t,e){return e.subscribe(new d(t,this.project))}}class d extends a.a{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(a){return void this.destination.error(a)}this._innerSub(e,t,n)}_innerSub(t,e,n){const a=this.innerSubscription;a&&a.unsubscribe();const s=new r.a(this,e,n),u=this.destination;u.add(s),this.innerSubscription=Object(i.a)(this,t,void 0,void 0,s),this.innerSubscription!==s&&u.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,a,r){this.destination.next(e)}}},eNG0:function(t,e){var n=Object.prototype.toString;t.exports=function(t){return n.call(t)}},eQba:function(t,e,n){var a=n("2zzJ");t.exports=function(t,e,n){var r=null==t?void 0:a(t,e);return void 0===r?n:r}},eTJe:function(t,e,n){"use strict";var a=n("s7LF"),r=n("LvDl"),i=n("cp0P"),s=(n("SgmB"),n("ZDA6"),n("sne2"),n("mtw6")),u=n("QFaf"),o=n("1Ni5"),l=(n("9nlD"),function(t){return t.editing="editing",t}({}));class d{}n.d(e,"a",(function(){return c}));class c{constructor(t,e,n,a,r,i,s){this.route=t,this.router=e,this.roleService=n,this.scopeService=a,this.notificationService=r,this.i18n=i,this.actionLabels=s,this.scopes=[],this.scopes_permissions=[],this.roleFormMode=l,this.resource=this.i18n("role"),this.createForm(),this.listenToChanges()}createForm(){this.roleForm=new u.a({name:new a.i("",{validators:[a.B.required],asyncValidators:[o.a.unique(this.roleService.exists,this.roleService)]}),description:new a.i(""),scopes_permissions:new a.i({})})}ngOnInit(){this.columns=[{prop:"scope",name:this.i18n("All"),flexGrow:2,cellTemplate:this.cellScopeCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl},{prop:"read",name:this.i18n("Read"),flexGrow:1,cellClass:"text-center",cellTemplate:this.cellPermissionCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl},{prop:"create",name:this.i18n("Create"),flexGrow:1,cellClass:"text-center",cellTemplate:this.cellPermissionCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl},{prop:"update",name:this.i18n("Update"),flexGrow:1,cellClass:"text-center",cellTemplate:this.cellPermissionCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl},{prop:"delete",name:this.i18n("Delete"),flexGrow:1,cellClass:"text-center",cellTemplate:this.cellPermissionCheckboxTpl,headerTemplate:this.headerPermissionCheckboxTpl}],this.router.url.startsWith("/user-management/roles/edit")?(this.mode=this.roleFormMode.editing,this.action=this.actionLabels.EDIT):this.action=this.actionLabels.CREATE,this.mode===this.roleFormMode.editing?this.initEdit():this.initCreate()}initCreate(){this.scopeService.list().subscribe(t=>{this.scopes=t,this.roleForm.get("scopes_permissions").setValue({})})}initEdit(){this.roleForm.get("name").disable(),this.route.params.subscribe(t=>{const e=[];e.push(this.scopeService.list()),e.push(this.roleService.get(t.name)),Object(i.a)(e).subscribe(t=>{this.scopes=t[0],["name","description","scopes_permissions"].forEach(e=>this.roleForm.get(e).setValue(t[1][e]))})})}listenToChanges(){this.roleForm.get("scopes_permissions").valueChanges.subscribe(t=>{const e=[];r.each(this.scopes,n=>{const a={read:!1,create:!1,update:!1,delete:!1};a.scope=n,n in t&&r.each(t[n],t=>{a[t]=!0}),e.push(a)}),this.scopes_permissions=e})}isRowChecked(t){const e=r.find(this.scopes_permissions,e=>e.scope===t);return!r.isUndefined(e)&&e.read&&e.create&&e.update&&e.delete}isHeaderChecked(t){let e=[t];return"scope"===t&&(e=["read","create","update","delete"]),e.every(t=>this.scopes_permissions.every(e=>e[t]))}onClickCellCheckbox(t,e,n=null){const a=r.cloneDeep(this.roleForm.getValue("scopes_permissions"));let i=[e];"scope"===e&&(i=["read","create","update","delete"]),t in a||(a[t]=[]),n&&n.target.checked||!r.isEqual(i.sort(),r.intersection(a[t],i).sort())?a[t]=r.union(a[t],i):(a[t]=r.difference(a[t],i),r.isEmpty(a[t])&&r.unset(a,t)),this.roleForm.get("scopes_permissions").setValue(a)}onClickHeaderCheckbox(t,e){const n=r.cloneDeep(this.roleForm.getValue("scopes_permissions"));let a=[t];"scope"===t&&(a=["read","create","update","delete"]),r.each(a,t=>{r.each(this.scopes,a=>{e.target.checked?n[a]=r.union(n[a],[t]):(n[a]=r.difference(n[a],[t]),r.isEmpty(n[a])&&r.unset(n,a))})}),this.roleForm.get("scopes_permissions").setValue(n)}getRequest(){const t=new d;return["name","description","scopes_permissions"].forEach(e=>t[e]=this.roleForm.get(e).value),t}createAction(){const t=this.getRequest();this.roleService.create(t).subscribe(()=>{this.notificationService.show(s.a.success,this.i18n("Created role '{{role_name}}'",{role_name:t.name})),this.router.navigate(["/user-management/roles"])},()=>{this.roleForm.setErrors({cdSubmitButton:!0})})}editAction(){const t=this.getRequest();this.roleService.update(t).subscribe(()=>{this.notificationService.show(s.a.success,this.i18n("Updated role '{{role_name}}'",{role_name:t.name})),this.router.navigate(["/user-management/roles"])},()=>{this.roleForm.setErrors({cdSubmitButton:!0})})}submit(){this.mode===this.roleFormMode.editing?this.editAction():this.createAction()}}},efK2:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t,e,n){return a.isString(t)?(n=a.defaultTo(n,""),a.truncate(t,{length:e,omission:n})):t}}},"ej+x":function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("lOp/"),r=n("8Y7J"),i=n("IheW");let s=(()=>{class t{constructor(t,e){this.http=t,this.timerService=e,this.API_URL="api/feature_toggles",this.REFRESH_INTERVAL=3e4,this.featureToggleMap$=this.timerService.get(()=>this.http.get(this.API_URL),this.REFRESH_INTERVAL)}get(){return this.featureToggleMap$}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t(r["ɵɵinject"](i.c),r["ɵɵinject"](a.a))},token:t,providedIn:"root"}),t})()},emnf:function(t,e,n){var a=n("YGUN"),r=n("w/8D"),i=n("aHcz");t.exports=r?function(t,e){return r(t,"toString",{configurable:!0,enumerable:!1,value:a(e),writable:!0})}:i},ewvW:function(t,e,n){var a=n("HYAF");t.exports=function(t){return Object(a(t))}},ezUo:function(t,e,n){var a=n("xT5m"),r=n("LxgN"),i=n("K1DE");t.exports=function(t,e,n,s,u,o){var l=1&n,d=t.length,c=e.length;if(d!=c&&!(l&&c>d))return!1;var f=o.get(t),h=o.get(e);if(f&&h)return f==e&&h==t;var g=-1,p=!0,b=2&n?new a:void 0;for(o.set(t,e),o.set(e,t);++g<d;){var m=t[g],y=e[g];if(s)var v=l?s(y,m,g,e,t,o):s(m,y,g,t,e,o);if(void 0!==v){if(v)continue;p=!1;break}if(b){if(!r(e,(function(t,e){if(!i(b,e)&&(m===t||u(m,t,n,s,o)))return b.push(e)}))){p=!1;break}}else if(m!==y&&!u(m,y,n,s,o)){p=!1;break}}return o.delete(t),o.delete(e),p}},"f/UV":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},f5p1:function(t,e,n){var a=n("2oRo"),r=n("iSVu"),i=a.WeakMap;t.exports="function"==typeof i&&/native code/.test(r(i))},f95s:function(t,e,n){"use strict";n.d(e,"a",(function(){return p}));var a=n("2vnA"),r=n("X+05"),i=n("8SuI"),s=n.n(i),u=n("gBXJ"),o=n.n(u),l=n("aTV8"),d=n.n(l),c=n("7VGY"),f=n.n(c),h=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},g=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},p=function(){function t(t,e,n,a){var r=this;this.data=t,this.parent=e,this.treeModel=n,this.position=0,this.allowDrop=function(t,e){return r.options.allowDrop(t,{parent:r,index:0},e)},this.allowDragoverStyling=function(){return r.options.allowDragoverStyling},null==this.id&&(this.id=Math.floor(1e13*Math.random())),this.index=a,this.getField("children")&&this._initChildren(),this.autoLoadChildren()}return Object.defineProperty(t.prototype,"isHidden",{get:function(){return this.treeModel.isHidden(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isExpanded",{get:function(){return this.treeModel.isExpanded(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isActive",{get:function(){return this.treeModel.isActive(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isFocused",{get:function(){return this.treeModel.isNodeFocused(this)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isSelected",{get:function(){return this.isSelectable()?this.treeModel.isSelected(this):d()(this.children,(function(t){return t.isSelected}))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isAllSelected",{get:function(){return this.isSelectable()?this.treeModel.isSelected(this):f()(this.children,(function(t){return t.isAllSelected}))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isPartiallySelected",{get:function(){return this.isSelected&&!this.isAllSelected},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"level",{get:function(){return this.parent?this.parent.level+1:0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return this.parent?this.parent.path.concat([this.id]):[]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"elementRef",{get:function(){throw"Element Ref is no longer supported since introducing virtual scroll\n\n      You may use a template to obtain a reference to the element"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"originalNode",{get:function(){return this._originalNode},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasChildren",{get:function(){return!!(this.getField("hasChildren")||this.children&&this.children.length>0)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isCollapsed",{get:function(){return!this.isExpanded},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isLeaf",{get:function(){return!this.hasChildren},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isRoot",{get:function(){return this.parent.data.virtual},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"realParent",{get:function(){return this.isRoot?null:this.parent},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"options",{get:function(){return this.treeModel.options},enumerable:!0,configurable:!0}),t.prototype.fireEvent=function(t){this.treeModel.fireEvent(t)},Object.defineProperty(t.prototype,"displayField",{get:function(){return this.getField("display")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"id",{get:function(){return this.getField("id")},set:function(t){this.setField("id",t)},enumerable:!0,configurable:!0}),t.prototype.getField=function(t){return this.data[this.options[t+"Field"]]},t.prototype.setField=function(t,e){this.data[this.options[t+"Field"]]=e},t.prototype._findAdjacentSibling=function(t,e){void 0===e&&(e=!1);var n=this._getParentsChildren(e),a=n.indexOf(this);return n.length>a+t?n[a+t]:null},t.prototype.findNextSibling=function(t){return void 0===t&&(t=!1),this._findAdjacentSibling(1,t)},t.prototype.findPreviousSibling=function(t){return void 0===t&&(t=!1),this._findAdjacentSibling(-1,t)},t.prototype.getVisibleChildren=function(){return this.visibleChildren},Object.defineProperty(t.prototype,"visibleChildren",{get:function(){return(this.children||[]).filter((function(t){return!t.isHidden}))},enumerable:!0,configurable:!0}),t.prototype.getFirstChild=function(t){void 0===t&&(t=!1);var e=t?this.visibleChildren:this.children;return s()(e||[])},t.prototype.getLastChild=function(t){void 0===t&&(t=!1);var e=t?this.visibleChildren:this.children;return o()(e||[])},t.prototype.findNextNode=function(t,e){return void 0===t&&(t=!0),void 0===e&&(e=!1),t&&this.isExpanded&&this.getFirstChild(e)||this.findNextSibling(e)||this.parent&&this.parent.findNextNode(!1,e)},t.prototype.findPreviousNode=function(t){void 0===t&&(t=!1);var e=this.findPreviousSibling(t);return e?e._getLastOpenDescendant(t):this.realParent},t.prototype._getLastOpenDescendant=function(t){void 0===t&&(t=!1);var e=this.getLastChild(t);return this.isCollapsed||!e?this:e._getLastOpenDescendant(t)},t.prototype._getParentsChildren=function(t){return void 0===t&&(t=!1),this.parent&&(t?this.parent.getVisibleChildren():this.parent.children)||[]},t.prototype.getIndexInParent=function(t){return void 0===t&&(t=!1),this._getParentsChildren(t).indexOf(this)},t.prototype.isDescendantOf=function(t){return this===t||this.parent&&this.parent.isDescendantOf(t)},t.prototype.getNodePadding=function(){return this.options.levelPadding*(this.level-1)+"px"},t.prototype.getClass=function(){return[this.options.nodeClass(this),"tree-node-level-"+this.level].join(" ")},t.prototype.onDrop=function(t){this.mouseAction("drop",t.event,{from:t.element,to:{parent:this,index:0,dropOnNode:!0}})},t.prototype.allowDrag=function(){return this.options.allowDrag(this)},t.prototype.loadNodeChildren=function(){var t=this;return this.options.getChildren?Promise.resolve(this.options.getChildren(this)).then((function(e){e&&(t.setField("children",e),t._initChildren(),t.options.useTriState&&t.treeModel.isSelected(t)&&t.setIsSelected(!0),t.children.forEach((function(t){t.getField("isExpanded")&&t.hasChildren&&t.expand()})))})).then((function(){t.fireEvent({eventName:r.a.loadNodeChildren,node:t})})):Promise.resolve()},t.prototype.expand=function(){return this.isExpanded||this.toggleExpanded(),this},t.prototype.collapse=function(){return this.isExpanded&&this.toggleExpanded(),this},t.prototype.doForAll=function(t){var e=this;Promise.resolve(t(this)).then((function(){e.children&&e.children.forEach((function(e){return e.doForAll(t)}))}))},t.prototype.expandAll=function(){this.doForAll((function(t){return t.expand()}))},t.prototype.collapseAll=function(){this.doForAll((function(t){return t.collapse()}))},t.prototype.ensureVisible=function(){return this.realParent&&(this.realParent.expand(),this.realParent.ensureVisible()),this},t.prototype.toggleExpanded=function(){return this.setIsExpanded(!this.isExpanded),this},t.prototype.setIsExpanded=function(t){return this.hasChildren&&this.treeModel.setExpandedNode(this,t),this},t.prototype.autoLoadChildren=function(){var t=this;this.handler=Object(a.e)((function(){return t.isExpanded}),(function(e){!t.children&&t.hasChildren&&e&&t.loadNodeChildren()}),{fireImmediately:!0})},t.prototype.dispose=function(){this.children&&this.children.forEach((function(t){return t.dispose()})),this.handler&&this.handler(),this.parent=null,this.children=null},t.prototype.setIsActive=function(t,e){return void 0===e&&(e=!1),this.treeModel.setActiveNode(this,t,e),t&&this.focus(this.options.scrollOnActivate),this},t.prototype.isSelectable=function(){return this.isLeaf||!this.children||!this.options.useTriState},t.prototype.setIsSelected=function(t){return this.isSelectable()?this.treeModel.setSelectedNode(this,t):this.visibleChildren.forEach((function(e){return e.setIsSelected(t)})),this},t.prototype.toggleSelected=function(){return this.setIsSelected(!this.isSelected),this},t.prototype.toggleActivated=function(t){return void 0===t&&(t=!1),this.setIsActive(!this.isActive,t),this},t.prototype.setActiveAndVisible=function(t){return void 0===t&&(t=!1),this.setIsActive(!0,t).ensureVisible(),setTimeout(this.scrollIntoView.bind(this)),this},t.prototype.scrollIntoView=function(t){void 0===t&&(t=!1),this.treeModel.virtualScroll.scrollIntoView(this,t)},t.prototype.focus=function(t){void 0===t&&(t=!0);var e=this.treeModel.getFocusedNode();return this.treeModel.setFocusedNode(this),t&&this.scrollIntoView(),e&&this.fireEvent({eventName:r.a.blur,node:e}),this.fireEvent({eventName:r.a.focus,node:this}),this},t.prototype.blur=function(){var t=this.treeModel.getFocusedNode();return this.treeModel.setFocusedNode(null),t&&this.fireEvent({eventName:r.a.blur,node:this}),this},t.prototype.setIsHidden=function(t){this.treeModel.setIsHidden(this,t)},t.prototype.hide=function(){this.setIsHidden(!0)},t.prototype.show=function(){this.setIsHidden(!1)},t.prototype.mouseAction=function(t,e,n){void 0===n&&(n=null),this.treeModel.setFocus(!0);var a=this.options.actionMapping.mouse[t];a&&a(this.treeModel,this,e,n)},t.prototype.getSelfHeight=function(){return this.options.nodeHeight(this)},t.prototype._initChildren=function(){var e=this;this.children=this.getField("children").map((function(n,a){return new t(n,e,e.treeModel,a)}))},h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isHidden",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isExpanded",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isActive",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isFocused",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isSelected",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isAllSelected",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"isPartiallySelected",null),h([a.d,g("design:type",Array)],t.prototype,"children",void 0),h([a.d,g("design:type",Number)],t.prototype,"index",void 0),h([a.d,g("design:type",Object)],t.prototype,"position",void 0),h([a.d,g("design:type",Number)],t.prototype,"height",void 0),h([a.c,g("design:type",Number),g("design:paramtypes",[])],t.prototype,"level",null),h([a.c,g("design:type",Array),g("design:paramtypes",[])],t.prototype,"path",null),h([a.c,g("design:type",Object),g("design:paramtypes",[])],t.prototype,"visibleChildren",null),h([a.a,g("design:type",Function),g("design:paramtypes",[Object]),g("design:returntype",void 0)],t.prototype,"setIsSelected",null),h([a.a,g("design:type",Function),g("design:paramtypes",[]),g("design:returntype",void 0)],t.prototype,"_initChildren",null),t}()},fHMY:function(t,e,n){var a,r=n("glrk"),i=n("N+g0"),s=n("eDl+"),u=n("0BK2"),o=n("G+Rx"),l=n("zBJ4"),d=n("93I0")("IE_PROTO"),c=function(){},f=function(t){return"<script>"+t+"<\/script>"},h=function(){try{a=document.domain&&new ActiveXObject("htmlfile")}catch(r){}var t,e;h=a?function(t){t.write(f("")),t.close();var e=t.parentWindow.Object;return t=null,e}(a):((e=l("iframe")).style.display="none",o.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(f("document.F=Object")),t.close(),t.F);for(var n=s.length;n--;)delete h.prototype[s[n]];return h()};u[d]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(c.prototype=r(t),n=new c,c.prototype=null,n[d]=t):n=h(),void 0===e?n:i(n,e)}},fIUv:function(t,e,n){var a=n("Wa4q");t.exports=function(){return a.Date.now()}},fdAy:function(t,e,n){"use strict";var a=n("I+eb"),r=n("ntOU"),i=n("4WOD"),s=n("0rvr"),u=n("1E5z"),o=n("kRJp"),l=n("busE"),d=n("tiKp"),c=n("xDBR"),f=n("P4y1"),h=n("rpNk"),g=h.IteratorPrototype,p=h.BUGGY_SAFARI_ITERATORS,b=d("iterator"),m=function(){return this};t.exports=function(t,e,n,d,h,y,v){r(n,e,d);var x,_,T,w=function(t){if(t===h&&C)return C;if(!p&&t in I)return I[t];switch(t){case"keys":case"values":case"entries":return function(){return new n(this,t)}}return function(){return new n(this)}},O=e+" Iterator",S=!1,I=t.prototype,N=I[b]||I["@@iterator"]||h&&I[h],C=!p&&N||w(h),R="Array"==e&&I.entries||N;if(R&&(x=i(R.call(new t)),g!==Object.prototype&&x.next&&(c||i(x)===g||(s?s(x,g):"function"!=typeof x[b]&&o(x,b,m)),u(x,O,!0,!0),c&&(f[O]=m))),"values"==h&&N&&"values"!==N.name&&(S=!0,C=function(){return N.call(this)}),c&&!v||I[b]===C||o(I,b,C),f[e]=C,h)if(_={values:w("values"),keys:y?C:w("keys"),entries:w("entries")},v)for(T in _)(p||S||!(T in I))&&l(I,T,_[T]);else a({target:e,proto:!0,forced:p||S},_);return _}},fqHM:function(t,e,n){var a=n("4a5m"),r=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,s=a((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(r,(function(t,n,a,r){e.push(a?r.replace(i,"$1"):n||t)})),e}));t.exports=s},fxL3:function(t,e,n){"use strict";n.d(e,"a",(function(){return g}));var a=n("8Y7J"),r=n("MP8s"),i=n("gk6K"),s=n("mfoh"),u=n("HIU9"),o=n("YCpU"),l=n.n(o),d=n("+Z6c"),c=n.n(d),f=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},h=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},g=function(){function t(t,e){var n=this;this.treeModel=t,this.treeDraggedElement=e,t.eventNames.forEach((function(t){return n[t]=new a.EventEmitter})),t.subscribeToState((function(t){return n.stateChange.emit(t)}))}return Object.defineProperty(t.prototype,"nodes",{set:function(t){},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"options",{set:function(t){},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"focused",{set:function(t){this.treeModel.setFocus(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"state",{set:function(t){this.treeModel.setState(t)},enumerable:!0,configurable:!0}),t.prototype.onKeydown=function(t){if(this.treeModel.isFocused&&!l()(["input","textarea"],document.activeElement.tagName.toLowerCase())){var e=this.treeModel.getFocusedNode();this.treeModel.performKeyAction(e,t)}},t.prototype.onMousedown=function(t){(function t(e,n){return!e||e.localName!==n&&t(e.parentElement,n)})(t.target,"tree-root")&&this.treeModel.setFocus(!1)},t.prototype.ngOnChanges=function(t){(t.options||t.nodes)&&this.treeModel.setData({options:t.options&&t.options.currentValue,nodes:t.nodes&&t.nodes.currentValue,events:c()(this,this.treeModel.eventNames)})},t.prototype.sizeChanged=function(){this.viewportComponent.setViewport()},f([Object(a.ContentChild)("loadingTemplate",{static:!1}),h("design:type",a.TemplateRef)],t.prototype,"loadingTemplate",void 0),f([Object(a.ContentChild)("treeNodeTemplate",{static:!1}),h("design:type",a.TemplateRef)],t.prototype,"treeNodeTemplate",void 0),f([Object(a.ContentChild)("treeNodeWrapperTemplate",{static:!1}),h("design:type",a.TemplateRef)],t.prototype,"treeNodeWrapperTemplate",void 0),f([Object(a.ContentChild)("treeNodeFullTemplate",{static:!1}),h("design:type",a.TemplateRef)],t.prototype,"treeNodeFullTemplate",void 0),f([Object(a.ViewChild)("viewport",{static:!1}),h("design:type",u.a)],t.prototype,"viewportComponent",void 0),f([Object(a.Input)(),h("design:type",Array),h("design:paramtypes",[Array])],t.prototype,"nodes",null),f([Object(a.Input)(),h("design:type",s.b),h("design:paramtypes",[s.b])],t.prototype,"options",null),f([Object(a.Input)(),h("design:type",Boolean),h("design:paramtypes",[Boolean])],t.prototype,"focused",null),f([Object(a.Input)(),h("design:type",Object),h("design:paramtypes",[Object])],t.prototype,"state",null),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"toggleExpanded",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"activate",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"deactivate",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"nodeActivate",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"nodeDeactivate",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"select",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"deselect",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"focus",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"blur",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"updateData",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"initialized",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"moveNode",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"copyNode",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"loadNodeChildren",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"changeFilter",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"event",void 0),f([Object(a.Output)(),h("design:type",Object)],t.prototype,"stateChange",void 0),f([Object(a.HostListener)("body: keydown",["$event"]),h("design:type",Function),h("design:paramtypes",[Object]),h("design:returntype",void 0)],t.prototype,"onKeydown",null),f([Object(a.HostListener)("body: mousedown",["$event"]),h("design:type",Function),h("design:paramtypes",[Object]),h("design:returntype",void 0)],t.prototype,"onMousedown",null),f([Object(a.Component)({selector:"Tree, tree-root",providers:[r.a],styles:[],template:'\n      <tree-viewport #viewport>\n          <div\n                  class="angular-tree-component"\n                  [class.node-dragging]="treeDraggedElement.isDragging()"\n                  [class.angular-tree-component-rtl]="treeModel.options.rtl">\n              <tree-node-collection\n                      *ngIf="treeModel.roots"\n                      [nodes]="treeModel.roots"\n                      [treeModel]="treeModel"\n                      [templates]="{\n            loadingTemplate: loadingTemplate,\n            treeNodeTemplate: treeNodeTemplate,\n            treeNodeWrapperTemplate: treeNodeWrapperTemplate,\n            treeNodeFullTemplate: treeNodeFullTemplate\n          }">\n              </tree-node-collection>\n              <tree-node-drop-slot\n                      class="empty-tree-drop-slot"\n                      *ngIf="treeModel.isEmptyTree()"\n                      [dropIndex]="0"\n                      [node]="treeModel.virtualRoot">\n              </tree-node-drop-slot>\n          </div>\n      </tree-viewport>\n  '}),h("design:paramtypes",[r.a,i.a])],t)}()},fzPg:function(t,e,n){!function(t){"use strict";t.defineLocale("yo",{months:"Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀".split("_"),monthsShort:"Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀".split("_"),weekdays:"Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta".split("_"),weekdaysShort:"Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá".split("_"),weekdaysMin:"Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Ònì ni] LT",nextDay:"[Ọ̀la ni] LT",nextWeek:"dddd [Ọsẹ̀ tón'bọ] [ni] LT",lastDay:"[Àna ni] LT",lastWeek:"dddd [Ọsẹ̀ tólọ́] [ni] LT",sameElse:"L"},relativeTime:{future:"ní %s",past:"%s kọjá",s:"ìsẹjú aayá die",ss:"aayá %d",m:"ìsẹjú kan",mm:"ìsẹjú %d",h:"wákati kan",hh:"wákati %d",d:"ọjọ́ kan",dd:"ọjọ́ %d",M:"osù kan",MM:"osù %d",y:"ọdún kan",yy:"ọdún %d"},dayOfMonthOrdinalParse:/ọjọ́\s\d{1,2}/,ordinal:"ọjọ́ %d",week:{dow:1,doy:4}})}(n("wd/R"))},"g6v/":function(t,e,n){var a=n("0Dky");t.exports=!a((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},gBXJ:function(t,e){t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},gHid:function(t,e,n){var a=n("aT2Y"),r=n("Gf4A"),i=n("SQuY");t.exports=function(t,e){var n=this.__data__;if(n instanceof a){var s=n.__data__;if(!r||s.length<199)return s.push([t,e]),this.size=++n.size,this;n=this.__data__=new i(s)}return n.set(t,e),this.size=n.size,this}},gRHU:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("2fFW"),r=n("NJ4a");const i={closed:!0,next(t){},error(t){if(a.a.useDeprecatedSynchronousErrorHandling)throw t;Object(r.a)(t)},complete(){}}},gVVK:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r=t+" ";switch(n){case"s":return e||a?"nekaj sekund":"nekaj sekundami";case"ss":return r+(1===t?e?"sekundo":"sekundi":2===t?e||a?"sekundi":"sekundah":t<5?e||a?"sekunde":"sekundah":"sekund");case"m":return e?"ena minuta":"eno minuto";case"mm":return r+(1===t?e?"minuta":"minuto":2===t?e||a?"minuti":"minutama":t<5?e||a?"minute":"minutami":e||a?"minut":"minutami");case"h":return e?"ena ura":"eno uro";case"hh":return r+(1===t?e?"ura":"uro":2===t?e||a?"uri":"urama":t<5?e||a?"ure":"urami":e||a?"ur":"urami");case"d":return e||a?"en dan":"enim dnem";case"dd":return r+(1===t?e||a?"dan":"dnem":2===t?e||a?"dni":"dnevoma":e||a?"dni":"dnevi");case"M":return e||a?"en mesec":"enim mesecem";case"MM":return r+(1===t?e||a?"mesec":"mesecem":2===t?e||a?"meseca":"mesecema":t<5?e||a?"mesece":"meseci":e||a?"mesecev":"meseci");case"y":return e||a?"eno leto":"enim letom";case"yy":return r+(1===t?e||a?"leto":"letom":2===t?e||a?"leti":"letoma":t<5?e||a?"leta":"leti":e||a?"let":"leti")}}t.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))},gekB:function(t,e,n){!function(t){"use strict";var e="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),n=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",e[7],e[8],e[9]];function a(t,a,r,i){var s="";switch(r){case"s":return i?"muutaman sekunnin":"muutama sekunti";case"ss":return i?"sekunnin":"sekuntia";case"m":return i?"minuutin":"minuutti";case"mm":s=i?"minuutin":"minuuttia";break;case"h":return i?"tunnin":"tunti";case"hh":s=i?"tunnin":"tuntia";break;case"d":return i?"päivän":"päivä";case"dd":s=i?"päivän":"päivää";break;case"M":return i?"kuukauden":"kuukausi";case"MM":s=i?"kuukauden":"kuukautta";break;case"y":return i?"vuoden":"vuosi";case"yy":s=i?"vuoden":"vuotta"}return function(t,a){return t<10?a?n[t]:e[t]:t}(t,i)+" "+s}t.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:a,ss:a,m:a,mm:a,h:a,hh:a,d:a,dd:a,M:a,MM:a,y:a,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},gjCT:function(t,e,n){!function(t){"use strict";var e={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"};t.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(t){return"م"===t},meridiem:function(t,e,n){return t<12?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:0,doy:6}})}(n("wd/R"))},gk6K:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("8Y7J"),r=function(){function t(){this._draggedElement=null}return t.prototype.set=function(t){this._draggedElement=t},t.prototype.get=function(){return this._draggedElement},t.prototype.isDragging=function(){return!!this.get()},function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}([Object(a.Injectable)()],t)}()},glrk:function(t,e,n){var a=n("hh1v");t.exports=function(t){if(!a(t))throw TypeError(String(t)+" is not an object");return t}},gp3X:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse");n("sb0X"),n.d(e,"a",(function(){return i})),n.d(e,"b",(function(){return u}));var i=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function s(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](3,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](4,2)],(function(t,e){var n=e.component,a=t(e,4,0,n.icons.spinner,n.icons.spin);t(e,3,0,a)}),null)}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,5,"button",[["class","btn btn-secondary tc_submitButton"]],[[8,"type",0],[8,"disabled",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.submit(n)&&a),a}),null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵncd"](null,0),(t()(),a["ɵand"](16777216,null,null,1,null,s)),a["ɵdid"](5,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"btn btn-secondary tc_submitButton",n.btnClass),t(e,5,0,n.loading)}),(function(t,e){var n=e.component;t(e,0,0,n.type,n.loading||n.disabled)}))}},h7vy:function(t,e,n){var a=n("LaC8"),r=n("x3F9");t.exports=function(t){return"number"==typeof t||r(t)&&"[object Number]"==a(t)}},"hKI/":function(t,e){var n=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,r=/^0b[01]+$/i,i=/^0o[0-7]+$/i,s=parseInt,u="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,l=u||o||Function("return this")(),d=Object.prototype.toString,c=Math.max,f=Math.min,h=function(){return l.Date.now()};function g(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function p(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&"[object Symbol]"==d.call(t)}(t))return NaN;if(g(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=g(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(n,"");var u=r.test(t);return u||i.test(t)?s(t.slice(2),u?2:8):a.test(t)?NaN:+t}t.exports=function(t,e,n){var a=!0,r=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return g(n)&&(a="leading"in n?!!n.leading:a,r="trailing"in n?!!n.trailing:r),function(t,e,n){var a,r,i,s,u,o,l=0,d=!1,b=!1,m=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function y(e){var n=a,i=r;return a=r=void 0,l=e,s=t.apply(i,n)}function v(t){return l=t,u=setTimeout(_,e),d?y(t):s}function x(t){var n=t-o;return void 0===o||n>=e||n<0||b&&t-l>=i}function _(){var t=h();if(x(t))return T(t);u=setTimeout(_,function(t){var n=e-(t-o);return b?f(n,i-(t-l)):n}(t))}function T(t){return u=void 0,m&&a?y(t):(a=r=void 0,s)}function w(){var t=h(),n=x(t);if(a=arguments,r=this,o=t,n){if(void 0===u)return v(o);if(b)return u=setTimeout(_,e),y(o)}return void 0===u&&(u=setTimeout(_,e)),s}return e=p(e)||0,g(n)&&(d=!!n.leading,i=(b="maxWait"in n)?c(p(n.maxWait)||0,e):i,m="trailing"in n?!!n.trailing:m),w.cancel=function(){void 0!==u&&clearTimeout(u),l=0,a=o=r=u=void 0},w.flush=function(){return void 0===u?s:T(h())},w}(t,e,{leading:a,maxWait:e,trailing:r})}},hKrs:function(t,e,n){!function(t){"use strict";t.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",ss:"%d секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(t){var e=t%10,n=t%100;return 0===t?t+"-ев":0===n?t+"-ен":n>10&&n<20?t+"-ти":1===e?t+"-ви":2===e?t+"-ри":7===e||8===e?t+"-ми":t+"-ти"},week:{dow:1,doy:7}})}(n("wd/R"))},hTsC:function(t,e,n){var a=n("CNUl"),r=n("NSEa"),i=n("R2cF"),s=n("THq6"),u=n("lEOU");t.exports=function(t,e,n){var o=t.constructor;switch(e){case"[object ArrayBuffer]":return a(t);case"[object Boolean]":case"[object Date]":return new o(+t);case"[object DataView]":return r(t,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return u(t,n);case"[object Map]":return new o;case"[object Number]":case"[object String]":return new o(t);case"[object RegExp]":return i(t);case"[object Set]":return new o;case"[object Symbol]":return s(t)}}},hfeG:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("s7LF"),s=n("ANnk"),u=n("f/UV"),o=n("aexS"),l=n("+gVj"),d=n("EmSq"),c=n("Fgil"),f=n("aXbf"),h=n("pYKc"),g=n("ppaS"),p=n("GiVz"),b=n("mXUL"),m=n("EEJc"),y=n("ajRT"),v=n("gp3X"),x=n("sb0X"),_=n("KVJa"),T=n("Z21x"),w=n("sne2"),O=n("Rf2I"),S=n("LqlI"),I=n("2EZI");n.d(e,"a",(function(){return G}));var N=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function C(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.titleText)}))}function R(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"p",[],null,null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.message)}))}function A(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"label",[["class","cd-col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),a["ɵpod"](3,{required:0}),(t()(),a["ɵted"](4,null,[" "," "]))],(function(t,e){var n=t(e,3,0,!0===(null==e.parent.context.$implicit?null:e.parent.context.$implicit.required));t(e,2,0,"cd-col-form-label",n)}),(function(t,e){t(e,0,0,e.parent.context.$implicit.name),t(e,4,0,e.parent.context.$implicit.label)}))}function k(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,7,"input",[["class","form-control"]],[[8,"type",0],[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var r=!0;return"input"===e&&(r=!1!==a["ɵnov"](t,1)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,1).onTouched()&&r),"compositionstart"===e&&(r=!1!==a["ɵnov"](t,1)._compositionStart()&&r),"compositionend"===e&&(r=!1!==a["ɵnov"](t,1)._compositionEnd(n.target.value)&&r),r}),null,null)),a["ɵdid"](1,16384,null,0,i.e,[a.Renderer2,a.ElementRef,[2,i.b]],null,null),a["ɵprd"](1024,null,i.p,(function(t){return[t]}),[i.e]),a["ɵdid"](3,671744,null,0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,i.q,null,[i.j]),a["ɵdid"](5,16384,null,0,i.r,[[4,i.q]],null,null),a["ɵdid"](6,4210688,null,0,s.a,[[2,u.a],o.a,a.ElementRef],null,null),a["ɵdid"](7,16384,null,0,l.h,[[3,i.d],l.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,3,0,e.parent.context.$implicit.name),t(e,7,0,e.parent.context.$implicit.name)}),(function(t,e){t(e,0,1,[e.parent.context.$implicit.type,e.parent.context.$implicit.name,e.parent.context.$implicit.name,a["ɵnov"](e,5).ngClassUntouched,a["ɵnov"](e,5).ngClassTouched,a["ɵnov"](e,5).ngClassPristine,a["ɵnov"](e,5).ngClassDirty,a["ɵnov"](e,5).ngClassValid,a["ɵnov"](e,5).ngClassInvalid,a["ɵnov"](e,5).ngClassPending,a["ɵnov"](e,7).validClass,a["ɵnov"](e,7).invalidClass])}))}function E(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"input",[["cdDimlessBinary",""],["class","form-control"],["type","text"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var r=!0;return"input"===e&&(r=!1!==a["ɵnov"](t,1)._handleInput(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,1).onTouched()&&r),"compositionstart"===e&&(r=!1!==a["ɵnov"](t,1)._compositionStart()&&r),"compositionend"===e&&(r=!1!==a["ɵnov"](t,1)._compositionEnd(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,6).onBlur(n.target.value)&&r),r}),null,null)),a["ɵdid"](1,16384,null,0,i.e,[a.Renderer2,a.ElementRef,[2,i.b]],null,null),a["ɵprd"](1024,null,i.p,(function(t){return[t]}),[i.e]),a["ɵdid"](3,671744,null,0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,i.q,null,[i.j]),a["ɵdid"](5,16384,null,0,i.r,[[4,i.q]],null,null),a["ɵdid"](6,81920,null,0,d.a,[a.ElementRef,i.q,c.a,f.a],null,null),a["ɵdid"](7,4210688,null,0,s.a,[[2,u.a],o.a,a.ElementRef],null,null),a["ɵdid"](8,16384,null,0,l.h,[[3,i.d],l.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,3,0,e.parent.context.$implicit.name),t(e,6,0),t(e,8,0,e.parent.context.$implicit.name)}),(function(t,e){t(e,0,1,[e.parent.context.$implicit.name,e.parent.context.$implicit.name,a["ɵnov"](e,5).ngClassUntouched,a["ɵnov"](e,5).ngClassTouched,a["ɵnov"](e,5).ngClassPristine,a["ɵnov"](e,5).ngClassDirty,a["ɵnov"](e,5).ngClassValid,a["ɵnov"](e,5).ngClassInvalid,a["ɵnov"](e,5).ngClassPending,a["ɵnov"](e,8).validClass,a["ɵnov"](e,8).invalidClass])}))}function L(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),a["ɵdid"](1,147456,null,0,i.v,[a.ElementRef,a.Renderer2,[2,i.A]],{ngValue:[0,"ngValue"]},null),a["ɵdid"](2,147456,null,0,i.F,[a.ElementRef,a.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),a["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),(function(t,e){t(e,3,0,null==e.parent.parent.context.$implicit||null==e.parent.parent.context.$implicit.typeConfig?null:e.parent.parent.context.$implicit.typeConfig.placeholder)}))}function D(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),a["ɵdid"](1,147456,null,0,i.v,[a.ElementRef,a.Renderer2,[2,i.A]],{value:[0,"value"]},null),a["ɵdid"](2,147456,null,0,i.F,[a.ElementRef,a.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),a["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.text)}))}function P(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,11,"select",[["class","form-control custom-select"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var r=!0;return"change"===e&&(r=!1!==a["ɵnov"](t,1).onChange(n.target.value)&&r),"blur"===e&&(r=!1!==a["ɵnov"](t,1).onTouched()&&r),r}),null,null)),a["ɵdid"](1,16384,null,0,i.A,[a.Renderer2,a.ElementRef],null,null),a["ɵprd"](1024,null,i.p,(function(t){return[t]}),[i.A]),a["ɵdid"](3,671744,null,0,i.j,[[3,i.d],[8,null],[8,null],[6,i.p],[2,i.E]],{name:[0,"name"]},null),a["ɵprd"](2048,null,i.q,null,[i.j]),a["ɵdid"](5,16384,null,0,i.r,[[4,i.q]],null,null),a["ɵdid"](6,4210688,null,0,s.a,[[2,u.a],o.a,a.ElementRef],null,null),a["ɵdid"](7,16384,null,0,l.h,[[3,i.d],l.a],{formControlName:[0,"formControlName"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,L)),a["ɵdid"](9,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,D)),a["ɵdid"](11,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,3,0,e.parent.context.$implicit.name),t(e,7,0,e.parent.context.$implicit.name),t(e,9,0,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.placeholder),t(e,11,0,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.options)}),(function(t,e){t(e,0,0,e.parent.context.$implicit.name,a["ɵnov"](e,5).ngClassUntouched,a["ɵnov"](e,5).ngClassTouched,a["ɵnov"](e,5).ngClassPristine,a["ɵnov"](e,5).ngClassDirty,a["ɵnov"](e,5).ngClassValid,a["ɵnov"](e,5).ngClassInvalid,a["ɵnov"](e,5).ngClassPending,a["ɵnov"](e,7).validClass,a["ɵnov"](e,7).invalidClass)}))}function M(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-select-badges",[],[[8,"id",0]],null,null,h.b,h.a)),a["ɵdid"](1,49152,null,0,g.a,[p.a],{data:[0,"data"],options:[1,"options"],messages:[2,"messages"],customBadges:[3,"customBadges"]},null)],(function(t,e){t(e,1,0,e.parent.context.$implicit.value,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.options,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.messages,null==e.parent.context.$implicit||null==e.parent.context.$implicit.typeConfig?null:e.parent.context.$implicit.typeConfig.customBadges)}),(function(t,e){t(e,0,0,e.parent.context.$implicit.name)}))}function q(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),a["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.getError(e.parent.context.$implicit))}))}function j(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,21,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,20,"div",[],[[8,"className",0],[2,"has-error",null],[2,"has-success",null]],null,null,b.b,b.a)),a["ɵdid"](2,1163264,null,2,l.c,[a.ElementRef,l.g],null,null),a["ɵqud"](603979776,1,{FormControlNames:1}),a["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),a["ɵand"](16777216,null,0,1,null,A)),a["ɵdid"](6,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](7,0,null,0,14,"div",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](9,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpod"](10,{"cd-col-form-input":0,"col-sm-12":1}),(t()(),a["ɵand"](16777216,null,null,2,null,k)),a["ɵdid"](12,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),a["ɵpad"](13,2),(t()(),a["ɵand"](16777216,null,null,1,null,E)),a["ɵdid"](15,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,P)),a["ɵdid"](17,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,M)),a["ɵdid"](19,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,q)),a["ɵdid"](21,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,6,0,e.context.$implicit.label);var r=t(e,10,0,e.context.$implicit.label,!e.context.$implicit.label);t(e,9,0,r);var i=t(e,13,0,"text","number").includes(e.context.$implicit.type);t(e,12,0,i),t(e,15,0,"binary"===e.context.$implicit.type),t(e,17,0,"select"===e.context.$implicit.type),t(e,19,0,"select-badges"===e.context.$implicit.type),t(e,21,0,n.formGroup.showError(e.context.$implicit.name,a["ɵnov"](e.parent,7)))}),(function(t,e){t(e,1,0,a["ɵinlineInterpolate"](1,"form-group row cd-",e.context.$implicit.name,"-form-group"),a["ɵnov"](e,2).hasErrors,a["ɵnov"](e,2).hasSuccess)}))}function F(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,22,"cd-modal",[],null,null,null,m.c,m.b)),a["ɵdid"](1,49152,null,0,y.a,[],{modalRef:[0,"modalRef"]},null),(t()(),a["ɵand"](16777216,null,0,1,null,C)),a["ɵdid"](3,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵeld"](4,0,null,1,18,null,null,null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,17,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var r=!0;return"submit"===e&&(r=!1!==a["ɵnov"](t,7).onSubmit(n)&&r),"reset"===e&&(r=!1!==a["ɵnov"](t,7).onReset()&&r),"submit"===e&&(r=!1!==a["ɵnov"](t,10).onSubmit()&&r),r}),null,null)),a["ɵdid"](6,16384,null,0,i.G,[],null,null),a["ɵdid"](7,540672,[["formDir",4]],0,i.l,[[8,null],[8,null]],{form:[0,"form"]},null),a["ɵprd"](2048,null,i.d,null,[i.l]),a["ɵdid"](9,16384,null,0,i.s,[[4,i.d]],null,null),a["ɵdid"](10,16384,null,0,l.d,[],{formGroup:[0,"formGroup"]},null),(t()(),a["ɵeld"](11,0,null,null,4,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),a["ɵand"](16777216,null,null,1,null,R)),a["ɵdid"](13,16384,null,0,r.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,j)),a["ɵdid"](15,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](16,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),a["ɵeld"](17,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](18,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0,r=t.component;return"submitAction"===e&&(a=!1!==r.onSubmitForm(r.formGroup.value)&&a),a}),v.b,v.a)),a["ɵdid"](19,114688,null,0,x.a,[a.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),a["ɵted"](20,0,[" "," "])),(t()(),a["ɵeld"](21,0,null,null,1,"cd-back-button",[],null,null,null,_.b,_.a)),a["ɵdid"](22,49152,null,0,T.a,[r.Location,w.b],{back:[0,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,3,0,n.titleText),t(e,7,0,n.formGroup),t(e,10,0,n.formGroup),t(e,13,0,n.message),t(e,15,0,n.fields),t(e,19,0,n.formGroup),t(e,22,0,n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,5,0,a["ɵnov"](e,9).ngClassUntouched,a["ɵnov"](e,9).ngClassTouched,a["ɵnov"](e,9).ngClassPristine,a["ɵnov"](e,9).ngClassDirty,a["ɵnov"](e,9).ngClassValid,a["ɵnov"](e,9).ngClassInvalid,a["ɵnov"](e,9).ngClassPending),t(e,20,0,n.submitButtonText)}))}function V(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"cd-form-modal",[],null,null,null,F,N)),a["ɵdid"](1,114688,null,0,O.a,[S.a,I.a,f.a,c.a,p.a],null,null)],(function(t,e){t(e,1,0)}),null)}var G=a["ɵccf"]("cd-form-modal",O.a,V,{},{},[])},hh1v:function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},hmSm:function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},honF:function(t,e,n){!function(t){"use strict";var e={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},n={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"};t.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",ss:"%d စက္ကန့်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(t){return t.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},week:{dow:1,doy:4}})}(n("wd/R"))},hpHm:function(t,e,n){"use strict";n.d(e,"a",(function(){return g})),n.d(e,"b",(function(){return p})),n.d(e,"c",(function(){return c})),n.d(e,"d",(function(){return h})),n.d(e,"e",(function(){return u})),n.d(e,"f",(function(){return s})),n.d(e,"g",(function(){return l})),n.d(e,"h",(function(){return o})),n.d(e,"i",(function(){return y})),n.d(e,"j",(function(){return d}));var a=n("8Y7J");class r{constructor(t,e){this.open=t,this.close=e||t}isManual(){return"manual"===this.open||"manual"===this.close}}const i={hover:["mouseover","mouseout"],focus:["focusin","focusout"]};function s(t,e=i){const n=(t||"").trim();if(0===n.length)return[];const a=n.split(/\s+/).map(t=>t.split(":")).map(t=>{const n=e[t[0]]||t;return new r(n[0],n[1])}),s=a.filter(t=>t.isManual());if(s.length>1)throw new Error("Triggers parse error: only one manual trigger is allowed");if(1===s.length&&a.length>1)throw new Error("Triggers parse error: manual trigger can't be mixed with other triggers");return a}function u(t,e){const n=s(e.triggers),a=e.target;if(1===n.length&&n[0].isManual())return Function.prototype;const r=[],i=[],u=()=>{i.forEach(t=>r.push(t())),i.length=0};return n.forEach(n=>{const s=n.open===n.close,o=s?e.toggle:e.show;s||i.push(()=>t.listen(a,n.close,e.hide)),r.push(t.listen(a,n.open,()=>o(u)))}),()=>{r.forEach(t=>t())}}function o(t,e){return e.outsideClick?t.listen("document","click",t=>{e.target&&e.target.contains(t.target)||e.targets&&e.targets.some(e=>e.contains(t.target))||e.hide()}):Function.prototype}function l(t,e){return e.outsideEsc?t.listen("document","keyup.esc",t=>{e.target&&e.target.contains(t.target)||e.targets&&e.targets.some(e=>e.contains(t.target))||e.hide()}):Function.prototype}const d="undefined"!=typeof window&&window||{},c=d.document;let f;function h(){return void 0===d||(void 0===d.__theme?(f||(f=function(){if("undefined"==typeof document)return null;const t=document.createElement("span");t.innerText="test bs version",document.body.appendChild(t),t.classList.add("d-none");const e=t.getBoundingClientRect();return document.body.removeChild(t),e&&0===e.top?"bs4":"bs3"}()),"bs3"===f):"bs4"!==d.__theme)}function g(t){return function(t,e){const n=` __${e}Value`;Object.defineProperty(t,e,{get(){return this[n]},set(t){const a=this[n];this[n]=t,a!==t&&this[e+"Change"]&&this[e+"Change"].emit(t)}})}}class p{static reflow(t){}static getStyles(t){let e=t.ownerDocument.defaultView;return e&&e.opener||(e=d),e.getComputedStyle(t)}}const b={},m="undefined"==typeof console||!("warn"in console);function y(t){!Object(a.isDevMode)()||m||t in b||(b[t]=!0,console.warn(t))}},hrfs:function(t,e,n){"use strict";n.d(e,"a",(function(){return b})),n.d(e,"b",(function(){return m})),n.d(e,"c",(function(){return g}));var a=n("8Y7J"),r=n("MO+k"),i=n("2Vo4"),s=n("lsW8");const u=[[255,99,132],[54,162,235],[255,206,86],[231,233,237],[75,192,192],[151,187,205],[220,220,220],[247,70,74],[70,191,189],[253,180,92],[148,159,177],[77,83,96]];function o(t,e){return"rgba("+t.concat(e).join(",")+")"}function l(t,e){return Math.floor(Math.random()*(e-t+1))+t}function d(t){return{backgroundColor:t.map(t=>o(t,.6)),borderColor:t.map(()=>"#fff"),pointBackgroundColor:t.map(t=>o(t,1)),pointBorderColor:t.map(()=>"#fff"),pointHoverBackgroundColor:t.map(t=>o(t,1)),pointHoverBorderColor:t.map(t=>o(t,1))}}function c(){return[l(0,255),l(0,255),l(0,255)]}function f(t){return u[t]||c()}function h(t){const e=new Array(t);for(let n=0;n<t;n++)e[n]=u[n]||c();return e}let g=(()=>{class t{constructor(){this.pColorschemesOptions={},this.colorschemesOptions=new i.a({})}setColorschemesOptions(t){this.pColorschemesOptions=t,this.colorschemesOptions.next(t)}getColorschemesOptions(){return this.pColorschemesOptions}}return t.ngInjectableDef=Object(a["ɵɵdefineInjectable"])({factory:function(){return new t},token:t,providedIn:"root"}),t})();const p=function(){var t={Default:0,Update:1,Refresh:2};return t[t.Default]="Default",t[t.Update]="Update",t[t.Refresh]="Refresh",t}();class b{constructor(t,e){this.element=t,this.themeService=e,this.options={},this.chartClick=new a.EventEmitter,this.chartHover=new a.EventEmitter,this.old={dataExists:!1,dataLength:0,datasetsExists:!1,datasetsLength:0,datasetsDataObjects:[],datasetsDataLengths:[],colorsExists:!1,colors:[],labelsExist:!1,labels:[],legendExists:!1,legend:{}},this.subs=[]}static registerPlugin(t){r.Chart.plugins.register(t)}static unregisterPlugin(t){r.Chart.plugins.unregister(t)}ngOnInit(){this.ctx=this.element.nativeElement.getContext("2d"),this.refresh(),this.subs.push(this.themeService.colorschemesOptions.subscribe(t=>this.themeChanged(t)))}themeChanged(t){this.refresh()}ngDoCheck(){if(!this.chart)return;let t=p.Default;const e=e=>{t=e>t?e:t};switch(!!this.data!==this.old.dataExists&&(this.propagateDataToDatasets(this.data),this.old.dataExists=!!this.data,e(p.Update)),this.data&&this.data.length!==this.old.dataLength&&(this.old.dataLength=this.data&&this.data.length||0,e(p.Update)),!!this.datasets!==this.old.datasetsExists&&(this.old.datasetsExists=!!this.datasets,e(p.Update)),this.datasets&&this.datasets.length!==this.old.datasetsLength&&(this.old.datasetsLength=this.datasets&&this.datasets.length||0,e(p.Update)),this.datasets&&this.datasets.filter((t,e)=>t.data!==this.old.datasetsDataObjects[e]).length&&(this.old.datasetsDataObjects=this.datasets.map(t=>t.data),e(p.Update)),this.datasets&&this.datasets.filter((t,e)=>t.data.length!==this.old.datasetsDataLengths[e]).length&&(this.old.datasetsDataLengths=this.datasets.map(t=>t.data.length),e(p.Update)),!!this.colors!==this.old.colorsExists&&(this.old.colorsExists=!!this.colors,this.updateColors(),e(p.Update)),this.colors&&this.colors.filter((t,e)=>!this.colorsEqual(t,this.old.colors[e])).length&&(this.old.colors=this.colors.map(t=>this.copyColor(t)),this.updateColors(),e(p.Update)),!!this.labels!==this.old.labelsExist&&(this.old.labelsExist=!!this.labels,e(p.Update)),this.labels&&this.labels.filter((t,e)=>!this.labelsEqual(t,this.old.labels[e])).length&&(this.old.labels=this.labels.map(t=>this.copyLabel(t)),e(p.Update)),!!this.options.legend!==this.old.legendExists&&(this.old.legendExists=!!this.options.legend,e(p.Refresh)),this.options.legend&&this.options.legend.position!==this.old.legend.position&&(this.old.legend.position=this.options.legend.position,e(p.Refresh)),t){case p.Default:break;case p.Update:this.update();break;case p.Refresh:this.refresh()}}copyLabel(t){return Array.isArray(t)?[...t]:t}labelsEqual(t,e){return Array.isArray(t)===Array.isArray(e)&&(Array.isArray(t)||t===e)&&(!Array.isArray(t)||t.length===e.length)&&(!Array.isArray(t)||0===t.filter((t,n)=>t!==e[n]).length)}copyColor(t){return{backgroundColor:t.backgroundColor,borderWidth:t.borderWidth,borderColor:t.borderColor,borderCapStyle:t.borderCapStyle,borderDash:t.borderDash,borderDashOffset:t.borderDashOffset,borderJoinStyle:t.borderJoinStyle,pointBorderColor:t.pointBorderColor,pointBackgroundColor:t.pointBackgroundColor,pointBorderWidth:t.pointBorderWidth,pointRadius:t.pointRadius,pointHoverRadius:t.pointHoverRadius,pointHitRadius:t.pointHitRadius,pointHoverBackgroundColor:t.pointHoverBackgroundColor,pointHoverBorderColor:t.pointHoverBorderColor,pointHoverBorderWidth:t.pointHoverBorderWidth,pointStyle:t.pointStyle,hoverBackgroundColor:t.hoverBackgroundColor,hoverBorderColor:t.hoverBorderColor,hoverBorderWidth:t.hoverBorderWidth}}colorsEqual(t,e){return!t==!e&&(!t||t.backgroundColor===e.backgroundColor&&t.borderWidth===e.borderWidth&&t.borderColor===e.borderColor&&t.borderCapStyle===e.borderCapStyle&&t.borderDash===e.borderDash&&t.borderDashOffset===e.borderDashOffset&&t.borderJoinStyle===e.borderJoinStyle&&t.pointBorderColor===e.pointBorderColor&&t.pointBackgroundColor===e.pointBackgroundColor&&t.pointBorderWidth===e.pointBorderWidth&&t.pointRadius===e.pointRadius&&t.pointHoverRadius===e.pointHoverRadius&&t.pointHitRadius===e.pointHitRadius&&t.pointHoverBackgroundColor===e.pointHoverBackgroundColor&&t.pointHoverBorderColor===e.pointHoverBorderColor&&t.pointHoverBorderWidth===e.pointHoverBorderWidth&&t.pointStyle===e.pointStyle&&t.hoverBackgroundColor===e.hoverBackgroundColor&&t.hoverBorderColor===e.hoverBorderColor&&t.hoverBorderWidth===e.hoverBorderWidth)}updateColors(){this.datasets.forEach((t,e)=>{this.colors&&this.colors[e]?Object.assign(t,this.colors[e]):Object.assign(t,function(t,e,n){if("pie"===t||"doughnut"===t)return d(h(n));if("polarArea"===t)return{backgroundColor:(a=h(n)).map(t=>o(t,.6)),borderColor:a.map(t=>o(t,1)),hoverBackgroundColor:a.map(t=>o(t,.8)),hoverBorderColor:a.map(t=>o(t,1))};var a;if("line"===t||"radar"===t)return function(t){return{backgroundColor:o(t,.4),borderColor:o(t,1),pointBackgroundColor:o(t,1),pointBorderColor:"#fff",pointHoverBackgroundColor:"#fff",pointHoverBorderColor:o(t,.8)}}(f(e));if("bar"===t||"horizontalBar"===t)return function(t){return{backgroundColor:o(t,.6),borderColor:o(t,1),hoverBackgroundColor:o(t,.8),hoverBorderColor:o(t,1)}}(f(e));if("bubble"===t)return d(h(n));if("scatter"===t)return d(h(n));throw new Error("getColors - Unsupported chart type "+t)}(this.chartType,e,t.data.length),Object.assign({},t))})}ngOnChanges(t){let e=p.Default;const n=t=>{e=t>e?t:e};switch(t.hasOwnProperty("data")&&t.data.currentValue&&(this.propagateDataToDatasets(t.data.currentValue),n(p.Update)),t.hasOwnProperty("datasets")&&t.datasets.currentValue&&(this.propagateDatasetsToData(t.datasets.currentValue),n(p.Update)),t.hasOwnProperty("labels")&&(this.chart&&(this.chart.data.labels=t.labels.currentValue),n(p.Update)),t.hasOwnProperty("legend")&&(this.chart&&(this.chart.config.options.legend.display=t.legend.currentValue,this.chart.generateLegend()),n(p.Update)),t.hasOwnProperty("options")&&n(p.Refresh),e){case p.Update:this.update();break;case p.Refresh:case p.Default:this.refresh()}}ngOnDestroy(){this.chart&&(this.chart.destroy(),this.chart=void 0),this.subs.forEach(t=>t.unsubscribe())}update(t,e){if(this.chart)return this.chart.update(t,e)}hideDataset(t,e){this.chart.getDatasetMeta(t).hidden=e,this.chart.update()}isDatasetHidden(t){return this.chart.getDatasetMeta(t).hidden}toBase64Image(){return this.chart.toBase64Image()}getChartConfiguration(){const t=this.getDatasets(),e=Object.assign({},this.options);!1===this.legend&&(e.legend={display:!1}),e.hover=e.hover||{},e.hover.onHover||(e.hover.onHover=(t,e)=>{e&&!e.length||this.chartHover.emit({event:t,active:e})}),e.onClick||(e.onClick=(t,e)=>{this.chartClick.emit({event:t,active:e})});const n=this.smartMerge(e,this.themeService.getColorschemesOptions());return{type:this.chartType,data:{labels:this.labels||[],datasets:t},plugins:this.plugins,options:n}}getChartBuilder(t){const e=this.getChartConfiguration();return new r.Chart(t,e)}smartMerge(t,e,n=0){if(0===n&&(t=Object(s.cloneDeep)(t)),Object.keys(e).forEach(a=>{if(Array.isArray(e[a])){const r=t[a];r&&r.forEach(t=>{this.smartMerge(t,e[a][0],n+1)})}else"object"==typeof e[a]?(a in t||(t[a]={}),this.smartMerge(t[a],e[a],n+1)):t[a]=e[a]}),0===n)return t}isMultiLineLabel(t){return Array.isArray(t)}joinLabel(t){return t?this.isMultiLineLabel(t)?t.join(" "):t:null}propagateDatasetsToData(t){this.data=this.datasets.map(t=>t.data),this.chart&&(this.chart.data.datasets=t),this.updateColors()}propagateDataToDatasets(t){this.isMultiDataSet(t)?this.datasets&&t.length===this.datasets.length?this.datasets.forEach((e,n)=>{e.data=t[n]}):(this.datasets=t.map((t,e)=>({data:t,label:this.joinLabel(this.labels[e])||"Label "+e})),this.chart&&(this.chart.data.datasets=this.datasets)):this.datasets?(this.datasets[0].data=t,this.datasets.splice(1)):(this.datasets=[{data:t}],this.chart&&(this.chart.data.datasets=this.datasets)),this.updateColors()}isMultiDataSet(t){return Array.isArray(t[0])}getDatasets(){if(!this.datasets&&!this.data)throw new Error("ng-charts configuration error, data or datasets field are required to render chart "+this.chartType);return this.datasets?(this.propagateDatasetsToData(this.datasets),this.datasets):this.data?(this.propagateDataToDatasets(this.data),this.datasets):void 0}refresh(){this.chart&&(this.chart.destroy(),this.chart=void 0),this.ctx&&(this.chart=this.getChartBuilder(this.ctx))}}class m{}},i4WA:function(t,e,n){"use strict";var a=n("8Y7J");n("6qls"),n("tz6c"),n("GiVz"),n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var r=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function i(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"a",[["target","_blank"]],[[8,"href",4]],null,null,null,null)),(t()(),a["ɵted"](1,null,["",""]))],null,(function(t,e){var n=e.component;t(e,0,0,a["ɵinlineInterpolate"](1,"",n.docUrl,"")),t(e,1,0,n.docText)}))}},iEDd:function(t,e,n){!function(t){"use strict";t.defineLocale("gl",{months:"xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort:"xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"domingo_luns_martes_mércores_xoves_venres_sábado".split("_"),weekdaysShort:"dom._lun._mar._mér._xov._ven._sáb.".split("_"),weekdaysMin:"do_lu_ma_mé_xo_ve_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(t){return 0===t.indexOf("un")?"n"+t:"en "+t},past:"hai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},iExv:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this.i18n=t}transform(t,e=this.i18n("Yes"),n=this.i18n("No")){return Boolean(t)?e:n}}},iInd:function(t,e,n){"use strict";var a=n("SVse"),r=n("8Y7J"),i=n("LRne"),s=n("Cfvw"),u=n("2Vo4"),o=n("HDdC"),l=n("sVev"),d=n("z+Ro"),c=n("DH7j"),f=n("l7GE"),h=n("ZUHj"),g=n("yCtX");const p={};class b{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new m(t,this.resultSelector))}}class m extends f.a{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(p),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n<e;n++){const e=t[n];this.add(Object(h.a)(this,e,e,n))}}}notifyComplete(t){0==(this.active-=1)&&this.destination.complete()}notifyNext(t,e,n,a,r){const i=this.values,s=this.toRespond?i[n]===p?--this.toRespond:this.toRespond:0;i[n]=e,0===s&&(this.resultSelector?this._tryResultSelector(i):this.destination.next(i.slice()))}_tryResultSelector(t){let e;try{e=this.resultSelector.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}var y=n("EY2u");function v(t){return new o.a(e=>{let n;try{n=t()}catch(a){return void e.error(a)}return(n?Object(s.a)(n):Object(y.b)()).subscribe(e)})}var x=n("XNiG"),_=n("lJxs"),T=n("0EUg"),w=n("NJ9Y"),O=n("JIr8"),S=n("SxV6"),I=n("5+tZ"),N=n("7o/Q");class C{constructor(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}call(t,e){return e.subscribe(new R(t,this.predicate,this.thisArg,this.source))}}class R extends N.a{constructor(t,e,n,a){super(t),this.predicate=e,this.thisArg=n,this.source=a,this.index=0,this.thisArg=n||this}notifyComplete(t){this.destination.next(t),this.destination.complete()}_next(t){let e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)}_complete(){this.notifyComplete(!0)}}var A=n("eIep"),k=n("IzEk"),E=n("GyhO"),L=n("Kqap"),D=n("pLZG"),P=n("bOdf"),M=n("128B"),q=n("vkgz"),j=n("nYR2"),F=n("bHdf"),V=n("cUpR");n.d(e,"F",(function(){return rt})),n.d(e,"v",(function(){return vn})),n.d(e,"C",(function(){return Rn})),n.d(e,"x",(function(){return wn})),n.d(e,"D",(function(){return An})),n.d(e,"E",(function(){return kn})),n.d(e,"z",(function(){return Sn})),n.d(e,"y",(function(){return On})),n.d(e,"B",(function(){return Cn})),n.d(e,"w",(function(){return _n})),n.d(e,"A",(function(){return Nn})),n.d(e,"G",(function(){return mn})),n.d(e,"n",(function(){return rn})),n.d(e,"p",(function(){return sn})),n.d(e,"o",(function(){return on})),n.d(e,"r",(function(){return cn})),n.d(e,"d",(function(){return z})),n.d(e,"e",(function(){return B})),n.d(e,"l",(function(){return Ke})),n.d(e,"m",(function(){return an})),n.d(e,"k",(function(){return Ze})),n.d(e,"i",(function(){return yn})),n.d(e,"j",(function(){return En})),n.d(e,"q",(function(){return Tn})),n.d(e,"b",(function(){return dn})),n.d(e,"f",(function(){return pn})),n.d(e,"g",(function(){return gn})),n.d(e,"h",(function(){return hn})),n.d(e,"s",(function(){return bn})),n.d(e,"a",(function(){return Wt})),n.d(e,"t",(function(){return Qe})),n.d(e,"c",(function(){return It})),n.d(e,"u",(function(){return St}));class G{constructor(t,e){this.id=t,this.url=e}}class B extends G{constructor(t,e,n="imperative",a=null){super(t,e),this.navigationTrigger=n,this.restoredState=a}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class z extends G{constructor(t,e,n){super(t,e),this.urlAfterRedirects=n}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class Y extends G{constructor(t,e,n){super(t,e),this.reason=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class H extends G{constructor(t,e,n){super(t,e),this.error=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class U extends G{constructor(t,e,n,a){super(t,e),this.urlAfterRedirects=n,this.state=a}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class W extends G{constructor(t,e,n,a){super(t,e),this.urlAfterRedirects=n,this.state=a}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class K extends G{constructor(t,e,n,a,r){super(t,e),this.urlAfterRedirects=n,this.state=a,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class $ extends G{constructor(t,e,n,a){super(t,e),this.urlAfterRedirects=n,this.state=a}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Z extends G{constructor(t,e,n,a){super(t,e),this.urlAfterRedirects=n,this.state=a}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class J{constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class Q{constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class X{constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class tt{constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class et{constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class nt{constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class at{constructor(t,e,n){this.routerEvent=t,this.position=e,this.anchor=n}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class rt{}class it{constructor(t){this.params=t||{}}has(t){return this.params.hasOwnProperty(t)}get(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){const e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}}function st(t){return new it(t)}function ut(t){const e=Error("NavigationCancelingError: "+t);return e.ngNavigationCancelingError=!0,e}function ot(t,e,n){const a=n.path.split("/");if(a.length>t.length)return null;if("full"===n.pathMatch&&(e.hasChildren()||a.length<t.length))return null;const r={};for(let i=0;i<a.length;i++){const e=a[i],n=t[i];if(e.startsWith(":"))r[e.substring(1)]=n;else if(e!==n.path)return null}return{consumed:t.slice(0,a.length),posParams:r}}class lt{constructor(t,e){this.routes=t,this.module=e}}function dt(t,e=""){for(let n=0;n<t.length;n++){const a=t[n];ct(a,ft(e,a))}}function ct(t,e){if(!t)throw new Error(`\n      Invalid configuration of route '${e}': Encountered undefined route.\n      The reason might be an extra comma.\n\n      Example:\n      const routes: Routes = [\n        { path: '', redirectTo: '/dashboard', pathMatch: 'full' },\n        { path: 'dashboard',  component: DashboardComponent },, << two commas\n        { path: 'detail/:id', component: HeroDetailComponent }\n      ];\n    `);if(Array.isArray(t))throw new Error(`Invalid configuration of route '${e}': Array cannot be specified`);if(!t.component&&!t.children&&!t.loadChildren&&t.outlet&&"primary"!==t.outlet)throw new Error(`Invalid configuration of route '${e}': a componentless route without children or loadChildren cannot have a named outlet set`);if(t.redirectTo&&t.children)throw new Error(`Invalid configuration of route '${e}': redirectTo and children cannot be used together`);if(t.redirectTo&&t.loadChildren)throw new Error(`Invalid configuration of route '${e}': redirectTo and loadChildren cannot be used together`);if(t.children&&t.loadChildren)throw new Error(`Invalid configuration of route '${e}': children and loadChildren cannot be used together`);if(t.redirectTo&&t.component)throw new Error(`Invalid configuration of route '${e}': redirectTo and component cannot be used together`);if(t.path&&t.matcher)throw new Error(`Invalid configuration of route '${e}': path and matcher cannot be used together`);if(void 0===t.redirectTo&&!t.component&&!t.children&&!t.loadChildren)throw new Error(`Invalid configuration of route '${e}'. One of the following must be provided: component, redirectTo, children or loadChildren`);if(void 0===t.path&&void 0===t.matcher)throw new Error(`Invalid configuration of route '${e}': routes must have either a path or a matcher specified`);if("string"==typeof t.path&&"/"===t.path.charAt(0))throw new Error(`Invalid configuration of route '${e}': path cannot start with a slash`);if(""===t.path&&void 0!==t.redirectTo&&void 0===t.pathMatch)throw new Error(`Invalid configuration of route '{path: "${e}", redirectTo: "${t.redirectTo}"}': please provide 'pathMatch'. The default value of 'pathMatch' is 'prefix', but often the intent is to use 'full'.`);if(void 0!==t.pathMatch&&"full"!==t.pathMatch&&"prefix"!==t.pathMatch)throw new Error(`Invalid configuration of route '${e}': pathMatch can only be set to 'prefix' or 'full'`);t.children&&dt(t.children,e)}function ft(t,e){return e?t||e.path?t&&!e.path?t+"/":!t&&e.path?e.path:`${t}/${e.path}`:"":t}function ht(t){const e=t.children&&t.children.map(ht),n=e?Object.assign({},t,{children:e}):Object.assign({},t);return!n.component&&(e||n.loadChildren)&&n.outlet&&"primary"!==n.outlet&&(n.component=rt),n}function gt(t,e){const n=Object.keys(t),a=Object.keys(e);if(!n||!a||n.length!=a.length)return!1;let r;for(let i=0;i<n.length;i++)if(r=n[i],t[r]!==e[r])return!1;return!0}function pt(t){return Array.prototype.concat.apply([],t)}function bt(t){return t.length>0?t[t.length-1]:null}function mt(t,e){for(const n in t)t.hasOwnProperty(n)&&e(t[n],n)}function yt(t){return Object(r["ɵisObservable"])(t)?t:Object(r["ɵisPromise"])(t)?Object(s.a)(Promise.resolve(t)):Object(i.a)(t)}function vt(t,e,n){return n?function(t,e){return gt(t,e)}(t.queryParams,e.queryParams)&&function t(e,n){if(!wt(e.segments,n.segments))return!1;if(e.numberOfChildren!==n.numberOfChildren)return!1;for(const a in n.children){if(!e.children[a])return!1;if(!t(e.children[a],n.children[a]))return!1}return!0}(t.root,e.root):function(t,e){return Object.keys(e).length<=Object.keys(t).length&&Object.keys(e).every(n=>e[n]===t[n])}(t.queryParams,e.queryParams)&&function t(e,n){return function e(n,a,r){if(n.segments.length>r.length)return!!wt(n.segments.slice(0,r.length),r)&&!a.hasChildren();if(n.segments.length===r.length){if(!wt(n.segments,r))return!1;for(const e in a.children){if(!n.children[e])return!1;if(!t(n.children[e],a.children[e]))return!1}return!0}{const t=r.slice(0,n.segments.length),i=r.slice(n.segments.length);return!!wt(n.segments,t)&&!!n.children.primary&&e(n.children.primary,a,i)}}(e,n,n.segments)}(t.root,e.root)}class xt{constructor(t,e,n){this.root=t,this.queryParams=e,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=st(this.queryParams)),this._queryParamMap}toString(){return Nt.serialize(this)}}class _t{constructor(t,e){this.segments=t,this.children=e,this.parent=null,mt(e,(t,e)=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Ct(this)}}class Tt{constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap||(this._parameterMap=st(this.parameters)),this._parameterMap}toString(){return Dt(this)}}function wt(t,e){return t.length===e.length&&t.every((t,n)=>t.path===e[n].path)}function Ot(t,e){let n=[];return mt(t.children,(t,a)=>{"primary"===a&&(n=n.concat(e(t,a)))}),mt(t.children,(t,a)=>{"primary"!==a&&(n=n.concat(e(t,a)))}),n}class St{}class It{parse(t){const e=new Ft(t);return new xt(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){return`${"/"+function t(e,n){if(!e.hasChildren())return Ct(e);if(n){const n=e.children.primary?t(e.children.primary,!1):"",a=[];return mt(e.children,(e,n)=>{"primary"!==n&&a.push(`${n}:${t(e,!1)}`)}),a.length>0?`${n}(${a.join("//")})`:n}{const n=Ot(e,(n,a)=>"primary"===a?[t(e.children.primary,!1)]:[`${a}:${t(n,!1)}`]);return`${Ct(e)}/(${n.join("//")})`}}(t.root,!0)}${function(t){const e=Object.keys(t).map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${At(e)}=${At(t)}`).join("&"):`${At(e)}=${At(n)}`});return e.length?"?"+e.join("&"):""}(t.queryParams)}${"string"==typeof t.fragment?"#"+encodeURI(t.fragment):""}`}}const Nt=new It;function Ct(t){return t.segments.map(t=>Dt(t)).join("/")}function Rt(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function At(t){return Rt(t).replace(/%3B/gi,";")}function kt(t){return Rt(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Et(t){return decodeURIComponent(t)}function Lt(t){return Et(t.replace(/\+/g,"%20"))}function Dt(t){return`${kt(t.path)}${e=t.parameters,Object.keys(e).map(t=>`;${kt(t)}=${kt(e[t])}`).join("")}`;var e}const Pt=/^[^\/()?;=#]+/;function Mt(t){const e=t.match(Pt);return e?e[0]:""}const qt=/^[^=?&#]+/,jt=/^[^?&#]+/;class Ft{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new _t([],{}):new _t([],this.parseChildren())}parseQueryParams(){const t={};if(this.consumeOptional("?"))do{this.parseQueryParam(t)}while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(e).length>0)&&(n.primary=new _t(t,e)),n}parseSegment(){const t=Mt(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new Error(`Empty path url segment cannot have parameters: '${this.remaining}'.`);return this.capture(t),new Tt(Et(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const e=Mt(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=Mt(this.remaining);t&&(n=t,this.capture(n))}t[Et(e)]=Et(n)}parseQueryParam(t){const e=function(t){const e=t.match(qt);return e?e[0]:""}(this.remaining);if(!e)return;this.capture(e);let n="";if(this.consumeOptional("=")){const t=function(t){const e=t.match(jt);return e?e[0]:""}(this.remaining);t&&(n=t,this.capture(n))}const a=Lt(e),r=Lt(n);if(t.hasOwnProperty(a)){let e=t[a];Array.isArray(e)||(e=[e],t[a]=e),e.push(r)}else t[a]=r}parseParens(t){const e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=Mt(this.remaining),a=this.remaining[n.length];if("/"!==a&&")"!==a&&";"!==a)throw new Error(`Cannot parse url '${this.url}'`);let r=void 0;n.indexOf(":")>-1?(r=n.substr(0,n.indexOf(":")),this.capture(r),this.capture(":")):t&&(r="primary");const i=this.parseChildren();e[r]=1===Object.keys(i).length?i.primary:new _t([],i),this.consumeOptional("//")}return e}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new Error(`Expected "${t}".`)}}class Vt{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){const e=Gt(t,this._root);return e?e.children.map(t=>t.value):[]}firstChild(t){const e=Gt(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){const e=Bt(t,this._root);return e.length<2?[]:e[e.length-2].children.map(t=>t.value).filter(e=>e!==t)}pathFromRoot(t){return Bt(t,this._root).map(t=>t.value)}}function Gt(t,e){if(t===e.value)return e;for(const n of e.children){const e=Gt(t,n);if(e)return e}return null}function Bt(t,e){if(t===e.value)return[e];for(const n of e.children){const a=Bt(t,n);if(a.length)return a.unshift(e),a}return[]}class zt{constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}}function Yt(t){const e={};return t&&t.children.forEach(t=>e[t.value.outlet]=t),e}class Ht extends Vt{constructor(t,e){super(t),this.snapshot=e,Jt(this,t)}toString(){return this.snapshot.toString()}}function Ut(t,e){const n=function(t,e){const n=new $t([],{},{},"",{},"primary",e,null,t.root,-1,{});return new Zt("",new zt(n,[]))}(t,e),a=new u.a([new Tt("",{})]),r=new u.a({}),i=new u.a({}),s=new u.a({}),o=new u.a(""),l=new Wt(a,r,s,o,i,"primary",e,n.root);return l.snapshot=n.root,new Ht(new zt(l,[]),n)}class Wt{constructor(t,e,n,a,r,i,s,u){this.url=t,this.params=e,this.queryParams=n,this.fragment=a,this.data=r,this.outlet=i,this.component=s,this._futureSnapshot=u}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe(Object(_.a)(t=>st(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(Object(_.a)(t=>st(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Kt(t,e="emptyOnly"){const n=t.pathFromRoot;let a=0;if("always"!==e)for(a=n.length-1;a>=1;){const t=n[a],e=n[a-1];if(t.routeConfig&&""===t.routeConfig.path)a--;else{if(e.component)break;a--}}return function(t){return t.reduce((t,e)=>({params:Object.assign({},t.params,e.params),data:Object.assign({},t.data,e.data),resolve:Object.assign({},t.resolve,e._resolvedData)}),{params:{},data:{},resolve:{}})}(n.slice(a))}class $t{constructor(t,e,n,a,r,i,s,u,o,l,d){this.url=t,this.params=e,this.queryParams=n,this.fragment=a,this.data=r,this.outlet=i,this.component=s,this.routeConfig=u,this._urlSegment=o,this._lastPathIndex=l,this._resolve=d}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=st(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=st(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(t=>t.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class Zt extends Vt{constructor(t,e){super(e),this.url=t,Jt(this,e)}toString(){return Qt(this._root)}}function Jt(t,e){e.value._routerState=t,e.children.forEach(e=>Jt(t,e))}function Qt(t){const e=t.children.length>0?` { ${t.children.map(Qt).join(", ")} } `:"";return`${t.value}${e}`}function Xt(t){if(t.snapshot){const e=t.snapshot,n=t._futureSnapshot;t.snapshot=n,gt(e.queryParams,n.queryParams)||t.queryParams.next(n.queryParams),e.fragment!==n.fragment&&t.fragment.next(n.fragment),gt(e.params,n.params)||t.params.next(n.params),function(t,e){if(t.length!==e.length)return!1;for(let n=0;n<t.length;++n)if(!gt(t[n],e[n]))return!1;return!0}(e.url,n.url)||t.url.next(n.url),gt(e.data,n.data)||t.data.next(n.data)}else t.snapshot=t._futureSnapshot,t.data.next(t._futureSnapshot.data)}function te(t,e){var n,a;return gt(t.params,e.params)&&wt(n=t.url,a=e.url)&&n.every((t,e)=>gt(t.parameters,a[e].parameters))&&!(!t.parent!=!e.parent)&&(!t.parent||te(t.parent,e.parent))}function ee(t){return"object"==typeof t&&null!=t&&!t.outlets&&!t.segmentPath}function ne(t,e,n,a,r){let i={};return a&&mt(a,(t,e)=>{i[e]=Array.isArray(t)?t.map(t=>""+t):""+t}),new xt(n.root===t?e:function t(e,n,a){const r={};return mt(e.children,(e,i)=>{r[i]=e===n?a:t(e,n,a)}),new _t(e.segments,r)}(n.root,t,e),i,r)}class ae{constructor(t,e,n){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=n,t&&n.length>0&&ee(n[0]))throw new Error("Root segment cannot have matrix parameters");const a=n.find(t=>"object"==typeof t&&null!=t&&t.outlets);if(a&&a!==bt(n))throw new Error("{outlets:{}} has to be the last command")}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class re{constructor(t,e,n){this.segmentGroup=t,this.processChildren=e,this.index=n}}function ie(t){return"object"==typeof t&&null!=t&&t.outlets?t.outlets.primary:""+t}function se(t,e,n){if(t||(t=new _t([],{})),0===t.segments.length&&t.hasChildren())return ue(t,e,n);const a=function(t,e,n){let a=0,r=e;const i={match:!1,pathIndex:0,commandIndex:0};for(;r<t.segments.length;){if(a>=n.length)return i;const e=t.segments[r],s=ie(n[a]),u=a<n.length-1?n[a+1]:null;if(r>0&&void 0===s)break;if(s&&u&&"object"==typeof u&&void 0===u.outlets){if(!ce(s,u,e))return i;a+=2}else{if(!ce(s,{},e))return i;a++}r++}return{match:!0,pathIndex:r,commandIndex:a}}(t,e,n),r=n.slice(a.commandIndex);if(a.match&&a.pathIndex<t.segments.length){const e=new _t(t.segments.slice(0,a.pathIndex),{});return e.children.primary=new _t(t.segments.slice(a.pathIndex),t.children),ue(e,0,r)}return a.match&&0===r.length?new _t(t.segments,{}):a.match&&!t.hasChildren()?oe(t,e,n):a.match?ue(t,0,r):oe(t,e,n)}function ue(t,e,n){if(0===n.length)return new _t(t.segments,{});{const a=function(t){return"object"!=typeof t[0]||void 0===t[0].outlets?{primary:t}:t[0].outlets}(n),r={};return mt(a,(n,a)=>{null!==n&&(r[a]=se(t.children[a],e,n))}),mt(t.children,(t,e)=>{void 0===a[e]&&(r[e]=t)}),new _t(t.segments,r)}}function oe(t,e,n){const a=t.segments.slice(0,e);let r=0;for(;r<n.length;){if("object"==typeof n[r]&&void 0!==n[r].outlets){const t=le(n[r].outlets);return new _t(a,t)}if(0===r&&ee(n[0])){a.push(new Tt(t.segments[e].path,n[0])),r++;continue}const i=ie(n[r]),s=r<n.length-1?n[r+1]:null;i&&s&&ee(s)?(a.push(new Tt(i,de(s))),r+=2):(a.push(new Tt(i,{})),r++)}return new _t(a,{})}function le(t){const e={};return mt(t,(t,n)=>{null!==t&&(e[n]=oe(new _t([],{}),0,t))}),e}function de(t){const e={};return mt(t,(t,n)=>e[n]=""+t),e}function ce(t,e,n){return t==n.path&&gt(e,n.parameters)}class fe{constructor(t,e,n,a){this.routeReuseStrategy=t,this.futureState=e,this.currState=n,this.forwardEvent=a}activate(t){const e=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,n,t),Xt(this.futureState.root),this.activateChildRoutes(e,n,t)}deactivateChildRoutes(t,e,n){const a=Yt(e);t.children.forEach(t=>{const e=t.value.outlet;this.deactivateRoutes(t,a[e],n),delete a[e]}),mt(a,(t,e)=>{this.deactivateRouteAndItsChildren(t,n)})}deactivateRoutes(t,e,n){const a=t.value,r=e?e.value:null;if(a===r)if(a.component){const r=n.getContext(a.outlet);r&&this.deactivateChildRoutes(t,e,r.children)}else this.deactivateChildRoutes(t,e,n);else r&&this.deactivateRouteAndItsChildren(e,n)}deactivateRouteAndItsChildren(t,e){this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){const n=e.getContext(t.value.outlet);if(n&&n.outlet){const e=n.outlet.detach(),a=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:e,route:t,contexts:a})}}deactivateRouteAndOutlet(t,e){const n=e.getContext(t.value.outlet);if(n){const a=Yt(t),r=t.value.component?n.children:e;mt(a,(t,e)=>this.deactivateRouteAndItsChildren(t,r)),n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated())}}activateChildRoutes(t,e,n){const a=Yt(e);t.children.forEach(t=>{this.activateRoutes(t,a[t.value.outlet],n),this.forwardEvent(new nt(t.value.snapshot))}),t.children.length&&this.forwardEvent(new tt(t.value.snapshot))}activateRoutes(t,e,n){const a=t.value,r=e?e.value:null;if(Xt(a),a===r)if(a.component){const r=n.getOrCreateContext(a.outlet);this.activateChildRoutes(t,e,r.children)}else this.activateChildRoutes(t,e,n);else if(a.component){const e=n.getOrCreateContext(a.outlet);if(this.routeReuseStrategy.shouldAttach(a.snapshot)){const t=this.routeReuseStrategy.retrieve(a.snapshot);this.routeReuseStrategy.store(a.snapshot,null),e.children.onOutletReAttached(t.contexts),e.attachRef=t.componentRef,e.route=t.route.value,e.outlet&&e.outlet.attach(t.componentRef,t.route.value),he(t.route)}else{const n=function(t){for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig;if(t&&t.component)return null}return null}(a.snapshot),r=n?n.module.componentFactoryResolver:null;e.attachRef=null,e.route=a,e.resolver=r,e.outlet&&e.outlet.activateWith(a,r),this.activateChildRoutes(t,null,e.children)}}else this.activateChildRoutes(t,null,n)}}function he(t){Xt(t.value),t.children.forEach(he)}function ge(t){return"function"==typeof t}function pe(t){return t instanceof xt}class be{constructor(t){this.segmentGroup=t||null}}class me{constructor(t){this.urlTree=t}}function ye(t){return new o.a(e=>e.error(new be(t)))}function ve(t){return new o.a(e=>e.error(new me(t)))}function xe(t){return new o.a(e=>e.error(new Error(`Only absolute redirects can have named outlets. redirectTo: '${t}'`)))}class _e{constructor(t,e,n,a,i){this.configLoader=e,this.urlSerializer=n,this.urlTree=a,this.config=i,this.allowRedirects=!0,this.ngModule=t.get(r.NgModuleRef)}apply(){return this.expandSegmentGroup(this.ngModule,this.config,this.urlTree.root,"primary").pipe(Object(_.a)(t=>this.createUrlTree(t,this.urlTree.queryParams,this.urlTree.fragment))).pipe(Object(O.a)(t=>{if(t instanceof me)return this.allowRedirects=!1,this.match(t.urlTree);if(t instanceof be)throw this.noMatchError(t);throw t}))}match(t){return this.expandSegmentGroup(this.ngModule,this.config,t.root,"primary").pipe(Object(_.a)(e=>this.createUrlTree(e,t.queryParams,t.fragment))).pipe(Object(O.a)(t=>{if(t instanceof be)throw this.noMatchError(t);throw t}))}noMatchError(t){return new Error(`Cannot match any routes. URL Segment: '${t.segmentGroup}'`)}createUrlTree(t,e,n){const a=t.segments.length>0?new _t([],{primary:t}):t;return new xt(a,e,n)}expandSegmentGroup(t,e,n,a){return 0===n.segments.length&&n.hasChildren()?this.expandChildren(t,e,n).pipe(Object(_.a)(t=>new _t([],t))):this.expandSegment(t,n,e,n.segments,a,!0)}expandChildren(t,e,n){return function(t,e){if(0===Object.keys(t).length)return Object(i.a)({});const n=[],a=[],r={};return mt(t,(t,i)=>{const s=e(i,t).pipe(Object(_.a)(t=>r[i]=t));"primary"===i?n.push(s):a.push(s)}),i.a.apply(null,n.concat(a)).pipe(Object(T.a)(),Object(w.a)(),Object(_.a)(()=>r))}(n.children,(n,a)=>this.expandSegmentGroup(t,e,a,n))}expandSegment(t,e,n,a,r,s){return Object(i.a)(...n).pipe(Object(_.a)(u=>this.expandSegmentAgainstRoute(t,e,n,u,a,r,s).pipe(Object(O.a)(t=>{if(t instanceof be)return Object(i.a)(null);throw t}))),Object(T.a)(),Object(S.a)(t=>!!t),Object(O.a)((t,n)=>{if(t instanceof l.a||"EmptyError"===t.name){if(this.noLeftoversInUrl(e,a,r))return Object(i.a)(new _t([],{}));throw new be(e)}throw t}))}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}expandSegmentAgainstRoute(t,e,n,a,r,i,s){return Se(a)!==i?ye(e):void 0===a.redirectTo?this.matchSegmentAgainstRoute(t,e,a,r):s&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,e,n,a,r,i):ye(e)}expandSegmentAgainstRouteUsingRedirect(t,e,n,a,r,i){return"**"===a.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,a,i):this.expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,a,r,i)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,e,n,a){const r=this.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?ve(r):this.lineralizeSegments(n,r).pipe(Object(I.a)(n=>{const r=new _t(n,{});return this.expandSegment(t,r,e,n,a,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,e,n,a,r,i){const{matched:s,consumedSegments:u,lastChild:o,positionalParamSegments:l}=Te(e,a,r);if(!s)return ye(e);const d=this.applyRedirectCommands(u,a.redirectTo,l);return a.redirectTo.startsWith("/")?ve(d):this.lineralizeSegments(a,d).pipe(Object(I.a)(a=>this.expandSegment(t,e,n,a.concat(r.slice(o)),i,!1)))}matchSegmentAgainstRoute(t,e,n,a){if("**"===n.path)return n.loadChildren?this.configLoader.load(t.injector,n).pipe(Object(_.a)(t=>(n._loadedConfig=t,new _t(a,{})))):Object(i.a)(new _t(a,{}));const{matched:r,consumedSegments:s,lastChild:u}=Te(e,n,a);if(!r)return ye(e);const o=a.slice(u);return this.getChildConfig(t,n,a).pipe(Object(I.a)(t=>{const n=t.module,a=t.routes,{segmentGroup:r,slicedSegments:u}=function(t,e,n,a){return n.length>0&&function(t,e,n){return n.some(n=>Oe(t,e,n)&&"primary"!==Se(n))}(t,n,a)?{segmentGroup:we(new _t(e,function(t,e){const n={};n.primary=e;for(const a of t)""===a.path&&"primary"!==Se(a)&&(n[Se(a)]=new _t([],{}));return n}(a,new _t(n,t.children)))),slicedSegments:[]}:0===n.length&&function(t,e,n){return n.some(n=>Oe(t,e,n))}(t,n,a)?{segmentGroup:we(new _t(t.segments,function(t,e,n,a){const r={};for(const i of n)Oe(t,e,i)&&!a[Se(i)]&&(r[Se(i)]=new _t([],{}));return Object.assign({},a,r)}(t,n,a,t.children))),slicedSegments:n}:{segmentGroup:t,slicedSegments:n}}(e,s,o,a);return 0===u.length&&r.hasChildren()?this.expandChildren(n,a,r).pipe(Object(_.a)(t=>new _t(s,t))):0===a.length&&0===u.length?Object(i.a)(new _t(s,{})):this.expandSegment(n,r,a,u,"primary",!0).pipe(Object(_.a)(t=>new _t(s.concat(t.segments),t.children)))}))}getChildConfig(t,e,n){return e.children?Object(i.a)(new lt(e.children,t)):e.loadChildren?void 0!==e._loadedConfig?Object(i.a)(e._loadedConfig):function(t,e,n){const a=e.canLoad;return a&&0!==a.length?Object(s.a)(a).pipe(Object(_.a)(a=>{const r=t.get(a);let i;if(function(t){return t&&ge(t.canLoad)}(r))i=r.canLoad(e,n);else{if(!ge(r))throw new Error("Invalid CanLoad guard");i=r(e,n)}return yt(i)})).pipe(Object(T.a)(),(r=t=>!0===t,t=>t.lift(new C(r,void 0,t)))):Object(i.a)(!0);var r}(t.injector,e,n).pipe(Object(I.a)(n=>n?this.configLoader.load(t.injector,e).pipe(Object(_.a)(t=>(e._loadedConfig=t,t))):function(t){return new o.a(e=>e.error(ut(`Cannot load children because the guard of the route "path: '${t.path}'" returned false`)))}(e))):Object(i.a)(new lt([],t))}lineralizeSegments(t,e){let n=[],a=e.root;for(;;){if(n=n.concat(a.segments),0===a.numberOfChildren)return Object(i.a)(n);if(a.numberOfChildren>1||!a.children.primary)return xe(t.redirectTo);a=a.children.primary}}applyRedirectCommands(t,e,n){return this.applyRedirectCreatreUrlTree(e,this.urlSerializer.parse(e),t,n)}applyRedirectCreatreUrlTree(t,e,n,a){const r=this.createSegmentGroup(t,e.root,n,a);return new xt(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){const n={};return mt(t,(t,a)=>{if("string"==typeof t&&t.startsWith(":")){const r=t.substring(1);n[a]=e[r]}else n[a]=t}),n}createSegmentGroup(t,e,n,a){const r=this.createSegments(t,e.segments,n,a);let i={};return mt(e.children,(e,r)=>{i[r]=this.createSegmentGroup(t,e,n,a)}),new _t(r,i)}createSegments(t,e,n,a){return e.map(e=>e.path.startsWith(":")?this.findPosParam(t,e,a):this.findOrReturn(e,n))}findPosParam(t,e,n){const a=n[e.path.substring(1)];if(!a)throw new Error(`Cannot redirect to '${t}'. Cannot find '${e.path}'.`);return a}findOrReturn(t,e){let n=0;for(const a of e){if(a.path===t.path)return e.splice(n),a;n++}return t}}function Te(t,e,n){if(""===e.path)return"full"===e.pathMatch&&(t.hasChildren()||n.length>0)?{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}:{matched:!0,consumedSegments:[],lastChild:0,positionalParamSegments:{}};const a=(e.matcher||ot)(n,t,e);return a?{matched:!0,consumedSegments:a.consumed,lastChild:a.consumed.length,positionalParamSegments:a.posParams}:{matched:!1,consumedSegments:[],lastChild:0,positionalParamSegments:{}}}function we(t){if(1===t.numberOfChildren&&t.children.primary){const e=t.children.primary;return new _t(t.segments.concat(e.segments),e.children)}return t}function Oe(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0!==n.redirectTo}function Se(t){return t.outlet||"primary"}class Ie{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Ne{constructor(t,e){this.component=t,this.route=e}}function Ce(t,e,n){const a=t._root;return function t(e,n,a,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const s=Yt(n);return e.children.forEach(e=>{!function(e,n,a,r,i={canDeactivateChecks:[],canActivateChecks:[]}){const s=e.value,u=n?n.value:null,o=a?a.getContext(e.value.outlet):null;if(u&&s.routeConfig===u.routeConfig){const l=function(t,e,n){if("function"==typeof n)return n(t,e);switch(n){case"pathParamsChange":return!wt(t.url,e.url);case"pathParamsOrQueryParamsChange":return!wt(t.url,e.url)||!gt(t.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!te(t,e)||!gt(t.queryParams,e.queryParams);case"paramsChange":default:return!te(t,e)}}(u,s,s.routeConfig.runGuardsAndResolvers);l?i.canActivateChecks.push(new Ie(r)):(s.data=u.data,s._resolvedData=u._resolvedData),t(e,n,s.component?o?o.children:null:a,r,i),l&&i.canDeactivateChecks.push(new Ne(o&&o.outlet&&o.outlet.component||null,u))}else u&&Ae(n,o,i),i.canActivateChecks.push(new Ie(r)),t(e,null,s.component?o?o.children:null:a,r,i)}(e,s[e.value.outlet],a,r.concat([e.value]),i),delete s[e.value.outlet]}),mt(s,(t,e)=>Ae(t,a.getContext(e),i)),i}(a,e?e._root:null,n,[a.value])}function Re(t,e,n){const a=function(t){if(!t)return null;for(let e=t.parent;e;e=e.parent){const t=e.routeConfig;if(t&&t._loadedConfig)return t._loadedConfig}return null}(e);return(a?a.module.injector:n).get(t)}function Ae(t,e,n){const a=Yt(t),r=t.value;mt(a,(t,a)=>{Ae(t,r.component?e?e.children.getContext(a):null:e,n)}),n.canDeactivateChecks.push(new Ne(r.component&&e&&e.outlet&&e.outlet.isActivated?e.outlet.component:null,r))}const ke=Symbol("INITIAL_VALUE");function Ee(){return Object(A.a)(t=>function(...t){let e=null,n=null;return Object(d.a)(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&Object(c.a)(t[0])&&(t=t[0]),Object(g.a)(t,n).lift(new b(e))}(...t.map(t=>t.pipe(Object(k.a)(1),function(...t){const e=t[t.length-1];return Object(d.a)(e)?(t.pop(),n=>Object(E.a)(t,n,e)):e=>Object(E.a)(t,e)}(ke)))).pipe(Object(L.a)((t,e)=>{let n=!1;return e.reduce((t,a,r)=>{if(t!==ke)return t;if(a===ke&&(n=!0),!n){if(!1===a)return a;if(r===e.length-1||pe(a))return a}return t},t)},ke),Object(D.a)(t=>t!==ke),Object(_.a)(t=>pe(t)?t:!0===t),Object(k.a)(1)))}function Le(t,e){return null!==t&&e&&e(new et(t)),Object(i.a)(!0)}function De(t,e){return null!==t&&e&&e(new X(t)),Object(i.a)(!0)}function Pe(t,e,n){const a=e.routeConfig?e.routeConfig.canActivate:null;if(!a||0===a.length)return Object(i.a)(!0);const r=a.map(a=>v(()=>{const r=Re(a,e,n);let i;if(function(t){return t&&ge(t.canActivate)}(r))i=yt(r.canActivate(e,t));else{if(!ge(r))throw new Error("Invalid CanActivate guard");i=yt(r(e,t))}return i.pipe(Object(S.a)())}));return Object(i.a)(r).pipe(Ee())}function Me(t,e,n){const a=e[e.length-1],r=e.slice(0,e.length-1).reverse().map(t=>function(t){const e=t.routeConfig?t.routeConfig.canActivateChild:null;return e&&0!==e.length?{node:t,guards:e}:null}(t)).filter(t=>null!==t).map(e=>v(()=>{const r=e.guards.map(r=>{const i=Re(r,e.node,n);let s;if(function(t){return t&&ge(t.canActivateChild)}(i))s=yt(i.canActivateChild(a,t));else{if(!ge(i))throw new Error("Invalid CanActivateChild guard");s=yt(i(a,t))}return s.pipe(Object(S.a)())});return Object(i.a)(r).pipe(Ee())}));return Object(i.a)(r).pipe(Ee())}class qe{}class je{constructor(t,e,n,a,r,i){this.rootComponentType=t,this.config=e,this.urlTree=n,this.url=a,this.paramsInheritanceStrategy=r,this.relativeLinkResolution=i}recognize(){try{const t=Ge(this.urlTree.root,[],[],this.config,this.relativeLinkResolution).segmentGroup,e=this.processSegmentGroup(this.config,t,"primary"),n=new $t([],Object.freeze({}),Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,{},"primary",this.rootComponentType,null,this.urlTree.root,-1,{}),a=new zt(n,e),r=new Zt(this.url,a);return this.inheritParamsAndData(r._root),Object(i.a)(r)}catch(t){return new o.a(e=>e.error(t))}}inheritParamsAndData(t){const e=t.value,n=Kt(e,this.paramsInheritanceStrategy);e.params=Object.freeze(n.params),e.data=Object.freeze(n.data),t.children.forEach(t=>this.inheritParamsAndData(t))}processSegmentGroup(t,e,n){return 0===e.segments.length&&e.hasChildren()?this.processChildren(t,e):this.processSegment(t,e,e.segments,n)}processChildren(t,e){const n=Ot(e,(e,n)=>this.processSegmentGroup(t,e,n));return function(t){const e={};t.forEach(t=>{const n=e[t.value.outlet];if(n){const e=n.url.map(t=>t.toString()).join("/"),a=t.value.url.map(t=>t.toString()).join("/");throw new Error(`Two segments cannot have the same outlet name: '${e}' and '${a}'.`)}e[t.value.outlet]=t.value})}(n),n.sort((t,e)=>"primary"===t.value.outlet?-1:"primary"===e.value.outlet?1:t.value.outlet.localeCompare(e.value.outlet)),n}processSegment(t,e,n,a){for(const i of t)try{return this.processSegmentAgainstRoute(i,e,n,a)}catch(r){if(!(r instanceof qe))throw r}if(this.noLeftoversInUrl(e,n,a))return[];throw new qe}noLeftoversInUrl(t,e,n){return 0===e.length&&!t.children[n]}processSegmentAgainstRoute(t,e,n,a){if(t.redirectTo)throw new qe;if((t.outlet||"primary")!==a)throw new qe;let r,i=[],s=[];if("**"===t.path){const i=n.length>0?bt(n).parameters:{};r=new $t(n,i,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,Ye(t),a,t.component,t,Fe(e),Ve(e)+n.length,He(t))}else{const u=function(t,e,n){if(""===e.path){if("full"===e.pathMatch&&(t.hasChildren()||n.length>0))throw new qe;return{consumedSegments:[],lastChild:0,parameters:{}}}const a=(e.matcher||ot)(n,t,e);if(!a)throw new qe;const r={};mt(a.posParams,(t,e)=>{r[e]=t.path});const i=a.consumed.length>0?Object.assign({},r,a.consumed[a.consumed.length-1].parameters):r;return{consumedSegments:a.consumed,lastChild:a.consumed.length,parameters:i}}(e,t,n);i=u.consumedSegments,s=n.slice(u.lastChild),r=new $t(i,u.parameters,Object.freeze(Object.assign({},this.urlTree.queryParams)),this.urlTree.fragment,Ye(t),a,t.component,t,Fe(e),Ve(e)+i.length,He(t))}const u=function(t){return t.children?t.children:t.loadChildren?t._loadedConfig.routes:[]}(t),{segmentGroup:o,slicedSegments:l}=Ge(e,i,s,u,this.relativeLinkResolution);if(0===l.length&&o.hasChildren()){const t=this.processChildren(u,o);return[new zt(r,t)]}if(0===u.length&&0===l.length)return[new zt(r,[])];const d=this.processSegment(u,o,l,"primary");return[new zt(r,d)]}}function Fe(t){let e=t;for(;e._sourceSegment;)e=e._sourceSegment;return e}function Ve(t){let e=t,n=e._segmentIndexShift?e._segmentIndexShift:0;for(;e._sourceSegment;)e=e._sourceSegment,n+=e._segmentIndexShift?e._segmentIndexShift:0;return n-1}function Ge(t,e,n,a,r){if(n.length>0&&function(t,e,n){return n.some(n=>Be(t,e,n)&&"primary"!==ze(n))}(t,n,a)){const r=new _t(e,function(t,e,n,a){const r={};r.primary=a,a._sourceSegment=t,a._segmentIndexShift=e.length;for(const i of n)if(""===i.path&&"primary"!==ze(i)){const n=new _t([],{});n._sourceSegment=t,n._segmentIndexShift=e.length,r[ze(i)]=n}return r}(t,e,a,new _t(n,t.children)));return r._sourceSegment=t,r._segmentIndexShift=e.length,{segmentGroup:r,slicedSegments:[]}}if(0===n.length&&function(t,e,n){return n.some(n=>Be(t,e,n))}(t,n,a)){const i=new _t(t.segments,function(t,e,n,a,r,i){const s={};for(const u of a)if(Be(t,n,u)&&!r[ze(u)]){const n=new _t([],{});n._sourceSegment=t,n._segmentIndexShift="legacy"===i?t.segments.length:e.length,s[ze(u)]=n}return Object.assign({},r,s)}(t,e,n,a,t.children,r));return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}const i=new _t(t.segments,t.children);return i._sourceSegment=t,i._segmentIndexShift=e.length,{segmentGroup:i,slicedSegments:n}}function Be(t,e,n){return(!(t.hasChildren()||e.length>0)||"full"!==n.pathMatch)&&""===n.path&&void 0===n.redirectTo}function ze(t){return t.outlet||"primary"}function Ye(t){return t.data||{}}function He(t){return t.resolve||{}}function Ue(t,e,n,a){const r=Re(t,e,a);return yt(r.resolve?r.resolve(e,n):r(e,n))}function We(t){return function(e){return e.pipe(Object(A.a)(e=>{const n=t(e);return n?Object(s.a)(n).pipe(Object(_.a)(()=>e)):Object(s.a)([e])}))}}class Ke{}class $e{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}}const Ze=new r.InjectionToken("ROUTES");class Je{constructor(t,e,n,a){this.loader=t,this.compiler=e,this.onLoadStartListener=n,this.onLoadEndListener=a}load(t,e){return this.onLoadStartListener&&this.onLoadStartListener(e),this.loadModuleFactory(e.loadChildren).pipe(Object(_.a)(n=>{this.onLoadEndListener&&this.onLoadEndListener(e);const a=n.create(t);return new lt(pt(a.injector.get(Ze)).map(ht),a)}))}loadModuleFactory(t){return"string"==typeof t?Object(s.a)(this.loader.load(t)):yt(t()).pipe(Object(I.a)(t=>t instanceof r.NgModuleFactory?Object(i.a)(t):Object(s.a)(this.compiler.compileModuleAsync(t))))}}class Qe{}class Xe{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,e){return t}}function tn(t){throw t}function en(t,e,n){return e.parse("/")}function nn(t,e){return Object(i.a)(null)}class an{constructor(t,e,n,a,i,s,o,l){this.rootComponentType=t,this.urlSerializer=e,this.rootContexts=n,this.location=a,this.config=l,this.lastSuccessfulNavigation=null,this.currentNavigation=null,this.navigationId=0,this.isNgZoneEnabled=!1,this.events=new x.a,this.errorHandler=tn,this.malformedUriErrorHandler=en,this.navigated=!1,this.lastSuccessfulId=-1,this.hooks={beforePreactivation:nn,afterPreactivation:nn},this.urlHandlingStrategy=new Xe,this.routeReuseStrategy=new $e,this.onSameUrlNavigation="ignore",this.paramsInheritanceStrategy="emptyOnly",this.urlUpdateStrategy="deferred",this.relativeLinkResolution="legacy",this.ngModule=i.get(r.NgModuleRef),this.console=i.get(r["ɵConsole"]);const d=i.get(r.NgZone);this.isNgZoneEnabled=d instanceof r.NgZone,this.resetConfig(l),this.currentUrlTree=new xt(new _t([],{}),{},null),this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.configLoader=new Je(s,o,t=>this.triggerEvent(new J(t)),t=>this.triggerEvent(new Q(t))),this.routerState=Ut(this.currentUrlTree,this.rootComponentType),this.transitions=new u.a({id:0,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,extractedUrl:this.urlHandlingStrategy.extract(this.currentUrlTree),urlAfterRedirects:this.urlHandlingStrategy.extract(this.currentUrlTree),rawUrl:this.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:"imperative",restoredState:null,currentSnapshot:this.routerState.snapshot,targetSnapshot:null,currentRouterState:this.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.navigations=this.setupNavigations(this.transitions),this.processNavigations()}setupNavigations(t){const e=this.events;return t.pipe(Object(D.a)(t=>0!==t.id),Object(_.a)(t=>Object.assign({},t,{extractedUrl:this.urlHandlingStrategy.extract(t.rawUrl)})),Object(A.a)(t=>{let n=!1,a=!1;return Object(i.a)(t).pipe(Object(q.a)(t=>{this.currentNavigation={id:t.id,initialUrl:t.currentRawUrl,extractedUrl:t.extractedUrl,trigger:t.source,extras:t.extras,previousNavigation:this.lastSuccessfulNavigation?Object.assign({},this.lastSuccessfulNavigation,{previousNavigation:null}):null}}),Object(A.a)(t=>{const n=!this.navigated||t.extractedUrl.toString()!==this.browserUrlTree.toString();if(("reload"===this.onSameUrlNavigation||n)&&this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl))return Object(i.a)(t).pipe(Object(A.a)(t=>{const n=this.transitions.getValue();return e.next(new B(t.id,this.serializeUrl(t.extractedUrl),t.source,t.restoredState)),n!==this.transitions.getValue()?y.a:[t]}),Object(A.a)(t=>Promise.resolve(t)),(a=this.ngModule.injector,r=this.configLoader,s=this.urlSerializer,u=this.config,function(t){return t.pipe(Object(A.a)(t=>function(t,e,n,a,r){return new _e(t,e,n,a,r).apply()}(a,r,s,t.extractedUrl,u).pipe(Object(_.a)(e=>Object.assign({},t,{urlAfterRedirects:e})))))}),Object(q.a)(t=>{this.currentNavigation=Object.assign({},this.currentNavigation,{finalUrl:t.urlAfterRedirects})}),function(t,e,n,a,r){return function(i){return i.pipe(Object(I.a)(i=>function(t,e,n,a,r="emptyOnly",i="legacy"){return new je(t,e,n,a,r,i).recognize()}(t,e,i.urlAfterRedirects,n(i.urlAfterRedirects),a,r).pipe(Object(_.a)(t=>Object.assign({},i,{targetSnapshot:t})))))}}(this.rootComponentType,this.config,t=>this.serializeUrl(t),this.paramsInheritanceStrategy,this.relativeLinkResolution),Object(q.a)(t=>{"eager"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(t.urlAfterRedirects,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),Object(q.a)(t=>{const n=new U(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);e.next(n)}));var a,r,s,u;if(n&&this.rawUrlTree&&this.urlHandlingStrategy.shouldProcessUrl(this.rawUrlTree)){const{id:n,extractedUrl:a,source:r,restoredState:s,extras:u}=t,o=new B(n,this.serializeUrl(a),r,s);e.next(o);const l=Ut(a,this.rootComponentType).snapshot;return Object(i.a)(Object.assign({},t,{targetSnapshot:l,urlAfterRedirects:a,extras:Object.assign({},u,{skipLocationChange:!1,replaceUrl:!1})}))}return this.rawUrlTree=t.rawUrl,this.browserUrlTree=t.urlAfterRedirects,t.resolve(null),y.a}),We(t=>{const{targetSnapshot:e,id:n,extractedUrl:a,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:s}}=t;return this.hooks.beforePreactivation(e,{navigationId:n,appliedUrlTree:a,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!s})}),Object(q.a)(t=>{const e=new W(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),Object(_.a)(t=>Object.assign({},t,{guards:Ce(t.targetSnapshot,t.currentSnapshot,this.rootContexts)})),function(t,e){return function(n){return n.pipe(Object(I.a)(n=>{const{targetSnapshot:a,currentSnapshot:r,guards:{canActivateChecks:u,canDeactivateChecks:o}}=n;return 0===o.length&&0===u.length?Object(i.a)(Object.assign({},n,{guardsResult:!0})):function(t,e,n,a){return Object(s.a)(t).pipe(Object(I.a)(t=>function(t,e,n,a,r){const s=e&&e.routeConfig?e.routeConfig.canDeactivate:null;if(!s||0===s.length)return Object(i.a)(!0);const u=s.map(i=>{const s=Re(i,e,r);let u;if(function(t){return t&&ge(t.canDeactivate)}(s))u=yt(s.canDeactivate(t,e,n,a));else{if(!ge(s))throw new Error("Invalid CanDeactivate guard");u=yt(s(t,e,n,a))}return u.pipe(Object(S.a)())});return Object(i.a)(u).pipe(Ee())}(t.component,t.route,n,e,a)),Object(S.a)(t=>!0!==t,!0))}(o,a,r,t).pipe(Object(I.a)(n=>n&&"boolean"==typeof n?function(t,e,n,a){return Object(s.a)(e).pipe(Object(P.a)(e=>Object(s.a)([De(e.route.parent,a),Le(e.route,a),Me(t,e.path,n),Pe(t,e.route,n)]).pipe(Object(T.a)(),Object(S.a)(t=>!0!==t,!0))),Object(S.a)(t=>!0!==t,!0))}(a,u,t,e):Object(i.a)(n)),Object(_.a)(t=>Object.assign({},n,{guardsResult:t})))}))}}(this.ngModule.injector,t=>this.triggerEvent(t)),Object(q.a)(t=>{if(pe(t.guardsResult)){const e=ut(`Redirecting to "${this.serializeUrl(t.guardsResult)}"`);throw e.url=t.guardsResult,e}}),Object(q.a)(t=>{const e=new K(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot,!!t.guardsResult);this.triggerEvent(e)}),Object(D.a)(t=>{if(!t.guardsResult){this.resetUrlToCurrentUrlTree();const n=new Y(t.id,this.serializeUrl(t.extractedUrl),"");return e.next(n),t.resolve(!1),!1}return!0}),We(t=>{if(t.guards.canActivateChecks.length)return Object(i.a)(t).pipe(Object(q.a)(t=>{const e=new $(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}),(e=this.paramsInheritanceStrategy,n=this.ngModule.injector,function(t){return t.pipe(Object(I.a)(t=>{const{targetSnapshot:a,guards:{canActivateChecks:r}}=t;return r.length?Object(s.a)(r).pipe(Object(P.a)(t=>function(t,e,n,a){return function(t,e,n,a){const r=Object.keys(t);if(0===r.length)return Object(i.a)({});if(1===r.length){const i=r[0];return Ue(t[i],e,n,a).pipe(Object(_.a)(t=>({[i]:t})))}const u={};return Object(s.a)(r).pipe(Object(I.a)(r=>Ue(t[r],e,n,a).pipe(Object(_.a)(t=>(u[r]=t,t))))).pipe(Object(w.a)(),Object(_.a)(()=>u))}(t._resolve,t,e,a).pipe(Object(_.a)(e=>(t._resolvedData=e,t.data=Object.assign({},t.data,Kt(t,n).resolve),null)))}(t.route,a,e,n)),Object(M.a)((t,e)=>t),Object(_.a)(e=>t)):Object(i.a)(t)}))}),Object(q.a)(t=>{const e=new Z(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(t.urlAfterRedirects),t.targetSnapshot);this.triggerEvent(e)}));var e,n}),We(t=>{const{targetSnapshot:e,id:n,extractedUrl:a,rawUrl:r,extras:{skipLocationChange:i,replaceUrl:s}}=t;return this.hooks.afterPreactivation(e,{navigationId:n,appliedUrlTree:a,rawUrlTree:r,skipLocationChange:!!i,replaceUrl:!!s})}),Object(_.a)(t=>{const e=function(t,e,n){const a=function t(e,n,a){if(a&&e.shouldReuseRoute(n.value,a.value.snapshot)){const r=a.value;r._futureSnapshot=n.value;const i=function(e,n,a){return n.children.map(n=>{for(const r of a.children)if(e.shouldReuseRoute(r.value.snapshot,n.value))return t(e,n,r);return t(e,n)})}(e,n,a);return new zt(r,i)}{const a=e.retrieve(n.value);if(a){const t=a.route;return function t(e,n){if(e.value.routeConfig!==n.value.routeConfig)throw new Error("Cannot reattach ActivatedRouteSnapshot created from a different route");if(e.children.length!==n.children.length)throw new Error("Cannot reattach ActivatedRouteSnapshot with a different number of children");n.value._futureSnapshot=e.value;for(let a=0;a<e.children.length;++a)t(e.children[a],n.children[a])}(n,t),t}{const a=new Wt(new u.a((r=n.value).url),new u.a(r.params),new u.a(r.queryParams),new u.a(r.fragment),new u.a(r.data),r.outlet,r.component,r),i=n.children.map(n=>t(e,n));return new zt(a,i)}}var r}(t,e._root,n?n._root:void 0);return new Ht(a,e)}(this.routeReuseStrategy,t.targetSnapshot,t.currentRouterState);return Object.assign({},t,{targetRouterState:e})}),Object(q.a)(t=>{this.currentUrlTree=t.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.rawUrl),this.routerState=t.targetRouterState,"deferred"===this.urlUpdateStrategy&&(t.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,!!t.extras.replaceUrl,t.id,t.extras.state),this.browserUrlTree=t.urlAfterRedirects)}),(r=this.rootContexts,o=this.routeReuseStrategy,l=t=>this.triggerEvent(t),Object(_.a)(t=>(new fe(o,t.targetRouterState,t.currentRouterState,l).activate(r),t))),Object(q.a)({next(){n=!0},complete(){n=!0}}),Object(j.a)(()=>{if(!n&&!a){this.resetUrlToCurrentUrlTree();const n=new Y(t.id,this.serializeUrl(t.extractedUrl),`Navigation ID ${t.id} is not equal to the current navigation id ${this.navigationId}`);e.next(n),t.resolve(!1)}this.currentNavigation=null}),Object(O.a)(n=>{if(a=!0,(r=n)&&r.ngNavigationCancelingError){const a=pe(n.url);a||(this.navigated=!0,this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl));const r=new Y(t.id,this.serializeUrl(t.extractedUrl),n.message);e.next(r),t.resolve(!1),a&&this.navigateByUrl(n.url)}else{this.resetStateAndUrl(t.currentRouterState,t.currentUrlTree,t.rawUrl);const a=new H(t.id,this.serializeUrl(t.extractedUrl),n);e.next(a);try{t.resolve(this.errorHandler(n))}catch(i){t.reject(i)}}var r;return y.a}));var r,o,l}))}resetRootComponentType(t){this.rootComponentType=t,this.routerState.root.component=this.rootComponentType}getTransition(){const t=this.transitions.value;return t.urlAfterRedirects=this.browserUrlTree,t}setTransition(t){this.transitions.next(Object.assign({},this.getTransition(),t))}initialNavigation(){this.setUpLocationChangeListener(),0===this.navigationId&&this.navigateByUrl(this.location.path(!0),{replaceUrl:!0})}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(t=>{let e=this.parseUrl(t.url);const n="popstate"===t.type?"popstate":"hashchange",a=t.state&&t.state.navigationId?t.state:null;setTimeout(()=>{this.scheduleNavigation(e,n,a,{replaceUrl:!0})},0)}))}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.currentNavigation}triggerEvent(t){this.events.next(t)}resetConfig(t){dt(t),this.config=t.map(ht),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=null)}createUrlTree(t,e={}){const{relativeTo:n,queryParams:a,fragment:i,preserveQueryParams:s,queryParamsHandling:u,preserveFragment:o}=e;Object(r.isDevMode)()&&s&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead.");const l=n||this.routerState.root,d=o?this.currentUrlTree.fragment:i;let c=null;if(u)switch(u){case"merge":c=Object.assign({},this.currentUrlTree.queryParams,a);break;case"preserve":c=this.currentUrlTree.queryParams;break;default:c=a||null}else c=s?this.currentUrlTree.queryParams:a||null;return null!==c&&(c=this.removeEmptyProps(c)),function(t,e,n,a,r){if(0===n.length)return ne(e.root,e.root,e,a,r);const i=function(t){if("string"==typeof t[0]&&1===t.length&&"/"===t[0])return new ae(!0,0,t);let e=0,n=!1;const a=t.reduce((t,a,r)=>{if("object"==typeof a&&null!=a){if(a.outlets){const e={};return mt(a.outlets,(t,n)=>{e[n]="string"==typeof t?t.split("/"):t}),[...t,{outlets:e}]}if(a.segmentPath)return[...t,a.segmentPath]}return"string"!=typeof a?[...t,a]:0===r?(a.split("/").forEach((a,r)=>{0==r&&"."===a||(0==r&&""===a?n=!0:".."===a?e++:""!=a&&t.push(a))}),t):[...t,a]},[]);return new ae(n,e,a)}(n);if(i.toRoot())return ne(e.root,new _t([],{}),e,a,r);const s=function(t,e,n){if(t.isAbsolute)return new re(e.root,!0,0);if(-1===n.snapshot._lastPathIndex)return new re(n.snapshot._urlSegment,!0,0);const a=ee(t.commands[0])?0:1;return function(t,e,n){let a=t,r=e,i=n;for(;i>r;){if(i-=r,a=a.parent,!a)throw new Error("Invalid number of '../'");r=a.segments.length}return new re(a,!1,r-i)}(n.snapshot._urlSegment,n.snapshot._lastPathIndex+a,t.numberOfDoubleDots)}(i,e,t),u=s.processChildren?ue(s.segmentGroup,s.index,i.commands):se(s.segmentGroup,s.index,i.commands);return ne(s.segmentGroup,u,e,a,r)}(l,this.currentUrlTree,t,c,d)}navigateByUrl(t,e={skipLocationChange:!1}){Object(r.isDevMode)()&&this.isNgZoneEnabled&&!r.NgZone.isInAngularZone()&&this.console.warn("Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?");const n=pe(t)?t:this.parseUrl(t),a=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(a,"imperative",null,e)}navigate(t,e={skipLocationChange:!1}){return function(t){for(let e=0;e<t.length;e++){const n=t[e];if(null==n)throw new Error(`The requested path contains ${n} segment at index ${e}`)}}(t),this.navigateByUrl(this.createUrlTree(t,e),e)}serializeUrl(t){return this.urlSerializer.serialize(t)}parseUrl(t){let e;try{e=this.urlSerializer.parse(t)}catch(n){e=this.malformedUriErrorHandler(n,this.urlSerializer,t)}return e}isActive(t,e){if(pe(t))return vt(this.currentUrlTree,t,e);const n=this.parseUrl(t);return vt(this.currentUrlTree,n,e)}removeEmptyProps(t){return Object.keys(t).reduce((e,n)=>{const a=t[n];return null!=a&&(e[n]=a),e},{})}processNavigations(){this.navigations.subscribe(t=>{this.navigated=!0,this.lastSuccessfulId=t.id,this.events.next(new z(t.id,this.serializeUrl(t.extractedUrl),this.serializeUrl(this.currentUrlTree))),this.lastSuccessfulNavigation=this.currentNavigation,this.currentNavigation=null,t.resolve(!0)},t=>{this.console.warn("Unhandled Navigation Error: ")})}scheduleNavigation(t,e,n,a){const r=this.getTransition();if(r&&"imperative"!==e&&"imperative"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"hashchange"==e&&"popstate"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);if(r&&"popstate"==e&&"hashchange"===r.source&&r.rawUrl.toString()===t.toString())return Promise.resolve(!0);let i=null,s=null;const u=new Promise((t,e)=>{i=t,s=e}),o=++this.navigationId;return this.setTransition({id:o,source:e,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.rawUrlTree,rawUrl:t,extras:a,resolve:i,reject:s,promise:u,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),u.catch(t=>Promise.reject(t))}setBrowserUrl(t,e,n,a){const r=this.urlSerializer.serialize(t);a=a||{},this.location.isCurrentPathEqualTo(r)||e?this.location.replaceState(r,"",Object.assign({},a,{navigationId:n})):this.location.go(r,"",Object.assign({},a,{navigationId:n}))}resetStateAndUrl(t,e,n){this.routerState=t,this.currentUrlTree=e,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n),this.resetUrlToCurrentUrlTree()}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",{navigationId:this.lastSuccessfulId})}}class rn{constructor(t,e,n,a,r){this.router=t,this.route=e,this.commands=[],null==n&&a.setAttribute(r.nativeElement,"tabindex","0")}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}set preserveQueryParams(t){Object(r.isDevMode)()&&console&&console.warn&&console.warn("preserveQueryParams is deprecated!, use queryParamsHandling instead."),this.preserve=t}onClick(){const t={skipLocationChange:un(this.skipLocationChange),replaceUrl:un(this.replaceUrl)};return this.router.navigateByUrl(this.urlTree,t),!0}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,preserveQueryParams:un(this.preserve),queryParamsHandling:this.queryParamsHandling,preserveFragment:un(this.preserveFragment)})}}class sn{constructor(t,e,n){this.router=t,this.route=e,this.locationStrategy=n,this.commands=[],this.subscription=t.events.subscribe(t=>{t instanceof z&&this.updateTargetUrlAndHref()})}set routerLink(t){this.commands=null!=t?Array.isArray(t)?t:[t]:[]}set preserveQueryParams(t){Object(r.isDevMode)()&&console&&console.warn&&console.warn("preserveQueryParams is deprecated, use queryParamsHandling instead."),this.preserve=t}ngOnChanges(t){this.updateTargetUrlAndHref()}ngOnDestroy(){this.subscription.unsubscribe()}onClick(t,e,n,a){if(0!==t||e||n||a)return!0;if("string"==typeof this.target&&"_self"!=this.target)return!0;const r={skipLocationChange:un(this.skipLocationChange),replaceUrl:un(this.replaceUrl),state:this.state};return this.router.navigateByUrl(this.urlTree,r),!1}updateTargetUrlAndHref(){this.href=this.locationStrategy.prepareExternalUrl(this.router.serializeUrl(this.urlTree))}get urlTree(){return this.router.createUrlTree(this.commands,{relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,preserveQueryParams:un(this.preserve),queryParamsHandling:this.queryParamsHandling,preserveFragment:un(this.preserveFragment)})}}function un(t){return""===t||!!t}class on{constructor(t,e,n,a,r){this.router=t,this.element=e,this.renderer=n,this.link=a,this.linkWithHref=r,this.classes=[],this.isActive=!1,this.routerLinkActiveOptions={exact:!1},this.subscription=t.events.subscribe(t=>{t instanceof z&&this.update()})}ngAfterContentInit(){this.links.changes.subscribe(t=>this.update()),this.linksWithHrefs.changes.subscribe(t=>this.update()),this.update()}set routerLinkActive(t){const e=Array.isArray(t)?t:t.split(" ");this.classes=e.filter(t=>!!t)}ngOnChanges(t){this.update()}ngOnDestroy(){this.subscription.unsubscribe()}update(){this.links&&this.linksWithHrefs&&this.router.navigated&&Promise.resolve().then(()=>{const t=this.hasActiveLinks();this.isActive!==t&&(this.isActive=t,this.classes.forEach(e=>{t?this.renderer.addClass(this.element.nativeElement,e):this.renderer.removeClass(this.element.nativeElement,e)}))})}isLinkActive(t){return e=>t.isActive(e.urlTree,this.routerLinkActiveOptions.exact)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.linkWithHref&&t(this.linkWithHref)||this.links.some(t)||this.linksWithHrefs.some(t)}}class ln{constructor(){this.outlet=null,this.route=null,this.resolver=null,this.children=new dn,this.attachRef=null}}class dn{constructor(){this.contexts=new Map}onChildOutletCreated(t,e){const n=this.getOrCreateContext(t);n.outlet=e,this.contexts.set(t,n)}onChildOutletDestroyed(t){const e=this.getContext(t);e&&(e.outlet=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let e=this.getContext(t);return e||(e=new ln,this.contexts.set(t,e)),e}getContext(t){return this.contexts.get(t)||null}}class cn{constructor(t,e,n,a,i){this.parentContexts=t,this.location=e,this.resolver=n,this.changeDetector=i,this.activated=null,this._activatedRoute=null,this.activateEvents=new r.EventEmitter,this.deactivateEvents=new r.EventEmitter,this.name=a||"primary",t.onChildOutletCreated(this.name,this)}ngOnDestroy(){this.parentContexts.onChildOutletDestroyed(this.name)}ngOnInit(){if(!this.activated){const t=this.parentContexts.getContext(this.name);t&&t.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.resolver||null))}}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Error("Outlet is not activated");return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Error("Outlet is not activated");return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Error("Outlet is not activated");this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,t}attach(t,e){this.activated=t,this._activatedRoute=e,this.location.insert(t.hostView)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,e){if(this.isActivated)throw new Error("Cannot activate an already activated outlet");this._activatedRoute=t;const n=(e=e||this.resolver).resolveComponentFactory(t._futureSnapshot.routeConfig.component),a=this.parentContexts.getOrCreateContext(this.name).children,r=new fn(t,a,this.location.injector);this.activated=this.location.createComponent(n,this.location.length,r),this.changeDetector.markForCheck(),this.activateEvents.emit(this.activated.instance)}}class fn{constructor(t,e,n){this.route=t,this.childContexts=e,this.parent=n}get(t,e){return t===Wt?this.route:t===dn?this.childContexts:this.parent.get(t,e)}}class hn{}class gn{preload(t,e){return e().pipe(Object(O.a)(()=>Object(i.a)(null)))}}class pn{preload(t,e){return Object(i.a)(null)}}class bn{constructor(t,e,n,a,r){this.router=t,this.injector=a,this.preloadingStrategy=r,this.loader=new Je(e,n,e=>t.triggerEvent(new J(e)),e=>t.triggerEvent(new Q(e)))}setUpPreloading(){this.subscription=this.router.events.pipe(Object(D.a)(t=>t instanceof z),Object(P.a)(()=>this.preload())).subscribe(()=>{})}preload(){const t=this.injector.get(r.NgModuleRef);return this.processRoutes(t,this.router.config)}ngOnDestroy(){this.subscription.unsubscribe()}processRoutes(t,e){const n=[];for(const a of e)if(a.loadChildren&&!a.canLoad&&a._loadedConfig){const t=a._loadedConfig;n.push(this.processRoutes(t.module,t.routes))}else a.loadChildren&&!a.canLoad?n.push(this.preloadConfig(t,a)):a.children&&n.push(this.processRoutes(t,a.children));return Object(s.a)(n).pipe(Object(F.a)(),Object(_.a)(t=>{}))}preloadConfig(t,e){return this.preloadingStrategy.preload(e,()=>this.loader.load(t.injector,e).pipe(Object(I.a)(t=>(e._loadedConfig=t,this.processRoutes(t.module,t.routes)))))}}class mn{constructor(t,e,n={}){this.router=t,this.viewportScroller=e,this.options=n,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},n.scrollPositionRestoration=n.scrollPositionRestoration||"disabled",n.anchorScrolling=n.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.router.events.subscribe(t=>{t instanceof B?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof z&&(this.lastId=t.id,this.scheduleScrollEvent(t,this.router.parseUrl(t.urlAfterRedirects).fragment))})}consumeScrollEvents(){return this.router.events.subscribe(t=>{t instanceof at&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,e){this.router.triggerEvent(new at(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,e))}ngOnDestroy(){this.routerEventsSubscription&&this.routerEventsSubscription.unsubscribe(),this.scrollEventsSubscription&&this.scrollEventsSubscription.unsubscribe()}}const yn=new r.InjectionToken("ROUTER_CONFIGURATION"),vn=new r.InjectionToken("ROUTER_FORROOT_GUARD"),xn=[a.Location,{provide:St,useClass:It},{provide:an,useFactory:Nn,deps:[r.ApplicationRef,St,dn,a.Location,r.Injector,r.NgModuleFactoryLoader,r.Compiler,Ze,yn,[Qe,new r.Optional],[Ke,new r.Optional]]},dn,{provide:Wt,useFactory:Cn,deps:[an]},{provide:r.NgModuleFactoryLoader,useClass:r.SystemJsNgModuleLoader},bn,pn,gn,{provide:yn,useValue:{enableTracing:!1}}];function _n(){return new r.NgProbeToken("Router",an)}class Tn{constructor(t,e){}static forRoot(t,e){return{ngModule:Tn,providers:[xn,In(t),{provide:vn,useFactory:Sn,deps:[[an,new r.Optional,new r.SkipSelf]]},{provide:yn,useValue:e||{}},{provide:a.LocationStrategy,useFactory:On,deps:[a.PlatformLocation,[new r.Inject(a.APP_BASE_HREF),new r.Optional],yn]},{provide:mn,useFactory:wn,deps:[an,a.ViewportScroller,yn]},{provide:hn,useExisting:e&&e.preloadingStrategy?e.preloadingStrategy:pn},{provide:r.NgProbeToken,multi:!0,useFactory:_n},[Rn,{provide:r.APP_INITIALIZER,multi:!0,useFactory:An,deps:[Rn]},{provide:En,useFactory:kn,deps:[Rn]},{provide:r.APP_BOOTSTRAP_LISTENER,multi:!0,useExisting:En}]]}}static forChild(t){return{ngModule:Tn,providers:[In(t)]}}}function wn(t,e,n){return n.scrollOffset&&e.setOffset(n.scrollOffset),new mn(t,e,n)}function On(t,e,n={}){return n.useHash?new a.HashLocationStrategy(t,e):new a.PathLocationStrategy(t,e)}function Sn(t){if(t)throw new Error("RouterModule.forRoot() called twice. Lazy loaded modules should use RouterModule.forChild() instead.");return"guarded"}function In(t){return[{provide:r.ANALYZE_FOR_ENTRY_COMPONENTS,multi:!0,useValue:t},{provide:Ze,multi:!0,useValue:t}]}function Nn(t,e,n,a,r,i,s,u,o={},l,d){const c=new an(null,e,n,a,r,i,s,pt(u));if(l&&(c.urlHandlingStrategy=l),d&&(c.routeReuseStrategy=d),o.errorHandler&&(c.errorHandler=o.errorHandler),o.malformedUriErrorHandler&&(c.malformedUriErrorHandler=o.malformedUriErrorHandler),o.enableTracing){const t=Object(V.q)();c.events.subscribe(e=>{t.logGroup("Router Event: "+e.constructor.name),t.log(e.toString()),t.log(e),t.logGroupEnd()})}return o.onSameUrlNavigation&&(c.onSameUrlNavigation=o.onSameUrlNavigation),o.paramsInheritanceStrategy&&(c.paramsInheritanceStrategy=o.paramsInheritanceStrategy),o.urlUpdateStrategy&&(c.urlUpdateStrategy=o.urlUpdateStrategy),o.relativeLinkResolution&&(c.relativeLinkResolution=o.relativeLinkResolution),c}function Cn(t){return t.routerState.root}class Rn{constructor(t){this.injector=t,this.initNavigation=!1,this.resultOfPreactivationDone=new x.a}appInitializer(){return this.injector.get(a.LOCATION_INITIALIZED,Promise.resolve(null)).then(()=>{let t=null;const e=new Promise(e=>t=e),n=this.injector.get(an),a=this.injector.get(yn);if(this.isLegacyDisabled(a)||this.isLegacyEnabled(a))t(!0);else if("disabled"===a.initialNavigation)n.setUpLocationChangeListener(),t(!0);else{if("enabled"!==a.initialNavigation)throw new Error(`Invalid initialNavigation options: '${a.initialNavigation}'`);n.hooks.afterPreactivation=()=>this.initNavigation?Object(i.a)(null):(this.initNavigation=!0,t(!0),this.resultOfPreactivationDone),n.initialNavigation()}return e})}bootstrapListener(t){const e=this.injector.get(yn),n=this.injector.get(bn),a=this.injector.get(mn),i=this.injector.get(an),s=this.injector.get(r.ApplicationRef);t===s.components[0]&&(this.isLegacyEnabled(e)?i.initialNavigation():this.isLegacyDisabled(e)&&i.setUpLocationChangeListener(),n.setUpPreloading(),a.init(),i.resetRootComponentType(s.componentTypes[0]),this.resultOfPreactivationDone.next(null),this.resultOfPreactivationDone.complete())}isLegacyEnabled(t){return"legacy_enabled"===t.initialNavigation||!0===t.initialNavigation||void 0===t.initialNavigation}isLegacyDisabled(t){return"legacy_disabled"===t.initialNavigation||!1===t.initialNavigation}}function An(t){return t.appInitializer.bind(t)}function kn(t){return t.bootstrapListener.bind(t)}const En=new r.InjectionToken("Router Initializer")},"iQ+a":function(t,e,n){var a=n("nTk+"),r=n("1Yk6"),i=n("FGWQ");t.exports=function(t){return a(t,i,r)}},iSVu:function(t,e,n){var a=n("xs3f"),r=Function.toString;"function"!=typeof a.inspectSource&&(a.inspectSource=function(t){return r.call(t)}),t.exports=a.inspectSource},iYuL:function(t,e,n){!function(t){"use strict";var e="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),a=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],r=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;t.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(t,a){return t?/-MMM-/.test(a)?n[t.month()]:e[t.month()]:e},monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:a,longMonthsParse:a,shortMonthsParse:a,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}})}(n("wd/R"))},ienR:function(t,e,n){"use strict";n.d(e,"a",(function(){return h})),n.d(e,"b",(function(){return q})),n.d(e,"c",(function(){return j})),n.d(e,"d",(function(){return F})),n.d(e,"e",(function(){return V})),n.d(e,"f",(function(){return Y})),n.d(e,"g",(function(){return nt})),n.d(e,"h",(function(){return H})),n.d(e,"i",(function(){return B})),n.d(e,"j",(function(){return G})),n.d(e,"k",(function(){return z})),n.d(e,"l",(function(){return b})),n.d(e,"m",(function(){return st})),n.d(e,"n",(function(){return rt})),n.d(e,"o",(function(){return it})),n.d(e,"p",(function(){return dt})),n.d(e,"q",(function(){return ut})),n.d(e,"r",(function(){return ot})),n.d(e,"s",(function(){return lt})),n.d(e,"t",(function(){return M})),n.d(e,"u",(function(){return m})),n.d(e,"v",(function(){return p})),n.d(e,"w",(function(){return U})),n.d(e,"x",(function(){return W})),n.d(e,"y",(function(){return K})),n.d(e,"z",(function(){return $})),n.d(e,"A",(function(){return J})),n.d(e,"B",(function(){return Q})),n.d(e,"C",(function(){return X})),n.d(e,"D",(function(){return tt})),n.d(e,"E",(function(){return et}));var a=n("8Y7J"),r=n("pLZG"),i=n("lJxs"),s=n("IzEk"),u=n("xj/R"),o=n("2Vo4"),l=n("AfCQ"),d=n("2uy1"),c=(n("GS7A"),n("z/SZ")),f=(n("s7LF"),n("hpHm"));class h{constructor(){this.adaptivePosition=!1,this.useUtc=!1,this.isAnimated=!1,this.containerClass="theme-green",this.displayMonths=1,this.showWeekNumbers=!0,this.dateInputFormat="L",this.rangeSeparator=" - ",this.rangeInputFormat="L",this.monthTitle="MMMM",this.yearTitle="YYYY",this.dayLabel="D",this.monthLabel="MMMM",this.yearLabel="YYYY",this.weekNumbers="w"}}class g{constructor(){this._customRangesFish=[]}set minDate(t){this._effects.setMinDate(t)}set maxDate(t){this._effects.setMaxDate(t)}set daysDisabled(t){this._effects.setDaysDisabled(t)}set datesDisabled(t){this._effects.setDatesDisabled(t)}set isDisabled(t){this._effects.setDisabled(t)}set dateCustomClasses(t){this._effects.setDateCustomClasses(t)}setViewMode(t){}navigateTo(t){}dayHoverHandler(t){}weekHoverHandler(t){}monthHoverHandler(t){}yearHoverHandler(t){}daySelectHandler(t){}monthSelectHandler(t){}yearSelectHandler(t){}_stopPropagation(t){t.stopPropagation()}}let p=(()=>{class t{calculate(){return{type:t.CALCULATE}}format(){return{type:t.FORMAT}}flag(){return{type:t.FLAG}}select(e){return{type:t.SELECT,payload:e}}changeViewMode(e){return{type:t.CHANGE_VIEWMODE,payload:e}}navigateTo(e){return{type:t.NAVIGATE_TO,payload:e}}navigateStep(e){return{type:t.NAVIGATE_OFFSET,payload:e}}setOptions(e){return{type:t.SET_OPTIONS,payload:e}}selectRange(e){return{type:t.SELECT_RANGE,payload:e}}hoverDay(e){return{type:t.HOVER,payload:e.isHovered?e.cell.date:null}}minDate(e){return{type:t.SET_MIN_DATE,payload:e}}maxDate(e){return{type:t.SET_MAX_DATE,payload:e}}daysDisabled(e){return{type:t.SET_DAYSDISABLED,payload:e}}datesDisabled(e){return{type:t.SET_DATESDISABLED,payload:e}}isDisabled(e){return{type:t.SET_IS_DISABLED,payload:e}}setDateCustomClasses(e){return{type:t.SET_DATE_CUSTOM_CLASSES,payload:e}}setLocale(e){return{type:t.SET_LOCALE,payload:e}}}return t.CALCULATE="[datepicker] calculate dates matrix",t.FORMAT="[datepicker] format datepicker values",t.FLAG="[datepicker] set flags",t.SELECT="[datepicker] select date",t.NAVIGATE_OFFSET="[datepicker] shift view date",t.NAVIGATE_TO="[datepicker] change view date",t.SET_OPTIONS="[datepicker] update render options",t.HOVER="[datepicker] hover date",t.CHANGE_VIEWMODE="[datepicker] switch view mode",t.SET_MIN_DATE="[datepicker] set min date",t.SET_MAX_DATE="[datepicker] set max date",t.SET_DAYSDISABLED="[datepicker] set days disabled",t.SET_DATESDISABLED="[datepicker] set dates disabled",t.SET_IS_DISABLED="[datepicker] set is disabled",t.SET_DATE_CUSTOM_CLASSES="[datepicker] set date custom classes",t.SET_LOCALE="[datepicker] set datepicker locale",t.SELECT_RANGE="[daterangepicker] select dates range",t})();class b{constructor(){this._defaultLocale="en",this._locale=new o.a(this._defaultLocale),this._localeChange=this._locale.asObservable()}get locale(){return this._locale}get localeChange(){return this._localeChange}get currentLocale(){return this._locale.getValue()}use(t){t!==this.currentLocale&&this._locale.next(t)}}class m{constructor(t,e){this._actions=t,this._localeService=e,this._subs=[]}init(t){return this._store=t,this}setValue(t){this._store.dispatch(this._actions.select(t))}setRangeValue(t){this._store.dispatch(this._actions.selectRange(t))}setMinDate(t){return this._store.dispatch(this._actions.minDate(t)),this}setMaxDate(t){return this._store.dispatch(this._actions.maxDate(t)),this}setDaysDisabled(t){return this._store.dispatch(this._actions.daysDisabled(t)),this}setDatesDisabled(t){return this._store.dispatch(this._actions.datesDisabled(t)),this}setDisabled(t){return this._store.dispatch(this._actions.isDisabled(t)),this}setDateCustomClasses(t){return this._store.dispatch(this._actions.setDateCustomClasses(t)),this}setOptions(t){const e=Object.assign({locale:this._localeService.currentLocale},t);return this._store.dispatch(this._actions.setOptions(e)),this}setBindings(t){return t.daysCalendar=this._store.select(t=>t.flaggedMonths).pipe(Object(r.a)(t=>!!t)),t.monthsCalendar=this._store.select(t=>t.flaggedMonthsCalendar).pipe(Object(r.a)(t=>!!t)),t.yearsCalendar=this._store.select(t=>t.yearsCalendarFlagged).pipe(Object(r.a)(t=>!!t)),t.viewMode=this._store.select(t=>t.view.mode),t.options=this._store.select(t=>t.showWeekNumbers).pipe(Object(i.a)(t=>({showWeekNumbers:t}))),this}setEventHandlers(t){return t.setViewMode=t=>{this._store.dispatch(this._actions.changeViewMode(t))},t.navigateTo=t=>{this._store.dispatch(this._actions.navigateStep(t.step))},t.dayHoverHandler=t=>{const e=t.cell;e.isOtherMonth||e.isDisabled||(this._store.dispatch(this._actions.hoverDay(t)),e.isHovered=t.isHovered)},t.monthHoverHandler=t=>{t.cell.isHovered=t.isHovered},t.yearHoverHandler=t=>{t.cell.isHovered=t.isHovered},t.monthSelectHandler=t=>{t.isDisabled||this._store.dispatch(this._actions.navigateTo({unit:{month:Object(u.l)(t.date),year:Object(u.j)(t.date)},viewMode:"day"}))},t.yearSelectHandler=t=>{t.isDisabled||this._store.dispatch(this._actions.navigateTo({unit:{year:Object(u.j)(t.date)},viewMode:"month"}))},this}registerDatepickerSideEffects(){return this._subs.push(this._store.select(t=>t.view).subscribe(t=>{this._store.dispatch(this._actions.calculate())})),this._subs.push(this._store.select(t=>t.monthsModel).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.format()))),this._subs.push(this._store.select(t=>t.formattedMonths).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.selectedDate).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.selectedRange).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.monthsCalendar).subscribe(()=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.yearsCalendarModel).pipe(Object(r.a)(t=>!!t)).subscribe(()=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.hoveredDate).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._store.select(t=>t.dateCustomClasses).pipe(Object(r.a)(t=>!!t)).subscribe(t=>this._store.dispatch(this._actions.flag()))),this._subs.push(this._localeService.localeChange.subscribe(t=>this._store.dispatch(this._actions.setLocale(t)))),this}destroy(){for(const t of this._subs)t.unsubscribe()}}const y={date:new Date,mode:"day"},v=Object.assign(new h,{locale:"en",view:y,selectedRange:[],monthViewOptions:{width:7,height:6}});function x(t,e,n){const a=e&&Object(u.p)(Object(u.d)(t,"month"),e,"day"),r=n&&Object(u.n)(Object(u.G)(t,"month"),n,"day");return a||r}function _(t,e,n){const a=e&&Object(u.p)(Object(u.d)(t,"year"),e,"day"),r=n&&Object(u.n)(Object(u.G)(t,"year"),n,"day");return a||r}function T(t,e=0){const n=t&&t.yearsCalendarModel&&t.yearsCalendarModel[e];return n&&n.years&&n.years[0]&&n.years[0][0]&&n.years[0][0].date}function w(t,e){let n=t.initialDate;const a=new Array(t.height);for(let r=0;r<t.height;r++){a[r]=new Array(t.width);for(let i=0;i<t.width;i++)a[r][i]=e(n),n=Object(u.F)(n,t.shift)}return a}function O(t,e){const n=Object(u.i)(t),a=function(t,e){if(Object(u.t)(t,e.firstDayOfWeek))return t;const n=function(t,e){if(0===e)return t;const n=t-e%7;return n<0?n+7:n}(Object(u.h)(t),e.firstDayOfWeek);return Object(u.F)(t,{day:-n})}(n,e);return{daysMatrix:w({width:e.width,height:e.height,initialDate:a,shift:{day:1}},t=>t),month:n}}function S(t){const e=Object(u.k)(t),n=e.weekdaysShort(),a=e.firstDayOfWeek();return[...n.slice(a),...n.slice(0,a)]}function I(t,e){return!e||t>=e}const N={month:1};function C(t,e){return{months:w({width:3,height:4,initialDate:Object(u.G)(t,"year"),shift:N},t=>({date:t,label:Object(u.f)(t,e.monthLabel,e.locale)})),monthTitle:"",yearTitle:Object(u.f)(t,e.yearTitle,e.locale)}}const R=-1*(Math.floor(8)-1),A={year:1};function k(t,e,n){const a=w({width:4,height:4,initialDate:function(t,e){return e&&t.getFullYear()>=e.getFullYear()&&t.getFullYear()<e.getFullYear()+16?e:Object(u.F)(t,{year:R})}(t,n),shift:A},t=>({date:t,label:Object(u.f)(t,e.yearLabel,e.locale)}));return{years:a,monthTitle:"",yearTitle:function(t,e){return`${Object(u.f)(t[0][0].date,e.yearTitle,e.locale)} - ${Object(u.f)(t[3][3].date,e.yearTitle,e.locale)}`}(a,e)}}function E(t=v,e){switch(e.type){case p.CALCULATE:return function(t){const e=t.displayMonths;let n=t.view.date;if("day"===t.view.mode){t.showPreviousMonth&&0===t.selectedRange.length&&(n=Object(u.F)(n,{month:-1})),t.monthViewOptions.firstDayOfWeek=Object(u.k)(t.locale).firstDayOfWeek();const a=new Array(e);for(let r=0;r<e;r++)a[r]=O(n,t.monthViewOptions),n=Object(u.F)(n,{month:1});return Object.assign({},t,{monthsModel:a})}if("month"===t.view.mode){const a=new Array(e);for(let r=0;r<e;r++)a[r]=C(n,D(t)),n=Object(u.F)(n,{year:1});return Object.assign({},t,{monthsCalendar:a})}if("year"===t.view.mode){const a=new Array(e);for(let r=0;r<e;r++)a[r]=k(n,D(t),"year"===t.minMode?T(t,r):void 0),n=Object(u.F)(n,{year:16});return Object.assign({},t,{yearsCalendarModel:a})}return t}(t);case p.FORMAT:return function(t,e){if("day"===t.view.mode){const e=t.monthsModel.map((e,n)=>function(t,e,n){return{month:t.month,monthTitle:Object(u.f)(t.month,e.monthTitle,e.locale),yearTitle:Object(u.f)(t.month,e.yearTitle,e.locale),weekNumbers:(a=t.daysMatrix,r=e.weekNumbers,i=e.locale,a.map(t=>t[0]?Object(u.f)(t[0],r,i):"")),weekdays:S(e.locale),weeks:t.daysMatrix.map((t,a)=>({days:t.map((t,r)=>({date:t,label:Object(u.f)(t,e.dayLabel,e.locale),monthIndex:n,weekIndex:a,dayIndex:r}))}))};var a,r,i}(e,D(t),n));return Object.assign({},t,{formattedMonths:e})}const n=t.displayMonths;let a=t.view.date;if("month"===t.view.mode){const e=new Array(n);for(let r=0;r<n;r++)e[r]=C(a,D(t)),a=Object(u.F)(a,{year:1});return Object.assign({},t,{monthsCalendar:e})}if("year"===t.view.mode){const e=new Array(n);for(let r=0;r<n;r++)e[r]=k(a,D(t)),a=Object(u.F)(a,{year:16});return Object.assign({},t,{yearsCalendarModel:e})}return t}(t);case p.FLAG:return function(t,e){if("day"===t.view.mode){const e=t.formattedMonths.map((e,n)=>function(t,e){return t.weeks.forEach(n=>{n.days.forEach((a,r)=>{const i=!Object(u.w)(a.date,t.month),s=!i&&Object(u.v)(a.date,e.hoveredDate),o=!i&&e.selectedRange&&Object(u.v)(a.date,e.selectedRange[0]),l=!i&&e.selectedRange&&Object(u.v)(a.date,e.selectedRange[1]),d=!i&&Object(u.v)(a.date,e.selectedDate)||o||l,c=!i&&e.selectedRange&&function(t,e,n){return!(!t||!e[0])&&(e[1]?t>e[0]&&t<=e[1]:!!n&&t>e[0]&&t<=n)}(a.date,e.selectedRange,e.hoveredDate),f=e.isDisabled||Object(u.p)(a.date,e.minDate,"day")||Object(u.n)(a.date,e.maxDate,"day")||Object(u.s)(a.date,e.daysDisabled)||(h=a.date,!(void 0===(g=e.datesDisabled)||!g||!g.length)&&g.some(t=>Object(u.u)(h,t,"date")));var h,g;const p=new Date,b=!i&&Object(u.v)(a.date,p),m=e.dateCustomClasses&&e.dateCustomClasses.map(t=>Object(u.v)(a.date,t.date)?t.classes:[]).reduce((t,e)=>t.concat(e),[]).join(" ")||"",y=Object.assign({},a,{isOtherMonth:i,isHovered:s,isSelected:d,isSelectionStart:o,isSelectionEnd:l,isInRange:c,isDisabled:f,isToday:b,customClasses:m});a.isOtherMonth===y.isOtherMonth&&a.isHovered===y.isHovered&&a.isSelected===y.isSelected&&a.isSelectionStart===y.isSelectionStart&&a.isSelectionEnd===y.isSelectionEnd&&a.isDisabled===y.isDisabled&&a.isInRange===y.isInRange&&a.customClasses===y.customClasses||(n.days[r]=y)})}),t.hideLeftArrow=e.isDisabled||e.monthIndex>0&&e.monthIndex!==e.displayMonths,t.hideRightArrow=e.isDisabled||e.monthIndex<e.displayMonths&&e.monthIndex+1!==e.displayMonths,t.disableLeftArrow=x(Object(u.F)(t.month,{month:-1}),e.minDate,e.maxDate),t.disableRightArrow=x(Object(u.F)(t.month,{month:1}),e.minDate,e.maxDate),t}(e,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,daysDisabled:t.daysDisabled,datesDisabled:t.datesDisabled,hoveredDate:t.hoveredDate,selectedDate:t.selectedDate,selectedRange:t.selectedRange,displayMonths:t.displayMonths,dateCustomClasses:t.dateCustomClasses,monthIndex:n}));return Object.assign({},t,{flaggedMonths:e})}if("month"===t.view.mode){const e=t.monthsCalendar.map((e,n)=>{return r={isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,hoveredMonth:t.hoveredMonth,selectedDate:t.selectedDate,displayMonths:t.displayMonths,monthIndex:n},(a=e).months.forEach((t,e)=>{t.forEach((t,n)=>{const i=Object(u.w)(t.date,r.hoveredMonth),s=r.isDisabled||x(t.date,r.minDate,r.maxDate),o=Object(u.w)(t.date,r.selectedDate),l=Object.assign(t,{isHovered:i,isDisabled:s,isSelected:o});t.isHovered===l.isHovered&&t.isDisabled===l.isDisabled&&t.isSelected===l.isSelected||(a.months[e][n]=l)})}),a.hideLeftArrow=r.monthIndex>0&&r.monthIndex!==r.displayMonths,a.hideRightArrow=r.monthIndex<r.displayMonths&&r.monthIndex+1!==r.displayMonths,a.disableLeftArrow=_(Object(u.F)(a.months[0][0].date,{year:-1}),r.minDate,r.maxDate),a.disableRightArrow=_(Object(u.F)(a.months[0][0].date,{year:1}),r.minDate,r.maxDate),a;var a,r});return Object.assign({},t,{flaggedMonthsCalendar:e})}if("year"===t.view.mode){const e=t.yearsCalendarModel.map((e,n)=>function(t,e){t.years.forEach((n,a)=>{n.forEach((n,r)=>{const i=Object(u.x)(n.date,e.hoveredYear),s=e.isDisabled||_(n.date,e.minDate,e.maxDate),o=Object(u.x)(n.date,e.selectedDate),l=Object.assign(n,{isHovered:i,isDisabled:s,isSelected:o});n.isHovered===l.isHovered&&n.isDisabled===l.isDisabled&&n.isSelected===l.isSelected||(t.years[a][r]=l)})}),t.hideLeftArrow=e.yearIndex>0&&e.yearIndex!==e.displayMonths,t.hideRightArrow=e.yearIndex<e.displayMonths&&e.yearIndex+1!==e.displayMonths,t.disableLeftArrow=_(Object(u.F)(t.years[0][0].date,{year:-1}),e.minDate,e.maxDate);const n=t.years.length-1,a=t.years[n].length-1;return t.disableRightArrow=_(Object(u.F)(t.years[n][a].date,{year:1}),e.minDate,e.maxDate),t}(e,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,hoveredYear:t.hoveredYear,selectedDate:t.selectedDate,displayMonths:t.displayMonths,yearIndex:n}));return Object.assign({},t,{yearsCalendarFlagged:e})}return t}(t);case p.NAVIGATE_OFFSET:return function(t,e){const n={view:{mode:t.view.mode,date:L(t,e)}};return Object.assign({},t,n)}(t,e);case p.NAVIGATE_TO:{const n=e.payload,a=Object(u.E)(t.view.date,n.unit);let r,i;return I(n.viewMode,t.minMode)?(i=n.viewMode,r={view:{date:a,mode:i}}):(i=t.view.mode,r={selectedDate:a,view:{date:a,mode:i}}),Object.assign({},t,r)}case p.CHANGE_VIEWMODE:return I(e.payload,t.minMode)?Object.assign({},t,{view:{date:t.view.date,mode:e.payload}}):t;case p.HOVER:return Object.assign({},t,{hoveredDate:e.payload});case p.SELECT:{const n={selectedDate:e.payload,view:t.view},a=t.view.mode,r=P(e.payload||t.view.date,t.minDate,t.maxDate);return n.view={mode:a,date:r},Object.assign({},t,n)}case p.SET_OPTIONS:{const n=e.payload,a=n.minMode?n.minMode:t.view.mode,r=P(Object(u.r)(n.value)&&n.value||Object(u.o)(n.value)&&Object(u.r)(n.value[0])&&n.value[0]||t.view.date,n.minDate,n.maxDate);return n.view={mode:a,date:r},n.value&&(Object(u.o)(n.value)&&(n.selectedRange=n.value),n.value instanceof Date&&(n.selectedDate=n.value)),Object.assign({},t,n)}case p.SELECT_RANGE:{const n={selectedRange:e.payload,view:t.view},a=t.view.mode,r=P(e.payload&&e.payload[0]||t.view.date,t.minDate,t.maxDate);return n.view={mode:a,date:r},Object.assign({},t,n)}case p.SET_MIN_DATE:return Object.assign({},t,{minDate:e.payload});case p.SET_MAX_DATE:return Object.assign({},t,{maxDate:e.payload});case p.SET_IS_DISABLED:return Object.assign({},t,{isDisabled:e.payload});case p.SET_DATE_CUSTOM_CLASSES:return Object.assign({},t,{dateCustomClasses:e.payload});default:return t}}function L(t,e){if("year"===t.view.mode&&"year"===t.minMode){const n=T(t,0),a=Object(u.F)(n,{year:-R});return Object(u.F)(a,e.payload)}return Object(u.F)(Object(u.G)(t.view.date,"month"),e.payload)}function D(t){return{locale:t.locale,monthTitle:t.monthTitle,yearTitle:t.yearTitle,dayLabel:t.dayLabel,monthLabel:t.monthLabel,yearLabel:t.yearLabel,weekNumbers:t.weekNumbers}}function P(t,e,n){const a=Array.isArray(t)?t[0]:t;return e&&Object(u.n)(e,a,"day")?e:n&&Object(u.p)(n,a,"day")?n:a}class M extends l.b{constructor(){const t=new o.a({type:"[datepicker] dispatcher init"});super(t,E,new l.a(v,t,E))}}class q extends g{constructor(t,e,n,r,i,s,u){super(),this._config=e,this._store=n,this._element=r,this._actions=i,this._positionService=u,this.valueChange=new a.EventEmitter,this.animationState="void",this._subs=[],this._effects=s,t.setStyle(r.nativeElement,"display","block"),t.setStyle(r.nativeElement,"position","absolute")}set value(t){this._effects.setValue(t)}ngOnInit(){this._positionService.setOptions({modifiers:{flip:{enabled:this._config.adaptivePosition}},allowedPositions:["top","bottom"]}),this._positionService.event$.pipe(Object(s.a)(1)).subscribe(()=>{this._positionService.disable(),this.animationState=this._config.isAnimated?this.isTopPosition?"animated-up":"animated-down":"unanimated"}),this.isOtherMonthsActive=this._config.selectFromOtherMonth,this.containerClass=this._config.containerClass,this._effects.init(this._store).setOptions(this._config).setBindings(this).setEventHandlers(this).registerDatepickerSideEffects(),this._subs.push(this._store.select(t=>t.selectedDate).subscribe(t=>this.valueChange.emit(t)))}get isTopPosition(){return this._element.nativeElement.classList.contains("top")}positionServiceEnable(){this._positionService.enable()}daySelectHandler(t){(this.isOtherMonthsActive?t.isDisabled:t.isOtherMonth||t.isDisabled)||this._store.dispatch(this._actions.select(t.date))}ngOnDestroy(){for(const t of this._subs)t.unsubscribe();this._effects.destroy()}}class j{constructor(t,e,n,r,i){this._config=t,this.placement="bottom",this.triggers="click",this.outsideClick=!0,this.container="body",this.outsideEsc=!0,this.bsValueChange=new a.EventEmitter,this._subs=[],Object.assign(this,this._config),this._datepicker=i.createLoader(e,r,n),this.onShown=this._datepicker.onShown,this.onHidden=this._datepicker.onHidden}get isOpen(){return this._datepicker.isShown}set isOpen(t){t?this.show():this.hide()}set bsValue(t){this._bsValue&&t&&this._bsValue.getTime()===t.getTime()||(this._bsValue=t,this.bsValueChange.emit(t))}ngOnInit(){this._datepicker.listen({outsideClick:this.outsideClick,outsideEsc:this.outsideEsc,triggers:this.triggers,show:()=>this.show()}),this.setConfig()}ngOnChanges(t){this._datepickerRef&&this._datepickerRef.instance&&(t.minDate&&(this._datepickerRef.instance.minDate=this.minDate),t.maxDate&&(this._datepickerRef.instance.maxDate=this.maxDate),t.daysDisabled&&(this._datepickerRef.instance.daysDisabled=this.daysDisabled),t.datesDisabled&&(this._datepickerRef.instance.datesDisabled=this.datesDisabled),t.isDisabled&&(this._datepickerRef.instance.isDisabled=this.isDisabled),t.dateCustomClasses&&(this._datepickerRef.instance.dateCustomClasses=this.dateCustomClasses))}show(){this._datepicker.isShown||(this.setConfig(),this._datepickerRef=this._datepicker.provide({provide:h,useValue:this._config}).attach(q).to(this.container).position({attachment:this.placement}).show({placement:this.placement}),this._subs.push(this.bsValueChange.subscribe(t=>{this._datepickerRef.instance.value=t})),this._subs.push(this._datepickerRef.instance.valueChange.subscribe(t=>{this.bsValue=t,this.hide()})))}hide(){this.isOpen&&this._datepicker.hide();for(const t of this._subs)t.unsubscribe()}toggle(){if(this.isOpen)return this.hide();this.show()}setConfig(){this._config=Object.assign({},this._config,this.bsConfig,{value:this._bsValue,isDisabled:this.isDisabled,minDate:this.minDate||this.bsConfig&&this.bsConfig.minDate,maxDate:this.maxDate||this.bsConfig&&this.bsConfig.maxDate,daysDisabled:this.daysDisabled||this.bsConfig&&this.bsConfig.daysDisabled,dateCustomClasses:this.dateCustomClasses||this.bsConfig&&this.bsConfig.dateCustomClasses,datesDisabled:this.datesDisabled||this.bsConfig&&this.bsConfig.datesDisabled,minMode:this.minMode||this.bsConfig&&this.bsConfig.minMode})}ngOnDestroy(){this._datepicker.dispose()}}class F extends h{}class V extends q{constructor(t,e,n,a,r,i,s){super(t,e,n,a,r,i,s),t.setStyle(a.nativeElement,"display","inline-block"),t.setStyle(a.nativeElement,"position","static")}}class G extends h{constructor(){super(...arguments),this.displayMonths=2,this.isAnimated=!1}}class B extends g{constructor(t,e,n,r,i,s,u){super(),this._config=e,this._store=n,this._element=r,this._actions=i,this._positionService=u,this.valueChange=new a.EventEmitter,this.animationState="void",this._rangeStack=[],this._subs=[],this._effects=s,t.setStyle(r.nativeElement,"display","block"),t.setStyle(r.nativeElement,"position","absolute")}set value(t){this._effects.setRangeValue(t)}ngOnInit(){this._positionService.setOptions({modifiers:{flip:{enabled:this._config.adaptivePosition}},allowedPositions:["top","bottom"]}),this._positionService.event$.pipe(Object(s.a)(1)).subscribe(()=>{this._positionService.disable(),this.animationState=this._config.isAnimated?this.isTopPosition?"animated-up":"animated-down":"unanimated"}),this.containerClass=this._config.containerClass,this.isOtherMonthsActive=this._config.selectFromOtherMonth,this._effects.init(this._store).setOptions(this._config).setBindings(this).setEventHandlers(this).registerDatepickerSideEffects(),this._subs.push(this._store.select(t=>t.selectedRange).subscribe(t=>this.valueChange.emit(t)))}get isTopPosition(){return this._element.nativeElement.classList.contains("top")}positionServiceEnable(){this._positionService.enable()}daySelectHandler(t){(this.isOtherMonthsActive?t.isDisabled:t.isOtherMonth||t.isDisabled)||(1===this._rangeStack.length&&(this._rangeStack=t.date>=this._rangeStack[0]?[this._rangeStack[0],t.date]:[t.date]),0===this._rangeStack.length&&(this._rangeStack=[t.date]),this._store.dispatch(this._actions.selectRange(this._rangeStack)),2===this._rangeStack.length&&(this._rangeStack=[]))}ngOnDestroy(){for(const t of this._subs)t.unsubscribe();this._effects.destroy()}}class z extends B{constructor(t,e,n,a,r,i,s){super(t,e,n,a,r,i,s),t.setStyle(a.nativeElement,"display","inline-block"),t.setStyle(a.nativeElement,"position","static")}}class Y{constructor(t,e,n,a,r){this._picker=t,this._localeService=e,this._renderer=n,this._elRef=a,this.changeDetection=r,this._onChange=Function.prototype,this._onTouched=Function.prototype,this._validatorChange=Function.prototype,this._picker.bsValueChange.subscribe(t=>{let e=t;if(t){const n=this._localeService.currentLocale,a=Object(u.k)(n);if(!a)throw new Error(`Locale "${n}" is not defined, please add it with "defineLocale(...)"`);e=a.preinput(t)}this._setInputValue(e),this._value!==e&&(this._value=e,this._onChange(e),this._onTouched()),this.changeDetection.markForCheck()}),this._localeService.localeChange.subscribe(()=>{this._setInputValue(this._value)})}_setInputValue(t){const e=t?Object(u.f)(t,this._picker._config.dateInputFormat,this._localeService.currentLocale):"";this._renderer.setProperty(this._elRef.nativeElement,"value",e)}onChange(t){this.writeValue(t.target.value),this._onChange(this._value),this._onTouched()}validate(t){const e=t.value;if(null==e||""===e)return null;if(Object(u.q)(e)){if(!Object(u.r)(e))return{bsDate:{invalid:e}};if(this._picker&&this._picker.minDate&&Object(u.p)(e,this._picker.minDate,"date"))return this.writeValue(this._picker.minDate),{bsDate:{minDate:this._picker.minDate}};if(this._picker&&this._picker.maxDate&&Object(u.n)(e,this._picker.maxDate,"date"))return this.writeValue(this._picker.maxDate),{bsDate:{maxDate:this._picker.maxDate}}}}registerOnValidatorChange(t){this._validatorChange=t}writeValue(t){if(t){const e=this._localeService.currentLocale;if(!Object(u.k)(e))throw new Error(`Locale "${e}" is not defined, please add it with "defineLocale(...)"`);this._value=Object(u.B)(t,this._picker._config.dateInputFormat,this._localeService.currentLocale),this._picker._config.useUtc&&(this._value=Object(u.H)(this._value))}else this._value=null;this._picker.bsValue=this._value}setDisabledState(t){this._picker.isDisabled=t,t?this._renderer.setAttribute(this._elRef.nativeElement,"disabled","disabled"):this._renderer.removeAttribute(this._elRef.nativeElement,"disabled")}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}onBlur(){this._onTouched()}hide(){this._picker.hide(),this._renderer.selectRootElement(this._elRef.nativeElement).blur()}}class H extends h{constructor(){super(...arguments),this.displayMonths=2}}class U{}class W{}class K{}class ${constructor(t,e,n){this._config=t,this._elRef=e,this._renderer=n}ngOnInit(){this.day.isToday&&this._config&&this._config.customTodayClass&&this._renderer.addClass(this._elRef.nativeElement,this._config.customTodayClass),"string"==typeof this.day.customClasses&&this.day.customClasses.split(" ").filter(t=>t).forEach(t=>{this._renderer.addClass(this._elRef.nativeElement,t)})}}const Z=function(){var t={UP:0,DOWN:1};return t[t.UP]="UP",t[t.DOWN]="DOWN",t}();class J{constructor(){this.onNavigate=new a.EventEmitter,this.onViewMode=new a.EventEmitter}navTo(t){this.onNavigate.emit(t?Z.DOWN:Z.UP)}view(t){this.onViewMode.emit(t)}}class Q{constructor(t){this._config=t,this.onNavigate=new a.EventEmitter,this.onViewMode=new a.EventEmitter,this.onSelect=new a.EventEmitter,this.onHover=new a.EventEmitter,this.onHoverWeek=new a.EventEmitter}navigateTo(t){this.onNavigate.emit({step:{month:Z.DOWN===t?-1:1}})}changeViewMode(t){this.onViewMode.emit(t)}selectDay(t){this.onSelect.emit(t)}selectWeek(t){if(!this._config.selectWeek)return;if(t.days&&t.days[0]&&!t.days[0].isDisabled&&this._config.selectFromOtherMonth)return void this.onSelect.emit(t.days[0]);if(0===t.days.length)return;const e=t.days.find(t=>(this._config.selectFromOtherMonth||!t.isOtherMonth)&&!t.isDisabled);this.onSelect.emit(e)}weekHoverHandler(t,e){this._config.selectWeek&&t.days.find(t=>(this._config.selectFromOtherMonth||!t.isOtherMonth)&&!t.isDisabled)&&(t.isHovered=e,this.isWeekHovered=e,this.onHoverWeek.emit(t))}hoverDay(t,e){this._config.selectFromOtherMonth&&t.isOtherMonth&&(t.isOtherMonthHovered=e),this.onHover.emit({cell:t,isHovered:e})}}class X{constructor(){this.onNavigate=new a.EventEmitter,this.onViewMode=new a.EventEmitter,this.onSelect=new a.EventEmitter,this.onHover=new a.EventEmitter}navigateTo(t){this.onNavigate.emit({step:{year:Z.DOWN===t?-1:1}})}viewMonth(t){this.onSelect.emit(t)}hoverMonth(t,e){this.onHover.emit({cell:t,isHovered:e})}changeViewMode(t){this.onViewMode.emit(t)}}class tt{constructor(){this.ampm="ok",this.hours=0,this.minutes=0}}class et{constructor(){this.onNavigate=new a.EventEmitter,this.onViewMode=new a.EventEmitter,this.onSelect=new a.EventEmitter,this.onHover=new a.EventEmitter}navigateTo(t){this.onNavigate.emit({step:{year:16*(Z.DOWN===t?-1:1)}})}viewYear(t){this.onSelect.emit(t)}hoverYear(t,e){this.onHover.emit({cell:t,isHovered:e})}changeViewMode(t){this.onViewMode.emit(t)}}class nt{static forRoot(){return{ngModule:nt,providers:[c.a,d.a,M,p,h,H,F,G,m,b]}}}class at{format(t,e,n){return Object(u.f)(t,e,n)}}class rt{constructor(){this.selectionDone=new a.EventEmitter(void 0),this.update=new a.EventEmitter(!1),this.activeDateChange=new a.EventEmitter(void 0),this.stepDay={},this.stepMonth={},this.stepYear={},this.modes=["day","month","year"],this.dateFormatter=new at}get activeDate(){return this._activeDate}set activeDate(t){this._activeDate=t}ngOnInit(){this.uniqueId="datepicker--"+Math.floor(1e4*Math.random()),this.initDate?(this.activeDate=this.initDate,this.selectedDate=new Date(this.activeDate.valueOf()),this.update.emit(this.activeDate)):void 0===this.activeDate&&(this.activeDate=new Date)}ngOnChanges(t){this.refreshView(),this.checkIfActiveDateGotUpdated(t.activeDate)}checkIfActiveDateGotUpdated(t){if(t&&!t.firstChange){const e=t.previousValue;e&&e instanceof Date&&e.getTime()!==t.currentValue.getTime()&&this.activeDateChange.emit(this.activeDate)}}setCompareHandler(t,e){"day"===e&&(this.compareHandlerDay=t),"month"===e&&(this.compareHandlerMonth=t),"year"===e&&(this.compareHandlerYear=t)}compare(t,e){if(void 0!==t&&void 0!==e)return"day"===this.datepickerMode&&this.compareHandlerDay?this.compareHandlerDay(t,e):"month"===this.datepickerMode&&this.compareHandlerMonth?this.compareHandlerMonth(t,e):"year"===this.datepickerMode&&this.compareHandlerYear?this.compareHandlerYear(t,e):void 0}setRefreshViewHandler(t,e){"day"===e&&(this.refreshViewHandlerDay=t),"month"===e&&(this.refreshViewHandlerMonth=t),"year"===e&&(this.refreshViewHandlerYear=t)}refreshView(){"day"===this.datepickerMode&&this.refreshViewHandlerDay&&this.refreshViewHandlerDay(),"month"===this.datepickerMode&&this.refreshViewHandlerMonth&&this.refreshViewHandlerMonth(),"year"===this.datepickerMode&&this.refreshViewHandlerYear&&this.refreshViewHandlerYear()}dateFilter(t,e){return this.dateFormatter.format(t,e,this.locale)}isActive(t){return 0===this.compare(t.date,this.activeDate)&&(this.activeDateId=t.uid,!0)}createDateObject(t,e){const n={};return n.date=new Date(t.getFullYear(),t.getMonth(),t.getDate()),n.date=this.fixTimeZone(n.date),n.label=this.dateFilter(t,e),n.selected=0===this.compare(t,this.selectedDate),n.disabled=this.isDisabled(t),n.current=0===this.compare(t,new Date),n.customClass=this.getCustomClassForDate(n.date),n}split(t,e){const n=[];for(;t.length>0;)n.push(t.splice(0,e));return n}fixTimeZone(t){const e=t.getHours();return new Date(t.getFullYear(),t.getMonth(),t.getDate(),23===e?e+2:0)}select(t,e=!0){this.datepickerMode===this.minMode?(this.activeDate||(this.activeDate=new Date(0,0,0,0,0,0,0)),this.activeDate=new Date(t.getFullYear(),t.getMonth(),t.getDate()),this.activeDate=this.fixTimeZone(this.activeDate),e&&this.selectionDone.emit(this.activeDate)):(this.activeDate=new Date(t.getFullYear(),t.getMonth(),t.getDate()),this.activeDate=this.fixTimeZone(this.activeDate),e&&(this.datepickerMode=this.modes[this.modes.indexOf(this.datepickerMode)-1])),this.selectedDate=new Date(this.activeDate.valueOf()),this.update.emit(this.activeDate),this.refreshView()}move(t){let e;if("day"===this.datepickerMode&&(e=this.stepDay),"month"===this.datepickerMode&&(e=this.stepMonth),"year"===this.datepickerMode&&(e=this.stepYear),e){const n=this.activeDate.getFullYear()+t*(e.years||0),a=this.activeDate.getMonth()+t*(e.months||0);this.activeDate=new Date(n,a,1),this.refreshView(),this.activeDateChange.emit(this.activeDate)}}toggleMode(t){const e=t||1;this.datepickerMode===this.maxMode&&1===e||this.datepickerMode===this.minMode&&-1===e||(this.datepickerMode=this.modes[this.modes.indexOf(this.datepickerMode)+e],this.refreshView())}getCustomClassForDate(t){if(!this.customClass)return"";const e=this.customClass.find(e=>e.date.valueOf()===t.valueOf()&&e.mode===this.datepickerMode,this);return void 0===e?"":e.clazz}compareDateDisabled(t,e){if(void 0!==t&&void 0!==e)return"day"===t.mode&&this.compareHandlerDay?this.compareHandlerDay(t.date,e):"month"===t.mode&&this.compareHandlerMonth?this.compareHandlerMonth(t.date,e):"year"===t.mode&&this.compareHandlerYear?this.compareHandlerYear(t.date,e):void 0}isDisabled(t){let e=!1;return this.dateDisabled&&this.dateDisabled.forEach(n=>{0===this.compareDateDisabled(n,t)&&(e=!0)}),this.dayDisabled&&(e=e||this.dayDisabled.indexOf(t.getDay())>-1),e||this.minDate&&this.compare(t,this.minDate)<0||this.maxDate&&this.compare(t,this.maxDate)>0}}class it{constructor(){this.locale="en",this.datepickerMode="day",this.startingDay=0,this.yearRange=20,this.minMode="day",this.maxMode="year",this.showWeeks=!0,this.formatDay="DD",this.formatMonth="MMMM",this.formatYear="YYYY",this.formatDayHeader="dd",this.formatDayTitle="MMMM YYYY",this.formatMonthTitle="YYYY",this.onlyCurrentMonth=!1,this.monthColLimit=3,this.yearColLimit=5,this.shortcutPropagation=!1}}class st{constructor(t){this.datepickerMode="day",this.showWeeks=!0,this.selectionDone=new a.EventEmitter(void 0),this.activeDateChange=new a.EventEmitter(void 0),this.onChange=Function.prototype,this.onTouched=Function.prototype,this._now=new Date,this.config=t,this.configureOptions()}get activeDate(){return this._activeDate||this._now}set activeDate(t){this._activeDate=t}configureOptions(){Object.assign(this,this.config)}onUpdate(t){this.activeDate=t,this.onChange(t)}onSelectionDone(t){this.selectionDone.emit(t)}onActiveDateChange(t){this.activeDateChange.emit(t)}writeValue(t){if(0!==this._datePicker.compare(t,this._activeDate))return t&&t instanceof Date?(this.activeDate=t,void this._datePicker.select(t,!1)):void(this.activeDate=t?new Date(t):void 0)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}}class ut{constructor(t){this.labels=[],this.rows=[],this.weekNumbers=[],this.datePicker=t}get isBs4(){return!Object(f.d)()}ngOnInit(){const t=this;this.datePicker.stepDay={months:1},this.datePicker.setRefreshViewHandler((function(){const e=this.activeDate.getFullYear(),n=this.activeDate.getMonth(),a=new Date(e,n,1),r=this.startingDay-a.getDay(),i=r>0?7-r:-r,s=new Date(a.getTime());i>0&&s.setDate(1-i);const u=t.getDates(s,42),o=[];for(let t=0;t<42;t++){const e=this.createDateObject(u[t],this.formatDay);e.secondary=u[t].getMonth()!==n,e.uid=this.uniqueId+"-"+t,o[t]=e}t.labels=[];for(let l=0;l<7;l++)t.labels[l]={},t.labels[l].abbr=this.dateFilter(o[l].date,this.formatDayHeader),t.labels[l].full=this.dateFilter(o[l].date,"EEEE");if(t.title=this.dateFilter(this.activeDate,this.formatDayTitle),t.rows=this.split(o,7),this.showWeeks){t.weekNumbers=[];const e=(11-this.startingDay)%7,n=t.rows.length;for(let a=0;a<n;a++)t.weekNumbers.push(t.getISO8601WeekNumber(t.rows[a][e].date))}}),"day"),this.datePicker.setCompareHandler((function(t,e){const n=new Date(t.getFullYear(),t.getMonth(),t.getDate()),a=new Date(e.getFullYear(),e.getMonth(),e.getDate());return n.getTime()-a.getTime()}),"day"),this.datePicker.refreshView()}getDates(t,e){const n=new Array(e);let a,r=new Date(t.getTime()),i=0;for(;i<e;)a=new Date(r.getTime()),a=this.datePicker.fixTimeZone(a),n[i++]=a,r=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);return n}getISO8601WeekNumber(t){const e=new Date(t.getTime());e.setDate(e.getDate()+4-(e.getDay()||7));const n=e.getTime();return e.setMonth(0),e.setDate(1),Math.floor(Math.round((n-e.getTime())/864e5)/7)+1}}class ot{constructor(t){this.rows=[],this.datePicker=t}get isBs4(){return!Object(f.d)()}ngOnInit(){const t=this;this.datePicker.stepMonth={years:1},this.datePicker.setRefreshViewHandler((function(){const e=new Array(12),n=this.activeDate.getFullYear();let a;for(let t=0;t<12;t++)a=new Date(n,t,1),a=this.fixTimeZone(a),e[t]=this.createDateObject(a,this.formatMonth),e[t].uid=this.uniqueId+"-"+t;t.title=this.dateFilter(this.activeDate,this.formatMonthTitle),t.rows=this.split(e,t.datePicker.monthColLimit)}),"month"),this.datePicker.setCompareHandler((function(t,e){const n=new Date(t.getFullYear(),t.getMonth()),a=new Date(e.getFullYear(),e.getMonth());return n.getTime()-a.getTime()}),"month"),this.datePicker.refreshView()}}class lt{constructor(t){this.rows=[],this.datePicker=t}get isBs4(){return!Object(f.d)()}ngOnInit(){const t=this;this.datePicker.stepYear={years:this.datePicker.yearRange},this.datePicker.setRefreshViewHandler((function(){const e=new Array(this.yearRange);let n;const a=t.getStartingYear(this.activeDate.getFullYear());for(let t=0;t<this.yearRange;t++)n=new Date(a+t,0,1),n=this.fixTimeZone(n),e[t]=this.createDateObject(n,this.formatYear),e[t].uid=this.uniqueId+"-"+t;t.title=[e[0].label,e[this.yearRange-1].label].join(" - "),t.rows=this.split(e,t.datePicker.yearColLimit)}),"year"),this.datePicker.setCompareHandler((function(t,e){return t.getFullYear()-e.getFullYear()}),"year"),this.datePicker.refreshView()}getStartingYear(t){return(t-1)/this.datePicker.yearRange*this.datePicker.yearRange+1}}class dt{static forRoot(){return{ngModule:dt,providers:[it]}}}},im1V:function(t,e,n){var a=n("Q7RW"),r=n("KNDS");t.exports=function(t){return null!=t&&r(t.length)&&!a(t)}},insk:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("oxzT");n("20UP");class r{constructor(t,e,n){this.sanitizer=t,this.settingsService=e,this.i18n=n,this.grafanaExist=!1,this.mode="&kiosk",this.loading=!0,this.styles={},this.dashboardExist=!0,this.icons=a.a,this.DEFAULT_TIME="from=now-1h&to=now",this.grafanaTimes=[{name:this.i18n("Last 5 minutes"),value:"from=now-5m&to=now"},{name:this.i18n("Last 15 minutes"),value:"from=now-15m&to=now"},{name:this.i18n("Last 30 minutes"),value:"from=now-30m&to=now"},{name:this.i18n("Last 1 hour (Default)"),value:"from=now-1h&to=now"},{name:this.i18n("Last 3 hours"),value:"from=now-3h&to=now"},{name:this.i18n("Last 6 hours"),value:"from=now-6h&to=now"},{name:this.i18n("Last 12 hours"),value:"from=now-12h&to=now"},{name:this.i18n("Last 24 hours"),value:"from=now-24h&to=now"},{name:this.i18n("Yesterday"),value:"from=now-1d%2Fd&to=now-1d%2Fd"},{name:this.i18n("Today so far"),value:"from=now%2Fd&to=now"},{name:this.i18n("Day before yesterday"),value:"from=now-2d%2Fd&to=now-2d%2Fd"},{name:this.i18n("Last 2 days"),value:"from=now-2d&to=now"},{name:this.i18n("This day last week"),value:"from=now-7d%2Fd&to=now-7d%2Fd"},{name:this.i18n("Previous week"),value:"from=now-1w%2Fw&to=now-1w%2Fw"},{name:this.i18n("This week so far"),value:"from=now%2Fw&to=now"},{name:this.i18n("Last 7 days"),value:"from=now-7d&to=now"},{name:this.i18n("Previous month"),value:"from=now-1M%2FM&to=now-1M%2FM"},{name:this.i18n("This month so far"),value:"from=now%2FM&to=now"},{name:this.i18n("Last 30 days"),value:"from=now-30d&to=now"},{name:this.i18n("Last 90 days"),value:"from=now-90d&to=now"},{name:this.i18n("Last 6 months"),value:"from=now-6M&to=now"},{name:this.i18n("Last 1 year"),value:"from=now-1y&to=now"},{name:this.i18n("Previous year"),value:"from=now-1y%2Fy&to=now-1y%2Fy"},{name:this.i18n("This year so far"),value:"from=now%2Fy&to=now"},{name:this.i18n("Last 2 years"),value:"from=now-2y&to=now"},{name:this.i18n("Last 5 years"),value:"from=now-5y&to=now"}]}ngOnInit(){this.time=this.DEFAULT_TIME,this.styles={one:"grafana_one",two:"grafana_two",three:"grafana_three",four:"grafana_four"},this.settingsService.ifSettingConfigured("api/grafana/url",t=>{this.grafanaExist=!0,this.loading=!1,this.baseUrl=t+"/d/",this.getFrame()}),this.panelStyle=this.styles[this.grafanaStyle]}getFrame(){this.settingsService.validateGrafanaDashboardUrl(this.uid).subscribe(t=>this.dashboardExist=200===t),this.url=this.baseUrl+this.uid+"/"+this.grafanaPath+"&refresh=2s"+this.mode+"&"+this.time,this.grafanaSrc=this.sanitizer.bypassSecurityTrustResourceUrl(this.url)}onTimepickerChange(){this.grafanaExist&&this.getFrame()}reset(){this.time=this.DEFAULT_TIME,this.grafanaExist&&this.getFrame()}ngOnChanges(){this.grafanaExist&&this.getFrame()}}},ioe2:function(t,e,n){var a=n("xAZD");t.exports=function(t,e){return a(e,(function(e){return t[e]}))}},iqWW:function(t,e,n){"use strict";var a=n("ZUd8").charAt;t.exports=function(t,e,n){return e+(n?a(t,e).length:1)}},isl5:function(t,e,n){var a=n("Wa4q");t.exports=a["__core-js_shared__"]},iutN:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("8Y7J"),r=n("FE24"),i=n("GS7A"),s=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function u(t){return a["ɵvid"](2,[(t()(),a["ɵeld"](0,0,null,null,1,"div",[],[[2,"dropup",null],[2,"dropdown",null],[2,"show",null],[2,"open",null]],null,null,null,null)),a["ɵncd"](null,0)],null,(function(t,e){var n=e.component;t(e,0,0,"up"===n.direction,"down"===n.direction,n.isOpen,n.isOpen)}))}function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-dropdown-container",[["style","display:block;position: absolute;"]],null,null,null,u,s)),a["ɵdid"](1,180224,null,0,r.b,[r.f,a.ChangeDetectorRef,a.Renderer2,a.ElementRef,i.b],null,null)],null,null)}var l=a["ɵccf"]("bs-dropdown-container",r.b,o,{},{},["*"])},j09V:function(t,e,n){(function(t){var a=n("Wa4q"),r=e&&!e.nodeType&&e,i=r&&"object"==typeof t&&t&&!t.nodeType&&t,s=i&&i.exports===r?a.Buffer:void 0,u=s?s.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,a=u?u(n):new t.constructor(n);return t.copy(a),a}}).call(this,n("YuTi")(t))},j8L6:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("25BL"),i=n("uIqm"),s=n("DqMs"),u=n("/NlG"),o=n("GiVz"),l=n("o4+5"),d=n("aXbf"),c=n("SVse");n("b5OY"),n("pxLl"),n.d(e,"a",(function(){return f})),n.d(e,"b",(function(){return b}));var f=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function h(t){return a["ɵvid"](0,[(t()(),a["ɵted"](0,null,[" "," "," "])),a["ɵppd"](1,1)],null,(function(t,e){var n=a["ɵunv"](e,0,0,t(e,1,0,a["ɵnov"](e.parent.parent,0),e.context.row.value));t(e,0,0,n,e.context.row.unit)}))}function g(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(t,e,n){var a=!0;return"fetchData"===e&&(a=!1!==t.component.getCounters(n)&&a),a}),r.b,r.a)),a["ɵdid"](1,2867200,null,0,i.a,[a.NgZone,a.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoSave:[3,"autoSave"]},{fetchData:"fetchData"}),(t()(),a["ɵand"](0,[[1,2],["valueTpl",2]],null,0,null,h))],(function(t,e){var n=e.component;t(e,1,0,n.counters,n.columns,"flex",!1)}),null)}function p(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,s.b,s.a)),a["ɵdid"](1,114688,null,0,u.a,[o.a],{type:[0,"type"]},null),(t()(),a["ɵted"](-1,0,["Performance counters not available"]))],(function(t,e){t(e,1,0,"warning")}),null)}function b(t){return a["ɵvid"](0,[a["ɵpid"](0,l.a,[d.a]),a["ɵqud"](671088640,1,{valueTpl:0}),(t()(),a["ɵand"](16777216,null,null,1,null,g)),a["ɵdid"](3,16384,null,0,c.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),a["ɵand"](0,[["warning",2]],null,0,null,p))],(function(t,e){t(e,3,0,e.component.counters,a["ɵnov"](e,4))}),null)}},"jKX/":function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));class a{constructor(t=[]){["read","create","update","delete"].forEach(e=>this[e]=t.includes(e))}}class r{constructor(t){this.hosts=new a(t.hosts),this.configOpt=new a(t["config-opt"]),this.pool=new a(t.pool),this.osd=new a(t.osd),this.monitor=new a(t.monitor),this.rbdImage=new a(t["rbd-image"]),this.iscsi=new a(t.iscsi),this.rbdMirroring=new a(t["rbd-mirroring"]),this.rgw=new a(t.rgw),this.cephfs=new a(t.cephfs),this.manager=new a(t.manager),this.log=new a(t.log),this.user=new a(t.user),this.grafana=new a(t.grafana),this.prometheus=new a(t.prometheus),this.nfs=new a(t["nfs-ganesha"])}}},jNLg:function(t,e,n){var a=n("hmSm"),r=n("QpVZ"),i=/^\s+|\s+$/g,s=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,o=/^0o[0-7]+$/i,l=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(r(t))return NaN;if(a(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=a(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(i,"");var n=u.test(t);return n||o.test(t)?l(t.slice(2),n?2:8):s.test(t)?NaN:+t}},jUeY:function(t,e,n){!function(t){"use strict";t.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(t,e){return t?"string"==typeof e&&/D/.test(e.substring(0,e.indexOf("MMMM")))?this._monthsGenitiveEl[t.month()]:this._monthsNominativeEl[t.month()]:this._monthsNominativeEl},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(t,e,n){return t>11?n?"μμ":"ΜΜ":n?"πμ":"ΠΜ"},isPM:function(t){return"μ"===(t+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(t,e){var n,a=this._calendarEl[t],r=e&&e.hours();return((n=a)instanceof Function||"[object Function]"===Object.prototype.toString.call(n))&&(a=a.apply(e)),a.replace("{}",r%12==1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",ss:"%d δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},dayOfMonthOrdinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}})}(n("wd/R"))},jV1L:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Component)({selector:"tree-node-expander",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <span\n        *ngIf="node.hasChildren"\n        [class.toggle-children-wrapper-expanded]="node.isExpanded"\n        [class.toggle-children-wrapper-collapsed]="node.isCollapsed"\n        class="toggle-children-wrapper"\n        (click)="node.mouseAction(\'expanderClick\', $event)"\n      >\n        <span class="toggle-children"></span>\n      </span>\n      <span *ngIf="!node.hasChildren" class="toggle-children-placeholder">\n      </span>\n    </ng-container>\n  '})],t)}()},jVDg:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e,n){this.poolName=t,this.namespace=e,this.imageName=n}static fromString(t){const e=t.split("/");return new this(e[0],e.length>=3?e[1]:null,e.length>=3?e[2]:e[1])}getNameSpace(){return this.namespace?this.namespace+"/":""}toString(){return`${this.poolName}/${this.getNameSpace()}${this.imageName}`}toStringEncoded(){return encodeURIComponent(`${this.poolName}/${this.getNameSpace()}${this.imageName}`)}}},jVdC:function(t,e,n){!function(t){"use strict";var e="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),n="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");function a(t){return t%10<5&&t%10>1&&~~(t/10)%10!=1}function r(t,e,n){var r=t+" ";switch(n){case"ss":return r+(a(t)?"sekundy":"sekund");case"m":return e?"minuta":"minutę";case"mm":return r+(a(t)?"minuty":"minut");case"h":return e?"godzina":"godzinę";case"hh":return r+(a(t)?"godziny":"godzin");case"MM":return r+(a(t)?"miesiące":"miesięcy");case"yy":return r+(a(t)?"lata":"lat")}}t.defineLocale("pl",{months:function(t,a){return t?""===a?"("+n[t.month()]+"|"+e[t.month()]+")":/D MMMM/.test(a)?n[t.month()]:e[t.month()]:e},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:function(){switch(this.day()){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:r,m:r,mm:r,h:r,hh:r,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:r,y:"rok",yy:r},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},jZKg:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("HDdC"),r=n("quSY");function i(t,e){return new a.a(n=>{const a=new r.a;let i=0;return a.add(e.schedule((function(){i!==t.length?(n.next(t[i++]),n.closed||a.add(this.schedule())):n.complete()}))),a})}},jfSC:function(t,e,n){!function(t){"use strict";var e={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},n={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"};t.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/قبل از ظهر|بعد از ظهر/,isPM:function(t){return/بعد از ظهر/.test(t)},meridiem:function(t,e,n){return t<12?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چند ثانیه",ss:"ثانیه d%",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(t){return t.replace(/[۰-۹]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},dayOfMonthOrdinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}})}(n("wd/R"))},jnO4:function(t,e,n){!function(t){"use strict";var e={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},n={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},a=function(t){return 0===t?0:1===t?1:2===t?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},r={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},i=function(t){return function(e,n,i,s){var u=a(e),o=r[t][a(e)];return 2===u&&(o=o[n?0:1]),o.replace(/%d/i,e)}},s=["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"];t.defineLocale("ar",{months:s,monthsShort:s,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(t){return"م"===t},meridiem:function(t,e,n){return t<12?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:i("s"),ss:i("s"),m:i("m"),mm:i("m"),h:i("h"),hh:i("h"),d:i("d"),dd:i("d"),M:i("M"),MM:i("M"),y:i("y"),yy:i("y")},preparse:function(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,(function(t){return n[t]})).replace(/،/g,",")},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]})).replace(/,/g,"،")},week:{dow:6,doy:12}})}(n("wd/R"))},jqoL:function(t,e,n){var a=n("+NyF"),r=n("RvDp");t.exports=function(t,e){return null!=t&&r(t,e,a)}},jqst:function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="id-ID">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Pengalih navigasi</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Dasbor</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Klaster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hos</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitor</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Layanan</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Konfigurasi</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>peta CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Modul Ceph Manajer</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Log</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Blok</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Image</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Pencerminan</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Sistemfile</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Gerbang Objek</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Pengguna</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Buket</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Pilih bahasa</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Memuat data panel...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Pemilih Waktu Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Reset Pengaturan</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Kembali</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Gagal memuat data.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>dipilih</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>ditemukan</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>total</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nama</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Deskripsi</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Deskripsi lengkap</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Bawaan</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Daemon bawaan</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Nilai</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Simpan</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Penampil peta CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Memuat...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nama hos</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Isian ini tidak boleh kosong.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Ya, saya yakin.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Batal</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Tutup</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Daftar Hos</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Performa Keseluruhan</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>Entri tidak ditemukan</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Log Klaster</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Log Audit</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Memuat konfigurasi...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>Konfigurasi tidak dapat dimuat.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Edit modul Ceph Manajer</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>Nilai yang dimasukkan bukan UUID yang valid, cth: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>Nilai yang dimasukkan harus alamat IP yang valid.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>Nilai yang dimasukkan harus berupa angka.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>Nilai yang dimasukkan harus berupa angka atau desimal.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Perbarui</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Status</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID Klaster</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>monmap diubah</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>monmap epoch</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>kuorum con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>kuorum mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>con yang dibutuhkan</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>mon yang dibutuhkan</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>Memenuhi Kuorum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Tidak dalam Kuorum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Tambah</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Fitur</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Flag OSD Klaster</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Kirim</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Tingkat lanjut...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Prioritas pemulihan OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Prioritas</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Ubah nilai prioritas</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Isian ini harus diisi!</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>Nilai harus antara 0 dan 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Ubah bobot</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Dalam } }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {dalam } }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Daftar OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Nilai</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Edit</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Hapus</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Kesehatan</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Statistik </target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Klien</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Semua klien dapat mengakses</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Alamat</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Wajib diisi</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Harus mengandung satu atau lebih nilai yang dipisahkan koma</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Contoh:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Tipe Akses</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Squash</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Tambah klien</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- Klaster tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Pilih klaster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Tambah daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Backend Penyimpanan</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- Tidak ada pool data tersedia --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Pilih backend penyimpanan --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Pengguna Gerbang Objek</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- Pengguna tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Pilih pengguna gerbang objek --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID Pengguna CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- Klien tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Pilih klien cephx --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nama CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Label Keamanan</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Aktifkan label keamanan</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>CephFS Path</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>Lintasan atau path harus dimulai dengan \'/\' dan diikuti dengan kata</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Direktori baru akan dibuat</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Path</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>Path hanya boleh berupa \'/\' atau kata</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Buket baru akan dibuat</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protokol NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Tag NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Klien mungkin tidak dapat mount subdirektori (cth. jika Tag = foo, klien mungkin tidak bisa mount foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Dengan menggunakan opsi Tag yang berbeda, Path yang sama akan diekspor beberapa kali.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Dengan menggunakan opsi Pseudo yang berbeda, Path yang sama akan diekspor beberapa kali.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- Tipe akses tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Pilih tipe akses --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- Squash tidak tersedia --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Pilih jenis squashing id pengguna yang akan dilakukan --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protokol Transport</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>Selamat datang di Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>Nama pengguna harus diisi</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>Kata sandi harus diisi</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Masuk</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Maaf, pengguna tidak terdaftar di Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Terlarang</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Maaf, Anda tidak dizinkan melihat hal yang Anda inginkan.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Konfigurasi RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Menghapus nilai konfigurasi lokal. Nilai konfigurasi induk akan diturun dan digunakan.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>Nilai minimum adalah 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Daftar pool</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>Nama hanya boleh terdiri dari alfanumerik, tanda hubung, dan garis bawah.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>Nama profil erasure code sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Plugin</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Pecahan data (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Harus sama dengan atau lebih dari 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Pecahan Coding (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Harus sama dengan atau lebih dari 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Penduga daya tahan (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Lokalitas (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Domain kegagalan Crush</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Lokalitas Crush</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Tidak ada</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Teknik</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Ukuran paket</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Crush root</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Kelas perangkat Crush</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>apa saja</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Direktori</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nama...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>Nama pool Ceph yang dipilih sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Jenis pool</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Pilih jenis pool --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Grup penempatan</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Dibutuhkan setidaknya satu grup penempatan!</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>Klaster Anda tidak dapat menangani PG sebanyak ini. Mohon hitung ulang jumlah PG yang dibutuhkan.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Bantuan penghitungan</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Jumlah replikasi</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Flag</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>EC Overwrites</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Aplikasi</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Profil erasure code</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- Tidak ada profil erasure code --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Pilih profil erasure code --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Aturan CRUSH</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Pilih aturan crush --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Aturan crush</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Crush steps</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Kompresi</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Mode</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritma</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- Tidak ada algoritma pengompresian erasure --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Ukuran blob minimum</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>cth. 128KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>Nilai harus lebih besar dari 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Ukuran maksimum blob</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>cth. 512KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>Nilai harus lebih besar dari ukuran minimum blob</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Rasio</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Rasio kompresi</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>Nilai harus antara 0.0 dan 1.0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>cth. 10GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Detail</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Detail Performa</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Detil Cache Bertingkat</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Pindahkan image ke tempat sampah</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>Proteksi berakhir pada</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>TIDAK DIPROTEKSI</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Format tanggal salah. Mohon gunakan "TTTT-BB-HH JJ:mm:dd".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>Proteksi telah kedaluarsa. Mohon pilih tanggal masa mendatang atau kosongkan.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Pindahkan Image</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Ikhtisar</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Target</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Otentikasi Discovery</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Pengguna</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Nama pengguna harus terdiri dari 8 hingga 64 karakter dan\nhanya boleh mengandung huruf, \'.\', \'@\', \'-\', \'_\' atau \':\'.</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Kata sandi</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Pengguna Bersama</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Kata sandi bersama</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Informasi tersedia:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>iSCSI Target tidak tersedia</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Pool</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Pool Data</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Dibuat</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Ukuran</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objek</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Ukuran objek</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Disiapkan</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/A</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Total disiapkan</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unit setrip</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Jumlah setrip</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Induk</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Awalan nama blok</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Urutan</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Snapshot</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Image</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Pengaturan ini akan membatalkan nilai global</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Ini adalah nilai global. Tidak ada nilai yang diset untuk image ini.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>\'/\' dan \'@\' tidak diperbolehkan.</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- Tidak ada pool rbd tersedia --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Pilih pool --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Gunakan pool data terdedikasi</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Pool data</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Pool terdedikasi yang menyimpan data-objek dari RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Anda harus menaikkan ukuran.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Tingkat lanjut</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Setrip</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unit setrip</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Pilih ukuran setrip --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Isian ini harus diisi karena jumlah setrip telah ditentukan!</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>Unit setrip lebih besar dari ukuran objek.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Jumlah setrip</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Isian wajib diisi karena unit setrip didefinisikan!</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>Jumlah setrip harus lebih besar dari 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Anda akan mengembalikan semula</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Kosongkan Tempah Sampah</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Semua</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Pool:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nama Pool...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Pulihkan Image</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Untuk memulihkan</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>ketik nama baru image dan pilih</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nama Baru</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Kedaluwarsa pada</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Diproteksi hingga</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topologi iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Mengganti parameter ini dari nilai bawaan biasanya tidak diperlukan.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Pengaturan</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Backstore</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Konfirmasi</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Pengaturan Lanjut</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>Target IQN</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>Pola IQN salah.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Contoh: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Informasi lainnya</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Pengaturan lanjutan target ini telah dimodifikasi.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portal</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Tambahkan portal</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Pengaturan Image ini telah dimodifikasi.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Tambahkan image</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Otentikasi ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Inisiator</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Inisiator</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>Klien IQN</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>Inisiator IQN harus unik.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Nama pengguna harus terdiri atas 8 hingga 64 karakter dan\nhanya boleh mengandung huruf, \'.\', \'@\', \'-\', \'_\' atau \':\'.</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>Inisiator termasuk ke dalam grup. Image akan dikonfigurasi di dalam grup.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>Tidak ada yang ditambahkan.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Tambahkan inisiator</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Grup</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Grup</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Tambahkan grup</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Tempat sampah</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Masalah</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Menyinkronkan</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Siap</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Edit mode pencerminan pool</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Klaster mitra harus dihapus sebelum menonaktfikan pencerminan.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Edit} other {Tambah} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nama Klaster</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>Nama klaster tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>CephX ID</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>CephX ID...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>CephX ID tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Alamat Monitor</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Alamat dengan pemisah-koma...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>Alamat monitor tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>CephX Key</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Base64-encoded key...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>Kunci CephX harus base64 encoded.</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Penghitung kinerja tidak tersedia</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Daftar Daemon</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Penghitung Performa</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Memuat data buket...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>Id</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>Nilai tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>Nama yang dipilih sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Pemilik</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Pilih pengguna --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Diaktifkan</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Jenis indeks</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Aturan penempatan</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Penanda</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Penanda maksimum</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Versi</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Versi Master</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Modifikasi waktu</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Zona grup</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Kuota Buket</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Ukuran maksimum</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Tak terbatas</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Objek maksimum</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nama pengguna</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Pilih nama pengguna --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Kunci otomatis-dibuat</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Kunci akses</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Kunci rahasia</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nama lengkap</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Alamat email</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Dihentikan</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Sistem</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Buket maksimum</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Subpengguna</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Kemampuan</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Kuota pengguna</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Tampilkan</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Kunci</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Tipe</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Pilih tipe --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Izin</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Pilih izin --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Subpengguna</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>ID subpengguna sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>baca, tulis</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>penuh</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Kunci Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Sandi otomatis-dibuat</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Memuat data pengguna...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>Data pengguna tidak dapat dimuat.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>ID pengguna yang dipilih sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Ini bukan alamat email yang valid.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>Alamat email yang dipilih sudah digunakan.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Maks. buket</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Dimatikan</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Ubahsuai</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Kunci S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>Tidak ada sub-pengguna.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>Kunci tidak ditemukan.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>Kemampuan tidak ada.</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Ukuran tak terbatas</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Ukuran maks.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Objek tak terbatas</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Objek maks.</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>Nilai yang dimasukkan harus &gt;= 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Deskripsi...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Izin</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Peran</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Konfirmasi kata sandi</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Konfirmasi kata sandi tidak sesuai dengan kata sandi.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>Email</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Email tidak valid.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Anda akan menghapus izin "pengguna baca / perbarui" dari diri Anda sendiri.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Jika melanjutkan, Anda tidak akan lagi dapat menambahkan atau menghapus peran dari pengguna manapun.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>Anda yakin ingin melanjutkan?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Bantuan</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Dokumentasi </target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Tentang</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Pengaturan Dasbor</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Manajemen Pengguna</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Pengguna masuk</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Keluar</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atribut (peta OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Metadata tidak tersedia</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadata</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Penghitung kinerja</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Tulis</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Baca</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histogram</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Nilai saat ini</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Min</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Maks</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Sumber</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Level</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Boleh diperbarui saat dijalankan (bisa diedit)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Tag</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Nilai Enum</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Lihat juga</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Status Klaster</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Manajer Daemon</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Gerbang Objek</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Server Metadata</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Gateway iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS klien</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Throughput Pengguna</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Baca/Tulis Klien</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Throughput Pemulihan</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Scrub</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Kinerja</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Kapasitas mentah</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>PG per OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Status PG</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Kapasitas</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Peringkat</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Terkini</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Otentikasi penemuan telah diperbarui</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>Tidak ada portal yang tersedia.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>Tidak ada image yang tersedia.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>Tidak ada image yang tersedia. Mohon pastikan Anda telah menambahkan image ke target.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>Tidak ada inisiator tersedia. Mohon pastikan Anda telah menambahkan inisiator ke target.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Target</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Keadaan</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Baca Bytes</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Tulis Bytes</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Ops Baca</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Ops Tulis</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O Sejak</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instance</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Isu</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Kemajuan</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Mode Edit</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Tambahkan Mitra</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Edit Mitra</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Hapus Mitra</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Pemimpin</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target># Lokal</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target># Jauh</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>mitra pencerminan</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Kunci</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Perataan mendalam</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>Lapisan</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Kunci eksklusif</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Peta objek (butuh kunci-eksklusif)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>Penjurnalan (membutuhkan kunci-eksklusif)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>TIDAK DIPROTEKSI</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Kembalikan snapshot RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Kembalikan</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Snapshot RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Dihapus pada</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>id</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>tipe</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>keadaan</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>versi</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Hos</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>induk</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemon siaga</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Peringkat</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Aktivitas</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inode</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Penggunaan</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Diperbarui</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>Nilai dapat diperbarui saat runtime.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Daemon/klien tidak dapat mengambil nilai dari\nbasis data konfigurasi monitor. Kami tidak mengizinkan mengubah ini dari \'ceph config\nset ...\'. Pilihan ini harus dikonfigurasi melalui ceph.conf atau CLI.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>Pilihan hanya dapat bekerja selama daemon dimulai.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>Pilihan hanya berpengaruh pada pembuatan klaster.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>Pilihan hanya berpengaruh pada pembuatan daemon.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Layanan</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Nilai saat ini</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Dapat diedit</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Aktifkan</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Nonaktifkan</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Menghubungkan kembali, mohon tunggu...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Alamat Publik</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Buka Sesi</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>Tidak boleh Masuk</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>OSD yang telah ditandai keluar tidak akan ditandai masuk saat mereka menyala</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>Tidak boleh Keluar</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>OSD tidak akan otomatis ditandai keluar setelah interval dikonfigurasi</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>Tidak Nyala</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>OSD tidak diizinkan menyala</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>Tidak Mati</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Laporan kegagalan OSD sedang diabaikan sehingga monitor tidak akan menandai OSD mati</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Jeda</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Jeda baca dan tulis</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>Nonaktifkan Scrub</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>Scrubbing dinonaktifkan</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>Nonaktifkan Deep Scrub</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>Deep Scrubing dinonaktifkan</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>Tidak ada Penambalan</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>Penambalan PG dihentikan</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>Tidak ada Pemulihan</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>Pemulihan PG dihentikan</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Urutan Bitwise</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Gunakan urutan bitwise</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Buang Snapdirs</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>OSD memiliki snapset yang dikonversi</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Pulihkan yang telah dihapus</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Penghapusan dilakukan saat pemulihan bukan saat bermitra</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Batas Maks Log PG</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Taruh batas maks pada panjang log pg</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Flag OSD diperbarui</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>keluar</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>masuk</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>gugur</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Tandai</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD hilang</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>ditandai hilang</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Buang</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>dibuang</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>hancurkan</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>dihancurkan</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>hapus</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>PG</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Bita baca</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Bita tulis</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Ops baca</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Ops tulis</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Maks Penambalan</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Maks Pemulihan Aktif</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Maks Menjalankan Pemulihan Tunggal</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Jeda Pemulihan</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Tugas</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Keparahan</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Dimulai</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Terpakai</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Tersedia</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Bersih</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>Bekerja</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Peringatan</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Tidak diketahui</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>nyala</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>tidak ada filesistem</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>aktif</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>siaga</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/a</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon aktif</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>kuorum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>Layanan NFS Ganesha belum dikonfigurasi.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transport</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Pengguna CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Filesistem CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(diturunkan dari konfig global)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>diturunkan dari konfig global</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Pilih jenis squashing id pengguna yang akan dilakukan --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>Tidak ada daemon tersedia.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Mode Cache</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Min Waktu Usir</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Min Waktu Buang</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Target Maks Bita</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Target Maks Objek</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>Tidak ada aplikasi ditambahkan</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Batas aplikasi tercapai</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Sebuah pool hanya dapat memiliki empat definisi aplikasi.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Karakter diperbolehkan \'_a-zA-Z0-9\'</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>Panjang maksimum 128 karakter</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Saring atau tambah aplikasi</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Tambah aplikasi</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>profil erasure code</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Ukuran Replikasi</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Perubahan Terakhir</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Profil Erasure Code</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Aturan Crush</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>buket</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>buket</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>pengguna</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>pengguna</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Cakupan</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Baca</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Buat</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Peran Sistem</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Perbarui pengguna</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Lanjutkan</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>Anda dikeluarkan otomatis karena peran Anda telah berubah.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Tiap objek dipecah dalam pecahan-data, masing-masing disimpan pada OSD yang berbeda.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Hitung pecahan coding untuk tiap objek dan simpan pada OSD yang berbeda.\nJumlah pecahan data juga menjadi jumlah OSD yang diperbolehkan mati tanpa kehilangan data.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>Plugin jerasure merupakan plugin paling umum dan fleksibel,\nserta merupakan plugin bawaan Ceph untuk pool erasure code.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>Teknik yang lebih fleksibel yaitu reed_sol_van : cukup mengeset k\ndan m. Teknik cauchy_good bisa lebih cepat, namun Anda harus memilih ukuran paket\ndengan seksama. Semua reed_sol_r6_op, liberation, blaum_roth, liber8tion setara dengan RAID6\ndalam hal mereka hanya bisa diatur dengan m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>Penyandian dilakukan setiap saat pada ukuran bita paket.\nSulit untuk menentukan ukuran paket yang tepat.\nSilakan cek dokumentasi jerasure untuk informasi lebih mendalam.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Pada plugin jerasure, saat objek dengan erasure code disimpan pada\nbanyak OSD, pemulihan dari OSD yang hilang membutuhkan akses dari OSD lainnya.\nContoh, saat jerasure dikonfigurasi dengan k=8 dan m=4, saat satu OSD mati, maka pemulihan akan membutuhkan pembacaan dari tujuh OSD lainnya.\n\nPlugin lrc erasure code membuat pecahan paritas lokal agar dapat memulihkan \ndengan OSD yang lebih sedikit. Contoh, jika lrc dikonfigurasi dengan k=8, m=4, dan l=4, maka lrc akan\nmembuat pecahan paritas tambahan tiap empat OSD. Saat satu OSD mati, maka pemulihan dapat dilakukan hanya dengan 4 OSD, alih-alih 7 OSD.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Kelompokkan pecahan data dan coding ke dalam ukuran lokalitas. Controh\nuntuk k=4 dan m=2, saat lokalitas=3 dua grup dari tiga akan dibuat. Setiap set akan\ndipulihkan tanpa membaca pecahan dari set lainnya.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>Tipe buket crush setiap set pecahan yang didefinisikan oleh l  \nakan disimpan. Contoh, jika diset pada rak, tiap grup pecahan l akan \nditempatkan pada rak berbeda. Ini akan digunakan pada aturan step CRUSH yaitu \nmemilih tiap rak. Jika tidak diset, tidak akan ada pengelompokkan.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>Plugin isa menghimpun perpustakaan ISA. Hanya dapat berjalan pada prosesor Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>Plugin ISA memiliki dua jenis Reed Solomon.\nJika reed_sol_van diset, maka menjadi Vandermonde, jika cauchy diset, maka menjadi Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>Plugin shec mengenkapsulasi banyak pustaka SHEC.\nHal ini agar ceph dapat dipulihkan dengan lebih efisien dari kode Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>Jumlah potongan paritas yang masing-masing mencakup setiap potongan data \ndalam rentang perhitungannya. Nilai ini digunakan untuk perkiraan daya tahan. Contoh, jika c=2, \n2 OSD dapat mati tanpa kehilangan data.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>Nama buket crush digunakan sebagai langkah pertama dari aturan CRUSH.\nContoh diambil langkah bawaan.</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Memastikan tidak ada pecahan data berada pada buket dengan domain kegagalan\nyang sama. Contoh, saat domain gagal adalah hos, maka tidak ada pecahan data yang akan disimpan \npada hos yang sama. Aturan CRUSH seperti step chooseleaf hos akan digunakan untuk hal tersebut.</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Batasi penempatan ke perangkat dengan kelas tertentu\n(cth. ssd atau hdd), menggunakan nama kelas perangkat crush pada peta CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Set nama direktori empat plugin erasure code akan dimuat.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Izinkan semua operasi</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Izinkan hanya untuk operasi yang tidak mengubah server</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>Tidak diizinkan untuk operasi baca dan tulis, namun izinkan operasi lainnya</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>Tidak diizinkan untuk baca, tulis, atau operasi lainnya yang mengubah atribut berkas atau konten direktori</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>Tidak diizinkan untuk semua hal</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Pilih prioritas --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Rendah</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Tinggi</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Informasi</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>5 menit terakhir</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>15 menit terakhir</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>30 menit terakhir</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>1 Jam Terakhir (Bawaan)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>3 jam terakhir</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>6 jam terakhir</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>12 jam terakhir</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>24 jam terakhir</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Kemarin</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Hari ini</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Sejauh hari ini</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Kemarin dulu</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>2 hari terakhir</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Hari ini minggu lalu</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>Minggu lalu</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Minggu ini</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Sejauh minggu ini</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>7 hari terakhir</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>Bulan lalu</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Bulan ini</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Sejauh bulan ini</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>30 hari terakhir</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>90 hari terakhir</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>6 bulan terakhir</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>1 tahun terakhir</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>Tahun lalu</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Tahun ini</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Sejauh tahun ini</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>2 tahun terakhir</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>5 tahun terakhir</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>Tidak ada yang dipilih.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Batalkan memilih untuk memilih ulang</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Batas pemilihan tercapai</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Tanda penyaringan</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Tambahkan lencana</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>Tidak ada yang tersedia.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Klon</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Salin</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Deep Scrub</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Hancurkan</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Ratakan</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Tandai Gugur</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Tandai Masuk</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Tandai Hilang</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Tandai Keluar</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Proteksi</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Ubah nama</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Pulihkan</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Pindahkan ke Tempat Sampah</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Tidak diproteksi</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Dihapus</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Diklon</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Disalin</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Diratakan</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Dibuang</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Dipulihkan</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Dikembalikan</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Ya</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>Tidak</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Kualitas Layanan atau QoS</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Limit BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>Limit IO bytes per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Limit IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>Limit operasi IO per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Limit Baca BPS </target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>Limit byte baca per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Limit IOPS Baca</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>Limit operasi baca per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Limit Tulis BPS</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>Limit tulis byte per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Limit IOPS Tulis</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>Limit operasi tulis per detik yang diinginkan.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Letupan BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst dari IO byte.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Letupan IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst operasi IO.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Letupan Baca BPS</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst dari baca byte.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Letupan IOPS Baca</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst operasi baca.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Letupan BPS Tulis</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst dari tulis byte.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Letupan IOPS Tulis</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>Limit yang diinginkan untuk letupan atau burst dari operasi baca.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Mengeksekusi</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>eksekusi</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Dieksekusi</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>tugas tak diketahui</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Membuat</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>buat</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Memperbarui</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>perbarui</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Menghapus</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Pengklonan</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>klon</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Menyalin</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>salin</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Meratakan</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>ratakan</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Mengembalikan</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>kembalikan</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Memindahkan</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>pindah</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>dipindahkan</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>Tidak dapat menemukan image.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Memulihkan</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>pulihkan</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Membuang</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>buang</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>semua pool</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>Gagal menonaktifkan pencerminan karena sedang bermitra.</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},jtHE:function(t,e,n){"use strict";n.d(e,"a",(function(){return l}));var a=n("XNiG"),r=n("qgXg"),i=n("quSY"),s=n("pxpQ"),u=n("9ppp"),o=n("Ylt2");class l extends a.a{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift(),super.next(t)}nextTimeWindow(t){this._events.push(new d(this._getNow(),t)),this._trimBufferThenGetEvents(),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),a=this.scheduler,r=n.length;let l;if(this.closed)throw new u.a;if(this.isStopped||this.hasError?l=i.a.EMPTY:(this.observers.push(t),l=new o.a(this,t)),a&&t.add(t=new s.a(t,a)),e)for(let i=0;i<r&&!t.closed;i++)t.next(n[i]);else for(let i=0;i<r&&!t.closed;i++)t.next(n[i].value);return this.hasError?t.error(this.thrownError):this.isStopped&&t.complete(),l}_getNow(){return(this.scheduler||r.a).now()}_trimBufferThenGetEvents(){const t=this._getNow(),e=this._bufferSize,n=this._windowTime,a=this._events,r=a.length;let i=0;for(;i<r&&!(t-a[i].time<n);)i++;return r>e&&(i=Math.max(i,r-e)),i>0&&a.splice(0,i),a}}class d{constructor(t,e){this.time=t,this.value=e}}},jy8Y:function(t,e){t.exports=function(t){return this.__data__.has(t)}},"k9+3":function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},kA6G:function(t,e){t.exports=function(){return[]}},kEOa:function(t,e,n){!function(t){"use strict";var e={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},n={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"};t.defineLocale("bn",{months:"জানুয়ারী_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপ্র_মে_জুন_জুল_আগ_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),weekdaysMin:"রবি_সোম_মঙ্গ_বুধ_বৃহঃ_শুক্র_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm সময়",LLLL:"dddd, D MMMM YYYY, A h:mm সময়"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",ss:"%d সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(t){return t.replace(/[১২৩৪৫৬৭৮৯০]/g,(function(t){return n[t]}))},postformat:function(t){return t.replace(/\d/g,(function(t){return e[t]}))},meridiemParse:/রাত|সকাল|দুপুর|বিকাল|রাত/,meridiemHour:function(t,e){return 12===t&&(t=0),"রাত"===e&&t>=4||"দুপুর"===e&&t<5||"বিকাল"===e?t+12:t},meridiem:function(t,e,n){return t<4?"রাত":t<10?"সকাল":t<17?"দুপুর":t<20?"বিকাল":"রাত"},week:{dow:0,doy:6}})}(n("wd/R"))},kGkW:function(t,e,n){var a=n("rk81"),r=n("uy3s");t.exports=function(t,e,n,i){var s=n.length,u=s,o=!i;if(null==t)return!u;for(t=Object(t);s--;){var l=n[s];if(o&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++s<u;){var d=(l=n[s])[0],c=t[d],f=l[1];if(o&&l[2]){if(void 0===c&&!(d in t))return!1}else{var h=new a;if(i)var g=i(c,f,d,t,e,h);if(!(void 0===g?r(f,c,3,i,h):g))return!1}}return!0}},kJI8:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},kJWO:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")()},kOOl:function(t,e){var n=0,a=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+a).toString(36)}},kOpN:function(t,e,n){!function(t){"use strict";t.defineLocale("zh-tw",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(t,e){return 12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"中午"===e?t>=11?t:t+12:"下午"===e||"晚上"===e?t+12:void 0},meridiem:function(t,e,n){var a=100*t+e;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天] LT",nextDay:"[明天] LT",nextWeek:"[下]dddd LT",lastDay:"[昨天] LT",lastWeek:"[上]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|週)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";case"M":return t+"月";case"w":case"W":return t+"週";default:return t}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",ss:"%d 秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"}})}(n("wd/R"))},kRJp:function(t,e,n){var a=n("g6v/"),r=n("m/L8"),i=n("XGwC");t.exports=a?function(t,e,n){return r.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},kXVT:function(t,e,n){var a=n("hmSm");t.exports=function(t){return t==t&&!a(t)}},kmMV:function(t,e,n){"use strict";var a,r,i=n("rW0t"),s=n("n3/R"),u=RegExp.prototype.exec,o=String.prototype.replace,l=u,d=(r=/b*/g,u.call(a=/a/,"a"),u.call(r,"a"),0!==a.lastIndex||0!==r.lastIndex),c=s.UNSUPPORTED_Y||s.BROKEN_CARET,f=void 0!==/()??/.exec("")[1];(d||f||c)&&(l=function(t){var e,n,a,r,s=this,l=c&&s.sticky,h=i.call(s),g=s.source,p=0,b=t;return l&&(-1===(h=h.replace("y","")).indexOf("g")&&(h+="g"),b=String(t).slice(s.lastIndex),s.lastIndex>0&&(!s.multiline||s.multiline&&"\n"!==t[s.lastIndex-1])&&(g="(?: "+g+")",b=" "+b,p++),n=new RegExp("^(?:"+g+")",h)),f&&(n=new RegExp("^"+g+"$(?!\\s)",h)),d&&(e=s.lastIndex),a=u.call(l?n:s,b),l?a?(a.input=a.input.slice(p),a[0]=a[0].slice(p),a.index=s.lastIndex,s.lastIndex+=a[0].length):s.lastIndex=0:d&&a&&(s.lastIndex=s.global?a.index+a[0].length:e),f&&a&&a.length>1&&o.call(a[0],n,(function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(a[r]=void 0)})),a}),t.exports=l},"kn/O":function(t,e,n){"use strict";n.d(e,"a",(function(){return f}));var a=n("HDdC"),r=n("mtw6"),i=n("G1I9"),s=n("QTAa"),u=n("9nlD"),o=n("mSOc"),l=n("VXsX"),d=n("ufoC"),c=n("8Y7J");let f=(()=>{class t{constructor(t,e,n,a){this.notificationService=t,this.summaryService=e,this.taskMessageService=n,this.taskManagerService=a}wrapTaskAroundCall({task:t,call:e}){return new a.a(n=>{e.subscribe(e=>{202===e.status?this._handleExecutingTasks(t):(this.summaryService.refresh(),t.success=!0,this.notificationService.notifyTask(t))},e=>{t.success=!1,t.exception=e.error,n.error(e)},()=>{n.complete()})})}_handleExecutingTasks(t){const e=new i.b(r.a.info,this.taskMessageService.getRunningTitle(t));e.isFinishedTask=!0,this.notificationService.show(e);const n=new s.a(t.name,t.metadata);this.summaryService.addRunningTask(n),this.taskManagerService.subscribe(n.name,n.metadata,t=>{this.notificationService.notifyTask(t)})}}return t.ngInjectableDef=c["ɵɵdefineInjectable"]({factory:function(){return new t(c["ɵɵinject"](u.a),c["ɵɵinject"](o.a),c["ɵɵinject"](d.a),c["ɵɵinject"](l.a))},token:t,providedIn:"root"}),t})()},kna9:function(t,e,n){var a=n("MOZO"),r=n("gBXJ"),i=n("BVkS"),s=n("Wv1A");t.exports=function(t,e){return e=a(e,t),null==(t=i(t,e))||delete t[s(r(e))]}},ktBm:function(t,e,n){var a=n("JEWA");t.exports=function(t,e){for(var n=t.length;n--;)if(a(t[n][0],e))return n;return-1}},kvvV:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("t/zF");class r extends a.a{}},l2xC:function(t,e){t.exports=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}},l5ep:function(t,e,n){!function(t){"use strict";t.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",ss:"%d eiliad",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},dayOfMonthOrdinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(t){var e="";return t>20?e=40===t||50===t||60===t||80===t||100===t?"fed":"ain":t>0&&(e=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"][t]),t+e},week:{dow:1,doy:4}})}(n("wd/R"))},l7GE:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");class r extends a.a{notifyNext(t,e,n,a,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}},l9nr:function(t,e,n){var a=n("QjCD"),r=n("NtIB"),i=n("aHcz"),s=n("0GLT"),u=n("MaPG");t.exports=function(t){return"function"==typeof t?t:null==t?i:"object"==typeof t?s(t)?r(t[0],t[1]):a(t):u(t)}},lEOU:function(t,e,n){var a=n("CNUl");t.exports=function(t,e){var n=e?a(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},lJxs:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new i(t,e))}}class i{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new s(t,this.project,this.thisArg))}}class s extends a.a{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}},lMq5:function(t,e,n){var a=n("0Dky"),r=/#|\.prototype\./,i=function(t,e){var n=u[s(t)];return n==l||n!=o&&("function"==typeof e?a(e):!!e)},s=i.normalize=function(t){return String(t).replace(r,".").toLowerCase()},u=i.data={},o=i.NATIVE="N",l=i.POLYFILL="P";t.exports=i},"lOp/":function(t,e,n){"use strict";var a=n("PqYM"),r=n("pxpQ"),i=n("eIep"),s=n("jtHE"),u=n("D0XW"),o=n("8Y7J");class l{constructor(t){this.zone=t,this.scheduler=u.a}now(){return this.scheduler.now()}}let d=(()=>{class t extends l{constructor(t){super(t)}schedule(...t){return this.zone.runOutsideAngular(()=>this.scheduler.schedule.apply(this.scheduler,t))}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](o.NgZone))},token:t,providedIn:"root"}),t})(),c=(()=>{class t extends l{constructor(t){super(t)}schedule(...t){return this.zone.run(()=>this.scheduler.schedule.apply(this.scheduler,t))}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](o.NgZone))},token:t,providedIn:"root"}),t})(),f=(()=>{class t{constructor(t,e){this.leave=t,this.enter=e}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](d),o["ɵɵinject"](c))},token:t,providedIn:"root"}),t})();n.d(e,"a",(function(){return h}));let h=(()=>{class t{constructor(t){this.ngZone=t,this.DEFAULT_REFRESH_INTERVAL=5e3,this.DEFAULT_DUE_TIME=0}get(t,e=this.DEFAULT_REFRESH_INTERVAL,n=this.DEFAULT_DUE_TIME){return Object(a.a)(n,e,this.ngZone.leave).pipe(Object(r.b)(this.ngZone.enter),Object(i.a)(t),function(t,e,n){let a;return a=t&&"object"==typeof t?t:{bufferSize:t,windowTime:void 0,refCount:!1,scheduler:void 0},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:a}){let r,i,u=0,o=!1,l=!1;return function(d){u++,r&&!o||(o=!1,r=new s.a(t,e,a),i=d.subscribe({next(t){r.next(t)},error(t){o=!0,r.error(t)},complete(){l=!0,i=void 0,r.complete()}}));const c=r.subscribe(this);this.add(()=>{u--,c.unsubscribe(),i&&!l&&n&&0===u&&(i.unsubscribe(),i=void 0,r=void 0)})}}(a))}({refCount:!0,bufferSize:1}))}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](f))},token:t,providedIn:"root"}),t})()},lPUB:function(t,e,n){var a=n("Ytn0");t.exports=function(t){return a(this,t).get(t)}},lXzo:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a,r;return"m"===n?e?"минута":"минуту":t+" "+(a=+t,r={ss:e?"секунда_секунды_секунд":"секунду_секунды_секунд",mm:e?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}var n=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[йя]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i];t.defineLocale("ru",{months:{format:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_"),standalone:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_")},monthsShort:{format:"янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.".split("_"),standalone:"янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.".split("_")},weekdays:{standalone:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),format:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/},weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:n,longMonthsParse:n,shortMonthsParse:n,monthsRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsShortRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsStrictRegex:/^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,monthsShortStrictRegex:/^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., H:mm",LLLL:"dddd, D MMMM YYYY г., H:mm"},calendar:{sameDay:"[Сегодня, в] LT",nextDay:"[Завтра, в] LT",lastDay:"[Вчера, в] LT",nextWeek:function(t){if(t.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В следующее] dddd, [в] LT";case 1:case 2:case 4:return"[В следующий] dddd, [в] LT";case 3:case 5:case 6:return"[В следующую] dddd, [в] LT"}},lastWeek:function(t){if(t.week()===this.week())return 2===this.day()?"[Во] dddd, [в] LT":"[В] dddd, [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd, [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd, [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd, [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",ss:e,m:e,mm:e,h:"час",hh:e,d:"день",dd:e,M:"месяц",MM:e,y:"год",yy:e},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(t){return/^(дня|вечера)$/.test(t)},meridiem:function(t,e,n){return t<4?"ночи":t<12?"утра":t<17?"дня":"вечера"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(t,e){switch(e){case"M":case"d":case"DDD":return t+"-й";case"D":return t+"-го";case"w":case"W":return t+"-я";default:return t}},week:{dow:1,doy:4}})}(n("wd/R"))},lYtQ:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){switch(n){case"s":return e?"хэдхэн секунд":"хэдхэн секундын";case"ss":return t+(e?" секунд":" секундын");case"m":case"mm":return t+(e?" минут":" минутын");case"h":case"hh":return t+(e?" цаг":" цагийн");case"d":case"dd":return t+(e?" өдөр":" өдрийн");case"M":case"MM":return t+(e?" сар":" сарын");case"y":case"yy":return t+(e?" жил":" жилийн");default:return t}}t.defineLocale("mn",{months:"Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар".split("_"),monthsShort:"1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар".split("_"),monthsParseExact:!0,weekdays:"Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба".split("_"),weekdaysShort:"Ням_Дав_Мяг_Лха_Пүр_Баа_Бям".split("_"),weekdaysMin:"Ня_Да_Мя_Лх_Пү_Ба_Бя".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY оны MMMMын D",LLL:"YYYY оны MMMMын D HH:mm",LLLL:"dddd, YYYY оны MMMMын D HH:mm"},meridiemParse:/ҮӨ|ҮХ/i,isPM:function(t){return"ҮХ"===t},meridiem:function(t,e,n){return t<12?"ҮӨ":"ҮХ"},calendar:{sameDay:"[Өнөөдөр] LT",nextDay:"[Маргааш] LT",nextWeek:"[Ирэх] dddd LT",lastDay:"[Өчигдөр] LT",lastWeek:"[Өнгөрсөн] dddd LT",sameElse:"L"},relativeTime:{future:"%s дараа",past:"%s өмнө",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2} өдөр/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+" өдөр";default:return t}}})}(n("wd/R"))},lgnt:function(t,e,n){!function(t){"use strict";var e={0:"-чү",1:"-чи",2:"-чи",3:"-чү",4:"-чү",5:"-чи",6:"-чы",7:"-чи",8:"-чи",9:"-чу",10:"-чу",20:"-чы",30:"-чу",40:"-чы",50:"-чү",60:"-чы",70:"-чи",80:"-чи",90:"-чу",100:"-чү"};t.defineLocale("ky",{months:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),monthsShort:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),weekdays:"Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби".split("_"),weekdaysShort:"Жек_Дүй_Шей_Шар_Бей_Жум_Ише".split("_"),weekdaysMin:"Жк_Дй_Шй_Шр_Бй_Жм_Иш".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгүн саат] LT",nextDay:"[Эртең саат] LT",nextWeek:"dddd [саат] LT",lastDay:"[Кечээ саат] LT",lastWeek:"[Өткөн аптанын] dddd [күнү] [саат] LT",sameElse:"L"},relativeTime:{future:"%s ичинде",past:"%s мурун",s:"бирнече секунд",ss:"%d секунд",m:"бир мүнөт",mm:"%d мүнөт",h:"бир саат",hh:"%d саат",d:"бир күн",dd:"%d күн",M:"бир ай",MM:"%d ай",y:"бир жыл",yy:"%d жыл"},dayOfMonthOrdinalParse:/\d{1,2}-(чи|чы|чү|чу)/,ordinal:function(t){return t+(e[t]||e[t%10]||e[t>=100?100:null])},week:{dow:1,doy:7}})}(n("wd/R"))},lsW8:function(t,e,n){(function(t){var a;(function(){var r="Expected a function",i="__lodash_placeholder__",s=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],u="[object Arguments]",o="[object Array]",l="[object Boolean]",d="[object Date]",c="[object Error]",f="[object Function]",h="[object GeneratorFunction]",g="[object Map]",p="[object Number]",b="[object Object]",m="[object RegExp]",y="[object Set]",v="[object String]",x="[object Symbol]",_="[object WeakMap]",T="[object ArrayBuffer]",w="[object DataView]",O="[object Float32Array]",S="[object Float64Array]",I="[object Int8Array]",N="[object Int16Array]",C="[object Int32Array]",R="[object Uint8Array]",A="[object Uint16Array]",k="[object Uint32Array]",E=/\b__p \+= '';/g,L=/\b(__p \+=) '' \+/g,D=/(__e\(.*?\)|\b__t\)) \+\n'';/g,P=/&(?:amp|lt|gt|quot|#39);/g,M=/[&<>"']/g,q=RegExp(P.source),j=RegExp(M.source),F=/<%-([\s\S]+?)%>/g,V=/<%([\s\S]+?)%>/g,G=/<%=([\s\S]+?)%>/g,B=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,z=/^\w*$/,Y=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,H=/[\\^$.*+?()[\]{}|]/g,U=RegExp(H.source),W=/^\s+|\s+$/g,K=/^\s+/,$=/\s+$/,Z=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,J=/\{\n\/\* \[wrapped with (.+)\] \*/,Q=/,? & /,X=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,tt=/\\(\\)?/g,et=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,nt=/\w*$/,at=/^[-+]0x[0-9a-f]+$/i,rt=/^0b[01]+$/i,it=/^\[object .+?Constructor\]$/,st=/^0o[0-7]+$/i,ut=/^(?:0|[1-9]\d*)$/,ot=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,lt=/($^)/,dt=/['\n\r\u2028\u2029\\]/g,ct="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ft="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ht="["+ft+"]",gt="["+ct+"]",pt="\\d+",bt="[a-z\\xdf-\\xf6\\xf8-\\xff]",mt="[^\\ud800-\\udfff"+ft+pt+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",yt="\\ud83c[\\udffb-\\udfff]",vt="[^\\ud800-\\udfff]",xt="(?:\\ud83c[\\udde6-\\uddff]){2}",_t="[\\ud800-\\udbff][\\udc00-\\udfff]",Tt="[A-Z\\xc0-\\xd6\\xd8-\\xde]",wt="(?:"+bt+"|"+mt+")",Ot="(?:"+Tt+"|"+mt+")",St="(?:"+gt+"|"+yt+")?",It="[\\ufe0e\\ufe0f]?"+St+"(?:\\u200d(?:"+[vt,xt,_t].join("|")+")[\\ufe0e\\ufe0f]?"+St+")*",Nt="(?:"+["[\\u2700-\\u27bf]",xt,_t].join("|")+")"+It,Ct="(?:"+[vt+gt+"?",gt,xt,_t,"[\\ud800-\\udfff]"].join("|")+")",Rt=RegExp("['’]","g"),At=RegExp(gt,"g"),kt=RegExp(yt+"(?="+yt+")|"+Ct+It,"g"),Et=RegExp([Tt+"?"+bt+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ht,Tt,"$"].join("|")+")",Ot+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ht,Tt+wt,"$"].join("|")+")",Tt+"?"+wt+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Tt+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",pt,Nt].join("|"),"g"),Lt=RegExp("[\\u200d\\ud800-\\udfff"+ct+"\\ufe0e\\ufe0f]"),Dt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Pt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Mt=-1,qt={};qt[O]=qt[S]=qt[I]=qt[N]=qt[C]=qt[R]=qt["[object Uint8ClampedArray]"]=qt[A]=qt[k]=!0,qt[u]=qt[o]=qt[T]=qt[l]=qt[w]=qt[d]=qt[c]=qt[f]=qt[g]=qt[p]=qt[b]=qt[m]=qt[y]=qt[v]=qt[_]=!1;var jt={};jt[u]=jt[o]=jt[T]=jt[w]=jt[l]=jt[d]=jt[O]=jt[S]=jt[I]=jt[N]=jt[C]=jt[g]=jt[p]=jt[b]=jt[m]=jt[y]=jt[v]=jt[x]=jt[R]=jt["[object Uint8ClampedArray]"]=jt[A]=jt[k]=!0,jt[c]=jt[f]=jt[_]=!1;var Ft={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Vt=parseFloat,Gt=parseInt,Bt="object"==typeof global&&global&&global.Object===Object&&global,zt="object"==typeof self&&self&&self.Object===Object&&self,Yt=Bt||zt||Function("return this")(),Ht=e&&!e.nodeType&&e,Ut=Ht&&"object"==typeof t&&t&&!t.nodeType&&t,Wt=Ut&&Ut.exports===Ht,Kt=Wt&&Bt.process,$t=function(){try{return Ut&&Ut.require&&Ut.require("util").types||Kt&&Kt.binding&&Kt.binding("util")}catch(t){}}(),Zt=$t&&$t.isArrayBuffer,Jt=$t&&$t.isDate,Qt=$t&&$t.isMap,Xt=$t&&$t.isRegExp,te=$t&&$t.isSet,ee=$t&&$t.isTypedArray;function ne(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function ae(t,e,n,a){for(var r=-1,i=null==t?0:t.length;++r<i;){var s=t[r];e(a,s,n(s),t)}return a}function re(t,e){for(var n=-1,a=null==t?0:t.length;++n<a&&!1!==e(t[n],n,t););return t}function ie(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}function se(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(!e(t[n],n,t))return!1;return!0}function ue(t,e){for(var n=-1,a=null==t?0:t.length,r=0,i=[];++n<a;){var s=t[n];e(s,n,t)&&(i[r++]=s)}return i}function oe(t,e){return!(null==t||!t.length)&&ye(t,e,0)>-1}function le(t,e,n){for(var a=-1,r=null==t?0:t.length;++a<r;)if(n(e,t[a]))return!0;return!1}function de(t,e){for(var n=-1,a=null==t?0:t.length,r=Array(a);++n<a;)r[n]=e(t[n],n,t);return r}function ce(t,e){for(var n=-1,a=e.length,r=t.length;++n<a;)t[r+n]=e[n];return t}function fe(t,e,n,a){var r=-1,i=null==t?0:t.length;for(a&&i&&(n=t[++r]);++r<i;)n=e(n,t[r],r,t);return n}function he(t,e,n,a){var r=null==t?0:t.length;for(a&&r&&(n=t[--r]);r--;)n=e(n,t[r],r,t);return n}function ge(t,e){for(var n=-1,a=null==t?0:t.length;++n<a;)if(e(t[n],n,t))return!0;return!1}var pe=Te("length");function be(t,e,n){var a;return n(t,(function(t,n,r){if(e(t,n,r))return a=n,!1})),a}function me(t,e,n,a){for(var r=t.length,i=n+(a?1:-1);a?i--:++i<r;)if(e(t[i],i,t))return i;return-1}function ye(t,e,n){return e==e?function(t,e,n){for(var a=n-1,r=t.length;++a<r;)if(t[a]===e)return a;return-1}(t,e,n):me(t,xe,n)}function ve(t,e,n,a){for(var r=n-1,i=t.length;++r<i;)if(a(t[r],e))return r;return-1}function xe(t){return t!=t}function _e(t,e){var n=null==t?0:t.length;return n?Se(t,e)/n:NaN}function Te(t){return function(e){return null==e?void 0:e[t]}}function we(t){return function(e){return null==t?void 0:t[e]}}function Oe(t,e,n,a,r){return r(t,(function(t,r,i){n=a?(a=!1,t):e(n,t,r,i)})),n}function Se(t,e){for(var n,a=-1,r=t.length;++a<r;){var i=e(t[a]);void 0!==i&&(n=void 0===n?i:n+i)}return n}function Ie(t,e){for(var n=-1,a=Array(t);++n<t;)a[n]=e(n);return a}function Ne(t){return function(e){return t(e)}}function Ce(t,e){return de(e,(function(e){return t[e]}))}function Re(t,e){return t.has(e)}function Ae(t,e){for(var n=-1,a=t.length;++n<a&&ye(e,t[n],0)>-1;);return n}function ke(t,e){for(var n=t.length;n--&&ye(e,t[n],0)>-1;);return n}function Ee(t,e){for(var n=t.length,a=0;n--;)t[n]===e&&++a;return a}var Le=we({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),De=we({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function Pe(t){return"\\"+Ft[t]}function Me(t){return Lt.test(t)}function qe(t){var e=-1,n=Array(t.size);return t.forEach((function(t,a){n[++e]=[a,t]})),n}function je(t,e){return function(n){return t(e(n))}}function Fe(t,e){for(var n=-1,a=t.length,r=0,s=[];++n<a;){var u=t[n];u!==e&&u!==i||(t[n]=i,s[r++]=n)}return s}function Ve(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}function Ge(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=[t,t]})),n}function Be(t){return Me(t)?function(t){for(var e=kt.lastIndex=0;kt.test(t);)++e;return e}(t):pe(t)}function ze(t){return Me(t)?function(t){return t.match(kt)||[]}(t):function(t){return t.split("")}(t)}var Ye=we({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),He=function t(e){var n,a=(e=null==e?Yt:He.defaults(Yt.Object(),e,He.pick(Yt,Pt))).Array,ct=e.Date,ft=e.Error,ht=e.Function,gt=e.Math,pt=e.Object,bt=e.RegExp,mt=e.String,yt=e.TypeError,vt=a.prototype,xt=pt.prototype,_t=e["__core-js_shared__"],Tt=ht.prototype.toString,wt=xt.hasOwnProperty,Ot=0,St=(n=/[^.]+$/.exec(_t&&_t.keys&&_t.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",It=xt.toString,Nt=Tt.call(pt),Ct=Yt._,kt=bt("^"+Tt.call(wt).replace(H,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Lt=Wt?e.Buffer:void 0,Ft=e.Symbol,Bt=e.Uint8Array,zt=Lt?Lt.allocUnsafe:void 0,Ht=je(pt.getPrototypeOf,pt),Ut=pt.create,Kt=xt.propertyIsEnumerable,$t=vt.splice,pe=Ft?Ft.isConcatSpreadable:void 0,we=Ft?Ft.iterator:void 0,Ue=Ft?Ft.toStringTag:void 0,We=function(){try{var t=Jr(pt,"defineProperty");return t({},"",{}),t}catch(e){}}(),Ke=e.clearTimeout!==Yt.clearTimeout&&e.clearTimeout,$e=ct&&ct.now!==Yt.Date.now&&ct.now,Ze=e.setTimeout!==Yt.setTimeout&&e.setTimeout,Je=gt.ceil,Qe=gt.floor,Xe=pt.getOwnPropertySymbols,tn=Lt?Lt.isBuffer:void 0,en=e.isFinite,nn=vt.join,an=je(pt.keys,pt),rn=gt.max,sn=gt.min,un=ct.now,on=e.parseInt,ln=gt.random,dn=vt.reverse,cn=Jr(e,"DataView"),fn=Jr(e,"Map"),hn=Jr(e,"Promise"),gn=Jr(e,"Set"),pn=Jr(e,"WeakMap"),bn=Jr(pt,"create"),mn=pn&&new pn,yn={},vn=Ii(cn),xn=Ii(fn),_n=Ii(hn),Tn=Ii(gn),wn=Ii(pn),On=Ft?Ft.prototype:void 0,Sn=On?On.valueOf:void 0,In=On?On.toString:void 0;function Nn(t){if(zs(t)&&!Es(t)&&!(t instanceof kn)){if(t instanceof An)return t;if(wt.call(t,"__wrapped__"))return Ni(t)}return new An(t)}var Cn=function(){function t(){}return function(e){if(!Bs(e))return{};if(Ut)return Ut(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();function Rn(){}function An(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=void 0}function kn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function En(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Ln(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Dn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function Pn(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new Dn;++e<n;)this.add(t[e])}function Mn(t){var e=this.__data__=new Ln(t);this.size=e.size}function qn(t,e){var n=Es(t),a=!n&&ks(t),r=!n&&!a&&Ms(t),i=!n&&!a&&!r&&Js(t),s=n||a||r||i,u=s?Ie(t.length,mt):[],o=u.length;for(var l in t)!e&&!wt.call(t,l)||s&&("length"==l||r&&("offset"==l||"parent"==l)||i&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||ri(l,o))||u.push(l);return u}function jn(t){var e=t.length;return e?t[Da(0,e-1)]:void 0}function Fn(t,e){return _i(pr(t),Kn(e,0,t.length))}function Vn(t){return _i(pr(t))}function Gn(t,e,n){(void 0!==n&&!Cs(t[e],n)||void 0===n&&!(e in t))&&Un(t,e,n)}function Bn(t,e,n){var a=t[e];wt.call(t,e)&&Cs(a,n)&&(void 0!==n||e in t)||Un(t,e,n)}function zn(t,e){for(var n=t.length;n--;)if(Cs(t[n][0],e))return n;return-1}function Yn(t,e,n,a){return Xn(t,(function(t,r,i){e(a,t,n(t),i)})),a}function Hn(t,e){return t&&br(e,vu(e),t)}function Un(t,e,n){"__proto__"==e&&We?We(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function Wn(t,e){for(var n=-1,r=e.length,i=a(r),s=null==t;++n<r;)i[n]=s?void 0:gu(t,e[n]);return i}function Kn(t,e,n){return t==t&&(void 0!==n&&(t=t<=n?t:n),void 0!==e&&(t=t>=e?t:e)),t}function $n(t,e,n,a,r,i){var s,o=1&e,c=2&e,_=4&e;if(n&&(s=r?n(t,a,r,i):n(t)),void 0!==s)return s;if(!Bs(t))return t;var E=Es(t);if(E){if(s=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&wt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!o)return pr(t,s)}else{var L=ti(t),D=L==f||L==h;if(Ms(t))return lr(t,o);if(L==b||L==u||D&&!r){if(s=c||D?{}:ni(t),!o)return c?function(t,e){return br(t,Xr(t),e)}(t,function(t,e){return t&&br(e,xu(e),t)}(s,t)):function(t,e){return br(t,Qr(t),e)}(t,Hn(s,t))}else{if(!jt[L])return r?t:{};s=function(t,e,n){var a=t.constructor;switch(e){case T:return dr(t);case l:case d:return new a(+t);case w:return function(t,e){var n=e?dr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case O:case S:case I:case N:case C:case R:case"[object Uint8ClampedArray]":case A:case k:return cr(t,n);case g:return new a;case p:case v:return new a(t);case m:return function(t){var e=new t.constructor(t.source,nt.exec(t));return e.lastIndex=t.lastIndex,e}(t);case y:return new a;case x:return Sn?pt(Sn.call(t)):{}}}(t,L,o)}}i||(i=new Mn);var P=i.get(t);if(P)return P;i.set(t,s),Ks(t)?t.forEach((function(a){s.add($n(a,e,n,a,t,i))})):Ys(t)&&t.forEach((function(a,r){s.set(r,$n(a,e,n,r,t,i))}));var M=E?void 0:(_?c?Yr:zr:c?xu:vu)(t);return re(M||t,(function(a,r){M&&(a=t[r=a]),Bn(s,r,$n(a,e,n,r,t,i))})),s}function Zn(t,e,n){var a=n.length;if(null==t)return!a;for(t=pt(t);a--;){var r=n[a],i=t[r];if(void 0===i&&!(r in t)||!(0,e[r])(i))return!1}return!0}function Jn(t,e,n){if("function"!=typeof t)throw new yt(r);return mi((function(){t.apply(void 0,n)}),e)}function Qn(t,e,n,a){var r=-1,i=oe,s=!0,u=t.length,o=[],l=e.length;if(!u)return o;n&&(e=de(e,Ne(n))),a?(i=le,s=!1):e.length>=200&&(i=Re,s=!1,e=new Pn(e));t:for(;++r<u;){var d=t[r],c=null==n?d:n(d);if(d=a||0!==d?d:0,s&&c==c){for(var f=l;f--;)if(e[f]===c)continue t;o.push(d)}else i(e,c,a)||o.push(d)}return o}Nn.templateSettings={escape:F,evaluate:V,interpolate:G,variable:"",imports:{_:Nn}},(Nn.prototype=Rn.prototype).constructor=Nn,(An.prototype=Cn(Rn.prototype)).constructor=An,(kn.prototype=Cn(Rn.prototype)).constructor=kn,En.prototype.clear=function(){this.__data__=bn?bn(null):{},this.size=0},En.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},En.prototype.get=function(t){var e=this.__data__;if(bn){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return wt.call(e,t)?e[t]:void 0},En.prototype.has=function(t){var e=this.__data__;return bn?void 0!==e[t]:wt.call(e,t)},En.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=bn&&void 0===e?"__lodash_hash_undefined__":e,this},Ln.prototype.clear=function(){this.__data__=[],this.size=0},Ln.prototype.delete=function(t){var e=this.__data__,n=zn(e,t);return!(n<0||(n==e.length-1?e.pop():$t.call(e,n,1),--this.size,0))},Ln.prototype.get=function(t){var e=this.__data__,n=zn(e,t);return n<0?void 0:e[n][1]},Ln.prototype.has=function(t){return zn(this.__data__,t)>-1},Ln.prototype.set=function(t,e){var n=this.__data__,a=zn(n,t);return a<0?(++this.size,n.push([t,e])):n[a][1]=e,this},Dn.prototype.clear=function(){this.size=0,this.__data__={hash:new En,map:new(fn||Ln),string:new En}},Dn.prototype.delete=function(t){var e=$r(this,t).delete(t);return this.size-=e?1:0,e},Dn.prototype.get=function(t){return $r(this,t).get(t)},Dn.prototype.has=function(t){return $r(this,t).has(t)},Dn.prototype.set=function(t,e){var n=$r(this,t),a=n.size;return n.set(t,e),this.size+=n.size==a?0:1,this},Pn.prototype.add=Pn.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Pn.prototype.has=function(t){return this.__data__.has(t)},Mn.prototype.clear=function(){this.__data__=new Ln,this.size=0},Mn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Mn.prototype.get=function(t){return this.__data__.get(t)},Mn.prototype.has=function(t){return this.__data__.has(t)},Mn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Ln){var a=n.__data__;if(!fn||a.length<199)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new Dn(a)}return n.set(t,e),this.size=n.size,this};var Xn=vr(ua),ta=vr(oa,!0);function ea(t,e){var n=!0;return Xn(t,(function(t,a,r){return n=!!e(t,a,r)})),n}function na(t,e,n){for(var a=-1,r=t.length;++a<r;){var i=t[a],s=e(i);if(null!=s&&(void 0===u?s==s&&!Zs(s):n(s,u)))var u=s,o=i}return o}function aa(t,e){var n=[];return Xn(t,(function(t,a,r){e(t,a,r)&&n.push(t)})),n}function ra(t,e,n,a,r){var i=-1,s=t.length;for(n||(n=ai),r||(r=[]);++i<s;){var u=t[i];e>0&&n(u)?e>1?ra(u,e-1,n,a,r):ce(r,u):a||(r[r.length]=u)}return r}var ia=xr(),sa=xr(!0);function ua(t,e){return t&&ia(t,e,vu)}function oa(t,e){return t&&sa(t,e,vu)}function la(t,e){return ue(e,(function(e){return Fs(t[e])}))}function da(t,e){for(var n=0,a=(e=ir(e,t)).length;null!=t&&n<a;)t=t[Si(e[n++])];return n&&n==a?t:void 0}function ca(t,e,n){var a=e(t);return Es(t)?a:ce(a,n(t))}function fa(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":Ue&&Ue in pt(t)?function(t){var e=wt.call(t,Ue),n=t[Ue];try{t[Ue]=void 0;var a=!0}catch(i){}var r=It.call(t);return a&&(e?t[Ue]=n:delete t[Ue]),r}(t):function(t){return It.call(t)}(t)}function ha(t,e){return t>e}function ga(t,e){return null!=t&&wt.call(t,e)}function pa(t,e){return null!=t&&e in pt(t)}function ba(t,e,n){for(var r=n?le:oe,i=t[0].length,s=t.length,u=s,o=a(s),l=1/0,d=[];u--;){var c=t[u];u&&e&&(c=de(c,Ne(e))),l=sn(c.length,l),o[u]=!n&&(e||i>=120&&c.length>=120)?new Pn(u&&c):void 0}c=t[0];var f=-1,h=o[0];t:for(;++f<i&&d.length<l;){var g=c[f],p=e?e(g):g;if(g=n||0!==g?g:0,!(h?Re(h,p):r(d,p,n))){for(u=s;--u;){var b=o[u];if(!(b?Re(b,p):r(t[u],p,n)))continue t}h&&h.push(p),d.push(g)}}return d}function ma(t,e,n){var a=null==(t=hi(t,e=ir(e,t)))?t:t[Si(ji(e))];return null==a?void 0:ne(a,t,n)}function ya(t){return zs(t)&&fa(t)==u}function va(t,e,n,a,r){return t===e||(null==t||null==e||!zs(t)&&!zs(e)?t!=t&&e!=e:function(t,e,n,a,r,i){var s=Es(t),f=Es(e),h=s?o:ti(t),_=f?o:ti(e),O=(h=h==u?b:h)==b,S=(_=_==u?b:_)==b,I=h==_;if(I&&Ms(t)){if(!Ms(e))return!1;s=!0,O=!1}if(I&&!O)return i||(i=new Mn),s||Js(t)?Gr(t,e,n,a,r,i):function(t,e,n,a,r,i,s){switch(n){case w:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case T:return!(t.byteLength!=e.byteLength||!i(new Bt(t),new Bt(e)));case l:case d:case p:return Cs(+t,+e);case c:return t.name==e.name&&t.message==e.message;case m:case v:return t==e+"";case g:var u=qe;case y:if(u||(u=Ve),t.size!=e.size&&!(1&a))return!1;var o=s.get(t);if(o)return o==e;a|=2,s.set(t,e);var f=Gr(u(t),u(e),a,r,i,s);return s.delete(t),f;case x:if(Sn)return Sn.call(t)==Sn.call(e)}return!1}(t,e,h,n,a,r,i);if(!(1&n)){var N=O&&wt.call(t,"__wrapped__"),C=S&&wt.call(e,"__wrapped__");if(N||C){var R=N?t.value():t,A=C?e.value():e;return i||(i=new Mn),r(R,A,n,a,i)}}return!!I&&(i||(i=new Mn),function(t,e,n,a,r,i){var s=1&n,u=zr(t),o=u.length;if(o!=zr(e).length&&!s)return!1;for(var l=o;l--;){var d=u[l];if(!(s?d in e:wt.call(e,d)))return!1}var c=i.get(t),f=i.get(e);if(c&&f)return c==e&&f==t;var h=!0;i.set(t,e),i.set(e,t);for(var g=s;++l<o;){var p=t[d=u[l]],b=e[d];if(a)var m=s?a(b,p,d,e,t,i):a(p,b,d,t,e,i);if(!(void 0===m?p===b||r(p,b,n,a,i):m)){h=!1;break}g||(g="constructor"==d)}if(h&&!g){var y=t.constructor,v=e.constructor;y==v||!("constructor"in t)||!("constructor"in e)||"function"==typeof y&&y instanceof y&&"function"==typeof v&&v instanceof v||(h=!1)}return i.delete(t),i.delete(e),h}(t,e,n,a,r,i))}(t,e,n,a,va,r))}function xa(t,e,n,a){var r=n.length,i=r,s=!a;if(null==t)return!i;for(t=pt(t);r--;){var u=n[r];if(s&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++r<i;){var o=(u=n[r])[0],l=t[o],d=u[1];if(s&&u[2]){if(void 0===l&&!(o in t))return!1}else{var c=new Mn;if(a)var f=a(l,d,o,t,e,c);if(!(void 0===f?va(d,l,3,a,c):f))return!1}}return!0}function _a(t){return!(!Bs(t)||(e=t,St&&St in e))&&(Fs(t)?kt:it).test(Ii(t));var e}function Ta(t){return"function"==typeof t?t:null==t?Hu:"object"==typeof t?Es(t)?Na(t[0],t[1]):Ia(t):to(t)}function wa(t){if(!li(t))return an(t);var e=[];for(var n in pt(t))wt.call(t,n)&&"constructor"!=n&&e.push(n);return e}function Oa(t,e){return t<e}function Sa(t,e){var n=-1,r=Ds(t)?a(t.length):[];return Xn(t,(function(t,a,i){r[++n]=e(t,a,i)})),r}function Ia(t){var e=Zr(t);return 1==e.length&&e[0][2]?ci(e[0][0],e[0][1]):function(n){return n===t||xa(n,t,e)}}function Na(t,e){return si(t)&&di(e)?ci(Si(t),e):function(n){var a=gu(n,t);return void 0===a&&a===e?pu(n,t):va(e,a,3)}}function Ca(t,e,n,a,r){t!==e&&ia(e,(function(i,s){if(r||(r=new Mn),Bs(i))!function(t,e,n,a,r,i,s){var u=pi(t,n),o=pi(e,n),l=s.get(o);if(l)Gn(t,n,l);else{var d=i?i(u,o,n+"",t,e,s):void 0,c=void 0===d;if(c){var f=Es(o),h=!f&&Ms(o),g=!f&&!h&&Js(o);d=o,f||h||g?Es(u)?d=u:Ps(u)?d=pr(u):h?(c=!1,d=lr(o,!0)):g?(c=!1,d=cr(o,!0)):d=[]:Us(o)||ks(o)?(d=u,ks(u)?d=iu(u):Bs(u)&&!Fs(u)||(d=ni(o))):c=!1}c&&(s.set(o,d),r(d,o,a,i,s),s.delete(o)),Gn(t,n,d)}}(t,e,s,n,Ca,a,r);else{var u=a?a(pi(t,s),i,s+"",t,e,r):void 0;void 0===u&&(u=i),Gn(t,s,u)}}),xu)}function Ra(t,e){var n=t.length;if(n)return ri(e+=e<0?n:0,n)?t[e]:void 0}function Aa(t,e,n){e=e.length?de(e,(function(t){return Es(t)?function(e){return da(e,1===t.length?t[0]:t)}:t})):[Hu];var a=-1;return e=de(e,Ne(Kr())),function(t,e){var a=t.length;for(t.sort((function(t,e){return function(t,e,n){for(var a=-1,r=t.criteria,i=e.criteria,s=r.length,u=n.length;++a<s;){var o=fr(r[a],i[a]);if(o)return a>=u?o:o*("desc"==n[a]?-1:1)}return t.index-e.index}(t,e,n)}));a--;)t[a]=t[a].value;return t}(Sa(t,(function(t,n,r){return{criteria:de(e,(function(e){return e(t)})),index:++a,value:t}})))}function ka(t,e,n){for(var a=-1,r=e.length,i={};++a<r;){var s=e[a],u=da(t,s);n(u,s)&&Fa(i,ir(s,t),u)}return i}function Ea(t,e,n,a){var r=a?ve:ye,i=-1,s=e.length,u=t;for(t===e&&(e=pr(e)),n&&(u=de(t,Ne(n)));++i<s;)for(var o=0,l=e[i],d=n?n(l):l;(o=r(u,d,o,a))>-1;)u!==t&&$t.call(u,o,1),$t.call(t,o,1);return t}function La(t,e){for(var n=t?e.length:0,a=n-1;n--;){var r=e[n];if(n==a||r!==i){var i=r;ri(r)?$t.call(t,r,1):Ja(t,r)}}return t}function Da(t,e){return t+Qe(ln()*(e-t+1))}function Pa(t,e){var n="";if(!t||e<1||e>9007199254740991)return n;do{e%2&&(n+=t),(e=Qe(e/2))&&(t+=t)}while(e);return n}function Ma(t,e){return yi(fi(t,e,Hu),t+"")}function qa(t){return jn(Cu(t))}function ja(t,e){var n=Cu(t);return _i(n,Kn(e,0,n.length))}function Fa(t,e,n,a){if(!Bs(t))return t;for(var r=-1,i=(e=ir(e,t)).length,s=i-1,u=t;null!=u&&++r<i;){var o=Si(e[r]),l=n;if("__proto__"===o||"constructor"===o||"prototype"===o)return t;if(r!=s){var d=u[o];void 0===(l=a?a(d,o,u):void 0)&&(l=Bs(d)?d:ri(e[r+1])?[]:{})}Bn(u,o,l),u=u[o]}return t}var Va=mn?function(t,e){return mn.set(t,e),t}:Hu,Ga=We?function(t,e){return We(t,"toString",{configurable:!0,enumerable:!1,value:Bu(e),writable:!0})}:Hu;function Ba(t){return _i(Cu(t))}function za(t,e,n){var r=-1,i=t.length;e<0&&(e=-e>i?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var s=a(i);++r<i;)s[r]=t[r+e];return s}function Ya(t,e){var n;return Xn(t,(function(t,a,r){return!(n=e(t,a,r))})),!!n}function Ha(t,e,n){var a=0,r=null==t?a:t.length;if("number"==typeof e&&e==e&&r<=2147483647){for(;a<r;){var i=a+r>>>1,s=t[i];null!==s&&!Zs(s)&&(n?s<=e:s<e)?a=i+1:r=i}return r}return Ua(t,e,Hu,n)}function Ua(t,e,n,a){var r=0,i=null==t?0:t.length;if(0===i)return 0;for(var s=(e=n(e))!=e,u=null===e,o=Zs(e),l=void 0===e;r<i;){var d=Qe((r+i)/2),c=n(t[d]),f=void 0!==c,h=null===c,g=c==c,p=Zs(c);if(s)var b=a||g;else b=l?g&&(a||f):u?g&&f&&(a||!h):o?g&&f&&!h&&(a||!p):!h&&!p&&(a?c<=e:c<e);b?r=d+1:i=d}return sn(i,4294967294)}function Wa(t,e){for(var n=-1,a=t.length,r=0,i=[];++n<a;){var s=t[n],u=e?e(s):s;if(!n||!Cs(u,o)){var o=u;i[r++]=0===s?0:s}}return i}function Ka(t){return"number"==typeof t?t:Zs(t)?NaN:+t}function $a(t){if("string"==typeof t)return t;if(Es(t))return de(t,$a)+"";if(Zs(t))return In?In.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Za(t,e,n){var a=-1,r=oe,i=t.length,s=!0,u=[],o=u;if(n)s=!1,r=le;else if(i>=200){var l=e?null:Pr(t);if(l)return Ve(l);s=!1,r=Re,o=new Pn}else o=e?[]:u;t:for(;++a<i;){var d=t[a],c=e?e(d):d;if(d=n||0!==d?d:0,s&&c==c){for(var f=o.length;f--;)if(o[f]===c)continue t;e&&o.push(c),u.push(d)}else r(o,c,n)||(o!==u&&o.push(c),u.push(d))}return u}function Ja(t,e){return null==(t=hi(t,e=ir(e,t)))||delete t[Si(ji(e))]}function Qa(t,e,n,a){return Fa(t,e,n(da(t,e)),a)}function Xa(t,e,n,a){for(var r=t.length,i=a?r:-1;(a?i--:++i<r)&&e(t[i],i,t););return n?za(t,a?0:i,a?i+1:r):za(t,a?i+1:0,a?r:i)}function tr(t,e){var n=t;return n instanceof kn&&(n=n.value()),fe(e,(function(t,e){return e.func.apply(e.thisArg,ce([t],e.args))}),n)}function er(t,e,n){var r=t.length;if(r<2)return r?Za(t[0]):[];for(var i=-1,s=a(r);++i<r;)for(var u=t[i],o=-1;++o<r;)o!=i&&(s[i]=Qn(s[i]||u,t[o],e,n));return Za(ra(s,1),e,n)}function nr(t,e,n){for(var a=-1,r=t.length,i=e.length,s={};++a<r;)n(s,t[a],a<i?e[a]:void 0);return s}function ar(t){return Ps(t)?t:[]}function rr(t){return"function"==typeof t?t:Hu}function ir(t,e){return Es(t)?t:si(t,e)?[t]:Oi(su(t))}var sr=Ma;function ur(t,e,n){var a=t.length;return n=void 0===n?a:n,!e&&n>=a?t:za(t,e,n)}var or=Ke||function(t){return Yt.clearTimeout(t)};function lr(t,e){if(e)return t.slice();var n=t.length,a=zt?zt(n):new t.constructor(n);return t.copy(a),a}function dr(t){var e=new t.constructor(t.byteLength);return new Bt(e).set(new Bt(t)),e}function cr(t,e){var n=e?dr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function fr(t,e){if(t!==e){var n=void 0!==t,a=null===t,r=t==t,i=Zs(t),s=void 0!==e,u=null===e,o=e==e,l=Zs(e);if(!u&&!l&&!i&&t>e||i&&s&&o&&!u&&!l||a&&s&&o||!n&&o||!r)return 1;if(!a&&!i&&!l&&t<e||l&&n&&r&&!a&&!i||u&&n&&r||!s&&r||!o)return-1}return 0}function hr(t,e,n,r){for(var i=-1,s=t.length,u=n.length,o=-1,l=e.length,d=rn(s-u,0),c=a(l+d),f=!r;++o<l;)c[o]=e[o];for(;++i<u;)(f||i<s)&&(c[n[i]]=t[i]);for(;d--;)c[o++]=t[i++];return c}function gr(t,e,n,r){for(var i=-1,s=t.length,u=-1,o=n.length,l=-1,d=e.length,c=rn(s-o,0),f=a(c+d),h=!r;++i<c;)f[i]=t[i];for(var g=i;++l<d;)f[g+l]=e[l];for(;++u<o;)(h||i<s)&&(f[g+n[u]]=t[i++]);return f}function pr(t,e){var n=-1,r=t.length;for(e||(e=a(r));++n<r;)e[n]=t[n];return e}function br(t,e,n,a){var r=!n;n||(n={});for(var i=-1,s=e.length;++i<s;){var u=e[i],o=a?a(n[u],t[u],u,n,t):void 0;void 0===o&&(o=t[u]),r?Un(n,u,o):Bn(n,u,o)}return n}function mr(t,e){return function(n,a){var r=Es(n)?ae:Yn,i=e?e():{};return r(n,t,Kr(a,2),i)}}function yr(t){return Ma((function(e,n){var a=-1,r=n.length,i=r>1?n[r-1]:void 0,s=r>2?n[2]:void 0;for(i=t.length>3&&"function"==typeof i?(r--,i):void 0,s&&ii(n[0],n[1],s)&&(i=r<3?void 0:i,r=1),e=pt(e);++a<r;){var u=n[a];u&&t(e,u,a,i)}return e}))}function vr(t,e){return function(n,a){if(null==n)return n;if(!Ds(n))return t(n,a);for(var r=n.length,i=e?r:-1,s=pt(n);(e?i--:++i<r)&&!1!==a(s[i],i,s););return n}}function xr(t){return function(e,n,a){for(var r=-1,i=pt(e),s=a(e),u=s.length;u--;){var o=s[t?u:++r];if(!1===n(i[o],o,i))break}return e}}function _r(t){return function(e){var n=Me(e=su(e))?ze(e):void 0,a=n?n[0]:e.charAt(0),r=n?ur(n,1).join(""):e.slice(1);return a[t]()+r}}function Tr(t){return function(e){return fe(Fu(ku(e).replace(Rt,"")),t,"")}}function wr(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=Cn(t.prototype),a=t.apply(n,e);return Bs(a)?a:n}}function Or(t){return function(e,n,a){var r=pt(e);if(!Ds(e)){var i=Kr(n,3);e=vu(e),n=function(t){return i(r[t],t,r)}}var s=t(e,n,a);return s>-1?r[i?e[s]:s]:void 0}}function Sr(t){return Br((function(e){var n=e.length,a=n,i=An.prototype.thru;for(t&&e.reverse();a--;){var s=e[a];if("function"!=typeof s)throw new yt(r);if(i&&!u&&"wrapper"==Ur(s))var u=new An([],!0)}for(a=u?a:n;++a<n;){var o=Ur(s=e[a]),l="wrapper"==o?Hr(s):void 0;u=l&&ui(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?u[Ur(l[0])].apply(u,l[3]):1==s.length&&ui(s)?u[o]():u.thru(s)}return function(){var t=arguments,a=t[0];if(u&&1==t.length&&Es(a))return u.plant(a).value();for(var r=0,i=n?e[r].apply(this,t):a;++r<n;)i=e[r].call(this,i);return i}}))}function Ir(t,e,n,r,i,s,u,o,l,d){var c=128&e,f=1&e,h=2&e,g=24&e,p=512&e,b=h?void 0:wr(t);return function m(){for(var y=arguments.length,v=a(y),x=y;x--;)v[x]=arguments[x];if(g)var _=Wr(m),T=Ee(v,_);if(r&&(v=hr(v,r,i,g)),s&&(v=gr(v,s,u,g)),y-=T,g&&y<d){var w=Fe(v,_);return Lr(t,e,Ir,m.placeholder,n,v,w,o,l,d-y)}var O=f?n:this,S=h?O[t]:t;return y=v.length,o?v=gi(v,o):p&&y>1&&v.reverse(),c&&l<y&&(v.length=l),this&&this!==Yt&&this instanceof m&&(S=b||wr(S)),S.apply(O,v)}}function Nr(t,e){return function(n,a){return function(t,e,n,a){return ua(t,(function(t,r,i){e(a,n(t),r,i)})),a}(n,t,e(a),{})}}function Cr(t,e){return function(n,a){var r;if(void 0===n&&void 0===a)return e;if(void 0!==n&&(r=n),void 0!==a){if(void 0===r)return a;"string"==typeof n||"string"==typeof a?(n=$a(n),a=$a(a)):(n=Ka(n),a=Ka(a)),r=t(n,a)}return r}}function Rr(t){return Br((function(e){return e=de(e,Ne(Kr())),Ma((function(n){var a=this;return t(e,(function(t){return ne(t,a,n)}))}))}))}function Ar(t,e){var n=(e=void 0===e?" ":$a(e)).length;if(n<2)return n?Pa(e,t):e;var a=Pa(e,Je(t/Be(e)));return Me(e)?ur(ze(a),0,t).join(""):a.slice(0,t)}function kr(t){return function(e,n,r){return r&&"number"!=typeof r&&ii(e,n,r)&&(n=r=void 0),e=eu(e),void 0===n?(n=e,e=0):n=eu(n),function(t,e,n,r){for(var i=-1,s=rn(Je((e-t)/(n||1)),0),u=a(s);s--;)u[r?s:++i]=t,t+=n;return u}(e,n,r=void 0===r?e<n?1:-1:eu(r),t)}}function Er(t){return function(e,n){return"string"==typeof e&&"string"==typeof n||(e=ru(e),n=ru(n)),t(e,n)}}function Lr(t,e,n,a,r,i,s,u,o,l){var d=8&e;e|=d?32:64,4&(e&=~(d?64:32))||(e&=-4);var c=[t,e,r,d?i:void 0,d?s:void 0,d?void 0:i,d?void 0:s,u,o,l],f=n.apply(void 0,c);return ui(t)&&bi(f,c),f.placeholder=a,vi(f,t,e)}function Dr(t){var e=gt[t];return function(t,n){if(t=ru(t),(n=null==n?0:sn(nu(n),292))&&en(t)){var a=(su(t)+"e").split("e");return+((a=(su(e(a[0]+"e"+(+a[1]+n)))+"e").split("e"))[0]+"e"+(+a[1]-n))}return e(t)}}var Pr=gn&&1/Ve(new gn([,-0]))[1]==1/0?function(t){return new gn(t)}:Zu;function Mr(t){return function(e){var n=ti(e);return n==g?qe(e):n==y?Ge(e):function(t,e){return de(e,(function(e){return[e,t[e]]}))}(e,t(e))}}function qr(t,e,n,s,u,o,l,d){var c=2&e;if(!c&&"function"!=typeof t)throw new yt(r);var f=s?s.length:0;if(f||(e&=-97,s=u=void 0),l=void 0===l?l:rn(nu(l),0),d=void 0===d?d:nu(d),f-=u?u.length:0,64&e){var h=s,g=u;s=u=void 0}var p=c?void 0:Hr(t),b=[t,e,n,s,u,h,g,o,l,d];if(p&&function(t,e){var n=t[1],a=e[1],r=n|a;if(!(r<131||128==a&&8==n||128==a&&256==n&&t[7].length<=e[8]||384==a&&e[7].length<=e[8]&&8==n))return t;1&a&&(t[2]=e[2],r|=1&n?0:4);var s=e[3];if(s){var u=t[3];t[3]=u?hr(u,s,e[4]):s,t[4]=u?Fe(t[3],i):e[4]}(s=e[5])&&(t[5]=(u=t[5])?gr(u,s,e[6]):s,t[6]=u?Fe(t[5],i):e[6]),(s=e[7])&&(t[7]=s),128&a&&(t[8]=null==t[8]?e[8]:sn(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=r}(b,p),t=b[0],e=b[1],n=b[2],s=b[3],u=b[4],!(d=b[9]=void 0===b[9]?c?0:t.length:rn(b[9]-f,0))&&24&e&&(e&=-25),e&&1!=e)m=8==e||16==e?function(t,e,n){var r=wr(t);return function i(){for(var s=arguments.length,u=a(s),o=s,l=Wr(i);o--;)u[o]=arguments[o];var d=s<3&&u[0]!==l&&u[s-1]!==l?[]:Fe(u,l);if((s-=d.length)<n)return Lr(t,e,Ir,i.placeholder,void 0,u,d,void 0,void 0,n-s);var c=this&&this!==Yt&&this instanceof i?r:t;return ne(c,this,u)}}(t,e,d):32!=e&&33!=e||u.length?Ir.apply(void 0,b):function(t,e,n,r){var i=1&e,s=wr(t);return function e(){for(var u=-1,o=arguments.length,l=-1,d=r.length,c=a(d+o),f=this&&this!==Yt&&this instanceof e?s:t;++l<d;)c[l]=r[l];for(;o--;)c[l++]=arguments[++u];return ne(f,i?n:this,c)}}(t,e,n,s);else var m=function(t,e,n){var a=1&e,r=wr(t);return function e(){var i=this&&this!==Yt&&this instanceof e?r:t;return i.apply(a?n:this,arguments)}}(t,e,n);return vi((p?Va:bi)(m,b),t,e)}function jr(t,e,n,a){return void 0===t||Cs(t,xt[n])&&!wt.call(a,n)?e:t}function Fr(t,e,n,a,r,i){return Bs(t)&&Bs(e)&&(i.set(e,t),Ca(t,e,void 0,Fr,i),i.delete(e)),t}function Vr(t){return Us(t)?void 0:t}function Gr(t,e,n,a,r,i){var s=1&n,u=t.length,o=e.length;if(u!=o&&!(s&&o>u))return!1;var l=i.get(t),d=i.get(e);if(l&&d)return l==e&&d==t;var c=-1,f=!0,h=2&n?new Pn:void 0;for(i.set(t,e),i.set(e,t);++c<u;){var g=t[c],p=e[c];if(a)var b=s?a(p,g,c,e,t,i):a(g,p,c,t,e,i);if(void 0!==b){if(b)continue;f=!1;break}if(h){if(!ge(e,(function(t,e){if(!Re(h,e)&&(g===t||r(g,t,n,a,i)))return h.push(e)}))){f=!1;break}}else if(g!==p&&!r(g,p,n,a,i)){f=!1;break}}return i.delete(t),i.delete(e),f}function Br(t){return yi(fi(t,void 0,Li),t+"")}function zr(t){return ca(t,vu,Qr)}function Yr(t){return ca(t,xu,Xr)}var Hr=mn?function(t){return mn.get(t)}:Zu;function Ur(t){for(var e=t.name+"",n=yn[e],a=wt.call(yn,e)?n.length:0;a--;){var r=n[a],i=r.func;if(null==i||i==t)return r.name}return e}function Wr(t){return(wt.call(Nn,"placeholder")?Nn:t).placeholder}function Kr(){var t=Nn.iteratee||Uu;return t=t===Uu?Ta:t,arguments.length?t(arguments[0],arguments[1]):t}function $r(t,e){var n,a,r=t.__data__;return("string"==(a=typeof(n=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function Zr(t){for(var e=vu(t),n=e.length;n--;){var a=e[n],r=t[a];e[n]=[a,r,di(r)]}return e}function Jr(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return _a(n)?n:void 0}var Qr=Xe?function(t){return null==t?[]:(t=pt(t),ue(Xe(t),(function(e){return Kt.call(t,e)})))}:ao,Xr=Xe?function(t){for(var e=[];t;)ce(e,Qr(t)),t=Ht(t);return e}:ao,ti=fa;function ei(t,e,n){for(var a=-1,r=(e=ir(e,t)).length,i=!1;++a<r;){var s=Si(e[a]);if(!(i=null!=t&&n(t,s)))break;t=t[s]}return i||++a!=r?i:!!(r=null==t?0:t.length)&&Gs(r)&&ri(s,r)&&(Es(t)||ks(t))}function ni(t){return"function"!=typeof t.constructor||li(t)?{}:Cn(Ht(t))}function ai(t){return Es(t)||ks(t)||!!(pe&&t&&t[pe])}function ri(t,e){var n=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==n||"symbol"!=n&&ut.test(t))&&t>-1&&t%1==0&&t<e}function ii(t,e,n){if(!Bs(n))return!1;var a=typeof e;return!!("number"==a?Ds(n)&&ri(e,n.length):"string"==a&&e in n)&&Cs(n[e],t)}function si(t,e){if(Es(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!Zs(t))||z.test(t)||!B.test(t)||null!=e&&t in pt(e)}function ui(t){var e=Ur(t),n=Nn[e];if("function"!=typeof n||!(e in kn.prototype))return!1;if(t===n)return!0;var a=Hr(n);return!!a&&t===a[0]}(cn&&ti(new cn(new ArrayBuffer(1)))!=w||fn&&ti(new fn)!=g||hn&&"[object Promise]"!=ti(hn.resolve())||gn&&ti(new gn)!=y||pn&&ti(new pn)!=_)&&(ti=function(t){var e=fa(t),n=e==b?t.constructor:void 0,a=n?Ii(n):"";if(a)switch(a){case vn:return w;case xn:return g;case _n:return"[object Promise]";case Tn:return y;case wn:return _}return e});var oi=_t?Fs:ro;function li(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||xt)}function di(t){return t==t&&!Bs(t)}function ci(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in pt(n))}}function fi(t,e,n){return e=rn(void 0===e?t.length-1:e,0),function(){for(var r=arguments,i=-1,s=rn(r.length-e,0),u=a(s);++i<s;)u[i]=r[e+i];i=-1;for(var o=a(e+1);++i<e;)o[i]=r[i];return o[e]=n(u),ne(t,this,o)}}function hi(t,e){return e.length<2?t:da(t,za(e,0,-1))}function gi(t,e){for(var n=t.length,a=sn(e.length,n),r=pr(t);a--;){var i=e[a];t[a]=ri(i,n)?r[i]:void 0}return t}function pi(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}var bi=xi(Va),mi=Ze||function(t,e){return Yt.setTimeout(t,e)},yi=xi(Ga);function vi(t,e,n){var a=e+"";return yi(t,function(t,e){var n=e.length;if(!n)return t;var a=n-1;return e[a]=(n>1?"& ":"")+e[a],e=e.join(n>2?", ":" "),t.replace(Z,"{\n/* [wrapped with "+e+"] */\n")}(a,function(t,e){return re(s,(function(n){var a="_."+n[0];e&n[1]&&!oe(t,a)&&t.push(a)})),t.sort()}(function(t){var e=t.match(J);return e?e[1].split(Q):[]}(a),n)))}function xi(t){var e=0,n=0;return function(){var a=un(),r=16-(a-n);if(n=a,r>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function _i(t,e){var n=-1,a=t.length,r=a-1;for(e=void 0===e?a:e;++n<e;){var i=Da(n,r),s=t[i];t[i]=t[n],t[n]=s}return t.length=e,t}var Ti,wi,Oi=(Ti=Ts((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(Y,(function(t,n,a,r){e.push(a?r.replace(tt,"$1"):n||t)})),e}),(function(t){return 500===wi.size&&wi.clear(),t})),wi=Ti.cache,Ti);function Si(t){if("string"==typeof t||Zs(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Ii(t){if(null!=t){try{return Tt.call(t)}catch(e){}try{return t+""}catch(e){}}return""}function Ni(t){if(t instanceof kn)return t.clone();var e=new An(t.__wrapped__,t.__chain__);return e.__actions__=pr(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}var Ci=Ma((function(t,e){return Ps(t)?Qn(t,ra(e,1,Ps,!0)):[]})),Ri=Ma((function(t,e){var n=ji(e);return Ps(n)&&(n=void 0),Ps(t)?Qn(t,ra(e,1,Ps,!0),Kr(n,2)):[]})),Ai=Ma((function(t,e){var n=ji(e);return Ps(n)&&(n=void 0),Ps(t)?Qn(t,ra(e,1,Ps,!0),void 0,n):[]}));function ki(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=null==n?0:nu(n);return r<0&&(r=rn(a+r,0)),me(t,Kr(e,3),r)}function Ei(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=a-1;return void 0!==n&&(r=nu(n),r=n<0?rn(a+r,0):sn(r,a-1)),me(t,Kr(e,3),r,!0)}function Li(t){return null!=t&&t.length?ra(t,1):[]}function Di(t){return t&&t.length?t[0]:void 0}var Pi=Ma((function(t){var e=de(t,ar);return e.length&&e[0]===t[0]?ba(e):[]})),Mi=Ma((function(t){var e=ji(t),n=de(t,ar);return e===ji(n)?e=void 0:n.pop(),n.length&&n[0]===t[0]?ba(n,Kr(e,2)):[]})),qi=Ma((function(t){var e=ji(t),n=de(t,ar);return(e="function"==typeof e?e:void 0)&&n.pop(),n.length&&n[0]===t[0]?ba(n,void 0,e):[]}));function ji(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}var Fi=Ma(Vi);function Vi(t,e){return t&&t.length&&e&&e.length?Ea(t,e):t}var Gi=Br((function(t,e){var n=null==t?0:t.length,a=Wn(t,e);return La(t,de(e,(function(t){return ri(t,n)?+t:t})).sort(fr)),a}));function Bi(t){return null==t?t:dn.call(t)}var zi=Ma((function(t){return Za(ra(t,1,Ps,!0))})),Yi=Ma((function(t){var e=ji(t);return Ps(e)&&(e=void 0),Za(ra(t,1,Ps,!0),Kr(e,2))})),Hi=Ma((function(t){var e=ji(t);return e="function"==typeof e?e:void 0,Za(ra(t,1,Ps,!0),void 0,e)}));function Ui(t){if(!t||!t.length)return[];var e=0;return t=ue(t,(function(t){if(Ps(t))return e=rn(t.length,e),!0})),Ie(e,(function(e){return de(t,Te(e))}))}function Wi(t,e){if(!t||!t.length)return[];var n=Ui(t);return null==e?n:de(n,(function(t){return ne(e,void 0,t)}))}var Ki=Ma((function(t,e){return Ps(t)?Qn(t,e):[]})),$i=Ma((function(t){return er(ue(t,Ps))})),Zi=Ma((function(t){var e=ji(t);return Ps(e)&&(e=void 0),er(ue(t,Ps),Kr(e,2))})),Ji=Ma((function(t){var e=ji(t);return e="function"==typeof e?e:void 0,er(ue(t,Ps),void 0,e)})),Qi=Ma(Ui),Xi=Ma((function(t){var e=t.length,n=e>1?t[e-1]:void 0;return n="function"==typeof n?(t.pop(),n):void 0,Wi(t,n)}));function ts(t){var e=Nn(t);return e.__chain__=!0,e}function es(t,e){return e(t)}var ns=Br((function(t){var e=t.length,n=e?t[0]:0,a=this.__wrapped__,r=function(e){return Wn(e,t)};return!(e>1||this.__actions__.length)&&a instanceof kn&&ri(n)?((a=a.slice(n,+n+(e?1:0))).__actions__.push({func:es,args:[r],thisArg:void 0}),new An(a,this.__chain__).thru((function(t){return e&&!t.length&&t.push(void 0),t}))):this.thru(r)})),as=mr((function(t,e,n){wt.call(t,n)?++t[n]:Un(t,n,1)})),rs=Or(ki),is=Or(Ei);function ss(t,e){return(Es(t)?re:Xn)(t,Kr(e,3))}function us(t,e){return(Es(t)?ie:ta)(t,Kr(e,3))}var os=mr((function(t,e,n){wt.call(t,n)?t[n].push(e):Un(t,n,[e])})),ls=Ma((function(t,e,n){var r=-1,i="function"==typeof e,s=Ds(t)?a(t.length):[];return Xn(t,(function(t){s[++r]=i?ne(e,t,n):ma(t,e,n)})),s})),ds=mr((function(t,e,n){Un(t,n,e)}));function cs(t,e){return(Es(t)?de:Sa)(t,Kr(e,3))}var fs=mr((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]})),hs=Ma((function(t,e){if(null==t)return[];var n=e.length;return n>1&&ii(t,e[0],e[1])?e=[]:n>2&&ii(e[0],e[1],e[2])&&(e=[e[0]]),Aa(t,ra(e,1),[])})),gs=$e||function(){return Yt.Date.now()};function ps(t,e,n){return e=n?void 0:e,qr(t,128,void 0,void 0,void 0,void 0,e=t&&null==e?t.length:e)}function bs(t,e){var n;if("function"!=typeof e)throw new yt(r);return t=nu(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=void 0),n}}var ms=Ma((function(t,e,n){var a=1;if(n.length){var r=Fe(n,Wr(ms));a|=32}return qr(t,a,e,n,r)})),ys=Ma((function(t,e,n){var a=3;if(n.length){var r=Fe(n,Wr(ys));a|=32}return qr(e,a,t,n,r)}));function vs(t,e,n){var a,i,s,u,o,l,d=0,c=!1,f=!1,h=!0;if("function"!=typeof t)throw new yt(r);function g(e){var n=a,r=i;return a=i=void 0,d=e,u=t.apply(r,n)}function p(t){return d=t,o=mi(m,e),c?g(t):u}function b(t){var n=t-l;return void 0===l||n>=e||n<0||f&&t-d>=s}function m(){var t=gs();if(b(t))return y(t);o=mi(m,function(t){var n=e-(t-l);return f?sn(n,s-(t-d)):n}(t))}function y(t){return o=void 0,h&&a?g(t):(a=i=void 0,u)}function v(){var t=gs(),n=b(t);if(a=arguments,i=this,l=t,n){if(void 0===o)return p(l);if(f)return or(o),o=mi(m,e),g(l)}return void 0===o&&(o=mi(m,e)),u}return e=ru(e)||0,Bs(n)&&(c=!!n.leading,s=(f="maxWait"in n)?rn(ru(n.maxWait)||0,e):s,h="trailing"in n?!!n.trailing:h),v.cancel=function(){void 0!==o&&or(o),d=0,a=l=i=o=void 0},v.flush=function(){return void 0===o?u:y(gs())},v}var xs=Ma((function(t,e){return Jn(t,1,e)})),_s=Ma((function(t,e,n){return Jn(t,ru(e)||0,n)}));function Ts(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new yt(r);var n=function(){var a=arguments,r=e?e.apply(this,a):a[0],i=n.cache;if(i.has(r))return i.get(r);var s=t.apply(this,a);return n.cache=i.set(r,s)||i,s};return n.cache=new(Ts.Cache||Dn),n}function ws(t){if("function"!=typeof t)throw new yt(r);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Ts.Cache=Dn;var Os=sr((function(t,e){var n=(e=1==e.length&&Es(e[0])?de(e[0],Ne(Kr())):de(ra(e,1),Ne(Kr()))).length;return Ma((function(a){for(var r=-1,i=sn(a.length,n);++r<i;)a[r]=e[r].call(this,a[r]);return ne(t,this,a)}))})),Ss=Ma((function(t,e){return qr(t,32,void 0,e,Fe(e,Wr(Ss)))})),Is=Ma((function(t,e){return qr(t,64,void 0,e,Fe(e,Wr(Is)))})),Ns=Br((function(t,e){return qr(t,256,void 0,void 0,void 0,e)}));function Cs(t,e){return t===e||t!=t&&e!=e}var Rs=Er(ha),As=Er((function(t,e){return t>=e})),ks=ya(function(){return arguments}())?ya:function(t){return zs(t)&&wt.call(t,"callee")&&!Kt.call(t,"callee")},Es=a.isArray,Ls=Zt?Ne(Zt):function(t){return zs(t)&&fa(t)==T};function Ds(t){return null!=t&&Gs(t.length)&&!Fs(t)}function Ps(t){return zs(t)&&Ds(t)}var Ms=tn||ro,qs=Jt?Ne(Jt):function(t){return zs(t)&&fa(t)==d};function js(t){if(!zs(t))return!1;var e=fa(t);return e==c||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!Us(t)}function Fs(t){if(!Bs(t))return!1;var e=fa(t);return e==f||e==h||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Vs(t){return"number"==typeof t&&t==nu(t)}function Gs(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function Bs(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function zs(t){return null!=t&&"object"==typeof t}var Ys=Qt?Ne(Qt):function(t){return zs(t)&&ti(t)==g};function Hs(t){return"number"==typeof t||zs(t)&&fa(t)==p}function Us(t){if(!zs(t)||fa(t)!=b)return!1;var e=Ht(t);if(null===e)return!0;var n=wt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Tt.call(n)==Nt}var Ws=Xt?Ne(Xt):function(t){return zs(t)&&fa(t)==m},Ks=te?Ne(te):function(t){return zs(t)&&ti(t)==y};function $s(t){return"string"==typeof t||!Es(t)&&zs(t)&&fa(t)==v}function Zs(t){return"symbol"==typeof t||zs(t)&&fa(t)==x}var Js=ee?Ne(ee):function(t){return zs(t)&&Gs(t.length)&&!!qt[fa(t)]},Qs=Er(Oa),Xs=Er((function(t,e){return t<=e}));function tu(t){if(!t)return[];if(Ds(t))return $s(t)?ze(t):pr(t);if(we&&t[we])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[we]());var e=ti(t);return(e==g?qe:e==y?Ve:Cu)(t)}function eu(t){return t?(t=ru(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function nu(t){var e=eu(t),n=e%1;return e==e?n?e-n:e:0}function au(t){return t?Kn(nu(t),0,4294967295):0}function ru(t){if("number"==typeof t)return t;if(Zs(t))return NaN;if(Bs(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Bs(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(W,"");var n=rt.test(t);return n||st.test(t)?Gt(t.slice(2),n?2:8):at.test(t)?NaN:+t}function iu(t){return br(t,xu(t))}function su(t){return null==t?"":$a(t)}var uu=yr((function(t,e){if(li(e)||Ds(e))br(e,vu(e),t);else for(var n in e)wt.call(e,n)&&Bn(t,n,e[n])})),ou=yr((function(t,e){br(e,xu(e),t)})),lu=yr((function(t,e,n,a){br(e,xu(e),t,a)})),du=yr((function(t,e,n,a){br(e,vu(e),t,a)})),cu=Br(Wn),fu=Ma((function(t,e){t=pt(t);var n=-1,a=e.length,r=a>2?e[2]:void 0;for(r&&ii(e[0],e[1],r)&&(a=1);++n<a;)for(var i=e[n],s=xu(i),u=-1,o=s.length;++u<o;){var l=s[u],d=t[l];(void 0===d||Cs(d,xt[l])&&!wt.call(t,l))&&(t[l]=i[l])}return t})),hu=Ma((function(t){return t.push(void 0,Fr),ne(Tu,void 0,t)}));function gu(t,e,n){var a=null==t?void 0:da(t,e);return void 0===a?n:a}function pu(t,e){return null!=t&&ei(t,e,pa)}var bu=Nr((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=It.call(e)),t[e]=n}),Bu(Hu)),mu=Nr((function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=It.call(e)),wt.call(t,e)?t[e].push(n):t[e]=[n]}),Kr),yu=Ma(ma);function vu(t){return Ds(t)?qn(t):wa(t)}function xu(t){return Ds(t)?qn(t,!0):function(t){if(!Bs(t))return function(t){var e=[];if(null!=t)for(var n in pt(t))e.push(n);return e}(t);var e=li(t),n=[];for(var a in t)("constructor"!=a||!e&&wt.call(t,a))&&n.push(a);return n}(t)}var _u=yr((function(t,e,n){Ca(t,e,n)})),Tu=yr((function(t,e,n,a){Ca(t,e,n,a)})),wu=Br((function(t,e){var n={};if(null==t)return n;var a=!1;e=de(e,(function(e){return e=ir(e,t),a||(a=e.length>1),e})),br(t,Yr(t),n),a&&(n=$n(n,7,Vr));for(var r=e.length;r--;)Ja(n,e[r]);return n})),Ou=Br((function(t,e){return null==t?{}:function(t,e){return ka(t,e,(function(e,n){return pu(t,n)}))}(t,e)}));function Su(t,e){if(null==t)return{};var n=de(Yr(t),(function(t){return[t]}));return e=Kr(e),ka(t,n,(function(t,n){return e(t,n[0])}))}var Iu=Mr(vu),Nu=Mr(xu);function Cu(t){return null==t?[]:Ce(t,vu(t))}var Ru=Tr((function(t,e,n){return e=e.toLowerCase(),t+(n?Au(e):e)}));function Au(t){return ju(su(t).toLowerCase())}function ku(t){return(t=su(t))&&t.replace(ot,Le).replace(At,"")}var Eu=Tr((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),Lu=Tr((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Du=_r("toLowerCase"),Pu=Tr((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()})),Mu=Tr((function(t,e,n){return t+(n?" ":"")+ju(e)})),qu=Tr((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),ju=_r("toUpperCase");function Fu(t,e,n){return t=su(t),void 0===(e=n?void 0:e)?function(t){return Dt.test(t)}(t)?function(t){return t.match(Et)||[]}(t):function(t){return t.match(X)||[]}(t):t.match(e)||[]}var Vu=Ma((function(t,e){try{return ne(t,void 0,e)}catch(n){return js(n)?n:new ft(n)}})),Gu=Br((function(t,e){return re(e,(function(e){e=Si(e),Un(t,e,ms(t[e],t))})),t}));function Bu(t){return function(){return t}}var zu=Sr(),Yu=Sr(!0);function Hu(t){return t}function Uu(t){return Ta("function"==typeof t?t:$n(t,1))}var Wu=Ma((function(t,e){return function(n){return ma(n,t,e)}})),Ku=Ma((function(t,e){return function(n){return ma(t,n,e)}}));function $u(t,e,n){var a=vu(e),r=la(e,a);null!=n||Bs(e)&&(r.length||!a.length)||(n=e,e=t,t=this,r=la(e,vu(e)));var i=!(Bs(n)&&"chain"in n&&!n.chain),s=Fs(t);return re(r,(function(n){var a=e[n];t[n]=a,s&&(t.prototype[n]=function(){var e=this.__chain__;if(i||e){var n=t(this.__wrapped__),r=n.__actions__=pr(this.__actions__);return r.push({func:a,args:arguments,thisArg:t}),n.__chain__=e,n}return a.apply(t,ce([this.value()],arguments))})})),t}function Zu(){}var Ju=Rr(de),Qu=Rr(se),Xu=Rr(ge);function to(t){return si(t)?Te(Si(t)):function(t){return function(e){return da(e,t)}}(t)}var eo=kr(),no=kr(!0);function ao(){return[]}function ro(){return!1}var io,so=Cr((function(t,e){return t+e}),0),uo=Dr("ceil"),oo=Cr((function(t,e){return t/e}),1),lo=Dr("floor"),co=Cr((function(t,e){return t*e}),1),fo=Dr("round"),ho=Cr((function(t,e){return t-e}),0);return Nn.after=function(t,e){if("function"!=typeof e)throw new yt(r);return t=nu(t),function(){if(--t<1)return e.apply(this,arguments)}},Nn.ary=ps,Nn.assign=uu,Nn.assignIn=ou,Nn.assignInWith=lu,Nn.assignWith=du,Nn.at=cu,Nn.before=bs,Nn.bind=ms,Nn.bindAll=Gu,Nn.bindKey=ys,Nn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Es(t)?t:[t]},Nn.chain=ts,Nn.chunk=function(t,e,n){e=(n?ii(t,e,n):void 0===e)?1:rn(nu(e),0);var r=null==t?0:t.length;if(!r||e<1)return[];for(var i=0,s=0,u=a(Je(r/e));i<r;)u[s++]=za(t,i,i+=e);return u},Nn.compact=function(t){for(var e=-1,n=null==t?0:t.length,a=0,r=[];++e<n;){var i=t[e];i&&(r[a++]=i)}return r},Nn.concat=function(){var t=arguments.length;if(!t)return[];for(var e=a(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return ce(Es(n)?pr(n):[n],ra(e,1))},Nn.cond=function(t){var e=null==t?0:t.length,n=Kr();return t=e?de(t,(function(t){if("function"!=typeof t[1])throw new yt(r);return[n(t[0]),t[1]]})):[],Ma((function(n){for(var a=-1;++a<e;){var r=t[a];if(ne(r[0],this,n))return ne(r[1],this,n)}}))},Nn.conforms=function(t){return function(t){var e=vu(t);return function(n){return Zn(n,t,e)}}($n(t,1))},Nn.constant=Bu,Nn.countBy=as,Nn.create=function(t,e){var n=Cn(t);return null==e?n:Hn(n,e)},Nn.curry=function t(e,n,a){var r=qr(e,8,void 0,void 0,void 0,void 0,void 0,n=a?void 0:n);return r.placeholder=t.placeholder,r},Nn.curryRight=function t(e,n,a){var r=qr(e,16,void 0,void 0,void 0,void 0,void 0,n=a?void 0:n);return r.placeholder=t.placeholder,r},Nn.debounce=vs,Nn.defaults=fu,Nn.defaultsDeep=hu,Nn.defer=xs,Nn.delay=_s,Nn.difference=Ci,Nn.differenceBy=Ri,Nn.differenceWith=Ai,Nn.drop=function(t,e,n){var a=null==t?0:t.length;return a?za(t,(e=n||void 0===e?1:nu(e))<0?0:e,a):[]},Nn.dropRight=function(t,e,n){var a=null==t?0:t.length;return a?za(t,0,(e=a-(e=n||void 0===e?1:nu(e)))<0?0:e):[]},Nn.dropRightWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!0,!0):[]},Nn.dropWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!0):[]},Nn.fill=function(t,e,n,a){var r=null==t?0:t.length;return r?(n&&"number"!=typeof n&&ii(t,e,n)&&(n=0,a=r),function(t,e,n,a){var r=t.length;for((n=nu(n))<0&&(n=-n>r?0:r+n),(a=void 0===a||a>r?r:nu(a))<0&&(a+=r),a=n>a?0:au(a);n<a;)t[n++]=e;return t}(t,e,n,a)):[]},Nn.filter=function(t,e){return(Es(t)?ue:aa)(t,Kr(e,3))},Nn.flatMap=function(t,e){return ra(cs(t,e),1)},Nn.flatMapDeep=function(t,e){return ra(cs(t,e),1/0)},Nn.flatMapDepth=function(t,e,n){return n=void 0===n?1:nu(n),ra(cs(t,e),n)},Nn.flatten=Li,Nn.flattenDeep=function(t){return null!=t&&t.length?ra(t,1/0):[]},Nn.flattenDepth=function(t,e){return null!=t&&t.length?ra(t,e=void 0===e?1:nu(e)):[]},Nn.flip=function(t){return qr(t,512)},Nn.flow=zu,Nn.flowRight=Yu,Nn.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,a={};++e<n;){var r=t[e];a[r[0]]=r[1]}return a},Nn.functions=function(t){return null==t?[]:la(t,vu(t))},Nn.functionsIn=function(t){return null==t?[]:la(t,xu(t))},Nn.groupBy=os,Nn.initial=function(t){return null!=t&&t.length?za(t,0,-1):[]},Nn.intersection=Pi,Nn.intersectionBy=Mi,Nn.intersectionWith=qi,Nn.invert=bu,Nn.invertBy=mu,Nn.invokeMap=ls,Nn.iteratee=Uu,Nn.keyBy=ds,Nn.keys=vu,Nn.keysIn=xu,Nn.map=cs,Nn.mapKeys=function(t,e){var n={};return e=Kr(e,3),ua(t,(function(t,a,r){Un(n,e(t,a,r),t)})),n},Nn.mapValues=function(t,e){var n={};return e=Kr(e,3),ua(t,(function(t,a,r){Un(n,a,e(t,a,r))})),n},Nn.matches=function(t){return Ia($n(t,1))},Nn.matchesProperty=function(t,e){return Na(t,$n(e,1))},Nn.memoize=Ts,Nn.merge=_u,Nn.mergeWith=Tu,Nn.method=Wu,Nn.methodOf=Ku,Nn.mixin=$u,Nn.negate=ws,Nn.nthArg=function(t){return t=nu(t),Ma((function(e){return Ra(e,t)}))},Nn.omit=wu,Nn.omitBy=function(t,e){return Su(t,ws(Kr(e)))},Nn.once=function(t){return bs(2,t)},Nn.orderBy=function(t,e,n,a){return null==t?[]:(Es(e)||(e=null==e?[]:[e]),Es(n=a?void 0:n)||(n=null==n?[]:[n]),Aa(t,e,n))},Nn.over=Ju,Nn.overArgs=Os,Nn.overEvery=Qu,Nn.overSome=Xu,Nn.partial=Ss,Nn.partialRight=Is,Nn.partition=fs,Nn.pick=Ou,Nn.pickBy=Su,Nn.property=to,Nn.propertyOf=function(t){return function(e){return null==t?void 0:da(t,e)}},Nn.pull=Fi,Nn.pullAll=Vi,Nn.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?Ea(t,e,Kr(n,2)):t},Nn.pullAllWith=function(t,e,n){return t&&t.length&&e&&e.length?Ea(t,e,void 0,n):t},Nn.pullAt=Gi,Nn.range=eo,Nn.rangeRight=no,Nn.rearg=Ns,Nn.reject=function(t,e){return(Es(t)?ue:aa)(t,ws(Kr(e,3)))},Nn.remove=function(t,e){var n=[];if(!t||!t.length)return n;var a=-1,r=[],i=t.length;for(e=Kr(e,3);++a<i;){var s=t[a];e(s,a,t)&&(n.push(s),r.push(a))}return La(t,r),n},Nn.rest=function(t,e){if("function"!=typeof t)throw new yt(r);return Ma(t,e=void 0===e?e:nu(e))},Nn.reverse=Bi,Nn.sampleSize=function(t,e,n){return e=(n?ii(t,e,n):void 0===e)?1:nu(e),(Es(t)?Fn:ja)(t,e)},Nn.set=function(t,e,n){return null==t?t:Fa(t,e,n)},Nn.setWith=function(t,e,n,a){return a="function"==typeof a?a:void 0,null==t?t:Fa(t,e,n,a)},Nn.shuffle=function(t){return(Es(t)?Vn:Ba)(t)},Nn.slice=function(t,e,n){var a=null==t?0:t.length;return a?(n&&"number"!=typeof n&&ii(t,e,n)?(e=0,n=a):(e=null==e?0:nu(e),n=void 0===n?a:nu(n)),za(t,e,n)):[]},Nn.sortBy=hs,Nn.sortedUniq=function(t){return t&&t.length?Wa(t):[]},Nn.sortedUniqBy=function(t,e){return t&&t.length?Wa(t,Kr(e,2)):[]},Nn.split=function(t,e,n){return n&&"number"!=typeof n&&ii(t,e,n)&&(e=n=void 0),(n=void 0===n?4294967295:n>>>0)?(t=su(t))&&("string"==typeof e||null!=e&&!Ws(e))&&!(e=$a(e))&&Me(t)?ur(ze(t),0,n):t.split(e,n):[]},Nn.spread=function(t,e){if("function"!=typeof t)throw new yt(r);return e=null==e?0:rn(nu(e),0),Ma((function(n){var a=n[e],r=ur(n,0,e);return a&&ce(r,a),ne(t,this,r)}))},Nn.tail=function(t){var e=null==t?0:t.length;return e?za(t,1,e):[]},Nn.take=function(t,e,n){return t&&t.length?za(t,0,(e=n||void 0===e?1:nu(e))<0?0:e):[]},Nn.takeRight=function(t,e,n){var a=null==t?0:t.length;return a?za(t,(e=a-(e=n||void 0===e?1:nu(e)))<0?0:e,a):[]},Nn.takeRightWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3),!1,!0):[]},Nn.takeWhile=function(t,e){return t&&t.length?Xa(t,Kr(e,3)):[]},Nn.tap=function(t,e){return e(t),t},Nn.throttle=function(t,e,n){var a=!0,i=!0;if("function"!=typeof t)throw new yt(r);return Bs(n)&&(a="leading"in n?!!n.leading:a,i="trailing"in n?!!n.trailing:i),vs(t,e,{leading:a,maxWait:e,trailing:i})},Nn.thru=es,Nn.toArray=tu,Nn.toPairs=Iu,Nn.toPairsIn=Nu,Nn.toPath=function(t){return Es(t)?de(t,Si):Zs(t)?[t]:pr(Oi(su(t)))},Nn.toPlainObject=iu,Nn.transform=function(t,e,n){var a=Es(t),r=a||Ms(t)||Js(t);if(e=Kr(e,4),null==n){var i=t&&t.constructor;n=r?a?new i:[]:Bs(t)&&Fs(i)?Cn(Ht(t)):{}}return(r?re:ua)(t,(function(t,a,r){return e(n,t,a,r)})),n},Nn.unary=function(t){return ps(t,1)},Nn.union=zi,Nn.unionBy=Yi,Nn.unionWith=Hi,Nn.uniq=function(t){return t&&t.length?Za(t):[]},Nn.uniqBy=function(t,e){return t&&t.length?Za(t,Kr(e,2)):[]},Nn.uniqWith=function(t,e){return e="function"==typeof e?e:void 0,t&&t.length?Za(t,void 0,e):[]},Nn.unset=function(t,e){return null==t||Ja(t,e)},Nn.unzip=Ui,Nn.unzipWith=Wi,Nn.update=function(t,e,n){return null==t?t:Qa(t,e,rr(n))},Nn.updateWith=function(t,e,n,a){return a="function"==typeof a?a:void 0,null==t?t:Qa(t,e,rr(n),a)},Nn.values=Cu,Nn.valuesIn=function(t){return null==t?[]:Ce(t,xu(t))},Nn.without=Ki,Nn.words=Fu,Nn.wrap=function(t,e){return Ss(rr(e),t)},Nn.xor=$i,Nn.xorBy=Zi,Nn.xorWith=Ji,Nn.zip=Qi,Nn.zipObject=function(t,e){return nr(t||[],e||[],Bn)},Nn.zipObjectDeep=function(t,e){return nr(t||[],e||[],Fa)},Nn.zipWith=Xi,Nn.entries=Iu,Nn.entriesIn=Nu,Nn.extend=ou,Nn.extendWith=lu,$u(Nn,Nn),Nn.add=so,Nn.attempt=Vu,Nn.camelCase=Ru,Nn.capitalize=Au,Nn.ceil=uo,Nn.clamp=function(t,e,n){return void 0===n&&(n=e,e=void 0),void 0!==n&&(n=(n=ru(n))==n?n:0),void 0!==e&&(e=(e=ru(e))==e?e:0),Kn(ru(t),e,n)},Nn.clone=function(t){return $n(t,4)},Nn.cloneDeep=function(t){return $n(t,5)},Nn.cloneDeepWith=function(t,e){return $n(t,5,e="function"==typeof e?e:void 0)},Nn.cloneWith=function(t,e){return $n(t,4,e="function"==typeof e?e:void 0)},Nn.conformsTo=function(t,e){return null==e||Zn(t,e,vu(e))},Nn.deburr=ku,Nn.defaultTo=function(t,e){return null==t||t!=t?e:t},Nn.divide=oo,Nn.endsWith=function(t,e,n){t=su(t),e=$a(e);var a=t.length,r=n=void 0===n?a:Kn(nu(n),0,a);return(n-=e.length)>=0&&t.slice(n,r)==e},Nn.eq=Cs,Nn.escape=function(t){return(t=su(t))&&j.test(t)?t.replace(M,De):t},Nn.escapeRegExp=function(t){return(t=su(t))&&U.test(t)?t.replace(H,"\\$&"):t},Nn.every=function(t,e,n){var a=Es(t)?se:ea;return n&&ii(t,e,n)&&(e=void 0),a(t,Kr(e,3))},Nn.find=rs,Nn.findIndex=ki,Nn.findKey=function(t,e){return be(t,Kr(e,3),ua)},Nn.findLast=is,Nn.findLastIndex=Ei,Nn.findLastKey=function(t,e){return be(t,Kr(e,3),oa)},Nn.floor=lo,Nn.forEach=ss,Nn.forEachRight=us,Nn.forIn=function(t,e){return null==t?t:ia(t,Kr(e,3),xu)},Nn.forInRight=function(t,e){return null==t?t:sa(t,Kr(e,3),xu)},Nn.forOwn=function(t,e){return t&&ua(t,Kr(e,3))},Nn.forOwnRight=function(t,e){return t&&oa(t,Kr(e,3))},Nn.get=gu,Nn.gt=Rs,Nn.gte=As,Nn.has=function(t,e){return null!=t&&ei(t,e,ga)},Nn.hasIn=pu,Nn.head=Di,Nn.identity=Hu,Nn.includes=function(t,e,n,a){t=Ds(t)?t:Cu(t),n=n&&!a?nu(n):0;var r=t.length;return n<0&&(n=rn(r+n,0)),$s(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&ye(t,e,n)>-1},Nn.indexOf=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=null==n?0:nu(n);return r<0&&(r=rn(a+r,0)),ye(t,e,r)},Nn.inRange=function(t,e,n){return e=eu(e),void 0===n?(n=e,e=0):n=eu(n),function(t,e,n){return t>=sn(e,n)&&t<rn(e,n)}(t=ru(t),e,n)},Nn.invoke=yu,Nn.isArguments=ks,Nn.isArray=Es,Nn.isArrayBuffer=Ls,Nn.isArrayLike=Ds,Nn.isArrayLikeObject=Ps,Nn.isBoolean=function(t){return!0===t||!1===t||zs(t)&&fa(t)==l},Nn.isBuffer=Ms,Nn.isDate=qs,Nn.isElement=function(t){return zs(t)&&1===t.nodeType&&!Us(t)},Nn.isEmpty=function(t){if(null==t)return!0;if(Ds(t)&&(Es(t)||"string"==typeof t||"function"==typeof t.splice||Ms(t)||Js(t)||ks(t)))return!t.length;var e=ti(t);if(e==g||e==y)return!t.size;if(li(t))return!wa(t).length;for(var n in t)if(wt.call(t,n))return!1;return!0},Nn.isEqual=function(t,e){return va(t,e)},Nn.isEqualWith=function(t,e,n){var a=(n="function"==typeof n?n:void 0)?n(t,e):void 0;return void 0===a?va(t,e,void 0,n):!!a},Nn.isError=js,Nn.isFinite=function(t){return"number"==typeof t&&en(t)},Nn.isFunction=Fs,Nn.isInteger=Vs,Nn.isLength=Gs,Nn.isMap=Ys,Nn.isMatch=function(t,e){return t===e||xa(t,e,Zr(e))},Nn.isMatchWith=function(t,e,n){return n="function"==typeof n?n:void 0,xa(t,e,Zr(e),n)},Nn.isNaN=function(t){return Hs(t)&&t!=+t},Nn.isNative=function(t){if(oi(t))throw new ft("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return _a(t)},Nn.isNil=function(t){return null==t},Nn.isNull=function(t){return null===t},Nn.isNumber=Hs,Nn.isObject=Bs,Nn.isObjectLike=zs,Nn.isPlainObject=Us,Nn.isRegExp=Ws,Nn.isSafeInteger=function(t){return Vs(t)&&t>=-9007199254740991&&t<=9007199254740991},Nn.isSet=Ks,Nn.isString=$s,Nn.isSymbol=Zs,Nn.isTypedArray=Js,Nn.isUndefined=function(t){return void 0===t},Nn.isWeakMap=function(t){return zs(t)&&ti(t)==_},Nn.isWeakSet=function(t){return zs(t)&&"[object WeakSet]"==fa(t)},Nn.join=function(t,e){return null==t?"":nn.call(t,e)},Nn.kebabCase=Eu,Nn.last=ji,Nn.lastIndexOf=function(t,e,n){var a=null==t?0:t.length;if(!a)return-1;var r=a;return void 0!==n&&(r=(r=nu(n))<0?rn(a+r,0):sn(r,a-1)),e==e?function(t,e,n){for(var a=n+1;a--;)if(t[a]===e)return a;return a}(t,e,r):me(t,xe,r,!0)},Nn.lowerCase=Lu,Nn.lowerFirst=Du,Nn.lt=Qs,Nn.lte=Xs,Nn.max=function(t){return t&&t.length?na(t,Hu,ha):void 0},Nn.maxBy=function(t,e){return t&&t.length?na(t,Kr(e,2),ha):void 0},Nn.mean=function(t){return _e(t,Hu)},Nn.meanBy=function(t,e){return _e(t,Kr(e,2))},Nn.min=function(t){return t&&t.length?na(t,Hu,Oa):void 0},Nn.minBy=function(t,e){return t&&t.length?na(t,Kr(e,2),Oa):void 0},Nn.stubArray=ao,Nn.stubFalse=ro,Nn.stubObject=function(){return{}},Nn.stubString=function(){return""},Nn.stubTrue=function(){return!0},Nn.multiply=co,Nn.nth=function(t,e){return t&&t.length?Ra(t,nu(e)):void 0},Nn.noConflict=function(){return Yt._===this&&(Yt._=Ct),this},Nn.noop=Zu,Nn.now=gs,Nn.pad=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;if(!e||a>=e)return t;var r=(e-a)/2;return Ar(Qe(r),n)+t+Ar(Je(r),n)},Nn.padEnd=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;return e&&a<e?t+Ar(e-a,n):t},Nn.padStart=function(t,e,n){t=su(t);var a=(e=nu(e))?Be(t):0;return e&&a<e?Ar(e-a,n)+t:t},Nn.parseInt=function(t,e,n){return n||null==e?e=0:e&&(e=+e),on(su(t).replace(K,""),e||0)},Nn.random=function(t,e,n){if(n&&"boolean"!=typeof n&&ii(t,e,n)&&(e=n=void 0),void 0===n&&("boolean"==typeof e?(n=e,e=void 0):"boolean"==typeof t&&(n=t,t=void 0)),void 0===t&&void 0===e?(t=0,e=1):(t=eu(t),void 0===e?(e=t,t=0):e=eu(e)),t>e){var a=t;t=e,e=a}if(n||t%1||e%1){var r=ln();return sn(t+r*(e-t+Vt("1e-"+((r+"").length-1))),e)}return Da(t,e)},Nn.reduce=function(t,e,n){var a=Es(t)?fe:Oe,r=arguments.length<3;return a(t,Kr(e,4),n,r,Xn)},Nn.reduceRight=function(t,e,n){var a=Es(t)?he:Oe,r=arguments.length<3;return a(t,Kr(e,4),n,r,ta)},Nn.repeat=function(t,e,n){return e=(n?ii(t,e,n):void 0===e)?1:nu(e),Pa(su(t),e)},Nn.replace=function(){var t=arguments,e=su(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Nn.result=function(t,e,n){var a=-1,r=(e=ir(e,t)).length;for(r||(r=1,t=void 0);++a<r;){var i=null==t?void 0:t[Si(e[a])];void 0===i&&(a=r,i=n),t=Fs(i)?i.call(t):i}return t},Nn.round=fo,Nn.runInContext=t,Nn.sample=function(t){return(Es(t)?jn:qa)(t)},Nn.size=function(t){if(null==t)return 0;if(Ds(t))return $s(t)?Be(t):t.length;var e=ti(t);return e==g||e==y?t.size:wa(t).length},Nn.snakeCase=Pu,Nn.some=function(t,e,n){var a=Es(t)?ge:Ya;return n&&ii(t,e,n)&&(e=void 0),a(t,Kr(e,3))},Nn.sortedIndex=function(t,e){return Ha(t,e)},Nn.sortedIndexBy=function(t,e,n){return Ua(t,e,Kr(n,2))},Nn.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var a=Ha(t,e);if(a<n&&Cs(t[a],e))return a}return-1},Nn.sortedLastIndex=function(t,e){return Ha(t,e,!0)},Nn.sortedLastIndexBy=function(t,e,n){return Ua(t,e,Kr(n,2),!0)},Nn.sortedLastIndexOf=function(t,e){if(null!=t&&t.length){var n=Ha(t,e,!0)-1;if(Cs(t[n],e))return n}return-1},Nn.startCase=Mu,Nn.startsWith=function(t,e,n){return t=su(t),n=null==n?0:Kn(nu(n),0,t.length),e=$a(e),t.slice(n,n+e.length)==e},Nn.subtract=ho,Nn.sum=function(t){return t&&t.length?Se(t,Hu):0},Nn.sumBy=function(t,e){return t&&t.length?Se(t,Kr(e,2)):0},Nn.template=function(t,e,n){var a=Nn.templateSettings;n&&ii(t,e,n)&&(e=void 0),t=su(t),e=lu({},e,a,jr);var r,i,s=lu({},e.imports,a.imports,jr),u=vu(s),o=Ce(s,u),l=0,d=e.interpolate||lt,c="__p += '",f=bt((e.escape||lt).source+"|"+d.source+"|"+(d===G?et:lt).source+"|"+(e.evaluate||lt).source+"|$","g"),h="//# sourceURL="+(wt.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Mt+"]")+"\n";t.replace(f,(function(e,n,a,s,u,o){return a||(a=s),c+=t.slice(l,o).replace(dt,Pe),n&&(r=!0,c+="' +\n__e("+n+") +\n'"),u&&(i=!0,c+="';\n"+u+";\n__p += '"),a&&(c+="' +\n((__t = ("+a+")) == null ? '' : __t) +\n'"),l=o+e.length,e})),c+="';\n";var g=wt.call(e,"variable")&&e.variable;g||(c="with (obj) {\n"+c+"\n}\n"),c=(i?c.replace(E,""):c).replace(L,"$1").replace(D,"$1;"),c="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(r?", __e = _.escape":"")+(i?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+c+"return __p\n}";var p=Vu((function(){return ht(u,h+"return "+c).apply(void 0,o)}));if(p.source=c,js(p))throw p;return p},Nn.times=function(t,e){if((t=nu(t))<1||t>9007199254740991)return[];var n=4294967295,a=sn(t,4294967295);t-=4294967295;for(var r=Ie(a,e=Kr(e));++n<t;)e(n);return r},Nn.toFinite=eu,Nn.toInteger=nu,Nn.toLength=au,Nn.toLower=function(t){return su(t).toLowerCase()},Nn.toNumber=ru,Nn.toSafeInteger=function(t){return t?Kn(nu(t),-9007199254740991,9007199254740991):0===t?t:0},Nn.toString=su,Nn.toUpper=function(t){return su(t).toUpperCase()},Nn.trim=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace(W,"");if(!t||!(e=$a(e)))return t;var a=ze(t),r=ze(e);return ur(a,Ae(a,r),ke(a,r)+1).join("")},Nn.trimEnd=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace($,"");if(!t||!(e=$a(e)))return t;var a=ze(t);return ur(a,0,ke(a,ze(e))+1).join("")},Nn.trimStart=function(t,e,n){if((t=su(t))&&(n||void 0===e))return t.replace(K,"");if(!t||!(e=$a(e)))return t;var a=ze(t);return ur(a,Ae(a,ze(e))).join("")},Nn.truncate=function(t,e){var n=30,a="...";if(Bs(e)){var r="separator"in e?e.separator:r;n="length"in e?nu(e.length):n,a="omission"in e?$a(e.omission):a}var i=(t=su(t)).length;if(Me(t)){var s=ze(t);i=s.length}if(n>=i)return t;var u=n-Be(a);if(u<1)return a;var o=s?ur(s,0,u).join(""):t.slice(0,u);if(void 0===r)return o+a;if(s&&(u+=o.length-u),Ws(r)){if(t.slice(u).search(r)){var l,d=o;for(r.global||(r=bt(r.source,su(nt.exec(r))+"g")),r.lastIndex=0;l=r.exec(d);)var c=l.index;o=o.slice(0,void 0===c?u:c)}}else if(t.indexOf($a(r),u)!=u){var f=o.lastIndexOf(r);f>-1&&(o=o.slice(0,f))}return o+a},Nn.unescape=function(t){return(t=su(t))&&q.test(t)?t.replace(P,Ye):t},Nn.uniqueId=function(t){var e=++Ot;return su(t)+e},Nn.upperCase=qu,Nn.upperFirst=ju,Nn.each=ss,Nn.eachRight=us,Nn.first=Di,$u(Nn,(io={},ua(Nn,(function(t,e){wt.call(Nn.prototype,e)||(io[e]=t)})),io),{chain:!1}),Nn.VERSION="4.17.20",re(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Nn[t].placeholder=Nn})),re(["drop","take"],(function(t,e){kn.prototype[t]=function(n){n=void 0===n?1:rn(nu(n),0);var a=this.__filtered__&&!e?new kn(this):this.clone();return a.__filtered__?a.__takeCount__=sn(n,a.__takeCount__):a.__views__.push({size:sn(n,4294967295),type:t+(a.__dir__<0?"Right":"")}),a},kn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),re(["filter","map","takeWhile"],(function(t,e){var n=e+1,a=1==n||3==n;kn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Kr(t,3),type:n}),e.__filtered__=e.__filtered__||a,e}})),re(["head","last"],(function(t,e){var n="take"+(e?"Right":"");kn.prototype[t]=function(){return this[n](1).value()[0]}})),re(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");kn.prototype[t]=function(){return this.__filtered__?new kn(this):this[n](1)}})),kn.prototype.compact=function(){return this.filter(Hu)},kn.prototype.find=function(t){return this.filter(t).head()},kn.prototype.findLast=function(t){return this.reverse().find(t)},kn.prototype.invokeMap=Ma((function(t,e){return"function"==typeof t?new kn(this):this.map((function(n){return ma(n,t,e)}))})),kn.prototype.reject=function(t){return this.filter(ws(Kr(t)))},kn.prototype.slice=function(t,e){t=nu(t);var n=this;return n.__filtered__&&(t>0||e<0)?new kn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),void 0!==e&&(n=(e=nu(e))<0?n.dropRight(-e):n.take(e-t)),n)},kn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},kn.prototype.toArray=function(){return this.take(4294967295)},ua(kn.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),a=/^(?:head|last)$/.test(e),r=Nn[a?"take"+("last"==e?"Right":""):e],i=a||/^find/.test(e);r&&(Nn.prototype[e]=function(){var e=this.__wrapped__,s=a?[1]:arguments,u=e instanceof kn,o=s[0],l=u||Es(e),d=function(t){var e=r.apply(Nn,ce([t],s));return a&&c?e[0]:e};l&&n&&"function"==typeof o&&1!=o.length&&(u=l=!1);var c=this.__chain__,f=!!this.__actions__.length,h=i&&!c,g=u&&!f;if(!i&&l){e=g?e:new kn(this);var p=t.apply(e,s);return p.__actions__.push({func:es,args:[d],thisArg:void 0}),new An(p,c)}return h&&g?t.apply(this,s):(p=this.thru(d),h?a?p.value()[0]:p.value():p)})})),re(["pop","push","shift","sort","splice","unshift"],(function(t){var e=vt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",a=/^(?:pop|shift)$/.test(t);Nn.prototype[t]=function(){var t=arguments;if(a&&!this.__chain__){var r=this.value();return e.apply(Es(r)?r:[],t)}return this[n]((function(n){return e.apply(Es(n)?n:[],t)}))}})),ua(kn.prototype,(function(t,e){var n=Nn[e];if(n){var a=n.name+"";wt.call(yn,a)||(yn[a]=[]),yn[a].push({name:e,func:n})}})),yn[Ir(void 0,2).name]=[{name:"wrapper",func:void 0}],kn.prototype.clone=function(){var t=new kn(this.__wrapped__);return t.__actions__=pr(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=pr(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=pr(this.__views__),t},kn.prototype.reverse=function(){if(this.__filtered__){var t=new kn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},kn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Es(t),a=e<0,r=n?t.length:0,i=function(t,e,n){for(var a=-1,r=n.length;++a<r;){var i=n[a],s=i.size;switch(i.type){case"drop":t+=s;break;case"dropRight":e-=s;break;case"take":e=sn(e,t+s);break;case"takeRight":t=rn(t,e-s)}}return{start:t,end:e}}(0,r,this.__views__),s=i.start,u=i.end,o=u-s,l=a?u:s-1,d=this.__iteratees__,c=d.length,f=0,h=sn(o,this.__takeCount__);if(!n||!a&&r==o&&h==o)return tr(t,this.__actions__);var g=[];t:for(;o--&&f<h;){for(var p=-1,b=t[l+=e];++p<c;){var m=d[p],y=m.type,v=(0,m.iteratee)(b);if(2==y)b=v;else if(!v){if(1==y)continue t;break t}}g[f++]=b}return g},Nn.prototype.at=ns,Nn.prototype.chain=function(){return ts(this)},Nn.prototype.commit=function(){return new An(this.value(),this.__chain__)},Nn.prototype.next=function(){void 0===this.__values__&&(this.__values__=tu(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?void 0:this.__values__[this.__index__++]}},Nn.prototype.plant=function(t){for(var e,n=this;n instanceof Rn;){var a=Ni(n);a.__index__=0,a.__values__=void 0,e?r.__wrapped__=a:e=a;var r=a;n=n.__wrapped__}return r.__wrapped__=t,e},Nn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof kn){var e=t;return this.__actions__.length&&(e=new kn(this)),(e=e.reverse()).__actions__.push({func:es,args:[Bi],thisArg:void 0}),new An(e,this.__chain__)}return this.thru(Bi)},Nn.prototype.toJSON=Nn.prototype.valueOf=Nn.prototype.value=function(){return tr(this.__wrapped__,this.__actions__)},Nn.prototype.first=Nn.prototype.head,we&&(Nn.prototype[we]=function(){return this}),Nn}();Yt._=He,void 0===(a=(function(){return He}).call(e,n,e,t))||(t.exports=a)}).call(this)}).call(this,n("YuTi")(t))},lyxo:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a=" ";return(t%100>=20||t>=100&&t%100==0)&&(a=" de "),t+a+{ss:"secunde",mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"}[n]}t.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",ss:e,m:"un minut",mm:e,h:"o oră",hh:e,d:"o zi",dd:e,M:"o lună",MM:e,y:"un an",yy:e},week:{dow:1,doy:7}})}(n("wd/R"))},"m/L8":function(t,e,n){var a=n("g6v/"),r=n("DPsx"),i=n("glrk"),s=n("wE6v"),u=Object.defineProperty;e.f=a?u:function(t,e,n){if(i(t),e=s(e,!0),i(n),r)try{return u(t,e,n)}catch(a){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},m92n:function(t,e,n){var a=n("glrk");t.exports=function(t,e,n,r){try{return r?e(a(n)[0],n[1]):e(n)}catch(s){var i=t.return;throw void 0!==i&&a(i.call(t)),s}}},mCNh:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var a=n("KqfI");function r(...t){return i(t)}function i(t){return t?1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}:a.a}},mOnh:function(t,e,n){var a=n("nTk+"),r=n("Z2DA"),i=n("MBcj");t.exports=function(t){return a(t,i,r)}},mSOc:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("LvDl"),r=n("2Vo4"),i=n("pLZG"),s=n("SxV6"),u=n("lOp/"),o=n("8Y7J"),l=n("IheW");let d=(()=>{class t{constructor(t,e){this.http=t,this.timerService=e,this.REFRESH_INTERVAL=5e3,this.summaryDataSource=new r.a(null),this.summaryData$=this.summaryDataSource.asObservable()}startPolling(){return this.timerService.get(()=>this.retrieveSummaryObservable(),this.REFRESH_INTERVAL).subscribe(this.retrieveSummaryObserver())}refresh(){return this.retrieveSummaryObservable().subscribe(this.retrieveSummaryObserver())}retrieveSummaryObservable(){return this.http.get("api/summary")}retrieveSummaryObserver(){return t=>{this.summaryDataSource.next(t)}}subscribeOnce(t,e){return this.summaryData$.pipe(Object(i.a)(t=>!!t),Object(s.a)()).subscribe(t,e)}subscribe(t,e){return this.summaryData$.pipe(Object(i.a)(t=>!!t)).subscribe(t,e)}addRunningTask(t){const e=this.summaryDataSource.getValue();e&&(a.isArray(e.executing_tasks)?e.executing_tasks.find(e=>e.name===t.name&&a.isEqual(e.metadata,t.metadata))||e.executing_tasks.push(t):e.executing_tasks=[t],this.summaryDataSource.next(e))}}return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](l.c),o["ɵɵinject"](u.a))},token:t,providedIn:"root"}),t})()},"mWP/":function(t,e,n){var a=n("ktBm");t.exports=function(t){var e=this.__data__,n=a(e,t);return n<0?void 0:e[n][1]}},mXUL:function(t,e,n){"use strict";n.d(e,"a",(function(){return l})),n.d(e,"b",(function(){return c}));var a=n("8Y7J"),r=n("+gVj"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:0,styles:[".invalid-feedback[_ngcontent-%COMP%], .valid-feedback[_ngcontent-%COMP%] {\n        display: block;\n      }"],data:{}});function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(t()(),a["ɵted"](3,null,["",""]))],(function(t,e){t(e,2,0,e.component.className)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function o(t){return a["ɵvid"](0,[(t()(),a["ɵand"](16777216,null,null,1,null,u)),a["ɵdid"](1,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,1,0,e.component.messages())}),null)}var l=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function d(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bfv-messages",[],null,null,null,o,s)),a["ɵdid"](1,49152,null,0,r.e,[r.a],{messages:[0,"messages"]},null)],(function(t,e){t(e,1,0,e.component.messages)}),null)}function c(t){return a["ɵvid"](0,[a["ɵncd"](null,0),(t()(),a["ɵand"](16777216,null,null,1,null,d)),a["ɵdid"](2,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,!e.component.messagesBlock)}),null)}},mfoh:function(t,e,n){"use strict";n.d(e,"a",(function(){return h})),n.d(e,"b",(function(){return p}));var a,r=n("CFvb"),i=n("8rQ2"),s=n.n(i),u=n("eQba"),o=n.n(u),l=n("CUJ1"),d=n.n(l),c=n("h7vy"),f=n.n(c),h={TOGGLE_ACTIVE:function(t,e,n){return e&&e.toggleActivated()},TOGGLE_ACTIVE_MULTI:function(t,e,n){return e&&e.toggleActivated(!0)},TOGGLE_SELECTED:function(t,e,n){return e&&e.toggleSelected()},ACTIVATE:function(t,e,n){return e.setIsActive(!0)},DEACTIVATE:function(t,e,n){return e.setIsActive(!1)},SELECT:function(t,e,n){return e.setIsSelected(!0)},DESELECT:function(t,e,n){return e.setIsSelected(!1)},FOCUS:function(t,e,n){return e.focus()},TOGGLE_EXPANDED:function(t,e,n){return e.hasChildren&&e.toggleExpanded()},EXPAND:function(t,e,n){return e.expand()},COLLAPSE:function(t,e,n){return e.collapse()},DRILL_DOWN:function(t,e,n){return t.focusDrillDown()},DRILL_UP:function(t,e,n){return t.focusDrillUp()},NEXT_NODE:function(t,e,n){return t.focusNextNode()},PREVIOUS_NODE:function(t,e,n){return t.focusPreviousNode()},MOVE_NODE:function(t,e,n,a){var r=a.from,i=a.to;n.ctrlKey?t.copyNode(r,i):t.moveNode(r,i)}},g={mouse:{click:h.TOGGLE_ACTIVE,dblClick:null,contextMenu:null,expanderClick:h.TOGGLE_EXPANDED,checkboxClick:h.TOGGLE_SELECTED,drop:h.MOVE_NODE},keys:(a={},a[r.a.RIGHT]=h.DRILL_DOWN,a[r.a.LEFT]=h.DRILL_UP,a[r.a.DOWN]=h.NEXT_NODE,a[r.a.UP]=h.PREVIOUS_NODE,a[r.a.SPACE]=h.TOGGLE_ACTIVE,a[r.a.ENTER]=h.TOGGLE_ACTIVE,a)},p=function(){function t(t){void 0===t&&(t={}),this.options=t,this.actionMapping=s()({},this.options.actionMapping,g),t.rtl&&(this.actionMapping.keys[r.a.RIGHT]=o()(t,["actionMapping","keys",r.a.RIGHT])||h.DRILL_UP,this.actionMapping.keys[r.a.LEFT]=o()(t,["actionMapping","keys",r.a.LEFT])||h.DRILL_DOWN)}return Object.defineProperty(t.prototype,"hasChildrenField",{get:function(){return this.options.hasChildrenField||"hasChildren"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"childrenField",{get:function(){return this.options.childrenField||"children"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"displayField",{get:function(){return this.options.displayField||"name"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"idField",{get:function(){return this.options.idField||"id"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isExpandedField",{get:function(){return this.options.isExpandedField||"isExpanded"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"getChildren",{get:function(){return this.options.getChildren},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"levelPadding",{get:function(){return this.options.levelPadding||0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"useVirtualScroll",{get:function(){return this.options.useVirtualScroll},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"animateExpand",{get:function(){return this.options.animateExpand},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"animateSpeed",{get:function(){return this.options.animateSpeed||1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"animateAcceleration",{get:function(){return this.options.animateAcceleration||1.2},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollOnActivate",{get:function(){return void 0===this.options.scrollOnActivate||this.options.scrollOnActivate},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"rtl",{get:function(){return!!this.options.rtl},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"rootId",{get:function(){return this.options.rootId},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"useCheckbox",{get:function(){return this.options.useCheckbox},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"useTriState",{get:function(){return void 0===this.options.useTriState||this.options.useTriState},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scrollContainer",{get:function(){return this.options.scrollContainer},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"allowDragoverStyling",{get:function(){return void 0===this.options.allowDragoverStyling||this.options.allowDragoverStyling},enumerable:!0,configurable:!0}),t.prototype.getNodeClone=function(t){return this.options.getNodeClone?this.options.getNodeClone(t):d()(Object.assign({},t.data),["id"])},t.prototype.allowDrop=function(t,e,n){return this.options.allowDrop instanceof Function?this.options.allowDrop(t,e,n):void 0===this.options.allowDrop||this.options.allowDrop},t.prototype.allowDrag=function(t){return this.options.allowDrag instanceof Function?this.options.allowDrag(t):this.options.allowDrag},t.prototype.nodeClass=function(t){return this.options.nodeClass?this.options.nodeClass(t):""},t.prototype.nodeHeight=function(t){if(t.data.virtual)return 0;var e=this.options.nodeHeight||22;return"function"==typeof e&&(e=e(t)),e+(0===t.index?2:1)*this.dropSlotHeight},Object.defineProperty(t.prototype,"dropSlotHeight",{get:function(){return f()(this.options.dropSlotHeight)?this.options.dropSlotHeight:2},enumerable:!0,configurable:!0}),t}()},moLw:function(t,e,n){var a=n("mrSG").__decorate,r=n("mrSG").__metadata;Object.defineProperty(e,"__esModule",{value:!0});var i=n("8Y7J"),s=n("SVse");e.ClickOutsideDirective=function(){function t(t,e,n){this._el=t,this._ngZone=e,this.platformId=n,this.clickOutsideEnabled=!0,this.attachOutsideOnClick=!1,this.delayClickOutsideInit=!1,this.emitOnBlur=!1,this.exclude="",this.excludeBeforeClick=!1,this.clickOutsideEvents="",this.clickOutside=new i.EventEmitter,this._nodesExcluded=[],this._events=["click"],this._initOnClickBody=this._initOnClickBody.bind(this),this._onClickBody=this._onClickBody.bind(this),this._onWindowBlur=this._onWindowBlur.bind(this)}return t.prototype.ngOnInit=function(){s.isPlatformBrowser(this.platformId)&&this._init()},t.prototype.ngOnDestroy=function(){s.isPlatformBrowser(this.platformId)&&(this._removeClickOutsideListener(),this._removeAttachOutsideOnClickListener(),this._removeWindowBlurListener())},t.prototype.ngOnChanges=function(t){s.isPlatformBrowser(this.platformId)&&(t.attachOutsideOnClick||t.exclude||t.emitOnBlur)&&this._init()},t.prototype._init=function(){""!==this.clickOutsideEvents&&(this._events=this.clickOutsideEvents.split(",").map((function(t){return t.trim()}))),this._excludeCheck(),this.attachOutsideOnClick?this._initAttachOutsideOnClickListener():this._initOnClickBody(),this.emitOnBlur&&this._initWindowBlurListener()},t.prototype._initOnClickBody=function(){this.delayClickOutsideInit?setTimeout(this._initClickOutsideListener.bind(this)):this._initClickOutsideListener()},t.prototype._excludeCheck=function(){if(this.exclude)try{var t=Array.from(document.querySelectorAll(this.exclude));t&&(this._nodesExcluded=t)}catch(e){console.error("[ng-click-outside] Check your exclude selector syntax.",e)}},t.prototype._onClickBody=function(t){this.clickOutsideEnabled&&(this.excludeBeforeClick&&this._excludeCheck(),this._el.nativeElement.contains(t.target)||this._shouldExclude(t.target)||(this._emit(t),this.attachOutsideOnClick&&this._removeClickOutsideListener()))},t.prototype._onWindowBlur=function(t){var e=this;setTimeout((function(){document.hidden||e._emit(t)}))},t.prototype._emit=function(t){var e=this;this.clickOutsideEnabled&&this._ngZone.run((function(){return e.clickOutside.emit(t)}))},t.prototype._shouldExclude=function(t){for(var e=0,n=this._nodesExcluded;e<n.length;e++)if(n[e].contains(t))return!0;return!1},t.prototype._initClickOutsideListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){t._events.forEach((function(e){return document.addEventListener(e,t._onClickBody)}))}))},t.prototype._removeClickOutsideListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){t._events.forEach((function(e){return document.removeEventListener(e,t._onClickBody)}))}))},t.prototype._initAttachOutsideOnClickListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){t._events.forEach((function(e){return t._el.nativeElement.addEventListener(e,t._initOnClickBody)}))}))},t.prototype._removeAttachOutsideOnClickListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){t._events.forEach((function(e){return t._el.nativeElement.removeEventListener(e,t._initOnClickBody)}))}))},t.prototype._initWindowBlurListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){window.addEventListener("blur",t._onWindowBlur)}))},t.prototype._removeWindowBlurListener=function(){var t=this;this._ngZone.runOutsideAngular((function(){window.removeEventListener("blur",t._onWindowBlur)}))},a([i.Input(),r("design:type",Boolean)],t.prototype,"clickOutsideEnabled",void 0),a([i.Input(),r("design:type",Boolean)],t.prototype,"attachOutsideOnClick",void 0),a([i.Input(),r("design:type",Boolean)],t.prototype,"delayClickOutsideInit",void 0),a([i.Input(),r("design:type",Boolean)],t.prototype,"emitOnBlur",void 0),a([i.Input(),r("design:type",String)],t.prototype,"exclude",void 0),a([i.Input(),r("design:type",Boolean)],t.prototype,"excludeBeforeClick",void 0),a([i.Input(),r("design:type",String)],t.prototype,"clickOutsideEvents",void 0),a([i.Output(),r("design:type",i.EventEmitter)],t.prototype,"clickOutside",void 0),a([i.Injectable(),i.Directive({selector:"[clickOutside]"})],t)}()},mrSG:function(t,e,n){"use strict";n.r(e),n.d(e,"__extends",(function(){return r})),n.d(e,"__assign",(function(){return i})),n.d(e,"__rest",(function(){return s})),n.d(e,"__decorate",(function(){return u})),n.d(e,"__param",(function(){return o})),n.d(e,"__metadata",(function(){return l})),n.d(e,"__awaiter",(function(){return d})),n.d(e,"__generator",(function(){return c})),n.d(e,"__exportStar",(function(){return f})),n.d(e,"__values",(function(){return h})),n.d(e,"__read",(function(){return g})),n.d(e,"__spread",(function(){return p})),n.d(e,"__spreadArrays",(function(){return b})),n.d(e,"__await",(function(){return m})),n.d(e,"__asyncGenerator",(function(){return y})),n.d(e,"__asyncDelegator",(function(){return v})),n.d(e,"__asyncValues",(function(){return x})),n.d(e,"__makeTemplateObject",(function(){return _})),n.d(e,"__importStar",(function(){return T})),n.d(e,"__importDefault",(function(){return w})),n.d(e,"__classPrivateFieldGet",(function(){return O})),n.d(e,"__classPrivateFieldSet",(function(){return S}));var a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function r(t,e){function n(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var i=function(){return(i=Object.assign||function(t){for(var e,n=1,a=arguments.length;n<a;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function s(t,e){var n={};for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&e.indexOf(a)<0&&(n[a]=t[a]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(t);r<a.length;r++)e.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(t,a[r])&&(n[a[r]]=t[a[r]])}return n}function u(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}function o(t,e){return function(n,a){e(n,a,t)}}function l(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function d(t,e,n,a){return new(n||(n=Promise))((function(r,i){function s(t){try{o(a.next(t))}catch(e){i(e)}}function u(t){try{o(a.throw(t))}catch(e){i(e)}}function o(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(s,u)}o((a=a.apply(t,e||[])).next())}))}function c(t,e){var n,a,r,i,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,a&&(r=2&i[0]?a.return:i[0]?a.throw||((r=a.return)&&r.call(a),0):a.next)&&!(r=r.call(a,i[1])).done)return r;switch(a=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,a=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!((r=(r=s.trys).length>0&&r[r.length-1])||6!==i[0]&&2!==i[0])){s=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){s.label=i[1];break}if(6===i[0]&&s.label<r[1]){s.label=r[1],r=i;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(i);break}r[2]&&s.ops.pop(),s.trys.pop();continue}i=e.call(t,s)}catch(u){i=[6,u],a=0}finally{n=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,u])}}}function f(t,e){for(var n in t)e.hasOwnProperty(n)||(e[n]=t[n])}function h(t){var e="function"==typeof Symbol&&Symbol.iterator,n=e&&t[e],a=0;if(n)return n.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&a>=t.length&&(t=void 0),{value:t&&t[a++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function g(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var a,r,i=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(a=i.next()).done;)s.push(a.value)}catch(u){r={error:u}}finally{try{a&&!a.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return s}function p(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(g(arguments[e]));return t}function b(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var a=Array(t),r=0;for(e=0;e<n;e++)for(var i=arguments[e],s=0,u=i.length;s<u;s++,r++)a[r]=i[s];return a}function m(t){return this instanceof m?(this.v=t,this):new m(t)}function y(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var a,r=n.apply(t,e||[]),i=[];return a={},s("next"),s("throw"),s("return"),a[Symbol.asyncIterator]=function(){return this},a;function s(t){r[t]&&(a[t]=function(e){return new Promise((function(n,a){i.push([t,e,n,a])>1||u(t,e)}))})}function u(t,e){try{!function(t){t.value instanceof m?Promise.resolve(t.value.v).then(o,l):d(i[0][2],t)}(r[t](e))}catch(n){d(i[0][3],n)}}function o(t){u("next",t)}function l(t){u("throw",t)}function d(t,e){t(e),i.shift(),i.length&&u(i[0][0],i[0][1])}}function v(t){var e,n;return e={},a("next"),a("throw",(function(t){throw t})),a("return"),e[Symbol.iterator]=function(){return this},e;function a(a,r){e[a]=t[a]?function(e){return(n=!n)?{value:m(t[a](e)),done:"return"===a}:r?r(e):e}:r}}function x(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t=h(t),e={},a("next"),a("throw"),a("return"),e[Symbol.asyncIterator]=function(){return this},e);function a(n){e[n]=t[n]&&function(e){return new Promise((function(a,r){!function(t,e,n,a){Promise.resolve(a).then((function(e){t({value:e,done:n})}),e)}(a,r,(e=t[n](e)).done,e.value)}))}}}function _(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function T(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}function w(t){return t&&t.__esModule?t:{default:t}}function O(t,e){if(!e.has(t))throw new TypeError("attempted to get private field on non-instance");return e.get(t)}function S(t,e,n){if(!e.has(t))throw new TypeError("attempted to set private field on non-instance");return e.set(t,n),n}},mtw6:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a=function(t){return t[t.error=0]="error",t[t.info=1]="info",t[t.success=2]="success",t}({})},"n/D3":function(t,e,n){"use strict";n.d(e,"a",(function(){return f})),n.d(e,"b",(function(){return c}));var a=n("cp0P"),r=(n("SgmB"),n("ZDA6"),n("+fVR")),i=n("0+/T"),s=n("Rf2I"),u=(n("sne2"),n("x38r")),o=n("oxzT"),l=n("mtw6"),d=n("vCyI");n("nSDx"),n("aexS"),n("9nlD");const c=new(n("EgGo").a)("user-management/roles");class f extends r.a{constructor(t,e,n,a,r,i,s,u,l){super(),this.roleService=t,this.scopeService=e,this.emptyPipe=n,this.authStorageService=a,this.modalService=r,this.notificationService=i,this.i18n=s,this.urlBuilder=u,this.actionLabels=l,this.selection=new d.a,this.permission=this.authStorageService.getPermissions().user,this.tableActions=[{permission:"create",icon:o.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE},{permission:"create",icon:o.a.clone,name:this.actionLabels.CLONE,disable:()=>!this.selection.hasSingleSelection,click:()=>this.cloneRole()},{permission:"update",icon:o.a.edit,disable:()=>!this.selection.hasSingleSelection||this.selection.first().system,routerLink:()=>this.selection.first()&&this.urlBuilder.getEdit(this.selection.first().name),name:this.actionLabels.EDIT},{permission:"delete",icon:o.a.destroy,disable:()=>!this.selection.hasSingleSelection||this.selection.first().system,click:()=>this.deleteRoleModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"name",flexGrow:3},{name:this.i18n("Description"),prop:"description",flexGrow:5,pipe:this.emptyPipe},{name:this.i18n("System Role"),prop:"system",cellClass:"text-center",flexGrow:1,cellTransformation:u.a.checkIcon}]}getRoles(){Object(a.a)([this.roleService.list(),this.scopeService.list()]).subscribe(t=>{this.roles=t[0],this.scopes=t[1]})}updateSelection(t){this.selection=t}deleteRole(t){this.roleService.delete(t).subscribe(()=>{this.getRoles(),this.modalRef.hide(),this.notificationService.show(l.a.success,this.i18n("Deleted role '{{role_name}}'",{role_name:t}))},()=>{this.modalRef.content.stopLoadingSpinner()})}deleteRoleModal(){const t=this.selection.first().name;this.modalRef=this.modalService.show(i.a,{initialState:{itemDescription:"Role",itemNames:[t],submitAction:()=>this.deleteRole(t)}})}cloneRole(){const t=this.selection.first().name;this.modalRef=this.modalService.show(s.a,{initialState:{fields:[{type:"text",name:"newName",value:t+"_clone",label:this.i18n("New name"),required:!0}],titleText:this.i18n("Clone Role"),submitButtonText:this.i18n("Clone Role"),onSubmit:e=>{this.roleService.clone(t,e.newName).subscribe(()=>{this.getRoles(),this.notificationService.show(l.a.success,this.i18n("Cloned role '{{dst_name}}' from '{{src_name}}'",{src_name:t,dst_name:e.newName}))})}}})}}},"n3/R":function(t,e,n){"use strict";var a=n("0Dky");function r(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=a((function(){var t=r("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=a((function(){var t=r("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},n6bG:function(t,e,n){"use strict";function a(t){return"function"==typeof t}n.d(e,"a",(function(){return a}))},n9Vz:function(t,e,n){var a=n("Yj/I")(n("xdB7"));t.exports=a},nC65:function(t,e,n){var a=n("kXVT"),r=n("FGWQ");t.exports=function(t){for(var e=r(t),n=e.length;n--;){var i=e[n],s=t[i];e[n]=[i,s,a(s)]}return e}},nSDx:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t){return a.isUndefined(t)||a.isNull(t)?"-":t}}},"nTk+":function(t,e,n){var a=n("vJUC"),r=n("0GLT");t.exports=function(t,e,n){var i=e(t);return r(t)?i:a(i,n(t))}},nYR2:function(t,e,n){"use strict";n.d(e,"a",(function(){return i}));var a=n("7o/Q"),r=n("quSY");function i(t){return e=>e.lift(new s(t))}class s{constructor(t){this.callback=t}call(t,e){return e.subscribe(new u(t,this.callback))}}class u extends a.a{constructor(t,e){super(t),this.add(new r.a(e))}}},ngJS:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=t=>e=>{for(let n=0,a=t.length;n<a&&!e.closed;n++)e.next(t[n]);e.complete()}},ntOU:function(t,e,n){"use strict";var a=n("rpNk").IteratorPrototype,r=n("fHMY"),i=n("XGwC"),s=n("1E5z"),u=n("P4y1"),o=function(){return this};t.exports=function(t,e,n){var l=e+" Iterator";return t.prototype=r(a,{next:i(1,n)}),s(t,l,!1,!0),u[l]=o,t}},ntis:function(t,e){t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},nyYc:function(t,e,n){!function(t){"use strict";t.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal:function(t,e){switch(e){case"D":return t+(1===t?"er":"");default:case"M":case"Q":case"DDD":case"d":return t+(1===t?"er":"e");case"w":case"W":return t+(1===t?"re":"e")}},week:{dow:1,doy:4}})}(n("wd/R"))},o1bE:function(t,e,n){!function(t){"use strict";t.defineLocale("ar-dz",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"أح_إث_ثلا_أر_خم_جم_سب".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",ss:"%d ثانية",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:0,doy:4}})}(n("wd/R"))},o3PY:function(t,e){t.exports=function(){this.__data__=[],this.size=0}},"o4+5":function(t,e,n){"use strict";n.d(e,"a",(function(){return a})),n("aXbf");class a{constructor(t){this.formatter=t}transform(t){return this.formatter.format_number(t,1e3,["","k","M","G","T","P","E","Z","Y"])}}},o8EM:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("PhyI"),r=n("8Y7J"),i=n("GiVz");let s=(()=>{class t{constructor(t){this.i18n=t,this.sections=[{heading:this.i18n("Quality of Service"),class:"quality-of-service",options:[{name:"rbd_qos_bps_limit",displayName:this.i18n("BPS Limit"),description:this.i18n("The desired limit of IO bytes per second."),type:a.b.bps},{name:"rbd_qos_iops_limit",displayName:this.i18n("IOPS Limit"),description:this.i18n("The desired limit of IO operations per second."),type:a.b.iops},{name:"rbd_qos_read_bps_limit",displayName:this.i18n("Read BPS Limit"),description:this.i18n("The desired limit of read bytes per second."),type:a.b.bps},{name:"rbd_qos_read_iops_limit",displayName:this.i18n("Read IOPS Limit"),description:this.i18n("The desired limit of read operations per second."),type:a.b.iops},{name:"rbd_qos_write_bps_limit",displayName:this.i18n("Write BPS Limit"),description:this.i18n("The desired limit of write bytes per second."),type:a.b.bps},{name:"rbd_qos_write_iops_limit",displayName:this.i18n("Write IOPS Limit"),description:this.i18n("The desired limit of write operations per second."),type:a.b.iops},{name:"rbd_qos_bps_burst",displayName:this.i18n("BPS Burst"),description:this.i18n("The desired burst limit of IO bytes."),type:a.b.bps},{name:"rbd_qos_iops_burst",displayName:this.i18n("IOPS Burst"),description:this.i18n("The desired burst limit of IO operations."),type:a.b.iops},{name:"rbd_qos_read_bps_burst",displayName:this.i18n("Read BPS Burst"),description:this.i18n("The desired burst limit of read bytes."),type:a.b.bps},{name:"rbd_qos_read_iops_burst",displayName:this.i18n("Read IOPS Burst"),description:this.i18n("The desired burst limit of read operations."),type:a.b.iops},{name:"rbd_qos_write_bps_burst",displayName:this.i18n("Write BPS Burst"),description:this.i18n("The desired burst limit of write bytes."),type:a.b.bps},{name:"rbd_qos_write_iops_burst",displayName:this.i18n("Write IOPS Burst"),description:this.i18n("The desired burst limit of write operations."),type:a.b.iops}]}]}static getOptionsFromSections(t){return t.map(t=>t.options).reduce((t,e)=>t.concat(e))}filterConfigOptionsByName(e){return t.getOptionsFromSections(this.sections).filter(t=>t.name===e)}getOptionValueByName(t,e,n=""){const a=this.filterConfigOptionsByName(t);return 1===a.length?a.pop()[e]:n}getWritableSections(){return this.sections.map(t=>(t.options=t.options.filter(t=>!t.readOnly),t))}getOptionFields(){return t.getOptionsFromSections(this.sections)}getWritableOptionFields(){return t.getOptionsFromSections(this.getWritableSections())}getOptionByName(t){return this.filterConfigOptionsByName(t).pop()}getDisplayName(t){return this.getOptionValueByName(t,"displayName")}getDescription(t){return this.getOptionValueByName(t,"description")}}return t.ngInjectableDef=r["ɵɵdefineInjectable"]({factory:function(){return new t(r["ɵɵinject"](i.a))},token:t,providedIn:"root"}),t})()},oMSZ:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this.pwdExpirationSpan=0,this.pwdExpirationSpan=t.user_pwd_expiration_span,this.pwdExpirationWarning1=t.user_pwd_expiration_warning_1,this.pwdExpirationWarning2=t.user_pwd_expiration_warning_2}}},oRml:function(t,e,n){var a=n("LaC8"),r=n("KNDS"),i=n("x3F9"),s={};s["[object Float32Array]"]=s["[object Float64Array]"]=s["[object Int8Array]"]=s["[object Int16Array]"]=s["[object Int32Array]"]=s["[object Uint8Array]"]=s["[object Uint8ClampedArray]"]=s["[object Uint16Array]"]=s["[object Uint32Array]"]=!0,s["[object Arguments]"]=s["[object Array]"]=s["[object ArrayBuffer]"]=s["[object Boolean]"]=s["[object DataView]"]=s["[object Date]"]=s["[object Error]"]=s["[object Function]"]=s["[object Map]"]=s["[object Number]"]=s["[object Object]"]=s["[object RegExp]"]=s["[object Set]"]=s["[object String]"]=s["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&r(t.length)&&!!s[a(t)]}},oxzT:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a=function(t){return t.add="fa fa-plus",t.addCircle="fa fa-plus-circle",t.minusCircle="fa fa-minus-circle",t.edit="fa fa-pencil",t.destroy="fa fa-times",t.destroyCircle="fa fa-times-circle",t.exchange="fa fa-exchange",t.copy="fa fa-copy",t.clipboard="fa fa-clipboard",t.flatten="fa fa-chain-broken",t.trash="fa fa-trash-o",t.lock="fa fa-lock",t.unlock="fa fa-unlock",t.clone="fa fa-clone",t.undo="fa fa-undo",t.search="fa fa-search",t.start="fa fa-play",t.stop="fa fa-stop",t.analyse="fa fa-stethoscope",t.deepCheck="fa fa-cog",t.reweight="fa fa-balance-scale",t.left="fa fa-arrow-left",t.right="fa fa-arrow-right",t.down="fa fa-arrow-down",t.erase="fa fa-eraser",t.user="fa fa-user",t.users="fa fa-users",t.share="fa fa-share-alt",t.key="fa fa-key-modern",t.warning="fa fa-exclamation-triangle",t.info="fa fa-info",t.infoCircle="fa fa-info-circle",t.questionCircle="fa fa-question-circle-o",t.check="fa fa-check",t.show="fa fa-eye",t.paragraph="fa fa-paragraph",t.terminal="fa fa-terminal",t.magic="fa fa-magic",t.hourglass="fa fa-hourglass-o",t.filledHourglass="fa fa-hourglass",t.table="fa fa-table",t.spinner="fa fa-spinner",t.refresh="fa fa-refresh",t.bullseye="fa fa-bullseye",t.disk="fa fa-hdd-o",t.server="fa fa-server",t.filter="fa fa-filter",t.lineChart="fa fa-line-chart",t.signOut="fa fa-sign-out",t.health="fa fa-heartbeat",t.circle="fa fa-circle",t.bell="fa fa-bell",t.tag="fa fa-tag",t.leftArrow="fa fa-angle-left",t.rightArrow="fa fa-angle-right",t.leftArrowDouble="fa fa-angle-double-left",t.rightArrowDouble="fa fa-angle-double-right",t.flag="fa fa-flag",t.clearFilters="fa fa-window-close",t.download="fa fa-download",t.upload="fa fa-upload",t.large="fa fa-lg",t.large2x="fa fa-2x",t.large3x="fa fa-3x",t.stack="fa fa-stack",t.stack1x="fa fa-stack-1x",t.stack2x="fa fa-stack-2x",t.pulse="fa fa-pulse",t.spin="fa fa-spin",t.inverse="fa fa-inverse",t}({})},"p/rL":function(t,e,n){!function(t){"use strict";t.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des".split("_"),weekdays:"Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib".split("_"),weekdaysMin:"Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM [tile] D [san] YYYY",LLL:"MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm"},calendar:{sameDay:"[Bi lɛrɛ] LT",nextDay:"[Sini lɛrɛ] LT",nextWeek:"dddd [don lɛrɛ] LT",lastDay:"[Kunu lɛrɛ] LT",lastWeek:"dddd [tɛmɛnen lɛrɛ] LT",sameElse:"L"},relativeTime:{future:"%s kɔnɔ",past:"a bɛ %s bɔ",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"lɛrɛ kelen",hh:"lɛrɛ %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}})}(n("wd/R"))},p33Q:function(t,e,n){var a=n("5itS"),r=n("qeWI"),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!a(t))return r(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},p4Cf:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("oxzT");class r{constructor(){this.icons=a.a}}},pKUh:function(t,e,n){"use strict";n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return l}));var a=n("8Y7J"),r=n("2ZVE"),i=n("SVse"),s=a["ɵcrt"]({encapsulation:0,styles:["[_nghost-%COMP%]   .nav-tabs[_ngcontent-%COMP%]   .nav-item.disabled[_ngcontent-%COMP%]   a.disabled[_ngcontent-%COMP%]{cursor:default}"],data:{}});function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"span",[["class","bs-remove-tab"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(n.preventDefault(),a=!1!==r.removeTab(t.parent.context.$implicit)&&a),a}),null,null)),(t()(),a["ɵted"](-1,null,[" ❌"]))],null,null)}function o(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,9,"li",[],[[2,"active",null],[2,"disabled",null]],[[null,"keydown"]],(function(t,e,n){var a=!0;return"keydown"===e&&(a=!1!==t.component.keyNavActions(n,t.context.index)&&a),a}),null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](3,2),(t()(),a["ɵeld"](4,0,null,null,5,"a",[["class","nav-link"],["href","javascript:void(0);"],["role","tab"]],[[1,"aria-controls",0],[1,"aria-selected",0],[1,"id",0],[2,"active",null],[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=0!=(t.context.$implicit.active=!0)&&a),a}),null,null)),(t()(),a["ɵeld"](5,16777216,null,null,2,"span",[],null,null,null,null,null)),a["ɵdid"](6,16384,null,0,r.a,[a.ViewContainerRef],{ngTransclude:[0,"ngTransclude"]},null),(t()(),a["ɵted"](7,null,["",""])),(t()(),a["ɵand"](16777216,null,null,1,null,u)),a["ɵdid"](9,16384,null,0,i.NgIf,[a.ViewContainerRef,a.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=t(e,3,0,"nav-item",e.context.$implicit.customClass||"");t(e,2,0,n),t(e,6,0,e.context.$implicit.headingRef),t(e,9,0,e.context.$implicit.removable)}),(function(t,e){t(e,0,0,e.context.$implicit.active,e.context.$implicit.disabled),t(e,4,0,e.context.$implicit.id?e.context.$implicit.id:"",!!e.context.$implicit.active,e.context.$implicit.id?e.context.$implicit.id+"-link":"",e.context.$implicit.active,e.context.$implicit.disabled),t(e,7,0,e.context.$implicit.heading)}))}function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,4,"ul",[["class","nav"],["role","tablist"]],[[1,"aria-label",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==n.preventDefault()&&a),a}),null,null)),a["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),a["ɵand"](16777216,null,null,1,null,o)),a["ɵdid"](4,278528,null,0,i.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),a["ɵeld"](5,0,null,null,1,"div",[["class","tab-content"]],null,null,null,null,null)),a["ɵncd"](null,0)],(function(t,e){var n=e.component;t(e,2,0,"nav",n.classMap),t(e,4,0,n.tabs)}),(function(t,e){t(e,0,0,e.component.ariaLabel)}))}},pL04:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},pLZG:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t,e){return function(n){return n.lift(new i(t,e))}}class i{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new s(t,this.predicate,this.thisArg))}}class s extends a.a{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}},pMcL:function(t,e,n){var a=n("Wa4q");t.exports=a.Symbol},pMnS:function(t,e,n){"use strict";n.d(e,"a",(function(){return o}));var a=n("8Y7J"),r=n("iInd"),i=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function s(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),a["ɵdid"](1,212992,null,0,r.r,[r.b,a.ViewContainerRef,a.ComponentFactoryResolver,[8,null],a.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"ng-component",[],null,null,null,s,i)),a["ɵdid"](1,49152,null,0,r.F,[],null,null)],null,null)}var o=a["ɵccf"]("ng-component",r.F,u,{},{},[])},pYKc:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("WiuZ"),s=n("wnGv"),u=n("GiVz");n("ppaS"),n.d(e,"a",(function(){return o})),n.d(e,"b",(function(){return d}));var o=a["ɵcrt"]({encapsulation:0,styles:[[".badge-remove[_ngcontent-%COMP%]{color:#fff}i.fa-pencil[_ngcontent-%COMP%]{font-size:1.1rem}"]],data:{}});function l(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,8,"span",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,7,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"span",[["class","mr-2"]],null,null,null,null,null)),(t()(),a["ɵted"](3,null,["",""])),(t()(),a["ɵeld"](4,0,null,null,4,"a",[["class","badge-remove"]],null,[[null,"click"]],(function(t,e,n){var r=!0;return"click"===e&&(r=!1!==a["ɵnov"](t.parent,2).removeItem(t.context.$implicit)&&r),r}),null,null)),(t()(),a["ɵeld"](5,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](7,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](8,1)],(function(t,e){var n=t(e,8,0,e.component.icons.destroy);t(e,7,0,n)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function d(t){return a["ɵvid"](0,[a["ɵqud"](402653184,1,{cdSelect:0}),(t()(),a["ɵeld"](1,0,null,null,5,"cd-select",[["elemClass","mr-2 select-menu-edit"]],null,[[null,"selection"]],(function(t,e,n){var a=!0;return"selection"===e&&(a=!1!==t.component.selection.emit(n)&&a),a}),i.b,i.a)),a["ɵdid"](2,638976,[[1,4],["cdSelect",4]],0,s.a,[u.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"],selectionLimit:[4,"selectionLimit"],customBadges:[5,"customBadges"],customBadgeValidators:[6,"customBadgeValidators"]},{selection:"selection"}),(t()(),a["ɵeld"](3,0,null,0,3,"i",[],null,null,null,null,null)),a["ɵprd"](512,null,r["ɵNgClassImpl"],r["ɵNgClassR2Impl"],[a.IterableDiffers,a.KeyValueDiffers,a.ElementRef,a.Renderer2]),a["ɵdid"](5,278528,null,0,r.NgClass,[r["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),a["ɵpad"](6,1),(t()(),a["ɵand"](16777216,null,null,1,null,l)),a["ɵdid"](8,278528,null,0,r.NgForOf,[a.ViewContainerRef,a.TemplateRef,a.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,2,0,"mr-2 select-menu-edit",n.data,n.options,n.messages,n.selectionLimit,n.customBadges,n.customBadgeValidators);var a=t(e,6,0,n.icons.edit);t(e,5,0,a),t(e,8,0,n.data)}),null)}},pYe4:function(t,e,n){var a=n("77kF"),r=n("MBcj");t.exports=function(t,e){return t&&a(e,r(e),t)}},pcHL:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Object)],t.prototype,"templates",void 0),i([Object(a.Component)({selector:"tree-node-children",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <div\n        [class.tree-children]="true"\n        [class.tree-children-no-padding]="node.options.levelPadding"\n        *treeAnimateOpen="\n          node.isExpanded;\n          speed: node.options.animateSpeed;\n          acceleration: node.options.animateAcceleration;\n          enabled: node.options.animateExpand\n        "\n      >\n        <tree-node-collection\n          *ngIf="node.children"\n          [nodes]="node.children"\n          [templates]="templates"\n          [treeModel]="node.treeModel"\n        >\n        </tree-node-collection>\n        <tree-loading-component\n          [style.padding-left]="node.getNodePadding()"\n          class="tree-node-loading"\n          *ngIf="!node.children"\n          [template]="templates.loadingTemplate"\n          [node]="node"\n        ></tree-loading-component>\n      </div>\n    </ng-container>\n  '})],t)}()},pcUq:function(t,e,n){var a=n("R6RA"),r=n("+FhV"),i=n("5itS");t.exports=function(t){return"function"!=typeof t.constructor||i(t)?{}:a(r(t))}},pkCn:function(t,e,n){"use strict";var a=n("0Dky");t.exports=function(t,e){var n=[][t];return!!n&&a((function(){n.call(null,e||function(){throw 1},1)}))}},pmjB:function(t,e,n){var a=n("RBUI"),r=n("PHub"),i=n("0GLT"),s=n("y/5f"),u=n("Uies"),o=n("uPDw"),l=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=i(t),d=!n&&r(t),c=!n&&!d&&s(t),f=!n&&!d&&!c&&o(t),h=n||d||c||f,g=h?a(t.length,String):[],p=g.length;for(var b in t)!e&&!l.call(t,b)||h&&("length"==b||c&&("offset"==b||"parent"==b)||f&&("buffer"==b||"byteLength"==b||"byteOffset"==b)||u(b,p))||g.push(b);return g}},ppGB:function(t,e){var n=Math.ceil,a=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?a:n)(t)}},ppaS:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("8Y7J"),r=n("oxzT"),i=n("DNAf");n("wnGv");class s{constructor(t){this.i18n=t,this.data=[],this.options=[],this.messages=new i.a({},this.i18n),this.customBadges=!1,this.customBadgeValidators=[],this.selection=new a.EventEmitter,this.icons=r.a}}},pxLl:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("mrSG"),r=n("IheW"),i=n("LRne"),s=n("5+tZ"),u=n("xTzq"),o=n("8Y7J"),l=n("pL04");let d=(()=>{let t=class{constructor(t){this.http=t,this.url="api/perf_counters"}list(){return this.http.get(this.url)}get(t,e){return this.http.get(`${this.url}/${t}/${e}`).pipe(Object(s.a)(t=>Object(i.a)(t.counters)))}};return t.ngInjectableDef=o["ɵɵdefineInjectable"]({factory:function(){return new t(o["ɵɵinject"](r.c))},token:t,providedIn:l.a}),t=a.__decorate([u.a,a.__metadata("design:paramtypes",[r.c])],t),t})()},pxpQ:function(t,e,n){"use strict";n.d(e,"b",(function(){return i})),n.d(e,"a",(function(){return u}));var a=n("7o/Q"),r=n("WMd4");function i(t,e=0){return function(n){return n.lift(new s(t,e))}}class s{constructor(t,e=0){this.scheduler=t,this.delay=e}call(t,e){return e.subscribe(new u(t,this.scheduler,this.delay))}}class u extends a.a{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(u.dispatch,this.delay,new o(t,this.destination)))}_next(t){this.scheduleMessage(r.a.createNext(t))}_error(t){this.scheduleMessage(r.a.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(r.a.createComplete()),this.unsubscribe()}}class o{constructor(t,e){this.notification=t,this.destination=e}}},qG07:function(t,e,n){var a=n("bWnS"),r=n("ntis"),i=n("U02d"),s=n("XFPk"),u=n("J3wx");function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}o.prototype.clear=a,o.prototype.delete=r,o.prototype.get=i,o.prototype.has=s,o.prototype.set=u,t.exports=o},qN6l:function(t,e,n){var a=n("KFwg")(Object,"create");t.exports=a},qeWI:function(t,e,n){var a=n("IMTC")(Object.keys,Object);t.exports=a},qgXg:function(t,e,n){"use strict";var a=n("3N8a");class r extends a.a{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}var i=n("IjjT");class s extends i.a{}n.d(e,"a",(function(){return u}));const u=new s(r)},qjN6:function(t,e,n){var a=n("KFwg")(n("Wa4q"),"Set");t.exports=a},qjUL:function(t,e,n){var a=n("M+Mf"),r=n("ZY2H")((function(t,e,n,r){a(t,e,n,r)}));t.exports=r},quSY:function(t,e,n){"use strict";var a=n("DH7j"),r=n("XoHu"),i=n("n6bG");const s=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n  ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();n.d(e,"a",(function(){return u}));let u=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:u,_subscriptions:l}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;t<n.length;++t)n[t].remove(this);if(Object(i.a)(u))try{u.call(this)}catch(d){e=d instanceof s?o(d.errors):[d]}if(Object(a.a)(l)){let t=-1,n=l.length;for(;++t<n;){const n=l[t];if(Object(r.a)(n))try{n.unsubscribe()}catch(d){e=e||[],d instanceof s?e=e.concat(o(d.errors)):e.push(d)}}}if(e)throw new s(e)}add(e){let n=e;if(!e)return t.EMPTY;switch(typeof e){case"function":n=new t(e);case"object":if(n===this||n.closed||"function"!=typeof n.unsubscribe)return n;if(this.closed)return n.unsubscribe(),n;if(!(n instanceof t)){const e=n;n=new t,n._subscriptions=[e]}break;default:throw new Error("unrecognized teardown "+e+" added to Subscription.")}let{_parentOrParents:a}=n;if(null===a)n._parentOrParents=this;else if(a instanceof t){if(a===this)return n;n._parentOrParents=[a,this]}else{if(-1!==a.indexOf(this))return n;a.push(this)}const r=this._subscriptions;return null===r?this._subscriptions=[n]:r.push(n),n}remove(t){const e=this._subscriptions;if(e){const n=e.indexOf(t);-1!==n&&e.splice(n,1)}}}var e;return t.EMPTY=((e=new t).closed=!0,e),t})();function o(t){return t.reduce((t,e)=>t.concat(e instanceof s?e.errors:e),[])}},"qwH+":function(t,e,n){var a=n("dX5L"),r=n("Gf4A"),i=n("BJMh"),s=n("qjN6"),u=n("0BcO"),o=n("LaC8"),l=n("+xYL"),d=l(a),c=l(r),f=l(i),h=l(s),g=l(u),p=o;(a&&"[object DataView]"!=p(new a(new ArrayBuffer(1)))||r&&"[object Map]"!=p(new r)||i&&"[object Promise]"!=p(i.resolve())||s&&"[object Set]"!=p(new s)||u&&"[object WeakMap]"!=p(new u))&&(p=function(t){var e=o(t),n="[object Object]"==e?t.constructor:void 0,a=n?l(n):"";if(a)switch(a){case d:return"[object DataView]";case c:return"[object Map]";case f:return"[object Promise]";case h:return"[object Set]";case g:return"[object WeakMap]"}return e}),t.exports=p},qzZ1:function(t,e){var n="object"==typeof global&&global&&global.Object===Object&&global;t.exports=n},"r2+u":function(t,e,n){var a=n("qwH+"),r=n("x3F9");t.exports=function(t){return r(t)&&"[object Map]"==a(t)}},r467:function(t,e,n){var a=n("Q7RW"),r=n("JTPl"),i=n("hmSm"),s=n("+xYL"),u=/^\[object .+?Constructor\]$/,o=RegExp("^"+Function.prototype.toString.call(Object.prototype.hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||r(t))&&(a(t)?o:u).test(s(t))}},rB9j:function(t,e,n){"use strict";var a=n("I+eb"),r=n("kmMV");a({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},rKzb:function(t,e,n){"use strict";var a=n("4syw"),r=n("8YOa").getWeakData,i=n("glrk"),s=n("hh1v"),u=n("GarU"),o=n("ImZN"),l=n("tycR"),d=n("UTVS"),c=n("afO8"),f=c.set,h=c.getterFor,g=l.find,p=l.findIndex,b=0,m=function(t){return t.frozen||(t.frozen=new y)},y=function(){this.entries=[]},v=function(t,e){return g(t.entries,(function(t){return t[0]===e}))};y.prototype={get:function(t){var e=v(this,t);if(e)return e[1]},has:function(t){return!!v(this,t)},set:function(t,e){var n=v(this,t);n?n[1]=e:this.entries.push([t,e])},delete:function(t){var e=p(this.entries,(function(e){return e[0]===t}));return~e&&this.entries.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,n,l){var c=t((function(t,a){u(t,c,e),f(t,{type:e,id:b++,frozen:void 0}),null!=a&&o(a,t[l],t,n)})),g=h(e),p=function(t,e,n){var a=g(t),s=r(i(e),!0);return!0===s?m(a).set(e,n):s[a.id]=n,t};return a(c.prototype,{delete:function(t){var e=g(this);if(!s(t))return!1;var n=r(t);return!0===n?m(e).delete(t):n&&d(n,e.id)&&delete n[e.id]},has:function(t){var e=g(this);if(!s(t))return!1;var n=r(t);return!0===n?m(e).has(t):n&&d(n,e.id)}}),a(c.prototype,n?{get:function(t){var e=g(this);if(s(t)){var n=r(t);return!0===n?m(e).get(t):n?n[e.id]:void 0}},set:function(t,e){return p(this,t,e)}}:{add:function(t){return p(this,t,!0)}}),c}}},rW0t:function(t,e,n){"use strict";var a=n("glrk");t.exports=function(){var t=a(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},rZud:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Number)],t.prototype,"index",void 0),i([Object(a.Input)(),s("design:type",a.TemplateRef)],t.prototype,"template",void 0),i([Object(a.Component)({selector:"tree-node-content",encapsulation:a.ViewEncapsulation.None,template:'\n  <span *ngIf="!template">{{ node.displayField }}</span>\n  <ng-container\n    [ngTemplateOutlet]="template"\n    [ngTemplateOutletContext]="{ $implicit: node, node: node, index: index }">\n  </ng-container>'})],t)}()},raLr:function(t,e,n){!function(t){"use strict";function e(t,e,n){var a,r;return"m"===n?e?"хвилина":"хвилину":"h"===n?e?"година":"годину":t+" "+(a=+t,r={ss:e?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:e?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:e?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"}[n].split("_"),a%10==1&&a%100!=11?r[0]:a%10>=2&&a%10<=4&&(a%100<10||a%100>=20)?r[1]:r[2])}function n(t){return function(){return t+"о"+(11===this.hours()?"б":"")+"] LT"}}t.defineLocale("uk",{months:{format:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),standalone:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_")},monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:function(t,e){var n={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")};return!0===t?n.nominative.slice(1,7).concat(n.nominative.slice(0,1)):t?n[/(\[[ВвУу]\]) ?dddd/.test(e)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(e)?"genitive":"nominative"][t.day()]:n.nominative},weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., HH:mm",LLLL:"dddd, D MMMM YYYY р., HH:mm"},calendar:{sameDay:n("[Сьогодні "),nextDay:n("[Завтра "),lastDay:n("[Вчора "),nextWeek:n("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return n("[Минулої] dddd [").call(this);case 1:case 2:case 4:return n("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",ss:e,m:e,mm:e,h:"годину",hh:e,d:"день",dd:e,M:"місяць",MM:e,y:"рік",yy:e},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(t){return/^(дня|вечора)$/.test(t)},meridiem:function(t,e,n){return t<4?"ночі":t<12?"ранку":t<17?"дня":"вечора"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го)/,ordinal:function(t,e){switch(e){case"M":case"d":case"DDD":case"w":case"W":return t+"-й";case"D":return t+"-го";default:return t}},week:{dow:1,doy:7}})}(n("wd/R"))},rk81:function(t,e,n){var a=n("aT2Y"),r=n("vDHD"),i=n("EWmY"),s=n("cjaf"),u=n("2oum"),o=n("gHid");function l(t){var e=this.__data__=new a(t);this.size=e.size}l.prototype.clear=r,l.prototype.delete=i,l.prototype.get=s,l.prototype.has=u,l.prototype.set=o,t.exports=l},rkAj:function(t,e,n){var a=n("g6v/"),r=n("0Dky"),i=n("UTVS"),s=Object.defineProperty,u={},o=function(t){throw t};t.exports=function(t,e){if(i(u,t))return u[t];e||(e={});var n=[][t],l=!!i(e,"ACCESSORS")&&e.ACCESSORS,d=i(e,0)?e[0]:o,c=i(e,1)?e[1]:void 0;return u[t]=!!n&&!r((function(){if(l&&!a)return!0;var t={length:-1};l?s(t,1,{enumerable:!0,get:o}):t[1]=1,n.call(t,d,c)}))}},rpNk:function(t,e,n){"use strict";var a,r,i,s=n("4WOD"),u=n("kRJp"),o=n("UTVS"),l=n("tiKp"),d=n("xDBR"),c=l("iterator"),f=!1;[].keys&&("next"in(i=[].keys())?(r=s(s(i)))!==Object.prototype&&(a=r):f=!0),null==a&&(a={}),d||o(a,c)||u(a,c,(function(){return this})),t.exports={IteratorPrototype:a,BUGGY_SAFARI_ITERATORS:f}},"s+uk":function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return e?r[n][0]:r[n][1]}t.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:e,mm:"%d Minuten",h:e,hh:"%d Stunden",d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},"s4/e":function(t,e){t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,a){n[++e]=[a,t]})),n}},s7LF:function(t,e,n){"use strict";n.d(e,"C",(function(){return Tt})),n.d(e,"G",(function(){return gt})),n.d(e,"D",(function(){return R})),n.d(e,"E",(function(){return pt})),n.d(e,"F",(function(){return F})),n.d(e,"c",(function(){return l})),n.d(e,"d",(function(){return h})),n.d(e,"p",(function(){return o})),n.d(e,"b",(function(){return d})),n.d(e,"e",(function(){return c})),n.d(e,"q",(function(){return p})),n.d(e,"r",(function(){return m})),n.d(e,"s",(function(){return y})),n.d(e,"t",(function(){return ut})),n.d(e,"u",(function(){return ht})),n.d(e,"w",(function(){return C})),n.d(e,"x",(function(){return A})),n.d(e,"j",(function(){return xt})),n.d(e,"l",(function(){return bt})),n.d(e,"g",(function(){return yt})),n.d(e,"m",(function(){return mt})),n.d(e,"v",(function(){return q})),n.d(e,"A",(function(){return M})),n.d(e,"z",(function(){return _t})),n.d(e,"h",(function(){return wt})),n.d(e,"a",(function(){return nt})),n.d(e,"f",(function(){return it})),n.d(e,"i",(function(){return at})),n.d(e,"k",(function(){return rt})),n.d(e,"o",(function(){return x})),n.d(e,"B",(function(){return T})),n.d(e,"n",(function(){return Ot})),n.d(e,"y",(function(){return St}));var a=n("8Y7J"),r=n("cUpR"),i=n("cp0P"),s=n("Cfvw"),u=n("lJxs");const o=new a.InjectionToken("NgValueAccessor");class l{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}const d=new a.InjectionToken("CompositionEventMode");class c{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=t=>{},this.onTouched=()=>{},this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Object(r.q)()?Object(r.q)().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}class f{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}class h extends f{get formDirective(){return null}get path(){return null}}function g(){throw new Error("unimplemented")}class p extends f{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return g()}get asyncValidator(){return g()}}class b{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}class m extends b{constructor(t){super(t)}}class y extends b{constructor(t){super(t)}}function v(t){return null==t||0===t.length}const x=new a.InjectionToken("NgValidators"),_=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class T{static min(t){return e=>{if(v(e.value)||v(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n<t?{min:{min:t,actual:e.value}}:null}}static max(t){return e=>{if(v(e.value)||v(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return v(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return v(t.value)||_.test(t.value)?null:{email:!0}}static minLength(t){return e=>{if(v(e.value))return null;const n=e.value?e.value.length:0;return n<t?{minlength:{requiredLength:t,actualLength:n}}:null}}static maxLength(t){return e=>{const n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}}static pattern(t){if(!t)return T.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(v(t.value))return null;const a=t.value;return e.test(a)?null:{pattern:{requiredPattern:n,actualValue:a}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(w);return 0==e.length?null:function(t){return S(function(t,e){return e.map(e=>e(t))}(t,e))}}static composeAsync(t){if(!t)return null;const e=t.filter(w);return 0==e.length?null:function(t){const n=function(t,e){return e.map(e=>e(t))}(t,e).map(O);return Object(i.a)(n).pipe(Object(u.a)(S))}}}function w(t){return null!=t}function O(t){const e=Object(a["ɵisPromise"])(t)?Object(s.a)(t):t;if(!Object(a["ɵisObservable"])(e))throw new Error("Expected validator to return Promise or Observable.");return e}function S(t){const e=t.reduce((t,e)=>null!=e?Object.assign({},t,e):t,{});return 0===Object.keys(e).length?null:e}function I(t){return t.validate?e=>t.validate(e):t}function N(t){return t.validate?e=>t.validate(e):t}class C{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}class R{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}class A{constructor(t,e,n,a){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=a,this.onChange=()=>{},this.onTouched=()=>{}}ngOnInit(){this._control=this._injector.get(p),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n      If you define both a name and a formControlName attribute on your radio button, their values\n      must match. Ex: <input type="radio" formControlName="food" name="food">\n    ')}}const k='\n    <div [formGroup]="myGroup">\n      <input formControlName="firstName">\n    </div>\n\n    In your class:\n\n    this.myGroup = new FormGroup({\n       firstName: new FormControl()\n    });',E='\n    <div [formGroup]="myGroup">\n       <div formGroupName="person">\n          <input formControlName="firstName">\n       </div>\n    </div>\n\n    In your class:\n\n    this.myGroup = new FormGroup({\n       person: new FormGroup({ firstName: new FormControl() })\n    });',L='\n    <form>\n       <div ngModelGroup="person">\n          <input [(ngModel)]="person.name" name="firstName">\n       </div>\n    </form>';class D{static controlParentException(){throw new Error("formControlName must be used with a parent formGroup directive.  You'll want to add a formGroup\n       directive and pass it an existing FormGroup instance (you can create one in your class).\n\n      Example:\n\n      "+k)}static ngModelGroupException(){throw new Error(`formControlName cannot be used with an ngModelGroup parent. It is only compatible with parents\n       that also have a "form" prefix: formGroupName, formArrayName, or formGroup.\n\n       Option 1:  Update the parent to be formGroupName (reactive form strategy)\n\n        ${E}\n\n        Option 2: Use ngModel instead of formControlName (template-driven strategy)\n\n        ${L}`)}static missingFormException(){throw new Error("formGroup expects a FormGroup instance. Please pass one in.\n\n       Example:\n\n       "+k)}static groupParentException(){throw new Error("formGroupName must be used with a parent formGroup directive.  You'll want to add a formGroup\n      directive and pass it an existing FormGroup instance (you can create one in your class).\n\n      Example:\n\n      "+E)}static arrayParentException(){throw new Error('formArrayName must be used with a parent formGroup directive.  You\'ll want to add a formGroup\n       directive and pass it an existing FormGroup instance (you can create one in your class).\n\n        Example:\n\n        \n    <div [formGroup]="myGroup">\n      <div formArrayName="cities">\n        <div *ngFor="let city of cityArray.controls; index as i">\n          <input [formControlName]="i">\n        </div>\n      </div>\n    </div>\n\n    In your class:\n\n    this.cityArray = new FormArray([new FormControl(\'SF\')]);\n    this.myGroup = new FormGroup({\n      cities: this.cityArray\n    });')}static disabledAttrWarning(){console.warn("\n      It looks like you're using the disabled attribute with a reactive form directive. If you set disabled to true\n      when you set up this control in your component class, the disabled attribute will actually be set in the DOM for\n      you. We recommend using this approach to avoid 'changed after checked' errors.\n       \n      Example: \n      form = new FormGroup({\n        first: new FormControl({value: 'Nancy', disabled: true}, Validators.required),\n        last: new FormControl('Drew', Validators.required)\n      });\n    ")}static ngModelWarning(t){console.warn(`\n    It looks like you're using ngModel on the same form field as ${t}. \n    Support for using the ngModel input property and ngModelChange event with \n    reactive form directives has been deprecated in Angular v6 and will be removed \n    in Angular v7.\n    \n    For more information on this, see our API docs here:\n    https://angular.io/api/forms/${"formControl"===t?"FormControlDirective":"FormControlName"}#use-with-ngmodel\n    `)}}function P(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}class M{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=a["ɵlooseIdentical"]}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=P(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=e=>{this.value=this._getOptionValue(e),t(this.value)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}class q{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(P(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}function j(t,e){return null==t?""+e:("string"==typeof e&&(e=`'${e}'`),e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}class F{constructor(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(j(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(j(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}function V(t,e){return[...e.path,t]}function G(t,e){t||H(e,"Cannot find control with"),e.valueAccessor||H(e,"No value accessor for form control with"),t.validator=T.compose([t.validator,e.validator]),t.asyncValidator=T.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&B(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&B(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function B(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function z(t,e){null==t&&H(e,"Cannot find control with"),t.validator=T.compose([t.validator,e.validator]),t.asyncValidator=T.composeAsync([t.asyncValidator,e.asyncValidator])}function Y(t){return H(t,"There is no FormControl instance attached to form control element with")}function H(t,e){let n;throw n=t.path.length>1?`path: '${t.path.join(" -> ")}'`:t.path[0]?`name: '${t.path}'`:"unspecified name attribute",new Error(`${e} ${n}`)}function U(t){return null!=t?T.compose(t.map(I)):null}function W(t){return null!=t?T.composeAsync(t.map(N)):null}function K(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!Object(a["ɵlooseIdentical"])(e,n.currentValue)}const $=[l,class{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}},C,M,class{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=a["ɵlooseIdentical"]}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=(t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)}}else e=(t,e)=>{t._setSelected(!1)};this._optionMap.forEach(e)}registerOnChange(t){this.onChange=e=>{const n=[];if(e.hasOwnProperty("selectedOptions")){const t=e.selectedOptions;for(let e=0;e<t.length;e++){const a=t.item(e),r=this._getOptionValue(a.value);n.push(r)}}else{const t=e.options;for(let e=0;e<t.length;e++){const a=t.item(e);if(a.selected){const t=this._getOptionValue(a.value);n.push(t)}}}this.value=n,t(n)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(t){const e=(this._idCounter++).toString();return this._optionMap.set(e,t),e}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e)._value,t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e)._value:t}},A];function Z(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function J(t,e){if(!e)return null;Array.isArray(e)||H(t,"Value accessor was not provided as an array for form control with");let n=void 0,a=void 0,r=void 0;return e.forEach(e=>{var i;e.constructor===c?n=e:(i=e,$.some(t=>i.constructor===t)?(a&&H(t,"More than one built-in value accessor matches form control with"),a=e):(r&&H(t,"More than one custom value accessor matches form control with"),r=e))}),r||a||n||(H(t,"No valid value accessor for form control with"),null)}function Q(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}function X(t){const e=et(t)?t.validators:t;return Array.isArray(e)?U(e):e||null}function tt(t,e){const n=et(e)?e.asyncValidators:t;return Array.isArray(n)?W(n):n||null}function et(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class nt{constructor(t,e){this.validator=t,this.asyncValidator=e,this._onCollectionChange=()=>{},this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return"VALID"===this.status}get invalid(){return"INVALID"===this.status}get pending(){return"PENDING"==this.status}get disabled(){return"DISABLED"===this.status}get enabled(){return"DISABLED"!==this.status}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=X(t)}setAsyncValidators(t){this.asyncValidator=tt(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status="PENDING",!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="DISABLED",this.errors=null,this._forEachChild(e=>{e.disable(Object.assign({},t,{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="VALID",this._forEachChild(e=>{e.enable(Object.assign({},t,{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign({},t,{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),"VALID"!==this.status&&"PENDING"!==this.status||this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?"DISABLED":"VALID"}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status="PENDING";const e=O(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){return null==e?null:(e instanceof Array||(e=e.split(".")),e instanceof Array&&0===e.length?null:e.reduce((t,e)=>t instanceof rt?t.controls.hasOwnProperty(e)?t.controls[e]:null:t instanceof it&&t.at(e)||null,t))}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new a.EventEmitter,this.statusChanges=new a.EventEmitter}_calculateStatus(){return this._allControlsDisabled()?"DISABLED":this.errors?"INVALID":this._anyControlsHaveStatus("PENDING")?"PENDING":this._anyControlsHaveStatus("INVALID")?"INVALID":"VALID"}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){et(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class at extends nt{constructor(t=null,e,n){super(X(e),tt(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=()=>{}}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){this._isBoxedValue(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}}class rt extends nt{constructor(t,e,n){super(X(e),tt(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,a)=>{n.reset(t[a],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof at?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!Object.keys(this.controls).length)throw new Error("\n        There are no form controls registered with this group yet.  If you're using ngModel,\n        you may want to check next tick (e.g. use setTimeout).\n      ");if(!this.controls[t])throw new Error(`Cannot find form control with name: ${t}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){let e=!1;return this._forEachChild((n,a)=>{e=e||this.contains(a)&&t(n)}),e}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,a)=>{n=e(n,t,a)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class it extends nt{constructor(t,e,n){super(X(e),tt(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,a)=>{n.reset(t[a],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof at?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!this.controls.length)throw new Error("\n        There are no form controls registered with this array yet.  If you're using ngModel,\n        you may want to check next tick (e.g. use setTimeout).\n      ");if(!this.at(t))throw new Error("Cannot find form control at index "+t)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const st=(()=>Promise.resolve(null))();class ut extends h{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new a.EventEmitter,this.form=new rt({},U(t),W(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){st.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),G(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){st.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),Q(this._directives,t)})}addFormGroup(t){st.then(()=>{const e=this._findContainer(t.path),n=new rt({});z(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){st.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){st.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,Z(this.form,this._directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}class ot{static modelParentException(){throw new Error(`\n      ngModel cannot be used to register form controls with a parent formGroup directive.  Try using\n      formGroup's partner directive "formControlName" instead.  Example:\n\n      ${k}\n\n      Or, if you'd like to avoid registering this form control, indicate that it's standalone in ngModelOptions:\n\n      Example:\n\n      \n    <div [formGroup]="myGroup">\n       <input formControlName="firstName">\n       <input [(ngModel)]="showMoreControls" [ngModelOptions]="{standalone: true}">\n    </div>\n  `)}static formGroupNameException(){throw new Error(`\n      ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n      Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n      ${E}\n\n      Option 2:  Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n      ${L}`)}static missingNameException(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n      control must be defined as \'standalone\' in ngModelOptions.\n\n      Example 1: <input [(ngModel)]="person.firstName" name="first">\n      Example 2: <input [(ngModel)]="person.firstName" [ngModelOptions]="{standalone: true}">')}static modelGroupParentException(){throw new Error(`\n      ngModelGroup cannot be used with a parent formGroup directive.\n\n      Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n      ${E}\n\n      Option 2:  Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n      ${L}`)}static ngFormWarning(){console.warn("\n    It looks like you're using 'ngForm'.\n\n    Support for using the 'ngForm' element selector has been deprecated in Angular v6 and will be removed\n    in Angular v9.\n\n    Use 'ng-form' instead.\n\n    Before:\n    <ngForm #myForm=\"ngForm\">\n\n    After:\n    <ng-form #myForm=\"ngForm\">\n    ")}}const lt=new a.InjectionToken("NgFormSelectorWarning");class dt extends h{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return V(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return U(this._validators)}get asyncValidator(){return W(this._asyncValidators)}_checkParentType(){}}class ct extends dt{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof ct||this._parent instanceof ut||ot.modelGroupParentException()}}const ft=(()=>Promise.resolve(null))();class ht extends p{constructor(t,e,n,r){super(),this.control=new at,this._registered=!1,this.update=new a.EventEmitter,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=J(this,r)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),K(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?V(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return U(this._rawValidators)}get asyncValidator(){return W(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){G(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof ct)&&this._parent instanceof dt?ot.formGroupNameException():this._parent instanceof ct||this._parent instanceof ut||ot.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||ot.missingNameException()}_updateValue(t){ft.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;ft.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}class gt{}const pt=new a.InjectionToken("NgModelWithFormControlWarning");class bt extends h{constructor(t,e){super(),this._validators=t,this._asyncValidators=e,this.submitted=!1,this.directives=[],this.form=null,this.ngSubmit=new a.EventEmitter}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations())}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return G(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){Q(this.directives,t)}addFormGroup(t){const e=this.form.get(t.path);z(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormGroup(t){}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){const e=this.form.get(t.path);z(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormArray(t){}getFormArray(t){return this.form.get(t.path)}updateModel(t,e){this.form.get(t.path).setValue(e)}onSubmit(t){return this.submitted=!0,Z(this.form,this.directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_updateDomValue(){this.directives.forEach(t=>{const e=this.form.get(t.path);t.control!==e&&(function(t,e){e.valueAccessor.registerOnChange(()=>Y(e)),e.valueAccessor.registerOnTouched(()=>Y(e)),e._rawValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),e._rawAsyncValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),t&&t._clearChangeFns()}(t.control,t),e&&G(e,t),t.control=e)}),this.form._updateTreeValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(()=>this._updateDomValue()),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{}),this._oldForm=this.form}_updateValidators(){const t=U(this._validators);this.form.validator=T.compose([this.form.validator,t]);const e=W(this._asyncValidators);this.form.asyncValidator=T.composeAsync([this.form.asyncValidator,e])}_checkFormPresent(){this.form||D.missingFormException()}}class mt extends dt{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){vt(this._parent)&&D.groupParentException()}}class yt extends h{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}ngOnInit(){this._checkParentType(),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return V(this.name,this._parent)}get validator(){return U(this._validators)}get asyncValidator(){return W(this._asyncValidators)}_checkParentType(){vt(this._parent)&&D.arrayParentException()}}function vt(t){return!(t instanceof mt||t instanceof bt||t instanceof yt)}let xt=(()=>{class t extends p{constructor(t,e,n,r,i){super(),this._ngModelWarningConfig=i,this._added=!1,this.update=new a.EventEmitter,this._ngModelWarningSent=!1,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=J(this,r)}set isDisabled(t){D.disabledAttrWarning()}ngOnChanges(e){var n,r;this._added||this._setUpControl(),K(e,this.viewModel)&&("formControlName",n=t,this,r=this._ngModelWarningConfig,Object(a.isDevMode)()&&"never"!==r&&((null!==r&&"once"!==r||n._ngModelWarningSentOnce)&&("always"!==r||this._ngModelWarningSent)||(D.ngModelWarning("formControlName"),n._ngModelWarningSentOnce=!0,this._ngModelWarningSent=!0)),this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}get path(){return V(this.name,this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return U(this._rawValidators)}get asyncValidator(){return W(this._rawAsyncValidators)}_checkParentType(){!(this._parent instanceof mt)&&this._parent instanceof dt?D.ngModelGroupException():this._parent instanceof mt||this._parent instanceof bt||this._parent instanceof yt||D.controlParentException()}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0}}return t._ngModelWarningSentOnce=!1,t})();class _t{get required(){return this._required}set required(t){this._required=null!=t&&!1!==t&&""+t!="false",this._onChange&&this._onChange()}validate(t){return this.required?T.required(t):null}registerOnValidatorChange(t){this._onChange=t}}class Tt{}class wt{group(t,e=null){const n=this._reduceControls(t);let a=null,r=null,i=void 0;return null!=e&&(function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(a=null!=e.validators?e.validators:null,r=null!=e.asyncValidators?e.asyncValidators:null,i=null!=e.updateOn?e.updateOn:void 0):(a=null!=e.validator?e.validator:null,r=null!=e.asyncValidator?e.asyncValidator:null)),new rt(n,{asyncValidators:r,updateOn:i,validators:a})}control(t,e,n){return new at(t,e,n)}array(t,e,n){const a=t.map(t=>this._createControl(t));return new it(a,e,n)}_reduceControls(t){const e={};return Object.keys(t).forEach(n=>{e[n]=this._createControl(t[n])}),e}_createControl(t){return t instanceof at||t instanceof rt||t instanceof it?t:Array.isArray(t)?this.control(t[0],t.length>1?t[1]:null,t.length>2?t[2]:null):this.control(t)}}class Ot{static withConfig(t){return{ngModule:Ot,providers:[{provide:lt,useValue:t.warnOnDeprecatedNgFormSelector}]}}}class St{static withConfig(t){return{ngModule:St,providers:[{provide:pt,useValue:t.warnOnNgModelWithFormControl}]}}}},sA22:function(t,e,n){var a=n("pMcL"),r=Object.prototype,i=r.hasOwnProperty,s=r.toString,u=a?a.toStringTag:void 0;t.exports=function(t){var e=i.call(t,u),n=t[u];try{t[u]=void 0;var a=!0}catch(o){}var r=s.call(t);return a&&(e?t[u]=n:delete t[u]),r}},sEFX:function(t,e,n){"use strict";var a=n("AO7/"),r=n("9d/t");t.exports=a?{}.toString:function(){return"[object "+r(this)+"]"}},sEik:function(t,e){t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},sLuX:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("25BL"),i=n("uIqm");n("FSuO"),n("a0VL"),n.d(e,"a",(function(){return s})),n.d(e,"b",(function(){return u}));var s=a["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function u(t){return a["ɵvid"](0,[a["ɵqud"](402653184,1,{table:0}),(t()(),a["ɵeld"](1,0,null,null,1,"cd-table",[["columnMode","flex"]],null,null,null,r.b,r.a)),a["ɵdid"](2,2867200,[[1,4],["table",4]],0,i.a,[a.NgZone,a.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],toolHeader:[3,"toolHeader"],header:[4,"header"],footer:[5,"footer"],limit:[6,"limit"],autoReload:[7,"autoReload"],autoSave:[8,"autoSave"],customCss:[9,"customCss"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.tableData,n.columns,"flex",!1,!1,!1,0,n.autoReload,!1,n.customCss)}),null)}},sMBO:function(t,e,n){var a=n("g6v/"),r=n("m/L8").f,i=Function.prototype,s=i.toString,u=/^\s*function ([^ (]*)/;a&&!("name"in i)&&r(i,"name",{configurable:!0,get:function(){try{return s.call(this).match(u)[1]}catch(t){return""}}})},sVev:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));const a=(()=>{function t(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return t.prototype=Object.create(Error.prototype),t})()},sb0X:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("s7LF"),i=n("oxzT"),s=n("LvDl");class u{constructor(t){this.elRef=t,this.type="submit",this.disabled=!1,this.submitAction=new a.EventEmitter,this.loading=!1,this.icons=i.a}ngOnInit(){this.form.statusChanges.subscribe(()=>{s.has(this.form.errors,"cdSubmitButton")&&(this.loading=!1,s.unset(this.form.errors,"cdSubmitButton"),this.form instanceof r.a&&this.form.updateValueAndValidity())})}submit(t){this.focusButton(),this.form instanceof r.l&&this.form.onSubmit(t),this.form.invalid?this.focusInvalid():(this.loading=!0,this.submitAction.emit())}focusButton(){this.elRef.nativeElement.offsetParent.querySelector(`button[type="${this.type}"]`).focus()}focusInvalid(){const t=this.elRef.nativeElement.offsetParent.querySelector("input.ng-invalid, select.ng-invalid");t&&t.focus()}}},sne2:function(t,e,n){"use strict";n.d(e,"c",(function(){return i})),n.d(e,"e",(function(){return s})),n.d(e,"a",(function(){return u})),n.d(e,"b",(function(){return o})),n.d(e,"d",(function(){return l}));var a=n("8Y7J"),r=n("GiVz");let i=(()=>{class t{}return t.organization="ceph",t.projectName="Ceph Dashboard",t.license="Free software (LGPL 2.1).",t})();var s=function(t){return t.CREATE="create",t.EDIT="edit",t.UPDATE="update",t.REMOVE="remove",t.DELETE="delete",t.ADD="add",t.COPY="copy",t.CLONE="clone",t.RECREATE="recreate",t.EXPIRE="expire",t}({}),u=function(t){return t.CREATE="Create",t.DELETE="Delete",t.ADD="Add",t.REMOVE="Remove",t.EDIT="Edit",t.CANCEL="Cancel",t.COPY="Copy",t.CLONE="Clone",t.UPDATE="Update",t.EVICT="Evict",t.SHOW="Show",t.RECREATE="Recreate",t.EXPIRE="Expire",t}({});let o=(()=>{class t{constructor(t){this.i18n=t,this.CREATE=this.i18n("Create"),this.DELETE=this.i18n("Delete"),this.ADD=this.i18n("Add"),this.SET=this.i18n("Set"),this.REMOVE=this.i18n("Remove"),this.UNSET=this.i18n("Unset"),this.EDIT=this.i18n("Edit"),this.UPDATE=this.i18n("Update"),this.CANCEL=this.i18n("Cancel"),this.CLONE=this.i18n("Clone"),this.COPY=this.i18n("Copy"),this.DEEP_SCRUB=this.i18n("Deep Scrub"),this.DESTROY=this.i18n("Destroy"),this.EVICT=this.i18n("Evict"),this.FLATTEN=this.i18n("Flatten"),this.MARK_DOWN=this.i18n("Mark Down"),this.MARK_IN=this.i18n("Mark In"),this.MARK_LOST=this.i18n("Mark Lost"),this.MARK_OUT=this.i18n("Mark Out"),this.PROTECT=this.i18n("Protect"),this.PURGE=this.i18n("Purge"),this.RENAME=this.i18n("Rename"),this.RESTORE=this.i18n("Restore"),this.REWEIGHT=this.i18n("Reweight"),this.ROLLBACK=this.i18n("Rollback"),this.SCRUB=this.i18n("Scrub"),this.SHOW=this.i18n("Show"),this.TRASH=this.i18n("Move to Trash"),this.UNPROTECT=this.i18n("Unprotect"),this.CHANGE=this.i18n("Change"),this.FLAGS=this.i18n("Flags"),this.RECREATE=this.i18n("Recreate"),this.EXPIRE=this.i18n("Expire")}}return t.ngInjectableDef=a["ɵɵdefineInjectable"]({factory:function(){return new t(a["ɵɵinject"](r.a))},token:t,providedIn:"root"}),t})(),l=(()=>{class t{constructor(t){this.i18n=t,this.CREATED=this.i18n("Created"),this.DELETED=this.i18n("Deleted"),this.ADDED=this.i18n("Added"),this.REMOVED=this.i18n("Removed"),this.EDITED=this.i18n("Edited"),this.CANCELED=this.i18n("Canceled"),this.CLONED=this.i18n("Cloned"),this.COPIED=this.i18n("Copied"),this.DEEP_SCRUBBED=this.i18n("Deep Scrubbed"),this.DESTROYED=this.i18n("Destroyed"),this.FLATTENED=this.i18n("Flattened"),this.MARKED_DOWN=this.i18n("Marked Down"),this.MARKED_IN=this.i18n("Marked In"),this.MARKED_LOST=this.i18n("Marked Lost"),this.MARKED_OUT=this.i18n("Marked Out"),this.PROTECTED=this.i18n("Protected"),this.PURGED=this.i18n("Purged"),this.RENAMED=this.i18n("Renamed"),this.RESTORED=this.i18n("Restored"),this.REWEIGHTED=this.i18n("Reweighted"),this.ROLLED_BACK=this.i18n("Rolled back"),this.SCRUBBED=this.i18n("Scrubbed"),this.SHOWED=this.i18n("Showed"),this.TRASHED=this.i18n("Moved to Trash"),this.UNPROTECTED=this.i18n("Unprotected"),this.CHANGE=this.i18n("Change"),this.RECREATED=this.i18n("Recreated"),this.EXPIRED=this.i18n("Expired")}}return t.ngInjectableDef=a["ɵɵdefineInjectable"]({factory:function(){return new t(a["ɵɵinject"](r.a))},token:t,providedIn:"root"}),t})()},sp3z:function(t,e,n){!function(t){"use strict";t.defineLocale("lo",{months:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),monthsShort:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),weekdays:"ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysShort:"ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysMin:"ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"ວັນdddd D MMMM YYYY HH:mm"},meridiemParse:/ຕອນເຊົ້າ|ຕອນແລງ/,isPM:function(t){return"ຕອນແລງ"===t},meridiem:function(t,e,n){return t<12?"ຕອນເຊົ້າ":"ຕອນແລງ"},calendar:{sameDay:"[ມື້ນີ້ເວລາ] LT",nextDay:"[ມື້ອື່ນເວລາ] LT",nextWeek:"[ວັນ]dddd[ໜ້າເວລາ] LT",lastDay:"[ມື້ວານນີ້ເວລາ] LT",lastWeek:"[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT",sameElse:"L"},relativeTime:{future:"ອີກ %s",past:"%sຜ່ານມາ",s:"ບໍ່ເທົ່າໃດວິນາທີ",ss:"%d ວິນາທີ",m:"1 ນາທີ",mm:"%d ນາທີ",h:"1 ຊົ່ວໂມງ",hh:"%d ຊົ່ວໂມງ",d:"1 ມື້",dd:"%d ມື້",M:"1 ເດືອນ",MM:"%d ເດືອນ",y:"1 ປີ",yy:"%d ປີ"},dayOfMonthOrdinalParse:/(ທີ່)\d{1,2}/,ordinal:function(t){return"ທີ່"+t}})}(n("wd/R"))},"t/zF":function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t,e){this.name=t,this.metadata=e}}},tAZD:function(t,e,n){var a,r,i;!function(s){if("object"==typeof t.exports){var u=s(0,e);void 0!==u&&(t.exports=u)}else r=[n,e],void 0===(i="function"==typeof(a=s)?a.apply(e,r):a)||(t.exports=i)}((function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=void 0;e.default=["en",[["a","p"],["AM","PM"],n],[["AM","PM"],n,n],[["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"]],n,[["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"]],n,[["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}",n,"{1} 'at' {0}",n],[".",",",";","%","+","-","E","×","‰","∞","NaN",":"],["#,##0.###","#,##0%","¤#,##0.00","#E0"],"$","US Dollar",{},function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}]}))},tGlX:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return e?r[n][0]:r[n][1]}t.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:e,mm:"%d Minuten",h:e,hh:"%d Stunden",d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},tT3J:function(t,e,n){!function(t){"use strict";t.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",ss:"%d imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}})}(n("wd/R"))},tUCv:function(t,e,n){!function(t){"use strict";t.defineLocale("jv",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),weekdays:"Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),weekdaysShort:"Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/enjing|siyang|sonten|ndalu/,meridiemHour:function(t,e){return 12===t&&(t=0),"enjing"===e?t:"siyang"===e?t>=11?t:t+12:"sonten"===e||"ndalu"===e?t+12:void 0},meridiem:function(t,e,n){return t<11?"enjing":t<15?"siyang":t<19?"sonten":"ndalu"},calendar:{sameDay:"[Dinten puniko pukul] LT",nextDay:"[Mbenjang pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kala wingi pukul] LT",lastWeek:"dddd [kepengker pukul] LT",sameElse:"L"},relativeTime:{future:"wonten ing %s",past:"%s ingkang kepengker",s:"sawetawis detik",ss:"%d detik",m:"setunggal menit",mm:"%d menit",h:"setunggal jam",hh:"%d jam",d:"sedinten",dd:"%d dinten",M:"sewulan",MM:"%d wulan",y:"setaun",yy:"%d taun"},week:{dow:1,doy:7}})}(n("wd/R"))},tiKp:function(t,e,n){var a=n("2oRo"),r=n("VpIT"),i=n("UTVS"),s=n("kOOl"),u=n("STAE"),o=n("/b8u"),l=r("wks"),d=a.Symbol,c=o?d:d&&d.withoutSetter||s;t.exports=function(t){return i(l,t)||(l[t]=u&&i(d,t)?d[t]:c("Symbol."+t)),l[t]}},tpUd:function(t,e,n){var a=n("CslI");t.exports=function(t){return a(t)?void 0:t}},tycR:function(t,e,n){var a=n("A2ZE"),r=n("RK3t"),i=n("ewvW"),s=n("UMSQ"),u=n("ZfDv"),o=[].push,l=function(t){var e=1==t,n=2==t,l=3==t,d=4==t,c=6==t,f=5==t||c;return function(h,g,p,b){for(var m,y,v=i(h),x=r(v),_=a(g,p,3),T=s(x.length),w=0,O=b||u,S=e?O(h,T):n?O(h,0):void 0;T>w;w++)if((f||w in x)&&(y=_(m=x[w],w,v),t))if(e)S[w]=y;else if(y)switch(t){case 3:return!0;case 5:return m;case 6:return w;case 2:o.call(S,m)}else if(d)return!1;return c?-1:l||d?d:S}};t.exports={forEach:l(0),map:l(1),filter:l(2),some:l(3),every:l(4),find:l(5),findIndex:l(6)}},tz6c:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("2Vo4"),r=n("pLZG"),i=n("lJxs"),s=n("SxV6"),u=n("+0ag"),o=n("mSOc"),l=n("8Y7J");let d=(()=>{class t{constructor(t,e){this.summaryservice=t,this.cephReleaseNamePipe=e,this.releaseDataSource=new a.a(null),this.releaseData$=this.releaseDataSource.asObservable(),this.summaryservice.subscribeOnce(t=>{const e=this.cephReleaseNamePipe.transform(t.version);this.releaseDataSource.next(e)})}urlGenerator(t,e){const n=`http://docs.ceph.com/docs/${t}/`;return{iscsi:n+"mgr/dashboard/#enabling-iscsi-management",prometheus:n+"mgr/dashboard/#enabling-prometheus-alerting","nfs-ganesha":n+"mgr/dashboard/#configuring-nfs-ganesha-in-the-dashboard","rgw-nfs":n+"radosgw/nfs",rgw:n+"mgr/dashboard/#enabling-the-object-gateway-management-frontend",dashboard:n+"mgr/dashboard",grafana:n+"mgr/dashboard/#enabling-the-embedding-of-grafana-dashboards",orch:n+"mgr/orchestrator",pgs:"http://ceph.com/pgcalc"}[e]}subscribeOnce(t,e,n){return this.releaseData$.pipe(Object(r.a)(t=>!!t),Object(i.a)(e=>this.urlGenerator(e,t)),Object(s.a)()).subscribe(e,n)}}return t.ngInjectableDef=l["ɵɵdefineInjectable"]({factory:function(){return new t(l["ɵɵinject"](o.a),l["ɵɵinject"](u.a))},token:t,providedIn:"root"}),t})()},u3GI:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return e?r[n][0]:r[n][1]}t.defineLocale("de-ch",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:e,mm:"%d Minuten",h:e,hh:"%d Stunden",d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},uEye:function(t,e,n){!function(t){"use strict";t.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s sidan",s:"nokre sekund",ss:"%d sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},uIqm:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("w9WL"),i=n("LvDl"),s=n("PqYM"),u=n("HDdC"),o=n("oxzT"),l=n("x38r");class d{constructor(t){this.errorConfig={resetData:!0,displayError:!0},this.error=t}}var c=n("vCyI");n.d(e,"a",(function(){return f}));class f{constructor(t,e){this.ngZone=t,this.cdRef=e,this.columnMode="flex",this.onlyActionHeader=!1,this.toolHeader=!0,this.searchField=!0,this.header=!0,this.footer=!0,this.limit=10,this.hasDetails=!1,this.autoReload=5e3,this.identifier="id",this.forceIdentifier=!1,this.selectionType=void 0,this.updateSelectionOnRefresh="onChange",this.updateExpandedOnRefresh="onChange",this.autoSave=!0,this.searchableObjects=!1,this.extraFilterableColumns=[],this.fetchData=new a.EventEmitter,this.updateSelection=new a.EventEmitter,this.setExpandedRow=new a.EventEmitter,this.columnFiltersChanged=new a.EventEmitter,this.selection=new c.a,this.expanded=void 0,this.icons=o.a,this.cellTemplates={},this.search="",this.rows=[],this.loadingIndicator=!0,this.loadingError=!1,this.paginationClasses={pagerLeftArrow:o.a.leftArrowDouble,pagerRightArrow:o.a.rightArrowDouble,pagerPrevious:o.a.leftArrow,pagerNext:o.a.rightArrow},this.userConfig={},this.localStorage=window.localStorage,this.updating=!1,this.columnFilters=[]}get columnFiltered(){return i.some(this.columnFilters,t=>void 0!==t.value)}static prepareSearch(t){return(t=t.toLowerCase().replace(/,/g,"")).match(/['"][^'"]+['"]/)&&(t=t.replace(/['"][^'"]+['"]/g,t=>t.replace(/(['"])([^'"]+)(['"])/g,"$2").replace(/ /g,"+"))),t.split(" ").filter(t=>t)}ngOnInit(){if(this.table.element.addEventListener("mouseenter",t=>t.stopPropagation(),!0),this._addTemplates(),!this.sorts){const t=-1!==i.findIndex(this.columns,["prop",this.identifier]);this.sorts=this.createSortingDefinition(t?this.identifier:this.columns[0].prop+""),t||this.forceIdentifier||(this.identifier=this.columns[0].prop+"")}this.initUserConfig(),this.columns.forEach(t=>{t.cellTransformation&&(t.cellTemplate=this.cellTemplates[t.cellTransformation]),t.flexGrow||(t.flexGrow=t.prop+""===this.identifier?1:2),t.resizeable||(t.resizeable=!1)}),this.initExpandCollapseColumn(),this.initCheckboxColumn(),this.filterHiddenColumns(),this.initColumnFilters(),this.updateColumnFilterOptions(),this.fetchData.observers.length>0&&(this.loadingIndicator=!0),i.isInteger(this.autoReload)&&this.autoReload>0?this.ngZone.runOutsideAngular(()=>{this.reloadSubscriber=Object(s.a)(0,this.autoReload).subscribe(()=>{this.ngZone.run(()=>this.reloadData())})}):this.autoReload?this.useData():this.reloadData()}initUserConfig(){this.autoSave&&(this.tableName=this._calculateUniqueTableName(this.columns),this._loadUserConfig(),this._initUserConfigAutoSave()),this.userConfig.limit||(this.userConfig.limit=this.limit),this.userConfig.sorts||(this.userConfig.sorts=this.sorts),this.userConfig.columns?this.columns.forEach((t,e)=>{t.isHidden=this.userConfig.columns[e].isHidden}):this.updateUserColumns()}_calculateUniqueTableName(t){const e=t=>{if(!i.isString(t))return 0;let e=0;for(let n=0;n<t.length;n++)e+=t.charCodeAt(n)*n;return e};return t.reduce((t,n,a)=>(e(n.prop)+e(n.name))*(a+1)+t,0).toString()}_loadUserConfig(){const t=this.localStorage.getItem(this.tableName);t&&(this.userConfig=JSON.parse(t))}_initUserConfigAutoSave(){const t=u.a.create(this._initUserConfigProxy.bind(this));this.saveSubscriber=t.subscribe(this._saveUserConfig.bind(this))}_initUserConfigProxy(t){this.userConfig=new Proxy(this.userConfig,{set:(e,n,a)=>(e[n]=a,t.next(e),!0)})}_saveUserConfig(t){this.localStorage.setItem(this.tableName,JSON.stringify(t))}updateUserColumns(){this.userConfig.columns=this.columns.map(t=>({prop:t.prop,name:t.name,isHidden:!!t.isHidden}))}initCheckboxColumn(){"multiClick"===this.selectionType&&this.columns.unshift({prop:void 0,resizeable:!1,sortable:!1,draggable:!1,checkboxable:!0,canAutoResize:!1,cellClass:"cd-datatable-checkbox",width:30})}initExpandCollapseColumn(){this.hasDetails&&this.columns.unshift({prop:void 0,resizeable:!1,sortable:!1,draggable:!1,isHidden:!1,canAutoResize:!1,cellClass:"cd-datatable-expand-collapse",width:40,cellTemplate:this.rowDetailsTpl})}filterHiddenColumns(){this.tableColumns=this.columns.filter(t=>!t.isHidden)}initColumnFilters(){let t=i.filter(this.columns,{filterable:!0});t=[...t,...this.extraFilterableColumns],this.columnFilters=t.map(t=>({column:t,options:[],value:t.filterInitValue?this.createColumnFilterOption(t.filterInitValue,t.pipe):void 0})),this.selectedFilter=i.first(this.columnFilters)}createColumnFilterOption(t,e){return{raw:i.toString(t),formatted:e?e.transform(t):i.toString(t)}}updateColumnFilterOptions(){this.columnFilters.forEach(t=>{let e=[];if(i.isUndefined(t.column.filterOptions)){const n=i.filter(i.map(this.data,t.column.prop),t=>i.isString(t)&&""!==t||i.isBoolean(t)||i.isFinite(t)||i.isDate(t));e=i.sortedUniq(n.sort())}else e=t.column.filterOptions;const n=e.map(e=>this.createColumnFilterOption(e,t.column.pipe));t.value&&i.isUndefined(i.find(n,{raw:t.value.raw}))&&(t.value=void 0),t.options=n})}onSelectFilter(t){this.selectedFilter=t}onChangeFilter(t,e){t.value=i.isEqual(t.value,e)?void 0:e,this.updateFilter()}doColumnFiltering(){const t=[];let e=[...this.data],n=[];return this.columnFilters.forEach(a=>{if(void 0===a.value)return;t.push({name:a.column.name,prop:a.column.prop,value:a.value});const s=i.partition(e,t=>{const e=Object(r.C)(a.column.prop)(t,a.column.prop);return i.isUndefined(a.column.filterPredicate)?""+e===a.value.raw:a.column.filterPredicate(t,a.value.raw)});e=s[0],n=[...n,...s[1]]}),this.columnFiltersChanged.emit({filters:t,data:e,dataOut:n}),i.forEach(this.selection.selected,t=>{void 0===i.find(e,{[this.identifier]:t[this.identifier]})&&(this.selection=new c.a,this.onSelect(this.selection))}),e}ngOnDestroy(){this.reloadSubscriber&&this.reloadSubscriber.unsubscribe(),this.saveSubscriber&&this.saveSubscriber.unsubscribe()}ngAfterContentChecked(){this.table&&this.table.element.clientWidth!==this.currentWidth&&(this.currentWidth=this.table.element.clientWidth,this.table.recalculate(),i.get(this.table,"cd").markForCheck())}_addTemplates(){this.cellTemplates.bold=this.tableCellBoldTpl,this.cellTemplates.checkIcon=this.checkIconTpl,this.cellTemplates.sparkline=this.sparklineTpl,this.cellTemplates.routerLink=this.routerLinkTpl,this.cellTemplates.perSecond=this.perSecondTpl,this.cellTemplates.executing=this.executingTpl,this.cellTemplates.classAdding=this.classAddingTpl,this.cellTemplates.badge=this.badgeTpl,this.cellTemplates.map=this.mapTpl,this.cellTemplates.truncate=this.truncateTpl}useCustomClass(t){if(!this.customCss)throw new Error("Custom classes are not set!");const e=Object.keys(this.customCss),n=Object.values(this.customCss).map((n,a)=>(i.isFunction(n)&&n(t)||n===t)&&e[a]).filter(t=>t).join(" ");return i.isEmpty(n)?void 0:n}ngOnChanges(t){t.data&&t.data.currentValue&&this.useData()}setLimit(t){const e=parseInt(t.target.value,10);e>0&&(this.userConfig.limit=e)}reloadData(){if(!this.updating){this.loadingError=!1;const t=new d(()=>{this.loadingError=t.errorConfig.displayError,t.errorConfig.resetData&&(this.data=[]),this.useData()});this.fetchData.emit(t),this.updating=!0}}refreshBtn(){this.loadingIndicator=!0,this.reloadData()}rowIdentity(){return t=>{const e=t[this.identifier];if(i.isUndefined(e))throw new Error(`Wrong identifier "${this.identifier}" -> "${e}"`);return e}}useData(){this.data&&(this.updateColumnFilterOptions(),this.updateFilter(),this.reset(),this.updateSelected(),this.updateExpanded())}reset(){this.loadingIndicator=!1,this.updating=!1}updateSelected(){if("never"===this.updateSelectionOnRefresh)return;const t=[];this.selection.selected.forEach(e=>{for(const n of this.data)e[this.identifier]===n[this.identifier]&&t.push(n)}),"onChange"===this.updateSelectionOnRefresh&&i.isEqual(this.selection.selected,t)||(this.selection.selected=t,this.onSelect(this.selection))}updateExpanded(){if(i.isUndefined(this.expanded)||"never"===this.updateExpandedOnRefresh)return;const t=this.expanded[this.identifier],e=i.find(this.data,e=>t===e[this.identifier]);"onChange"===this.updateExpandedOnRefresh&&i.isEqual(this.expanded,e)||(this.expanded=e,this.setExpandedRow.emit(e))}onSelect(t){i.has(t,"selected")&&(this.selection.selected=t.selected),this.updateSelection.emit(i.clone(this.selection))}toggleColumn(t){const e=t.target.name,n=!t.target.checked;n&&1===this.tableColumns.length?t.target.checked=!0:(i.find(this.columns,t=>t.prop===e).isHidden=n,this.updateColumns())}updateColumns(){this.updateUserColumns(),this.filterHiddenColumns();const t=this.userConfig.sorts[0].prop;i.find(this.tableColumns,e=>e.prop===t)||(this.userConfig.sorts=this.createSortingDefinition(this.tableColumns[0].prop)),this.table.recalculate(),this.cdRef.detectChanges()}createSortingDefinition(t){return[{prop:t,dir:r.A.asc}]}changeSorting({sorts:t}){this.userConfig.sorts=t}onClearSearch(){this.search="",this.updateFilter()}onClearFilters(){this.columnFilters.forEach(t=>{t.value=void 0}),this.selectedFilter=i.first(this.columnFilters),this.updateFilter()}updateFilter(){let t=0!==this.columnFilters.length?this.doColumnFiltering():this.data;if(this.search.length>0&&t){const e=this.columns.filter(t=>t.cellTransformation!==l.a.sparkline);t=this.subSearch(t,f.prepareSearch(this.search),e),this.table.offset=0}this.rows=t}subSearch(t,e,n){if(0===e.length||0===t.length)return t;const a=e.pop().replace(/\+/g," ").split(":"),r=[...n];return 2===a.length&&(n=r.filter(t=>-1!==t.name.toLowerCase().indexOf(a[0]))),t=this.basicDataSearch(i.last(a),t,n),this.subSearch(t,e,r)}basicDataSearch(t,e,n){return 0===t.length?e:e.filter(e=>n.filter(n=>{let a=i.get(e,n.prop);if(i.isUndefined(n.pipe)||(a=n.pipe.transform(a)),i.isUndefined(a)||i.isNull(a))return!1;if(i.isArray(a)?a=a.join(" "):(i.isNumber(a)||i.isBoolean(a))&&(a=a.toString()),i.isObjectLike(a)){if(!this.searchableObjects)return!1;a=JSON.stringify(a)}return-1!==a.toLowerCase().indexOf(t)}).length>0)}getRowClass(){return()=>({clickable:!i.isUndefined(this.selectionType)})}toggleExpandRow(t,e,n){n.stopPropagation(),e?(this.expanded=void 0,this.setExpandedRow.emit(void 0)):(this.expanded=t,this.table.rowDetail.collapseAllRows(),this.setExpandedRow.emit(t)),this.table.rowDetail.toggleExpandRow(t)}}},uNpg:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Component)({selector:"tree-node-checkbox",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <ng-container *treeMobxAutorun="{ dontDetach: true }">\n      <input\n        class="tree-node-checkbox"\n        type="checkbox"\n        (click)="node.mouseAction(\'checkboxClick\', $event)"\n        [checked]="node.isSelected"\n        [indeterminate]="node.isPartiallySelected"\n      />\n    </ng-container>\n  '})],t)}()},uPDw:function(t,e,n){var a=n("oRml"),r=n("0nKi"),i=n("L0Z1"),s=i&&i.isTypedArray,u=s?r(s):a;t.exports=u},uXwI:function(t,e,n){!function(t){"use strict";var e={ss:"sekundes_sekundēm_sekunde_sekundes".split("_"),m:"minūtes_minūtēm_minūte_minūtes".split("_"),mm:"minūtes_minūtēm_minūte_minūtes".split("_"),h:"stundas_stundām_stunda_stundas".split("_"),hh:"stundas_stundām_stunda_stundas".split("_"),d:"dienas_dienām_diena_dienas".split("_"),dd:"dienas_dienām_diena_dienas".split("_"),M:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),MM:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")};function n(t,e,n){return n?e%10==1&&e%100!=11?t[2]:t[3]:e%10==1&&e%100!=11?t[0]:t[1]}function a(t,a,r){return t+" "+n(e[r],t,a)}function r(t,a,r){return n(e[r],t,a)}t.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"pēc %s",past:"pirms %s",s:function(t,e){return e?"dažas sekundes":"dažām sekundēm"},ss:a,m:r,mm:a,h:r,hh:a,d:r,dd:a,M:r,MM:a,y:r,yy:a},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},uYzU:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(){}transform(t){switch(t){case"user:rbd":return"user:rbd (tcmu-runner)";default:return t}}}},ufoC:function(t,e,n){"use strict";var a=function(t){return t.auth="Login",t.cephfs="CephFS",t.rbd="RBD",t.pool="Pool",t.osd="OSD",t.role="Role",t.user="User",t}({}),r=n("jVDg"),i=n("8Y7J"),s=n("GiVz");n.d(e,"a",(function(){return l}));class u{constructor(t,e,n){this.running=t,this.failure=e,this.success=n}}class o{failure(t){return this.i18n("Failed to {{failure}} {{metadata}}",{failure:this.operation.failure,metadata:this.involves(t)})}running(t){return`${this.operation.running} ${this.involves(t)}`}success(t){return`${this.operation.success} ${this.involves(t)}`}constructor(t,e,n,a){this.i18n=t,this.operation=e,this.involves=n,this.errors=a||(()=>({}))}}let l=(()=>{class t{constructor(t){this.i18n=t,this.defaultMessage=this.newTaskMessage(new u(this.i18n("Executing"),this.i18n("execute"),this.i18n("Executed")),t=>t&&(a[t.component]||t.component)||this.i18n("unknown task"),()=>({})),this.commonOperations={create:new u(this.i18n("Creating"),this.i18n("create"),this.i18n("Created")),update:new u(this.i18n("Updating"),this.i18n("update"),this.i18n("Updated")),delete:new u(this.i18n("Deleting"),this.i18n("delete"),this.i18n("Deleted")),add:new u(this.i18n("Adding"),this.i18n("add"),this.i18n("Added")),remove:new u(this.i18n("Removing"),this.i18n("remove"),this.i18n("Removed")),import:new u(this.i18n("Importing"),this.i18n("import"),this.i18n("Imported"))},this.rbd={default:t=>this.i18n("RBD '{{id}}'",{id:""+t.image_spec}),create:t=>{const e=new r.a(t.pool_name,t.namespace,t.image_name).toString();return this.i18n("RBD '{{id}}'",{id:e})},child:t=>{const e=new r.a(t.child_pool_name,t.child_namespace,t.child_image_name).toString();return this.i18n("RBD '{{id}}'",{id:e})},destination:t=>{const e=new r.a(t.dest_pool_name,t.dest_namespace,t.dest_image_name).toString();return this.i18n("RBD '{{id}}'",{id:e})},snapshot:t=>this.i18n("RBD snapshot '{{id}}'",{id:`${t.image_spec}@${t.snapshot_name}`})},this.rbd_mirroring={site_name:()=>this.i18n("mirroring site name"),bootstrap:()=>this.i18n("bootstrap token"),pool:t=>this.i18n("mirror mode for pool '{{id}}'",{id:""+t.pool_name}),pool_peer:t=>this.i18n("mirror peer for pool '{{id}}'",{id:""+t.pool_name})},this.grafana={update_dashboards:()=>this.i18n("all dashboards")},this.messages={"host/create":this.newTaskMessage(this.commonOperations.create,t=>this.host(t)),"host/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.host(t)),"osd/create":this.newTaskMessage(this.commonOperations.create,t=>this.i18n("OSDs (DriveGroups: {{tracking_id}})",{tracking_id:t.tracking_id})),"osd/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.osd(t)),"pool/create":this.newTaskMessage(this.commonOperations.create,t=>this.pool(t),t=>({17:this.i18n("Name is already used by {{pool_name}}.",{pool_name:this.pool(t)})})),"pool/edit":this.newTaskMessage(this.commonOperations.update,t=>this.pool(t),t=>({17:this.i18n("Name is already used by {{pool_name}}.",{pool_name:this.pool(t)})})),"pool/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.pool(t)),"ecp/create":this.newTaskMessage(this.commonOperations.create,t=>this.ecp(t),t=>({17:this.i18n("Name is already used by {{name}}.",{name:this.ecp(t)})})),"ecp/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.ecp(t)),"crushRule/create":this.newTaskMessage(this.commonOperations.create,t=>this.crushRule(t),t=>({17:this.i18n("Name is already used by {{name}}.",{name:this.crushRule(t)})})),"crushRule/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.crushRule(t)),"rbd/create":this.newTaskMessage(this.commonOperations.create,this.rbd.create,t=>({17:this.i18n("Name is already used by {{rbd_name}}.",{rbd_name:this.rbd.create(t)})})),"rbd/edit":this.newTaskMessage(this.commonOperations.update,this.rbd.default,t=>({17:this.i18n("Name is already used by {{rbd_name}}.",{rbd_name:this.rbd.default(t)})})),"rbd/delete":this.newTaskMessage(this.commonOperations.delete,this.rbd.default,t=>({16:this.i18n("{{rbd_name}} is busy.",{rbd_name:this.rbd.default(t)}),39:this.i18n("{{rbd_name}} contains snapshots.",{rbd_name:this.rbd.default(t)})})),"rbd/clone":this.newTaskMessage(new u(this.i18n("Cloning"),this.i18n("clone"),this.i18n("Cloned")),this.rbd.child,t=>({17:this.i18n("Name is already used by {{rbd_name}}.",{rbd_name:this.rbd.child(t)}),22:this.i18n("Snapshot of {{rbd_name}} must be protected.",{rbd_name:this.rbd.child(t)})})),"rbd/copy":this.newTaskMessage(new u(this.i18n("Copying"),this.i18n("copy"),this.i18n("Copied")),this.rbd.destination,t=>({17:this.i18n("Name is already used by {{rbd_name}}.",{rbd_name:this.rbd.destination(t)})})),"rbd/flatten":this.newTaskMessage(new u(this.i18n("Flattening"),this.i18n("flatten"),this.i18n("Flattened")),this.rbd.default),"rbd/snap/create":this.newTaskMessage(this.commonOperations.create,this.rbd.snapshot,t=>({17:this.i18n("Name is already used by {{snap_name}}.",{snap_name:this.rbd.snapshot(t)})})),"rbd/snap/edit":this.newTaskMessage(this.commonOperations.update,this.rbd.snapshot,t=>({16:this.i18n("Cannot unprotect {{snap_name}} because it contains child images.",{snap_name:this.rbd.snapshot(t)})})),"rbd/snap/delete":this.newTaskMessage(this.commonOperations.delete,this.rbd.snapshot,t=>({16:this.i18n("Cannot delete {{snap_name}} because it's protected.",{snap_name:this.rbd.snapshot(t)})})),"rbd/snap/rollback":this.newTaskMessage(new u(this.i18n("Rolling back"),this.i18n("rollback"),this.i18n("Rolled back")),this.rbd.snapshot),"rbd/trash/move":this.newTaskMessage(new u(this.i18n("Moving"),this.i18n("move"),this.i18n("Moved")),t=>this.i18n("image '{{id}}' to trash",{id:t.image_spec}),()=>({2:this.i18n("Could not find image.")})),"rbd/trash/restore":this.newTaskMessage(new u(this.i18n("Restoring"),this.i18n("restore"),this.i18n("Restored")),t=>this.i18n("image '{{id}}' into '{{new_id}}'",{id:t.image_id_spec,new_id:t.new_image_name}),t=>({17:this.i18n("Image name '{{id}}' is already in use.",{id:t.new_image_name})})),"rbd/trash/remove":this.newTaskMessage(new u(this.i18n("Deleting"),this.i18n("delete"),this.i18n("Deleted")),t=>this.i18n("image '{{id}}'",{id:""+t.image_id_spec})),"rbd/trash/purge":this.newTaskMessage(new u(this.i18n("Purging"),this.i18n("purge"),this.i18n("Purged")),t=>{let e=this.i18n("all pools");return t.pool_name&&(e=`'${t.pool_name}'`),this.i18n("images from {{message}}",{message:e})}),"rbd/mirroring/site_name/edit":this.newTaskMessage(this.commonOperations.update,this.rbd_mirroring.site_name,()=>({})),"rbd/mirroring/bootstrap/create":this.newTaskMessage(this.commonOperations.create,this.rbd_mirroring.bootstrap,()=>({})),"rbd/mirroring/bootstrap/import":this.newTaskMessage(this.commonOperations.import,this.rbd_mirroring.bootstrap,()=>({})),"rbd/mirroring/pool/edit":this.newTaskMessage(this.commonOperations.update,this.rbd_mirroring.pool,()=>({16:this.i18n("Cannot disable mirroring because it contains a peer.")})),"rbd/mirroring/peer/add":this.newTaskMessage(this.commonOperations.create,this.rbd_mirroring.pool_peer,()=>({})),"rbd/mirroring/peer/edit":this.newTaskMessage(this.commonOperations.update,this.rbd_mirroring.pool_peer,()=>({})),"rbd/mirroring/peer/delete":this.newTaskMessage(this.commonOperations.delete,this.rbd_mirroring.pool_peer,()=>({})),"iscsi/target/create":this.newTaskMessage(this.commonOperations.create,t=>this.iscsiTarget(t)),"iscsi/target/edit":this.newTaskMessage(this.commonOperations.update,t=>this.iscsiTarget(t)),"iscsi/target/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.iscsiTarget(t)),"nfs/create":this.newTaskMessage(this.commonOperations.create,t=>this.nfs(t)),"nfs/edit":this.newTaskMessage(this.commonOperations.update,t=>this.nfs(t)),"nfs/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.nfs(t)),"grafana/dashboards/update":this.newTaskMessage(this.commonOperations.update,this.grafana.update_dashboards,()=>({})),"orchestrator/identify_device":this.newTaskMessage(new u(this.i18n("Identifying"),this.i18n("identify"),this.i18n("Identified")),t=>this.i18n("device '{{device}}' on host '{{hostname}}'",t)),"service/create":this.newTaskMessage(this.commonOperations.create,t=>this.service(t)),"service/delete":this.newTaskMessage(this.commonOperations.delete,t=>this.service(t))}}newTaskMessage(t,e,n){return new o(this.i18n,t,e,n)}host(t){return this.i18n("host '{{hostname}}'",{hostname:t.hostname})}osd(t){return this.i18n("OSD '{{svc_id}}'",{svc_id:t.svc_id})}pool(t){return this.i18n("pool '{{pool_name}}'",{pool_name:t.pool_name})}ecp(t){return this.i18n("erasure code profile '{{name}}'",{name:t.name})}crushRule(t){return this.i18n("crush rule '{{name}}'",{name:t.name})}iscsiTarget(t){return this.i18n("target '{{target_iqn}}'",{target_iqn:t.target_iqn})}nfs(t){return this.i18n("NFS {{nfs_id}}",{nfs_id:`'${t.cluster_id}:${t.export_id?t.export_id:t.path}'`})}service(t){return this.i18n("Service '{{service_name}}'",{service_name:t.service_name})}_getTaskTitle(t){return t.name&&t.name.startsWith("progress/")?this.newTaskMessage(new u(t.name.replace("progress/",""),"",t.name.replace("progress/","")),t=>""):this.messages[t.name]||this.defaultMessage}getSuccessTitle(t){return this._getTaskTitle(t).success(t.metadata)}getErrorMessage(t){return this._getTaskTitle(t).errors(t.metadata)[t.exception.code]||t.exception.detail}getErrorTitle(t){return this._getTaskTitle(t).failure(t.metadata)}getRunningTitle(t){return this._getTaskTitle(t).running(t.metadata)}getRunningText(t){return this._getTaskTitle(t).operation.running}}return t.ngInjectableDef=i["ɵɵdefineInjectable"]({factory:function(){return new t(i["ɵɵinject"](s.a))},token:t,providedIn:"root"}),t})()},uy3s:function(t,e,n){var a=n("+GvH"),r=n("x3F9");t.exports=function t(e,n,i,s,u){return e===n||(null==e||null==n||!r(e)&&!r(n)?e!=e&&n!=n:a(e,n,i,s,t,u))}},uy83:function(t,e,n){var a=n("0Dky");t.exports=!a((function(){return Object.isExtensible(Object.preventExtensions({}))}))},uyHG:function(t,e){var n,a=/^\[object .+?Constructor\]$/,r="object"==typeof global&&global&&global.Object===Object&&global,i="object"==typeof self&&self&&self.Object===Object&&self,s=r||i||Function("return this")(),u=Array.prototype,o=Function.prototype,l=Object.prototype,d=s["__core-js_shared__"],c=(n=/[^.]+$/.exec(d&&d.keys&&d.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",f=o.toString,h=l.hasOwnProperty,g=l.toString,p=RegExp("^"+f.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),b=u.splice,m=O(s,"Map"),y=O(Object,"create");function v(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function x(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function _(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var a=t[e];this.set(a[0],a[1])}}function T(t,e){for(var n,a,r=t.length;r--;)if((n=t[r][0])===(a=e)||n!=n&&a!=a)return r;return-1}function w(t,e){var n,a,r=t.__data__;return("string"==(a=typeof(n=e))||"number"==a||"symbol"==a||"boolean"==a?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function O(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return function(t){return!(!I(t)||(e=t,c&&c in e))&&(function(t){var e=I(t)?g.call(t):"";return"[object Function]"==e||"[object GeneratorFunction]"==e}(t)||function(t){var e=!1;if(null!=t&&"function"!=typeof t.toString)try{e=!!(t+"")}catch(n){}return e}(t)?p:a).test(function(t){if(null!=t){try{return f.call(t)}catch(e){}try{return t+""}catch(e){}}return""}(t));var e}(n)?n:void 0}function S(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var a=arguments,r=e?e.apply(this,a):a[0],i=n.cache;if(i.has(r))return i.get(r);var s=t.apply(this,a);return n.cache=i.set(r,s),s};return n.cache=new(S.Cache||_),n}function I(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}v.prototype.clear=function(){this.__data__=y?y(null):{}},v.prototype.delete=function(t){return this.has(t)&&delete this.__data__[t]},v.prototype.get=function(t){var e=this.__data__;if(y){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return h.call(e,t)?e[t]:void 0},v.prototype.has=function(t){var e=this.__data__;return y?void 0!==e[t]:h.call(e,t)},v.prototype.set=function(t,e){return this.__data__[t]=y&&void 0===e?"__lodash_hash_undefined__":e,this},x.prototype.clear=function(){this.__data__=[]},x.prototype.delete=function(t){var e=this.__data__,n=T(e,t);return!(n<0||(n==e.length-1?e.pop():b.call(e,n,1),0))},x.prototype.get=function(t){var e=this.__data__,n=T(e,t);return n<0?void 0:e[n][1]},x.prototype.has=function(t){return T(this.__data__,t)>-1},x.prototype.set=function(t,e){var n=this.__data__,a=T(n,t);return a<0?n.push([t,e]):n[a][1]=e,this},_.prototype.clear=function(){this.__data__={hash:new v,map:new(m||x),string:new v}},_.prototype.delete=function(t){return w(this,t).delete(t)},_.prototype.get=function(t){return w(this,t).get(t)},_.prototype.has=function(t){return w(this,t).has(t)},_.prototype.set=function(t,e){return w(this,t).set(t,e),this},S.Cache=_,t.exports=S},vCyI:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{constructor(t){this._selected=[],t&&(this._selected=t),this.update()}update(){this.hasSelection=this._selected.length>0,this.hasSingleSelection=1===this._selected.length,this.hasMultiSelection=this._selected.length>1}set selected(t){this._selected=t,this.update()}get selected(){return this._selected}add(t){this._selected.push(t),this.update()}first(){return this.hasSelection?this._selected[0]:null}}},vDHD:function(t,e,n){var a=n("aT2Y");t.exports=function(){this.__data__=new a,this.size=0}},vIot:function(t,e){t.exports=function(t){return t!=t}},vJUC:function(t,e){t.exports=function(t,e){for(var n=-1,a=e.length,r=t.length;++n<a;)t[r+n]=e[n];return t}},vkgz:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("7o/Q"),r=n("KqfI"),i=n("n6bG");function s(t,e,n){return function(a){return a.lift(new u(t,e,n))}}class u{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new o(t,this.nextOrObserver,this.error,this.complete))}}class o extends a.a{constructor(t,e,n,a){super(t),this._tapNext=r.a,this._tapError=r.a,this._tapComplete=r.a,this._tapError=n||r.a,this._tapComplete=a||r.a,Object(i.a)(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||r.a,this._tapError=e.error||r.a,this._tapComplete=e.complete||r.a)}_next(t){try{this._tapNext.call(this._context,t)}catch(e){return void this.destination.error(e)}this.destination.next(t)}_error(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}},"w/8D":function(t,e,n){var a=n("KFwg"),r=function(){try{var t=a(Object,"defineProperty");return t({},"",{}),t}catch(e){}}();t.exports=r},w4fU:function(t,e,n){var a=n("pMcL"),r=n("XhiP"),i=n("JEWA"),s=n("ezUo"),u=n("s4/e"),o=n("cRL0"),l=a?a.prototype:void 0,d=l?l.valueOf:void 0;t.exports=function(t,e,n,a,l,c,f){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!c(new r(t),new r(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return i(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var h=u;case"[object Set]":if(h||(h=o),t.size!=e.size&&!(1&a))return!1;var g=f.get(t);if(g)return g==e;a|=2,f.set(t,e);var p=s(h(t),h(e),a,l,c,f);return f.delete(t),p;case"[object Symbol]":if(d)return d.call(t)==d.call(e)}return!1}},w9WL:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("XNiG"),i=n("xgIS"),s=n("2Vo4"),u=n("l7GE"),o=n("ZUHj");function l(t){return e=>e.lift(new d(t))}class d{constructor(t){this.notifier=t}call(t,e){const n=new c(t),a=Object(o.a)(n,this.notifier);return a&&!n.seenValue?(n.add(a),e.subscribe(n)):n}}class c extends u.a{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,a,r){this.seenValue=!0,this.complete()}notifyComplete(){}}var f=n("mrSG");n.d(e,"a",(function(){return p})),n.d(e,"b",(function(){return pt})),n.d(e,"c",(function(){return tt})),n.d(e,"d",(function(){return ht})),n.d(e,"e",(function(){return D})),n.d(e,"f",(function(){return lt})),n.d(e,"g",(function(){return b})),n.d(e,"h",(function(){return ot})),n.d(e,"i",(function(){return et})),n.d(e,"j",(function(){return dt})),n.d(e,"k",(function(){return gt})),n.d(e,"l",(function(){return mt})),n.d(e,"m",(function(){return xt})),n.d(e,"n",(function(){return ut})),n.d(e,"o",(function(){return q})),n.d(e,"p",(function(){return M})),n.d(e,"q",(function(){return P})),n.d(e,"r",(function(){return g})),n.d(e,"s",(function(){return y})),n.d(e,"t",(function(){return _})),n.d(e,"u",(function(){return _t})),n.d(e,"v",(function(){return x})),n.d(e,"w",(function(){return ct})),n.d(e,"x",(function(){return v})),n.d(e,"y",(function(){return h})),n.d(e,"z",(function(){return T})),n.d(e,"A",(function(){return it})),n.d(e,"B",(function(){return m})),n.d(e,"C",(function(){return O}));class h{constructor(t){this.document=t,this.width=this.getWidth()}getWidth(){const t=this.document.createElement("div");t.style.visibility="hidden",t.style.width="100px",t.style.msOverflowStyle="scrollbar",this.document.body.appendChild(t);const e=t.offsetWidth;t.style.overflow="scroll";const n=this.document.createElement("div");n.style.width="100%",t.appendChild(n);const a=n.offsetWidth;return t.parentNode.removeChild(t),e-a}}class g{getDimensions(t){return t.getBoundingClientRect()}}class p{constructor(){this.columnInputChanges=new r.a}get columnInputChanges$(){return this.columnInputChanges.asObservable()}onInputChange(){this.columnInputChanges.next()}}class b{constructor(t){this.template=t}}class m{constructor(t,e){this.element=t,this.zone=e,this.isVisible=!1,this.visible=new a.EventEmitter}ngOnInit(){this.runCheck()}ngOnDestroy(){clearTimeout(this.timeout)}onVisibilityChange(){this.zone.run(()=>{this.isVisible=!0,this.visible.emit(!0)})}runCheck(){const t=()=>{const{offsetHeight:e,offsetWidth:n}=this.element.nativeElement;e&&n?(clearTimeout(this.timeout),this.onVisibilityChange()):(clearTimeout(this.timeout),this.zone.runOutsideAngular(()=>{this.timeout=setTimeout(()=>t(),50)}))};this.timeout=setTimeout(()=>t())}}class y{constructor(t){this.dragX=!0,this.dragY=!0,this.dragStart=new a.EventEmitter,this.dragging=new a.EventEmitter,this.dragEnd=new a.EventEmitter,this.isDragging=!1,this.element=t.nativeElement}ngOnChanges(t){t.dragEventTarget&&t.dragEventTarget.currentValue&&this.dragModel.dragging&&this.onMousedown(t.dragEventTarget.currentValue)}ngOnDestroy(){this._destroySubscription()}onMouseup(t){this.isDragging&&(this.isDragging=!1,this.element.classList.remove("dragging"),this.subscription&&(this._destroySubscription(),this.dragEnd.emit({event:t,element:this.element,model:this.dragModel})))}onMousedown(t){if(t.target.classList.contains("draggable")&&(this.dragX||this.dragY)){t.preventDefault(),this.isDragging=!0;const e={x:t.clientX,y:t.clientY},n=Object(i.a)(document,"mouseup");this.subscription=n.subscribe(t=>this.onMouseup(t));const a=Object(i.a)(document,"mousemove").pipe(l(n)).subscribe(t=>this.move(t,e));this.subscription.add(a),this.dragStart.emit({event:t,element:this.element,model:this.dragModel})}}move(t,e){if(!this.isDragging)return;const n=t.clientY-e.y;this.dragX&&(this.element.style.left=t.clientX-e.x+"px"),this.dragY&&(this.element.style.top=n+"px"),this.element.classList.add("dragging"),this.dragging.emit({event:t,element:this.element,model:this.dragModel})}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}"undefined"!=typeof window&&window||global,"undefined"!=typeof window&&window||global,"undefined"!=typeof window&&window||global;class v{constructor(t,e){this.renderer=e,this.resizeEnabled=!0,this.resize=new a.EventEmitter,this.resizing=!1,this.element=t.nativeElement}ngAfterViewInit(){const t=this.renderer;this.resizeHandle=t.createElement("span"),t.addClass(this.resizeHandle,this.resizeEnabled?"resize-handle":"resize-handle--not-resizable"),t.appendChild(this.element,this.resizeHandle)}ngOnDestroy(){this._destroySubscription(),this.renderer.destroyNode?this.renderer.destroyNode(this.resizeHandle):this.renderer.removeChild(this.renderer.parentNode(this.resizeHandle),this.resizeHandle)}onMouseup(){this.resizing=!1,this.subscription&&!this.subscription.closed&&(this._destroySubscription(),this.resize.emit(this.element.clientWidth))}onMousedown(t){const e=t.target.classList.contains("resize-handle"),n=this.element.clientWidth,a=t.screenX;if(e){t.stopPropagation(),this.resizing=!0;const e=Object(i.a)(document,"mouseup");this.subscription=e.subscribe(t=>this.onMouseup());const r=Object(i.a)(document,"mousemove").pipe(l(e)).subscribe(t=>this.move(t,n,a));this.subscription.add(r)}}move(t,e,n){const a=e+(t.screenX-n);(!this.minWidth||a>=this.minWidth)&&(!this.maxWidth||a<=this.maxWidth)&&(this.element.style.width=a+"px")}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}class x{constructor(t,e){this.document=e,this.reorder=new a.EventEmitter,this.targetChanged=new a.EventEmitter,this.differ=t.find({}).create()}ngAfterContentInit(){this.updateSubscriptions(),this.draggables.changes.subscribe(this.updateSubscriptions.bind(this))}ngOnDestroy(){this.draggables.forEach(t=>{t.dragStart.unsubscribe(),t.dragging.unsubscribe(),t.dragEnd.unsubscribe()})}updateSubscriptions(){const t=this.differ.diff(this.createMapDiffs());if(t){const e=({currentValue:t,previousValue:e})=>{n({previousValue:e}),t&&(t.dragStart.subscribe(this.onDragStart.bind(this)),t.dragging.subscribe(this.onDragging.bind(this)),t.dragEnd.subscribe(this.onDragEnd.bind(this)))},n=({previousValue:t})=>{t&&(t.dragStart.unsubscribe(),t.dragging.unsubscribe(),t.dragEnd.unsubscribe())};t.forEachAddedItem(e),t.forEachRemovedItem(n)}}onDragStart(){this.positions={};let t=0;for(const e of this.draggables.toArray()){const n=e.element,a=parseInt(n.offsetLeft.toString(),0);this.positions[e.dragModel.prop]={left:a,right:a+parseInt(n.offsetWidth.toString(),0),index:t++,element:n}}}onDragging({model:t,event:e}){const n=this.positions[t.prop],a=this.isTarget(t,e);a?this.lastDraggingIndex!==a.i&&(this.targetChanged.emit({prevIndex:this.lastDraggingIndex,newIndex:a.i,initialIndex:n.index}),this.lastDraggingIndex=a.i):this.lastDraggingIndex!==n.index&&(this.targetChanged.emit({prevIndex:this.lastDraggingIndex,initialIndex:n.index}),this.lastDraggingIndex=n.index)}onDragEnd({element:t,model:e,event:n}){const a=this.positions[e.prop],r=this.isTarget(e,n);r&&this.reorder.emit({prevIndex:a.index,newIndex:r.i,model:e}),this.lastDraggingIndex=void 0,t.style.left="auto"}isTarget(t,e){let n=0;const a=this.document.elementsFromPoint(e.x||e.clientX,e.y||e.clientY);for(const r in this.positions){const e=this.positions[r];if(t.prop!==r&&a.find(t=>t===e.element))return{pos:e,i:n};n++}}createMapDiffs(){return this.draggables.toArray().reduce((t,e)=>(t[e.dragModel.$$id]=e,t),{})}}class _{constructor(){this.pressEnabled=!0,this.duration=500,this.longPressStart=new a.EventEmitter,this.longPressing=new a.EventEmitter,this.longPressEnd=new a.EventEmitter,this.mouseX=0,this.mouseY=0}get press(){return this.pressing}get isLongPress(){return this.isLongPressing}onMouseDown(t){if(1!==t.which||!this.pressEnabled)return;if(t.target.classList.contains("resize-handle"))return;this.mouseX=t.clientX,this.mouseY=t.clientY,this.pressing=!0,this.isLongPressing=!1;const e=Object(i.a)(document,"mouseup");this.subscription=e.subscribe(t=>this.onMouseup()),this.timeout=setTimeout(()=>{this.isLongPressing=!0,this.longPressStart.emit({event:t,model:this.pressModel}),this.subscription.add(Object(i.a)(document,"mousemove").pipe(l(e)).subscribe(t=>this.onMouseMove(t))),this.loop(t)},this.duration),this.loop(t)}onMouseMove(t){if(this.pressing&&!this.isLongPressing){const e=Math.abs(t.clientX-this.mouseX)>10,n=Math.abs(t.clientY-this.mouseY)>10;(e||n)&&this.endPress()}}loop(t){this.isLongPressing&&(this.timeout=setTimeout(()=>{this.longPressing.emit({event:t,model:this.pressModel}),this.loop(t)},50))}endPress(){clearTimeout(this.timeout),this.isLongPressing=!1,this.pressing=!1,this._destroySubscription(),this.longPressEnd.emit({model:this.pressModel})}onMouseup(){this.endPress()}ngOnDestroy(){this._destroySubscription()}_destroySubscription(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=void 0)}}class T{constructor(t,e,n){this.ngZone=t,this.renderer=n,this.scrollbarV=!1,this.scrollbarH=!1,this.scroll=new a.EventEmitter,this.scrollYPos=0,this.scrollXPos=0,this.prevScrollYPos=0,this.prevScrollXPos=0,this._scrollEventListener=null,this.element=e.nativeElement}ngOnInit(){if(this.scrollbarV||this.scrollbarH){const t=this.renderer;this.parentElement=t.parentNode(t.parentNode(this.element)),this._scrollEventListener=this.onScrolled.bind(this),this.parentElement.addEventListener("scroll",this._scrollEventListener)}}ngOnDestroy(){this._scrollEventListener&&(this.parentElement.removeEventListener("scroll",this._scrollEventListener),this._scrollEventListener=null)}setOffset(t){this.parentElement&&(this.parentElement.scrollTop=t)}onScrolled(t){const e=t.currentTarget;requestAnimationFrame(()=>{this.scrollYPos=e.scrollTop,this.scrollXPos=e.scrollLeft,this.updateOffset()})}updateOffset(){let t;this.scrollYPos<this.prevScrollYPos?t="down":this.scrollYPos>this.prevScrollYPos&&(t="up"),this.scroll.emit({direction:t,scrollYPos:this.scrollYPos,scrollXPos:this.scrollXPos}),this.prevScrollYPos=this.scrollYPos,this.prevScrollXPos=this.scrollXPos}}function w(){return""}function O(t){return null==t?w:"number"==typeof t?S:-1!==t.indexOf(".")?N:I}function S(t,e){if(null==t)return"";if(!t||null==e)return t;const n=t[e];return null==n?"":n}function I(t,e){if(null==t)return"";if(!t||!e)return t;const n=t[e];return null==n?"":n}function N(t,e){if(null==t)return"";if(!t||!e)return t;let n=t[e];if(void 0!==n)return n;n=t;const a=e.split(".");if(a.length)for(let r=0;r<a.length;r++)if(n=n[a[r]],null==n)return"";return n}function C(t){return t&&(e=>O(t)(e,t))}function R(t,e,n){if(e&&n){const a={},r=t.length;let i=null;a[0]=new A;const s=t.reduce((t,e)=>{const a=n(e);return-1===t.indexOf(a)&&t.push(a),t},[]);for(let e=0;e<r;e++)a[n(t[e])]=new A(t[e]);for(let o=0;o<r;o++){i=a[n(t[o])];let r=0;const u=e(i.row);u&&s.indexOf(u)>-1&&(r=u),i.parent=a[r],i.row.level=i.parent.row.level+1,i.parent.children.push(i)}let u=[];return a[0].flatten((function(){u=[...u,this.row]}),!0),u}return t}class A{constructor(t=null){t||(t={level:-1,treeStatus:"expanded"}),this.row=t,this.parent=null,this.children=[]}flatten(t,e){if("expanded"===this.row.treeStatus)for(let n=0,a=this.children.length;n<a;n++){const a=this.children[n];t.apply(a,Array.prototype.slice.call(arguments,2)),e&&a.flatten.apply(a,arguments)}}}function k(t){return(t=(t=(t=t.replace(/[^a-zA-Z0-9 ]/g," ")).replace(/([a-z](?=[A-Z]))/g,"$1 ")).replace(/([^a-zA-Z0-9 ])|^[0-9]+/g,"").trim().toLowerCase()).replace(/([ 0-9]+)([a-zA-Z])/g,(function(t,e,n){return e.trim()+n.toUpperCase()}))}function E(t){if(!t)return;let e=!1;for(const n of t)n.$$id||(n.$$id=("0000"+(Math.random()*Math.pow(36,4)<<0).toString(36)).slice(-4)),L(n.prop)&&n.name&&(n.prop=k(n.name)),n.$$valueGetter||(n.$$valueGetter=O(n.prop)),!L(n.prop)&&L(n.name)&&(n.name=String(n.prop).replace(/([A-Z])/g,t=>" "+t).replace(/^./,t=>t.toUpperCase())),L(n.prop)&&L(n.name)&&(n.name=""),n.hasOwnProperty("resizeable")||(n.resizeable=!0),n.hasOwnProperty("sortable")||(n.sortable=!0),n.hasOwnProperty("draggable")||(n.draggable=!0),n.hasOwnProperty("canAutoResize")||(n.canAutoResize=!0),n.hasOwnProperty("width")||(n.width=150),n.hasOwnProperty("isTreeColumn")&&n.isTreeColumn&&!e?e=!0:n.isTreeColumn=!1}function L(t){return null==t}class D{constructor(t){this.template=t}}class P{constructor(t){this.template=t}}class M{constructor(){this.rowHeight=0,this.toggle=new a.EventEmitter}get template(){return this._templateInput||this._templateQuery}toggleExpandRow(t){this.toggle.emit({type:"row",value:t})}expandAllRows(){this.toggle.emit({type:"all",value:!0})}collapseAllRows(){this.toggle.emit({type:"all",value:!1})}}class q{get template(){return this._templateInput||this._templateQuery}}function j(t){const e={left:[],center:[],right:[]};if(t)for(const n of t)n.frozenLeft?e.left.push(n):n.frozenRight?e.right.push(n):e.center.push(n);return e}function F(t,e){return{left:V(t.left),center:V(t.center),right:V(t.right),total:Math.floor(V(e))}}function V(t,e){let n=0;if(t)for(const a of t)n+=parseFloat(e&&a[e]?a[e]:a.width);return n}function G(t){const e=[],n=j(t);return e.push({type:"left",columns:n.left}),e.push({type:"center",columns:n.center}),e.push({type:"right",columns:n.right}),e}class B{constructor(){this.treeArray=[]}clearCache(){this.treeArray=[]}initCache(t){const{rows:e,rowHeight:n,detailRowHeight:a,externalVirtual:r,rowCount:i,rowIndexes:s,rowExpansions:u}=t,o="function"==typeof n,l="function"==typeof a;if(!o&&isNaN(n))throw new Error(`Row Height cache initialization failed. Please ensure that 'rowHeight' is a\n        valid number or function value: (${n}) when 'scrollbarV' is enabled.`);if(!l&&isNaN(a))throw new Error(`Row Height cache initialization failed. Please ensure that 'detailRowHeight' is a\n        valid number or function value: (${a}) when 'scrollbarV' is enabled.`);const d=r?i:e.length;this.treeArray=new Array(d);for(let c=0;c<d;++c)this.treeArray[c]=0;for(let c=0;c<d;++c){const t=e[c];let r=n;o&&(r=n(t));const i=u.has(t);t&&i&&(r+=l?a(t,s.get(t)):a),this.update(c,r)}}getRowIndex(t){return 0===t?0:this.calcRowIndex(t)}update(t,e){if(!this.treeArray.length)throw new Error(`Update at index ${t} with value ${e} failed:\n        Row Height cache not initialized.`);const n=this.treeArray.length;for(t|=0;t<n;)this.treeArray[t]+=e,t|=t+1}query(t){if(!this.treeArray.length)throw new Error(`query at index ${t} failed: Fenwick tree array not initialized.`);let e=0;for(t|=0;t>=0;)e+=this.treeArray[t],t=(t&t+1)-1;return e}queryBetween(t,e){return this.query(e)-this.query(t-1)}calcRowIndex(t){if(!this.treeArray.length)return 0;let e=-1;const n=this.treeArray.length;for(let a=Math.pow(2,n.toString(2).length-1);0!==a;a>>=1){const r=e+a;r<n&&t>=this.treeArray[r]&&(t-=this.treeArray[r],e=r)}return e+1}}const z={},Y="undefined"!=typeof document?document.createElement("div").style:void 0,H=function(){const t="undefined"!=typeof window?window.getComputedStyle(document.documentElement,""):void 0,e=void 0!==t?Array.prototype.slice.call(t).join("").match(/-(moz|webkit|ms)-/):null,n=null!==e?e[1]:void 0,a=void 0!==n?"WebKit|Moz|MS|O".match(new RegExp("("+n+")","i"))[1]:void 0;return a?{dom:a,lowercase:n,css:`-${n}-`,js:n[0].toUpperCase()+n.substr(1)}:void 0}();function U(t){const e=k(t);return z[e]||(void 0!==H&&void 0!==Y[H.css+t]?z[e]=H.css+t:void 0!==Y[t]&&(z[e]=t)),z[e]}const W="undefined"!=typeof window?U("transform"):void 0,K="undefined"!=typeof window?U("backfaceVisibility"):void 0,$="undefined"!=typeof window?!!U("transform"):void 0,Z="undefined"!=typeof window?!!U("perspective"):void 0,J="undefined"!=typeof window?window.navigator.userAgent:"Chrome",Q=/Safari\//.test(J)&&!/Chrome\//.test(J);function X(t,e,n){void 0!==W&&$?!Q&&Z?(t[W]=`translate3d(${e}px, ${n}px, 0)`,t[K]="hidden"):t[k(W)]=`translate(${e}px, ${n}px)`:(t.top=n+"px",t.left=e+"px")}class tt{constructor(t){this.cd=t,this.selected=[],this.scroll=new a.EventEmitter,this.page=new a.EventEmitter,this.activate=new a.EventEmitter,this.select=new a.EventEmitter,this.detailToggle=new a.EventEmitter,this.rowContextmenu=new a.EventEmitter(!1),this.treeAction=new a.EventEmitter,this.rowHeightsCache=new B,this.temp=[],this.offsetY=0,this.indexes={},this.rowIndexes=new Map,this.rowExpansions=[],this.getDetailRowHeight=(t,e)=>{if(!this.rowDetail)return 0;const n=this.rowDetail.rowHeight;return"function"==typeof n?n(t,e):n},this.rowTrackingFn=(t,e)=>{const n=this.getRowIndex(e);return this.trackByProp?e[this.trackByProp]:n}}set pageSize(t){this._pageSize=t,this.recalcLayout()}get pageSize(){return this._pageSize}set rows(t){this._rows=t,this.recalcLayout()}get rows(){return this._rows}set columns(t){this._columns=t;const e=j(t);this.columnGroupWidths=F(e,t)}get columns(){return this._columns}set offset(t){this._offset=t,(!this.scrollbarV||this.scrollbarV&&!this.virtualization)&&this.recalcLayout()}get offset(){return this._offset}set rowCount(t){this._rowCount=t,this.recalcLayout()}get rowCount(){return this._rowCount}get bodyWidth(){return this.scrollbarH?this.innerWidth+"px":"100%"}set bodyHeight(t){this._bodyHeight=this.scrollbarV?t+"px":"auto",this.recalcLayout()}get bodyHeight(){return this._bodyHeight}get selectEnabled(){return!!this.selectionType}get scrollHeight(){if(this.scrollbarV&&this.virtualization&&this.rowCount)return this.rowHeightsCache.query(this.rowCount-1)}ngOnInit(){this.rowDetail&&(this.listener=this.rowDetail.toggle.subscribe(({type:t,value:e})=>{"row"===t&&this.toggleRowExpansion(e),"all"===t&&this.toggleAllRows(e),this.updateIndexes(),this.updateRows(),this.cd.markForCheck()})),this.groupHeader&&(this.listener=this.groupHeader.toggle.subscribe(({type:t,value:e})=>{"group"===t&&this.toggleRowExpansion(e),"all"===t&&this.toggleAllRows(e),this.updateIndexes(),this.updateRows(),this.cd.markForCheck()}))}ngOnDestroy(){(this.rowDetail||this.groupHeader)&&this.listener.unsubscribe()}updateOffsetY(t){this.scroller&&(this.scrollbarV&&this.virtualization&&t?t=this.rowHeightsCache.query(this.pageSize*t-1):this.scrollbarV&&!this.virtualization&&(t=0),this.scroller.setOffset(t||0))}onBodyScroll(t){const e=t.scrollYPos,n=t.scrollXPos;this.offsetY===e&&this.offsetX===n||this.scroll.emit({offsetY:e,offsetX:n}),this.offsetY=e,this.offsetX=n,this.updateIndexes(),this.updatePage(t.direction),this.updateRows()}updatePage(t){let e=this.indexes.first/this.pageSize;"up"===t?e=Math.ceil(e):"down"===t&&(e=Math.floor(e)),void 0===t||isNaN(e)||this.page.emit({offset:e})}updateRows(){const{first:t,last:e}=this.indexes;let n=t,a=0;const r=[];if(this.rowIndexes.clear(),this.groupedRows){let t=3;for(1===this.groupedRows.length&&(t=this.groupedRows[0].value.length);n<e&&n<this.groupedRows.length;)r[a]=this.groupedRows[n],a++,n++}else for(;n<e&&n<this.rowCount;){const t=this.rows[n];t&&(this.rowIndexes.set(t,n),r[a]=t),a++,n++}this.temp=r}getRowHeight(t){return"function"==typeof this.rowHeight?this.rowHeight(t):this.rowHeight}getGroupHeight(t){let e=0;if(t.value)for(let n=0;n<t.value.length;n++)e+=this.getRowAndDetailHeight(t.value[n]);return e}getRowAndDetailHeight(t){let e=this.getRowHeight(t);return this.getRowExpanded(t)&&(e+=this.getDetailRowHeight(t)),e}getRowsStyles(t){const e={};if(this.groupedRows&&(e.width=this.columnGroupWidths.total),this.scrollbarV&&this.virtualization){let n=0;if(this.groupedRows){const e=t[t.length-1];n=e?this.getRowIndex(e):0}else n=this.getRowIndex(t);X(e,0,this.rowHeightsCache.query(n-1))}return e}getBottomSummaryRowStyles(){if(!this.scrollbarV||!this.rows||!this.rows.length)return null;const t={position:"absolute"};return X(t,0,this.rowHeightsCache.query(this.rows.length-1)),t}hideIndicator(){setTimeout(()=>this.loadingIndicator=!1,500)}updateIndexes(){let t=0,e=0;if(this.scrollbarV)if(this.virtualization){const n=parseInt(this.bodyHeight,0);t=this.rowHeightsCache.getRowIndex(this.offsetY),e=this.rowHeightsCache.getRowIndex(n+this.offsetY)+1}else t=0,e=this.rowCount;else this.externalPaging||(t=Math.max(this.offset*this.pageSize,0)),e=Math.min(t+this.pageSize,this.rowCount);this.indexes={first:t,last:e}}refreshRowHeightCache(){if(this.scrollbarV&&(!this.scrollbarV||this.virtualization)&&(this.rowHeightsCache.clearCache(),this.rows&&this.rows.length)){const t=new Set;for(const e of this.rows)this.getRowExpanded(e)&&t.add(e);this.rowHeightsCache.initCache({rows:this.rows,rowHeight:this.rowHeight,detailRowHeight:this.getDetailRowHeight,externalVirtual:this.scrollbarV&&this.externalPaging,rowCount:this.rowCount,rowIndexes:this.rowIndexes,rowExpansions:t})}}getAdjustedViewPortIndex(){const t=this.indexes.first;return this.scrollbarV&&this.virtualization&&this.rowHeightsCache.query(t-1)<=this.offsetY?t-1:t}toggleRowExpansion(t){const e=this.getAdjustedViewPortIndex(),n=this.getRowExpandedIdx(t,this.rowExpansions),a=n>-1;if(this.scrollbarV&&this.virtualization){const e=this.getDetailRowHeight(t)*(a?-1:1),n=this.getRowIndex(t);this.rowHeightsCache.update(n,e)}a?this.rowExpansions.splice(n,1):this.rowExpansions.push(t),this.detailToggle.emit({rows:[t],currentIndex:e})}toggleAllRows(t){this.rowExpansions=[];const e=this.getAdjustedViewPortIndex();if(t)for(const n of this.rows)this.rowExpansions.push(n);this.scrollbarV&&this.recalcLayout(),this.detailToggle.emit({rows:this.rows,currentIndex:e})}recalcLayout(){this.refreshRowHeightCache(),this.updateIndexes(),this.updateRows()}columnTrackingFn(t,e){return e.$$id}stylesByGroup(t){const e=this.columnGroupWidths,n=this.offsetX,a={width:e[t]+"px"};if("left"===t)X(a,n,0);else if("right"===t){const t=parseInt(this.innerWidth+"",0);X(a,-1*(e.total-t-n),0)}return a}getRowExpanded(t){if(0===this.rowExpansions.length&&this.groupExpansionDefault)for(const e of this.groupedRows)this.rowExpansions.push(e);return this.getRowExpandedIdx(t,this.rowExpansions)>-1}getRowExpandedIdx(t,e){if(!e||!e.length)return-1;const n=this.rowIdentity(t);return e.findIndex(t=>this.rowIdentity(t)===n)}getRowIndex(t){return this.rowIndexes.get(t)||0}onTreeAction(t){this.treeAction.emit({row:t})}}class et{constructor(t){this.cd=t,this.sort=new a.EventEmitter,this.reorder=new a.EventEmitter,this.resize=new a.EventEmitter,this.select=new a.EventEmitter,this.columnContextmenu=new a.EventEmitter(!1),this._columnGroupWidths={total:100},this._styleByGroup={left:{},center:{},right:{}},this.destroyed=!1}set innerWidth(t){this._innerWidth=t,setTimeout(()=>{if(this._columns){const t=j(this._columns);this._columnGroupWidths=F(t,this._columns),this.setStylesByGroup()}})}get innerWidth(){return this._innerWidth}set headerHeight(t){this._headerHeight="auto"!==t?t+"px":t}get headerHeight(){return this._headerHeight}set columns(t){this._columns=t;const e=j(t);this._columnsByPin=G(t),setTimeout(()=>{this._columnGroupWidths=F(e,t),this.setStylesByGroup()})}get columns(){return this._columns}set offsetX(t){this._offsetX=t,this.setStylesByGroup()}get offsetX(){return this._offsetX}ngOnDestroy(){this.destroyed=!0}onLongPressStart({event:t,model:e}){e.dragging=!0,this.dragEventTarget=t}onLongPressEnd({event:t,model:e}){this.dragEventTarget=t,setTimeout(()=>{const t=this._columns.find(t=>t.$$id===e.$$id);t&&(t.dragging=!1)},5)}get headerWidth(){return this.scrollbarH?this.innerWidth+"px":"100%"}trackByGroups(t,e){return e.type}columnTrackingFn(t,e){return e.$$id}onColumnResized(t,e){t<=e.minWidth?t=e.minWidth:t>=e.maxWidth&&(t=e.maxWidth),this.resize.emit({column:e,prevValue:e.width,newValue:t})}onColumnReordered({prevIndex:t,newIndex:e,model:n}){const a=this.getColumn(e);a.isTarget=!1,a.targetMarkerContext=void 0,this.reorder.emit({column:n,prevValue:t,newValue:e})}onTargetChanged({prevIndex:t,newIndex:e,initialIndex:n}){if(t||0===t){const e=this.getColumn(t);e.isTarget=!1,e.targetMarkerContext=void 0}if(e||0===e){const t=this.getColumn(e);t.isTarget=!0,n!==e&&(t.targetMarkerContext={class:"targetMarker ".concat(n>e?"dragFromRight":"dragFromLeft")})}}getColumn(t){const e=this._columnsByPin[0].columns.length;if(t<e)return this._columnsByPin[0].columns[t];const n=this._columnsByPin[1].columns.length;return t<e+n?this._columnsByPin[1].columns[t-e]:this._columnsByPin[2].columns[t-e-n]}onSort({column:t,prevValue:e,newValue:n}){if(t.dragging)return;const a=this.calcNewSorts(t,e,n);this.sort.emit({sorts:a,column:t,prevValue:e,newValue:n})}calcNewSorts(t,e,n){let a=0;this.sorts||(this.sorts=[]);const r=this.sorts.map((e,n)=>((e=Object.assign({},e)).prop===t.prop&&(a=n),e));return void 0===n?r.splice(a,1):e?r[a].dir=n:("single"===this.sortType&&r.splice(0,this.sorts.length),r.push({dir:n,prop:t.prop})),r}setStylesByGroup(){this._styleByGroup.left=this.calcStylesByGroup("left"),this._styleByGroup.center=this.calcStylesByGroup("center"),this._styleByGroup.right=this.calcStylesByGroup("right"),this.destroyed||this.cd.detectChanges()}calcStylesByGroup(t){const e=this._columnGroupWidths,n={width:e[t]+"px"};return"center"===t?X(n,-1*this.offsetX,0):"right"===t&&X(n,-1*(e.total-this.innerWidth),0),n}}function nt(t,e,n){let a,r,i;n=n||{};let s=null,u=0;function o(){u=!1===n.leading?0:+new Date,s=null,i=t.apply(a,r)}return function(){const l=+new Date;u||!1!==n.leading||(u=l);const d=e-(l-u);return a=this,r=arguments,d<=0?(clearTimeout(s),s=null,u=l,i=t.apply(a,r)):s||!1===n.trailing||(s=setTimeout(o,d)),i}}function at(t,e){for(const n of e){const e=t.indexOf(n);t.splice(e,1)}}function rt(t,e=300){let n=0;for(const a of t)n+=a.width||e;return n}const it={asc:"asc",desc:"desc"};function st(t,e){if(null==t&&(t=0),null==e&&(e=0),t instanceof Date&&e instanceof Date){if(t<e)return-1;if(t>e)return 1}else if(isNaN(parseFloat(t))||!isFinite(t)||isNaN(parseFloat(e))||!isFinite(e)){if(t=String(t),e=String(e),t.toLowerCase()<e.toLowerCase())return-1;if(t.toLowerCase()>e.toLowerCase())return 1}else{if(parseFloat(t)<parseFloat(e))return-1;if(parseFloat(t)>parseFloat(e))return 1}return 0}let ut=(()=>{class t{constructor(t,e,n,r,i,u,o){this.scrollbarHelper=t,this.dimensionsHelper=e,this.cd=n,this.columnChangesService=u,this.configuration=o,this.selected=[],this.scrollbarV=!1,this.scrollbarH=!1,this.rowHeight=30,this.columnMode="standard",this.headerHeight=30,this.footerHeight=0,this.externalPaging=!1,this.externalSorting=!1,this.loadingIndicator=!1,this.reorderable=!0,this.swapColumns=!0,this.sortType="single",this.sorts=[],this.cssClasses={sortAscending:"datatable-icon-up",sortDescending:"datatable-icon-down",pagerLeftArrow:"datatable-icon-left",pagerRightArrow:"datatable-icon-right",pagerPrevious:"datatable-icon-prev",pagerNext:"datatable-icon-skip"},this.messages={emptyMessage:"No data to display",totalMessage:"total",selectedMessage:"selected"},this.groupExpansionDefault=!1,this.selectAllRowsOnPage=!1,this.virtualization=!0,this.summaryRow=!1,this.summaryHeight=30,this.summaryPosition="top",this.scroll=new a.EventEmitter,this.activate=new a.EventEmitter,this.select=new a.EventEmitter,this.sort=new a.EventEmitter,this.page=new a.EventEmitter,this.reorder=new a.EventEmitter,this.resize=new a.EventEmitter,this.tableContextmenu=new a.EventEmitter(!1),this.treeAction=new a.EventEmitter,this.rowCount=0,this._offsetX=new s.a(0),this._count=0,this._offset=0,this._subscriptions=[],this.rowIdentity=t=>this._groupRowsBy?t.key:t,this.element=r.nativeElement,this.rowDiffer=i.find({}).create(),this.configuration&&this.configuration.messages&&(this.messages=Object.assign({},this.configuration.messages))}set rows(t){this._rows=t,t&&(this._internalRows=[...t]),this.externalSorting||this.sortInternalRows(),this._internalRows=R(this._internalRows,C(this.treeFromRelation),C(this.treeToRelation)),this.recalculate(),this._rows&&this._groupRowsBy&&(this.groupedRows=this.groupArrayBy(this._rows,this._groupRowsBy)),this.cd.markForCheck()}get rows(){return this._rows}set groupRowsBy(t){t&&(this._groupRowsBy=t,this._rows&&this._groupRowsBy&&(this.groupedRows=this.groupArrayBy(this._rows,this._groupRowsBy)))}get groupRowsBy(){return this._groupRowsBy}set columns(t){t&&(this._internalColumns=[...t],E(this._internalColumns),this.recalculateColumns()),this._columns=t}get columns(){return this._columns}set limit(t){this._limit=t,this.recalculate()}get limit(){return this._limit}set count(t){this._count=t,this.recalculate()}get count(){return this._count}set offset(t){this._offset=t}get offset(){return Math.max(Math.min(this._offset,Math.ceil(this.rowCount/this.pageSize)-1),0)}get isFixedHeader(){const t=this.headerHeight;return"string"!=typeof t||"auto"!==t}get isFixedRow(){return"auto"!==this.rowHeight}get isVertScroll(){return this.scrollbarV}get isVirtualized(){return this.virtualization}get isHorScroll(){return this.scrollbarH}get isSelectable(){return void 0!==this.selectionType}get isCheckboxSelection(){return"checkbox"===this.selectionType}get isCellSelection(){return"cell"===this.selectionType}get isSingleSelection(){return"single"===this.selectionType}get isMultiSelection(){return"multi"===this.selectionType}get isMultiClickSelection(){return"multiClick"===this.selectionType}set columnTemplates(t){this._columnTemplates=t,this.translateColumns(t)}get columnTemplates(){return this._columnTemplates}get allRowsSelected(){let t=this.rows&&this.selected&&this.selected.length===this.rows.length;if(this.selectAllRowsOnPage){const e=this.bodyComponent.indexes;t=this.selected.length===e.last-e.first}return this.selected&&this.rows&&0!==this.rows.length&&t}ngOnInit(){this.recalculate()}ngAfterViewInit(){this.externalSorting||this.sortInternalRows(),"undefined"!=typeof requestAnimationFrame&&requestAnimationFrame(()=>{this.recalculate(),this.externalPaging&&this.scrollbarV&&this.page.emit({count:this.count,pageSize:this.pageSize,limit:this.limit,offset:0})})}ngAfterContentInit(){this.columnTemplates.changes.subscribe(t=>this.translateColumns(t)),this.listenForColumnInputChanges()}translateColumns(t){if(t){const e=t.toArray();e.length&&(this._internalColumns=function(t){const e=[];for(const n of t){const t={},a=Object.getOwnPropertyNames(n);for(const e of a)t[e]=n[e];n.headerTemplate&&(t.headerTemplate=n.headerTemplate),n.cellTemplate&&(t.cellTemplate=n.cellTemplate),n.summaryFunc&&(t.summaryFunc=n.summaryFunc),n.summaryTemplate&&(t.summaryTemplate=n.summaryTemplate),e.push(t)}return e}(e),E(this._internalColumns),this.recalculateColumns(),this.sortInternalRows(),this.cd.markForCheck())}}groupArrayBy(t,e){const n=new Map;return t.forEach(t=>{const a=t[e];n.has(a)?n.get(a).push(t):n.set(a,[t])}),Array.from(n,t=>({key:t[0],value:t[1]}))}ngDoCheck(){this.rowDiffer.diff(this.rows)&&(this.externalSorting?this._internalRows=[...this.rows]:this.sortInternalRows(),this._internalRows=R(this._internalRows,C(this.treeFromRelation),C(this.treeToRelation)),this.recalculatePages(),this.cd.markForCheck())}recalculate(){this.recalculateDims(),this.recalculateColumns()}onWindowResize(){this.recalculate()}recalculateColumns(t=this._internalColumns,e=-1,n=this.scrollbarH){if(!t)return;let a=this._innerWidth;return this.scrollbarV&&(a-=this.scrollbarHelper.width),"force"===this.columnMode?function(t,e,n,a,r=300){const i=t.slice(n+1,t.length).filter(t=>!1!==t.canAutoResize);for(const c of i)c.$$oldWidth||(c.$$oldWidth=c.width);let s=0,u=!1,o=rt(t,r),l=e-o;const d=[];do{s=l/i.length,u=o>=e;for(const t of i){if(u&&a)t.width=t.$$oldWidth||t.width||r;else{const e=(t.width||r)+s;t.minWidth&&e<t.minWidth?(t.width=t.minWidth,d.push(t)):t.maxWidth&&e>t.maxWidth?(t.width=t.maxWidth,d.push(t)):t.width=e}t.width=Math.max(0,t.width)}o=rt(t),l=e-o,at(i,d)}while(l>1&&0!==i.length)}(t,a,e,n):"flex"===this.columnMode&&function(t,e){const n=function(t,e){let n=0;for(const a of t)n+=a.width;return n}(t),a=function(t){let e=0;for(const n of t)e+=n.flexGrow||0;return e}(t),r=j(t);n!==e&&function(t,e,n){for(const i in t)for(const a of t[i])a.canAutoResize?a.width=0:(e-=a.width,n-=a.flexGrow?a.flexGrow:0);const a={};let r=e;do{const e=r/n;r=0;for(const n in t)for(const i of t[n])if(i.canAutoResize&&!a[i.prop]){const t=i.width+i.flexGrow*e;void 0!==i.minWidth&&t<i.minWidth?(r+=t-i.minWidth,i.width=i.minWidth,a[i.prop]=!0):i.width=t}}while(0!==r)}(r,e,a)}(t,a),t}recalculateDims(){const t=this.dimensionsHelper.getDimensions(this.element);if(this._innerWidth=Math.floor(t.width),this.scrollbarV){let e=t.height;this.headerHeight&&(e-=this.headerHeight),this.footerHeight&&(e-=this.footerHeight),this.bodyHeight=e}this.recalculatePages()}recalculatePages(){this.pageSize=this.calcPageSize(),this.rowCount=this.calcRowCount()}onBodyPage({offset:t}){this.externalPaging&&!this.virtualization||(this.offset=t,this.page.emit({count:this.count,pageSize:this.pageSize,limit:this.limit,offset:this.offset}))}onBodyScroll(t){this._offsetX.next(t.offsetX),this.scroll.emit(t),this.cd.detectChanges()}onFooterPage(t){this.offset=t.page-1,this.bodyComponent.updateOffsetY(this.offset),this.page.emit({count:this.count,pageSize:this.pageSize,limit:this.limit,offset:this.offset}),this.selectAllRowsOnPage&&(this.selected=[],this.select.emit({selected:this.selected}))}calcPageSize(t=this.rows){if(this.scrollbarV&&this.virtualization){const t=Math.ceil(this.bodyHeight/this.rowHeight);return Math.max(t,0)}return void 0!==this.limit?this.limit:t?t.length:0}calcRowCount(t=this.rows){return this.externalPaging?this.count:t?this.groupedRows?this.groupedRows.length:null!=this.treeFromRelation&&null!=this.treeToRelation?this._internalRows.length:t.length:0}onColumnContextmenu({event:t,column:e}){this.tableContextmenu.emit({event:t,type:"header",content:e})}onRowContextmenu({event:t,row:e}){this.tableContextmenu.emit({event:t,type:"body",content:e})}onColumnResize({column:t,newValue:e}){if(void 0===t)return;let n;const a=this._internalColumns.map((a,r)=>((a=Object.assign({},a)).$$id===t.$$id&&(n=r,a.width=e,a.$$oldWidth=e),a));this.recalculateColumns(a,n),this._internalColumns=a,this.resize.emit({column:t,newValue:e})}onColumnReorder({column:t,newValue:e,prevValue:n}){const a=this._internalColumns.map(t=>Object.assign({},t));if(this.swapColumns){const r=a[e];a[e]=t,a[n]=r}else if(e>n){const t=a[n];for(let r=n;r<e;r++)a[r]=a[r+1];a[e]=t}else{const t=a[n];for(let r=n;r>e;r--)a[r]=a[r-1];a[e]=t}this._internalColumns=a,this.reorder.emit({column:t,newValue:e,prevValue:n})}onColumnSort(t){this.selectAllRowsOnPage&&(this.selected=[],this.select.emit({selected:this.selected})),this.sorts=t.sorts,!1===this.externalSorting&&this.sortInternalRows(),this._internalRows=R(this._internalRows,C(this.treeFromRelation),C(this.treeToRelation)),this.offset=0,this.bodyComponent.updateOffsetY(this.offset),this.sort.emit(t)}onHeaderSelect(t){if(this.selectAllRowsOnPage){const t=this.bodyComponent.indexes.first,e=this.bodyComponent.indexes.last,n=this.selected.length===e-t;this.selected=[],n||this.selected.push(...this._internalRows.slice(t,e))}else{const t=this.selected.length===this.rows.length;this.selected=[],t||this.selected.push(...this.rows)}this.select.emit({selected:this.selected})}onBodySelect(t){this.select.emit(t)}onTreeAction(t){const e=t.row,n=this._rows.findIndex(e=>e[this.treeToRelation]===t.row[this.treeToRelation]);this.treeAction.emit({row:e,rowIndex:n})}ngOnDestroy(){this._subscriptions.forEach(t=>t.unsubscribe())}listenForColumnInputChanges(){this._subscriptions.push(this.columnChangesService.columnInputChanges$.subscribe(()=>{this.columnTemplates&&this.columnTemplates.notifyOnChanges()}))}sortInternalRows(){this._internalRows=function(t,e,n){if(!t)return[];if(!n||!n.length||!e)return[...t];const a=new Map;t.forEach((t,e)=>a.set(t,e));const r=[...t],i=e.reduce((t,e)=>(e.comparator&&"function"==typeof e.comparator&&(t[e.prop]=e.comparator),t),{}),s=n.map(t=>{const e=t.prop;return{prop:e,dir:t.dir,valueGetter:O(e),compareFn:i[e]||st}});return r.sort((function(t,e){for(const n of s){const{prop:a,valueGetter:r}=n,i=r(t,a),s=r(e,a),u=n.dir!==it.desc?n.compareFn(i,s,t,e,n.dir):-n.compareFn(i,s,t,e,n.dir);if(0!==u)return u}return a.has(t)&&a.has(e)?a.get(t)<a.get(e)?-1:1:0}))}(this._internalRows,this._internalColumns,this.sorts)}}return Object(f.__decorate)([function(t,e,n){return{configurable:!0,enumerable:n.enumerable,get:function(){return Object.defineProperty(this,e,{configurable:!0,enumerable:n.enumerable,value:nt(n.value,5,void 0)}),this[e]}}},Object(f.__metadata)("design:type",Function),Object(f.__metadata)("design:paramtypes",[]),Object(f.__metadata)("design:returntype",void 0)],t.prototype,"onWindowResize",null),t})();class ot{constructor(t){this.cd=t,this.sort=new a.EventEmitter,this.select=new a.EventEmitter,this.columnContextmenu=new a.EventEmitter(!1),this.sortFn=this.onSort.bind(this),this.selectFn=this.select.emit.bind(this.select),this.cellContext={column:this.column,sortDir:this.sortDir,sortFn:this.sortFn,allRowsSelected:this.allRowsSelected,selectFn:this.selectFn}}set allRowsSelected(t){this._allRowsSelected=t,this.cellContext.allRowsSelected=t}get allRowsSelected(){return this._allRowsSelected}set column(t){this._column=t,this.cellContext.column=t,this.cd.markForCheck()}get column(){return this._column}set sorts(t){this._sorts=t,this.sortDir=this.calcSortDir(t),this.cellContext.sortDir=this.sortDir,this.sortClass=this.calcSortClass(this.sortDir),this.cd.markForCheck()}get sorts(){return this._sorts}get columnCssClasses(){let t="datatable-header-cell";if(this.column.sortable&&(t+=" sortable"),this.column.resizeable&&(t+=" resizeable"),this.column.headerClass)if("string"==typeof this.column.headerClass)t+=" "+this.column.headerClass;else if("function"==typeof this.column.headerClass){const e=this.column.headerClass({column:this.column});if("string"==typeof e)t+=e;else if("object"==typeof e){const n=Object.keys(e);for(const a of n)!0===e[a]&&(t+=" "+a)}}const e=this.sortDir;return e&&(t+=" sort-active sort-"+e),t}get name(){return void 0===this.column.headerTemplate?this.column.name:void 0}get minWidth(){return this.column.minWidth}get maxWidth(){return this.column.maxWidth}get width(){return this.column.width}get isCheckboxable(){return this.column.checkboxable&&this.column.headerCheckboxable&&"checkbox"===this.selectionType}onContextmenu(t){this.columnContextmenu.emit({event:t,column:this.column})}calcSortDir(t){if(t&&this.column){const e=t.find(t=>t.prop===this.column.prop);if(e)return e.dir}}onSort(){if(!this.column.sortable)return;const t=(e=this.sortDir,"single"===this.sortType?e===it.asc?it.desc:it.asc:e?e===it.asc?it.desc:void 0:it.asc);var e;this.sort.emit({column:this.column,prevValue:this.sortDir,newValue:t})}calcSortClass(t){return t===it.asc?"sort-btn sort-asc "+this.sortAscendingIcon:t===it.desc?"sort-btn sort-desc "+this.sortDescendingIcon:"sort-btn"}}class lt{constructor(){this.selectedCount=0,this.page=new a.EventEmitter}get isVisible(){return this.rowCount/this.pageSize>1}get curPage(){return this.offset+1}}class dt{constructor(){this.change=new a.EventEmitter,this._count=0,this._page=1,this._size=0}set size(t){this._size=t,this.pages=this.calcPages()}get size(){return this._size}set count(t){this._count=t,this.pages=this.calcPages()}get count(){return this._count}set page(t){this._page=t,this.pages=this.calcPages()}get page(){return this._page}get totalPages(){const t=this.size<1?1:Math.ceil(this.count/this.size);return Math.max(t||0,1)}canPrevious(){return this.page>1}canNext(){return this.page<this.totalPages}prevPage(){this.selectPage(this.page-1)}nextPage(){this.selectPage(this.page+1)}selectPage(t){t>0&&t<=this.totalPages&&t!==this.page&&(this.page=t,this.change.emit({page:t}))}calcPages(t){const e=[];let n=1,a=this.totalPages;t=t||this.page,5<this.totalPages&&(n=t-Math.floor(2.5),a=t+Math.floor(2.5),n<1?(n=1,a=Math.min(n+5-1,this.totalPages)):a>this.totalPages&&(n=Math.max(this.totalPages-5+1,1),a=this.totalPages));for(let r=n;r<=a;r++)e.push({number:r,text:r});return e}}class ct{}const ft=function(){var t={up:38,down:40,return:13,escape:27,left:37,right:39};return t[t.up]="up",t[t.down]="down",t[t.return]="return",t[t.escape]="escape",t[t.left]="left",t[t.right]="right",t}();class ht{constructor(t,e,n,r){this.differs=t,this.scrollbarHelper=e,this.cd=n,this.treeStatus="collapsed",this.activate=new a.EventEmitter,this.treeAction=new a.EventEmitter,this._groupStyles={left:{},center:{},right:{}},this._element=r.nativeElement,this._rowDiffer=t.find({}).create()}set columns(t){this._columns=t,this.recalculateColumns(t),this.buildStylesByGroup()}get columns(){return this._columns}set innerWidth(t){if(this._columns){const t=j(this._columns);this._columnGroupWidths=F(t,this._columns)}this._innerWidth=t,this.recalculateColumns(),this.buildStylesByGroup()}get innerWidth(){return this._innerWidth}set offsetX(t){this._offsetX=t,this.buildStylesByGroup()}get offsetX(){return this._offsetX}get cssClass(){let t="datatable-body-row";if(this.isSelected&&(t+=" active"),this.rowIndex%2!=0&&(t+=" datatable-row-odd"),this.rowIndex%2==0&&(t+=" datatable-row-even"),this.rowClass){const e=this.rowClass(this.row);if("string"==typeof e)t+=" "+e;else if("object"==typeof e){const n=Object.keys(e);for(const a of n)!0===e[a]&&(t+=" "+a)}}return t}get columnsTotalWidths(){return this._columnGroupWidths.total}ngDoCheck(){this._rowDiffer.diff(this.row)&&this.cd.markForCheck()}trackByGroups(t,e){return e.type}columnTrackingFn(t,e){return e.$$id}buildStylesByGroup(){this._groupStyles.left=this.calcStylesByGroup("left"),this._groupStyles.center=this.calcStylesByGroup("center"),this._groupStyles.right=this.calcStylesByGroup("right"),this.cd.markForCheck()}calcStylesByGroup(t){const e=this._columnGroupWidths,n=this.offsetX,a={width:e[t]+"px"};if("left"===t)X(a,n,0);else if("right"===t){const t=parseInt(this.innerWidth+"",0);X(a,-1*(e.total-t-n+this.scrollbarHelper.width),0)}return a}onActivate(t,e){t.cellIndex=e,t.rowElement=this._element,this.activate.emit(t)}onKeyDown(t){const e=t.keyCode;(e===ft.return||e===ft.down||e===ft.up||e===ft.left||e===ft.right)&&t.target===this._element&&(t.preventDefault(),t.stopPropagation(),this.activate.emit({type:"keydown",event:t,row:this.row,rowElement:this._element}))}onMouseenter(t){this.activate.emit({type:"mouseenter",event:t,row:this.row,rowElement:this._element})}recalculateColumns(t=this.columns){this._columns=t;const e=j(this._columns);this._columnsByPin=G(this._columns),this._columnGroupWidths=F(e,this._columns)}onTreeAction(){this.treeAction.emit()}}class gt{constructor(t,e){this.cd=t,this.differs=e,this.rowContextmenu=new a.EventEmitter(!1),this.groupContext={group:this.row,expanded:this.expanded,rowIndex:this.rowIndex},this.rowContext={row:this.row,expanded:this.expanded,rowIndex:this.rowIndex},this._expanded=!1,this.rowDiffer=e.find({}).create()}set rowIndex(t){this._rowIndex=t,this.rowContext.rowIndex=t,this.groupContext.rowIndex=t,this.cd.markForCheck()}get rowIndex(){return this._rowIndex}set expanded(t){this._expanded=t,this.groupContext.expanded=t,this.rowContext.expanded=t,this.cd.markForCheck()}get expanded(){return this._expanded}ngDoCheck(){this.rowDiffer.diff(this.row)&&(this.rowContext.row=this.row,this.groupContext.group=this.row,this.cd.markForCheck())}onContextmenu(t){this.rowContextmenu.emit({event:t,row:this.row})}getGroupHeaderStyle(){const t={};return t.transform="translate3d("+this.offsetX+"px, 0px, 0px)",t["backface-visibility"]="hidden",t.width=this.innerWidth,t}}class pt{constructor(t,e){this.cd=e,this.activate=new a.EventEmitter,this.treeAction=new a.EventEmitter,this.isFocused=!1,this.onCheckboxChangeFn=this.onCheckboxChange.bind(this),this.activateFn=this.activate.emit.bind(this.activate),this.cellContext={onCheckboxChangeFn:this.onCheckboxChangeFn,activateFn:this.activateFn,row:this.row,group:this.group,value:this.value,column:this.column,rowHeight:this.rowHeight,isSelected:this.isSelected,rowIndex:this.rowIndex,treeStatus:this.treeStatus,onTreeAction:this.onTreeAction.bind(this)},this._element=t.nativeElement}set group(t){this._group=t,this.cellContext.group=t,this.checkValueUpdates(),this.cd.markForCheck()}get group(){return this._group}set rowHeight(t){this._rowHeight=t,this.cellContext.rowHeight=t,this.checkValueUpdates(),this.cd.markForCheck()}get rowHeight(){return this._rowHeight}set isSelected(t){this._isSelected=t,this.cellContext.isSelected=t,this.cd.markForCheck()}get isSelected(){return this._isSelected}set expanded(t){this._expanded=t,this.cellContext.expanded=t,this.cd.markForCheck()}get expanded(){return this._expanded}set rowIndex(t){this._rowIndex=t,this.cellContext.rowIndex=t,this.checkValueUpdates(),this.cd.markForCheck()}get rowIndex(){return this._rowIndex}set column(t){this._column=t,this.cellContext.column=t,this.checkValueUpdates(),this.cd.markForCheck()}get column(){return this._column}set row(t){this._row=t,this.cellContext.row=t,this.checkValueUpdates(),this.cd.markForCheck()}get row(){return this._row}set sorts(t){this._sorts=t,this.calcSortDir=this.calcSortDir(t)}get sorts(){return this._sorts}set treeStatus(t){this._treeStatus="collapsed"!==t&&"expanded"!==t&&"loading"!==t&&"disabled"!==t?"collapsed":t,this.cellContext.treeStatus=this._treeStatus,this.checkValueUpdates(),this.cd.markForCheck()}get treeStatus(){return this._treeStatus}get columnCssClasses(){let t="datatable-body-cell";if(this.column.cellClass)if("string"==typeof this.column.cellClass)t+=" "+this.column.cellClass;else if("function"==typeof this.column.cellClass){const e=this.column.cellClass({row:this.row,group:this.group,column:this.column,value:this.value,rowHeight:this.rowHeight});if("string"==typeof e)t+=e;else if("object"==typeof e){const n=Object.keys(e);for(const a of n)!0===e[a]&&(t+=" "+a)}}return this.sortDir||(t+=" sort-active"),this.isFocused&&(t+=" active"),this.sortDir===it.asc&&(t+=" sort-asc"),this.sortDir===it.desc&&(t+=" sort-desc"),t}get width(){return this.column.width}get minWidth(){return this.column.minWidth}get maxWidth(){return this.column.maxWidth}get height(){const t=this.rowHeight;return isNaN(t)?t:t+"px"}ngDoCheck(){this.checkValueUpdates()}ngOnDestroy(){this.cellTemplate&&this.cellTemplate.clear()}checkValueUpdates(){let t="";if(this.row&&this.column){const e=this.column.$$valueGetter(this.row,this.column.prop),n=this.column.pipe;n?t=n.transform(e):void 0!==t&&(t=e)}else t="";this.value!==t&&(this.value=t,this.cellContext.value=t,this.sanitizedValue=null!=t?this.stripHtml(t):t,this.cd.markForCheck())}onFocus(){this.isFocused=!0}onBlur(){this.isFocused=!1}onClick(t){this.activate.emit({type:"click",event:t,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element})}onDblClick(t){this.activate.emit({type:"dblclick",event:t,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element})}onKeyDown(t){const e=t.keyCode;(e===ft.return||e===ft.down||e===ft.up||e===ft.left||e===ft.right)&&t.target===this._element&&(t.preventDefault(),t.stopPropagation(),this.activate.emit({type:"keydown",event:t,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element}))}onCheckboxChange(t){this.activate.emit({type:"checkbox",event:t,row:this.row,group:this.group,rowHeight:this.rowHeight,column:this.column,value:this.value,cellElement:this._element,treeStatus:"collapsed"})}calcSortDir(t){if(!t)return;const e=t.find(t=>t.prop===this.column.prop);return e?e.dir:void 0}stripHtml(t){return t.replace?t.replace(/<\/?[^>]+(>|$)/g,""):t}onTreeAction(){this.treeAction.emit(this.row)}calcLeftMargin(t,e){return t.isTreeColumn?e.level*(null!=t.treeLevelIndent?t.treeLevelIndent:50):0}}function bt(t,e,n){const a=n(e,t);return a>-1?t.splice(a,1):t.push(e),t}class mt{constructor(){this.activate=new a.EventEmitter,this.select=new a.EventEmitter}selectRow(t,e,n){if(!this.selectEnabled)return;const a="checkbox"===this.selectionType,r="multiClick"===this.selectionType;let i=[];i="multi"===this.selectionType||a||r?t.shiftKey?function(t,e,n,a,r){const i=n<a;for(let s=0;s<e.length;s++){const r=e[s],u=s>=a&&s<=n,o=s<=a&&s>=n;let l={start:0,end:0};l=i?{start:n,end:a}:{start:a,end:n+1},(i&&o||!i&&u)&&s>=l.start&&s<=l.end&&t.push(r)}return t}([],this.rows,e,this.prevIndex,this.getRowSelectedIdx.bind(this)):bt(t.ctrlKey||t.metaKey||r||a?[...this.selected]:[],n,this.getRowSelectedIdx.bind(this)):bt([],n,this.getRowSelectedIdx.bind(this)),"function"==typeof this.selectCheck&&(i=i.filter(this.selectCheck.bind(this))),this.selected.splice(0,this.selected.length),this.selected.push(...i),this.prevIndex=e,this.select.emit({selected:i})}onActivate(t,e){const{type:n,event:a,row:r}=t,i="checkbox"===this.selectionType;!i&&("click"===n||"dblclick"===n)||i&&"checkbox"===n?this.selectRow(a,e,r):"keydown"===n&&(a.keyCode===ft.return?this.selectRow(a,e,r):this.onKeyboardFocus(t)),this.activate.emit(t)}onKeyboardFocus(t){const{keyCode:e}=t.event;if(e===ft.up||e===ft.down||e===ft.right||e===ft.left){const n="cell"===this.selectionType;t.cellElement&&n?n&&this.focusCell(t.cellElement,t.rowElement,e,t.cellIndex):this.focusRow(t.rowElement,e)}}focusRow(t,e){const n=this.getPrevNextRow(t,e);n&&n.focus()}getPrevNextRow(t,e){const n=t.parentElement;if(n){let t;if(e===ft.up?t=n.previousElementSibling:e===ft.down&&(t=n.nextElementSibling),t&&t.children.length)return t.children[0]}}focusCell(t,e,n,a){let r;if(n===ft.left)r=t.previousElementSibling;else if(n===ft.right)r=t.nextElementSibling;else if(n===ft.up||n===ft.down){const t=this.getPrevNextRow(e,n);if(t){const e=t.getElementsByClassName("datatable-body-cell");e.length&&(r=e[a])}}r&&r.focus()}getRowSelected(t){return this.getRowSelectedIdx(t,this.selected)>-1}getRowSelectedIdx(t,e){if(!e||!e.length)return-1;const n=this.rowIdentity(t);return e.findIndex(t=>this.rowIdentity(t)===n)}}function yt(t){const e=t.filter(t=>!!t);return e.length?e.some(t=>"number"!=typeof t)?null:e.reduce((t,e)=>t+e):null}function vt(t){return null}class xt{constructor(){this.summaryRow={}}ngOnChanges(){this.columns&&this.rows&&(this.updateInternalColumns(),this.updateValues())}updateInternalColumns(){this._internalColumns=this.columns.map(t=>Object.assign({},t,{cellTemplate:t.summaryTemplate}))}updateValues(){this.summaryRow={},this.columns.filter(t=>!t.summaryTemplate).forEach(t=>{const e=this.rows.map(e=>e[t.prop]),n=this.getSummaryFunction(t);this.summaryRow[t.prop]=t.pipe?t.pipe.transform(n(e)):n(e)})}getSummaryFunction(t){return void 0===t.summaryFunc?yt:null===t.summaryFunc?vt:t.summaryFunc}}class _t{static forRoot(t){return{ngModule:_t,providers:[{provide:"configuration",useValue:t}]}}}"undefined"==typeof document||document.elementsFromPoint||(document.elementsFromPoint=function(t,e){const n=[],a=[];let r,i,s;for(;(r=document.elementFromPoint(t,e))&&-1===n.indexOf(r)&&null!=r;)n.push(r),a.push({value:r.style.getPropertyValue("pointer-events"),priority:r.style.getPropertyPriority("pointer-events")}),r.style.setProperty("pointer-events","none","important");for(i=a.length;s=a[--i];)n[i].style.setProperty("pointer-events",s.value?s.value:"",s.priority);return n})},wE6v:function(t,e,n){var a=n("hh1v");t.exports=function(t,e){if(!a(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!a(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!a(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!a(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")}},wQk9:function(t,e,n){!function(t){"use strict";t.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",ss:"%d ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}})}(n("wd/R"))},"wd/R":function(t,e,n){(function(t){t.exports=function(){"use strict";var e,a;function r(){return e.apply(null,arguments)}function i(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function s(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function u(t){return void 0===t}function o(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function l(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function d(t,e){var n,a=[];for(n=0;n<t.length;++n)a.push(e(t[n],n));return a}function c(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function f(t,e){for(var n in e)c(e,n)&&(t[n]=e[n]);return c(e,"toString")&&(t.toString=e.toString),c(e,"valueOf")&&(t.valueOf=e.valueOf),t}function h(t,e,n,a){return we(t,e,n,a,!0).utc()}function g(t){return null==t._pf&&(t._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),t._pf}function p(t){if(null==t._isValid){var e=g(t),n=a.call(e.parsedDateParts,(function(t){return null!=t})),r=!isNaN(t._d.getTime())&&e.overflow<0&&!e.empty&&!e.invalidMonth&&!e.invalidWeekday&&!e.weekdayMismatch&&!e.nullInput&&!e.invalidFormat&&!e.userInvalidated&&(!e.meridiem||e.meridiem&&n);if(t._strict&&(r=r&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour),null!=Object.isFrozen&&Object.isFrozen(t))return r;t._isValid=r}return t._isValid}function b(t){var e=h(NaN);return null!=t?f(g(e),t):g(e).userInvalidated=!0,e}a=Array.prototype.some?Array.prototype.some:function(t){for(var e=Object(this),n=e.length>>>0,a=0;a<n;a++)if(a in e&&t.call(this,e[a],a,e))return!0;return!1};var m=r.momentProperties=[];function y(t,e){var n,a,r;if(u(e._isAMomentObject)||(t._isAMomentObject=e._isAMomentObject),u(e._i)||(t._i=e._i),u(e._f)||(t._f=e._f),u(e._l)||(t._l=e._l),u(e._strict)||(t._strict=e._strict),u(e._tzm)||(t._tzm=e._tzm),u(e._isUTC)||(t._isUTC=e._isUTC),u(e._offset)||(t._offset=e._offset),u(e._pf)||(t._pf=g(e)),u(e._locale)||(t._locale=e._locale),m.length>0)for(n=0;n<m.length;n++)u(r=e[a=m[n]])||(t[a]=r);return t}var v=!1;function x(t){y(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===v&&(v=!0,r.updateOffset(this),v=!1)}function _(t){return t instanceof x||null!=t&&null!=t._isAMomentObject}function T(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function w(t){var e=+t,n=0;return 0!==e&&isFinite(e)&&(n=T(e)),n}function O(t,e,n){var a,r=Math.min(t.length,e.length),i=Math.abs(t.length-e.length),s=0;for(a=0;a<r;a++)(n&&t[a]!==e[a]||!n&&w(t[a])!==w(e[a]))&&s++;return s+i}function S(t){!1===r.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function I(t,e){var n=!0;return f((function(){if(null!=r.deprecationHandler&&r.deprecationHandler(null,t),n){for(var a,i=[],s=0;s<arguments.length;s++){if(a="","object"==typeof arguments[s]){for(var u in a+="\n["+s+"] ",arguments[0])a+=u+": "+arguments[0][u]+", ";a=a.slice(0,-2)}else a=arguments[s];i.push(a)}S(t+"\nArguments: "+Array.prototype.slice.call(i).join("")+"\n"+(new Error).stack),n=!1}return e.apply(this,arguments)}),e)}var N,C={};function R(t,e){null!=r.deprecationHandler&&r.deprecationHandler(t,e),C[t]||(S(e),C[t]=!0)}function A(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function k(t,e){var n,a=f({},t);for(n in e)c(e,n)&&(s(t[n])&&s(e[n])?(a[n]={},f(a[n],t[n]),f(a[n],e[n])):null!=e[n]?a[n]=e[n]:delete a[n]);for(n in t)c(t,n)&&!c(e,n)&&s(t[n])&&(a[n]=f({},a[n]));return a}function E(t){null!=t&&this.set(t)}r.suppressDeprecationWarnings=!1,r.deprecationHandler=null,N=Object.keys?Object.keys:function(t){var e,n=[];for(e in t)c(t,e)&&n.push(e);return n};var L={};function D(t,e){var n=t.toLowerCase();L[n]=L[n+"s"]=L[e]=t}function P(t){return"string"==typeof t?L[t]||L[t.toLowerCase()]:void 0}function M(t){var e,n,a={};for(n in t)c(t,n)&&(e=P(n))&&(a[e]=t[n]);return a}var q={};function j(t,e){q[t]=e}function F(t,e,n){var a=""+Math.abs(t);return(t>=0?n?"+":"":"-")+Math.pow(10,Math.max(0,e-a.length)).toString().substr(1)+a}var V=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,G=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,B={},z={};function Y(t,e,n,a){var r=a;"string"==typeof a&&(r=function(){return this[a]()}),t&&(z[t]=r),e&&(z[e[0]]=function(){return F(r.apply(this,arguments),e[1],e[2])}),n&&(z[n]=function(){return this.localeData().ordinal(r.apply(this,arguments),t)})}function H(t,e){return t.isValid()?(e=U(e,t.localeData()),B[e]=B[e]||function(t){var e,n,a,r=t.match(V);for(e=0,n=r.length;e<n;e++)r[e]=z[r[e]]?z[r[e]]:(a=r[e]).match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"");return function(e){var a,i="";for(a=0;a<n;a++)i+=A(r[a])?r[a].call(e,t):r[a];return i}}(e),B[e](t)):t.localeData().invalidDate()}function U(t,e){var n=5;function a(t){return e.longDateFormat(t)||t}for(G.lastIndex=0;n>=0&&G.test(t);)t=t.replace(G,a),G.lastIndex=0,n-=1;return t}var W=/\d/,K=/\d\d/,$=/\d{3}/,Z=/\d{4}/,J=/[+-]?\d{6}/,Q=/\d\d?/,X=/\d\d\d\d?/,tt=/\d\d\d\d\d\d?/,et=/\d{1,3}/,nt=/\d{1,4}/,at=/[+-]?\d{1,6}/,rt=/\d+/,it=/[+-]?\d+/,st=/Z|[+-]\d\d:?\d\d/gi,ut=/Z|[+-]\d\d(?::?\d\d)?/gi,ot=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,lt={};function dt(t,e,n){lt[t]=A(e)?e:function(t,a){return t&&n?n:e}}function ct(t,e){return c(lt,t)?lt[t](e._strict,e._locale):new RegExp(ft(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(t,e,n,a,r){return e||n||a||r}))))}function ft(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}var ht={};function gt(t,e){var n,a=e;for("string"==typeof t&&(t=[t]),o(e)&&(a=function(t,n){n[e]=w(t)}),n=0;n<t.length;n++)ht[t[n]]=a}function pt(t,e){gt(t,(function(t,n,a,r){a._w=a._w||{},e(t,a._w,a,r)}))}function bt(t,e,n){null!=e&&c(ht,t)&&ht[t](e,n._a,n,t)}function mt(t){return yt(t)?366:365}function yt(t){return t%4==0&&t%100!=0||t%400==0}Y("Y",0,0,(function(){var t=this.year();return t<=9999?""+t:"+"+t})),Y(0,["YY",2],0,(function(){return this.year()%100})),Y(0,["YYYY",4],0,"year"),Y(0,["YYYYY",5],0,"year"),Y(0,["YYYYYY",6,!0],0,"year"),D("year","y"),j("year",1),dt("Y",it),dt("YY",Q,K),dt("YYYY",nt,Z),dt("YYYYY",at,J),dt("YYYYYY",at,J),gt(["YYYYY","YYYYYY"],0),gt("YYYY",(function(t,e){e[0]=2===t.length?r.parseTwoDigitYear(t):w(t)})),gt("YY",(function(t,e){e[0]=r.parseTwoDigitYear(t)})),gt("Y",(function(t,e){e[0]=parseInt(t,10)})),r.parseTwoDigitYear=function(t){return w(t)+(w(t)>68?1900:2e3)};var vt,xt=_t("FullYear",!0);function _t(t,e){return function(n){return null!=n?(wt(this,t,n),r.updateOffset(this,e),this):Tt(this,t)}}function Tt(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function wt(t,e,n){t.isValid()&&!isNaN(n)&&("FullYear"===e&&yt(t.year())&&1===t.month()&&29===t.date()?t._d["set"+(t._isUTC?"UTC":"")+e](n,t.month(),Ot(n,t.month())):t._d["set"+(t._isUTC?"UTC":"")+e](n))}function Ot(t,e){if(isNaN(t)||isNaN(e))return NaN;var n=(e%12+12)%12;return t+=(e-n)/12,1===n?yt(t)?29:28:31-n%7%2}vt=Array.prototype.indexOf?Array.prototype.indexOf:function(t){var e;for(e=0;e<this.length;++e)if(this[e]===t)return e;return-1},Y("M",["MM",2],"Mo",(function(){return this.month()+1})),Y("MMM",0,0,(function(t){return this.localeData().monthsShort(this,t)})),Y("MMMM",0,0,(function(t){return this.localeData().months(this,t)})),D("month","M"),j("month",8),dt("M",Q),dt("MM",Q,K),dt("MMM",(function(t,e){return e.monthsShortRegex(t)})),dt("MMMM",(function(t,e){return e.monthsRegex(t)})),gt(["M","MM"],(function(t,e){e[1]=w(t)-1})),gt(["MMM","MMMM"],(function(t,e,n,a){var r=n._locale.monthsParse(t,a,n._strict);null!=r?e[1]=r:g(n).invalidMonth=t}));var St=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,It="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Nt="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_");function Ct(t,e,n){var a,r,i,s=t.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],a=0;a<12;++a)i=h([2e3,a]),this._shortMonthsParse[a]=this.monthsShort(i,"").toLocaleLowerCase(),this._longMonthsParse[a]=this.months(i,"").toLocaleLowerCase();return n?"MMM"===e?-1!==(r=vt.call(this._shortMonthsParse,s))?r:null:-1!==(r=vt.call(this._longMonthsParse,s))?r:null:"MMM"===e?-1!==(r=vt.call(this._shortMonthsParse,s))||-1!==(r=vt.call(this._longMonthsParse,s))?r:null:-1!==(r=vt.call(this._longMonthsParse,s))||-1!==(r=vt.call(this._shortMonthsParse,s))?r:null}function Rt(t,e){var n;if(!t.isValid())return t;if("string"==typeof e)if(/^\d+$/.test(e))e=w(e);else if(!o(e=t.localeData().monthsParse(e)))return t;return n=Math.min(t.date(),Ot(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,n),t}function At(t){return null!=t?(Rt(this,t),r.updateOffset(this,!0),this):Tt(this,"Month")}var kt=ot,Et=ot;function Lt(){function t(t,e){return e.length-t.length}var e,n,a=[],r=[],i=[];for(e=0;e<12;e++)n=h([2e3,e]),a.push(this.monthsShort(n,"")),r.push(this.months(n,"")),i.push(this.months(n,"")),i.push(this.monthsShort(n,""));for(a.sort(t),r.sort(t),i.sort(t),e=0;e<12;e++)a[e]=ft(a[e]),r[e]=ft(r[e]);for(e=0;e<24;e++)i[e]=ft(i[e]);this._monthsRegex=new RegExp("^("+i.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+r.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Dt(t,e,n,a,r,i,s){var u;return t<100&&t>=0?(u=new Date(t+400,e,n,a,r,i,s),isFinite(u.getFullYear())&&u.setFullYear(t)):u=new Date(t,e,n,a,r,i,s),u}function Pt(t){var e;if(t<100&&t>=0){var n=Array.prototype.slice.call(arguments);n[0]=t+400,e=new Date(Date.UTC.apply(null,n)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t)}else e=new Date(Date.UTC.apply(null,arguments));return e}function Mt(t,e,n){var a=7+e-n;return-(7+Pt(t,0,a).getUTCDay()-e)%7+a-1}function qt(t,e,n,a,r){var i,s,u=1+7*(e-1)+(7+n-a)%7+Mt(t,a,r);return u<=0?s=mt(i=t-1)+u:u>mt(t)?(i=t+1,s=u-mt(t)):(i=t,s=u),{year:i,dayOfYear:s}}function jt(t,e,n){var a,r,i=Mt(t.year(),e,n),s=Math.floor((t.dayOfYear()-i-1)/7)+1;return s<1?a=s+Ft(r=t.year()-1,e,n):s>Ft(t.year(),e,n)?(a=s-Ft(t.year(),e,n),r=t.year()+1):(r=t.year(),a=s),{week:a,year:r}}function Ft(t,e,n){var a=Mt(t,e,n),r=Mt(t+1,e,n);return(mt(t)-a+r)/7}function Vt(t,e){return t.slice(e,7).concat(t.slice(0,e))}Y("w",["ww",2],"wo","week"),Y("W",["WW",2],"Wo","isoWeek"),D("week","w"),D("isoWeek","W"),j("week",5),j("isoWeek",5),dt("w",Q),dt("ww",Q,K),dt("W",Q),dt("WW",Q,K),pt(["w","ww","W","WW"],(function(t,e,n,a){e[a.substr(0,1)]=w(t)})),Y("d",0,"do","day"),Y("dd",0,0,(function(t){return this.localeData().weekdaysMin(this,t)})),Y("ddd",0,0,(function(t){return this.localeData().weekdaysShort(this,t)})),Y("dddd",0,0,(function(t){return this.localeData().weekdays(this,t)})),Y("e",0,0,"weekday"),Y("E",0,0,"isoWeekday"),D("day","d"),D("weekday","e"),D("isoWeekday","E"),j("day",11),j("weekday",11),j("isoWeekday",11),dt("d",Q),dt("e",Q),dt("E",Q),dt("dd",(function(t,e){return e.weekdaysMinRegex(t)})),dt("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),dt("dddd",(function(t,e){return e.weekdaysRegex(t)})),pt(["dd","ddd","dddd"],(function(t,e,n,a){var r=n._locale.weekdaysParse(t,a,n._strict);null!=r?e.d=r:g(n).invalidWeekday=t})),pt(["d","e","E"],(function(t,e,n,a){e[a]=w(t)}));var Gt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Bt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),zt="Su_Mo_Tu_We_Th_Fr_Sa".split("_");function Yt(t,e,n){var a,r,i,s=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],a=0;a<7;++a)i=h([2e3,1]).day(a),this._minWeekdaysParse[a]=this.weekdaysMin(i,"").toLocaleLowerCase(),this._shortWeekdaysParse[a]=this.weekdaysShort(i,"").toLocaleLowerCase(),this._weekdaysParse[a]=this.weekdays(i,"").toLocaleLowerCase();return n?"dddd"===e?-1!==(r=vt.call(this._weekdaysParse,s))?r:null:"ddd"===e?-1!==(r=vt.call(this._shortWeekdaysParse,s))?r:null:-1!==(r=vt.call(this._minWeekdaysParse,s))?r:null:"dddd"===e?-1!==(r=vt.call(this._weekdaysParse,s))||-1!==(r=vt.call(this._shortWeekdaysParse,s))||-1!==(r=vt.call(this._minWeekdaysParse,s))?r:null:"ddd"===e?-1!==(r=vt.call(this._shortWeekdaysParse,s))||-1!==(r=vt.call(this._weekdaysParse,s))||-1!==(r=vt.call(this._minWeekdaysParse,s))?r:null:-1!==(r=vt.call(this._minWeekdaysParse,s))||-1!==(r=vt.call(this._weekdaysParse,s))||-1!==(r=vt.call(this._shortWeekdaysParse,s))?r:null}var Ht=ot,Ut=ot,Wt=ot;function Kt(){function t(t,e){return e.length-t.length}var e,n,a,r,i,s=[],u=[],o=[],l=[];for(e=0;e<7;e++)n=h([2e3,1]).day(e),a=this.weekdaysMin(n,""),r=this.weekdaysShort(n,""),i=this.weekdays(n,""),s.push(a),u.push(r),o.push(i),l.push(a),l.push(r),l.push(i);for(s.sort(t),u.sort(t),o.sort(t),l.sort(t),e=0;e<7;e++)u[e]=ft(u[e]),o[e]=ft(o[e]),l[e]=ft(l[e]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+s.join("|")+")","i")}function $t(){return this.hours()%12||12}function Zt(t,e){Y(t,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)}))}function Jt(t,e){return e._meridiemParse}Y("H",["HH",2],0,"hour"),Y("h",["hh",2],0,$t),Y("k",["kk",2],0,(function(){return this.hours()||24})),Y("hmm",0,0,(function(){return""+$t.apply(this)+F(this.minutes(),2)})),Y("hmmss",0,0,(function(){return""+$t.apply(this)+F(this.minutes(),2)+F(this.seconds(),2)})),Y("Hmm",0,0,(function(){return""+this.hours()+F(this.minutes(),2)})),Y("Hmmss",0,0,(function(){return""+this.hours()+F(this.minutes(),2)+F(this.seconds(),2)})),Zt("a",!0),Zt("A",!1),D("hour","h"),j("hour",13),dt("a",Jt),dt("A",Jt),dt("H",Q),dt("h",Q),dt("k",Q),dt("HH",Q,K),dt("hh",Q,K),dt("kk",Q,K),dt("hmm",X),dt("hmmss",tt),dt("Hmm",X),dt("Hmmss",tt),gt(["H","HH"],3),gt(["k","kk"],(function(t,e,n){var a=w(t);e[3]=24===a?0:a})),gt(["a","A"],(function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t})),gt(["h","hh"],(function(t,e,n){e[3]=w(t),g(n).bigHour=!0})),gt("hmm",(function(t,e,n){var a=t.length-2;e[3]=w(t.substr(0,a)),e[4]=w(t.substr(a)),g(n).bigHour=!0})),gt("hmmss",(function(t,e,n){var a=t.length-4,r=t.length-2;e[3]=w(t.substr(0,a)),e[4]=w(t.substr(a,2)),e[5]=w(t.substr(r)),g(n).bigHour=!0})),gt("Hmm",(function(t,e,n){var a=t.length-2;e[3]=w(t.substr(0,a)),e[4]=w(t.substr(a))})),gt("Hmmss",(function(t,e,n){var a=t.length-4,r=t.length-2;e[3]=w(t.substr(0,a)),e[4]=w(t.substr(a,2)),e[5]=w(t.substr(r))}));var Qt,Xt=_t("Hours",!0),te={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:It,monthsShort:Nt,week:{dow:0,doy:6},weekdays:Gt,weekdaysMin:zt,weekdaysShort:Bt,meridiemParse:/[ap]\.?m?\.?/i},ee={},ne={};function ae(t){return t?t.toLowerCase().replace("_","-"):t}function re(e){var a=null;if(!ee[e]&&void 0!==t&&t&&t.exports)try{a=Qt._abbr,n("RnhZ")("./"+e),ie(a)}catch(r){}return ee[e]}function ie(t,e){var n;return t&&((n=u(e)?ue(t):se(t,e))?Qt=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),Qt._abbr}function se(t,e){if(null!==e){var n,a=te;if(e.abbr=t,null!=ee[t])R("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),a=ee[t]._config;else if(null!=e.parentLocale)if(null!=ee[e.parentLocale])a=ee[e.parentLocale]._config;else{if(null==(n=re(e.parentLocale)))return ne[e.parentLocale]||(ne[e.parentLocale]=[]),ne[e.parentLocale].push({name:t,config:e}),null;a=n._config}return ee[t]=new E(k(a,e)),ne[t]&&ne[t].forEach((function(t){se(t.name,t.config)})),ie(t),ee[t]}return delete ee[t],null}function ue(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Qt;if(!i(t)){if(e=re(t))return e;t=[t]}return function(t){for(var e,n,a,r,i=0;i<t.length;){for(e=(r=ae(t[i]).split("-")).length,n=(n=ae(t[i+1]))?n.split("-"):null;e>0;){if(a=re(r.slice(0,e).join("-")))return a;if(n&&n.length>=e&&O(r,n,!0)>=e-1)break;e--}i++}return Qt}(t)}function oe(t){var e,n=t._a;return n&&-2===g(t).overflow&&(e=n[1]<0||n[1]>11?1:n[2]<1||n[2]>Ot(n[0],n[1])?2:n[3]<0||n[3]>24||24===n[3]&&(0!==n[4]||0!==n[5]||0!==n[6])?3:n[4]<0||n[4]>59?4:n[5]<0||n[5]>59?5:n[6]<0||n[6]>999?6:-1,g(t)._overflowDayOfYear&&(e<0||e>2)&&(e=2),g(t)._overflowWeeks&&-1===e&&(e=7),g(t)._overflowWeekday&&-1===e&&(e=8),g(t).overflow=e),t}function le(t,e,n){return null!=t?t:null!=e?e:n}function de(t){var e,n,a,i,s,u=[];if(!t._d){for(a=function(t){var e=new Date(r.now());return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}(t),t._w&&null==t._a[2]&&null==t._a[1]&&function(t){var e,n,a,r,i,s,u,o;if(null!=(e=t._w).GG||null!=e.W||null!=e.E)i=1,s=4,n=le(e.GG,t._a[0],jt(Oe(),1,4).year),a=le(e.W,1),((r=le(e.E,1))<1||r>7)&&(o=!0);else{i=t._locale._week.dow,s=t._locale._week.doy;var l=jt(Oe(),i,s);n=le(e.gg,t._a[0],l.year),a=le(e.w,l.week),null!=e.d?((r=e.d)<0||r>6)&&(o=!0):null!=e.e?(r=e.e+i,(e.e<0||e.e>6)&&(o=!0)):r=i}a<1||a>Ft(n,i,s)?g(t)._overflowWeeks=!0:null!=o?g(t)._overflowWeekday=!0:(u=qt(n,a,r,i,s),t._a[0]=u.year,t._dayOfYear=u.dayOfYear)}(t),null!=t._dayOfYear&&(s=le(t._a[0],a[0]),(t._dayOfYear>mt(s)||0===t._dayOfYear)&&(g(t)._overflowDayOfYear=!0),n=Pt(s,0,t._dayOfYear),t._a[1]=n.getUTCMonth(),t._a[2]=n.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=u[e]=a[e];for(;e<7;e++)t._a[e]=u[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[3]&&0===t._a[4]&&0===t._a[5]&&0===t._a[6]&&(t._nextDay=!0,t._a[3]=0),t._d=(t._useUTC?Pt:Dt).apply(null,u),i=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[3]=24),t._w&&void 0!==t._w.d&&t._w.d!==i&&(g(t).weekdayMismatch=!0)}}var ce=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fe=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,he=/Z|[+-]\d\d(?::?\d\d)?/,ge=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],pe=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],be=/^\/?Date\((\-?\d+)/i;function me(t){var e,n,a,r,i,s,u=t._i,o=ce.exec(u)||fe.exec(u);if(o){for(g(t).iso=!0,e=0,n=ge.length;e<n;e++)if(ge[e][1].exec(o[1])){r=ge[e][0],a=!1!==ge[e][2];break}if(null==r)return void(t._isValid=!1);if(o[3]){for(e=0,n=pe.length;e<n;e++)if(pe[e][1].exec(o[3])){i=(o[2]||" ")+pe[e][0];break}if(null==i)return void(t._isValid=!1)}if(!a&&null!=i)return void(t._isValid=!1);if(o[4]){if(!he.exec(o[4]))return void(t._isValid=!1);s="Z"}t._f=r+(i||"")+(s||""),_e(t)}else t._isValid=!1}var ye=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,ve={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function xe(t){var e,n,a,r,i,s,u,o,l=ye.exec(t._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,""));if(l){var d=(e=l[3],n=l[2],a=l[5],r=l[6],i=l[7],s=[(u=l[4],o=parseInt(u,10),o<=49?2e3+o:o<=999?1900+o:o),Nt.indexOf(e),parseInt(n,10),parseInt(a,10),parseInt(r,10)],i&&s.push(parseInt(i,10)),s);if(!function(t,e,n){return!t||Bt.indexOf(t)===new Date(e[0],e[1],e[2]).getDay()||(g(n).weekdayMismatch=!0,n._isValid=!1,!1)}(l[1],d,t))return;t._a=d,t._tzm=function(t,e,n){if(t)return ve[t];if(e)return 0;var a=parseInt(n,10),r=a%100;return(a-r)/100*60+r}(l[8],l[9],l[10]),t._d=Pt.apply(null,t._a),t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),g(t).rfc2822=!0}else t._isValid=!1}function _e(t){if(t._f!==r.ISO_8601)if(t._f!==r.RFC_2822){t._a=[],g(t).empty=!0;var e,n,a,i,s,u=""+t._i,o=u.length,l=0;for(a=U(t._f,t._locale).match(V)||[],e=0;e<a.length;e++)(n=(u.match(ct(i=a[e],t))||[])[0])&&((s=u.substr(0,u.indexOf(n))).length>0&&g(t).unusedInput.push(s),u=u.slice(u.indexOf(n)+n.length),l+=n.length),z[i]?(n?g(t).empty=!1:g(t).unusedTokens.push(i),bt(i,n,t)):t._strict&&!n&&g(t).unusedTokens.push(i);g(t).charsLeftOver=o-l,u.length>0&&g(t).unusedInput.push(u),t._a[3]<=12&&!0===g(t).bigHour&&t._a[3]>0&&(g(t).bigHour=void 0),g(t).parsedDateParts=t._a.slice(0),g(t).meridiem=t._meridiem,t._a[3]=function(t,e,n){var a;return null==n?e:null!=t.meridiemHour?t.meridiemHour(e,n):null!=t.isPM?((a=t.isPM(n))&&e<12&&(e+=12),a||12!==e||(e=0),e):e}(t._locale,t._a[3],t._meridiem),de(t),oe(t)}else xe(t);else me(t)}function Te(t){var e=t._i,n=t._f;return t._locale=t._locale||ue(t._l),null===e||void 0===n&&""===e?b({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),_(e)?new x(oe(e)):(l(e)?t._d=e:i(n)?function(t){var e,n,a,r,i;if(0===t._f.length)return g(t).invalidFormat=!0,void(t._d=new Date(NaN));for(r=0;r<t._f.length;r++)i=0,e=y({},t),null!=t._useUTC&&(e._useUTC=t._useUTC),e._f=t._f[r],_e(e),p(e)&&(i+=g(e).charsLeftOver,i+=10*g(e).unusedTokens.length,g(e).score=i,(null==a||i<a)&&(a=i,n=e));f(t,n||e)}(t):n?_e(t):function(t){var e=t._i;u(e)?t._d=new Date(r.now()):l(e)?t._d=new Date(e.valueOf()):"string"==typeof e?function(t){var e=be.exec(t._i);null===e?(me(t),!1===t._isValid&&(delete t._isValid,xe(t),!1===t._isValid&&(delete t._isValid,r.createFromInputFallback(t)))):t._d=new Date(+e[1])}(t):i(e)?(t._a=d(e.slice(0),(function(t){return parseInt(t,10)})),de(t)):s(e)?function(t){if(!t._d){var e=M(t._i);t._a=d([e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],(function(t){return t&&parseInt(t,10)})),de(t)}}(t):o(e)?t._d=new Date(e):r.createFromInputFallback(t)}(t),p(t)||(t._d=null),t))}function we(t,e,n,a,r){var u,o={};return!0!==n&&!1!==n||(a=n,n=void 0),(s(t)&&function(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;var e;for(e in t)if(t.hasOwnProperty(e))return!1;return!0}(t)||i(t)&&0===t.length)&&(t=void 0),o._isAMomentObject=!0,o._useUTC=o._isUTC=r,o._l=n,o._i=t,o._f=e,o._strict=a,(u=new x(oe(Te(o))))._nextDay&&(u.add(1,"d"),u._nextDay=void 0),u}function Oe(t,e,n,a){return we(t,e,n,a,!1)}r.createFromInputFallback=I("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",(function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))})),r.ISO_8601=function(){},r.RFC_2822=function(){};var Se=I("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=Oe.apply(null,arguments);return this.isValid()&&t.isValid()?t<this?this:t:b()})),Ie=I("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=Oe.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:b()}));function Ne(t,e){var n,a;if(1===e.length&&i(e[0])&&(e=e[0]),!e.length)return Oe();for(n=e[0],a=1;a<e.length;++a)e[a].isValid()&&!e[a][t](n)||(n=e[a]);return n}var Ce=["year","quarter","month","week","day","hour","minute","second","millisecond"];function Re(t){var e=M(t),n=e.year||0,a=e.quarter||0,r=e.month||0,i=e.week||e.isoWeek||0,s=e.day||0,u=e.hour||0,o=e.minute||0,l=e.second||0,d=e.millisecond||0;this._isValid=function(t){for(var e in t)if(-1===vt.call(Ce,e)||null!=t[e]&&isNaN(t[e]))return!1;for(var n=!1,a=0;a<Ce.length;++a)if(t[Ce[a]]){if(n)return!1;parseFloat(t[Ce[a]])!==w(t[Ce[a]])&&(n=!0)}return!0}(e),this._milliseconds=+d+1e3*l+6e4*o+1e3*u*60*60,this._days=+s+7*i,this._months=+r+3*a+12*n,this._data={},this._locale=ue(),this._bubble()}function Ae(t){return t instanceof Re}function ke(t){return t<0?-1*Math.round(-1*t):Math.round(t)}function Ee(t,e){Y(t,0,0,(function(){var t=this.utcOffset(),n="+";return t<0&&(t=-t,n="-"),n+F(~~(t/60),2)+e+F(~~t%60,2)}))}Ee("Z",":"),Ee("ZZ",""),dt("Z",ut),dt("ZZ",ut),gt(["Z","ZZ"],(function(t,e,n){n._useUTC=!0,n._tzm=De(ut,t)}));var Le=/([\+\-]|\d\d)/gi;function De(t,e){var n=(e||"").match(t);if(null===n)return null;var a=((n[n.length-1]||[])+"").match(Le)||["-",0,0],r=60*a[1]+w(a[2]);return 0===r?0:"+"===a[0]?r:-r}function Pe(t,e){var n,a;return e._isUTC?(n=e.clone(),a=(_(t)||l(t)?t.valueOf():Oe(t).valueOf())-n.valueOf(),n._d.setTime(n._d.valueOf()+a),r.updateOffset(n,!1),n):Oe(t).local()}function Me(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function qe(){return!!this.isValid()&&this._isUTC&&0===this._offset}r.updateOffset=function(){};var je=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Fe=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Ve(t,e){var n,a,r,i,s,u,l=t,d=null;return Ae(t)?l={ms:t._milliseconds,d:t._days,M:t._months}:o(t)?(l={},e?l[e]=t:l.milliseconds=t):(d=je.exec(t))?(n="-"===d[1]?-1:1,l={y:0,d:w(d[2])*n,h:w(d[3])*n,m:w(d[4])*n,s:w(d[5])*n,ms:w(ke(1e3*d[6]))*n}):(d=Fe.exec(t))?l={y:Ge(d[2],n="-"===d[1]?-1:1),M:Ge(d[3],n),w:Ge(d[4],n),d:Ge(d[5],n),h:Ge(d[6],n),m:Ge(d[7],n),s:Ge(d[8],n)}:null==l?l={}:"object"==typeof l&&("from"in l||"to"in l)&&(i=Oe(l.from),s=Oe(l.to),r=i.isValid()&&s.isValid()?(s=Pe(s,i),i.isBefore(s)?u=Be(i,s):((u=Be(s,i)).milliseconds=-u.milliseconds,u.months=-u.months),u):{milliseconds:0,months:0},(l={}).ms=r.milliseconds,l.M=r.months),a=new Re(l),Ae(t)&&c(t,"_locale")&&(a._locale=t._locale),a}function Ge(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function Be(t,e){var n={};return n.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function ze(t,e){return function(n,a){var r;return null===a||isNaN(+a)||(R(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),r=n,n=a,a=r),Ye(this,Ve(n="string"==typeof n?+n:n,a),t),this}}function Ye(t,e,n,a){var i=e._milliseconds,s=ke(e._days),u=ke(e._months);t.isValid()&&(a=null==a||a,u&&Rt(t,Tt(t,"Month")+u*n),s&&wt(t,"Date",Tt(t,"Date")+s*n),i&&t._d.setTime(t._d.valueOf()+i*n),a&&r.updateOffset(t,s||u))}Ve.fn=Re.prototype,Ve.invalid=function(){return Ve(NaN)};var He=ze(1,"add"),Ue=ze(-1,"subtract");function We(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),a=t.clone().add(n,"months");return-(n+(e-a<0?(e-a)/(a-t.clone().add(n-1,"months")):(e-a)/(t.clone().add(n+1,"months")-a)))||0}function Ke(t){var e;return void 0===t?this._locale._abbr:(null!=(e=ue(t))&&(this._locale=e),this)}r.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",r.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var $e=I("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(t){return void 0===t?this.localeData():this.locale(t)}));function Ze(){return this._locale}function Je(t,e){return(t%e+e)%e}function Qe(t,e,n){return t<100&&t>=0?new Date(t+400,e,n)-126227808e5:new Date(t,e,n).valueOf()}function Xe(t,e,n){return t<100&&t>=0?Date.UTC(t+400,e,n)-126227808e5:Date.UTC(t,e,n)}function tn(t,e){Y(0,[t,t.length],0,e)}function en(t,e,n,a,r){var i;return null==t?jt(this,a,r).year:(e>(i=Ft(t,a,r))&&(e=i),nn.call(this,t,e,n,a,r))}function nn(t,e,n,a,r){var i=qt(t,e,n,a,r),s=Pt(i.year,0,i.dayOfYear);return this.year(s.getUTCFullYear()),this.month(s.getUTCMonth()),this.date(s.getUTCDate()),this}Y(0,["gg",2],0,(function(){return this.weekYear()%100})),Y(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),tn("gggg","weekYear"),tn("ggggg","weekYear"),tn("GGGG","isoWeekYear"),tn("GGGGG","isoWeekYear"),D("weekYear","gg"),D("isoWeekYear","GG"),j("weekYear",1),j("isoWeekYear",1),dt("G",it),dt("g",it),dt("GG",Q,K),dt("gg",Q,K),dt("GGGG",nt,Z),dt("gggg",nt,Z),dt("GGGGG",at,J),dt("ggggg",at,J),pt(["gggg","ggggg","GGGG","GGGGG"],(function(t,e,n,a){e[a.substr(0,2)]=w(t)})),pt(["gg","GG"],(function(t,e,n,a){e[a]=r.parseTwoDigitYear(t)})),Y("Q",0,"Qo","quarter"),D("quarter","Q"),j("quarter",7),dt("Q",W),gt("Q",(function(t,e){e[1]=3*(w(t)-1)})),Y("D",["DD",2],"Do","date"),D("date","D"),j("date",9),dt("D",Q),dt("DD",Q,K),dt("Do",(function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient})),gt(["D","DD"],2),gt("Do",(function(t,e){e[2]=w(t.match(Q)[0])}));var an=_t("Date",!0);Y("DDD",["DDDD",3],"DDDo","dayOfYear"),D("dayOfYear","DDD"),j("dayOfYear",4),dt("DDD",et),dt("DDDD",$),gt(["DDD","DDDD"],(function(t,e,n){n._dayOfYear=w(t)})),Y("m",["mm",2],0,"minute"),D("minute","m"),j("minute",14),dt("m",Q),dt("mm",Q,K),gt(["m","mm"],4);var rn=_t("Minutes",!1);Y("s",["ss",2],0,"second"),D("second","s"),j("second",15),dt("s",Q),dt("ss",Q,K),gt(["s","ss"],5);var sn,un=_t("Seconds",!1);for(Y("S",0,0,(function(){return~~(this.millisecond()/100)})),Y(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),Y(0,["SSS",3],0,"millisecond"),Y(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),Y(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),Y(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),Y(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),Y(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),Y(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),D("millisecond","ms"),j("millisecond",16),dt("S",et,W),dt("SS",et,K),dt("SSS",et,$),sn="SSSS";sn.length<=9;sn+="S")dt(sn,rt);function on(t,e){e[6]=w(1e3*("0."+t))}for(sn="S";sn.length<=9;sn+="S")gt(sn,on);var ln=_t("Milliseconds",!1);Y("z",0,0,"zoneAbbr"),Y("zz",0,0,"zoneName");var dn=x.prototype;function cn(t){return t}dn.add=He,dn.calendar=function(t,e){var n=t||Oe(),a=Pe(n,this).startOf("day"),i=r.calendarFormat(this,a)||"sameElse",s=e&&(A(e[i])?e[i].call(this,n):e[i]);return this.format(s||this.localeData().calendar(i,this,Oe(n)))},dn.clone=function(){return new x(this)},dn.diff=function(t,e,n){var a,r,i;if(!this.isValid())return NaN;if(!(a=Pe(t,this)).isValid())return NaN;switch(r=6e4*(a.utcOffset()-this.utcOffset()),e=P(e)){case"year":i=We(this,a)/12;break;case"month":i=We(this,a);break;case"quarter":i=We(this,a)/3;break;case"second":i=(this-a)/1e3;break;case"minute":i=(this-a)/6e4;break;case"hour":i=(this-a)/36e5;break;case"day":i=(this-a-r)/864e5;break;case"week":i=(this-a-r)/6048e5;break;default:i=this-a}return n?i:T(i)},dn.endOf=function(t){var e;if(void 0===(t=P(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Xe:Qe;switch(t){case"year":e=n(this.year()+1,0,1)-1;break;case"quarter":e=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":e=n(this.year(),this.month()+1,1)-1;break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":e=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":e=this._d.valueOf(),e+=36e5-Je(e+(this._isUTC?0:6e4*this.utcOffset()),36e5)-1;break;case"minute":e=this._d.valueOf(),e+=6e4-Je(e,6e4)-1;break;case"second":e=this._d.valueOf(),e+=1e3-Je(e,1e3)-1}return this._d.setTime(e),r.updateOffset(this,!0),this},dn.format=function(t){t||(t=this.isUtc()?r.defaultFormatUtc:r.defaultFormat);var e=H(this,t);return this.localeData().postformat(e)},dn.from=function(t,e){return this.isValid()&&(_(t)&&t.isValid()||Oe(t).isValid())?Ve({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},dn.fromNow=function(t){return this.from(Oe(),t)},dn.to=function(t,e){return this.isValid()&&(_(t)&&t.isValid()||Oe(t).isValid())?Ve({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},dn.toNow=function(t){return this.to(Oe(),t)},dn.get=function(t){return A(this[t=P(t)])?this[t]():this},dn.invalidAt=function(){return g(this).overflow},dn.isAfter=function(t,e){var n=_(t)?t:Oe(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=P(e)||"millisecond")?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(e).valueOf())},dn.isBefore=function(t,e){var n=_(t)?t:Oe(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=P(e)||"millisecond")?this.valueOf()<n.valueOf():this.clone().endOf(e).valueOf()<n.valueOf())},dn.isBetween=function(t,e,n,a){var r=_(t)?t:Oe(t),i=_(e)?e:Oe(e);return!!(this.isValid()&&r.isValid()&&i.isValid())&&("("===(a=a||"()")[0]?this.isAfter(r,n):!this.isBefore(r,n))&&(")"===a[1]?this.isBefore(i,n):!this.isAfter(i,n))},dn.isSame=function(t,e){var n,a=_(t)?t:Oe(t);return!(!this.isValid()||!a.isValid())&&("millisecond"===(e=P(e)||"millisecond")?this.valueOf()===a.valueOf():(n=a.valueOf(),this.clone().startOf(e).valueOf()<=n&&n<=this.clone().endOf(e).valueOf()))},dn.isSameOrAfter=function(t,e){return this.isSame(t,e)||this.isAfter(t,e)},dn.isSameOrBefore=function(t,e){return this.isSame(t,e)||this.isBefore(t,e)},dn.isValid=function(){return p(this)},dn.lang=$e,dn.locale=Ke,dn.localeData=Ze,dn.max=Ie,dn.min=Se,dn.parsingFlags=function(){return f({},g(this))},dn.set=function(t,e){if("object"==typeof t)for(var n=function(t){var e=[];for(var n in t)e.push({unit:n,priority:q[n]});return e.sort((function(t,e){return t.priority-e.priority})),e}(t=M(t)),a=0;a<n.length;a++)this[n[a].unit](t[n[a].unit]);else if(A(this[t=P(t)]))return this[t](e);return this},dn.startOf=function(t){var e;if(void 0===(t=P(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Xe:Qe;switch(t){case"year":e=n(this.year(),0,1);break;case"quarter":e=n(this.year(),this.month()-this.month()%3,1);break;case"month":e=n(this.year(),this.month(),1);break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":e=n(this.year(),this.month(),this.date());break;case"hour":e=this._d.valueOf(),e-=Je(e+(this._isUTC?0:6e4*this.utcOffset()),36e5);break;case"minute":e=this._d.valueOf(),e-=Je(e,6e4);break;case"second":e=this._d.valueOf(),e-=Je(e,1e3)}return this._d.setTime(e),r.updateOffset(this,!0),this},dn.subtract=Ue,dn.toArray=function(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]},dn.toObject=function(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}},dn.toDate=function(){return new Date(this.valueOf())},dn.toISOString=function(t){if(!this.isValid())return null;var e=!0!==t,n=e?this.clone().utc():this;return n.year()<0||n.year()>9999?H(n,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):A(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",H(n,"Z")):H(n,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},dn.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t="moment",e="";this.isLocal()||(t=0===this.utcOffset()?"moment.utc":"moment.parseZone",e="Z");var n="["+t+'("]',a=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY";return this.format(n+a+"-MM-DD[T]HH:mm:ss.SSS"+e+'[")]')},dn.toJSON=function(){return this.isValid()?this.toISOString():null},dn.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},dn.unix=function(){return Math.floor(this.valueOf()/1e3)},dn.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},dn.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},dn.year=xt,dn.isLeapYear=function(){return yt(this.year())},dn.weekYear=function(t){return en.call(this,t,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)},dn.isoWeekYear=function(t){return en.call(this,t,this.isoWeek(),this.isoWeekday(),1,4)},dn.quarter=dn.quarters=function(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)},dn.month=At,dn.daysInMonth=function(){return Ot(this.year(),this.month())},dn.week=dn.weeks=function(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")},dn.isoWeek=dn.isoWeeks=function(t){var e=jt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")},dn.weeksInYear=function(){var t=this.localeData()._week;return Ft(this.year(),t.dow,t.doy)},dn.isoWeeksInYear=function(){return Ft(this.year(),1,4)},dn.date=an,dn.day=dn.days=function(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=function(t,e){return"string"!=typeof t?t:isNaN(t)?"number"==typeof(t=e.weekdaysParse(t))?t:null:parseInt(t,10)}(t,this.localeData()),this.add(t-e,"d")):e},dn.weekday=function(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")},dn.isoWeekday=function(t){if(!this.isValid())return null!=t?this:NaN;if(null!=t){var e=function(t,e){return"string"==typeof t?e.weekdaysParse(t)%7||7:isNaN(t)?null:t}(t,this.localeData());return this.day(this.day()%7?e:e-7)}return this.day()||7},dn.dayOfYear=function(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")},dn.hour=dn.hours=Xt,dn.minute=dn.minutes=rn,dn.second=dn.seconds=un,dn.millisecond=dn.milliseconds=ln,dn.utcOffset=function(t,e,n){var a,i=this._offset||0;if(!this.isValid())return null!=t?this:NaN;if(null!=t){if("string"==typeof t){if(null===(t=De(ut,t)))return this}else Math.abs(t)<16&&!n&&(t*=60);return!this._isUTC&&e&&(a=Me(this)),this._offset=t,this._isUTC=!0,null!=a&&this.add(a,"m"),i!==t&&(!e||this._changeInProgress?Ye(this,Ve(t-i,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,r.updateOffset(this,!0),this._changeInProgress=null)),this}return this._isUTC?i:Me(this)},dn.utc=function(t){return this.utcOffset(0,t)},dn.local=function(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Me(this),"m")),this},dn.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var t=De(st,this._i);null!=t?this.utcOffset(t):this.utcOffset(0,!0)}return this},dn.hasAlignedHourOffset=function(t){return!!this.isValid()&&(t=t?Oe(t).utcOffset():0,(this.utcOffset()-t)%60==0)},dn.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},dn.isLocal=function(){return!!this.isValid()&&!this._isUTC},dn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},dn.isUtc=qe,dn.isUTC=qe,dn.zoneAbbr=function(){return this._isUTC?"UTC":""},dn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},dn.dates=I("dates accessor is deprecated. Use date instead.",an),dn.months=I("months accessor is deprecated. Use month instead",At),dn.years=I("years accessor is deprecated. Use year instead",xt),dn.zone=I("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",(function(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()})),dn.isDSTShifted=I("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",(function(){if(!u(this._isDSTShifted))return this._isDSTShifted;var t={};if(y(t,this),(t=Te(t))._a){var e=t._isUTC?h(t._a):Oe(t._a);this._isDSTShifted=this.isValid()&&O(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}));var fn=E.prototype;function hn(t,e,n,a){var r=ue(),i=h().set(a,e);return r[n](i,t)}function gn(t,e,n){if(o(t)&&(e=t,t=void 0),t=t||"",null!=e)return hn(t,e,n,"month");var a,r=[];for(a=0;a<12;a++)r[a]=hn(t,a,n,"month");return r}function pn(t,e,n,a){"boolean"==typeof t?(o(e)&&(n=e,e=void 0),e=e||""):(n=e=t,t=!1,o(e)&&(n=e,e=void 0),e=e||"");var r,i=ue(),s=t?i._week.dow:0;if(null!=n)return hn(e,(n+s)%7,a,"day");var u=[];for(r=0;r<7;r++)u[r]=hn(e,(r+s)%7,a,"day");return u}fn.calendar=function(t,e,n){var a=this._calendar[t]||this._calendar.sameElse;return A(a)?a.call(e,n):a},fn.longDateFormat=function(t){var e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,(function(t){return t.slice(1)})),this._longDateFormat[t])},fn.invalidDate=function(){return this._invalidDate},fn.ordinal=function(t){return this._ordinal.replace("%d",t)},fn.preparse=cn,fn.postformat=cn,fn.relativeTime=function(t,e,n,a){var r=this._relativeTime[n];return A(r)?r(t,e,n,a):r.replace(/%d/i,t)},fn.pastFuture=function(t,e){var n=this._relativeTime[t>0?"future":"past"];return A(n)?n(e):n.replace(/%s/i,e)},fn.set=function(t){var e,n;for(n in t)A(e=t[n])?this[n]=e:this["_"+n]=e;this._config=t,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},fn.months=function(t,e){return t?i(this._months)?this._months[t.month()]:this._months[(this._months.isFormat||St).test(e)?"format":"standalone"][t.month()]:i(this._months)?this._months:this._months.standalone},fn.monthsShort=function(t,e){return t?i(this._monthsShort)?this._monthsShort[t.month()]:this._monthsShort[St.test(e)?"format":"standalone"][t.month()]:i(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},fn.monthsParse=function(t,e,n){var a,r,i;if(this._monthsParseExact)return Ct.call(this,t,e,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),a=0;a<12;a++){if(r=h([2e3,a]),n&&!this._longMonthsParse[a]&&(this._longMonthsParse[a]=new RegExp("^"+this.months(r,"").replace(".","")+"$","i"),this._shortMonthsParse[a]=new RegExp("^"+this.monthsShort(r,"").replace(".","")+"$","i")),n||this._monthsParse[a]||(i="^"+this.months(r,"")+"|^"+this.monthsShort(r,""),this._monthsParse[a]=new RegExp(i.replace(".",""),"i")),n&&"MMMM"===e&&this._longMonthsParse[a].test(t))return a;if(n&&"MMM"===e&&this._shortMonthsParse[a].test(t))return a;if(!n&&this._monthsParse[a].test(t))return a}},fn.monthsRegex=function(t){return this._monthsParseExact?(c(this,"_monthsRegex")||Lt.call(this),t?this._monthsStrictRegex:this._monthsRegex):(c(this,"_monthsRegex")||(this._monthsRegex=Et),this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex)},fn.monthsShortRegex=function(t){return this._monthsParseExact?(c(this,"_monthsRegex")||Lt.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):(c(this,"_monthsShortRegex")||(this._monthsShortRegex=kt),this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex)},fn.week=function(t){return jt(t,this._week.dow,this._week.doy).week},fn.firstDayOfYear=function(){return this._week.doy},fn.firstDayOfWeek=function(){return this._week.dow},fn.weekdays=function(t,e){var n=i(this._weekdays)?this._weekdays:this._weekdays[t&&!0!==t&&this._weekdays.isFormat.test(e)?"format":"standalone"];return!0===t?Vt(n,this._week.dow):t?n[t.day()]:n},fn.weekdaysMin=function(t){return!0===t?Vt(this._weekdaysMin,this._week.dow):t?this._weekdaysMin[t.day()]:this._weekdaysMin},fn.weekdaysShort=function(t){return!0===t?Vt(this._weekdaysShort,this._week.dow):t?this._weekdaysShort[t.day()]:this._weekdaysShort},fn.weekdaysParse=function(t,e,n){var a,r,i;if(this._weekdaysParseExact)return Yt.call(this,t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),a=0;a<7;a++){if(r=h([2e3,1]).day(a),n&&!this._fullWeekdaysParse[a]&&(this._fullWeekdaysParse[a]=new RegExp("^"+this.weekdays(r,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[a]=new RegExp("^"+this.weekdaysShort(r,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[a]=new RegExp("^"+this.weekdaysMin(r,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[a]||(i="^"+this.weekdays(r,"")+"|^"+this.weekdaysShort(r,"")+"|^"+this.weekdaysMin(r,""),this._weekdaysParse[a]=new RegExp(i.replace(".",""),"i")),n&&"dddd"===e&&this._fullWeekdaysParse[a].test(t))return a;if(n&&"ddd"===e&&this._shortWeekdaysParse[a].test(t))return a;if(n&&"dd"===e&&this._minWeekdaysParse[a].test(t))return a;if(!n&&this._weekdaysParse[a].test(t))return a}},fn.weekdaysRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(c(this,"_weekdaysRegex")||(this._weekdaysRegex=Ht),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)},fn.weekdaysShortRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(c(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Ut),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},fn.weekdaysMinRegex=function(t){return this._weekdaysParseExact?(c(this,"_weekdaysRegex")||Kt.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(c(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Wt),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},fn.isPM=function(t){return"p"===(t+"").toLowerCase().charAt(0)},fn.meridiem=function(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"},ie("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===w(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),r.lang=I("moment.lang is deprecated. Use moment.locale instead.",ie),r.langData=I("moment.langData is deprecated. Use moment.localeData instead.",ue);var bn=Math.abs;function mn(t,e,n,a){var r=Ve(e,n);return t._milliseconds+=a*r._milliseconds,t._days+=a*r._days,t._months+=a*r._months,t._bubble()}function yn(t){return t<0?Math.floor(t):Math.ceil(t)}function vn(t){return 4800*t/146097}function xn(t){return 146097*t/4800}function _n(t){return function(){return this.as(t)}}var Tn=_n("ms"),wn=_n("s"),On=_n("m"),Sn=_n("h"),In=_n("d"),Nn=_n("w"),Cn=_n("M"),Rn=_n("Q"),An=_n("y");function kn(t){return function(){return this.isValid()?this._data[t]:NaN}}var En=kn("milliseconds"),Ln=kn("seconds"),Dn=kn("minutes"),Pn=kn("hours"),Mn=kn("days"),qn=kn("months"),jn=kn("years"),Fn=Math.round,Vn={ss:44,s:45,m:45,h:22,d:26,M:11};function Gn(t,e,n,a,r){return r.relativeTime(e||1,!!n,t,a)}var Bn=Math.abs;function zn(t){return(t>0)-(t<0)||+t}function Yn(){if(!this.isValid())return this.localeData().invalidDate();var t,e,n=Bn(this._milliseconds)/1e3,a=Bn(this._days),r=Bn(this._months);t=T(n/60),e=T(t/60),n%=60,t%=60;var i=T(r/12),s=r%=12,u=a,o=e,l=t,d=n?n.toFixed(3).replace(/\.?0+$/,""):"",c=this.asSeconds();if(!c)return"P0D";var f=c<0?"-":"",h=zn(this._months)!==zn(c)?"-":"",g=zn(this._days)!==zn(c)?"-":"",p=zn(this._milliseconds)!==zn(c)?"-":"";return f+"P"+(i?h+i+"Y":"")+(s?h+s+"M":"")+(u?g+u+"D":"")+(o||l||d?"T":"")+(o?p+o+"H":"")+(l?p+l+"M":"")+(d?p+d+"S":"")}var Hn=Re.prototype;return Hn.isValid=function(){return this._isValid},Hn.abs=function(){var t=this._data;return this._milliseconds=bn(this._milliseconds),this._days=bn(this._days),this._months=bn(this._months),t.milliseconds=bn(t.milliseconds),t.seconds=bn(t.seconds),t.minutes=bn(t.minutes),t.hours=bn(t.hours),t.months=bn(t.months),t.years=bn(t.years),this},Hn.add=function(t,e){return mn(this,t,e,1)},Hn.subtract=function(t,e){return mn(this,t,e,-1)},Hn.as=function(t){if(!this.isValid())return NaN;var e,n,a=this._milliseconds;if("month"===(t=P(t))||"quarter"===t||"year"===t)switch(n=this._months+vn(e=this._days+a/864e5),t){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(e=this._days+Math.round(xn(this._months)),t){case"week":return e/7+a/6048e5;case"day":return e+a/864e5;case"hour":return 24*e+a/36e5;case"minute":return 1440*e+a/6e4;case"second":return 86400*e+a/1e3;case"millisecond":return Math.floor(864e5*e)+a;default:throw new Error("Unknown unit "+t)}},Hn.asMilliseconds=Tn,Hn.asSeconds=wn,Hn.asMinutes=On,Hn.asHours=Sn,Hn.asDays=In,Hn.asWeeks=Nn,Hn.asMonths=Cn,Hn.asQuarters=Rn,Hn.asYears=An,Hn.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12):NaN},Hn._bubble=function(){var t,e,n,a,r,i=this._milliseconds,s=this._days,u=this._months,o=this._data;return i>=0&&s>=0&&u>=0||i<=0&&s<=0&&u<=0||(i+=864e5*yn(xn(u)+s),s=0,u=0),o.milliseconds=i%1e3,t=T(i/1e3),o.seconds=t%60,e=T(t/60),o.minutes=e%60,n=T(e/60),o.hours=n%24,s+=T(n/24),u+=r=T(vn(s)),s-=yn(xn(r)),a=T(u/12),u%=12,o.days=s,o.months=u,o.years=a,this},Hn.clone=function(){return Ve(this)},Hn.get=function(t){return t=P(t),this.isValid()?this[t+"s"]():NaN},Hn.milliseconds=En,Hn.seconds=Ln,Hn.minutes=Dn,Hn.hours=Pn,Hn.days=Mn,Hn.weeks=function(){return T(this.days()/7)},Hn.months=qn,Hn.years=jn,Hn.humanize=function(t){if(!this.isValid())return this.localeData().invalidDate();var e=this.localeData(),n=function(t,e,n){var a=Ve(t).abs(),r=Fn(a.as("s")),i=Fn(a.as("m")),s=Fn(a.as("h")),u=Fn(a.as("d")),o=Fn(a.as("M")),l=Fn(a.as("y")),d=r<=Vn.ss&&["s",r]||r<Vn.s&&["ss",r]||i<=1&&["m"]||i<Vn.m&&["mm",i]||s<=1&&["h"]||s<Vn.h&&["hh",s]||u<=1&&["d"]||u<Vn.d&&["dd",u]||o<=1&&["M"]||o<Vn.M&&["MM",o]||l<=1&&["y"]||["yy",l];return d[2]=e,d[3]=+t>0,d[4]=n,Gn.apply(null,d)}(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)},Hn.toISOString=Yn,Hn.toString=Yn,Hn.toJSON=Yn,Hn.locale=Ke,Hn.localeData=Ze,Hn.toIsoString=I("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Yn),Hn.lang=$e,Y("X",0,0,"unix"),Y("x",0,0,"valueOf"),dt("x",it),dt("X",/[+-]?\d+(\.\d{1,3})?/),gt("X",(function(t,e,n){n._d=new Date(1e3*parseFloat(t,10))})),gt("x",(function(t,e,n){n._d=new Date(w(t))})),r.version="2.24.0",e=Oe,r.fn=dn,r.min=function(){var t=[].slice.call(arguments,0);return Ne("isBefore",t)},r.max=function(){var t=[].slice.call(arguments,0);return Ne("isAfter",t)},r.now=function(){return Date.now?Date.now():+new Date},r.utc=h,r.unix=function(t){return Oe(1e3*t)},r.months=function(t,e){return gn(t,e,"months")},r.isDate=l,r.locale=ie,r.invalid=b,r.duration=Ve,r.isMoment=_,r.weekdays=function(t,e,n){return pn(t,e,n,"weekdays")},r.parseZone=function(){return Oe.apply(null,arguments).parseZone()},r.localeData=ue,r.isDuration=Ae,r.monthsShort=function(t,e){return gn(t,e,"monthsShort")},r.weekdaysMin=function(t,e,n){return pn(t,e,n,"weekdaysMin")},r.defineLocale=se,r.updateLocale=function(t,e){if(null!=e){var n,a,r=te;null!=(a=re(t))&&(r=a._config),(n=new E(e=k(r,e))).parentLocale=ee[t],ee[t]=n,ie(t)}else null!=ee[t]&&(null!=ee[t].parentLocale?ee[t]=ee[t].parentLocale:null!=ee[t]&&delete ee[t]);return ee[t]},r.locales=function(){return N(ee)},r.weekdaysShort=function(t,e,n){return pn(t,e,n,"weekdaysShort")},r.normalizeUnits=P,r.relativeTimeRounding=function(t){return void 0===t?Fn:"function"==typeof t&&(Fn=t,!0)},r.relativeTimeThreshold=function(t,e){return void 0!==Vn[t]&&(void 0===e?Vn[t]:(Vn[t]=e,"s"===t&&(Vn.ss=e-1),!0))},r.calendarFormat=function(t,e){var n=t.diff(e,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"},r.prototype=dn,r.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},r}()}).call(this,n("YuTi")(t))},wg0c:function(t,e,n){var a=n("2oRo"),r=n("WKiH").trim,i=n("WJkJ"),s=a.parseInt,u=/^[+-]?0[Xx]/,o=8!==s(i+"08")||22!==s(i+"0x16");t.exports=o?function(t,e){var n=r(String(t));return s(n,e>>>0||(u.test(n)?16:10))}:s},wgvl:function(t,e,n){var a=n("Ytn0");t.exports=function(t,e){var n=a(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this}},wnGv:function(t,e,n){"use strict";n.d(e,"a",(function(){return d}));var a=n("8Y7J"),r=n("s7LF"),i=n("LvDl"),s=n("oxzT"),u=n("QFaf"),o=n("DNAf"),l=n("a96k");class d{constructor(t){this.i18n=t,this.data=[],this.options=[],this.messages=new o.a({},this.i18n),this.customBadges=!1,this.customBadgeValidators=[],this.selection=new a.EventEmitter,this.Object=Object,this.filteredOptions=[],this.icons=s.a}ngOnInit(){this.initFilter(),this.data.length>0&&this.initMissingOptions(),this.options=i.sortBy(this.options,["name"]),this.updateOptions()}initFilter(){this.filter=new r.i("",{validators:this.customBadgeValidators}),this.form=new u.a({filter:this.filter}),this.filteredOptions=[...this.options||[]]}initMissingOptions(){const t=this.options.map(t=>t.name);this.data.filter(e=>-1===t.indexOf(e)).forEach(t=>this.addOption(t)),this.forceOptionsToReflectData()}addOption(t){this.options.push(new l.a(!1,t,"")),this.options=i.sortBy(this.options,["name"]),this.triggerSelection(this.options.find(e=>e.name===t))}triggerSelection(t){!t||this.selectionLimit&&!t.selected&&this.data.length>=this.selectionLimit||(t.selected=!t.selected,this.updateOptions(),this.selection.emit({option:t}))}updateOptions(){this.data.splice(0,this.data.length),this.options.forEach(t=>{t.selected&&this.data.push(t.name)}),this.updateFilter()}updateFilter(){this.filteredOptions=this.options.filter(t=>t.name.includes(this.filter.value))}forceOptionsToReflectData(){this.options.forEach(t=>{-1!==this.data.indexOf(t.name)&&(t.selected=!0)})}ngOnChanges(){this.filter&&this.updateFilter(),this.options&&this.data&&0!==this.data.length&&this.forceOptionsToReflectData()}selectOption(){0===this.filteredOptions.length?this.addCustomOption():(this.triggerSelection(this.filteredOptions[0]),this.resetFilter())}addCustomOption(){this.isCreatable()&&(this.addOption(this.filter.value),this.resetFilter())}isCreatable(){return this.customBadges&&this.filter.valid&&this.filter.value.length>0&&this.filteredOptions.every(t=>t.name!==this.filter.value)}resetFilter(){this.filter.setValue(""),this.updateFilter()}removeItem(t){this.triggerSelection(this.options.find(e=>e.name===t&&e.selected))}}},woSy:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("f95s"),i=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s},s=function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},u=function(){function t(){}return t.prototype.onDrop=function(t){this.node.mouseAction("drop",t.event,{from:t.element,to:{parent:this.node,index:this.dropIndex}})},t.prototype.allowDrop=function(t,e){return this.node.options.allowDrop(t,{parent:this.node,index:this.dropIndex},e)},i([Object(a.Input)(),s("design:type",r.a)],t.prototype,"node",void 0),i([Object(a.Input)(),s("design:type",Number)],t.prototype,"dropIndex",void 0),i([Object(a.Component)({selector:"TreeNodeDropSlot, tree-node-drop-slot",encapsulation:a.ViewEncapsulation.None,styles:[],template:'\n    <div\n      class="node-drop-slot"\n      (treeDrop)="onDrop($event)"\n      [treeAllowDrop]="allowDrop.bind(this)"\n      [allowDragoverStyling]="true">\n    </div>\n  '})],t)}()},x38r:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a=function(t){return t.bold="bold",t.sparkline="sparkline",t.perSecond="perSecond",t.checkIcon="checkIcon",t.routerLink="routerLink",t.executing="executing",t.classAdding="classAdding",t.badge="badge",t.map="map",t.truncate="truncate",t}({})},x3F9:function(t,e){t.exports=function(t){return null!=t&&"object"==typeof t}},x6pH:function(t,e,n){!function(t){"use strict";t.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY HH:mm",LLLL:"dddd, D [ב]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",ss:"%d שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(t){return 2===t?"שעתיים":t+" שעות"},d:"יום",dd:function(t){return 2===t?"יומיים":t+" ימים"},M:"חודש",MM:function(t){return 2===t?"חודשיים":t+" חודשים"},y:"שנה",yy:function(t){return 2===t?"שנתיים":t%10==0&&10!==t?t+" שנה":t+" שנים"}},meridiemParse:/אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,isPM:function(t){return/^(אחה"צ|אחרי הצהריים|בערב)$/.test(t)},meridiem:function(t,e,n){return t<5?"לפנות בוקר":t<10?"בבוקר":t<12?n?'לפנה"צ':"לפני הצהריים":t<18?n?'אחה"צ':"אחרי הצהריים":"בערב"}})}(n("wd/R"))},xAZD:function(t,e){t.exports=function(t,e){for(var n=-1,a=null==t?0:t.length,r=Array(a);++n<a;)r[n]=e(t[n],n,t);return r}},xDBR:function(t,e){t.exports=!1},xOlK:function(t,e,n){var a=n("77kF"),r=n("FGWQ");t.exports=function(t,e){return t&&a(e,r(e),t)}},xSw7:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("Fgil"),i=n("aXbf"),s=n("o4+5"),u=n("SVse"),o=n("978R"),l=n("z/SZ"),d=n("2uy1");n("GgAd"),n.d(e,"a",(function(){return c})),n.d(e,"b",(function(){return h}));var c=a["ɵcrt"]({encapsulation:0,styles:[[".bg-info[_ngcontent-%COMP%]{background-color:#2b99a8!important}.bg-freespace[_ngcontent-%COMP%]{background-color:#d1d1d1!important}.progress[_ngcontent-%COMP%]{height:20px;position:relative;margin-bottom:0}.progress[_ngcontent-%COMP%]   div.progress-bar[_ngcontent-%COMP%]{position:static}.progress[_ngcontent-%COMP%]   span[_ngcontent-%COMP%]{position:absolute;display:block;width:100%;color:#000;font-weight:400}"]],data:{}});function f(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,16,"table",[],null,null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,7,"tr",[],null,null,null,null,null)),(t()(),a["ɵeld"](2,0,null,null,1,"td",[["class","text-left"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Used: "])),(t()(),a["ɵeld"](4,0,null,null,4,"td",[["class","text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](5,0,null,null,3,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](6,null,[" ",""])),a["ɵppd"](7,1),a["ɵppd"](8,1),(t()(),a["ɵeld"](9,0,null,null,7,"tr",[],null,null,null,null,null)),(t()(),a["ɵeld"](10,0,null,null,1,"td",[["class","text-left"]],null,null,null,null,null)),(t()(),a["ɵted"](-1,null,["Free: "])),(t()(),a["ɵeld"](12,0,null,null,4,"td",[["class","'text-right"]],null,null,null,null,null)),(t()(),a["ɵeld"](13,0,null,null,3,"strong",[],null,null,null,null,null)),(t()(),a["ɵted"](14,null,["",""])),a["ɵppd"](15,1),a["ɵppd"](16,1)],null,(function(t,e){var n=e.component,r=a["ɵunv"](e,6,0,n.isBinary?t(e,7,0,a["ɵnov"](e.parent,0),n.used):t(e,8,0,a["ɵnov"](e.parent,1),n.used));t(e,6,0,r);var i=a["ɵunv"](e,14,0,n.isBinary?t(e,15,0,a["ɵnov"](e.parent,0),n.total-n.used):t(e,16,0,a["ɵnov"](e.parent,1),n.total-n.used));t(e,14,0,i)}))}function h(t){return a["ɵvid"](0,[a["ɵpid"](0,r.a,[i.a]),a["ɵpid"](0,s.a,[i.a]),a["ɵpid"](0,u.DecimalPipe,[a.LOCALE_ID]),(t()(),a["ɵand"](0,[["usageTooltipTpl",2]],null,0,null,f)),(t()(),a["ɵeld"](4,16777216,null,null,6,"div",[["class","progress"],["data-placement","left"]],null,null,null,null,null)),a["ɵdid"](5,212992,null,0,o.c,[a.ViewContainerRef,l.a,o.a,a.ElementRef,a.Renderer2,d.a],{tooltip:[0,"tooltip"],placement:[1,"placement"]},null),(t()(),a["ɵeld"](6,0,null,null,3,"div",[["class","progress-bar bg-info"],["role","progressbar"]],[[4,"width",null]],null,null,null,null)),(t()(),a["ɵeld"](7,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),a["ɵted"](8,null,["","%"])),a["ɵppd"](9,2),(t()(),a["ɵeld"](10,0,null,null,0,"div",[["class","progress-bar bg-freespace"],["role","progressbar"]],[[4,"width",null]],null,null,null,null))],(function(t,e){t(e,5,0,a["ɵnov"](e,3),"left")}),(function(t,e){var n=e.component;t(e,6,0,n.usedPercentage+"%");var r=a["ɵunv"](e,8,0,t(e,9,0,a["ɵnov"](e,2),n.usedPercentage,"1.0-"+n.decimals));t(e,8,0,r),t(e,10,0,n.freePercentage+"%")}))}},xT5m:function(t,e,n){var a=n("SQuY"),r=n("7Igq"),i=n("jy8Y");function s(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new a;++e<n;)this.add(t[e])}s.prototype.add=s.prototype.push=r,s.prototype.has=i,t.exports=s},xTzq:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return i}));var a=n("LvDl");function r(...t){switch(t.length){case 1:return s.apply(void 0,t);case 3:return u.apply(void 0,t);default:throw new Error}}function i(t,e,n){const a="__ignore_"+e;Array.isArray(t[a])?t[a].push(n):t[a]=[n]}function s(t){for(const e of Object.getOwnPropertyNames(t.prototype)){const n=Object.getOwnPropertyDescriptor(t.prototype,e),a="constructor"===e;n.value instanceof Function&&!a&&(u(t.prototype,e,n),Object.defineProperty(t.prototype,e,n))}}function u(t,e,n){void 0===n&&(n=Object.getOwnPropertyDescriptor(t,e));const r=n.value;n.value=function(){const n="__ignore_"+e,i=t[n]||[],s=[];for(let t=0;t<arguments.length;t++)s[t]=a.isString(arguments[t])&&-1===i.indexOf(t)?encodeURIComponent(arguments[t]):arguments[t];const u=r.apply(this,s);return u}}},xbPD:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("7o/Q");function r(t=null){return e=>e.lift(new i(t))}class i{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new s(t,this.defaultValue))}}class s extends a.a{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}},xdB7:function(t,e,n){var a=n("bX23"),r=n("l9nr"),i=n("H+zY"),s=Math.max;t.exports=function(t,e,n){var u=null==t?0:t.length;if(!u)return-1;var o=null==n?0:i(n);return o<0&&(o=s(u+o,0)),a(t,r(e,3),o)}},xgIS:function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("HDdC"),r=n("DH7j"),i=n("n6bG"),s=n("lJxs");function u(t,e,n,o){return Object(i.a)(n)&&(o=n,n=void 0),o?u(t,e,n).pipe(Object(s.a)(t=>Object(r.a)(t)?o(...t):o(t))):new a.a(a=>{!function t(e,n,a,r,i){let s;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,a,i),s=()=>t.removeEventListener(n,a,i)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,a),s=()=>t.off(n,a)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,a),s=()=>t.removeListener(n,a)}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let s=0,u=e.length;s<u;s++)t(e[s],n,a,r,i)}r.add(s)}(t,e,(function(t){a.next(arguments.length>1?Array.prototype.slice.call(arguments):t)}),a,n)})}},"xj/R":function(t,e,n){"use strict";function a(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function r(t){return"string"==typeof t}function i(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t){return t&&t.getTime&&!isNaN(t.getTime())}function u(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function o(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function l(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function d(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function c(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function f(t){return void 0===t}function h(t){const e=+t;let n=0;return 0!==e&&isFinite(e)&&(n=a(e)),n}n.d(e,"a",(function(){return Ze})),n.d(e,"b",(function(){return Qe})),n.d(e,"c",(function(){return Qt})),n.d(e,"d",(function(){return Tt})),n.d(e,"e",(function(){return an})),n.d(e,"f",(function(){return _e})),n.d(e,"g",(function(){return rn})),n.d(e,"h",(function(){return R})),n.d(e,"i",(function(){return L})),n.d(e,"j",(function(){return E})),n.d(e,"k",(function(){return Xt})),n.d(e,"l",(function(){return k})),n.d(e,"m",(function(){return sn})),n.d(e,"n",(function(){return Ae})),n.d(e,"o",(function(){return l})),n.d(e,"p",(function(){return ke})),n.d(e,"q",(function(){return i})),n.d(e,"r",(function(){return s})),n.d(e,"s",(function(){return Ee})),n.d(e,"t",(function(){return D})),n.d(e,"u",(function(){return Le})),n.d(e,"v",(function(){return q})),n.d(e,"w",(function(){return P})),n.d(e,"x",(function(){return M})),n.d(e,"y",(function(){return un})),n.d(e,"z",(function(){return on})),n.d(e,"A",(function(){return ln})),n.d(e,"B",(function(){return Ne})),n.d(e,"C",(function(){return gn})),n.d(e,"D",(function(){return pn})),n.d(e,"E",(function(){return bt})),n.d(e,"F",(function(){return pt})),n.d(e,"G",(function(){return _t})),n.d(e,"H",(function(){return Ce})),n.d(e,"I",(function(){return bn}));const g={},p={date:"day",hour:"hours",minute:"minutes",second:"seconds",millisecond:"milliseconds"};function b(t,e){const n=t.toLowerCase();let a=t;n in p&&(a=p[n]),g[n]=g[n+"s"]=g[e]=a}function m(t){return r(t)?g[t]||g[t.toLowerCase()]:void 0}function y(t,e,n){const a=""+Math.abs(t);return(t>=0?n?"+":"":"-")+Math.pow(10,Math.max(0,e-a.length)).toString().substr(1)+a}let v={},x={};const _=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;function T(t,e,n,a){t&&(x[t]=a),e&&(x[e[0]]=function(){return y(a.apply(null,arguments),e[1],e[2])}),n&&(x[n]=function(e,n){return n.locale.ordinal(a.apply(null,arguments),t)})}function w(t,e,n){const a=new Date(Date.UTC.apply(null,arguments));return t<100&&t>=0&&isFinite(a.getUTCFullYear())&&a.setUTCFullYear(t),a}function O(t,e=0,n=1,a=0,r=0,i=0,s=0){const u=new Date(t,e,n,a,r,i,s);return t<100&&t>=0&&isFinite(u.getFullYear())&&u.setFullYear(t),u}function S(t,e=!1){return e?t.getUTCHours():t.getHours()}function I(t,e=!1){return e?t.getUTCMinutes():t.getMinutes()}function N(t,e=!1){return e?t.getUTCSeconds():t.getSeconds()}function C(t,e=!1){return e?t.getUTCMilliseconds():t.getMilliseconds()}function R(t,e=!1){return e?t.getUTCDay():t.getDay()}function A(t,e=!1){return e?t.getUTCDate():t.getDate()}function k(t,e=!1){return e?t.getUTCMonth():t.getMonth()}function E(t,e=!1){return e?t.getUTCFullYear():t.getFullYear()}function L(t){return O(t.getFullYear(),t.getMonth(),1,t.getHours(),t.getMinutes(),t.getSeconds())}function D(t,e){return t.getDay()===e}function P(t,e){return!(!t||!e)&&M(t,e)&&k(t)===k(e)}function M(t,e){return!(!t||!e)&&E(t)===E(e)}function q(t,e){return!(!t||!e)&&M(t,e)&&P(t,e)&&A(t)===A(e)}const j=/\d/,F=/\d\d/,V=/\d{3}/,G=/\d{4}/,B=/[+-]?\d{6}/,z=/\d\d?/,Y=/\d\d\d\d?/,H=/\d\d\d\d\d\d?/,U=/\d{1,3}/,W=/\d{1,4}/,K=/[+-]?\d{1,6}/,$=/\d+/,Z=/[+-]?\d+/,J=/Z|[+-]\d\d(?::?\d\d)?/gi,Q=/[+-]?\d+(\.\d{1,3})?/,X=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,tt={};function et(t,e,n){tt[t]=u(e)?e:function(t,a){return t&&n?n:e}}function nt(t,e){return d(tt,t)?tt[t](!1,e):new RegExp(at(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(t,e,n,a,r)=>e||n||a||r)))}function at(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}const rt={};function it(t,e){const n=r(t)?[t]:t;let a=e;if(o(e)&&(a=function(t,n,a){return n[e]=h(t),a}),l(n)&&u(a)){let t;for(t=0;t<n.length;t++)rt[n[t]]=a}}function st(t,e){it(t,(function(t,n,a,r){return a._w=a._w||{},e(t,a._w,a,r)}))}function ut(t,e,n){return null!=e&&d(rt,t)&&rt[t](e,n._a,n,t),n}function ot(t){return null==t._pf&&(t._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),t._pf}function lt(t,e){return E(t,e.isUTC).toString()}function dt(t){return h(t)+(h(t)>68?1900:2e3)}function ct(t){return ft(t)?366:365}function ft(t){return t%4==0&&t%100!=0||t%400==0}function ht(t,e){if(isNaN(t)||isNaN(e))return NaN;const n=(e%12+12)%12;return 1===n?ft(t+(e-n)/12)?29:28:31-n%7%2}const gt={year:0,month:0,day:0,hour:0,minute:0,seconds:0};function pt(t,e){const n=Object.assign({},gt,e),a=t.getFullYear()+(n.year||0),r=t.getMonth()+(n.month||0);let i=t.getDate()+(n.day||0);return n.month&&!n.day&&(i=Math.min(i,ht(a,r))),O(a,r,i,t.getHours()+(n.hour||0),t.getMinutes()+(n.minute||0),t.getSeconds()+(n.seconds||0))}function bt(t,e){return O(mt(t.getFullYear(),e.year),mt(t.getMonth(),e.month),1,mt(t.getHours(),e.hour),mt(t.getMinutes(),e.minute),mt(t.getSeconds(),e.seconds),mt(t.getMilliseconds(),e.milliseconds))}function mt(t,e){return o(e)?e:t}function yt(t,e,n){const a=Math.min(A(t),ht(E(t),e));return n?t.setUTCMonth(e,a):t.setMonth(e,a),t}function vt(t,e,n){return n?t.setUTCDate(e):t.setDate(e),t}function xt(t){return new Date(t.getTime())}function _t(t,e,n){const a=xt(t);switch(e){case"year":yt(a,0,n);case"quarter":case"month":vt(a,1,n);case"week":case"isoWeek":case"day":case"date":!function(t,e,n){n?t.setUTCHours(0):t.setHours(0)}(a,0,n);case"hours":!function(t,e,n){n?t.setUTCMinutes(0):t.setMinutes(0)}(a,0,n);case"minutes":!function(t,e,n){n?t.setUTCSeconds(0):t.setSeconds(0)}(a,0,n);case"seconds":!function(t,e,n){n?t.setUTCMilliseconds(0):t.setMilliseconds(0)}(a,0,n)}return"week"===e&&function(t,e,n={}){Fe(t,0-ze(t,n.locale,n.isUTC),"day")}(a,0,{isUTC:n}),"isoWeek"===e&&function(t,e,n={}){const a=function(t,e=Xt()){return r(t)?e.weekdaysParse(t)%7||7:o(t)&&isNaN(t)?null:t}(1,n.locale);Ge(t,Be(t)%7?a:a-7)}(a),"quarter"===e&&yt(a,3*Math.floor(k(a,n)/3),n),a}function Tt(t,e,n){let a=e;return"date"===a&&(a="day"),function(t,e,n,a){return Ve(t,Me(1,"milliseconds"),-1,a)}(Fe(_t(t,a,n),1,"isoWeek"===a?"week":a,n),0,0,n)}function wt(t,e){const n=+_t(t,"day",e),a=+_t(t,"year",e);return Math.round((n-a)/864e5)+1}function Ot(t,e,n){const a=e-n+7;return-(w(t,0,a).getUTCDay()-e+7)%7+a-1}function St(t,e,n,a){const r=Ot(E(t,a),e,n),i=Math.floor((wt(t,a)-r-1)/7)+1;let s,u;return i<1?(u=E(t,a)-1,s=i+It(u,e,n)):i>It(E(t,a),e,n)?(s=i-It(E(t,a),e,n),u=E(t,a)+1):(u=E(t,a),s=i),{week:s,year:u}}function It(t,e,n){const a=Ot(t,e,n),r=Ot(t+1,e,n);return(ct(t)-a+r)/7}const Nt=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,Ct="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Rt="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),At="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),kt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Et="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Lt={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},Dt=X,Pt=X;class Mt{constructor(t){t&&this.set(t)}set(t){let e;for(e in t){if(!t.hasOwnProperty(e))continue;const n=t[e];this[u(n)?e:"_"+e]=n}this._config=t}calendar(t,e,n){const a=this._calendar[t]||this._calendar.sameElse;return u(a)?a.call(null,e,n):a}longDateFormat(t){const e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,(function(t){return t.slice(1)})),this._longDateFormat[t])}get invalidDate(){return this._invalidDate}set invalidDate(t){this._invalidDate=t}ordinal(t,e){return this._ordinal.replace("%d",t.toString(10))}preparse(t){return t}preinput(t){return t}postvalue(t){return t}postformat(t){return t}relativeTime(t,e,n,a){const r=this._relativeTime[n];return u(r)?r(t,e,n,a):r.replace(/%d/i,t.toString(10))}pastFuture(t,e){const n=this._relativeTime[t>0?"future":"past"];return u(n)?n(e):n.replace(/%s/i,e)}months(t,e,n=!1){if(!t)return l(this._months)?this._months:this._months.standalone;if(l(this._months))return this._months[k(t,n)];const a=(this._months.isFormat||Nt).test(e)?"format":"standalone";return this._months[a][k(t,n)]}monthsShort(t,e,n=!1){if(!t)return l(this._monthsShort)?this._monthsShort:this._monthsShort.standalone;if(l(this._monthsShort))return this._monthsShort[k(t,n)];const a=Nt.test(e)?"format":"standalone";return this._monthsShort[a][k(t,n)]}monthsParse(t,e,n){let a,r,i;if(this._monthsParseExact)return this.handleMonthStrictParse(t,e,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),i=0;i<12;i++){if(a=new Date(Date.UTC(2e3,i)),n&&!this._longMonthsParse[i]){const t=this.months(a,"",!0).replace(".",""),e=this.monthsShort(a,"",!0).replace(".","");this._longMonthsParse[i]=new RegExp(`^${t}$`,"i"),this._shortMonthsParse[i]=new RegExp(`^${e}$`,"i")}if(n||this._monthsParse[i]||(r=`^${this.months(a,"",!0)}|^${this.monthsShort(a,"",!0)}`,this._monthsParse[i]=new RegExp(r.replace(".",""),"i")),n&&"MMMM"===e&&this._longMonthsParse[i].test(t))return i;if(n&&"MMM"===e&&this._shortMonthsParse[i].test(t))return i;if(!n&&this._monthsParse[i].test(t))return i}}monthsRegex(t){return this._monthsParseExact?(d(this,"_monthsRegex")||this.computeMonthsParse(),t?this._monthsStrictRegex:this._monthsRegex):(d(this,"_monthsRegex")||(this._monthsRegex=Pt),this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex)}monthsShortRegex(t){return this._monthsParseExact?(d(this,"_monthsRegex")||this.computeMonthsParse(),t?this._monthsShortStrictRegex:this._monthsShortRegex):(d(this,"_monthsShortRegex")||(this._monthsShortRegex=Dt),this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex)}week(t,e){return St(t,this._week.dow,this._week.doy,e).week}firstDayOfWeek(){return this._week.dow}firstDayOfYear(){return this._week.doy}weekdays(t,e,n){if(!t)return l(this._weekdays)?this._weekdays:this._weekdays.standalone;if(l(this._weekdays))return this._weekdays[R(t,n)];const a=this._weekdays.isFormat.test(e)?"format":"standalone";return this._weekdays[a][R(t,n)]}weekdaysMin(t,e,n){return t?this._weekdaysMin[R(t,n)]:this._weekdaysMin}weekdaysShort(t,e,n){return t?this._weekdaysShort[R(t,n)]:this._weekdaysShort}weekdaysParse(t,e,n){let a,r;if(this._weekdaysParseExact)return this.handleWeekStrictParse(t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),a=0;a<7;a++){const i=Ge(new Date(Date.UTC(2e3,1)),a,null,!0);if(n&&!this._fullWeekdaysParse[a]&&(this._fullWeekdaysParse[a]=new RegExp(`^${this.weekdays(i,"",!0).replace(".",".?")}$`,"i"),this._shortWeekdaysParse[a]=new RegExp(`^${this.weekdaysShort(i,"",!0).replace(".",".?")}$`,"i"),this._minWeekdaysParse[a]=new RegExp(`^${this.weekdaysMin(i,"",!0).replace(".",".?")}$`,"i")),this._weekdaysParse[a]||(r=`^${this.weekdays(i,"",!0)}|^${this.weekdaysShort(i,"",!0)}|^${this.weekdaysMin(i,"",!0)}`,this._weekdaysParse[a]=new RegExp(r.replace(".",""),"i")),!(l(this._fullWeekdaysParse)&&l(this._shortWeekdaysParse)&&l(this._minWeekdaysParse)&&l(this._weekdaysParse)))return;if(n&&"dddd"===e&&this._fullWeekdaysParse[a].test(t))return a;if(n&&"ddd"===e&&this._shortWeekdaysParse[a].test(t))return a;if(n&&"dd"===e&&this._minWeekdaysParse[a].test(t))return a;if(!n&&this._weekdaysParse[a].test(t))return a}}weekdaysRegex(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||this.computeWeekdaysParse(),t?this._weekdaysStrictRegex:this._weekdaysRegex):(d(this,"_weekdaysRegex")||(this._weekdaysRegex=X),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)}weekdaysShortRegex(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||this.computeWeekdaysParse(),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(d(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=X),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}weekdaysMinRegex(t){return this._weekdaysParseExact?(d(this,"_weekdaysRegex")||this.computeWeekdaysParse(),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(d(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=X),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}isPM(t){return"p"===t.toLowerCase().charAt(0)}meridiem(t,e,n){return t>11?n?"pm":"PM":n?"am":"AM"}formatLongDate(t){this._longDateFormat=this._longDateFormat?this._longDateFormat:Lt;const e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,t=>t.slice(1)),this._longDateFormat[t])}handleMonthStrictParse(t,e,n){const a=t.toLocaleLowerCase();let r,i,s;if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],r=0;r<12;++r)s=new Date(2e3,r),this._shortMonthsParse[r]=this.monthsShort(s,"").toLocaleLowerCase(),this._longMonthsParse[r]=this.months(s,"").toLocaleLowerCase();return n?"MMM"===e?(i=this._shortMonthsParse.indexOf(a),-1!==i?i:null):(i=this._longMonthsParse.indexOf(a),-1!==i?i:null):"MMM"===e?(i=this._shortMonthsParse.indexOf(a),-1!==i?i:(i=this._longMonthsParse.indexOf(a),-1!==i?i:null)):(i=this._longMonthsParse.indexOf(a),-1!==i?i:(i=this._shortMonthsParse.indexOf(a),-1!==i?i:null))}handleWeekStrictParse(t,e,n){let a;const r=t.toLocaleLowerCase();if(!this._weekdaysParse){let t;for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],t=0;t<7;++t){const e=Ge(new Date(Date.UTC(2e3,1)),t,null,!0);this._minWeekdaysParse[t]=this.weekdaysMin(e).toLocaleLowerCase(),this._shortWeekdaysParse[t]=this.weekdaysShort(e).toLocaleLowerCase(),this._weekdaysParse[t]=this.weekdays(e,"").toLocaleLowerCase()}}if(l(this._weekdaysParse)&&l(this._shortWeekdaysParse)&&l(this._minWeekdaysParse))return n?"dddd"===e?(a=this._weekdaysParse.indexOf(r),-1!==a?a:null):"ddd"===e?(a=this._shortWeekdaysParse.indexOf(r),-1!==a?a:null):(a=this._minWeekdaysParse.indexOf(r),-1!==a?a:null):"dddd"===e?(a=this._weekdaysParse.indexOf(r),-1!==a?a:(a=this._shortWeekdaysParse.indexOf(r),-1!==a?a:(a=this._minWeekdaysParse.indexOf(r),-1!==a?a:null))):"ddd"===e?(a=this._shortWeekdaysParse.indexOf(r),-1!==a?a:(a=this._weekdaysParse.indexOf(r),-1!==a?a:(a=this._minWeekdaysParse.indexOf(r),-1!==a?a:null))):(a=this._minWeekdaysParse.indexOf(r),-1!==a?a:(a=this._weekdaysParse.indexOf(r),-1!==a?a:(a=this._shortWeekdaysParse.indexOf(r),-1!==a?a:null)))}computeMonthsParse(){const t=[],e=[],n=[];let a,r;for(r=0;r<12;r++)a=new Date(2e3,r),t.push(this.monthsShort(a,"")),e.push(this.months(a,"")),n.push(this.months(a,"")),n.push(this.monthsShort(a,""));for(t.sort(qt),e.sort(qt),n.sort(qt),r=0;r<12;r++)t[r]=at(t[r]),e[r]=at(e[r]);for(r=0;r<24;r++)n[r]=at(n[r]);this._monthsRegex=new RegExp(`^(${n.join("|")})`,"i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp(`^(${e.join("|")})`,"i"),this._monthsShortStrictRegex=new RegExp(`^(${t.join("|")})`,"i")}computeWeekdaysParse(){const t=[],e=[],n=[],a=[];let r;for(r=0;r<7;r++){const i=Ge(new Date(Date.UTC(2e3,1)),r,null,!0),s=this.weekdaysMin(i),u=this.weekdaysShort(i),o=this.weekdays(i);t.push(s),e.push(u),n.push(o),a.push(s),a.push(u),a.push(o)}for(t.sort(qt),e.sort(qt),n.sort(qt),a.sort(qt),r=0;r<7;r++)e[r]=at(e[r]),n[r]=at(n[r]),a[r]=at(a[r]);this._weekdaysRegex=new RegExp(`^(${a.join("|")})`,"i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp(`^(${n.join("|")})`,"i"),this._weekdaysShortStrictRegex=new RegExp(`^(${e.join("|")})`,"i"),this._weekdaysMinStrictRegex=new RegExp(`^(${t.join("|")})`,"i")}}function qt(t,e){return e.length-t.length}const jt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:Lt,invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Ct,monthsShort:Rt,week:{dow:0,doy:6},weekdays:At,weekdaysMin:Et,weekdaysShort:kt,meridiemParse:/[ap]\.?m?\.?/i};function Ft(t,e,n){const a=Math.min(t.length,e.length),r=Math.abs(t.length-e.length);let i,s=0;for(i=0;i<a;i++)(n&&t[i]!==e[i]||!n&&h(t[i])!==h(e[i]))&&s++;return s+r}function Vt(t,e){T(null,[t,t.length,!1],null,e)}function Gt(t,e){return zt(t,e.locale).toString()}function Bt(t){return Yt(t).toString()}function zt(t,e=Xt(),n){return St(t,e.firstDayOfWeek(),e.firstDayOfYear(),n).year}function Yt(t,e){return St(t,1,4,e).year}function Ht(t,e){T(t,null,null,(function(t,n){let a=function(t,e={}){return e._isUTC?e._offset||0:function(t){return 15*-Math.round(t.getTimezoneOffset()/15)}(t)}(t,{_isUTC:n.isUTC,_offset:n.offset}),r="+";return a<0&&(a=-a,r="-"),r+y(~~(a/60),2)+e+y(~~a%60,2)}))}const Ut=/([\+\-]|\d\d)/gi,Wt={},Kt={};let $t;function Zt(t){return t?t.toLowerCase().replace("_","-"):t}function Jt(t,e){let n;return t&&(f(e)?n=Xt(t):r(t)&&(n=Qt(t,e)),n&&($t=n)),$t&&$t._abbr}function Qt(t,e){if(null===e)return delete Wt[t],$t=Xt("en"),null;if(!e)return;let n=jt;if(e.abbr=t,null!=e.parentLocale){if(null==Wt[e.parentLocale])return Kt[e.parentLocale]||(Kt[e.parentLocale]=[]),Kt[e.parentLocale].push({name:t,config:e}),null;n=Wt[e.parentLocale]._config}return Wt[t]=new Mt(function(t,e){const n=Object.assign({},t);for(const a in e)d(e,a)&&(c(t[a])&&c(e[a])?(n[a]={},Object.assign(n[a],t[a]),Object.assign(n[a],e[a])):null!=e[a]?n[a]=e[a]:delete n[a]);for(const a in t)d(t,a)&&!d(e,a)&&c(t[a])&&(n[a]=Object.assign({},n[a]));return n}(n,e)),Kt[t]&&Kt[t].forEach((function(t){Qt(t.name,t.config)})),Jt(t),Wt[t]}function Xt(t){return Wt.en||(Jt("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal(t){const e=t%10;return t+(1===h(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),T("w",["ww",2,!1],"wo",(function(t,e){return function(t,e=Xt(),n){return e.week(t,void 0)}(t,e.locale).toString(10)})),T("W",["WW",2,!1],"Wo",(function(t){return function(t,e){return St(t,1,4,void 0).week}(t).toString(10)})),b("week","w"),b("isoWeek","W"),et("w",z),et("ww",z,F),et("W",z),et("WW",z,F),st(["w","ww","W","WW"],(function(t,e,n,a){return e[a.substr(0,1)]=h(t),n})),T(null,["gg",2,!1],null,(function(t,e){return(zt(t,e.locale)%100).toString()})),T(null,["GG",2,!1],null,(function(t){return(Yt(t)%100).toString()})),Vt("gggg",Gt),Vt("ggggg",Gt),Vt("GGGG",Bt),Vt("GGGGG",Bt),b("weekYear","gg"),b("isoWeekYear","GG"),et("G",Z),et("g",Z),et("GG",z,F),et("gg",z,F),et("GGGG",W,G),et("gggg",W,G),et("GGGGG",K,B),et("ggggg",K,B),st(["gggg","ggggg","GGGG","GGGGG"],(function(t,e,n,a){return e[a.substr(0,2)]=h(t),n})),st(["gg","GG"],(function(t,e,n,a){return e[a]=dt(t),n})),T("Y",null,null,(function(t,e){const n=E(t,e.isUTC);return n<=9999?n.toString(10):"+"+n})),T(null,["YY",2,!1],null,(function(t,e){return(E(t,e.isUTC)%100).toString(10)})),T(null,["YYYY",4,!1],null,lt),T(null,["YYYYY",5,!1],null,lt),T(null,["YYYYYY",6,!0],null,lt),b("year","y"),et("Y",Z),et("YY",z,F),et("YYYY",W,G),et("YYYYY",K,B),et("YYYYYY",K,B),it(["YYYYY","YYYYYY"],0),it("YYYY",(function(t,e,n){return e[0]=2===t.length?dt(t):h(t),n})),it("YY",(function(t,e,n){return e[0]=dt(t),n})),it("Y",(function(t,e,n){return e[0]=parseInt(t,10),n})),T("z",null,null,(function(t,e){return e.isUTC?"UTC":""})),T("zz",null,null,(function(t,e){return e.isUTC?"Coordinated Universal Time":""})),T("X",null,null,(function(t){return function(t){return Math.floor(t.valueOf()/1e3)}(t).toString(10)})),T("x",null,null,(function(t){return t.valueOf().toString(10)})),et("x",Z),et("X",Q),it("X",(function(t,e,n){return n._d=new Date(1e3*parseFloat(t)),n})),it("x",(function(t,e,n){return n._d=new Date(h(t)),n})),T("s",["ss",2,!1],null,(function(t,e){return N(t,e.isUTC).toString(10)})),b("second","s"),et("s",z),et("ss",z,F),it(["s","ss"],5),T("Q",null,"Qo",(function(t,e){return function(t,e=!1){return Math.ceil((k(t,e)+1)/3)}(t,e.isUTC).toString(10)})),b("quarter","Q"),et("Q",j),it("Q",(function(t,e,n){return e[1]=3*(h(t)-1),n})),Ht("Z",":"),Ht("ZZ",""),et("Z",J),et("ZZ",J),it(["Z","ZZ"],(function(t,e,n){return n._useUTC=!0,n._tzm=function(t,e){const n=(e||"").match(t);if(null===n)return null;const a=n[n.length-1].match(Ut)||["-","0","0"],r=60*parseInt(a[1],10)+h(a[2]);return 0===r?0:"+"===a[0]?r:-r}(J,t),n})),T("M",["MM",2,!1],"Mo",(function(t,e){return(k(t,e.isUTC)+1).toString(10)})),T("MMM",null,null,(function(t,e){return e.locale.monthsShort(t,e.format,e.isUTC)})),T("MMMM",null,null,(function(t,e){return e.locale.months(t,e.format,e.isUTC)})),b("month","M"),et("M",z),et("MM",z,F),et("MMM",(function(t,e){return e.monthsShortRegex(t)})),et("MMMM",(function(t,e){return e.monthsRegex(t)})),it(["M","MM"],(function(t,e,n){return e[1]=h(t)-1,n})),it(["MMM","MMMM"],(function(t,e,n,a){const r=n._locale.monthsParse(t,a,n._strict);return null!=r?e[1]=r:ot(n).invalidMonth=!!t,n})),T("m",["mm",2,!1],null,(function(t,e){return I(t,e.isUTC).toString(10)})),b("minute","m"),et("m",z),et("mm",z,F),it(["m","mm"],4),function(){let t;for(T("S",null,null,(function(t,e){return(~~(C(t,e.isUTC)/100)).toString(10)})),T(null,["SS",2,!1],null,(function(t,e){return(~~(C(t,e.isUTC)/10)).toString(10)})),T(null,["SSS",3,!1],null,(function(t,e){return C(t,e.isUTC).toString(10)})),T(null,["SSSS",4,!1],null,(function(t,e){return(10*C(t,e.isUTC)).toString(10)})),T(null,["SSSSS",5,!1],null,(function(t,e){return(100*C(t,e.isUTC)).toString(10)})),T(null,["SSSSSS",6,!1],null,(function(t,e){return(1e3*C(t,e.isUTC)).toString(10)})),T(null,["SSSSSSS",7,!1],null,(function(t,e){return(1e4*C(t,e.isUTC)).toString(10)})),T(null,["SSSSSSSS",8,!1],null,(function(t,e){return(1e5*C(t,e.isUTC)).toString(10)})),T(null,["SSSSSSSSS",9,!1],null,(function(t,e){return(1e6*C(t,e.isUTC)).toString(10)})),b("millisecond","ms"),et("S",U,j),et("SS",U,F),et("SSS",U,V),t="SSSS";t.length<=9;t+="S")et(t,$);function e(t,e,n){return e[6]=h(1e3*parseFloat("0."+t)),n}for(t="S";t.length<=9;t+="S")it(t,e)}(),function(){function t(t,e){return S(t,e)%12||12}function e(t,e){T(t,null,null,(function(t,n){return n.locale.meridiem(S(t,n.isUTC),I(t,n.isUTC),e)}))}function n(t,e){return e._meridiemParse}T("H",["HH",2,!1],null,(function(t,e){return S(t,e.isUTC).toString(10)})),T("h",["hh",2,!1],null,(function(e,n){return t(e,n.isUTC).toString(10)})),T("k",["kk",2,!1],null,(function(t,e){return function(t,e){return S(t,e)||24}(t,e.isUTC).toString(10)})),T("hmm",null,null,(function(e,n){return`${t(e,n.isUTC)}${y(I(e,n.isUTC),2)}`})),T("hmmss",null,null,(function(e,n){return`${t(e,n.isUTC)}${y(I(e,n.isUTC),2)}${y(N(e,n.isUTC),2)}`})),T("Hmm",null,null,(function(t,e){return`${S(t,e.isUTC)}${y(I(t,e.isUTC),2)}`})),T("Hmmss",null,null,(function(t,e){return`${S(t,e.isUTC)}${y(I(t,e.isUTC),2)}${y(N(t,e.isUTC),2)}`})),e("a",!0),e("A",!1),b("hour","h"),et("a",n),et("A",n),et("H",z),et("h",z),et("k",z),et("HH",z,F),et("hh",z,F),et("kk",z,F),et("hmm",Y),et("hmmss",H),et("Hmm",Y),et("Hmmss",H),it(["H","HH"],3),it(["k","kk"],(function(t,e,n){const a=h(t);return e[3]=24===a?0:a,n})),it(["a","A"],(function(t,e,n){return n._isPm=n._locale.isPM(t),n._meridiem=t,n})),it(["h","hh"],(function(t,e,n){return e[3]=h(t),ot(n).bigHour=!0,n})),it("hmm",(function(t,e,n){const a=t.length-2;return e[3]=h(t.substr(0,a)),e[4]=h(t.substr(a)),ot(n).bigHour=!0,n})),it("hmmss",(function(t,e,n){const a=t.length-4,r=t.length-2;return e[3]=h(t.substr(0,a)),e[4]=h(t.substr(a,2)),e[5]=h(t.substr(r)),ot(n).bigHour=!0,n})),it("Hmm",(function(t,e,n){const a=t.length-2;return e[3]=h(t.substr(0,a)),e[4]=h(t.substr(a)),n})),it("Hmmss",(function(t,e,n){const a=t.length-4,r=t.length-2;return e[3]=h(t.substr(0,a)),e[4]=h(t.substr(a,2)),e[5]=h(t.substr(r)),n}))}(),T("DDD",["DDDD",3,!1],"DDDo",(function(t){return wt(t).toString(10)})),b("dayOfYear","DDD"),et("DDD",U),et("DDDD",V),it(["DDD","DDDD"],(function(t,e,n){return n._dayOfYear=h(t),n})),T("d",null,"do",(function(t,e){return R(t,e.isUTC).toString(10)})),T("dd",null,null,(function(t,e){return e.locale.weekdaysMin(t,e.format,e.isUTC)})),T("ddd",null,null,(function(t,e){return e.locale.weekdaysShort(t,e.format,e.isUTC)})),T("dddd",null,null,(function(t,e){return e.locale.weekdays(t,e.format,e.isUTC)})),T("e",null,null,(function(t,e){return ze(t,e.locale,e.isUTC).toString(10)})),T("E",null,null,(function(t,e){return function(t,e){return R(t,e)||7}(t,e.isUTC).toString(10)})),b("day","d"),b("weekday","e"),b("isoWeekday","E"),et("d",z),et("e",z),et("E",z),et("dd",(function(t,e){return e.weekdaysMinRegex(t)})),et("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),et("dddd",(function(t,e){return e.weekdaysRegex(t)})),st(["dd","ddd","dddd"],(function(t,e,n,a){const r=n._locale.weekdaysParse(t,a,n._strict);return null!=r?e.d=r:ot(n).invalidWeekday=!!t,n})),st(["d","e","E"],(function(t,e,n,a){return e[a]=h(t),n})),T("D",["DD",2,!1],"Do",(function(t,e){return A(t,e.isUTC).toString(10)})),b("date","D"),et("D",z),et("DD",z,F),et("Do",(function(t,e){return e._dayOfMonthOrdinalParse||e._ordinalParse})),it(["D","DD"],2),it("Do",(function(t,e,n){return e[2]=h(t.match(z)[0]),n}))),t?function(t){let e,n,a=0;for(;a<t.length;){const i=Zt(t[a]).split("-");let s=i.length;for(e=Zt(t[a+1]),e=e?e.split("-"):null;s>0;){if(r=i.slice(0,s).join("-"),Wt[r]||console.error(`Khronos locale error: please load locale "${r}" before using it`),n=Wt[r],n)return n;if(e&&e.length>=s&&Ft(i,e,!0)>=s-1)break;s--}a++}var r;return null}(l(t)?t:[t]):$t}const te=["year","quarter","month","week","day","hours","minutes","seconds","milliseconds"],ee=te.reduce((t,e)=>(t[e]=!0,t),{});function ne(t){return t<0?Math.floor(t):Math.ceil(t)}function ae(t){return 4800*t/146097}function re(t){return 146097*t/4800}let ie=Math.round;function se(t,e,n,a,r){return r.relativeTime(e||1,!!n,t,a)}class ue{constructor(t,e={}){this._data={},this._locale=Xt(),this._locale=e&&e._locale||Xt();const n=t.year||0,r=t.quarter||0,i=t.month||0,s=t.week||0,u=t.day||0,o=t.hours||0,l=t.minutes||0,d=t.seconds||0,c=t.milliseconds||0;return this._isValid=function(t){if(Object.keys(t).some(e=>e in ee&&null===t[e]||isNaN(t[e])))return!1;let e=!1;for(let n=0;n<te.length;++n)if(t[te[n]]){if(e)return!1;t[te[n]]!==h(t[te[n]])&&(e=!0)}return!0}(t),this._milliseconds=+c+1e3*d+60*l*1e3+1e3*o*60*60,this._days=+u+7*s,this._months=+i+3*r+12*n,function(t){let e=t._milliseconds,n=t._days,r=t._months;const i=t._data;e>=0&&n>=0&&r>=0||e<=0&&n<=0&&r<=0||(e+=864e5*ne(re(r)+n),n=0,r=0),i.milliseconds=e%1e3;const s=a(e/1e3);i.seconds=s%60;const u=a(s/60);i.minutes=u%60;const o=a(u/60);i.hours=o%24,n+=a(o/24);const l=a(ae(n));r+=l,n-=ne(re(l));const d=a(r/12);return r%=12,i.day=n,i.month=r,i.year=d,t}(this)}isValid(){return this._isValid}humanize(t){if(!this.isValid())return this.localeData().invalidDate;const e=this.localeData();let n=function(t,e,n){const a=Me(t).abs(),r=ie(a.as("s")),i=ie(a.as("m")),s=ie(a.as("h")),u=ie(a.as("d")),o=ie(a.as("M")),l=ie(a.as("y")),d=r<=44&&["s",r]||r<45&&["ss",r]||i<=1&&["m"]||i<45&&["mm",i]||s<=1&&["h"]||s<22&&["hh",s]||u<=1&&["d"]||u<26&&["dd",u]||o<=1&&["M"]||o<11&&["MM",o]||l<=1&&["y"]||["yy",l];return se.apply(null,[d[0],d[1],e,+t>0,n])}(this,!t,e);return t&&(n=e.pastFuture(+this,n)),e.postformat(n)}localeData(){return this._locale}locale(t){return t?(this._locale=Xt(t)||this._locale,this):this._locale._abbr}abs(){const t=Math.abs,e=this._data;return this._milliseconds=t(this._milliseconds),this._days=t(this._days),this._months=t(this._months),e.milliseconds=t(e.milliseconds),e.seconds=t(e.seconds),e.minutes=t(e.minutes),e.hours=t(e.hours),e.month=t(e.month),e.year=t(e.year),this}as(t){if(!this.isValid())return NaN;let e,n;const a=this._milliseconds,r=m(t);if("month"===r||"year"===r)return e=this._days+a/864e5,n=this._months+ae(e),"month"===r?n:n/12;switch(e=this._days+Math.round(re(this._months)),r){case"week":return e/7+a/6048e5;case"day":return e+a/864e5;case"hours":return 24*e+a/36e5;case"minutes":return 1440*e+a/6e4;case"seconds":return 86400*e+a/1e3;case"milliseconds":return Math.floor(864e5*e)+a;default:throw new Error("Unknown unit "+r)}}valueOf(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*h(this._months/12):NaN}}function oe(t){if(null==t._isValid){const e=ot(t),n=Array.prototype.some.call(e.parsedDateParts,(function(t){return null!=t}));let a=!isNaN(t._d&&t._d.getTime())&&e.overflow<0&&!e.empty&&!e.invalidMonth&&!e.invalidWeekday&&!e.weekdayMismatch&&!e.nullInput&&!e.invalidFormat&&!e.userInvalidated&&(!e.meridiem||e.meridiem&&n);if(t._strict&&(a=a&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour),null!=Object.isFrozen&&Object.isFrozen(t))return a;t._isValid=a}return t._isValid}function le(t,e){return t._d=new Date(NaN),Object.assign(ot(t),e||{userInvalidated:!0}),t}const de=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ce=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,fe=/Z|[+-]\d\d(?::?\d\d)?/,he=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/,!0],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/,!0],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/,!0],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/,!0],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/,!0],["YYYYMMDD",/\d{8}/,!0],["GGGG[W]WWE",/\d{4}W\d{3}/,!0],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/,!0]],ge=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],pe=/^\/?Date\((\-?\d+)/i,be={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480},me=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/;function ye(t){if(!r(t._i))return t;const e=t._i,n=de.exec(e)||ce.exec(e);let a,i,s,u,o,l;if(!n)return t._isValid=!1,t;for(o=0,l=he.length;o<l;o++)if(he[o][1].exec(n[1])){i=he[o][0],a=!1!==he[o][2];break}if(null==i)return t._isValid=!1,t;if(n[3]){for(o=0,l=ge.length;o<l;o++)if(ge[o][1].exec(n[3])){s=(n[2]||" ")+ge[o][0];break}if(null==s)return t._isValid=!1,t}if(!a&&null!=s)return t._isValid=!1,t;if(n[4]){if(!fe.exec(n[4]))return t._isValid=!1,t;u="Z"}return t._f=i+(s||"")+(u||""),Ie(t)}function ve(t){const e=parseInt(t,10);return e<=49?e+2e3:e}function xe(t){if(!r(t._i))return t;const e=me.exec(t._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim());if(!e)return function(t){return t._isValid=!1,t}(t);const n=function(t,e,n,a,r,i){const s=[ve(t),Rt.indexOf(e),parseInt(n,10),parseInt(a,10),parseInt(r,10)];return i&&s.push(parseInt(i,10)),s}(e[4],e[3],e[2],e[5],e[6],e[7]);return function(t,e,n){return!t||kt.indexOf(t)===new Date(e[0],e[1],e[2]).getDay()||(ot(n).weekdayMismatch=!0,n._isValid=!1,!1)}(e[1],n,t)?(t._a=n,t._tzm=function(t,e,n){if(t)return be[t];if(e)return 0;{const t=parseInt(n,10),e=t%100;return(t-e)/100*60+e}}(e[8],e[9],e[10]),t._d=w.apply(null,t._a),t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),ot(t).rfc2822=!0,t):t}function _e(t,e,n,a,r=0){const i=Xt(n||"en");if(!i)throw new Error(`Locale "${n}" is not defined, please add it with "defineLocale(...)"`);const o=function(t,e,n,a,r=0){if(!s(t))return n.invalidDate;const i=Te(e,n);return v[i]=v[i]||function(t){const e=t.match(_),n=e.length,a=new Array(n);for(let i=0;i<n;i++)a[i]=x[e[i]]?x[e[i]]:(r=e[i]).match(/\[[\s\S]/)?r.replace(/^\[|\]$/g,""):r.replace(/\\/g,"");var r;return function(e,r,i,s=0){const o=r.postvalue(e);let l="";for(let d=0;d<n;d++)l+=u(a[d])?a[d].call(null,o,{format:t,locale:r,isUTC:i,offset:s}):a[d];return l}}(i),v[i](t,n,a,r)}(t,e||(a?"YYYY-MM-DDTHH:mm:ss[Z]":"YYYY-MM-DDTHH:mm:ssZ"),i,a,r);return o?i.postformat(o):o}function Te(t,e){let n=t,a=5;const r=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,i=t=>e.formatLongDate(t)||t;for(r.lastIndex=0;a>=0&&r.test(n);)n=n.replace(r,i),r.lastIndex=0,a-=1;return n}function we(t,e,n){return null!=t?t:null!=e?e:n}function Oe(t){const e=[];let n,a,r,i,s;if(t._d)return t;for(r=function(t){const e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}(t),t._w&&null==t._a[2]&&null==t._a[1]&&function(t){let e,n,a,r,i,s,u,o;if(e=t._w,null!=e.GG||null!=e.W||null!=e.E)i=1,s=4,n=we(e.GG,t._a[0],St(new Date,1,4).year),a=we(e.W,1),r=we(e.E,1),(r<1||r>7)&&(o=!0);else{i=t._locale._week.dow,s=t._locale._week.doy;const u=St(new Date,i,s);n=we(e.gg,t._a[0],u.year),a=we(e.w,u.week),null!=e.d?(r=e.d,(r<0||r>6)&&(o=!0)):null!=e.e?(r=e.e+i,(e.e<0||e.e>6)&&(o=!0)):r=i}a<1||a>It(n,i,s)?ot(t)._overflowWeeks=!0:null!=o?ot(t)._overflowWeekday=!0:(u=function(t,e,n,a,r){const i=1+7*(e-1)+(7+n-a)%7+Ot(t,a,r);let s,u;return i<=0?(s=t-1,u=ct(s)+i):i>ct(t)?(s=t+1,u=i-ct(t)):(s=t,u=i),{year:s,dayOfYear:u}}(n,a,r,i,s),t._a[0]=u.year,t._dayOfYear=u.dayOfYear)}(t),null!=t._dayOfYear&&(s=we(t._a[0],r[0]),(t._dayOfYear>ct(s)||0===t._dayOfYear)&&(ot(t)._overflowDayOfYear=!0),a=new Date(Date.UTC(s,0,t._dayOfYear)),t._a[1]=a.getUTCMonth(),t._a[2]=a.getUTCDate()),n=0;n<3&&null==t._a[n];++n)t._a[n]=e[n]=r[n];for(;n<7;n++)t._a[n]=e[n]=null==t._a[n]?2===n?1:0:t._a[n];return 24===t._a[3]&&0===t._a[4]&&0===t._a[5]&&0===t._a[6]&&(t._nextDay=!0,t._a[3]=0),t._d=(t._useUTC?w:O).apply(null,e),i=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[3]=24),t._w&&void 0!==t._w.d&&t._w.d!==i&&(ot(t).weekdayMismatch=!0),t}function Se(t){let e;const n=t._a;return n&&-2===ot(t).overflow&&(e=n[1]<0||n[1]>11?1:n[2]<1||n[2]>ht(n[0],n[1])?2:n[3]<0||n[3]>24||24===n[3]&&(0!==n[4]||0!==n[5]||0!==n[6])?3:n[4]<0||n[4]>59?4:n[5]<0||n[5]>59?5:n[6]<0||n[6]>999?6:-1,ot(t)._overflowDayOfYear&&(e<0||e>2)&&(e=2),ot(t)._overflowWeeks&&-1===e&&(e=7),ot(t)._overflowWeekday&&-1===e&&(e=8),ot(t).overflow=e),t}function Ie(t){if("ISO_8601"===t._f)return ye(t);if("RFC_2822"===t._f)return xe(t);if(t._a=[],ot(t).empty=!0,l(t._f)||!t._i&&0!==t._i)return t;let e=t._i.toString(),n=0;const a=e.length,r=Te(t._f,t._locale).match(_)||[];let i,s,u,o;for(i=0;i<r.length;i++)s=r[i],u=(e.match(nt(s,t._locale))||[])[0],u&&(o=e.substr(0,e.indexOf(u)),o.length>0&&ot(t).unusedInput.push(o),e=e.slice(e.indexOf(u)+u.length),n+=u.length),x[s]?(u?ot(t).empty=!1:ot(t).unusedTokens.push(s),ut(s,u,t)):t._strict&&!u&&ot(t).unusedTokens.push(s);return ot(t).charsLeftOver=a-n,e.length>0&&ot(t).unusedInput.push(e),t._a[3]<=12&&!0===ot(t).bigHour&&t._a[3]>0&&(ot(t).bigHour=void 0),ot(t).parsedDateParts=t._a.slice(0),ot(t).meridiem=t._meridiem,t._a[3]=function(t,e,n){let a=e;if(null==n)return a;if(null!=t.meridiemHour)return t.meridiemHour(a,n);if(null==t.isPM)return a;const r=t.isPM(n);return r&&a<12&&(a+=12),r||12!==a||(a=0),a}(t._locale,t._a[3],t._meridiem),Oe(t),Se(t)}function Ne(t,e,n,a,s){return i(t)?t:function(t,e,n,a,s){const u={};let h=t;return(c(h)&&function(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;let e;for(e in t)if(t.hasOwnProperty(e))return!1;return!0}(h)||l(h)&&0===h.length)&&(h=void 0),u._useUTC=u._isUTC=s,u._l=n,u._i=h,u._f=e,u._strict=a,function(t){const e=Se(function(t){let e=t._i;const n=t._f;return t._locale=t._locale||Xt(t._l),null===e||void 0===n&&""===e?le(t,{nullInput:!0}):(r(e)&&(t._i=e=t._locale.preparse(e)),i(e)?(t._d=xt(e),t):(l(n)?function(t){let e,n,a,r,i;if(!t._f||0===t._f.length)return ot(t).invalidFormat=!0,le(t);for(i=0;i<t._f.length;i++)r=0,e=Object.assign({},t),null!=t._useUTC&&(e._useUTC=t._useUTC),e._f=t._f[i],Ie(e),oe(e)&&(r+=ot(e).charsLeftOver,r+=10*ot(e).unusedTokens.length,ot(e).score=r,(null==a||r<a)&&(a=r,n=e));Object.assign(t,n||e)}(t):n?Ie(t):function(t){const e=t._i;if(f(e))t._d=new Date;else if(i(e))t._d=xt(e);else if(r(e))!function(t){if(!r(t._i))return t;const e=pe.exec(t._i);null!==e?t._d=new Date(+e[1]):(ye(t),!1!==t._isValid||(delete t._isValid,xe(t),!1!==t._isValid||(delete t._isValid,le(t))))}(t);else if(l(e)&&e.length){const n=e.slice(0);t._a=n.map(t=>r(t)?parseInt(t,10):t),Oe(t)}else if(c(e))!function(t){if(t._d)return t;const e=t._i;if(c(e)){const n=function(t){const e={};let n,a;for(a in t)d(t,a)&&(n=m(a),n&&(e[n]=t[a]));return e}(e);t._a=[n.year,n.month,n.day,n.hours,n.minutes,n.seconds,n.milliseconds].map(t=>r(t)?parseInt(t,10):t)}Oe(t)}(t);else{if(!o(e))return le(t);t._d=new Date(e)}}(t),oe(t)||(t._d=null),t))}(t));return e._d=new Date(null!=e._d?e._d.getTime():NaN),oe(Object.assign({},e,{_isValid:null}))||(e._d=new Date(NaN)),e}(u)}(t,e,n,a,s)._d}function Ce(t){return t instanceof Date?new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds()):null}function Re(t){return t<0?-1*Math.round(-1*t):Math.round(t)}function Ae(t,e,n="milliseconds"){return!(!t||!e)&&("milliseconds"===n?t.valueOf()>e.valueOf():e.valueOf()<_t(t,n).valueOf())}function ke(t,e,n="milliseconds"){return!(!t||!e)&&("milliseconds"===n?t.valueOf()<e.valueOf():Tt(t,n).valueOf()<e.valueOf())}function Ee(t,e){return!(void 0===e||!e||!e.length)&&e.some(e=>e===t.getDay())}function Le(t,e,n="milliseconds"){if(!t||!e)return!1;if("milliseconds"===n)return t.valueOf()===e.valueOf();const a=e.valueOf();return _t(t,n).valueOf()<=a&&a<=Tt(t,n).valueOf()}const De=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Pe=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Me(t,e,n={}){const a=function(t,e){if(null==t)return{};if(t instanceof ue)return{milliseconds:t._milliseconds,day:t._days,month:t._months};if(o(t))return e?{[e]:t}:{milliseconds:t};if(r(t)){let e=De.exec(t);if(e){const t="-"===e[1]?-1:1;return{year:0,day:h(e[2])*t,hours:h(e[3])*t,minutes:h(e[4])*t,seconds:h(e[5])*t,milliseconds:h(Re(1e3*h(e[6])))*t}}if(e=Pe.exec(t),e){const t="-"===e[1]?-1:1;return{year:qe(e[2],t),month:qe(e[3],t),week:qe(e[4],t),day:qe(e[5],t),hours:qe(e[6],t),minutes:qe(e[7],t),seconds:qe(e[8],t)}}}if(c(t)&&("from"in t||"to"in t)){const e=function(t,e){if(!s(t)||!s(e))return{milliseconds:0,months:0};let n;const a=function(t,e,n={}){if(!n._isUTC)return t;const a=xt(e),r=6e4*(n._offset||0),i=t.valueOf()-a.valueOf()+r;return a.setTime(a.valueOf()+i),a}(e,t,{_offset:t.getTimezoneOffset()});return ke(t,a)?n=je(t,a):(n=je(a,t),n.milliseconds=-n.milliseconds,n.months=-n.months),n}(Ne(t.from),Ne(t.to));return{milliseconds:e.milliseconds,month:e.months}}return t}(t,e);return new ue(a,n)}function qe(t,e){const n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function je(t,e){const n={milliseconds:0,months:0};return n.months=k(e)-k(t)+12*(E(e)-E(t)),Ae(Fe(xt(t),n.months,"month"),e)&&--n.months,n.milliseconds=+e-+Fe(xt(t),n.months,"month"),n}function Fe(t,e,n,a){return Ve(t,Me(e,n),1,a)}function Ve(t,e,n,a){const r=e._milliseconds,i=Re(e._days),s=Re(e._months);return s&&yt(t,k(t,a)+s*n,a),i&&vt(t,A(t,a)+i*n,a),r&&function(t,e){t.setTime(e)}(t,function(t){return t.getTime()}(t)+r*n),xt(t)}function Ge(t,e,n=Xt(),a){const i=R(t,a);return Fe(t,function(t,e){if(!r(t))return t;const n=parseInt(t,10);if(!isNaN(n))return n;const a=e.weekdaysParse(t);return o(a)?a:null}(e,n)-i,"day")}function Be(t,e){return R(t,e)}function ze(t,e=Xt(),n){return(R(t,n)+7-e.firstDayOfWeek())%7}const Ye="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),He="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_");function Ue(t){return t>1&&t<5&&1!=~~(t/10)}function We(t,e,n,a){const r=t+" ";switch(n){case"s":return e||a?"pár sekund":"pár sekundami";case"ss":return e||a?r+(Ue(t)?"sekundy":"sekund"):r+"sekundami";case"m":return e?"minuta":a?"minutu":"minutou";case"mm":return e||a?r+(Ue(t)?"minuty":"minut"):r+"minutami";case"h":return e?"hodina":a?"hodinu":"hodinou";case"hh":return e||a?r+(Ue(t)?"hodiny":"hodin"):r+"hodinami";case"d":return e||a?"den":"dnem";case"dd":return e||a?r+(Ue(t)?"dny":"dní"):r+"dny";case"M":return e||a?"měsíc":"měsícem";case"MM":return e||a?r+(Ue(t)?"měsíce":"měsíců"):r+"měsíci";case"y":return e||a?"rok":"rokem";case"yy":return e||a?r+(Ue(t)?"roky":"let"):r+"lety"}}const Ke=function(t){let e,n=[];for(e=0;e<12;e++)n[e]=new RegExp("^"+t[e]+"$","i");return n},$e=function(t){let e,n=[];for(e=0;e<12;e++)n[e]=new RegExp("^"+t[e]+"$","i");return n},Ze={abbr:"cs",months:Ye,monthsShort:He,monthsParse:function(t,e){let n,a=[];for(n=0;n<12;n++)a[n]=new RegExp("^"+t[n]+"$|^"+e[n]+"$","i");return a}(Ye,He),shortMonthsParse:Ke(He),longMonthsParse:$e(Ye),weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek(t){switch(Be(t)){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek(t){switch(Be(t)){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:We,ss:We,m:We,mm:We,h:We,hh:We,d:We,dd:We,M:We,MM:We,y:We,yy:We},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};function Je(t,e,n,a){const r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return e?r[n][0]:r[n][1]}const Qe={abbr:"de",months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:Je,mm:"%d Minuten",h:Je,hh:"%d Stunden",d:Je,dd:Je,M:Je,MM:Je,y:Je,yy:Je},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};let Xe="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),tn="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),en=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],nn=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i;const an={abbr:"es",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:(t,e,n)=>t?/-MMM-/.test(e)?tn[k(t,n)]:Xe[k(t,n)]:Xe,monthsRegex:nn,monthsShortRegex:nn,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:en,longMonthsParse:en,shortMonthsParse:en,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:t=>"[hoy a la"+(1!==S(t)?"s":"")+"] LT",nextDay:t=>"[mañana a la"+(1!==S(t)?"s":"")+"] LT",nextWeek:t=>"dddd [a la"+(1!==S(t)?"s":"")+"] LT",lastDay:t=>"[ayer a la"+(1!==S(t)?"s":"")+"] LT",lastWeek:t=>"[el] dddd [pasado a la"+(1!==S(t)?"s":"")+"] LT",sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}},rn={abbr:"fr",months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal(t,e){const n=Number(t);switch(e){case"D":return n+(1===n?"er":"");default:case"M":case"Q":case"DDD":case"d":return n+(1===n?"er":"e");case"w":case"W":return n+(1===n?"re":"e")}},week:{dow:1,doy:4}},sn={abbr:"id",months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:(t,e)=>(12===t&&(t=0),"pagi"===e?t:"siang"===e?t>=11?t:t+12:"sore"===e||"malam"===e?t+12:void 0),meridiem:(t,e,n)=>t<11?"pagi":t<15?"siang":t<19?"sore":"malam",calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}},un={abbr:"it",months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek(t){switch(Be(t)){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:t=>(/^[0-9].+$/.test(t.toString(10))?"tra":"in")+" "+t,past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}},on={abbr:"ja",months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 HH:mm dddd",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日 HH:mm dddd"},meridiemParse:/午前|午後/i,isPM:t=>"午後"===t,meridiem:(t,e,n)=>t<12?"午前":"午後",calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:"[来週]dddd LT",lastDay:"[昨日] LT",lastWeek:"[前週]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal(t,e){switch(e){case"d":case"D":case"DDD":return t+"日";default:return t.toString(10)}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",ss:"%d秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}},ln={abbr:"ko",months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h:mm",LLLL:"YYYY년 MMMM D일 dddd A h:mm",l:"YYYY.MM.DD",ll:"YYYY년 MMMM D일",lll:"YYYY년 MMMM D일 A h:mm",llll:"YYYY년 MMMM D일 dddd A h:mm"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇 초",ss:"%d초",m:"1분",mm:"%d분",h:"한 시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한 달",MM:"%d달",y:"일 년",yy:"%d년"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(t,e){switch(e){case"d":case"D":case"DDD":return t+"일";case"M":return t+"월";case"w":case"W":return t+"주";default:return t.toString(10)}},meridiemParse:/오전|오후/,isPM:function(t){return"오후"===t},meridiem:function(t,e,n){return t<12?"오전":"오후"}};let dn="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),cn="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_");function fn(t){return t%10<5&&t%10>1&&~~(t/10)%10!=1}function hn(t,e,n){let a=t+" ";switch(n){case"ss":return a+(fn(t)?"sekundy":"sekund");case"m":return e?"minuta":"minutę";case"mm":return a+(fn(t)?"minuty":"minut");case"h":return e?"godzina":"godzinę";case"hh":return a+(fn(t)?"godziny":"godzin");case"MM":return a+(fn(t)?"miesiące":"miesięcy");case"yy":return a+(fn(t)?"lata":"lat")}}const gn={abbr:"pl",months:(t,e,n)=>t?""===e?"("+cn[k(t,n)]+"|"+dn[k(t,n)]+")":/D MMMM/.test(e)?cn[k(t,n)]:dn[k(t,n)]:dn,monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_śr_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek(t){switch(Be(t)){case 0:return"[W niedzielę o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W środę o] LT";case 5:return"[W piątek o] LT";case 6:return"[W sobotę o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek(t){switch(Be(t)){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 4:return"[W zeszłą czwartek o] LT";case 5:return"[W zeszłą piątek o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:hn,m:hn,mm:hn,h:hn,hh:hn,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:hn,y:"rok",yy:hn},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}},pn={abbr:"pt-br",months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:t=>0===Be(t)||6===Be(t)?"[Último] dddd [às] LT":"[Última] dddd [às] LT",sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº"},bn={abbr:"zh-cn",months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:(t,e)=>(12===t&&(t=0),"凌晨"===e||"早上"===e||"上午"===e?t:"下午"===e||"晚上"===e?t+12:t>=11?t:t+12),meridiem(t,e,n){let a=100*t+e;return a<600?"凌晨":a<900?"早上":a<1130?"上午":a<1230?"中午":a<1800?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal(t,e){const n=Number(t);switch(e){case"d":case"D":case"DDD":return n+"日";case"M":return n+"月";case"w":case"W":return n+"周";default:return n.toString()}},relativeTime:{future:"%s内",past:"%s前",s:"几秒",ss:"%d 秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},week:{dow:1,doy:4}}},xrYK:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},xs3f:function(t,e,n){var a=n("2oRo"),r=n("zk60"),i=a["__core-js_shared__"]||r("__core-js_shared__",{});t.exports=i},"y/5f":function(t,e,n){(function(t){var a=n("Wa4q"),r=n("KQir"),i=e&&!e.nodeType&&e,s=i&&"object"==typeof t&&t&&!t.nodeType&&t,u=s&&s.exports===i?a.Buffer:void 0;t.exports=(u?u.isBuffer:void 0)||r}).call(this,n("YuTi")(t))},yCtX:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var a=n("HDdC"),r=n("ngJS"),i=n("jZKg");function s(t,e){return e?Object(i.a)(t,e):new a.a(Object(r.a)(t))}},yGOH:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));class a{}},yJti:function(t,e,n){"use strict";n.d(e,"a",(function(){return a}));var a=function(t){return t[t.ValueOk=0]="ValueOk",t[t.ValueStale=1]="ValueStale",t[t.ValueNone=2]="ValueNone",t[t.ValueException=3]="ValueException",t}({})},yPMs:function(t,e,n){!function(t){"use strict";t.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),weekdaysParseExact:!0,meridiemParse:/PD|MD/,isPM:function(t){return"M"===t.charAt(0)},meridiem:function(t,e,n){return t<12?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",ss:"%d sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},yT6U:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("LvDl");class r{transform(t,e=!1){let n=t;return(!a.isArray(t)||a.isArray(t)&&e)&&(n=[t]),n}}},yYhs:function(t,e,n){"use strict";var a=n("8Y7J"),r=n("SVse"),i=n("CoVI"),s=n("mfoh"),u=(n("CFvb"),n("MP8s"),n("f95s"),n("gk6K")),o=(n("dApe"),n("ZhuC")),l=n("fxL3"),d=n("TNUL"),c=n("rZud"),f=n("woSy"),h=n("jV1L"),g=n("pcHL"),p=n("WaXT"),b=n("OIDT"),m=n("HIU9"),y=n("uNpg"),v=n("Fwy9"),x=n("C523"),_=n("4Dmd");n("14R3"),n.d(e,"b",(function(){return T})),n.d(e,"a",(function(){return s.a}));var T=function(){function t(){}var e;return e=t,t.forRoot=function(){return{ngModule:e,providers:[u.a]}},e=function(t,e,n,a){var r,i=arguments.length,s=i<3?e:null===a?a=Object.getOwnPropertyDescriptor(e,n):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,n,a);else for(var u=t.length-1;u>=0;u--)(r=t[u])&&(s=(i<3?r(s):i>3?r(e,n,s):r(e,n))||s);return i>3&&s&&Object.defineProperty(e,n,s),s}([Object(a.NgModule)({declarations:[l.a,d.a,c.a,o.a,v.a,x.a,h.a,g.a,f.a,p.a,m.a,b.a,y.a,_.a,i.a],exports:[l.a,d.a,c.a,o.a,v.a,x.a,h.a,g.a,f.a,p.a,m.a,b.a,y.a,_.a,i.a],imports:[r.CommonModule],providers:[]})],t)}()},"yb/u":function(t,e,n){var a=n("ioe2"),r=n("FGWQ");t.exports=function(t){return null==t?[]:a(t,r(t))}},yoRg:function(t,e,n){var a=n("UTVS"),r=n("/GqU"),i=n("TWQb").indexOf,s=n("0BK2");t.exports=function(t,e){var n,u=r(t),o=0,l=[];for(n in u)!a(s,n)&&a(u,n)&&l.push(n);for(;e.length>o;)a(u,n=e[o++])&&(~i(l,n)||l.push(n));return l}},"yt+r":function(t,e,n){"use strict";n.r(e),e.default='<xliff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 http://docs.oasis-open.org/xliff/v1.2/os/xliff-core-1.2-strict.xsd" xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">\n  <file original="ng2.template" datatype="plaintext" source-language="en-US" target-language="es-ES">\n    <body>\n      <trans-unit id="319e0745bcbc132451569294fa2fa21bf10f555a" datatype="html">\n        <source>Toggle navigation</source>\n        <target>Alternar navegación</target>\n      </trans-unit>\n      <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">\n        <source>Dashboard</source>\n        <target>Consola</target>\n      </trans-unit>\n      <trans-unit id="f4d1dd59b039ad818d9da7e29a773e10e41d9821" datatype="html">\n        <source>Cluster</source>\n        <target>Clúster</target>\n      </trans-unit>\n      <trans-unit id="099b441d49333b3c6d30b36dc0a4763e64c78920" datatype="html">\n        <source>Hosts</source>\n        <target>Hosts</target>\n      </trans-unit>\n      <trans-unit id="2cc3ecb16e348fcf2f2fbfd2f997d4d22f37475b" datatype="html">\n        <source>Inventory</source>\n        <target>Inventory</target>\n      </trans-unit>\n      <trans-unit id="624f596cc3320f5e0a0d7c7346c364e5af9bdd8c" datatype="html">\n        <source>Monitors</source>\n        <target>Monitores</target>\n      </trans-unit>\n      <trans-unit id="419d940613972cc3fae9c8ea0a4306dbf80616e5" datatype="html">\n        <source>Services</source>\n        <target>Servicios</target>\n      </trans-unit>\n      <trans-unit id="1a9183778f2c6473d7ccb080f651caa01faaf70c" datatype="html">\n        <source>OSDs</source>\n        <target>OSDs</target>\n      </trans-unit>\n      <trans-unit id="4a41f824a35ba01d5bd7be61aa06b3e8145209d0" datatype="html">\n        <source>Configuration</source>\n        <target>Configuración</target>\n      </trans-unit>\n      <trans-unit id="8c95898abff46bfac3ed6eb2afef74597e60b15c" datatype="html">\n        <source>CRUSH map</source>\n        <target>Mapa de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="33da4dbeb076159510801ea764a218fd341269d2" datatype="html">\n        <source>Manager modules</source>\n        <target>Módulos de gestor</target>\n      </trans-unit>\n      <trans-unit id="eb3d5aefff38a814b76da74371cbf02c0789a1ef" datatype="html">\n        <source>Logs</source>\n        <target>Registros</target>\n      </trans-unit>\n      <trans-unit id="17fc3efe5f9fa4e0289c900cb6202265215a1a27" datatype="html">\n        <source>Monitoring</source>\n        <target>Monitoring</target>\n      </trans-unit>\n      <trans-unit id="92899fa68e8ca108912163ff58edc8540e453787" datatype="html">\n        <source>Pools</source>\n        <target>Repositorios</target>\n      </trans-unit>\n      <trans-unit id="7f5d0c10614e8a34f0e2dad33a0568277c50cf69" datatype="html">\n        <source>Block</source>\n        <target>Bloque</target>\n      </trans-unit>\n      <trans-unit id="b73f7f5060fb22a1e9ec462b1bb02493fa3ab866" datatype="html">\n        <source>Images</source>\n        <target>Imágenes</target>\n      </trans-unit>\n      <trans-unit id="3c2562ba992127203dcfd014010b03cb7b8113c6" datatype="html">\n        <source>Mirroring</source>\n        <target>Duplicación</target>\n      </trans-unit>\n      <trans-unit id="811c241d56601b91ef26735b770e64428089b950" datatype="html">\n        <source>iSCSI</source>\n        <target>iSCSI</target>\n      </trans-unit>\n      <trans-unit id="a24eabd99ea5af20f5f94c4484649cd30370042b" datatype="html">\n        <source>NFS</source>\n        <target>NFS</target>\n      </trans-unit>\n      <trans-unit id="a4eff72d97b7ced051398d581f10968218057ddc" datatype="html">\n        <source>Filesystems</source>\n        <target>Sistemas de archivos</target>\n      </trans-unit>\n      <trans-unit id="2190548d236ca5f7bc7ab2bca334b860c5ff2ad4" datatype="html">\n        <source>Object Gateway</source>\n        <target>Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="9e24f9e2d42104ffc01599db4d566d1cc518f9e6" datatype="html">\n        <source>Daemons</source>\n        <target>Daemons</target>\n      </trans-unit>\n      <trans-unit id="4d13a9cd5ed3dcee0eab22cb25198d43886942be" datatype="html">\n        <source>Users</source>\n        <target>Usuarios</target>\n      </trans-unit>\n      <trans-unit id="9515520496da83179d8b08132f00f575512a1f40" datatype="html">\n        <source>Buckets</source>\n        <target>Papeleras</target>\n      </trans-unit>\n      <trans-unit id="797f8214e8148f4bf0d244baaa7341706b419549" datatype="html">\n        <source>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </source>\n        <target>Retrieving data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>. Please wait...\n        </target>\n      </trans-unit>\n      <trans-unit id="5a870dc77b9f6f33ee671ea2d856021276933339" datatype="html">\n        <source>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </source>\n        <target>Displaying previously cached data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/>\n  for \n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ae580202919844531361ba2308287226ff74a584" datatype="html">\n        <source>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </source>\n        <target>Could not load data\n          <x id="START_TAG_SPAN_1" ctype="x-span" equiv-text="<span>"/> for\n          <x id="START_TAG_SPAN" ctype="x-span" equiv-text="<span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>\n          <x id="CLOSE_TAG_SPAN" ctype="x-span" equiv-text="</span>"/>.\n  Please check the cluster health.\n        </target>\n      </trans-unit>\n      <trans-unit id="7e52e9143145e1db5146258de81eae018a407b31" datatype="html">\n        <source>Clear notifications</source>\n        <target>Clear notifications</target>\n      </trans-unit>\n      <trans-unit id="b0b07bb6b7ff21ede439dd04eaf8872d1ecb84d8" datatype="html">\n        <source>Remove notification</source>\n        <target>Remove notification</target>\n      </trans-unit>\n      <trans-unit id="e17a1d75189da843f541f7764f188f2b19a97df2" datatype="html">\n        <source>Duration:</source>\n        <target>Duration:</target>\n      </trans-unit>\n      <trans-unit id="0d4b37c6675c5b436a54c43d6716eec835e1aa7f" datatype="html">\n        <source>There are no notifications.</source>\n        <target>There are no notifications.</target>\n      </trans-unit>\n      <trans-unit id="0a23e992f6c6e169a38b2b7338b4e5e803b52e0d" datatype="html">\n        <source>Tasks and Notifications</source>\n        <target>Tasks and Notifications</target>\n      </trans-unit>\n      <trans-unit id="3fb5709e10166cbc85970cbff103db227dbeb813" datatype="html">\n        <source>Select a Language</source>\n        <target>Seleccione un idioma</target>\n      </trans-unit>\n      <trans-unit id="c5109325fb160b543f71a51e7511c00575057431" datatype="html">\n        <source>Loading panel data...</source>\n        <target>Cargando datos del panel...</target>\n      </trans-unit>\n      <trans-unit id="8ca12411f890ab8b0a9216418e2b8f5ea7d2441a" datatype="html">\n        <source>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </source>\n        <target>Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the monitoring functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="160a9e80dc089792df42e2400b1e81b9e7025aa7" datatype="html">\n        <source>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </source>\n        <target>Grafana Dashboard doesn\'t exist. Please refer to\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  add dashboards to Grafana.\n        </target>\n      </trans-unit>\n      <trans-unit id="4e11830040bd64804a0555de76f291d5832772d4" datatype="html">\n        <source>Grafana Time Picker</source>\n        <target>Selector de hora de Grafana</target>\n      </trans-unit>\n      <trans-unit id="238c1ba845dd7330e8088165275919a1debf1ca3" datatype="html">\n        <source>Reset Settings</source>\n        <target>Restablecer ajustes</target>\n      </trans-unit>\n      <trans-unit id="c8d1785038d461ec66b5799db21864182b35900a" datatype="html">\n        <source>Refresh</source>\n        <target>Refresh</target>\n      </trans-unit>\n      <trans-unit id="6c947210e2d162b6225083d18820ab602f58cd2d" datatype="html">\n        <source>Remove the custom configuration value. The default configuration will be inherited and used instead.</source>\n        <target>Remove the custom configuration value. The default configuration will be inherited and used instead.</target>\n      </trans-unit>\n      <trans-unit id="454ee9cb60b00446a8fb147fd2cc5eb836320586" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ option.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="7fc8a22825131e028336f60ef909ccbd96059703" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ option.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="cda31dbd724cf5f4fa7a4274d9120651490c8a8c" datatype="html">\n        <source>Back</source>\n        <target>Atrás</target>\n      </trans-unit>\n      <trans-unit id="9ce641535be1ffa106c87724ba0637facaef5f61" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>less than 1\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day. Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="c2f34088c155e40ffb23770a465a65868ce772b2" datatype="html">\n        <source>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </source>\n        <target>Your password will expire in \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ expirationDays }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> day(s). Click\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>here\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> to change it now.\n        </target>\n      </trans-unit>\n      <trans-unit id="9b516f972c744779257310b73f6e97438b726707" datatype="html">\n        <source>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </source>\n        <target>Orchestrator is not available. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> on how to\n  configure and enable the functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="012741ee52b3c050e4a977c37cc2334f7974f141" datatype="html">\n        <source>Failed to load data.</source>\n        <target>Error al cargar los datos.</target>\n      </trans-unit>\n      <trans-unit id="1e5e23363e949f7dcbaf034bdb141a561132a10e" datatype="html">\n        <source>Clear filters</source>\n        <target>Clear filters</target>\n      </trans-unit>\n      <trans-unit id="80cc9a12d4bf6fe454ed94b379eeaf915f920bb7" datatype="html">\n        <source>selected</source>\n        <target>seleccionados</target>\n        <note>X selected</note>\n      </trans-unit>\n      <trans-unit id="0cb77511a9a148e05b9adf36cc07269956fbb29d" datatype="html">\n        <source>found</source>\n        <target>encontrados</target>\n        <note>X found</note>\n      </trans-unit>\n      <trans-unit id="79347388740c50b7ac97e144c2494bb62912f312" datatype="html">\n        <source>total</source>\n        <target>total</target>\n        <note>X total</note>\n      </trans-unit>\n      <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">\n        <source>Name</source>\n        <target>Nombre</target>\n      </trans-unit>\n      <trans-unit id="eec715de352a6b114713b30b640d319fa78207a0" datatype="html">\n        <source>Description</source>\n        <target>Descripción</target>\n      </trans-unit>\n      <trans-unit id="4ad112ce9bcd55dfd137792a86afe1b5a5b13cf8" datatype="html">\n        <source>Long description</source>\n        <target>Descripción larga</target>\n      </trans-unit>\n      <trans-unit id="ff7cee38a2259526c519f878e71b964f41db4348" datatype="html">\n        <source>Default</source>\n        <target>Opción por defecto</target>\n      </trans-unit>\n      <trans-unit id="33e1c1d9fc05ca3f62fcc8a1170fc31ebae4229c" datatype="html">\n        <source>Daemon default</source>\n        <target>Daemon por defecto</target>\n      </trans-unit>\n      <trans-unit id="809b0c848932a41318f77a2aace904ef429c13f4" datatype="html">\n        <source>Values</source>\n        <target>Valores</target>\n      </trans-unit>\n      <trans-unit id="5894f7158499fdb89527af50c9f1cf7d4c95cad6" datatype="html">\n        <source>-- Default --</source>\n        <target>-- Default --</target>\n      </trans-unit>\n      <trans-unit id="514f6e12d035a6d9b00de6b3e55c18b73488da07" datatype="html">\n        <source>true</source>\n        <target>true</target>\n      </trans-unit>\n      <trans-unit id="774f5e6a183dea08393789b6f72e86afad729419" datatype="html">\n        <source>false</source>\n        <target>false</target>\n      </trans-unit>\n      <trans-unit id="82029b6db704c56a2aa3e82ac555b8655356b077" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8ed8b3967a7326b81b191c9f490006e6a6777a9a" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="52c9a103b812f258bcddc3d90a6e3f46871d25fe" datatype="html">\n        <source>Save</source>\n        <target>Guardar</target>\n      </trans-unit>\n      <trans-unit id="738de688b22fba5d0dc7a5e549996838dddad0ee" datatype="html">\n        <source>CRUSH map viewer</source>\n        <target>Visor del mapa de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="94516fa213706c67ce5a5b5765681d7fb032033a" datatype="html">\n        <source>Loading...</source>\n        <target>Cargando...</target>\n      </trans-unit>\n      <trans-unit id="formTitle" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form title</note>\n      </trans-unit>\n      <trans-unit id="9a541ec1a4319fffc16ad3b3ab2c2b6d251a829d" datatype="html">\n        <source>Hostname</source>\n        <target>Nombre de host</target>\n      </trans-unit>\n      <trans-unit id="7cbdabcece469fab89cfa687ab152bca18b97498" datatype="html">\n        <source>This field is required.</source>\n        <target>Este campo es obligatorio.</target>\n      </trans-unit>\n      <trans-unit id="1b3f5e5291541678f7afa49d28fad5ca848a8061" datatype="html">\n        <source>The chosen hostname is already in use.</source>\n        <target>The chosen hostname is already in use.</target>\n      </trans-unit>\n      <trans-unit id="formActionButton" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ resource | upperFirst }}"/>\n        </target>\n        <note>form action button</note>\n      </trans-unit>\n      <trans-unit id="6110699a3562eeb15371063c0cf7f6bfd88a0209" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemNames[0] }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="549859e511ba5af0ea03fcaa620c472f08038969" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected items?\n        </target>\n      </trans-unit>\n      <trans-unit id="54839ebc827b73c9dc4e1df731c6d36a85036af7" datatype="html">\n        <source>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </source>\n        <target>Are you sure that you want to \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription | lowercase }}"/> the selected \n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>?\n        </target>\n      </trans-unit>\n      <trans-unit id="2be8b7f04f0104d3fad90d079d8202b74f758b9a" datatype="html">\n        <source>Yes, I am sure.</source>\n        <target>Sí, seguro.</target>\n      </trans-unit>\n      <trans-unit id="d7b35c384aecd25a516200d6921836374613dfe7" datatype="html">\n        <source>Cancel</source>\n        <target>Cancelar</target>\n      </trans-unit>\n      <trans-unit id="55a2f26b2e87886d9b8015a887e38e51ab2a866a" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ itemDescription }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8" datatype="html">\n        <source>Close</source>\n        <target>Cerrar</target>\n      </trans-unit>\n      <trans-unit id="40661476cb24c89d8b06614998e31d5fbe84eeb6" datatype="html">\n        <source>Hosts List</source>\n        <target>Lista de hosts</target>\n      </trans-unit>\n      <trans-unit id="5e7f4b1ca49e8d217bd0e12c6f7d6b6a2ade2c18" datatype="html">\n        <source>Overall Performance</source>\n        <target>Rendimiento general</target>\n      </trans-unit>\n      <trans-unit id="3e24569eca61d598c8b01defbbbb1fa8bd5222bc" datatype="html">\n        <source>Devices</source>\n        <target>Devices</target>\n      </trans-unit>\n      <trans-unit id="e6d57f36aa2bad303c8a8ee944b9bd7fae3c8c26" datatype="html">\n        <source>No entries found</source>\n        <target>No se encuentra ninguna entrada</target>\n      </trans-unit>\n      <trans-unit id="d556ab48a65722b400e497f61737f553ee0f89e2" datatype="html">\n        <source>Cluster Logs</source>\n        <target>Registros del clúster</target>\n      </trans-unit>\n      <trans-unit id="5f966baffd188be0e8adc2d7067b86e55fc9b9de" datatype="html">\n        <source>Audit Logs</source>\n        <target>Registros de auditoría</target>\n      </trans-unit>\n      <trans-unit id="4193c9eb868aeec119b78a14795241e0aa5e8b60" datatype="html">\n        <source>Priority:</source>\n        <target>Priority:</target>\n      </trans-unit>\n      <trans-unit id="1d78ca51eab260ce3fd917d39190d64df5229b6e" datatype="html">\n        <source>Keyword:</source>\n        <target>Keyword:</target>\n      </trans-unit>\n      <trans-unit id="05fa0bded36de6e73a1fa44838b627349dace044" datatype="html">\n        <source>Date:</source>\n        <target>Date:</target>\n      </trans-unit>\n      <trans-unit id="31dadb362bf7f7c2afa10e5f96474ccd3977f91f" datatype="html">\n        <source>Datepicker</source>\n        <target>Datepicker</target>\n      </trans-unit>\n      <trans-unit id="85a400388de1899b1917138cf7e5286376f72847" datatype="html">\n        <source>Time range:</source>\n        <target>Time range:</target>\n      </trans-unit>\n      <trans-unit id="2447796ddbda942f4e2c46619cb84d69f066e568" datatype="html">\n        <source>Loading configuration...</source>\n        <target>Cargando configuración...</target>\n      </trans-unit>\n      <trans-unit id="b42c0b347a841bed8859ee83de05080ee28c803b" datatype="html">\n        <source>The configuration could not be loaded.</source>\n        <target>No es posible cargar la configuración.</target>\n      </trans-unit>\n      <trans-unit id="31a9c2870a934b594d1390146c489f76440859ea" datatype="html">\n        <source>Edit Manager module</source>\n        <target>Módulo del gestor de edición</target>\n      </trans-unit>\n      <trans-unit id="46e09b8290d3d0afdb6baa2021395b0570606a31" datatype="html">\n        <source>The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</source>\n        <target>El valor introducido no es un UUID válido, por ejemplo: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8</target>\n      </trans-unit>\n      <trans-unit id="7aacd038b39cfd347107d01d1dc27f5cb3e0951c" datatype="html">\n        <source>The entered value needs to be a valid IP address.</source>\n        <target>El valor introducido debe ser una dirección IP válida.</target>\n      </trans-unit>\n      <trans-unit id="f19106149f4b07a0d721f9d317afed393cb7bd93" datatype="html">\n        <source>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </source>\n        <target>The entered value is too high! It must be lower or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.max }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="6d33c40ef9a6c3bf0888df831b25e41e65f9d15b" datatype="html">\n        <source>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </source>\n        <target>The entered value is too low! It must be greater or equal to \n          <x id="INTERPOLATION" equiv-text="{{ moduleOption.value.min }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="eae7086660cf1e38c7194a2c49ff52cc656f90f5" datatype="html">\n        <source>The entered value needs to be a number.</source>\n        <target>El valor introducido debe ser un número.</target>\n      </trans-unit>\n      <trans-unit id="a73376e04b4fb3a20734c8c39743fba32e6676ce" datatype="html">\n        <source>The entered value needs to be a number or decimal.</source>\n        <target>El valor introducido debe ser un número o un decimal.</target>\n      </trans-unit>\n      <trans-unit id="047f50bc5b5d17b5bec0196355953e1a5c590ddb" datatype="html">\n        <source>Update</source>\n        <target>Actualizar</target>\n      </trans-unit>\n      <trans-unit id="81b97b8ea996ad1e4f9fca8415021850214884b1" datatype="html">\n        <source>Status</source>\n        <target>Estado</target>\n      </trans-unit>\n      <trans-unit id="57ec6032f5618d4a9f16eb950ad23d2ce7c24b54" datatype="html">\n        <source>Cluster ID</source>\n        <target>ID de clúster</target>\n      </trans-unit>\n      <trans-unit id="67d7facc3fec5f8a49ab9ba0a245872184264ce5" datatype="html">\n        <source>monmap modified</source>\n        <target>Mapa de supervisión modificado</target>\n      </trans-unit>\n      <trans-unit id="d4906731aaf2b94b4f547646c9bfe58bb77951b6" datatype="html">\n        <source>monmap epoch</source>\n        <target>Época de mapa de supervisión</target>\n      </trans-unit>\n      <trans-unit id="bd4ee06ffdc46d9dfbd0c0c4f81399021c680056" datatype="html">\n        <source>quorum con</source>\n        <target>quórum de con</target>\n      </trans-unit>\n      <trans-unit id="1176c7db8a8276ccb44cc3d42e2c28d9fa6c6596" datatype="html">\n        <source>quorum mon</source>\n        <target>quórum de mon</target>\n      </trans-unit>\n      <trans-unit id="530ef677a09d681b3ab68cb0760494b3ae72a77c" datatype="html">\n        <source>required con</source>\n        <target>con requerido</target>\n      </trans-unit>\n      <trans-unit id="a91558e0d506c32021c31843f8f168899fc65cbf" datatype="html">\n        <source>required mon</source>\n        <target>mon requerido</target>\n      </trans-unit>\n      <trans-unit id="b3abe9eac5bcd94a54c8da93b312e085ec512e74" datatype="html">\n        <source>In Quorum</source>\n        <target>Con quórum</target>\n      </trans-unit>\n      <trans-unit id="ba4b748a676e1f217ce1e736fb7ec1215e677bae" datatype="html">\n        <source>Not In Quorum</source>\n        <target>Sin quórum</target>\n      </trans-unit>\n      <trans-unit id="4383e9662ea19839c7499b2128d43a195e564317" datatype="html">\n        <source>OSD creation preview</source>\n        <target>OSD creation preview</target>\n      </trans-unit>\n      <trans-unit id="366225c51e0b00bcb1c55795a0dc5e81c455f84e" datatype="html">\n        <source>DriveGroups</source>\n        <target>DriveGroups</target>\n      </trans-unit>\n      <trans-unit id="8edc89137d0d8c5667a2f03230beafae45e58429" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ deviceType }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="eba28e1805b18f7c8ae2e4bc15dcf063b10b3822" datatype="html">\n        <source>At least one of these filters must be applied in order to proceed:</source>\n        <target>At least one of these filters must be applied in order to proceed:</target>\n      </trans-unit>\n      <trans-unit id="93389aa2fe2bea50bf89554ee51b28f87ee2fb50" datatype="html">\n        <source>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </source>\n        <target>Number of devices: \n          <x id="INTERPOLATION" equiv-text="{{ filteredDevices.length }}"/>. Raw capacity:\n          <x id="INTERPOLATION_1" equiv-text="{{ capacity | dimlessBinary }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="ccb4f84edc0b4e76415bb3f9b73d725b06683af3" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ name }}"/> devices\n        </target>\n      </trans-unit>\n      <trans-unit id="60cb3d01e5ddf266ecb4271007a1c3d0f3efdc22" datatype="html">\n        <source>The primary storage devices. These devices contain all OSD data.</source>\n        <target>The primary storage devices. These devices contain all OSD data.</target>\n      </trans-unit>\n      <trans-unit id="b432e04886d0d1fd84f740477383051f85addcf2" datatype="html">\n        <source>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</source>\n        <target>Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device.</target>\n      </trans-unit>\n      <trans-unit id="b87e181ab9e8393aa5ed759dd3d53836e32c8ffe" datatype="html">\n        <source>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</source>\n        <target>DB devices can be used for storing BlueStore’s internal metadata.  It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD).</target>\n      </trans-unit>\n      <trans-unit id="f6755cff4957d5c3c89bafce5651f1b6fa2b1fd9" datatype="html">\n        <source>Add</source>\n        <target>Añadir</target>\n      </trans-unit>\n      <trans-unit id="99ee4faa69cd2ea8e3678c1f557c0ff1f05aae46" datatype="html">\n        <source>Clear</source>\n        <target>Clear</target>\n      </trans-unit>\n      <trans-unit id="7e0fd3c7af0630f93befa6234a693a32a61084e0" datatype="html">\n        <source>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </source>\n        <target>Raw capacity: \n          <x id="INTERPOLATION" equiv-text="{{ capacity | dimlessBinary }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="43ecf6bee2aebc07b0aad6dc1fe13e38d14687fa" datatype="html">\n        <source>Shared devices</source>\n        <target>Shared devices</target>\n      </trans-unit>\n      <trans-unit id="7a1c376f6f1b37de4c318ff2106255ba6c0f5b0b" datatype="html">\n        <source>WAL slots</source>\n        <target>WAL slots</target>\n      </trans-unit>\n      <trans-unit id="73811a6f37b63e6b0e491e221bfa21e9dea8a87a" datatype="html">\n        <source>How many OSDs per WAL device.</source>\n        <target>How many OSDs per WAL device.</target>\n      </trans-unit>\n      <trans-unit id="0c67a7ac4762ef1cc855056c6b4daab93e53a0a5" datatype="html">\n        <source>Specify 0 to let Orchestrator backend decide it.</source>\n        <target>Specify 0 to let Orchestrator backend decide it.</target>\n      </trans-unit>\n      <trans-unit id="7bda9362e06e6c67341b4a8425b0d29d6b84464b" datatype="html">\n        <source>Value should be greater than or equal to 0</source>\n        <target>Value should be greater than or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="324c2b10152b9dd908222bb0b71f61beb60a30c5" datatype="html">\n        <source>DB slots</source>\n        <target>DB slots</target>\n      </trans-unit>\n      <trans-unit id="c23cf12ef9c76f37fc7a4b7ae3e00fb0f68b6e26" datatype="html">\n        <source>How many OSDs per DB device.</source>\n        <target>How many OSDs per DB device.</target>\n      </trans-unit>\n      <trans-unit id="6cdb1fea93d77c07950c0c76c6e0ad79ebbef084" datatype="html">\n        <source>Features</source>\n        <target>Características</target>\n      </trans-unit>\n      <trans-unit id="3e2a583f531f7dd9f089f68a6968e444c372c3e8" datatype="html">\n        <source>Preview</source>\n        <target>Preview</target>\n      </trans-unit>\n      <trans-unit id="5ef50ba2514414f799d4c8fc36067a251904ba81" datatype="html">\n        <source>Cluster-wide OSD Flags</source>\n        <target>Indicadores OSD de todo el clúster</target>\n      </trans-unit>\n      <trans-unit id="71c77bb8cecdf11ec3eead24dd1ba506573fa9cd" datatype="html">\n        <source>Submit</source>\n        <target>Enviar</target>\n      </trans-unit>\n      <trans-unit id="1cfe07dac5b4ee1c464eb24225ddeb4f1d24076a" datatype="html">\n        <source>Advanced...</source>\n        <target>Avanzado...</target>\n      </trans-unit>\n      <trans-unit id="b1ef1c12ddcee305353623919ef02778569f5454" datatype="html">\n        <source>Advanced configuration options</source>\n        <target>Advanced configuration options</target>\n      </trans-unit>\n      <trans-unit id="c35f9c5f268a514b970cc55e9a5dc4bed0988e7f" datatype="html">\n        <source>OSD Recovery Priority</source>\n        <target>Prioridad de recuperación de OSD</target>\n      </trans-unit>\n      <trans-unit id="b74af38005e8a8914e45af2ec412e11ceafef8b6" datatype="html">\n        <source>Priority</source>\n        <target>Prioridad</target>\n      </trans-unit>\n      <trans-unit id="c2f48f04b379bfba133825747adfd238d511412e" datatype="html">\n        <source>Customize priority values</source>\n        <target>Personalizar valores de prioridad</target>\n      </trans-unit>\n      <trans-unit id="4aa19de2a2b54cbda39e9c62917b23044c087776" datatype="html">\n        <source>This field is required!</source>\n        <target>Este campo es obligatorio.</target>\n      </trans-unit>\n      <trans-unit id="b699e94bf376491bd50b70a98531071c737eaf40" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="98fe13e7ad6c2b80375d204b47858ded83f80e15" datatype="html">\n        <source>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </source>\n        <target>The entered value is too high! It must not be greater than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.maxValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5423a3c111be47fc5a1bfe46ceb58c81c84db691" datatype="html">\n        <source>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </source>\n        <target>The entered value is too low! It must not be lower than \n          <x id="INTERPOLATION" equiv-text="{{ attr.value.minValue }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="5251a4355cece3075db43f15d69a24a0f8485707" datatype="html">\n        <source>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </source>\n        <target>Reweight OSD: \n          <x id="INTERPOLATION" equiv-text="{{ osdId }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67650b2998db48201b2c6176cbfef51e7211ccaa" datatype="html">\n        <source>The value needs to be between 0 and 1.</source>\n        <target>El valor debe estar entre 0 y 1.</target>\n      </trans-unit>\n      <trans-unit id="bc11f92113d678a90e334fdf3d7b3fddbe34c579" datatype="html">\n        <source>Reweight</source>\n        <target>Reequilibrar peso</target>\n      </trans-unit>\n      <trans-unit id="d5ca5daf742023fc4f0919fb3c1c6a51991cda4f" datatype="html">\n        <source>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </source>\n        <target>OSDs \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>Scrub\n        </target>\n      </trans-unit>\n      <trans-unit id="4c17d67c7c5799eb920030e9a399961e90f55dd8" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Deep } }</source>\n        <target>{VAR_SELECT, select, 1 {Profundo} }</target>\n      </trans-unit>\n      <trans-unit id="fd0a4b6eed32e3488eccdc9c13f9841f08cc275e" datatype="html">\n        <source>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </source>\n        <target>You are about to apply a \n          <x id="ICU" equiv-text="{deep, select, 1 {...}}"/>scrub to\n          the OSD(s): \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ selected | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="dc6705f342a036b332c3fd3443201c3613e5524d" datatype="html">\n        <source>{VAR_SELECT, select, 1 {deep } }</source>\n        <target>{VAR_SELECT, select, 1 {profundo} }</target>\n      </trans-unit>\n      <trans-unit id="b49d7877d24112d4bdfce9256edf61a007fae888" datatype="html">\n        <source>OSDs List</source>\n        <target>Lista de OSD</target>\n      </trans-unit>\n      <trans-unit id="d5707a32ba9c1138e6423498fb0b24e970ebd19f" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD(s) \n          <x id="INTERPOLATION" equiv-text="{{  getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be marked\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ markActionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="d08c1e4f17dffc0ed1ac2e2e2875cb8b569eeb35" datatype="html">\n        <source>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </source>\n        <target>The \n          <x id="ICU" equiv-text="{selection.hasSingleSelection, select, 0 {...} 1 {...}}"/> not safe to be \n          <x id="INTERPOLATION" equiv-text="{{ actionDescription }}"/>! \n          <x id="INTERPOLATION_1" equiv-text="{{ message }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="e776996dac651ef3819bfa767ccf2a0613759f47" datatype="html">\n        <source>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</source>\n        <target>{VAR_SELECT, select, 0 {OSDs are} 1 {OSD is} }</target>\n      </trans-unit>\n      <trans-unit id="5cd6a031937412c42e5efa1e6959cb72ac08c720" datatype="html">\n        <source>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </source>\n        <target>\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>OSD \n          <x id="INTERPOLATION" equiv-text="{{ getSelectedOsdIds() | join }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> will be\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ actionDescription }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> if you proceed.\n        </target>\n      </trans-unit>\n      <trans-unit id="3eda19b44809820fffd5d3753bafb7243116f4b0" datatype="html">\n        <source>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To see all active Prometheus alerts, please\n      provide the URL to the API of Prometheus\' Alertmanager as described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="880ad4df5a2051a437321443d69c9a866699e5ad" datatype="html">\n        <source>Active Alerts</source>\n        <target>Active Alerts</target>\n      </trans-unit>\n      <trans-unit id="8e5e0e09a11990d343926ed693574213d703c38d" datatype="html">\n        <source>All Alerts</source>\n        <target>All Alerts</target>\n      </trans-unit>\n      <trans-unit id="526938c2b7945cb0d68328c24bd77730230cd455" datatype="html">\n        <source>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </source>\n        <target>To enable Silences, please provide the URL to the API of the Prometheus\' Alertmanager as\n      described in the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="aa0c44aa1e5727061baa91e954f77e2f5f9a37c9" datatype="html">\n        <source>Silences</source>\n        <target>Silences</target>\n      </trans-unit>\n      <trans-unit id="8501055865d7031b5521a0c5467532648009a61d" datatype="html">\n        <source>Matcher</source>\n        <target>Matcher</target>\n      </trans-unit>\n      <trans-unit id="9c25e04f554875dc2625a78ba0fc56c6010cd0d3" datatype="html">\n        <source>-- Select an attribute to match against --</source>\n        <target>-- Select an attribute to match against --</target>\n      </trans-unit>\n      <trans-unit id="5049e204c14c648691ac775a64fb504467aeb549" datatype="html">\n        <source>Value</source>\n        <target>Valor</target>\n      </trans-unit>\n      <trans-unit id="77fc5c63497fc031ddc97645484e3d94ad27766c" datatype="html">\n        <source>Use regular expression</source>\n        <target>Use regular expression</target>\n      </trans-unit>\n      <trans-unit id="7bbec1a797283712c0adf9e71d77fb5a8cd720db" datatype="html">\n        <source>{VAR_SELECT, select, 1 {Update} other {Add} }</source>\n        <target>{VAR_SELECT, select, 1 {Update} other {Add} }</target>\n      </trans-unit>\n      <trans-unit id="28f86ffd419b869711aa13f5e5ff54be6d70731c" datatype="html">\n        <source>Edit</source>\n        <target>Editar</target>\n      </trans-unit>\n      <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">\n        <source>Delete</source>\n        <target>Suprimir</target>\n      </trans-unit>\n      <trans-unit id="a3ba06aba047605af8ea1718ec1ba153b7db12a2" datatype="html">\n        <source>Editing a silence will expire the old silence and recreate it as a new silence</source>\n        <target>Editing a silence will expire the old silence and recreate it as a new silence</target>\n      </trans-unit>\n      <trans-unit id="a20424156b8816671f61879f0574a4f27d7b16b9" datatype="html">\n        <source>Creator</source>\n        <target>Creator</target>\n      </trans-unit>\n      <trans-unit id="5a5d7ee2acbfa9c91ab7f41d26bda9ff0cafe42f" datatype="html">\n        <source>Comment</source>\n        <target>Comment</target>\n      </trans-unit>\n      <trans-unit id="4c11aad490b2d53fdae30b3807beabf79306752c" datatype="html">\n        <source>Start time</source>\n        <target>Start time</target>\n      </trans-unit>\n      <trans-unit id="32856b1e8e339b747b21e313e2fe65a51fd450bb" datatype="html">\n        <source>If the start time lies in the past the creation time will be used</source>\n        <target>If the start time lies in the past the creation time will be used</target>\n      </trans-unit>\n      <trans-unit id="a02ea1d4e7424ca989929da5e598f379940fdbf2" datatype="html">\n        <source>Duration</source>\n        <target>Duration</target>\n      </trans-unit>\n      <trans-unit id="2f4e35e36f4d3c62e2c17df41730b6dee4afc4b9" datatype="html">\n        <source>End time</source>\n        <target>End time</target>\n      </trans-unit>\n      <trans-unit id="992123459137d45c15df5548bc9682aad835c04b" datatype="html">\n        <source>Matchers</source>\n        <target>Matchers</target>\n      </trans-unit>\n      <trans-unit id="3e023166c55833d5a13f4143e3dbe372befe1b4e" datatype="html">\n        <source>A silence requires at least one matcher</source>\n        <target>A silence requires at least one matcher</target>\n      </trans-unit>\n      <trans-unit id="ef765bd80c4806c51c891908c07a24bc76f019eb" datatype="html">\n        <source>Add matcher</source>\n        <target>Add matcher</target>\n      </trans-unit>\n      <trans-unit id="d2bcd3296d2850de762fb943060b7e086a893181" datatype="html">\n        <source>Health</source>\n        <target>Estado</target>\n      </trans-unit>\n      <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">\n        <source>Statistics</source>\n        <target>Estadísticas</target>\n      </trans-unit>\n      <trans-unit id="f8f74e5f683012b9c0702b1446011c6b9158bc67" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the NFS Ganesha management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="7ffe39df9d88c972792bd8688b215392deb8313d" datatype="html">\n        <source>Clients</source>\n        <target>Clientes</target>\n      </trans-unit>\n      <trans-unit id="f2dae0bda66f6a349444951c0379c28cda47d6d1" datatype="html">\n        <source>Any client can access</source>\n        <target>Cualquier cliente puede acceder</target>\n      </trans-unit>\n      <trans-unit id="7882f2edb1d4139800b276b6b0bbf5ae0b2234ef" datatype="html">\n        <source>Addresses</source>\n        <target>Destinatarios</target>\n      </trans-unit>\n      <trans-unit id="9bd96fcf50863e685c74d0490392f46689ffbdb6" datatype="html">\n        <source>Required field</source>\n        <target>Campo requerido</target>\n      </trans-unit>\n      <trans-unit id="a5f3f74c0f6925826cb2188576391c0da01a23f0" datatype="html">\n        <source>Must contain one or more comma-separated values</source>\n        <target>Debe contener uno o varios valores separados por comas</target>\n      </trans-unit>\n      <trans-unit id="8bb5b2073697f3f4378c44a49b7524934c9268f4" datatype="html">\n        <source>For example:</source>\n        <target>Por ejemplo:</target>\n      </trans-unit>\n      <trans-unit id="8f969c655b3fbe4fba7e277caf4cd2c459f9fca5" datatype="html">\n        <source>Access Type</source>\n        <target>Tipo de acceso</target>\n      </trans-unit>\n      <trans-unit id="28952831a284cfe2b4fc39ca610e80b52598905a" datatype="html">\n        <source>Squash</source>\n        <target>Reducir privilegios</target>\n      </trans-unit>\n      <trans-unit id="0660ae339068979854ade34a96546980723dede3" datatype="html">\n        <source>Add clients</source>\n        <target>Añadir clientes</target>\n      </trans-unit>\n      <trans-unit id="135b91a2d908d5814b782695470a6a786c99d9d2" datatype="html">\n        <source>-- No cluster available --</source>\n        <target>-- No hay ningún clúster disponible --</target>\n      </trans-unit>\n      <trans-unit id="c501dba379f566885919240ea277b5bc10c14d18" datatype="html">\n        <source>-- Select the cluster --</source>\n        <target>-- Seleccione el clúster --</target>\n      </trans-unit>\n      <trans-unit id="cf85b1ee58326aa9da63da41b2629c9db7c9a5b9" datatype="html">\n        <source>Add daemon</source>\n        <target>Añadir daemon</target>\n      </trans-unit>\n      <trans-unit id="b3f6ba7fe84d6508705cdfe234f0fcc8ff85c9cf" datatype="html">\n        <source>Storage Backend</source>\n        <target>Motor de almacenamiento</target>\n      </trans-unit>\n      <trans-unit id="151c80ea931037cd92e854442927f8a0f6ae7795" datatype="html">\n        <source>-- No data pools available --</source>\n        <target>-- No hay ningún repositorio de datos disponible --</target>\n      </trans-unit>\n      <trans-unit id="b6fee356d1db954255a56d8169405a89595246b9" datatype="html">\n        <source>-- Select the storage backend --</source>\n        <target>-- Seleccione el motor de almacenamiento --</target>\n      </trans-unit>\n      <trans-unit id="76d67035c3ab3d8e56f725859f820f03fda41cfc" datatype="html">\n        <source>Object Gateway User</source>\n        <target>Usuario de Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="fade7788bace74337f306ae209f10fc187ef4671" datatype="html">\n        <source>-- No users available --</source>\n        <target>-- No hay ningún usuario disponible --</target>\n      </trans-unit>\n      <trans-unit id="6d30b7b36cf8f6364167321bdb4ba35d4cefce7b" datatype="html">\n        <source>-- Select the object gateway user --</source>\n        <target>-- Seleccione el usuario de Object Gateway --</target>\n      </trans-unit>\n      <trans-unit id="589ce20d3ba3e3ac44f75decfaadc4ea8f0aec2d" datatype="html">\n        <source>CephFS User ID</source>\n        <target>ID de usuario de CephFS</target>\n      </trans-unit>\n      <trans-unit id="c4b88a53ac3b0ece46ba9b3ad72355a3c190cce7" datatype="html">\n        <source>-- No clients available --</source>\n        <target>-- No hay ningún cliente disponible --</target>\n      </trans-unit>\n      <trans-unit id="da52835b80497a0002d24414b057dc46ae44ce38" datatype="html">\n        <source>-- Select the cephx client --</source>\n        <target>-- Seleccione el cliente de CephX --</target>\n      </trans-unit>\n      <trans-unit id="fd3419e8957d928d7f7ba19c93356a0dbff02871" datatype="html">\n        <source>CephFS Name</source>\n        <target>Nombre de CephFS</target>\n      </trans-unit>\n      <trans-unit id="ee3ba0ab5f0ccd597b3e44021c71e9aaad14df0a" datatype="html">\n        <source>-- No CephFS filesystem available --</source>\n        <target>-- No CephFS filesystem available --</target>\n      </trans-unit>\n      <trans-unit id="764c57812558b1ae66c5eec95d7efd2b1bf761e3" datatype="html">\n        <source>-- Select the CephFS filesystem --</source>\n        <target>-- Select the CephFS filesystem --</target>\n      </trans-unit>\n      <trans-unit id="957512d0321f73e9f115bce1bd823fa635170c41" datatype="html">\n        <source>Security Label</source>\n        <target>Etiqueta de seguridad</target>\n      </trans-unit>\n      <trans-unit id="65ce0fa4da1ed55e658aeb31d1644a29f06bb342" datatype="html">\n        <source>Enable security label</source>\n        <target>Habilitar etiqueta de seguridad</target>\n      </trans-unit>\n      <trans-unit id="7e808f804130c7b6ff719509cbc06ebb27393a48" datatype="html">\n        <source>CephFS Path</source>\n        <target>Ruta de CephFS</target>\n      </trans-unit>\n      <trans-unit id="5ecc0107badb6625466aaa3f975b5c05276f432f" datatype="html">\n        <source>Path need to start with a \'/\' and can be followed by a word</source>\n        <target>La ruta debe empezar por "/" y puede ir seguida de una palabra</target>\n      </trans-unit>\n      <trans-unit id="2d02916f44fc63e13ab16d1cbe72aa6cb51feab3" datatype="html">\n        <source>New directory will be created</source>\n        <target>Se creará un directorio nuevo</target>\n      </trans-unit>\n      <trans-unit id="766c66ad5cc981c531aaf3fe3a2a7a346ddc8d83" datatype="html">\n        <source>Path</source>\n        <target>Ruta</target>\n      </trans-unit>\n      <trans-unit id="7ec35c722a50b976620f22612f7be619c12ceb90" datatype="html">\n        <source>Path can only be a single \'/\' or a word</source>\n        <target>La ruta solo puede ser una "/" o una palabra</target>\n      </trans-unit>\n      <trans-unit id="aebb6a5090c24511de4530195694bb3f3dcf0342" datatype="html">\n        <source>New bucket will be created</source>\n        <target>Se creará una papelera nueva</target>\n      </trans-unit>\n      <trans-unit id="bee6900143996c0e908a10564532eba3da0b30fb" datatype="html">\n        <source>NFS Protocol</source>\n        <target>Protocolo NFS</target>\n      </trans-unit>\n      <trans-unit id="2f534178c01ebf1307da2eaeef04bc6801ebc729" datatype="html">\n        <source>NFSv3</source>\n        <target>NFSv3</target>\n      </trans-unit>\n      <trans-unit id="f5043c0921e709935ab026bb3253ffe1f159fca1" datatype="html">\n        <source>NFSv4</source>\n        <target>NFSv4</target>\n      </trans-unit>\n      <trans-unit id="92488963d23095985a47c0d6e62304e11d333f19" datatype="html">\n        <source>NFS Tag</source>\n        <target>Etiqueta NFS</target>\n      </trans-unit>\n      <trans-unit id="aae93362720aea94623682996dd3fcd0f906f056" datatype="html">\n        <source>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </source>\n        <target>Alternative access for \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v3\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> mounts (it must not have a leading /).\n        </target>\n      </trans-unit>\n      <trans-unit id="45d6db77dcf1a3eeb921033abc7882e517a541cc" datatype="html">\n        <source>Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz).</source>\n        <target>Puede que los clientes no monten subdirectorios (es decir, si Etiqueta = foo, el cliente puede que no monte foo/baz).</target>\n      </trans-unit>\n      <trans-unit id="a1c7a8676b55e882a97c6a6fb205204f9c761afa" datatype="html">\n        <source>By using different Tag options, the same Path may be exported multiple times.</source>\n        <target>Al usar distintas opciones de Etiqueta, la misma Ruta se puede exportar varias veces.</target>\n      </trans-unit>\n      <trans-unit id="6d2c39708a32910f89701dd7e1cfb9ec1c195768" datatype="html">\n        <source>Pseudo</source>\n        <target>Pseudo</target>\n      </trans-unit>\n      <trans-unit id="1f8be2ae25947bec0b84c2338201580ea053f34e" datatype="html">\n        <source>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </source>\n        <target>The position that this \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>NFS v4\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> export occupies\n                in the \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>Pseudo FS\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> (it must be unique).\n        </target>\n      </trans-unit>\n      <trans-unit id="f3af55f7fd5b1d9e5a53e030c80116dc635bfb9f" datatype="html">\n        <source>By using different Pseudo options, the same Path may be exported multiple times.</source>\n        <target>Al usar distintas opciones de Pseudo, la misma Ruta se puede exportar varias veces.</target>\n      </trans-unit>\n      <trans-unit id="ddf98fcdeeb17643db020d54f42b5e56b5f9a52a" datatype="html">\n        <source>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</source>\n        <target>Pseudo needs to start with a \'/\' and can\'t contain any of the following: &gt;, &lt;, |, &amp;, ( or ).</target>\n      </trans-unit>\n      <trans-unit id="27eb35c4b4ac08781a7253a2ab40f8f7d957ba51" datatype="html">\n        <source>-- No access type available --</source>\n        <target>-- No hay ningún tipo de acceso disponible --</target>\n      </trans-unit>\n      <trans-unit id="509ce016c9110a54028dafd741f15ceacbe74b5a" datatype="html">\n        <source>-- Select the access type --</source>\n        <target>-- Seleccione el tipo de acceso --</target>\n      </trans-unit>\n      <trans-unit id="49850390a653cd05dc5843d74ef073a9122b54c9" datatype="html">\n        <source>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </source>\n        <target>The Object Gateway NFS backend has a number of\n              limitations which will seriously affect applications writing to\n              the share. Please consult the\n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/> documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for details before enabling write access.\n        </target>\n      </trans-unit>\n      <trans-unit id="4deda03573eaaff77e63f6a238a1f0ca7816950a" datatype="html">\n        <source>-- No squash available --</source>\n        <target>-- No hay ninguna reducción de privilegios disponible --</target>\n      </trans-unit>\n      <trans-unit id="a0e82a4da88e7fdf270444f838d45849676e9d4b" datatype="html">\n        <source>--Select what kind of user id squashing is performed --</source>\n        <target>-- Seleccione el tipo de reducción de privilegios de ID de usuario que se va a realizar --</target>\n      </trans-unit>\n      <trans-unit id="d01b7c3f7f06712c53d054cfbe4f53d446b038e8" datatype="html">\n        <source>Transport Protocol</source>\n        <target>Protocolo de transporte</target>\n      </trans-unit>\n      <trans-unit id="d2a6ad6e8bc315f07911722c05767ac79c136d99" datatype="html">\n        <source>UDP</source>\n        <target>UDP</target>\n      </trans-unit>\n      <trans-unit id="9c030f11e0aae9b24d2c048c57f29f590be621df" datatype="html">\n        <source>TCP</source>\n        <target>TCP</target>\n      </trans-unit>\n      <trans-unit id="734c9905951a774870497c5aaae8e3ee833b6196" datatype="html">\n        <source>CephFS</source>\n        <target>CephFS</target>\n      </trans-unit>\n      <trans-unit id="0eb15f32b2b92d7f3103ef3ff032621888a8dc32" datatype="html">\n        <source>Old password</source>\n        <target>Old password</target>\n      </trans-unit>\n      <trans-unit id="1cf42e491adc166a337a960eb84d03c0c3f677c8" datatype="html">\n        <source>The old and new passwords must be different.</source>\n        <target>The old and new passwords must be different.</target>\n      </trans-unit>\n      <trans-unit id="e70e209561583f360b1e9cefd2cbb1fe434b6229" datatype="html">\n        <source>New password</source>\n        <target>New password</target>\n      </trans-unit>\n      <trans-unit id="ede41f01c781b168a783cfcefc6fb67d48780d9b" datatype="html">\n        <source>Confirm new password</source>\n        <target>Confirm new password</target>\n      </trans-unit>\n      <trans-unit id="90163a3d3746819aef42e829f4446331232f3b66" datatype="html">\n        <source>Password confirmation doesn\'t match the new password.</source>\n        <target>Password confirmation doesn\'t match the new password.</target>\n      </trans-unit>\n      <trans-unit id="d06ae77f9ec46a4cdd49e7e76c73a411aaf2ee38" datatype="html">\n        <source>Please set a new password.</source>\n        <target>Please set a new password.</target>\n      </trans-unit>\n      <trans-unit id="8b5b3566e88438f51bd5f6caf6c090ed565ba5ed" datatype="html">\n        <source>You will be redirected to the login page afterwards.</source>\n        <target>You will be redirected to the login page afterwards.</target>\n      </trans-unit>\n      <trans-unit id="449dca3d3a93ead418b0541ea81b0dda7e6483c2" datatype="html">\n        <source>Welcome to Ceph!</source>\n        <target>¡Bienvenidos a Ceph!</target>\n        <note>The welcome message on the login page</note>\n      </trans-unit>\n      <trans-unit id="0070e83d11da39d6f4bb95065c2675db1610b419" datatype="html">\n        <source>Username is required</source>\n        <target>El nombre de usuario es obligatorio</target>\n      </trans-unit>\n      <trans-unit id="1e20f8b8a4706526c9024cc2f39d568345d100dc" datatype="html">\n        <source>Password is required</source>\n        <target>La contraseña es obligatoria</target>\n      </trans-unit>\n      <trans-unit id="6765b4c916060f6bc42d9bb69e80377dbcb5e4e9" datatype="html">\n        <source>Login</source>\n        <target>Entrada</target>\n      </trans-unit>\n      <trans-unit id="58fc1b5c79a75370eb52644fd83fb2e7096b6649" datatype="html">\n        <source>Sorry, the user does not exist in Ceph.</source>\n        <target>Lo sentimos. El usuario no existe en Ceph.</target>\n      </trans-unit>\n      <trans-unit id="d9deb94f78e7c41b35c6622b874f06657d7604c1" datatype="html">\n        <source>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </source>\n        <target>Return to \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Login Page\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>. You\'ll be logged out from the Identity Provider when you retry logging in.\n        </target>\n      </trans-unit>\n      <trans-unit id="471e78026c258073ba687478dc54c35d9041ea42" datatype="html">\n        <source>Forbidden</source>\n        <target>Prohibido</target>\n      </trans-unit>\n      <trans-unit id="02ea8ad57677e3c63f3d7814ca5e6c7b74e360b4" datatype="html">\n        <source>Sorry, you are not allowed to see what you were looking for.</source>\n        <target>Lo sentimos. No tiene permiso para ver lo que busca.</target>\n      </trans-unit>\n      <trans-unit id="2240b985f17293d84cc8532fe86994aa5f63667c" datatype="html">\n        <source>Sorry, we could not find what you were looking for.</source>\n        <target>Sorry, we could not find what you were looking for.</target>\n      </trans-unit>\n      <trans-unit id="ac54c18c1b520e948095c83a3a1025f02ce6dcc6" datatype="html">\n        <source>Neither hostname nor OSD ID given</source>\n        <target>Neither hostname nor OSD ID given</target>\n      </trans-unit>\n      <trans-unit id="4f635b3cb0600409a2ad44a5bd1863c699e6a01c" datatype="html">\n        <source>Failed to retrieve SMART data.</source>\n        <target>Failed to retrieve SMART data.</target>\n      </trans-unit>\n      <trans-unit id="d82a9af5b05e7cd17640f196f163771685ff8df6" datatype="html">\n        <source>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</source>\n        <target>The data received has the JSON format version 2.x and is currently incompatible with the dashboard.</target>\n      </trans-unit>\n      <trans-unit id="04f8a3c7e8ac610e6581960162cc15f55a16696a" datatype="html">\n        <source>No SMART data available.</source>\n        <target>No SMART data available.</target>\n      </trans-unit>\n      <trans-unit id="3a03d3c2e459f8f8fa7202c0fce465d6165f9e2b" datatype="html">\n        <source>passed</source>\n        <target>passed</target>\n      </trans-unit>\n      <trans-unit id="a185c9b97513b3882604ea9bab60edbfac945c15" datatype="html">\n        <source>SMART overall-health self-assessment test result</source>\n        <target>SMART overall-health self-assessment test result</target>\n      </trans-unit>\n      <trans-unit id="41435d5a5692c8e412c74deaee95d99dbd3617e1" datatype="html">\n        <source>failed</source>\n        <target>failed</target>\n      </trans-unit>\n      <trans-unit id="ddd5dd6d930030096ea617f62c82b648a0dd9484" datatype="html">\n        <source>Device Information</source>\n        <target>Device Information</target>\n      </trans-unit>\n      <trans-unit id="380295f37caea93701d071485a38ef0bdba57133" datatype="html">\n        <source>No SMART data available for this device.</source>\n        <target>No SMART data available for this device.</target>\n      </trans-unit>\n      <trans-unit id="20cb12827cbe559a7b1da6fdae96041b3b5c3c55" datatype="html">\n        <source>SMART</source>\n        <target>SMART</target>\n      </trans-unit>\n      <trans-unit id="5758c3f16f8749f0f4e2a787f02e8b4da246102f" datatype="html">\n        <source>SMART data is loading.</source>\n        <target>SMART data is loading.</target>\n      </trans-unit>\n      <trans-unit id="a949d7e577902d0e5dc5d0971bb0170a21be7728" datatype="html">\n        <source>[object Object]</source>\n        <target>[object Object]</target>\n      </trans-unit>\n      <trans-unit id="ff92fbdec9fdd5054493eeda0d7ee8b450f83e72" datatype="html">\n        <source>RBD Configuration</source>\n        <target>Configuración de RBD</target>\n      </trans-unit>\n      <trans-unit id="b62d9efc8eb3b589904f6cb96a0406bbda55673a" datatype="html">\n        <source>Remove the local configuration value. The parent configuration value will be inherited and used instead.</source>\n        <target>Elimina el valor de configuración local. Se heredará y usará en su lugar el valor de configuración padre.</target>\n      </trans-unit>\n      <trans-unit id="963488a1010d46067b238c4ae917fab3907c0a3a" datatype="html">\n        <source>The mininum value is 0</source>\n        <target>El valor mínimo es 0</target>\n      </trans-unit>\n      <trans-unit id="1d8a7c8aea58294a3c57c23af0468ddf0ba0c9c7" datatype="html">\n        <source>Pools List</source>\n        <target>Lista de repositorios</target>\n      </trans-unit>\n      <trans-unit id="490e15ecc922965b6d8194754c87c5583aa071f3" datatype="html">\n        <source>The name can only consist of alphanumeric characters, dashes and underscores.</source>\n        <target>El nombre solo puede tener caracteres alfanuméricos, guiones y guiones bajos.</target>\n      </trans-unit>\n      <trans-unit id="9edc2b494e660618af3e5225f68d40b7ca67629c" datatype="html">\n        <source>The chosen erasure code profile name is already in use.</source>\n        <target>El nombre del perfil de código de borrado que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="35a4206db3105ed03e0dd799e1642b75b78123e8" datatype="html">\n        <source>Root</source>\n        <target>Root</target>\n      </trans-unit>\n      <trans-unit id="cf425784c7073c7e7f7c1bb90c2c19db7e751db2" datatype="html">\n        <source>Failure domain type</source>\n        <target>Failure domain type</target>\n      </trans-unit>\n      <trans-unit id="72396a9565cf644d1fe1b21b790c4243ee270986" datatype="html">\n        <source>Device class</source>\n        <target>Device class</target>\n      </trans-unit>\n      <trans-unit id="72d80e0c07bfea1b693a33ef2245007de92a6780" datatype="html">\n        <source>Let Ceph decide</source>\n        <target>Let Ceph decide</target>\n      </trans-unit>\n      <trans-unit id="ef9ff0e6227947b48dfab4ac39ade04af758913b" datatype="html">\n        <source>Plugin</source>\n        <target>Complemento</target>\n      </trans-unit>\n      <trans-unit id="dd69b31bce8f630eac1d4762b0bbcf72ce19d193" datatype="html">\n        <source>Data chunks (k)</source>\n        <target>Porciones de datos (k)</target>\n      </trans-unit>\n      <trans-unit id="b0d26a6172d32cb81218fe2103c54a818cbc1189" datatype="html">\n        <source>Must be equal to or greater than 2.</source>\n        <target>Debe ser igual o mayor que 2.</target>\n      </trans-unit>\n      <trans-unit id="dab3a299ead121169b8e08ed618c3b6a2f66691b" datatype="html">\n        <source>Coding chunks (m)</source>\n        <target>Porciones de código (m)</target>\n      </trans-unit>\n      <trans-unit id="1e2773e5bd4948193f18f2361d663ecc3988c656" datatype="html">\n        <source>Must be equal to or greater than 1.</source>\n        <target>Debe ser igual o mayor que 1.</target>\n      </trans-unit>\n      <trans-unit id="6cde4c945a49a260c0a47bcc7cd956846930a5f7" datatype="html">\n        <source>Durability estimator (c)</source>\n        <target>Estimador de durabilidad (c)</target>\n      </trans-unit>\n      <trans-unit id="af668c2a095a979ea2b4e43cd82c2120ab56c21c" datatype="html">\n        <source>Locality (l)</source>\n        <target>Localización (l)</target>\n      </trans-unit>\n      <trans-unit id="d455a110bf6d2235e314e295ce1dfeee93d3dff2" datatype="html">\n        <source>Crush failure domain</source>\n        <target>Dominio de error de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="b74a495f041f7dd102eee5c0bbc9e03083b538ae" datatype="html">\n        <source>Crush Locality</source>\n        <target>Localización de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="a2f14a73f7a6e94479f67423cc51102da8d6f524" datatype="html">\n        <source>None</source>\n        <target>Ninguna</target>\n      </trans-unit>\n      <trans-unit id="2981733b912b693a9dd9d915d6d34f4692cc874a" datatype="html">\n        <source>Technique</source>\n        <target>Técnica</target>\n      </trans-unit>\n      <trans-unit id="e0098b6e47b04ec817361f384ce81d454ba5c0bb" datatype="html">\n        <source>Packetsize</source>\n        <target>Tamaño del paquete</target>\n      </trans-unit>\n      <trans-unit id="c0252cd81ca54d0a2f69ec9ccf4248e73df5aa4a" datatype="html">\n        <source>Crush root</source>\n        <target>Raíz de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="1548d5c76f0406ddd1ba3c557e1e6db22e95b340" datatype="html">\n        <source>Crush device class</source>\n        <target>Clase de dispositivo de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="5e85feb6f9f0334366e46ee09ca6b8df52397432" datatype="html">\n        <source>any</source>\n        <target>cualquiera</target>\n      </trans-unit>\n      <trans-unit id="03d84645f6e019c5a43909bbf2ea1696ee88332c" datatype="html">\n        <source>Directory</source>\n        <target>Directorio</target>\n      </trans-unit>\n      <trans-unit id="2fecea01ce1d44114ee45144eff6d47a5016a74f" datatype="html">\n        <source>Name...</source>\n        <target>Nombre...</target>\n      </trans-unit>\n      <trans-unit id="16e113230b6b0d3165e076300880542bac7c8138" datatype="html">\n        <source>The chosen Ceph pool name is already in use.</source>\n        <target>El nombre del repositorio de Ceph que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="c75b132bef7b29fa5171768303c4b96e34ccaf68" datatype="html">\n        <source>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</source>\n        <target>It\'s not possible to create an RBD pool with \'/\' in the name.\n              Please change the name or remove \'rbd\' from the applications list.</target>\n      </trans-unit>\n      <trans-unit id="171dc6d5c6bc4615d99778b0088cae80fd00bd10" datatype="html">\n        <source>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</source>\n        <target>Pool name can only contain letters, numbers, \'.\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="b85c657469e5ec8231c3de99b22f437bc01ffde5" datatype="html">\n        <source>Pool type</source>\n        <target>Tipo de repositorio</target>\n      </trans-unit>\n      <trans-unit id="526c5443254c3b126eedb264840ffe827727bfd3" datatype="html">\n        <source>-- Select a pool type --</source>\n        <target>-- Seleccione un tipo de repositorio --</target>\n      </trans-unit>\n      <trans-unit id="6abfbe47b630929d93c7343dc154599c2e59330a" datatype="html">\n        <source>PG Autoscale</source>\n        <target>PG Autoscale</target>\n      </trans-unit>\n      <trans-unit id="0aa21053410a94aa61d16985a4e95fd65523430d" datatype="html">\n        <source>Placement groups</source>\n        <target>Grupos de colocación</target>\n      </trans-unit>\n      <trans-unit id="6301f1391d726f8f450bb358058534db19541ca9" datatype="html">\n        <source>At least one placement group is needed!</source>\n        <target>Se necesita al menos un grupo de colocación.</target>\n      </trans-unit>\n      <trans-unit id="ba9469a1ce6ed36e039c1f67247c8c81a5c71449" datatype="html">\n        <source>Your cluster can\'t handle this many PGs. Please recalculate the PG amount needed.</source>\n        <target>El clúster no puede gestionar tantos grupos de colocación. Vuelva a calcular la cantidad que necesita.</target>\n      </trans-unit>\n      <trans-unit id="80ac68cd883369dac20688bc32b4cb33291b5e50" datatype="html">\n        <source>Calculation help</source>\n        <target>Ayuda para el cálculo</target>\n      </trans-unit>\n      <trans-unit id="fccbd60493df26705d957ed6c02a3c447894678f" datatype="html">\n        <source>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</source>\n        <target>The current PGs settings were calculated for you, you\n                should make sure the values suit your needs before submit.</target>\n      </trans-unit>\n      <trans-unit id="a43b2695131b48b76cebba676aba98a2bee17515" datatype="html">\n        <source>Replicated size</source>\n        <target>Tamaño replicado</target>\n      </trans-unit>\n      <trans-unit id="7bff144a4c4dc63b0e18fff2617d61a7ebdf2b6c" datatype="html">\n        <source>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </source>\n        <target>Minimum: \n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="1a9c54b41f6d58a74e5d0aa3429ed0c87a482551" datatype="html">\n        <source>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </source>\n        <target>Maximum: \n          <x id="INTERPOLATION" equiv-text="{{ getMaxSize() }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ab647b95bd2347ae6f4605576de5e0269fb893a" datatype="html">\n        <source>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </source>\n        <target>The size specified is out of range. A value from\n          <x id="INTERPOLATION" equiv-text="{{ getMinSize() }}"/> to \n          <x id="INTERPOLATION_1" equiv-text="{{ getMaxSize() }}"/> is valid.\n        </target>\n      </trans-unit>\n      <trans-unit id="920617c6a1a4805e53bcb5af6a9c76f8387e89c6" datatype="html">\n        <source>Flags</source>\n        <target>Indicadores</target>\n      </trans-unit>\n      <trans-unit id="1c870fb00256b8a5b9cb9cd1a124e6390b9bc639" datatype="html">\n        <source>EC Overwrites</source>\n        <target>Sustituciones de códigos de borrado</target>\n      </trans-unit>\n      <trans-unit id="f1abafaeb40ce52355ddcc24686e3cd17b64e08a" datatype="html">\n        <source>Applications</source>\n        <target>Aplicaciones</target>\n      </trans-unit>\n      <trans-unit id="fb9308b82fc183f710df60909f49cfc73aa5e076" datatype="html">\n        <source>CRUSH</source>\n        <target>CRUSH</target>\n      </trans-unit>\n      <trans-unit id="9de7dde00e2139cc4bd03b1837afbe72ad15a1ff" datatype="html">\n        <source>Erasure code profile</source>\n        <target>Perfil de código de borrado</target>\n      </trans-unit>\n      <trans-unit id="39b4620e6bd444e0a57a0a5c03fa8c96d7fe5235" datatype="html">\n        <source>-- No erasure code profile available --</source>\n        <target>-- No hay ningún perfil de código de borrado disponible --</target>\n      </trans-unit>\n      <trans-unit id="498561757390d5528b263ce450d5f38efb00266d" datatype="html">\n        <source>-- Select an erasure code profile --</source>\n        <target>-- Seleccione un perfil de código de borrado --</target>\n      </trans-unit>\n      <trans-unit id="33150f22ce5348aa6c499bd092c3f4f3695d62cc" datatype="html">\n        <source>Crush ruleset</source>\n        <target>Conjunto de reglas de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="c69b0bcd4698aa845d32c4c4ad488492552cb469" datatype="html">\n        <source>A new crush ruleset will be implicitly created.</source>\n        <target>A new crush ruleset will be implicitly created.</target>\n      </trans-unit>\n      <trans-unit id="896e9987db5e9bb279e6deed5d2dff28c242ef66" datatype="html">\n        <source>There are no rules.</source>\n        <target>There are no rules.</target>\n      </trans-unit>\n      <trans-unit id="73a6b31116b3cc322af951daa0bafdc169e6c42e" datatype="html">\n        <source>-- Select a crush rule --</source>\n        <target>-- Seleccione una regla de CRUSH --</target>\n      </trans-unit>\n      <trans-unit id="ea91d648f92002bc9f96d9b26b735c83ca0b53c6" datatype="html">\n        <source>This rule can\'t be deleted as it is in use.</source>\n        <target>This rule can\'t be deleted as it is in use.</target>\n      </trans-unit>\n      <trans-unit id="92da80699921e89fb19372e25b8d0f3b9fa427fc" datatype="html">\n        <source>Crush rule</source>\n        <target>Regla de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="5489e9f96835f469f6f728a00d8efa88ea5bc940" datatype="html">\n        <source>Crush steps</source>\n        <target>Pasos de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="fc5f5496a9e50fe69e1a09784f28d94944108294" datatype="html">\n        <source>Rule is not in use.</source>\n        <target>Rule is not in use.</target>\n      </trans-unit>\n      <trans-unit id="023d6f718770d2ea4ab8cabe26b0ec27ef967ec2" datatype="html">\n        <source>Used by pools</source>\n        <target>Used by pools</target>\n      </trans-unit>\n      <trans-unit id="104a0e6900d1d1b0c8cf9e5947e36edb352583fc" datatype="html">\n        <source>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</source>\n        <target>The rule can\'t be used in the current cluster as it has\n                  too few OSDs to meet the minimum required OSD by this rule.</target>\n      </trans-unit>\n      <trans-unit id="2208d63d5940ce656006a220102b1eb2b5e553da" datatype="html">\n        <source>Compression</source>\n        <target>Compresión</target>\n      </trans-unit>\n      <trans-unit id="37e10df2d9c0c25ef04ac112c9c9a7723e8efae0" datatype="html">\n        <source>Mode</source>\n        <target>Modo</target>\n      </trans-unit>\n      <trans-unit id="6c6f25c47da62ec597c6057a36ddfc3209811ec5" datatype="html">\n        <source>Algorithm</source>\n        <target>Algoritmo</target>\n      </trans-unit>\n      <trans-unit id="4903231d42089325a28892c0fde1aed46b733ae6" datatype="html">\n        <source>-- No erasure compression algorithm available --</source>\n        <target>-- No hay ningún algoritmo de compresión de borrado disponible --</target>\n      </trans-unit>\n      <trans-unit id="5d68ddb254275f8f44221e9ad6d8ceeb59ca46a6" datatype="html">\n        <source>Minimum blob size</source>\n        <target>Tamaño de Blob mínimo</target>\n      </trans-unit>\n      <trans-unit id="fb2f176df80647137cbb02bbeb29e5dec707a400" datatype="html">\n        <source>e.g., 128KiB</source>\n        <target>p. ej. 128 KiB</target>\n      </trans-unit>\n      <trans-unit id="1b7f6e53a4521c6eb3ced4c007fdd4cf80bb7707" datatype="html">\n        <source>Value should be greater than 0</source>\n        <target>El valor debe ser mayor que 0</target>\n      </trans-unit>\n      <trans-unit id="8db98ab14b4e207ec763dfdefbc2dae367aab1cc" datatype="html">\n        <source>Value should be less than the maximum blob size</source>\n        <target>Value should be less than the maximum blob size</target>\n      </trans-unit>\n      <trans-unit id="151efb127a9a4dd25259a0b2055442318a141f5b" datatype="html">\n        <source>Maximum blob size</source>\n        <target>Tamaño de Blob máximo</target>\n      </trans-unit>\n      <trans-unit id="0c656f0e346bbadf46eb1a5d20d0307a3bd20ba8" datatype="html">\n        <source>e.g., 512KiB</source>\n        <target>p. ej. 512 KiB</target>\n      </trans-unit>\n      <trans-unit id="0a65a24eee8a026f3b1113fe9e157e9a0dd69486" datatype="html">\n        <source>Value should be greater than the minimum blob size</source>\n        <target>El valor debe ser mayor que el tamaño de Blob mínimo</target>\n      </trans-unit>\n      <trans-unit id="261ba09c4a59de83f48f52a23fd328da37e61ff4" datatype="html">\n        <source>Ratio</source>\n        <target>Relación</target>\n      </trans-unit>\n      <trans-unit id="c1430457a9c3c66366e51d76bf10396014c576be" datatype="html">\n        <source>Compression ratio</source>\n        <target>Relación de compresión</target>\n      </trans-unit>\n      <trans-unit id="ae5ce6de352cde949998fb10754459c3a4eb183b" datatype="html">\n        <source>Value should be between 0.0 and 1.0</source>\n        <target>El valor debe estar entre 0,0 y 1,0</target>\n      </trans-unit>\n      <trans-unit id="8bb8293aa8161433778762ae025ffd5e7c85795e" datatype="html">\n        <source>Quotas</source>\n        <target>Quotas</target>\n      </trans-unit>\n      <trans-unit id="d99b34162c9c34f10d0ccd8dbae83d8569c2db77" datatype="html">\n        <source>Max bytes</source>\n        <target>Max bytes</target>\n      </trans-unit>\n      <trans-unit id="a1d14a18879c62f3f4ed705318b7164a1160e249" datatype="html">\n        <source>Leave it blank or specify 0 to disable this quota.</source>\n        <target>Leave it blank or specify 0 to disable this quota.</target>\n      </trans-unit>\n      <trans-unit id="7565b131562ff6c5f769fdbd239a772154abdd97" datatype="html">\n        <source>A valid quota should be greater than 0.</source>\n        <target>A valid quota should be greater than 0.</target>\n      </trans-unit>\n      <trans-unit id="f0016bd458baa88284a658ce9eeda42d8ad88d2c" datatype="html">\n        <source>e.g., 10GiB</source>\n        <target>ej.: 10 GiB</target>\n      </trans-unit>\n      <trans-unit id="b8bf35b66f09a301eef92ffc3cb2fd259df67ce9" datatype="html">\n        <source>Max objects</source>\n        <target>Max objects</target>\n      </trans-unit>\n      <trans-unit id="95f348167622d832c5ae532b6944635c8e2ae5cb" datatype="html">\n        <source>The value should be greater or equal to 0</source>\n        <target>The value should be greater or equal to 0</target>\n      </trans-unit>\n      <trans-unit id="4f8b2bb476981727ab34ed40fde1218361f92c45" datatype="html">\n        <source>Details</source>\n        <target>Detalles</target>\n      </trans-unit>\n      <trans-unit id="fbbaf5cb02ed419e79a27072478f716a4666a99d" datatype="html">\n        <source>Performance Details</source>\n        <target>Detalles de rendimiento</target>\n      </trans-unit>\n      <trans-unit id="3938a411d76796f8ae73b72ea4c77661207453bd" datatype="html">\n        <source>Cache Tiers Details</source>\n        <target>Detalles de niveles de caché</target>\n      </trans-unit>\n      <trans-unit id="ecbc084370a732fc3cde1966a60af78d71424ab4" datatype="html">\n        <source>Create Bootstrap Token</source>\n        <target>Create Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="603e9cc3ef2aab57f2b0a00e465b23b9cabefd9c" datatype="html">\n        <source>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To create a bootstrap token which can be imported\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Generate\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="660f97cd3188f8a04bd03b79e703fec72c6df04c" datatype="html">\n        <source>Site Name</source>\n        <target>Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c2a1dc72cffaf7ab3dc5599bf77b0a7fcad2b20" datatype="html">\n        <source>At least one pool is required.</source>\n        <target>At least one pool is required.</target>\n      </trans-unit>\n      <trans-unit id="1b258b258b4cc475ceb2871305b61756b0134f4a" datatype="html">\n        <source>Generate</source>\n        <target>Generate</target>\n      </trans-unit>\n      <trans-unit id="1edc1fc6cfbbb22353050ad6788508b3ed584f53" datatype="html">\n        <source>Token</source>\n        <target>Token</target>\n      </trans-unit>\n      <trans-unit id="ff785f5596aef34a93b9b4d1023e95c62eef5740" datatype="html">\n        <source>Generated token...</source>\n        <target>Generated token...</target>\n      </trans-unit>\n      <trans-unit id="5467a6bb0e7fade6def7499400d5e2a7d8d3da20" datatype="html">\n        <source>Import Bootstrap Token</source>\n        <target>Import Bootstrap Token</target>\n      </trans-unit>\n      <trans-unit id="9bb7aee0dec5164f45c0aa2f35f2fb2149d2c1d2" datatype="html">\n        <source>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To import a bootstrap token which was created\n          by a peer site cluster, provide the local site\'s name, select\n          which pools will have mirroring enabled, provide the generated\n          token, and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Import\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="9200e09686136a1d42adfb89c12fbfef2deea125" datatype="html">\n        <source>Direction</source>\n        <target>Direction</target>\n      </trans-unit>\n      <trans-unit id="9761484679958da8d12841a4efa5964d33fae575" datatype="html">\n        <source>The token is invalid.</source>\n        <target>The token is invalid.</target>\n      </trans-unit>\n      <trans-unit id="a059709f71aa4c0ac219e160e78a738682ca6a36" datatype="html">\n        <source>Import</source>\n        <target>Import</target>\n      </trans-unit>\n      <trans-unit id="b87bd96249f8afc23f5301cddb57b1464a98e71a" datatype="html">\n        <source>Edit site name</source>\n        <target>Edit site name</target>\n      </trans-unit>\n      <trans-unit id="cfff72c667274c12eb1ff71eadc25871c10c42dc" datatype="html">\n        <source>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>Edit the site name and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="40b7acea5b43f45e0bbd1efeba5200af4687981d" datatype="html">\n        <source>Site Name:</source>\n        <target>Site Name:</target>\n      </trans-unit>\n      <trans-unit id="f0b5d789d42c0e69348e5fe0037fcbf5b5fbbdcc" datatype="html">\n        <source>Move an image to trash</source>\n        <target>Mover una imagen a la papelera</target>\n      </trans-unit>\n      <trans-unit id="7ad22c1d4aab3b8946603cea62de266d5129ca10" datatype="html">\n        <source>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</source>\n        <target>This image contains snapshot(s), which will prevent it\n            from being removed after moved to trash.</target>\n      </trans-unit>\n      <trans-unit id="b4b3ced4f8aad4c446f348b14c3d94be2e2c350c" datatype="html">\n        <source>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </source>\n        <target>To move \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ imageSpecStr }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> to trash,\n          click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Move Image\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>. Optionally, you can pick an expiration date.\n        </target>\n      </trans-unit>\n      <trans-unit id="88f27d390844aad53b4240360e928156c5f0d326" datatype="html">\n        <source>Protection expires at</source>\n        <target>La protección caduca a las</target>\n      </trans-unit>\n      <trans-unit id="da166e9a0d27322f6ba8916d71ecc0f9905bb4b1" datatype="html">\n        <source>NOT PROTECTED</source>\n        <target>SIN PROTECCIÓN</target>\n      </trans-unit>\n      <trans-unit id="a1506e5f2ca22cad14502ec7a20fb6113ace145d" datatype="html">\n        <source>Wrong date format. Please use "YYYY-MM-DD HH:mm:ss".</source>\n        <target>Formato de fecha erróneo. Use el formato "AAAA-MM-DD HH:mm:ss".</target>\n      </trans-unit>\n      <trans-unit id="aa7ea0bb7495281e0b3258467ac7d90a1e44a1a1" datatype="html">\n        <source>Protection has already expired. Please pick a future date or leave it empty.</source>\n        <target>La protección ya ha caducado. Seleccione una fecha del futuro o deje el campo vacío.</target>\n      </trans-unit>\n      <trans-unit id="536b3205c0c0d4d21685ec06feccfcf2fe14deb1" datatype="html">\n        <source>Move Image</source>\n        <target>Mover imagen</target>\n      </trans-unit>\n      <trans-unit id="c9f1026c1235f4d76ace47449e806efd181ab332" datatype="html">\n        <source>Deleting this image will also delete all its snapshots.</source>\n        <target>Deleting this image will also delete all its snapshots.</target>\n      </trans-unit>\n      <trans-unit id="55f864597e84d9bf88769e1fbfda1d64452430c9" datatype="html">\n        <source>The following snapshots are currently protected and will be removed:</source>\n        <target>The following snapshots are currently protected and will be removed:</target>\n      </trans-unit>\n      <trans-unit id="8a9910cd114c1deb9af74f6f99b4173403965bf2" datatype="html">\n        <source>Gateways</source>\n        <target>Gateways</target>\n      </trans-unit>\n      <trans-unit id="8835b9e49a3348b0a2f2162c21118af1f4bee45a" datatype="html">\n        <source>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </source>\n        <target>Must be greater than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'min\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="bbddac59563c8c126e3fe28691e4e247614fcbd1" datatype="html">\n        <source>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </source>\n        <target>Must be less than or equal to \n          <x id="INTERPOLATION" equiv-text="{{ limits[\'max\'] }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="e95ae009d0bdb45fcc656e8b65248cf7396080d5" datatype="html">\n        <source>Overview</source>\n        <target>Resumen</target>\n      </trans-unit>\n      <trans-unit id="bbd2045d5c37e4bb39a3c0fb62ea1ddf70a12838" datatype="html">\n        <source>Targets</source>\n        <target>Destinos</target>\n      </trans-unit>\n      <trans-unit id="6803e31b7395d94934e091a49a9524026b59b018" datatype="html">\n        <source>Discovery Authentication</source>\n        <target>Autenticación de descubrimiento</target>\n      </trans-unit>\n      <trans-unit id="e08a77594f3d89311cdf6da5090044270909c194" datatype="html">\n        <source>User</source>\n        <target>Usuario</target>\n      </trans-unit>\n      <trans-unit id="0214f773f8e394f50f953f39962e352d7863e959" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n              can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Los nombres de usuario deben tener entre 8 y 64 caracteres y\n                        solo pueden incluir letras y estos caracteres: ".", "@", "-", "_" o ":".</target>\n      </trans-unit>\n      <trans-unit id="c32ef07f8803a223a83ed17024b38e8d82292407" datatype="html">\n        <source>Password</source>\n        <target>Contraseña</target>\n      </trans-unit>\n      <trans-unit id="6682d1c00263bee204583a5d589b308b6be88b0f" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n              and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="ff40391de7a1944ea95091e4045cc34c4979b736" datatype="html">\n        <source>Mutual User</source>\n        <target>Usuario mutuo</target>\n      </trans-unit>\n      <trans-unit id="0cf73dbebe99b737c4d288788182fc356e3c93d3" datatype="html">\n        <source>Mutual Password</source>\n        <target>Contraseña mutua</target>\n      </trans-unit>\n      <trans-unit id="8800276925157c666b103c36ff7fe8ffe11980b4" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n              can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="53a583cd5f15059cc958b7d547f72cc78f68e123" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n    on how to configure and enable the iSCSI Targets management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="3b301d0044f62c92af0da53d7aaca52a436a547d" datatype="html">\n        <source>Available information:</source>\n        <target>Información disponible:</target>\n      </trans-unit>\n      <trans-unit id="332227f088a4877b3c11f5fb3ae8bc812c470fae" datatype="html">\n        <source>iSCSI Targets not available</source>\n        <target>Destinos iSCSI no disponibles</target>\n      </trans-unit>\n      <trans-unit id="8414a5cb9d71cc1b21b10e4a9d1f2dad558f3361" datatype="html">\n        <source>Discovery authentication</source>\n        <target>Discovery authentication</target>\n      </trans-unit>\n      <trans-unit id="0f6e8f6094b180eaf1f11bc0ffe383f1cdcd059e" datatype="html">\n        <source>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </source>\n        <target>Only available for RBD images with \n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>fast-diff\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/> enabled\n        </target>\n      </trans-unit>\n      <trans-unit id="e70fcca5a99575cffef3ff8cbd5e69f06ffd0f1c" datatype="html">\n        <source>Pool</source>\n        <target>Repositorio</target>\n      </trans-unit>\n      <trans-unit id="03cc5b14b0a20d075e9009ff021f4f1660ba348a" datatype="html">\n        <source>Data Pool</source>\n        <target>Repositorio de datos</target>\n      </trans-unit>\n      <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">\n        <source>Created</source>\n        <target>Creados</target>\n      </trans-unit>\n      <trans-unit id="7faaaa08f56427999f3be41df1093ce4089bbd75" datatype="html">\n        <source>Size</source>\n        <target>Tamaño</target>\n      </trans-unit>\n      <trans-unit id="afdb601c16162f2c798b16a2920955f1cc6a20aa" datatype="html">\n        <source>Objects</source>\n        <target>Objetos</target>\n      </trans-unit>\n      <trans-unit id="ceac8e132384322ec778ba760875a6c6897d3e42" datatype="html">\n        <source>Object size</source>\n        <target>Tamaño del objeto</target>\n      </trans-unit>\n      <trans-unit id="0a65771c9a73b9aa609d592fc96a64801a8f40bd" datatype="html">\n        <source>Provisioned</source>\n        <target>Aprovisionados</target>\n      </trans-unit>\n      <trans-unit id="84a36cb75660b736773fe36ffa3d54f0f0fe363e" datatype="html">\n        <source>N/A</source>\n        <target>N/D</target>\n      </trans-unit>\n      <trans-unit id="e5c009342a4e8381f64341d0bb61c2e4685f5a4b" datatype="html">\n        <source>Total provisioned</source>\n        <target>Total aprovisionado</target>\n      </trans-unit>\n      <trans-unit id="7f6bf8a43ae415f527ac961ea62471b983aaa97b" datatype="html">\n        <source>Striping unit</source>\n        <target>Unidad de repartición</target>\n      </trans-unit>\n      <trans-unit id="db710e8a8f011923f2d15d713fbae49c38b02b26" datatype="html">\n        <source>Striping count</source>\n        <target>Recuento de repartición</target>\n      </trans-unit>\n      <trans-unit id="3a4c2a9e76634ff14a60d52a718296f722d47c67" datatype="html">\n        <source>Parent</source>\n        <target>Padre</target>\n      </trans-unit>\n      <trans-unit id="6a209e68d78ffc2cc9c53d2e76158624efab71ad" datatype="html">\n        <source>Block name prefix</source>\n        <target>Prefijo de nombre de bloque</target>\n      </trans-unit>\n      <trans-unit id="5704ec2049d007c5f5fb495a5d8b607e68d58081" datatype="html">\n        <source>Order</source>\n        <target>Orden</target>\n      </trans-unit>\n      <trans-unit id="f21b1d17b6c5042bb5805516eee37fde33739dd8" datatype="html">\n        <source>Snapshots</source>\n        <target>Instantáneas</target>\n      </trans-unit>\n      <trans-unit id="a5f9ba9bb9faa8284bcadb1cdbc6aaf969e9c4bb" datatype="html">\n        <source>Image</source>\n        <target>Imagen</target>\n      </trans-unit>\n      <trans-unit id="58e58f1a8786da9031a05e6770c5dafce82badf5" datatype="html">\n        <source>This setting overrides the global value</source>\n        <target>Este ajuste sustituye al valor global</target>\n      </trans-unit>\n      <trans-unit id="5decb3917d46a9ac6e5813699801becb7c3c1455" datatype="html">\n        <source>Global</source>\n        <target>Global</target>\n      </trans-unit>\n      <trans-unit id="36b46714164964c6258b08ed0a25f57d8a950f92" datatype="html">\n        <source>This is the global value. No value for this option has been set for this image.</source>\n        <target>Este es el valor global. No se ha definido ningún valor para esta opción para esta imagen.</target>\n      </trans-unit>\n      <trans-unit id="6547c9c4d5f62942ac4b1fe459cf9a03d4dbf5a0" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ action | titlecase }}"/> from\n        </target>\n      </trans-unit>\n      <trans-unit id="0e9ecf29a4fa5b057bd8052e0d801b3fde6a30bf" datatype="html">\n        <source>\'/\' and \'@\' are not allowed.</source>\n        <target>No se permiten los caracteres "/" ni "@".</target>\n      </trans-unit>\n      <trans-unit id="b99417c4dd46286ffd37c8d2e987c8b512ec7052" datatype="html">\n        <source>-- No rbd pools available --</source>\n        <target>-- No hay ningún repositorio RBD disponible --</target>\n      </trans-unit>\n      <trans-unit id="ef83ec9c304a89d45650e580dcdc2978c37b3a83" datatype="html">\n        <source>-- Select a pool --</source>\n        <target>-- Seleccione un repositorio --</target>\n      </trans-unit>\n      <trans-unit id="d649904466254d13df1fbf2d255f0bbc6553d213" datatype="html">\n        <source>-- No namespaces available --</source>\n        <target>-- No namespaces available --</target>\n      </trans-unit>\n      <trans-unit id="e22d7bb4d2d561e0832ee0b9a3da2468a080c4f0" datatype="html">\n        <source>-- Select a namespace --</source>\n        <target>-- Select a namespace --</target>\n      </trans-unit>\n      <trans-unit id="49449943d8cbf59d8c401c8bd2e76f92e207cc5f" datatype="html">\n        <source>Use a dedicated data pool</source>\n        <target>Usar un repositorio dedicado para datos</target>\n      </trans-unit>\n      <trans-unit id="870aee0dd31a9643bf62007beb8f1ae1deb34d42" datatype="html">\n        <source>Data pool</source>\n        <target>Repositorio de datos</target>\n      </trans-unit>\n      <trans-unit id="3792ca829d9b9f687e1f5d7733d30e9bb0bfec47" datatype="html">\n        <source>Dedicated pool that stores the object-data of the RBD.</source>\n        <target>Repositorio dedicado para almacenar los datos de objeto de RBD.</target>\n      </trans-unit>\n      <trans-unit id="0a88bbee20570aaf9615332fb27020627044874d" datatype="html">\n        <source>You have to increase the size.</source>\n        <target>Debe aumentar el tamaño.</target>\n      </trans-unit>\n      <trans-unit id="bc2e854e111ecf2bd7db170da5e3c2ed08181d88" datatype="html">\n        <source>Advanced</source>\n        <target>Avanzado</target>\n      </trans-unit>\n      <trans-unit id="3562a3778695a5f9c0445660e35301f0a39aaf73" datatype="html">\n        <source>Striping</source>\n        <target>Repartición</target>\n      </trans-unit>\n      <trans-unit id="ef3c3f3b5f562a5cdbe0ee2874287db1534b5958" datatype="html">\n        <source>Stripe unit</source>\n        <target>Unidad de repartición</target>\n      </trans-unit>\n      <trans-unit id="84471be1049006edecbcaef1a32ae0893c229c50" datatype="html">\n        <source>-- Select stripe unit --</source>\n        <target>-- Seleccione la unidad de repartición --</target>\n      </trans-unit>\n      <trans-unit id="8d32c5c54c8581c774a7f467fbd4e329b15a74fa" datatype="html">\n        <source>This field is required because stripe count is defined!</source>\n        <target>Este campo es obligatorio porque se ha definido el recuento de repartición.</target>\n      </trans-unit>\n      <trans-unit id="6bbf9040be7c5491d4a03f2185708f43a6582a3b" datatype="html">\n        <source>Stripe unit is greater than object size.</source>\n        <target>La unidad de repartición es mayor que el tamaño del objeto.</target>\n      </trans-unit>\n      <trans-unit id="a682f49f9b761591661276d7c6f550e641a130a4" datatype="html">\n        <source>Stripe count</source>\n        <target>Recuento de repartición</target>\n      </trans-unit>\n      <trans-unit id="baa74031990c5370008ba622d0a250f0929097f4" datatype="html">\n        <source>This field is required because stripe unit is defined!</source>\n        <target>Este campo es obligatorio porque se ha definido la unidad de repartición.</target>\n      </trans-unit>\n      <trans-unit id="cd2ada6d5ecbd5cbf89eae0a1f5326efedac0dbc" datatype="html">\n        <source>Stripe count must be greater than 0.</source>\n        <target>El recuento de repartición debe ser mayor que 0.</target>\n      </trans-unit>\n      <trans-unit id="2c07d24bb422aa8e5e568df1c5709083f0a9c8f1" datatype="html">\n        <source>Create Namespace</source>\n        <target>Create Namespace</target>\n      </trans-unit>\n      <trans-unit id="0cca6c0485f96d3a9610d0339cb1275a5f2c3f46" datatype="html">\n        <source>Namespace already exists.</source>\n        <target>Namespace already exists.</target>\n      </trans-unit>\n      <trans-unit id="5c5331983af566d4ac6a1024d15a3511786a4aa6" datatype="html">\n        <source>You are about to rollback</source>\n        <target>Se dispone a revertir</target>\n      </trans-unit>\n      <trans-unit id="49c0408946a6d67185947f455f15cc201d0d78e6" datatype="html">\n        <source>Purge Trash</source>\n        <target>Vaciar papelera</target>\n      </trans-unit>\n      <trans-unit id="681501eecd7f44d4b7a2f619605b36676e04c5b6" datatype="html">\n        <source>To purge, select one or</source>\n        <target>To purge, select one or</target>\n      </trans-unit>\n      <trans-unit id="dfc3c34e182ea73c5d784ff7c8135f087992dac1" datatype="html">\n        <source>All</source>\n        <target>Todas</target>\n      </trans-unit>\n      <trans-unit id="ea5d338dcef50ff5c24439fd784f6a67b594c33f" datatype="html">\n        <source>pools and click</source>\n        <target>pools and click</target>\n      </trans-unit>\n      <trans-unit id="55a4f598a4894b7fd5cb88f0ffd3c37ad009dd70" datatype="html">\n        <source>Pool:</source>\n        <target>Repositorio:</target>\n      </trans-unit>\n      <trans-unit id="d43dd2b9f7797e4cf3a604695bb33e4479108516" datatype="html">\n        <source>Pool name...</source>\n        <target>Nombre del repositorio...</target>\n      </trans-unit>\n      <trans-unit id="b0e7c7ed1d51a0c205c815048bc9f79e24ee6db2" datatype="html">\n        <source>Restore Image</source>\n        <target>Restaurar imágenes</target>\n      </trans-unit>\n      <trans-unit id="7369384817e0ad61ce871c9afdfbb538df2f97c1" datatype="html">\n        <source>To restore</source>\n        <target>Para restaurar</target>\n      </trans-unit>\n      <trans-unit id="e7f0abefc608f7fb452c2dc9b1cdc3dec432160e" datatype="html">\n        <source>type the image\'s new name and click</source>\n        <target>escriba el nombre nuevo de la imagen y haga clic en</target>\n      </trans-unit>\n      <trans-unit id="41307dd56fea669eed72e12a6c23af275f6bfd82" datatype="html">\n        <source>New Name</source>\n        <target>Nombre nuevo</target>\n      </trans-unit>\n      <trans-unit id="5c96a761dc55a21882c132c929583a424c9b8cf4" datatype="html">\n        <source>Expired at</source>\n        <target>Caducó a las</target>\n      </trans-unit>\n      <trans-unit id="661041e3fcff4d3e75c561e038ca2504cf2cc643" datatype="html">\n        <source>Protected until</source>\n        <target>Protección hasta</target>\n      </trans-unit>\n      <trans-unit id="0ee3b2322a1d3277f7e3fdb8a5141ac42bcf350b" datatype="html">\n        <source>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </source>\n        <target>This image is protected until \n          <x id="INTERPOLATION" equiv-text="{{ expiresAt | cdDate }}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a674ab267d1934bf395f87ca1503fd474296893f" datatype="html">\n        <source>iSCSI Topology</source>\n        <target>Topología iSCSI</target>\n      </trans-unit>\n      <trans-unit id="051dcc342cfa5c1eaf187a2001aaa162379a160c" datatype="html">\n        <source>Configure</source>\n        <target>Configure</target>\n      </trans-unit>\n      <trans-unit id="9e515f954730279c31d5301f02479666d6264e8b" datatype="html">\n        <source>Changing these parameters from their default values is usually not necessary.</source>\n        <target>Normalmente no es necesario cambiar los valores por defecto de estos parámetros.</target>\n      </trans-unit>\n      <trans-unit id="4e2591df099ddac796cda401c5f282da779d45f2" datatype="html">\n        <source>Identifier</source>\n        <target>Identifier</target>\n      </trans-unit>\n      <trans-unit id="62480a4859976427cf18fc8ef41d3a438eda0412" datatype="html">\n        <source>lun</source>\n        <target>lun</target>\n      </trans-unit>\n      <trans-unit id="8afc9eb4405e0aa554b2ba14140ef790cdecc040" datatype="html">\n        <source>wwn</source>\n        <target>wwn</target>\n      </trans-unit>\n      <trans-unit id="121cc5391cd2a5115bc2b3160379ee5b36cd7716" datatype="html">\n        <source>Settings</source>\n        <target>Ajustes</target>\n      </trans-unit>\n      <trans-unit id="69a47cbabcc51ca942606e1d8da0ec11f98a2690" datatype="html">\n        <source>Backstore</source>\n        <target>Almacén</target>\n      </trans-unit>\n      <trans-unit id="68e710782ccb5398b3acb8844caf0b199da2c3da" datatype="html">\n        <source>Confirm</source>\n        <target>Confirmar</target>\n      </trans-unit>\n      <trans-unit id="339878da255ab55447c43afef8d9b2f9753bf5f6" datatype="html">\n        <source>Advanced Settings</source>\n        <target>Ajustes avanzados</target>\n      </trans-unit>\n      <trans-unit id="1406c2fb12a20c1528b19bcc5e24a6a2386167f3" datatype="html">\n        <source>Target IQN</source>\n        <target>IQN de destino</target>\n      </trans-unit>\n      <trans-unit id="5fe42339be910372fa689f559155631862d218e8" datatype="html">\n        <source>IQN has wrong pattern.</source>\n        <target>El IQN tiene un patrón erróneo.</target>\n      </trans-unit>\n      <trans-unit id="050a7ff057d1e895357540406b6be5652b4d1c71" datatype="html">\n        <source>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</source>\n        <target>An IQN has the following notation\n                \'iqn.$year-$month.$reversedAddress:$definedName\'</target>\n      </trans-unit>\n      <trans-unit id="c8ada4b53396d8366db00a435acc61d53d857047" datatype="html">\n        <source>For example: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</source>\n        <target>Por ejemplo: iqn.2016-06.org.dashboard:storage:disk.sn-a8675309</target>\n      </trans-unit>\n      <trans-unit id="e60c11e1b1dfbbeda577364b8de39ded2d796c5e" datatype="html">\n        <source>More information</source>\n        <target>Más información</target>\n      </trans-unit>\n      <trans-unit id="9b1aa85dfc6849196e64060db02c5410de69b7a1" datatype="html">\n        <source>This target has modified advanced settings.</source>\n        <target>Este destino tiene ajustes avanzados modificados.</target>\n      </trans-unit>\n      <trans-unit id="6990ad8d6182662e864495ac31c3758cda1c7a28" datatype="html">\n        <source>Portals</source>\n        <target>Portales</target>\n      </trans-unit>\n      <trans-unit id="6a3ac2b4137d723fd9878cd357c2012ff6c07973" datatype="html">\n        <source>Add portal</source>\n        <target>Añadir portal</target>\n      </trans-unit>\n      <trans-unit id="c3638c01b6c34066438909713ec96087c813fc7e" datatype="html">\n        <source>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </source>\n        <target>At least \n          <x id="INTERPOLATION" equiv-text="{{ minimum_gateways }}"/> gateways are required.\n        </target>\n      </trans-unit>\n      <trans-unit id="9aff25be088f0efe3eaaf62edf2bff41cc41a617" datatype="html">\n        <source>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </source>\n        <target>Backstore: \n          <x id="INTERPOLATION" equiv-text="{{ imagesSettings[image].backstore | iscsiBackstore }}"/>. \n        </target>\n      </trans-unit>\n      <trans-unit id="e3484cae8b118c576ca2815bf9c9406c2eb2cae3" datatype="html">\n        <source>This image has modified settings.</source>\n        <target>Esta imagen tiene ajustes modificados.</target>\n      </trans-unit>\n      <trans-unit id="1dff11e0820b6722ab240169f1232d70a54beaaa" datatype="html">\n        <source>Duplicated LUN numbers.</source>\n        <target>Duplicated LUN numbers.</target>\n      </trans-unit>\n      <trans-unit id="bf2dccf92ccff6e3b091792bf4205595406e1bfb" datatype="html">\n        <source>Duplicated WWN.</source>\n        <target>Duplicated WWN.</target>\n      </trans-unit>\n      <trans-unit id="808038f912fdc7f0e03f82d4afd3bf9178527fc8" datatype="html">\n        <source>Add image</source>\n        <target>Añadir imagen</target>\n      </trans-unit>\n      <trans-unit id="66c5fb27f52e75b70ca4b670b9b15a2a51cf9543" datatype="html">\n        <source>ACL authentication</source>\n        <target>Autenticación de ACL</target>\n      </trans-unit>\n      <trans-unit id="419c8b402609dcf49ae4932a5a4647dc8d79bbaf" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Usernames must have a length of 8 to 64 characters and\n                can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</target>\n      </trans-unit>\n      <trans-unit id="938050960d6653fddfcfd42425e18fb35a308262" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="f494bd31f095f6dcc656ce87ec2dcf07a2e9b30c" datatype="html">\n        <source>Initiators</source>\n        <target>Iniciadores</target>\n      </trans-unit>\n      <trans-unit id="e98239d8a6be1100119ff4b5630c822b82786740" datatype="html">\n        <source>Initiator</source>\n        <target>Iniciador</target>\n      </trans-unit>\n      <trans-unit id="f2c5059d8cda15d8d03e2cce30f2d139623d9a91" datatype="html">\n        <source>Client IQN</source>\n        <target>IQN del cliente</target>\n      </trans-unit>\n      <trans-unit id="107d5aabce23d900f0a80e6ddc1c10e29aa0bed8" datatype="html">\n        <source>Initiator IQN needs to be unique.</source>\n        <target>El IQN del iniciador debe ser exclusivo.</target>\n      </trans-unit>\n      <trans-unit id="bbf0b34a3fcc80800fcb44b9e1e86931a530dfe3" datatype="html">\n        <source>Usernames must have a length of 8 to 64 characters and\n                        can only contain letters, \'.\', \'@\', \'-\', \'_\' or \':\'.</source>\n        <target>Los nombres de usuario deben tener entre 8 y 64 caracteres y\n                        solo pueden incluir letras y estos caracteres: ".", "@", "-", "_" o ":".</target>\n      </trans-unit>\n      <trans-unit id="fdfee5d7a27e1bdd97a176097277bee078de6aaf" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters\n                        and can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="8406eb7415ee40e54d9ecb209abb056f06e3d666" datatype="html">\n        <source>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</source>\n        <target>Passwords must have a length of 12 to 16 characters and\n                        can only contain letters, \'@\', \'-\', \'_\' or \'/\'.</target>\n      </trans-unit>\n      <trans-unit id="5d1878d5fc761cbe9614bfd87047a740c82a6951" datatype="html">\n        <source>Initiator belongs to a group. Images will be configure in the group.</source>\n        <target>El iniciador pertenece a un grupo. Las imágenes se configurarán en el grupo.</target>\n      </trans-unit>\n      <trans-unit id="c0de67b9d97fafbf200f9451e8388ee8128a56ac" datatype="html">\n        <source>No items added.</source>\n        <target>No se ha añadido ningún elemento.</target>\n      </trans-unit>\n      <trans-unit id="d565e47726158e428ecdc952fc9233b9b7d7f049" datatype="html">\n        <source>Add initiator</source>\n        <target>Añadir iniciador</target>\n      </trans-unit>\n      <trans-unit id="c22ba03540aa3217da059f45e7eab138b51a96e2" datatype="html">\n        <source>Groups</source>\n        <target>Grupos</target>\n      </trans-unit>\n      <trans-unit id="4c90059afafb7e160384d9f512797c95bb95c6dc" datatype="html">\n        <source>Group</source>\n        <target>Grupo</target>\n      </trans-unit>\n      <trans-unit id="3084948274cff4f56d0f431af47240e9cf02fcc7" datatype="html">\n        <source>Add group</source>\n        <target>Añadir grupo</target>\n      </trans-unit>\n      <trans-unit id="c3a7e364a88ea4673199dfa98bc73e6dbe09dfac" datatype="html">\n        <source>Namespaces</source>\n        <target>Namespaces</target>\n      </trans-unit>\n      <trans-unit id="aba82bfd8e177d35b76cad7cd43941f8e5e5acac" datatype="html">\n        <source>Trash</source>\n        <target>Papelera</target>\n      </trans-unit>\n      <trans-unit id="66db799d67958d4b0765181d072df62e2d1c16f5" datatype="html">\n        <source>Issues</source>\n        <target>Problemas</target>\n      </trans-unit>\n      <trans-unit id="ef06d69259e587e28d52372455f44c7153cda7e7" datatype="html">\n        <source>Syncing</source>\n        <target>Sincronizando</target>\n      </trans-unit>\n      <trans-unit id="0b0901877d837d3fda16ba161eb74368d1c75b7a" datatype="html">\n        <source>Ready</source>\n        <target>Listo</target>\n      </trans-unit>\n      <trans-unit id="4057c56d63a7e9b140b1d01871a9229a5f30eb27" datatype="html">\n        <source>Edit pool mirror mode</source>\n        <target>Editar modo de duplicación de repositorio</target>\n      </trans-unit>\n      <trans-unit id="e1f367f5feaab38f6637dd1f967c848b447dea2d" datatype="html">\n        <source>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>To edit the mirror mode for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>, select a new mode from the list and click \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Update\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="32ca348ef926b0a6a7a780b8b64c3a8239895cec" datatype="html">\n        <source>Peer clusters must be removed prior to disabling mirror.</source>\n        <target>Los clústeres de par deben eliminarse antes de inhabilitar la duplicación.</target>\n      </trans-unit>\n      <trans-unit id="fa61522d482349707fd7dd03b90dc5781611b17f" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/>\n  pool mirror peer\n        </target>\n      </trans-unit>\n      <trans-unit id="4ddcb416c1c0aa1f54acf5beef1de81813e76fa6" datatype="html">\n        <source>{VAR_SELECT, select, edit {Edit} other {Add} }</source>\n        <target>{VAR_SELECT, select, edit {Editar} other {Añadir} }</target>\n      </trans-unit>\n      <trans-unit id="59ca65ece457429d90104ede4674965f62edbabe" datatype="html">\n        <source>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </source>\n        <target>\n          <x id="ICU" equiv-text="{mode, select, edit {...} other {...}}"/> the pool\n          mirror peer attributes for pool \n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>\n          <x id="INTERPOLATION" equiv-text="{{ poolName }}"/>\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/> and click\n          <x id="START_TAG_KBD" ctype="x-kbd" equiv-text="<kbd>"/>Submit\n          <x id="CLOSE_TAG_KBD" ctype="x-kbd" equiv-text="</kbd>"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="d3cc964811f852a168f4a2d5daa59068abc5cf53" datatype="html">\n        <source>Cluster Name</source>\n        <target>Nombre del clúster</target>\n      </trans-unit>\n      <trans-unit id="b631721fc56cb7fb1cbd07b802a487c5753f6a2d" datatype="html">\n        <source>The cluster name is not valid.</source>\n        <target>El nombre del clúster no es válido.</target>\n      </trans-unit>\n      <trans-unit id="ca6deafa31bf421f85094807982aee4bcb20a3ae" datatype="html">\n        <source>CephX ID</source>\n        <target>ID de CephX</target>\n      </trans-unit>\n      <trans-unit id="7539188a568c3d553cbde1bacaf32310c4264e24" datatype="html">\n        <source>CephX ID...</source>\n        <target>ID de CephX...</target>\n      </trans-unit>\n      <trans-unit id="a1c45b594b0fba22fc64e80c793a7ffe005fdb0e" datatype="html">\n        <source>The CephX ID is not valid.</source>\n        <target>El ID de CephX no es válido.</target>\n      </trans-unit>\n      <trans-unit id="20861576fcfce773c918c782cd4f5adf32382921" datatype="html">\n        <source>Monitor Addresses</source>\n        <target>Direcciones de monitores</target>\n      </trans-unit>\n      <trans-unit id="fa28eeed2b4bd4ccbe6e9349a1c2b3cb1c5de70a" datatype="html">\n        <source>Comma-delimited addresses...</source>\n        <target>Direcciones delimitadas por comas...</target>\n      </trans-unit>\n      <trans-unit id="dc016c82fd85848d5c1b2fd0e8469ee2027d9c16" datatype="html">\n        <source>The monitory address is not valid.</source>\n        <target>La dirección del monitor no es válida.</target>\n      </trans-unit>\n      <trans-unit id="e0ac55b83dc6739e62bc655cfe375b67c93e7f4a" datatype="html">\n        <source>CephX Key</source>\n        <target>Clave de CephX</target>\n      </trans-unit>\n      <trans-unit id="f53434bcb95bd86f1df9c8e22966f757614fc4ad" datatype="html">\n        <source>Base64-encoded key...</source>\n        <target>Clave con cifrado base64...</target>\n      </trans-unit>\n      <trans-unit id="4cd83164cd4f66b4abc2863f9ce6f599d789e4ca" datatype="html">\n        <source>CephX key must be base64 encoded.</source>\n        <target>La clave de CephX debe tener cifrado base64</target>\n      </trans-unit>\n      <trans-unit id="ca53d681a9892d6fdbb57ee9676582186515e961" datatype="html">\n        <source>Performance counters not available</source>\n        <target>Los contadores de rendimiento no están disponibles</target>\n      </trans-unit>\n      <trans-unit id="9424badb7e0c6ac792d020d7830645b529a80aad" datatype="html">\n        <source>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </source>\n        <target>Please consult the \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>documentation\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/>\n  on how to configure and enable the Object Gateway management functionality.\n        </target>\n      </trans-unit>\n      <trans-unit id="479488ab6e91ecb375484edc78bee3d13467f33f" datatype="html">\n        <source>Daemons List</source>\n        <target>Lista de daemons</target>\n      </trans-unit>\n      <trans-unit id="eeba399c4dae8d4890c27b7a2cd2dc28fcf8b5f9" datatype="html">\n        <source>Performance Counters</source>\n        <target>Contadores de rendimiento</target>\n      </trans-unit>\n      <trans-unit id="5f67f2247b9c6bbaf24a0f2d37f4ac0537c6fa53" datatype="html">\n        <source>Loading bucket data...</source>\n        <target>Cargando datos de la papelera...</target>\n      </trans-unit>\n      <trans-unit id="2798cc1e152b1ec07fd8daf94a2a073d1ba1ebcc" datatype="html">\n        <source>Id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="db4e1a734518691b128ef40b939cc673f01d03a6" datatype="html">\n        <source>The value is not valid.</source>\n        <target>El valor no es válido.</target>\n      </trans-unit>\n      <trans-unit id="eabb4db920d9f9b2480cf438468b86e1bea02a9b" datatype="html">\n        <source>The chosen name is already in use.</source>\n        <target>El nombre que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="0ee5132a8da30e0b7f9f5c70dbc91928d17dd909" datatype="html">\n        <source>Owner</source>\n        <target>Propietario</target>\n      </trans-unit>\n      <trans-unit id="8e4c918357c7445fbf19a203e5f0f0ece1960b3b" datatype="html">\n        <source>-- Select a user --</source>\n        <target>-- Seleccione un usuario --</target>\n      </trans-unit>\n      <trans-unit id="a4aab1f837bc8ec222e4f25922465d1c5929a1fc" datatype="html">\n        <source>Placement target</source>\n        <target>Placement target</target>\n      </trans-unit>\n      <trans-unit id="6bae0a7fc2c9c1fde7d937a8a1a3c7e6825cf7d1" datatype="html">\n        <source>-- Select a placement target --</source>\n        <target>-- Select a placement target --</target>\n      </trans-unit>\n      <trans-unit id="efeade5060b3add63863c24871f0830fb16b7e6d" datatype="html">\n        <source>Versioning</source>\n        <target>Versioning</target>\n      </trans-unit>\n      <trans-unit id="f50a33d3c339f8f4a465141f8caa5d2d8c005251" datatype="html">\n        <source>Enabled</source>\n        <target>Habilitado</target>\n      </trans-unit>\n      <trans-unit id="016d24e069e7d505a090fb8243e5cd43b35dc39b" datatype="html">\n        <source>Enables versioning for the objects in the bucket.</source>\n        <target>Enables versioning for the objects in the bucket.</target>\n      </trans-unit>\n      <trans-unit id="9e6775ffd06878aa145c07359f28557f01ede04f" datatype="html">\n        <source>Multi-Factor Authentication</source>\n        <target>Multi-Factor Authentication</target>\n      </trans-unit>\n      <trans-unit id="29e8a5d4fb767d4ad0c762c81c6264cec4c0ba97" datatype="html">\n        <source>Delete enabled</source>\n        <target>Delete enabled</target>\n      </trans-unit>\n      <trans-unit id="40fbc3ac8c1ea4ecfe62247e91f1f999ad5baf76" datatype="html">\n        <source>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</source>\n        <target>Enables MFA (multi-factor authentication) Delete, which requires additional authentication for changing the bucket versioning state.</target>\n      </trans-unit>\n      <trans-unit id="d24c93a8c13db46defa06ed7b5e026a3edb52b91" datatype="html">\n        <source>Token Serial Number</source>\n        <target>Token Serial Number</target>\n      </trans-unit>\n      <trans-unit id="e6d9536c2af2e5e9a228c3e3e1809dc1fefe0149" datatype="html">\n        <source>Token PIN</source>\n        <target>Token PIN</target>\n      </trans-unit>\n      <trans-unit id="7b84370895ab9eb44672f57146fa05c5947f1c0c" datatype="html">\n        <source>Locking</source>\n        <target>Locking</target>\n      </trans-unit>\n      <trans-unit id="f038d51ab1645f15b0cd58f195c72a7eeebd4729" datatype="html">\n        <source>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</source>\n        <target>Enables locking for the objects in the bucket. Locking can only be enabled while creating a bucket.</target>\n      </trans-unit>\n      <trans-unit id="9af1b4baa2dd8ed2bfc3cc756b12a2271c2dd793" datatype="html">\n        <source>Compliance</source>\n        <target>Compliance</target>\n      </trans-unit>\n      <trans-unit id="edd600fa489d1b4a4448dce694ed932e52ce8fda" datatype="html">\n        <source>Governance</source>\n        <target>Governance</target>\n      </trans-unit>\n      <trans-unit id="a5c3d9d2296f7886e8289b9f623323803deacfc6" datatype="html">\n        <source>Days</source>\n        <target>Days</target>\n      </trans-unit>\n      <trans-unit id="218c7d6d318c51e7105309aaeb0baec9d19e4efb" datatype="html">\n        <source>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of days that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="289b101ec12427b3ca819df9e43cc3b14fae2cc4" datatype="html">\n        <source>The entered value must be a positive integer.</source>\n        <target>The entered value must be a positive integer.</target>\n      </trans-unit>\n      <trans-unit id="def9fc628134d3a044b7c0ad2a83c846bdad56f1" datatype="html">\n        <source>Retention period requires either Days or Years.</source>\n        <target>Retention period requires either Days or Years.</target>\n      </trans-unit>\n      <trans-unit id="003c94fc143882ac8af6251a1595fe62978fe3e6" datatype="html">\n        <source>Years</source>\n        <target>Years</target>\n      </trans-unit>\n      <trans-unit id="14c6189ead0951f13049c7bf9af7642d0c41957a" datatype="html">\n        <source>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</source>\n        <target>The number of years that you want to specify for the default retention period that will be applied to new objects placed in this bucket.</target>\n      </trans-unit>\n      <trans-unit id="45cc8ca94b5a50842a9a8ef804a5ab089a38ae5c" datatype="html">\n        <source>ID</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="e5c51963a9c553b29427ef783bbb69fa6634fa8c" datatype="html">\n        <source>Index type</source>\n        <target>Tipo de índice</target>\n      </trans-unit>\n      <trans-unit id="8e6f950a32eaea32ec7e192f9ca3d3dfe469d4ba" datatype="html">\n        <source>Placement rule</source>\n        <target>Regla de colocación</target>\n      </trans-unit>\n      <trans-unit id="6972d213e31c4ea4f887e60db99d9881bc8fcd3e" datatype="html">\n        <source>Marker</source>\n        <target>Marcador</target>\n      </trans-unit>\n      <trans-unit id="47b02acd2d3254d1ace1926f840523f154ebef71" datatype="html">\n        <source>Maximum marker</source>\n        <target>Marcador máximo</target>\n      </trans-unit>\n      <trans-unit id="8fe73a4787b8068b2ba61f54ab7e0f9af2ea1fc9" datatype="html">\n        <source>Version</source>\n        <target>Versión</target>\n      </trans-unit>\n      <trans-unit id="092fa3a7df9168b14d3f83a77a4035e92b92ce15" datatype="html">\n        <source>Master version</source>\n        <target>Versión maestra</target>\n      </trans-unit>\n      <trans-unit id="97434cc5001d407f90c7447a12d9e8e6848a2aa3" datatype="html">\n        <source>Modification time</source>\n        <target>Hora de modificación</target>\n      </trans-unit>\n      <trans-unit id="90fe2e41e7fde38453ce4e619efeea9bc6adea9c" datatype="html">\n        <source>Zonegroup</source>\n        <target>Grupo de zona</target>\n      </trans-unit>\n      <trans-unit id="62a923f047ca49e7a4782629e91fea1ba32db68f" datatype="html">\n        <source>MFA Delete</source>\n        <target>MFA Delete</target>\n      </trans-unit>\n      <trans-unit id="649a410bd0ace333d067d8fa22f12bdbdb43533b" datatype="html">\n        <source>Bucket quota</source>\n        <target>Cuota de papelera</target>\n      </trans-unit>\n      <trans-unit id="cef1595d040e77cbb4466e60382028d4c2040cac" datatype="html">\n        <source>Maximum size</source>\n        <target>Tamaño máximo</target>\n      </trans-unit>\n      <trans-unit id="aa6fb95c355f172bda303de1ce2f38c251a149cf" datatype="html">\n        <source>Unlimited</source>\n        <target>Sin límite</target>\n      </trans-unit>\n      <trans-unit id="ee862a800364b4d11f9b8cb9955a28a60f840a45" datatype="html">\n        <source>Maximum objects</source>\n        <target>Número máximo de objetos</target>\n      </trans-unit>\n      <trans-unit id="08c74dc9762957593b91f6eb5d65efdfc975bf48" datatype="html">\n        <source>Username</source>\n        <target>Nombre de usuario</target>\n      </trans-unit>\n      <trans-unit id="49c614babd1950adb2be75df4e2c9747286d6adc" datatype="html">\n        <source>-- Select a username --</source>\n        <target>-- Seleccione un nombre de usuario --</target>\n      </trans-unit>\n      <trans-unit id="c217ee914725a37e9dd2336c721c8e63e9666bdc" datatype="html">\n        <source>Auto-generate key</source>\n        <target>Autogenerar clave</target>\n      </trans-unit>\n      <trans-unit id="2f1c1c0f2bce4c9f92d1a2061e8161cb0006c31a" datatype="html">\n        <source>Access key</source>\n        <target>Clave de acceso</target>\n      </trans-unit>\n      <trans-unit id="b864acb67296a9819c1db0069c4c47d8b5ce8f44" datatype="html">\n        <source>Secret key</source>\n        <target>Clave secreta</target>\n      </trans-unit>\n      <trans-unit id="b760f123248930122fc7e7b6b6bf94e376e959c8" datatype="html">\n        <source>Full name</source>\n        <target>Nombre completo</target>\n      </trans-unit>\n      <trans-unit id="69b6ac577a19acc39fc0c22342092f327fff2529" datatype="html">\n        <source>Email address</source>\n        <target>Dirección de correo electrónico</target>\n      </trans-unit>\n      <trans-unit id="92f3f203270a29b3001871153f02c063484a1574" datatype="html">\n        <source>Suspended</source>\n        <target>Suspendido</target>\n      </trans-unit>\n      <trans-unit id="8011e20c5bbe51602d459a860fbf29b599b55edd" datatype="html">\n        <source>System</source>\n        <target>Sistema</target>\n      </trans-unit>\n      <trans-unit id="db18a2772988415466a7f75dc42663ce78c9c1d3" datatype="html">\n        <source>Maximum buckets</source>\n        <target>Número máximo de papeleras</target>\n      </trans-unit>\n      <trans-unit id="2c4c62e8ba24601be5cfe7dc5d32c24bbbd4b53c" datatype="html">\n        <source>Subusers</source>\n        <target>Subusuarios</target>\n      </trans-unit>\n      <trans-unit id="17bb3082e6fe5003203ef992a3714172334631a1" datatype="html">\n        <source>Capabilities</source>\n        <target>Capacidades</target>\n      </trans-unit>\n      <trans-unit id="36ad38f9c1a1485e09b67778a28af84553290ffb" datatype="html">\n        <source>User quota</source>\n        <target>Cuota de usuario</target>\n      </trans-unit>\n      <trans-unit id="2aba1e87039819aca3b70faa9aa848c12bf139ca" datatype="html">\n        <source>Show</source>\n        <target>Mostrar</target>\n      </trans-unit>\n      <trans-unit id="0bcd5ef19af0f1b814141ca8c57df623d8270088" datatype="html">\n        <source>Keys</source>\n        <target>Claves</target>\n      </trans-unit>\n      <trans-unit id="f61c6867295f3b53d23557021f2f4e0aa1d0b8fc" datatype="html">\n        <source>Type</source>\n        <target>Tipo</target>\n      </trans-unit>\n      <trans-unit id="1221ca97d19eaa9a7bc0c5243d5fc5befe1d2314" datatype="html">\n        <source>-- Select a type --</source>\n        <target>-- Seleccione un tipo --</target>\n      </trans-unit>\n      <trans-unit id="d1b8990332af18f1c5159a6061ca889bcbb28432" datatype="html">\n        <source>Permission</source>\n        <target>Permiso</target>\n      </trans-unit>\n      <trans-unit id="a08c589f82f69d892307288da14190ae1dd583d5" datatype="html">\n        <source>-- Select a permission --</source>\n        <target>-- Seleccione un permiso --</target>\n      </trans-unit>\n      <trans-unit id="b2841767821d6b66238c34d07e413b0af67aee92" datatype="html">\n        <source>Subuser</source>\n        <target>Subusuario</target>\n      </trans-unit>\n      <trans-unit id="bd59fc25a7bd98cff3e75117c09697c8a007a514" datatype="html">\n        <source>The chosen subuser ID is already in use.</source>\n        <target>El ID de subusuario que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="3d386c357ebcbc04ed05c4babd5a03626f9b1674" datatype="html">\n        <source>read, write</source>\n        <target>lectura, escritura</target>\n      </trans-unit>\n      <trans-unit id="84e3e3f9a4f31a039b648c97debf95fcb20f4c4a" datatype="html">\n        <source>full</source>\n        <target>todos</target>\n      </trans-unit>\n      <trans-unit id="b6bf81d032a2316464f9df2f0d2f3d753f89f0d3" datatype="html">\n        <source>Swift key</source>\n        <target>Clave Swift</target>\n      </trans-unit>\n      <trans-unit id="1e0c12685d50d47448ceed9423977ef39775c037" datatype="html">\n        <source>Auto-generate secret</source>\n        <target>Autogenerar secreto</target>\n      </trans-unit>\n      <trans-unit id="3d1c7a6004bd5d86a7fa096ae24209e8aa7a53e3" datatype="html">\n        <source>Loading user data...</source>\n        <target>Cargando datos del usuario...</target>\n      </trans-unit>\n      <trans-unit id="faa5d834ab28571423d794d32b57998920efb65f" datatype="html">\n        <source>The user data could not be loaded.</source>\n        <target>No es posible cargar los datos del usuario.</target>\n      </trans-unit>\n      <trans-unit id="6aaf5d2a304167272ac73e3b1d1c162e16c77858" datatype="html">\n        <source>The chosen user ID is already in use.</source>\n        <target>El ID de usuario que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="df441e80db2157f9d272b75de724ba4a82b96b57" datatype="html">\n        <source>This is not a valid email address.</source>\n        <target>Esta dirección no es válida.</target>\n      </trans-unit>\n      <trans-unit id="ca271adf154956b8fcb28f4f50a37acb3057ff7c" datatype="html">\n        <source>The chosen email address is already in use.</source>\n        <target>La dirección de correo electrónico que ha elegido ya está en uso.</target>\n      </trans-unit>\n      <trans-unit id="030197cebe938edf35422e92fe14183d06eb670b" datatype="html">\n        <source>Max. buckets</source>\n        <target>Máx. papeleras</target>\n      </trans-unit>\n      <trans-unit id="f39256070bfc0714020dfee08895421fc1527014" datatype="html">\n        <source>Disabled</source>\n        <target>Inhabilitado</target>\n      </trans-unit>\n      <trans-unit id="a5c05002b0ac2040f1aede5e727e0ffd06eda819" datatype="html">\n        <source>Custom</source>\n        <target>Personalizar</target>\n      </trans-unit>\n      <trans-unit id="28872515cb81d197a3a1733fa546d3e0f0dd6c67" datatype="html">\n        <source>The entered value must be &gt;= 1.</source>\n        <target>The entered value must be &gt;= 1.</target>\n      </trans-unit>\n      <trans-unit id="583a219c524155c2314eb06ee29162bb315272a3" datatype="html">\n        <source>S3 key</source>\n        <target>Clave S3</target>\n      </trans-unit>\n      <trans-unit id="128d6efb51d9ddc7c0cc695a2deeca5b9523f6e4" datatype="html">\n        <source>There are no subusers.</source>\n        <target>No hay ningún subusuario.</target>\n      </trans-unit>\n      <trans-unit id="7fd6dfb8ecb982dbc3affb2c2d5414c4f5b6abd2" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ subuserLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="67c746c1ba9dab4351fedc4c7cba4e6d6b0dbc47" datatype="html">\n        <source>S3</source>\n        <target>S3</target>\n      </trans-unit>\n      <trans-unit id="d6819038d608623503918fb2553f53d68231ec3a" datatype="html">\n        <source>There are no keys.</source>\n        <target>No hay ninguna clave.</target>\n      </trans-unit>\n      <trans-unit id="fc1c1a7140ff6b815a95b65ee2780fdbe1b2b7a1" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.CREATE | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ s3keyLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="6ddb5e991a3ecd2659fb520bc5acc81b67e08ddd" datatype="html">\n        <source>Swift</source>\n        <target>Swift</target>\n      </trans-unit>\n      <trans-unit id="1d01eccdda47fc907c5be35bcb16d2dcd02b0270" datatype="html">\n        <source>There are no capabilities.</source>\n        <target>No hay ninguna capacidad</target>\n      </trans-unit>\n      <trans-unit id="043e2ec0036ceadd926fd5e3f93cd6f3565f3648" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{ actionLabels.ADD | titlecase }}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{ capabilityLabel | upperFirst }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f5a451c4ea65a4046f0b49d489a7013abf0b5861" datatype="html">\n        <source>All capabilities are already added.</source>\n        <target>All capabilities are already added.</target>\n      </trans-unit>\n      <trans-unit id="6146e13ceca5fa5cc17b771b282fe5955f3d19fa" datatype="html">\n        <source>Unlimited size</source>\n        <target>Tamaño ilimitado</target>\n      </trans-unit>\n      <trans-unit id="f6db8aa7c99fdce18edb33dde57729acede2b308" datatype="html">\n        <source>Max. size</source>\n        <target>Tamaño máx.</target>\n      </trans-unit>\n      <trans-unit id="fc630b2093e880fffa19df99d5cd8b87605037f8" datatype="html">\n        <source>Unlimited objects</source>\n        <target>Objetos ilimitados</target>\n      </trans-unit>\n      <trans-unit id="6cda5a993d06f0bb10048be9d3aba6555aa9f356" datatype="html">\n        <source>Max. objects</source>\n        <target>Objetos máx.</target>\n      </trans-unit>\n      <trans-unit id="623ac50f37a26caec6fd7cd519b653e3315cba25" datatype="html">\n        <source>The entered value must be &gt;= 0.</source>\n        <target>El valor introducido debe ser mayor o igual que 0.</target>\n      </trans-unit>\n      <trans-unit id="1ea5c4d8942c00752dcc72e72949c5d9832f6399" datatype="html">\n        <source>Description...</source>\n        <target>Descripción...</target>\n      </trans-unit>\n      <trans-unit id="70f45880fce6ac5d8e468e25e82aefbba8098cfe" datatype="html">\n        <source>Permissions</source>\n        <target>Permisos</target>\n      </trans-unit>\n      <trans-unit id="9610487cbeb5796d34d8601b5ac0c0a65f9e1d19" datatype="html">\n        <source>Roles</source>\n        <target>Funciones</target>\n      </trans-unit>\n      <trans-unit id="7f3bdcce4b2e8c37cd7f0f6c92ef8cff34b039b8" datatype="html">\n        <source>Confirm password</source>\n        <target>Confirmar contraseña</target>\n      </trans-unit>\n      <trans-unit id="cbb979e63ba50e0ca3adfa09cbdcaefd0853fca1" datatype="html">\n        <source>Password confirmation doesn\'t match the password.</source>\n        <target>Las contraseñas no coinciden.</target>\n      </trans-unit>\n      <trans-unit id="96621f9ed2e4ae5204564e583d2c816bedead571" datatype="html">\n        <source>Password expiration date</source>\n        <target>Password expiration date</target>\n      </trans-unit>\n      <trans-unit id="48932db3801fe9d5d72a60a3e656bffd17c1c5d9" datatype="html">\n        <source>Password expiration date...</source>\n        <target>Password expiration date...</target>\n      </trans-unit>\n      <trans-unit id="244aae9346da82b0922506c2d2581373a15641cc" datatype="html">\n        <source>Email</source>\n        <target>Correo electrónico</target>\n      </trans-unit>\n      <trans-unit id="d0ec081dd61eb4f43aea269077bbe38eae87b7f9" datatype="html">\n        <source>Invalid email.</source>\n        <target>Correo electrónico no válido.</target>\n      </trans-unit>\n      <trans-unit id="8913c216dd506e20e412e144381d8d2a65a84359" datatype="html">\n        <source>User must change password at next logon</source>\n        <target>User must change password at next logon</target>\n      </trans-unit>\n      <trans-unit id="0051a3479d3ba79135c16dc8cc017950a2cce821" datatype="html">\n        <source>You are about to remove "user read / update" permissions from your own user.</source>\n        <target>Se dispone a eliminar los permisos "lectura/actualización de usuario" de su propio usuario.</target>\n      </trans-unit>\n      <trans-unit id="af4bf9fcb256853f14cf947eb1deb8d7f176d3f9" datatype="html">\n        <source>If you continue, you will no longer be able to add or remove roles from any user.</source>\n        <target>Si continúa, no podrá añadir ni eliminar funciones en ningún usuario.</target>\n      </trans-unit>\n      <trans-unit id="7d1dcf2a9146caac0581329acf94806ec69a89a5" datatype="html">\n        <source>Are you sure you want to continue?</source>\n        <target>¿Seguro que desea continuar?</target>\n      </trans-unit>\n      <trans-unit id="85b79c9064aed1ead31ace985f31aa1363f6bdaf" datatype="html">\n        <source>Help</source>\n        <target>Ayuda</target>\n      </trans-unit>\n      <trans-unit id="fcfd4675b4c90f08d18d3abede9a9a4dff4cfdc7" datatype="html">\n        <source>Documentation</source>\n        <target>Documentación</target>\n      </trans-unit>\n      <trans-unit id="e351b40b3869a5c7d19c3d4918cb1ac7aaab95c4" datatype="html">\n        <source>API</source>\n        <target>API</target>\n      </trans-unit>\n      <trans-unit id="004b222ff9ef9dd4771b777950ca1d0e4cd4348a" datatype="html">\n        <source>About</source>\n        <target>Acerca de</target>\n      </trans-unit>\n      <trans-unit id="1481ecd21e760ac919a24e26cf790acd82e40199" datatype="html">\n        <source>Dashboard Settings</source>\n        <target>Ajustes de la consola</target>\n      </trans-unit>\n      <trans-unit id="a79aab4ef674bf3f6532292107c0054302236e0f" datatype="html">\n        <source>User management</source>\n        <target>Gestión del usuario</target>\n      </trans-unit>\n      <trans-unit id="049dfd9fe6c78914ad58cf89ac6a631fca28ec74" datatype="html">\n        <source>Logged in user</source>\n        <target>Usuario que ha entrado</target>\n      </trans-unit>\n      <trans-unit id="cd38a58e73f306d838e621959d47d5e7a2f06d1f" datatype="html">\n        <source>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </source>\n        <target>Signed in as\n          <x id="START_TAG_STRONG" ctype="x-strong" equiv-text="<strong>"/>\n          <x id="INTERPOLATION" equiv-text="{{ username }}"/>\n          <x id="CLOSE_TAG_STRONG" ctype="x-strong" equiv-text="</strong>"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="739516c2ca75843d5aec9cf0e6b3e4335c4227b9" datatype="html">\n        <source>Change password</source>\n        <target>Change password</target>\n      </trans-unit>\n      <trans-unit id="5d22c795daf43877a5f708dca2bccd549eb0471d" datatype="html">\n        <source>Sign out</source>\n        <target>Salir</target>\n      </trans-unit>\n      <trans-unit id="91853167141c37b58868f3b0421383dd72fa8a01" datatype="html">\n        <source>Attributes (OSD map)</source>\n        <target>Atributos (mapa de OSD)</target>\n      </trans-unit>\n      <trans-unit id="97842f379e1d4157ac3ab0661b90c352e7cb72d5" datatype="html">\n        <source>Metadata not available</source>\n        <target>Los metadatos no están disponibles</target>\n      </trans-unit>\n      <trans-unit id="f721a500a68c357e8f2a01e60510f6a01e4ba529" datatype="html">\n        <source>Metadata</source>\n        <target>Metadatos</target>\n      </trans-unit>\n      <trans-unit id="deba10b7279a589d01e919ea11f43c79ca1773e3" datatype="html">\n        <source>Device health</source>\n        <target>Device health</target>\n      </trans-unit>\n      <trans-unit id="d24e28e19c5703d7c6be44f4eb595a6a43b618ed" datatype="html">\n        <source>Performance counter</source>\n        <target>Contandor de rendimiento</target>\n      </trans-unit>\n      <trans-unit id="d1f7c81ed9c5034af4abcdf119b1c1e86cd019dd" datatype="html">\n        <source>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </source>\n        <target>Histogram not available: \n          <x id="INTERPOLATION" equiv-text="{{ osd.histogram_failed }}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="868abfff914873d1c65df798d8432ed04b8ae2a9" datatype="html">\n        <source>Writes</source>\n        <target>Escrituras</target>\n      </trans-unit>\n      <trans-unit id="996ebb9a653b5067f97bf3891ea9d2108e969492" datatype="html">\n        <source>Reads</source>\n        <target>Lecturas</target>\n      </trans-unit>\n      <trans-unit id="65ac79790aa477a97b1cc579e18a115a8df8918f" datatype="html">\n        <source>Histogram</source>\n        <target>Histograma</target>\n      </trans-unit>\n      <trans-unit id="3d87fc20ea8e5f0f0500ba5d5061b345be78ec5e" datatype="html">\n        <source>No hostname found.</source>\n        <target>No hostname found.</target>\n      </trans-unit>\n      <trans-unit id="26fb5f81b3581f06b9210defb0e71dc69a67e819" datatype="html">\n        <source>Current values</source>\n        <target>Valores actuales</target>\n      </trans-unit>\n      <trans-unit id="9abcd7c82643d60c22733470463f74e4a54bc069" datatype="html">\n        <source>Min</source>\n        <target>Mín.</target>\n      </trans-unit>\n      <trans-unit id="c3ced4d162a0a55ee233a187ce7208ba5e922418" datatype="html">\n        <source>Max</source>\n        <target>Máx.</target>\n      </trans-unit>\n      <trans-unit id="6834fa6b43d1ecbdf147c48dd9c4d72f1484571d" datatype="html">\n        <source>Source</source>\n        <target>Origen</target>\n      </trans-unit>\n      <trans-unit id="a446fb0eb11fbffcac805ece5a2d306d24e733d8" datatype="html">\n        <source>Level</source>\n        <target>Nivel</target>\n      </trans-unit>\n      <trans-unit id="39f2fb094e9b2eda13163fa3f3a31594cf9c1307" datatype="html">\n        <source>Can be updated at runtime (editable)</source>\n        <target>Se puede actualizar en el tiempo de ejecución (editable)</target>\n      </trans-unit>\n      <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">\n        <source>Tags</source>\n        <target>Etiquetas</target>\n      </trans-unit>\n      <trans-unit id="ab0089ef47af61ca1d137bc908b96c290dfd9287" datatype="html">\n        <source>Enum values</source>\n        <target>Valores Enum</target>\n      </trans-unit>\n      <trans-unit id="819476f1264f1659f38e86f6abb542141b184832" datatype="html">\n        <source>See also</source>\n        <target>Véase también</target>\n      </trans-unit>\n      <trans-unit id="73caac4265ea7314ff061e5a1d78a6361a6dd3b8" datatype="html">\n        <source>Cluster Status</source>\n        <target>Estado del clúster</target>\n      </trans-unit>\n      <trans-unit id="1d4bc612bbf19aa9553853266b9e92c9d75f4464" datatype="html">\n        <source>Manager Daemons</source>\n        <target>Daemons de gestor</target>\n      </trans-unit>\n      <trans-unit id="946ac5dea9921dc09d7b0a63b89535371f283b19" datatype="html">\n        <source>Object Gateways</source>\n        <target>Instancias de Object Gateway</target>\n      </trans-unit>\n      <trans-unit id="ff03fa5bcf37c4da46ad736c1f7d03f959e8ba9a" datatype="html">\n        <source>Metadata Servers</source>\n        <target>Servidores de metadatos</target>\n      </trans-unit>\n      <trans-unit id="d817609ba4993eba859409ab71e566168f4d5f5a" datatype="html">\n        <source>iSCSI Gateways</source>\n        <target>Puertas de enlace iSCSI</target>\n      </trans-unit>\n      <trans-unit id="42c13e50391250ea9379bdf55d5d6c0228c0c8bc" datatype="html">\n        <source>Client IOPS</source>\n        <target>IOPS de cliente</target>\n      </trans-unit>\n      <trans-unit id="52213660b2454d139ada3079a42ec6caf3c3c01e" datatype="html">\n        <source>Client Throughput</source>\n        <target>Rendimiento del cliente</target>\n      </trans-unit>\n      <trans-unit id="32efd1c3f70e3c5244239de97a2cc95d98534a14" datatype="html">\n        <source>Client Read/Write</source>\n        <target>Lectura/escritura de cliente</target>\n      </trans-unit>\n      <trans-unit id="275485415092cbae3a9f3cbb786ebe283cacfdd5" datatype="html">\n        <source>Recovery Throughput</source>\n        <target>Rendimiento de recuperación</target>\n      </trans-unit>\n      <trans-unit id="6d9a9f55046891733ef71170e7652063765eb542" datatype="html">\n        <source>Scrub</source>\n        <target>Depuración</target>\n      </trans-unit>\n      <trans-unit id="3cc9c2ae277393b3946b38c088dabff671b1ee1b" datatype="html">\n        <source>Performance</source>\n        <target>Rendimiento</target>\n      </trans-unit>\n      <trans-unit id="88f383269db2d32cccee9e936fe549dccb9fdbf4" datatype="html">\n        <source>Raw Capacity</source>\n        <target>Capacidad en bruto</target>\n      </trans-unit>\n      <trans-unit id="c5f8a813f91a11af99132e4beafc136cfc13d73b" datatype="html">\n        <source>PGs per OSD</source>\n        <target>Grupos de colocación por OSD</target>\n      </trans-unit>\n      <trans-unit id="498a109c6e9e94f1966de01aa0326f7f0ac6fb52" datatype="html">\n        <source>PG Status</source>\n        <target>Estado del grupo de colocación</target>\n      </trans-unit>\n      <trans-unit id="ce9dfdc6dccb28dc75a78c704e09dc18fb02dcfa" datatype="html">\n        <source>Capacity</source>\n        <target>Capacidad</target>\n      </trans-unit>\n      <trans-unit id="44ecac93d67c6a671198091c2270354f80322327" datatype="html">\n        <source>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </source>\n        <target>\n          <x id="START_ITALIC_TEXT" ctype="x-i" equiv-text="<i>"/>\n          <x id="CLOSE_ITALIC_TEXT" ctype="x-i" equiv-text="</i>"/> See \n          <x id="START_LINK" ctype="x-a" equiv-text="<a>"/>Logs\n          <x id="CLOSE_LINK" ctype="x-a" equiv-text="</a>"/> for more details.\n        </target>\n      </trans-unit>\n      <trans-unit id="0c1e17956453ad772dbe82d6946f62748c692f3e" datatype="html">\n        <source>Ranks</source>\n        <target>Clasificaciones</target>\n      </trans-unit>\n      <trans-unit id="2b24e0b0b1629d2e8a51b9da7c75d6e6379f4bc4" datatype="html">\n        <source>Standbys</source>\n        <target>Standbys</target>\n      </trans-unit>\n      <trans-unit id="50df62325726db950523a5be1c78b8905fcc25d4" datatype="html">\n        <source>MDS performance counters</source>\n        <target>MDS performance counters</target>\n      </trans-unit>\n      <trans-unit id="6e213942c6354b9cbe7a650f0f1499bfc1000fb6" datatype="html">\n        <source>Directories</source>\n        <target>Directories</target>\n      </trans-unit>\n      <trans-unit id="47116253e36f4e38a97ba41b2d3122c6c15ab904" datatype="html">\n        <source>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </source>\n        <target>Clients (\n          <x id="INTERPOLATION" equiv-text="{{ clients.length }}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="bd5a3b1c5a3c185c7bbb0e09a061d4cdc88ce5ad" datatype="html">\n        <source>Current</source>\n        <target>Actual</target>\n      </trans-unit>\n      <trans-unit id="e5e7d62e942083a59b0b31f54e17cd7958186052" datatype="html">\n        <source>Updated discovery authentication</source>\n        <target>Autenticación de descubrimiento actualizada</target>\n      </trans-unit>\n      <trans-unit id="dd4ab758afd5fd5a6c6a25b2b30ff99d0c00e9ad" datatype="html">\n        <source>There are no portals available.</source>\n        <target>No hay ningún portal disponible.</target>\n      </trans-unit>\n      <trans-unit id="83021e45778a4a230a14ca0c6d6ccdf05500ad93" datatype="html">\n        <source>There are no images available.</source>\n        <target>No hay ninguna imagen disponible.</target>\n      </trans-unit>\n      <trans-unit id="86684eb21f8a768e1dbc659e3d5da6861db544a0" datatype="html">\n        <source>There are no images available. Please make sure you add an image to the target.</source>\n        <target>No hay ninguna imagen disponible. Asegúrese de añadir una imagen al destino.</target>\n      </trans-unit>\n      <trans-unit id="fffda6e440078f57eba93944ce051c593cc6ed7f" datatype="html">\n        <source>There are no initiators available. Please make sure you add an initiator to the target.</source>\n        <target>No hay ningún iniciador disponible. Asegúrese de añadir un iniciador al destino.</target>\n      </trans-unit>\n      <trans-unit id="cea3c6fe490385eef1584cbc4983fda7ece24bb6" datatype="html">\n        <source>target</source>\n        <target>target</target>\n      </trans-unit>\n      <trans-unit id="38baeb215c17af9d9e295e371a57f4a48ab4c191" datatype="html">\n        <source>Target</source>\n        <target>Destino</target>\n      </trans-unit>\n      <trans-unit id="99e094878070eebc1b972bac02aaa33b2bf83b35" datatype="html">\n        <source># Sessions</source>\n        <target># Sessions</target>\n      </trans-unit>\n      <trans-unit id="2ea10b3668e04e057ba96ddcaf4c9b77089008ae" datatype="html">\n        <source>Unavailable gateway(s)</source>\n        <target>Unavailable gateway(s)</target>\n      </trans-unit>\n      <trans-unit id="c49e0dd71d551bd4928d967d78f0721dbf9f95e3" datatype="html">\n        <source>Target has active sessions</source>\n        <target>Target has active sessions</target>\n      </trans-unit>\n      <trans-unit id="a87acd72dfb68b45175270695209550a85adf50c" datatype="html">\n        <source>iSCSI target</source>\n        <target>iSCSI target</target>\n      </trans-unit>\n      <trans-unit id="873b72903b1858a9cd6c8967521030b4d7d1435b" datatype="html">\n        <source>State</source>\n        <target>Estado</target>\n      </trans-unit>\n      <trans-unit id="02b75464c0dc0cf49ea0208211b6fbcad3bf728a" datatype="html">\n        <source># Targets</source>\n        <target># Targets</target>\n      </trans-unit>\n      <trans-unit id="13415637c325ceefee29111b31cb48701490adf7" datatype="html">\n        <source>Read Bytes</source>\n        <target>Bytes de lectura</target>\n      </trans-unit>\n      <trans-unit id="e2ed82b7bbf4a006e60e6208c597b05d5b5556e9" datatype="html">\n        <source>Write Bytes</source>\n        <target>Bytes de escritura</target>\n      </trans-unit>\n      <trans-unit id="6a32a5f58845ca840185ea9564682094e77a1d80" datatype="html">\n        <source>Read Ops</source>\n        <target>Operaciones de lectura</target>\n      </trans-unit>\n      <trans-unit id="7c36cb8032af123d3550ffab2e1fa1e957c87fae" datatype="html">\n        <source>Write Ops</source>\n        <target>Operaciones de escritura</target>\n      </trans-unit>\n      <trans-unit id="458c33846a8c7e2feb9404bcf06723784e756cdc" datatype="html">\n        <source>A/O Since</source>\n        <target>A/O desde</target>\n      </trans-unit>\n      <trans-unit id="ff78f059449d44322f627d0f66df07abe476962b" datatype="html">\n        <source>Instance</source>\n        <target>Instancia</target>\n      </trans-unit>\n      <trans-unit id="36fad7995cadfb3a6f0d43ef2db280146b3ca022" datatype="html">\n        <source>Issue</source>\n        <target>Problema</target>\n      </trans-unit>\n      <trans-unit id="15793f4cbc261bedbc60f7105533dde536a3f42b" datatype="html">\n        <source>Progress</source>\n        <target>Progreso</target>\n      </trans-unit>\n      <trans-unit id="25b725dba712a7a020fd34a72297befae975a492" datatype="html">\n        <source>Edit Site Name</source>\n        <target>Edit Site Name</target>\n      </trans-unit>\n      <trans-unit id="8c375764db42f5d736fb56d01b8052c006ccc8e2" datatype="html">\n        <source>Edit Mode</source>\n        <target>Editar modo</target>\n      </trans-unit>\n      <trans-unit id="45932f2a0ea524b3425f4320ee46a6d1c68977bc" datatype="html">\n        <source>Add Peer</source>\n        <target>Añadir par</target>\n      </trans-unit>\n      <trans-unit id="d3dc34662e3cda0dad646221651cebd26f731485" datatype="html">\n        <source>Edit Peer</source>\n        <target>Editar par</target>\n      </trans-unit>\n      <trans-unit id="e8a0ec0b6ee72db0f27c186e09640d1ed41964bd" datatype="html">\n        <source>Delete Peer</source>\n        <target>Suprimir par</target>\n      </trans-unit>\n      <trans-unit id="314de06d6f64d39149e78e6d796585c0246fec0b" datatype="html">\n        <source>Leader</source>\n        <target>Líder</target>\n      </trans-unit>\n      <trans-unit id="7acaab450312114059ced9e3737798ee9aa738b1" datatype="html">\n        <source># Local</source>\n        <target>N.º locales</target>\n      </trans-unit>\n      <trans-unit id="7a3ffd88868135c44be3994263bb8e49d8358884" datatype="html">\n        <source># Remote</source>\n        <target>N.º remotos</target>\n      </trans-unit>\n      <trans-unit id="85ca0fd6a6ddd211023c70a25753122c5b978787" datatype="html">\n        <source>mirror peer</source>\n        <target>duplicar par</target>\n      </trans-unit>\n      <trans-unit id="a6493c6ca346cd052da40423eda9c132de2b2002" datatype="html">\n        <source>Key</source>\n        <target>Clave</target>\n      </trans-unit>\n      <trans-unit id="e9cac80fb5d9de66f0006d0bec530fd1fc69a674" datatype="html">\n        <source>RBD</source>\n        <target>RBD</target>\n      </trans-unit>\n      <trans-unit id="4130b1a836f2000cfe9a11fb62493dc42d444de7" datatype="html">\n        <source>Deep flatten</source>\n        <target>Aplanamiento profundo</target>\n      </trans-unit>\n      <trans-unit id="7b17694d7cb8ecb7c8440bc999dac21b44455b33" datatype="html">\n        <source>Layering</source>\n        <target>En capas</target>\n      </trans-unit>\n      <trans-unit id="6a072ce577c2079d0e0c31071a16824f6d22b84d" datatype="html">\n        <source>Exclusive lock</source>\n        <target>Bloqueo exclusivo</target>\n      </trans-unit>\n      <trans-unit id="7354f01320bf936a7f85577c9f71402635c3a362" datatype="html">\n        <source>Object map (requires exclusive-lock)</source>\n        <target>Mapa de objetos (requiere bloqueo exclusivo)</target>\n      </trans-unit>\n      <trans-unit id="fb7e625c1152f1c102cd16460955d124edff1770" datatype="html">\n        <source>Journaling (requires exclusive-lock)</source>\n        <target>En diario (requiere bloqueo exclusivo)</target>\n      </trans-unit>\n      <trans-unit id="df4044632bfc211dd96544fc8f007dabbeeb506c" datatype="html">\n        <source>Fast diff (interlocked with object-map)</source>\n        <target>Fast diff (interlocked with object-map)</target>\n      </trans-unit>\n      <trans-unit id="130fd872c78271a8f86b1ab16a76e823969c47d9" datatype="html">\n        <source>Namespace</source>\n        <target>Namespace</target>\n      </trans-unit>\n      <trans-unit id="14abc99daed542774633046c53b6ce8251331141" datatype="html">\n        <source>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</source>\n        <target>This RBD has cloned snapshots. Please delete related RBDs before deleting this RBD.</target>\n      </trans-unit>\n      <trans-unit id="51699f716cf34e6622ff7bfd84641480c045271a" datatype="html">\n        <source>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Created namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bf44b7d6379ce0198ed3d95a27642a224181bf1d" datatype="html">\n        <source>Total images</source>\n        <target>Total images</target>\n      </trans-unit>\n      <trans-unit id="371ce3ffe62548d15e391a248bc554d903bb03fc" datatype="html">\n        <source>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </source>\n        <target>Deleted namespace \'\n          <x id="INTERPOLATION" equiv-text="{{pool}}"/>/\n          <x id="INTERPOLATION_1" equiv-text="{{namespace}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="9d704fd00ca929f90c3119cefc581821ae58a73e" datatype="html">\n        <source>Namespace contains images</source>\n        <target>Namespace contains images</target>\n      </trans-unit>\n      <trans-unit id="c2017dc94b4f57a347ccb126e546e88942f4d7a6" datatype="html">\n        <source>RBD Snapshot</source>\n        <target>RBD Snapshot</target>\n      </trans-unit>\n      <trans-unit id="631fc50ec7c9bd81dc797a3c7e09eda1178ad999" datatype="html">\n        <source>Parent image must support Layering</source>\n        <target>Parent image must support Layering</target>\n      </trans-unit>\n      <trans-unit id="cb60c1cd3655234756b5b92d4d597d92d520ee30" datatype="html">\n        <source>PROTECTED</source>\n        <target>PROTECTED</target>\n      </trans-unit>\n      <trans-unit id="deffb86b8fb0541254ad5a43862d82bff6b6a6c4" datatype="html">\n        <source>UNPROTECTED</source>\n        <target>SIN PROTECCIÓN</target>\n      </trans-unit>\n      <trans-unit id="7eb984588f4835f6d0187b33769b4b0f62821640" datatype="html">\n        <source>RBD snapshot rollback</source>\n        <target>Reversión de instantánea RBD</target>\n      </trans-unit>\n      <trans-unit id="4be22bf20ef82614ed53bcd3b912a85590aa71c9" datatype="html">\n        <source>Rollback</source>\n        <target>Revertir</target>\n      </trans-unit>\n      <trans-unit id="2a04c483708d261751d62082d6f03a50d4577b1e" datatype="html">\n        <source>RBD snapshot</source>\n        <target>Instantánea RBD</target>\n      </trans-unit>\n      <trans-unit id="fa96769d1ea86741297cb9b9769b0dcfde58c8b4" datatype="html">\n        <source>Deleted At</source>\n        <target>Suprimido a las</target>\n      </trans-unit>\n      <trans-unit id="e928864038ca70ee7d67bbf1fd71a01c3938a127" datatype="html">\n        <source>id</source>\n        <target>ID</target>\n      </trans-unit>\n      <trans-unit id="240c9c1e96dc38814922a83ad041dc815b084f32" datatype="html">\n        <source>type</source>\n        <target>tipo</target>\n      </trans-unit>\n      <trans-unit id="c9d7ec7ee5b4e282f2228fa996651ec4ef5195a9" datatype="html">\n        <source>state</source>\n        <target>estado</target>\n      </trans-unit>\n      <trans-unit id="5780e5c3b4fc2ae07836bb5221cec4f8d597630d" datatype="html">\n        <source>version</source>\n        <target>versión</target>\n      </trans-unit>\n      <trans-unit id="fe22ca53e651df951dac25b67c17894b0980f767" datatype="html">\n        <source>Host</source>\n        <target>Host</target>\n      </trans-unit>\n      <trans-unit id="fb69299354312c8954ecf324997ccafcd9f6b14b" datatype="html">\n        <source>root</source>\n        <target>raíz</target>\n      </trans-unit>\n      <trans-unit id="d34feb369d308075b423d5c5fc431f9766bf7a11" datatype="html">\n        <source>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </source>\n        <target>Evicted client "\n          <x id="INTERPOLATION" equiv-text="{{clientId}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7db875ff4cc626d394f37fba95c075b2e4bfeb00" datatype="html">\n        <source>Standby daemons</source>\n        <target>Daemons de reserva</target>\n      </trans-unit>\n      <trans-unit id="3c3a423d91e36ac6624e909fcd2669a25685f847" datatype="html">\n        <source>Rank</source>\n        <target>Clasificación</target>\n      </trans-unit>\n      <trans-unit id="9596ecae8956e96921acef47aec787f6bdc37454" datatype="html">\n        <source>Daemon</source>\n        <target>Daemon</target>\n      </trans-unit>\n      <trans-unit id="f2005fa461c06dc2e04d8918bbabedf23604b5b7" datatype="html">\n        <source>Activity</source>\n        <target>Actividad</target>\n      </trans-unit>\n      <trans-unit id="e3a986984ae0c3b43af648c3fa638649d1c00348" datatype="html">\n        <source>Dentries</source>\n        <target>Dentries</target>\n      </trans-unit>\n      <trans-unit id="7c692ab865066967d73c6d64ec0691cc6ce91b93" datatype="html">\n        <source>Inodes</source>\n        <target>Inodos</target>\n      </trans-unit>\n      <trans-unit id="45f210b96a2a6e91f52f153a4f8dc30662629f8e" datatype="html">\n        <source>Usage</source>\n        <target>Uso</target>\n      </trans-unit>\n      <trans-unit id="950b5f04a2efd3f11c0f76418d5a4212381e792e" datatype="html">\n        <source>Origin</source>\n        <target>Origin</target>\n      </trans-unit>\n      <trans-unit id="2ea2ec95d93fd55d0db6e9d2b95b25e153d4cec2" datatype="html">\n        <source>Max size</source>\n        <target>Max size</target>\n      </trans-unit>\n      <trans-unit id="665dced3a61bca44924a0bde4be47390225a4898" datatype="html">\n        <source>Max files</source>\n        <target>Max files</target>\n      </trans-unit>\n      <trans-unit id="0ccf776baac60794b142526986f3af85848c7059" datatype="html">\n        <source>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </source>\n        <target>The inherited \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/> is the maximum value to be used.\n        </target>\n      </trans-unit>\n      <trans-unit id="b0e2ef28384f2de6674cac300c779f900929a89b" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/> CephFS \n          <x id="INTERPOLATION_1" equiv-text="{{quotaName}}"/> quota for \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="542ef638499635dec7641bdc2e499258094187cc" datatype="html">\n        <source>size</source>\n        <target>size</target>\n      </trans-unit>\n      <trans-unit id="ce90ff00c341d8eef96b0e7956bb85b8faba3839" datatype="html">\n        <source>files</source>\n        <target>files</target>\n      </trans-unit>\n      <trans-unit id="fbe8b9340c08c24aef62ffe81c83e2b46a4f1495" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{quotaName}}"/> quota \n          <x id="INTERPOLATION_1" equiv-text="{{value}}"/> from \'\n          <x id="INTERPOLATION_2" equiv-text="{{path}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="37c2c0a4a356465eef2edfb09ffffc6db5259975" datatype="html">\n        <source>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </source>\n        <target>Value has to be at least \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or more\n        </target>\n      </trans-unit>\n      <trans-unit id="73f8e64703a707e2cf98b9a10653cd3bbdd8cab1" datatype="html">\n        <source>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </source>\n        <target>Value has to be at most \n          <x id="INTERPOLATION" equiv-text="{{value}}"/> or less\n        </target>\n      </trans-unit>\n      <trans-unit id="9da0107a35751e722c8b4bca7636fc7645dbdbdc" datatype="html">\n        <source>Updated</source>\n        <target>Actualizado</target>\n      </trans-unit>\n      <trans-unit id="b6a4cf4f302c7fcbec199ce0df42b8282d682b04" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{action}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{quotaValue}}"/>\n          <x id="INTERPOLATION_2" equiv-text="{{conclusion}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a40024afb071f68fec949094a71f832d5611bca5" datatype="html">\n        <source>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>in order to inherit \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c108ff588291e9c040adea2adf35e7236cf29925" datatype="html">\n        <source>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </source>\n        <target>which isn\'t used because of the inheritance of \n          <x id="INTERPOLATION" equiv-text="{{quotaValue}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d3785a64d1c72b03b2212855ce695b45ed0342d2" datatype="html">\n        <source>in order to have no quota on the directory</source>\n        <target>in order to have no quota on the directory</target>\n      </trans-unit>\n      <trans-unit id="c4d3a3446a7f36825291c5e76c4a6b7919f9bd2f" datatype="html">\n        <source>Create Snapshot</source>\n        <target>Create Snapshot</target>\n      </trans-unit>\n      <trans-unit id="e9af734e231b837d64df21008e2eb1fdff566a61" datatype="html">\n        <source>Please enter the name of the snapshot.</source>\n        <target>Please enter the name of the snapshot.</target>\n      </trans-unit>\n      <trans-unit id="8c4d3039e6a953b0d6f1b1313ffa60c5d2b35dc7" datatype="html">\n        <source>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Created snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="126ad894f74ee9a999825f3f4ac5a31fdfc093bf" datatype="html">\n        <source>CephFs Snapshot</source>\n        <target>CephFs Snapshot</target>\n      </trans-unit>\n      <trans-unit id="1e4d1c0865adc485260740c42ac5af68ce8feb13" datatype="html">\n        <source>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </source>\n        <target>Deleted snapshot "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>" for "\n          <x id="INTERPOLATION_1" equiv-text="{{path}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="22e4e574b7f8abf58254f328792445b42e2a924a" datatype="html">\n        <source>The value can be updated at runtime.</source>\n        <target>El valor se puede actualizar en el tiempo de ejecución.</target>\n      </trans-unit>\n      <trans-unit id="d7770de7b2343c9deeaa7ebf37ba3e35ca5c5988" datatype="html">\n        <source>Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via \'ceph config\n      set ...\'. This option should be configured via ceph.conf or via the\n      command line.</source>\n        <target>Los daemons/clientes no extraen este valor de la\n      base de datos de configuración del monitor. No se recomienda definir esta opción con "ceph config\n      set ...". Esta opción se debe configurar mediante ceph.conf o a través\n      de la línea de comandos.</target>\n      </trans-unit>\n      <trans-unit id="83f11fd1dc503c37931ea6c1c5c1e8c2b4b597b6" datatype="html">\n        <source>Option takes effect only during daemon startup.</source>\n        <target>La opción solo surte efecto durante el inicio del daemon.</target>\n      </trans-unit>\n      <trans-unit id="837a07cd6a971038b8b1aa190c43440c9fdb5d8b" datatype="html">\n        <source>Option only affects cluster creation.</source>\n        <target>La opción solo afecta a la creación del clúster.</target>\n      </trans-unit>\n      <trans-unit id="2566a88eb247c918b71cfe5b354c31de0d4b01e5" datatype="html">\n        <source>Option only affects daemon creation.</source>\n        <target>La opción solo afecta a la creación del daemon.</target>\n      </trans-unit>\n      <trans-unit id="1cdc60cfc09c257625768f3d2082816cdef27279" datatype="html">\n        <source>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </source>\n        <target>Updated config option \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="d473e0f684a60db45d6f31e993f693f74290e056" datatype="html">\n        <source>Service</source>\n        <target>Servicio</target>\n      </trans-unit>\n      <trans-unit id="6986e0df8092d822ac2c076520d83994c78834fc" datatype="html">\n        <source>Modified</source>\n        <target>Modified</target>\n      </trans-unit>\n      <trans-unit id="9951bb3983c7dba6fde013e05c922e4fe1a44367" datatype="html">\n        <source>Current value</source>\n        <target>Valor actual</target>\n      </trans-unit>\n      <trans-unit id="4a01c175f90dd92b432f4a4a199d2c7bb9d997ff" datatype="html">\n        <source>Editable</source>\n        <target>Editable</target>\n      </trans-unit>\n      <trans-unit id="261c0af854e8684abc15f89dce6efb3e72344b18" datatype="html">\n        <source>host</source>\n        <target>host</target>\n      </trans-unit>\n      <trans-unit id="b1b381321d4cef04605d3e6e8847ea2b72a03799" datatype="html">\n        <source>Identify</source>\n        <target>Identify</target>\n      </trans-unit>\n      <trans-unit id="a5d5e407f8c4e1b152509c966c90f37edf68472e" datatype="html">\n        <source>Device path</source>\n        <target>Device path</target>\n      </trans-unit>\n      <trans-unit id="b7da3e3505cc80f9bf3cffc8444c53e8a9ec70a5" datatype="html">\n        <source>Available</source>\n        <target>Available</target>\n      </trans-unit>\n      <trans-unit id="396974120fc614fc930a27c8d15a094d82a3a9e4" datatype="html">\n        <source>Vendor</source>\n        <target>Vendor</target>\n      </trans-unit>\n      <trans-unit id="6ec98fa3d6504ba1fd03465194b53706c8263c99" datatype="html">\n        <source>Model</source>\n        <target>Model</target>\n      </trans-unit>\n      <trans-unit id="f2d785f5658c96c6a2f505cdd625108bcece84c3" datatype="html">\n        <source>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </source>\n        <target>Identify device \n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="c97ab45ca09248f8f1ba60328175741657fe39ce" datatype="html">\n        <source>Please enter the duration how long to blink the LED.</source>\n        <target>Please enter the duration how long to blink the LED.</target>\n      </trans-unit>\n      <trans-unit id="87e56ee5057023d7e8b59420b838bad112b043bc" datatype="html">\n        <source>1 minute</source>\n        <target>1 minute</target>\n      </trans-unit>\n      <trans-unit id="affa3b3bf1f36531e5ae65291f8a7cd1b06860ee" datatype="html">\n        <source>2 minutes</source>\n        <target>2 minutes</target>\n      </trans-unit>\n      <trans-unit id="878c6645b7fc26d85c7aee17a9d8c282a938dcf3" datatype="html">\n        <source>5 minutes</source>\n        <target>5 minutes</target>\n      </trans-unit>\n      <trans-unit id="aa0a76140961594b7176ade241e5025a7dbb5dce" datatype="html">\n        <source>10 minutes</source>\n        <target>10 minutes</target>\n      </trans-unit>\n      <trans-unit id="0a7f83a1f27750ef634a1f1f97263fac36113b1f" datatype="html">\n        <source>15 minutes</source>\n        <target>15 minutes</target>\n      </trans-unit>\n      <trans-unit id="699b690d686dbb8e00a1e95b89ba2fffb548da6e" datatype="html">\n        <source>Execute</source>\n        <target>Execute</target>\n      </trans-unit>\n      <trans-unit id="aa975a86dd49979a3ae90b9f3fc5b2c97311d422" datatype="html">\n        <source>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>Identifying \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' started on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="1a6e6ad05508130b7a99ce5b15daf3227c2a930c" datatype="html">\n        <source>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </source>\n        <target>Updated options for module "\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="6bd47ff8707aa2e6a94a4a6e2566b86dc7956d5f" datatype="html">\n        <source>Always-On</source>\n        <target>Always-On</target>\n      </trans-unit>\n      <trans-unit id="ac6c9212896d39b23811ed2dadab7d07336ec559" datatype="html">\n        <source>Enable</source>\n        <target>Habilitar</target>\n      </trans-unit>\n      <trans-unit id="6766a926d80bb7763785621098dae459d6226429" datatype="html">\n        <source>Disable</source>\n        <target>Inhabilitar</target>\n      </trans-unit>\n      <trans-unit id="340f2f312c2eb353e5cd69aee6bee7f5a73c34ac" datatype="html">\n        <source>This Manager module is always on.</source>\n        <target>This Manager module is always on.</target>\n      </trans-unit>\n      <trans-unit id="6a0b3657745dd7a2f2162f1cc790bf9004d0845d" datatype="html">\n        <source>Reconnecting, please wait ...</source>\n        <target>Conectando de nuevo. Espere...</target>\n      </trans-unit>\n      <trans-unit id="7099a8878af7a0a26fe5663c4f46cfe87142b75d" datatype="html">\n        <source>Public Address</source>\n        <target>Dirección pública</target>\n      </trans-unit>\n      <trans-unit id="cbdd1cdc0c7a87f55dd177bc44212f0fc4b80852" datatype="html">\n        <source>Open Sessions</source>\n        <target>Sesiones abiertas</target>\n      </trans-unit>\n      <trans-unit id="34c6f45591d420b1101dcee53999d1de91c0e400" datatype="html">\n        <source>No available devices</source>\n        <target>No available devices</target>\n      </trans-unit>\n      <trans-unit id="dcfe8807a2a1d0d7074a02afe9b80645bd03b9ab" datatype="html">\n        <source>Please add primary devices first</source>\n        <target>Please add primary devices first</target>\n      </trans-unit>\n      <trans-unit id="05d024719e53f85f7f294b7e21dfd805709a0b06" datatype="html">\n        <source>Add devices by using filters</source>\n        <target>Add devices by using filters</target>\n      </trans-unit>\n      <trans-unit id="37e58d1cbdf8212b380efa51422e42821d4f08e6" datatype="html">\n        <source>No In</source>\n        <target>No incluir</target>\n      </trans-unit>\n      <trans-unit id="12706eb5af17ff5ad77b3de21af368d24678e00b" datatype="html">\n        <source>OSDs that were previously marked out will not be marked back in when they start</source>\n        <target>Los OSD que se excluyeron anteriormente no se volverán a incluir cuando se inicien</target>\n      </trans-unit>\n      <trans-unit id="96114d7624d11dc90ca46cfa96145fe22118df76" datatype="html">\n        <source>No Out</source>\n        <target>No excluir</target>\n      </trans-unit>\n      <trans-unit id="a2ef636fe1ddd56b63e4aaf3d292f33dbf735ef3" datatype="html">\n        <source>OSDs will not automatically be marked out after the configured interval</source>\n        <target>Los OSD no se excluirán automáticamente después del intervalo configurado</target>\n      </trans-unit>\n      <trans-unit id="ee50aefa9b8bde1e5429b48709a23abfe08358e0" datatype="html">\n        <source>No Up</source>\n        <target>No activar</target>\n      </trans-unit>\n      <trans-unit id="608929b939307e397586a98cea52ae38997c7273" datatype="html">\n        <source>OSDs are not allowed to start</source>\n        <target>No se permite que los OSD se inicien</target>\n      </trans-unit>\n      <trans-unit id="1751ab69c1e7f62927afedbf7116e0116316c551" datatype="html">\n        <source>No Down</source>\n        <target>No desactivar</target>\n      </trans-unit>\n      <trans-unit id="41fac86dfb65c1db690f3e87f6497cb73b281084" datatype="html">\n        <source>OSD failure reports are being ignored, such that the monitors will not mark OSDs down</source>\n        <target>Se ignoran los informes de error de OSD, de forma que los monitores no desactivarán los OSD</target>\n      </trans-unit>\n      <trans-unit id="b2838c6165a9672a17db188f4dd9676574353dd8" datatype="html">\n        <source>Pause</source>\n        <target>Pausa</target>\n      </trans-unit>\n      <trans-unit id="191d71dadcc8790573d46706a0b48211de4b8334" datatype="html">\n        <source>Pauses reads and writes</source>\n        <target>Pone en pausa las lecturas y escrituras</target>\n      </trans-unit>\n      <trans-unit id="471d5ba75836f38c19992cf83d8822632d99e473" datatype="html">\n        <source>No Scrub</source>\n        <target>No depurar</target>\n      </trans-unit>\n      <trans-unit id="5b8caa61814121bc36dac0c34a9e9de3cae74990" datatype="html">\n        <source>Scrubbing is disabled</source>\n        <target>La depuración está inhabilitada</target>\n      </trans-unit>\n      <trans-unit id="7f29a0ac1c797bdc0347dd5d0734ba83e96e7ce6" datatype="html">\n        <source>No Deep Scrub</source>\n        <target>No depuración profunda</target>\n      </trans-unit>\n      <trans-unit id="01da61ab216541a8d31259cebd16b10c7e5fc124" datatype="html">\n        <source>Deep Scrubbing is disabled</source>\n        <target>La depuración profunda está inhabilitada</target>\n      </trans-unit>\n      <trans-unit id="0b86c7f18ac725de62c7e192dcfccd02c0dc40ab" datatype="html">\n        <source>No Backfill</source>\n        <target>No reponer</target>\n      </trans-unit>\n      <trans-unit id="bd33a2bdc8fbed3b7469f3717c16d9aaa2851fdd" datatype="html">\n        <source>Backfilling of PGs is suspended</source>\n        <target>La reposición de grupos de colocación se suspende</target>\n      </trans-unit>\n      <trans-unit id="df526de2b93c4099a30c200ef551608e39ee5256" datatype="html">\n        <source>No Rebalance</source>\n        <target>No Rebalance</target>\n      </trans-unit>\n      <trans-unit id="c5b70346245f8d52b58e5e7fe222ce82f12429ce" datatype="html">\n        <source>OSD will choose not to backfill unless PG is also degraded</source>\n        <target>OSD will choose not to backfill unless PG is also degraded</target>\n      </trans-unit>\n      <trans-unit id="7fbbd036394cfa623add40299757bc87df8eaa7e" datatype="html">\n        <source>No Recover</source>\n        <target>No recuperar</target>\n      </trans-unit>\n      <trans-unit id="f3ee9b451a64dca47299c9b4ae1091c2008068ad" datatype="html">\n        <source>Recovery of PGs is suspended</source>\n        <target>La recuperación de los grupos de colocación se suspende</target>\n      </trans-unit>\n      <trans-unit id="de904148fe7e8d812218f50333ffe247900617c5" datatype="html">\n        <source>Bitwise Sort</source>\n        <target>Orden bit a bit</target>\n      </trans-unit>\n      <trans-unit id="2613c9fde29785bcd75f0abeccb653d14d7527b3" datatype="html">\n        <source>Use bitwise sort</source>\n        <target>Usar orden bit a bit</target>\n      </trans-unit>\n      <trans-unit id="2fe10d84250aeee365db244251d40934c70ff1e9" datatype="html">\n        <source>Purged Snapdirs</source>\n        <target>Snapdir limpiados</target>\n      </trans-unit>\n      <trans-unit id="6b22a5b780eda3c5d500cdac9c6d4f96978c38f1" datatype="html">\n        <source>OSDs have converted snapsets</source>\n        <target>Los OSD tienen snapset convertidos</target>\n      </trans-unit>\n      <trans-unit id="c42f0ba60564dc5b977a8c7f3fdcde9efbb39c60" datatype="html">\n        <source>Recovery Deletes</source>\n        <target>Supresiones de recuperación</target>\n      </trans-unit>\n      <trans-unit id="72fe39979198ea2ed6db6274b5029025cb316d90" datatype="html">\n        <source>Deletes performed during recovery instead of peering</source>\n        <target>Supresiones realizadas durante la recuperación, en lugar de emparejamientos</target>\n      </trans-unit>\n      <trans-unit id="1bb4a1f9127cefe624c173557a716d0ebb6d647c" datatype="html">\n        <source>PG Log Hard Limit</source>\n        <target>Límite estricto de registro del grupo de colocación</target>\n      </trans-unit>\n      <trans-unit id="e03c0321397fdf7a9c22e8d6b5015424943c0a57" datatype="html">\n        <source>Puts a hard limit on pg log length</source>\n        <target>Establece un límite estricto para la longitud del registro del grupo de colocación</target>\n      </trans-unit>\n      <trans-unit id="3c384e2e80c6b5eb24861fbf4225b69486cff4a3" datatype="html">\n        <source>Updated OSD Flags</source>\n        <target>Indicadores de OSD actualizados</target>\n      </trans-unit>\n      <trans-unit id="948758e1412bb2ecdb98e3a4f1cbb6d7458456f2" datatype="html">\n        <source>Encryption</source>\n        <target>Encryption</target>\n      </trans-unit>\n      <trans-unit id="c8b1475105463088593de1022ff6dceb523eae0e" datatype="html">\n        <source>OSD</source>\n        <target>OSD</target>\n      </trans-unit>\n      <trans-unit id="688578fcc739d6f0c5fb6c366dbb19d21c6d9e36" datatype="html">\n        <source>out</source>\n        <target>excluir</target>\n      </trans-unit>\n      <trans-unit id="cb0f69bdd4dea41d7d45c74b6e07f98de8a2ab26" datatype="html">\n        <source>in</source>\n        <target>Incluir</target>\n      </trans-unit>\n      <trans-unit id="b5fbc7c7f007dd53b2318525bb7ff8b0376c9e37" datatype="html">\n        <source>down</source>\n        <target>desactivar</target>\n      </trans-unit>\n      <trans-unit id="b58719bcb9184e1a7884d00d22d10899d59bf295" datatype="html">\n        <source>Mark</source>\n        <target>Marcar</target>\n      </trans-unit>\n      <trans-unit id="31a1c1aa03f1e5084750bedb4e3fdc04ce2cb6ca" datatype="html">\n        <source>OSD lost</source>\n        <target>OSD perdido</target>\n      </trans-unit>\n      <trans-unit id="f3fc4c85c5b8f1dedea0496b72d0af9da7b9e0d9" datatype="html">\n        <source>marked lost</source>\n        <target>marcado como perdido</target>\n      </trans-unit>\n      <trans-unit id="40fedc157ad899a18ec40573f770d18b040959d2" datatype="html">\n        <source>Purge</source>\n        <target>Limpiar</target>\n      </trans-unit>\n      <trans-unit id="4f3cff08c7033b63bbccfe66006b1bcaea48ddd8" datatype="html">\n        <source>purged</source>\n        <target>limpiado</target>\n      </trans-unit>\n      <trans-unit id="8e5d1b01eca6dce26a4751f0b19bda7a6ab8db5b" datatype="html">\n        <source>destroy</source>\n        <target>destruir</target>\n      </trans-unit>\n      <trans-unit id="495a06b78bf165a7b545fa002137f0846b094a3d" datatype="html">\n        <source>destroyed</source>\n        <target>destruido</target>\n      </trans-unit>\n      <trans-unit id="70ef158c584bafe788e319a0bffa11b02ee9abf1" datatype="html">\n        <source>delete</source>\n        <target>suprimir</target>\n      </trans-unit>\n      <trans-unit id="a5b387f5a15b95e339df10fc23526c659a2b6c6f" datatype="html">\n        <source>deleted</source>\n        <target>deleted</target>\n      </trans-unit>\n      <trans-unit id="107614b994f2b01abdc1ca179bf780b0cd933ec4" datatype="html">\n        <source>Recovery Priority</source>\n        <target>Recovery Priority</target>\n      </trans-unit>\n      <trans-unit id="359dad5a3a912ef9dece3194035020856805aa96" datatype="html">\n        <source>PG scrub</source>\n        <target>PG scrub</target>\n      </trans-unit>\n      <trans-unit id="953144c420c2e5abd02e6a687433eac60fa852bd" datatype="html">\n        <source>PGs</source>\n        <target>Grupos de colocación</target>\n      </trans-unit>\n      <trans-unit id="7d3523ea9d35c274cef84043de8a2fdde540a9a1" datatype="html">\n        <source>Read bytes</source>\n        <target>Bytes de lectura</target>\n      </trans-unit>\n      <trans-unit id="f15bf7f588f09ca79795b17bc244e8d336f28171" datatype="html">\n        <source>Write bytes</source>\n        <target>Bytes de escritura</target>\n      </trans-unit>\n      <trans-unit id="f3c33322823c846b13f59ba2c8f234405bba99e1" datatype="html">\n        <source>Read ops</source>\n        <target>Operaciones de lectura</target>\n      </trans-unit>\n      <trans-unit id="7e0b24a17546cbfab48b03dc874461d1ca68bc9a" datatype="html">\n        <source>Write ops</source>\n        <target>Operaciones de escritura</target>\n      </trans-unit>\n      <trans-unit id="b27d1dd31789610130b7cdbf88c4da552cffe936" datatype="html">\n        <source>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </source>\n        <target>Edit OSD: \n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="986f1379580078e77666d10f8ddf4f839c6ca71d" datatype="html">\n        <source>Edit OSD</source>\n        <target>Edit OSD</target>\n      </trans-unit>\n      <trans-unit id="a4b09e2fa39c3e4f1a387f191fbae4eea3ce7bf5" datatype="html">\n        <source>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </source>\n        <target>Updated OSD "\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="d45455406092f58e6b089cb440b5b7934b801a01" datatype="html">\n        <source>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark OSD \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="de0b7806e451b3b3dbd564decba59981fe781c18" datatype="html">\n        <source>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </source>\n        <target>Mark \n          <x id="INTERPOLATION" equiv-text="{{markAction}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="bba1d3bb4f8a47aa2b3068e242562196eadb1e83" datatype="html">\n        <source>PG scrub options</source>\n        <target>PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="b0b7748ebc9b7a6942a8cac4a89d4b215b365878" datatype="html">\n        <source>Updated PG scrub options</source>\n        <target>Updated PG scrub options</target>\n      </trans-unit>\n      <trans-unit id="4edc2162af0bd6cd941eaf730d20a7e3b5a83ba7" datatype="html">\n        <source>Max Backfills</source>\n        <target>Número máximo de reposiciones</target>\n      </trans-unit>\n      <trans-unit id="eb5e6c24a48a1dfe23e0a772b762be5e949c0c8a" datatype="html">\n        <source>Recovery Max Active</source>\n        <target>Máximo de recuperaciones activas</target>\n      </trans-unit>\n      <trans-unit id="4a23c6d3859e03184118620d2baeb736ac765fbf" datatype="html">\n        <source>Recovery Max Single Start</source>\n        <target>Máximo de recuperaciones de inicio único</target>\n      </trans-unit>\n      <trans-unit id="97049169ef5228fd1724de2fcdad1fec2858eaf8" datatype="html">\n        <source>Recovery Sleep</source>\n        <target>Reposo de recuperación</target>\n      </trans-unit>\n      <trans-unit id="89553524f4e7db5c437b07dcfdc7b831d56ded1a" datatype="html">\n        <source>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </source>\n        <target>Updated OSD recovery speed priority "\n          <x id="INTERPOLATION" equiv-text="{{value}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ccf5f30798c03d2d8efd0e6eb508320c018b722d" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{operation}}"/> was initialized in the following OSD(s): \n          <x id="INTERPOLATION_1" equiv-text="{{id}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="3bc2d18913479965cb046ec75e2ac3f7b7a77ce5" datatype="html">\n        <source>Create Silence</source>\n        <target>Create Silence</target>\n      </trans-unit>\n      <trans-unit id="78917e8031aaf913ac3fa63295325ce8879703ce" datatype="html">\n        <source>Job</source>\n        <target>Trabajo</target>\n      </trans-unit>\n      <trans-unit id="94287619205068b591c18493c64781424864c259" datatype="html">\n        <source>Severity</source>\n        <target>Gravedad</target>\n      </trans-unit>\n      <trans-unit id="e6cfbe0c5e0302ba2cec22315f6a28f8ac46b651" datatype="html">\n        <source>Started</source>\n        <target>Iniciado</target>\n      </trans-unit>\n      <trans-unit id="801b98c6f02fe3b32f6afa3ee854c99ed83474e6" datatype="html">\n        <source>URL</source>\n        <target>URL</target>\n      </trans-unit>\n      <trans-unit id="d9f726c70aeba7fa6d3d68bff718abe78b1e50ac" datatype="html">\n        <source>Query</source>\n        <target>Query</target>\n      </trans-unit>\n      <trans-unit id="a5cd682a8a33bdc72e093d059429e3cc3a50ec1d" datatype="html">\n        <source>silence</source>\n        <target>silence</target>\n      </trans-unit>\n      <trans-unit id="f557e117e059e7036c6eecacd325a6ae35d866e0" datatype="html">\n        <source>Attribute name</source>\n        <target>Attribute name</target>\n      </trans-unit>\n      <trans-unit id="50f7f517ad8158667f7d4e2bd6f3256e05156e75" datatype="html">\n        <source>Regular expression</source>\n        <target>Regular expression</target>\n      </trans-unit>\n      <trans-unit id="81b1eab399c47110d50f45e3ccb4c009de7cb581" datatype="html">\n        <source>Please add your Prometheus host to the dashboard configuration and refresh the page</source>\n        <target>Please add your Prometheus host to the dashboard configuration and refresh the page</target>\n      </trans-unit>\n      <trans-unit id="29b4ae3296e239446fa0dea88a5112de15cffa54" datatype="html">\n        <source>Created by</source>\n        <target>Created by</target>\n      </trans-unit>\n      <trans-unit id="8d833cceee0ba4c5161b130365e02bc1e129b57e" datatype="html">\n        <source>Ends</source>\n        <target>Ends</target>\n      </trans-unit>\n      <trans-unit id="46a11ff4289e8c88b1b7a935f8d8ee704055f11a" datatype="html">\n        <source>Silence</source>\n        <target>Silence</target>\n      </trans-unit>\n      <trans-unit id="f2ea47d702c7f5e3e5fa751bf9959e21030b72e6" datatype="html">\n        <source>Daemon type</source>\n        <target>Daemon type</target>\n      </trans-unit>\n      <trans-unit id="6c131968e6ab730d86443e6fc11c5cc2a76d7bac" datatype="html">\n        <source>Daemon ID</source>\n        <target>Daemon ID</target>\n      </trans-unit>\n      <trans-unit id="5738f0ca7ddd9594058ce051b1d5d576e2782825" datatype="html">\n        <source>Container ID</source>\n        <target>Container ID</target>\n      </trans-unit>\n      <trans-unit id="78ebcf850cd440c5efc15e6a3a522ae75aeff669" datatype="html">\n        <source>Container Image name</source>\n        <target>Container Image name</target>\n      </trans-unit>\n      <trans-unit id="ea0c7ab9a7bdf646d494abf8c85fbf67d934d079" datatype="html">\n        <source>Container Image ID</source>\n        <target>Container Image ID</target>\n      </trans-unit>\n      <trans-unit id="bf2468fd965b8a59c135ad549b3a612aa9873abc" datatype="html">\n        <source>Status Description</source>\n        <target>Status Description</target>\n      </trans-unit>\n      <trans-unit id="19867330bdc84096f5a93ab087a1766476c8a074" datatype="html">\n        <source>Last Refreshed</source>\n        <target>Last Refreshed</target>\n      </trans-unit>\n      <trans-unit id="2349ee2027ab6ceb3e4b8834928562075b7e1ac7" datatype="html">\n        <source>Container image name</source>\n        <target>Container image name</target>\n      </trans-unit>\n      <trans-unit id="3c475503fb93338811af6b3d9ccacca1d7334609" datatype="html">\n        <source>Container image ID</source>\n        <target>Container image ID</target>\n      </trans-unit>\n      <trans-unit id="8dd15f6c73c05a8b0bd7b6d416487ab6570b88c8" datatype="html">\n        <source>Running</source>\n        <target>Running</target>\n      </trans-unit>\n      <trans-unit id="fb2e1bed329dc5b84197808c778abb9edcbdb335" datatype="html">\n        <source>Used</source>\n        <target>Usado</target>\n      </trans-unit>\n      <trans-unit id="4f1ab04d9100fb0df0e62b921ec46ae052ae29fc" datatype="html">\n        <source>Avail.</source>\n        <target>Dispon.</target>\n      </trans-unit>\n      <trans-unit id="a1c9b3d4fa67450fe9afd1d726f8a1bd91d990ea" datatype="html">\n        <source>Clean</source>\n        <target>Limpio</target>\n      </trans-unit>\n      <trans-unit id="0054f5460090d6dde385e8f099d598df5d28cf54" datatype="html">\n        <source>Working</source>\n        <target>En curso</target>\n      </trans-unit>\n      <trans-unit id="a8059e31694578c1b0344a76a345357dd60e8f01" datatype="html">\n        <source>Warning</source>\n        <target>Advertencia</target>\n      </trans-unit>\n      <trans-unit id="e5d8bb389c702588877f039d72178f219453a72d" datatype="html">\n        <source>Unknown</source>\n        <target>Desconocido</target>\n      </trans-unit>\n      <trans-unit id="88155be1b9b9c6140d6e8f93bac4a775cfdc6671" datatype="html">\n        <source>Healthy</source>\n        <target>Healthy</target>\n      </trans-unit>\n      <trans-unit id="8a3aec4dc1a6e2d4c612ae85e0537acbb20a0f85" datatype="html">\n        <source>Misplaced</source>\n        <target>Misplaced</target>\n      </trans-unit>\n      <trans-unit id="ee81f9bf7ceac69712e0b83e8adc268739f9673e" datatype="html">\n        <source>Degraded</source>\n        <target>Degraded</target>\n      </trans-unit>\n      <trans-unit id="14625bc4025daef1969777a67a3cca27e0cd9167" datatype="html">\n        <source>Unfound</source>\n        <target>Unfound</target>\n      </trans-unit>\n      <trans-unit id="8f23ea509d081c2f747d083d44608dbf125b2ea2" datatype="html">\n        <source>replicas</source>\n        <target>replicas</target>\n      </trans-unit>\n      <trans-unit id="129a2224e1f9d19eb5e11e2a07fe10a785556484" datatype="html">\n        <source>up</source>\n        <target>activo</target>\n      </trans-unit>\n      <trans-unit id="d5f29cf0af691726483262d647eb6622be002512" datatype="html">\n        <source>no filesystems</source>\n        <target>sin sistemas de archivos</target>\n      </trans-unit>\n      <trans-unit id="b1c4387ffab06f3fa9fdb4411aea955595538d44" datatype="html">\n        <source>active</source>\n        <target>activo</target>\n      </trans-unit>\n      <trans-unit id="1aaf7054d826f2cb05ec3e88a5a4b8116861e1f5" datatype="html">\n        <source>standby</source>\n        <target>reserva</target>\n      </trans-unit>\n      <trans-unit id="c9a1080024dca344a48acdb77fa2d54e059f7254" datatype="html">\n        <source>n/a</source>\n        <target>n/d</target>\n      </trans-unit>\n      <trans-unit id="84a1787b6df375847c70f782861d7e7f8f43bff4" datatype="html">\n        <source>active daemon</source>\n        <target>daemon activo</target>\n      </trans-unit>\n      <trans-unit id="24407dc2ebfafaf6b131ee978683b893c3f1d763" datatype="html">\n        <source>quorum</source>\n        <target>quórum</target>\n      </trans-unit>\n      <trans-unit id="2fa50bc07995c6ea660412294298ded39fcb08d9" datatype="html">\n        <source>The NFS Ganesha service is not configured.</source>\n        <target>El servicio NFS Ganesha no está configurado.</target>\n      </trans-unit>\n      <trans-unit id="af1396bdc49f45ea6c4a1e414769f5e2a382c834" datatype="html">\n        <source>Transport</source>\n        <target>Transportar</target>\n      </trans-unit>\n      <trans-unit id="b6a0e176d96c4feed2e975a039c044fcf822e152" datatype="html">\n        <source>CephFS User</source>\n        <target>Usuario de CephFS</target>\n      </trans-unit>\n      <trans-unit id="44dc610cf201a163e8c38da810acec9596930bb3" datatype="html">\n        <source>CephFS Filesystem</source>\n        <target>Sistemas de archivos CephFS</target>\n      </trans-unit>\n      <trans-unit id="db6dc7124be83c7055cb0f2719e31f2f9d46fd3d" datatype="html">\n        <source>(inherited from global config)</source>\n        <target>(se hereda de la configuración global)</target>\n      </trans-unit>\n      <trans-unit id="e1f97bb86f991553ec7b535cb39e7eaa99dfcfe2" datatype="html">\n        <source>inherited from global config</source>\n        <target>se hereda de la configuración global</target>\n      </trans-unit>\n      <trans-unit id="e751800766277e7c2edd652cec7a7a1a68a37852" datatype="html">\n        <source>-- Select what kind of user id squashing is performed --</source>\n        <target>-- Seleccione el tipo de reducción de privilegios de ID de usuario que se va a realizar --</target>\n      </trans-unit>\n      <trans-unit id="4b58387f911e8a7b135a0c4d76c70335c65bbb32" datatype="html">\n        <source>There are no daemons available.</source>\n        <target>No hay ningún daemon disponible.</target>\n      </trans-unit>\n      <trans-unit id="18ae8dc1264f06df7ea251175ada2ac1b8401018" datatype="html">\n        <source>NFS export</source>\n        <target>NFS export</target>\n      </trans-unit>\n      <trans-unit id="c56d51748965db5f3966cd1d06a1c9f4b5244931" datatype="html">\n        <source>Crush Rule</source>\n        <target>Crush Rule</target>\n      </trans-unit>\n      <trans-unit id="ae128527ec18892f812a62a1fd15dc50a38060c0" datatype="html">\n        <source>EC Profile</source>\n        <target>EC Profile</target>\n      </trans-unit>\n      <trans-unit id="60fb10c145f9c7ede2b9ddf9b2b0b0f6191d0ebd" datatype="html">\n        <source>Cache Mode</source>\n        <target>Modo de caché</target>\n      </trans-unit>\n      <trans-unit id="fa5bfad31d4139f6871443bb74324ffda5cad3e6" datatype="html">\n        <source>Min Evict Age</source>\n        <target>Antigüedad mínima de expulsión</target>\n      </trans-unit>\n      <trans-unit id="fd0eb851666df45c34c76fabcda79b0d77bc910b" datatype="html">\n        <source>Min Flush Age</source>\n        <target>Antigüedad mínima de vaciado</target>\n      </trans-unit>\n      <trans-unit id="cb54d2c420a534cee0c308ea5589f8c394ef8d67" datatype="html">\n        <source>Target Max Bytes</source>\n        <target>Número máximo de bytes de destino</target>\n      </trans-unit>\n      <trans-unit id="07f4ebe6615dca466818ffdae2a69ee217d265fb" datatype="html">\n        <source>Target Max Objects</source>\n        <target>Número máximo de objetos de destino</target>\n      </trans-unit>\n      <trans-unit id="eaa8f4df53cf7fa78d078e20a701d10f3dccd77d" datatype="html">\n        <source>No applications added</source>\n        <target>No se ha añadido ninguna aplicación</target>\n      </trans-unit>\n      <trans-unit id="321c2a7640f11177ea49b0857b94c4b70830c0e6" datatype="html">\n        <source>Applications limit reached</source>\n        <target>Se ha alcanzado el límite de aplicaciones</target>\n      </trans-unit>\n      <trans-unit id="519d27742b74fadc8336777452f78891e98aa1dc" datatype="html">\n        <source>A pool can only have up to four applications definitions.</source>\n        <target>Un repositorio solo puede tener hasta cuatro definiciones de aplicaciones.</target>\n      </trans-unit>\n      <trans-unit id="b5bec3813f0d45daa7eb9471272969e1bc3e734e" datatype="html">\n        <source>Allowed characters \'_a-zA-Z0-9\'</source>\n        <target>Caracteres permitidos: _, a-z, A-Z y 0-9</target>\n      </trans-unit>\n      <trans-unit id="807472d29602a0085bce62e534bd66208982c2e2" datatype="html">\n        <source>Maximum length is 128 characters</source>\n        <target>La longitud máxima es 128 caracteres</target>\n      </trans-unit>\n      <trans-unit id="37785748b9ac9ad1d3e4b111ac502c3284afe84b" datatype="html">\n        <source>Filter or add applications</source>\n        <target>Filtrar o añadir aplicaciones</target>\n      </trans-unit>\n      <trans-unit id="38c7b8610ca87835e13eeee6a09ba1c414cd5cb9" datatype="html">\n        <source>Add application</source>\n        <target>Añadir aplicación</target>\n      </trans-unit>\n      <trans-unit id="db8c42f077700d8a94619fad9f4c94b7361d5f1d" datatype="html">\n        <source>pool</source>\n        <target>pool</target>\n      </trans-unit>\n      <trans-unit id="65bb2be83261bc4798853bbccdedc110c43feea7" datatype="html">\n        <source>erasure code profile</source>\n        <target>perfil de código de borrado</target>\n      </trans-unit>\n      <trans-unit id="ae48e19a9a2acaca4b5ea594451bc9b0b01ec8d2" datatype="html">\n        <source>crush rule</source>\n        <target>crush rule</target>\n      </trans-unit>\n      <trans-unit id="112d356ad6846959ca4aa5ec9a1f0d9d473b24ec" datatype="html">\n        <source>Replica Size</source>\n        <target>Tamaño de réplica</target>\n      </trans-unit>\n      <trans-unit id="ec50492db341fa752b023d8c924601286b6c9c0c" datatype="html">\n        <source>Last Change</source>\n        <target>Último cambio</target>\n      </trans-unit>\n      <trans-unit id="563a8c136a9d423bc7ae1269a404d6da5fd83dad" datatype="html">\n        <source>Erasure Coded Profile</source>\n        <target>Perfil de código de borrado</target>\n      </trans-unit>\n      <trans-unit id="0ad7f0662956cff61ac1208f92b1a0305b1b2e58" datatype="html">\n        <source>Crush Ruleset</source>\n        <target>Conjunto de reglas de CRUSH</target>\n      </trans-unit>\n      <trans-unit id="bcc365a084b6145b941b371bd4c2b6c3d2c79234" datatype="html">\n        <source>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</source>\n        <target>Pool deletion is disabled by the mon_allow_pool_delete configuration setting.</target>\n      </trans-unit>\n      <trans-unit id="44939fd05cedfd077db886528b755e77d5fa3885" datatype="html">\n        <source>bucket</source>\n        <target>papelera</target>\n      </trans-unit>\n      <trans-unit id="84fee774286ec4191311f1277075455c3ea5e2e2" datatype="html">\n        <source>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </source>\n        <target>Updated Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="2d7a43674f0bbc131c9e555ec16ac37fa0445d76" datatype="html">\n        <source>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </source>\n        <target>Created Object Gateway bucket "\n          <x id="INTERPOLATION" equiv-text="{{bid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="ec40d74ecfb1d6d60455af6805c9a714a3f5750a" datatype="html">\n        <source>buckets</source>\n        <target>papeleras</target>\n      </trans-unit>\n      <trans-unit id="764585d5595bac113582ee14a6fd07006770ceb1" datatype="html">\n        <source>capability</source>\n        <target>capability</target>\n      </trans-unit>\n      <trans-unit id="0914cbe18bae204217e1851be6d2d24d86e74605" datatype="html">\n        <source>user</source>\n        <target>usuario</target>\n      </trans-unit>\n      <trans-unit id="d8c86dc5e48a63590d9c94e19f90b5f8325cbd49" datatype="html">\n        <source>subuser</source>\n        <target>subuser</target>\n      </trans-unit>\n      <trans-unit id="f45a3de8a8b40d161cc36a55d77548a27107ca04" datatype="html">\n        <source>S3 Key</source>\n        <target>S3 Key</target>\n      </trans-unit>\n      <trans-unit id="854a763265e92f91ba3ccee1a0e8d823be584f7c" datatype="html">\n        <source>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Updated Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="84ab3fd641e65e39cffee0ec722a059ed284229e" datatype="html">\n        <source>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </source>\n        <target>Created Object Gateway user "\n          <x id="INTERPOLATION" equiv-text="{{uid}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="7c7f4be7b726e61c577e63842a58d9e435f7c597" datatype="html">\n        <source>users</source>\n        <target>usuarios</target>\n      </trans-unit>\n      <trans-unit id="9f7760223efd77806f1bbaf963e6993bb4bc6a0a" datatype="html">\n        <source>Swift Key</source>\n        <target>Swift Key</target>\n      </trans-unit>\n      <trans-unit id="6462d8f12b427c29363f00b12f20f566be24937c" datatype="html">\n        <source>Device ID</source>\n        <target>Device ID</target>\n      </trans-unit>\n      <trans-unit id="82f12bf23db4bb82db89877bebe93954bc1c8fb0" datatype="html">\n        <source>State of Health</source>\n        <target>State of Health</target>\n      </trans-unit>\n      <trans-unit id="7bd34bd120146afef0e0d8fa168d9bdabd594b6a" datatype="html">\n        <source>Good</source>\n        <target>Good</target>\n      </trans-unit>\n      <trans-unit id="31c59dce114ec0a9d02552ef7b81920b3de36793" datatype="html">\n        <source>Bad</source>\n        <target>Bad</target>\n      </trans-unit>\n      <trans-unit id="2862af5284f66d4b06bdcf77a5519141723b6989" datatype="html">\n        <source>Stale</source>\n        <target>Stale</target>\n      </trans-unit>\n      <trans-unit id="8d8e819b52984a4fbdec75a99eb28d1ae4323bbc" datatype="html">\n        <source>Life Expectancy</source>\n        <target>Life Expectancy</target>\n      </trans-unit>\n      <trans-unit id="72d9b15be18ea063e78c4e855b9e8c0af95593ef" datatype="html">\n        <source>Prediction Creation Date</source>\n        <target>Prediction Creation Date</target>\n      </trans-unit>\n      <trans-unit id="a6b4ef85e5ff8bd192751c7bbebc54c46118d6d4" datatype="html">\n        <source>Device Name</source>\n        <target>Device Name</target>\n      </trans-unit>\n      <trans-unit id="d5fd840374ca1a6f394bcd81f390a6dca27f8224" datatype="html">\n        <source>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </source>\n        <target>An error with error code \n          <x id="INTERPOLATION" equiv-text="{{code}}"/> occurred.\n        </target>\n      </trans-unit>\n      <trans-unit id="a0b59d7139692bb8d8ed786b6eb6e9e70ce743f3" datatype="html">\n        <source>Raw</source>\n        <target>Raw</target>\n      </trans-unit>\n      <trans-unit id="2f3beddc8234b30fb26a7f63ba2f1ea74f2ed6f7" datatype="html">\n        <source>Threshold</source>\n        <target>Threshold</target>\n      </trans-unit>\n      <trans-unit id="4654b5a68af3c8bad29aa14ca85ccea1f3143c6b" datatype="html">\n        <source>When Failed</source>\n        <target>When Failed</target>\n      </trans-unit>\n      <trans-unit id="5b7f56d5be49fb8e8d8f40209d6746f8f72e9177" datatype="html">\n        <source>Worst</source>\n        <target>Worst</target>\n      </trans-unit>\n      <trans-unit id="1481b8488e10dbc437accce89d2ae35a0106e8ba" datatype="html">\n        <source>Scope</source>\n        <target>Ámbito</target>\n      </trans-unit>\n      <trans-unit id="9b1d5e95f6bdcfb4b737413f5fa157e0dcb103d5" datatype="html">\n        <source>Read</source>\n        <target>Lectura</target>\n      </trans-unit>\n      <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">\n        <source>Create</source>\n        <target>Crear</target>\n      </trans-unit>\n      <trans-unit id="dc4fba275819619ee78e8eae14d357ea69ba7477" datatype="html">\n        <source>role</source>\n        <target>role</target>\n      </trans-unit>\n      <trans-unit id="fe6ee93173884201ec62d62ba173c3de85ae177e" datatype="html">\n        <source>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Created role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="41c032df0732f4318f8213fabd0719ac347d4b6c" datatype="html">\n        <source>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Updated role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="50e22b5289f79f1417369403345c9fa9911a4557" datatype="html">\n        <source>System Role</source>\n        <target>Función del sistema</target>\n      </trans-unit>\n      <trans-unit id="7f132668e2dbfcf616381d2daf59d1a6f2698102" datatype="html">\n        <source>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </source>\n        <target>Deleted role \'\n          <x id="INTERPOLATION" equiv-text="{{role_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="bd15b8d5c0fa160161728eefbbb585710414d471" datatype="html">\n        <source>New name</source>\n        <target>New name</target>\n      </trans-unit>\n      <trans-unit id="6f126277f3dc22a3ab3609c4c198386c8744e11a" datatype="html">\n        <source>Clone Role</source>\n        <target>Clone Role</target>\n      </trans-unit>\n      <trans-unit id="d19d8320479854bc52877cdf0dc5ecfe34a36ec7" datatype="html">\n        <source>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </source>\n        <target>Cloned role \'\n          <x id="INTERPOLATION" equiv-text="{{dst_name}}"/>\' from \'\n          <x id="INTERPOLATION_1" equiv-text="{{src_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2e35d60a14ce0b470e8b54602864a867f7fcef40" datatype="html">\n        <source>There are no roles.</source>\n        <target>There are no roles.</target>\n      </trans-unit>\n      <trans-unit id="d2362a49d2434ce137bf19dab004251b7fd9c7b3" datatype="html">\n        <source>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Created user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="9910122dfedd2eaa544a990f1430e5b82a76d99f" datatype="html">\n        <source>Update user</source>\n        <target>Actualizar usuario</target>\n      </trans-unit>\n      <trans-unit id="ac10a3d9b59575640797c1a8e6aea642cf5d5e77" datatype="html">\n        <source>Continue</source>\n        <target>Continuar</target>\n      </trans-unit>\n      <trans-unit id="cf4bcf4ce3d551e6099ccdc3546ae418fe5f8038" datatype="html">\n        <source>You were automatically logged out because your roles have been changed.</source>\n        <target>La sesión se ha cerrado automáticamente porque sus funciones han cambiado.</target>\n      </trans-unit>\n      <trans-unit id="0f6003fb0c1cc73b89d225801cc1b870945cd259" datatype="html">\n        <source>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Updated user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="fe516c6d820018fdc971113935e22ec1e852965f" datatype="html">\n        <source>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Deleted user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="01a7e11502ff80421ef3615e533ea14ef57e1d5c" datatype="html">\n        <source>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </source>\n        <target>Failed to delete user "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>"\n        </target>\n      </trans-unit>\n      <trans-unit id="63316a3861dbcb035147efc1b9fb6bc708242e94" datatype="html">\n        <source>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </source>\n        <target>You are currently logged in as "\n          <x id="INTERPOLATION" equiv-text="{{username}}"/>".\n        </target>\n      </trans-unit>\n      <trans-unit id="d8b81951d25439864e92f750f7c99d7426d6517c" datatype="html">\n        <source>password</source>\n        <target>password</target>\n      </trans-unit>\n      <trans-unit id="d361a9b5e1f7985a12c0433388f31626525a02b8" datatype="html">\n        <source>Updated user password"</source>\n        <target>Updated user password"</target>\n      </trans-unit>\n      <trans-unit id="c4e596a44ffc4718c1602600d6e4f029190eb031" datatype="html">\n        <source>The name of the node under which data should be placed.</source>\n        <target>The name of the node under which data should be placed.</target>\n      </trans-unit>\n      <trans-unit id="f24772ba1091155f8d7025332ca8456a204d1e28" datatype="html">\n        <source>The type of CRUSH nodes across which we should separate replicas.</source>\n        <target>The type of CRUSH nodes across which we should separate replicas.</target>\n      </trans-unit>\n      <trans-unit id="a3896042af461a80091c3f7a5fe3fff5ac40a3a0" datatype="html">\n        <source>The device class data should be placed on.</source>\n        <target>The device class data should be placed on.</target>\n      </trans-unit>\n      <trans-unit id="1d7fbcc3d5efc946ffbcf86fed04c4e20dda20fb" datatype="html">\n        <source>Each object is split in data-chunks parts, each stored on a different OSD.</source>\n        <target>Cada objeto se divide en porciones de datos, cada una almacenada en un OSD distinto.</target>\n      </trans-unit>\n      <trans-unit id="b1f8ed4e216585f1f9134740002ef3c8501debd8" datatype="html">\n        <source>Compute coding chunks for each object and store them on different OSDs.\n      The number of coding chunks is also the number of OSDs that can be down without losing data.</source>\n        <target>Calcula las porciones de código para cada objeto y las almacena en distintos OSD.\n      El número de porciones de código es también el número de OSD que pueden estar inactivos sin que se pierdan datos.</target>\n      </trans-unit>\n      <trans-unit id="c437ee74a9a8e781e1380153f742a685e3b8cc5e" datatype="html">\n        <source>The jerasure plugin is the most generic and flexible plugin,\n          it is also the default for Ceph erasure coded pools.</source>\n        <target>El complemento jerasure es el más genérico y flexible,\n          y también el complemento por defecto para los repositorios de código de borrado de Ceph.</target>\n      </trans-unit>\n      <trans-unit id="8c7e19322851402afa67e41f4f1d4e531caf1bf5" datatype="html">\n        <source>The more flexible technique is reed_sol_van : it is enough to set k\n          and m. The cauchy_good technique can be faster but you need to chose the packetsize\n          carefully. All of reed_sol_r6_op, liberation, blaum_roth, liber8tion are RAID6 equivalents\n          in the sense that they can only be configured with m=2.</source>\n        <target>La técnica más flexible es reed_sol_van: basta con definir k y m.\n          La técnica cauchy_good puede ser más rápida, pero hay que elegir con cuidado el tamaño\n          del paquete. reed_sol_r6_op, liberation, blaum_roth y liber8tion son todas equivalentes a RAID6\n          en el sentido de que solo se pueden configurar con m=2.</target>\n      </trans-unit>\n      <trans-unit id="b1b11f49281b4e79219b4eecfbcb033cb15bd880" datatype="html">\n        <source>The encoding will be done on packets of bytes size at a time.\n          Chosing the right packet size is difficult.\n          The jerasure documentation contains extensive information on this topic.</source>\n        <target>La codificación se realizará según el tamaño de los paquetes de bytes de uno en uno.\n          Elegir el tamaño correcto es difícil.\n          La documentación de jerasure incluye información completa sobre el tema.</target>\n      </trans-unit>\n      <trans-unit id="d9cb3bc07a25b26fbea457e0a7b543340bc13c49" datatype="html">\n        <source>With the jerasure plugin, when an erasure coded object is stored on\n          multiple OSDs, recovering from the loss of one OSD requires reading from all the others.\n          For instance if jerasure is configured with k=8 and m=4, losing one OSD requires reading\n          from the eleven others to repair.\n\n          The lrc erasure code plugin creates local parity chunks to be able to recover using\n          less OSDs. For instance if lrc is configured with k=8, m=4 and l=4, it will create\n          an additional parity chunk for every four OSDs. When a single OSD is lost, it can be\n          recovered with only four OSDs instead of eleven.</source>\n        <target>Con el complemento jerasure, cuando un objeto de código de borrado se almacena\n          en varios OSD, para recuperarse de la pérdida de un OSD es necesario leer de todos los demás.\n          Por ejemplo, si jerasure está configurado con k=8 y m=4, cuando se pierde un OSD es necesario leer\n          de los otros once para repararlo.\n\n          El complemento de código de borrado lrc crea porciones de paridad local para poder realizar la recuperación con\n          menos OSDs. Por ejemplo, is lrc está configurado con k=8, m=4 y l=4, creará\n          una porción de paridad adicional para cada cuatro OSDs. Si se pierde un solo OSD, se puede recuperar\n          solo con cuatro OSD, en lugar de con once.</target>\n      </trans-unit>\n      <trans-unit id="813959d46e63a29bbd266b3af2ff9414c2ef553c" datatype="html">\n        <source>Group the coding and data chunks into sets of size locality. For instance,\n          for k=4 and m=2, when locality=3 two groups of three are created. Each set can\n          be recovered without reading chunks from another set.</source>\n        <target>Agrupa las porciones de código y de datos en localizaciones de conjuntos de tamaño. Por ejemplo,\n          para k=4 y m=2, si locality=3, se crean dos grupos de tres. Cada conjunto\n          se puede recuperar sin leer porciones de otro conjunto.</target>\n      </trans-unit>\n      <trans-unit id="f0ff63d92e0a1b4d4b51e31b9133802d160a5f4c" datatype="html">\n        <source>The type of the crush bucket in which each set of chunks defined\n          by l will be stored. For instance, if it is set to rack, each group of l chunks will be\n          placed in a different rack. It is used to create a CRUSH rule step such as step choose\n          rack. If it is not set, no such grouping is done.</source>\n        <target>El tipo de papelera de CRUSH en el que se almacenará cada\n          conjunto de porciones definido por l. Por ejemplo, si se define como bastidor, cada grupo de l porciones\n          se colocará en un bastidor distinto. Se usa para crear un paso de regla de CRUSH, por ejemplo, "step choose\n          rack". Si no se define, no se realiza este tipo de agrupamiento.</target>\n      </trans-unit>\n      <trans-unit id="3ece48df9d1e9a98f98bf3c5cc66e8b637020a4d" datatype="html">\n        <source>The isa plugin encapsulates the ISA library. It only runs on Intel processors.</source>\n        <target>El complemento isa encapsula la biblioteca ISA. Solo funciona en procesadores Intel.</target>\n      </trans-unit>\n      <trans-unit id="4472c9e31bfc7d96a83dc4afce0a6e885c99e839" datatype="html">\n        <source>The ISA plugin comes in two Reed Solomon forms.\n          If reed_sol_van is set, it is Vandermonde, if cauchy is set, it is Cauchy.</source>\n        <target>El complemento ISA viene en dos formatos de Reed Solomon.\n          Si se define reed_sol_van, se trata de Vandermonde; si se define cauchy, se trata de Cauchy.</target>\n      </trans-unit>\n      <trans-unit id="fa385f5ecf63083ec848dca8dc5e52bdc72ac6f6" datatype="html">\n        <source>The shec plugin encapsulates the multiple SHEC library.\n          It allows ceph to recover data more efficiently than Reed Solomon codes.</source>\n        <target>El complemento shec encapsula las distintas bibliotecas SHEC.\n          Permite a Ceph recuperar datos de forma más eficiente que los códigos de Reed Solomon.</target>\n      </trans-unit>\n      <trans-unit id="687b3cd94b3475c24ff4481d64d4739f902a377c" datatype="html">\n        <source>The number of parity chunks each of which includes each data chunk in its\n          calculation range. The number is used as a durability estimator. For instance, if c=2,\n          2 OSDs can be down without losing data.</source>\n        <target>El número de porciones de paridad. Cada uno de ellas incluye cada porción de datos\n           en su intervalo de cálculo. El número se usa como estimador de durabilidad. Por ejemplo, si c=2,\n          2 OSD pueden estar inactivos sin que se pierdan datos.</target>\n      </trans-unit>\n      <trans-unit id="f3c4af6df91bdaabdb715f8f0b61a24faf73a3bc" datatype="html">\n        <source>The name of the crush bucket used for the first step of the CRUSH rule.\n      For instance step take default.</source>\n        <target>El nombre de la papelera de CRUSH usado para el primer paso de la regla de CRUSH.\n      Por ejemplo, "step take default".</target>\n      </trans-unit>\n      <trans-unit id="e1059955a5ce65cdabf0c0a8207377e1f9bae57e" datatype="html">\n        <source>Ensure that no two chunks are in a bucket with the same failure\n      domain. For instance, if the failure domain is host no two chunks will be stored on the same\n      host. It is used to create a CRUSH rule step such as step chooseleaf host.</source>\n        <target>Asegúrese de que no hay dos porciones en una papelera con el mismo\n      dominio de error. Por ejemplo, si el dominio de error es host, no debe haber dos porciones almacenadas en el mismo\n      host. Se usa para crear un paso de regla de CRUSH, por ejemplo, "step chooseleaf host".</target>\n      </trans-unit>\n      <trans-unit id="ac392ac9c6da5fde6da80fc57b9c09402fb6e73d" datatype="html">\n        <source>Restrict placement to devices of a specific class\n      (e.g., ssd or hdd), using the crush device class names in the CRUSH map.</source>\n        <target>Restringe la colocación a dispositivos de una clase concreta\n      (p.ej., ssd o hdd) usando los nombre de clase de dispositivo CRUSH en el mapa de CRUSH.</target>\n      </trans-unit>\n      <trans-unit id="62bcb9ae5583a088649b1adf5787a86ca3334f89" datatype="html">\n        <source>Set the directory name from which the erasure code plugin is loaded.</source>\n        <target>Define el nombre de directorio del que se cargará el complemento de código de borrado.</target>\n      </trans-unit>\n      <trans-unit id="c8f10184a8433d132ede0a2c0c1aa96f291cacfa" datatype="html">\n        <source>Allows all operations</source>\n        <target>Permite todas las operaciones</target>\n      </trans-unit>\n      <trans-unit id="82077ee97c11ee76efc3adf253b7b26654544317" datatype="html">\n        <source>Allows only operations that do not modify the server</source>\n        <target>Permite solo las operaciones que no modifican el servidor</target>\n      </trans-unit>\n      <trans-unit id="22b5212ec10449dbf0a0af0ad34122eac51b5f2a" datatype="html">\n        <source>Does not allow read or write operations, but allows any other operation</source>\n        <target>No permite operaciones de lectura o escritura, pero sí cualquier otra</target>\n      </trans-unit>\n      <trans-unit id="9799d0f8c4b7727ae239fedfe3c0ce127feb7a50" datatype="html">\n        <source>Does not allow read, write, or any operation that modifies file        attributes or directory content</source>\n        <target>No permite operaciones de lectura o escritura, ni ninguna otra que modifique los atributos del archivo o el contenido del directorio</target>\n      </trans-unit>\n      <trans-unit id="aeddefe0af87025d8f00699aa94bed8216a99a58" datatype="html">\n        <source>Allows no access at all</source>\n        <target>No permite ningún tipo de acceso</target>\n      </trans-unit>\n      <trans-unit id="a436c6a4025a749198e93cac239de8deede72211" datatype="html">\n        <source>-- Select the priority --</source>\n        <target>-- Seleccione la prioridad --</target>\n      </trans-unit>\n      <trans-unit id="9556266f0a2b1762a44b686f2bb21dbfefb01c12" datatype="html">\n        <source>Low</source>\n        <target>Baja</target>\n      </trans-unit>\n      <trans-unit id="72279141a67cc042d9864102b703216cc8a428a3" datatype="html">\n        <source>High</source>\n        <target>Alta</target>\n      </trans-unit>\n      <trans-unit id="6080b77234e92ad41bb52653b239c4c4f851317d" datatype="html">\n        <source>Error</source>\n        <target>Error</target>\n      </trans-unit>\n      <trans-unit id="c43dc1967a603fefb886149ac35863a06d5b4ce5" datatype="html">\n        <source>Information</source>\n        <target>Información</target>\n      </trans-unit>\n      <trans-unit id="1e035e6ccfab771cad4226b2ad230cb0d4a88cba" datatype="html">\n        <source>Success</source>\n        <target>Success</target>\n      </trans-unit>\n      <trans-unit id="61fd1cffcb763cbfd5829071723cf9b647174bd9" datatype="html">\n        <source>An error occurred.</source>\n        <target>An error occurred.</target>\n      </trans-unit>\n      <trans-unit id="e6ca3c0efaf51e6d45a7f92f58bac37140c3fda4" datatype="html">\n        <source>Last 5 minutes</source>\n        <target>Últimos 5 minutos</target>\n      </trans-unit>\n      <trans-unit id="b0ecb2bbc548cc9bd95050fd8f0c84586d083fe2" datatype="html">\n        <source>Last 15 minutes</source>\n        <target>Últimos 15 minutos</target>\n      </trans-unit>\n      <trans-unit id="857ae67deb51353120b203b0f2a06b0c48ef49fa" datatype="html">\n        <source>Last 30 minutes</source>\n        <target>Últimos 30 minutos</target>\n      </trans-unit>\n      <trans-unit id="7b1738fad314e936dc14b94db8f43da736942308" datatype="html">\n        <source>Last 1 hour (Default)</source>\n        <target>Última hora (opción por defecto)</target>\n      </trans-unit>\n      <trans-unit id="a428288224389726cef9d9bd8d1d7808cccd7ffd" datatype="html">\n        <source>Last 3 hours</source>\n        <target>Últimas 3 horas</target>\n      </trans-unit>\n      <trans-unit id="7cbabecc8d80cf183ac199cfaeb7619d56e5d43f" datatype="html">\n        <source>Last 6 hours</source>\n        <target>Últimas 6 horas</target>\n      </trans-unit>\n      <trans-unit id="1a389cdf64187d34cf99eec30a290e3fa7d4744f" datatype="html">\n        <source>Last 12 hours</source>\n        <target>Últimas 12 horas</target>\n      </trans-unit>\n      <trans-unit id="9e0ba5f591380a94d594a76288f0c41aa97eb9c2" datatype="html">\n        <source>Last 24 hours</source>\n        <target>Últimas 24 horas</target>\n      </trans-unit>\n      <trans-unit id="e430eda9c785cd43465b7cbb400ee914f1057247" datatype="html">\n        <source>Yesterday</source>\n        <target>Ayer</target>\n      </trans-unit>\n      <trans-unit id="7fb1099e29660162f9154d5b2feee7743a423df6" datatype="html">\n        <source>Today</source>\n        <target>Hoy</target>\n      </trans-unit>\n      <trans-unit id="33904058a97a64bd189bed84038b1ffe719769c7" datatype="html">\n        <source>Today so far</source>\n        <target>Hoy hasta ahora</target>\n      </trans-unit>\n      <trans-unit id="3b0b849be007510021d3d383df75bec95ef9c97b" datatype="html">\n        <source>Day before yesterday</source>\n        <target>Anteayer</target>\n      </trans-unit>\n      <trans-unit id="6b430c2c394c4d32ebd7d46c8c46ab60e1b29ccb" datatype="html">\n        <source>Last 2 days</source>\n        <target>Los últimos 2 días</target>\n      </trans-unit>\n      <trans-unit id="d5e812a87a5d57a94200a2013027cab76a7c4863" datatype="html">\n        <source>This day last week</source>\n        <target>Este día la semana pasada</target>\n      </trans-unit>\n      <trans-unit id="d00edc936eeab6b5577401f115ca86ca2c87dc9a" datatype="html">\n        <source>Previous week</source>\n        <target>La semana pasada</target>\n      </trans-unit>\n      <trans-unit id="b036e40577baa6b918b2267d319d4b3aeaa88a5a" datatype="html">\n        <source>This week</source>\n        <target>Esta semana</target>\n      </trans-unit>\n      <trans-unit id="99ad5a6096b3fcb3f021f3779bae710cdfeb8934" datatype="html">\n        <source>This week so far</source>\n        <target>Esta semana hasta ahora</target>\n      </trans-unit>\n      <trans-unit id="02e0243b60007368f87dc01e083f232dd025096d" datatype="html">\n        <source>Last 7 days</source>\n        <target>Los últimos 7 días</target>\n      </trans-unit>\n      <trans-unit id="c3b08b07b5ab98e7cdcf18df39355690ab7d3884" datatype="html">\n        <source>Previous month</source>\n        <target>El mes pasado</target>\n      </trans-unit>\n      <trans-unit id="1b2562c6d5aa90644e7dc91feee82e2005fceb33" datatype="html">\n        <source>This month</source>\n        <target>Este mes</target>\n      </trans-unit>\n      <trans-unit id="26b4b18c5917934abb169ba9aa490e57f7bf10b8" datatype="html">\n        <source>This month so far</source>\n        <target>Este mes hasta ahora</target>\n      </trans-unit>\n      <trans-unit id="7668986b9f753fcd72ad4a00b1a0c4861d1f7fb8" datatype="html">\n        <source>Last 30 days</source>\n        <target>Los últimos 30 días</target>\n      </trans-unit>\n      <trans-unit id="ba1e822408d90c6fbd2989100fa648bfd5e8ee84" datatype="html">\n        <source>Last 90 days</source>\n        <target>Los últimos 90 días</target>\n      </trans-unit>\n      <trans-unit id="c3df03f899a914c4181adcdc8a3f077424f7b6e8" datatype="html">\n        <source>Last 6 months</source>\n        <target>Los últimos 6 meses</target>\n      </trans-unit>\n      <trans-unit id="7f9a92757580c9f31c309c0a3812ea429274eadf" datatype="html">\n        <source>Last 1 year</source>\n        <target>El último año</target>\n      </trans-unit>\n      <trans-unit id="5a9fede30ff65cb4b4426f6b1ed31afb67ecd7b0" datatype="html">\n        <source>Previous year</source>\n        <target>El año pasado</target>\n      </trans-unit>\n      <trans-unit id="65cefcc53d1f6445df7568e8a40c49165f1090ee" datatype="html">\n        <source>This year</source>\n        <target>Este año</target>\n      </trans-unit>\n      <trans-unit id="1f68b766944dc3865bddab765fe952b0c1c43f92" datatype="html">\n        <source>This year so far</source>\n        <target>Este año hasta ahora</target>\n      </trans-unit>\n      <trans-unit id="4d4b77e614f8043fdadef5d6d235655bb48eb311" datatype="html">\n        <source>Last 2 years</source>\n        <target>Los últimos 2 años</target>\n      </trans-unit>\n      <trans-unit id="138afa339ea6e75d25a474affe1edbcb90e00ec0" datatype="html">\n        <source>Last 5 years</source>\n        <target>Los últimos 5 años</target>\n      </trans-unit>\n      <trans-unit id="37391297bb077a6f84484930261b01a3ce38327b" datatype="html">\n        <source>No items selected.</source>\n        <target>No se ha seleccionado ningún elemento.</target>\n      </trans-unit>\n      <trans-unit id="2c1e52ee832661b4a0f570877d24661736b16af1" datatype="html">\n        <source>Deselect item to select again</source>\n        <target>Deseleccione el elemento para volver a seleccionarlo</target>\n      </trans-unit>\n      <trans-unit id="c8c9c6e5918659336824bbdda3501c66eaa79a4c" datatype="html">\n        <source>Selection limit reached</source>\n        <target>Se ha alcanzado el límite de selección</target>\n      </trans-unit>\n      <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">\n        <source>Filter tags</source>\n        <target>Filtrar etiquetas</target>\n      </trans-unit>\n      <trans-unit id="aa00748e49c269956837d6f3acdd8d218796a8d8" datatype="html">\n        <source>Add badge</source>\n        <target>Añadir insignia</target>\n      </trans-unit>\n      <trans-unit id="4078a92d8121abdce7d8f346a88914923ec835fc" datatype="html">\n        <source>There are no items available.</source>\n        <target>No hay ningún elemento disponible.</target>\n      </trans-unit>\n      <trans-unit id="55dd9f44e64851bca3b7bfc9283a5ff36f030228" datatype="html">\n        <source>Set</source>\n        <target>Set</target>\n      </trans-unit>\n      <trans-unit id="019d4bd6a5690f0cfa0ecf346a4e6bf7f0d8debb" datatype="html">\n        <source>Remove</source>\n        <target>Remove</target>\n      </trans-unit>\n      <trans-unit id="e168fe6c468b3ad632731395ef89860274242844" datatype="html">\n        <source>Unset</source>\n        <target>Unset</target>\n      </trans-unit>\n      <trans-unit id="54a4a3132b693575728a45a5f3154ad4c9af404b" datatype="html">\n        <source>Clone</source>\n        <target>Clonar</target>\n      </trans-unit>\n      <trans-unit id="1979da7460819153e11d2078244645d94291b69c" datatype="html">\n        <source>Copy</source>\n        <target>Copiar</target>\n      </trans-unit>\n      <trans-unit id="2e5e77dbaadd6588d8bbf737139fd9806294ae28" datatype="html">\n        <source>Deep Scrub</source>\n        <target>Depuración profunda</target>\n      </trans-unit>\n      <trans-unit id="bf463b189696c19769ea263227e6c22aefafb918" datatype="html">\n        <source>Destroy</source>\n        <target>Destruir</target>\n      </trans-unit>\n      <trans-unit id="b4e94d529ff10db4d86f3f48900fa67ede3411fd" datatype="html">\n        <source>Evict</source>\n        <target>Evict</target>\n      </trans-unit>\n      <trans-unit id="3747fff7faf52b436ecff5fb8555091736d92c70" datatype="html">\n        <source>Flatten</source>\n        <target>Aplanar</target>\n      </trans-unit>\n      <trans-unit id="66fdbf32e5449cc54a3d1e19c7b8f4ea238facfb" datatype="html">\n        <source>Mark Down</source>\n        <target>Marcar para desactivar</target>\n      </trans-unit>\n      <trans-unit id="0cda3e824fb2f9c731e5a60b859dedc1fe03127e" datatype="html">\n        <source>Mark In</source>\n        <target>Marcar para incluir</target>\n      </trans-unit>\n      <trans-unit id="f833354f43cb38c5716faa8759a9bbdd1ab8f199" datatype="html">\n        <source>Mark Lost</source>\n        <target>Marcar como perdido</target>\n      </trans-unit>\n      <trans-unit id="75fb9f970ba365398c45e57bbb1019c009f6b832" datatype="html">\n        <source>Mark Out</source>\n        <target>Marcar para excluir</target>\n      </trans-unit>\n      <trans-unit id="45480c03b0a3a37ff8f6a5600a6a034b40fbaea4" datatype="html">\n        <source>Protect</source>\n        <target>Proteger</target>\n      </trans-unit>\n      <trans-unit id="e26f9cf3666aace4e524b1505c9795d76d87738d" datatype="html">\n        <source>Rename</source>\n        <target>Renombrar</target>\n      </trans-unit>\n      <trans-unit id="d5cec7468241d72cafd86ad1af6d55b09a6e3ae5" datatype="html">\n        <source>Restore</source>\n        <target>Restaurar</target>\n      </trans-unit>\n      <trans-unit id="ba073985cfd2528c77a746ed596b2f2052b973c5" datatype="html">\n        <source>Move to Trash</source>\n        <target>Mover a la papelera</target>\n      </trans-unit>\n      <trans-unit id="3ea9b96a21a499d296a7f25407da0f3df6c2d5ed" datatype="html">\n        <source>Unprotect</source>\n        <target>Desproteger</target>\n      </trans-unit>\n      <trans-unit id="024cdb2814b0cb3f4ced148f1a0b9854447cb214" datatype="html">\n        <source>Change</source>\n        <target>Change</target>\n      </trans-unit>\n      <trans-unit id="011f3e2bfc1fd8407eb5f599352665bfeb145664" datatype="html">\n        <source>Recreate</source>\n        <target>Recreate</target>\n      </trans-unit>\n      <trans-unit id="6df2dfa48bef5510c82fb43f4e71a7f9557f3d71" datatype="html">\n        <source>Expire</source>\n        <target>Expire</target>\n      </trans-unit>\n      <trans-unit id="28df1b02fd88d2deb0212bc5d7ff34cf9492fa54" datatype="html">\n        <source>Deleted</source>\n        <target>Suprimido</target>\n      </trans-unit>\n      <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">\n        <source>Added</source>\n        <target>Added</target>\n      </trans-unit>\n      <trans-unit id="1aa4883bc4f1352f7a0bdd94810a9bf6dc22bd02" datatype="html">\n        <source>Removed</source>\n        <target>Removed</target>\n      </trans-unit>\n      <trans-unit id="402f3ee47f98fbbc68530239b1ddcbb9e96a460c" datatype="html">\n        <source>Edited</source>\n        <target>Edited</target>\n      </trans-unit>\n      <trans-unit id="96d56ec71c6e78cb4d6204c4a9359a3d38fcdb59" datatype="html">\n        <source>Canceled</source>\n        <target>Canceled</target>\n      </trans-unit>\n      <trans-unit id="a3318a2ee2bd0064b6b9ff72a4018b679ec63125" datatype="html">\n        <source>Cloned</source>\n        <target>Clonado</target>\n      </trans-unit>\n      <trans-unit id="ef90545bc832876c0d7f9a10363c75137472bbb5" datatype="html">\n        <source>Copied</source>\n        <target>Copiado</target>\n      </trans-unit>\n      <trans-unit id="5a13d3834133e09544ec93885662f181372dcf46" datatype="html">\n        <source>Deep Scrubbed</source>\n        <target>Deep Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="7c9efb91434a5c15e9579c0b31c8e184b8c8240d" datatype="html">\n        <source>Destroyed</source>\n        <target>Destroyed</target>\n      </trans-unit>\n      <trans-unit id="647059bf3ea098fffedf92ddfad792bb3daa3c95" datatype="html">\n        <source>Flattened</source>\n        <target>Aplanado</target>\n      </trans-unit>\n      <trans-unit id="8df71e952319eafa71c8e6ef6144b780af8813ff" datatype="html">\n        <source>Marked Down</source>\n        <target>Marked Down</target>\n      </trans-unit>\n      <trans-unit id="25658f5a080a1cab3b91e17b756b1d1dc46bb9b3" datatype="html">\n        <source>Marked In</source>\n        <target>Marked In</target>\n      </trans-unit>\n      <trans-unit id="ebcf306036a6c5579df9448f77eca98d491db245" datatype="html">\n        <source>Marked Lost</source>\n        <target>Marked Lost</target>\n      </trans-unit>\n      <trans-unit id="3a8803369ac18be3ad762384b9fda095fe2a6dcc" datatype="html">\n        <source>Marked Out</source>\n        <target>Marked Out</target>\n      </trans-unit>\n      <trans-unit id="0fe2a62ea7c609fa8326ee6d38060bc5ba8bf34f" datatype="html">\n        <source>Protected</source>\n        <target>Protected</target>\n      </trans-unit>\n      <trans-unit id="69b0446c6c2411c4fe01e411b8ceec72d4044fb4" datatype="html">\n        <source>Purged</source>\n        <target>Limpiado</target>\n      </trans-unit>\n      <trans-unit id="d53de1a61bd51c815dc374c7f97e4ee69230e412" datatype="html">\n        <source>Renamed</source>\n        <target>Renamed</target>\n      </trans-unit>\n      <trans-unit id="86fc6cae82c095f14105eb8a61d7b3fa948304b7" datatype="html">\n        <source>Restored</source>\n        <target>Restaurado</target>\n      </trans-unit>\n      <trans-unit id="e87dd0fd35460cb743046db918dfce2137b5977a" datatype="html">\n        <source>Reweighted</source>\n        <target>Reweighted</target>\n      </trans-unit>\n      <trans-unit id="dc21fd6547f2325c67f6deff925f29eb07a2db3e" datatype="html">\n        <source>Rolled back</source>\n        <target>Revertido</target>\n      </trans-unit>\n      <trans-unit id="15dec4c2d73a516c10aef90aeeea3364fa794615" datatype="html">\n        <source>Scrubbed</source>\n        <target>Scrubbed</target>\n      </trans-unit>\n      <trans-unit id="8dc560ded67482f109a98e0638851ad1d37188b3" datatype="html">\n        <source>Showed</source>\n        <target>Showed</target>\n      </trans-unit>\n      <trans-unit id="197259b7ea76f15c6d0a64b075a673fd4112ada7" datatype="html">\n        <source>Moved to Trash</source>\n        <target>Moved to Trash</target>\n      </trans-unit>\n      <trans-unit id="8fb15cb102cd75b562680290b7e04c44d80018f2" datatype="html">\n        <source>Unprotected</source>\n        <target>Unprotected</target>\n      </trans-unit>\n      <trans-unit id="8588eafa498262a1cbb5043ad68cf0ff669c4f10" datatype="html">\n        <source>Recreated</source>\n        <target>Recreated</target>\n      </trans-unit>\n      <trans-unit id="ffde7468d7b5cad6990095ed68ddee3d67cd02f8" datatype="html">\n        <source>Expired</source>\n        <target>Expired</target>\n      </trans-unit>\n      <trans-unit id="4f20f2d5a6882190892e58b85f6ccbedfa737952" datatype="html">\n        <source>Yes</source>\n        <target>Sí</target>\n      </trans-unit>\n      <trans-unit id="3d3ae7deebc5949b0c1c78b9847886a94321d9fd" datatype="html">\n        <source>No</source>\n        <target>No</target>\n      </trans-unit>\n      <trans-unit id="baf918eed9d4050cdad2acebc0f27b6eaf8e3fcd" datatype="html">\n        <source>Required rules for passwords:</source>\n        <target>Required rules for passwords:</target>\n      </trans-unit>\n      <trans-unit id="40f61909e1f017c4652e64b055089beef19cf871" datatype="html">\n        <source>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </source>\n        <target>Must contain at least \n          <x id="INTERPOLATION" equiv-text="{{length}}"/> characters\n        </target>\n      </trans-unit>\n      <trans-unit id="f4f5dbb3a05b5f38dab47ef38dad88a4574a765a" datatype="html">\n        <source>Must not be the same as the previous one</source>\n        <target>Must not be the same as the previous one</target>\n      </trans-unit>\n      <trans-unit id="607370e07b50087c196a5fcea9184e3d693226b2" datatype="html">\n        <source>Cannot contain the username</source>\n        <target>Cannot contain the username</target>\n      </trans-unit>\n      <trans-unit id="e6e355eab2596251aaa42623b41e6026d5c03e3b" datatype="html">\n        <source>Cannot contain any configured keyword</source>\n        <target>Cannot contain any configured keyword</target>\n      </trans-unit>\n      <trans-unit id="394bcd6d5e4da75b720c4d28f94f2aef7bb38355" datatype="html">\n        <source>Cannot contain any repetitive characters e.g. "aaa"</source>\n        <target>Cannot contain any repetitive characters e.g. "aaa"</target>\n      </trans-unit>\n      <trans-unit id="030e61e0bcf2536fb047645db6182d43e9fca9e9" datatype="html">\n        <source>Cannot contain any sequential characters e.g. "abc"</source>\n        <target>Cannot contain any sequential characters e.g. "abc"</target>\n      </trans-unit>\n      <trans-unit id="99fa0b67376d40142bd4d3ace3344abf4f98b6a5" datatype="html">\n        <source>Your matcher seems to match no currently defined rule or active alert.</source>\n        <target>Your matcher seems to match no currently defined rule or active alert.</target>\n      </trans-unit>\n      <trans-unit id="7e284852732c303eb1f47de9aca2569e41aeffed" datatype="html">\n        <source>no active alerts</source>\n        <target>no active alerts</target>\n      </trans-unit>\n      <trans-unit id="b8042829e4fbe7b09fd9bac9fa0ecf5cc1802fee" datatype="html">\n        <source>1 active alert</source>\n        <target>1 active alert</target>\n      </trans-unit>\n      <trans-unit id="e24adce97669cb0fc74cc13fdc14179b6f78ea5e" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{n}}"/> active alerts\n        </target>\n      </trans-unit>\n      <trans-unit id="d8fb058ff5883731d38a132da4ca45cfe8d719a3" datatype="html">\n        <source>Matches 1 rule</source>\n        <target>Matches 1 rule</target>\n      </trans-unit>\n      <trans-unit id="90aaef24d192e67c3fbc2ec6f8bfaff211cea128" datatype="html">\n        <source>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </source>\n        <target>Matches \n          <x id="INTERPOLATION" equiv-text="{{n}}"/> rules\n        </target>\n      </trans-unit>\n      <trans-unit id="f4685dc581e18244cd410f1057a8c56a9dbfe8df" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rules}}"/> with \n          <x id="INTERPOLATION_1" equiv-text="{{alerts}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fd98fb2a0f24ba72cde0787dd3f02cfc17de469" datatype="html">\n        <source>Quality of Service</source>\n        <target>Calidad del servicio</target>\n      </trans-unit>\n      <trans-unit id="2c53f3ce2c6fff9025a7b41cc334521725da6e7b" datatype="html">\n        <source>BPS Limit</source>\n        <target>Límite de BPS</target>\n      </trans-unit>\n      <trans-unit id="e897624a392419386b035bcd8529337e262fc41d" datatype="html">\n        <source>The desired limit of IO bytes per second.</source>\n        <target>El límite deseado de bytes de E/S por segundo.</target>\n      </trans-unit>\n      <trans-unit id="dc56f77e4507da7e86a3accd0a2a7099a838d539" datatype="html">\n        <source>IOPS Limit</source>\n        <target>Límite de IOPS</target>\n      </trans-unit>\n      <trans-unit id="141c3f6eadbb35b0e17b2f847e4cac23240a6ea9" datatype="html">\n        <source>The desired limit of IO operations per second.</source>\n        <target>El límite deseado de operaciones de E/S por segundo.</target>\n      </trans-unit>\n      <trans-unit id="3b3b101f16c38806e984b157e0cf22cd21451122" datatype="html">\n        <source>Read BPS Limit</source>\n        <target>Límite de BPS de lectura</target>\n      </trans-unit>\n      <trans-unit id="87835fabb6a645873f3829a450ca1d58f97754f2" datatype="html">\n        <source>The desired limit of read bytes per second.</source>\n        <target>El límite deseado de bytes de lectura por segundo.</target>\n      </trans-unit>\n      <trans-unit id="28b485e700df46d70b96666099f714e3ae9e5c2e" datatype="html">\n        <source>Read IOPS Limit</source>\n        <target>Límite de IOPS de lectura</target>\n      </trans-unit>\n      <trans-unit id="5907bd1a5cf3e20e740bca676cb1538372e1f9ff" datatype="html">\n        <source>The desired limit of read operations per second.</source>\n        <target>El límite deseado de operaciones de lectura por segundo.</target>\n      </trans-unit>\n      <trans-unit id="07317121f0b194987d4dee8b322f521ac17bf124" datatype="html">\n        <source>Write BPS Limit</source>\n        <target>Límite de BPS de escritura</target>\n      </trans-unit>\n      <trans-unit id="4022c78bd9132ca2ec67927f8484c437d1d9b6fd" datatype="html">\n        <source>The desired limit of write bytes per second.</source>\n        <target>El límite deseado de bytes de escritura por segundo.</target>\n      </trans-unit>\n      <trans-unit id="52c22c19f98ff3a09bd811292954a889b93d28b7" datatype="html">\n        <source>Write IOPS Limit</source>\n        <target>Límite de IOPS de escritura</target>\n      </trans-unit>\n      <trans-unit id="0ed62e3fd8654b3191fc7fa959ad3f10f1ea773a" datatype="html">\n        <source>The desired limit of write operations per second.</source>\n        <target>El límite deseado de operaciones de escritura por segundo.</target>\n      </trans-unit>\n      <trans-unit id="d90c99d77864f21f932ee1369019f400c4ad0e2d" datatype="html">\n        <source>BPS Burst</source>\n        <target>Ráfaga de BPS</target>\n      </trans-unit>\n      <trans-unit id="29c32192f4d185139aaaf6d3a766a3411dfeabbe" datatype="html">\n        <source>The desired burst limit of IO bytes.</source>\n        <target>El límite deseado de ráfaga de bytes de E/S.</target>\n      </trans-unit>\n      <trans-unit id="b988b90489e899941e196c3dd0ecc22e37540224" datatype="html">\n        <source>IOPS Burst</source>\n        <target>Ráfaga de IOPS</target>\n      </trans-unit>\n      <trans-unit id="02c5de8ff11870f1b3896f2b45637ce0dba1ed4b" datatype="html">\n        <source>The desired burst limit of IO operations.</source>\n        <target>El límite deseado de ráfaga de operaciones de E/S.</target>\n      </trans-unit>\n      <trans-unit id="7a160538129b37cf595f1651f28b5fac62fbc0f8" datatype="html">\n        <source>Read BPS Burst</source>\n        <target>Ráfaga de BPS de lectura</target>\n      </trans-unit>\n      <trans-unit id="b573a5df16a53b9947288461bc24e6a0eb4341d6" datatype="html">\n        <source>The desired burst limit of read bytes.</source>\n        <target>El límite deseado de ráfaga de bytes de lectura.</target>\n      </trans-unit>\n      <trans-unit id="1d5b8c2a0c653651cc4ca4b8fed9456f449220d1" datatype="html">\n        <source>Read IOPS Burst</source>\n        <target>Ráfaga de IOPS de lectura</target>\n      </trans-unit>\n      <trans-unit id="20b199f9d4a8d08ffefec66040e27639ec221512" datatype="html">\n        <source>The desired burst limit of read operations.</source>\n        <target>El límite deseado de ráfaga de operaciones de lectura.</target>\n      </trans-unit>\n      <trans-unit id="824525ae57992aee629ddffcd500a8b77087ddec" datatype="html">\n        <source>Write BPS Burst</source>\n        <target>Ráfaga de BPS de escritura</target>\n      </trans-unit>\n      <trans-unit id="a90aac4050a5d79765da5e1186909f6d4d7f981d" datatype="html">\n        <source>The desired burst limit of write bytes.</source>\n        <target>El límite deseado de ráfaga de bytes de escritura.</target>\n      </trans-unit>\n      <trans-unit id="35a8c6e6c249c7d16e26aa7c4ef97c06db405070" datatype="html">\n        <source>Write IOPS Burst</source>\n        <target>Ráfaga de IOPS de escritura</target>\n      </trans-unit>\n      <trans-unit id="b356abd41d7e9eea4d20c03d2e6892b6d435ecbd" datatype="html">\n        <source>The desired burst limit of write operations.</source>\n        <target>El límite deseado de ráfaga de operaciones de escritura.</target>\n      </trans-unit>\n      <trans-unit id="24c4d50fe8567de381a20a1745f1b6d37eacaa90" datatype="html">\n        <source>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </source>\n        <target>Failed to \n          <x id="INTERPOLATION" equiv-text="{{failure}}"/>\n          <x id="INTERPOLATION_1" equiv-text="{{metadata}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="f54b6f09b390d5ade0e354f6c7d4743c10a315cc" datatype="html">\n        <source>Executing</source>\n        <target>Ejecutando</target>\n      </trans-unit>\n      <trans-unit id="5cdfe3e3330ea42bfd29c540dbd268bee97d364d" datatype="html">\n        <source>execute</source>\n        <target>ejecutar</target>\n      </trans-unit>\n      <trans-unit id="6e98e243518daa88be30330fcdbd2d10f8eae4d7" datatype="html">\n        <source>Executed</source>\n        <target>Ejecutado</target>\n      </trans-unit>\n      <trans-unit id="24b09aa5bd909273a023d2d788a2673325c77e31" datatype="html">\n        <source>unknown task</source>\n        <target>tarea desconocida</target>\n      </trans-unit>\n      <trans-unit id="114b5f92b9192b229ffc9a450319a97ccca2aa5c" datatype="html">\n        <source>Creating</source>\n        <target>Creando</target>\n      </trans-unit>\n      <trans-unit id="56695b69d27437ada580a187958407e7c856d46e" datatype="html">\n        <source>create</source>\n        <target>crear</target>\n      </trans-unit>\n      <trans-unit id="9db60170ef3b3b41a863e7d5ee7cec10919b9141" datatype="html">\n        <source>Updating</source>\n        <target>Actualizando</target>\n      </trans-unit>\n      <trans-unit id="64412640835b7d25247cb254d4f911366c0e6862" datatype="html">\n        <source>update</source>\n        <target>actualizar</target>\n      </trans-unit>\n      <trans-unit id="416193bb373d59477458b00e5922d755e2e2cacd" datatype="html">\n        <source>Deleting</source>\n        <target>Suprimiendo</target>\n      </trans-unit>\n      <trans-unit id="d07a282afc7fbdb39cea6e1c9b544882a7260a86" datatype="html">\n        <source>Adding</source>\n        <target>Adding</target>\n      </trans-unit>\n      <trans-unit id="a11ec4e640f241329943237d2a3cceaa4823658e" datatype="html">\n        <source>add</source>\n        <target>add</target>\n      </trans-unit>\n      <trans-unit id="ea1c70b874904216cc5af24bd7cb3dab2d074d42" datatype="html">\n        <source>Removing</source>\n        <target>Removing</target>\n      </trans-unit>\n      <trans-unit id="4da487aec5a29ce4372e7b512227cd665b01fe6f" datatype="html">\n        <source>remove</source>\n        <target>remove</target>\n      </trans-unit>\n      <trans-unit id="0e21237afdc84ec360c374fa678d9b1cfaa334f9" datatype="html">\n        <source>Importing</source>\n        <target>Importing</target>\n      </trans-unit>\n      <trans-unit id="c6b4128c006f4cc0564137e1a1482b5c432aa347" datatype="html">\n        <source>import</source>\n        <target>import</target>\n      </trans-unit>\n      <trans-unit id="3b9f4138abbca0fd66db1f7332f4b54e2a6d916d" datatype="html">\n        <source>Imported</source>\n        <target>Imported</target>\n      </trans-unit>\n      <trans-unit id="3f757cfc3749ebb5d4462017cb60138ca082f15f" datatype="html">\n        <source>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="a6c681e6130fe440ae40de99a405fcf5c7eefee1" datatype="html">\n        <source>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>RBD snapshot \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="2bf18ddf3785f7afb4f01dcf63d3d8c40f4bfba5" datatype="html">\n        <source>mirroring site name</source>\n        <target>mirroring site name</target>\n      </trans-unit>\n      <trans-unit id="167b73bb24b4695614ce0fc567b7a45080457a44" datatype="html">\n        <source>bootstrap token</source>\n        <target>bootstrap token</target>\n      </trans-unit>\n      <trans-unit id="4fb54a0291f49583c317d4a3690239141b5a8f68" datatype="html">\n        <source>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror mode for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="6621ab6e122a149326a1e48e9051a41e7f203cf6" datatype="html">\n        <source>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>mirror peer for pool \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="db15adc778317d551232fe712eb03a2c1eac4a43" datatype="html">\n        <source>all dashboards</source>\n        <target>all dashboards</target>\n      </trans-unit>\n      <trans-unit id="6c19652df9249c60827044ed6274933cab180c63" datatype="html">\n        <source>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </source>\n        <target>OSDs (DriveGroups: \n          <x id="INTERPOLATION" equiv-text="{{tracking_id}}"/>)\n        </target>\n      </trans-unit>\n      <trans-unit id="1b559dbd9cc9664fd788c2da9a10d3abafe066cb" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="8fc28e1103d9f2ef47b9fff9a4f74e8365c7cf19" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="1cdc7ea44fcb85d0cfcf6e7379d625d8674a8fbe" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="460f07780389d24c6a540c007c7367a56afad585" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> is busy.\n        </target>\n      </trans-unit>\n      <trans-unit id="1ff7676ad1e991102224540a32dd44ad1ab88aa8" datatype="html">\n        <source>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </source>\n        <target>\n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> contains snapshots.\n        </target>\n      </trans-unit>\n      <trans-unit id="c3a1dcca2b2ba20fbe39e2441e7bb1cf9c20cdf3" datatype="html">\n        <source>Cloning</source>\n        <target>Clonando</target>\n      </trans-unit>\n      <trans-unit id="b5fa4e0a3a279dee5b6bf7b823e54387f7c79994" datatype="html">\n        <source>clone</source>\n        <target>clonar</target>\n      </trans-unit>\n      <trans-unit id="29b7452e8367af9aa8fa828f16ff94c3530e7a1a" datatype="html">\n        <source>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </source>\n        <target>Snapshot of \n          <x id="INTERPOLATION" equiv-text="{{rbd_name}}"/> must be protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="369f93b9a07a9465f7a261e9f0021b6cfa7180c5" datatype="html">\n        <source>Copying</source>\n        <target>Copiando</target>\n      </trans-unit>\n      <trans-unit id="37584f889855d153a106f5dffe23d21f9453c8ff" datatype="html">\n        <source>copy</source>\n        <target>copiar</target>\n      </trans-unit>\n      <trans-unit id="6ea9e313a04ef59222feaadfe84e97b4c69d7e9e" datatype="html">\n        <source>Flattening</source>\n        <target>Aplanando</target>\n      </trans-unit>\n      <trans-unit id="1f57593581b64d2d4c70eab1736bd9bccc66a7dc" datatype="html">\n        <source>flatten</source>\n        <target>aplanar</target>\n      </trans-unit>\n      <trans-unit id="d990ef9680cd23bbe652c37eb46bf038cfee80ad" datatype="html">\n        <source>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </source>\n        <target>Name is already used by \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/>.\n        </target>\n      </trans-unit>\n      <trans-unit id="a101745d080ef65c09bd5fafc796f94ddb9f9d60" datatype="html">\n        <source>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </source>\n        <target>Cannot unprotect \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it contains child images.\n        </target>\n      </trans-unit>\n      <trans-unit id="647968f4cde7786cd53ec8e6aa9802ac6824a262" datatype="html">\n        <source>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </source>\n        <target>Cannot delete \n          <x id="INTERPOLATION" equiv-text="{{snap_name}}"/> because it\'s protected.\n        </target>\n      </trans-unit>\n      <trans-unit id="57ddd3e15cf0ce974356b757451f50116a27272b" datatype="html">\n        <source>Rolling back</source>\n        <target>Revirtiendo</target>\n      </trans-unit>\n      <trans-unit id="a8913a3a5ee61f2598b5f0432cb9b20cdd60548e" datatype="html">\n        <source>rollback</source>\n        <target>revertir</target>\n      </trans-unit>\n      <trans-unit id="de8676f0017c9db6c49388cd7d63cd0a83a0c1dc" datatype="html">\n        <source>Moving</source>\n        <target>Moviendo</target>\n      </trans-unit>\n      <trans-unit id="2d810712308ae63cb795d809687a3254ef7a2f05" datatype="html">\n        <source>move</source>\n        <target>mover</target>\n      </trans-unit>\n      <trans-unit id="f3ba995236e5c1cc77686108980c099a90aec754" datatype="html">\n        <source>Moved</source>\n        <target>Movido</target>\n      </trans-unit>\n      <trans-unit id="d0422169252d132624a20f267b5c29f28cb53ebe" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' to trash\n        </target>\n      </trans-unit>\n      <trans-unit id="b603e2dfed9808222fbcb5a7c5f4da2cc6ae2aae" datatype="html">\n        <source>Could not find image.</source>\n        <target>No se encuentra la imagen.</target>\n      </trans-unit>\n      <trans-unit id="398debe73006b1fe5177ed81d2e7b0cc852f61ec" datatype="html">\n        <source>Restoring</source>\n        <target>Restaurando</target>\n      </trans-unit>\n      <trans-unit id="c252806fb400e79bac194696632c9362742b1538" datatype="html">\n        <source>restore</source>\n        <target>restaurar</target>\n      </trans-unit>\n      <trans-unit id="30b8bcf69b3f1754b7abba173fd806cfcea4cb04" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' into \'\n          <x id="INTERPOLATION_1" equiv-text="{{new_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="13b7b241cef989fe0932ddd180e757658e1817e7" datatype="html">\n        <source>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </source>\n        <target>Image name \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\' is already in use.\n        </target>\n      </trans-unit>\n      <trans-unit id="cc1cee12c833e8fbbef28a2a7c449dc530da912d" datatype="html">\n        <source>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </source>\n        <target>image \'\n          <x id="INTERPOLATION" equiv-text="{{id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="38e5f47f8bef505652f3e87f46efb00ead1350a3" datatype="html">\n        <source>Purging</source>\n        <target>Limpiando</target>\n      </trans-unit>\n      <trans-unit id="e4e57747f123f0fe6fe3a0ecf608f8bc287dec0c" datatype="html">\n        <source>purge</source>\n        <target>limpiar</target>\n      </trans-unit>\n      <trans-unit id="1560d58fdf39663929653250d45f5b1dfe078fea" datatype="html">\n        <source>all pools</source>\n        <target>todos los repositorios</target>\n      </trans-unit>\n      <trans-unit id="1ac3dc50c2c3d86e98bc0967ee1e696810a2d3aa" datatype="html">\n        <source>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </source>\n        <target>images from \n          <x id="INTERPOLATION" equiv-text="{{message}}"/>\n        </target>\n      </trans-unit>\n      <trans-unit id="02278abbb044ece04ab6bd80bd2060198d31d83b" datatype="html">\n        <source>Cannot disable mirroring because it contains a peer.</source>\n        <target>No es posible inhabilitar la duplicación porque contiene un par</target>\n      </trans-unit>\n      <trans-unit id="5c4525a1b76ca54d1aadeaecfdb83aedc2eec6e0" datatype="html">\n        <source>Identifying</source>\n        <target>Identifying</target>\n      </trans-unit>\n      <trans-unit id="ffd067e54a061d1f27cb35f0cf67ef7f29e19111" datatype="html">\n        <source>identify</source>\n        <target>identify</target>\n      </trans-unit>\n      <trans-unit id="7c921f339274688c22ba1acac7af6b097ad3599d" datatype="html">\n        <source>Identified</source>\n        <target>Identified</target>\n      </trans-unit>\n      <trans-unit id="3307492c27c2150cd26c514030444e11fd61089f" datatype="html">\n        <source>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>device \'\n          <x id="INTERPOLATION" equiv-text="{{device}}"/>\' on host \'\n          <x id="INTERPOLATION_1" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="f123ae1fc3b000e5d08e766dd78bff162afe709d" datatype="html">\n        <source>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </source>\n        <target>host \'\n          <x id="INTERPOLATION" equiv-text="{{hostname}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="c1af76189dcefd094da2bc1a4a63968f3bab5789" datatype="html">\n        <source>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </source>\n        <target>OSD \'\n          <x id="INTERPOLATION" equiv-text="{{svc_id}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="dfe70001dc590a9e12512cbb206aa29fb36fd00b" datatype="html">\n        <source>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </source>\n        <target>pool \'\n          <x id="INTERPOLATION" equiv-text="{{pool_name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="59630daf2f4786690fae0cdad55da8887236eabe" datatype="html">\n        <source>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>erasure code profile \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="79052d6c47258dc19ada12dbb2563761102b6f1d" datatype="html">\n        <source>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </source>\n        <target>crush rule \'\n          <x id="INTERPOLATION" equiv-text="{{name}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="369462e5e018360e0600bb570866201ad5c3c8a8" datatype="html">\n        <source>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </source>\n        <target>target \'\n          <x id="INTERPOLATION" equiv-text="{{target_iqn}}"/>\'\n        </target>\n      </trans-unit>\n      <trans-unit id="cf41310917cb19b335e5a950972bbff2346f7a47" datatype="html">\n        <source>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </source>\n        <target>NFS \n          <x id="INTERPOLATION" equiv-text="{{nfs_id}}"/>\n        </target>\n      </trans-unit>\n    </body>\n  </file>\n</xliff>'},"z+Ro":function(t,e,n){"use strict";function a(t){return t&&"function"==typeof t.schedule}n.d(e,"a",(function(){return a}))},"z/SZ":function(t,e,n){"use strict";n.d(e,"a",(function(){return u}));var a=n("8Y7J"),r=n("hpHm");class i{constructor(t,e,n){this.nodes=t,this.viewRef=e,this.componentRef=n}}class s{constructor(t,e,n,r,i,s,u,o){this._viewContainerRef=t,this._renderer=e,this._elementRef=n,this._injector=r,this._componentFactoryResolver=i,this._ngZone=s,this._applicationRef=u,this._posService=o,this.onBeforeShow=new a.EventEmitter,this.onShown=new a.EventEmitter,this.onBeforeHide=new a.EventEmitter,this.onHidden=new a.EventEmitter,this._providers=[],this._isHiding=!1,this.containerDefaultSelector="body",this._listenOpts={},this._globalListener=Function.prototype}get isShown(){return!this._isHiding&&!!this._componentRef}attach(t){return this._componentFactory=this._componentFactoryResolver.resolveComponentFactory(t),this}to(t){return this.container=t||this.container,this}position(t){return this.attachment=t.attachment||this.attachment,this._elementRef=t.target||this._elementRef,this}provide(t){return this._providers.push(t),this}show(t={}){if(this._subscribePositioning(),this._innerComponent=null,!this._componentRef){this.onBeforeShow.emit(),this._contentRef=this._getContentRef(t.content,t.context,t.initialState);const e=a.Injector.create({providers:this._providers,parent:this._injector});this._componentRef=this._componentFactory.create(e,this._contentRef.nodes),this._applicationRef.attachView(this._componentRef.hostView),this.instance=this._componentRef.instance,Object.assign(this._componentRef.instance,t),this.container instanceof a.ElementRef&&this.container.nativeElement.appendChild(this._componentRef.location.nativeElement),"string"==typeof this.container&&"undefined"!=typeof document&&(document.querySelector(this.container)||document.querySelector(this.containerDefaultSelector)).appendChild(this._componentRef.location.nativeElement),!this.container&&this._elementRef&&this._elementRef.nativeElement.parentElement&&this._elementRef.nativeElement.parentElement.appendChild(this._componentRef.location.nativeElement),this._contentRef.componentRef&&(this._innerComponent=this._contentRef.componentRef.instance,this._contentRef.componentRef.changeDetectorRef.markForCheck(),this._contentRef.componentRef.changeDetectorRef.detectChanges()),this._componentRef.changeDetectorRef.markForCheck(),this._componentRef.changeDetectorRef.detectChanges(),this.onShown.emit(this._componentRef.instance)}return this._registerOutsideClick(),this._componentRef}hide(){if(!this._componentRef)return this;this._posService.deletePositionElement(this._componentRef.location),this.onBeforeHide.emit(this._componentRef.instance);const t=this._componentRef.location.nativeElement;return t.parentNode.removeChild(t),this._contentRef.componentRef&&this._contentRef.componentRef.destroy(),this._componentRef.destroy(),this._viewContainerRef&&this._contentRef.viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._contentRef.viewRef)),this._contentRef.viewRef&&this._contentRef.viewRef.destroy(),this._contentRef=null,this._componentRef=null,this._removeGlobalListener(),this.onHidden.emit(),this}toggle(){this.isShown?this.hide():this.show()}dispose(){this.isShown&&this.hide(),this._unsubscribePositioning(),this._unregisterListenersFn&&this._unregisterListenersFn()}listen(t){this.triggers=t.triggers||this.triggers,this._listenOpts.outsideClick=t.outsideClick,this._listenOpts.outsideEsc=t.outsideEsc,t.target=t.target||this._elementRef.nativeElement;const e=this._listenOpts.hide=()=>t.hide?t.hide():void this.hide(),n=this._listenOpts.show=e=>{t.show?t.show(e):this.show(e),e()};return this._unregisterListenersFn=Object(r.e)(this._renderer,{target:t.target,triggers:t.triggers,show:n,hide:e,toggle:t=>{this.isShown?e():n(t)}}),this}_removeGlobalListener(){this._globalListener&&(this._globalListener(),this._globalListener=null)}attachInline(t,e){return this._inlineViewRef=t.createEmbeddedView(e),this}_registerOutsideClick(){if(this._componentRef&&this._componentRef.location){if(this._listenOpts.outsideClick){const t=this._componentRef.location.nativeElement;setTimeout(()=>{this._globalListener=Object(r.h)(this._renderer,{targets:[t,this._elementRef.nativeElement],outsideClick:this._listenOpts.outsideClick,hide:()=>this._listenOpts.hide()})})}if(this._listenOpts.outsideEsc){const t=this._componentRef.location.nativeElement;this._globalListener=Object(r.g)(this._renderer,{targets:[t,this._elementRef.nativeElement],outsideEsc:this._listenOpts.outsideEsc,hide:()=>this._listenOpts.hide()})}}}getInnerComponent(){return this._innerComponent}_subscribePositioning(){!this._zoneSubscription&&this.attachment&&(this.onShown.subscribe(()=>{this._posService.position({element:this._componentRef.location,target:this._elementRef,attachment:this.attachment,appendToBody:"body"===this.container})}),this._zoneSubscription=this._ngZone.onStable.subscribe(()=>{this._componentRef&&this._posService.calcPosition()}))}_unsubscribePositioning(){this._zoneSubscription&&(this._zoneSubscription.unsubscribe(),this._zoneSubscription=null)}_getContentRef(t,e,n){if(!t)return new i([]);if(t instanceof a.TemplateRef){if(this._viewContainerRef){const n=this._viewContainerRef.createEmbeddedView(t,e);return n.markForCheck(),new i([n.rootNodes],n)}const n=t.createEmbeddedView({});return this._applicationRef.attachView(n),new i([n.rootNodes],n)}if("function"==typeof t){const e=this._componentFactoryResolver.resolveComponentFactory(t),r=a.Injector.create({providers:this._providers,parent:this._injector}),s=e.create(r);return Object.assign(s.instance,n),this._applicationRef.attachView(s.hostView),new i([[s.location.nativeElement]],s.hostView,s)}return new i([[this._renderer.createText(""+t)]])}}class u{constructor(t,e,n,a,r){this._componentFactoryResolver=t,this._ngZone=e,this._injector=n,this._posService=a,this._applicationRef=r}createLoader(t,e,n){return new s(e,n,t,this._injector,this._componentFactoryResolver,this._ngZone,this._applicationRef,this._posService)}}},z1FC:function(t,e,n){!function(t){"use strict";function e(t,e,n,a){var r={s:["viensas secunds","'iensas secunds"],ss:[t+" secunds",t+" secunds"],m:["'n míut","'iens míut"],mm:[t+" míuts",t+" míuts"],h:["'n þora","'iensa þora"],hh:[t+" þoras",t+" þoras"],d:["'n ziua","'iensa ziua"],dd:[t+" ziuas",t+" ziuas"],M:["'n mes","'iens mes"],MM:[t+" mesen",t+" mesen"],y:["'n ar","'iens ar"],yy:[t+" ars",t+" ars"]};return a||e?r[n][0]:r[n][1]}t.defineLocale("tzl",{months:"Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"),weekdaysShort:"Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"),weekdaysMin:"Sú_Lú_Ma_Má_Xh_Vi_Sá".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM [dallas] YYYY",LLL:"D. MMMM [dallas] YYYY HH.mm",LLLL:"dddd, [li] D. MMMM [dallas] YYYY HH.mm"},meridiemParse:/d\'o|d\'a/i,isPM:function(t){return"d'o"===t.toLowerCase()},meridiem:function(t,e,n){return t>11?n?"d'o":"D'O":n?"d'a":"D'A"},calendar:{sameDay:"[oxhi à] LT",nextDay:"[demà à] LT",nextWeek:"dddd [à] LT",lastDay:"[ieiri à] LT",lastWeek:"[sür el] dddd [lasteu à] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:e,ss:e,m:e,mm:e,h:e,hh:e,d:e,dd:e,M:e,MM:e,y:e,yy:e},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},z3Vd:function(t,e,n){!function(t){"use strict";var e="pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_");function n(t,n,a,r){var i=function(t){var n=Math.floor(t%1e3/100),a=Math.floor(t%100/10),r=t%10,i="";return n>0&&(i+=e[n]+"vatlh"),a>0&&(i+=(""!==i?" ":"")+e[a]+"maH"),r>0&&(i+=(""!==i?" ":"")+e[r]),""===i?"pagh":i}(t);switch(a){case"ss":return i+" lup";case"mm":return i+" tup";case"hh":return i+" rep";case"dd":return i+" jaj";case"MM":return i+" jar";case"yy":return i+" DIS"}}t.defineLocale("tlh",{months:"tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’".split("_"),monthsShort:"jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’".split("_"),monthsParseExact:!0,weekdays:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysShort:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysMin:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[DaHjaj] LT",nextDay:"[wa’leS] LT",nextWeek:"LLL",lastDay:"[wa’Hu’] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:function(t){var e=t;return-1!==t.indexOf("jaj")?e.slice(0,-3)+"leS":-1!==t.indexOf("jar")?e.slice(0,-3)+"waQ":-1!==t.indexOf("DIS")?e.slice(0,-3)+"nem":e+" pIq"},past:function(t){var e=t;return-1!==t.indexOf("jaj")?e.slice(0,-3)+"Hu’":-1!==t.indexOf("jar")?e.slice(0,-3)+"wen":-1!==t.indexOf("DIS")?e.slice(0,-3)+"ben":e+" ret"},s:"puS lup",ss:n,m:"wa’ tup",mm:n,h:"wa’ rep",hh:n,d:"wa’ jaj",dd:n,M:"wa’ jar",MM:n,y:"wa’ DIS",yy:n},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}})}(n("wd/R"))},z5nN:function(t,e,n){"use strict";n.d(e,"b",(function(){return o})),n.d(e,"a",(function(){return f}));var a=n("8Y7J"),r=n("LqlI"),i=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function s(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,2,"div",[["role","document"]],[[8,"className",0]],null,null,null,null)),(t()(),a["ɵeld"](1,0,null,null,1,"div",[["class","modal-content"]],null,null,null,null,null)),a["ɵncd"](null,0)],null,(function(t,e){var n=e.component;t(e,0,0,"modal-dialog"+(n.config.class?" "+n.config.class:""))}))}function u(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"modal-container",[["class","modal"],["role","dialog"],["tabindex","-1"]],[[1,"aria-modal",0]],[[null,"mousedown"],[null,"mouseup"],["window","keydown.esc"]],(function(t,e,n){var r=!0;return"mousedown"===e&&(r=!1!==a["ɵnov"](t,1).onClickStarted(n)&&r),"mouseup"===e&&(r=!1!==a["ɵnov"](t,1).onClickStop(n)&&r),"window:keydown.esc"===e&&(r=!1!==a["ɵnov"](t,1).onEsc(n)&&r),r}),s,i)),a["ɵdid"](1,245760,null,0,r.d,[r.f,a.ElementRef,a.Renderer2],null,null)],(function(t,e){t(e,1,0)}),(function(t,e){t(e,0,0,!0)}))}var o=a["ɵccf"]("modal-container",r.d,u,{},{},["*"]),l=a["ɵcrt"]({encapsulation:2,styles:[],data:{}});function d(t){return a["ɵvid"](0,[],null,null)}function c(t){return a["ɵvid"](0,[(t()(),a["ɵeld"](0,0,null,null,1,"bs-modal-backdrop",[["class","modal-backdrop"]],null,null,null,d,l)),a["ɵdid"](1,114688,null,0,r.c,[a.ElementRef,a.Renderer2],null,null)],(function(t,e){t(e,1,0)}),null)}var f=a["ɵccf"]("bs-modal-backdrop",r.c,c,{},{},[])},z6cu:function(t,e,n){"use strict";n.d(e,"a",(function(){return r}));var a=n("HDdC");function r(t,e){return new a.a(e?n=>e.schedule(i,0,{error:t,subscriber:n}):e=>e.error(t))}function i({error:t,subscriber:e}){e.error(t)}},zAeO:function(t,e,n){var a=n("SQuY");function r(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var a=arguments,r=e?e.apply(this,a):a[0],i=n.cache;if(i.has(r))return i.get(r);var s=t.apply(this,a);return n.cache=i.set(r,s)||i,s};return n.cache=new(r.Cache||a),n}r.Cache=a,t.exports=r},zBJ4:function(t,e,n){var a=n("2oRo"),r=n("hh1v"),i=a.document,s=r(i)&&r(i.createElement);t.exports=function(t){return s?i.createElement(t):{}}},zDBQ:function(t,e,n){var a=n("IeEY");t.exports=function(t){return null!=t&&t.length?a(t,1):[]}},zKZe:function(t,e,n){var a=n("I+eb"),r=n("YNrV");a({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},zUnb:function(t,e,n){"use strict";n.r(e);var a=n("tAZD"),r=n.n(a),i=n("SVse"),s=n("8Y7J");const u=t=>{t=t||"en-US";try{return n("F+uO")(`./messages.${t}.xlf`).default}catch(e){return[]}};class o{}class l{constructor(){}}var d=n("EApP"),c=s["ɵcrt"]({encapsulation:2,styles:[],data:{animation:[{type:7,name:"flyInOut",definitions:[{type:0,name:"inactive",styles:{type:6,styles:{opacity:0},offset:null},options:void 0},{type:0,name:"active",styles:{type:6,styles:{opacity:1},offset:null},options:void 0},{type:0,name:"removed",styles:{type:6,styles:{opacity:0},offset:null},options:void 0},{type:1,expr:"inactive => active",animation:{type:4,styles:null,timings:"{{ easeTime }}ms {{ easing }}"},options:null},{type:1,expr:"active => removed",animation:{type:4,styles:null,timings:"{{ easeTime }}ms {{ easing }}"},options:null}],options:{}}]}});function f(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"button",[["aria-label","Close"],["class","toast-close-button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.remove()&&a),a}),null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["×"]))],null,null)}function h(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](1,null,["[","]"]))],null,(function(t,e){t(e,1,0,e.component.duplicatesCount+1)}))}function g(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"div",[],[[8,"className",0],[1,"aria-label",0]],null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,h)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,3,0,e.component.duplicatesCount)}),(function(t,e){var n=e.component;t(e,0,0,n.options.titleClass,n.title),t(e,1,0,n.title)}))}function p(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"div",[["aria-live","polite"],["role","alertdialog"]],[[8,"className",0],[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.options.messageClass,n.message)}))}function b(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["aria-live","polite"],["role","alertdialog"]],[[8,"className",0],[1,"aria-label",0]],null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,0,0,n.options.messageClass,n.message),t(e,1,0,n.message)}))}function m(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,0,"div",[["class","toast-progress"]],[[4,"width",null]],null,null,null,null))],null,(function(t,e){t(e,1,0,e.component.width+"%")}))}function y(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,f)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,g)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,p)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,b)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,m)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.options.closeButton),t(e,3,0,n.title),t(e,5,0,n.message&&n.options.enableHtml),t(e,7,0,n.message&&!n.options.enableHtml),t(e,9,0,n.options.progressBar)}),null)}function v(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["toast-component",""]],[[8,"className",0],[40,"@flyInOut",0],[4,"display",null]],[[null,"click"],[null,"mouseenter"],[null,"mouseleave"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,1).tapToast()&&a),"mouseenter"===e&&(a=!1!==s["ɵnov"](t,1).stickAround()&&a),"mouseleave"===e&&(a=!1!==s["ɵnov"](t,1).delayedHideToast()&&a),a}),y,c)),s["ɵdid"](1,180224,null,0,d.c,[d.j,d.g,s.NgZone],null,null)],null,(function(t,e){t(e,0,0,s["ɵnov"](e,1).toastClasses,s["ɵnov"](e,1).state,s["ɵnov"](e,1).displayStyle)}))}var x=s["ɵccf"]("[toast-component]",d.c,v,{},{},[]),_=n("pMnS"),T=n("jtHE");let w=(()=>{class t{}return t.START="start",t.STOP="stop",t.UPDATE="update",t.RESET="reset",t.UNSUBSCRIBE="unsubscribe",t})();class O{constructor(){this.blockUISettings={},this.blockUIInstances={},this.blockUISubject=new T.a,this.blockUIObservable=this.blockUISubject.asObservable(),this.blockUIObservable.subscribe(this.blockUIMiddleware.bind(this))}getSettings(){return this.blockUISettings}updateSettings(t={}){this.blockUISettings=Object.assign({},this.blockUISettings,t)}decorate(t="block-ui-main"){const e={name:t,isActive:!1,blockCount:0,start:this.dispatch(this.blockUISubject,w.START,t),update:this.dispatch(this.blockUISubject,w.UPDATE,t),stop:this.dispatch(this.blockUISubject,w.STOP,t),reset:this.dispatch(this.blockUISubject,w.RESET,t),unsubscribe:this.dispatch(this.blockUISubject,w.UNSUBSCRIBE,t)};return this.blockUIInstances[t]=this.blockUIInstances[t]||e,e}observe(){return this.blockUIObservable}blockUIMiddleware({action:t,name:e}){let n=null;switch(t){case w.START:n=!0;break;case w.STOP:case w.RESET:n=!1}null!==n&&(this.blockUIInstances[e].isActive=n)}dispatch(t,e,n="block-ui-main"){return a=>{t.next({name:n,action:e,message:a})}}}class S{constructor(t){this.blockUI=t}ngOnInit(){this.name=this.name||"block-ui-main",this.template=this.template||this.blockUI.blockUISettings.template}}class I{constructor(t,e,n){this.blockUI=t,this.resolver=e,this.changeDetectionRef=n,this.name="block-ui-main",this.delayStart=0,this.delayStop=0,this.state={startTimeout:null,stopTimeout:null,blockCount:0},this.active=!1}ngOnInit(){this.settings=this.blockUI.getSettings(),this.blockUISubscription=this.subscribeToBlockUI(this.blockUI.observe())}ngAfterViewInit(){try{if(!this.templateCmp)return!1;if(this.templateCmp instanceof s.TemplateRef)this.templateOutlet.createEmbeddedView(this.templateCmp);else{const t=this.resolver.resolveComponentFactory(this.templateCmp);this.templateCompRef=this.templateOutlet.createComponent(t),this.updateBlockTemplate(this.message)}}catch(t){console.error("ng-block-ui:",t)}}ngAfterViewChecked(){this.detectChanges()}subscribeToBlockUI(t){return t.subscribe(t=>this.onDispatchedEvent(t))}onDispatchedEvent(t){switch(t.action){case w.START:this.onStart(t);break;case w.STOP:this.onStop(t);break;case w.UPDATE:this.onUpdate(t);break;case w.RESET:this.onReset();break;case w.UNSUBSCRIBE:this.onStop(t),this.onUnsubscribe(t.name)}}onStart({name:t,message:e}){if(t===this.name){const t=this.delayStart||this.settings.delayStart||0;null===this.state.startTimeout&&(0===t?this.showBlock(e):this.state.startTimeout=setTimeout(()=>{this.showBlock(e)},t)),this.state.blockCount++,this.updateInstanceBlockCount()}}onStop({name:t}){if(t===this.name){const t=this.delayStop||this.settings.delayStop||0;this.state.blockCount>1?this.state.blockCount--:this.active?null===this.state.stopTimeout&&(0===t?this.hideBlock():this.state.stopTimeout=setTimeout(()=>{this.hideBlock()},t)):this.clearState(),this.updateInstanceBlockCount()}}onReset(){this.hideBlock()}onUpdate({name:t,message:e}){if(t===this.name){const t=this.delayStart||this.settings.delayStart||0;0===t?this.updateMessage(e):setTimeout(()=>{this.updateMessage(e)},t)}}updateMessage(t){this.message=t||this.defaultMessage||this.settings.message,this.updateBlockTemplate(this.message),this.detectChanges()}showBlock(t){this.active=!0,this.message=t||this.defaultMessage||this.settings.message,this.updateBlockTemplate(this.message),this.detectChanges()}hideBlock(){this.clearState(),this.active=!1,this.detectChanges()}clearState(){null!=this.state.startTimeout&&clearTimeout(this.state.startTimeout),null!=this.state.stopTimeout&&clearTimeout(this.state.stopTimeout),this.state.blockCount=0,this.state.startTimeout=null,this.state.stopTimeout=null,this.updateInstanceBlockCount()}updateBlockTemplate(t){this.templateCompRef&&this.templateCompRef instanceof s.ComponentRef&&(this.templateCompRef.instance.message=t)}onUnsubscribe(t){this.blockUISubscription&&t===this.name&&this.blockUISubscription.unsubscribe()}updateInstanceBlockCount(){this.blockUI.blockUIInstances[this.name]&&(this.blockUI.blockUIInstances[this.name].blockCount=this.state.blockCount)}detectChanges(){this.changeDetectionRef.destroyed||this.changeDetectionRef.detectChanges()}ngOnDestroy(){this.onUnsubscribe(this.name)}}class N{constructor(t){this.blockUIInstance=t}start(t,e){this.dispatch(t,w.START,e)}stop(t){this.dispatch(t,w.STOP)}reset(t){this.dispatch(t,w.RESET)}unsubscribe(t){this.dispatch(t,w.UNSUBSCRIBE)}isActive(t=null){const e=t?this.toArray(t):null,n=this.blockUIInstance.blockUIInstances;return Object.keys(n).some(t=>e?e.indexOf(n[t].name)>=0&&n[t].isActive:n[t].isActive)}dispatch(t=[],e,n){this.toArray(t).forEach(t=>this.blockUIInstance.decorate(t)[e](n))}toArray(t=[]){return"string"==typeof t?[t]:t}}const C=new O,R=new s.InjectionToken("BlockUIModuleSettings");function A(t){return C.updateSettings(t),C}class k{static forRoot(t={}){return{ngModule:k,providers:[{provide:R,useValue:t},{provide:O,useFactory:A,deps:[R]},N]}}}function E(t){return function(e,n,a){e[n]=C.decorate(t)}}var L=s["ɵcrt"]({encapsulation:2,styles:[],data:{}});function D(t){return s["ɵvid"](0,[s["ɵncd"](null,0),(t()(),s["ɵeld"](1,0,null,null,1,"block-ui-content",[],null,null,null,B,q)),s["ɵdid"](2,12828672,null,0,I,[O,s.ComponentFactoryResolver,s.ChangeDetectorRef],{name:[0,"name"],delayStart:[1,"delayStart"],delayStop:[2,"delayStop"],defaultMessage:[3,"defaultMessage"],templateCmp:[4,"templateCmp"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.name,n.delayStart,n.delayStop,n.message,n.template)}),null)}function P(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"block-ui",[],null,null,null,D,L)),s["ɵdid"](1,114688,null,0,S,[O],null,null)],(function(t,e){t(e,1,0)}),null)}var M=s["ɵccf"]("block-ui",S,P,{name:"name",message:"message",delayStart:"delayStart",delayStop:"delayStop",template:"template"},{},["*"]),q=s["ɵcrt"]({encapsulation:2,styles:["\n.block-ui-wrapper {\n  display: none;\n  position: fixed;\n  height: 100%;\n  width: 100%;\n  top: 0;\n  left: 0;\n  background: rgba(0, 0, 0, 0.70);\n  z-index: 30000;\n  cursor: wait;\n}\n\n.block-ui-wrapper.block-ui-wrapper--element {\n  position: absolute;\n}\n\n.block-ui-wrapper.active {\n  display: block;\n}\n\n.block-ui-wrapper.block-ui-main {\n  position: fixed;\n}\n\n.block-ui-spinner,\n.block-ui-template {\n  position: absolute;\n  top: 40%;\n  margin: 0 auto;\n  left: 0;\n  right: 0;\n  transform: translateY(-50%);\n}\n\n.block-ui-spinner > .message {\n  font-size: 1.3em;\n  text-align: center;\n  color: #fff;\n}\n\n.block-ui__element {\n  position: relative;\n}\n\n.loader,\n.loader:after {\n  border-radius: 50%;\n  width: 10em;\n  height: 10em;\n}\n.loader {\n  margin: 7px auto;\n  font-size: 5px;\n  position: relative;\n  text-indent: -9999em;\n  border-top: 1.1em solid rgba(255, 255, 255, 0.2);\n  border-right: 1.1em solid rgba(255, 255, 255, 0.2);\n  border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);\n  border-left: 1.1em solid #ffffff;\n  -webkit-transform: translateZ(0);\n  -ms-transform: translateZ(0);\n  transform: translateZ(0);\n  -webkit-animation: load8 1.1s infinite linear;\n  animation: load8 1.1s infinite linear;\n}\n\n@-webkit-keyframes load8 {\n  0% {\n    -webkit-transform: rotate(0deg);\n    transform: rotate(0deg);\n  }\n  100% {\n    -webkit-transform: rotate(360deg);\n    transform: rotate(360deg);\n  }\n}\n\n@keyframes load8 {\n  0% {\n    -webkit-transform: rotate(0deg);\n    transform: rotate(0deg);\n  }\n  100% {\n    -webkit-transform: rotate(360deg);\n    transform: rotate(360deg);\n  }\n}\n"],data:{}});function j(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["class","message"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,1,0,n.message||n.defaultMessage)}))}function F(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"div",[["class","block-ui-spinner"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,0,"div",[["class","loader"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,j)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.message||n.defaultMessage)}),null)}function V(t){return s["ɵvid"](0,[(t()(),s["ɵand"](0,null,null,0))],null,null)}function G(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,[[1,3],["templateOutlet",2]],null,0,null,V)),(t()(),s["ɵand"](0,null,null,0))],null,null)}function B(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{templateOutlet:0}),(t()(),s["ɵeld"](1,0,null,null,7,"div",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](3,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](4,{active:0}),(t()(),s["ɵand"](16777216,null,null,1,null,F)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,G)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component,a=s["ɵinlineInterpolate"](2,"block-ui-wrapper ",n.name," ",n.className,""),r=t(e,4,0,n.active);t(e,3,0,a,r),t(e,6,0,!n.templateCmp),t(e,8,0,n.templateCmp)}),null)}function z(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"block-ui-content",[],null,null,null,B,q)),s["ɵdid"](1,12828672,null,0,I,[O,s.ComponentFactoryResolver,s.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}var Y=s["ɵccf"]("block-ui-content",I,z,{name:"name",delayStart:"delayStart",delayStop:"delayStop",defaultMessage:"message",templateCmp:"template"},{},[]),H=n("FE24"),U=n("z/SZ"),W=n("GS7A"),K=n("s7LF"),$=n("ANnk"),Z=n("f/UV"),J=n("aexS"),Q=n("+gVj"),X=n("LvDl"),tt=n("xj/R"),et=n("IheW");let nt=(()=>{class t{constructor(t,e){this.http=t,this.localeId=e}getLocale(){return this.localeId||"en-US"}setLocale(t){document.cookie="cd-lang="+t}getLanguages(){return this.http.get("ui-api/langs")}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](s.LOCALE_ID))},token:t,providedIn:"root"}),t})();var at=function(t){return t.cs="Čeština",t["de-DE"]="Deutsch",t["en-US"]="English",t["es-ES"]="Español",t["fr-FR"]="Français",t["id-ID"]="Bahasa Indonesia",t["it-IT"]="Italiano",t["ja-JP"]="日本語",t["ko-KR"]="한국어",t["pl-PL"]="Polski",t["pt-BR"]="Português (brasileiro)",t["zh-CN"]="中文 (简体)",t["zh-TW"]="中文 (繁體)",t}({});let rt={cs:tt.a,de:tt.b,es:tt.e,fr:tt.g,id:tt.m,it:tt.y,ja:tt.z,ko:tt.A,pl:tt.C,pt:tt.D,zh:tt.I};class it{constructor(t,e){this.localeService=t,this.languageService=e,this.isDropdown=!0,this.supportedLanguages=at}ngOnInit(){this.selectedLanguage=this.languageService.getLocale(),this.defineUsedLanguage(),this.languageService.getLanguages().subscribe(t=>{this.supportedLanguages=X.pick(this.supportedLanguages,t)})}defineUsedLanguage(){const t=this.selectedLanguage.slice(0,2);t in rt&&(Object(tt.c)(t,rt[t]),this.localeService.use(t))}reloadWindow(){window.location.reload()}changeLanguage(t){this.languageService.setLocale(t),this.reloadWindow()}}var st=n("ienR"),ut=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ot(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","dropdown-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.changeLanguage(t.context.$implicit.key)&&a),a}),null,null)),(t()(),s["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit.value)}))}function lt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"ul",[["class","dropdown-menu dropdown-menu-right"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,ot)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers])],(function(t,e){var n=e.component;t(e,2,0,s["ɵunv"](e,2,0,s["ɵnov"](e,3).transform(n.supportedLanguages)))}),null)}function dt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,7,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),s["ɵprd"](512,null,H.f,H.f,[]),s["ɵdid"](2,212992,null,0,H.c,[s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,H.f,H.a,W.b],null,null),(t()(),s["ɵeld"](3,0,null,null,2,"a",[["class","dropdown-toggle"],["data-toggle","dropdown"],["dropdownToggle",""],["title","Select a Language"]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,4).onClick()&&a),a}),null,null)),s["ɵdid"](4,147456,null,0,H.g,[s.ChangeDetectorRef,H.c,s.ElementRef,s.Renderer2,H.f],null,null),(t()(),s["ɵted"](5,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,lt)),s["ɵdid"](7,16384,null,0,H.d,[H.f,s.ViewContainerRef,s.TemplateRef],null,null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,2,0)}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,2).dropup,s["ɵnov"](e,2).isOpen,s["ɵnov"](e,2).isOpen&&s["ɵnov"](e,2).isBs4),t(e,3,0,!0,s["ɵnov"](e,4).isDisabled,s["ɵnov"](e,4).isOpen),t(e,5,0,n.supportedLanguages[n.selectedLanguage])}))}function ct(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.key),t(e,2,0,e.context.$implicit.key)}),(function(t,e){t(e,3,0,e.context.$implicit.value)}))}function ft(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"select",[["class","form-control custom-select"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"ngModelChange"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,1).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).onTouched()&&a),"change"===e&&(a=!1!==r.changeLanguage(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.selectedLanguage=n)&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](3,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](5,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](6,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](7,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵand"](16777216,null,null,2,null,ct)),s["ɵdid"](9,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers])],(function(t,e){var n=e.component;t(e,3,0,n.selectedLanguage),t(e,9,0,s["ɵunv"](e,9,0,s["ɵnov"](e,10).transform(n.supportedLanguages)))}),(function(t,e){t(e,0,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending,s["ɵnov"](e,7).validClass,s["ɵnov"](e,7).invalidClass)}))}function ht(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,dt)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ft)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.isDropdown),t(e,3,0,!n.isDropdown)}),null)}var gt=n("quSY"),pt=n("oxzT"),bt=n("9nlD"),mt=n("mSOc");class yt{constructor(t,e){this.notificationService=t,this.summaryService=e,this.icons=pt.a,this.hasRunningTasks=!1,this.hasNotifications=!1,this.subs=new gt.a}ngOnInit(){this.subs.add(this.summaryService.subscribe(t=>{this.hasRunningTasks=t.executing_tasks.length>0})),this.subs.add(this.notificationService.data$.subscribe(t=>{this.hasNotifications=t.length>0}))}ngOnDestroy(){this.subs.unsubscribe()}toggleSidebar(){this.notificationService.toggleSidebar()}}var vt=s["ɵcrt"]({encapsulation:0,styles:[[".running[_ngcontent-%COMP%]   i[_ngcontent-%COMP%]{color:#2b99a8}.running[_ngcontent-%COMP%]:hover   i[_ngcontent-%COMP%]{color:#fff}a[_ngcontent-%COMP%]   .dot[_ngcontent-%COMP%]{background-color:#2b99a8;border:2px solid #374249;border-radius:50%;height:11px;position:absolute;right:17px;top:10px;width:10px}a[_ngcontent-%COMP%]:hover   .dot[_ngcontent-%COMP%]{background-color:#fff;border-color:#2b99a8}"]],data:{}});function xt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"span",[["class","dot"]],null,null,null,null,null))],null,null)}function _t(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"a",[["title","Tasks and Notifications"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleSidebar()&&a),a}),null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](3,{running:0}),(t()(),s["ɵeld"](4,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,1),(t()(),s["ɵand"](16777216,null,null,1,null,xt)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](10,0,null,null,1,"span",[["class","d-md-none"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Tasks and Notifications"]))],(function(t,e){var n=e.component,a=t(e,3,0,n.hasRunningTasks);t(e,2,0,a);var r=t(e,7,0,n.icons.bell);t(e,6,0,r),t(e,9,0,n.hasNotifications)}),null)}var Tt=n("tz6c"),wt=n("e0ae"),Ot=n("Mxhz"),St=n("sne2");class It{constructor(t,e,n,a){this.modalRef=t,this.summaryService=e,this.userService=n,this.authStorageService=a,this.userPermission=this.authStorageService.getPermissions().user}ngOnInit(){this.copyright="Copyright(c) 2021 Ceph contributors.",this.projectConstants=St.c,this.hostAddr=window.location.hostname,this.modalVariables=this.setVariables(),this.subs=this.summaryService.subscribe(t=>{const e=t.version.replace("ceph version ","").split(" ");this.hostAddr=t.mgr_host.replace(/(^\w+:|^)\/\//,"").replace(/\/$/,""),this.versionNumber=e[0],this.versionHash=e[1],this.versionName=e.slice(2,e.length).join(" ")})}ngOnDestroy(){this.subs.unsubscribe()}setVariables(){const t={};t.user=localStorage.getItem("dashboard_username"),t.role="user",this.userPermission.read&&this.userService.get(t.user).subscribe(e=>{t.role=e.roles});const e=Object(wt.a)();return t.browserName=e&&e.name?e.name:"Not detected",t.browserVersion=e&&e.version?e.version:"Not detected",t.browserOS=e&&e.os?e.os:"Not detected",t}}class Nt{constructor(t,e){this.modalService=t,this.docService=e,this.icons=pt.a}ngOnInit(){this.docService.subscribeOnce("dashboard",t=>{this.docsUrl=t})}openAboutModal(){this.modalRef=this.modalService.show(It),this.modalRef.setClass("modal-lg")}}var Ct=n("LqlI"),Rt=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function At(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,12,"ul",[["class","dropdown-menu dropdown-menu-right"],["role","menu"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,4,"a",[["class","dropdown-item text-capitalize"],["target","_blank"]],[[8,"href",4]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](5,{disabled:0}),(t()(),s["ɵted"](-1,null,["documentation"])),(t()(),s["ɵeld"](7,0,null,null,2,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"a",[["class","dropdown-item"],["href","/docs"],["target","_blank"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["API"])),(t()(),s["ɵeld"](10,0,null,null,2,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,1,"a",[["class","dropdown-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.openAboutModal()&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["About"]))],(function(t,e){var n=t(e,5,0,!e.component.docsUrl);t(e,4,0,"dropdown-item text-capitalize",n)}),(function(t,e){t(e,2,0,s["ɵinlineInterpolate"](1,"",e.component.docsUrl,""))}))}function kt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,12,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),s["ɵprd"](512,null,H.f,H.f,[]),s["ɵdid"](2,212992,null,0,H.c,[s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,H.f,H.a,W.b],null,null),(t()(),s["ɵeld"](3,0,null,null,7,"a",[["class","dropdown-toggle"],["dropdownToggle",""],["title","Help"]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,4).onClick()&&a),a}),null,null)),s["ɵdid"](4,147456,null,0,H.g,[s.ChangeDetectorRef,H.c,s.ElementRef,s.Renderer2,H.f],null,null),(t()(),s["ɵeld"](5,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](8,1),(t()(),s["ɵeld"](9,0,null,null,1,"span",[["class","d-md-none"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Help"])),(t()(),s["ɵand"](16777216,null,null,1,null,At)),s["ɵdid"](12,16384,null,0,H.d,[H.f,s.ViewContainerRef,s.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,2,0);var a=t(e,8,0,n.icons.questionCircle);t(e,7,0,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,2).dropup,s["ɵnov"](e,2).isOpen,s["ɵnov"](e,2).isOpen&&s["ɵnov"](e,2).isBs4),t(e,3,0,!0,s["ɵnov"](e,4).isDisabled,s["ɵnov"](e,4).isOpen)}))}var Et=n("iInd");class Lt{constructor(t){this.authStorageService=t,this.icons=pt.a;const e=this.authStorageService.getPermissions();this.userPermission=e.user,this.configOptPermission=e.configOpt}ngOnInit(){}}var Dt=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Pt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"a",[["class","dropdown-item"],["routerLink","/user-management"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,2).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](2,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["User management"]))],(function(t,e){t(e,2,0,"/user-management")}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).target,s["ɵnov"](e,2).href)}))}function Mt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"a",[["class","dropdown-item"],["routerLink","/telemetry"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,2).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](2,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Telemetry configuration"]))],(function(t,e){t(e,2,0,"/telemetry")}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).target,s["ɵnov"](e,2).href)}))}function qt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"ul",[["class","dropdown-menu dropdown-menu-right"],["role","menu"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Pt)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Mt)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.userPermission.read),t(e,4,0,n.configOptPermission.read)}),null)}function jt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,12,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),s["ɵprd"](512,null,H.f,H.f,[]),s["ɵdid"](2,212992,null,0,H.c,[s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,H.f,H.a,W.b],null,null),(t()(),s["ɵeld"](3,0,null,null,7,"a",[["class","dropdown-toggle"],["dropdownToggle",""],["title","Dashboard Settings"]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,4).onClick()&&a),a}),null,null)),s["ɵdid"](4,147456,null,0,H.g,[s.ChangeDetectorRef,H.c,s.ElementRef,s.Renderer2,H.f],null,null),(t()(),s["ɵeld"](5,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](8,1),(t()(),s["ɵeld"](9,0,null,null,1,"span",[["class","d-md-none"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Dashboard Settings"])),(t()(),s["ɵand"](16777216,null,null,1,null,qt)),s["ɵdid"](12,16384,null,0,H.d,[H.f,s.ViewContainerRef,s.TemplateRef],null,null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0);var a=t(e,8,0,n.icons.deepCheck);t(e,7,0,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,2).dropup,s["ɵnov"](e,2).isOpen,s["ɵnov"](e,2).isOpen&&s["ɵnov"](e,2).isBs4),t(e,3,0,!0,s["ɵnov"](e,4).isDisabled,s["ɵnov"](e,4).isOpen)}))}function Ft(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,jt)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.userPermission.read)}),null)}var Vt=n("DSvg");class Gt{constructor(t,e){this.authStorageService=t,this.authService=e,this.icons=pt.a}ngOnInit(){this.username=this.authStorageService.getUsername(),this.sso=this.authStorageService.isSSO()}logout(){this.authService.logout()}}var Bt=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function zt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"li",[["role","menuitem"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,7,"a",[["class","dropdown-item"],["routerLink","/user-profile/edit"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,2).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](2,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](3,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](5,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](6,1),(t()(),s["ɵeld"](7,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Change password"]))],(function(t,e){var n=e.component;t(e,2,0,"/user-profile/edit");var a=t(e,6,0,n.icons.lock);t(e,5,0,a)}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).target,s["ɵnov"](e,2).href)}))}function Yt(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,16,"ul",[["class","dropdown-menu dropdown-menu-right"],["role","menu"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"li",[["class","disabled"],["role","menuitem"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"a",[["class","dropdown-item disabled"],["href","#"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Signed in as "])),(t()(),s["ɵeld"](4,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](5,null,["",""])),(t()(),s["ɵeld"](6,0,null,null,0,"li",[["class","dropdown-divider"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,zt)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](9,0,null,null,7,"li",[["role","menuitem"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,6,"a",[["class","dropdown-item"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.logout()&&a),a}),null,null)),(t()(),s["ɵeld"](11,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](13,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](14,1),(t()(),s["ɵeld"](15,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Sign out"]))],(function(t,e){var n=e.component;t(e,8,0,!n.sso);var a=t(e,14,0,n.icons.signOut);t(e,13,0,a)}),(function(t,e){t(e,5,0,e.component.username)}))}function Ht(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,12,"div",[["class","btn-group"],["dropdown",""]],[[2,"dropup",null],[2,"open",null],[2,"show",null]],null,null,null,null)),s["ɵprd"](512,null,H.f,H.f,[]),s["ɵdid"](2,212992,null,0,H.c,[s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,H.f,H.a,W.b],null,null),(t()(),s["ɵeld"](3,0,null,null,7,"a",[["class","dropdown-toggle"],["dropdownToggle",""],["title","Logged in user"]],[[1,"aria-haspopup",0],[1,"disabled",0],[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,4).onClick()&&a),a}),null,null)),s["ɵdid"](4,147456,null,0,H.g,[s.ChangeDetectorRef,H.c,s.ElementRef,s.Renderer2,H.f],null,null),(t()(),s["ɵeld"](5,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](8,1),(t()(),s["ɵeld"](9,0,null,null,1,"span",[["class","d-md-none"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Logged in user"])),(t()(),s["ɵand"](16777216,null,null,1,null,Yt)),s["ɵdid"](12,16384,null,0,H.d,[H.f,s.ViewContainerRef,s.TemplateRef],null,null)],(function(t,e){var n=e.component;t(e,2,0);var a=t(e,8,0,n.icons.user);t(e,7,0,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,2).dropup,s["ɵnov"](e,2).isOpen,s["ɵnov"](e,2).isOpen&&s["ɵnov"](e,2).isBs4),t(e,3,0,!0,s["ɵnov"](e,4).isDisabled,s["ɵnov"](e,4).isOpen)}))}const Ut=[Object(W.h)({height:0,visibility:"hidden"}),Object(W.e)("400ms cubic-bezier(0.4,0.0,0.2,1)",Object(W.h)({height:"*",visibility:"visible"}))],Wt=[Object(W.h)({height:"*",visibility:"visible"}),Object(W.e)("400ms cubic-bezier(0.4,0.0,0.2,1)",Object(W.h)({height:0,visibility:"hidden"}))];class Kt{constructor(t,e,n){this._el=t,this._renderer=e,this.collapsed=new s.EventEmitter,this.collapses=new s.EventEmitter,this.expanded=new s.EventEmitter,this.expands=new s.EventEmitter,this.isExpanded=!0,this.isCollapsed=!1,this.isCollapse=!0,this.isCollapsing=!1,this.isAnimated=!1,this._display="block",this._stylesLoaded=!1,this._COLLAPSE_ACTION_NAME="collapse",this._EXPAND_ACTION_NAME="expand",this._factoryCollapseAnimation=n.build(Wt),this._factoryExpandAnimation=n.build(Ut)}set display(t){this.isAnimated?(this._display=t,"none"!==t?this.show():this.hide()):this._renderer.setStyle(this._el.nativeElement,"display",t)}set collapse(t){this._player&&!this._isAnimationDone||(this.isExpanded=t,this.toggle())}get collapse(){return this.isExpanded}ngAfterViewChecked(){this._stylesLoaded=!0,this._player&&this._isAnimationDone&&(this._player.reset(),this._renderer.setStyle(this._el.nativeElement,"height","*"))}toggle(){this.isExpanded?this.hide():this.show()}hide(){this.isCollapsing=!0,this.isExpanded=!1,this.isCollapsed=!0,this.isCollapsing=!1,this.collapses.emit(this),this._isAnimationDone=!1,this.animationRun(this.isAnimated,this._COLLAPSE_ACTION_NAME)(()=>{this._isAnimationDone=!0,this.collapsed.emit(this),this._renderer.setStyle(this._el.nativeElement,"display","none")})}show(){this._renderer.setStyle(this._el.nativeElement,"display",this._display),this.isCollapsing=!0,this.isExpanded=!0,this.isCollapsed=!1,this.isCollapsing=!1,this.expands.emit(this),this._isAnimationDone=!1,this.animationRun(this.isAnimated,this._EXPAND_ACTION_NAME)(()=>{this._isAnimationDone=!0,this.expanded.emit(this)})}animationRun(t,e){if(!t||!this._stylesLoaded)return t=>t();this._renderer.setStyle(this._el.nativeElement,"overflow","hidden"),this._renderer.addClass(this._el.nativeElement,"collapse");const n=e===this._EXPAND_ACTION_NAME?this._factoryExpandAnimation:this._factoryCollapseAnimation;return this._player&&this._player.destroy(),this._player=n.create(this._el.nativeElement),this._player.play(),t=>this._player.onDone(t)}}class $t{static forRoot(){return{ngModule:$t,providers:[]}}}class Zt{transform(t){return"HEALTH_OK"===t?{color:"#00bb00"}:"HEALTH_WARN"===t?{color:"#ffa500"}:"HEALTH_ERR"===t?{color:"#ff0000"}:null}}var Jt=n("MdoF"),Qt=n("CNMR"),Xt=n("20UP"),te=n("oMSZ");class ee{constructor(t,e){this.settingsService=t,this.authStorageService=e,this.displayNotification=!1}ngOnInit(){this.settingsService.getStandardSettings().subscribe(t=>{this.pwdExpirationSettings=new te.a(t);const e=this.authStorageService.getPwdExpirationDate();e&&(this.expirationDays=this.getExpirationDays(e),this.alertType=this.expirationDays<=this.pwdExpirationSettings.pwdExpirationWarning2?"danger":"warning",this.displayNotification=this.expirationDays<=this.pwdExpirationSettings.pwdExpirationWarning1,this.authStorageService.isPwdDisplayedSource.next(this.displayNotification))})}ngOnDestroy(){this.authStorageService.isPwdDisplayedSource.next(!1)}getExpirationDays(t){const e=new Date,n=new Date(1e3*t);return Math.floor((n.valueOf()-e.valueOf())/864e5)}close(){this.authStorageService.isPwdDisplayedSource.next(!1),this.displayNotification=!1}}var ne=s["ɵcrt"]({encapsulation:0,styles:[[".no-margin-bottom .alert{margin-bottom:0}"]],data:{}});function ae(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Your password will expire in "])),(t()(),s["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["less than 1"])),(t()(),s["ɵted"](-1,null,[" day. Click "])),(t()(),s["ɵeld"](5,0,null,null,2,"a",[["class","alert-link"],["routerLink","/user-profile/edit"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,6).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](6,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["here"])),(t()(),s["ɵted"](-1,null,[" to change it now."]))],(function(t,e){t(e,6,0,"/user-profile/edit")}),(function(t,e){t(e,5,0,s["ɵnov"](e,6).target,s["ɵnov"](e,6).href)}))}function re(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Your password will expire in "])),(t()(),s["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](3,null,["",""])),(t()(),s["ɵted"](-1,null,[" day(s). Click "])),(t()(),s["ɵeld"](5,0,null,null,2,"a",[["class","alert-link"],["routerLink","/user-profile/edit"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,6).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](6,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["here"])),(t()(),s["ɵted"](-1,null,[" to change it now."]))],(function(t,e){t(e,6,0,"/user-profile/edit")}),(function(t,e){t(e,3,0,e.component.expirationDays),t(e,5,0,s["ɵnov"](e,6).target,s["ɵnov"](e,6).href)}))}function ie(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"alert",[["class","no-margin-bottom"]],null,[[null,"onClose"]],(function(t,e,n){var a=!0;return"onClose"===e&&(a=!1!==t.component.close(n)&&a),a}),Jt.c,Jt.b)),s["ɵdid"](1,114688,null,0,Qt.a,[Qt.b,s.ChangeDetectorRef],{type:[0,"type"],dismissible:[1,"dismissible"]},{onClose:"onClose"}),(t()(),s["ɵand"](16777216,null,0,1,null,ae)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,re)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,s["ɵinlineInterpolate"](1,"",n.alertType,""),!0),t(e,3,0,0===n.expirationDays),t(e,5,0,n.expirationDays>0)}),null)}function se(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,ie)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.displayNotification)}),null)}var ue=n("pL04");let oe=(()=>{class t{constructor(t){this.http=t,this.url="api/mgr/module"}list(){return this.http.get(""+this.url)}getConfig(t){return this.http.get(`${this.url}/${t}`)}updateConfig(t,e){return this.http.put(`${this.url}/${t}`,{config:e})}enable(t){return this.http.post(`${this.url}/${t}/enable`,null)}disable(t){return this.http.post(`${this.url}/${t}/disable`,null)}getOptions(t){return this.http.get(`${this.url}/${t}/options`)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();var le=n("mtw6");let de=(()=>{class t{constructor(){this.visible=!1,this.update=new s.EventEmitter}setVisibility(t){this.visible=t,this.update.emit(t)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})();class ce{constructor(t,e,n,a,r){this.mgrModuleService=t,this.authStorageService=e,this.notificationService=n,this.telemetryNotificationService=a,this.i18n=r,this.displayNotification=!1}ngOnInit(){if(this.telemetryNotificationService.update.subscribe(t=>{this.displayNotification=t}),!this.isNotificationHidden()){const t=this.authStorageService.getPermissions().configOpt;X.every(Object.values(t))&&this.mgrModuleService.getConfig("telemetry").subscribe(t=>{t.enabled||this.telemetryNotificationService.setVisibility(!0)})}}ngOnDestroy(){this.telemetryNotificationService.setVisibility(!1)}isNotificationHidden(){return"true"===localStorage.getItem("telemetry_notification_hidden")}close(){this.telemetryNotificationService.setVisibility(!1),localStorage.setItem("telemetry_notification_hidden","true"),this.notificationService.show(le.a.success,this.i18n("Telemetry activation reminder muted"),this.i18n("You can activate the module on the Telemetry configuration page (<b>Dashboard Settings</b> -> <b>Telemetry configuration</b>) at any time."))}}var fe=n("GiVz"),he=s["ɵcrt"]({encapsulation:0,styles:[["cd-telemetry-notification .no-margin-bottom{margin-bottom:0}.activate-button[_ngcontent-%COMP%]{background-color:#fcecba;border:.5px solid #495057;border-radius:10%;padding:.1rem .4rem}.activate-text[_ngcontent-%COMP%]{color:#495057;font-weight:700}"]],data:{}});function ge(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"alert",[["class","no-margin-bottom"],["type","warning"]],null,[[null,"close"]],(function(t,e,n){var a=!0;return"close"===e&&(a=!1!==t.component.close(n)&&a),a}),Jt.c,Jt.b)),s["ɵdid"](1,114688,null,0,Qt.a,[Qt.b,s.ChangeDetectorRef],{type:[0,"type"]},null),(t()(),s["ɵeld"](2,0,null,0,8,"div",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The Ceph community needs your help to continue improving: please "])),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["class","btn activate-button alert-link activate-text"],["routerLink","/telemetry"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Activate"])),(t()(),s["ɵted"](-1,null,[" the "])),(t()(),s["ɵeld"](8,0,null,null,1,"a",[["href","https://docs.ceph.com/en/latest/mgr/telemetry/"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Telemetry"])),(t()(),s["ɵted"](-1,null,[" module."]))],(function(t,e){t(e,1,0,"warning"),t(e,5,0,"/telemetry")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function pe(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,ge)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.displayNotification)}),null)}var be=n("DqMs"),me=n("/NlG"),ye=n("Yrry"),ve=n("cUpR"),xe=n("2Vo4"),_e=n("LRne"),Te=n("EY2u"),we=n("5+tZ"),Oe=n("JIr8"),Se=n("vkgz"),Ie=n("D0XW"),Ne=n("7o/Q"),Ce=n("WMd4");function Re(t,e=Ie.a){var n;const a=(n=t)instanceof Date&&!isNaN(+n)?+t-e.now():Math.abs(t);return t=>t.lift(new Ae(a,e))}class Ae{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new ke(t,this.delay,this.scheduler))}}class ke extends Ne.a{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,a=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-a.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-a.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(ke.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new Ee(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(Ce.a.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(Ce.a.createComplete()),this.unsubscribe()}}class Ee{constructor(t,e){this.time=t,this.notification=e}}class Le{constructor(t,e){this.count=t,this.source=e}call(t,e){return e.subscribe(new De(t,this.count,this.source))}}class De extends Ne.a{constructor(t,e,n){super(t),this.count=e,this.source=n}complete(){if(!this.isStopped){const{source:t,count:e}=this;if(0===e)return super.complete();e>-1&&(this.count=e-1),t.subscribe(this._unsubscribeAndRecycle())}}}let Pe=(()=>{class t{constructor(t){this.http=t,this.url="ui-api/motd"}get(){return this.http.get(this.url)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:"root"}),t})(),Me=(()=>{class t{constructor(t){this.motdService=t,this.motdSource=new xe.a(null),this.localStorageKey="dashboard_motd_hidden",this.motd$=this.motdSource.asObservable(),this.subscription=Object(_e.a)(!0).pipe(Object(we.a)(()=>this.motdService.get()),Object(Oe.a)(t=>(X.isFunction(t.preventDefault)&&t.preventDefault(),Te.a)),Object(Se.a)(t=>this.processResponse(t)),Re(6e4),function(t=-1){return e=>0===t?Object(Te.b)():e.lift(new Le(t<0?-1:t-1,e))}()).subscribe()}ngOnDestroy(){this.subscription.unsubscribe()}hide(){const t=this.motdSource.getValue();if(t){const e=`${t.severity}:${t.md5}`;switch(t.severity){case"info":localStorage.setItem(this.localStorageKey,e),sessionStorage.removeItem(this.localStorageKey);break;case"warning":sessionStorage.setItem(this.localStorageKey,e),localStorage.removeItem(this.localStorageKey)}}this.motdSource.next(null)}processResponse(t){const e=sessionStorage.getItem(this.localStorageKey)||localStorage.getItem(this.localStorageKey);let n=X.isNull(e);if(!n&&t){const[a,r]=e.split(":");a===t.severity&&r===t.md5||(n=!0,sessionStorage.removeItem(this.localStorageKey),localStorage.removeItem(this.localStorageKey))}n&&this.motdSource.next(t)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](Pe))},token:t,providedIn:"root"}),t})();class qe{constructor(t){this.motdNotificationService=t,this.motd=void 0}ngOnInit(){this.subscription=this.motdNotificationService.motd$.subscribe(t=>{this.motd=t})}ngOnDestroy(){this.subscription.unsubscribe()}onDismissed(){this.motdNotificationService.hide()}}var je=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Fe(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-alert-panel",[["size","slim"]],null,[[null,"dismissed"]],(function(t,e,n){var a=!0;return"dismissed"===e&&(a=!1!==t.component.onDismissed()&&a),a}),be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"],size:[1,"size"],showTitle:[2,"showTitle"],dismissible:[3,"dismissible"]},{dismissed:"dismissed"}),(t()(),s["ɵeld"](2,0,null,0,1,"span",[],[[8,"innerHTML",1]],null,null,null,null)),s["ɵppd"](3,1)],(function(t,e){var n=e.component;t(e,1,0,n.motd.severity,"slim",!1,"danger"!==n.motd.severity)}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent,0),n.motd.message));t(e,2,0,a)}))}function Ve(t){return s["ɵvid"](0,[s["ɵpid"](0,ye.a,[ve.b]),(t()(),s["ɵand"](16777216,null,null,1,null,Fe)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,e.component.motd)}),null)}var Ge=n("7qid"),Be=n("38Bd"),ze=n("wd/R");class Ye{transform(t,e=!1){return e?ze(t).fromNow():this._forHumans(t)}_forHumans(t){const e=[[""+Math.floor(t/31536e3),"years"],[""+Math.floor(t%31536e3/86400),"days"],[""+Math.floor(t%86400/3600),"hours"],[""+Math.floor(t%3600/60),"minutes"],[""+Math.floor(t%60),"seconds"]];let n="";for(let a=0,r=e.length;a<r;a++)"0"!==e[a][0]&&(n+=" "+e[a][0]+" "+("1"===e[a][0]?e[a][1].substr(0,e[a][1].length-1):e[a][1]));return n.trim()||"1 second"}}var He=n("a0VL"),Ue=n("moLw"),We=n("WF9J"),Ke=s["ɵcrt"]({encapsulation:2,styles:["[data-simplebar]{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;flex-wrap:wrap;-webkit-box-pack:start;justify-content:flex-start;align-content:flex-start;-webkit-box-align:start;align-items:flex-start}.simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;left:0;top:0;bottom:0;right:0;width:auto!important;height:auto!important;z-index:0}.simplebar-offset{direction:inherit!important;box-sizing:inherit!important;resize:none!important;position:absolute;top:0;left:0;bottom:0;right:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.simplebar-content-wrapper{direction:inherit;box-sizing:border-box!important;position:relative;display:block;height:100%;width:auto;visibility:visible;max-width:100%;max-height:100%;scrollbar-width:none;-ms-overflow-style:none}.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar{width:0;height:0}.simplebar-content:after,.simplebar-content:before{content:' ';display:table}.simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.simplebar-height-auto-observer-wrapper{box-sizing:inherit!important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;-webkit-box-flex:inherit;flex-grow:inherit;flex-shrink:0;flex-basis:0}.simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.simplebar-track{z-index:1;position:absolute;right:0;bottom:0;pointer-events:none;overflow:hidden}[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none}[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.simplebar-scrollbar{position:absolute;left:0;right:0;min-height:10px}.simplebar-scrollbar:before{position:absolute;content:'';background:#000;border-radius:7px;left:2px;right:2px;opacity:0;-webkit-transition:opacity .2s linear;transition:opacity .2s linear}.simplebar-scrollbar.simplebar-visible:before{opacity:.5;-webkit-transition:opacity linear;transition:opacity linear}.simplebar-track.simplebar-vertical{top:0;width:11px}.simplebar-track.simplebar-vertical .simplebar-scrollbar:before{top:2px;bottom:2px}.simplebar-track.simplebar-horizontal{left:0;height:11px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before{height:100%;left:2px;right:2px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar{right:auto;left:0;top:2px;height:7px;min-height:0;min-width:10px;width:auto}[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical{right:auto;left:0}.hs-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll}.simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}","ngx-simplebar{display:block}"],data:{}});function $e(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[["class","simplebar-wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"div",[["class","simplebar-height-auto-observer-wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"div",[["class","simplebar-height-auto-observer"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,4,"div",[["class","simplebar-mask"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,3,"div",[["class","simplebar-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,2,"div",[["class","simplebar-content-wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,1,"div",[["class","simplebar-content"]],null,null,null,null,null)),s["ɵncd"](null,0),(t()(),s["ɵeld"](8,0,null,null,0,"div",[["class","simplebar-placeholder"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,"div",[["class","simplebar-track simplebar-horizontal"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,0,"div",[["class","simplebar-scrollbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,1,"div",[["class","simplebar-track simplebar-vertical"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,0,"div",[["class","simplebar-scrollbar"]],null,null,null,null,null))],null,null)}var Ze=n("O9Tv"),Je=n("G1I9"),Qe=n("lJxs");let Xe=(()=>{class t{constructor(t,e){this.http=t,this.settingsService=e,this.baseURL="api/prometheus",this.settingsKey={alertmanager:"api/settings/alertmanager-api-host",prometheus:"api/settings/prometheus-api-host"}}ifAlertmanagerConfigured(t,e){this.settingsService.ifSettingConfigured(this.settingsKey.alertmanager,t,e)}disableAlertmanagerConfig(){this.settingsService.disableSetting(this.settingsKey.alertmanager)}ifPrometheusConfigured(t,e){this.settingsService.ifSettingConfigured(this.settingsKey.prometheus,t,e)}disablePrometheusConfig(){this.settingsService.disableSetting(this.settingsKey.prometheus)}getAlerts(t={}){return this.http.get(this.baseURL,{params:t})}getSilences(t={}){return this.http.get(this.baseURL+"/silences",{params:t})}getRules(t="all"){return this.http.get(this.baseURL+"/rules").pipe(Object(Qe.a)(e=>(["alerting","rewrites"].includes(t)&&e.groups.map(e=>{e.rules=e.rules.filter(e=>e.type===t)}),e)))}setSilence(t){return this.http.post(this.baseURL+"/silence",t,{observe:"response"})}expireSilence(t){return this.http.delete(`${this.baseURL}/silence/${t}`,{observe:"response"})}getNotifications(t){return this.http.get(`${this.baseURL}/notifications?from=${t&&t.id?t.id:"last"}`)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](Xt.a))},token:t,providedIn:ue.a}),t})(),tn=(()=>{class t{constructor(t){this.notificationService=t}sendNotifications(t){t.forEach(t=>this.notificationService.show(t))}convertToCustomAlerts(t){return X.uniqWith(t.map(t=>({status:X.isObject(t.status)?t.status.state:this.getPrometheusNotificationStatus(t),name:t.labels.alertname,url:t.generatorURL,description:t.annotations.description,fingerprint:X.isObject(t.status)&&t.fingerprint})),X.isEqual)}getPrometheusNotificationStatus(t){const e=t.status;return"firing"===e?"active":e}convertAlertToNotification(t){return new Je.b(this.formatType(t.status),`${t.name} (${t.status})`,this.appendSourceLink(t,t.description),void 0,"Prometheus")}formatType(t){return le.a[X.findKey({error:["firing","active"],info:["suppressed","unprocessed"],success:["resolved"]},e=>e.includes(t))]}appendSourceLink(t,e){return`${e} <a href="${t.url}" target="_blank"><i class="${pt.a.lineChart}"></i></a>`}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](bt.a))},token:t,providedIn:"root"}),t})(),en=(()=>{class t{constructor(t,e){this.alertFormatter=t,this.prometheusService=e,this.canAlertsBeNotified=!1,this.alerts=[],this.rules=[]}getAlerts(){this.prometheusService.ifAlertmanagerConfigured(()=>{this.prometheusService.getAlerts().subscribe(t=>this.handleAlerts(t),t=>{[404,504].includes(t.status)&&this.prometheusService.disableAlertmanagerConfig()})})}getRules(){this.prometheusService.ifPrometheusConfigured(()=>{this.prometheusService.getRules("alerting").subscribe(t=>{this.rules=t.groups.reduce((t,e)=>t.concat(e.rules.map(t=>(t.group=e.name,t))),[])})})}refresh(){this.getAlerts(),this.getRules()}handleAlerts(t){this.canAlertsBeNotified&&this.notifyOnAlertChanges(t,this.alerts),this.activeAlerts=X.reduce(this.alerts,(t,e)=>"active"===e.status.state?++t:t,0),this.alerts=t,this.canAlertsBeNotified=!0}notifyOnAlertChanges(t,e){const n=this.getChangedAlerts(this.alertFormatter.convertToCustomAlerts(t),this.alertFormatter.convertToCustomAlerts(e)).map(t=>this.alertFormatter.convertAlertToNotification(t));this.alertFormatter.sendNotifications(n)}getChangedAlerts(t,e){return X.differenceWith(t,e,X.isEqual).concat(this.getVanishedAlerts(t,e))}getVanishedAlerts(t,e){return X.differenceWith(e,t,(t,e)=>t.fingerprint===e.fingerprint).map(t=>(t.status="resolved",t))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](tn),s["ɵɵinject"](Xe))},token:t,providedIn:"root"}),t})(),nn=(()=>{class t{constructor(t,e){this.alertFormatter=t,this.prometheusService=e,this.backendFailure=!1,this.notifications=[]}refresh(){this.backendFailure||this.prometheusService.getNotifications(X.last(this.notifications)).subscribe(t=>this.handleNotifications(t),()=>this.backendFailure=!0)}handleNotifications(t){0!==t.length&&(this.notifications.length>0&&this.alertFormatter.sendNotifications(X.flatten(t.map(t=>this.formatNotification(t)))),this.notifications=this.notifications.concat(t))}formatNotification(t){return this.alertFormatter.convertToCustomAlerts(t.alerts).map(t=>this.alertFormatter.convertAlertToNotification(t))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](tn),s["ɵɵinject"](Xe))},token:t,providedIn:"root"}),t})();var an=n("ufoC");class rn{constructor(t,e,n,a,r,i,s,u){this.notificationService=t,this.summaryService=e,this.taskMessageService=n,this.prometheusNotificationService=a,this.authStorageService=r,this.prometheusAlertService=i,this.ngZone=s,this.cdRef=u,this.isSidebarOpened=!1,this.executingTasks=[],this.subs=new gt.a,this.icons=pt.a,this.last_task="",this.mutex=new Ze.Mutex,this.simplebar={autoHide:!1},this.notifications=[]}ngOnDestroy(){window.clearInterval(this.interval),window.clearTimeout(this.timeout),this.subs.unsubscribe()}ngOnInit(){this.last_task=window.localStorage.getItem("last_task");const t=this.authStorageService.getPermissions();t.prometheus.read&&t.configOpt.read&&(this.triggerPrometheusAlerts(),this.ngZone.runOutsideAngular(()=>{this.interval=window.setInterval(()=>{this.ngZone.run(()=>{this.triggerPrometheusAlerts()})},5e3)})),this.subs.add(this.notificationService.data$.subscribe(t=>{this.notifications=X.orderBy(t,["timestamp"],["desc"]),this.cdRef.detectChanges()})),this.subs.add(this.notificationService.sidebarSubject.subscribe(t=>{this.isSidebarOpened=!t&&!this.isSidebarOpened,window.clearTimeout(this.timeout),this.timeout=window.setTimeout(()=>{this.cdRef.detectChanges()},0)})),this.subs.add(this.summaryService.subscribe(t=>{this._handleTasks(t.executing_tasks),this.mutex.acquire().then(e=>{X.filter(t.finished_tasks,t=>!this.last_task||ze(t.end_time).isAfter(this.last_task)).forEach(t=>{const e=this.notificationService.finishedTaskToNotification(t,t.success),n=new Je.a(e);n.timestamp=t.end_time,n.duration=t.duration,this.last_task&&!ze(t.end_time).isAfter(this.last_task)||(this.last_task=t.end_time,window.localStorage.setItem("last_task",this.last_task)),this.notificationService.save(n)}),this.cdRef.detectChanges(),e()})}))}_handleTasks(t){for(const e of t)e.description=this.taskMessageService.getRunningTitle(e);this.executingTasks=t}triggerPrometheusAlerts(){this.prometheusAlertService.refresh(),this.prometheusNotificationService.refresh()}removeAll(){this.notificationService.removeAll()}remove(t){this.notificationService.remove(t)}closeSidebar(){this.isSidebarOpened=!1}trackByFn(t){return t}}var sn=s["ɵcrt"]({encapsulation:0,styles:[["[_nghost-%COMP%]{position:fixed;top:53px;bottom:10px;right:-350px;width:350px;max-width:90vw;z-index:9;transition:all .6s}.active[_nghost-%COMP%]{right:20px}.card[_ngcontent-%COMP%]{height:100%}ngx-simplebar[_ngcontent-%COMP%]{height:calc(100% - 42.2px)}.separator[_ngcontent-%COMP%]{padding:5px 12px;color:#90949c;background-color:#eee;font-size:12px}.btn-link[_ngcontent-%COMP%]   .fa-trash-o[_ngcontent-%COMP%]{color:#000}table[_ngcontent-%COMP%]{width:100%}.row[_ngcontent-%COMP%]{margin-left:0;margin-right:0}"]],data:{}});function un(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,29,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,27,"div",[["class","card tc_task border-0 mb-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,26,"div",[["class","row no-gutters"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,12,"div",[["class","col-md-3 text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,11,"span",[["class","text-info"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](7,2),(t()(),s["ɵeld"](8,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](10,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](11,2),(t()(),s["ɵeld"](12,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](14,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](15,4),(t()(),s["ɵeld"](16,0,null,null,12,"div",[["class","col-md-9"]],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,11,"div",[["class","card-body p-0"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,1,"h6",[["class","card-title bold"]],null,null,null,null,null)),(t()(),s["ɵted"](19,null,["",""])),(t()(),s["ɵeld"](20,0,null,null,2,"div",[["class","progress mb-1"]],null,null,null,null,null)),(t()(),s["ɵeld"](21,0,null,null,1,"progressbar",[["class","progress-striped active"],["max","100"]],[[1,"max",0],[2,"progress",null]],null,null,Ge.b,Ge.a)),s["ɵdid"](22,49152,null,0,Be.b,[Be.c],{animate:[0,"animate"],striped:[1,"striped"],value:[2,"value"],max:[3,"max"]},null),(t()(),s["ɵeld"](23,0,null,null,5,"p",[["class","card-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵeld"](24,0,null,null,2,"small",[["class","date float-left"]],null,null,null,null,null)),(t()(),s["ɵted"](25,null,[" "," "])),s["ɵppd"](26,1),(t()(),s["ɵeld"](27,0,null,null,1,"span",[["class","float-right"]],null,null,null,null,null)),(t()(),s["ɵted"](28,null,[" "," % "])),(t()(),s["ɵeld"](29,0,null,null,0,"hr",[],null,null,null,null,null))],(function(t,e){var n=e.component,a=t(e,7,0,n.icons.stack,n.icons.large2x);t(e,6,0,"text-info",a);var r=t(e,11,0,n.icons.stack2x,n.icons.circle);t(e,10,0,r);var i=t(e,15,0,n.icons.stack1x,n.icons.spinner,n.icons.spin,n.icons.inverse);t(e,14,0,i),t(e,22,0,!0,!0,e.context.$implicit.progress,"100")}),(function(t,e){t(e,19,0,e.context.$implicit.description),t(e,21,0,s["ɵnov"](e,22).max,s["ɵnov"](e,22).addClass);var n=s["ɵunv"](e,25,0,t(e,26,0,s["ɵnov"](e.parent.parent,0),e.context.$implicit.begin_time));t(e,25,0,n),t(e,28,0,e.context.$implicit.progress||0)}))}function on(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,un)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,n.executingTasks,n.trackByFn)}),null)}function ln(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"small",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Duration:"])),(t()(),s["ɵted"](4,null,[" "," "])),s["ɵpid"](0,Ye,[]),(t()(),s["ɵeld"](6,0,null,null,0,"br",[],null,null,null,null,null))],null,(function(t,e){t(e,4,0,s["ɵunv"](e,4,0,s["ɵnov"](e,5).transform(e.parent.context.$implicit.duration)))}))}function dn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,37,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,35,"div",[["class","card tc_notification border-0 mb-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,34,"div",[["class","row no-gutters"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,12,"div",[["class","col-md-3 text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,11,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,3),(t()(),s["ɵeld"](8,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](10,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](11,2),(t()(),s["ɵeld"](12,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](14,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](15,3),(t()(),s["ɵeld"](16,0,null,null,20,"div",[["class","col-md-9"]],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,19,"div",[["class","card-body p-0"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,4,"button",[["class","btn btn-link float-right mt-0 pt-0"],["title","Remove notification"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.remove(t.context.index),a=!1!==n.stopPropagation()&&a),a}),null,null)),(t()(),s["ɵeld"](19,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](21,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](22,1),(t()(),s["ɵeld"](23,0,null,null,1,"h6",[["class","card-title bold"]],null,null,null,null,null)),(t()(),s["ɵted"](24,null,["",""])),(t()(),s["ɵeld"](25,0,null,null,0,"p",[["class","card-text"]],[[8,"innerHTML",1]],null,null,null,null)),(t()(),s["ɵeld"](26,0,null,null,10,"p",[["class","card-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ln)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](29,0,null,null,3,"small",[["class","date"]],[[8,"title",0]],null,null,null,null)),s["ɵppd"](30,1),(t()(),s["ɵted"](31,null,["",""])),s["ɵpid"](0,Ye,[]),(t()(),s["ɵeld"](33,0,null,null,3,"i",[["class","float-right custom-icon"]],[[8,"title",0]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](35,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](36,1),(t()(),s["ɵeld"](37,0,null,null,0,"hr",[],null,null,null,null,null))],(function(t,e){var n=e.component,a=t(e,7,0,n.icons.stack,n.icons.large2x,e.context.$implicit.textClass);t(e,6,0,a);var r=t(e,11,0,n.icons.circle,n.icons.stack2x);t(e,10,0,r);var i=t(e,15,0,n.icons.stack1x,n.icons.inverse,e.context.$implicit.iconClass);t(e,14,0,i);var s=t(e,22,0,n.icons.trash);t(e,21,0,s),t(e,28,0,e.context.$implicit.duration);var u=t(e,36,0,e.context.$implicit.applicationClass);t(e,35,0,"float-right custom-icon",u)}),(function(t,e){t(e,24,0,e.context.$implicit.title),t(e,25,0,e.context.$implicit.message);var n=s["ɵunv"](e,29,0,t(e,30,0,s["ɵnov"](e.parent.parent.parent,0),e.context.$implicit.timestamp));t(e,29,0,n),t(e,31,0,s["ɵunv"](e,31,0,s["ɵnov"](e,32).transform(e.context.$implicit.timestamp,!0))),t(e,33,0,e.context.$implicit.application)}))}function cn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,7,"button",[["class","btn btn-light btn-block"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.removeAll(),a=!1!==n.stopPropagation()&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1),(t()(),s["ɵted"](-1,null,["   "])),(t()(),s["ɵeld"](7,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clear notifications"])),(t()(),s["ɵeld"](9,0,null,null,0,"hr",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,dn)),s["ɵdid"](11,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=t(e,5,0,n.icons.trash);t(e,4,0,a),t(e,11,0,n.notifications)}),null)}function fn(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,cn)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component.notifications.length>0)}),null)}function hn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"div",[["class","message text-center"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["There are no notifications."]))],null,null)}function gn(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,hn)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,0===n.notifications.length&&0===n.executingTasks.length)}),null)}function pn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function bn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function mn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function yn(t){return s["ɵvid"](2,[s["ɵpid"](0,He.a,[i.DatePipe]),(t()(),s["ɵand"](0,[["tasksTpl",2]],null,0,null,on)),(t()(),s["ɵand"](0,[["notificationsTpl",2]],null,0,null,fn)),(t()(),s["ɵand"](0,[["emptyTpl",2]],null,0,null,gn)),(t()(),s["ɵeld"](4,0,null,null,16,"div",[["class","card"]],null,[[null,"clickOutside"]],(function(t,e,n){var a=!0;return"clickOutside"===e&&(a=!1!==t.component.closeSidebar()&&a),a}),null,null)),s["ɵdid"](5,737280,null,0,Ue.ClickOutsideDirective,[s.ElementRef,s.NgZone,s.PLATFORM_ID],{clickOutsideEnabled:[0,"clickOutsideEnabled"]},{clickOutside:"clickOutside"}),(t()(),s["ɵeld"](6,0,null,null,5,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Tasks and Notifications"])),(t()(),s["ɵeld"](9,0,null,null,2,"button",[["class","close float-right"],["tabindex","-1"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.closeSidebar()&&a),a}),null,null)),(t()(),s["ɵeld"](10,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["×"])),(t()(),s["ɵeld"](12,0,null,null,8,"ngx-simplebar",[["data-simplebar","init"]],null,null,null,$e,Ke)),s["ɵdid"](13,4440064,null,0,We.a,[s.ElementRef],{options:[0,"options"]},null),(t()(),s["ɵeld"](14,0,null,0,6,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,pn)),s["ɵdid"](16,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,bn)),s["ɵdid"](18,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mn)),s["ɵdid"](20,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null)],(function(t,e){var n=e.component;t(e,5,0,n.isSidebarOpened),t(e,13,0,n.simplebar),t(e,16,0,s["ɵnov"](e,1)),t(e,18,0,s["ɵnov"](e,2)),t(e,20,0,s["ɵnov"](e,3))}),null)}var vn=n("ej+x");class xn{constructor(t,e,n,a,r,i){this.authStorageService=t,this.summaryService=e,this.featureToggles=n,this.telemetryNotificationService=a,this.prometheusAlertService=r,this.motdNotificationService=i,this.notifications=[],this.icons=pt.a,this.rightSidebarOpen=!1,this.showMenuSidebar=!0,this.displayedSubMenu="",this.simplebar={autoHide:!1},this.subs=new gt.a,this.permissions=this.authStorageService.getPermissions(),this.enabledFeature$=this.featureToggles.get()}get class(){return"top-notification-"+this.notifications.length}ngOnInit(){this.subs.add(this.summaryService.subscribe(t=>{this.summaryData=t})),this.subs.add(this.authStorageService.isPwdDisplayed$.subscribe(t=>{this.showTopNotification("isPwdDisplayed",t)})),this.subs.add(this.telemetryNotificationService.update.subscribe(t=>{this.showTopNotification("telemetryNotificationEnabled",t)})),this.subs.add(this.motdNotificationService.motd$.subscribe(t=>{this.showTopNotification("motdNotificationEnabled",X.isPlainObject(t))}))}ngOnDestroy(){this.subs.unsubscribe()}blockHealthColor(){if(this.summaryData&&this.summaryData.rbd_mirroring){if(this.summaryData.rbd_mirroring.errors>0)return{color:"#d9534f"};if(this.summaryData.rbd_mirroring.warnings>0)return{color:"#f0ad4e"}}}toggleSubMenu(t){this.displayedSubMenu=this.displayedSubMenu===t?"":t}toggleRightSidebar(){this.rightSidebarOpen=!this.rightSidebarOpen}showTopNotification(t,e){if(e)this.notifications.includes(t)||this.notifications.push(t);else{const e=this.notifications.indexOf(t);e>=0&&this.notifications.splice(e,1)}}}var _n=s["ɵcrt"]({encapsulation:0,styles:[['@charset "UTF-8";  .cd-navbar-top .cd-navbar-brand{background:#374249;border-top:4px solid #2b99a8}  .cd-navbar-top .cd-navbar-brand .navbar-brand,   .cd-navbar-top .cd-navbar-brand .navbar-brand:hover{color:#eee;height:auto;padding:0}  .cd-navbar-top .cd-navbar-brand .navbar-brand>img{height:25px}  .cd-navbar-top .cd-navbar-brand .navbar-toggler{border:0}  .cd-navbar-top .cd-navbar-brand .navbar-toggler:focus,   .cd-navbar-top .cd-navbar-brand .navbar-toggler:hover{outline:0}  .cd-navbar-top .cd-navbar-brand .navbar-toggler .fa-navicon{color:#eee}  .cd-navbar-top .cd-navbar-brand .navbar-collapse{padding:0}  .cd-navbar-top .cd-navbar-brand .cd-navbar-utility>.active>a{color:#eee;background-color:#2b99a8}  .cd-navbar-top .cd-navbar-brand .cd-navbar-utility>li>.open>a,   .cd-navbar-top .cd-navbar-brand .cd-navbar-utility>li>.open>a:focus,   .cd-navbar-top .cd-navbar-brand .cd-navbar-utility>li>.open>a:hover{color:#eee;border-color:transparent;background-color:transparent}  .cd-navbar-top .navbar-nav>li>.cd-navbar>[dropdown]>a,   .cd-navbar-top .navbar-nav>li>.cd-navbar>a,   .cd-navbar-top .navbar-nav>li>a{color:#eee;line-height:1;padding:13.5px 18px!important;position:relative;display:block;text-decoration:none}  .cd-navbar-top .navbar-nav .nav-link,   .cd-navbar-top .navbar-nav .nav-link:hover{color:#eee}  .cd-navbar-top .navbar-nav>li:hover,   .cd-navbar-top .navbar-nav>li>.cd-navbar>[dropdown].open>a,   .cd-navbar-top .navbar-nav>li>.cd-navbar>[dropdown]>a:hover,   .cd-navbar-top .navbar-nav>li>.cd-navbar>a:hover,   .cd-navbar-top .navbar-nav>li>a:hover{background-color:#2b99a8}  .cd-navbar-top .navbar-nav>.open>.cd-navbar>[dropdown]>a,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>[dropdown]>a:hover,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>a,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>a:focus,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>a:hover,   .cd-navbar-top .navbar-nav>.open>.cd-navbar>li>a:focus,   .cd-navbar-top .navbar-nav>.open>a,   .cd-navbar-top .navbar-nav>.open>a:focus,   .cd-navbar-top .navbar-nav>.open>a:hover{color:#eee;border-color:transparent;background-color:transparent}@media (min-width:768px){  .cd-navbar-top .cd-navbar-utility{border-bottom:0;position:absolute;right:0;top:0;font-size:1.1rem}}@media (max-width:calc(768px - 1px)){  .cd-navbar-top .navbar-nav{margin:0}  .cd-navbar-top .navbar-nav .fa{margin-right:.5em}  .cd-navbar-top .navbar-nav .open .dropdown-menu{border:0;padding-top:0;padding-bottom:0;background-color:#2b99a8}  .cd-navbar-top .navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 35px;color:#eee}  .cd-navbar-top .navbar-nav .open .dropdown-menu>.active>a{background-color:#2b99a8}  .cd-navbar-top .navbar-nav>li>a:hover{background-color:#2b99a8}}.cd-navbar-primary[_ngcontent-%COMP%]   .active[_ngcontent-%COMP%] > a[_ngcontent-%COMP%], .cd-navbar-primary[_ngcontent-%COMP%] > .active[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]:focus, .cd-navbar-primary[_ngcontent-%COMP%] > .active[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]:hover{color:#eee!important;background-color:#2b99a8!important;border:0!important}.wrapper[_ngcontent-%COMP%]{display:flex;width:100%}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]{width:200px;top:43px;background:#374249;overflow-y:auto;position:fixed;bottom:0;left:0;z-index:999;color:#fff;transition:all .3s}.wrapper[_ngcontent-%COMP%]   #sidebar.active[_ngcontent-%COMP%]{margin-left:-200px}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul.component[_ngcontent-%COMP%]{padding:20px 0;margin:0}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{color:#fff;padding:10px}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{padding:10px;font-size:1.1em;display:block;color:#fff;text-decoration:none}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]:hover{color:#fff;background:#2b99a8}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li[_ngcontent-%COMP%]   a[_ngcontent-%COMP%] > .badge[_ngcontent-%COMP%]{margin-left:5px}.wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li.active[_ngcontent-%COMP%] > a[_ngcontent-%COMP%], .wrapper[_ngcontent-%COMP%]   #sidebar[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   li[_ngcontent-%COMP%] > a[_ngcontent-%COMP%]   a[aria-expanded=true][_ngcontent-%COMP%]{color:#fff}.wrapper[_ngcontent-%COMP%]   a.dropdown-toggle[_ngcontent-%COMP%]{position:relative}.wrapper[_ngcontent-%COMP%]   a.dropdown-toggle[_ngcontent-%COMP%]::after{position:absolute;right:20px;content:"";font-family:ForkAwesome;border:0;font-size:1rem;transition:transform .3s ease-in-out}.wrapper[_ngcontent-%COMP%]   a.dropdown-toggle[aria-expanded=true][_ngcontent-%COMP%]::after{transform:rotate(90deg)}.wrapper[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{font-size:.9em!important;padding-left:30px!important;background:#4d5c66}.wrapper[_ngcontent-%COMP%]   .cd-navbar-primary[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]:focus{outline:0}.wrapper[_ngcontent-%COMP%]   ngx-simplebar[_ngcontent-%COMP%]{height:100%}#content[_ngcontent-%COMP%]{width:calc(100% - 200px);transition:all .3s;position:absolute;top:43px;bottom:0;right:0}#content.active[_ngcontent-%COMP%]{width:100vw}.top-notification-1[_nghost-%COMP%]   .cd-navbar-top[_ngcontent-%COMP%]   .cd-navbar-brand[_ngcontent-%COMP%]{top:37.6px}.top-notification-1[_nghost-%COMP%]   #sidebar[_ngcontent-%COMP%]{top:80.6px}.top-notification-1[_nghost-%COMP%]   #content[_ngcontent-%COMP%]{top:80.6px}.top-notification-1[_nghost-%COMP%]   cd-notifications-sidebar[_ngcontent-%COMP%]{top:90.6px}.top-notification-2[_nghost-%COMP%]   .cd-navbar-top[_ngcontent-%COMP%]   .cd-navbar-brand[_ngcontent-%COMP%]{top:75.2px}.top-notification-2[_nghost-%COMP%]   #sidebar[_ngcontent-%COMP%]{top:118.2px}.top-notification-2[_nghost-%COMP%]   #content[_ngcontent-%COMP%]{top:118.2px}.top-notification-2[_nghost-%COMP%]   cd-notifications-sidebar[_ngcontent-%COMP%]{top:128.2px}']],data:{}});function Tn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function On(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"cd-language-selector",[["class","cd-navbar"]],null,null,null,ht,ut)),s["ɵdid"](2,114688,null,0,it,[st.l,nt],null,null),(t()(),s["ɵeld"](3,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,1,"cd-notifications",[["class","cd-navbar"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleRightSidebar()&&a),a}),_t,vt)),s["ɵdid"](5,245760,null,0,yt,[bt.a,mt.a],null,null),(t()(),s["ɵeld"](6,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"cd-dashboard-help",[["class","cd-navbar"]],null,null,null,kt,Rt)),s["ɵdid"](8,114688,null,0,Nt,[Ct.b,Tt.a],null,null),(t()(),s["ɵeld"](9,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,1,"cd-administration",[["class","cd-navbar"]],null,null,null,Ft,Dt)),s["ɵdid"](11,114688,null,0,Lt,[J.a],null,null),(t()(),s["ɵeld"](12,0,null,null,2,"li",[["class","nav-item "]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,1,"cd-identity",[["class","cd-navbar"]],null,null,null,Ht,Bt)),s["ɵdid"](14,114688,null,0,Gt,[J.a,Vt.a],null,null)],(function(t,e){t(e,2,0),t(e,5,0),t(e,8,0),t(e,11,0),t(e,14,0)}),null)}function Sn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_hosts"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,5,{links:1}),s["ɵqud"](603979776,6,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/hosts"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[6,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Hosts"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/hosts")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function In(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_cluster_inventory"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,7,{links:1}),s["ɵqud"](603979776,8,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/inventory"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[8,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Inventory"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/inventory")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Nn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_cluster_monitor"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,9,{links:1}),s["ɵqud"](603979776,10,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/monitor/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[10,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Monitors"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/monitor/")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Cn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_cluster_services"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,11,{links:1}),s["ɵqud"](603979776,12,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/services/"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[12,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Services"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/services/")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Rn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_osds"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,13,{links:1}),s["ɵqud"](603979776,14,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/osd"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[14,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["OSDs"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/osd")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function An(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_configuration"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,15,{links:1}),s["ɵqud"](603979776,16,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/configuration"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[16,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Configuration"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/configuration")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function kn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_crush"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,17,{links:1}),s["ɵqud"](603979776,18,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/crush-map"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[18,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["CRUSH map"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/crush-map")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function En(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_modules"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,19,{links:1}),s["ɵqud"](603979776,20,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/mgr-modules"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[20,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Manager Modules"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/mgr-modules")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Ln(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_log"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,21,{links:1}),s["ɵqud"](603979776,22,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/logs"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[22,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Logs"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/logs")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Dn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"small",[["class","badge badge-danger"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.component.prometheusAlertService.activeAlerts)}))}function Pn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"li",[["class","tc_submenuitem tc_submenuitem_monitoring"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,23,{links:1}),s["ɵqud"](603979776,24,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,5,"a",[["routerLink","/monitoring"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[24,4],[4,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Monitoring"])),(t()(),s["ɵand"](16777216,null,null,1,null,Dn)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,5,0,"/monitoring"),t(e,9,0,n.prometheusAlertService.activeAlerts>0)}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Mn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,28,"li",[["class","nav-item tc_menuitem_cluster"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,3,{links:1}),s["ɵqud"](603979776,4,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["aria-controls","collapseBasic"],["class","nav-link dropdown-toggle"]],[[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleSubMenu("cluster")&&a),a}),null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster"])),(t()(),s["ɵeld"](7,0,null,null,21,"ul",[["class","list-unstyled"]],[[2,"collapse",null],[2,"in",null],[2,"show",null],[1,"aria-expanded",0],[1,"aria-hidden",0],[2,"collapsing",null]],null,null,null,null)),s["ɵdid"](8,8404992,null,0,Kt,[s.ElementRef,s.Renderer2,W.b],{isAnimated:[0,"isAnimated"],collapse:[1,"collapse"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Sn)),s["ɵdid"](10,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,In)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Nn)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cn)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Rn)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,An)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,kn)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,En)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ln)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Pn)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,8,0,!0,"cluster"!==n.displayedSubMenu),t(e,10,0,n.permissions.hosts.read),t(e,12,0,n.permissions.hosts.read),t(e,14,0,n.permissions.monitor.read),t(e,16,0,n.permissions.hosts.read),t(e,18,0,n.permissions.osd.read),t(e,20,0,n.permissions.configOpt.read),t(e,22,0,n.permissions.osd.read),t(e,24,0,n.permissions.configOpt.read),t(e,26,0,n.permissions.log.read),t(e,28,0,n.permissions.prometheus.read)}),(function(t,e){t(e,4,0,"cluster"==e.component.displayedSubMenu),t(e,7,0,s["ɵnov"](e,8).isCollapse,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isCollapsed,s["ɵnov"](e,8).isCollapsing)}))}function qn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","nav-item tc_menuitem_pool"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,25,{links:1}),s["ɵqud"](603979776,26,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["class","nav-link"],["routerLink","/pool"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[26,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Pools"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/pool")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function jn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_block_images"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,29,{links:1}),s["ɵqud"](603979776,30,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/block/rbd"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[30,4],[28,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Images"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/block/rbd")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Fn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"small",[["class","badge badge-warning"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){var n=e.component;t(e,1,0,null==n.summaryData||null==n.summaryData.rbd_mirroring?null:n.summaryData.rbd_mirroring.warnings)}))}function Vn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"small",[["class","badge badge-danger"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){var n=e.component;t(e,1,0,null==n.summaryData||null==n.summaryData.rbd_mirroring?null:n.summaryData.rbd_mirroring.errors)}))}function Gn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"li",[["class","tc_submenuitem tc_submenuitem_block_mirroring"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,31,{links:1}),s["ɵqud"](603979776,32,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,7,"a",[["routerLink","/block/mirroring"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[32,4],[28,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Mirroring"])),(t()(),s["ɵand"](16777216,null,null,1,null,Fn)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vn)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,5,0,"/block/mirroring"),t(e,9,0,0!==(null==n.summaryData||null==n.summaryData.rbd_mirroring?null:n.summaryData.rbd_mirroring.warnings)),t(e,11,0,0!==(null==n.summaryData||null==n.summaryData.rbd_mirroring?null:n.summaryData.rbd_mirroring.errors))}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Bn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_block_iscsi"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,33,{links:1}),s["ɵqud"](603979776,34,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["routerLink","/block/iscsi"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[34,4],[28,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["iSCSI"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/block/iscsi")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function zn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,16,"li",[["class","nav-item tc_menuitem_block"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,27,{links:1}),s["ɵqud"](603979776,28,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,4,"a",[["aria-controls","collapseBasic"],["class","nav-link dropdown-toggle"]],[[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleSubMenu("block")&&a),a}),null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),(t()(),s["ɵeld"](7,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Block"])),(t()(),s["ɵeld"](9,0,null,null,7,"ul",[["class","list-unstyled"]],[[2,"collapse",null],[2,"in",null],[2,"show",null],[1,"aria-expanded",0],[1,"aria-hidden",0],[2,"collapsing",null]],null,null,null,null)),s["ɵdid"](10,8404992,null,0,Kt,[s.ElementRef,s.Renderer2,W.b],{isAnimated:[0,"isAnimated"],collapse:[1,"collapse"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,jn)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gn)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bn)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,6,0,n.blockHealthColor()),t(e,10,0,!0,"block"!==n.displayedSubMenu),t(e,12,0,n.permissions.rbdImage.read&&e.parent.context.ngIf.rbd),t(e,14,0,n.permissions.rbdMirroring.read&&e.parent.context.ngIf.mirroring),t(e,16,0,n.permissions.iscsi.read&&e.parent.context.ngIf.iscsi)}),(function(t,e){t(e,4,0,"block"==e.component.displayedSubMenu),t(e,9,0,s["ɵnov"](e,10).isCollapse,s["ɵnov"](e,10).isExpanded,s["ɵnov"](e,10).isExpanded,s["ɵnov"](e,10).isExpanded,s["ɵnov"](e,10).isCollapsed,s["ɵnov"](e,10).isCollapsing)}))}function Yn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","nav-item tc_menuitem_nfs"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,35,{links:1}),s["ɵqud"](603979776,36,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["class","nav-link"],["routerLink","/nfs"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[36,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["NFS"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/nfs")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Hn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[["class","nav-item tc_menuitem_cephfs"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,37,{links:1}),s["ɵqud"](603979776,38,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["class","nav-link"],["routerLink","/cephfs"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](5,671744,[[38,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Filesystems"]))],(function(t,e){t(e,1,0,"active"),t(e,5,0,"/cephfs")}),(function(t,e){t(e,4,0,s["ɵnov"](e,5).target,s["ɵnov"](e,5).href)}))}function Un(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,29,"li",[["class","nav-item tc_menuitem_rgw"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](1,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,39,{links:1}),s["ɵqud"](603979776,40,{linksWithHrefs:1}),(t()(),s["ɵeld"](4,0,null,null,2,"a",[["aria-controls","collapseBasic"],["class","nav-link dropdown-toggle"]],[[1,"aria-expanded",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleSubMenu("rgw")&&a),a}),null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Object Gateway"])),(t()(),s["ɵeld"](7,0,null,null,22,"ul",[["class","list-unstyled"]],[[2,"collapse",null],[2,"in",null],[2,"show",null],[1,"aria-expanded",0],[1,"aria-hidden",0],[2,"collapsing",null]],null,null,null,null)),s["ɵdid"](8,8404992,null,0,Kt,[s.ElementRef,s.Renderer2,W.b],{isAnimated:[0,"isAnimated"],collapse:[1,"collapse"]},null),(t()(),s["ɵeld"](9,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_rgw_daemons"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](10,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,41,{links:1}),s["ɵqud"](603979776,42,{linksWithHrefs:1}),(t()(),s["ɵeld"](13,0,null,null,2,"a",[["routerLink","/rgw/daemon"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,14).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](14,671744,[[42,4],[40,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Daemons"])),(t()(),s["ɵeld"](16,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_rgw_users"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](17,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,43,{links:1}),s["ɵqud"](603979776,44,{linksWithHrefs:1}),(t()(),s["ɵeld"](20,0,null,null,2,"a",[["routerLink","/rgw/user"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,21).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](21,671744,[[44,4],[40,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Users"])),(t()(),s["ɵeld"](23,0,null,null,6,"li",[["class","tc_submenuitem tc_submenuitem_rgw_buckets"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](24,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,45,{links:1}),s["ɵqud"](603979776,46,{linksWithHrefs:1}),(t()(),s["ɵeld"](27,0,null,null,2,"a",[["routerLink","/rgw/bucket"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,28).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](28,671744,[[46,4],[40,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Buckets"]))],(function(t,e){var n=e.component;t(e,1,0,"active"),t(e,8,0,!0,"rgw"!==n.displayedSubMenu),t(e,10,0,"active"),t(e,14,0,"/rgw/daemon"),t(e,17,0,"active"),t(e,21,0,"/rgw/user"),t(e,24,0,"active"),t(e,28,0,"/rgw/bucket")}),(function(t,e){t(e,4,0,"rgw"==e.component.displayedSubMenu),t(e,7,0,s["ɵnov"](e,8).isCollapse,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isExpanded,s["ɵnov"](e,8).isCollapsed,s["ɵnov"](e,8).isCollapsing),t(e,13,0,s["ɵnov"](e,14).target,s["ɵnov"](e,14).href),t(e,20,0,s["ɵnov"](e,21).target,s["ɵnov"](e,21).href),t(e,27,0,s["ɵnov"](e,28).target,s["ɵnov"](e,28).href)}))}function Wn(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,28,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,15,"li",[["class","nav-item tc_menuitem_dashboard"],["routerLinkActive","active"]],null,null,null,null,null)),s["ɵdid"](2,1720320,null,2,Et.o,[Et.m,s.ElementRef,s.Renderer2,[2,Et.n],[2,Et.p]],{routerLinkActive:[0,"routerLinkActive"]},null),s["ɵqud"](603979776,1,{links:1}),s["ɵqud"](603979776,2,{linksWithHrefs:1}),(t()(),s["ɵeld"](5,0,null,null,11,"a",[["class","nav-link"],["routerLink","/dashboard"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,6).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](6,671744,[[2,4]],0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](7,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Dashboard"])),(t()(),s["ɵted"](-1,null,["  "])),(t()(),s["ɵeld"](10,0,null,null,6,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](12,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](13,1),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](15,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),s["ɵppd"](16,1),(t()(),s["ɵand"](16777216,null,null,1,null,Mn)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,qn)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zn)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yn)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hn)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Un)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,"active"),t(e,6,0,"/dashboard");var a=t(e,13,0,n.icons.health);t(e,12,0,a);var r=s["ɵunv"](e,15,0,t(e,16,0,s["ɵnov"](e.parent.parent,0),null==n.summaryData?null:n.summaryData.health_status));t(e,15,0,r),t(e,18,0,n.permissions.hosts.read||n.permissions.monitor.read||n.permissions.osd.read||n.permissions.configOpt.read||n.permissions.log.read||n.permissions.prometheus.read),t(e,20,0,n.permissions.pool.read),t(e,22,0,(n.permissions.rbdImage.read||n.permissions.rbdMirroring.read||n.permissions.iscsi.read)&&(e.context.ngIf.rbd||e.context.ngIf.mirroring||e.context.ngIf.iscsi)),t(e,24,0,n.permissions.nfs.read&&e.context.ngIf.nfs),t(e,26,0,n.permissions.cephfs.read&&e.context.ngIf.cephfs),t(e,28,0,n.permissions.rgw.read&&e.context.ngIf.rgw)}),(function(t,e){t(e,5,0,s["ɵnov"](e,6).target,s["ɵnov"](e,6).href)}))}function Kn(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,2,null,Wn)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpid"](131072,i.AsyncPipe,[s.ChangeDetectorRef]),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,1,0,s["ɵunv"](e,1,0,s["ɵnov"](e,2).transform(n.enabledFeature$)))}),null)}function $n(t){return s["ɵvid"](0,[s["ɵpid"](0,Zt,[]),(t()(),s["ɵeld"](1,0,null,null,1,"cd-pwd-expiration-notification",[],null,null,null,se,ne)),s["ɵdid"](2,245760,null,0,ee,[Xt.a,J.a],null,null),(t()(),s["ɵeld"](3,0,null,null,1,"cd-telemetry-notification",[],null,null,null,pe,he)),s["ɵdid"](4,245760,null,0,ce,[oe,J.a,bt.a,de,fe.a],null,null),(t()(),s["ɵeld"](5,0,null,null,1,"cd-motd",[],null,null,null,Ve,je)),s["ɵdid"](6,245760,null,0,qe,[Me],null,null),(t()(),s["ɵeld"](7,0,null,null,1,"cd-notifications-sidebar",[],[[2,"active",null]],null,null,yn,sn)),s["ɵdid"](8,245760,null,0,rn,[bt.a,mt.a,an.a,nn,J.a,en,s.NgZone,s.ChangeDetectorRef],null,null),(t()(),s["ɵeld"](9,0,null,null,17,"div",[["class","cd-navbar-top"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,16,"nav",[["class","navbar fixed-top navbar-expand-md navbar-dark cd-navbar-brand"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,1,"button",[["class","btn btn-link py-0"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=0!=(r.showMenuSidebar=!r.showMenuSidebar)&&a),a}),null,null)),(t()(),s["ɵeld"](12,0,null,null,0,"i",[["aria-hidden","true"],["class","fa fa-bars fa-2x"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,1,"a",[["class","navbar-brand ml-2"],["href","#"]],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,0,"img",[["alt","Ceph"],["src","assets/Ceph_Logo_Standard_RGB_White_120411_fa.png"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,4,"button",[["class","navbar-toggler"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleRightSidebar()&&a),a}),null,null)),(t()(),s["ɵeld"](16,0,null,null,1,"span",[["class","sr-only"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Toggle navigation"])),(t()(),s["ɵeld"](18,0,null,null,1,"span",[["class",""]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,0,"i",[["class","fa fa-navicon fa-lg"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,6,"div",[["class","collapse navbar-collapse"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](22,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](23,{show:0}),(t()(),s["ɵeld"](24,0,null,null,2,"ul",[["class","nav navbar-nav cd-navbar-utility my-2 my-md-0"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Tn)),s["ɵdid"](26,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](27,0,null,null,14,"div",[["class","wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,8,"nav",[["id","sidebar"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](30,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](31,{active:0}),(t()(),s["ɵeld"](32,0,null,null,4,"ngx-simplebar",[["data-simplebar","init"]],null,null,null,$e,Ke)),s["ɵdid"](33,4440064,null,0,We.a,[s.ElementRef],{options:[0,"options"]},null),(t()(),s["ɵeld"](34,0,null,0,2,"ul",[["class","list-unstyled components cd-navbar-primary"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,wn)),s["ɵdid"](36,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](37,0,null,null,4,"div",[["id","content"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](39,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](40,{active:0}),s["ɵncd"](null,0),(t()(),s["ɵand"](0,[["cd_utilities",2]],null,0,null,On)),(t()(),s["ɵand"](0,[["cd_menu",2]],null,0,null,Kn))],(function(t,e){var n=e.component;t(e,2,0),t(e,4,0),t(e,6,0),t(e,8,0);var a=t(e,23,0,n.rightSidebarOpen);t(e,22,0,"collapse navbar-collapse",a),t(e,26,0,s["ɵnov"](e,42));var r=t(e,31,0,!n.showMenuSidebar);t(e,30,0,r),t(e,33,0,n.simplebar),t(e,36,0,s["ɵnov"](e,43));var i=t(e,40,0,!n.showMenuSidebar);t(e,39,0,i)}),(function(t,e){t(e,7,0,s["ɵnov"](e,8).isSidebarOpened)}))}var Zn=n("HDdC"),Jn=n("Cfvw"),Qn=n("pLZG"),Xn=n("l7GE"),ta=n("ZUHj");class ea{constructor(t,e){this.keySelector=t,this.flushes=e}call(t,e){return e.subscribe(new na(t,this.keySelector,this.flushes))}}class na extends Xn.a{constructor(t,e,n){super(t),this.keySelector=e,this.values=new Set,n&&this.add(Object(ta.a)(this,n))}notifyNext(t,e,n,a,r){this.values.clear()}notifyError(t,e){this._error(t)}_next(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)}_useKeySelector(t){let e;const{destination:n}=this;try{e=this.keySelector(t)}catch(a){return void n.error(a)}this._finalizeNext(e,t)}_finalizeNext(t,e){const{values:n}=this;n.has(t)||(n.add(t),this.destination.next(e))}}var aa=n("128B");function ra(t,e,n){return 0===n?[e]:(t.push(e),t)}function ia(){return Object(aa.a)(ra,[])}var sa=n("SxV6"),ua=n("GyhO");class oa{resolve(t){const e=t.routeConfig.data,n=null===e.path?null:this.getFullPath(t),a=[{text:"string"==typeof e.breadcrumbs?e.breadcrumbs:e.breadcrumbs.text||e.text||n,path:n}];return Object(_e.a)(a)}getFullPath(t){return t.pathFromRoot.reduce((t,e)=>t+e.url.reduce((t,e)=>t+"/"+e.path,""),"")}}class la{constructor(t,e){this.router=t,this.injector=e,this.crumbs=[],this.finished=!1,this.defaultResolver=new oa,this.subscription=this.router.events.pipe(Object(Qn.a)(t=>t instanceof Et.e)).subscribe(()=>{this.finished=!1}),this.subscription=this.router.events.pipe(Object(Qn.a)(t=>t instanceof Et.d)).subscribe(()=>{var e;this._resolveCrumbs(t.routerState.snapshot.root).pipe(Object(we.a)(t=>t),(e=t=>t.text,t=>t.lift(new ea(e,void 0))),ia(),Object(we.a)(t=>{const e=this.postProcess(t);return this.wrapIntoObservable(e).pipe(Object(sa.a)())})).subscribe(t=>{this.finished=!0,this.crumbs=t})})}ngOnDestroy(){this.subscription.unsubscribe()}_resolveCrumbs(t){let e;const n=t.routeConfig&&t.routeConfig.data;if(n&&n.breadcrumbs){let a;a=n.breadcrumbs.prototype instanceof oa?this.injector.get(n.breadcrumbs):this.defaultResolver;const r=a.resolve(t);e=this.wrapIntoObservable(r).pipe(Object(sa.a)())}else e=Object(_e.a)([]);return t.firstChild&&(e=e.pipe(function(...t){return e=>e.lift.call(Object(ua.a)(e,...t))}(this._resolveCrumbs(t.firstChild)))),e}postProcess(t){const e=[];return t.forEach(t=>{const n=t.text.split("/");if(n.length>1){t.text=n[n.length-1];for(let t=0;t<n.length-1;t++)e.push({text:n[t],path:null})}e.push(t)}),e}isPromise(t){return t&&"function"==typeof t.then}wrapIntoObservable(t){return t instanceof Zn.a?t:this.isPromise(t)?Object(Jn.a)(Promise.resolve(t)):Object(_e.a)(t)}}var da=s["ɵcrt"]({encapsulation:0,styles:[['@charset "UTF-8";.breadcrumb[_ngcontent-%COMP%]{padding:8px 0;background-color:transparent;border-radius:0;margin-top:8px}.breadcrumb[_ngcontent-%COMP%] > li[_ngcontent-%COMP%] + li[_ngcontent-%COMP%]:before{padding:0 5px 0 7px;color:#474544;font-family:ForkAwesome;content:""}.breadcrumb[_ngcontent-%COMP%] > li[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:#474544}']],data:{}});function ca(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"a",[["preserveFragment",""]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,1).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](1,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{preserveFragment:[0,"preserveFragment"],routerLink:[1,"routerLink"]},null),(t()(),s["ɵted"](2,null,["",""]))],(function(t,e){t(e,1,0,"",e.parent.context.$implicit.path)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).target,s["ɵnov"](e,1).href),t(e,2,0,e.parent.context.$implicit.text)}))}function fa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.text)}))}function ha(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"li",[["class","breadcrumb-item"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](3,{active:0}),(t()(),s["ɵand"](16777216,null,null,1,null,ca)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fa)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=t(e,3,0,e.context.last&&e.component.finished);t(e,2,0,"breadcrumb-item",n),t(e,5,0,!e.context.last&&null!==e.context.$implicit.path),t(e,7,0,e.context.last||null===e.context.$implicit.path)}),null)}function ga(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"ol",[["class","breadcrumb"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ha)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.crumbs)}),null)}function pa(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,ga)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.crumbs.length)}),null)}var ba=n("978R"),ma=n("VXsX");const ya=()=>Object.assign(new ba.a,{container:"body"});class va{constructor(t,e,n){this.router=t,this.summaryService=e,this.taskManagerService=n,this.subs=new gt.a}ngOnInit(){this.subs.add(this.summaryService.startPolling()),this.subs.add(this.taskManagerService.init(this.summaryService))}ngOnDestroy(){this.subs.unsubscribe()}isDashboardPage(){return"/dashboard"===this.router.url}}var xa=s["ɵcrt"]({encapsulation:0,styles:[[".dashboard[_ngcontent-%COMP%]{background-color:#f5f5f5;margin:0;padding:0}.container-fluid[_ngcontent-%COMP%]{overflow:auto}  #toast-container{margin-top:2vw}@media (max-width:1600px){  #toast-container{margin-top:2.5vw}}@media (max-width:calc(992px - 1px)){  #toast-container{margin-top:9vw}}@media (max-width:900px){  #toast-container{margin-top:10vw}}@media (max-width:319px){  #toast-container{margin-top:11vw}}@media (max-width:260px){  #toast-container{margin-top:14vw}}"]],data:{}});function _a(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"block-ui",[],null,null,null,D,L)),s["ɵdid"](1,114688,null,0,S,[O],null,null),(t()(),s["ɵeld"](2,0,null,0,9,"cd-navigation",[],[[8,"className",0]],null,null,$n,_n)),s["ɵdid"](3,245760,null,0,xn,[J.a,mt.a,vn.a,de,en,Me],null,null),(t()(),s["ɵeld"](4,0,null,0,7,"div",[["class","container-fluid h-100"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](7,{dashboard:0}),(t()(),s["ɵeld"](8,0,null,null,1,"cd-breadcrumbs",[],null,null,null,pa,da)),s["ɵdid"](9,180224,null,0,la,[Et.m,s.Injector],null,null),(t()(),s["ɵeld"](10,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),s["ɵdid"](11,212992,null,0,Et.r,[Et.b,s.ViewContainerRef,s.ComponentFactoryResolver,[8,null],s.ChangeDetectorRef],null,null)],(function(t,e){var n=e.component;t(e,1,0),t(e,3,0);var a=t(e,7,0,n.isDashboardPage());t(e,6,0,"container-fluid h-100",a),t(e,11,0)}),(function(t,e){t(e,2,0,s["ɵnov"](e,3).class)}))}function Ta(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-workbench-layout",[],null,null,null,_a,xa)),s["ɵprd"](5120,null,ba.a,ya,[]),s["ɵdid"](2,245760,null,0,va,[Et.m,mt.a,ma.a],null,null)],(function(t,e){t(e,2,0)}),null)}var wa=s["ɵccf"]("cd-workbench-layout",va,Ta,{},{},[]),Oa=n("pKUh"),Sa=n("2ZVE"),Ia=n("KOzp"),Na=n("2uy1");class Ca{constructor(){this.cardClass=""}}var Ra=s["ɵcrt"]({encapsulation:0,styles:[[".card[_ngcontent-%COMP%]{height:100%;border:.5px solid #ddd;border-radius:3px;box-shadow:0 1px 1px rgba(3,3,3,.175);font-size:12px}@media screen and (min-width:320px){.card[_ngcontent-%COMP%]{font-size:calc(12px + 9 * ((100vw - 320px)/ 1728))}}@media screen and (min-width:2048px){.card[_ngcontent-%COMP%]{font-size:21px}}.card[_ngcontent-%COMP%]   .card-body[_ngcontent-%COMP%]{padding-top:40px!important}.card[_ngcontent-%COMP%]   .card-body[_ngcontent-%COMP%]   .card-title[_ngcontent-%COMP%]{left:-.6rem;position:absolute;top:-.3rem}.no-center[_ngcontent-%COMP%]{position:unset;top:unset;left:unset;transform:unset}.content-highlight[_ngcontent-%COMP%]{font-weight:700}"]],data:{}});function Aa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"a",[],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,1).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](1,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](2,null,["",""]))],(function(t,e){t(e,1,0,e.component.link)}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).target,s["ɵnov"](e,1).href),t(e,2,0,n.cardTitle)}))}function ka(t){return s["ɵvid"](0,[(t()(),s["ɵted"](0,null,[" "," "]))],null,(function(t,e){t(e,0,0,e.component.cardTitle)}))}function Ea(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"div",[["class","card"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),s["ɵeld"](3,0,null,null,8,"div",[["class","card-body d-flex align-items-center justify-content-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,3,"h4",[["class","card-title m-4"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Aa)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["noLinkTitle",2]],null,0,null,ka)),(t()(),s["ɵeld"](8,0,null,null,3,"div",[["class","card-text text-center"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](10,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵncd"](null,0)],(function(t,e){var n=e.component;t(e,2,0,"card",n.cardClass),t(e,6,0,n.link,s["ɵnov"](e,7)),t(e,10,0,"card-text text-center",n.contentClass)}),null)}class La{}var Da=s["ɵcrt"]({encapsulation:0,styles:[[".info-group-title[_ngcontent-%COMP%]{margin:0 0 .5vw .5vw;font-size:21px}"]],data:{}});function Pa(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","info-group-title"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""])),(t()(),s["ɵeld"](3,0,null,null,1,"div",[["class","row"]],null,null,null,null,null)),s["ɵncd"](null,0)],null,(function(t,e){t(e,2,0,e.component.groupTitle)}))}var Ma=n("hrfs"),qa=n("MO+k"),ja=n("NEZu"),Fa=n("Fgil"),Va=n("o4+5");class Ga{constructor(t,e){this.dimlessBinary=t,this.dimless=e,this.config={},this.isBytesData=!1,this.showLabelAsTooltip=!1,this.prepareFn=new s.EventEmitter,this.chartConfig={chartType:"doughnut",dataset:[{label:null,borderWidth:0}],colors:[{backgroundColor:["--color-green","--color-yellow","--color-orange","--color-red","--color-blue"]}],options:{cutoutPercentage:90,events:["click","mouseout","touchstart"],legend:{display:!0,position:"right",labels:{boxWidth:10,usePointStyle:!1}},plugins:{center_text:!0},tooltips:{enabled:!0,displayColors:!1,backgroundColor:"rgba(0,0,0,0.8)",cornerRadius:0,bodyFontSize:14,bodyFontStyle:"600",position:"nearest",xPadding:12,yPadding:12,callbacks:{label:(t,e)=>{let n=e.labels[t.index];return n.includes("%")||(n=`${n} (${e.datasets[t.datasetIndex].data[t.index]}%)`),n}}},title:{display:!1}}},this.doughnutChartPlugins=[{id:"center_text",beforeDraw(t){const e="Helvetica Neue, Helvetica, Arial, sans-serif";qa.defaults.global.defaultFontFamily=e;const n=t.ctx;if(!t.options.plugins.center_text||!t.data.datasets[0].label)return;n.save();const a=t.data.datasets[0].label.split("\n"),r=(t.chartArea.left+t.chartArea.right)/2,i=(t.chartArea.top+t.chartArea.bottom)/2;n.textAlign="center",n.textBaseline="middle",n.font="24px "+e,n.fillStyle="#151515",n.fillText(a[0],r,i-10),a.length>1&&(n.font="14px "+e,n.fillStyle="#72767B",n.fillText(a[1],r,i+10)),n.restore()}}]}ngOnInit(){new ja.a(this.chartCanvasRef,this.chartTooltipRef,(t,e)=>e+t.caretX+"px",(t,e)=>e+t.caretY-t.height-10+"px").getBody=t=>this.getChartTooltipBody(t),X.merge(this.chartConfig,this.config),this.setColorsFromCssVars(),this.prepareFn.emit([this.chartConfig,this.data])}ngOnChanges(){this.prepareFn.emit([this.chartConfig,this.data]),this.setChartSliceBorderWidth()}setColorsFromCssVars(){this.chartConfig.colors.forEach((t,e)=>{t.backgroundColor.forEach((t,n)=>{t.startsWith("--")&&(this.chartConfig.colors[e].backgroundColor[n]=this.getCssVar(t))})})}getCssVar(t){return getComputedStyle(document.querySelector(".chart-container")).getPropertyValue(t)}getChartTooltipBody(t){const e=t[0].split(": ");return this.showLabelAsTooltip?e[0]:(e[1]=this.isBytesData?this.dimlessBinary.transform(e[1]):this.dimless.transform(e[1]),e.join(": "))}setChartSliceBorderWidth(){let t=0;X.forEach(this.chartConfig.dataset[0].data,(function(e){e>0&&(t+=1)})),this.chartConfig.dataset[0].borderWidth=t>1?1:0}}var Ba=s["ɵcrt"]({encapsulation:0,styles:[['canvas[_ngcontent-%COMP%]{-moz-user-select:none;user-select:none}.chartjs-tooltip[_ngcontent-%COMP%]{opacity:0;position:absolute;background:rgba(0,0,0,.7);color:#fff;border-radius:3px;transition:all .1s ease;pointer-events:none;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;transform:translate(-50%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]{transform:translate(-10%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]::after{left:10%}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]{transform:translate(-90%,0)}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]::after{left:90%}.chartjs-tooltip[_ngcontent-%COMP%]::after{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#000 transparent transparent}  .chartjs-tooltip-key{display:inline-block;width:10px;height:10px;margin-right:10px}.chart-container[_ngcontent-%COMP%]{margin:auto;cursor:pointer;overflow:visible;--color-red:#c9190b;--color-blue:#06c;--color-orange:#ef9234;--color-yellow:#f6d173;--color-magenta:#009596;--color-green:#7cc674;--color-gray:#ededed;--color-light-blue:#519de9;--color-light-yellow:#f9e0a2;--color-cyan:#73c5c5;--color-purple:#3c3d99;position:unset;width:100%;height:100%}.chart-canvas[_ngcontent-%COMP%]{position:unset;width:100%;height:100%;margin-left:auto;margin-right:auto;max-width:100%;max-height:100%}']],data:{}});function za(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{chartCanvasRef:0}),s["ɵqud"](402653184,2,{chartTooltipRef:0}),(t()(),s["ɵeld"](2,0,null,null,4,"div",[["class","chart-container"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,[[1,0],["chartCanvas",1]],null,1,"canvas",[["baseChart",""],["class","chart-canvas"]],null,null,null,null,null)),s["ɵdid"](4,999424,null,0,Ma.a,[s.ElementRef,Ma.c],{datasets:[0,"datasets"],labels:[1,"labels"],options:[2,"options"],chartType:[3,"chartType"],colors:[4,"colors"],plugins:[5,"plugins"]},null),(t()(),s["ɵeld"](5,0,[[2,0],["chartTooltip",1]],null,1,"div",[["class","chartjs-tooltip"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,0,"table",[],null,null,null,null,null))],(function(t,e){var n=e.component;t(e,4,0,n.chartConfig.dataset,n.chartConfig.labels,n.chartConfig.options,n.chartConfig.chartType,n.chartConfig.colors,n.doughnutChartPlugins)}),null)}class Ya{constructor(t){this.i18n=t}transform(t){return t?`${t.monmap.mons.length.toString()} (${this.i18n("quorum")} ${t.quorum.join(", ")})`:""}}class Ha{constructor(t){this.i18n=t}transform(t){if(!t)return"";let e=0,n=0;X.each(t.osds,t=>{t.in&&e++,t.up&&n++});const a=[{content:`${t.osds.length} ${this.i18n("total")}`,class:""}];a.push({content:"",class:"card-text-line-break"}),a.push({content:`${n} ${this.i18n("up")}, ${e} ${this.i18n("in")}`,class:""});const r=t.osds.length-n,i=t.osds.length-e;if(r>0||i>0){a.push({content:"",class:"card-text-line-break"});const t=r>0?`${r} ${this.i18n("down")}`:"",e=r>0&&i>0?", ":"",n=i>0?`${i} ${this.i18n("out")}`:"";a.push({content:`${t}${e}${n}`,class:"card-text-error"})}return a}}class Ua{constructor(t){this.i18n=t}transform(t){if(!t)return"";let e=this.i18n("n/a");const n=X.isUndefined(t.active_name)?"":`${this.i18n("active daemon")}: ${t.active_name}`;n.length>0&&(e="1");const a=t.standbys.map(t=>t.name).join(", "),r=a?`${this.i18n("standby daemons")}: ${a}`:"",i=t.standbys.length,s=[{content:`${e} ${this.i18n("active")}`,class:"popover-info",titleText:n}];return s.push({content:"",class:"card-text-line-break",titleText:""}),s.push({content:`${i} ${this.i18n("standby")}`,class:"popover-info",titleText:r}),s}}class Wa{constructor(t){this.i18n=t}transform(t){if(!t)return"";let e="",n="",a=0,r=0,i=0;X.each(t.standbys,()=>{a+=1}),t.standbys&&!t.filesystems?(e=`${a} ${this.i18n("up")}`,n=this.i18n("no filesystems")):0===t.filesystems.length?e=this.i18n("no filesystems"):(X.each(t.filesystems,t=>{X.each(t.mdsmap.info,t=>{"up:standby-replay"===t.state?i+=1:r+=1})}),e=`${r} ${this.i18n("active")}`,n=`${a+i} ${this.i18n("standby")}`);const s=t.standbys.map(t=>t.name).join(", "),u=s?`${this.i18n("standby daemons")}: ${s}`:"",o=t.filesystems?t.filesystems.length:0,l=Object.values(o>0?t.filesystems[0].mdsmap.info:{}).map(t=>t.name).join(", ");let d=l?`${this.i18n("active daemon")}: ${l}`:"";!r&&o>0&&(d=`${i} ${this.i18n("standbyReplay")}`);const c=[{content:e,class:"popover-info",titleText:d}];return n&&(c.push({content:"",class:"card-text-line-break",titleText:""}),c.push({content:n,class:"popover-info",titleText:u})),c}}var Ka=n("aXbf");let $a=(()=>{class t{constructor(t){this.http=t}getFullHealth(){return this.http.get("api/health/full")}getMinimalHealth(){return this.http.get("api/health/minimal")}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();var Za=n("Y7HM");function Ja(t){const{subscriber:e,counter:n,period:a}=t;e.next(n),this.schedule({subscriber:e,counter:n+1,period:a},a)}let Qa=(()=>{class t{constructor(t){this.ngZone=t,this.intervalDataSource=new xe.a(null),this.intervalData$=this.intervalDataSource.asObservable();const e=parseInt(sessionStorage.getItem("dashboard_interval"),10)||5e3;this.setRefreshInterval(e)}setRefreshInterval(t){this.intervalTime=t,sessionStorage.setItem("dashboard_interval",t.toString()),this.intervalSubscription&&this.intervalSubscription.unsubscribe(),this.ngZone.runOutsideAngular(()=>{this.intervalSubscription=function(t=0,e=Ie.a){return(!Object(Za.a)(t)||t<0)&&(t=0),e&&"function"==typeof e.schedule||(e=Ie.a),new Zn.a(n=>(n.add(e.schedule(Ja,t,{subscriber:n,counter:0,period:t})),n))}(this.intervalTime).subscribe(()=>this.ngZone.run(()=>{this.intervalDataSource.next(this.intervalTime)}))})}getRefreshInterval(){return this.intervalTime}ngOnDestroy(){this.intervalSubscription&&this.intervalSubscription.unsubscribe()}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](s.NgZone))},token:t,providedIn:"root"}),t})();var Xa=n("d+Og");class tr{constructor(t,e,n,a,r,i,s,u){this.healthService=t,this.i18n=e,this.authStorageService=n,this.pgCategoryService=a,this.featureToggles=r,this.refreshIntervalService=i,this.dimlessBinary=s,this.dimless=u,this.interval=new gt.a,this.icons=pt.a,this.clientStatsConfig={colors:[{backgroundColor:["--color-cyan","--color-purple"]}]},this.rawCapacityChartConfig={colors:[{backgroundColor:["--color-blue","--color-gray"]}]},this.pgStatusChartConfig={options:{events:[""]}},this.permissions=this.authStorageService.getPermissions(),this.enabledFeature$=this.featureToggles.get()}ngOnInit(){this.getHealth(),this.interval=this.refreshIntervalService.intervalData$.subscribe(()=>{this.getHealth()})}ngOnDestroy(){this.interval.unsubscribe()}getHealth(){this.healthService.getMinimalHealth().subscribe(t=>{this.healthData=t})}prepareReadWriteRatio(t){const e=[],n=[],a=this.healthData.client_perf.write_op_per_sec+this.healthData.client_perf.read_op_per_sec;e.push(`${this.i18n("Reads")}: ${this.dimless.transform(this.healthData.client_perf.read_op_per_sec)} ${this.i18n("/s")}`),n.push(this.calcPercentage(this.healthData.client_perf.read_op_per_sec,a)),e.push(`${this.i18n("Writes")}: ${this.dimless.transform(this.healthData.client_perf.write_op_per_sec)} ${this.i18n("/s")}`),n.push(this.calcPercentage(this.healthData.client_perf.write_op_per_sec,a)),t.labels=e,t.dataset[0].data=n,t.dataset[0].label=`${this.dimless.transform(a)}\n${this.i18n("IOPS")}`}prepareClientThroughput(t){const e=[],n=[],a=this.healthData.client_perf.read_bytes_sec+this.healthData.client_perf.write_bytes_sec;e.push(`${this.i18n("Reads")}: ${this.dimlessBinary.transform(this.healthData.client_perf.read_bytes_sec)}${this.i18n("/s")}`),n.push(this.calcPercentage(this.healthData.client_perf.read_bytes_sec,a)),e.push(`${this.i18n("Writes")}: ${this.dimlessBinary.transform(this.healthData.client_perf.write_bytes_sec)}${this.i18n("/s")}`),n.push(this.calcPercentage(this.healthData.client_perf.write_bytes_sec,a)),t.labels=e,t.dataset[0].data=n,t.dataset[0].label=`${this.dimlessBinary.transform(a).replace(" ","\n")}${this.i18n("/s")}`}prepareRawUsage(t,e){const n=this.calcPercentage(e.df.stats.total_bytes-e.df.stats.total_used_raw_bytes,e.df.stats.total_bytes),a=this.calcPercentage(e.df.stats.total_used_raw_bytes,e.df.stats.total_bytes);t.dataset[0].data=[a,n],t.labels=[`${this.i18n("Used")}: ${this.dimlessBinary.transform(e.df.stats.total_used_raw_bytes)}`,`${this.i18n("Avail.")}: ${this.dimlessBinary.transform(e.df.stats.total_bytes-e.df.stats.total_used_raw_bytes)}`],t.dataset[0].label=`${a}%\nof ${this.dimlessBinary.transform(e.df.stats.total_bytes)}`}preparePgStatus(t,e){const n={};let a=0;X.forEach(e.pg_info.statuses,(t,e)=>{const r=this.pgCategoryService.getTypeByStates(e);X.isUndefined(n[r])&&(n[r]=0),n[r]+=t,a+=t});for(const r of this.pgCategoryService.getAllTypes())X.isUndefined(n[r])&&(n[r]=0);t.dataset[0].data=this.pgCategoryService.getAllTypes().map(t=>this.calcPercentage(n[t],a)),t.labels=[`${this.i18n("Clean")}: ${this.dimless.transform(n.clean)}`,`${this.i18n("Working")}: ${this.dimless.transform(n.working)}`,`${this.i18n("Warning")}: ${this.dimless.transform(n.warning)}`,`${this.i18n("Unknown")}: ${this.dimless.transform(n.unknown)}`],t.dataset[0].label=`${a}\n${this.i18n("PGs")}`}prepareObjects(t,e){const n=e.pg_info.object_stats.num_object_copies,a=this.calcPercentage(n-e.pg_info.object_stats.num_objects_misplaced-e.pg_info.object_stats.num_objects_degraded-e.pg_info.object_stats.num_objects_unfound,n),r=this.calcPercentage(e.pg_info.object_stats.num_objects_misplaced,n),i=this.calcPercentage(e.pg_info.object_stats.num_objects_degraded,n),s=this.calcPercentage(e.pg_info.object_stats.num_objects_unfound,n);t.labels=[`${this.i18n("Healthy")}: ${a}%`,`${this.i18n("Misplaced")}: ${r}%`,`${this.i18n("Degraded")}: ${i}%`,`${this.i18n("Unfound")}: ${s}%`],t.dataset[0].data=[a,r,i,s],t.dataset[0].label=`${this.dimless.transform(e.pg_info.object_stats.num_objects)}\n${this.i18n("objects")}`}isClientReadWriteChartShowable(){return(this.healthData.client_perf.read_op_per_sec||0)+(this.healthData.client_perf.write_op_per_sec||0)>0}calcPercentage(t,e){return X.isNumber(t)&&X.isNumber(e)&&0!==e?Math.round(t/e*100):0}}var er=s["ɵcrt"]({encapsulation:0,styles:[['cd-info-card[_ngcontent-%COMP%]{padding:0 .5vw}  .pg-status-popover-wrapper{position:relative}  .pg-status-popover-wrapper .popover{position:absolute;width:116%;max-height:20vh;min-width:unset!important;max-width:unset!important}  .pg-status-popover-wrapper .popover .popover-body{max-width:100%;max-height:19vh;font-size:12px}.logs-link[_ngcontent-%COMP%]{text-align:center}.card-text-error[_ngcontent-%COMP%]{display:inline;color:red}.card-text-line-break[_ngcontent-%COMP%]:after{content:"\\a";white-space:pre}.popover-info[_ngcontent-%COMP%]:hover{cursor:pointer}']],data:{}});function nr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function ar(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"li",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](3,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),s["ɵppd"](4,1),(t()(),s["ɵted"](5,null,["",""])),(t()(),s["ɵted"](6,null,[": "," "]))],(function(t,e){var n=s["ɵunv"](e,3,0,t(e,4,0,s["ɵnov"](e.parent.parent.parent.parent.parent.parent,0),e.context.$implicit.severity));t(e,3,0,n)}),(function(t,e){t(e,5,0,e.context.$implicit.type),t(e,6,0,e.context.$implicit.summary.message)}))}function rr(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,nr)),s["ɵdid"](1,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](2,0,null,null,2,"ul",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ar)),s["ɵdid"](4,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e.parent.parent.parent.parent,7)),t(e,4,0,n.healthData.health.checks)}),null)}function ir(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"i",[["class","fa fa-exclamation-triangle"]],null,null,null,null,null))],null,null)}function sr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,null,null,null,null,null,null,null)),(t()(),s["ɵand"](0,[["healthChecks",2]],null,0,null,rr)),(t()(),s["ɵeld"](2,16777216,null,null,7,"div",[["class","info-card-content-clickable"],["container","body"],["containerClass","info-card-popover-cluster-status"],["placement","bottom"],["triggers",""]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,6).toggle()&&a),a}),null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),s["ɵppd"](5,1),s["ɵdid"](6,212992,[["healthChecksTarget",4]],0,Ia.c,[Ia.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,Na.a],{popover:[0,"popover"],placement:[1,"placement"],triggers:[2,"triggers"],container:[3,"container"],containerClass:[4,"containerClass"]},null),(t()(),s["ɵted"](7,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,ir)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=s["ɵunv"](e,4,0,t(e,5,0,s["ɵnov"](e.parent.parent.parent.parent,0),n.healthData.health.status));t(e,4,0,a),t(e,6,0,s["ɵnov"](e,1),"bottom","","body","info-card-popover-cluster-status"),t(e,9,0,"HEALTH_OK"!=(null==n.healthData.health?null:n.healthData.health.status))}),(function(t,e){t(e,7,0,e.component.healthData.health.status)}))}function ur(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](3,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null),s["ɵppd"](4,1),(t()(),s["ɵted"](5,null,[" "," "]))],(function(t,e){var n=e.component,a=s["ɵunv"](e,3,0,t(e,4,0,s["ɵnov"](e.parent.parent.parent.parent,0),n.healthData.health.status));t(e,3,0,a)}),(function(t,e){t(e,5,0,e.component.healthData.health.status)}))}function or(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-info-card",[["cardTitle","Cluster Status"],["class","cd-status-card"],["contentClass","content-highlight"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,sr)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,ur)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Cluster Status","content-highlight"),t(e,3,0,(null==n.healthData.health||null==n.healthData.health.checks?null:n.healthData.health.checks.length)>0),t(e,5,0,!(null!=n.healthData.health&&null!=n.healthData.health.checks&&n.healthData.health.checks.length))}),null)}function lr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-info-card",[["cardTitle","Hosts"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/hosts"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," total "]))],(function(t,e){t(e,1,0,"Hosts","/hosts","content-highlight")}),(function(t,e){t(e,2,0,e.component.healthData.hosts)}))}function dr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Monitors"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/monitor"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "])),s["ɵppd"](3,1)],(function(t,e){t(e,1,0,"Monitors","/monitor","content-highlight")}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,1),n.healthData.mon_status));t(e,2,0,a)}))}function cr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,e.context.$implicit.class)}),(function(t,e){t(e,3,0,e.context.$implicit.content)}))}function fr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","OSDs"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/osd"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,cr)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,1,0,"OSDs","/osd","content-highlight"),t(e,3,0,e.context.ngIf)}),null)}function hr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[],[[8,"title",0]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,e.context.$implicit.class)}),(function(t,e){t(e,0,0,null!=e.context.$implicit.titleText?e.context.$implicit.titleText:""),t(e,3,0,e.context.$implicit.content)}))}function gr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"cd-info-card",[["cardTitle","Managers"],["class","cd-status-card"],["contentClass","content-highlight"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵand"](16777216,null,0,2,null,hr)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵppd"](4,1)],(function(t,e){var n=e.component;t(e,1,0,"Managers","content-highlight");var a=s["ɵunv"](e,3,0,t(e,4,0,s["ɵnov"](e.parent.parent.parent,3),n.healthData.mgr_map));t(e,3,0,a)}),null)}function pr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-info-card",[["cardTitle","Object Gateways"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/rgw/daemon"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," total "]))],(function(t,e){t(e,1,0,"Object Gateways","/rgw/daemon","content-highlight")}),(function(t,e){t(e,2,0,e.component.healthData.rgw)}))}function br(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[],[[8,"title",0]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,e.context.$implicit.class)}),(function(t,e){t(e,0,0,null!=e.context.$implicit.titleText?e.context.$implicit.titleText:""),t(e,3,0,e.context.$implicit.content)}))}function mr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Metadata Servers"],["class","cd-status-card"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,br)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,1,0,"Metadata Servers",(e.context.ngIf.length>1?"text-area-size-2":"")+" content-highlight"),t(e,3,0,e.context.ngIf)}),null)}function yr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"cd-info-card",[["cardTitle","iSCSI Gateways"],["class","cd-status-card"],["contentClass","content-highlight"],["link","/block/iscsi"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," total "])),(t()(),s["ɵeld"](3,0,null,0,0,"span",[["class","card-text-line-break"]],null,null,null,null,null)),(t()(),s["ɵted"](4,0,[" "," up, "])),(t()(),s["ɵeld"](5,0,null,0,4,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](8,{"card-text-error":0}),(t()(),s["ɵted"](9,null,[""," down"]))],(function(t,e){var n=e.component;t(e,1,0,"iSCSI Gateways","/block/iscsi","content-highlight");var a=t(e,8,0,n.healthData.iscsi_daemons.down>0);t(e,7,0,a)}),(function(t,e){var n=e.component;t(e,2,0,n.healthData.iscsi_daemons.up+n.healthData.iscsi_daemons.down),t(e,4,0,n.healthData.iscsi_daemons.up),t(e,9,0,n.healthData.iscsi_daemons.down)}))}function vr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,19,"cd-info-group",[["groupTitle","Status"]],null,null,null,Pa,Da)),s["ɵdid"](1,49152,null,0,La,[],{groupTitle:[0,"groupTitle"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,or)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,lr)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,dr)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,2,null,fr)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](10,1),(t()(),s["ɵand"](16777216,null,0,1,null,gr)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,pr)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,2,null,mr)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](17,1),(t()(),s["ɵand"](16777216,null,0,1,null,yr)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Status"),t(e,3,0,null==n.healthData.health?null:n.healthData.health.status),t(e,5,0,null!=n.healthData.hosts),t(e,7,0,n.healthData.mon_status);var a=s["ɵunv"](e,9,0,t(e,10,0,s["ɵnov"](e.parent.parent,2),n.healthData.osd_map));t(e,9,0,a),t(e,12,0,n.healthData.mgr_map),t(e,14,0,e.parent.context.ngIf.rgw&&null!=n.healthData.rgw);var r=s["ɵunv"](e,16,0,t(e,17,0,s["ɵnov"](e.parent.parent,4),e.parent.context.ngIf.cephfs&&n.healthData.fs_map));t(e,16,0,r),t(e,19,0,e.parent.context.ngIf.iscsi&&null!=n.healthData.iscsi_daemons)}),null)}function xr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Raw Capacity"],["class","cd-capacity-card cd-chart-card"],["contentClass","content-chart"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵeld"](2,0,null,0,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.prepareRawUsage(n[0],n[1])&&a),a}),za,Ba)),s["ɵdid"](3,638976,null,0,Ga,[Fa.a,Va.a],{data:[0,"data"],config:[1,"config"],isBytesData:[2,"isBytesData"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"Raw Capacity","content-chart"),t(e,3,0,n.healthData,n.rawCapacityChartConfig,!0)}),null)}function _r(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Objects"],["class","cd-capacity-card cd-chart-card"],["contentClass","content-chart"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵeld"](2,0,null,0,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.prepareObjects(n[0],n[1])&&a),a}),za,Ba)),s["ɵdid"](3,638976,null,0,Ga,[Fa.a,Va.a],{data:[0,"data"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"Objects","content-chart"),t(e,3,0,n.healthData)}),null)}function Tr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function wr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",": "," "]))],null,(function(t,e){t(e,1,0,e.context.$implicit.key,e.context.$implicit.value)}))}function Or(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Tr)),s["ɵdid"](1,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](2,0,null,null,3,"ul",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,wr)),s["ɵdid"](4,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers])],(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e.parent.parent.parent,7)),t(e,4,0,s["ɵunv"](e,4,0,s["ɵnov"](e,5).transform(n.healthData.pg_info.statuses)))}),null)}function Sr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"cd-info-card",[["cardTitle","PG Status"],["class","cd-capacity-card cd-chart-card"],["contentClass","content-chart"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,5).toggle()&&a),a}),Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵand"](0,[["pgStatus",2]],0,0,null,Or)),(t()(),s["ɵeld"](3,0,null,0,4,"div",[["class","pg-status-popover-wrapper"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,16777216,null,null,3,"div",[["placement","bottom"],["triggers",""]],null,null,null,null,null)),s["ɵdid"](5,212992,[["pgStatusTarget",4]],0,Ia.c,[Ia.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a,Na.a],{popover:[0,"popover"],placement:[1,"placement"],triggers:[2,"triggers"]},null),(t()(),s["ɵeld"](6,0,null,null,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.preparePgStatus(n[0],n[1])&&a),a}),za,Ba)),s["ɵdid"](7,638976,null,0,Ga,[Fa.a,Va.a],{data:[0,"data"],config:[1,"config"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"PG Status","content-chart"),t(e,5,0,s["ɵnov"](e,2),"bottom",""),t(e,7,0,n.healthData,n.pgStatusChartConfig)}),null)}function Ir(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-info-card",[["cardTitle","Pools"],["class","cd-capacity-card"],["contentClass","content-highlight"],["link","/pool"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],link:[1,"link"],contentClass:[2,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "]))],(function(t,e){t(e,1,0,"Pools","/pool","content-highlight")}),(function(t,e){t(e,2,0,e.component.healthData.pools.length)}))}function Nr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","PGs per OSD"],["class","cd-capacity-card"],["contentClass","content-highlight"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "])),s["ɵppd"](3,1)],(function(t,e){t(e,1,0,"PGs per OSD","content-highlight")}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,5),n.healthData.pg_info.pgs_per_osd));t(e,2,0,a)}))}function Cr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"cd-info-group",[["groupTitle","Capacity"]],null,null,null,Pa,Da)),s["ɵdid"](1,49152,null,0,La,[],{groupTitle:[0,"groupTitle"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,xr)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,_r)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Sr)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Ir)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Nr)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Capacity"),t(e,3,0,n.healthData.df),t(e,5,0,null!=(null==n.healthData.pg_info||null==n.healthData.pg_info.object_stats?null:n.healthData.pg_info.object_stats.num_objects)),t(e,7,0,n.healthData.pg_info),t(e,9,0,n.healthData.pools),t(e,11,0,n.healthData.pg_info)}),null)}function Rr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Client Read/Write"],["class","cd-performance-card cd-chart-card"],["contentClass","content-chart"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵeld"](2,0,null,0,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.prepareReadWriteRatio(n[0],n[1])&&a),a}),za,Ba)),s["ɵdid"](3,638976,null,0,Ga,[Fa.a,Va.a],{data:[0,"data"],config:[1,"config"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"Client Read/Write","content-chart"),t(e,3,0,n.healthData,n.clientStatsConfig)}),null)}function Ar(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Client Throughput"],["class","cd-performance-card cd-chart-card"],["contentClass","content-chart"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵeld"](2,0,null,0,1,"cd-health-pie",[],null,[[null,"prepareFn"]],(function(t,e,n){var a=!0;return"prepareFn"===e&&(a=!1!==t.component.prepareClientThroughput(n[0],n[1])&&a),a}),za,Ba)),s["ɵdid"](3,638976,null,0,Ga,[Fa.a,Va.a],{data:[0,"data"],config:[1,"config"]},{prepareFn:"prepareFn"})],(function(t,e){var n=e.component;t(e,1,0,"Client Throughput","content-chart"),t(e,3,0,n.healthData,n.clientStatsConfig)}),null)}function kr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-info-card",[["cardTitle","Recovery Throughput"],["class","cd-performance-card"],["contentClass","content-highlight"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "])),s["ɵppd"](3,1)],(function(t,e){t(e,1,0,"Recovery Throughput","content-highlight")}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,6),n.healthData.client_perf.recovering_bytes_per_sec))+"/s";t(e,2,0,a)}))}function Er(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-info-card",[["cardTitle","Scrubbing"],["class","cd-performance-card"],["contentClass","content-highlight"]],null,null,null,Ea,Ra)),s["ɵdid"](1,49152,null,0,Ca,[],{cardTitle:[0,"cardTitle"],contentClass:[1,"contentClass"]},null),(t()(),s["ɵted"](2,0,[" "," "]))],(function(t,e){t(e,1,0,"Scrubbing","content-highlight")}),(function(t,e){t(e,2,0,e.component.healthData.scrub_status)}))}function Lr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"cd-info-group",[["groupTitle","Performance"]],null,null,null,Pa,Da)),s["ɵdid"](1,49152,null,0,La,[],{groupTitle:[0,"groupTitle"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Rr)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Ar)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,kr)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Er)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Performance"),t(e,3,0,n.healthData.client_perf),t(e,5,0,n.healthData.client_perf),t(e,7,0,n.healthData.client_perf),t(e,9,0,n.healthData.scrub_status)}),null)}function Dr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,9,"p",[["class","logs-link"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1),(t()(),s["ɵted"](-1,null,[" See "])),(t()(),s["ɵeld"](7,0,null,null,2,"a",[["routerLink","/logs"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,8).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](8,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Logs"])),(t()(),s["ɵted"](-1,null,[" for more details."]))],(function(t,e){var n=t(e,5,0,e.component.icons.infoCircle);t(e,4,0,n),t(e,8,0,"/logs")}),(function(t,e){t(e,7,0,s["ɵnov"](e,8).target,s["ɵnov"](e,8).href)}))}function Pr(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Dr)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component.permissions.log.read)}),null)}function Mr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"div",[["class","container-fluid"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,vr)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cr)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Lr)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[["logsLink",2]],null,0,null,Pr))],(function(t,e){var n=e.component;t(e,2,0,(null==n.healthData.health?null:n.healthData.health.status)||n.healthData.mon_status||n.healthData.osd_map||n.healthData.mgr_map||null!=n.healthData.hosts||null!=n.healthData.rgw||n.healthData.fs_map||null!=n.healthData.iscsi_daemons),t(e,4,0,n.healthData.pools||n.healthData.df||n.healthData.pg_info),t(e,6,0,n.healthData.client_perf||n.healthData.scrub_status)}),null)}function qr(t){return s["ɵvid"](0,[s["ɵpid"](0,Zt,[]),s["ɵpid"](0,Ya,[fe.a]),s["ɵpid"](0,Ha,[fe.a]),s["ɵpid"](0,Ua,[fe.a]),s["ɵpid"](0,Wa,[fe.a]),s["ɵpid"](0,Va.a,[Ka.a]),s["ɵpid"](0,Fa.a,[Ka.a]),(t()(),s["ɵand"](16777216,null,null,2,null,Mr)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpid"](131072,i.AsyncPipe,[s.ChangeDetectorRef])],(function(t,e){var n=e.component;t(e,8,0,s["ɵunv"](e,8,0,s["ɵnov"](e,9).transform(n.healthData&&n.enabledFeature$)))}),null)}class jr{constructor(t){this.refreshIntervalService=t,this.intervalList={"5 s":5e3,"10 s":1e4,"15 s":15e3,"30 s":3e4,"1 min":6e4,"3 min":18e4,"5 min":3e5},this.intervalKeys=Object.keys(this.intervalList)}ngOnInit(){this.selectedInterval=this.refreshIntervalService.getRefreshInterval()||5e3}changeRefreshInterval(t){this.refreshIntervalService.setRefreshInterval(t)}}var Fr=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Vr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){var n=e.component;t(e,1,0,n.intervalList[e.context.$implicit]),t(e,2,0,n.intervalList[e.context.$implicit])}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function Gr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,13,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,12,"div",[["class","float-right d-inline-flex"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"label",[["class","col-form-label my-0 mx-2"],["for","refreshInterval"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Refresh"])),(t()(),s["ɵeld"](5,0,null,null,9,"select",[["class","form-control custom-select"],["id","refreshInterval"],["name","refreshInterval"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"ngModelChange"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,6).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,6).onTouched()&&a),"change"===e&&(a=!1!==r.changeRefreshInterval(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.selectedInterval=n)&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](8,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](10,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](11,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](12,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,Vr)),s["ɵdid"](14,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,8,0,"refreshInterval",n.selectedInterval),t(e,14,0,n.intervalKeys)}),(function(t,e){t(e,5,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending,s["ɵnov"](e,12).validClass,s["ɵnov"](e,12).invalidClass)}))}class Br{constructor(){this.hasGrafana=!1}ngOnInit(){}}var zr=s["ɵcrt"]({encapsulation:0,styles:[["div[_ngcontent-%COMP%]{padding-top:20px}"]],data:{}});function Yr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Health"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-health",[],null,null,null,qr,er)),s["ɵdid"](5,245760,null,0,tr,[$a,fe.a,J.a,Xa.a,vn.a,Qa,Fa.a,Va.a],null,null),(t()(),s["ɵeld"](6,0,null,0,1,"tab",[["heading","Statistics"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](7,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null)],(function(t,e){t(e,3,0,"Health"),t(e,5,0),t(e,7,0,"Statistics")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,6,0,s["ɵnov"](e,7).id,s["ɵnov"](e,7).active,s["ɵnov"](e,7).addClass,s["ɵnov"](e,7).role,s["ɵnov"](e,7).ariaLabelledby)}))}function Hr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-health",[],null,null,null,qr,er)),s["ɵdid"](1,245760,null,0,tr,[$a,fe.a,J.a,Xa.a,vn.a,Qa,Fa.a,Va.a],null,null)],(function(t,e){t(e,1,0)}),null)}function Ur(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"cd-refresh-selector",[],null,null,null,Gr,Fr)),s["ɵdid"](2,114688,null,0,jr,[Qa],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,Yr)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hr)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,4,0,n.hasGrafana),t(e,6,0,!n.hasGrafana)}),null)}function Wr(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-dashboard",[],null,null,null,Ur,zr)),s["ɵdid"](1,114688,null,0,Br,[],null,null)],(function(t,e){t(e,1,0)}),null)}var Kr=s["ɵccf"]("cd-dashboard",Br,Wr,{},{},[]),$r=n("a278"),Zr=n("insk"),Jr=n("25BL"),Qr=n("uIqm"),Xr=n("NUGo"),ti=n("S7zO"),ei=n("i4WA"),ni=n("6qls");class ai{}var ri=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ii(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["Orchestrator is not available. Please consult the "])),(t()(),s["ɵeld"](3,0,null,0,1,"cd-doc",[["section","orch"]],null,null,null,ei.b,ei.a)),s["ɵdid"](4,114688,null,0,ni.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,0,[" on how to configure and enable the functionality."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"orch")}),null)}let si=(()=>{class t{constructor(t){this.http=t,this.url="api/orchestrator"}status(){return this.http.get(this.url+"/status")}identifyDevice(t,e,n){return this.http.post(this.url+"/identify_device",{hostname:t,device:e,duration:n})}inventoryList(t,e){let n=new et.h;return t&&(n=n.append("hostname",t)),e&&(n=n.append("refresh",X.toString(e))),this.http.get(this.url+"/inventory",{params:n})}inventoryDeviceList(t,e){return this.inventoryList(t,e).pipe(Object(we.a)(t=>{const e=X.flatMap(t,t=>t.devices.map(e=>(e.hostname=t.name,e.uid=e.device_id?e.device_id:`${e.hostname}-${e.path}`,e)));return Object(_e.a)(e)}))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();var ui=n("Rf2I"),oi=n("x38r"),li=n("vCyI");class di{constructor(t,e,n,a,r,i){this.authStorageService=t,this.dimlessBinary=e,this.i18n=n,this.modalService=a,this.notificationService=r,this.orchService=i,this.devices=[],this.hiddenColumns=[],this.filterColumns=["hostname","human_readable_type","available","sys_api.vendor","sys_api.model","sys_api.size"],this.selectionType=void 0,this.filterChange=new s.EventEmitter,this.fetchInventory=new s.EventEmitter,this.icons=pt.a,this.columns=[],this.selection=new li.a}ngOnInit(){this.permission=this.authStorageService.getPermissions().osd,this.tableActions=[{permission:"update",icon:pt.a.show,click:()=>this.identifyDevice(),name:this.i18n("Identify"),disable:()=>!this.selection.hasSingleSelection,canBePrimary:t=>!t.hasSingleSelection,visible:()=>X.isString(this.selectionType)}];const t=[{name:this.i18n("Hostname"),prop:"hostname",flexGrow:1},{name:this.i18n("Device path"),prop:"path",flexGrow:1},{name:this.i18n("Type"),prop:"human_readable_type",flexGrow:1,cellTransformation:oi.a.badge,customTemplateConfig:{map:{hdd:{value:"HDD",class:"badge-hdd"},ssd:{value:"SSD",class:"badge-ssd"}}}},{name:this.i18n("Available"),prop:"available",flexGrow:1,cellClass:"text-center",cellTransformation:oi.a.checkIcon},{name:this.i18n("Vendor"),prop:"sys_api.vendor",flexGrow:1},{name:this.i18n("Model"),prop:"sys_api.model",flexGrow:1},{name:this.i18n("Size"),prop:"sys_api.size",flexGrow:1,pipe:this.dimlessBinary},{name:this.i18n("OSDs"),prop:"osd_ids",flexGrow:1,cellTransformation:oi.a.badge,customTemplateConfig:{class:"badge-dark",prefix:"osd."}}];this.columns=t.filter(t=>!this.hiddenColumns.includes(t.prop)),X.forEach(this.filterColumns,t=>{const e=X.find(this.columns,{prop:t});e&&(e.filterable=!0)}),this.fetchInventory.observers.length>0&&(this.fetchInventorySub=this.table.fetchData.subscribe(()=>{this.fetchInventory.emit()}))}ngOnDestroy(){this.fetchInventorySub&&this.fetchInventorySub.unsubscribe()}onColumnFiltersChanged(t){this.filterChange.emit(t)}updateSelection(t){this.selection=t}identifyDevice(){const t=this.selection.first(),e=t.hostname,n=t.path||t.device_id;this.modalService.show(ui.a,{initialState:{titleText:this.i18n("Identify device {{device}}",{device:n}),message:this.i18n("Please enter the duration how long to blink the LED."),fields:[{type:"select",name:"duration",value:300,required:!0,typeConfig:{options:[{text:this.i18n("1 minute"),value:60},{text:this.i18n("2 minutes"),value:120},{text:this.i18n("5 minutes"),value:300},{text:this.i18n("10 minutes"),value:600},{text:this.i18n("15 minutes"),value:900}]}}],submitButtonText:this.i18n("Execute"),onSubmit:t=>{this.orchService.identifyDevice(e,n,t.duration).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Identifying '{{device}}' started on host '{{hostname}}'",{hostname:e,device:n}))})}}})}}var ci=s["ɵcrt"]({encapsulation:0,styles:[[".filter[_ngcontent-%COMP%]{padding-right:8px}.fa-stack[_ngcontent-%COMP%]{font-size:.79rem}.fa-stack[_ngcontent-%COMP%]   .fa-stack-1x[_ngcontent-%COMP%]{margin-left:8px;margin-top:5px}"]],data:{}});function fi(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{table:0}),(t()(),s["ɵeld"](1,0,null,null,3,"cd-table",[["columnMode","flex"],["identifier","uid"]],null,[[null,"updateSelection"],[null,"columnFiltersChanged"]],(function(t,e,n){var a=!0,r=t.component;return"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),"columnFiltersChanged"===e&&(a=!1!==r.onColumnFiltersChanged(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](2,2867200,[[1,4]],0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],searchField:[3,"searchField"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],forceIdentifier:[6,"forceIdentifier"],selectionType:[7,"selectionType"]},{updateSelection:"updateSelection",columnFiltersChanged:"columnFiltersChanged"}),(t()(),s["ɵeld"](3,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](4,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.devices,n.columns,"flex",!1,!1,"uid",!0,n.selectionType),t(e,4,0,n.permission,n.selection,n.tableActions)}),null)}var hi=n("PqYM");class gi{constructor(t,e){this.orchService=t,this.ngZone=e,this.reloadInterval=5e3,this.firstRefresh=!0,this.icons=pt.a,this.hasOrchestrator=!1,this.showDocPanel=!1,this.devices=[]}ngOnInit(){this.orchService.status().subscribe(t=>{this.hasOrchestrator=t.available,this.showDocPanel=!t.available,t.available&&this.ngZone.runOutsideAngular(()=>{this.reloadSubscriber=Object(hi.a)(this.reloadInterval,this.reloadInterval).subscribe(()=>{this.ngZone.run(()=>{this.getInventory(!1)})})})})}ngOnDestroy(){this.reloadSubscriber&&this.reloadSubscriber.unsubscribe()}ngOnChanges(){this.hasOrchestrator&&(this.devices=[],this.getInventory(!1))}getInventory(t){""!==this.hostname&&this.orchService.inventoryDeviceList(this.hostname,t).subscribe(t=>{this.devices=t},()=>{this.devices=[]})}refresh(){this.getInventory(!this.firstRefresh),this.firstRefresh=!1}}var pi=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function bi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,ii,ri)),s["ɵdid"](1,49152,null,0,ai,[],null,null)],null,null)}function mi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Devices"])),(t()(),s["ɵeld"](3,0,null,null,4,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,3,"div",[["class","col-md-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,2,"cd-inventory-devices",[["selectionType","single"]],null,[[null,"fetchInventory"]],(function(t,e,n){var a=!0;return"fetchInventory"===e&&(a=!1!==t.component.refresh()&&a),a}),fi,ci)),s["ɵdid"](6,245760,null,0,di,[J.a,Fa.a,fe.a,Ct.b,bt.a,si],{devices:[0,"devices"],hiddenColumns:[1,"hiddenColumns"],selectionType:[2,"selectionType"]},{fetchInventory:"fetchInventory"}),s["ɵpad"](7,1)],(function(t,e){var n=e.component,a=n.devices,r=void 0===n.hostname?s["ɵEMPTY_ARRAY"]:t(e,7,0,"hostname");t(e,6,0,a,r,"single")}),null)}function yi(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,bi)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mi)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.showDocPanel),t(e,3,0,n.hasOrchestrator)}),null)}function vi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-inventory",[],null,null,null,yi,pi)),s["ɵdid"](1,770048,null,0,gi,[si,s.NgZone],null,null)],(function(t,e){t(e,1,0)}),null)}var xi=s["ɵccf"]("cd-inventory",gi,vi,{hostname:"hostname"},{},[]);let _i=(()=>{class t{constructor(t){this.http=t,this.url="api/service"}list(t){const e=t?{params:(new et.h).set("service_name",t)}:{};return this.http.get(this.url,e)}getDaemons(t){return this.http.get(`${this.url}/${t}/daemons`)}create(t){return this.http.post(this.url,{service_name:t.service_id?`${t.service_type}.${t.service_id}`:t.service_type,service_spec:t},{observe:"response"})}delete(t){return this.http.delete(`${this.url}/${t}`,{observe:"response"})}getKnownTypes(){return this.http.get(this.url+"/known_types")}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})(),Ti=(()=>{class t{constructor(){}calculateAdditionalData(t){if(!t.life_expectancy_min||!t.life_expectancy_max)return t.state="unknown",t;const e=t=>!!Number.parseFloat(t),n=(t,n)=>t&&n&&e(t)&&e(n)?ze.duration(ze(t).diff(ze(n))).asWeeks():null,a=ze.duration(ze(ze.now()).diff(ze(t.life_expectancy_stamp))).asWeeks(),r=n(t.life_expectancy_max,t.life_expectancy_stamp),i=n(t.life_expectancy_min,t.life_expectancy_stamp);return t.state=a>1?"stale":null!==r&&r<=2?"bad":null!==i&&i<=4?"warning":"good",t.life_expectancy_weeks={max:null!==r?Math.round(r):null,min:null!==i?Math.round(i):null},t}readable(t){return t.readableDaemons=t.daemons.join(" "),t}prepareDevice(t){return this.readable(this.calculateAdditionalData(t))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})(),wi=(()=>{class t{constructor(t,e){this.http=t,this.deviceService=e,this.baseURL="api/host"}list(){return this.http.get(this.baseURL)}create(t){return this.http.post(this.baseURL,{hostname:t},{observe:"response"})}delete(t){return this.http.delete(`${this.baseURL}/${t}`,{observe:"response"})}getDevices(t){return this.http.get(`${this.baseURL}/${t}/devices`).pipe(Object(Qe.a)(t=>t.map(t=>this.deviceService.prepareDevice(t))))}getSmartData(t){return this.http.get(`${this.baseURL}/${t}/smart`)}getDaemons(t){return this.http.get(`${this.baseURL}/${t}/daemons`)}getLabels(){return this.http.get("ui-api/host/labels")}update(t,e){return this.http.put(`${this.baseURL}/${t}`,{labels:e})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](Ti))},token:t,providedIn:ue.a}),t})();class Oi{constructor(t,e,n,a){this.i18n=t,this.hostService=e,this.cephServiceService=n,this.orchService=a,this.daemons=[],this.columns=[],this.hasOrchestrator=!1,this.showDocPanel=!1}ngOnInit(){this.columns=[{name:this.i18n("Hostname"),prop:"hostname",flexGrow:1,filterable:!0},{name:this.i18n("Daemon type"),prop:"daemon_type",flexGrow:1,filterable:!0},{name:this.i18n("Daemon ID"),prop:"daemon_id",flexGrow:1,filterable:!0},{name:this.i18n("Container ID"),prop:"container_id",flexGrow:3,filterable:!0,cellTransformation:oi.a.truncate,customTemplateConfig:{length:12}},{name:this.i18n("Container Image name"),prop:"container_image_name",flexGrow:3,filterable:!0},{name:this.i18n("Container Image ID"),prop:"container_image_id",flexGrow:3,filterable:!0,cellTransformation:oi.a.truncate,customTemplateConfig:{length:12}},{name:this.i18n("Version"),prop:"version",flexGrow:1,filterable:!0},{name:this.i18n("Status"),prop:"status_desc",flexGrow:1,filterable:!0,cellTemplate:this.statusTpl},{name:this.i18n("Last Refreshed"),prop:"last_refresh",flexGrow:2}],this.orchService.status().subscribe(t=>{this.hasOrchestrator=t.available,this.showDocPanel=!t.available})}ngOnChanges(){X.isUndefined(this.daemonsTable)||this.daemonsTable.reloadData()}ngAfterViewInit(){this.daemonsTableTplsSub=this.daemonsTableTpls.changes.subscribe(t=>{this.daemonsTable=t.first})}ngOnDestroy(){this.daemonsTableTplsSub&&this.daemonsTableTplsSub.unsubscribe()}getStatusClass(t){return X.get({"-1":"badge-danger",0:"badge-warning",1:"badge-success"},t,"badge-dark")}getDaemons(t){let e;if(this.hostname)e=this.hostService.getDaemons(this.hostname);else{if(!this.serviceName)return void(this.daemons=[]);e=this.cephServiceService.getDaemons(this.serviceName)}e.subscribe(t=>{this.daemons=t},()=>{this.daemons=[],t.error()})}}var Si=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ii(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,ii,ri)),s["ɵdid"](1,49152,null,0,ai,[],null,null)],null,null)}function Ni(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table",[["columnMode","flex"]],null,[[null,"fetchData"]],(function(t,e,n){var a=!0;return"fetchData"===e&&(a=!1!==t.component.getDaemons(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](1,2867200,[[2,4],["daemonsTable",4]],0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],autoReload:[3,"autoReload"]},{fetchData:"fetchData"})],(function(t,e){var n=e.component;t(e,1,0,n.daemons,n.columns,"flex",5e3)}),null)}function Ci(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[["class","badge"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,2,0,"badge",e.component.getStatusClass(e.context.row.status))}),(function(t,e){t(e,3,0,e.context.row.status_desc)}))}function Ri(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{statusTpl:0}),s["ɵqud"](671088640,2,{daemonsTableTpls:1}),(t()(),s["ɵand"](16777216,null,null,1,null,Ii)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ni)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[1,2],["statusTpl",2]],null,0,null,Ci))],(function(t,e){var n=e.component;t(e,3,0,n.showDocPanel),t(e,5,0,n.hasOrchestrator)}),null)}var Ai=n("sLuX"),ki=n("FSuO"),Ei=n("QC43"),Li=n("XFyV"),Di=n("zWsK");let Pi=(()=>{class t{constructor(t,e,n){this.http=t,this.i18n=e,this.deviceService=n,this.path="api/osd",this.osdRecvSpeedModalPriorities={KNOWN_PRIORITIES:[{name:null,text:this.i18n("-- Select the priority --"),values:{osd_max_backfills:null,osd_recovery_max_active:null,osd_recovery_max_single_start:null,osd_recovery_sleep:null}},{name:"low",text:this.i18n("Low"),values:{osd_max_backfills:1,osd_recovery_max_active:1,osd_recovery_max_single_start:1,osd_recovery_sleep:.5}},{name:"default",text:this.i18n("Default"),values:{osd_max_backfills:1,osd_recovery_max_active:3,osd_recovery_max_single_start:1,osd_recovery_sleep:0}},{name:"high",text:this.i18n("High"),values:{osd_max_backfills:4,osd_recovery_max_active:4,osd_recovery_max_single_start:4,osd_recovery_sleep:0}}]}}create(t){const e={method:"drive_groups",data:t,tracking_id:X.join(X.map(t,"service_id"),", ")};return this.http.post(this.path,e,{observe:"response"})}getList(){return this.http.get(""+this.path)}getDetails(t){return this.http.get(`${this.path}/${t}`)}getSmartData(t){return this.http.get(`${this.path}/${t}/smart`)}scrub(t,e){return this.http.post(`${this.path}/${t}/scrub?deep=${e}`,null)}getFlags(){return this.http.get(this.path+"/flags")}updateFlags(t){return this.http.put(this.path+"/flags",{flags:t})}updateIndividualFlags(t,e){return this.http.put(this.path+"/flags/individual",{flags:t,ids:e})}markOut(t){return this.http.post(`${this.path}/${t}/mark_out`,null)}markIn(t){return this.http.post(`${this.path}/${t}/mark_in`,null)}markDown(t){return this.http.post(`${this.path}/${t}/mark_down`,null)}reweight(t,e){return this.http.post(`${this.path}/${t}/reweight`,{weight:e})}update(t,e){return this.http.put(`${this.path}/${t}`,{device_class:e})}markLost(t){return this.http.post(`${this.path}/${t}/mark_lost`,null)}purge(t){return this.http.post(`${this.path}/${t}/purge`,null)}destroy(t){return this.http.post(`${this.path}/${t}/destroy`,null)}delete(t,e,n){return this.http.delete(`${this.path}/${t}`,{observe:"response",params:{preserve_id:e?"true":"false",force:n?"true":"false"}})}safeToDestroy(t){return this.http.get(`${this.path}/safe_to_destroy?ids=${t}`)}safeToDelete(t){return this.http.get(`${this.path}/safe_to_delete?svc_ids=${t}`)}getDevices(t){return this.http.get(`${this.path}/${t}/devices`).pipe(Object(Qe.a)(t=>t.map(t=>this.deviceService.prepareDevice(t))))}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](fe.a),s["ɵɵinject"](Ti))},token:t,providedIn:ue.a}),t})();class Mi{constructor(t,e,n){this.i18n=t,this.osdService=e,this.hostService=n,this.osdId=null,this.hostname=null,this.loading=!1,this.incompatible=!1,this.error=!1,this.data={},this.isEmpty=X.isEmpty}isSmartError(t){return void 0!==X.get(t,"error")}isNvmeSmartData(t){return"nvme"===X.get(t,"device.protocol","").toLowerCase()}isHddSmartData(t){return"ata"===X.get(t,"device.protocol","").toLowerCase()}fetchData(t){const e={};X.each(t,(t,n)=>{if(this.isSmartError(t)){let a="";a=this.i18n(-22===t.smartctl_error_code?"Smartctl has received an unknown argument (error code {{code}}). You may be using an incompatible version of smartmontools. Version >= 7.0 of smartmontools is required to successfully retrieve data.":"An error with error code {{code}} occurred.",{code:t.smartctl_error_code}),e[n]={error:t.error,smartctl_error_code:t.smartctl_error_code,smartctl_output:t.smartctl_output,userMessage:a,device:t.dev,identifier:t.nvme_vendor}}else 1!==t.json_format_version[0]?this.incompatible=!0:this.isHddSmartData(t)?e[n]=this.extractHddData(t):this.isNvmeSmartData(t)&&(e[n]=this.extractNvmeData(t))}),this.data=e,this.loading=!1}extractNvmeData(t){return{info:X.omitBy(t,(t,e)=>["nvme_smart_health_information_log"].includes(e)),smart:{nvmeData:t.nvme_smart_health_information_log},device:t.device.name,identifier:t.serial_number}}extractHddData(t){const e=X.omitBy(t,(t,e)=>["ata_smart_attributes","ata_smart_selective_self_test_log","ata_smart_data"].includes(e));return{info:e,smart:{attributes:t.ata_smart_attributes,data:t.ata_smart_data},device:e.device.name,identifier:e.serial_number}}updateData(){this.loading=!0,null!==this.osdId?this.osdService.getSmartData(this.osdId).subscribe(this.fetchData.bind(this),t=>{t.preventDefault(),this.error=t,this.loading=!1}):null!==this.hostname&&this.hostService.getSmartData(this.hostname).subscribe(this.fetchData.bind(this),t=>{t.preventDefault(),this.error=t,this.loading=!1})}ngOnInit(){this.smartDataColumns=[{prop:"id",name:this.i18n("ID")},{prop:"name",name:this.i18n("Name")},{prop:"raw.value",name:this.i18n("Raw")},{prop:"thresh",name:this.i18n("Threshold")},{prop:"value",name:this.i18n("Value")},{prop:"when_failed",name:this.i18n("When Failed")},{prop:"worst",name:this.i18n("Worst")}]}ngOnChanges(t){this.data={},t.osdId?this.osdId=t.osdId.currentValue:t.hostname&&(this.hostname=t.hostname.currentValue),this.updateData()}}var qi=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ji(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["Failed to retrieve SMART data."]))],(function(t,e){t(e,1,0,"error")}),null)}function Fi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["The data received has the JSON format version 2.x and is currently incompatible with the dashboard."]))],(function(t,e){t(e,1,0,"warning")}),null)}function Vi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["No SMART data available."]))],(function(t,e){t(e,1,0,"info")}),null)}function Gi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"cd-alert-panel",[["id","alert-error"],["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](2,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](3,0,["",""]))],(function(t,e){t(e,2,0,"warning")}),(function(t,e){t(e,3,0,e.parent.context.$implicit.value.userMessage)}))}function Bi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["id","alert-self-test-unknown"],["size","slim"],["title","SMART overall-health self-assessment test result"],["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{title:[0,"title"],type:[1,"type"],size:[2,"size"]},null),(t()(),s["ɵted"](-1,0,["unknown"]))],(function(t,e){t(e,1,0,"SMART overall-health self-assessment test result","warning","slim")}),null)}function zi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"cd-alert-panel",[["id","alert-self-test-passed"],["size","slim"],["title","SMART overall-health self-assessment test result"],["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](2,114688,null,0,me.a,[fe.a],{title:[0,"title"],type:[1,"type"],size:[2,"size"]},null),(t()(),s["ɵted"](-1,0,["passed"]))],(function(t,e){t(e,2,0,"SMART overall-health self-assessment test result","info","slim")}),null)}function Yi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["id","alert-self-test-failed"],["size","slim"],["title","SMART overall-health self-assessment test result"],["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{title:[0,"title"],type:[1,"type"],size:[2,"size"]},null),(t()(),s["ɵted"](-1,0,["failed"]))],(function(t,e){t(e,1,0,"SMART overall-health self-assessment test result","warning","slim")}),null)}function Hi(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,zi)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["selfTestFailed",2]],null,0,null,Yi))],(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.info.smart_status.passed,s["ɵnov"](e,2))}),null)}function Ui(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,2,null,Bi)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),s["ɵppd"](2,2),(t()(),s["ɵand"](0,[["hasSmartStatus",2]],null,0,null,Hi))],(function(t,e){var n=e.component,a=s["ɵunv"](e,1,0,t(e,2,0,s["ɵnov"](e.parent.parent.parent.parent.parent,0),null==e.parent.context.$implicit.value.info?null:e.parent.context.$implicit.value.info.smart_status,n.isEmpty));t(e,1,0,a,s["ɵnov"](e,3))}),null)}function Wi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[],null,null,null,Ai.b,Ai.a)),s["ɵdid"](1,638976,null,0,ki.a,[He.a],{data:[0,"data"],renderObjects:[1,"renderObjects"]},null)],(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.info,!0)}),null)}function Ki(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["id","alert-device-info-unavailable"],["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["No device information available for this device."]))],(function(t,e){t(e,1,0,"info")}),null)}function $i(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table",[["updateSelectionOnRefresh","never"]],null,null,null,Jr.b,Jr.a)),s["ɵdid"](1,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],updateSelectionOnRefresh:[2,"updateSelectionOnRefresh"]},null)],(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.smart.attributes.table,e.component.smartDataColumns,"never")}),null)}function Zi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[["updateSelectionOnRefresh","never"]],null,null,null,Ai.b,Ai.a)),s["ɵdid"](1,638976,null,0,ki.a,[He.a],{data:[0,"data"],renderObjects:[1,"renderObjects"]},null)],(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.smart.nvmeData,!0)}),null)}function Ji(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["id","alert-device-smart-data-unavailable"],["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["No SMART data available for this device."]))],(function(t,e){t(e,1,0,"info")}),null)}function Qi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,[[1,4],["innerTabset",4]],0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,7,"tab",[["heading","Device Information"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,2,null,Wi)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](6,2),(t()(),s["ɵand"](16777216,null,null,2,null,Ki)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](9,2),(t()(),s["ɵeld"](10,0,null,0,7,"tab",[["heading","SMART"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](11,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$i)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Zi)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ji)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Device Information");var a=!s["ɵunv"](e,5,0,t(e,6,0,s["ɵnov"](e.parent.parent.parent.parent.parent,0),e.parent.context.$implicit.value.info,n.isEmpty));t(e,5,0,a);var r=s["ɵunv"](e,8,0,t(e,9,0,s["ɵnov"](e.parent.parent.parent.parent.parent,0),e.parent.context.$implicit.value.info,n.isEmpty));t(e,8,0,r),t(e,11,0,"SMART"),t(e,13,0,null==e.parent.context.$implicit.value.smart?null:e.parent.context.$implicit.value.smart.attributes),t(e,15,0,null==e.parent.context.$implicit.value.smart?null:e.parent.context.$implicit.value.smart.nvmeData),t(e,17,0,!(null!=e.parent.context.$implicit.value.smart&&e.parent.context.$implicit.value.smart.attributes||null!=e.parent.context.$implicit.value.smart&&e.parent.context.$implicit.value.smart.nvmeData))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,10,0,s["ɵnov"](e,11).id,s["ɵnov"](e,11).active,s["ɵnov"](e,11).addClass,s["ɵnov"](e,11).role,s["ɵnov"](e,11).ariaLabelledby)}))}function Xi(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"tab",[],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gi)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["noError",2]],null,0,null,Ui)),(t()(),s["ɵand"](16777216,null,null,3,null,Qi)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](7,2),s["ɵppd"](8,2)],(function(t,e){var n=e.component;t(e,1,0,e.context.$implicit.value.device+" ("+e.context.$implicit.value.identifier+")"),t(e,3,0,e.context.$implicit.value.error,s["ɵnov"](e,4));var a=!s["ɵunv"](e,6,0,t(e,7,0,s["ɵnov"](e.parent.parent.parent.parent,0),e.context.$implicit.value.info,n.isEmpty))||!s["ɵunv"](e,6,0,t(e,8,0,s["ɵnov"](e.parent.parent.parent.parent,0),e.context.$implicit.value.smart,n.isEmpty));t(e,6,0,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function ts(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](2,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵand"](16777216,null,0,2,null,Xi)),s["ɵdid"](4,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers])],(function(t,e){var n=e.component;t(e,4,0,s["ɵunv"](e,4,0,s["ɵnov"](e,5).transform(n.data)))}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).clazz)}))}function es(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,Vi)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](3,2),(t()(),s["ɵand"](16777216,null,null,2,null,ts)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵppd"](6,2),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent,0),n.data,n.isEmpty));t(e,2,0,a);var r=!s["ɵunv"](e,5,0,t(e,6,0,s["ɵnov"](e.parent.parent,0),n.data,n.isEmpty));t(e,5,0,r)}),null)}function ns(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ji)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fi)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,es)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.error),t(e,4,0,n.incompatible),t(e,6,0,!n.error&&!n.incompatible)}),null)}function as(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,Ei.b,Ei.a)),s["ɵdid"](1,49152,null,0,Li.a,[],null,null),(t()(),s["ɵted"](-1,0,["SMART data is loading."]))],null,null)}function rs(t){return s["ɵvid"](0,[s["ɵpid"](0,Di.b,[]),s["ɵqud"](671088640,1,{innerTabset:0}),(t()(),s["ɵand"](16777216,null,null,1,null,ns)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["isLoading",2]],null,0,null,as))],(function(t,e){t(e,3,0,!e.component.loading,s["ɵnov"](e,4))}),null)}class is{constructor(t,e,n,a){this.hostService=t,this.i18n=e,this.datePipe=n,this.osdService=a,this.hostname="",this.osdId=null,this.devices=null,this.columns=[],this.translationMapping={"=1":"# week",other:"# weeks"}}ngOnInit(){this.columns=[{prop:"devid",name:this.i18n("Device ID"),minWidth:200},{prop:"state",name:this.i18n("State of Health"),flexGrow:1,cellTransformation:oi.a.badge,customTemplateConfig:{map:{good:{value:this.i18n("Good"),class:"badge-success"},warning:{value:this.i18n("Warning"),class:"badge-warning"},bad:{value:this.i18n("Bad"),class:"badge-danger"},stale:{value:this.i18n("Stale"),class:"badge-info"},unknown:{value:this.i18n("Unknown"),class:"badge-dark"}}}},{prop:"life_expectancy_weeks",name:this.i18n("Life Expectancy"),cellTemplate:this.lifeExpectancyTemplate},{prop:"life_expectancy_stamp",name:this.i18n("Prediction Creation Date"),cellTemplate:this.lifeExpectancyTimestampTemplate,pipe:this.datePipe,isHidden:!0},{prop:"location",name:this.i18n("Device Name"),cellTemplate:this.locationTemplate},{prop:"readableDaemons",name:this.i18n("Daemons")}]}ngOnChanges(){const t=t=>this.devices=t;this.hostname?this.hostService.getDevices(this.hostname).subscribe(t):null!==this.osdId&&this.osdService.getDevices(this.osdId).subscribe(t)}}var ss=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function us(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table",[],null,null,null,Jr.b,Jr.a)),s["ɵdid"](1,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.devices,n.columns)}),null)}function os(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["Neither hostname nor OSD ID given"]))],(function(t,e){t(e,1,0,"warning")}),null)}function ls(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.$implicit.dev)}))}function ds(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,ls)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.value)}),null)}function cs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["> ",""])),s["ɵppd"](2,2)],null,(function(t,e){var n=e.component,a=s["ɵunv"](e,1,0,t(e,2,0,s["ɵnov"](e.parent.parent,0),e.parent.context.value.min,n.translationMapping));t(e,1,0,a)}))}function fs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["< ",""])),s["ɵppd"](2,2)],null,(function(t,e){var n=e.component,a=s["ɵunv"](e,1,0,t(e,2,0,s["ɵnov"](e.parent.parent,0),e.parent.context.value.max,n.translationMapping));t(e,1,0,a)}))}function hs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[""," to ",""])),s["ɵppd"](2,2)],null,(function(t,e){var n=e.component,a=e.parent.context.value.min,r=s["ɵunv"](e,1,1,t(e,2,0,s["ɵnov"](e.parent.parent,0),e.parent.context.value.max,n.translationMapping));t(e,1,0,a,r)}))}function gs(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,cs)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fs)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,hs)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.value.min&&!e.context.value.max),t(e,3,0,e.context.value.max&&!e.context.value.min),t(e,5,0,e.context.value.max&&e.context.value.min)}),null)}function ps(t){return s["ɵvid"](0,[(t()(),s["ɵted"](0,null,[" ","\n"]))],null,(function(t,e){t(e,0,0,e.context.value)}))}function bs(t){return s["ɵvid"](0,[s["ɵpid"](0,i.I18nPluralPipe,[i.NgLocalization]),s["ɵqud"](402653184,1,{locationTemplate:0}),s["ɵqud"](402653184,2,{lifeExpectancyTemplate:0}),s["ɵqud"](402653184,3,{lifeExpectancyTimestampTemplate:0}),(t()(),s["ɵand"](16777216,null,null,1,null,us)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,os)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[1,2],["deviceLocation",2]],null,0,null,ds)),(t()(),s["ɵand"](0,[[2,2],["lifeExpectancy",2]],null,0,null,gs)),(t()(),s["ɵand"](0,[[3,2],["lifeExpectancyTimestamp",2]],null,0,null,ps))],(function(t,e){var n=e.component;t(e,5,0,n.hostname||null!==n.osdId),t(e,7,0,""===n.hostname&&null===n.osdId)}),null)}n("jKX/");class ms{get selectedHostname(){return void 0!==this.selection?this.selection.hostname:null}constructor(){}}var ys=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function vs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Inventory"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-inventory",[],null,null,null,yi,pi)),s["ɵdid"](3,770048,null,0,gi,[si,s.NgZone],{hostname:[0,"hostname"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Inventory"),t(e,3,0,n.selectedHostname)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function xs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Daemons"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-service-daemon-list",[],null,null,null,Ri,Si)),s["ɵdid"](3,4964352,null,0,Oi,[fe.a,wi,_i,si],{hostname:[0,"hostname"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Daemons"),t(e,3,0,n.selectedHostname)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function _s(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","four"],["uid","rtOg0AiWz"]],null,null,null,$r.b,$r.a)),s["ɵdid"](3,638976,null,0,Zr.a,[ve.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Performance Details"),t(e,3,0,"host-details?var-ceph_hosts="+n.selectedHostname,"four","rtOg0AiWz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function Ts(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-smart-list",[],null,null,null,rs,qi)),s["ɵdid"](1,638976,null,0,Mi,[fe.a,Pi,wi],{hostname:[0,"hostname"]},null)],(function(t,e){t(e,1,0,e.component.selectedHostname)}),null)}function ws(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,15,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,[[1,4]],0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Devices"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-device-list",[],null,null,null,bs,ss)),s["ɵdid"](5,638976,null,0,is,[wi,fe.a,i.DatePipe,Pi],{hostname:[0,"hostname"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,vs)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,xs)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,_s)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](12,0,null,0,3,"tab",[["heading","Device health"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](13,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ts)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Devices"),t(e,5,0,n.selection.hostname),t(e,7,0,n.permissions.hosts.read),t(e,9,0,n.permissions.hosts.read),t(e,11,0,n.permissions.grafana.read),t(e,13,0,"Device health"),t(e,15,0,n.selectedHostname,s["ɵnov"](e.parent,3))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,12,0,s["ɵnov"](e,13).id,s["ɵnov"](e,13).active,s["ɵnov"](e,13).addClass,s["ɵnov"](e,13).role,s["ɵnov"](e,13).ariaLabelledby)}))}function Os(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["No hostname found."]))],(function(t,e){t(e,1,0,"error")}),null)}function Ss(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{tabsetChild:0}),(t()(),s["ɵand"](16777216,null,null,1,null,ws)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[["noHostname",2]],null,0,null,Os))],(function(t,e){t(e,2,0,e.component.selection)}),null)}var Is=n("EgGo"),Ns=n("+fVR"),Cs=n("0+/T"),Rs=n("DNAf"),As=n("kvvV"),ks=n("85J/");class Es{constructor(t){this.bsModalRef=t}ngOnInit(){}onSubmit(){this.bsModalRef.hide()}}let Ls=(()=>{class t{constructor(t,e){this.orchService=t,this.modalService=e}checkOrchestratorOrModal(t,e,n){this.orchService.status().subscribe(a=>{a.available?n():this.modalService.show(Es,{initialState:{actionDescription:t,itemDescription:e}})})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](si),s["ɵɵinject"](Ct.b))},token:t,providedIn:"root"}),t})();var Ds=n("kn/O");const Ps=new Is.a("hosts");class Ms extends Ns.a{constructor(t,e,n,a,r,i,s,u,o,l,d){super(),this.authStorageService=t,this.hostService=e,this.cephShortVersionPipe=n,this.i18n=a,this.urlBuilder=r,this.actionLabels=i,this.modalService=s,this.taskWrapper=u,this.router=o,this.depCheckerService=l,this.notificationService=d,this.columns=[],this.hosts=[],this.isLoadingHosts=!1,this.cdParams={fromLink:"/hosts"},this.selection=new li.a,this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{name:this.actionLabels.CREATE,permission:"create",icon:pt.a.add,click:()=>{this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.CREATE,this.i18n("Host"),()=>{this.router.navigate([this.urlBuilder.getCreate()])})}},{name:this.actionLabels.EDIT,permission:"update",icon:pt.a.edit,click:()=>{this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.EDIT,this.i18n("Host"),()=>this.editAction())},disable:this.getEditDisableDesc.bind(this)},{name:this.actionLabels.DELETE,permission:"delete",icon:pt.a.destroy,click:()=>{this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.DELETE,this.i18n("Host"),()=>this.deleteAction())},disable:this.getDeleteDisableDesc.bind(this)}]}ngOnInit(){this.columns=[{name:this.i18n("Hostname"),prop:"hostname",flexGrow:1},{name:this.i18n("Services"),prop:"services",flexGrow:3,cellTemplate:this.servicesTpl},{name:this.i18n("Labels"),prop:"labels",flexGrow:1,cellTransformation:oi.a.badge,customTemplateConfig:{class:"badge-dark"}},{name:this.i18n("Version"),prop:"ceph_version",flexGrow:1,pipe:this.cephShortVersionPipe}]}updateSelection(t){this.selection=t}editAction(){this.hostService.getLabels().subscribe(t=>{const e=this.selection.first(),n=t.map(t=>({enabled:!0,name:t}));this.modalService.show(ui.a,{initialState:{titleText:this.i18n("Edit Host: {{hostname}}",e),fields:[{type:"select-badges",name:"labels",value:e.labels,label:this.i18n("Labels"),typeConfig:{customBadges:!0,options:n,messages:new Rs.a({empty:this.i18n("There are no labels."),filter:this.i18n("Filter or add labels"),add:this.i18n("Add label")},this.i18n)}}],submitButtonText:this.i18n("Edit Host"),onSubmit:t=>{this.hostService.update(e.hostname,t.labels).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Updated Host "{{hostname}}"',e)),this.table.refreshBtn()})}}})})}getEditDisableDesc(t){return!t||!t.hasSingleSelection||!t.first().sources.orchestrator&&this.i18n("Host editing is disabled because the selected host is not managed by Orchestrator.")}deleteAction(){const t=this.selection.first().hostname;this.modalRef=this.modalService.show(Cs.a,{initialState:{itemDescription:"Host",itemNames:[t],actionDescription:"delete",submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new As.a("host/delete",{hostname:t}),call:this.hostService.delete(t)})}})}getDeleteDisableDesc(t){return!t||!t.hasSelection||!t.selected.every(t=>t.sources.orchestrator)&&this.i18n("Host deletion is disabled because a selected host is not managed by Orchestrator.")}getHosts(t){if(this.isLoadingHosts)return;const e={mds:"cephfs",mon:"monitor",osd:"osd",rgw:"rgw","rbd-mirror":"rbdMirroring",mgr:"manager","tcmu-runner":"iscsi"};this.isLoadingHosts=!0,this.hostService.list().subscribe(t=>{t.map(t=>(t.services.map(t=>{t.cdLink=`/perf_counters/${t.type}/${encodeURIComponent(t.id)}`;const n=this.permissions[e[t.type]];return t.canRead=!!n&&n.read,t}),t)),this.hosts=t,this.isLoadingHosts=!1},()=>{this.isLoadingHosts=!1,t.error()})}}var qs=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function js(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"a",[["class","service-link"]],[[1,"target",0],[8,"href",4]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,1).onClick(n.button,n.ctrlKey,n.metaKey,n.shiftKey)&&a),a}),null,null)),s["ɵdid"](1,671744,null,0,Et.p,[Et.m,Et.a,i.LocationStrategy],{queryParams:[0,"queryParams"],routerLink:[1,"routerLink"]},null),s["ɵpad"](2,1),(t()(),s["ɵted"](3,null,["",".",""]))],(function(t,e){var n=e.component.cdParams,a=t(e,2,0,e.parent.context.$implicit.cdLink);t(e,1,0,n,a)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).target,s["ɵnov"](e,1).href),t(e,3,0,e.parent.context.$implicit.type,e.parent.context.$implicit.id)}))}function Fs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ","."," "]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.type,e.parent.context.$implicit.id)}))}function Vs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[", "]))],null,null)}function Gs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,js)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fs)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vs)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit.canRead),t(e,4,0,!e.context.$implicit.canRead),t(e,6,0,!e.context.last)}),null)}function Bs(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Gs)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.value)}),null)}function zs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","two"],["uid","y0KGL0iZz"]],null,null,null,$r.b,$r.a)),s["ɵdid"](3,638976,null,0,Zr.a,[ve.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){t(e,1,0,"Overall Performance"),t(e,3,0,"host-overview?","two","y0KGL0iZz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function Ys(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{table:0}),s["ɵqud"](402653184,2,{servicesTpl:0}),(t()(),s["ɵeld"](2,0,null,null,13,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](3,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](4,0,null,0,9,"tab",[["heading","Hosts List"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](5,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](6,0,null,null,7,"cd-table",[["columnMode","flex"],["selectionType","single"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.getHosts(n)&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](7,2867200,[[1,4]],0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],selectionType:[4,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](8,0,null,1,2,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,"cd-table-actions",[["class","btn-group"],["id","host-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](10,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵand"](0,[[2,2],["servicesTpl",2]],null,0,null,Bs)),(t()(),s["ɵeld"](12,0,null,3,1,"cd-host-details",[["cdTableDetail",""]],null,null,null,Ss,ys)),s["ɵdid"](13,49152,null,0,ms,[],{permissions:[0,"permissions"],selection:[1,"selection"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,zs)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,5,0,"Hosts List"),t(e,7,0,n.hosts,n.columns,"flex",!0,"single"),t(e,10,0,n.permissions.hosts,n.selection,n.tableActions),t(e,13,0,n.permissions,n.expandedRow),t(e,15,0,n.permissions.grafana.read)}),(function(t,e){t(e,2,0,s["ɵnov"](e,3).clazz),t(e,4,0,s["ɵnov"](e,5).id,s["ɵnov"](e,5).active,s["ɵnov"](e,5).addClass,s["ɵnov"](e,5).role,s["ɵnov"](e,5).ariaLabelledby)}))}function Hs(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-hosts",[],null,null,null,Ys,qs)),s["ɵprd"](256,null,Is.a,Ps,[]),s["ɵdid"](2,114688,null,0,Ms,[J.a,wi,ks.a,fe.a,Is.a,St.b,Ct.b,Ds.a,Et.m,Ls,bt.a],null,null)],(function(t,e){t(e,2,0)}),null)}var Us=s["ɵccf"]("cd-hosts",Ms,Hs,{},{},[]),Ws=n("mXUL"),Ks=n("IZUe"),$s=n("gp3X"),Zs=n("sb0X"),Js=n("KVJa"),Qs=n("Z21x"),Xs=n("8xTl"),tu=n("QFaf"),eu=n("1Ni5");class nu{constructor(t,e,n,a,r){this.router=t,this.i18n=e,this.actionLabels=n,this.hostService=a,this.taskWrapper=r,this.loading=!0,this.resource=this.i18n("host"),this.action=this.actionLabels.CREATE,this.createForm()}ngOnInit(){this.hostService.list().subscribe(t=>{this.hostnames=t.map(t=>t.hostname),this.loading=!1})}createForm(){this.hostForm=new tu.a({hostname:new K.i("",{validators:[K.B.required,eu.a.custom("uniqueName",t=>this.hostnames&&-1!==this.hostnames.indexOf(t))]})})}submit(){const t=this.hostForm.get("hostname").value;this.taskWrapper.wrapTaskAroundCall({task:new As.a("host/"+St.e.CREATE,{hostname:t}),call:this.hostService.create(t)}).subscribe(void 0,()=>{this.hostForm.setErrors({cdSubmitButton:!0})},()=>{this.router.navigate(["/hosts"])})}}var au=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ru(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,Ei.b,Ei.a)),s["ɵdid"](1,49152,null,0,Li.a,[],null,null),(t()(),s["ɵted"](-1,0,["Loading..."]))],null,null)}function iu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function su(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The chosen hostname is already in use."]))],null,null)}function uu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,40,"form",[["name","hostForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,2).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,2).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,5).onSubmit()&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.G,[],null,null),s["ɵdid"](2,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](4,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](5,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](6,0,null,null,34,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](8,null,[""," ",""])),s["ɵppd"](9,1),s["ɵppd"](10,1),(t()(),s["ɵeld"](11,0,null,null,20,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](13,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","hostname"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Hostname"])),(t()(),s["ɵeld"](18,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,8,"input",[["autofocus",""],["class","form-control"],["formControlName","hostname"],["id","hostname"],["name","hostname"],["placeholder","mon-123"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,22)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,22).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,22)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,22)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](20,4210688,null,0,Ks.a,[s.ElementRef],{autofocus:[0,"autofocus"]},null),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](24,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](26,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,iu)),s["ɵdid"](29,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,su)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](32,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](33,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](34,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submit()&&a),a}),$s.b,$s.a)),s["ɵdid"](35,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](36,0,[""," ",""])),s["ɵppd"](37,1),s["ɵppd"](38,1),(t()(),s["ɵeld"](39,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](40,49152,null,0,Qs.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,2,0,n.hostForm),t(e,5,0,n.hostForm),t(e,13,0),t(e,20,0,""),t(e,24,0,"hostname"),t(e,27,0,"hostname"),t(e,29,0,n.hostForm.showError("hostname",s["ɵnov"](e,2),"required")),t(e,31,0,n.hostForm.showError("hostname",s["ɵnov"](e,2),"uniqueName")),t(e,35,0,s["ɵnov"](e,2))}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,4).ngClassUntouched,s["ɵnov"](e,4).ngClassTouched,s["ɵnov"](e,4).ngClassPristine,s["ɵnov"](e,4).ngClassDirty,s["ɵnov"](e,4).ngClassValid,s["ɵnov"](e,4).ngClassInvalid,s["ɵnov"](e,4).ngClassPending);var a=s["ɵunv"](e,8,0,t(e,9,0,s["ɵnov"](e.parent,0),n.action)),r=s["ɵunv"](e,8,1,t(e,10,0,s["ɵnov"](e.parent,1),n.resource));t(e,8,0,a,r),t(e,12,0,s["ɵnov"](e,13).hasErrors,s["ɵnov"](e,13).hasSuccess),t(e,19,0,s["ɵnov"](e,26).ngClassUntouched,s["ɵnov"](e,26).ngClassTouched,s["ɵnov"](e,26).ngClassPristine,s["ɵnov"](e,26).ngClassDirty,s["ɵnov"](e,26).ngClassValid,s["ɵnov"](e,26).ngClassInvalid,s["ɵnov"](e,26).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass);var i=s["ɵunv"](e,36,0,t(e,37,0,s["ɵnov"](e.parent,0),n.action)),u=s["ɵunv"](e,36,1,t(e,38,0,s["ɵnov"](e.parent,1),n.resource));t(e,36,0,i,u)}))}function ou(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Xs.a,[]),(t()(),s["ɵand"](16777216,null,null,1,null,ru)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](4,0,null,null,2,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,uu)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.loading),t(e,6,0,!n.loading)}),null)}function lu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-host-form",[],null,null,null,ou,au)),s["ɵdid"](1,114688,null,0,nu,[Et.m,fe.a,St.b,wi,Ds.a],null,null)],(function(t,e){t(e,1,0)}),null)}var du=s["ɵccf"]("cd-host-form",nu,lu,{},{},[]);let cu=(()=>{class t{constructor(t){this.http=t}getMonitor(){return this.http.get("api/monitor")}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();class fu{constructor(t,e){this.monitorService=t,this.i18n=e,this.inQuorum={columns:[{prop:"name",name:this.i18n("Name"),cellTransformation:oi.a.routerLink},{prop:"rank",name:this.i18n("Rank")},{prop:"public_addr",name:this.i18n("Public Address")},{prop:"cdOpenSessions",name:this.i18n("Open Sessions"),cellTransformation:oi.a.sparkline,comparator:(t,e)=>{const n=X.last(t),a=X.last(e);return n&&a&&n!==a?n>a?1:-1:0}}]},this.notInQuorum={columns:[{prop:"name",name:this.i18n("Name"),cellTransformation:oi.a.routerLink},{prop:"rank",name:this.i18n("Rank")},{prop:"public_addr",name:this.i18n("Public Address")}]}}refresh(){this.monitorService.getMonitor().subscribe(t=>{t.in_quorum.map(t=>(t.cdOpenSessions=t.stats.num_sessions.map(t=>t[1]),t.cdLink="/perf_counters/mon/"+t.name,t.cdParams={fromLink:"/monitor"},t)),t.out_quorum.map(t=>(t.cdLink="/perf_counters/mon/"+t.name,t.cdParams={fromLink:"/monitor"},t)),this.inQuorum.data=[...t.in_quorum],this.notInQuorum.data=[...t.out_quorum],this.mon_status=t.mon_status})}}var hu=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function gu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,35,"table",[["class","table table-striped"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster ID"])),(t()(),s["ɵeld"](4,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](5,null,["",""])),(t()(),s["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["monmap modified"])),(t()(),s["ɵeld"](9,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](10,null,["",""])),(t()(),s["ɵeld"](11,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["monmap epoch"])),(t()(),s["ɵeld"](14,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](15,null,["",""])),(t()(),s["ɵeld"](16,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["quorum con"])),(t()(),s["ɵeld"](19,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](20,null,["",""])),(t()(),s["ɵeld"](21,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["quorum mon"])),(t()(),s["ɵeld"](24,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](25,null,["",""])),(t()(),s["ɵeld"](26,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](27,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["required con"])),(t()(),s["ɵeld"](29,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](30,null,["",""])),(t()(),s["ɵeld"](31,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](32,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["required mon"])),(t()(),s["ɵeld"](34,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](35,null,["",""]))],null,(function(t,e){var n=e.component;t(e,5,0,n.mon_status.monmap.fsid),t(e,10,0,n.mon_status.monmap.modified),t(e,15,0,n.mon_status.monmap.epoch),t(e,20,0,n.mon_status.features.quorum_con),t(e,25,0,n.mon_status.features.quorum_mon),t(e,30,0,n.mon_status.features.required_con),t(e,35,0,n.mon_status.features.required_mon)}))}function pu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,15,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,"div",[["class","col-lg-4"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,4,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"legend",[["class","cd-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Status"])),(t()(),s["ɵand"](16777216,null,null,1,null,gu)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](7,0,null,null,8,"div",[["class","col-lg-8"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"legend",[["class","in-quorum cd-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["In Quorum"])),(t()(),s["ɵeld"](10,0,null,null,1,"cd-table",[],null,null,null,Jr.b,Jr.a)),s["ɵdid"](11,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},null),(t()(),s["ɵeld"](12,0,null,null,1,"legend",[["class","in-quorum cd-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Not In Quorum"])),(t()(),s["ɵeld"](14,0,null,null,1,"cd-table",[],null,[[null,"fetchData"]],(function(t,e,n){var a=!0;return"fetchData"===e&&(a=!1!==t.component.refresh()&&a),a}),Jr.b,Jr.a)),s["ɵdid"](15,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"]},{fetchData:"fetchData"})],(function(t,e){var n=e.component;t(e,6,0,n.mon_status),t(e,11,0,n.inQuorum.data,n.inQuorum.columns),t(e,15,0,n.notInQuorum.data,n.notInQuorum.columns)}),null)}function bu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-monitor",[],null,null,null,pu,hu)),s["ɵdid"](1,49152,null,0,fu,[cu,fe.a],null,null)],null,null)}var mu=s["ɵccf"]("cd-monitor",fu,bu,{},{},[]);class yu{constructor(){}ngOnInit(){}}var vu=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function xu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,[[1,4]],0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Daemons"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-service-daemon-list",[],null,null,null,Ri,Si)),s["ɵdid"](5,4964352,null,0,Oi,[fe.a,wi,_i,si],{serviceName:[0,"serviceName"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Daemons"),t(e,5,0,n.selection.service_name)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby)}))}function _u(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{tabsetChild:0}),(t()(),s["ɵand"](16777216,null,null,1,null,xu)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,e.component.selection)}),null)}var Tu=n("nYR2");class wu{constructor(t){this.i18n=t}transform(t){if(X.isUndefined(t))return this.i18n("no spec");if(X.get(t,"unmanaged",!1))return this.i18n("unmanaged");const e=[],n=X.get(t,"placement.hosts"),a=X.get(t,"placement.count"),r=X.get(t,"placement.label"),i=X.get(t,"placement.host_pattern");return X.isArray(n)&&e.push(...n),X.isNumber(a)&&e.push(this.i18n("count:{{count}}",{count:a})),X.isString(r)&&e.push(this.i18n("label:{{label}}",{label:r})),X.isString(i)&&e.push(i),e.join(";")}}const Ou=new Is.a("services");class Su extends Ns.a{constructor(t,e,n,a,r,i,s,u){super(),this.actionLabels=t,this.authStorageService=e,this.i18n=n,this.bsModalService=a,this.orchService=r,this.cephServiceService=i,this.taskWrapperService=s,this.urlBuilder=u,this.hiddenColumns=[],this.showDocPanel=!1,this.checkingOrchestrator=!0,this.hasOrchestrator=!1,this.columns=[],this.services=[],this.isLoadingServices=!1,this.selection=new li.a,this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{permission:"create",icon:pt.a.add,routerLink:()=>this.urlBuilder.getCreate(),name:this.actionLabels.CREATE,canBePrimary:t=>!t.hasSelection},{permission:"delete",icon:pt.a.destroy,click:()=>this.deleteAction(),disable:()=>!this.selection.hasSingleSelection,name:this.actionLabels.DELETE}]}ngOnInit(){const t=[{name:this.i18n("Service"),prop:"service_name",flexGrow:1},{name:this.i18n("Container image name"),prop:"status.container_image_name",flexGrow:3},{name:this.i18n("Container image ID"),prop:"status.container_image_id",flexGrow:1.5,cellTransformation:oi.a.truncate,customTemplateConfig:{length:12}},{name:this.i18n("Placement"),prop:"",pipe:new wu(this.i18n),flexGrow:2},{name:this.i18n("Running"),prop:"status.running",flexGrow:1},{name:this.i18n("Size"),prop:"status.size",flexGrow:1},{name:this.i18n("Last Refreshed"),prop:"status.last_refresh",flexGrow:1}];this.columns=t.filter(t=>!this.hiddenColumns.includes(t.prop)),this.orchService.status().subscribe(t=>{this.hasOrchestrator=t.available,this.showDocPanel=!t.available})}ngOnChanges(){this.hasOrchestrator&&(this.services=[],this.table.reloadData())}getServices(t){this.isLoadingServices||(this.isLoadingServices=!0,this.cephServiceService.list().subscribe(t=>{this.services=t,this.isLoadingServices=!1},()=>{this.isLoadingServices=!1,this.services=[],t.error()}))}updateSelection(t){this.selection=t}deleteAction(){const t=this.selection.first();this.bsModalService.show(Cs.a,{initialState:{itemDescription:this.i18n("Service"),itemNames:[t.service_name],actionDescription:"delete",submitActionObservable:()=>this.taskWrapperService.wrapTaskAroundCall({task:new As.a("service/"+St.e.DELETE,{service_name:t.service_name}),call:this.cephServiceService.delete(t.service_name)}).pipe(Re(2e3),Object(Tu.a)(()=>{this.table.refreshBtn()}))}})}}var Iu=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Nu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,ii,ri)),s["ɵdid"](1,49152,null,0,ai,[],null,null)],null,null)}function Cu(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","service_name"],["selectionType","single"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.getServices(n)&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](2,2867200,[[1,4]],0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],forceIdentifier:[6,"forceIdentifier"],selectionType:[7,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](3,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](4,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](5,0,null,3,1,"cd-service-details",[["cdTableDetail",""]],null,null,null,_u,vu)),s["ɵdid"](6,114688,null,0,yu,[],{permissions:[0,"permissions"],selection:[1,"selection"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.services,n.columns,"flex",!0,5e3,"service_name","true","single"),t(e,4,0,n.permissions.hosts,n.selection,n.tableActions),t(e,6,0,n.permissions,n.expandedRow)}),null)}function Ru(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{table:0}),(t()(),s["ɵand"](16777216,null,null,1,null,Nu)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cu)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.showDocPanel),t(e,4,0,n.hasOrchestrator)}),null)}function Au(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-services",[],null,null,null,Ru,Iu)),s["ɵprd"](256,null,Is.a,Ou,[]),s["ɵdid"](2,638976,null,0,Su,[St.b,J.a,fe.a,Ct.b,si,_i,Ds.a,Is.a],null,null)],(function(t,e){t(e,2,0)}),null)}var ku=s["ɵccf"]("cd-services",Su,Au,{hostname:"hostname",hiddenColumns:"hiddenColumns"},{},[]),Eu=n("hpHm");function Lu(t){return!!t&&(t instanceof Zn.a||"function"==typeof t.lift&&"function"==typeof t.subscribe)}function Du(t,e=Ie.a){return n=>n.lift(new Pu(t,e))}class Pu{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new Mu(t,this.dueTime,this.scheduler))}}class Mu extends Ne.a{constructor(t,e,n){super(t),this.dueTime=e,this.scheduler=n,this.debouncedSubscription=null,this.lastValue=null,this.hasValue=!1}_next(t){this.clearDebounce(),this.lastValue=t,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(qu,this.dueTime,this))}_complete(){this.debouncedNext(),this.destination.complete()}debouncedNext(){if(this.clearDebounce(),this.hasValue){const{lastValue:t}=this;this.lastValue=null,this.hasValue=!1,this.destination.next(t)}}clearDebounce(){const t=this.debouncedSubscription;null!==t&&(this.remove(t),t.unsubscribe(),this.debouncedSubscription=null)}}function qu(t){t.debouncedNext()}var ju=n("eIep");const Fu={"Á":"A","Ă":"A","Ắ":"A","Ặ":"A","Ằ":"A","Ẳ":"A","Ẵ":"A","Ǎ":"A","Â":"A","Ấ":"A","Ậ":"A","Ầ":"A","Ẩ":"A","Ẫ":"A","Ä":"A","Ǟ":"A","Ȧ":"A","Ǡ":"A","Ạ":"A","Ȁ":"A","À":"A","Ả":"A","Ȃ":"A","Ā":"A","Ą":"A","Å":"A","Ǻ":"A","Ḁ":"A","Ⱥ":"A","Ã":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ḃ":"B","Ḅ":"B","Ɓ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ć":"C","Č":"C","Ç":"C","Ḉ":"C","Ĉ":"C","Ċ":"C","Ƈ":"C","Ȼ":"C","Ď":"D","Ḑ":"D","Ḓ":"D","Ḋ":"D","Ḍ":"D","Ɗ":"D","Ḏ":"D","Dz":"D","Dž":"D","Đ":"D","Ƌ":"D","DZ":"DZ","DŽ":"DZ","É":"E","Ĕ":"E","Ě":"E","Ȩ":"E","Ḝ":"E","Ê":"E","Ế":"E","Ệ":"E","Ề":"E","Ể":"E","Ễ":"E","Ḙ":"E","Ë":"E","Ė":"E","Ẹ":"E","Ȅ":"E","È":"E","Ẻ":"E","Ȇ":"E","Ē":"E","Ḗ":"E","Ḕ":"E","Ę":"E","Ɇ":"E","Ẽ":"E","Ḛ":"E","Ꝫ":"ET","Ḟ":"F","Ƒ":"F","Ǵ":"G","Ğ":"G","Ǧ":"G","Ģ":"G","Ĝ":"G","Ġ":"G","Ɠ":"G","Ḡ":"G","Ǥ":"G","Ḫ":"H","Ȟ":"H","Ḩ":"H","Ĥ":"H","Ⱨ":"H","Ḧ":"H","Ḣ":"H","Ḥ":"H","Ħ":"H","Í":"I","Ĭ":"I","Ǐ":"I","Î":"I","Ï":"I","Ḯ":"I","İ":"I","Ị":"I","Ȉ":"I","Ì":"I","Ỉ":"I","Ȋ":"I","Ī":"I","Į":"I","Ɨ":"I","Ĩ":"I","Ḭ":"I","Ꝺ":"D","Ꝼ":"F","Ᵹ":"G","Ꞃ":"R","Ꞅ":"S","Ꞇ":"T","Ꝭ":"IS","Ĵ":"J","Ɉ":"J","Ḱ":"K","Ǩ":"K","Ķ":"K","Ⱪ":"K","Ꝃ":"K","Ḳ":"K","Ƙ":"K","Ḵ":"K","Ꝁ":"K","Ꝅ":"K","Ĺ":"L","Ƚ":"L","Ľ":"L","Ļ":"L","Ḽ":"L","Ḷ":"L","Ḹ":"L","Ⱡ":"L","Ꝉ":"L","Ḻ":"L","Ŀ":"L","Ɫ":"L","Lj":"L","Ł":"L","LJ":"LJ","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ń":"N","Ň":"N","Ņ":"N","Ṋ":"N","Ṅ":"N","Ṇ":"N","Ǹ":"N","Ɲ":"N","Ṉ":"N","Ƞ":"N","Nj":"N","Ñ":"N","NJ":"NJ","Ó":"O","Ŏ":"O","Ǒ":"O","Ô":"O","Ố":"O","Ộ":"O","Ồ":"O","Ổ":"O","Ỗ":"O","Ö":"O","Ȫ":"O","Ȯ":"O","Ȱ":"O","Ọ":"O","Ő":"O","Ȍ":"O","Ò":"O","Ỏ":"O","Ơ":"O","Ớ":"O","Ợ":"O","Ờ":"O","Ở":"O","Ỡ":"O","Ȏ":"O","Ꝋ":"O","Ꝍ":"O","Ō":"O","Ṓ":"O","Ṑ":"O","Ɵ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Õ":"O","Ṍ":"O","Ṏ":"O","Ȭ":"O","Ƣ":"OI","Ꝏ":"OO","Ɛ":"E","Ɔ":"O","Ȣ":"OU","Ṕ":"P","Ṗ":"P","Ꝓ":"P","Ƥ":"P","Ꝕ":"P","Ᵽ":"P","Ꝑ":"P","Ꝙ":"Q","Ꝗ":"Q","Ŕ":"R","Ř":"R","Ŗ":"R","Ṙ":"R","Ṛ":"R","Ṝ":"R","Ȑ":"R","Ȓ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꜿ":"C","Ǝ":"E","Ś":"S","Ṥ":"S","Š":"S","Ṧ":"S","Ş":"S","Ŝ":"S","Ș":"S","Ṡ":"S","Ṣ":"S","Ṩ":"S","Ť":"T","Ţ":"T","Ṱ":"T","Ț":"T","Ⱦ":"T","Ṫ":"T","Ṭ":"T","Ƭ":"T","Ṯ":"T","Ʈ":"T","Ŧ":"T","Ɐ":"A","Ꞁ":"L","Ɯ":"M","Ʌ":"V","Ꜩ":"TZ","Ú":"U","Ŭ":"U","Ǔ":"U","Û":"U","Ṷ":"U","Ü":"U","Ǘ":"U","Ǚ":"U","Ǜ":"U","Ǖ":"U","Ṳ":"U","Ụ":"U","Ű":"U","Ȕ":"U","Ù":"U","Ủ":"U","Ư":"U","Ứ":"U","Ự":"U","Ừ":"U","Ử":"U","Ữ":"U","Ȗ":"U","Ū":"U","Ṻ":"U","Ų":"U","Ů":"U","Ũ":"U","Ṹ":"U","Ṵ":"U","Ꝟ":"V","Ṿ":"V","Ʋ":"V","Ṽ":"V","Ꝡ":"VY","Ẃ":"W","Ŵ":"W","Ẅ":"W","Ẇ":"W","Ẉ":"W","Ẁ":"W","Ⱳ":"W","Ẍ":"X","Ẋ":"X","Ý":"Y","Ŷ":"Y","Ÿ":"Y","Ẏ":"Y","Ỵ":"Y","Ỳ":"Y","Ƴ":"Y","Ỷ":"Y","Ỿ":"Y","Ȳ":"Y","Ɏ":"Y","Ỹ":"Y","Ź":"Z","Ž":"Z","Ẑ":"Z","Ⱬ":"Z","Ż":"Z","Ẓ":"Z","Ȥ":"Z","Ẕ":"Z","Ƶ":"Z","IJ":"IJ","Œ":"OE","ᴀ":"A","ᴁ":"AE","ʙ":"B","ᴃ":"B","ᴄ":"C","ᴅ":"D","ᴇ":"E","ꜰ":"F","ɢ":"G","ʛ":"G","ʜ":"H","ɪ":"I","ʁ":"R","ᴊ":"J","ᴋ":"K","ʟ":"L","ᴌ":"L","ᴍ":"M","ɴ":"N","ᴏ":"O","ɶ":"OE","ᴐ":"O","ᴕ":"OU","ᴘ":"P","ʀ":"R","ᴎ":"N","ᴙ":"R","ꜱ":"S","ᴛ":"T","ⱻ":"E","ᴚ":"R","ᴜ":"U","ᴠ":"V","ᴡ":"W","ʏ":"Y","ᴢ":"Z","á":"a","ă":"a","ắ":"a","ặ":"a","ằ":"a","ẳ":"a","ẵ":"a","ǎ":"a","â":"a","ấ":"a","ậ":"a","ầ":"a","ẩ":"a","ẫ":"a","ä":"a","ǟ":"a","ȧ":"a","ǡ":"a","ạ":"a","ȁ":"a","à":"a","ả":"a","ȃ":"a","ā":"a","ą":"a","ᶏ":"a","ẚ":"a","å":"a","ǻ":"a","ḁ":"a","ⱥ":"a","ã":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ḃ":"b","ḅ":"b","ɓ":"b","ḇ":"b","ᵬ":"b","ᶀ":"b","ƀ":"b","ƃ":"b","ɵ":"o","ć":"c","č":"c","ç":"c","ḉ":"c","ĉ":"c","ɕ":"c","ċ":"c","ƈ":"c","ȼ":"c","ď":"d","ḑ":"d","ḓ":"d","ȡ":"d","ḋ":"d","ḍ":"d","ɗ":"d","ᶑ":"d","ḏ":"d","ᵭ":"d","ᶁ":"d","đ":"d","ɖ":"d","ƌ":"d","ı":"i","ȷ":"j","ɟ":"j","ʄ":"j","dz":"dz","dž":"dz","é":"e","ĕ":"e","ě":"e","ȩ":"e","ḝ":"e","ê":"e","ế":"e","ệ":"e","ề":"e","ể":"e","ễ":"e","ḙ":"e","ë":"e","ė":"e","ẹ":"e","ȅ":"e","è":"e","ẻ":"e","ȇ":"e","ē":"e","ḗ":"e","ḕ":"e","ⱸ":"e","ę":"e","ᶒ":"e","ɇ":"e","ẽ":"e","ḛ":"e","ꝫ":"et","ḟ":"f","ƒ":"f","ᵮ":"f","ᶂ":"f","ǵ":"g","ğ":"g","ǧ":"g","ģ":"g","ĝ":"g","ġ":"g","ɠ":"g","ḡ":"g","ᶃ":"g","ǥ":"g","ḫ":"h","ȟ":"h","ḩ":"h","ĥ":"h","ⱨ":"h","ḧ":"h","ḣ":"h","ḥ":"h","ɦ":"h","ẖ":"h","ħ":"h","ƕ":"hv","í":"i","ĭ":"i","ǐ":"i","î":"i","ï":"i","ḯ":"i","ị":"i","ȉ":"i","ì":"i","ỉ":"i","ȋ":"i","ī":"i","į":"i","ᶖ":"i","ɨ":"i","ĩ":"i","ḭ":"i","ꝺ":"d","ꝼ":"f","ᵹ":"g","ꞃ":"r","ꞅ":"s","ꞇ":"t","ꝭ":"is","ǰ":"j","ĵ":"j","ʝ":"j","ɉ":"j","ḱ":"k","ǩ":"k","ķ":"k","ⱪ":"k","ꝃ":"k","ḳ":"k","ƙ":"k","ḵ":"k","ᶄ":"k","ꝁ":"k","ꝅ":"k","ĺ":"l","ƚ":"l","ɬ":"l","ľ":"l","ļ":"l","ḽ":"l","ȴ":"l","ḷ":"l","ḹ":"l","ⱡ":"l","ꝉ":"l","ḻ":"l","ŀ":"l","ɫ":"l","ᶅ":"l","ɭ":"l","ł":"l","lj":"lj","ſ":"s","ẜ":"s","ẛ":"s","ẝ":"s","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ᵯ":"m","ᶆ":"m","ń":"n","ň":"n","ņ":"n","ṋ":"n","ȵ":"n","ṅ":"n","ṇ":"n","ǹ":"n","ɲ":"n","ṉ":"n","ƞ":"n","ᵰ":"n","ᶇ":"n","ɳ":"n","ñ":"n","nj":"nj","ó":"o","ŏ":"o","ǒ":"o","ô":"o","ố":"o","ộ":"o","ồ":"o","ổ":"o","ỗ":"o","ö":"o","ȫ":"o","ȯ":"o","ȱ":"o","ọ":"o","ő":"o","ȍ":"o","ò":"o","ỏ":"o","ơ":"o","ớ":"o","ợ":"o","ờ":"o","ở":"o","ỡ":"o","ȏ":"o","ꝋ":"o","ꝍ":"o","ⱺ":"o","ō":"o","ṓ":"o","ṑ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","õ":"o","ṍ":"o","ṏ":"o","ȭ":"o","ƣ":"oi","ꝏ":"oo","ɛ":"e","ᶓ":"e","ɔ":"o","ᶗ":"o","ȣ":"ou","ṕ":"p","ṗ":"p","ꝓ":"p","ƥ":"p","ᵱ":"p","ᶈ":"p","ꝕ":"p","ᵽ":"p","ꝑ":"p","ꝙ":"q","ʠ":"q","ɋ":"q","ꝗ":"q","ŕ":"r","ř":"r","ŗ":"r","ṙ":"r","ṛ":"r","ṝ":"r","ȑ":"r","ɾ":"r","ᵳ":"r","ȓ":"r","ṟ":"r","ɼ":"r","ᵲ":"r","ᶉ":"r","ɍ":"r","ɽ":"r","ↄ":"c","ꜿ":"c","ɘ":"e","ɿ":"r","ś":"s","ṥ":"s","š":"s","ṧ":"s","ş":"s","ŝ":"s","ș":"s","ṡ":"s","ṣ":"s","ṩ":"s","ʂ":"s","ᵴ":"s","ᶊ":"s","ȿ":"s","ɡ":"g","ᴑ":"o","ᴓ":"o","ᴝ":"u","ť":"t","ţ":"t","ṱ":"t","ț":"t","ȶ":"t","ẗ":"t","ⱦ":"t","ṫ":"t","ṭ":"t","ƭ":"t","ṯ":"t","ᵵ":"t","ƫ":"t","ʈ":"t","ŧ":"t","ᵺ":"th","ɐ":"a","ᴂ":"ae","ǝ":"e","ᵷ":"g","ɥ":"h","ʮ":"h","ʯ":"h","ᴉ":"i","ʞ":"k","ꞁ":"l","ɯ":"m","ɰ":"m","ᴔ":"oe","ɹ":"r","ɻ":"r","ɺ":"r","ⱹ":"r","ʇ":"t","ʌ":"v","ʍ":"w","ʎ":"y","ꜩ":"tz","ú":"u","ŭ":"u","ǔ":"u","û":"u","ṷ":"u","ü":"u","ǘ":"u","ǚ":"u","ǜ":"u","ǖ":"u","ṳ":"u","ụ":"u","ű":"u","ȕ":"u","ù":"u","ủ":"u","ư":"u","ứ":"u","ự":"u","ừ":"u","ử":"u","ữ":"u","ȗ":"u","ū":"u","ṻ":"u","ų":"u","ᶙ":"u","ů":"u","ũ":"u","ṹ":"u","ṵ":"u","ᵫ":"ue","ꝸ":"um","ⱴ":"v","ꝟ":"v","ṿ":"v","ʋ":"v","ᶌ":"v","ⱱ":"v","ṽ":"v","ꝡ":"vy","ẃ":"w","ŵ":"w","ẅ":"w","ẇ":"w","ẉ":"w","ẁ":"w","ⱳ":"w","ẘ":"w","ẍ":"x","ẋ":"x","ᶍ":"x","ý":"y","ŷ":"y","ÿ":"y","ẏ":"y","ỵ":"y","ỳ":"y","ƴ":"y","ỷ":"y","ỿ":"y","ȳ":"y","ẙ":"y","ɏ":"y","ỹ":"y","ź":"z","ž":"z","ẑ":"z","ʑ":"z","ⱬ":"z","ż":"z","ẓ":"z","ȥ":"z","ẕ":"z","ᵶ":"z","ᶎ":"z","ʐ":"z","ƶ":"z","ɀ":"z","ff":"ff","ffi":"ffi","ffl":"ffl","fi":"fi","fl":"fl","ij":"ij","œ":"oe","st":"st","ₐ":"a","ₑ":"e","ᵢ":"i","ⱼ":"j","ₒ":"o","ᵣ":"r","ᵤ":"u","ᵥ":"v","ₓ":"x"};class Vu{constructor(t,e=t,n=!1){this.item=t,this.value=e,this.header=n}isHeader(){return this.header}toString(){return this.value}}function Gu(t){return t?t.replace(/[^A-Za-z0-9\[\] ]/g,(function(t){return Fu[t]||t})):""}function Bu(t,e=" ",n=""){const a=t.split(new RegExp(`(?:[${n}])([^${n}]+)(?:[${n}])|([^${e}]+)`,"g")),r=[],i=a.length;let s;const u=new RegExp(`[${n}]+`,"g");for(let o=0;o<i;o+=1)s=a[o],s&&s.length&&s!==e&&r.push(s.replace(u,""));return r}function zu(t,e){if(!e||"object"!=typeof t)return t.toString();if(e.endsWith("()"))return t[e.slice(0,e.length-2)]().toString();const n=e.replace(/\[(\w+)\]/g,".$1").replace(/^\./,"").split(".");for(const a of n)a in t&&(t=t[a]);return t?t.toString():""}class Yu{constructor(t,e,n,a){this.positionService=t,this.renderer=e,this.element=n,this.changeDetectorRef=a,this.isFocused=!1,this.height=0,this._matches=[],this.isScrolledIntoView=function(t){const e=this.ulElement.nativeElement.scrollTop,n=e+Number(this.ulElement.nativeElement.offsetHeight),a=t.offsetTop;return a+t.offsetHeight<=n&&a>=e},this.positionServiceSubscription=this.positionService.event$.subscribe(()=>{if(this.isAnimated)return this.animationState=this.isTopPosition?"animated-up":"animated-down",void this.changeDetectorRef.detectChanges();this.animationState="unanimated",this.changeDetectorRef.detectChanges()})}get isBs4(){return!Object(Eu.d)()}get active(){return this._active}get matches(){return this._matches}set matches(t){if(this.positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition}},allowedPositions:["top","bottom"]}),this._matches=t,this.needScrollbar=this.typeaheadScrollable&&this.typeaheadOptionsInScrollableView<this.matches.length,this.typeaheadScrollable&&setTimeout(()=>{this.setScrollableMode()}),this.typeaheadIsFirstItemActive&&this._matches.length>0&&(this._active=this._matches[0],this._active.isHeader()&&this.nextActiveMatch()),this._active&&!this.typeaheadIsFirstItemActive){const t=this._matches.find(t=>t.value===this._active.value);if(t)return void this.selectActive(t);this._active=null}}get isTopPosition(){return this.element.nativeElement.classList.contains("top")}get optionsListTemplate(){return this.parent?this.parent.optionsListTemplate:void 0}get isAnimated(){return!!this.parent&&this.parent.isAnimated}get adaptivePosition(){return!!this.parent&&this.parent.adaptivePosition}get typeaheadScrollable(){return!!this.parent&&this.parent.typeaheadScrollable}get typeaheadOptionsInScrollableView(){return this.parent?this.parent.typeaheadOptionsInScrollableView:5}get typeaheadIsFirstItemActive(){return!this.parent||this.parent.typeaheadIsFirstItemActive}get itemTemplate(){return this.parent?this.parent.typeaheadItemTemplate:void 0}selectActiveMatch(t){this._active&&this.parent.typeaheadSelectFirstItem&&this.selectMatch(this._active),!this.parent.typeaheadSelectFirstItem&&t&&this.selectMatch(this._active)}prevActiveMatch(){const t=this.matches.indexOf(this._active);this._active=this.matches[t-1<0?this.matches.length-1:t-1],this._active.isHeader()&&this.prevActiveMatch(),this.typeaheadScrollable&&this.scrollPrevious(t)}nextActiveMatch(){const t=this.matches.indexOf(this._active);this._active=this.matches[t+1>this.matches.length-1?0:t+1],this._active.isHeader()&&this.nextActiveMatch(),this.typeaheadScrollable&&this.scrollNext(t)}selectActive(t){this.isFocused=!0,this._active=t}highlight(t,e){let n,a,r=t.value,i=(this.parent&&this.parent.typeaheadLatinize?Gu(r):r).toLowerCase();if("object"==typeof e){const t=e.length;for(let s=0;s<t;s+=1)n=i.indexOf(e[s]),a=e[s].length,n>=0&&a>0&&(r=`${r.substring(0,n)}<strong>${r.substring(n,n+a)}</strong>`+r.substring(n+a),i=`${i.substring(0,n)}        ${" ".repeat(a)}         `+i.substring(n+a))}else e&&(n=i.indexOf(e),a=e.length,n>=0&&a>0&&(r=`${r.substring(0,n)}<strong>${r.substring(n,n+a)}</strong>`+r.substring(n+a)));return r}focusLost(){this.isFocused=!1}isActive(t){return this._active===t}selectMatch(t,e){return e&&(e.stopPropagation(),e.preventDefault()),this.parent.changeModel(t),setTimeout(()=>this.parent.typeaheadOnSelect.emit(t),0),!1}setScrollableMode(){if(this.ulElement||(this.ulElement=this.element),this.liElements.first){const t=Eu.b.getStyles(this.ulElement.nativeElement),e=Eu.b.getStyles(this.liElements.first.nativeElement),n=parseFloat((t["padding-bottom"]?t["padding-bottom"]:"").replace("px","")),a=parseFloat((t["padding-top"]?t["padding-top"]:"0").replace("px","")),r=parseFloat((e.height?e.height:"0").replace("px",""));this.guiHeight=this.typeaheadOptionsInScrollableView*r+a+n+"px"}this.renderer.setStyle(this.element.nativeElement,"visibility","visible")}scrollPrevious(t){if(0!==t){if(this.liElements){const e=this.liElements.toArray()[t-1];e&&!this.isScrolledIntoView(e.nativeElement)&&(this.ulElement.nativeElement.scrollTop=e.nativeElement.offsetTop)}}else this.scrollToBottom()}scrollNext(t){if(t+1>this.matches.length-1)this.scrollToTop();else if(this.liElements){const e=this.liElements.toArray()[t+1];e&&!this.isScrolledIntoView(e.nativeElement)&&(this.ulElement.nativeElement.scrollTop=e.nativeElement.offsetTop-Number(this.ulElement.nativeElement.offsetHeight)+Number(e.nativeElement.offsetHeight))}}ngOnDestroy(){this.positionServiceSubscription.unsubscribe()}scrollToBottom(){this.ulElement.nativeElement.scrollTop=this.ulElement.nativeElement.scrollHeight}scrollToTop(){this.ulElement.nativeElement.scrollTop=0}}class Hu{constructor(){this.adaptivePosition=!1,this.isAnimated=!1,this.hideResultsOnBlur=!0,this.selectFirstItem=!0,this.isFirstItemActive=!0,this.minLength=1}}class Uu{constructor(t,e,n,a,r,i,u){this.changeDetection=n,this.element=a,this.ngControl=r,this.renderer=i,this.typeaheadMinLength=void 0,this.isAnimated=!1,this.typeaheadAsync=void 0,this.typeaheadLatinize=!0,this.typeaheadSingleWords=!0,this.typeaheadWordDelimiters=" ",this.typeaheadPhraseDelimiters="'\"",this.typeaheadScrollable=!1,this.typeaheadOptionsInScrollableView=5,this.typeaheadSelectFirstItem=!0,this.typeaheadIsFirstItemActive=!0,this.typeaheadLoading=new s.EventEmitter,this.typeaheadNoResults=new s.EventEmitter,this.typeaheadOnSelect=new s.EventEmitter,this.typeaheadOnBlur=new s.EventEmitter,this.dropup=!1,this.isActiveItemChanged=!1,this.isTypeaheadOptionsListActive=!1,this.keyUpEventEmitter=new s.EventEmitter,this.placement="bottom-left",this._subscriptions=[],this._typeahead=t.createLoader(a,u,i).provide({provide:Hu,useValue:e}),Object.assign(this,{typeaheadHideResultsOnBlur:e.hideResultsOnBlur,typeaheadSelectFirstItem:e.selectFirstItem,typeaheadIsFirstItemActive:e.isFirstItemActive,typeaheadMinLength:e.minLength,adaptivePosition:e.adaptivePosition,isAnimated:e.isAnimated})}ngOnInit(){this.typeaheadOptionsLimit=this.typeaheadOptionsLimit||20,this.typeaheadMinLength=void 0===this.typeaheadMinLength?1:this.typeaheadMinLength,this.typeaheadWaitMs=this.typeaheadWaitMs||0,void 0!==this.typeaheadAsync||Lu(this.typeahead)||(this.typeaheadAsync=!1),Lu(this.typeahead)&&(this.typeaheadAsync=!0),this.typeaheadAsync?this.asyncActions():this.syncActions()}onInput(t){const e=void 0!==t.target.value?t.target.value:void 0!==t.target.textContent?t.target.textContent:t.target.innerText;null!=e&&e.trim().length>=this.typeaheadMinLength?(this.typeaheadLoading.emit(!0),this.keyUpEventEmitter.emit(t.target.value)):(this.typeaheadLoading.emit(!1),this.typeaheadNoResults.emit(!1),this.hide())}onChange(t){if(this._container){if(27===t.keyCode||"Escape"===t.key)return void this.hide();if(38===t.keyCode||"ArrowUp"===t.key)return this.isActiveItemChanged=!0,void this._container.prevActiveMatch();if(40===t.keyCode||"ArrowDown"===t.key)return this.isActiveItemChanged=!0,void this._container.nextActiveMatch();if(13===t.keyCode||"Enter"===t.key)return void this._container.selectActiveMatch()}}onFocus(){0===this.typeaheadMinLength&&(this.typeaheadLoading.emit(!0),this.keyUpEventEmitter.emit(this.element.nativeElement.value||""))}onBlur(){this._container&&!this._container.isFocused&&this.typeaheadOnBlur.emit(this._container.active)}onKeydown(t){if(this._container&&(9===t.keyCode||"Tab"===t.key||13===t.keyCode||"Enter"===t.key)){if(t.preventDefault(),this.typeaheadSelectFirstItem)return void this._container.selectActiveMatch();this.typeaheadSelectFirstItem||(this._container.selectActiveMatch(this.isActiveItemChanged),this.isActiveItemChanged=!1,this.hide())}}changeModel(t){const e=t.value;this.ngControl.viewToModelUpdate(e),this.ngControl.control.setValue(e),this.changeDetection.markForCheck(),this.hide()}get matches(){return this._matches}show(){this._typeahead.attach(Yu).to(this.container).position({attachment:(this.dropup?"top":"bottom")+" start"}).show({typeaheadRef:this,placement:this.placement,animation:!1,dropup:this.dropup}),this._outsideClickListener=this.renderer.listen("document","click",t=>{0===this.typeaheadMinLength&&this.element.nativeElement.contains(t.target)||this.typeaheadHideResultsOnBlur&&!this.element.nativeElement.contains(t.target)&&this.onOutsideClick()}),this._container=this._typeahead.instance,this._container.parent=this;const t=(this.typeaheadLatinize?Gu(this.ngControl.control.value):this.ngControl.control.value).toString().toLowerCase();this._container.query=this.typeaheadSingleWords?Bu(t,this.typeaheadWordDelimiters,this.typeaheadPhraseDelimiters):t,this._container.matches=this._matches,this.element.nativeElement.focus()}hide(){this._typeahead.isShown&&(this._typeahead.hide(),this._outsideClickListener(),this._container=null)}onOutsideClick(){this._container&&!this._container.isFocused&&this.hide()}ngOnDestroy(){for(const t of this._subscriptions)t.unsubscribe();this._typeahead.dispose()}asyncActions(){this._subscriptions.push(this.keyUpEventEmitter.pipe(Du(this.typeaheadWaitMs),Object(ju.a)(t=>this.typeahead.pipe(Object(Qe.a)(e=>{const n=this.normalizeQuery(t);return e.filter(t=>t&&this.testMatch(this.normalizeOption(t),n))})))).subscribe(t=>{this.finalizeAsyncCall(t)}))}syncActions(){this._subscriptions.push(this.keyUpEventEmitter.pipe(Du(this.typeaheadWaitMs),Object(we.a)(t=>{const e=this.normalizeQuery(t);return Object(Jn.a)(this.typeahead).pipe(Object(Qn.a)(t=>t&&this.testMatch(this.normalizeOption(t),e)),ia())})).subscribe(t=>{this.finalizeAsyncCall(t)}))}normalizeOption(t){const e=zu(t,this.typeaheadOptionField);return(this.typeaheadLatinize?Gu(e):e).toLowerCase()}normalizeQuery(t){let e=(this.typeaheadLatinize?Gu(t):t).toString().toLowerCase();return e=this.typeaheadSingleWords?Bu(e,this.typeaheadWordDelimiters,this.typeaheadPhraseDelimiters):e,e}testMatch(t,e){let n;if("object"==typeof e){n=e.length;for(let a=0;a<n;a+=1)if(e[a].length>0&&t.indexOf(e[a])<0)return!1;return!0}return t.indexOf(e)>=0}finalizeAsyncCall(t){if(this.prepareMatches(t||[]),this.typeaheadLoading.emit(!1),this.typeaheadNoResults.emit(!this.hasMatches()),this.hasMatches())if(this._container){const t=((this.typeaheadLatinize?Gu(this.ngControl.control.value):this.ngControl.control.value)||"").toString().toLowerCase();this._container.query=this.typeaheadSingleWords?Bu(t,this.typeaheadWordDelimiters,this.typeaheadPhraseDelimiters):t,this._container.matches=this._matches}else this.show();else this.hide()}prepareMatches(t){const e=t.slice(0,this.typeaheadOptionsLimit);if(this.typeaheadGroupField){let t=[];e.map(t=>zu(t,this.typeaheadGroupField)).filter((t,e,n)=>n.indexOf(t)===e).forEach(n=>{t.push(new Vu(n,n,!0)),t=t.concat(e.filter(t=>zu(t,this.typeaheadGroupField)===n).map(t=>new Vu(t,zu(t,this.typeaheadOptionField))))}),this._matches=t}else this._matches=e.map(t=>new Vu(t,zu(t,this.typeaheadOptionField)))}hasMatches(){return this._matches.length>0}}class Wu{static forRoot(){return{ngModule:Wu,providers:[U.a,Na.a,Hu]}}}var Ku=n("pYKc"),$u=n("ppaS"),Zu=n("4HWh"),Ju=n("p4Cf"),Qu=n("D4zM"),Xu=n("OcYo"),to=n("Ekvf"),eo=n("a96k"),no=n("2EZI");class ao{constructor(t,e,n,a,r,i,s,u){this.actionLabels=t,this.cephServiceService=e,this.formBuilder=n,this.hostService=a,this.i18n=r,this.poolService=i,this.router=s,this.taskWrapperService=u,this.serviceTypes=[],this.searchLabels=new Zn.a(t=>{t.next(this.serviceForm.getValue("label"))}).pipe(Object(Qe.a)(t=>this.labels.filter(e=>e.toLowerCase().indexOf(t.toLowerCase())>-1).slice(0,10))),this.resource=this.i18n("service"),this.hosts={options:[],messages:new Rs.a({empty:this.i18n("There are no hosts."),filter:this.i18n("Filter hosts")},this.i18n)},this.createForm()}createForm(){this.serviceForm=this.formBuilder.group({service_type:[null,[K.B.required]],service_id:[null,[eu.a.requiredIf({service_type:"mds"}),eu.a.requiredIf({service_type:"nfs"}),eu.a.requiredIf({service_type:"iscsi"}),eu.a.composeIf({service_type:"rgw"},[K.B.required,eu.a.custom("rgwPattern",t=>!X.isEmpty(t)&&!/^[^.]+\.[^.]+(\.[^.]+)?$/.test(t))])]],placement:["hosts"],label:[null,[eu.a.requiredIf({placement:"label",unmanaged:!1})]],hosts:[[]],count:[null,[eu.a.number(!1),K.B.min(1)]],unmanaged:[!1],pool:[null,[eu.a.requiredIf({service_type:"nfs",unmanaged:!1}),eu.a.requiredIf({service_type:"iscsi",unmanaged:!1})]],namespace:[null],rgw_frontend_port:[null,[eu.a.number(!1),K.B.min(1),K.B.max(65535)]],trusted_ip_list:[null],api_port:[null,[eu.a.number(!1),K.B.min(1),K.B.max(65535)]],api_user:[null,[eu.a.requiredIf({service_type:"iscsi",unmanaged:!1})]],api_password:[null,[eu.a.requiredIf({service_type:"iscsi",unmanaged:!1})]],ssl:[!1],ssl_cert:["",[eu.a.composeIf({service_type:"rgw",unmanaged:!1,ssl:!0},[K.B.required,eu.a.sslCert()]),eu.a.composeIf({service_type:"iscsi",unmanaged:!1,ssl:!0},[K.B.required,eu.a.sslCert()])]],ssl_key:["",[eu.a.composeIf({service_type:"rgw",unmanaged:!1,ssl:!0},[K.B.required,eu.a.sslPrivKey()]),eu.a.composeIf({service_type:"iscsi",unmanaged:!1,ssl:!0},[K.B.required,eu.a.sslPrivKey()])]]})}ngOnInit(){this.action=this.actionLabels.CREATE,this.cephServiceService.getKnownTypes().subscribe(t=>{this.serviceTypes=X.difference(t,["osd"]).sort()}),this.hostService.list().subscribe(t=>{const e=[];X.forEach(t,t=>{if(X.get(t,"sources.orchestrator",!1)){const n=new eo.a(!1,X.get(t,"hostname"),"");e.push(n)}}),this.hosts.options=[...e]}),this.hostService.getLabels().subscribe(t=>{this.labels=t}),this.poolService.getList().subscribe(t=>{this.pools=t})}goToListView(){this.router.navigate(["/services"])}fileUpload(t,e){const n=t[0],a=new FileReader;a.addEventListener("load",t=>{const n=this.serviceForm.get(e);n.setValue(t.target.result),n.markAsDirty(),n.markAsTouched(),n.updateValueAndValidity()}),a.readAsText(n,"utf8")}onSubmit(){const t=this,e=this.serviceForm.value,n=e.service_id,a=e.service_type,r={service_type:a,placement:{},unmanaged:e.unmanaged};let i=a;if(X.isString(n)&&!X.isEmpty(n)&&(i=`${a}.${n}`,r.service_id=n),!e.unmanaged){switch(e.placement){case"hosts":e.hosts.length>0&&(r.placement.hosts=e.hosts);break;case"label":r.placement.label=e.label}switch(X.isNumber(e.count)&&e.count>0&&(r.placement.count=e.count),a){case"nfs":r.pool=e.pool,X.isString(e.namespace)&&!X.isEmpty(e.namespace)&&(r.namespace=e.namespace);break;case"rgw":X.isNumber(e.rgw_frontend_port)&&e.rgw_frontend_port>0&&(r.rgw_frontend_port=e.rgw_frontend_port),r.ssl=e.ssl,e.ssl&&(r.rgw_frontend_ssl_certificate=e.ssl_cert.trim(),r.rgw_frontend_ssl_key=e.ssl_key.trim());break;case"iscsi":if(r.pool=e.pool,X.isString(e.trusted_ip_list)&&!X.isEmpty(e.trusted_ip_list)){let t=X.split(e.trusted_ip_list,",");t=X.map(t,X.trim),r.trusted_ip_list=t}X.isNumber(e.api_port)&&e.api_port>0&&(r.api_port=e.api_port),r.api_user=e.api_user,r.api_password=e.api_password,r.api_secure=e.ssl,e.ssl&&(r.ssl_cert=e.ssl_cert.trim(),r.ssl_key=e.ssl_key.trim())}}this.taskWrapperService.wrapTaskAroundCall({task:new As.a("service/"+St.e.CREATE,{service_name:i}),call:this.cephServiceService.create(r)}).subscribe({error(){t.serviceForm.setErrors({cdSubmitButton:!0})},complete(){t.goToListView()}})}}var ro=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function io(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function so(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function uo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function oo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value does not match the pattern "])),(t()(),s["ɵeld"](2,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["<realm_name>.<zone_name>[.<subcluster>]"])),(t()(),s["ɵted"](-1,null,["."]))],null,null)}function lo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","placement"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Placement"])),(t()(),s["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","placement"],["id","placement"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,9).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](11,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](15,0,null,null,3,"option",[["value","hosts"]],null,null,null,null,null)),s["ɵdid"](16,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](17,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Hosts"])),(t()(),s["ɵeld"](19,0,null,null,3,"option",[["value","label"]],null,null,null,null,null)),s["ɵdid"](20,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](21,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Label"]))],(function(t,e){t(e,1,0),t(e,11,0,"placement"),t(e,14,0,"placement"),t(e,16,0,"hosts"),t(e,17,0,"hosts"),t(e,20,0,"label"),t(e,21,0,"label")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function co(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function fo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Label"])),(t()(),s["ɵeld"](6,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,16777216,null,null,8,"input",[["autocomplete","off"],["class","form-control"],["formControlName","label"],["id","label"],["type","text"],["typeaheadWaitMs","200"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"keyup"],[null,"click"],[null,"focus"],[null,"keydown"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,9)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,9)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,9)._compositionEnd(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,14).onInput(n)&&a),"keyup"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n)&&a),"click"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"focus"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onBlur()&&a),"keydown"===e&&(a=!1!==s["ɵnov"](t,14).onKeydown(n)&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](11,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,212992,null,0,Uu,[U.a,Hu,s.ChangeDetectorRef,s.ElementRef,K.q,s.Renderer2,s.ViewContainerRef],{typeahead:[0,"typeahead"],typeaheadWaitMs:[1,"typeaheadWaitMs"]},null),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,co)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,11,0,"label"),t(e,14,0,n.searchLabels,"200"),t(e,15,0,"label"),t(e,17,0,n.serviceForm.showError("label",s["ɵnov"](e.parent,5),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass)}))}function ho(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,11,{FormControlNames:1}),s["ɵqud"](603979776,12,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"],["for","hosts"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Hosts"])),(t()(),s["ɵeld"](6,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"cd-select-badges",[["id","hosts"]],null,null,null,Ku.b,Ku.a)),s["ɵdid"](8,49152,null,0,$u.a,[fe.a],{data:[0,"data"],options:[1,"options"],messages:[2,"messages"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,8,0,n.serviceForm.controls.hosts.value,n.hosts.options,n.hosts.messages)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess)}))}function go(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value must be at least 1."]))],null,null)}function po(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number."]))],null,null)}function bo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,13,{FormControlNames:1}),s["ɵqud"](603979776,14,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","count"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Count"])),(t()(),s["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](8,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["Only that number of daemons will be created."])),(t()(),s["ɵeld"](10,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,8,"input",[["class","form-control"],["formControlName","count"],["id","count"],["min","1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,13)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,13).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,13)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,13)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onTouched()&&a),a}),null,null)),s["ɵdid"](12,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](13,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](14,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](16,671744,[[13,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](18,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](19,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,go)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,po)),s["ɵdid"](23,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,16,0,"count"),t(e,19,0,"count"),t(e,21,0,n.serviceForm.showError("count",s["ɵnov"](e.parent,5),"min")),t(e,23,0,n.serviceForm.showError("count",s["ɵnov"](e.parent,5),"pattern"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,11,0,s["ɵnov"](e,18).ngClassUntouched,s["ɵnov"](e,18).ngClassTouched,s["ɵnov"](e,18).ngClassPristine,s["ɵnov"](e,18).ngClassDirty,s["ɵnov"](e,18).ngClassValid,s["ɵnov"](e,18).ngClassInvalid,s["ɵnov"](e,18).ngClassPending,s["ɵnov"](e,19).validClass,s["ɵnov"](e,19).invalidClass)}))}function mo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function yo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- No pools available --"]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function vo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Select a pool --"]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function xo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.pool_name),t(e,2,0,e.context.$implicit.pool_name)}),(function(t,e){t(e,3,0,e.context.$implicit.pool_name)}))}function _o(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function To(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,40,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,15,{FormControlNames:1}),s["ɵqud"](603979776,16,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","pool"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pool"])),(t()(),s["ɵeld"](7,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","pool"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,10).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,10).onTouched()&&a),a}),null,null)),s["ɵdid"](9,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](10,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](12,671744,[[15,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](14,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mo)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,yo)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,vo)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xo)),s["ɵdid"](23,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_o)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](26,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](27,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,17,{FormControlNames:1}),s["ɵqud"](603979776,18,{messagesBlock:0}),(t()(),s["ɵeld"](30,0,null,0,1,"label",[["class","cd-col-form-label"],["for","namespace"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Namespace"])),(t()(),s["ɵeld"](32,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](33,0,null,null,7,"input",[["class","form-control"],["formControlName","namespace"],["id","namespace"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,35)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,35).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,35)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,35)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](34,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](35,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](37,671744,[[17,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](39,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](40,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,12,0,"pool"),t(e,15,0,"pool"),t(e,17,0,null===n.pools),t(e,19,0,null!==n.pools&&0===n.pools.length),t(e,21,0,null!==n.pools&&n.pools.length>0),t(e,23,0,n.pools),t(e,25,0,n.serviceForm.showError("pool",s["ɵnov"](e.parent,5),"required")),t(e,27,0),t(e,37,0,"namespace"),t(e,40,0,"namespace")}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,8,0,s["ɵnov"](e,14).ngClassUntouched,s["ɵnov"](e,14).ngClassTouched,s["ɵnov"](e,14).ngClassPristine,s["ɵnov"](e,14).ngClassDirty,s["ɵnov"](e,14).ngClassValid,s["ɵnov"](e,14).ngClassInvalid,s["ɵnov"](e,14).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass),t(e,26,0,s["ɵnov"](e,27).hasErrors,s["ɵnov"](e,27).hasSuccess),t(e,33,0,s["ɵnov"](e,39).ngClassUntouched,s["ɵnov"](e,39).ngClassTouched,s["ɵnov"](e,39).ngClassPristine,s["ɵnov"](e,39).ngClassDirty,s["ɵnov"](e,39).ngClassValid,s["ɵnov"](e,39).ngClassInvalid,s["ɵnov"](e,39).ngClassPending,s["ɵnov"](e,40).validClass,s["ɵnov"](e,40).invalidClass)}))}function wo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number."]))],null,null)}function Oo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value must be at least 1."]))],null,null)}function So(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value cannot exceed 65535."]))],null,null)}function Io(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,19,{FormControlNames:1}),s["ɵqud"](603979776,20,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label"],["for","rgw_frontend_port"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Port"])),(t()(),s["ɵeld"](7,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,8,"input",[["class","form-control"],["formControlName","rgw_frontend_port"],["id","rgw_frontend_port"],["max","65535"],["min","1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,10)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,10).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,10)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,10)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,11).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,11).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,11).onTouched()&&a),a}),null,null)),s["ɵdid"](9,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](10,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](11,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](13,671744,[[19,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](15,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](16,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,wo)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Oo)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,So)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,13,0,"rgw_frontend_port"),t(e,16,0,"rgw_frontend_port"),t(e,18,0,n.serviceForm.showError("rgw_frontend_port",s["ɵnov"](e.parent,5),"pattern")),t(e,20,0,n.serviceForm.showError("rgw_frontend_port",s["ɵnov"](e.parent,5),"min")),t(e,22,0,n.serviceForm.showError("rgw_frontend_port",s["ɵnov"](e.parent,5),"max"))}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,8,0,s["ɵnov"](e,15).ngClassUntouched,s["ɵnov"](e,15).ngClassTouched,s["ɵnov"](e,15).ngClassPristine,s["ɵnov"](e,15).ngClassDirty,s["ɵnov"](e,15).ngClassValid,s["ɵnov"](e,15).ngClassInvalid,s["ɵnov"](e,15).ngClassPending,s["ɵnov"](e,16).validClass,s["ɵnov"](e,16).invalidClass)}))}function No(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function Co(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- No pools available --"]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function Ro(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Select a pool --"]))],(function(t,e){t(e,1,0,null),t(e,2,0,null)}),null)}function Ao(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.pool_name),t(e,2,0,e.context.$implicit.pool_name)}),(function(t,e){t(e,3,0,e.context.$implicit.pool_name)}))}function ko(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Eo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number."]))],null,null)}function Lo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value must be at least 1."]))],null,null)}function Do(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value cannot exceed 65535."]))],null,null)}function Po(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Mo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function qo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,121,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,21,{FormControlNames:1}),s["ɵqud"](603979776,22,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","pool"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pool"])),(t()(),s["ɵeld"](7,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","pool"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,10).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,10).onTouched()&&a),a}),null,null)),s["ɵdid"](9,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](10,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](12,671744,[[21,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](14,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,No)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Co)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ro)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ao)),s["ɵdid"](23,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ko)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](26,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](27,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,23,{FormControlNames:1}),s["ɵqud"](603979776,24,{messagesBlock:0}),(t()(),s["ɵeld"](30,0,null,0,12,"label",[["class","cd-col-form-label"],["for","trusted_ip_list"]],null,null,null,null,null)),(t()(),s["ɵeld"](31,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Trusted IPs"])),(t()(),s["ɵeld"](33,0,null,null,9,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](34,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](35,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Comma separated list of IP addresses."])),(t()(),s["ɵeld"](37,0,null,0,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](38,0,null,0,4,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Please add the "])),(t()(),s["ɵeld"](40,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Ceph Manager"])),(t()(),s["ɵted"](-1,null,[" IP addresses here, otherwise the iSCSI gateways can't be reached."])),(t()(),s["ɵeld"](43,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](44,0,null,null,7,"input",[["class","form-control"],["formControlName","trusted_ip_list"],["id","trusted_ip_list"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,46)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,46).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,46)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,46)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](45,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](46,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](48,671744,[[23,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](50,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](51,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](52,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](53,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,25,{FormControlNames:1}),s["ɵqud"](603979776,26,{messagesBlock:0}),(t()(),s["ɵeld"](56,0,null,0,1,"label",[["class","cd-col-form-label"],["for","api_port"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Port"])),(t()(),s["ɵeld"](58,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](59,0,null,null,8,"input",[["class","form-control"],["formControlName","api_port"],["id","api_port"],["max","65535"],["min","1"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,61)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,61).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,61)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,61)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,62).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,62).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,62).onTouched()&&a),a}),null,null)),s["ɵdid"](60,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](61,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](62,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](64,671744,[[25,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](66,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](67,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Eo)),s["ɵdid"](69,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Lo)),s["ɵdid"](71,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Do)),s["ɵdid"](73,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](74,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](75,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,27,{FormControlNames:1}),s["ɵqud"](603979776,28,{messagesBlock:0}),(t()(),s["ɵeld"](78,0,null,0,5,"label",[["class","cd-col-form-label"],["for","api_user"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](80,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](81,1),s["ɵpod"](82,{required:0}),(t()(),s["ɵted"](-1,null,["User"])),(t()(),s["ɵeld"](84,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](85,0,null,null,7,"input",[["class","form-control"],["formControlName","api_user"],["id","api_user"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,87)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,87).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,87)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,87)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](86,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](87,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](89,671744,[[27,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](91,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](92,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Po)),s["ɵdid"](94,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](95,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](96,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,29,{FormControlNames:1}),s["ɵqud"](603979776,30,{messagesBlock:0}),(t()(),s["ɵeld"](99,0,null,0,5,"label",[["class","cd-col-form-label"],["for","api_password"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](101,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](102,1),s["ɵpod"](103,{required:0}),(t()(),s["ɵted"](-1,null,["Password"])),(t()(),s["ɵeld"](105,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](106,0,null,null,15,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](107,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","api_password"],["id","api_password"],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,109)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,109).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,109)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,109)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](108,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](109,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](111,671744,[[29,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](113,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](114,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](115,0,null,null,4,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](116,0,null,null,1,"button",[["cdPasswordButton","api_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,117).onClick()&&a),a}),null,null)),s["ɵdid"](117,81920,null,0,Qu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵeld"](118,0,null,null,1,"button",[["cdCopy2ClipboardButton","api_password"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,119).onClick()&&a),a}),null,null)),s["ɵdid"](119,81920,null,0,Xu.a,[s.ElementRef,s.Renderer2,d.j,fe.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Mo)),s["ɵdid"](121,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0),t(e,12,0,"pool"),t(e,15,0,"pool"),t(e,17,0,null===n.pools),t(e,19,0,null!==n.pools&&0===n.pools.length),t(e,21,0,null!==n.pools&&n.pools.length>0),t(e,23,0,n.pools),t(e,25,0,n.serviceForm.showError("pool",s["ɵnov"](e.parent,5),"required")),t(e,27,0),t(e,48,0,"trusted_ip_list"),t(e,51,0,"trusted_ip_list"),t(e,53,0),t(e,64,0,"api_port"),t(e,67,0,"api_port"),t(e,69,0,n.serviceForm.showError("api_port",s["ɵnov"](e.parent,5),"pattern")),t(e,71,0,n.serviceForm.showError("api_port",s["ɵnov"](e.parent,5),"min")),t(e,73,0,n.serviceForm.showError("api_port",s["ɵnov"](e.parent,5),"max")),t(e,75,0);var a=t(e,82,0,t(e,81,0,"iscsi").includes(n.serviceForm.controls.service_type.value));t(e,80,0,"cd-col-form-label",a),t(e,89,0,"api_user"),t(e,92,0,"api_user"),t(e,94,0,n.serviceForm.showError("api_user",s["ɵnov"](e.parent,5),"required")),t(e,96,0);var r=t(e,103,0,t(e,102,0,"iscsi").includes(n.serviceForm.controls.service_type.value));t(e,101,0,"cd-col-form-label",r),t(e,111,0,"api_password"),t(e,114,0,"api_password"),t(e,117,0,"api_password"),t(e,119,0,"api_password"),t(e,121,0,n.serviceForm.showError("api_password",s["ɵnov"](e.parent,5),"required"))}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,8,0,s["ɵnov"](e,14).ngClassUntouched,s["ɵnov"](e,14).ngClassTouched,s["ɵnov"](e,14).ngClassPristine,s["ɵnov"](e,14).ngClassDirty,s["ɵnov"](e,14).ngClassValid,s["ɵnov"](e,14).ngClassInvalid,s["ɵnov"](e,14).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass),t(e,26,0,s["ɵnov"](e,27).hasErrors,s["ɵnov"](e,27).hasSuccess),t(e,44,0,s["ɵnov"](e,50).ngClassUntouched,s["ɵnov"](e,50).ngClassTouched,s["ɵnov"](e,50).ngClassPristine,s["ɵnov"](e,50).ngClassDirty,s["ɵnov"](e,50).ngClassValid,s["ɵnov"](e,50).ngClassInvalid,s["ɵnov"](e,50).ngClassPending,s["ɵnov"](e,51).validClass,s["ɵnov"](e,51).invalidClass),t(e,52,0,s["ɵnov"](e,53).hasErrors,s["ɵnov"](e,53).hasSuccess),t(e,59,0,s["ɵnov"](e,66).ngClassUntouched,s["ɵnov"](e,66).ngClassTouched,s["ɵnov"](e,66).ngClassPristine,s["ɵnov"](e,66).ngClassDirty,s["ɵnov"](e,66).ngClassValid,s["ɵnov"](e,66).ngClassInvalid,s["ɵnov"](e,66).ngClassPending,s["ɵnov"](e,67).validClass,s["ɵnov"](e,67).invalidClass),t(e,74,0,s["ɵnov"](e,75).hasErrors,s["ɵnov"](e,75).hasSuccess),t(e,85,0,s["ɵnov"](e,91).ngClassUntouched,s["ɵnov"](e,91).ngClassTouched,s["ɵnov"](e,91).ngClassPristine,s["ɵnov"](e,91).ngClassDirty,s["ɵnov"](e,91).ngClassValid,s["ɵnov"](e,91).ngClassInvalid,s["ɵnov"](e,91).ngClassPending,s["ɵnov"](e,92).validClass,s["ɵnov"](e,92).invalidClass),t(e,95,0,s["ɵnov"](e,96).hasErrors,s["ɵnov"](e,96).hasSuccess),t(e,107,0,s["ɵnov"](e,113).ngClassUntouched,s["ɵnov"](e,113).ngClassTouched,s["ɵnov"](e,113).ngClassPristine,s["ɵnov"](e,113).ngClassDirty,s["ɵnov"](e,113).ngClassValid,s["ɵnov"](e,113).ngClassInvalid,s["ɵnov"](e,113).ngClassPending,s["ɵnov"](e,114).validClass,s["ɵnov"](e,114).invalidClass)}))}function jo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Fo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Invalid SSL certificate."]))],null,null)}function Vo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,33,{FormControlNames:1}),s["ɵqud"](603979776,34,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","ssl_cert"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Certificate"])),(t()(),s["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](8,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["The SSL certificate in PEM format."])),(t()(),s["ɵeld"](10,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,7,"textarea",[["class","form-control resize-vertical text-monospace text-pre"],["formControlName","ssl_cert"],["id","ssl_cert"],["rows","5"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,12)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,12).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,12)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,12)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](14,671744,[[33,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](16,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](17,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["              "])),(t()(),s["ɵeld"](19,0,null,null,1,"input",[["type","file"]],null,[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.fileUpload(n.target.files,"ssl_cert")&&a),a}),null,null)),s["ɵdid"](20,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,jo)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fo)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,14,0,"ssl_cert"),t(e,17,0,"ssl_cert"),t(e,22,0,n.serviceForm.showError("ssl_cert",s["ɵnov"](e.parent.parent,5),"required")),t(e,24,0,n.serviceForm.showError("ssl_cert",s["ɵnov"](e.parent.parent,5),"pattern"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,11,0,s["ɵnov"](e,16).ngClassUntouched,s["ɵnov"](e,16).ngClassTouched,s["ɵnov"](e,16).ngClassPristine,s["ɵnov"](e,16).ngClassDirty,s["ɵnov"](e,16).ngClassValid,s["ɵnov"](e,16).ngClassInvalid,s["ɵnov"](e,16).ngClassPending,s["ɵnov"](e,17).validClass,s["ɵnov"](e,17).invalidClass)}))}function Go(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Bo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Invalid SSL private key."]))],null,null)}function zo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,35,{FormControlNames:1}),s["ɵqud"](603979776,36,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,5,"label",[["class","cd-col-form-label"],["for","ssl_key"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Private key"])),(t()(),s["ɵeld"](7,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](8,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["The SSL private key in PEM format."])),(t()(),s["ɵeld"](10,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,7,"textarea",[["class","form-control resize-vertical text-monospace text-pre"],["formControlName","ssl_key"],["id","ssl_key"],["rows","5"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,12)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,12).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,12)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,12)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](14,671744,[[35,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](16,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](17,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["              "])),(t()(),s["ɵeld"](19,0,null,null,1,"input",[["type","file"]],null,[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.fileUpload(n.target.files,"ssl_key")&&a),a}),null,null)),s["ɵdid"](20,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,Go)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bo)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,14,0,"ssl_key"),t(e,17,0,"ssl_key"),t(e,22,0,n.serviceForm.showError("ssl_key",s["ɵnov"](e.parent.parent,5),"required")),t(e,24,0,n.serviceForm.showError("ssl_key",s["ɵnov"](e.parent.parent,5),"pattern"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,11,0,s["ɵnov"](e,16).ngClassUntouched,s["ɵnov"](e,16).ngClassTouched,s["ɵnov"](e,16).ngClassPristine,s["ɵnov"](e,16).ngClassDirty,s["ɵnov"](e,16).ngClassValid,s["ɵnov"](e,16).ngClassInvalid,s["ɵnov"](e,16).ngClassPending,s["ɵnov"](e,17).validClass,s["ɵnov"](e,17).invalidClass)}))}function Yo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,20,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,31,{FormControlNames:1}),s["ɵqud"](603979776,32,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","ssl"],["id","ssl"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,9).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](11,671744,[[31,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](15,0,null,null,1,"label",[["class","custom-control-label"],["for","ssl"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["SSL"])),(t()(),s["ɵand"](16777216,null,null,1,null,Vo)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zo)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0),t(e,11,0,"ssl"),t(e,14,0,"ssl"),t(e,18,0,n.serviceForm.controls.ssl.value),t(e,20,0,n.serviceForm.controls.ssl.value)}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Ho(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Xs.a,[]),(t()(),s["ɵeld"](2,0,null,null,100,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,99,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,5).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,5).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit()&&a),a}),null,null)),s["ɵdid"](4,16384,null,0,K.G,[],null,null),s["ɵdid"](5,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](7,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](8,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](9,0,null,null,93,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](11,null,[""," ",""])),s["ɵppd"](12,1),s["ɵppd"](13,1),(t()(),s["ɵeld"](14,0,null,null,79,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](16,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](19,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","service_type"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Type"])),(t()(),s["ɵeld"](21,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","service_type"],["id","service_type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,24).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,24).onTouched()&&a),a}),null,null)),s["ɵdid"](23,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](24,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](26,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](28,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](29,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](30,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](31,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](32,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Select a service type --"])),(t()(),s["ɵand"](16777216,null,null,1,null,io)),s["ɵdid"](35,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,so)),s["ɵdid"](37,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](38,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](39,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](42,0,null,0,5,"label",[["class","cd-col-form-label"],["for","service_id"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](44,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](45,4),s["ɵpod"](46,{required:0}),(t()(),s["ɵted"](-1,null,["Id"])),(t()(),s["ɵeld"](48,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](49,0,null,null,7,"input",[["class","form-control"],["formControlName","service_id"],["id","service_id"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,51)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,51).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,51)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,51)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](50,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](51,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](53,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](55,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](56,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,uo)),s["ɵdid"](58,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,oo)),s["ɵdid"](60,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](61,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](62,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](65,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](66,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](67,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","unmanaged"],["id","unmanaged"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,69).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,69).onTouched()&&a),a}),null,null)),s["ɵdid"](68,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](69,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](71,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](73,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](74,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](75,0,null,null,1,"label",[["class","custom-control-label"],["for","unmanaged"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Unmanaged"])),(t()(),s["ɵand"](16777216,null,null,1,null,lo)),s["ɵdid"](78,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fo)),s["ɵdid"](80,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ho)),s["ɵdid"](82,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,bo)),s["ɵdid"](84,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,To)),s["ɵdid"](86,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Io)),s["ɵdid"](88,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,qo)),s["ɵdid"](90,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,2,null,Yo)),s["ɵdid"](92,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpad"](93,2),(t()(),s["ɵeld"](94,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](95,0,null,null,7,"div",[["class","text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](96,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),$s.b,$s.a)),s["ɵdid"](97,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](98,0,[""," "," "])),s["ɵppd"](99,1),s["ɵppd"](100,1),(t()(),s["ɵeld"](101,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](102,49152,null,0,Qs.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,5,0,n.serviceForm),t(e,8,0,n.serviceForm),t(e,16,0),t(e,26,0,"service_type"),t(e,29,0,"service_type"),t(e,31,0,null),t(e,32,0,null),t(e,35,0,n.serviceTypes),t(e,37,0,n.serviceForm.showError("service_type",s["ɵnov"](e,5),"required")),t(e,39,0);var a=t(e,46,0,t(e,45,0,"mds","rgw","nfs","iscsi").includes(n.serviceForm.controls.service_type.value));t(e,44,0,"cd-col-form-label",a),t(e,53,0,"service_id"),t(e,56,0,"service_id"),t(e,58,0,n.serviceForm.showError("service_id",s["ɵnov"](e,5),"required")),t(e,60,0,n.serviceForm.showError("service_id",s["ɵnov"](e,5),"rgwPattern")),t(e,62,0),t(e,71,0,"unmanaged"),t(e,74,0,"unmanaged"),t(e,78,0,!n.serviceForm.controls.unmanaged.value),t(e,80,0,!n.serviceForm.controls.unmanaged.value&&"label"===n.serviceForm.controls.placement.value),t(e,82,0,!n.serviceForm.controls.unmanaged.value&&"hosts"===n.serviceForm.controls.placement.value),t(e,84,0,!n.serviceForm.controls.unmanaged.value),t(e,86,0,!n.serviceForm.controls.unmanaged.value&&"nfs"===n.serviceForm.controls.service_type.value),t(e,88,0,!n.serviceForm.controls.unmanaged.value&&"rgw"===n.serviceForm.controls.service_type.value),t(e,90,0,!n.serviceForm.controls.unmanaged.value&&"iscsi"===n.serviceForm.controls.service_type.value);var r=!n.serviceForm.controls.unmanaged.value&&t(e,93,0,"rgw","iscsi").includes(n.serviceForm.controls.service_type.value);t(e,92,0,r),t(e,97,0,n.serviceForm)}),(function(t,e){var n=e.component;t(e,3,0,s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending);var a=s["ɵunv"](e,11,0,t(e,12,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,11,1,t(e,13,0,s["ɵnov"](e,1),n.resource));t(e,11,0,a,r),t(e,15,0,s["ɵnov"](e,16).hasErrors,s["ɵnov"](e,16).hasSuccess),t(e,22,0,s["ɵnov"](e,28).ngClassUntouched,s["ɵnov"](e,28).ngClassTouched,s["ɵnov"](e,28).ngClassPristine,s["ɵnov"](e,28).ngClassDirty,s["ɵnov"](e,28).ngClassValid,s["ɵnov"](e,28).ngClassInvalid,s["ɵnov"](e,28).ngClassPending,s["ɵnov"](e,29).validClass,s["ɵnov"](e,29).invalidClass),t(e,38,0,s["ɵnov"](e,39).hasErrors,s["ɵnov"](e,39).hasSuccess),t(e,49,0,s["ɵnov"](e,55).ngClassUntouched,s["ɵnov"](e,55).ngClassTouched,s["ɵnov"](e,55).ngClassPristine,s["ɵnov"](e,55).ngClassDirty,s["ɵnov"](e,55).ngClassValid,s["ɵnov"](e,55).ngClassInvalid,s["ɵnov"](e,55).ngClassPending,s["ɵnov"](e,56).validClass,s["ɵnov"](e,56).invalidClass),t(e,61,0,s["ɵnov"](e,62).hasErrors,s["ɵnov"](e,62).hasSuccess),t(e,67,0,s["ɵnov"](e,73).ngClassUntouched,s["ɵnov"](e,73).ngClassTouched,s["ɵnov"](e,73).ngClassPristine,s["ɵnov"](e,73).ngClassDirty,s["ɵnov"](e,73).ngClassValid,s["ɵnov"](e,73).ngClassInvalid,s["ɵnov"](e,73).ngClassPending,s["ɵnov"](e,74).validClass,s["ɵnov"](e,74).invalidClass);var i=s["ɵunv"](e,98,0,t(e,99,0,s["ɵnov"](e,0),n.action)),u=s["ɵunv"](e,98,1,t(e,100,0,s["ɵnov"](e,1),n.resource));t(e,98,0,i,u)}))}function Uo(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-service-form",[],null,null,null,Ho,ro)),s["ɵdid"](1,114688,null,0,ao,[St.b,_i,no.a,wi,fe.a,to.a,Et.m,Ds.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Wo=s["ɵccf"]("cd-service-form",ao,Uo,{},{},[]),Ko=n("xSw7"),$o=n("GgAd"),Zo=n("FFMq"),Jo=n("j8L6"),Qo=n("b5OY"),Xo=n("pxLl");class tl{constructor(){this.last={}}ngOnChanges(){this.render()}hexdigits(t){const e=Math.floor(255*t).toString(16);return 1===e.length?"0"+e:e}hexcolor(t,e,n){return"#"+this.hexdigits(t)+this.hexdigits(e)+this.hexdigits(n)}render(){if(!this.histogram)return;let t=0;X.each(this.histogram.values,(e,n)=>{X.each(e,(e,a)=>{let r;r=this.last&&this.last[n]&&this.last[n][a]?e-this.last[n][a]:e,t=Math.max(t,r)})}),this.valuesStyle=this.histogram.values.map((e,n)=>e.map((e,a)=>{const r=t?(this.last&&this.last[n]&&this.last[n][a]?e-this.last[n][a]:e)/t:0;return{backgroundColor:this.hexcolor(1-r,r,0)}})),this.last=this.histogram.values}}var el=s["ɵcrt"]({encapsulation:0,styles:[["table[_ngcontent-%COMP%]   tr[_ngcontent-%COMP%]{height:10px}table[_ngcontent-%COMP%]   td[_ngcontent-%COMP%]{width:10px;height:10px}"]],data:{}});function nl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgStyleImpl"],i["ɵNgStyleR2Impl"],[s.ElementRef,s.KeyValueDiffers,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgStyle,[i["ɵNgStyleImpl"]],{ngStyle:[0,"ngStyle"]},null)],(function(t,e){t(e,2,0,e.context.$implicit)}),null)}function al(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"tr",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,nl)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.context.$implicit)}),null)}function rl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"table",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,al)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.valuesStyle)}),null)}class il{constructor(t,e){this.osdService=t,this.authStorageService=e,this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnChanges(){X.get(this,"osd.id")!==X.get(this,"selection.id")&&(this.osd=this.selection),X.isNumber(X.get(this,"osd.id"))&&this.refresh()}refresh(){this.osdService.getDetails(this.osd.id).subscribe(t=>{this.osd.details=t,this.osd.histogram_failed="",X.isObject(t.histogram)||(this.osd.histogram_failed=t.histogram,this.osd.details.histogram=void 0)})}}var sl=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ul(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[],null,[[null,"fetchData"]],(function(t,e,n){var a=!0;return"fetchData"===e&&(a=!1!==t.component.refresh()&&a),a}),Ai.b,Ai.a)),s["ɵdid"](1,638976,null,0,ki.a,[He.a],{data:[0,"data"]},{fetchData:"fetchData"})],(function(t,e){var n=e.component;t(e,1,0,null==n.osd||null==n.osd.details?null:n.osd.details.osd_metadata)}),null)}function ol(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["Metadata not available"]))],(function(t,e){t(e,1,0,"warning")}),null)}function ll(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-performance-counter",[["serviceType","osd"]],null,null,null,Jo.b,Jo.a)),s["ɵdid"](1,114688,null,0,Qo.a,[Xo.a,fe.a],{serviceType:[0,"serviceType"],serviceId:[1,"serviceId"]},null)],(function(t,e){var n=e.component;t(e,1,0,"osd",null==n.osd?null:n.osd.id)}),null)}function dl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](2,0,["Histogram not available: ",""]))],(function(t,e){t(e,1,0,"warning")}),(function(t,e){t(e,2,0,e.component.osd.histogram_failed)}))}function cl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[["class","col-md-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Writes"])),(t()(),s["ɵeld"](4,0,null,null,1,"cd-osd-performance-histogram",[],null,null,null,rl,el)),s["ɵdid"](5,573440,null,0,tl,[],{histogram:[0,"histogram"]},null),(t()(),s["ɵeld"](6,0,null,null,4,"div",[["class","col-md-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Reads"])),(t()(),s["ɵeld"](9,0,null,null,1,"cd-osd-performance-histogram",[],null,null,null,rl,el)),s["ɵdid"](10,573440,null,0,tl,[],{histogram:[0,"histogram"]},null)],(function(t,e){var n=e.component;t(e,5,0,null==n.osd||null==n.osd.details||null==n.osd.details.histogram||null==n.osd.details.histogram.osd?null:n.osd.details.histogram.osd.op_w_latency_in_bytes_histogram),t(e,10,0,null==n.osd||null==n.osd.details||null==n.osd.details.histogram||null==n.osd.details.histogram.osd?null:n.osd.details.histogram.osd.op_r_latency_out_bytes_histogram)}),null)}function fl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","three"],["uid","CrAHE0iZz"]],null,null,null,$r.b,$r.a)),s["ɵdid"](3,638976,null,0,Zr.a,[ve.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Performance Details"),t(e,3,0,"osd-device-details?var-osd=osd."+n.osd.id,"three","CrAHE0iZz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function hl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,30,"tabset",[["id","tabset-osd-details"]],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Devices"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-device-list",[],null,null,null,bs,ss)),s["ɵdid"](5,638976,null,0,is,[wi,fe.a,i.DatePipe,Pi],{osdId:[0,"osdId"]},null),(t()(),s["ɵeld"](6,0,null,0,3,"tab",[["heading","Attributes (OSD map)"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](7,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](8,0,null,null,1,"cd-table-key-value",[],null,null,null,Ai.b,Ai.a)),s["ɵdid"](9,638976,null,0,ki.a,[He.a],{data:[0,"data"]},null),(t()(),s["ɵeld"](10,0,null,0,4,"tab",[["heading","Metadata"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](11,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ul)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["noMetaData",2]],null,0,null,ol)),(t()(),s["ɵeld"](15,0,null,0,3,"tab",[["heading","Device health"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](16,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](17,0,null,null,1,"cd-smart-list",[],null,null,null,rs,qi)),s["ɵdid"](18,638976,null,0,Mi,[fe.a,Pi,wi],{osdId:[0,"osdId"]},null),(t()(),s["ɵeld"](19,0,null,0,3,"tab",[["heading","Performance counter"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](20,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ll)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](23,0,null,0,5,"tab",[["heading","Histogram"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](24,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,dl)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,cl)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,fl)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Devices"),t(e,5,0,null==n.osd?null:n.osd.id),t(e,7,0,"Attributes (OSD map)"),t(e,9,0,null==n.osd||null==n.osd.details?null:n.osd.details.osd_map),t(e,11,0,"Metadata"),t(e,13,0,null==n.osd||null==n.osd.details?null:n.osd.details.osd_metadata,s["ɵnov"](e,14)),t(e,16,0,"Device health"),t(e,18,0,null==n.osd?null:n.osd.id),t(e,20,0,"Performance counter"),t(e,22,0,null==n.osd?null:n.osd.details),t(e,24,0,"Histogram"),t(e,26,0,null==n.osd?null:n.osd.histogram_failed),t(e,28,0,null==n.osd||null==n.osd.details?null:n.osd.details.histogram),t(e,30,0,n.grafanaPermission.read)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,6,0,s["ɵnov"](e,7).id,s["ɵnov"](e,7).active,s["ɵnov"](e,7).addClass,s["ɵnov"](e,7).role,s["ɵnov"](e,7).ariaLabelledby),t(e,10,0,s["ɵnov"](e,11).id,s["ɵnov"](e,11).active,s["ɵnov"](e,11).addClass,s["ɵnov"](e,11).role,s["ɵnov"](e,11).ariaLabelledby),t(e,15,0,s["ɵnov"](e,16).id,s["ɵnov"](e,16).active,s["ɵnov"](e,16).addClass,s["ɵnov"](e,16).role,s["ɵnov"](e,16).ariaLabelledby),t(e,19,0,s["ɵnov"](e,20).id,s["ɵnov"](e,20).active,s["ɵnov"](e,20).addClass,s["ɵnov"](e,20).role,s["ɵnov"](e,20).ariaLabelledby),t(e,23,0,s["ɵnov"](e,24).id,s["ɵnov"](e,24).active,s["ɵnov"](e,24).addClass,s["ɵnov"](e,24).role,s["ɵnov"](e,24).ariaLabelledby)}))}function gl(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,hl)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.selection)}),null)}function pl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-details",[],null,null,null,gl,sl)),s["ɵdid"](1,573440,null,0,il,[Pi,J.a],null,null)],null,null)}var bl=s["ɵccf"]("cd-osd-details",il,pl,{selection:"selection"},{},[]),ml=n("cp0P"),yl=n("OLbh");class vl{constructor(t,e,n,a,r){this.activeModal=t,this.authStorageService=e,this.osdService=n,this.notificationService=a,this.i18n=r,this.initialSelection=[],this.osdFlagsForm=new K.k({}),this.flags=[{code:"noup",name:this.i18n("No Up"),description:this.i18n("OSDs are not allowed to start"),value:!1,clusterWide:!1,indeterminate:!1},{code:"nodown",name:this.i18n("No Down"),description:this.i18n("OSD failure reports are being ignored, such that the monitors will not mark OSDs down"),value:!1,clusterWide:!1,indeterminate:!1},{code:"noin",name:this.i18n("No In"),description:this.i18n("OSDs that were previously marked out will not be marked back in when they start"),value:!1,clusterWide:!1,indeterminate:!1},{code:"noout",name:this.i18n("No Out"),description:this.i18n("OSDs will not automatically be marked out after the configured interval"),value:!1,clusterWide:!1,indeterminate:!1}],this.clusterWideTooltip=this.i18n("The flag has been enabled for the entire cluster."),this.permissions=this.authStorageService.getPermissions()}ngOnInit(){const t=this.selected.length;this.osdService.getFlags().subscribe(e=>{const n=this.getActivatedIndivFlags();this.flags.forEach(a=>{const r=n[a.code];e.includes(a.code)&&(a.clusterWide=!0),r===t?a.value=!0:r>0&&(a.indeterminate=!0)}),this.initialSelection=X.cloneDeep(this.flags)})}getActivatedIndivFlags(){const t={};return this.flags.forEach(e=>{t[e.code]=0}),[].concat(...this.selected.map(t=>t.state)).map(e=>{Object.keys(t).includes(e)&&(t[e]=t[e]+1)}),t}changeValue(t){t.value=!t.value,t.indeterminate=!1}resetSelection(){this.flags=X.cloneDeep(this.initialSelection)}submitAction(){const t={};this.flags.forEach(e=>{t[e.code]=e.indeterminate?null:e.value});const e=this.selected.map(t=>t.osd);this.osdService.updateIndividualFlags(t,e).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Updated OSD Flags")),this.activeModal.hide()},()=>{this.activeModal.hide()})}}class xl{constructor(t,e,n,a,r){this.bsModalRef=t,this.authStorageService=e,this.osdService=n,this.notificationService=a,this.i18n=r,this.osdFlagsForm=new K.k({}),this.allFlags={noin:{code:"noin",name:this.i18n("No In"),value:!1,description:this.i18n("OSDs that were previously marked out will not be marked back in when they start")},noout:{code:"noout",name:this.i18n("No Out"),value:!1,description:this.i18n("OSDs will not automatically be marked out after the configured interval")},noup:{code:"noup",name:this.i18n("No Up"),value:!1,description:this.i18n("OSDs are not allowed to start")},nodown:{code:"nodown",name:this.i18n("No Down"),value:!1,description:this.i18n("OSD failure reports are being ignored, such that the monitors will not mark OSDs down")},pause:{code:"pause",name:this.i18n("Pause"),value:!1,description:this.i18n("Pauses reads and writes")},noscrub:{code:"noscrub",name:this.i18n("No Scrub"),value:!1,description:this.i18n("Scrubbing is disabled")},"nodeep-scrub":{code:"nodeep-scrub",name:this.i18n("No Deep Scrub"),value:!1,description:this.i18n("Deep Scrubbing is disabled")},nobackfill:{code:"nobackfill",name:this.i18n("No Backfill"),value:!1,description:this.i18n("Backfilling of PGs is suspended")},norebalance:{code:"norebalance",name:this.i18n("No Rebalance"),value:!1,description:this.i18n("OSD will choose not to backfill unless PG is also degraded")},norecover:{code:"norecover",name:this.i18n("No Recover"),value:!1,description:this.i18n("Recovery of PGs is suspended")},sortbitwise:{code:"sortbitwise",name:this.i18n("Bitwise Sort"),value:!1,description:this.i18n("Use bitwise sort"),disabled:!0},purged_snapdirs:{code:"purged_snapdirs",name:this.i18n("Purged Snapdirs"),value:!1,description:this.i18n("OSDs have converted snapsets"),disabled:!0},recovery_deletes:{code:"recovery_deletes",name:this.i18n("Recovery Deletes"),value:!1,description:this.i18n("Deletes performed during recovery instead of peering"),disabled:!0},pglog_hardlimit:{code:"pglog_hardlimit",name:this.i18n("PG Log Hard Limit"),value:!1,description:this.i18n("Puts a hard limit on pg log length"),disabled:!0}},this.unknownFlags=[],this.permissions=this.authStorageService.getPermissions()}ngOnInit(){this.osdService.getFlags().subscribe(t=>{t.forEach(t=>{this.allFlags[t]?this.allFlags[t].value=!0:this.unknownFlags.push(t)}),this.flags=X.toArray(this.allFlags)})}submitAction(){const t=this.flags.filter(t=>t.value).map(t=>t.code).concat(this.unknownFlags);this.osdService.updateFlags(t).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Updated OSD Flags")),this.bsModalRef.hide()},()=>{this.bsModalRef.hide()})}}var _l=n("MuvH");let Tl=(()=>{class t{static getType(t){const e=X.find(this.knownTypes,e=>e.name===t);if(void 0!==e)return e;throw new Error('Found unknown type "'+t+'" for config option.')}static getTypeValidators(e){const n=t.getType(e.type);if("bool"===n.name||"str"===n.name)return;const a={validators:[],patternHelpText:n.patternHelpText};return n.isNumberType?(e.max&&""!==e.max&&(a.max=e.max,a.validators.push(K.B.max(e.max))),e.min&&""!==e.min?(a.min=e.min,a.validators.push(K.B.min(e.min))):"defaultMin"in n&&(a.min=n.defaultMin,a.validators.push(K.B.min(n.defaultMin))),a.validators.push("float"===e.type?eu.a.decimalNumber():eu.a.number(n.allowsNegative))):"addr"===e.type?a.validators=[eu.a.ip()]:"uuid"===e.type&&(a.validators=[eu.a.uuid()]),a}static getTypeStep(t,e){if(["uint","int","size","secs"].includes(t))return 1;if("float"===t){if(null!==e&&-1!==e.toString().indexOf(".")){const t=e.toString().split(".");return Math.pow(10,-t[1].length)}return.1}}}return t.knownTypes=[{name:"uint",inputType:"number",humanReadable:"Unsigned integer value",defaultMin:0,patternHelpText:"The entered value needs to be an unsigned number.",isNumberType:!0,allowsNegative:!1},{name:"int",inputType:"number",humanReadable:"Integer value",patternHelpText:"The entered value needs to be a number.",isNumberType:!0,allowsNegative:!0},{name:"size",inputType:"number",humanReadable:"Unsigned integer value (>=16bit)",defaultMin:0,patternHelpText:"The entered value needs to be a unsigned number.",isNumberType:!0,allowsNegative:!1},{name:"secs",inputType:"number",humanReadable:"Number of seconds",defaultMin:1,patternHelpText:"The entered value needs to be a number >= 1.",isNumberType:!0,allowsNegative:!1},{name:"float",inputType:"number",humanReadable:"Double value",patternHelpText:"The entered value needs to be a number or decimal.",isNumberType:!0,allowsNegative:!0},{name:"str",inputType:"text",humanReadable:"Text",isNumberType:!1},{name:"addr",inputType:"text",humanReadable:"IPv4 or IPv6 address",patternHelpText:"The entered value needs to be a valid IP address.",isNumberType:!1},{name:"uuid",inputType:"text",humanReadable:"UUID",patternHelpText:"The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8",isNumberType:!1},{name:"bool",inputType:"checkbox",humanReadable:"Boolean value",isNumberType:!1}],t})();class wl{constructor(t){this.configService=t,this.optionNames=[],this.optionsForm=new tu.a({}),this.optionsFormDir=new K.t([],[]),this.optionsFormGroupName="",this.optionsFormShowReset=!0,this.icons=pt.a,this.options=[],this.optionsFormGroup=new tu.a({})}static optionNameToText(t){const e=["mon","mgr","osd","mds","client"];return t.split("_").filter((t,n)=>0!==n||!e.includes(t)).map(t=>t.charAt(0).toUpperCase()+t.substring(1)).join(" ")}ngOnInit(){this.createForm(),this.loadStoredData()}createForm(){this.optionsForm.addControl(this.optionsFormGroupName,this.optionsFormGroup),this.optionNames.forEach(t=>{this.optionsFormGroup.addControl(t,new K.i(null))})}getStep(t,e){return Tl.getTypeStep(t,e)}loadStoredData(){this.configService.filter(this.optionNames).subscribe(t=>{this.options=t.map(t=>{const e=this.optionsForm.get(t.name),n=Tl.getTypeValidators(t);return t.additionalTypeInfo=Tl.getType(t.type),t.text=wl.optionNameToText(t.name),t.value=X.find(t.value,t=>"osd"===t.section),t.value&&e.setValue("bool"===t.additionalTypeInfo.name?"true"===t.value.value:t.value.value),n&&(t.patternHelpText=n.patternHelpText,"max"in n&&""!==n.max&&(t.maxValue=n.max),"min"in n&&""!==n.min&&(t.minValue=n.min),e.setValidators(n.validators)),t})})}saveValues(){const t={};return this.optionNames.forEach(e=>{const n=this.optionsForm.getValue(e);null!==n&&""!==n&&(t[e]={section:"osd",value:n})}),this.configService.bulkCreate({options:t})}resetValue(t){this.configService.delete(t,"osd").subscribe(()=>{this.optionsForm.get(t).reset()})}}let Ol=(()=>{class t{}return t.basicOptions=["osd_scrub_during_recovery","osd_scrub_begin_hour","osd_scrub_end_hour","osd_scrub_begin_week_day","osd_scrub_end_week_day","osd_scrub_min_interval","osd_scrub_max_interval","osd_deep_scrub_interval","osd_scrub_auto_repair","osd_max_scrubs","osd_scrub_priority","osd_scrub_sleep"],t.advancedOptions=["osd_scrub_auto_repair_num_errors","osd_debug_deep_scrub_sleep","osd_deep_scrub_keys","osd_deep_scrub_large_omap_object_key_threshold","osd_deep_scrub_large_omap_object_value_sum_threshold","osd_deep_scrub_randomize_ratio","osd_deep_scrub_stride","osd_deep_scrub_update_digest_min_age","osd_requested_scrub_priority","osd_scrub_backoff_ratio","osd_scrub_chunk_max","osd_scrub_chunk_min","osd_scrub_cost","osd_scrub_interval_randomize_ratio","osd_scrub_invalid_stats","osd_scrub_load_threshold","osd_scrub_max_preemptions"],t})();class Sl{constructor(t,e,n,a,r){this.bsModalRef=t,this.authStorageService=e,this.notificationService=n,this.i18n=a,this.actionLabels=r,this.basicOptions=Ol.basicOptions,this.advancedOptions=Ol.advancedOptions,this.advancedEnabled=!1,this.osdPgScrubForm=new tu.a({}),this.resource=this.i18n("PG scrub options"),this.action=this.actionLabels.EDIT,this.permissions=this.authStorageService.getPermissions()}submitAction(){const t=[this.basicOptionsValues.saveValues()];this.advancedOptionsValues&&t.push(this.advancedOptionsValues.saveValues()),Object(ml.a)(t).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Updated PG scrub options")),this.bsModalRef.hide()},()=>{this.bsModalRef.hide()})}}class Il{constructor(t,e,n,a,r,i){this.bsModalRef=t,this.authStorageService=e,this.configService=n,this.notificationService=a,this.i18n=r,this.osdService=i,this.priorities=[],this.priorityAttrs={},this.permissions=this.authStorageService.getPermissions(),this.priorities=this.osdService.osdRecvSpeedModalPriorities.KNOWN_PRIORITIES,this.osdRecvSpeedForm=new tu.a({priority:new K.i(null,{validators:[K.B.required]}),customizePriority:new K.i(!1)}),this.priorityAttrs={osd_max_backfills:{text:this.i18n("Max Backfills"),desc:"",patternHelpText:"",maxValue:void 0,minValue:void 0},osd_recovery_max_active:{text:this.i18n("Recovery Max Active"),desc:"",patternHelpText:"",maxValue:void 0,minValue:void 0},osd_recovery_max_single_start:{text:this.i18n("Recovery Max Single Start"),desc:"",patternHelpText:"",maxValue:void 0,minValue:void 0},osd_recovery_sleep:{text:this.i18n("Recovery Sleep"),desc:"",patternHelpText:"",maxValue:void 0,minValue:void 0}},Object.keys(this.priorityAttrs).forEach(t=>{this.osdRecvSpeedForm.addControl(t,new K.i(null,{validators:[K.B.required]}))})}ngOnInit(){this.configService.filter(Object.keys(this.priorityAttrs)).subscribe(t=>{const e=this.getCurrentValues(t);this.detectPriority(e.values,t=>{this.setPriority(t)}),this.setDescription(e.configOptions),this.setValidators(e.configOptions)})}detectPriority(t,e){const n=X.find(this.priorities,e=>X.isEqual(e.values,t));return this.osdRecvSpeedForm.controls.customizePriority.setValue(!1),n?e(n):4===Object.entries(t).length?(this.osdRecvSpeedForm.controls.customizePriority.setValue(!0),e(Object({name:"custom",text:this.i18n("Custom"),values:t}))):e(this.priorities[0])}getCurrentValues(t){const e={values:{},configOptions:[]};return t.forEach(t=>{e.configOptions.push(t),"value"in t?t.value.forEach(n=>{"osd"===n.section&&(e.values[t.name]=Number(n.value))}):"default"in t&&null!==t.default&&(e.values[t.name]=Number(t.default))}),e}setDescription(t){t.forEach(t=>{""!==t.desc&&(this.priorityAttrs[t.name].desc=t.desc)})}setPriority(t){const e=X.find(this.priorities,t=>"custom"===t.name);"custom"===t.name?e||this.priorities.push(t):e&&this.priorities.splice(this.priorities.indexOf(e),1),this.osdRecvSpeedForm.controls.priority.setValue(t.name),Object.entries(t.values).forEach(([t,e])=>{this.osdRecvSpeedForm.controls[t].setValue(e)})}setValidators(t){t.forEach(t=>{const e=Tl.getTypeValidators(t);e?(e.validators.push(K.B.required),"max"in e&&""!==e.max&&(this.priorityAttrs[t.name].maxValue=e.max),"min"in e&&""!==e.min&&(this.priorityAttrs[t.name].minValue=e.min),this.priorityAttrs[t.name].patternHelpText=e.patternHelpText,this.osdRecvSpeedForm.controls[t.name].setValidators(e.validators)):this.osdRecvSpeedForm.controls[t.name].setValidators(K.B.required)})}onCustomizePriorityChange(){const t={};if(Object.keys(this.priorityAttrs).forEach(e=>{t[e]=this.osdRecvSpeedForm.getValue(e)}),this.osdRecvSpeedForm.getValue("customizePriority")){const e={name:"custom",text:this.i18n("Custom"),values:t};this.setPriority(e)}else this.detectPriority(t,t=>{this.setPriority(t)})}onPriorityChange(t){const e=X.find(this.priorities,e=>e.name===t)||this.priorities[0];this.osdRecvSpeedForm.get("customizePriority").setValue(!1),this.setPriority(e)}submitAction(){const t={};Object.keys(this.priorityAttrs).forEach(e=>{t[e]={section:"osd",value:this.osdRecvSpeedForm.getValue(e)}}),this.configService.bulkCreate({options:t}).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Updated OSD recovery speed priority "{{value}}"',{value:this.osdRecvSpeedForm.getValue("priority")})),this.bsModalRef.hide()},()=>{this.bsModalRef.hide()})}}class Nl{constructor(t,e,n){this.bsModalRef=t,this.osdService=e,this.fb=n,this.currentWeight=1}get weight(){return this.reweightForm.get("weight")}ngOnInit(){this.reweightForm=this.fb.group({weight:this.fb.control(this.currentWeight,[K.B.required,K.B.max(1),K.B.min(0)])})}reweight(){this.osdService.reweight(this.osdId,this.reweightForm.value.weight).subscribe(()=>this.bsModalRef.hide())}}class Cl{constructor(t,e,n,a,r){this.bsModalRef=t,this.osdService=e,this.notificationService=n,this.i18n=a,this.joinPipe=r,this.selected=[]}ngOnInit(){this.scrubForm=new K.k({})}scrub(){Object(ml.a)(this.selected.map(t=>this.osdService.scrub(t,this.deep))).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("{{operation}} was initialized in the following OSD(s): {{id}}",{operation:this.deep?"Deep scrub":"Scrub",id:this.joinPipe.transform(this.selected)})),this.bsModalRef.hide()},()=>this.bsModalRef.hide())}}const Rl=new Is.a("osd");class Al extends Ns.a{constructor(t,e,n,a,r,i,s,u,o,l,d){super(),this.authStorageService=t,this.osdService=e,this.dimlessBinaryPipe=n,this.modalService=a,this.i18n=r,this.urlBuilder=i,this.router=s,this.depCheckerService=u,this.taskWrapper=o,this.actionLabels=l,this.notificationService=d,this.icons=pt.a,this.selection=new li.a,this.osds=[],this.disabledFlags=["sortbitwise","purged_snapdirs","recovery_deletes","pglog_hardlimit"],this.indivFlagNames=["noup","nodown","noin","noout"],this.permissions=this.authStorageService.getPermissions(),this.tableActions=[{name:this.actionLabels.CREATE,permission:"create",icon:pt.a.add,click:()=>{this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.CREATE,this.i18n("OSD"),()=>{this.router.navigate([this.urlBuilder.getCreate()])})},canBePrimary:t=>!t.hasSelection},{name:this.actionLabels.EDIT,permission:"update",icon:pt.a.edit,click:()=>this.editAction()},{name:this.actionLabels.FLAGS,permission:"update",icon:pt.a.flag,click:()=>this.configureFlagsIndivAction(),disable:()=>!this.hasOsdSelected},{name:this.actionLabels.SCRUB,permission:"update",icon:pt.a.analyse,click:()=>this.scrubAction(!1),disable:()=>!this.hasOsdSelected,canBePrimary:t=>t.hasSelection},{name:this.actionLabels.DEEP_SCRUB,permission:"update",icon:pt.a.deepCheck,click:()=>this.scrubAction(!0),disable:()=>!this.hasOsdSelected},{name:this.actionLabels.REWEIGHT,permission:"update",click:()=>this.reweight(),disable:()=>!this.hasOsdSelected||!this.selection.hasSingleSelection,icon:pt.a.reweight},{name:this.actionLabels.MARK_OUT,permission:"update",click:()=>this.showConfirmationModal(this.i18n("out"),this.osdService.markOut),disable:()=>this.isNotSelectedOrInState("out"),icon:pt.a.left},{name:this.actionLabels.MARK_IN,permission:"update",click:()=>this.showConfirmationModal(this.i18n("in"),this.osdService.markIn),disable:()=>this.isNotSelectedOrInState("in"),icon:pt.a.right},{name:this.actionLabels.MARK_DOWN,permission:"update",click:()=>this.showConfirmationModal(this.i18n("down"),this.osdService.markDown),disable:()=>this.isNotSelectedOrInState("down"),icon:pt.a.down},{name:this.actionLabels.MARK_LOST,permission:"delete",click:()=>this.showCriticalConfirmationModal(this.i18n("Mark"),this.i18n("OSD lost"),this.i18n("marked lost"),t=>this.osdService.safeToDestroy(JSON.stringify(t)),"is_safe_to_destroy",this.osdService.markLost),disable:()=>this.isNotSelectedOrInState("up"),icon:pt.a.flatten},{name:this.actionLabels.PURGE,permission:"delete",click:()=>this.showCriticalConfirmationModal(this.i18n("Purge"),this.i18n("OSD"),this.i18n("purged"),t=>this.osdService.safeToDestroy(JSON.stringify(t)),"is_safe_to_destroy",t=>(this.selection=new li.a,this.osdService.purge(t))),disable:()=>this.isNotSelectedOrInState("up"),icon:pt.a.erase},{name:this.actionLabels.DESTROY,permission:"delete",click:()=>this.showCriticalConfirmationModal(this.i18n("destroy"),this.i18n("OSD"),this.i18n("destroyed"),t=>this.osdService.safeToDestroy(JSON.stringify(t)),"is_safe_to_destroy",t=>(this.selection=new li.a,this.osdService.destroy(t))),disable:()=>this.isNotSelectedOrInState("up"),icon:pt.a.destroyCircle},{name:this.actionLabels.DELETE,permission:"delete",click:()=>this.delete(),disable:()=>!this.hasOsdSelected,icon:pt.a.destroy}]}static collectStates(t){const e=[t.in?"in":"out"];return t.up?e.push("up"):t.state.includes("destroyed")?e.push("destroyed"):e.push("down"),e}ngOnInit(){this.clusterWideActions=[{name:this.i18n("Flags"),icon:pt.a.flag,click:()=>this.configureFlagsAction(),permission:"read",visible:()=>this.permissions.osd.read},{name:this.i18n("Recovery Priority"),icon:pt.a.deepCheck,click:()=>this.configureQosParamsAction(),permission:"read",visible:()=>this.permissions.configOpt.read},{name:this.i18n("PG scrub"),icon:pt.a.analyse,click:()=>this.configurePgScrubAction(),permission:"read",visible:()=>this.permissions.configOpt.read}],this.columns=[{prop:"host.name",name:this.i18n("Host")},{prop:"id",name:this.i18n("ID"),flexGrow:1,cellTransformation:oi.a.bold},{prop:"collectedStates",name:this.i18n("Status"),flexGrow:1,cellTransformation:oi.a.badge,customTemplateConfig:{map:{in:{class:"badge-success"},up:{class:"badge-success"},down:{class:"badge-danger"},out:{class:"badge-danger"},destroyed:{class:"badge-danger"}}}},{prop:"tree.device_class",name:this.i18n("Device class"),flexGrow:1,cellTransformation:oi.a.badge,customTemplateConfig:{map:{hdd:{class:"badge-hdd"},ssd:{class:"badge-ssd"}}}},{prop:"stats.numpg",name:this.i18n("PGs"),flexGrow:1},{prop:"stats.stat_bytes",name:this.i18n("Size"),flexGrow:1,pipe:this.dimlessBinaryPipe},{prop:"state",name:this.i18n("Flags"),cellTemplate:this.flagsTpl},{prop:"stats.usage",name:this.i18n("Usage"),cellTemplate:this.osdUsageTpl},{prop:"stats_history.out_bytes",name:this.i18n("Read bytes"),cellTransformation:oi.a.sparkline},{prop:"stats_history.in_bytes",name:this.i18n("Write bytes"),cellTransformation:oi.a.sparkline},{prop:"stats.op_r",name:this.i18n("Read ops"),cellTransformation:oi.a.perSecond},{prop:"stats.op_w",name:this.i18n("Write ops"),cellTransformation:oi.a.perSecond}]}getSelectedOsdIds(){const t=this.osds.map(t=>t.id);return this.selection.selected.map(t=>t.id).filter(e=>t.includes(e))}getSelectedOsds(){return this.osds.filter(t=>!X.isUndefined(t)&&this.getSelectedOsdIds().includes(t.id))}get hasOsdSelected(){return this.getSelectedOsdIds().length>0}updateSelection(t){this.selection=t}isNotSelectedOrInState(t){const e=this.getSelectedOsds();if(0===e.length)return!0;switch(t){case"in":return e.some(t=>1===t.in);case"out":return e.some(t=>1!==t.in);case"down":return e.some(t=>1!==t.up);case"up":return e.some(t=>1===t.up)}}getOsdList(){const t=[this.osdService.getList(),this.osdService.getFlags()];Object(ml.a)(t).subscribe(t=>{this.osds=t[0].map(e=>(e.collectedStates=Al.collectStates(e),e.stats_history.out_bytes=e.stats_history.op_out_bytes.map(t=>t[1]),e.stats_history.in_bytes=e.stats_history.op_in_bytes.map(t=>t[1]),e.stats.usage=e.stats.stat_bytes_used/e.stats.stat_bytes,e.cdIsBinary=!0,e.cdIndivFlags=e.state.filter(t=>this.indivFlagNames.includes(t)),e.cdClusterFlags=t[1].filter(t=>!this.disabledFlags.includes(t)),e))})}editAction(){const t=X.filter(this.osds,["id",this.selection.first().id]).pop();this.modalService.show(ui.a,{initialState:{titleText:this.i18n("Edit OSD: {{id}}",{id:t.id}),fields:[{type:"text",name:"deviceClass",value:t.tree.device_class,label:this.i18n("Device class"),required:!0}],submitButtonText:this.i18n("Edit OSD"),onSubmit:e=>{this.osdService.update(t.id,e.deviceClass).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Updated OSD "{{id}}"',{id:t.id})),this.getOsdList()})}}})}scrubAction(t){if(!this.hasOsdSelected)return;const e={selected:this.getSelectedOsdIds(),deep:t};this.bsModalRef=this.modalService.show(Cl,{initialState:e})}configureFlagsAction(){this.bsModalRef=this.modalService.show(xl,{})}configureFlagsIndivAction(){const t={selected:this.getSelectedOsds()};this.bsModalRef=this.modalService.show(vl,{initialState:t})}showConfirmationModal(t,e){this.bsModalRef=this.modalService.show(yl.a,{initialState:{titleText:this.i18n("Mark OSD {{markAction}}",{markAction:t}),buttonText:this.i18n("Mark {{markAction}}",{markAction:t}),bodyTpl:this.markOsdConfirmationTpl,bodyContext:{markActionDescription:t},onSubmit:()=>{Object(ml.a)(this.getSelectedOsdIds().map(t=>e.call(this.osdService,t))).subscribe(()=>this.bsModalRef.hide())}}})}reweight(){const t=this.osds.filter(t=>t.id===this.selection.first().id).pop();this.modalService.show(Nl,{initialState:{currentWeight:t.weight,osdId:t.id}})}delete(){const t=new tu.a({preserve:new K.i(!1)});this.depCheckerService.checkOrchestratorOrModal(this.actionLabels.DELETE,this.i18n("OSD"),()=>{this.showCriticalConfirmationModal(this.i18n("delete"),this.i18n("OSD"),this.i18n("deleted"),t=>this.osdService.safeToDelete(JSON.stringify(t)),"is_safe_to_delete",e=>(this.selection=new li.a,this.taskWrapper.wrapTaskAroundCall({task:new As.a("osd/"+St.e.DELETE,{svc_id:e}),call:this.osdService.delete(e,t.value.preserve,!0)})),!0,t,this.deleteOsdExtraTpl)})}showCriticalConfirmationModal(t,e,n,a,r,i,s=!1,u,o){a(this.getSelectedOsdIds()).subscribe(a=>{const l=this.modalService.show(Cs.a,{initialState:{actionDescription:t,itemDescription:e,bodyTemplate:this.criticalConfirmationTpl,bodyContext:{safeToPerform:a[r],message:a.message,actionDescription:n,osdIds:this.getSelectedOsdIds()},childFormGroup:u,childFormGroupTemplate:o,submitAction:()=>{const t=Object(ml.a)(this.getSelectedOsdIds().map(t=>i.call(this.osdService,t)));s?t.subscribe(void 0,()=>{this.getOsdList(),l.hide()},()=>l.hide()):t.subscribe(()=>{this.getOsdList(),l.hide()},()=>l.hide())}}})})}configureQosParamsAction(){this.bsModalRef=this.modalService.show(Il,{})}configurePgScrubAction(){this.bsModalRef=this.modalService.show(Sl,{class:"modal-lg"})}}var kl=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function El(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-usage-bar",[],null,null,null,Ko.b,Ko.a)),s["ɵdid"](1,573440,null,0,$o.a,[],{total:[0,"total"],used:[1,"used"]},null)],(function(t,e){t(e,1,0,e.context.row.stats.stat_bytes,e.context.row.stats.stat_bytes_used)}),null)}function Ll(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-hdd mr-1"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.$implicit)}))}function Dl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-info mr-1"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.$implicit)}))}function Pl(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Ll)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Dl)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.row.cdClusterFlags),t(e,3,0,e.context.row.cdIndivFlags)}),null)}function Ml(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Overall Performance"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","four"],["uid","lo02I1Aiz"]],null,null,null,$r.b,$r.a)),s["ɵdid"](3,638976,null,0,Zr.a,[ve.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){t(e,1,0,"Overall Performance"),t(e,3,0,"osd-overview?","four","lo02I1Aiz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function ql(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["OSD(s) ",""])),s["ɵppd"](3,1),(t()(),s["ɵted"](-1,null,[" will be marked\n"])),(t()(),s["ɵeld"](5,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵted"](-1,null,[" if you proceed."]))],null,(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent,0),n.getSelectedOsdIds()));t(e,2,0,a),t(e,6,0,e.context.markActionDescription)}))}function jl(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["OSD is"]))],null,null)}function Fl(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["OSDs are"]))],null,null)}function Vl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","danger"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,9,"cd-alert-panel",[["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](2,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["The "])),(t()(),s["ɵeld"](4,0,null,0,5,null,null,null,null,null,null,null)),s["ɵdid"](5,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,jl)),s["ɵdid"](7,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fl)),s["ɵdid"](9,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵted"](10,0,[" not safe to be ","! ",""]))],(function(t,e){var n=e.component;t(e,2,0,"warning"),t(e,5,0,n.selection.hasSingleSelection),t(e,7,0,"true"),t(e,9,0,"false")}),(function(t,e){t(e,10,0,e.parent.context.actionDescription,e.parent.context.message)}))}function Gl(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Vl)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](2,0,null,null,7,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,2,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](4,null,["OSD ",""])),s["ɵppd"](5,1),(t()(),s["ɵted"](-1,null,[" will be "])),(t()(),s["ɵeld"](7,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](8,null,["",""])),(t()(),s["ɵted"](-1,null,[" if you proceed."]))],(function(t,e){t(e,1,0,!e.context.safeToPerform)}),(function(t,e){var n=s["ɵunv"](e,4,0,t(e,5,0,s["ɵnov"](e.parent,0),e.context.osdIds));t(e,4,0,n),t(e,8,0,e.context.actionDescription)}))}function Bl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,23,null,null,null,null,(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,1).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,1).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,4).onSubmit()&&a),a}),null,null)),s["ɵdid"](1,540672,null,0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](3,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](4,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](5,0,null,null,18,null,null,null,null,null,null,null)),s["ɵdid"](6,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](8,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](9,0,null,null,14,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](10,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](13,0,null,0,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","preserve"],["id","preserve"],["name","preserve"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,16).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,16).onTouched()&&a),a}),null,null)),s["ɵdid"](15,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](16,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](18,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](20,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](21,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](22,0,null,null,1,"label",[["class","custom-control-label"],["for","preserve"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Preserve OSD ID(s) for replacement."]))],(function(t,e){t(e,1,0,e.context.form),t(e,4,0,e.context.form),t(e,6,0,"child"),t(e,10,0),t(e,18,0,"preserve"),t(e,21,0,"preserve")}),(function(t,e){t(e,9,0,s["ɵnov"](e,10).hasErrors,s["ɵnov"](e,10).hasSuccess),t(e,14,0,s["ɵnov"](e,20).ngClassUntouched,s["ɵnov"](e,20).ngClassTouched,s["ɵnov"](e,20).ngClassPristine,s["ɵnov"](e,20).ngClassDirty,s["ɵnov"](e,20).ngClassValid,s["ɵnov"](e,20).ngClassInvalid,s["ɵnov"](e,20).ngClassPending,s["ɵnov"](e,21).validClass,s["ɵnov"](e,21).invalidClass)}))}function zl(t){return s["ɵvid"](0,[s["ɵpid"](0,Zo.a,[]),s["ɵqud"](402653184,1,{osdUsageTpl:0}),s["ɵqud"](402653184,2,{markOsdConfirmationTpl:0}),s["ɵqud"](402653184,3,{criticalConfirmationTpl:0}),s["ɵqud"](402653184,4,{tableComponent:0}),s["ɵqud"](671088640,5,{reweightBodyTpl:0}),s["ɵqud"](671088640,6,{safeToDestroyBodyTpl:0}),s["ɵqud"](671088640,7,{deleteOsdExtraTpl:0}),s["ɵqud"](402653184,8,{flagsTpl:0}),(t()(),s["ɵeld"](9,0,null,null,17,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](10,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](11,0,null,0,13,"tab",[["heading","OSDs List"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](12,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](13,0,null,null,9,"cd-table",[["selectionType","multiClick"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.getOsdList()&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](14,2867200,[[4,4]],0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],selectionType:[3,"selectionType"],updateSelectionOnRefresh:[4,"updateSelectionOnRefresh"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](15,0,null,1,5,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](16,0,null,null,1,"cd-table-actions",[["class","btn-group"],["id","osd-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](17,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](18,0,null,null,2,"cd-table-actions",[["btnColor","light"],["class","btn-group"],["dropDownOnly","Cluster-wide configuration"],["id","cluster-wide-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](19,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"],btnColor:[3,"btnColor"],dropDownOnly:[4,"dropDownOnly"]},null),s["ɵpod"](20,{read:0}),(t()(),s["ɵeld"](21,0,null,3,1,"cd-osd-details",[["cdTableDetail",""]],null,null,null,gl,sl)),s["ɵdid"](22,573440,null,0,il,[Pi,J.a],{selection:[0,"selection"]},null),(t()(),s["ɵand"](0,[[1,2],["osdUsageTpl",2]],null,0,null,El)),(t()(),s["ɵand"](0,[[8,2],["flagsTpl",2]],null,0,null,Pl)),(t()(),s["ɵand"](16777216,null,0,1,null,Ml)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[2,2],["markOsdConfirmationTpl",2]],null,0,null,ql)),(t()(),s["ɵand"](0,[[3,2],["criticalConfirmationTpl",2]],null,0,null,Gl)),(t()(),s["ɵand"](0,[[7,2],["deleteOsdExtraTpl",2]],null,0,null,Bl))],(function(t,e){var n=e.component;t(e,12,0,"OSDs List"),t(e,14,0,n.osds,n.columns,!0,"multiClick","never"),t(e,17,0,n.permissions.osd,n.selection,n.tableActions);var a=t(e,20,0,!0);t(e,19,0,a,n.selection,n.clusterWideActions,"light","Cluster-wide configuration"),t(e,22,0,n.expandedRow),t(e,26,0,n.permissions.grafana.read)}),(function(t,e){t(e,9,0,s["ɵnov"](e,10).clazz),t(e,11,0,s["ɵnov"](e,12).id,s["ɵnov"](e,12).active,s["ɵnov"](e,12).addClass,s["ɵnov"](e,12).role,s["ɵnov"](e,12).ariaLabelledby)}))}function Yl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-osd-list",[],null,null,null,zl,kl)),s["ɵprd"](256,null,Is.a,Rl,[]),s["ɵdid"](2,114688,null,0,Al,[J.a,Pi,Fa.a,Ct.b,fe.a,Is.a,Et.m,Ls,Ds.a,St.b,bt.a],null,null)],(function(t,e){t(e,2,0)}),null)}var Hl=s["ɵccf"]("cd-osd-list",Al,Yl,{},{},[]);class Ul{constructor(t,e,n){this.formBuilder=t,this.bsModalRef=e,this.actionLabels=n,this.submitAction=new s.EventEmitter,this.icons=pt.a,this.filterColumns=[],this.devices=[],this.filteredDevices=[],this.capacity=0,this.canSubmit=!1,this.requiredFilters=[],this.action=n.ADD,this.createForm()}ngAfterViewInit(){const t=X.filter(this.inventoryDevices.columns,t=>this.filterColumns.includes(t.prop)&&"hostname"!==t.prop);this.requiredFilters=X.map(t,"name")}createForm(){this.formGroup=this.formBuilder.group({})}onFilterChange(t){if(this.capacity=0,this.canSubmit=!1,X.isEmpty(t.filters))this.filteredDevices=[],this.event=void 0;else{const e=t.filters.filter(t=>"hostname"!==t.prop);this.canSubmit=!X.isEmpty(e),this.filteredDevices=t.data,this.capacity=X.sumBy(this.filteredDevices,"sys_api.size"),this.event=t}}onSubmit(){this.submitAction.emit(this.event),this.bsModalRef.hide()}}class Wl{constructor(t,e){this.bsModalService=t,this.i18n=e,this.selected=new s.EventEmitter,this.cleared=new s.EventEmitter,this.icons=pt.a,this.devices=[],this.capacity=0,this.appliedFilters=[],this.tooltips={noAvailDevices:this.i18n("No available devices"),addPrimaryFirst:this.i18n("Please add primary devices first"),addByFilters:this.i18n("Add devices by using filters")}}ngOnInit(){this.updateAddButtonTooltip()}ngOnChanges(){this.updateAddButtonTooltip()}showSelectionModal(){let t=["human_readable_type","sys_api.vendor","sys_api.model","sys_api.size"];"data"===this.type&&(t=["hostname",...t]),this.bsModalService.show(Ul,{class:"modal-xl",initialState:{hostname:this.hostname,deviceType:this.name,devices:this.availDevices,filterColumns:t}}).content.submitAction.subscribe(t=>{this.devices=t.data,this.capacity=X.sumBy(this.devices,"sys_api.size"),this.appliedFilters=t.filters;const e=X.assign({type:this.type},t);this.selected.emit(e)})}updateAddButtonTooltip(){this.addButtonTooltip="data"===this.type&&0===this.availDevices.length?this.tooltips.noAvailDevices:this.canSelect?0===this.availDevices.length?this.tooltips.noAvailDevices:this.tooltips.addByFilters:this.tooltips.addPrimaryFirst}clearDevices(){const t={type:this.type,clearedDevices:[...this.devices]};this.devices=[],this.cleared.emit(t)}}var Kl=s["ɵcrt"]({encapsulation:0,styles:[[".tc_clearSelections[_ngcontent-%COMP%]{text-decoration:none}"]],data:{}});function $l(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The primary storage devices. These devices contain all OSD data."]))],null,null)}function Zl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Write-Ahead-Log devices. These devices are used for BlueStore’s internal journal. It is only useful to use a WAL device if the device is faster than the primary device (e.g. NVME devices or SSDs). If there is only a small amount of fast storage available (e.g., less than a gigabyte), we recommend using it as a WAL device."]))],null,null)}function Jl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["DB devices can be used for storing BlueStore’s internal metadata. It is only helpful to provision a DB device if it is faster than the primary device (e.g. NVME devices or SSD)."]))],null,null)}function Ql(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,6,"button",[["class","btn btn-light"],["data-toggle","tooltip"],["type","button"]],[[8,"title",0],[8,"disabled",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.showSelectionModal()&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1),(t()(),s["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add"]))],(function(t,e){var n=t(e,5,0,e.component.icons.add);t(e,4,0,n)}),(function(t,e){var n=e.component;t(e,1,0,n.addButtonTooltip,0===n.availDevices.length||!n.canSelect)}))}function Xl(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",": ",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit.name,e.context.$implicit.value.formatted)}))}function td(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"div",[["class","float-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["Raw capacity: ",""])),s["ɵppd"](3,1)],null,(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent,0),n.capacity));t(e,2,0,a)}))}function ed(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"div",[["class","pb-2 my-2 border-bottom"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Xl)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](3,0,null,null,6,"a",[["class","tc_clearSelections"],["href",""]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(t.component.clearDevices(),a=!1),a}),null,null)),(t()(),s["ɵeld"](4,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,1),(t()(),s["ɵeld"](8,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clear"])),(t()(),s["ɵeld"](10,0,null,null,3,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,2,"cd-inventory-devices",[],null,null,null,fi,ci)),s["ɵdid"](12,245760,null,0,di,[J.a,Fa.a,fe.a,Ct.b,bt.a,si],{devices:[0,"devices"],hiddenColumns:[1,"hiddenColumns"],filterColumns:[2,"filterColumns"]},null),s["ɵpad"](13,2),(t()(),s["ɵand"](16777216,null,null,1,null,td)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,n.appliedFilters);var a=t(e,7,0,n.icons.clearFilters);t(e,6,0,a);var r=n.devices,i=t(e,13,0,"available","osd_ids");t(e,12,0,r,i,s["ɵEMPTY_ARRAY"]),t(e,15,0,"data"===n.type)}),null)}function nd(t){return s["ɵvid"](0,[s["ɵpid"](0,Fa.a,[Ka.a]),(t()(),s["ɵeld"](1,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,10,"label",[["class","cd-col-form-label"],["for","createDeleteButton"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](7,null,[""," devices"])),(t()(),s["ɵeld"](8,0,null,null,7,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](9,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵand"](16777216,null,0,1,null,$l)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Zl)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Jl)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](16,0,null,0,3,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Ql)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["blockClearDevices",2]],null,0,null,ed))],(function(t,e){var n=e.component;t(e,2,0),t(e,11,0,"data"===n.type),t(e,13,0,"wal"===n.type),t(e,15,0,"db"===n.type),t(e,18,0,0===n.devices.length,s["ɵnov"](e,19))}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,7,0,n.name)}))}class ad{constructor(t,e,n,a,r){this.bsModalRef=t,this.actionLabels=e,this.formBuilder=n,this.osdService=a,this.taskWrapper=r,this.driveGroups=[],this.submitAction=new s.EventEmitter,this.action=e.CREATE,this.createForm()}ngOnInit(){}createForm(){this.formGroup=this.formBuilder.group({})}onSubmit(){this.taskWrapper.wrapTaskAroundCall({task:new As.a("osd/"+St.e.CREATE,{tracking_id:X.join(X.map(this.driveGroups,"service_id"),", ")}),call:this.osdService.create(this.driveGroups)}).subscribe(void 0,()=>{this.formGroup.setErrors({cdSubmitButton:!0})},()=>{this.submitAction.emit(),this.bsModalRef.hide()})}}class rd{constructor(){this.reset(),this.formatterService=new Ka.a,this.deviceSelectionAttrs={"sys_api.vendor":{name:"vendor"},"sys_api.model":{name:"model"},device_id:{name:"device_id"},human_readable_type:{name:"rotational",formatter:t=>"hdd"===t.toLowerCase()},"sys_api.size":{name:"size",formatter:t=>this.formatterService.format_number(t,1024,["B","KB","MB","GB","TB","PB"]).replace(" ","")}}}reset(){this.spec={service_type:"osd",service_id:"dashboard-"+X.now()}}setName(t){this.spec.service_id=t}setHostPattern(t){this.spec.host_pattern=t}setDeviceSelection(t,e){const n=t+"_devices";this.spec[n]={},e.forEach(t=>{const e=this.deviceSelectionAttrs[t.prop];e&&(this.spec[n][e.name]=e.formatter?e.formatter(t.value.raw):t.value.raw)})}clearDeviceSelection(t){delete this.spec[t+"_devices"]}setSlots(t,e){const n=t+"_slots";0===e?delete this.spec[n]:this.spec[n]=e}setFeature(t,e){e?this.spec[t]=!0:delete this.spec[t]}}class id{constructor(t,e,n,a,r,i){this.actionLabels=t,this.authStorageService=e,this.i18n=n,this.orchService=a,this.router=r,this.bsModalService=i,this.icons=pt.a,this.columns=[],this.loading=!1,this.allDevices=[],this.availDevices=[],this.dataDeviceFilters=[],this.dbDeviceFilters=[],this.walDeviceFilters=[],this.hostname="",this.driveGroup=new rd,this.featureList=[],this.hasOrchestrator=!1,this.resource=this.i18n("OSDs"),this.action=this.actionLabels.CREATE,this.features={encrypted:{key:"encrypted",desc:this.i18n("Encryption")}},this.featureList=X.map(this.features,(t,e)=>Object.assign(t,{key:e})),this.createForm()}ngOnInit(){this.orchService.status().subscribe(t=>{this.hasOrchestrator=t.available,this.hasOrchestrator&&this.getDataDevices()}),this.form.get("walSlots").valueChanges.subscribe(t=>this.setSlots("wal",t)),this.form.get("dbSlots").valueChanges.subscribe(t=>this.setSlots("db",t)),X.each(this.features,t=>{this.form.get("features").get(t.key).valueChanges.subscribe(e=>this.featureFormUpdate(t.key,e))})}createForm(){this.form=new tu.a({walSlots:new K.i(0,{validators:[K.B.min(0)]}),dbSlots:new K.i(0,{validators:[K.B.min(0)]}),features:new tu.a(this.featureList.reduce((t,e)=>(t[e.key]=new K.i({value:!1,disabled:!0}),t),{}))})}getDataDevices(){this.loading||(this.loading=!0,this.orchService.inventoryDeviceList().subscribe(t=>{this.allDevices=X.filter(t,"available"),this.availDevices=[...this.allDevices],this.loading=!1},()=>{this.allDevices=[],this.availDevices=[],this.loading=!1}))}setSlots(t,e){"number"==typeof e&&e>=0&&this.driveGroup.setSlots(t,e)}featureFormUpdate(t,e){this.driveGroup.setFeature(t,e)}enableFeatures(){this.featureList.forEach(t=>{this.form.get(t.key).enable({emitEvent:!1})})}disableFeatures(){this.featureList.forEach(t=>{const e=this.form.get(t.key);e.disable({emitEvent:!1}),e.setValue(!1,{emitEvent:!1})})}onDevicesSelected(t){if(this.availDevices=t.dataOut,"data"===t.type){const e=X.find(t.filters,{prop:"hostname"});e?(this.hostname=e.value.raw,this.availDevices=t.dataOut.filter(t=>t.hostname===this.hostname),this.driveGroup.setHostPattern(this.hostname)):this.driveGroup.setHostPattern("*"),this.enableFeatures()}this.driveGroup.setDeviceSelection(t.type,t.filters)}onDevicesCleared(t){"data"===t.type?(this.availDevices=[...this.allDevices],this.walDeviceSelectionGroups.devices=[],this.dbDeviceSelectionGroups.devices=[],this.disableFeatures(),this.driveGroup.reset(),this.form.get("walSlots").setValue(0,{emitEvent:!1}),this.form.get("dbSlots").setValue(0,{emitEvent:!1})):(this.availDevices=[...this.availDevices,...t.clearedDevices],this.driveGroup.clearDeviceSelection(t.type),this.form.get(t.type+"Slots").setValue(0,{emitEvent:!1}))}submit(){const t=this.authStorageService.getUsername();this.driveGroup.setName(`dashboard-${t}-${X.now()}`),this.bsModalService.show(ad,{initialState:{driveGroups:[this.driveGroup.spec]}}).content.submitAction.subscribe(()=>{this.router.navigate(["/osd"])}),this.previewButton.loading=!1}}var sd=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ud(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,ii,ri)),s["ɵdid"](1,49152,null,0,ai,[],null,null)],null,null)}function od(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Value should be greater than or equal to 0"]))],null,null)}function ld(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,9,"label",[["class","cd-col-form-label"],["for","walSlots"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["WAL slots"])),(t()(),s["ɵeld"](7,0,null,null,6,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](8,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](9,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["How many OSDs per WAL device."])),(t()(),s["ɵeld"](11,0,null,0,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Specify 0 to let Orchestrator backend decide it."])),(t()(),s["ɵeld"](14,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,8,"input",[["class","form-control"],["formControlName","walSlots"],["id","walSlots"],["min","0"],["name","walSlots"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,17)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,17).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,17)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,17)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,18).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,18).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,18).onTouched()&&a),a}),null,null)),s["ɵdid"](16,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](17,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](18,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](20,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](22,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](23,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,od)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,20,0,"walSlots"),t(e,23,0,"walSlots"),t(e,25,0,n.form.showError("walSlots",s["ɵnov"](e.parent,3),"min"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,15,0,s["ɵnov"](e,22).ngClassUntouched,s["ɵnov"](e,22).ngClassTouched,s["ɵnov"](e,22).ngClassPristine,s["ɵnov"](e,22).ngClassDirty,s["ɵnov"](e,22).ngClassValid,s["ɵnov"](e,22).ngClassInvalid,s["ɵnov"](e,22).ngClassPending,s["ɵnov"](e,23).validClass,s["ɵnov"](e,23).invalidClass)}))}function dd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Value should be greater than or equal to 0"]))],null,null)}function cd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,9,"label",[["class","cd-col-form-label"],["for","dbSlots"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["DB slots"])),(t()(),s["ɵeld"](7,0,null,null,6,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](8,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](9,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["How many OSDs per DB device."])),(t()(),s["ɵeld"](11,0,null,0,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Specify 0 to let Orchestrator backend decide it."])),(t()(),s["ɵeld"](14,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,8,"input",[["class","form-control"],["formControlName","dbSlots"],["id","dbSlots"],["min","0"],["name","dbSlots"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,17)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,17).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,17)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,17)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,18).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,18).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,18).onTouched()&&a),a}),null,null)),s["ɵdid"](16,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](17,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](18,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](20,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](22,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](23,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,dd)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,20,0,"dbSlots"),t(e,23,0,"dbSlots"),t(e,25,0,n.form.showError("dbSlots",s["ɵnov"](e.parent,3),"min"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,15,0,s["ɵnov"](e,22).ngClassUntouched,s["ɵnov"](e,22).ngClassTouched,s["ɵnov"](e,22).ngClassPristine,s["ɵnov"](e,22).ngClassDirty,s["ɵnov"](e,22).ngClassValid,s["ɵnov"](e,22).ngClassInvalid,s["ɵnov"](e,22).ngClassPending,s["ɵnov"](e,23).validClass,s["ɵnov"](e,23).invalidClass)}))}function fd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[8,"name",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,3).onTouched()&&a),a}),null,null)),s["ɵdid"](2,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](3,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](5,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](7,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](8,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](9,0,null,null,1,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](10,null,["",""]))],(function(t,e){t(e,5,0,s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,"")),t(e,8,0,s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,""))}),(function(t,e){t(e,1,1,[s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,""),s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,""),s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending,s["ɵnov"](e,8).validClass,s["ɵnov"](e,8).invalidClass]),t(e,9,0,s["ɵinlineInterpolate"](1,"",e.context.$implicit.key,"")),t(e,10,0,e.context.$implicit.desc)}))}function hd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,48,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,47,"form",[["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,41,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,[""," ",""])),s["ɵppd"](10,1),s["ɵppd"](11,1),(t()(),s["ɵeld"](12,0,null,null,29,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,2,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,1,"cd-osd-devices-selection-groups",[["name","Primary"],["type","data"]],null,[[null,"selected"],[null,"cleared"]],(function(t,e,n){var a=!0,r=t.component;return"selected"===e&&(a=!1!==r.onDevicesSelected(n)&&a),"cleared"===e&&(a=!1!==r.onDevicesCleared(n)&&a),a}),nd,Kl)),s["ɵdid"](15,638976,[[1,4],["dataDeviceSelectionGroups",4]],0,Wl,[Ct.b,fe.a],{type:[0,"type"],name:[1,"name"],availDevices:[2,"availDevices"],canSelect:[3,"canSelect"]},{selected:"selected",cleared:"cleared"}),(t()(),s["ɵeld"](16,0,null,null,10,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Shared devices"])),(t()(),s["ɵeld"](19,0,null,null,1,"cd-osd-devices-selection-groups",[["name","WAL"],["type","wal"]],null,[[null,"selected"],[null,"cleared"]],(function(t,e,n){var a=!0,r=t.component;return"selected"===e&&(a=!1!==r.onDevicesSelected(n)&&a),"cleared"===e&&(a=!1!==r.onDevicesCleared(n)&&a),a}),nd,Kl)),s["ɵdid"](20,638976,[[2,4],["walDeviceSelectionGroups",4]],0,Wl,[Ct.b,fe.a],{type:[0,"type"],name:[1,"name"],availDevices:[2,"availDevices"],canSelect:[3,"canSelect"]},{selected:"selected",cleared:"cleared"}),(t()(),s["ɵand"](16777216,null,null,1,null,ld)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](23,0,null,null,1,"cd-osd-devices-selection-groups",[["name","DB"],["type","db"]],null,[[null,"selected"],[null,"cleared"]],(function(t,e,n){var a=!0,r=t.component;return"selected"===e&&(a=!1!==r.onDevicesSelected(n)&&a),"cleared"===e&&(a=!1!==r.onDevicesCleared(n)&&a),a}),nd,Kl)),s["ɵdid"](24,638976,[[3,4],["dbDeviceSelectionGroups",4]],0,Wl,[Ct.b,fe.a],{type:[0,"type"],name:[1,"name"],availDevices:[2,"availDevices"],canSelect:[3,"canSelect"]},{selected:"selected",cleared:"cleared"}),(t()(),s["ɵand"](16777216,null,null,1,null,cd)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](27,0,null,null,14,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Configuration"])),(t()(),s["ɵeld"](30,0,null,null,11,"div",[["class","form-group row"],["formGroupName","features"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](31,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](33,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](34,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](37,0,null,0,1,"label",[["class","cd-col-form-label"],["for","features"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Features"])),(t()(),s["ɵeld"](39,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,fd)),s["ɵdid"](41,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](42,0,null,null,6,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](43,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](44,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submit()&&a),a}),$s.b,$s.a)),s["ɵdid"](45,114688,[[4,4],["previewButton",4]],0,Zs.a,[s.ElementRef],{form:[0,"form"],disabled:[1,"disabled"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Preview"])),(t()(),s["ɵeld"](47,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](48,49152,null,0,Qs.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,3,0,n.form),t(e,6,0,n.form),t(e,15,0,"data","Primary",n.availDevices,0!==n.availDevices.length),t(e,20,0,"wal","WAL",n.availDevices,0!==s["ɵnov"](e,15).devices.length),t(e,22,0,0!==s["ɵnov"](e,20).devices.length),t(e,24,0,"db","DB",n.availDevices,0!==s["ɵnov"](e,15).devices.length),t(e,26,0,0!==s["ɵnov"](e,24).devices.length),t(e,31,0,"features"),t(e,34,0),t(e,41,0,n.featureList),t(e,45,0,s["ɵnov"](e,3),0===s["ɵnov"](e,15).devices.length)}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending);var a=s["ɵunv"](e,9,0,t(e,10,0,s["ɵnov"](e.parent,0),n.action)),r=s["ɵunv"](e,9,1,t(e,11,0,s["ɵnov"](e.parent,1),n.resource));t(e,9,0,a,r),t(e,30,0,s["ɵnov"](e,33).ngClassUntouched,s["ɵnov"](e,33).ngClassTouched,s["ɵnov"](e,33).ngClassPristine,s["ɵnov"](e,33).ngClassDirty,s["ɵnov"](e,33).ngClassValid,s["ɵnov"](e,33).ngClassInvalid,s["ɵnov"](e,33).ngClassPending,s["ɵnov"](e,34).hasErrors,s["ɵnov"](e,34).hasSuccess)}))}function gd(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Xs.a,[]),s["ɵqud"](671088640,1,{dataDeviceSelectionGroups:0}),s["ɵqud"](671088640,2,{walDeviceSelectionGroups:0}),s["ɵqud"](671088640,3,{dbDeviceSelectionGroups:0}),s["ɵqud"](671088640,4,{previewButton:0}),(t()(),s["ɵand"](16777216,null,null,1,null,ud)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,hd)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,7,0,!n.hasOrchestrator),t(e,9,0,!n.loading&&n.hasOrchestrator)}),null)}function pd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-form",[],null,null,null,gd,sd)),s["ɵdid"](1,114688,null,0,id,[St.b,J.a,fe.a,si,Et.m,Ct.b],null,null)],(function(t,e){t(e,1,0)}),null)}var bd=s["ɵccf"]("cd-osd-form",id,pd,{},{},[]),md=n("iExv");class yd{constructor(t){this.i18n=t,this.flags={runtime:this.i18n("The value can be updated at runtime."),no_mon_update:this.i18n("Daemons/clients do not pull this value from the\n      monitor config database. We disallow setting this option via 'ceph config\n      set ...'. This option should be configured via ceph.conf or via the\n      command line."),startup:this.i18n("Option takes effect only during daemon startup."),cluster_create:this.i18n("Option only affects cluster creation."),create:this.i18n("Option only affects daemon creation.")}}ngOnChanges(){this.selection&&(this.selection.services=X.split(this.selection.services,","))}}var vd=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function xd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",": ","",""])),(t()(),s["ɵeld"](2,0,null,null,0,"br",[],null,null,null,null,null))],null,(function(t,e){t(e,1,0,e.context.$implicit.section,e.context.$implicit.value,e.context.last?"":",")}))}function _d(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"span",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"span",[],[[8,"title",0]],null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,2,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(t()(),s["ɵted"](3,null,["",""])),s["ɵppd"](4,1)],null,(function(t,e){t(e,1,0,s["ɵinlineInterpolate"](1,"",e.component.flags[e.context.$implicit],""));var n=s["ɵunv"](e,3,0,t(e,4,0,s["ɵnov"](e.parent.parent,0),e.context.$implicit));t(e,3,0,n)}))}function Td(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","badge badge-dark mr-2"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit)}))}function wd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,94,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,92,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,90,"table",[["class","table table-striped table-bordered"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,89,"tbody",[],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,1,"td",[["class","bold w-25"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Name"])),(t()(),s["ɵeld"](9,0,null,null,1,"td",[["class","w-75"]],null,null,null,null,null)),(t()(),s["ɵted"](10,null,["",""])),(t()(),s["ɵeld"](11,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Description"])),(t()(),s["ɵeld"](14,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](15,null,["",""])),(t()(),s["ɵeld"](16,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](17,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Long description"])),(t()(),s["ɵeld"](19,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](20,null,["",""])),(t()(),s["ɵeld"](21,0,null,null,5,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Current values"])),(t()(),s["ɵeld"](24,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,xd)),s["ɵdid"](26,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](27,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Default"])),(t()(),s["ɵeld"](30,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](31,null,["",""])),(t()(),s["ɵeld"](32,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](33,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Daemon default"])),(t()(),s["ɵeld"](35,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](36,null,["",""])),(t()(),s["ɵeld"](37,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](38,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Type"])),(t()(),s["ɵeld"](40,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](41,null,["",""])),(t()(),s["ɵeld"](42,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](43,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Min"])),(t()(),s["ɵeld"](45,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](46,null,["",""])),(t()(),s["ɵeld"](47,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](48,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Max"])),(t()(),s["ɵeld"](50,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](51,null,["",""])),(t()(),s["ɵeld"](52,0,null,null,5,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](53,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Flags"])),(t()(),s["ɵeld"](55,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,_d)),s["ɵdid"](57,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](58,0,null,null,5,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](59,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Services"])),(t()(),s["ɵeld"](61,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Td)),s["ɵdid"](63,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](64,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](65,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Source"])),(t()(),s["ɵeld"](67,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](68,null,["",""])),(t()(),s["ɵeld"](69,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](70,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Level"])),(t()(),s["ɵeld"](72,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](73,null,["",""])),(t()(),s["ɵeld"](74,0,null,null,5,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](75,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Can be updated at runtime (editable)"])),(t()(),s["ɵeld"](77,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](78,null,["",""])),s["ɵppd"](79,1),(t()(),s["ɵeld"](80,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](81,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Tags"])),(t()(),s["ɵeld"](83,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](84,null,["",""])),(t()(),s["ɵeld"](85,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](86,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Enum values"])),(t()(),s["ɵeld"](88,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](89,null,["",""])),(t()(),s["ɵeld"](90,0,null,null,4,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](91,0,null,null,1,"td",[["class","bold"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["See also"])),(t()(),s["ɵeld"](93,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](94,null,["",""]))],(function(t,e){var n=e.component;t(e,3,0,"Details"),t(e,26,0,n.selection.value),t(e,57,0,n.selection.flags),t(e,63,0,n.selection.services)}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,10,0,n.selection.name),t(e,15,0,n.selection.desc),t(e,20,0,n.selection.long_desc),t(e,31,0,n.selection.default),t(e,36,0,n.selection.daemon_default),t(e,41,0,n.selection.type),t(e,46,0,n.selection.min),t(e,51,0,n.selection.max),t(e,68,0,n.selection.source),t(e,73,0,n.selection.level);var a=s["ɵunv"](e,78,0,t(e,79,0,s["ɵnov"](e.parent,1),n.selection.can_update_at_runtime));t(e,78,0,a),t(e,84,0,n.selection.tags),t(e,89,0,n.selection.enum_values),t(e,94,0,n.selection.see_also)}))}function Od(t){return s["ɵvid"](0,[s["ɵpid"](0,i.UpperCasePipe,[]),s["ɵpid"](0,md.a,[fe.a]),(t()(),s["ɵand"](16777216,null,null,1,null,wd)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,3,0,e.component.selection)}),null)}class Sd extends Ns.a{constructor(t,e,n,a){super(),this.authStorageService=t,this.configurationService=e,this.i18n=n,this.actionLabels=a,this.data=[],this.icons=pt.a,this.selection=new li.a,this.filters=[{name:this.i18n("Level"),prop:"level",filterOptions:["basic","advanced","dev"],filterInitValue:"basic",filterPredicate:(t,e)=>{let n;return function(t){t[t.basic=0]="basic",t[t.advanced=1]="advanced",t[t.dev=2]="dev"}(n||(n={})),n[t.level]<=n[e]}},{name:this.i18n("Service"),prop:"services",filterOptions:["mon","mgr","osd","mds","common","mds_client","rgw"],filterPredicate:(t,e)=>t.services.includes(e)},{name:this.i18n("Source"),prop:"source",filterOptions:["mon"],filterPredicate:(t,e)=>!!t.hasOwnProperty("source")&&t.source.includes(e)},{name:this.i18n("Modified"),prop:"modified",filterOptions:["yes","no"],filterPredicate:(t,e)=>!("yes"!==e||!t.hasOwnProperty("value"))||"no"===e&&!t.hasOwnProperty("value")}],this.permission=this.authStorageService.getPermissions().configOpt;const r=()=>this.selection.first()&&""+encodeURIComponent(this.selection.first().name);this.tableActions=[{permission:"update",icon:pt.a.edit,routerLink:()=>"/configuration/edit/"+r(),name:this.actionLabels.EDIT,disable:()=>!this.isEditable(this.selection)}]}ngOnInit(){this.columns=[{canAutoResize:!0,prop:"name",name:this.i18n("Name")},{prop:"desc",name:this.i18n("Description"),cellClass:"wrap"},{prop:"value",name:this.i18n("Current value"),cellClass:"wrap",cellTemplate:this.confValTpl},{prop:"default",name:this.i18n("Default"),cellClass:"wrap"},{prop:"can_update_at_runtime",name:this.i18n("Editable"),cellTransformation:oi.a.checkIcon,flexGrow:.4,cellClass:"text-center"}]}updateSelection(t){this.selection=t}getConfigurationList(t){this.configurationService.getConfigData().subscribe(t=>{this.data=t},()=>{t.error()})}isEditable(t){return 1===t.selected.length&&t.selected[0].can_update_at_runtime}}var Id=s["ɵcrt"]({encapsulation:0,styles:[[".filter[_ngcontent-%COMP%]{padding-right:8px}.fa-stack[_ngcontent-%COMP%]{font-size:.79rem}.fa-stack[_ngcontent-%COMP%]   .fa-stack-1x[_ngcontent-%COMP%]{margin-left:8px;margin-top:5px}  datatable-body-cell.wrap{word-break:break-all}"]],data:{}});function Nd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",": ","",""])),(t()(),s["ɵeld"](2,0,null,null,0,"br",[],null,null,null,null,null))],null,(function(t,e){t(e,1,0,e.context.$implicit.section,e.context.$implicit.value,e.context.last?"":",")}))}function Cd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Nd)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.parent.context.value)}),null)}function Rd(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Cd)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.context.value)}),null)}function Ad(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{confValTpl:0}),s["ɵqud"](671088640,2,{confFlagTpl:0}),(t()(),s["ɵeld"](2,0,null,null,5,"cd-table",[["selectionType","single"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.getConfigurationList(n)&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](3,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],selectionType:[3,"selectionType"],extraFilterableColumns:[4,"extraFilterableColumns"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](5,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](6,0,null,3,1,"cd-configuration-details",[["cdTableDetail",""]],null,null,null,Od,vd)),s["ɵdid"](7,573440,null,0,yd,[fe.a],{selection:[0,"selection"]},null),(t()(),s["ɵand"](0,[[1,2],["confValTpl",2]],null,0,null,Rd))],(function(t,e){var n=e.component;t(e,3,0,n.data,n.columns,!0,"single",n.filters),t(e,5,0,n.permission,n.selection,n.tableActions),t(e,7,0,n.expandedRow)}),null)}function kd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-configuration",[],null,null,null,Ad,Id)),s["ɵdid"](1,114688,null,0,Sd,[J.a,_l.a,fe.a,St.b],null,null)],(function(t,e){t(e,1,0)}),null)}var Ed=s["ɵccf"]("cd-configuration",Sd,kd,{},{},[]);class Ld{constructor(){this.value=[]}}class Dd{constructor(t,e,n,a,r){this.route=t,this.router=e,this.configService=n,this.notificationService=a,this.i18n=r,this.availSections=["global","mon","mgr","osd","mds","client"],this.createForm()}createForm(){const t={name:new K.i({value:null}),desc:new K.i({value:null}),long_desc:new K.i({value:null}),values:new K.k({}),default:new K.i({value:null}),daemon_default:new K.i({value:null}),services:new K.i([])};this.availSections.forEach(e=>{t.values.addControl(e,new K.i(null))}),this.configForm=new tu.a(t)}ngOnInit(){this.route.params.subscribe(t=>{this.configService.get(t.name).subscribe(t=>{this.setResponse(t)})})}getValidators(t){const e=Tl.getTypeValidators(t);if(e)return this.patternHelpText=e.patternHelpText,"max"in e&&""!==e.max&&(this.maxValue=e.max),"min"in e&&""!==e.min&&(this.minValue=e.min),e.validators}getStep(t,e){return Tl.getTypeStep(t,e)}setResponse(t){this.response=t;const e=this.getValidators(t);this.configForm.get("name").setValue(t.name),this.configForm.get("desc").setValue(t.desc),this.configForm.get("long_desc").setValue(t.long_desc),this.configForm.get("default").setValue(t.default),this.configForm.get("daemon_default").setValue(t.daemon_default),this.configForm.get("services").setValue(t.services),this.response.value&&this.response.value.forEach(t=>{let e=null;e="true"===t.value||"false"!==t.value&&t.value,this.configForm.get("values").get(t.section).setValue(e)}),this.availSections.forEach(t=>{this.configForm.get("values").get(t).setValidators(e)});const n=Tl.getType(t.type);this.type=n.name,this.inputType=n.inputType,this.humanReadableType=n.humanReadable}createRequest(){const t=[];if(this.availSections.forEach(e=>{const n=this.configForm.getValue(e);null!==n&&""!==n&&t.push({section:e,value:n})}),!X.isEqual(this.response.value,t)){const e=new Ld;return e.name=this.configForm.getValue("name"),e.value=t,e}return null}submit(){const t=this.createRequest();t&&this.configService.create(t).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n("Updated config option {{name}}",{name:t.name})),this.router.navigate(["/configuration"])},()=>{this.configForm.setErrors({cdSubmitButton:!0})}),this.router.navigate(["/configuration"])}}var Pd=s["ɵcrt"]({encapsulation:0,styles:[[".form-component-badge[_ngcontent-%COMP%]{height:34px;display:block}.form-component-badge[_ngcontent-%COMP%]   span[_ngcontent-%COMP%]{margin-top:7px}.resize-vertical[_ngcontent-%COMP%]{resize:vertical}"]],data:{}});function Md(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Description"])),(t()(),s["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"textarea",[["class","form-control resize-vertical"],["formControlName","desc"],["id","desc"],["readonly",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,8)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,8)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,8)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](10,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["            "]))],(function(t,e){t(e,1,0),t(e,10,0,"desc"),t(e,13,0,"desc")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,13).validClass,s["ɵnov"](e,13).invalidClass)}))}function qd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Long description"])),(t()(),s["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"textarea",[["class","form-control resize-vertical"],["formControlName","long_desc"],["id","long_desc"],["readonly",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,8)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,8)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,8)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](10,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["            "]))],(function(t,e){t(e,1,0),t(e,10,0,"long_desc"),t(e,13,0,"long_desc")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,13).validClass,s["ɵnov"](e,13).invalidClass)}))}function jd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Default"])),(t()(),s["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","default"],["id","default"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,9)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,9)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,9)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](11,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,1,0),t(e,11,0,"default"),t(e,14,0,"default")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Fd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Daemon default"])),(t()(),s["ɵeld"](6,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"input",[["class","form-control"],["formControlName","daemon_default"],["id","daemon_default"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,9)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,9)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,9)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](11,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,1,0),t(e,11,0,"daemon_default"),t(e,14,0,"daemon_default")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Vd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[["class","form-component-badge"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","badge badge-dark"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""]))],null,(function(t,e){t(e,2,0,e.context.$implicit)}))}function Gd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,11,{FormControlNames:1}),s["ɵqud"](603979776,12,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Services"])),(t()(),s["ɵeld"](6,0,null,0,2,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Vd)),s["ɵdid"](8,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,8,0,n.configForm.getValue("services"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess)}))}function Bd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,13,{FormControlNames:1}),s["ɵqud"](603979776,14,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](5,null,[""," "])),(t()(),s["ɵeld"](6,0,null,0,20,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,19,"select",[["class","form-control custom-select"],["id","pool"],["name","pool"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,9).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](11,671744,[[13,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](15,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](16,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](17,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Default --"])),(t()(),s["ɵeld"](19,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](20,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](21,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["true"])),(t()(),s["ɵeld"](23,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](24,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](25,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["false"]))],(function(t,e){t(e,1,0),t(e,11,0,e.parent.context.$implicit),t(e,14,0,e.parent.context.$implicit),t(e,16,0,null),t(e,17,0,null),t(e,20,0,!0),t(e,21,0,!0),t(e,24,0,!1),t(e,25,0,!1)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.parent.context.$implicit),t(e,5,0,e.parent.context.$implicit),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function zd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.patternHelpText)}))}function Yd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.patternHelpText)}))}function Hd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too high! It must not be greater than ","."]))],null,(function(t,e){t(e,1,0,e.component.maxValue)}))}function Ud(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too low! It must not be lower than ","."]))],null,(function(t,e){t(e,1,0,e.component.minValue)}))}function Wd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,15,{FormControlNames:1}),s["ɵqud"](603979776,16,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](5,null,[""," "])),(t()(),s["ɵeld"](6,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,7,"input",[["class","form-control"]],[[8,"type",0],[8,"id",0],[8,"placeholder",0],[8,"step",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,9)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,9)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,9)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](11,671744,[[15,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zd)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yd)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hd)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ud)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,11,0,e.parent.context.$implicit),t(e,14,0,e.parent.context.$implicit),t(e,16,0,n.configForm.showError(e.parent.context.$implicit,s["ɵnov"](e.parent.parent,3),"pattern")),t(e,18,0,n.configForm.showError(e.parent.context.$implicit,s["ɵnov"](e.parent.parent,3),"invalidUuid")),t(e,20,0,n.configForm.showError(e.parent.context.$implicit,s["ɵnov"](e.parent.parent,3),"max")),t(e,22,0,n.configForm.showError(e.parent.context.$implicit,s["ɵnov"](e.parent.parent,3),"min"))}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.parent.context.$implicit),t(e,5,0,e.parent.context.$implicit),t(e,7,1,[n.inputType,e.parent.context.$implicit,n.humanReadableType,n.getStep(n.type,n.configForm.getValue(e.parent.context.$implicit)),s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass])}))}function Kd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Bd)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Wd)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.component;t(e,2,0,"bool"===n.type),t(e,4,0,"bool"!==n.type)}),null)}function $d(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,53,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,52,"form",[["name","configForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,46,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Edit"])),(t()(),s["ɵted"](11,null,[" "," "])),(t()(),s["ɵeld"](12,0,null,null,33,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](14,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](17,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Name"])),(t()(),s["ɵeld"](19,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,7,"input",[["class","form-control"],["formControlName","name"],["id","name"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,22)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,22).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,22)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,22)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](24,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](26,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Md)),s["ɵdid"](29,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,qd)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,jd)),s["ɵdid"](33,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fd)),s["ɵdid"](35,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gd)),s["ɵdid"](37,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](38,0,null,null,7,"div",[["formGroupName","values"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),s["ɵdid"](39,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](41,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](42,0,null,null,1,"h3",[["class","cd-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Values"])),(t()(),s["ɵand"](16777216,null,null,1,null,Kd)),s["ɵdid"](45,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](46,0,null,null,7,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](47,0,null,null,6,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](48,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submit()&&a),a}),$s.b,$s.a)),s["ɵdid"](49,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵeld"](50,0,null,0,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Save"])),(t()(),s["ɵeld"](52,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](53,49152,null,0,Qs.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,3,0,n.configForm),t(e,6,0,n.configForm),t(e,14,0),t(e,24,0,"name"),t(e,27,0,"name"),t(e,29,0,n.configForm.getValue("desc")),t(e,31,0,n.configForm.getValue("long_desc")),t(e,33,0,""!==n.configForm.getValue("default")),t(e,35,0,""!==n.configForm.getValue("daemon_default")),t(e,37,0,n.configForm.getValue("services").length>0),t(e,39,0,"values"),t(e,45,0,n.availSections),t(e,49,0,s["ɵnov"](e,3))}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending),t(e,11,0,n.configForm.getValue("name")),t(e,13,0,s["ɵnov"](e,14).hasErrors,s["ɵnov"](e,14).hasSuccess),t(e,20,0,s["ɵnov"](e,26).ngClassUntouched,s["ɵnov"](e,26).ngClassTouched,s["ɵnov"](e,26).ngClassPristine,s["ɵnov"](e,26).ngClassDirty,s["ɵnov"](e,26).ngClassValid,s["ɵnov"](e,26).ngClassInvalid,s["ɵnov"](e,26).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass),t(e,38,0,s["ɵnov"](e,41).ngClassUntouched,s["ɵnov"](e,41).ngClassTouched,s["ɵnov"](e,41).ngClassPristine,s["ɵnov"](e,41).ngClassDirty,s["ɵnov"](e,41).ngClassValid,s["ɵnov"](e,41).ngClassInvalid,s["ɵnov"](e,41).ngClassPending)}))}function Zd(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-configuration-form",[],null,null,null,$d,Pd)),s["ɵdid"](1,114688,null,0,Dd,[Et.a,Et.m,_l.a,bt.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Jd=s["ɵccf"]("cd-configuration-form",Dd,Zd,{},{},[]),Qd=n("LOMR"),Xd=n("MP8s"),tc=n("fxL3"),ec=n("gk6K"),nc=n("mrSG"),ac=n("yYhs");class rc{constructor(t){this.healthService=t,this.icons=pt.a,this.loadingIndicator=!0,this.nodes=[],this.treeOptions={useVirtualScroll:!0,nodeHeight:22,actionMapping:{mouse:{click:this.onNodeSelected.bind(this)}}},this.metadataKeyMap={}}ngOnInit(){this.healthService.getFullHealth().subscribe(t=>{this.loadingIndicator=!1,this.nodes=this.abstractTreeData(t)})}abstractTreeData(t){const e=t.osd_map.tree.nodes||[],n={};if(0===e.length)return[{name:"No nodes!"}];const a=[];return e.reverse().forEach(t=>{"root"===t.type&&a.push(t.id),n[t.id]=this.generateTreeLeaf(t,n)}),a.map(t=>n[t])}generateTreeLeaf(t,e){const n=t.id;this.metadataKeyMap[n]=t;const a=[],r={name:t.name+" ("+t.type+")",status:t.status,cdId:n,type:t.type};return t.children&&(t.children.sort().forEach(t=>{a.push(e[t])}),r.children=a),r}onNodeSelected(t,e){if(ac.a.ACTIVATE(t,e,!0),void 0!==e.data.cdId){const t=this.metadataKeyMap[e.data.cdId],{name:n,type:a}=t,r=nc.__rest(t,["name","type","status"]);this.metadata=r,this.metadataTitle=n+" ("+a+")"}else delete this.metadata,delete this.metadataTitle}onUpdateData(){this.tree.treeModel.expandAll()}}var ic=s["ɵcrt"]({encapsulation:0,styles:[[".tree-container[_ngcontent-%COMP%]{height:calc(100vh - 200px)}"]],data:{}});function sc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](3,3)],(function(t,e){var n=e.component,a=t(e,3,0,n.icons.large,n.icons.spinner,n.icons.spin);t(e,2,0,a)}),null)}function uc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"span",[["class","badge"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpad"](3,2),s["ɵpad"](4,3),s["ɵpod"](5,{"badge-success":0,"badge-danger":1}),(t()(),s["ɵted"](6,null,[" "," "]))],(function(t,e){var n=t(e,5,0,t(e,3,0,"in","up").includes(e.parent.context.$implicit.data.status),t(e,4,0,"down","out","destroyed").includes(e.parent.context.$implicit.data.status));t(e,2,0,"badge",n)}),(function(t,e){t(e,6,0,e.parent.context.$implicit.data.status)}))}function oc(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,uc)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" "])),(t()(),s["ɵeld"](4,0,null,null,3,"span",[["class","node-name"]],[[8,"innerHTML",1]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](7,{"type-osd":0})],(function(t,e){t(e,1,0,e.context.$implicit.data.status);var n=t(e,7,0,"osd"===e.context.$implicit.data.type);t(e,6,0,"node-name",n)}),(function(t,e){t(e,4,0,e.context.$implicit.data.name)}))}function lc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"div",[["class","col-sm-6 col-lg-6 metadata"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""])),(t()(),s["ɵeld"](3,0,null,null,1,"cd-table-key-value",[],null,null,null,Ai.b,Ai.a)),s["ɵdid"](4,638976,null,0,ki.a,[He.a],{data:[0,"data"]},null)],(function(t,e){t(e,4,0,e.component.metadata)}),(function(t,e){t(e,2,0,e.component.metadataTitle)}))}function dc(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{tree:0}),(t()(),s["ɵeld"](1,0,null,null,19,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,18,"div",[["class","col-sm-12 col-lg-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,17,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CRUSH map viewer"])),(t()(),s["ɵeld"](6,0,null,null,14,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,10,"div",[["class","col-sm-6 col-lg-6 tree-container"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,sc)),s["ɵdid"](10,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](11,0,null,null,7,"tree-root",[],null,[[null,"updateData"],["body","keydown"],["body","mousedown"]],(function(t,e,n){var a=!0,r=t.component;return"body:keydown"===e&&(a=!1!==s["ɵnov"](t,13).onKeydown(n)&&a),"body:mousedown"===e&&(a=!1!==s["ɵnov"](t,13).onMousedown(n)&&a),"updateData"===e&&(a=!1!==r.onUpdateData()&&a),a}),Qd.b,Qd.a)),s["ɵprd"](131584,null,Xd.a,Xd.a,[]),s["ɵdid"](13,573440,[[1,4],["tree",4]],4,tc.a,[Xd.a,ec.a],{nodes:[0,"nodes"],options:[1,"options"]},{updateData:"updateData"}),s["ɵqud"](603979776,2,{loadingTemplate:0}),s["ɵqud"](603979776,3,{treeNodeTemplate:0}),s["ɵqud"](603979776,4,{treeNodeWrapperTemplate:0}),s["ɵqud"](603979776,5,{treeNodeFullTemplate:0}),(t()(),s["ɵand"](0,[[3,2],["treeNodeTemplate",2]],null,0,null,oc)),(t()(),s["ɵand"](16777216,null,null,1,null,lc)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,10,0,n.loadingIndicator),t(e,13,0,n.nodes,n.treeOptions),t(e,20,0,n.metadata)}),null)}function cc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-crushmap",[],null,null,null,dc,ic)),s["ɵdid"](1,114688,null,0,rc,[$a],null,null)],(function(t,e){t(e,1,0)}),null)}var fc=s["ɵccf"]("cd-crushmap",rc,cc,{},{},[]),hc=n("AfCQ");let gc=(()=>{class t{writeValue(e){return{type:t.WRITE_VALUE,payload:e}}changeHours(e){return{type:t.CHANGE_HOURS,payload:e}}changeMinutes(e){return{type:t.CHANGE_MINUTES,payload:e}}changeSeconds(e){return{type:t.CHANGE_SECONDS,payload:e}}setTime(e){return{type:t.SET_TIME_UNIT,payload:e}}updateControls(e){return{type:t.UPDATE_CONTROLS,payload:e}}}return t.WRITE_VALUE="[timepicker] write value from ng model",t.CHANGE_HOURS="[timepicker] change hours",t.CHANGE_MINUTES="[timepicker] change minutes",t.CHANGE_SECONDS="[timepicker] change seconds",t.SET_TIME_UNIT="[timepicker] set time unit",t.UPDATE_CONTROLS="[timepicker] update controls",t})();function pc(t){return!!t&&!(t instanceof Date&&isNaN(t.getHours()))&&("string"!=typeof t||pc(new Date(t)))}function bc(t,e){return!(t.min&&e<t.min||t.max&&e>t.max)}function mc(t){return"number"==typeof t?t:parseInt(t,10)}function yc(t,e=!1){const n=mc(t);return isNaN(n)||n<0||n>(e?12:24)?NaN:n}function vc(t){const e=mc(t);return isNaN(e)||e<0||e>60?NaN:e}function xc(t){const e=mc(t);return isNaN(e)||e<0||e>60?NaN:e}function _c(t){return"string"==typeof t?new Date(t):t}function Tc(t,e){if(!t)return Tc(Oc(new Date,0,0,0),e);let n=t.getHours(),a=t.getMinutes(),r=t.getSeconds();return e.hour&&(n+=mc(e.hour)),e.minute&&(a+=mc(e.minute)),e.seconds&&(r+=mc(e.seconds)),Oc(t,n,a,r)}function wc(t,e){let n=yc(e.hour);const a=vc(e.minute),r=xc(e.seconds)||0;return e.isPM&&12!==n&&(n+=12),t?isNaN(n)||isNaN(a)?t:Oc(t,n,a,r):isNaN(n)||isNaN(a)?t:Oc(new Date,n,a,r)}function Oc(t,e,n,a){const r=new Date(t.getFullYear(),t.getMonth(),t.getDate(),e,n,a,t.getMilliseconds());return r.setFullYear(t.getFullYear()),r.setMonth(t.getMonth()),r.setDate(t.getDate()),r}function Sc(t){const e=t.toString();return e.length>1?e:"0"+e}function Ic(t,e){return!isNaN(yc(t,e))}function Nc(t){return!isNaN(vc(t))}function Cc(t){return!isNaN(xc(t))}function Rc(t,e="0",n="0",a){return Ic(t,a)&&Nc(e)&&Cc(n)}function Ac(t,e){if(t.readonlyInput||t.disabled)return!1;if(e){if("wheel"===e.source&&!t.mousewheel)return!1;if("key"===e.source&&!t.arrowkeys)return!1}return!0}function kc(t){const{hourStep:e,minuteStep:n,secondsStep:a,readonlyInput:r,disabled:i,mousewheel:s,arrowkeys:u,showSpinners:o,showMeridian:l,showSeconds:d,meridians:c,min:f,max:h}=t;return{hourStep:e,minuteStep:n,secondsStep:a,readonlyInput:r,disabled:i,mousewheel:s,arrowkeys:u,showSpinners:o,showMeridian:l,showSeconds:d,meridians:c,min:f,max:h}}class Ec{constructor(){this.hourStep=1,this.minuteStep=5,this.secondsStep=10,this.showMeridian=!0,this.meridians=["AM","PM"],this.readonlyInput=!1,this.disabled=!1,this.mousewheel=!0,this.arrowkeys=!0,this.showSpinners=!0,this.showSeconds=!1,this.showMinutes=!0,this.hoursPlaceholder="HH",this.minutesPlaceholder="MM",this.secondsPlaceholder="SS",this.ariaLabelHours="hours",this.ariaLabelMinutes="minutes",this.ariaLabelSeconds="seconds"}}const Lc={value:null,config:new Ec,controls:{canIncrementHours:!0,canIncrementMinutes:!0,canIncrementSeconds:!0,canDecrementHours:!0,canDecrementMinutes:!0,canDecrementSeconds:!0,canToggleMeridian:!0}};function Dc(t=Lc,e){switch(e.type){case gc.WRITE_VALUE:return Object.assign({},t,{value:e.payload});case gc.CHANGE_HOURS:{if(!Ac(t.config,e.payload)||(a=t.controls,!(n=e.payload).step||n.step>0&&!a.canIncrementHours||n.step<0&&!a.canDecrementHours))return t;const r=Tc(t.value,{hour:e.payload.step});return!t.config.max&&!t.config.min||bc(t.config,r)?Object.assign({},t,{value:r}):t}case gc.CHANGE_MINUTES:{if(!Ac(t.config,e.payload)||!function(t,e){return!(!t.step||t.step>0&&!e.canIncrementMinutes||t.step<0&&!e.canDecrementMinutes)}(e.payload,t.controls))return t;const n=Tc(t.value,{minute:e.payload.step});return!t.config.max&&!t.config.min||bc(t.config,n)?Object.assign({},t,{value:n}):t}case gc.CHANGE_SECONDS:{if(!Ac(t.config,e.payload)||!function(t,e){return!(!t.step||t.step>0&&!e.canIncrementSeconds||t.step<0&&!e.canDecrementSeconds)}(e.payload,t.controls))return t;const n=Tc(t.value,{seconds:e.payload.step});return!t.config.max&&!t.config.min||bc(t.config,n)?Object.assign({},t,{value:n}):t}case gc.SET_TIME_UNIT:{if(!Ac(t.config))return t;const n=wc(t.value,e.payload);return Object.assign({},t,{value:n})}case gc.UPDATE_CONTROLS:{const n=function(t,e){const{min:n,max:a,hourStep:r,minuteStep:i,secondsStep:s,showSeconds:u}=e,o={canIncrementHours:!0,canIncrementMinutes:!0,canIncrementSeconds:!0,canDecrementHours:!0,canDecrementMinutes:!0,canDecrementSeconds:!0,canToggleMeridian:!0};if(!t)return o;if(a){const e=Tc(t,{hour:r});if(o.canIncrementHours=a>e,!o.canIncrementHours){const e=Tc(t,{minute:i});o.canIncrementMinutes=u?a>e:a>=e}if(!o.canIncrementMinutes){const e=Tc(t,{seconds:s});o.canIncrementSeconds=a>=e}t.getHours()<12&&(o.canToggleMeridian=Tc(t,{hour:12})<a)}if(n){const e=Tc(t,{hour:-r});if(o.canDecrementHours=n<e,!o.canDecrementHours){const e=Tc(t,{minute:-i});o.canDecrementMinutes=u?n<e:n<=e}if(!o.canDecrementMinutes){const e=Tc(t,{seconds:-s});o.canDecrementSeconds=n<=e}t.getHours()>=12&&(o.canToggleMeridian=Tc(t,{hour:-12})>n)}return o}(t.value,e.payload),a={value:t.value,config:e.payload,controls:n};return t.config.showMeridian!==a.config.showMeridian&&t.value&&(a.value=new Date(t.value)),Object.assign({},t,a)}default:return t}var n,a}class Pc extends hc.b{constructor(){const t=new xe.a({type:"[mini-ngrx] dispatcher init"});super(t,Dc,new hc.a(Lc,t,Dc))}}class Mc{constructor(t,e,n,a){this._cd=e,this._store=n,this._timepickerActions=a,this.isValid=new s.EventEmitter,this.invalidHours=!1,this.invalidMinutes=!1,this.invalidSeconds=!1,this.onChange=Function.prototype,this.onTouched=Function.prototype,Object.assign(this,t),this.timepickerSub=n.select(t=>t.value).subscribe(t=>{this._renderTime(t),this.onChange(t),this._store.dispatch(this._timepickerActions.updateControls(kc(this)))}),n.select(t=>t.controls).subscribe(t=>{this.isValid.emit(Rc(this.hours,this.minutes,this.seconds,this.isPM())),Object.assign(this,t),e.markForCheck()})}get isSpinnersVisible(){return this.showSpinners&&!this.readonlyInput}get isEditable(){return!(this.readonlyInput||this.disabled)}resetValidation(){this.invalidHours=!1,this.invalidMinutes=!1,this.invalidSeconds=!1}isPM(){return this.showMeridian&&this.meridian===this.meridians[1]}prevDef(t){t.preventDefault()}wheelSign(t){return-1*Math.sign(t.deltaY)}ngOnChanges(t){this._store.dispatch(this._timepickerActions.updateControls(kc(this)))}changeHours(t,e=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeHours({step:t,source:e}))}changeMinutes(t,e=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeMinutes({step:t,source:e}))}changeSeconds(t,e=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeSeconds({step:t,source:e}))}updateHours(t){if(this.resetValidation(),this.hours=t,!Ic(this.hours,this.isPM())||!this.isValidLimit())return this.invalidHours=!0,this.isValid.emit(!1),void this.onChange(null);this._updateTime()}updateMinutes(t){if(this.resetValidation(),this.minutes=t,!Nc(this.minutes)||!this.isValidLimit())return this.invalidMinutes=!0,this.isValid.emit(!1),void this.onChange(null);this._updateTime()}updateSeconds(t){if(this.resetValidation(),this.seconds=t,!Cc(this.seconds)||!this.isValidLimit())return this.invalidSeconds=!0,this.isValid.emit(!1),void this.onChange(null);this._updateTime()}isValidLimit(){return function(t,e,n){const a=wc(new Date,t);return!(e&&a>e||n&&a<n)}({hour:this.hours,minute:this.minutes,seconds:this.seconds,isPM:this.isPM()},this.max,this.min)}_updateTime(){if(!Rc(this.hours,this.showMinutes?this.minutes:void 0,this.showSeconds?this.seconds:void 0,this.isPM()))return this.isValid.emit(!1),void this.onChange(null);this._store.dispatch(this._timepickerActions.setTime({hour:this.hours,minute:this.minutes,seconds:this.seconds,isPM:this.isPM()}))}toggleMeridian(){this.showMeridian&&this.isEditable&&this._store.dispatch(this._timepickerActions.changeHours({step:12,source:""}))}writeValue(t){pc(t)?this._store.dispatch(this._timepickerActions.writeValue(_c(t))):null==t&&this._store.dispatch(this._timepickerActions.writeValue(null))}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this.disabled=t,this._cd.markForCheck()}ngOnDestroy(){this.timepickerSub.unsubscribe()}_renderTime(t){if(!pc(t))return this.hours="",this.minutes="",this.seconds="",void(this.meridian=this.meridians[0]);const e=_c(t);let n=e.getHours();this.showMeridian&&(this.meridian=this.meridians[n>=12?1:0],n%=12,0===n&&(n=12)),this.hours=Sc(n),this.minutes=Sc(e.getMinutes()),this.seconds=Sc(e.getUTCSeconds())}}class qc{static forRoot(){return{ngModule:qc,providers:[Ec,gc,Pc]}}}var jc=s["ɵcrt"]({encapsulation:2,styles:["\n    .bs-chevron {\n      border-style: solid;\n      display: block;\n      width: 9px;\n      height: 9px;\n      position: relative;\n      border-width: 3px 0px 0 3px;\n    }\n\n    .bs-chevron-up {\n      -webkit-transform: rotate(45deg);\n      transform: rotate(45deg);\n      top: 2px;\n    }\n\n    .bs-chevron-down {\n      -webkit-transform: rotate(-135deg);\n      transform: rotate(-135deg);\n      top: -2px;\n    }\n\n    .bs-timepicker-field {\n      width: 50px;\n      padding: .375rem .55rem;\n    }\n  "],data:{}});function Fc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function Vc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeMinutes(r.minuteStep)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"span",[["class","bs-chevron bs-chevron-up"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,!n.canIncrementMinutes||!n.isEditable)}))}function Gc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" "]))],null,null)}function Bc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeSeconds(r.secondsStep)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"span",[["class","bs-chevron bs-chevron-up"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,!n.canIncrementSeconds||!n.isEditable)}))}function zc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function Yc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"td",[],null,null,null,null,null))],null,null)}function Hc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" : "]))],null,null)}function Uc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[["class","form-group"]],[[2,"has-error",null]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,0,"input",[["class","form-control text-center bs-timepicker-field"],["maxlength","2"],["type","text"]],[[2,"is-invalid",null],[8,"placeholder",0],[8,"readOnly",0],[8,"disabled",0],[8,"value",0],[1,"aria-label",0]],[[null,"wheel"],[null,"keydown.ArrowUp"],[null,"keydown.ArrowDown"],[null,"change"]],(function(t,e,n){var a=!0,r=t.component;return"wheel"===e&&(r.prevDef(n),a=!1!==r.changeMinutes(r.minuteStep*r.wheelSign(n),"wheel")&&a),"keydown.ArrowUp"===e&&(a=!1!==r.changeMinutes(r.minuteStep,"key")&&a),"keydown.ArrowDown"===e&&(a=!1!==r.changeMinutes(0-r.minuteStep,"key")&&a),"change"===e&&(a=!1!==r.updateMinutes(n.target.value)&&a),a}),null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.invalidMinutes),t(e,1,0,n.invalidMinutes,n.minutesPlaceholder,n.readonlyInput,n.disabled,n.minutes,n.labelMinutes)}))}function Wc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" : "]))],null,null)}function Kc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[["class","form-group"]],[[2,"has-error",null]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,0,"input",[["class","form-control text-center bs-timepicker-field"],["maxlength","2"],["type","text"]],[[2,"is-invalid",null],[8,"placeholder",0],[8,"readOnly",0],[8,"disabled",0],[8,"value",0],[1,"aria-label",0]],[[null,"wheel"],[null,"keydown.ArrowUp"],[null,"keydown.ArrowDown"],[null,"change"]],(function(t,e,n){var a=!0,r=t.component;return"wheel"===e&&(r.prevDef(n),a=!1!==r.changeSeconds(r.secondsStep*r.wheelSign(n),"wheel")&&a),"keydown.ArrowUp"===e&&(a=!1!==r.changeSeconds(r.secondsStep,"key")&&a),"keydown.ArrowDown"===e&&(a=!1!==r.changeSeconds(0-r.secondsStep,"key")&&a),"change"===e&&(a=!1!==r.updateSeconds(n.target.value)&&a),a}),null,null))],null,(function(t,e){var n=e.component;t(e,0,0,n.invalidSeconds),t(e,1,0,n.invalidSeconds,n.secondsPlaceholder,n.readonlyInput,n.disabled,n.seconds,n.labelSeconds)}))}function $c(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function Zc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"button",[["class","btn btn-default text-center"],["type","button"]],[[8,"disabled",0],[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.toggleMeridian()&&a),a}),null,null)),(t()(),s["ɵted"](2,null,[""," "]))],null,(function(t,e){var n=e.component;t(e,1,0,!n.isEditable||!n.canToggleMeridian,!n.isEditable||!n.canToggleMeridian),t(e,2,0,n.meridian)}))}function Jc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function Qc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeMinutes(0-r.minuteStep)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"span",[["class","bs-chevron bs-chevron-down"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,!n.canDecrementMinutes||!n.isEditable)}))}function Xc(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" "]))],null,null)}function tf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeSeconds(0-r.secondsStep)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,0,"span",[["class","bs-chevron bs-chevron-down"]],null,null,null,null,null))],null,(function(t,e){var n=e.component;t(e,1,0,!n.canDecrementSeconds||!n.isEditable)}))}function ef(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"td",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["   "]))],null,null)}function nf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"td",[],null,null,null,null,null))],null,null)}function af(t){return s["ɵvid"](2,[(t()(),s["ɵeld"](0,0,null,null,48,"table",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,47,"tbody",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,15,"tr",[["class","text-center"]],[[8,"hidden",0]],null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeHours(r.hourStep)&&a),a}),null,null)),(t()(),s["ɵeld"](5,0,null,null,0,"span",[["class","bs-chevron bs-chevron-up"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Fc)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vc)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gc)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bc)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,zc)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yc)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](18,0,null,null,14,"tr",[],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,1,"td",[["class","form-group"]],[[2,"has-error",null]],null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,0,"input",[["class","form-control text-center bs-timepicker-field"],["maxlength","2"],["type","text"]],[[2,"is-invalid",null],[8,"placeholder",0],[8,"readOnly",0],[8,"disabled",0],[8,"value",0],[1,"aria-label",0]],[[null,"wheel"],[null,"keydown.ArrowUp"],[null,"keydown.ArrowDown"],[null,"change"]],(function(t,e,n){var a=!0,r=t.component;return"wheel"===e&&(r.prevDef(n),a=!1!==r.changeHours(r.hourStep*r.wheelSign(n),"wheel")&&a),"keydown.ArrowUp"===e&&(a=!1!==r.changeHours(r.hourStep,"key")&&a),"keydown.ArrowDown"===e&&(a=!1!==r.changeHours(0-r.hourStep,"key")&&a),"change"===e&&(a=!1!==r.updateHours(n.target.value)&&a),a}),null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Hc)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Uc)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Wc)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Kc)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$c)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Zc)),s["ɵdid"](32,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](33,0,null,null,15,"tr",[["class","text-center"]],[[8,"hidden",0]],null,null,null,null)),(t()(),s["ɵeld"](34,0,null,null,2,"td",[],null,null,null,null,null)),(t()(),s["ɵeld"](35,0,null,null,1,"a",[["class","btn btn-link"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.changeHours(0-r.hourStep)&&a),a}),null,null)),(t()(),s["ɵeld"](36,0,null,null,0,"span",[["class","bs-chevron bs-chevron-down"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Jc)),s["ɵdid"](38,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Qc)),s["ɵdid"](40,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Xc)),s["ɵdid"](42,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tf)),s["ɵdid"](44,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ef)),s["ɵdid"](46,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,nf)),s["ɵdid"](48,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,7,0,n.showMinutes),t(e,9,0,n.showMinutes),t(e,11,0,n.showSeconds),t(e,13,0,n.showSeconds),t(e,15,0,n.showMeridian),t(e,17,0,n.showMeridian),t(e,22,0,n.showMinutes),t(e,24,0,n.showMinutes),t(e,26,0,n.showSeconds),t(e,28,0,n.showSeconds),t(e,30,0,n.showMeridian),t(e,32,0,n.showMeridian),t(e,38,0,n.showMinutes),t(e,40,0,n.showMinutes),t(e,42,0,n.showSeconds),t(e,44,0,n.showSeconds),t(e,46,0,n.showMeridian),t(e,48,0,n.showMeridian)}),(function(t,e){var n=e.component;t(e,2,0,!n.showSpinners),t(e,4,0,!n.canIncrementHours||!n.isEditable),t(e,19,0,n.invalidHours),t(e,20,0,n.invalidHours,n.hoursPlaceholder,n.readonlyInput,n.disabled,n.hours,n.labelHours),t(e,33,0,!n.showSpinners),t(e,35,0,!n.canDecrementHours||!n.isEditable)}))}var rf=n("E2fk");let sf=(()=>{class t{constructor(t){this.http=t}getLogs(){return this.http.get("api/logs/all")}validateDashboardUrl(t){return this.http.get("api/grafana/validation/"+t)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();class uf{constructor(t,e,n){this.logsService=t,this.datePipe=e,this.ngZone=n,this.icons=pt.a,this.bsConfig={dateInputFormat:"YYYY-MM-DD",containerClass:"theme-default"},this.prioritys=[{name:"Info",value:"[INF]"},{name:"Warning",value:"[WRN]"},{name:"Error",value:"[ERR]"},{name:"All",value:"All"}],this.priority="All",this.search="",this.startTime=new Date,this.endTime=new Date,this.startTime.setHours(0,0),this.endTime.setHours(23,59)}ngOnInit(){this.getInfo(),this.ngZone.runOutsideAngular(()=>{this.interval=window.setInterval(()=>{this.ngZone.run(()=>{this.getInfo()})},5e3)})}ngOnDestroy(){clearInterval(this.interval)}getInfo(){this.logsService.getLogs().subscribe(t=>{this.contentData=t,this.filterLogs()})}abstractfilters(){const t=this.priority,e=this.search.toLowerCase().replace(/,/g,"");let n;if(this.selectedDate){const t=this.selectedDate.getMonth()+1,e=this.selectedDate.getDate();n=`${this.selectedDate.getFullYear().toString()}-${t<=9?"0"+t:""+t}-${e<=9?"0"+e:""+e}`}else n="";return{priority:t,key:e,yearMonthDay:n,sTime:60*(this.startTime?this.startTime.getHours():0)+(this.startTime?this.startTime.getMinutes():0),eTime:60*(this.endTime?this.endTime.getHours():23)+(this.endTime?this.endTime.getMinutes():59)}}filterExecutor(t,e){return t.filter(t=>{const n=this.datePipe.transform(t.stamp,"mediumTime"),a=parseInt(n.split(":")[0],10),r=parseInt(n.split(":")[1],10);let i,s,u;return i="All"===e.priority?t.priority:e.priority,s=e.yearMonthDay?e.yearMonthDay:t.stamp,u=60*a+r,t.priority===i&&-1!==t.message.toLowerCase().indexOf(e.key)&&-1!==t.stamp.indexOf(s)&&u>=e.sTime&&u<=e.eTime})}filterLogs(){const t=this.abstractfilters();this.clog=this.filterExecutor(this.contentData.clog,t),this.audit_log=this.filterExecutor(this.contentData.audit_log,t)}clearSearchKey(){this.search="",this.filterLogs()}clearDate(){this.selectedDate=null,this.filterLogs()}}var of=s["ɵcrt"]({encapsulation:0,styles:[["p[_ngcontent-%COMP%]{font-family:monospace}.card[_ngcontent-%COMP%]   div[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{display:flex}.card[_ngcontent-%COMP%]   div[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]:last-child{margin-bottom:0}.card[_ngcontent-%COMP%]   .timestamp[_ngcontent-%COMP%]{font-weight:700;flex-shrink:0}.card[_ngcontent-%COMP%]   .priority[_ngcontent-%COMP%]{margin-left:.5rem}.card[_ngcontent-%COMP%]   .message[_ngcontent-%COMP%]{margin-left:1rem}.card[_ngcontent-%COMP%]   .err[_ngcontent-%COMP%]{color:#a94442}.card[_ngcontent-%COMP%]   .warn[_ngcontent-%COMP%]{color:#ffc200}.card[_ngcontent-%COMP%]   .info[_ngcontent-%COMP%]{color:#2b99a8}  timepicker table tbody tr td input.bs-timepicker-field{width:3.5rem!important;font-size:1rem;padding:4px 6px}.middle[_ngcontent-%COMP%]{padding-top:7px}"]],data:{}});function lf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function df(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"p",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"span",[["class","timestamp"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""])),s["ɵppd"](3,1),(t()(),s["ɵeld"](4,0,null,null,2,"span",[],[[8,"className",0]],null,null,null,null)),s["ɵppd"](5,1),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵeld"](7,0,null,null,1,"span",[["class","message"]],null,null,null,null,null)),(t()(),s["ɵted"](8,null,["",""]))],null,(function(t,e){var n=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,0),e.context.$implicit.stamp));t(e,2,0,n);var a=s["ɵinlineInterpolate"](1,"priority ",s["ɵunv"](e,4,0,t(e,5,0,s["ɵnov"](e.parent.parent.parent,1),e.context.$implicit.priority)),"");t(e,4,0,a),t(e,6,0,e.context.$implicit.priority),t(e,8,0,e.context.$implicit.message)}))}function cf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["No entries found"]))],null,null)}function ff(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"div",[["class","card bg-light mb-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,df)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,cf)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.clog),t(e,5,0,0===n.contentData.clog.length)}),null)}function hf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"p",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"span",[["class","timestamp"]],null,null,null,null,null)),(t()(),s["ɵted"](2,null,["",""])),s["ɵppd"](3,1),(t()(),s["ɵeld"](4,0,null,null,2,"span",[],[[8,"className",0]],null,null,null,null)),s["ɵppd"](5,1),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵeld"](7,0,null,null,1,"span",[["class","message"]],null,null,null,null,null)),(t()(),s["ɵted"](8,null,["",""]))],null,(function(t,e){var n=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,0),e.context.$implicit.stamp));t(e,2,0,n);var a=s["ɵinlineInterpolate"](1,"priority ",s["ɵunv"](e,4,0,t(e,5,0,s["ɵnov"](e.parent.parent.parent,1),e.context.$implicit.priority)),"");t(e,4,0,a),t(e,6,0,e.context.$implicit.priority),t(e,8,0,e.context.$implicit.message)}))}function gf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["No entries found"]))],null,null)}function pf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"div",[["class","card bg-light mb-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,hf)),s["ɵdid"](3,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,gf)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.audit_log),t(e,5,0,0===n.contentData.audit_log.length)}),null)}function bf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,12,"div",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,lf)),s["ɵdid"](2,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutlet:[0,"ngTemplateOutlet"]},null),(t()(),s["ɵeld"](3,0,null,null,9,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](4,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](5,0,null,0,3,"tab",[["heading","Cluster Logs"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](6,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ff)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](9,0,null,0,3,"tab",[["heading","Audit Logs"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](10,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pf)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,s["ɵnov"](e.parent,4)),t(e,6,0,"Cluster Logs"),t(e,8,0,n.clog),t(e,10,0,"Audit Logs"),t(e,12,0,n.audit_log)}),(function(t,e){t(e,3,0,s["ɵnov"](e,4).clazz),t(e,5,0,s["ɵnov"](e,6).id,s["ɵnov"](e,6).active,s["ɵnov"](e,6).addClass,s["ɵnov"](e,6).role,s["ɵnov"](e,6).ariaLabelledby),t(e,9,0,s["ɵnov"](e,10).id,s["ɵnov"](e,10).active,s["ɵnov"](e,10).addClass,s["ɵnov"](e,10).role,s["ɵnov"](e,10).ariaLabelledby)}))}function mf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.name)}))}function yf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,84,"div",[["class","form-inline"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,15,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Priority:"])),(t()(),s["ɵeld"](7,0,null,0,9,"select",[["class","form-control custom-select"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,9).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,9).onTouched()&&a),"ngModelChange"===e&&(a=!1!==(r.priority=n)&&a),"ngModelChange"===e&&(a=!1!==r.filterLogs()&&a),a}),null,null)),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](11,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](13,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,mf)),s["ɵdid"](16,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](17,0,null,null,23,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](18,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](21,0,null,0,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Keyword:"])),(t()(),s["ɵeld"](23,0,null,0,17,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](24,0,null,null,5,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(t()(),s["ɵeld"](25,0,null,null,4,"span",[["class","input-group-text"]],null,null,null,null,null)),(t()(),s["ɵeld"](26,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](28,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](29,1),(t()(),s["ɵeld"](30,0,null,null,7,"input",[["class","form-control"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"keyup"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,32)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,32).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,32)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,32)._compositionEnd(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.search=n)&&a),"keyup"===e&&(a=!1!==r.filterLogs()&&a),a}),null,null)),s["ɵdid"](31,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](32,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](34,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](36,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](37,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵeld"](38,0,null,null,2,"div",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](39,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.clearSearchKey()&&a),a}),null,null)),(t()(),s["ɵeld"](40,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](41,0,null,null,20,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](42,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](45,0,null,0,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Date:"])),(t()(),s["ɵeld"](47,0,null,0,14,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](48,16777216,null,null,10,"input",[["bsDatepicker",""],["class","form-control"],["placeholder","Datepicker"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,50)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,50).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,50)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,50)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,52).onChange(n)&&a),"keyup.esc"===e&&(a=!1!==s["ɵnov"](t,52).hide()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,52).onBlur()&&a),"ngModelChange"===e&&(a=!1!==(r.selectedDate=n)&&a),"ngModelChange"===e&&(a=!1!==r.filterLogs()&&a),a}),null,null)),s["ɵdid"](49,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](50,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](51,737280,null,0,st.c,[st.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a],{bsConfig:[0,"bsConfig"]},null),s["ɵdid"](52,16384,null,0,st.f,[st.c,st.l,s.Renderer2,s.ElementRef,s.ChangeDetectorRef],null,null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[st.f]),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,st.f]),s["ɵdid"](55,671744,null,0,K.u,[[8,null],[6,K.o],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](57,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](58,16384,null,0,Q.h,[[8,null],Q.a],null,null),(t()(),s["ɵeld"](59,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](60,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.clearDate()&&a),a}),null,null)),(t()(),s["ɵeld"](61,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](62,0,null,null,22,"div",[["class","form-group"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](63,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](66,0,null,0,1,"label",[["class","col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Time range:"])),(t()(),s["ɵeld"](68,0,null,0,16,"div",[["class","d-inline-flex"]],null,null,null,null,null)),(t()(),s["ɵeld"](69,0,null,null,6,"timepicker",[],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],(function(t,e,n){var a=!0,r=t.component;return"ngModelChange"===e&&(a=!1!==(r.startTime=n)&&a),"ngModelChange"===e&&(a=!1!==r.filterLogs()&&a),a}),af,jc)),s["ɵprd"](512,null,Pc,Pc,[]),s["ɵdid"](71,704512,null,0,Mc,[Ec,s.ChangeDetectorRef,Pc,gc],{minuteStep:[0,"minuteStep"],showSpinners:[1,"showSpinners"],showMeridian:[2,"showMeridian"]},null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[Mc]),s["ɵdid"](73,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](75,16384,null,0,K.r,[[4,K.q]],null,null),(t()(),s["ɵeld"](76,0,null,null,1,"span",[["class","middle"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" — "])),(t()(),s["ɵeld"](78,0,null,null,6,"timepicker",[],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngModelChange"]],(function(t,e,n){var a=!0,r=t.component;return"ngModelChange"===e&&(a=!1!==(r.endTime=n)&&a),"ngModelChange"===e&&(a=!1!==r.filterLogs()&&a),a}),af,jc)),s["ɵprd"](512,null,Pc,Pc,[]),s["ɵdid"](80,704512,null,0,Mc,[Ec,s.ChangeDetectorRef,Pc,gc],{minuteStep:[0,"minuteStep"],showSpinners:[1,"showSpinners"],showMeridian:[2,"showMeridian"]},null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[Mc]),s["ɵdid"](82,671744,null,0,K.u,[[8,null],[8,null],[8,null],[6,K.p]],{model:[0,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](84,16384,null,0,K.r,[[4,K.q]],null,null)],(function(t,e){var n=e.component;t(e,2,0),t(e,11,0,n.priority),t(e,16,0,n.prioritys),t(e,18,0);var a=t(e,29,0,n.icons.search);t(e,28,0,a),t(e,34,0,n.search),t(e,42,0),t(e,51,0,n.bsConfig),t(e,55,0,n.selectedDate),t(e,63,0),t(e,71,0,1,!1,!1),t(e,73,0,n.startTime),t(e,80,0,1,!1,!1),t(e,82,0,n.endTime)}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,7,0,s["ɵnov"](e,13).ngClassUntouched,s["ɵnov"](e,13).ngClassTouched,s["ɵnov"](e,13).ngClassPristine,s["ɵnov"](e,13).ngClassDirty,s["ɵnov"](e,13).ngClassValid,s["ɵnov"](e,13).ngClassInvalid,s["ɵnov"](e,13).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass),t(e,17,0,s["ɵnov"](e,18).hasErrors,s["ɵnov"](e,18).hasSuccess),t(e,30,0,s["ɵnov"](e,36).ngClassUntouched,s["ɵnov"](e,36).ngClassTouched,s["ɵnov"](e,36).ngClassPristine,s["ɵnov"](e,36).ngClassDirty,s["ɵnov"](e,36).ngClassValid,s["ɵnov"](e,36).ngClassInvalid,s["ɵnov"](e,36).ngClassPending,s["ɵnov"](e,37).validClass,s["ɵnov"](e,37).invalidClass),t(e,40,0,s["ɵinlineInterpolate"](1,"icon-prepend ",n.icons.destroy,"")),t(e,41,0,s["ɵnov"](e,42).hasErrors,s["ɵnov"](e,42).hasSuccess),t(e,48,0,s["ɵnov"](e,57).ngClassUntouched,s["ɵnov"](e,57).ngClassTouched,s["ɵnov"](e,57).ngClassPristine,s["ɵnov"](e,57).ngClassDirty,s["ɵnov"](e,57).ngClassValid,s["ɵnov"](e,57).ngClassInvalid,s["ɵnov"](e,57).ngClassPending,s["ɵnov"](e,58).validClass,s["ɵnov"](e,58).invalidClass),t(e,61,0,s["ɵinlineInterpolate"](1,"icon-prepend ",n.icons.destroy,"")),t(e,62,0,s["ɵnov"](e,63).hasErrors,s["ɵnov"](e,63).hasSuccess),t(e,69,0,s["ɵnov"](e,75).ngClassUntouched,s["ɵnov"](e,75).ngClassTouched,s["ɵnov"](e,75).ngClassPristine,s["ɵnov"](e,75).ngClassDirty,s["ɵnov"](e,75).ngClassValid,s["ɵnov"](e,75).ngClassInvalid,s["ɵnov"](e,75).ngClassPending),t(e,78,0,s["ɵnov"](e,84).ngClassUntouched,s["ɵnov"](e,84).ngClassTouched,s["ɵnov"](e,84).ngClassPristine,s["ɵnov"](e,84).ngClassDirty,s["ɵnov"](e,84).ngClassValid,s["ɵnov"](e,84).ngClassInvalid,s["ɵnov"](e,84).ngClassPending)}))}function vf(t){return s["ɵvid"](0,[s["ɵpid"](0,He.a,[i.DatePipe]),s["ɵpid"](0,rf.a,[]),(t()(),s["ɵand"](16777216,null,null,1,null,bf)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[["logFiltersTpl",2]],null,0,null,yf))],(function(t,e){t(e,3,0,e.component.contentData)}),null)}function xf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-logs",[],null,null,null,vf,of)),s["ɵdid"](1,245760,null,0,uf,[sf,i.DatePipe,s.NgZone],null,null)],(function(t,e){t(e,1,0)}),null)}var _f=s["ɵccf"]("cd-logs",uf,xf,{},{},[]);let Tf=(()=>{class t{constructor(t,e,n,a,r,i,s,u){this.formBuilder=t,this.mgrModuleService=e,this.notificationService=n,this.router=a,this.telemetryService=r,this.i18n=i,this.textToDownloadService=s,this.telemetryNotificationService=u,this.error=!1,this.licenseAgrmt=!1,this.loading=!1,this.options={},this.requiredFields=["channel_basic","channel_crash","channel_device","channel_ident","interval","proxy","contact","description"],this.report=void 0,this.reportId=void 0,this.sendToUrl="",this.sendToDeviceUrl="",this.step=1}ngOnInit(){this.loading=!0;const t=[this.mgrModuleService.getOptions("telemetry"),this.mgrModuleService.getConfig("telemetry")];Object(ml.a)(t).subscribe(t=>{const e=t[1];this.moduleEnabled=e.enabled,this.sendToUrl=e.url,this.sendToDeviceUrl=e.device_url,this.options=X.pick(t[0],this.requiredFields);const n=X.pick(e,this.requiredFields);this.createConfigForm(),this.configForm.setValue(n),this.loading=!1},t=>{this.error=!0})}createConfigForm(){const t={};X.forEach(Object.values(this.options),e=>{t[e.name]=[e.default_value,this.getValidators(e)]}),this.configForm=this.formBuilder.group(t)}createPreviewForm(){const t={report:JSON.stringify(this.report,null,2),reportId:this.reportId,licenseAgrmt:[this.licenseAgrmt,K.B.requiredTrue]};this.previewForm=this.formBuilder.group(t)}getValidators(t){const e=[];switch(t.type){case"int":e.push(eu.a.number()),e.push(K.B.required),X.isNumber(t.min)&&e.push(K.B.min(t.min)),X.isNumber(t.max)&&e.push(K.B.max(t.max));break;case"str":X.isNumber(t.min)&&e.push(K.B.minLength(t.min)),X.isNumber(t.max)&&e.push(K.B.maxLength(t.max))}return e}getReport(){this.loading=!0,this.telemetryService.getReport().subscribe(t=>{this.report=t,this.reportId=t.report.report_id,this.createPreviewForm(),this.loading=!1,this.step++},t=>{this.error=!0})}updateConfig(){const t={};X.forEach(Object.values(this.options),e=>{const n=this.configForm.get(e.name);n.dirty&&n.valid&&(t[e.name]=n.value)}),this.mgrModuleService.updateConfig("telemetry",t).subscribe(()=>{this.disableModule(this.i18n("Your settings have been applied successfully. Due to privacy/legal reasons the Telemetry module is now disabled until you complete the next step and accept the license."),()=>{this.getReport()})},()=>{this.configForm.setErrors({cdSubmitButton:!0})})}download(t,e){this.textToDownloadService.download(JSON.stringify(t,null,2),e)}disableModule(t=null,e=null){this.telemetryService.enable(!1).subscribe(()=>{this.telemetryNotificationService.setVisibility(!0),t&&this.notificationService.show(le.a.success,t),e?e():this.router.navigate([""])})}next(){this.configForm.pristine?this.getReport():this.updateConfig()}back(){this.step--}onSubmit(){this.telemetryService.enable().subscribe(()=>{this.telemetryNotificationService.setVisibility(!1),this.notificationService.show(le.a.success,this.i18n("The Telemetry module has been configured and activated successfully.")),this.router.navigate([""])})}}return nc.__decorate([E(),nc.__metadata("design:type",Object)],t.prototype,"blockUI",void 0),t})(),wf=(()=>{class t{constructor(t){this.http=t,this.url="api/telemetry"}getReport(){return this.http.get(this.url+"/report")}enable(t=!0){const e={enable:t};return t&&(e.license_name="sharing-1-0"),this.http.put(""+this.url,e)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();var Of=n("Iab2");let Sf=(()=>{class t{constructor(){}download(t,e){Object(Of.saveAs)(new Blob([t]),e)}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})();var If=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Nf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,Ei.b,Ei.a)),s["ɵdid"](1,49152,null,0,Li.a,[],null,null),(t()(),s["ɵted"](-1,0,["Loading configuration..."]))],null,null)}function Cf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["The configuration could not be loaded."]))],(function(t,e){t(e,1,0,"error")}),null)}function Rf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"div",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" The plugin is already "])),(t()(),s["ɵeld"](2,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["enabled"])),(t()(),s["ɵted"](-1,null,[". Click "])),(t()(),s["ɵeld"](5,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Deactivate"])),(t()(),s["ɵted"](-1,null,[" to disable it.  "])),(t()(),s["ɵeld"](8,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.disableModule("The Telemetry module has been disabled successfully.")&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["Deactivate"]))],null,null)}function Af(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value is too low! It must be greater or equal to 8."]))],null,null)}function kf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,232,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,231,"form",[["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,225,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,["Step "," of 2: Telemetry report configuration"])),(t()(),s["ɵeld"](10,0,null,null,217,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,12,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The telemetry module sends anonymous data about this Ceph cluster back to the Ceph developers to help understand how Ceph is used and what problems users may be experiencing."])),(t()(),s["ɵeld"](13,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" This data is visualized on "])),(t()(),s["ɵeld"](15,0,null,null,1,"a",[["href","https://telemetry-public.ceph.com/"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["public dashboards"])),(t()(),s["ɵted"](-1,null,[" that allow the community to quickly see summary statistics on how many clusters are reporting, their total capacity and OSD count, and version distribution trends."])),(t()(),s["ɵeld"](18,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[" The data being reported does "])),(t()(),s["ɵeld"](21,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["not"])),(t()(),s["ɵted"](23,null,[" contain any sensitive data like pool names, object names, object contents, hostnames, or device serial numbers. It contains counters and statistics on how the cluster has been deployed, the version of Ceph, the distribution of the hosts and other parameters which help the project to gain a better understanding of the way Ceph is used. The data is sent secured to "," and "," (device report)."])),(t()(),s["ɵand"](16777216,null,null,1,null,Rf)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](26,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Channels"])),(t()(),s["ɵeld"](28,0,null,null,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,['The telemetry report is broken down into several "channels", each with a different type of information that can be configured below.'])),(t()(),s["ɵeld"](30,0,null,null,32,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](31,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](34,0,null,0,17,"label",[["class","cd-col-form-label"],["for","channel_basic"]],null,null,null,null,null)),(t()(),s["ɵeld"](35,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Basic"])),(t()(),s["ɵeld"](37,0,null,null,14,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](38,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](39,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Includes basic information about the cluster:"])),(t()(),s["ɵeld"](41,0,null,0,10,"ul",[],null,null,null,null,null)),(t()(),s["ɵeld"](42,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Capacity of the cluster"])),(t()(),s["ɵeld"](44,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Number of monitors, managers, OSDs, MDSs, object gateways, or other daemons"])),(t()(),s["ɵeld"](46,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Software version currently being used"])),(t()(),s["ɵeld"](48,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Number and types of RADOS pools and CephFS file systems"])),(t()(),s["ɵeld"](50,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Names of configuration options that have been changed from their default (but not their values)"])),(t()(),s["ɵeld"](52,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](53,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](54,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","channel_basic"],["id","channel_basic"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,56).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,56).onTouched()&&a),a}),null,null)),s["ɵdid"](55,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](56,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](58,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](60,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](61,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](62,0,null,null,0,"label",[["class","custom-control-label"],["for","channel_basic"]],null,null,null,null,null)),(t()(),s["ɵeld"](63,0,null,null,30,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](64,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](67,0,null,0,15,"label",[["class","cd-col-form-label"],["for","channel_crash"]],null,null,null,null,null)),(t()(),s["ɵeld"](68,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Crash"])),(t()(),s["ɵeld"](70,0,null,null,12,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](71,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](72,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Includes information about daemon crashes:"])),(t()(),s["ɵeld"](74,0,null,0,8,"ul",[],null,null,null,null,null)),(t()(),s["ɵeld"](75,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Type of daemon"])),(t()(),s["ɵeld"](77,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Version of the daemon"])),(t()(),s["ɵeld"](79,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Operating system (OS distribution, kernel version)"])),(t()(),s["ɵeld"](81,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Stack trace identifying where in the Ceph code the crash occurred"])),(t()(),s["ɵeld"](83,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](84,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](85,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","channel_crash"],["id","channel_crash"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,87).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,87).onTouched()&&a),a}),null,null)),s["ɵdid"](86,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](87,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](89,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](91,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](92,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](93,0,null,null,0,"label",[["class","custom-control-label"],["for","channel_crash"]],null,null,null,null,null)),(t()(),s["ɵeld"](94,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](95,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](98,0,null,0,4,"label",[["class","cd-col-form-label"],["for","channel_device"]],null,null,null,null,null)),(t()(),s["ɵeld"](99,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Device"])),(t()(),s["ɵeld"](101,0,null,null,1,"cd-helper",[["html","Includes information about device metrics like anonymized SMART metrics."]],null,null,null,Zu.b,Zu.a)),s["ɵdid"](102,49152,null,0,Ju.a,[],{html:[0,"html"]},null),(t()(),s["ɵeld"](103,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](104,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](105,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","channel_device"],["id","channel_device"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,107).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,107).onTouched()&&a),a}),null,null)),s["ɵdid"](106,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](107,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](109,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](111,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](112,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](113,0,null,null,0,"label",[["class","custom-control-label"],["for","channel_device"]],null,null,null,null,null)),(t()(),s["ɵeld"](114,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](115,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](118,0,null,0,11,"label",[["class","cd-col-form-label"],["for","channel_ident"]],null,null,null,null,null)),(t()(),s["ɵeld"](119,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Ident"])),(t()(),s["ɵeld"](121,0,null,null,8,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](122,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](123,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Includes user-provided identifying information about the cluster:"])),(t()(),s["ɵeld"](125,0,null,0,4,"ul",[],null,null,null,null,null)),(t()(),s["ɵeld"](126,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster description"])),(t()(),s["ɵeld"](128,0,null,null,1,"li",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Contact email address"])),(t()(),s["ɵeld"](130,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](131,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](132,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","channel_ident"],["id","channel_ident"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,134).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,134).onTouched()&&a),a}),null,null)),s["ɵdid"](133,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](134,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](136,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](138,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](139,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](140,0,null,null,0,"label",[["class","custom-control-label"],["for","channel_ident"]],null,null,null,null,null)),(t()(),s["ɵeld"](141,0,null,null,5,"legend",[],null,null,null,null,null)),(t()(),s["ɵeld"](142,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Contact Information"])),(t()(),s["ɵeld"](144,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](145,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["Submitting any contact information is completely optional and disabled by default."])),(t()(),s["ɵeld"](147,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](148,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](151,0,null,0,1,"label",[["class","cd-col-form-label"],["for","contact"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Contact"])),(t()(),s["ɵeld"](153,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](154,0,null,null,7,"input",[["class","form-control"],["formControlName","contact"],["id","contact"],["placeholder","Example User <user@example.com>"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,156)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,156).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,156)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,156)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](155,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](156,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](158,671744,[[9,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](160,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](161,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](162,0,null,null,14,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](163,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,11,{FormControlNames:1}),s["ɵqud"](603979776,12,{messagesBlock:0}),(t()(),s["ɵeld"](166,0,null,0,1,"label",[["class","cd-col-form-label"],["for","description"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Description"])),(t()(),s["ɵeld"](168,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](169,0,null,null,7,"input",[["class","form-control"],["formControlName","description"],["id","description"],["placeholder","My first Ceph cluster"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,171)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,171).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,171)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,171)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](170,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](171,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](173,671744,[[11,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](175,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](176,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](177,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Advanced Settings"])),(t()(),s["ɵeld"](179,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](180,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,13,{FormControlNames:1}),s["ɵqud"](603979776,14,{messagesBlock:0}),(t()(),s["ɵeld"](183,0,null,0,5,"label",[["class","cd-col-form-label"],["for","interval"]],null,null,null,null,null)),(t()(),s["ɵeld"](184,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Interval"])),(t()(),s["ɵeld"](186,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](187,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["The module compiles and sends a new report every 24 hours by default. You can adjust this interval by setting a different number of hours."])),(t()(),s["ɵeld"](189,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](190,0,null,null,8,"input",[["class","form-control"],["formControlName","interval"],["id","interval"],["type","number"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,192)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,192).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,192)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,192)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,193).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,193).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,193).onTouched()&&a),a}),null,null)),s["ɵdid"](191,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](192,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](193,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](195,671744,[[13,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](197,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](198,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Af)),s["ɵdid"](200,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](201,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](202,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,15,{FormControlNames:1}),s["ɵqud"](603979776,16,{messagesBlock:0}),(t()(),s["ɵeld"](205,0,null,0,8,"label",[["class","cd-col-form-label"],["for","proxy"]],null,null,null,null,null)),(t()(),s["ɵeld"](206,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Proxy"])),(t()(),s["ɵeld"](208,0,null,null,5,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](209,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](210,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["If the cluster cannot directly connect to the configured telemetry endpoint (default telemetry.ceph.com), you can configure a HTTP/HTTPS proxy server by e.g. adding https://10.0.0.1:8080"])),(t()(),s["ɵeld"](212,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["You can also include a user:pass if needed e.g. https://ceph:telemetry@10.0.0.1:8080"])),(t()(),s["ɵeld"](214,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](215,0,null,null,7,"input",[["class","form-control"],["formControlName","proxy"],["id","proxy"],["placeholder","https://10.0.0.1:8080"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,217)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,217).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,217)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,217)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](216,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](217,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](219,671744,[[15,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](221,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](222,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](223,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](224,0,null,null,3,"p",[],null,null,null,null,null)),(t()(),s["ɵeld"](225,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Note:"])),(t()(),s["ɵted"](-1,null,[" By clicking 'Next' you will first see a preview of the report content before you can activate the automatic submission of your data."])),(t()(),s["ɵeld"](228,0,null,null,4,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](229,0,null,null,3,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](230,0,null,null,2,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.next()&&a),a}),null,null)),(t()(),s["ɵeld"](231,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Next"]))],(function(t,e){var n=e.component;t(e,3,0,n.configForm),t(e,6,0,n.configForm),t(e,25,0,n.moduleEnabled),t(e,31,0),t(e,58,0,"channel_basic"),t(e,61,0,"channel_basic"),t(e,64,0),t(e,89,0,"channel_crash"),t(e,92,0,"channel_crash"),t(e,95,0),t(e,102,0,"Includes information about device metrics like anonymized SMART metrics."),t(e,109,0,"channel_device"),t(e,112,0,"channel_device"),t(e,115,0),t(e,136,0,"channel_ident"),t(e,139,0,"channel_ident"),t(e,148,0),t(e,158,0,"contact"),t(e,161,0,"contact"),t(e,163,0),t(e,173,0,"description"),t(e,176,0,"description"),t(e,180,0),t(e,195,0,"interval"),t(e,198,0,"interval"),t(e,200,0,n.configForm.showError("interval",s["ɵnov"](e,3),"min")),t(e,202,0),t(e,219,0,"proxy"),t(e,222,0,"proxy")}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending),t(e,9,0,n.step),t(e,23,0,n.sendToUrl,n.sendToDeviceUrl),t(e,30,0,s["ɵnov"](e,31).hasErrors,s["ɵnov"](e,31).hasSuccess),t(e,54,0,s["ɵnov"](e,60).ngClassUntouched,s["ɵnov"](e,60).ngClassTouched,s["ɵnov"](e,60).ngClassPristine,s["ɵnov"](e,60).ngClassDirty,s["ɵnov"](e,60).ngClassValid,s["ɵnov"](e,60).ngClassInvalid,s["ɵnov"](e,60).ngClassPending,s["ɵnov"](e,61).validClass,s["ɵnov"](e,61).invalidClass),t(e,63,0,s["ɵnov"](e,64).hasErrors,s["ɵnov"](e,64).hasSuccess),t(e,85,0,s["ɵnov"](e,91).ngClassUntouched,s["ɵnov"](e,91).ngClassTouched,s["ɵnov"](e,91).ngClassPristine,s["ɵnov"](e,91).ngClassDirty,s["ɵnov"](e,91).ngClassValid,s["ɵnov"](e,91).ngClassInvalid,s["ɵnov"](e,91).ngClassPending,s["ɵnov"](e,92).validClass,s["ɵnov"](e,92).invalidClass),t(e,94,0,s["ɵnov"](e,95).hasErrors,s["ɵnov"](e,95).hasSuccess),t(e,105,0,s["ɵnov"](e,111).ngClassUntouched,s["ɵnov"](e,111).ngClassTouched,s["ɵnov"](e,111).ngClassPristine,s["ɵnov"](e,111).ngClassDirty,s["ɵnov"](e,111).ngClassValid,s["ɵnov"](e,111).ngClassInvalid,s["ɵnov"](e,111).ngClassPending,s["ɵnov"](e,112).validClass,s["ɵnov"](e,112).invalidClass),t(e,114,0,s["ɵnov"](e,115).hasErrors,s["ɵnov"](e,115).hasSuccess),t(e,132,0,s["ɵnov"](e,138).ngClassUntouched,s["ɵnov"](e,138).ngClassTouched,s["ɵnov"](e,138).ngClassPristine,s["ɵnov"](e,138).ngClassDirty,s["ɵnov"](e,138).ngClassValid,s["ɵnov"](e,138).ngClassInvalid,s["ɵnov"](e,138).ngClassPending,s["ɵnov"](e,139).validClass,s["ɵnov"](e,139).invalidClass),t(e,147,0,s["ɵnov"](e,148).hasErrors,s["ɵnov"](e,148).hasSuccess),t(e,154,0,s["ɵnov"](e,160).ngClassUntouched,s["ɵnov"](e,160).ngClassTouched,s["ɵnov"](e,160).ngClassPristine,s["ɵnov"](e,160).ngClassDirty,s["ɵnov"](e,160).ngClassValid,s["ɵnov"](e,160).ngClassInvalid,s["ɵnov"](e,160).ngClassPending,s["ɵnov"](e,161).validClass,s["ɵnov"](e,161).invalidClass),t(e,162,0,s["ɵnov"](e,163).hasErrors,s["ɵnov"](e,163).hasSuccess),t(e,169,0,s["ɵnov"](e,175).ngClassUntouched,s["ɵnov"](e,175).ngClassTouched,s["ɵnov"](e,175).ngClassPristine,s["ɵnov"](e,175).ngClassDirty,s["ɵnov"](e,175).ngClassValid,s["ɵnov"](e,175).ngClassInvalid,s["ɵnov"](e,175).ngClassPending,s["ɵnov"](e,176).validClass,s["ɵnov"](e,176).invalidClass),t(e,179,0,s["ɵnov"](e,180).hasErrors,s["ɵnov"](e,180).hasSuccess),t(e,190,0,s["ɵnov"](e,197).ngClassUntouched,s["ɵnov"](e,197).ngClassTouched,s["ɵnov"](e,197).ngClassPristine,s["ɵnov"](e,197).ngClassDirty,s["ɵnov"](e,197).ngClassValid,s["ɵnov"](e,197).ngClassInvalid,s["ɵnov"](e,197).ngClassPending,s["ɵnov"](e,198).validClass,s["ɵnov"](e,198).invalidClass),t(e,201,0,s["ɵnov"](e,202).hasErrors,s["ɵnov"](e,202).hasSuccess),t(e,215,0,s["ɵnov"](e,221).ngClassUntouched,s["ɵnov"](e,221).ngClassTouched,s["ɵnov"](e,221).ngClassPristine,s["ɵnov"](e,221).ngClassDirty,s["ɵnov"](e,221).ngClassValid,s["ɵnov"](e,221).ngClassInvalid,s["ɵnov"](e,221).ngClassPending,s["ɵnov"](e,222).validClass,s["ɵnov"](e,222).invalidClass)}))}function Ef(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,79,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,78,"form",[["name","previewForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,72,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,["Step "," of 2: Telemetry report preview"])),(t()(),s["ɵeld"](10,0,null,null,61,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](12,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,17,{FormControlNames:1}),s["ɵqud"](603979776,18,{messagesBlock:0}),(t()(),s["ɵeld"](15,0,null,0,3,"label",[["class","cd-col-form-label"],["for","reportId"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Report ID "])),(t()(),s["ɵeld"](17,0,null,null,1,"cd-helper",[["html","A randomized UUID to identify a particular cluster over the course of several telemetry reports."]],null,null,null,Zu.b,Zu.a)),s["ɵdid"](18,49152,null,0,Ju.a,[],{html:[0,"html"]},null),(t()(),s["ɵeld"](19,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,7,"input",[["class","form-control"],["formControlName","reportId"],["id","reportId"],["readonly",""],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,22)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,22).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,22)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,22)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](24,671744,[[17,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](26,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](28,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](29,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,19,{FormControlNames:1}),s["ɵqud"](603979776,20,{messagesBlock:0}),(t()(),s["ɵeld"](32,0,null,0,3,"label",[["class","cd-col-form-label"],["for","report"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Report preview "])),(t()(),s["ɵeld"](34,0,null,null,1,"cd-helper",[["html","The actual telemetry data that will be submitted."]],null,null,null,Zu.b,Zu.a)),s["ɵdid"](35,49152,null,0,Ju.a,[],{html:[0,"html"]},null),(t()(),s["ɵeld"](36,0,null,0,7,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](37,0,null,null,6,"textarea",[["class","form-control"],["formControlName","report"],["id","report"],["readonly",""],["rows","15"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,38)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,38).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,38)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,38)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](38,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](40,671744,[[19,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](42,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](43,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](44,0,null,null,8,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](45,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,21,{FormControlNames:1}),s["ɵqud"](603979776,22,{messagesBlock:0}),(t()(),s["ɵeld"](48,0,null,0,4,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](49,0,null,null,1,"button",[["class","btn btn-light mr-2"],["title","Download"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.download(r.report,"telemetry_report.json")&&a),a}),null,null)),(t()(),s["ɵeld"](50,0,null,null,0,"i",[["class","fa fa-download"]],null,null,null,null,null)),(t()(),s["ɵeld"](51,0,null,null,1,"button",[["cdCopy2ClipboardButton","report"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,52).onClick()&&a),a}),null,null)),s["ɵdid"](52,81920,null,0,Xu.a,[s.ElementRef,s.Renderer2,d.j,fe.a],{cdCopy2ClipboardButton:[0,"cdCopy2ClipboardButton"]},null),(t()(),s["ɵeld"](53,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](54,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,23,{FormControlNames:1}),s["ɵqud"](603979776,24,{messagesBlock:0}),(t()(),s["ɵeld"](57,0,null,0,14,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](58,0,null,null,13,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](59,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","licenseAgrmt"],["id","licenseAgrmt"],["name","licenseAgrmt"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,61).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,61).onTouched()&&a),a}),null,null)),s["ɵdid"](60,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](61,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](63,671744,[[23,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](65,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](66,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](67,0,null,null,4,"label",[["class","custom-control-label"],["for","licenseAgrmt"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["I agree to my telemetry data being submitted under the Community Data License Agreement - Sharing - Version 1.0 ("])),(t()(),s["ɵeld"](69,0,null,null,1,"a",[["href","https://cdla.io/sharing-1-0/"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["https://cdla.io/sharing-1-0/"])),(t()(),s["ɵted"](-1,null,[")"])),(t()(),s["ɵeld"](72,0,null,null,7,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](73,0,null,null,6,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](74,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),$s.b,$s.a)),s["ɵdid"](75,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵeld"](76,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Save"])),(t()(),s["ɵeld"](78,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.back()&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["Back"]))],(function(t,e){var n=e.component;t(e,3,0,n.previewForm),t(e,6,0,n.previewForm),t(e,12,0),t(e,18,0,"A randomized UUID to identify a particular cluster over the course of several telemetry reports."),t(e,24,0,"reportId"),t(e,27,0,"reportId"),t(e,29,0),t(e,35,0,"The actual telemetry data that will be submitted."),t(e,40,0,"report"),t(e,43,0,"report"),t(e,45,0),t(e,52,0,"report"),t(e,54,0),t(e,63,0,"licenseAgrmt"),t(e,66,0,"licenseAgrmt"),t(e,75,0,n.previewForm)}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending),t(e,9,0,n.step),t(e,11,0,s["ɵnov"](e,12).hasErrors,s["ɵnov"](e,12).hasSuccess),t(e,20,0,s["ɵnov"](e,26).ngClassUntouched,s["ɵnov"](e,26).ngClassTouched,s["ɵnov"](e,26).ngClassPristine,s["ɵnov"](e,26).ngClassDirty,s["ɵnov"](e,26).ngClassValid,s["ɵnov"](e,26).ngClassInvalid,s["ɵnov"](e,26).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass),t(e,28,0,s["ɵnov"](e,29).hasErrors,s["ɵnov"](e,29).hasSuccess),t(e,37,0,s["ɵnov"](e,42).ngClassUntouched,s["ɵnov"](e,42).ngClassTouched,s["ɵnov"](e,42).ngClassPristine,s["ɵnov"](e,42).ngClassDirty,s["ɵnov"](e,42).ngClassValid,s["ɵnov"](e,42).ngClassInvalid,s["ɵnov"](e,42).ngClassPending,s["ɵnov"](e,43).validClass,s["ɵnov"](e,43).invalidClass),t(e,44,0,s["ɵnov"](e,45).hasErrors,s["ɵnov"](e,45).hasSuccess),t(e,53,0,s["ɵnov"](e,54).hasErrors,s["ɵnov"](e,54).hasSuccess),t(e,59,0,s["ɵnov"](e,65).ngClassUntouched,s["ɵnov"](e,65).ngClassTouched,s["ɵnov"](e,65).ngClassPristine,s["ɵnov"](e,65).ngClassDirty,s["ɵnov"](e,65).ngClassValid,s["ɵnov"](e,65).ngClassInvalid,s["ɵnov"](e,65).ngClassPending,s["ɵnov"](e,66).validClass,s["ɵnov"](e,66).invalidClass)}))}function Lf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,null,null,null,null,null,null,null)),s["ɵdid"](2,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,kf)),s["ɵdid"](4,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ef)),s["ɵdid"](6,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null)],(function(t,e){t(e,2,0,e.component.step),t(e,4,0,1),t(e,6,0,2)}),null)}function Df(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Nf)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cf)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Lf)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.loading&&!n.error),t(e,3,0,n.loading&&n.error),t(e,5,0,!n.loading&&!n.error)}),null)}function Pf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-telemetry",[],null,null,null,Df,If)),s["ɵdid"](1,114688,null,0,Tf,[no.a,oe,bt.a,Et.m,wf,fe.a,Sf,de],null,null)],(function(t,e){t(e,1,0)}),null)}var Mf=s["ɵccf"]("cd-telemetry",Tf,Pf,{},{},[]);const qf=new Is.a("silence");class jf extends Ns.a{constructor(t,e,n,a,r){super(),this.authStorageService=t,this.prometheusAlertService=e,this.urlBuilder=n,this.i18n=a,this.cdDatePipe=r,this.selection=new li.a,this.icons=pt.a,this.customCss={"badge badge-danger":"active","badge badge-warning":"unprocessed","badge badge-info":"suppressed"},this.permission=this.authStorageService.getPermissions().prometheus,this.tableActions=[{permission:"create",canBePrimary:t=>t.hasSingleSelection,disable:t=>!t.hasSingleSelection||t.first().cdExecuting,icon:pt.a.add,routerLink:()=>"/monitoring"+this.urlBuilder.getCreateFrom(this.selection.first().fingerprint),name:this.i18n("Create Silence")}]}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"labels.alertname",flexGrow:2},{name:this.i18n("Job"),prop:"labels.job",flexGrow:2},{name:this.i18n("Severity"),prop:"labels.severity"},{name:this.i18n("State"),prop:"status.state",cellTransformation:oi.a.classAdding},{name:this.i18n("Started"),prop:"startsAt",pipe:this.cdDatePipe},{name:this.i18n("URL"),prop:"generatorURL",sortable:!1,cellTemplate:this.externalLinkTpl}]}updateSelection(t){this.selection=t}}var Ff=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Vf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[["cdTableDetail",""]],null,null,null,Ai.b,Ai.a)),s["ɵdid"](1,638976,null,0,ki.a,[He.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"],appendParentKey:[3,"appendParentKey"],hideEmpty:[4,"hideEmpty"],customCss:[5,"customCss"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.expandedRow,!1,!0,!1,!0,n.customCss)}),null)}function Gf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"a",[["target","_blank"]],[[8,"href",4]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](3,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](4,1),(t()(),s["ɵted"](-1,null,[" Source"]))],(function(t,e){var n=t(e,4,0,e.component.icons.lineChart);t(e,3,0,n)}),(function(t,e){t(e,0,0,e.context.value)}))}function Bf(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{externalLinkTpl:0}),(t()(),s["ɵeld"](1,0,null,null,5,"cd-table",[["identifier","fingerprint"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](2,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],identifier:[3,"identifier"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"],customCss:[6,"customCss"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](3,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](4,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵand"](16777216,null,3,1,null,Vf)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[1,2],["externalLinkTpl",2]],null,0,null,Gf))],(function(t,e){var n=e.component;t(e,2,0,n.prometheusAlertService.alerts,n.columns,!0,"fingerprint",!0,"single",n.customCss),t(e,4,0,n.permission,n.selection,n.tableActions),t(e,6,0,n.expandedRow)}),null)}class zf extends Ns.a{constructor(t){super(),this.i18n=t,this.hideKeys=["alerts","type"]}ngOnInit(){this.columns=[{prop:"name",name:this.i18n("Name")},{prop:"labels.severity",name:this.i18n("Severity")},{prop:"group",name:this.i18n("Group")},{prop:"duration",name:this.i18n("Duration"),pipe:new Ye},{prop:"query",name:this.i18n("Query"),isHidden:!0},{prop:"annotations.description",name:this.i18n("Description")}]}}var Yf=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Hf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[["cdTableDetail",""]],null,null,null,Ai.b,Ai.a)),s["ɵdid"](1,638976,null,0,ki.a,[He.a],{data:[0,"data"],renderObjects:[1,"renderObjects"],hideKeys:[2,"hideKeys"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.expandedRow,!0,n.hideKeys)}),null)}function Uf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-table",[],null,[[null,"updateSelection"]],(function(t,e,n){var a=!0;return"updateSelection"===e&&(a=!1!==t.component.setExpandedRow(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](1,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],hasDetails:[2,"hasDetails"],selectionType:[3,"selectionType"]},{updateSelection:"updateSelection"}),(t()(),s["ɵand"](16777216,null,3,1,null,Hf)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.data,n.columns,!0,"single"),t(e,3,0,n.expandedRow)}),null)}var Wf=n("w9WL");const Kf=new Is.a("monitoring/silence");class $f extends Ns.a{constructor(t,e,n,a,r,i,s,u,o){super(),this.authStorageService=t,this.i18n=e,this.cdDatePipe=n,this.prometheusService=a,this.modalService=r,this.notificationService=i,this.urlBuilder=s,this.actionLabels=u,this.succeededLabels=o,this.silences=[],this.selection=new li.a,this.customCss={"badge badge-danger":"active","badge badge-warning":"pending","badge badge-default":"expired"},this.sorts=[{prop:"endsAt",dir:Wf.A.desc}],this.permission=this.authStorageService.getPermissions().prometheus;const l=t=>t.first()&&t.first().status&&"expired"===t.first().status.state;this.tableActions=[{permission:"create",icon:pt.a.add,routerLink:()=>this.urlBuilder.getCreate(),preserveFragment:!0,canBePrimary:t=>!t.hasSingleSelection,name:this.actionLabels.CREATE},{permission:"create",canBePrimary:t=>t.hasSingleSelection&&l(t),disable:t=>!t.hasSingleSelection||t.first().cdExecuting||t.first().cdExecuting&&l(t)||!l(t),icon:pt.a.copy,routerLink:()=>this.urlBuilder.getRecreate(this.selection.first().id),preserveFragment:!0,name:this.actionLabels.RECREATE},{permission:"update",icon:pt.a.edit,canBePrimary:t=>t.hasSingleSelection&&!l(t),disable:t=>!t.hasSingleSelection||t.first().cdExecuting||t.first().cdExecuting&&!l(t)||l(t),routerLink:()=>this.urlBuilder.getEdit(this.selection.first().id),preserveFragment:!0,name:this.actionLabels.EDIT},{permission:"delete",icon:pt.a.trash,canBePrimary:t=>t.hasSingleSelection&&!l(t),disable:t=>!t.hasSingleSelection||t.first().cdExecuting||l(t),click:()=>this.expireSilence(),name:this.actionLabels.EXPIRE}],this.columns=[{name:this.i18n("ID"),prop:"id",flexGrow:3},{name:this.i18n("Created by"),prop:"createdBy",flexGrow:2},{name:this.i18n("Started"),prop:"startsAt",pipe:this.cdDatePipe},{name:this.i18n("Updated"),prop:"updatedAt",pipe:this.cdDatePipe},{name:this.i18n("Ends"),prop:"endsAt",pipe:this.cdDatePipe},{name:this.i18n("Status"),prop:"status.state",cellTransformation:oi.a.classAdding}]}refresh(){this.prometheusService.ifAlertmanagerConfigured(()=>{this.prometheusService.getSilences().subscribe(t=>{this.silences=t},()=>{this.prometheusService.disableAlertmanagerConfig()})})}updateSelection(t){this.selection=t}expireSilence(){const t=this.selection.first().id,e=this.i18n("Silence");this.modalRef=this.modalService.show(Cs.a,{initialState:{itemDescription:e,itemNames:[t],actionDescription:this.actionLabels.EXPIRE,submitActionObservable:()=>new Zn.a(n=>{this.prometheusService.expireSilence(t).subscribe(()=>{this.notificationService.show(le.a.success,`${this.succeededLabels.EXPIRED} ${e} ${t}`,void 0,void 0,"Prometheus")},t=>{t.application="Prometheus",n.error(t)},()=>{n.complete(),this.refresh()})})}})}}var Zf=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Jf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-table-key-value",[["cdTableDetail",""]],null,null,null,Ai.b,Ai.a)),s["ɵdid"](1,638976,null,0,ki.a,[He.a],{data:[0,"data"],autoReload:[1,"autoReload"],renderObjects:[2,"renderObjects"],appendParentKey:[3,"appendParentKey"],hideEmpty:[4,"hideEmpty"],customCss:[5,"customCss"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.expandedRow,!1,!0,!1,!0,n.customCss)}),null)}function Qf(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-table",[["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"fetchData"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"fetchData"===e&&(a=!1!==r.refresh()&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](1,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],sorts:[2,"sorts"],hasDetails:[3,"hasDetails"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"],customCss:[6,"customCss"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](2,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](3,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵand"](16777216,null,3,1,null,Jf)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.silences,n.columns,n.sorts,!0,!0,"single",n.customCss),t(e,3,0,n.permission,n.selection,n.tableActions),t(e,5,0,n.expandedRow)}),null)}class Xf{constructor(t,e,n,a){this.prometheusAlertService=t,this.prometheusService=e,this.route=n,this.router=a,this.isPrometheusConfigured=!1,this.isAlertmanagerConfigured=!1}ngOnInit(){if(this.prometheusService.ifAlertmanagerConfigured(()=>{this.isAlertmanagerConfigured=!0}),this.prometheusService.ifPrometheusConfigured(()=>{this.isPrometheusConfigured=!0}),this.route.snapshot.fragment){const t=this.tabs.tabs.find(t=>t.elementRef.nativeElement.id===this.route.snapshot.fragment);t&&(t.active=!0),this.router.navigate([],{fragment:this.route.snapshot.fragment})}}setFragment(t){this.router.navigate([],{fragment:t.id})}}var th=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function eh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-active-alert-list",[],null,null,null,Bf,Ff)),s["ɵprd"](256,null,Is.a,qf,[]),s["ɵdid"](2,114688,null,0,jf,[J.a,en,Is.a,fe.a,He.a],null,null)],(function(t,e){t(e,2,0)}),null)}function nh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["To see all active Prometheus alerts, please provide the URL to the API of Prometheus' Alertmanager as described in the "])),(t()(),s["ɵeld"](3,0,null,0,1,"cd-doc",[["section","prometheus"]],null,null,null,ei.b,ei.a)),s["ɵdid"](4,114688,null,0,ni.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,0,["."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"prometheus")}),null)}function ah(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-rules-list",[],null,null,null,Uf,Yf)),s["ɵdid"](1,114688,null,0,zf,[fe.a],{data:[0,"data"]},null)],(function(t,e){t(e,1,0,e.component.prometheusAlertService.rules)}),null)}function rh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["To see all configured Prometheus alerts, please provide the URL to the API of Prometheus as described in the "])),(t()(),s["ɵeld"](3,0,null,0,1,"cd-doc",[["section","prometheus"]],null,null,null,ei.b,ei.a)),s["ɵdid"](4,114688,null,0,ni.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,0,["."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"prometheus")}),null)}function ih(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-silences-list",[],null,null,null,Qf,Zf)),s["ɵprd"](256,null,Is.a,Kf,[]),s["ɵdid"](2,49152,null,0,$f,[J.a,fe.a,He.a,Xe,Ct.b,bt.a,Is.a,St.b,St.d],null,null)],null,null)}function sh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["To enable Silences, please provide the URL to the API of the Prometheus' Alertmanager as described in the "])),(t()(),s["ɵeld"](3,0,null,0,1,"cd-doc",[["section","prometheus"]],null,null,null,ei.b,ei.a)),s["ɵdid"](4,114688,null,0,ni.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,0,["."]))],(function(t,e){t(e,1,0,"info"),t(e,4,0,"prometheus")}),null)}function uh(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{tabs:0}),(t()(),s["ɵeld"](1,0,null,null,19,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](2,180224,[[1,4],["tabs",4]],0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](3,0,null,0,5,"tab",[["heading","Active Alerts"],["id","active-alerts"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.setFragment(n)&&a),a}),null,null)),s["ɵdid"](4,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"],id:[1,"id"]},{selectTab:"selectTab"}),(t()(),s["ɵand"](16777216,null,null,1,null,eh)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,nh)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](9,0,null,0,5,"tab",[["heading","All Alerts"],["id","all-alerts"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.setFragment(n)&&a),a}),null,null)),s["ɵdid"](10,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"],id:[1,"id"]},{selectTab:"selectTab"}),(t()(),s["ɵand"](16777216,null,null,1,null,ah)),s["ɵdid"](12,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rh)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](15,0,null,0,5,"tab",[["heading","Silences"],["id","silences"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.setFragment(n)&&a),a}),null,null)),s["ɵdid"](16,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"],id:[1,"id"]},{selectTab:"selectTab"}),(t()(),s["ɵand"](16777216,null,null,1,null,ih)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,sh)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,4,0,"Active Alerts","active-alerts"),t(e,6,0,n.isAlertmanagerConfigured),t(e,8,0,!n.isAlertmanagerConfigured),t(e,10,0,"All Alerts","all-alerts"),t(e,12,0,n.isPrometheusConfigured),t(e,14,0,!n.isPrometheusConfigured),t(e,16,0,"Silences","silences"),t(e,18,0,n.isAlertmanagerConfigured),t(e,20,0,!n.isAlertmanagerConfigured)}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).clazz),t(e,3,0,s["ɵnov"](e,4).id,s["ɵnov"](e,4).active,s["ɵnov"](e,4).addClass,s["ɵnov"](e,4).role,s["ɵnov"](e,4).ariaLabelledby),t(e,9,0,s["ɵnov"](e,10).id,s["ɵnov"](e,10).active,s["ɵnov"](e,10).addClass,s["ɵnov"](e,10).role,s["ɵnov"](e,10).ariaLabelledby),t(e,15,0,s["ɵnov"](e,16).id,s["ɵnov"](e,16).active,s["ɵnov"](e,16).addClass,s["ɵnov"](e,16).role,s["ɵnov"](e,16).ariaLabelledby)}))}function oh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-monitoring-list",[],null,null,null,uh,th)),s["ɵdid"](1,114688,null,0,Xf,[en,Xe,Et.a,Et.m],null,null)],(function(t,e){t(e,1,0)}),null)}var lh=s["ɵccf"]("cd-monitoring-list",Xf,oh,{},{},[]);let dh=(()=>{class t{constructor(t){this.i18n=t,this.valueAttributePath={alertname:"name",instance:"alerts.0.labels.instance",job:"alerts.0.labels.job",severity:"labels.severity"}}singleMatch(t,e){return this.multiMatch([t],e)}multiMatch(t,e){if(!t.some(t=>t.isRegex))return t.forEach(t=>{e=this.getMatchedRules(t,e)}),this.describeMatch(e)}getMatchedRules(t,e){const n=this.getAttributePath(t.name);return e.filter(e=>X.get(e,n)===t.value)}describeMatch(t){let e=0;return t.forEach(t=>e+=t.alerts.length),{status:this.getMatchText(t.length,e),cssClass:e?"has-success":"has-warning"}}getAttributePath(t){return this.valueAttributePath[t]}getMatchText(t,e){const n={noRule:this.i18n("Your matcher seems to match no currently defined rule or active alert."),noAlerts:this.i18n("no active alerts"),alert:this.i18n("1 active alert"),alerts:this.i18n("{{n}} active alerts",{n:e}),rule:this.i18n("Matches 1 rule"),rules:this.i18n("Matches {{n}} rules",{n:t})};return t?this.i18n("{{rules}} with {{alerts}}.",{rules:t>1?n.rules:n.rule,alerts:e?e>1?n.alerts:n.alert:n.noAlerts}):n.noRule}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](fe.a))},token:t,providedIn:"root"}),t})(),ch=(()=>{class t{constructor(){}calculateDuration(t,e){const n=+t,a=+e,r=this.getDuration(Math.abs(n-a));return n>a?"-"+r:r}getDuration(t){const e=new Date(t),n=e.getUTCHours(),a=e.getUTCMinutes(),r=(t,e)=>t?t+e:t;return[r(Math.floor(t/864e5),"d"),r(n,"h"),r(a,"m")].filter(t=>t).join(" ")}calculateDate(t,e,n){const a=+t;if(X.isNaN(a))return;const r=this.getDurationMs(e)*(n?-1:1);return new Date(a+r)}getDurationMs(t){return 6e4*(60*(24*this.getNumbersFromString(t,"d")+this.getNumbersFromString(t,"h"))+this.getNumbersFromString(t,"m"))}getNumbersFromString(t,e){const n=t.match(new RegExp("[0-9 ]+"+e,"i"));return n?parseInt(n[0],10):0}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t})();class fh{constructor(t,e,n){this.formBuilder=t,this.silenceMatcher=e,this.bsModalRef=n,this.submitAction=new s.EventEmitter,this.editMode=!1,this.nameAttributes=["alertname","instance","job","severity"],this.possibleValues=[],this.matcherMatch=void 0,this.createForm(),this.subscribeToChanges()}createForm(){this.form=this.formBuilder.group({name:[null,[K.B.required]],value:[{value:null,disabled:!0},[K.B.required]],isRegex:new K.i(!1)})}subscribeToChanges(){this.form.get("name").valueChanges.subscribe(t=>{null!==t?(this.setPossibleValues(t),this.form.get("value").enable()):this.form.get("value").disable()}),this.form.get("value").valueChanges.subscribe(t=>{const e=this.form.value;e.value=t,this.matcherMatch=this.silenceMatcher.singleMatch(e,this.rules)})}setPossibleValues(t){this.possibleValues=X.sortedUniq(this.rules.map(e=>X.get(e,this.silenceMatcher.getAttributePath(t))).filter(t=>t))}preFillControls(t){this.form.setValue(t)}onSubmit(){this.submitAction.emit(this.form.value),this.bsModalRef.hide()}}class hh{constructor(t,e,n,a,r,i,s,u,o,l,d,c){this.i18n=t,this.router=e,this.authStorageService=n,this.formBuilder=a,this.prometheusService=r,this.notificationService=i,this.route=s,this.timeDiff=u,this.bsModalService=o,this.silenceMatcher=l,this.actionLabels=d,this.succeededLabels=c,this.icons=pt.a,this.bsConfig={dateInputFormat:"YYYY-MM-DDT HH:mm"},this.recreate=!1,this.edit=!1,this.resource=this.i18n("silence"),this.matchers=[],this.matcherMatch=void 0,this.matcherConfig=[{tooltip:this.i18n("Attribute name"),icon:this.icons.paragraph,attribute:"name"},{tooltip:this.i18n("Value"),icon:this.icons.terminal,attribute:"value"},{tooltip:this.i18n("Regular expression"),icon:this.icons.magic,attribute:"isRegex"}],this.init()}init(){this.chooseMode(),this.authenticate(),this.createForm(),this.setupDates(),this.getData()}chooseMode(){this.edit=this.router.url.startsWith("/monitoring/silence/edit"),this.recreate=this.router.url.startsWith("/monitoring/silence/recreate"),this.action=this.edit?this.actionLabels.EDIT:this.recreate?this.actionLabels.RECREATE:this.actionLabels.CREATE}authenticate(){this.permission=this.authStorageService.getPermissions().prometheus,this.permission.read&&(this.edit?this.permission.update:this.permission.create)||this.router.navigate(["/404"])}createForm(){this.form=this.formBuilder.group({startsAt:[null,[K.B.required]],duration:["2h",[K.B.min(1)]],endsAt:[null,[K.B.required]],createdBy:[this.authStorageService.getUsername(),[K.B.required]],comment:[null,[K.B.required]]},{validators:eu.a.custom("matcherRequired",()=>0===this.matchers.length)})}setupDates(){const t=new Date;t.setSeconds(0,0),this.form.silentSet("startsAt",t),this.updateDate(),this.subscribeDateChanges()}updateDate(t){const e=this.timeDiff.calculateDate(this.form.getValue(t?"endsAt":"startsAt"),this.form.getValue("duration"),t);e&&this.form.silentSet(t?"startsAt":"endsAt",e)}subscribeDateChanges(){this.form.get("startsAt").valueChanges.subscribe(()=>{this.onDateChange()}),this.form.get("duration").valueChanges.subscribe(()=>{this.updateDate()}),this.form.get("endsAt").valueChanges.subscribe(()=>{this.onDateChange(!0)})}onDateChange(t){this.form.getValue("startsAt")<this.form.getValue("endsAt")?this.updateDuration():this.updateDate(t)}updateDuration(){this.form.silentSet("duration",this.timeDiff.calculateDuration(this.form.getValue("startsAt"),this.form.getValue("endsAt")))}getData(){this.getRules(),this.getModeSpecificData()}getRules(){this.prometheusService.ifPrometheusConfigured(()=>this.prometheusService.getRules().subscribe(t=>{this.rules=t.groups.reduce((t,e)=>X.concat(t,e.rules),[])},()=>{this.prometheusService.disablePrometheusConfig(),this.rules=[]}),()=>{this.rules=[],this.notificationService.show(le.a.info,this.i18n("Please add your Prometheus host to the dashboard configuration and refresh the page"),void 0,void 0,"Prometheus")})}getModeSpecificData(){this.route.params.subscribe(t=>{t.id&&(this.edit||this.recreate?this.prometheusService.getSilences(t).subscribe(t=>{this.fillFormWithSilence(t[0])}):this.prometheusService.getAlerts(t).subscribe(t=>{this.fillFormByAlert(t[0])}))})}fillFormWithSilence(t){this.id=t.id,this.edit&&(["startsAt","endsAt"].forEach(e=>this.form.silentSet(e,new Date(t[e]))),this.updateDuration()),["createdBy","comment"].forEach(e=>this.form.silentSet(e,t[e])),this.matchers=t.matchers,this.validateMatchers()}validateMatchers(){this.rules?(this.matcherMatch=this.silenceMatcher.multiMatch(this.matchers,this.rules),this.form.markAsDirty(),this.form.updateValueAndValidity()):window.setTimeout(()=>this.validateMatchers(),100)}fillFormByAlert(t){const e=t.labels;Object.keys(e).forEach(t=>this.setMatcher({name:t,value:e[t],isRegex:!1}))}setMatcher(t,e){X.isNumber(e)?this.matchers[e]=t:this.matchers.push(t),this.validateMatchers()}showMatcherModal(t){const e=this.bsModalService.show(fh),n=e.content;n.rules=this.rules,X.isNumber(t)&&(n.editMode=!0,n.preFillControls(this.matchers[t])),e.content.submitAction.subscribe(e=>{this.setMatcher(e,t)})}deleteMatcher(t){this.matchers.splice(t,1),this.validateMatchers()}submit(){this.form.invalid||this.prometheusService.setSilence(this.getSubmitData()).subscribe(t=>{this.router.navigate(["/monitoring"],{fragment:"silences"}),this.notificationService.show(le.a.success,this.getNotificationTile(t.body.silenceId),void 0,void 0,"Prometheus")},()=>this.form.setErrors({cdSubmitButton:!0}))}getSubmitData(){const t=this.form.value;return delete t.duration,t.startsAt=t.startsAt.toISOString(),t.endsAt=t.endsAt.toISOString(),t.matchers=this.matchers,this.edit&&(t.id=this.id),t}getNotificationTile(t){let e;return e=this.edit?this.succeededLabels.EDITED:this.recreate?this.succeededLabels.RECREATED:this.succeededLabels.CREATED,`${e} ${this.resource} ${t}`}}var gh=s["ɵcrt"]({encapsulation:0,styles:[["textarea[_ngcontent-%COMP%]{resize:vertical}"]],data:{}});function ph(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"input",[["class","form-control"],["disabled",""],["readonly",""],["type","text"]],[[8,"id",0],[8,"value",0],[2,"is-valid",null],[2,"is-invalid",null]],null,null,null,null)),s["ɵdid"](2,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](3,16384,null,0,Q.h,[[8,null],Q.a],null,null)],null,(function(t,e){t(e,1,0,s["ɵinlineInterpolate"](2,"matcher-",e.parent.context.$implicit.attribute,"-",e.parent.parent.context.index,""),e.parent.parent.context.matcher[e.parent.context.$implicit.attribute],s["ɵnov"](e,3).validClass,s["ɵnov"](e,3).invalidClass)}))}function bh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"div",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,2,"div",[["class","input-group-text"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"input",[["disabled",""],["readonly",""],["type","checkbox"]],[[8,"id",0],[8,"checked",0]],null,null,null,null)),s["ɵdid"](4,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null)],null,(function(t,e){t(e,3,0,s["ɵinlineInterpolate"](2,"matcher-",e.parent.context.$implicit.attribute,"-",e.parent.parent.context.index,""),e.parent.parent.context.matcher[e.parent.context.$implicit.attribute])}))}function mh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,6,"div",[["class","input-group-prepend"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,16777216,null,null,5,"span",[["class","input-group-text"]],null,null,null,null,null)),s["ɵdid"](3,212992,null,0,ba.c,[s.ViewContainerRef,U.a,ba.a,s.ElementRef,s.Renderer2,Na.a],{tooltip:[0,"tooltip"]},null),(t()(),s["ɵeld"](4,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,1),(t()(),s["ɵand"](16777216,null,null,1,null,ph)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,bh)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,3,0,e.context.$implicit.tooltip);var n=t(e,7,0,e.context.$implicit.icon);t(e,6,0,n),t(e,9,0,"isRegex"!==e.context.$implicit.attribute),t(e,11,0,"isRegex"===e.context.$implicit.attribute)}),null)}function yh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,15,"div",[["class","input-group my-2"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,mh)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](3,0,null,null,12,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,16777216,null,null,5,"button",[["class","btn btn-light"],["tooltip","Edit"],["type","button"]],[[8,"id",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.showMatcherModal(t.context.index)&&a),a}),null,null)),s["ɵdid"](5,212992,null,0,ba.c,[s.ViewContainerRef,U.a,ba.a,s.ElementRef,s.Renderer2,Na.a],{tooltip:[0,"tooltip"]},null),(t()(),s["ɵeld"](6,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](8,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](9,1),(t()(),s["ɵeld"](10,16777216,null,null,5,"button",[["class","btn btn-light"],["tooltip","Delete"],["type","button"]],[[8,"id",0]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.deleteMatcher(t.context.index)&&a),a}),null,null)),s["ɵdid"](11,212992,null,0,ba.c,[s.ViewContainerRef,U.a,ba.a,s.ElementRef,s.Renderer2,Na.a],{tooltip:[0,"tooltip"]},null),(t()(),s["ɵeld"](12,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](14,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](15,1),(t()(),s["ɵeld"](16,0,null,null,0,"span",[["class","help-block"]],null,null,null,null,null))],(function(t,e){var n=e.component;t(e,2,0,n.matcherConfig),t(e,5,0,"Edit");var a=t(e,9,0,n.icons.edit);t(e,8,0,a),t(e,11,0,"Delete");var r=t(e,15,0,n.icons.trash);t(e,14,0,r)}),(function(t,e){t(e,4,0,s["ɵinlineInterpolate"](1,"matcher-edit-",e.context.index,"")),t(e,10,0,s["ɵinlineInterpolate"](1,"matcher-delete-",e.context.index,""))}))}function vh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](1,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["Editing a silence will expire the old silence and recreate it as a new silence"]))],null,null)}function xh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function _h(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function Th(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function wh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function Oh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function Sh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"h5",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](3,{"text-warning":0,"text-danger":1}),(t()(),s["ɵeld"](4,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["A silence requires at least one matcher"]))],(function(t,e){var n=t(e,3,0,!s["ɵnov"](e.parent,6).submitted,s["ɵnov"](e.parent,6).submitted);t(e,2,0,n)}),null)}function Ih(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,null,null,null,null,null,null,null))],null,null)}function Nh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"span",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,Ih)),s["ɵdid"](2,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),s["ɵpod"](3,{index:0,matcher:1})],(function(t,e){var n=t(e,3,0,e.context.index,e.context.$implicit);t(e,2,0,n,s["ɵnov"](e.parent,2))}),null)}function Ch(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"div",[["id","match-state"]],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵted"](2,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,0,0,s["ɵinlineInterpolate"](1,"cd-col-form-offset ",n.matcherMatch.cssClass,"")),t(e,1,0,s["ɵinlineInterpolate"](1,"text-muted ",n.matcherMatch.cssClass,"")),t(e,2,0,n.matcherMatch.status)}))}function Rh(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Xs.a,[]),(t()(),s["ɵand"](0,[["matcherTpl",2]],null,0,null,yh)),(t()(),s["ɵeld"](3,0,null,null,141,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,140,"form",[["class","form"],["name","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,6).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,9).onSubmit()&&a),a}),null,null)),s["ɵdid"](5,16384,null,0,K.G,[],null,null),s["ɵdid"](6,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](8,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](9,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](10,0,null,null,134,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,6,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,3,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](13,null,[" "," "," "])),s["ɵppd"](14,1),s["ɵppd"](15,1),(t()(),s["ɵand"](16777216,null,null,1,null,vh)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](18,0,null,null,117,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](20,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](23,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","created-by"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Creator"])),(t()(),s["ɵeld"](25,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](26,0,null,null,7,"input",[["class","form-control"],["formControlName","createdBy"],["id","created-by"],["name","created-by"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,28)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,28).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,28)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,28)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](27,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](28,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](30,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](32,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](33,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xh)),s["ɵdid"](35,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](36,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](37,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](40,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","comment"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Comment"])),(t()(),s["ɵeld"](42,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](43,0,null,null,7,"textarea",[["class","form-control"],["formControlName","comment"],["id","comment"],["name","comment"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,44)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,44).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,44)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,44)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](44,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](46,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](48,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](49,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵted"](-1,null,["            "])),(t()(),s["ɵand"](16777216,null,null,1,null,_h)),s["ɵdid"](52,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](53,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](54,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](57,0,null,0,5,"label",[["class","cd-col-form-label"],["for","starts-at"]],null,null,null,null,null)),(t()(),s["ɵeld"](58,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Start time"])),(t()(),s["ɵeld"](60,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](61,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](-1,0,["If the start time lies in the past the creation time will be used"])),(t()(),s["ɵeld"](63,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](64,16777216,null,null,10,"input",[["bsDatepicker",""],["class","form-control"],["formControlName","startsAt"],["id","starts-at"],["name","starts-at"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,66)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,66).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,66)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,66)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,68).onChange(n)&&a),"keyup.esc"===e&&(a=!1!==s["ɵnov"](t,68).hide()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,68).onBlur()&&a),a}),null,null)),s["ɵdid"](65,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](66,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](67,737280,null,0,st.c,[st.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a],{bsConfig:[0,"bsConfig"]},null),s["ɵdid"](68,16384,null,0,st.f,[st.c,st.l,s.Renderer2,s.ElementRef,s.ChangeDetectorRef],null,null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[st.f]),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,st.f]),s["ɵdid"](71,671744,[[5,4]],0,K.j,[[3,K.d],[6,K.o],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](73,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](74,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Th)),s["ɵdid"](76,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](77,0,null,null,16,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](78,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](81,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","duration"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Duration"])),(t()(),s["ɵeld"](83,0,null,0,10,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](84,0,null,null,7,"input",[["class","form-control"],["formControlName","duration"],["id","duration"],["name","duration"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,86)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,86).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,86)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,86)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](85,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](86,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](88,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](90,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](91,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,wh)),s["ɵdid"](93,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](94,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](95,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,9,{FormControlNames:1}),s["ɵqud"](603979776,10,{messagesBlock:0}),(t()(),s["ɵeld"](98,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","ends-at"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["End time"])),(t()(),s["ɵeld"](100,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](101,16777216,null,null,10,"input",[["bsDatepicker",""],["class","form-control"],["formControlName","endsAt"],["id","ends-at"],["name","ends-at"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"],[null,"keyup.esc"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,103)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,103).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,103)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,103)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,105).onChange(n)&&a),"keyup.esc"===e&&(a=!1!==s["ɵnov"](t,105).hide()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,105).onBlur()&&a),a}),null,null)),s["ɵdid"](102,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](103,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](104,737280,null,0,st.c,[st.a,s.ElementRef,s.Renderer2,s.ViewContainerRef,U.a],{bsConfig:[0,"bsConfig"]},null),s["ɵdid"](105,16384,null,0,st.f,[st.c,st.l,s.Renderer2,s.ElementRef,s.ChangeDetectorRef],null,null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[st.f]),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,st.f]),s["ɵdid"](108,671744,[[9,4]],0,K.j,[[3,K.d],[6,K.o],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](110,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](111,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Oh)),s["ɵdid"](113,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](114,0,null,null,21,"fieldset",[],null,null,null,null,null)),(t()(),s["ɵeld"](115,0,null,null,1,"legend",[["class","required"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Matchers"])),(t()(),s["ɵeld"](117,0,null,null,16,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Sh)),s["ɵdid"](119,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Nh)),s["ɵdid"](121,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](122,0,null,null,11,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](123,0,null,null,10,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](124,0,null,null,9,"button",[["class","btn btn-light float-right my-3"],["id","add-matcher"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.showMatcherModal()&&a),a}),null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](126,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](127,{"btn-warning":0}),(t()(),s["ɵeld"](128,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](130,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](131,1),(t()(),s["ɵeld"](132,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add matcher"])),(t()(),s["ɵand"](16777216,null,null,1,null,Ch)),s["ɵdid"](135,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](136,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](137,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](138,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submit()&&a),a}),$s.b,$s.a)),s["ɵdid"](139,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](140,0,[" "," "," "])),s["ɵppd"](141,1),s["ɵppd"](142,1),(t()(),s["ɵeld"](143,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](144,49152,null,0,Qs.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,6,0,n.form),t(e,9,0,n.form),t(e,17,0,n.edit),t(e,20,0),t(e,30,0,"createdBy"),t(e,33,0,"createdBy"),t(e,35,0,n.form.showError("createdBy",s["ɵnov"](e,6),"required")),t(e,37,0),t(e,46,0,"comment"),t(e,49,0,"comment"),t(e,52,0,n.form.showError("comment",s["ɵnov"](e,6),"required")),t(e,54,0),t(e,67,0,n.bsConfig),t(e,71,0,"startsAt"),t(e,74,0,"startsAt"),t(e,76,0,n.form.showError("startsAt",s["ɵnov"](e,6),"required")),t(e,78,0),t(e,88,0,"duration"),t(e,91,0,"duration"),t(e,93,0,n.form.showError("duration",s["ɵnov"](e,6),"required")),t(e,95,0),t(e,104,0,n.bsConfig),t(e,108,0,"endsAt"),t(e,111,0,"endsAt"),t(e,113,0,n.form.showError("endsAt",s["ɵnov"](e,6),"required")),t(e,119,0,0===n.matchers.length),t(e,121,0,n.matchers);var a=t(e,127,0,s["ɵnov"](e,6).submitted&&0===n.matchers.length);t(e,126,0,"btn btn-light float-right my-3",a);var r=t(e,131,0,n.icons.add);t(e,130,0,r),t(e,135,0,n.matchers.length&&n.matcherMatch),t(e,139,0,s["ɵnov"](e,6))}),(function(t,e){var n=e.component;t(e,4,0,s["ɵnov"](e,8).ngClassUntouched,s["ɵnov"](e,8).ngClassTouched,s["ɵnov"](e,8).ngClassPristine,s["ɵnov"](e,8).ngClassDirty,s["ɵnov"](e,8).ngClassValid,s["ɵnov"](e,8).ngClassInvalid,s["ɵnov"](e,8).ngClassPending);var a=s["ɵunv"](e,13,0,t(e,14,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,13,1,t(e,15,0,s["ɵnov"](e,1),n.resource));t(e,13,0,a,r),t(e,19,0,s["ɵnov"](e,20).hasErrors,s["ɵnov"](e,20).hasSuccess),t(e,26,0,s["ɵnov"](e,32).ngClassUntouched,s["ɵnov"](e,32).ngClassTouched,s["ɵnov"](e,32).ngClassPristine,s["ɵnov"](e,32).ngClassDirty,s["ɵnov"](e,32).ngClassValid,s["ɵnov"](e,32).ngClassInvalid,s["ɵnov"](e,32).ngClassPending,s["ɵnov"](e,33).validClass,s["ɵnov"](e,33).invalidClass),t(e,36,0,s["ɵnov"](e,37).hasErrors,s["ɵnov"](e,37).hasSuccess),t(e,43,0,s["ɵnov"](e,48).ngClassUntouched,s["ɵnov"](e,48).ngClassTouched,s["ɵnov"](e,48).ngClassPristine,s["ɵnov"](e,48).ngClassDirty,s["ɵnov"](e,48).ngClassValid,s["ɵnov"](e,48).ngClassInvalid,s["ɵnov"](e,48).ngClassPending,s["ɵnov"](e,49).validClass,s["ɵnov"](e,49).invalidClass),t(e,53,0,s["ɵnov"](e,54).hasErrors,s["ɵnov"](e,54).hasSuccess),t(e,64,0,s["ɵnov"](e,73).ngClassUntouched,s["ɵnov"](e,73).ngClassTouched,s["ɵnov"](e,73).ngClassPristine,s["ɵnov"](e,73).ngClassDirty,s["ɵnov"](e,73).ngClassValid,s["ɵnov"](e,73).ngClassInvalid,s["ɵnov"](e,73).ngClassPending,s["ɵnov"](e,74).validClass,s["ɵnov"](e,74).invalidClass),t(e,77,0,s["ɵnov"](e,78).hasErrors,s["ɵnov"](e,78).hasSuccess),t(e,84,0,s["ɵnov"](e,90).ngClassUntouched,s["ɵnov"](e,90).ngClassTouched,s["ɵnov"](e,90).ngClassPristine,s["ɵnov"](e,90).ngClassDirty,s["ɵnov"](e,90).ngClassValid,s["ɵnov"](e,90).ngClassInvalid,s["ɵnov"](e,90).ngClassPending,s["ɵnov"](e,91).validClass,s["ɵnov"](e,91).invalidClass),t(e,94,0,s["ɵnov"](e,95).hasErrors,s["ɵnov"](e,95).hasSuccess),t(e,101,0,s["ɵnov"](e,110).ngClassUntouched,s["ɵnov"](e,110).ngClassTouched,s["ɵnov"](e,110).ngClassPristine,s["ɵnov"](e,110).ngClassDirty,s["ɵnov"](e,110).ngClassValid,s["ɵnov"](e,110).ngClassInvalid,s["ɵnov"](e,110).ngClassPending,s["ɵnov"](e,111).validClass,s["ɵnov"](e,111).invalidClass);var i=s["ɵunv"](e,140,0,t(e,141,0,s["ɵnov"](e,0),n.action)),u=s["ɵunv"](e,140,1,t(e,142,0,s["ɵnov"](e,1),n.resource));t(e,140,0,i,u)}))}function Ah(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-prometheus-form",[],null,null,null,Rh,gh)),s["ɵdid"](1,49152,null,0,hh,[fe.a,Et.m,J.a,no.a,Xe,bt.a,Et.a,ch,Ct.b,dh,St.b,St.d],null,null)],null,null)}var kh=s["ɵccf"]("cd-prometheus-form",hh,Ah,{},{},[]);let Eh=(()=>{class t{constructor(e){this.route=e,this.route.queryParams.subscribe(e=>{this.fromLink=e.fromLink||t.defaultFromLink}),this.route.params.subscribe(t=>{this.serviceId=decodeURIComponent(t.id),this.serviceType=t.type})}}return t.defaultFromLink="/hosts",t})();var Lh=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Dh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",".",""])),(t()(),s["ɵeld"](2,0,null,null,1,"cd-table-performance-counter",[],null,null,null,Jo.b,Jo.a)),s["ɵdid"](3,114688,null,0,Qo.a,[Xo.a,fe.a],{serviceType:[0,"serviceType"],serviceId:[1,"serviceId"]},null)],(function(t,e){var n=e.component;t(e,3,0,n.serviceType,n.serviceId)}),(function(t,e){var n=e.component;t(e,1,0,n.serviceType,n.serviceId)}))}function Ph(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-performance-counter",[],null,null,null,Dh,Lh)),s["ɵdid"](1,49152,null,0,Eh,[Et.a],null,null)],null,null)}var Mh=s["ɵccf"]("cd-performance-counter",Eh,Ph,{},{},[]);class qh{constructor(t){this.mgrModuleService=t}ngOnChanges(){this.selection&&this.mgrModuleService.getConfig(this.selection.name).subscribe(t=>{this.module_config=t})}}var jh=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Fh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-table-key-value",[],null,null,null,Ai.b,Ai.a)),s["ɵdid"](5,638976,null,0,ki.a,[He.a],{data:[0,"data"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Details"),t(e,5,0,n.module_config)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby)}))}function Vh(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Fh)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.selection)}),null)}let Gh=(()=>{class t extends Ns.a{constructor(t,e,n,a){super(),this.authStorageService=t,this.mgrModuleService=e,this.notificationService=n,this.i18n=a,this.columns=[],this.modules=[],this.selection=new li.a,this.permission=this.authStorageService.getPermissions().configOpt,this.columns=[{name:this.i18n("Name"),prop:"name",flexGrow:1},{name:this.i18n("Enabled"),prop:"enabled",flexGrow:1,cellClass:"text-center",cellTransformation:oi.a.checkIcon},{name:this.i18n("Always-On"),prop:"always_on",flexGrow:1,cellClass:"text-center",cellTransformation:oi.a.checkIcon}];const r=()=>this.selection.first()&&encodeURIComponent(this.selection.first().name);this.tableActions=[{name:this.i18n("Edit"),permission:"update",disable:()=>!this.selection.hasSelection||0===Object.values(this.selection.first().options).length,routerLink:()=>"/mgr-modules/edit/"+r(),icon:pt.a.edit},{name:this.i18n("Enable"),permission:"update",click:()=>this.updateModuleState(),disable:()=>this.isTableActionDisabled("enabled"),icon:pt.a.start},{name:this.i18n("Disable"),permission:"update",click:()=>this.updateModuleState(),disable:()=>this.getTableActionDisabledDesc(),icon:pt.a.stop}]}getModuleList(t){this.mgrModuleService.list().subscribe(t=>{this.modules=t},()=>{t.error()})}updateSelection(t){this.selection=t}isTableActionDisabled(t){if(!this.selection.hasSelection)return!0;const e=this.selection.first();if("dashboard"===e.name)return!0;if(e.always_on)return!0;switch(t){case"enabled":return e.enabled;case"disabled":return!e.enabled}}getTableActionDisabledDesc(){return this.selection&&this.selection.first().always_on?this.i18n("This Manager module is always on."):this.isTableActionDisabled("disabled")}updateModuleState(){if(!this.selection.hasSelection)return;let t;const e=()=>{Object(hi.a)(2e3).subscribe(()=>{this.mgrModuleService.list().subscribe(()=>{this.notificationService.suspendToasties(!1),this.blockUI.stop(),this.table.refreshBtn()},()=>{e()})})},n=this.selection.first();t=n.enabled?this.mgrModuleService.disable(n.name):this.mgrModuleService.enable(n.name),t.subscribe(()=>{},()=>{this.notificationService.suspendToasties(!0),this.blockUI.start(this.i18n("Reconnecting, please wait ...")),e()})}}return nc.__decorate([E(),nc.__metadata("design:type",Object)],t.prototype,"blockUI",void 0),t})();var Bh=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function zh(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{table:0}),(t()(),s["ɵeld"](1,0,null,null,5,"cd-table",[["columnMode","flex"],["identifier","module"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"],[null,"fetchData"]],(function(t,e,n){var a=!0,r=t.component;return"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),"fetchData"===e&&(a=!1!==r.getModuleList(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](2,2867200,[[1,4],["table",4]],0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],autoReload:[4,"autoReload"],identifier:[5,"identifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](3,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](4,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](5,0,null,3,1,"cd-mgr-module-details",[["cdTableDetail",""]],null,null,null,Vh,jh)),s["ɵdid"](6,573440,null,0,qh,[oe],{selection:[0,"selection"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.modules,n.columns,"flex",!0,!1,"module","single"),t(e,4,0,n.permission,n.selection,n.tableActions),t(e,6,0,n.expandedRow)}),null)}function Yh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-mgr-module-list",[],null,null,null,zh,Bh)),s["ɵdid"](1,49152,null,0,Gh,[J.a,oe,bt.a,fe.a],null,null)],null,null)}var Hh=s["ɵccf"]("cd-mgr-module-list",Gh,Yh,{},{},[]);class Uh{constructor(t,e,n,a,r,i){this.route=t,this.router=e,this.formBuilder=n,this.mgrModuleService=a,this.notificationService=r,this.i18n=i,this.error=!1,this.loading=!1,this.moduleName="",this.moduleOptions=[]}ngOnInit(){this.route.params.subscribe(t=>{this.moduleName=decodeURIComponent(t.name),this.loading=!0;const e=[this.mgrModuleService.getOptions(this.moduleName),this.mgrModuleService.getConfig(this.moduleName)];Object(ml.a)(e).subscribe(t=>{this.loading=!1,this.moduleOptions=t[0],this.createForm(),this.mgrModuleForm.setValue(t[1])},t=>{this.error=!0})})}getValidators(t){const e=[];switch(t.type){case"addr":e.push(eu.a.ip());break;case"uint":case"int":case"size":case"secs":e.push(eu.a.number()),e.push(K.B.required),X.isNumber(t.min)&&e.push(K.B.min(t.min)),X.isNumber(t.max)&&e.push(K.B.max(t.max));break;case"str":X.isNumber(t.min)&&e.push(K.B.minLength(t.min)),X.isNumber(t.max)&&e.push(K.B.maxLength(t.max));break;case"float":e.push(K.B.required),e.push(eu.a.decimalNumber());break;case"uuid":e.push(eu.a.uuid())}return e}createForm(){const t={};X.forEach(this.moduleOptions,e=>{t[e.name]=[e.default_value,this.getValidators(e)]}),this.mgrModuleForm=this.formBuilder.group(t)}goToListView(){this.router.navigate(["/mgr-modules"])}onSubmit(){if(this.mgrModuleForm.pristine)return void this.goToListView();const t={};X.forEach(this.moduleOptions,e=>{const n=this.mgrModuleForm.get(e.name);n.dirty&&n.valid&&(t[e.name]=n.value)}),this.mgrModuleService.updateConfig(this.moduleName,t).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Updated options for module "{{name}}".',{name:this.moduleName})),this.goToListView()},()=>{this.mgrModuleForm.setErrors({cdSubmitButton:!0})})}}var Wh=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Kh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-loading-panel",[],null,null,null,Ei.b,Ei.a)),s["ɵdid"](1,49152,null,0,Li.a,[],null,null),(t()(),s["ɵted"](-1,0,["Loading configuration..."]))],null,null)}function $h(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-alert-panel",[["type","error"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](-1,0,["The configuration could not be loaded."]))],(function(t,e){t(e,1,0,"error")}),null)}function Zh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](1,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](2,0,[" "," "])),s["ɵppd"](3,1)],null,(function(t,e){var n=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent.parent.parent,0),e.parent.context.$implicit.value.long_desc||e.parent.context.$implicit.value.desc));t(e,2,0,n)}))}function Jh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","col-sm-7"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,3).onTouched()&&a),a}),null,null)),s["ɵdid"](3,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](5,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](7,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](10,0,null,null,0,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null))],(function(t,e){t(e,5,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,9,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""))}),(function(t,e){t(e,2,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""),s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending,s["ɵnov"](e,9).validClass,s["ɵnov"](e,9).invalidClass),t(e,10,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""))}))}function Qh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["type","text"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,1)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,1)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,1)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](3,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](5,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](6,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](7,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,3,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,"")),t(e,7,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,""))}),(function(t,e){t(e,0,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,""),s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending,s["ɵnov"](e,7).validClass,s["ɵnov"](e,7).invalidClass)}))}function Xh(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function tg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"select",[["class","form-control custom-select"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,1).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).onTouched()&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](3,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](5,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](6,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](7,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Xh)),s["ɵdid"](9,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,3,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,"")),t(e,7,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,"")),t(e,9,0,e.parent.parent.context.$implicit.value.enum_allowed)}),(function(t,e){t(e,0,0,s["ɵinlineInterpolate"](1,"",e.parent.parent.context.$implicit.value.name,""),s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending,s["ɵnov"](e,7).validClass,s["ɵnov"](e,7).invalidClass)}))}function eg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value is not a valid UUID, e.g.: 67dcac9f-2c03-4d6c-b7bd-1210b3a259a8"]))],null,null)}function ng(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a valid IP address."]))],null,null)}function ag(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"div",[["class","col-sm-7"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Qh)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tg)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,eg)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ng)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,0===e.parent.context.$implicit.value.enum_allowed.length),t(e,4,0,e.parent.context.$implicit.value.enum_allowed.length>0),t(e,6,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"invalidUuid")),t(e,8,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"pattern"))}),null)}function rg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function ig(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too high! It must be lower or equal to ","."]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.max)}))}function sg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too low! It must be greater or equal to ","."]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.value.min)}))}function ug(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number."]))],null,null)}function og(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","col-sm-7"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,8,"input",[["class","form-control"],["type","number"]],[[8,"id",0],[8,"min",0],[8,"max",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,2)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,2).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,2)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,2)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,3).onTouched()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](3,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](5,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](7,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rg)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ig)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,sg)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ug)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,5,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,9,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,11,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"required")),t(e,13,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"max")),t(e,15,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"min")),t(e,17,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"pattern"))}),(function(t,e){t(e,1,1,[s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""),s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.min,""),s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.max,""),s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending,s["ɵnov"](e,9).validClass,s["ɵnov"](e,9).invalidClass])}))}function lg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function dg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The entered value needs to be a number or decimal."]))],null,null)}function cg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,13,"div",[["class","col-sm-7"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,8,"input",[["class","form-control"],["type","number"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,2)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,2).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,2)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,2)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,3).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,3).onTouched()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](3,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](5,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](7,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](8,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](9,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,lg)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,dg)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,5,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,9,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,"")),t(e,11,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"required")),t(e,13,0,n.mgrModuleForm.showError(e.parent.context.$implicit.value.name,s["ɵnov"](e.parent.parent,3),"pattern"))}),(function(t,e){t(e,1,0,s["ɵinlineInterpolate"](1,"",e.parent.context.$implicit.value.name,""),s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending,s["ɵnov"](e,9).validClass,s["ɵnov"](e,9).invalidClass)}))}function fg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,3,"label",[["class","col-form-label col-sm-5"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](5,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,Zh)),s["ɵdid"](7,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Jh)),s["ɵdid"](9,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,2,null,ag)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpad"](12,3),(t()(),s["ɵand"](16777216,null,0,2,null,og)),s["ɵdid"](14,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),s["ɵpad"](15,4),(t()(),s["ɵand"](16777216,null,0,1,null,cg)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0),t(e,7,0,e.context.$implicit.value.long_desc||e.context.$implicit.value.desc),t(e,9,0,"bool"===e.context.$implicit.value.type);var n=t(e,12,0,"addr","str","uuid").includes(e.context.$implicit.value.type);t(e,11,0,n);var a=t(e,15,0,"uint","int","size","secs").includes(e.context.$implicit.value.type);t(e,14,0,a),t(e,17,0,"float"===e.context.$implicit.value.type)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,s["ɵinlineInterpolate"](1,"",e.context.$implicit.value.name,"")),t(e,5,0,e.context.$implicit.value.name)}))}function hg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,21,"form",[["name","mgrModuleForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](6,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](7,0,null,null,15,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Edit Manager module"])),(t()(),s["ɵeld"](10,0,null,null,3,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,fg)),s["ɵdid"](12,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers]),(t()(),s["ɵeld"](14,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](16,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),$s.b,$s.a)),s["ɵdid"](17,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵeld"](18,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Update"])),(t()(),s["ɵeld"](20,0,null,null,2,"button",[["class","btn btn-light"],["routerLink","/mgr-modules"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,21).onClick()&&a),a}),null,null)),s["ɵdid"](21,16384,null,0,Et.n,[Et.m,Et.a,[8,null],s.Renderer2,s.ElementRef],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵted"](-1,null,["Back"]))],(function(t,e){var n=e.component;t(e,3,0,n.mgrModuleForm),t(e,6,0,n.mgrModuleForm),t(e,12,0,s["ɵunv"](e,12,0,s["ɵnov"](e,13).transform(n.moduleOptions))),t(e,17,0,n.mgrModuleForm),t(e,21,0,"/mgr-modules")}),(function(t,e){t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending)}))}function gg(t){return s["ɵvid"](0,[s["ɵpid"](0,Xs.a,[]),(t()(),s["ɵand"](16777216,null,null,1,null,Kh)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$h)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,hg)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.loading&&!n.error),t(e,4,0,n.loading&&n.error),t(e,6,0,!n.loading&&!n.error)}),null)}function pg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-mgr-module-form",[],null,null,null,gg,Wh)),s["ɵdid"](1,114688,null,0,Uh,[Et.a,Et.m,no.a,oe,bt.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var bg=s["ɵccf"]("cd-mgr-module-form",Uh,pg,{},{},[]),mg=n("xTzq");let yg=(()=>{let t=class{constructor(t){this.http=t,this.baseURL="api/cephfs",this.baseUiURL="ui-api/cephfs"}list(){return this.http.get(""+this.baseURL)}lsDir(t,e){let n=`${this.baseUiURL}/${t}/ls_dir?depth=2`;return e&&(n+="&path="+encodeURIComponent(e)),this.http.get(n)}getCephfs(t){return this.http.get(`${this.baseURL}/${t}`)}getTabs(t){return this.http.get(`ui-api/cephfs/${t}/tabs`)}getClients(t){return this.http.get(`${this.baseURL}/${t}/clients`)}evictClient(t,e){return this.http.delete(`${this.baseURL}/${t}/client/${e}`)}getMdsCounters(t){return this.http.get(`${this.baseURL}/${t}/mds_counters`)}mkSnapshot(t,e,n){let a=new et.h;return a=a.append("path",e),X.isUndefined(n)||(a=a.append("name",n)),this.http.post(`${this.baseURL}/${t}/mk_snapshot`,null,{params:a})}rmSnapshot(t,e,n){let a=new et.h;return a=a.append("path",e),a=a.append("name",n),this.http.post(`${this.baseURL}/${t}/rm_snapshot`,null,{params:a})}updateQuota(t,e,n){let a=new et.h;return a=a.append("path",e),this.http.post(`${this.baseURL}/${t}/set_quotas`,n,{observe:"response",params:a})}};return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t=nc.__decorate([mg.a,nc.__metadata("design:paramtypes",[et.c])],t),t})();class vg{constructor(t,e,n,a,r,i,s,u){this.authStorageService=t,this.modalService=e,this.cephfsService=n,this.cdDatePipe=a,this.i18n=r,this.actionLabels=i,this.notificationService=s,this.dimlessBinaryPipe=u,this.icons=pt.a,this.loadingIndicator=!1,this.loading={},this.treeOptions={useVirtualScroll:!0,getChildren:t=>this.updateDirectory(t.id),actionMapping:{mouse:{click:this.selectAndShowNode.bind(this),expanderClick:this.selectAndShowNode.bind(this)}}}}selectAndShowNode(t,e,n){ac.a.TOGGLE_EXPANDED(t,e,n),this.selectNode(e)}selectNode(t){ac.a.TOGGLE_ACTIVE(void 0,t,void 0),this.selectedDir=this.getDirectory(t),"/"!==t.id&&this.setSettings(t)}ngOnInit(){this.permission=this.authStorageService.getPermissions().cephfs,this.setUpQuotaTable(),this.setUpSnapshotTable()}setUpQuotaTable(){this.quota={columns:[{prop:"row.name",name:this.i18n("Name"),flexGrow:1},{prop:"row.value",name:this.i18n("Value"),sortable:!1,flexGrow:1},{prop:"row.originPath",name:this.i18n("Origin"),sortable:!1,cellTemplate:this.originTmpl,flexGrow:1}],selection:new li.a,updateSelection:t=>{this.quota.selection=t},tableActions:[{name:this.actionLabels.SET,icon:pt.a.edit,permission:"update",visible:t=>!t.hasSelection||t.first()&&0===t.first().dirValue,click:()=>this.updateQuotaModal()},{name:this.actionLabels.UPDATE,icon:pt.a.edit,permission:"update",visible:t=>t.first()&&t.first().dirValue>0,click:()=>this.updateQuotaModal()},{name:this.actionLabels.UNSET,icon:pt.a.destroy,permission:"update",disable:t=>!t.hasSelection||t.first()&&0===t.first().dirValue,click:()=>this.unsetQuotaModal()}]}}setUpSnapshotTable(){this.snapshot={columns:[{prop:"name",name:this.i18n("Name"),flexGrow:1},{prop:"path",name:this.i18n("Path"),isHidden:!0,flexGrow:2},{prop:"created",name:this.i18n("Created"),flexGrow:1,pipe:this.cdDatePipe}],selection:new li.a,updateSelection:t=>{this.snapshot.selection=t},tableActions:[{name:this.actionLabels.CREATE,icon:pt.a.add,permission:"create",canBePrimary:t=>!t.hasSelection,click:()=>this.createSnapshot()},{name:this.actionLabels.DELETE,icon:pt.a.destroy,permission:"delete",click:()=>this.deleteSnapshotModal(),canBePrimary:t=>t.hasSelection,disable:t=>!t.hasSelection}]}}ngOnChanges(){this.selectedDir=void 0,this.dirs=[],this.requestedPaths=[],this.nodeIds={},this.id&&(this.setRootNode(),this.firstCall())}setRootNode(){this.nodes=[{name:"/",id:"/",isExpanded:!0}]}firstCall(){setTimeout(()=>{this.getNode("/").loadNodeChildren()},10)}updateDirectory(t){if(this.unsetLoadingIndicator(),this.requestedPaths.includes(t)){if(!0===this.loading[t])return}else this.requestedPaths.push(t);return new Promise(e=>{this.setLoadingIndicator(t,!0),this.cephfsService.lsDir(this.id,t).subscribe(n=>{this.updateTreeStructure(n),this.updateQuotaTable(),this.updateTree(),e(this.getChildren(t)),this.setLoadingIndicator(t,!1)})})}setLoadingIndicator(t,e){this.loading[t]=e,this.unsetLoadingIndicator()}getSubDirectories(t,e=this.dirs){return e.filter(e=>e.parent===t)}getChildren(t){const e=this.getSubTree(t);return X.sortBy(this.getSubDirectories(t),"path").map(t=>this.createNode(t,e))}createNode(t,e){return this.nodeIds[t.path]=t,e||this.getSubTree(t.parent),{name:t.name,id:t.path,hasChildren:this.getSubDirectories(t.path,e).length>0}}getSubTree(t){return this.dirs.filter(e=>e.parent&&e.parent.startsWith(t))}setSettings(t){const e=(t,e)=>t?e?e(t):t:"";this.settings=[this.getQuota(t,"max_files",e),this.getQuota(t,"max_bytes",t=>e(t,t=>this.dimlessBinaryPipe.transform(t)))]}getQuota(t,e,n){const a=t.id;t=this.getOrigin(t,e);const r=this.getDirectory(t),i=r.quotas[e];let s=i,u=r.path;if(t.id===a)if("/"===t.parent.id)s=0;else{const n=this.getDirectory(this.getOrigin(t.parent,e));s=n.quotas[e],u=n.path}return{row:{name:this.i18n("max_bytes"===e?"Max size":"Max files"),value:n(i),originPath:i?r.path:""},quotaKey:e,dirValue:this.nodeIds[a].quotas[e],nextTreeMaximum:{value:s,path:s?u:""}}}getOrigin(t,e){if(t.parent&&"/"!==t.parent.id){const n=this.getQuotaFromTree(t,e),a=this.getOrigin(t.parent,e),r=this.getQuotaFromTree(a,e);return 0===n||0!==r&&r<n?a:t}return t}getQuotaFromTree(t,e){return this.getDirectory(t).quotas[e]}getDirectory(t){return this.nodeIds[t.id]}selectOrigin(t){this.selectNode(this.getNode(t))}getNode(t){return this.treeComponent.treeModel.getNodeById(t)}updateQuotaModal(){const t=this.selectedDir.path,e=this.quota.selection.first(),n=e.nextTreeMaximum,a=e.quotaKey,r=e.dirValue;this.modalService.show(ui.a,{initialState:{titleText:this.getModalQuotaTitle(0===r?this.actionLabels.SET:this.actionLabels.UPDATE,t),message:n.value?this.i18n("The inherited {{quotaValue}} is the maximum value to be used.",{quotaValue:this.getQuotaValueFromPathMsg(n.value,n.path)}):void 0,fields:[this.getQuotaFormField(e.row.name,a,r,n.value)],submitButtonText:this.i18n("Save"),onSubmit:t=>this.updateQuota(t)}})}getModalQuotaTitle(t,e){return this.i18n("{{action}} CephFS {{quotaName}} quota for '{{path}}'",{action:t,quotaName:this.getQuotaName(),path:e})}getQuotaName(){return this.isBytesQuotaSelected()?this.i18n("size"):this.i18n("files")}isBytesQuotaSelected(){return"max_bytes"===this.quota.selection.first().quotaKey}getQuotaValueFromPathMsg(t,e){return this.i18n("{{quotaName}} quota {{value}} from '{{path}}'",{value:this.isBytesQuotaSelected()?this.dimlessBinaryPipe.transform(t):t,quotaName:this.getQuotaName(),path:e})}getQuotaFormField(t,e,n,a){const r="max_bytes"===e,i=[r?eu.a.binaryMin(0):K.B.min(0)];a&&i.push(r?eu.a.binaryMax(a):K.B.max(a));const s={type:r?"binary":"number",label:t,name:e,value:n,validators:i,required:!0};return r||(s.errors={min:this.i18n("Value has to be at least {{value}} or more",{value:0}),max:this.i18n("Value has to be at most {{value}} or less",{value:a})}),s}updateQuota(t,e){const n=this.selectedDir.path,a=this.quota.selection.first().quotaKey,r=0===this.selectedDir.quotas[a]?this.actionLabels.SET:0===t[a]?this.actionLabels.UNSET:this.i18n("Updated");this.cephfsService.updateQuota(this.id,n,t).subscribe(()=>{e&&e(),this.notificationService.show(le.a.success,this.getModalQuotaTitle(r,n)),this.forceDirRefresh()})}unsetQuotaModal(){const t=this.selectedDir.path,e=this.quota.selection.first(),n=e.quotaKey,a=e.nextTreeMaximum,r=e.dirValue;this.modalRef=this.modalService.show(yl.a,{initialState:{titleText:this.getModalQuotaTitle(this.actionLabels.UNSET,t),buttonText:this.actionLabels.UNSET,description:this.i18n("{{action}} {{quotaValue}} {{conclusion}}.",{action:this.actionLabels.UNSET,quotaValue:this.getQuotaValueFromPathMsg(r,t),conclusion:a.value>0?this.i18n(a.value>r?"in order to inherit {{quotaValue}}":"which isn't used because of the inheritance of {{quotaValue}}",{quotaValue:this.getQuotaValueFromPathMsg(a.value,a.path)}):this.i18n("in order to have no quota on the directory")}),onSubmit:()=>this.updateQuota({[n]:0},()=>this.modalRef.hide())}})}createSnapshot(){const t=this.selectedDir.path;this.modalService.show(ui.a,{initialState:{titleText:this.i18n("Create Snapshot"),message:this.i18n("Please enter the name of the snapshot."),fields:[{type:"text",name:"name",value:""+ze().toISOString(!0),required:!0}],submitButtonText:this.i18n("Create Snapshot"),onSubmit:e=>{this.cephfsService.mkSnapshot(this.id,t,e.name).subscribe(e=>{this.notificationService.show(le.a.success,this.i18n('Created snapshot "{{name}}" for "{{path}}"',{name:e,path:t})),this.forceDirRefresh()})}}})}forceDirRefresh(t){if(!t){const e=this.selectedDir;if(!e)throw new Error("This function can only be called without path if an selection was made");t=e.parent?e.parent:e.path}this.getNode(t).loadNodeChildren()}updateTreeStructure(t){const e=(t,e)=>{const n=t.filter(t=>t.parent===e),a=n.map(t=>t.path);return{children:n,paths:a}};X.uniq(t.map(t=>t.parent).sort()).forEach(n=>{const a=e(t,n),r=e(this.dirs,n);r.children.forEach(t=>{a.paths.includes(t.path)||this.removeOldDirectory(t)}),a.children.forEach(t=>{r.paths.includes(t.path)?this.updateExistingDirectory(r.children,t):this.addNewDirectory(t)})})}removeOldDirectory(t){const e=t.path;X.remove(this.dirs,t=>t.path===e),delete this.nodeIds[e],this.updateDirectoriesParentNode(t)}updateDirectoriesParentNode(t){const e=t.parent;if(!e)return;const n=this.getNode(e);if(!n)return;const a=this.getChildren(e);n.data.children=a,n.data.hasChildren=a.length>0,this.treeComponent.treeModel.update()}addNewDirectory(t){this.dirs.push(t),this.nodeIds[t.path]=t,this.updateDirectoriesParentNode(t)}updateExistingDirectory(t,e){const n=t.find(t=>t.path===e.path);Object.assign(n,e)}updateQuotaTable(){const t=this.selectedDir?this.getNode(this.selectedDir.path):void 0;t&&"/"!==t.id&&this.setSettings(t)}updateTree(t=!1){this.loadingIndicator&&!t||(this.treeComponent.treeModel.update(),this.nodes=[...this.nodes],this.treeComponent.sizeChanged())}deleteSnapshotModal(){this.modalRef=this.modalService.show(Cs.a,{initialState:{itemDescription:this.i18n("CephFs Snapshot"),itemNames:this.snapshot.selection.selected.map(t=>t.name),submitAction:()=>this.deleteSnapshot()}})}deleteSnapshot(){const t=this.selectedDir.path;this.snapshot.selection.selected.forEach(e=>{const n=e.name;this.cephfsService.rmSnapshot(this.id,t,n).subscribe(()=>{this.notificationService.show(le.a.success,this.i18n('Deleted snapshot "{{name}}" for "{{path}}"',{name:n,path:t}))})}),this.modalRef.hide(),this.forceDirRefresh()}refreshAllDirectories(){this.loadingIndicator=!0,this.requestedPaths.map(t=>this.forceDirRefresh(t));const t=setInterval(()=>{this.updateTree(!0),this.loadingIndicator||clearInterval(t)},3e3)}unsetLoadingIndicator(){this.loadingIndicator&&(clearTimeout(this.loadingTimeout),this.loadingTimeout=setTimeout(()=>{if(Object.values(this.loading).some(t=>t))return this.unsetLoadingIndicator();this.loadingIndicator=!1,this.updateTree()},3e3))}}var xg=s["ɵcrt"]({encapsulation:0,styles:[["tree-root .tree-children{overflow:inherit}.quota-origin[_ngcontent-%COMP%]{cursor:pointer;color:#2b99a8}.quota-origin[_ngcontent-%COMP%]:hover{color:#212121}"]],data:{}});function _g(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](2,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](3,2)],(function(t,e){var n=e.component,a=t(e,3,0,n.icons.spinner,n.icons.spin);t(e,2,0,a)}),null)}function Tg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"tree-root",[],null,[["body","keydown"],["body","mousedown"]],(function(t,e,n){var a=!0;return"body:keydown"===e&&(a=!1!==s["ɵnov"](t,2).onKeydown(n)&&a),"body:mousedown"===e&&(a=!1!==s["ɵnov"](t,2).onMousedown(n)&&a),a}),Qd.b,Qd.a)),s["ɵprd"](131584,null,Xd.a,Xd.a,[]),s["ɵdid"](2,573440,[[1,4]],4,tc.a,[Xd.a,ec.a],{nodes:[0,"nodes"],options:[1,"options"]},null),s["ɵqud"](603979776,3,{loadingTemplate:0}),s["ɵqud"](603979776,4,{treeNodeTemplate:0}),s["ɵqud"](603979776,5,{treeNodeWrapperTemplate:0}),s["ɵqud"](603979776,6,{treeNodeFullTemplate:0}),(t()(),s["ɵand"](0,[[3,2],["loadingTemplate",2]],null,0,null,_g))],(function(t,e){var n=e.component;t(e,2,0,n.nodes,n.treeOptions)}),null)}function wg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Quotas"])),(t()(),s["ɵeld"](3,0,null,null,3,"cd-table",[["identifier","quotaKey"],["selectionType","single"]],null,[[null,"updateSelection"]],(function(t,e,n){var a=!0;return"updateSelection"===e&&(a=!1!==t.component.quota.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](4,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],onlyActionHeader:[2,"onlyActionHeader"],toolHeader:[3,"toolHeader"],footer:[4,"footer"],limit:[5,"limit"],identifier:[6,"identifier"],forceIdentifier:[7,"forceIdentifier"],selectionType:[8,"selectionType"]},{updateSelection:"updateSelection"}),(t()(),s["ɵeld"](5,0,null,0,1,"cd-table-actions",[["class","only-table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](6,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(t,e){var n=e.component;t(e,4,0,n.settings,n.quota.columns,!0,!1,!1,0,"quotaKey",!0,"single"),t(e,6,0,n.permission,n.quota.selection,n.quota.tableActions)}),null)}function Og(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,12,"div",[["class","col-sm-8 metadata"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,11,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](3,null,[" "," "])),(t()(),s["ɵeld"](4,0,null,null,8,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,wg)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](7,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Snapshots"])),(t()(),s["ɵeld"](9,0,null,null,3,"cd-table",[["forceIdentifier","true"],["identifier","name"],["selectionType","multiClick"]],null,[[null,"updateSelection"]],(function(t,e,n){var a=!0;return"updateSelection"===e&&(a=!1!==t.component.snapshot.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](10,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],identifier:[2,"identifier"],forceIdentifier:[3,"forceIdentifier"],selectionType:[4,"selectionType"]},{updateSelection:"updateSelection"}),(t()(),s["ɵeld"](11,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](12,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(t,e){var n=e.component;t(e,6,0,"/"!==n.selectedDir.path),t(e,10,0,n.selectedDir.snapshots,n.snapshot.columns,"name","true","multiClick"),t(e,12,0,n.permission,n.snapshot.selection,n.snapshot.tableActions)}),(function(t,e){t(e,3,0,e.component.selectedDir.path)}))}function Sg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","quota-origin"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.selectOrigin(t.context.value)&&a),a}),null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.context.value)}))}function Ig(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{treeComponent:0}),s["ɵqud"](402653184,2,{originTmpl:0}),(t()(),s["ɵeld"](2,0,null,null,13,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,10,"div",[["class","col-sm-4 pr-0"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,9,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,5,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,4,"button",[["class","btn btn-light pull-right"],["type","button"]],[[2,"disabled",null]],[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.refreshAllDirectories()&&a),a}),null,null)),(t()(),s["ɵeld"](7,0,null,null,3,"i",[],[[2,"fa-spin",null]],null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](9,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](10,2),(t()(),s["ɵeld"](11,0,null,null,2,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Tg)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Og)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,[[2,2],["origin",2]],null,0,null,Sg))],(function(t,e){var n=e.component,a=t(e,10,0,n.icons.large,n.icons.refresh);t(e,9,0,a),t(e,13,0,n.nodes),t(e,15,0,n.selectedDir)}),(function(t,e){var n=e.component;t(e,6,0,n.loadingIndicator),t(e,7,0,n.loadingIndicator)}))}class Ng{constructor(){this.lhsCounter="mds_mem.ino",this.rhsCounter="mds_server.handle_client_request",this.chart={datasets:[{label:this.lhsCounter,yAxisID:"LHS",data:[],lineTension:.1},{label:this.rhsCounter,yAxisID:"RHS",data:[],lineTension:.1}],options:{title:{text:"",display:!0},responsive:!0,maintainAspectRatio:!1,legend:{position:"top"},scales:{xAxes:[{position:"top",type:"time",time:{displayFormats:{quarter:"MMM YYYY"}},ticks:{maxRotation:0}}],yAxes:[{id:"LHS",type:"linear",position:"left"},{id:"RHS",type:"linear",position:"right"}]},tooltips:{enabled:!1,mode:"index",intersect:!1,position:"nearest",callbacks:{title:(t,e)=>{let n=0;if(t.length>0){const a=t[0];n=e.datasets[a.datasetIndex].data[a.index].x}return n.toString()}}}},chartType:"line"}}ngOnInit(){X.isUndefined(this.mdsCounter)||(this.setChartTooltip(),this.updateChart())}ngOnChanges(){X.isUndefined(this.mdsCounter)||this.updateChart()}setChartTooltip(){const t=new ja.a(this.chartCanvas,this.chartTooltip,t=>t.caretX+"px",t=>t.caretY-t.height-23+"px");t.getTitle=t=>ze(t,"x").format("LTS"),t.checkOffset=!0,X.merge(this.chart,{options:{title:{text:this.mdsCounter.name},tooltips:{custom:e=>t.customTooltips(e)}}})}updateChart(){const t=[{data:this.convertTimeSeries(this.mdsCounter[this.lhsCounter])},{data:this.deltaTimeSeries(this.mdsCounter[this.rhsCounter])}];X.merge(this.chart,{datasets:t}),this.chart.datasets=[...this.chart.datasets]}convertTimeSeries(t){const e=[];return X.each(t,t=>{e.push({x:1e3*t[0],y:t[1]})}),e.shift(),e}deltaTimeSeries(t){let e,n=t[0];const a=[];for(e=1;e<t.length;e++){const r=t[e];a.push({x:1e3*r[0],y:r[1]-n[1]}),n=r}return a}}var Cg=s["ɵcrt"]({encapsulation:0,styles:[['canvas[_ngcontent-%COMP%]{-moz-user-select:none;user-select:none}.chartjs-tooltip[_ngcontent-%COMP%]{opacity:0;position:absolute;background:rgba(0,0,0,.7);color:#fff;border-radius:3px;transition:all .1s ease;pointer-events:none;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif!important;transform:translate(-50%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]{transform:translate(-10%,0)}.chartjs-tooltip.transform-left[_ngcontent-%COMP%]::after{left:10%}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]{transform:translate(-90%,0)}.chartjs-tooltip.transform-right[_ngcontent-%COMP%]::after{left:90%}.chartjs-tooltip[_ngcontent-%COMP%]::after{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#000 transparent transparent}  .chartjs-tooltip-key{display:inline-block;width:10px;height:10px;margin-right:10px}.chart-container[_ngcontent-%COMP%]{margin:auto auto 20px;cursor:pointer;overflow:visible;position:relative;height:500px;width:100%}']],data:{}});function Rg(t){return s["ɵvid"](0,[s["ɵqud"](402653184,1,{chartCanvas:0}),s["ɵqud"](402653184,2,{chartTooltip:0}),(t()(),s["ɵeld"](2,0,null,null,4,"div",[["class","chart-container"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,[[1,0],["chartCanvas",1]],null,1,"canvas",[["baseChart",""]],null,null,null,null,null)),s["ɵdid"](4,999424,null,0,Ma.a,[s.ElementRef,Ma.c],{datasets:[0,"datasets"],options:[1,"options"],chartType:[2,"chartType"]},null),(t()(),s["ɵeld"](5,0,[[2,0],["chartTooltip",1]],null,1,"div",[["class","chartjs-tooltip"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,0,"table",[],null,null,null,null,null))],(function(t,e){var n=e.component;t(e,4,0,n.chart.datasets,n.chart.options,n.chart.chartType)}),null)}class Ag{constructor(t,e,n){this.dimlessBinary=t,this.dimless=e,this.i18n=n,this.standbys=[],this.objectValues=Object.values}ngOnChanges(){this.setStandbys()}setStandbys(){this.standbys=[{key:this.i18n("Standby daemons"),value:this.data.standbys}]}ngOnInit(){this.columns={ranks:[{prop:"rank",name:this.i18n("Rank")},{prop:"state",name:this.i18n("State")},{prop:"mds",name:this.i18n("Daemon")},{prop:"activity",name:this.i18n("Activity"),cellTemplate:this.activityTmpl},{prop:"dns",name:this.i18n("Dentries"),pipe:this.dimless},{prop:"inos",name:this.i18n("Inodes"),pipe:this.dimless}],pools:[{prop:"pool",name:this.i18n("Pool")},{prop:"type",name:this.i18n("Type")},{prop:"size",name:this.i18n("Size"),pipe:this.dimlessBinary},{name:this.i18n("Usage"),cellTemplate:this.poolUsageTpl,comparator:(t,e,n,a)=>{const r=n.used/n.avail,i=a.used/a.avail;return r===i?0:r>i?1:-1}}]}}trackByFn(t,e){return e.name}}var kg=s["ɵcrt"]({encapsulation:0,styles:[[".progress[_ngcontent-%COMP%]{margin-bottom:0}"]],data:{}});function Eg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"div",[["class","col-md-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"cd-cephfs-chart",[],null,null,null,Rg,Cg)),s["ɵdid"](3,638976,null,0,Ng,[],{mdsCounter:[0,"mdsCounter"]},null)],(function(t,e){t(e,3,0,e.context.$implicit)}),null)}function Lg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-usage-bar",[],null,null,null,Ko.b,Ko.a)),s["ɵdid"](1,573440,null,0,$o.a,[],{total:[0,"total"],used:[1,"used"]},null)],(function(t,e){t(e,1,0,e.context.row.size,e.context.row.used)}),null)}function Dg(t){return s["ɵvid"](0,[(t()(),s["ɵted"](0,null,[" ",": "," /s\n"])),s["ɵppd"](1,1)],null,(function(t,e){var n="standby-replay"===e.context.row.state?"Evts":"Reqs",a=s["ɵunv"](e,0,1,t(e,1,0,s["ɵnov"](e.parent,0),e.context.value));t(e,0,0,n,a)}))}function Pg(t){return s["ɵvid"](0,[s["ɵpid"](0,Va.a,[Ka.a]),s["ɵqud"](402653184,1,{poolUsageTpl:0}),s["ɵqud"](402653184,2,{activityTmpl:0}),(t()(),s["ɵeld"](3,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,8,"div",[["class","col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Ranks"])),(t()(),s["ɵeld"](7,0,null,null,1,"cd-table",[],null,null,null,Jr.b,Jr.a)),s["ɵdid"](8,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],toolHeader:[2,"toolHeader"]},null),(t()(),s["ɵeld"](9,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Standbys"])),(t()(),s["ɵeld"](11,0,null,null,1,"cd-table-key-value",[],null,null,null,Ai.b,Ai.a)),s["ɵdid"](12,638976,null,0,ki.a,[He.a],{data:[0,"data"]},null),(t()(),s["ɵeld"](13,0,null,null,4,"div",[["class","col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pools"])),(t()(),s["ɵeld"](16,0,null,null,1,"cd-table",[],null,null,null,Jr.b,Jr.a)),s["ɵdid"](17,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],toolHeader:[2,"toolHeader"]},null),(t()(),s["ɵeld"](18,0,null,null,1,"legend",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["MDS performance counters"])),(t()(),s["ɵand"](16777216,null,null,1,null,Eg)),s["ɵdid"](21,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),s["ɵand"](0,[[1,2],["poolUsageTpl",2]],null,0,null,Lg)),(t()(),s["ɵand"](0,[[2,2],["activityTmpl",2]],null,0,null,Dg))],(function(t,e){var n=e.component;t(e,8,0,n.data.ranks,n.columns.ranks,!1),t(e,12,0,n.standbys),t(e,17,0,n.data.pools,n.columns.pools,!1),t(e,21,0,n.objectValues(n.data.mdsCounters),n.trackByFn)}),null)}var Mg=n("C6Ij"),qg=n("AWcq");class jg{constructor(t,e,n,a,r,i){this.cephfsService=t,this.modalService=e,this.notificationService=n,this.authStorageService=a,this.i18n=r,this.actionLabels=i,this.triggerApiUpdate=new s.EventEmitter,this.selection=new li.a,this.permission=this.authStorageService.getPermissions().cephfs,this.tableActions=[{permission:"update",icon:pt.a.signOut,click:()=>this.evictClientModal(),name:this.actionLabels.EVICT}]}ngOnInit(){this.columns=[{prop:"id",name:this.i18n("id")},{prop:"type",name:this.i18n("type")},{prop:"state",name:this.i18n("state")},{prop:"version",name:this.i18n("version")},{prop:"hostname",name:this.i18n("Host")},{prop:"root",name:this.i18n("root")}]}updateSelection(t){this.selection=t}evictClient(t){this.cephfsService.evictClient(this.id,t).subscribe(()=>{this.triggerApiUpdate.emit(),this.modalRef.hide(),this.notificationService.show(le.a.success,this.i18n('Evicted client "{{clientId}}"',{clientId:t}))},()=>{this.modalRef.content.stopLoadingSpinner()})}evictClientModal(){const t=this.selection.first().id;this.modalRef=this.modalService.show(Cs.a,{initialState:{itemDescription:"client",itemNames:[t],actionDescription:"evict",submitAction:()=>this.evictClient(t)}})}}var Fg=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Vg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-view-cache",[],null,null,null,Mg.b,Mg.a)),s["ɵdid"](1,114688,null,0,qg.a,[],{status:[0,"status"]},null),(t()(),s["ɵeld"](2,0,null,null,3,"cd-table",[["selectionType","single"]],null,[[null,"updateSelection"]],(function(t,e,n){var a=!0;return"updateSelection"===e&&(a=!1!==t.component.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](3,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],selectionType:[2,"selectionType"]},{updateSelection:"updateSelection"}),(t()(),s["ɵeld"](4,0,null,1,1,"cd-table-actions",[["class","table-actions"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](5,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.clients.status),t(e,3,0,n.clients.data,n.columns,"single"),t(e,5,0,n.permission,n.selection,n.tableActions)}),null)}var Gg=n("yJti");class Bg{constructor(t,e,n){this.ngZone=t,this.authStorageService=e,this.cephfsService=n,this.clients={data:[],status:Gg.a.ValueNone},this.details={standbys:"",pools:[],ranks:[],mdsCounters:{},name:""},this.directoriesSelected=!1,this.grafanaPermission=this.authStorageService.getPermissions().grafana}ngOnChanges(){this.selection?this.selection.id!==this.id&&this.setupSelected(this.selection.id,this.selection.mdsmap.info):this.unsubscribeInterval()}setupSelected(t,e){this.id=t;const n=X.first(Object.values(e));this.grafanaId=n&&n.name,this.details={standbys:"",pools:[],ranks:[],mdsCounters:{},name:""},this.clients={data:[],status:Gg.a.ValueNone},this.updateInterval()}updateInterval(){this.unsubscribeInterval(),this.subscribeInterval()}unsubscribeInterval(){this.reloadSubscriber&&this.reloadSubscriber.unsubscribe()}subscribeInterval(){this.ngZone.runOutsideAngular(()=>this.reloadSubscriber=Object(hi.a)(0,5e3).subscribe(()=>this.ngZone.run(()=>this.refresh())))}refresh(){this.cephfsService.getTabs(this.id).subscribe(t=>{this.data=t,this.softRefresh()},()=>{this.clients.status=Gg.a.ValueException})}softRefresh(){const t=X.cloneDeep(this.data);this.clients=t.clients,this.details={standbys:t.standbys,pools:t.pools,ranks:t.ranks,mdsCounters:t.mds_counters,name:t.name}}ngOnDestroy(){this.unsubscribeInterval()}}var zg=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Yg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clients"])),(t()(),s["ɵeld"](2,0,null,null,1,"span",[["class","badge badge-pill badge-tab ml-1"]],null,null,null,null,null)),(t()(),s["ɵted"](3,null,["",""]))],null,(function(t,e){t(e,3,0,e.component.clients.data.length)}))}function Hg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-cephfs-directories",[],null,null,null,Ig,xg)),s["ɵdid"](1,638976,null,0,vg,[J.a,Ct.b,yg,He.a,fe.a,St.b,bt.a,Fa.a],{id:[0,"id"]},null)],(function(t,e){t(e,1,0,e.component.id)}),null)}function Ug(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"tab",[["heading","Performance Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](1,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](2,0,null,null,1,"cd-grafana",[["grafanaStyle","one"],["uid","tbO9LAiZz"]],null,null,null,$r.b,$r.a)),s["ɵdid"](3,638976,null,0,Zr.a,[ve.b,Xt.a,fe.a],{grafanaPath:[0,"grafanaPath"],grafanaStyle:[1,"grafanaStyle"],uid:[2,"uid"]},null)],(function(t,e){var n=e.component;t(e,1,0,"Performance Details"),t(e,3,0,"mds-performance?var-mds_servers=mds."+n.grafanaId,"one","tbO9LAiZz")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).id,s["ɵnov"](e,1).active,s["ɵnov"](e,1).addClass,s["ɵnov"](e,1).role,s["ɵnov"](e,1).ariaLabelledby)}))}function Wg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.softRefresh()&&a),a}),null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},{selectTab:"selectTab"}),(t()(),s["ɵeld"](4,0,null,null,1,"cd-cephfs-detail",[],null,null,null,Pg,kg)),s["ɵdid"](5,638976,null,0,Ag,[Fa.a,Va.a,fe.a],{data:[0,"data"]},null),(t()(),s["ɵeld"](6,0,null,0,5,"tab",[],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=!1!==t.component.softRefresh()&&a),a}),null,null)),s["ɵdid"](7,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],null,{selectTab:"selectTab"}),(t()(),s["ɵand"](0,null,null,1,null,Yg)),s["ɵdid"](9,16384,null,0,Sa.c,[s.TemplateRef,Sa.b],null,null),(t()(),s["ɵeld"](10,0,null,null,1,"cd-cephfs-clients",[],null,[[null,"triggerApiUpdate"]],(function(t,e,n){var a=!0;return"triggerApiUpdate"===e&&(a=!1!==t.component.refresh()&&a),a}),Vg,Fg)),s["ɵdid"](11,114688,null,0,jg,[yg,Ct.b,bt.a,J.a,fe.a,St.b],{id:[0,"id"],clients:[1,"clients"]},{triggerApiUpdate:"triggerApiUpdate"}),(t()(),s["ɵeld"](12,0,null,0,3,"tab",[["heading","Directories"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],[[null,"selectTab"]],(function(t,e,n){var a=!0;return"selectTab"===e&&(a=0!=(t.component.directoriesSelected=!0)&&a),a}),null,null)),s["ɵdid"](13,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},{selectTab:"selectTab"}),(t()(),s["ɵand"](16777216,null,null,1,null,Hg)),s["ɵdid"](15,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Ug)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Details"),t(e,5,0,n.details),t(e,7,0),t(e,11,0,n.id,n.clients),t(e,13,0,"Directories"),t(e,15,0,n.directoriesSelected),t(e,17,0,n.grafanaPermission.read&&n.grafanaId)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,6,0,s["ɵnov"](e,7).id,s["ɵnov"](e,7).active,s["ɵnov"](e,7).addClass,s["ɵnov"](e,7).role,s["ɵnov"](e,7).ariaLabelledby),t(e,12,0,s["ɵnov"](e,13).id,s["ɵnov"](e,13).active,s["ɵnov"](e,13).addClass,s["ɵnov"](e,13).role,s["ɵnov"](e,13).ariaLabelledby)}))}function Kg(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Wg)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.selection)}),null)}class $g extends Ns.a{constructor(t,e,n){super(),this.cephfsService=t,this.cdDatePipe=e,this.i18n=n,this.filesystems=[],this.selection=new li.a}ngOnInit(){this.columns=[{name:this.i18n("Name"),prop:"mdsmap.fs_name",flexGrow:2},{name:this.i18n("Created"),prop:"mdsmap.created",flexGrow:2,pipe:this.cdDatePipe},{name:this.i18n("Enabled"),prop:"mdsmap.enabled",flexGrow:1,cellTransformation:oi.a.checkIcon}]}loadFilesystems(t){this.cephfsService.list().subscribe(t=>{this.filesystems=t},()=>{t.error()})}updateSelection(t){this.selection=t}}var Zg=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Jg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","id"],["selectionType","single"]],null,[[null,"fetchData"],[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"fetchData"===e&&(a=!1!==r.loadFilesystems(n)&&a),"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](1,2867200,null,0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"]},{fetchData:"fetchData",updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](2,0,null,3,1,"cd-cephfs-tabs",[["cdTableDetail",""]],null,null,null,Kg,zg)),s["ɵdid"](3,704512,null,0,Bg,[s.NgZone,J.a,yg],{selection:[0,"selection"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.filesystems,n.columns,"flex",!0,"id","true","single"),t(e,3,0,n.expandedRow)}),null)}function Qg(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-cephfs-list",[],null,null,null,Jg,Zg)),s["ɵdid"](1,114688,null,0,$g,[yg,He.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Xg=s["ɵccf"]("cd-cephfs-list",$g,Qg,{},{},[]),tp=n("1nQr");class ep{constructor(t,e,n,a,r,i,s,u){this.i18n=t,this.actionLabels=e,this.notificationService=n,this.userService=a,this.authStorageService=r,this.formBuilder=i,this.router=s,this.passwordPolicyService=u,this.passwordPolicyHelpText="",this.icons=pt.a,this.action=this.actionLabels.CHANGE,this.resource=this.i18n("password"),this.createForm()}createForm(){this.passwordPolicyService.getHelpText().subscribe(t=>{this.passwordPolicyHelpText=t}),this.userForm=this.formBuilder.group({oldpassword:[null,[K.B.required,eu.a.custom("notmatch",()=>this.userForm&&this.userForm.getValue("newpassword")===this.userForm.getValue("oldpassword"))]],newpassword:[null,[K.B.required,eu.a.custom("notmatch",()=>this.userForm&&this.userForm.getValue("oldpassword")===this.userForm.getValue("newpassword"))],[eu.a.passwordPolicy(this.userService,()=>this.authStorageService.getUsername(),(t,e,n)=>{this.passwordStrengthLevelClass=this.passwordPolicyService.mapCreditsToCssClass(e),this.passwordValuation=X.defaultTo(n,"")})]],confirmnewpassword:[null,[K.B.required]]},{validators:[eu.a.match("newpassword","confirmnewpassword")]})}onSubmit(){if(this.userForm.pristine)return;const t=this.authStorageService.getUsername(),e=this.userForm.getValue("oldpassword"),n=this.userForm.getValue("newpassword");this.userService.changePassword(t,e,n).subscribe(()=>this.onPasswordChange(),()=>{this.userForm.setErrors({cdSubmitButton:!0})})}onPasswordChange(){this.notificationService.show(le.a.success,this.i18n('Updated user password"')),this.router.navigate(["/login"])}}var np=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ap(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function rp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The old and new passwords must be different."]))],null,null)}function ip(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-helper",[["class","text-pre-wrap"]],null,null,null,Zu.b,Zu.a)),s["ɵdid"](1,49152,null,0,Ju.a,[],{class:[0,"class"],html:[1,"html"]},null)],(function(t,e){t(e,1,0,"text-pre-wrap",s["ɵinlineInterpolate"](1,"",e.component.passwordPolicyHelpText,""))}),null)}function sp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function up(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The old and new passwords must be different."]))],null,null)}function op(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.passwordValuation)}))}function lp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function dp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Password confirmation doesn't match the new password."]))],null,null)}function cp(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Xs.a,[]),(t()(),s["ɵeld"](2,0,null,null,96,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,95,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,5).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,5).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit()&&a),a}),null,null)),s["ɵdid"](4,16384,null,0,K.G,[],null,null),s["ɵdid"](5,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](7,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](8,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](9,0,null,null,89,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](11,null,[""," ",""])),s["ɵppd"](12,1),s["ɵppd"](13,1),(t()(),s["ɵeld"](14,0,null,null,77,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,23,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](16,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](19,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","oldpassword"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Old password"])),(t()(),s["ɵeld"](21,0,null,0,17,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,12,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](23,0,null,null,8,"input",[["autocomplete","new-password"],["autofocus",""],["class","form-control"],["formControlName","oldpassword"],["id","oldpassword"],["placeholder","Old password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,24)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,24).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,24)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,24)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](24,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](26,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](28,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](29,4210688,null,0,Ks.a,[s.ElementRef],{autofocus:[0,"autofocus"]},null),s["ɵdid"](30,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](31,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](32,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](33,0,null,null,1,"button",[["cdPasswordButton","oldpassword"],["class","btn btn-light"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,34).onClick()&&a),a}),null,null)),s["ɵdid"](34,81920,null,0,Qu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ap)),s["ɵdid"](36,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rp)),s["ɵdid"](38,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](39,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](40,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](43,0,null,0,4,"label",[["class","cd-col-form-label"],["for","newpassword"]],null,null,null,null,null)),(t()(),s["ɵeld"](44,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["New password"])),(t()(),s["ɵand"](16777216,null,null,1,null,ip)),s["ɵdid"](47,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](48,0,null,0,20,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](49,0,null,null,11,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](50,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","newpassword"],["id","newpassword"],["placeholder","Password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,51)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,51).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,51)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,51)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](51,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](53,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](55,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](56,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](57,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](58,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](59,0,null,null,1,"button",[["cdPasswordButton","newpassword"],["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,60).onClick()&&a),a}),null,null)),s["ɵdid"](60,81920,null,0,Qu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵeld"](61,0,null,null,1,"div",[["class","password-strength-level"]],null,null,null,null,null)),(t()(),s["ɵeld"](62,0,null,null,0,"div",[["data-toggle","tooltip"]],[[8,"className",0],[8,"title",0]],null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,sp)),s["ɵdid"](64,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,up)),s["ɵdid"](66,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,op)),s["ɵdid"](68,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](69,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](70,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](73,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","confirmnewpassword"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Confirm new password"])),(t()(),s["ɵeld"](75,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](76,0,null,null,11,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](77,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","confirmnewpassword"],["id","confirmnewpassword"],["placeholder","Confirm new password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,78)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,78).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,78)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,78)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](78,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](80,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](82,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](83,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](84,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](85,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](86,0,null,null,1,"button",[["cdPasswordButton","confirmnewpassword"],["class","btn btn-light"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,87).onClick()&&a),a}),null,null)),s["ɵdid"](87,81920,null,0,Qu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,lp)),s["ɵdid"](89,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,dp)),s["ɵdid"](91,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](92,0,null,null,6,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](93,0,null,null,5,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](94,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),$s.b,$s.a)),s["ɵdid"](95,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](96,0,[" "," "," "])),s["ɵppd"](97,1),s["ɵppd"](98,1)],(function(t,e){var n=e.component;t(e,5,0,n.userForm),t(e,8,0,n.userForm),t(e,16,0),t(e,26,0,"oldpassword"),t(e,29,0,""),t(e,31,0,"oldpassword"),t(e,34,0,"oldpassword"),t(e,36,0,n.userForm.showError("oldpassword",s["ɵnov"](e,5),"required")),t(e,38,0,n.userForm.showError("oldpassword",s["ɵnov"](e,5),"notmatch")),t(e,40,0),t(e,47,0,n.passwordPolicyHelpText.length>0),t(e,53,0,"newpassword"),t(e,57,0,"newpassword"),t(e,60,0,"newpassword"),t(e,64,0,n.userForm.showError("newpassword",s["ɵnov"](e,5),"required")),t(e,66,0,n.userForm.showError("newpassword",s["ɵnov"](e,5),"notmatch")),t(e,68,0,n.userForm.showError("newpassword",s["ɵnov"](e,5),"passwordPolicy")),t(e,70,0),t(e,80,0,"confirmnewpassword"),t(e,84,0,"confirmnewpassword"),t(e,87,0,"confirmnewpassword"),t(e,89,0,n.userForm.showError("confirmnewpassword",s["ɵnov"](e,5),"required")),t(e,91,0,n.userForm.showError("confirmnewpassword",s["ɵnov"](e,5),"match")),t(e,95,0,n.userForm)}),(function(t,e){var n=e.component;t(e,3,0,s["ɵnov"](e,7).ngClassUntouched,s["ɵnov"](e,7).ngClassTouched,s["ɵnov"](e,7).ngClassPristine,s["ɵnov"](e,7).ngClassDirty,s["ɵnov"](e,7).ngClassValid,s["ɵnov"](e,7).ngClassInvalid,s["ɵnov"](e,7).ngClassPending);var a=s["ɵunv"](e,11,0,t(e,12,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,11,1,t(e,13,0,s["ɵnov"](e,1),n.resource));t(e,11,0,a,r),t(e,15,0,s["ɵnov"](e,16).hasErrors,s["ɵnov"](e,16).hasSuccess),t(e,23,0,s["ɵnov"](e,28).ngClassUntouched,s["ɵnov"](e,28).ngClassTouched,s["ɵnov"](e,28).ngClassPristine,s["ɵnov"](e,28).ngClassDirty,s["ɵnov"](e,28).ngClassValid,s["ɵnov"](e,28).ngClassInvalid,s["ɵnov"](e,28).ngClassPending,s["ɵnov"](e,31).validClass,s["ɵnov"](e,31).invalidClass),t(e,39,0,s["ɵnov"](e,40).hasErrors,s["ɵnov"](e,40).hasSuccess),t(e,50,0,s["ɵnov"](e,55).ngClassUntouched,s["ɵnov"](e,55).ngClassTouched,s["ɵnov"](e,55).ngClassPristine,s["ɵnov"](e,55).ngClassDirty,s["ɵnov"](e,55).ngClassValid,s["ɵnov"](e,55).ngClassInvalid,s["ɵnov"](e,55).ngClassPending,s["ɵnov"](e,57).validClass,s["ɵnov"](e,57).invalidClass),t(e,62,0,s["ɵinlineInterpolate"](1,"",n.passwordStrengthLevelClass,""),s["ɵinlineInterpolate"](1,"",n.passwordValuation,"")),t(e,69,0,s["ɵnov"](e,70).hasErrors,s["ɵnov"](e,70).hasSuccess),t(e,77,0,s["ɵnov"](e,82).ngClassUntouched,s["ɵnov"](e,82).ngClassTouched,s["ɵnov"](e,82).ngClassPristine,s["ɵnov"](e,82).ngClassDirty,s["ɵnov"](e,82).ngClassValid,s["ɵnov"](e,82).ngClassInvalid,s["ɵnov"](e,82).ngClassPending,s["ɵnov"](e,84).validClass,s["ɵnov"](e,84).invalidClass);var i=s["ɵunv"](e,96,0,t(e,97,0,s["ɵnov"](e,0),n.action)),u=s["ɵunv"](e,96,1,t(e,98,0,s["ɵnov"](e,1),n.resource));t(e,96,0,i,u)}))}function fp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-user-password-form",[],null,null,null,cp,np)),s["ɵdid"](1,49152,null,0,ep,[fe.a,St.b,bt.a,Ot.a,J.a,no.a,Et.m,tp.a],null,null)],null,null)}var hp=s["ɵccf"]("cd-user-password-form",ep,fp,{},{},[]);class gp{constructor(t,e){this.route=t,this.i18n=e,this.message=this.i18n("The NFS Ganesha service is not configured.")}ngOnInit(){this.routeParamsSubscribe=this.route.params.subscribe(t=>{this.message=t.message})}ngOnDestroy(){this.routeParamsSubscribe.unsubscribe()}}var pp=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function bp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,8,"cd-alert-panel",[["type","info"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"]},null),(t()(),s["ɵted"](2,0,[" ",""])),(t()(),s["ɵeld"](3,0,null,0,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,0,4,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Please consult the "])),(t()(),s["ɵeld"](6,0,null,null,1,"cd-doc",[["section","nfs-ganesha"]],null,null,null,ei.b,ei.a)),s["ɵdid"](7,114688,null,0,ni.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,null,[" on how to configure and enable the NFS Ganesha management functionality."]))],(function(t,e){t(e,1,0,"info"),t(e,7,0,"nfs-ganesha")}),(function(t,e){t(e,2,0,e.component.message)}))}function mp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-nfs-501",[],null,null,null,bp,pp)),s["ɵdid"](1,245760,null,0,gp,[Et.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var yp=s["ɵccf"]("cd-nfs-501",gp,mp,{},{},[]);class vp{constructor(t){this.i18n=t,this.clients=[],this.clientsColumns=[{name:this.i18n("Addresses"),prop:"addresses",flexGrow:2},{name:this.i18n("Access Type"),prop:"access_type",flexGrow:1},{name:this.i18n("Squash"),prop:"squash",flexGrow:1}]}ngOnChanges(){this.selection&&(this.selectedItem=this.selection,this.clients=this.selectedItem.clients,this.data={},this.data[this.i18n("Cluster")]=this.selectedItem.cluster_id,this.data[this.i18n("Daemons")]=this.selectedItem.daemons,this.data[this.i18n("NFS Protocol")]=this.selectedItem.protocols.map(t=>"NFSv"+t),this.data[this.i18n("Pseudo")]=this.selectedItem.pseudo,this.data[this.i18n("Access Type")]=this.selectedItem.access_type,this.data[this.i18n("Squash")]=this.selectedItem.squash,this.data[this.i18n("Transport")]=this.selectedItem.transports,this.data[this.i18n("Path")]=this.selectedItem.path,"CEPH"===this.selectedItem.fsal.name?(this.data[this.i18n("Storage Backend")]=this.i18n("CephFS"),this.data[this.i18n("CephFS User")]=this.selectedItem.fsal.user_id,this.data[this.i18n("CephFS Filesystem")]=this.selectedItem.fsal.fs_name,this.data[this.i18n("Security Label")]=this.selectedItem.fsal.sec_label_xattr):(this.data[this.i18n("Storage Backend")]=this.i18n("Object Gateway"),this.data[this.i18n("Object Gateway User")]=this.selectedItem.fsal.rgw_user_id))}}var xp=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function _p(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"tabset",[],[[2,"tab-container",null]],null,null,Oa.b,Oa.a)),s["ɵdid"](1,180224,null,0,Sa.e,[Sa.f,s.Renderer2,s.ElementRef],null,null),(t()(),s["ɵeld"](2,0,null,0,3,"tab",[["heading","Details"]],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](3,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](4,0,null,null,1,"cd-table-key-value",[],null,null,null,Ai.b,Ai.a)),s["ɵdid"](5,638976,null,0,ki.a,[He.a],{data:[0,"data"]},null),(t()(),s["ɵeld"](6,0,null,0,3,"tab",[],[[1,"id",0],[2,"active",null],[2,"tab-pane",null],[1,"role",0],[1,"aria-labelledby",0]],null,null,null,null)),s["ɵdid"](7,212992,null,0,Sa.b,[Sa.e,s.ElementRef,s.Renderer2],{heading:[0,"heading"]},null),(t()(),s["ɵeld"](8,0,null,null,1,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","addresses"],["selectionType",""]],null,null,null,Jr.b,Jr.a)),s["ɵdid"](9,2867200,[["table",4]],0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],identifier:[3,"identifier"],forceIdentifier:[4,"forceIdentifier"],selectionType:[5,"selectionType"]},null)],(function(t,e){var n=e.component;t(e,3,0,"Details"),t(e,5,0,n.data),t(e,7,0,s["ɵinlineInterpolate"](1,"Clients (",n.clients.length,")")),t(e,9,0,n.clients,n.clientsColumns,"flex","addresses","true","")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).clazz),t(e,2,0,s["ɵnov"](e,3).id,s["ɵnov"](e,3).active,s["ɵnov"](e,3).addClass,s["ɵnov"](e,3).role,s["ɵnov"](e,3).ariaLabelledby),t(e,6,0,s["ɵnov"](e,7).id,s["ɵnov"](e,7).active,s["ɵnov"](e,7).addClass,s["ɵnov"](e,7).role,s["ɵnov"](e,7).ariaLabelledby)}))}function Tp(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,_p)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.selection)}),null)}var wp=n("VTlA");let Op=(()=>{class t{constructor(t,e){this.http=t,this.i18n=e,this.apiPath="api/nfs-ganesha",this.uiApiPath="ui-api/nfs-ganesha",this.nfsAccessType=[{value:"RW",help:this.i18n("Allows all operations")},{value:"RO",help:this.i18n("Allows only operations that do not modify the server")},{value:"MDONLY",help:this.i18n("Does not allow read or write operations, but allows any other operation")},{value:"MDONLY_RO",help:this.i18n("Does not allow read, write, or any operation that modifies file        attributes or directory content")},{value:"NONE",help:this.i18n("Allows no access at all")}],this.nfsFsal=[{value:"CEPH",descr:this.i18n("CephFS")},{value:"RGW",descr:this.i18n("Object Gateway")}],this.nfsSquash=["no_root_squash","root_id_squash","root_squash","all_squash"]}list(){return this.http.get(this.apiPath+"/export")}get(t,e){return this.http.get(`${this.apiPath}/export/${t}/${e}`)}create(t){return this.http.post(this.apiPath+"/export",t,{observe:"response"})}update(t,e,n){return this.http.put(`${this.apiPath}/export/${t}/${e}`,n,{observe:"response"})}delete(t,e){return this.http.delete(`${this.apiPath}/export/${t}/${e}`,{observe:"response"})}lsDir(t,e){return this.http.get(`${this.uiApiPath}/lsdir/${t}?root_dir=${e}`)}buckets(t){return this.http.get(`${this.uiApiPath}/rgw/buckets?user_id=${t}`)}clients(){return this.http.get(this.uiApiPath+"/cephx/clients")}fsals(){return this.http.get(this.uiApiPath+"/fsals")}filesystems(){return this.http.get(this.uiApiPath+"/cephfs/filesystems")}daemon(){return this.http.get(this.apiPath+"/daemon")}start(t){return this.http.put(`${this.apiPath}/service/${t}/start`,null,{observe:"response"})}stop(t){return this.http.put(`${this.apiPath}/service/${t}/stop`,null,{observe:"response"})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](fe.a))},token:t,providedIn:ue.a}),t})();class Sp extends Ns.a{constructor(t,e,n,a,r,i,s){super(),this.authStorageService=t,this.i18n=e,this.modalService=n,this.nfsService=a,this.taskListService=r,this.taskWrapper=i,this.actionLabels=s,this.selection=new li.a,this.isDefaultCluster=!1,this.builders={"nfs/create":t=>({path:t.path,cluster_id:t.cluster_id,fsal:t.fsal})},this.permission=this.authStorageService.getPermissions().nfs;const u=()=>this.selection.first()&&`${encodeURI(this.selection.first().cluster_id)}/${encodeURI(this.selection.first().export_id)}`;this.tableActions=[{permission:"create",icon:pt.a.add,routerLink:()=>"/nfs/create",canBePrimary:t=>!t.hasSingleSelection,name:this.actionLabels.CREATE},{permission:"update",icon:pt.a.edit,routerLink:()=>"/nfs/edit/"+u(),name:this.actionLabels.EDIT},{permission:"delete",icon:pt.a.destroy,click:()=>this.deleteNfsModal(),name:this.actionLabels.DELETE}]}ngOnInit(){this.columns=[{name:this.i18n("Path"),prop:"path",flexGrow:2,cellTransformation:oi.a.executing},{name:this.i18n("Pseudo"),prop:"pseudo",flexGrow:2},{name:this.i18n("Cluster"),prop:"cluster_id",flexGrow:2},{name:this.i18n("Daemons"),prop:"daemons",flexGrow:2},{name:this.i18n("Storage Backend"),prop:"fsal",flexGrow:2,cellTemplate:this.nfsFsal},{name:this.i18n("Access Type"),prop:"access_type",flexGrow:2}],this.nfsService.daemon().subscribe(t=>{const e=X(t).map(t=>t.cluster_id).uniq().value();this.isDefaultCluster=1===e.length&&"_default_"===e[0],this.columns[2].isHidden=this.isDefaultCluster,this.table&&this.table.updateColumns(),this.taskListService.init(()=>this.nfsService.list(),t=>this.prepareResponse(t),t=>this.exports=t,()=>this.onFetchError(),this.taskFilter,this.itemFilter,this.builders)},()=>{this.onFetchError()})}ngOnDestroy(){this.summaryDataSubscription&&this.summaryDataSubscription.unsubscribe()}prepareResponse(t){let e=[];return t.forEach(t=>{t.id=`${t.cluster_id}:${t.export_id}`,t.state="LOADING",e=e.concat(t)}),e}onFetchError(){this.table.reset(),this.viewCacheStatus={status:Gg.a.ValueException}}itemFilter(t,e){return t.cluster_id===e.metadata.cluster_id&&t.export_id===e.metadata.export_id}taskFilter(t){return["nfs/create","nfs/delete","nfs/edit"].includes(t.name)}updateSelection(t){this.selection=t}deleteNfsModal(){const t=this.selection.first().cluster_id,e=this.selection.first().export_id;this.modalRef=this.modalService.show(Cs.a,{initialState:{itemDescription:this.i18n("NFS export"),itemNames:[`${t}:${e}`],submitActionObservable:()=>this.taskWrapper.wrapTaskAroundCall({task:new As.a("nfs/delete",{cluster_id:t,export_id:e}),call:this.nfsService.delete(t,e)})}})}}var Ip=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Np(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CephFS"]))],null,null)}function Cp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Object Gateway"]))],null,null)}function Rp(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Np)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cp)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,"CEPH"===e.context.value.name),t(e,3,0,"RGW"===e.context.value.name)}),null)}function Ap(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{nfsState:0}),s["ɵqud"](402653184,2,{nfsFsal:0}),s["ɵqud"](402653184,3,{table:0}),(t()(),s["ɵeld"](3,0,null,null,6,"cd-table",[["columnMode","flex"],["forceIdentifier","true"],["identifier","id"],["selectionType","single"]],null,[[null,"setExpandedRow"],[null,"updateSelection"]],(function(t,e,n){var a=!0,r=t.component;return"setExpandedRow"===e&&(a=!1!==r.setExpandedRow(n)&&a),"updateSelection"===e&&(a=!1!==r.updateSelection(n)&&a),a}),Jr.b,Jr.a)),s["ɵdid"](4,2867200,[[3,4],["table",4]],0,Qr.a,[s.NgZone,s.ChangeDetectorRef],{data:[0,"data"],columns:[1,"columns"],columnMode:[2,"columnMode"],hasDetails:[3,"hasDetails"],identifier:[4,"identifier"],forceIdentifier:[5,"forceIdentifier"],selectionType:[6,"selectionType"]},{updateSelection:"updateSelection",setExpandedRow:"setExpandedRow"}),(t()(),s["ɵeld"](5,0,null,1,2,"div",[["class","table-actions btn-toolbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,1,"cd-table-actions",[["class","btn-group"]],null,null,null,Xr.b,Xr.a)),s["ɵdid"](7,114688,null,0,ti.a,[],{permission:[0,"permission"],selection:[1,"selection"],tableActions:[2,"tableActions"]},null),(t()(),s["ɵeld"](8,0,null,3,1,"cd-nfs-details",[["cdTableDetail",""]],null,null,null,Tp,xp)),s["ɵdid"](9,573440,null,0,vp,[fe.a],{selection:[0,"selection"]},null),(t()(),s["ɵand"](0,[[2,2],["nfsFsal",2]],null,0,null,Rp))],(function(t,e){var n=e.component;t(e,4,0,n.exports,n.columns,"flex",!0,"id","true","single"),t(e,7,0,n.permission,n.selection,n.tableActions),t(e,9,0,n.expandedRow)}),null)}function kp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-nfs-list",[],null,null,null,Ap,Ip)),s["ɵprd"](131584,null,wp.a,wp.a,[an.a,mt.a]),s["ɵdid"](2,245760,null,0,Sp,[J.a,fe.a,Ct.b,Op,wp.a,Ds.a,St.b],null,null)],(function(t,e){t(e,2,0)}),null)}var Ep=s["ɵccf"]("cd-nfs-list",Sp,kp,{},{},[]),Lp=n("WiuZ"),Dp=n("wnGv"),Pp=n("TYzs");class Mp{constructor(t,e){this.nfsService=t,this.i18n=e,this.nfsSquash=this.nfsService.nfsSquash,this.nfsAccessType=this.nfsService.nfsAccessType,this.icons=pt.a}getNoAccessTypeDescr(){return this.form.getValue("access_type")?`${this.form.getValue("access_type")} ${this.i18n("(inherited from global config)")}`:this.i18n("-- Select the access type --")}getAccessTypeHelp(t){const e=this.nfsAccessType.find(e=>this.getValue(t,"access_type")===e.value);return X.isObjectLike(e)?e.help:""}getNoSquashDescr(){return this.form.getValue("squash")?`${this.form.getValue("squash")} (${this.i18n("inherited from global config")})`:this.i18n("-- Select what kind of user id squashing is performed --")}addClient(){const t=this.form.get("clients"),e="(([0-9]{1,3})\\.([0-9]{1,3})\\.([0-9]{1,3}).([0-9]{1,3})([/](\\d|[1-2]\\d|3[0-2]))?)",n=new tu.a({addresses:new K.i("",{validators:[K.B.required,K.B.pattern(`${e}([ ,]{1,2}${e})*`)]}),access_type:new K.i(""),squash:new K.i("")});return t.push(n),n}removeClient(t){this.form.get("clients").removeAt(t)}showError(t,e,n,a){return this.form.controls.clients.controls[t].showError(e,n,a)}getValue(t,e){return this.form.get("clients").at(t).getValue(e)}resolveModel(t){X.forEach(t,t=>{this.addClient().patchValue(t)})}trackByFn(t){return t}}var qp=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function jp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"span",[["class","no-border text-muted"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Any client can access"]))],null,null)}function Fp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Vp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Must contain one or more comma-separated values"])),(t()(),s["ɵeld"](3,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["For example:"])),(t()(),s["ɵted"](-1,null,[" 192.168.0.10, 192.168.1.0/8 "]))],null,null)}function Gp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.value)}))}function Bp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.getAccessTypeHelp(e.parent.context.index))}))}function zp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function Yp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,74,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,73,"div",[["class","card"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),s["ɵdid"](2,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](4,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](5,0,null,null,4,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](6,null,[" "," "])),s["ɵppd"](7,1),(t()(),s["ɵeld"](8,0,null,null,1,"span",[["class","float-right clickable"],["tooltip","Remove"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.removeClient(t.context.index)&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["×"])),(t()(),s["ɵeld"](10,0,null,null,64,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](12,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](15,0,null,0,1,"label",[["class","cd-col-form-label"],["for","addresses"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Addresses"])),(t()(),s["ɵeld"](17,0,null,0,13,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,7,"input",[["class","form-control"],["formControlName","addresses"],["id","addresses"],["name","addresses"],["placeholder","192.168.0.10, 192.168.1.0/8"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,19)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,19).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,19)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,19)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](19,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](21,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](23,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](24,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](25,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](26,0,null,null,4,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Fp)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vp)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](31,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](32,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](35,0,null,0,1,"label",[["class","cd-col-form-label"],["for","access_type"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Access Type"])),(t()(),s["ɵeld"](37,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](38,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","access_type"],["id","access_type"],["name","access_type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,39).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,39).onTouched()&&a),a}),null,null)),s["ɵdid"](39,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](41,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](43,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](44,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](45,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](46,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](47,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](48,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](49,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Gp)),s["ɵdid"](51,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bp)),s["ɵdid"](53,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](54,0,null,null,20,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](55,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,7,{FormControlNames:1}),s["ɵqud"](603979776,8,{messagesBlock:0}),(t()(),s["ɵeld"](58,0,null,0,1,"label",[["class","cd-col-form-label"],["for","squash"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Squash"])),(t()(),s["ɵeld"](60,0,null,0,14,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](61,0,null,null,13,"select",[["class","form-control custom-select"],["formControlName","squash"],["id","squash"],["name","squash"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,62).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,62).onTouched()&&a),a}),null,null)),s["ɵdid"](62,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](64,671744,[[7,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](66,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](67,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](68,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](69,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](70,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](71,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](72,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,zp)),s["ɵdid"](74,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,2,0,e.context.index),t(e,12,0),t(e,21,0,"addresses"),t(e,25,0,"addresses"),t(e,28,0,n.showError(e.context.index,"addresses",s["ɵnov"](e.parent,8),"required")),t(e,30,0,n.showError(e.context.index,"addresses",s["ɵnov"](e.parent,8),"pattern")),t(e,32,0),t(e,41,0,"access_type"),t(e,45,0,"access_type"),t(e,47,0,""),t(e,48,0,""),t(e,51,0,n.nfsAccessType),t(e,53,0,n.getValue(e.context.index,"access_type")),t(e,55,0),t(e,64,0,"squash"),t(e,68,0,"squash"),t(e,70,0,""),t(e,71,0,""),t(e,74,0,n.nfsSquash)}),(function(t,e){var n=e.component;t(e,1,0,s["ɵnov"](e,4).ngClassUntouched,s["ɵnov"](e,4).ngClassTouched,s["ɵnov"](e,4).ngClassPristine,s["ɵnov"](e,4).ngClassDirty,s["ɵnov"](e,4).ngClassValid,s["ɵnov"](e,4).ngClassInvalid,s["ɵnov"](e,4).ngClassPending);var a=s["ɵunv"](e,6,0,t(e,7,0,s["ɵnov"](e.parent,0),e.context.index+1));t(e,6,0,a),t(e,11,0,s["ɵnov"](e,12).hasErrors,s["ɵnov"](e,12).hasSuccess),t(e,18,0,s["ɵnov"](e,23).ngClassUntouched,s["ɵnov"](e,23).ngClassTouched,s["ɵnov"](e,23).ngClassPristine,s["ɵnov"](e,23).ngClassDirty,s["ɵnov"](e,23).ngClassValid,s["ɵnov"](e,23).ngClassInvalid,s["ɵnov"](e,23).ngClassPending,s["ɵnov"](e,25).validClass,s["ɵnov"](e,25).invalidClass),t(e,31,0,s["ɵnov"](e,32).hasErrors,s["ɵnov"](e,32).hasSuccess),t(e,38,0,s["ɵnov"](e,43).ngClassUntouched,s["ɵnov"](e,43).ngClassTouched,s["ɵnov"](e,43).ngClassPristine,s["ɵnov"](e,43).ngClassDirty,s["ɵnov"](e,43).ngClassValid,s["ɵnov"](e,43).ngClassInvalid,s["ɵnov"](e,43).ngClassPending,s["ɵnov"](e,45).validClass,s["ɵnov"](e,45).invalidClass),t(e,49,0,n.getNoAccessTypeDescr()),t(e,54,0,s["ɵnov"](e,55).hasErrors,s["ɵnov"](e,55).hasSuccess),t(e,61,0,s["ɵnov"](e,66).ngClassUntouched,s["ɵnov"](e,66).ngClassTouched,s["ɵnov"](e,66).ngClassPristine,s["ɵnov"](e,66).ngClassDirty,s["ɵnov"](e,66).ngClassValid,s["ɵnov"](e,66).ngClassInvalid,s["ɵnov"](e,66).ngClassPending,s["ɵnov"](e,68).validClass,s["ɵnov"](e,68).invalidClass),t(e,72,0,n.getNoSquashDescr())}))}function Hp(t){return s["ɵvid"](0,[s["ɵpid"](0,Pp.a,[]),(t()(),s["ɵeld"](1,0,null,null,28,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](2,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](5,0,null,0,1,"label",[["class","cd-col-form-label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clients"])),(t()(),s["ɵeld"](7,0,null,0,22,"div",[["class","cd-col-form-input"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,8).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,11).onSubmit()&&a),a}),null,null)),s["ɵdid"](8,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](10,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](11,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,jp)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](14,0,null,null,5,null,null,null,null,null,null,null)),s["ɵdid"](15,212992,null,0,K.g,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.g]),s["ɵdid"](17,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,Yp)),s["ɵdid"](19,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"],ngForTrackBy:[1,"ngForTrackBy"]},null),(t()(),s["ɵeld"](20,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](21,0,null,null,8,"div",[["class","col-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,7,"div",[["class","float-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](23,0,null,null,6,"button",[["class","btn btn-light "]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.addClient()&&a),a}),null,null)),(t()(),s["ɵeld"](24,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](26,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](27,1),(t()(),s["ɵeld"](28,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add clients"]))],(function(t,e){var n=e.component;t(e,2,0),t(e,8,0,n.form),t(e,11,0,n.form),t(e,13,0,0===n.form.get("clients").value.length),t(e,15,0,"clients"),t(e,19,0,n.form.get("clients").value,n.trackByFn);var a=t(e,27,0,n.icons.add);t(e,26,0,a)}),(function(t,e){t(e,1,0,s["ɵnov"](e,2).hasErrors,s["ɵnov"](e,2).hasSuccess),t(e,7,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending)}))}var Up=n("P8lu"),Wp=function(t){return t.user="user",t.orchestrator="orchestrator",t}({});class Kp{constructor(t,e,n,a,r,i,s,u,o,l){this.authStorageService=t,this.nfsService=e,this.route=n,this.router=a,this.rgwUserService=r,this.formBuilder=i,this.taskWrapper=s,this.cdRef=u,this.i18n=o,this.actionLabels=l,this.isEdit=!1,this.cluster_id=null,this.clusterType=null,this.export_id=null,this.isNewDirectory=!1,this.isNewBucket=!1,this.isDefaultCluster=!1,this.allClusters=null,this.allDaemons={},this.icons=pt.a,this.allFsals=[],this.allRgwUsers=[],this.allCephxClients=null,this.allFsNames=null,this.defaultAccessType={RGW:"RO"},this.nfsAccessType=this.nfsService.nfsAccessType,this.nfsSquash=this.nfsService.nfsSquash,this.daemonsSelections=[],this.daemonsMessages=new Rs.a({noOptions:this.i18n("There are no daemons available.")},this.i18n),this.pathDataSource=Zn.a.create(t=>{t.next(this.nfsForm.getValue("path"))}).pipe(Object(we.a)(t=>this.getPathTypeahead(t)),Object(Qe.a)(t=>t.paths)),this.bucketDataSource=Zn.a.create(t=>{t.next(this.nfsForm.getValue("path"))}).pipe(Object(we.a)(t=>this.getBucketTypeahead(t))),this.permission=this.authStorageService.getPermissions().pool,this.resource=this.i18n("NFS export"),this.createForm()}ngOnInit(){const t=[this.nfsService.daemon(),this.nfsService.fsals(),this.nfsService.clients(),this.nfsService.filesystems()];this.router.url.startsWith("/nfs/edit")&&(this.isEdit=!0),this.isEdit?(this.action=this.actionLabels.EDIT,this.route.params.subscribe(e=>{this.cluster_id=decodeURIComponent(e.cluster_id),this.export_id=decodeURIComponent(e.export_id),t.push(this.nfsService.get(this.cluster_id,this.export_id)),this.getData(t)}),this.nfsForm.get("cluster_id").disable()):(this.action=this.actionLabels.CREATE,this.getData(t))}getData(t){Object(ml.a)(t).subscribe(t=>{this.resolveDaemons(t[0]),this.resolvefsals(t[1]),this.resolveClients(t[2]),this.resolveFilesystems(t[3]),t[4]&&this.resolveModel(t[4])})}createForm(){this.nfsForm=new tu.a({cluster_id:new K.i("",{validators:[K.B.required]}),daemons:new K.i([]),fsal:new tu.a({name:new K.i("",{validators:[K.B.required]}),user_id:new K.i("",{validators:[eu.a.requiredIf({name:"CEPH"})]}),fs_name:new K.i("",{validators:[eu.a.requiredIf({name:"CEPH"})]}),rgw_user_id:new K.i("",{validators:[eu.a.requiredIf({name:"RGW"})]})}),path:new K.i(""),protocolNfsv3:new K.i(!1,{validators:[eu.a.requiredIf({protocolNfsv4:!1},t=>!t)]}),protocolNfsv4:new K.i(!0,{validators:[eu.a.requiredIf({protocolNfsv3:!1},t=>!t)]}),tag:new K.i(""),pseudo:new K.i("",{validators:[eu.a.requiredIf({protocolNfsv4:!0}),K.B.pattern("^/[^><|&()]*$")]}),access_type:new K.i("RW",{validators:[K.B.required]}),squash:new K.i("",{validators:[K.B.required]}),transportUDP:new K.i(!0,{validators:[eu.a.requiredIf({transportTCP:!1},t=>!t)]}),transportTCP:new K.i(!0,{validators:[eu.a.requiredIf({transportUDP:!1},t=>!t)]}),clients:this.formBuilder.array([]),security_label:new K.i(!1),sec_label_xattr:new K.i("security.selinux",eu.a.requiredIf({security_label:!0,"fsal.name":"CEPH"}))})}resolveModel(t){"CEPH"===t.fsal.name&&(t.sec_label_xattr=t.fsal.sec_label_xattr),this.clusterType===Wp.user&&(this.daemonsSelections=X.map(this.allDaemons[t.cluster_id],e=>new eo.a(-1!==t.daemons.indexOf(e),e,"")),this.daemonsSelections=[...this.daemonsSelections]),t.protocolNfsv3=-1!==t.protocols.indexOf(3),t.protocolNfsv4=-1!==t.protocols.indexOf(4),delete t.protocols,t.transportTCP=-1!==t.transports.indexOf("TCP"),t.transportUDP=-1!==t.transports.indexOf("UDP"),delete t.transports,t.clients.forEach(t=>{let e="";t.addresses.forEach(t=>{e+=t+", "}),e.length>=2&&(e=e.substring(0,e.length-2)),t.addresses=e}),this.nfsForm.patchValue(t),this.setPathValidation(),this.nfsClients.resolveModel(t.clients)}resolveDaemons(t){t=X.sortBy(t,["daemon_id"]);const e=X.groupBy(t,"cluster_id");if(this.allClusters=[],X.forIn(e,(t,e)=>{this.allClusters.push({cluster_id:e,cluster_type:t[0].cluster_type}),this.allDaemons[e]=[]}),X.forEach(t,t=>{this.allDaemons[t.cluster_id].push(t.daemon_id)}),this.isEdit){const t=X.find(this.allClusters,{cluster_id:this.cluster_id});this.clusterType=t?t.cluster_type:null}const n=X.isArray(this.allClusters)&&1===this.allClusters.length;this.isDefaultCluster=n&&"_default_"===this.allClusters[0].cluster_id,n&&(this.nfsForm.patchValue({cluster_id:this.allClusters[0].cluster_id}),this.onClusterChange())}resolvefsals(t){t.forEach(t=>{const e=this.nfsService.nfsFsal.find(e=>t===e.value);X.isObjectLike(e)&&(this.allFsals.push(e),"RGW"===e.value&&this.rgwUserService.list().subscribe(t=>{t.forEach(t=>{0===t.suspended&&t.keys.length>0&&this.allRgwUsers.push(t.user_id)})}))}),1===this.allFsals.length&&X.isUndefined(this.nfsForm.getValue("fsal"))&&this.nfsForm.patchValue({fsal:this.allFsals[0]})}resolveClients(t){this.allCephxClients=t}resolveFilesystems(t){this.allFsNames=t,1===t.length&&this.nfsForm.patchValue({fsal:{fs_name:t[0].name}})}fsalChangeHandler(){this.nfsForm.patchValue({tag:this._generateTag(),pseudo:this._generatePseudo(),access_type:this._updateAccessType()}),this.setPathValidation(),this.cdRef.detectChanges()}accessTypeChangeHandler(){const t=this.nfsForm.getValue("name"),e=this.nfsForm.getValue("access_type");this.defaultAccessType[t]=e}setPathValidation(){"RGW"===this.nfsForm.getValue("name")?this.nfsForm.get("path").setValidators([K.B.required,K.B.pattern("^(/|[^/><|&()#?]+)$")]):this.nfsForm.get("path").setValidators([K.B.required,K.B.pattern("^/[^><|&()?]*$")])}rgwUserIdChangeHandler(){this.nfsForm.patchValue({pseudo:this._generatePseudo()})}getAccessTypeHelp(t){const e=this.nfsAccessType.find(e=>{if(t===e.value)return e});return X.isObjectLike(e)?e.help:""}getId(){return X.isString(this.nfsForm.getValue("cluster_id"))&&X.isString(this.nfsForm.getValue("path"))?this.nfsForm.getValue("cluster_id")+":"+this.nfsForm.getValue("path"):""}getPathTypeahead(t){if(!X.isString(t)||"/"===t)return Object(_e.a)([]);const e=this.nfsForm.getValue("fsal").fs_name;return this.nfsService.lsDir(e,t)}pathChangeHandler(){this.nfsForm.patchValue({pseudo:this._generatePseudo()});const t=this.nfsForm.getValue("path");this.getPathTypeahead(t).subscribe(e=>{this.isNewDirectory="/"!==t&&-1===e.paths.indexOf(t)})}bucketChangeHandler(){this.nfsForm.patchValue({tag:this._generateTag(),pseudo:this._generatePseudo()});const t=this.nfsForm.getValue("path");this.getBucketTypeahead(t).subscribe(e=>{this.isNewBucket=""!==t&&-1===e.indexOf(t)})}getBucketTypeahead(t){const e=this.nfsForm.getValue("rgw_user_id");return X.isString(e)&&X.isString(t)&&"/"!==t&&""!==t?this.nfsService.buckets(e):Object(_e.a)([])}_generateTag(){let t=this.nfsForm.getValue("tag");return this.nfsForm.get("tag").dirty||(t=void 0,"RGW"===this.nfsForm.getValue("fsal")&&(t=this.nfsForm.getValue("path"))),t}_generatePseudo(){let t=this.nfsForm.getValue("pseudo");return this.nfsForm.get("pseudo")&&!this.nfsForm.get("pseudo").dirty&&(t=void 0,"CEPH"===this.nfsForm.getValue("fsal")?(t="/cephfs",X.isString(this.nfsForm.getValue("path"))&&(t+=this.nfsForm.getValue("path"))):"RGW"===this.nfsForm.getValue("fsal")&&X.isString(this.nfsForm.getValue("rgw_user_id"))&&(t="/"+this.nfsForm.getValue("rgw_user_id"),X.isString(this.nfsForm.getValue("path"))&&(t+="/"+this.nfsForm.getValue("path")))),t}_updateAccessType(){const t=this.nfsForm.getValue("name");let e=this.defaultAccessType[t];return e||(e="RW"),e}onClusterChange(){const t=this.nfsForm.getValue("cluster_id"),e=X.find(this.allClusters,{cluster_id:t});this.clusterType=e?e.cluster_type:null,this.clusterType===Wp.user?(this.daemonsSelections=X.map(this.allDaemons[t],t=>new eo.a(!1,t,"")),this.daemonsSelections=[...this.daemonsSelections]):this.daemonsSelections=[],this.nfsForm.patchValue({daemons:[]})}removeDaemon(t,e){this.daemonsSelections.forEach(t=>{t.name===e&&(t.selected=!1)});const n=this.nfsForm.get("daemons");return n.value.splice(t,1),n.setValue(n.value),!1}onDaemonSelection(){this.nfsForm.get("daemons").setValue(this.nfsForm.getValue("daemons"))}onToggleAllDaemonsSelection(){const t=this.nfsForm.getValue("cluster_id"),e=0===this.nfsForm.getValue("daemons").length?this.allDaemons[t]:[];this.nfsForm.patchValue({daemons:e})}submitAction(){let t;const e=this._buildRequest();t=this.taskWrapper.wrapTaskAroundCall(this.isEdit?{task:new As.a("nfs/edit",{cluster_id:this.cluster_id,export_id:this.export_id}),call:this.nfsService.update(this.cluster_id,this.export_id,e)}:{task:new As.a("nfs/create",{path:e.path,fsal:e.fsal,cluster_id:e.cluster_id}),call:this.nfsService.create(e)}),t.subscribe(void 0,()=>this.nfsForm.setErrors({cdSubmitButton:!0}),()=>this.router.navigate(["/nfs"]))}_buildRequest(){const t=X.cloneDeep(this.nfsForm.value);return(X.isUndefined(t.tag)||""===t.tag)&&(t.tag=null),this.isEdit&&(t.export_id=this.export_id),"CEPH"===t.fsal.name?delete t.fsal.rgw_user_id:(delete t.fsal.fs_name,delete t.fsal.user_id),t.protocols=[],t.protocolNfsv3?t.protocols.push(3):t.tag=null,delete t.protocolNfsv3,t.protocolNfsv4?t.protocols.push(4):t.pseudo=null,delete t.protocolNfsv4,t.transports=[],t.transportTCP&&t.transports.push("TCP"),delete t.transportTCP,t.transportUDP&&t.transports.push("UDP"),delete t.transportUDP,t.clients.forEach(e=>{e.addresses=X.isString(e.addresses)?X(e.addresses).split(/[ ,]+/).uniq().filter(t=>""!==t).value():[],e.squash||(e.squash=t.squash),e.access_type||(e.access_type=t.access_type)}),t.fsal.sec_label_xattr=!1===t.security_label||"RGW"===t.fsal.name?null:t.sec_label_xattr,delete t.sec_label_xattr,t}}var $p=s["ɵcrt"]({encapsulation:0,styles:[[".cd-mb[_ngcontent-%COMP%]{margin-bottom:10px}"]],data:{}});function Zp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Jp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No cluster available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Qp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the cluster --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Xp(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.cluster_id),t(e,2,0,e.context.$implicit.cluster_id)}),(function(t,e){t(e,3,0,e.context.$implicit.cluster_id)}))}function tb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function eb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,2,{FormControlNames:1}),s["ɵqud"](603979776,3,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","cluster_id"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster"])),(t()(),s["ɵeld"](6,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","cluster_id"],["id","cluster_id"],["name","cluster_id"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,8).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"change"===e&&(a=!1!==r.onClusterChange()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](10,671744,[[2,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Zp)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Jp)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Qp)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Xp)),s["ɵdid"](22,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tb)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"cluster_id"),t(e,14,0,"cluster_id"),t(e,16,0,null===n.allClusters),t(e,18,0,null!==n.allClusters&&0===n.allClusters.length),t(e,20,0,null!==n.allClusters&&n.allClusters.length>0),t(e,22,0,n.allClusters),t(e,24,0,n.nfsForm.showError("cluster_id",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function nb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.removeDaemon(t.parent.context.index,t.parent.context.$implicit)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1)],(function(t,e){var n=t(e,5,0,e.component.icons.destroy);t(e,4,0,n)}),null)}function ab(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"div",[["class","input-group cd-mb"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"input",[["class","cd-form-control"],["disabled",""],["type","text"]],[[8,"value",0]],null,null,null,null)),s["ɵdid"](3,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,nb)),s["ɵdid"](5,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,5,0,"user"===e.component.clusterType)}),(function(t,e){t(e,2,0,e.context.$implicit)}))}function rb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,7,"cd-select",[["elemClass","btn btn-light float-right"]],null,[[null,"selection"]],(function(t,e,n){var a=!0;return"selection"===e&&(a=!1!==t.component.onDaemonSelection()&&a),a}),Lp.b,Lp.a)),s["ɵdid"](3,638976,null,0,Dp.a,[fe.a],{elemClass:[0,"elemClass"],data:[1,"data"],options:[2,"options"],messages:[3,"messages"]},{selection:"selection"}),(t()(),s["ɵeld"](4,0,null,0,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](7,1),(t()(),s["ɵeld"](8,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add daemon"]))],(function(t,e){var n=e.component;t(e,3,0,"btn btn-light float-right",n.nfsForm.get("daemons").value,n.daemonsSelections,n.daemonsMessages);var a=t(e,7,0,n.icons.add);t(e,6,0,a)}),null)}function ib(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Add all daemons"]))],null,null)}function sb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Remove all daemons"]))],null,null)}function ub(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,9,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,8,"div",[["class","col-md-12"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,7,"button",[["class","btn btn-light float-right"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onToggleAllDaemonsSelection()&&a),a}),null,null)),(t()(),s["ɵeld"](3,0,null,null,3,"i",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](5,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](6,1),(t()(),s["ɵand"](16777216,null,null,1,null,ib)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"],ngIfElse:[1,"ngIfElse"]},null),(t()(),s["ɵand"](0,[["hasDaemons",2]],null,0,null,sb))],(function(t,e){var n=e.component,a=t(e,6,0,n.icons.add);t(e,5,0,a),t(e,8,0,0===n.nfsForm.getValue("daemons").length,s["ɵnov"](e,9))}),null)}function ob(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,13,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,4,{FormControlNames:1}),s["ɵqud"](603979776,5,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,2,"label",[["class","cd-col-form-label"],["for","daemons"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Daemons"])),(t()(),s["ɵeld"](7,0,null,0,6,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ab)),s["ɵdid"](9,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rb)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ub)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,9,0,n.nfsForm.getValue("daemons")),t(e,11,0,"user"===n.clusterType),t(e,13,0,"orchestrator"===n.clusterType)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess)}))}function lb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function db(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No data pools available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function cb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the storage backend --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function fb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.descr)}))}function hb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function gb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function pb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No users available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function bb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the object gateway user --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function mb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function yb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function vb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,8,{FormControlNames:1}),s["ɵqud"](603979776,9,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","rgw_user_id"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Object Gateway User"])),(t()(),s["ɵeld"](6,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","rgw_user_id"],["id","rgw_user_id"],["name","rgw_user_id"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,8).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"change"===e&&(a=!1!==r.rgwUserIdChangeHandler()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](10,671744,[[8,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,gb)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pb)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,bb)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,mb)),s["ɵdid"](22,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,yb)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"rgw_user_id"),t(e,14,0,"rgw_user_id"),t(e,16,0,null===n.allRgwUsers),t(e,18,0,null!==n.allRgwUsers&&0===n.allRgwUsers.length),t(e,20,0,null!==n.allRgwUsers&&n.allRgwUsers.length>0),t(e,22,0,n.allRgwUsers),t(e,24,0,n.nfsForm.showError("rgw_user_id",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function xb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function _b(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No clients available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Tb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the cephx client --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function wb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function Ob(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Sb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,10,{FormControlNames:1}),s["ɵqud"](603979776,11,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","user_id"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CephFS User ID"])),(t()(),s["ɵeld"](6,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","user_id"],["id","user_id"],["name","user_id"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,8).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](10,671744,[[10,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xb)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,_b)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Tb)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,wb)),s["ɵdid"](22,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ob)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"user_id"),t(e,14,0,"user_id"),t(e,16,0,null===n.allCephxClients),t(e,18,0,null!==n.allCephxClients&&0===n.allCephxClients.length),t(e,20,0,null!==n.allCephxClients&&n.allCephxClients.length>0),t(e,22,0,n.allCephxClients),t(e,24,0,n.nfsForm.showError("user_id",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Ib(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Nb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No CephFS filesystem available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Cb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the CephFS filesystem --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Rb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.name),t(e,2,0,e.context.$implicit.name)}),(function(t,e){t(e,3,0,e.context.$implicit.name)}))}function Ab(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function kb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,12,{FormControlNames:1}),s["ɵqud"](603979776,13,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","fs_name"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CephFS Name"])),(t()(),s["ɵeld"](6,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","fs_name"],["id","fs_name"],["name","fs_name"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,8).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"change"===e&&(a=!1!==r.rgwUserIdChangeHandler()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](10,671744,[[12,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ib)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Nb)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cb)),s["ɵdid"](20,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Rb)),s["ɵdid"](22,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ab)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"fs_name"),t(e,14,0,"fs_name"),t(e,16,0,null===n.allFsNames),t(e,18,0,null!==n.allFsNames&&0===n.allFsNames.length),t(e,20,0,null!==n.allFsNames&&n.allFsNames.length>0),t(e,22,0,n.allFsNames),t(e,24,0,n.nfsForm.showError("fs_name",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,14).validClass,s["ɵnov"](e,14).invalidClass)}))}function Eb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,7,"input",[["class","form-control"],["formControlName","sec_label_xattr"],["id","sec_label_xattr"],["name","sec_label_xattr"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,1)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,1)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,1)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](1,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](3,671744,[[14,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](5,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](6,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](7,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,3,0,"sec_label_xattr"),t(e,7,0,"sec_label_xattr")}),(function(t,e){t(e,0,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending,s["ɵnov"](e,7).validClass,s["ɵnov"](e,7).invalidClass)}))}function Lb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Db(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,25,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,14,{FormControlNames:1}),s["ɵqud"](603979776,15,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,4,"label",[["class","cd-col-form-label"],["for","security_label"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](6,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{klass:[0,"klass"],ngClass:[1,"ngClass"]},null),s["ɵpod"](7,{required:0}),(t()(),s["ɵted"](-1,null,["Security Label"])),(t()(),s["ɵeld"](9,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","security_label"],["id","security_label"],["name","security_label"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,12).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,12).onTouched()&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](14,671744,[[14,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](16,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](17,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](18,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](19,0,null,null,1,"label",[["class","custom-control-label"],["for","security_label"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Enable security label"])),(t()(),s["ɵeld"](21,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Eb)),s["ɵdid"](23,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Lb)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0);var a=t(e,7,0,n.nfsForm.getValue("security_label"));t(e,6,0,"cd-col-form-label",a),t(e,14,0,"security_label"),t(e,18,0,"security_label"),t(e,23,0,n.nfsForm.getValue("security_label")),t(e,25,0,n.nfsForm.showError("sec_label_xattr",s["ɵnov"](e.parent,6),"required"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,11,0,s["ɵnov"](e,16).ngClassUntouched,s["ɵnov"](e,16).ngClassTouched,s["ɵnov"](e,16).ngClassPristine,s["ɵnov"](e,16).ngClassDirty,s["ɵnov"](e,16).ngClassValid,s["ɵnov"](e,16).ngClassInvalid,s["ɵnov"](e,16).ngClassPending,s["ɵnov"](e,18).validClass,s["ɵnov"](e,18).invalidClass)}))}function Pb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Mb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Path need to start with a '/' and can be followed by a word"]))],null,null)}function qb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["New directory will be created"]))],null,null)}function jb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,16,{FormControlNames:1}),s["ɵqud"](603979776,17,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","path"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CephFS Path"])),(t()(),s["ɵeld"](6,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,16777216,null,null,8,"input",[["class","form-control"],["formControlName","path"],["id","path"],["name","path"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"typeaheadOnSelect"],[null,"blur"],[null,"input"],[null,"compositionstart"],[null,"compositionend"],[null,"keyup"],[null,"click"],[null,"focus"],[null,"keydown"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,8)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,8)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,8)._compositionEnd(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,14).onInput(n)&&a),"keyup"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n)&&a),"click"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"focus"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onBlur()&&a),"keydown"===e&&(a=!1!==s["ɵnov"](t,14).onKeydown(n)&&a),"typeaheadOnSelect"===e&&(a=!1!==r.pathChangeHandler()&&a),"blur"===e&&(a=!1!==r.pathChangeHandler()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](10,671744,[[16,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,212992,null,0,Uu,[U.a,Hu,s.ChangeDetectorRef,s.ElementRef,K.q,s.Renderer2,s.ViewContainerRef],{typeahead:[0,"typeahead"]},{typeaheadOnSelect:"typeaheadOnSelect"}),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Pb)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Mb)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,qb)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"path"),t(e,14,0,n.pathDataSource),t(e,15,0,"path"),t(e,17,0,n.nfsForm.showError("path",s["ɵnov"](e.parent,6),"required")),t(e,19,0,n.nfsForm.showError("path",s["ɵnov"](e.parent,6),"pattern")),t(e,21,0,n.isNewDirectory&&!n.nfsForm.showError("path",s["ɵnov"](e.parent,6)))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass)}))}function Fb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Vb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Path can only be a single '/' or a word"]))],null,null)}function Gb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["New bucket will be created"]))],null,null)}function Bb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,21,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,18,{FormControlNames:1}),s["ɵqud"](603979776,19,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","path"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Path"])),(t()(),s["ɵeld"](6,0,null,0,15,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](7,16777216,null,null,8,"input",[["class","form-control"],["formControlName","path"],["id","path"],["name","path"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"typeaheadOnSelect"],[null,"blur"],[null,"input"],[null,"compositionstart"],[null,"compositionend"],[null,"keyup"],[null,"click"],[null,"focus"],[null,"keydown"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,8)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,8).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,8)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,8)._compositionEnd(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,14).onInput(n)&&a),"keyup"===e&&(a=!1!==s["ɵnov"](t,14).onChange(n)&&a),"click"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"focus"===e&&(a=!1!==s["ɵnov"](t,14).onFocus()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onBlur()&&a),"keydown"===e&&(a=!1!==s["ɵnov"](t,14).onKeydown(n)&&a),"typeaheadOnSelect"===e&&(a=!1!==r.bucketChangeHandler()&&a),"blur"===e&&(a=!1!==r.bucketChangeHandler()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](10,671744,[[18,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](12,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](13,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](14,212992,null,0,Uu,[U.a,Hu,s.ChangeDetectorRef,s.ElementRef,K.q,s.Renderer2,s.ViewContainerRef],{typeahead:[0,"typeahead"]},{typeaheadOnSelect:"typeaheadOnSelect"}),s["ɵdid"](15,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Fb)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Vb)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gb)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,"path"),t(e,14,0,n.bucketDataSource),t(e,15,0,"path"),t(e,17,0,n.nfsForm.showError("path",s["ɵnov"](e.parent,6),"required")),t(e,19,0,n.nfsForm.showError("path",s["ɵnov"](e.parent,6),"pattern")),t(e,21,0,n.isNewBucket&&!n.nfsForm.showError("path",s["ɵnov"](e.parent,6)))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,7,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending,s["ɵnov"](e,15).validClass,s["ɵnov"](e,15).invalidClass)}))}function zb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Yb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,26,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,22,{FormControlNames:1}),s["ɵqud"](603979776,23,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,13,"label",[["class","cd-col-form-label"],["for","tag"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFS Tag"])),(t()(),s["ɵeld"](7,0,null,null,10,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](8,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](9,0,null,0,4,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Alternative access for "])),(t()(),s["ɵeld"](11,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFS v3"])),(t()(),s["ɵted"](-1,null,[" mounts (it must not have a leading /)."])),(t()(),s["ɵeld"](14,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Clients may not mount subdirectories (i.e. if Tag = foo, the client may not mount foo/baz)."])),(t()(),s["ɵeld"](16,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["By using different Tag options, the same Path may be exported multiple times."])),(t()(),s["ɵeld"](18,0,null,0,8,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,7,"input",[["class","form-control"],["formControlName","tag"],["id","tag"],["name","tag"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,20)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,20).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,20)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,20)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](20,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](22,671744,[[22,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](24,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](25,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](26,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null)],(function(t,e){t(e,1,0),t(e,22,0,"tag"),t(e,26,0,"tag")}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,19,0,s["ɵnov"](e,24).ngClassUntouched,s["ɵnov"](e,24).ngClassTouched,s["ɵnov"](e,24).ngClassPristine,s["ɵnov"](e,24).ngClassDirty,s["ɵnov"](e,24).ngClassValid,s["ɵnov"](e,24).ngClassInvalid,s["ɵnov"](e,24).ngClassPending,s["ɵnov"](e,26).validClass,s["ɵnov"](e,26).invalidClass)}))}function Hb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Ub(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pseudo needs to start with a '/' and can't contain any of the following: >, <, |, &, ( or )."]))],null,null)}function Wb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,24,{FormControlNames:1}),s["ɵqud"](603979776,25,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,14,"label",[["class","cd-col-form-label"],["for","pseudo"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"span",[["class","required"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pseudo"])),(t()(),s["ɵeld"](7,0,null,null,11,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](8,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵeld"](9,0,null,0,7,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The position that this "])),(t()(),s["ɵeld"](11,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFS v4"])),(t()(),s["ɵted"](-1,null,[" export occupies in the "])),(t()(),s["ɵeld"](14,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Pseudo FS"])),(t()(),s["ɵted"](-1,null,[" (it must be unique)."])),(t()(),s["ɵeld"](17,0,null,0,1,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["By using different Pseudo options, the same Path may be exported multiple times."])),(t()(),s["ɵeld"](19,0,null,0,12,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,7,"input",[["class","form-control"],["formControlName","pseudo"],["id","pseudo"],["name","pseudo"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,21)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,21).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,21)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,21)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](21,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](23,671744,[[24,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](25,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](26,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hb)),s["ɵdid"](29,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ub)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,23,0,"pseudo"),t(e,27,0,"pseudo"),t(e,29,0,n.nfsForm.showError("pseudo",s["ɵnov"](e.parent,6),"required")),t(e,31,0,n.nfsForm.showError("pseudo",s["ɵnov"](e.parent,6),"pattern"))}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,20,0,s["ɵnov"](e,25).ngClassUntouched,s["ɵnov"](e,25).ngClassTouched,s["ɵnov"](e,25).ngClassPristine,s["ɵnov"](e,25).ngClassDirty,s["ɵnov"](e,25).ngClassValid,s["ɵnov"](e,25).ngClassInvalid,s["ɵnov"](e,25).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass)}))}function Kb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function $b(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No access type available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Zb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- Select the access type --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function Jb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit.value),t(e,2,0,e.context.$implicit.value)}),(function(t,e){t(e,3,0,e.context.$implicit.value)}))}function Qb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,1,0,n.getAccessTypeHelp(n.nfsForm.getValue("access_type")))}))}function Xb(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"span",[["class","form-text text-warning"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The Object Gateway NFS backend has a number of limitations which will seriously affect applications writing to the share. Please consult the "])),(t()(),s["ɵeld"](2,0,null,null,1,"cd-doc",[["section","rgw-nfs"]],null,null,null,ei.b,ei.a)),s["ɵdid"](3,114688,null,0,ni.a,[Tt.a,fe.a],{section:[0,"section"]},null),(t()(),s["ɵted"](-1,null,[" for details before enabling write access."]))],(function(t,e){t(e,3,0,"rgw-nfs")}),null)}function tm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function em(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["Loading..."]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function nm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["-- No squash available --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function am(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[["value",""]],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](-1,null,["--Select what kind of user id squashing is performed --"]))],(function(t,e){t(e,1,0,""),t(e,2,0,"")}),null)}function rm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,["",""]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function im(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function sm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function um(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Xs.a,[]),s["ɵqud"](402653184,1,{nfsClients:0}),(t()(),s["ɵeld"](3,0,null,null,189,"div",[["class","cd-col-form"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,188,"form",[["name","nfsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,6).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,6).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,9).onSubmit()&&a),a}),null,null)),s["ɵdid"](5,16384,null,0,K.G,[],null,null),s["ɵdid"](6,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](8,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](9,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](10,0,null,null,182,"div",[["class","card"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,3,"div",[["class","card-header"]],null,null,null,null,null)),(t()(),s["ɵted"](12,null,[""," ",""])),s["ɵppd"](13,1),s["ɵppd"](14,1),(t()(),s["ɵeld"](15,0,null,null,168,"div",[["class","card-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,eb)),s["ɵdid"](17,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ob)),s["ɵdid"](19,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](20,0,null,null,34,"div",[["formGroupName","fsal"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],null,null,null,null)),s["ɵdid"](21,212992,null,0,K.m,[[3,K.d],[8,null],[8,null]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.d,null,[K.m]),s["ɵdid"](23,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](24,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](25,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,6,{FormControlNames:1}),s["ɵqud"](603979776,7,{messagesBlock:0}),(t()(),s["ɵeld"](28,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","name"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Storage Backend"])),(t()(),s["ɵeld"](30,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](31,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","name"],["id","name"],["name","name"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,32).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,32).onTouched()&&a),"change"===e&&(a=!1!==r.fsalChangeHandler()&&a),a}),null,null)),s["ɵdid"](32,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](34,671744,[[6,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](36,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](37,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](38,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,lb)),s["ɵdid"](40,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,db)),s["ɵdid"](42,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,cb)),s["ɵdid"](44,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,fb)),s["ɵdid"](46,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,hb)),s["ɵdid"](48,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,vb)),s["ɵdid"](50,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Sb)),s["ɵdid"](52,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,kb)),s["ɵdid"](54,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Db)),s["ɵdid"](56,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,jb)),s["ɵdid"](58,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bb)),s["ɵdid"](60,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](61,0,null,null,30,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](62,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,20,{FormControlNames:1}),s["ɵqud"](603979776,21,{messagesBlock:0}),(t()(),s["ɵeld"](65,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","protocols"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFS Protocol"])),(t()(),s["ɵeld"](67,0,null,0,24,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](68,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](69,0,null,null,7,"input",[["class","custom-control-input"],["disabled",""],["formControlName","protocolNfsv3"],["id","protocolNfsv3"],["name","protocolNfsv3"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,70).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,70).onTouched()&&a),a}),null,null)),s["ɵdid"](70,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](72,671744,[[20,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"],isDisabled:[1,"isDisabled"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](74,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](75,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](76,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](77,0,null,null,1,"label",[["class","custom-control-label"],["for","protocolNfsv3"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFSv3"])),(t()(),s["ɵeld"](79,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](80,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","protocolNfsv4"],["id","protocolNfsv4"],["name","protocolNfsv4"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,81).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,81).onTouched()&&a),a}),null,null)),s["ɵdid"](81,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](83,671744,[[20,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](85,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](86,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](87,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](88,0,null,null,1,"label",[["class","custom-control-label"],["for","protocolNfsv4"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["NFSv4"])),(t()(),s["ɵand"](16777216,null,null,1,null,zb)),s["ɵdid"](91,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yb)),s["ɵdid"](93,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Wb)),s["ɵdid"](95,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](96,0,null,null,28,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](97,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,26,{FormControlNames:1}),s["ɵqud"](603979776,27,{messagesBlock:0}),(t()(),s["ɵeld"](100,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","access_type"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Access Type"])),(t()(),s["ɵeld"](102,0,null,0,22,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](103,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","access_type"],["id","access_type"],["name","access_type"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,104).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,104).onTouched()&&a),"change"===e&&(a=!1!==r.accessTypeChangeHandler()&&a),a}),null,null)),s["ɵdid"](104,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](106,671744,[[26,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](108,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](109,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](110,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Kb)),s["ɵdid"](112,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,$b)),s["ɵdid"](114,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Zb)),s["ɵdid"](116,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Jb)),s["ɵdid"](118,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Qb)),s["ɵdid"](120,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Xb)),s["ɵdid"](122,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tm)),s["ɵdid"](124,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](125,0,null,null,24,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](126,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,28,{FormControlNames:1}),s["ɵqud"](603979776,29,{messagesBlock:0}),(t()(),s["ɵeld"](129,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","squash"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Squash"])),(t()(),s["ɵeld"](131,0,null,0,18,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](132,0,null,null,15,"select",[["class","form-control custom-select"],["formControlName","squash"],["id","squash"],["name","squash"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,133).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,133).onTouched()&&a),a}),null,null)),s["ɵdid"](133,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](135,671744,[[28,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](137,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](138,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](139,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,em)),s["ɵdid"](141,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,nm)),s["ɵdid"](143,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,am)),s["ɵdid"](145,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rm)),s["ɵdid"](147,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,im)),s["ɵdid"](149,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](150,0,null,null,31,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](151,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,30,{FormControlNames:1}),s["ɵqud"](603979776,31,{messagesBlock:0}),(t()(),s["ɵeld"](154,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","transports"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Transport Protocol"])),(t()(),s["ɵeld"](156,0,null,0,25,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](157,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](158,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","transportUDP"],["id","transportUDP"],["name","transportUDP"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,159).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,159).onTouched()&&a),a}),null,null)),s["ɵdid"](159,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](161,671744,[[30,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](163,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](164,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](165,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](166,0,null,null,1,"label",[["class","custom-control-label"],["for","transportUDP"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["UDP"])),(t()(),s["ɵeld"](168,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](169,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","transportTCP"],["id","transportTCP"],["name","transportTCP"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,170).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,170).onTouched()&&a),a}),null,null)),s["ɵdid"](170,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](172,671744,[[30,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](174,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](175,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](176,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](177,0,null,null,1,"label",[["class","custom-control-label"],["for","transportTCP"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["TCP"])),(t()(),s["ɵand"](16777216,null,null,1,null,sm)),s["ɵdid"](180,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](181,0,null,null,0,"hr",[],null,null,null,null,null)),(t()(),s["ɵeld"](182,0,null,null,1,"cd-nfs-form-client",[],null,null,null,Hp,qp)),s["ɵdid"](183,49152,[[1,4],["nfsClients",4]],0,Mp,[Op,fe.a],{form:[0,"form"]},null),(t()(),s["ɵeld"](184,0,null,null,8,"div",[["class","card-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](185,0,null,null,7,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵeld"](186,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),$s.b,$s.a)),s["ɵdid"](187,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](188,0,[""," ",""])),s["ɵppd"](189,1),s["ɵppd"](190,1),(t()(),s["ɵeld"](191,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](192,49152,null,0,Qs.a,[i.Location,St.b],null,null)],(function(t,e){var n=e.component;t(e,6,0,n.nfsForm),t(e,9,0,n.nfsForm),t(e,17,0,!n.isDefaultCluster),t(e,19,0,n.clusterType),t(e,21,0,"fsal"),t(e,25,0),t(e,34,0,"name"),t(e,38,0,"name"),t(e,40,0,null===n.allFsals),t(e,42,0,null!==n.allFsals&&0===n.allFsals.length),t(e,44,0,null!==n.allFsals&&n.allFsals.length>0),t(e,46,0,n.allFsals),t(e,48,0,n.nfsForm.showError("name",s["ɵnov"](e,6),"required")),t(e,50,0,"RGW"===n.nfsForm.getValue("name")),t(e,52,0,"CEPH"===n.nfsForm.getValue("name")),t(e,54,0,"CEPH"===n.nfsForm.getValue("name")),t(e,56,0,"CEPH"===n.nfsForm.getValue("name")),t(e,58,0,"CEPH"===n.nfsForm.getValue("name")),t(e,60,0,"RGW"===n.nfsForm.getValue("name")),t(e,62,0),t(e,72,0,"protocolNfsv3",""),t(e,76,0,"protocolNfsv3"),t(e,83,0,"protocolNfsv4"),t(e,87,0,"protocolNfsv4"),t(e,91,0,n.nfsForm.showError("protocolNfsv3",s["ɵnov"](e,6),"required")||n.nfsForm.showError("protocolNfsv4",s["ɵnov"](e,6),"required")),t(e,93,0,n.nfsForm.getValue("protocolNfsv3")),t(e,95,0,n.nfsForm.getValue("protocolNfsv4")),t(e,97,0),t(e,106,0,"access_type"),t(e,110,0,"access_type"),t(e,112,0,null===n.nfsAccessType),t(e,114,0,null!==n.nfsAccessType&&0===n.nfsAccessType.length),t(e,116,0,null!==n.nfsAccessType&&n.nfsAccessType.length>0),t(e,118,0,n.nfsAccessType),t(e,120,0,n.nfsForm.getValue("access_type")),t(e,122,0,"RW"===n.nfsForm.getValue("access_type")&&"RGW"===n.nfsForm.getValue("name")),t(e,124,0,n.nfsForm.showError("access_type",s["ɵnov"](e,6),"required")),t(e,126,0),t(e,135,0,"squash"),t(e,139,0,"squash"),t(e,141,0,null===n.nfsSquash),t(e,143,0,null!==n.nfsSquash&&0===n.nfsSquash.length),t(e,145,0,null!==n.nfsSquash&&n.nfsSquash.length>0),t(e,147,0,n.nfsSquash),t(e,149,0,n.nfsForm.showError("squash",s["ɵnov"](e,6),"required")),t(e,151,0),t(e,161,0,"transportUDP"),t(e,165,0,"transportUDP"),t(e,172,0,"transportTCP"),t(e,176,0,"transportTCP"),t(e,180,0,n.nfsForm.showError("transportUDP",s["ɵnov"](e,6),"required")||n.nfsForm.showError("transportTCP",s["ɵnov"](e,6),"required")),t(e,183,0,n.nfsForm),t(e,187,0,s["ɵnov"](e,6))}),(function(t,e){var n=e.component;t(e,4,0,s["ɵnov"](e,8).ngClassUntouched,s["ɵnov"](e,8).ngClassTouched,s["ɵnov"](e,8).ngClassPristine,s["ɵnov"](e,8).ngClassDirty,s["ɵnov"](e,8).ngClassValid,s["ɵnov"](e,8).ngClassInvalid,s["ɵnov"](e,8).ngClassPending);var a=s["ɵunv"](e,12,0,t(e,13,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,12,1,t(e,14,0,s["ɵnov"](e,1),n.resource));t(e,12,0,a,r),t(e,20,0,s["ɵnov"](e,23).ngClassUntouched,s["ɵnov"](e,23).ngClassTouched,s["ɵnov"](e,23).ngClassPristine,s["ɵnov"](e,23).ngClassDirty,s["ɵnov"](e,23).ngClassValid,s["ɵnov"](e,23).ngClassInvalid,s["ɵnov"](e,23).ngClassPending),t(e,24,0,s["ɵnov"](e,25).hasErrors,s["ɵnov"](e,25).hasSuccess),t(e,31,0,s["ɵnov"](e,36).ngClassUntouched,s["ɵnov"](e,36).ngClassTouched,s["ɵnov"](e,36).ngClassPristine,s["ɵnov"](e,36).ngClassDirty,s["ɵnov"](e,36).ngClassValid,s["ɵnov"](e,36).ngClassInvalid,s["ɵnov"](e,36).ngClassPending,s["ɵnov"](e,38).validClass,s["ɵnov"](e,38).invalidClass),t(e,61,0,s["ɵnov"](e,62).hasErrors,s["ɵnov"](e,62).hasSuccess),t(e,69,0,s["ɵnov"](e,74).ngClassUntouched,s["ɵnov"](e,74).ngClassTouched,s["ɵnov"](e,74).ngClassPristine,s["ɵnov"](e,74).ngClassDirty,s["ɵnov"](e,74).ngClassValid,s["ɵnov"](e,74).ngClassInvalid,s["ɵnov"](e,74).ngClassPending,s["ɵnov"](e,76).validClass,s["ɵnov"](e,76).invalidClass),t(e,80,0,s["ɵnov"](e,85).ngClassUntouched,s["ɵnov"](e,85).ngClassTouched,s["ɵnov"](e,85).ngClassPristine,s["ɵnov"](e,85).ngClassDirty,s["ɵnov"](e,85).ngClassValid,s["ɵnov"](e,85).ngClassInvalid,s["ɵnov"](e,85).ngClassPending,s["ɵnov"](e,87).validClass,s["ɵnov"](e,87).invalidClass),t(e,96,0,s["ɵnov"](e,97).hasErrors,s["ɵnov"](e,97).hasSuccess),t(e,103,0,s["ɵnov"](e,108).ngClassUntouched,s["ɵnov"](e,108).ngClassTouched,s["ɵnov"](e,108).ngClassPristine,s["ɵnov"](e,108).ngClassDirty,s["ɵnov"](e,108).ngClassValid,s["ɵnov"](e,108).ngClassInvalid,s["ɵnov"](e,108).ngClassPending,s["ɵnov"](e,110).validClass,s["ɵnov"](e,110).invalidClass),t(e,125,0,s["ɵnov"](e,126).hasErrors,s["ɵnov"](e,126).hasSuccess),t(e,132,0,s["ɵnov"](e,137).ngClassUntouched,s["ɵnov"](e,137).ngClassTouched,s["ɵnov"](e,137).ngClassPristine,s["ɵnov"](e,137).ngClassDirty,s["ɵnov"](e,137).ngClassValid,s["ɵnov"](e,137).ngClassInvalid,s["ɵnov"](e,137).ngClassPending,s["ɵnov"](e,139).validClass,s["ɵnov"](e,139).invalidClass),t(e,150,0,s["ɵnov"](e,151).hasErrors,s["ɵnov"](e,151).hasSuccess),t(e,158,0,s["ɵnov"](e,163).ngClassUntouched,s["ɵnov"](e,163).ngClassTouched,s["ɵnov"](e,163).ngClassPristine,s["ɵnov"](e,163).ngClassDirty,s["ɵnov"](e,163).ngClassValid,s["ɵnov"](e,163).ngClassInvalid,s["ɵnov"](e,163).ngClassPending,s["ɵnov"](e,165).validClass,s["ɵnov"](e,165).invalidClass),t(e,169,0,s["ɵnov"](e,174).ngClassUntouched,s["ɵnov"](e,174).ngClassTouched,s["ɵnov"](e,174).ngClassPristine,s["ɵnov"](e,174).ngClassDirty,s["ɵnov"](e,174).ngClassValid,s["ɵnov"](e,174).ngClassInvalid,s["ɵnov"](e,174).ngClassPending,s["ɵnov"](e,176).validClass,s["ɵnov"](e,176).invalidClass);var i=s["ɵunv"](e,188,0,t(e,189,0,s["ɵnov"](e,0),n.action)),u=s["ɵunv"](e,188,1,t(e,190,0,s["ɵnov"](e,1),n.resource));t(e,188,0,i,u)}))}function om(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-nfs-form",[],null,null,null,um,$p)),s["ɵdid"](1,114688,null,0,Kp,[J.a,Op,Et.a,Et.m,Up.a,no.a,Ds.a,s.ChangeDetectorRef,fe.a,St.b],null,null)],(function(t,e){t(e,1,0)}),null)}var lm=s["ɵccf"]("cd-nfs-form",Kp,om,{},{},[]);class dm{}var cm=s["ɵcrt"]({encapsulation:0,styles:[[".login{color:#fff;background-color:#374249;background-image:url(ceph_background.7c127240f022e7baf57d.gif);background-position:right bottom;background-repeat:no-repeat}  .login header{position:absolute;width:100vw}  .login header .navbar{padding:1rem 2rem}  .login header .navbar .dropdown-menu{margin-top:.2rem}  .login header .navbar .dropdown-menu li a:hover{background-color:#2b99a8}  .login section{display:inline-flex;width:100vw;min-height:100vh}"]],data:{}});function fm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,13,"main",[["class","login full-height"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,5,"header",[],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,4,"nav",[["class","navbar"]],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,0,"a",[["class","navbar-brand"]],null,null,null,null,null)),(t()(),s["ɵeld"](4,0,null,null,2,"div",[["class","form-inline"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"cd-language-selector",[],null,null,null,ht,ut)),s["ɵdid"](6,114688,null,0,it,[st.l,nt],null,null),(t()(),s["ɵeld"](7,0,null,null,6,"section",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,5,"div",[["class","container"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,4,"div",[["class","row full-height vertical-align"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,3,"div",[["class","col-sm-12 col-md-6 d-sm-block"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,0,"img",[["alt","Ceph"],["class","img-fluid mb-5"],["src","assets/Ceph_Logo_Standard_RGB_White_120411_fa.png"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),s["ɵdid"](13,212992,null,0,Et.r,[Et.b,s.ViewContainerRef,s.ComponentFactoryResolver,[8,null],s.ChangeDetectorRef],null,null)],(function(t,e){t(e,6,0),t(e,13,0)}),null)}function hm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-login-layout",[],null,null,null,fm,cm)),s["ɵdid"](1,49152,null,0,dm,[],null,null)],null,null)}var gm=s["ɵccf"]("cd-login-layout",dm,hm,{},{},[]);class pm{}class bm{constructor(t,e,n,a,r){this.authService=t,this.authStorageService=e,this.bsModalService=n,this.route=a,this.router=r,this.model=new pm,this.isLoginActive=!1}ngOnInit(){if(this.authStorageService.isLoggedIn())this.router.navigate([""]);else{const t=this.bsModalService.getModalsCount();for(let n=1;n<=t;n++)this.bsModalService.hide(n);let e=null;if(-1!==window.location.hash.indexOf("access_token=")){e=window.location.hash.split("access_token=")[1];const t=window.location.toString();window.history.replaceState({},document.title,t.split("?")[0])}this.authService.check(e).subscribe(t=>{t.login_url?"#/login"===t.login_url?this.isLoginActive=!0:window.location.replace(t.login_url):(this.authStorageService.set(t.username,t.permissions,t.sso,t.pwdExpirationDate),this.router.navigate([""]))})}}login(){this.authService.login(this.model).subscribe(()=>{const t=X.get(this.route.snapshot.queryParams,"returnUrl","/");this.router.navigate([t])})}}var mm=s["ɵcrt"]({encapsulation:0,styles:[["cd-login .form-group{border-left:4px solid #fff;background-color:#333e46;height:auto;margin-bottom:2rem}  cd-login .form-group:focus-within{border-left:4px solid #ef5c55}  cd-login .form-group .invalid-feedback{display:inline}  cd-login .btn-password,   cd-login .btn-password:focus,   cd-login .form-control,   cd-login .form-control:focus{border:none;outline:0;box-shadow:none;color:#fff;background-color:#333e46;filter:none}  cd-login .placeholder{color:#90949c}  cd-login .btn-password:focus{outline-color:#2b99a8}@keyframes autofill{to{color:#fff;background-color:#333e46}}input[_ngcontent-%COMP%]:-webkit-autofill{animation-name:autofill;animation-fill-mode:both;box-shadow:0 0 0 1000px #333e46 inset;-webkit-text-fill-color:#fff;transition-property:none;border-radius:0}"]],data:{}});function ym(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["class","invalid-feedback pl-4"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Username is required"]))],null,null)}function vm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"div",[["class","invalid-feedback pl-4"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Password is required"]))],null,null)}function xm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,49,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,48,"form",[["name","loginForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"ngSubmit"],[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0,r=t.component;return"submit"===e&&(a=!1!==s["ɵnov"](t,3).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,3).onReset()&&a),"ngSubmit"===e&&(a=!1!==r.login()&&a),a}),null,null)),s["ɵdid"](2,16384,null,0,K.G,[],null,null),s["ɵdid"](3,4210688,[["loginForm",4]],0,K.t,[[8,null],[8,null]],null,{ngSubmit:"ngSubmit"}),s["ɵprd"](2048,null,K.d,null,[K.t]),s["ɵdid"](5,16384,null,0,K.s,[[4,K.d]],null,null),(t()(),s["ɵeld"](6,0,null,null,18,"div",[["class","form-group has-feedback d-flex flex-column py-3"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](7,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](10,0,null,0,1,"label",[["class","placeholder pl-4"],["for","username"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Username"])),(t()(),s["ɵeld"](12,0,null,0,10,"input",[["aria-labelledby","username"],["autofocus",""],["class","form-control pl-4"],["id","username"],["name","username"],["required",""],["type","text"]],[[1,"aria-invalid",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,13)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,13).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,13)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,13)._compositionEnd(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.model.username=n)&&a),a}),null,null)),s["ɵdid"](13,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](14,16384,null,0,K.z,[],{required:[0,"required"]},null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[K.z]),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](17,671744,[["username",4]],0,K.u,[[2,K.d],[6,K.o],[8,null],[6,K.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](19,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](20,4210688,null,0,Ks.a,[s.ElementRef],{autofocus:[0,"autofocus"]},null),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,Q.h,[[3,K.d],Q.a],null,null),(t()(),s["ɵand"](16777216,null,0,1,null,ym)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](25,0,null,null,22,"div",[["class","form-group has-feedback"],["id","password-div"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](26,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](29,0,null,0,18,"div",[["class","input-group d-flex flex-nowrap"]],null,null,null,null,null)),(t()(),s["ɵeld"](30,0,null,null,14,"div",[["class","d-flex flex-column flex-grow-1 py-3"]],null,null,null,null,null)),(t()(),s["ɵeld"](31,0,null,null,1,"label",[["class","placeholder pl-4"],["for","password"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Password"])),(t()(),s["ɵeld"](33,0,null,null,9,"input",[["aria-labelledby","password"],["class","form-control pl-4"],["id","password"],["name","password"],["required",""],["type","password"]],[[1,"aria-invalid",0],[1,"required",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"ngModelChange"],[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0,r=t.component;return"input"===e&&(a=!1!==s["ɵnov"](t,34)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,34).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,34)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,34)._compositionEnd(n.target.value)&&a),"ngModelChange"===e&&(a=!1!==(r.model.password=n)&&a),a}),null,null)),s["ɵdid"](34,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](35,16384,null,0,K.z,[],{required:[0,"required"]},null),s["ɵprd"](1024,null,K.o,(function(t){return[t]}),[K.z]),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](38,671744,[["password",4]],0,K.u,[[2,K.d],[6,K.o],[8,null],[6,K.p]],{name:[0,"name"],model:[1,"model"]},{update:"ngModelChange"}),s["ɵprd"](2048,null,K.q,null,[K.u]),s["ɵdid"](40,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](41,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](42,16384,null,0,Q.h,[[3,K.d],Q.a],null,null),(t()(),s["ɵand"](16777216,null,null,1,null,vm)),s["ɵdid"](44,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](45,0,null,null,2,"span",[["class","form-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](46,0,null,null,1,"button",[["cdPasswordButton","password"],["class","btn btn-outline-light btn-password h-100 px-4"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,47).onClick()&&a),a}),null,null)),s["ɵdid"](47,81920,null,0,Qu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵeld"](48,0,null,null,1,"input",[["class","btn btn-secondary px-5 py-2"],["type","submit"],["value","Login"]],[[8,"disabled",0]],null,null,null,null)),s["ɵdid"](49,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null)],(function(t,e){var n=e.component;t(e,7,0),t(e,14,0,""),t(e,17,0,"username",n.model.username),t(e,20,0,""),t(e,24,0,(s["ɵnov"](e,3).submitted||s["ɵnov"](e,17).dirty)&&s["ɵnov"](e,17).invalid),t(e,26,0),t(e,35,0,""),t(e,38,0,"password",n.model.password),t(e,44,0,(s["ɵnov"](e,3).submitted||s["ɵnov"](e,38).dirty)&&s["ɵnov"](e,38).invalid),t(e,47,0,"password")}),(function(t,e){t(e,1,0,s["ɵnov"](e,5).ngClassUntouched,s["ɵnov"](e,5).ngClassTouched,s["ɵnov"](e,5).ngClassPristine,s["ɵnov"](e,5).ngClassDirty,s["ɵnov"](e,5).ngClassValid,s["ɵnov"](e,5).ngClassInvalid,s["ɵnov"](e,5).ngClassPending),t(e,6,0,s["ɵnov"](e,7).hasErrors,s["ɵnov"](e,7).hasSuccess),t(e,12,1,[s["ɵnov"](e,17).invalid,s["ɵnov"](e,14).required?"":null,s["ɵnov"](e,19).ngClassUntouched,s["ɵnov"](e,19).ngClassTouched,s["ɵnov"](e,19).ngClassPristine,s["ɵnov"](e,19).ngClassDirty,s["ɵnov"](e,19).ngClassValid,s["ɵnov"](e,19).ngClassInvalid,s["ɵnov"](e,19).ngClassPending,s["ɵnov"](e,22).validClass,s["ɵnov"](e,22).invalidClass]),t(e,25,0,s["ɵnov"](e,26).hasErrors,s["ɵnov"](e,26).hasSuccess),t(e,33,1,[s["ɵnov"](e,38).invalid,s["ɵnov"](e,35).required?"":null,s["ɵnov"](e,40).ngClassUntouched,s["ɵnov"](e,40).ngClassTouched,s["ɵnov"](e,40).ngClassPristine,s["ɵnov"](e,40).ngClassDirty,s["ɵnov"](e,40).ngClassValid,s["ɵnov"](e,40).ngClassInvalid,s["ɵnov"](e,40).ngClassPending,s["ɵnov"](e,42).validClass,s["ɵnov"](e,42).invalidClass]),t(e,48,0,s["ɵnov"](e,3).invalid)}))}function _m(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,xm)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,1,0,e.component.isLoginActive)}),null)}function Tm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-login",[],null,null,null,_m,mm)),s["ɵdid"](1,114688,null,0,bm,[Vt.a,J.a,Ct.b,Et.a,Et.m],null,null)],(function(t,e){t(e,1,0)}),null)}var wm=s["ɵccf"]("cd-login",bm,Tm,{},{},[]);class Om extends ep{constructor(t,e,n,a,r,i,s,u,o){super(t,e,n,a,r,i,s,u),this.i18n=t,this.actionLabels=e,this.notificationService=n,this.userService=a,this.authStorageService=r,this.formBuilder=i,this.router=s,this.passwordPolicyService=u,this.authService=o}onPasswordChange(){this.authService.logout()}onCancel(){this.authService.logout()}}var Sm=s["ɵcrt"]({encapsulation:0,styles:[["cd-login-password-form h4{margin:0 0 30px}  cd-login-password-form .btn-password,   cd-login-password-form .btn-password:focus,   cd-login-password-form .form-control,   cd-login-password-form .form-control:focus{color:#fff;background-color:#333e46}  cd-login-password-form .form-control::placeholder{color:#90949c}  cd-login-password-form .btn-password:focus{outline-color:#2b99a8}  cd-login-password-form button.btn:not(:first-child){margin-left:5px}"]],data:{}});function Im(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Nm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The old and new passwords must be different."]))],null,null)}function Cm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Rm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The old and new passwords must be different."]))],null,null)}function Am(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.component.passwordValuation)}))}function km(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function Em(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Password confirmation doesn't match the new password."]))],null,null)}function Lm(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Xs.a,[]),(t()(),s["ɵeld"](2,0,null,null,84,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"h2",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Please set a new password."])),(t()(),s["ɵeld"](5,0,null,null,1,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["You will be redirected to the login page afterwards."])),(t()(),s["ɵeld"](7,0,null,null,70,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,9).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,9).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,12).onSubmit()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,K.G,[],null,null),s["ɵdid"](9,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](11,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](12,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](13,0,null,null,20,"div",[["class","form-group has-feedback"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](14,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](17,0,null,0,12,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,8,"input",[["autocomplete","new-password"],["autofocus",""],["class","form-control"],["formControlName","oldpassword"],["id","oldpassword"],["placeholder","Old password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,19)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,19).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,19)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,19)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](19,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](21,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](23,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](24,4210688,null,0,Ks.a,[s.ElementRef],{autofocus:[0,"autofocus"]},null),s["ɵdid"](25,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](26,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](27,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,1,"button",[["cdPasswordButton","oldpassword"],["class","btn btn-outline-light btn-password"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,29).onClick()&&a),a}),null,null)),s["ɵdid"](29,81920,null,0,Qu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Im)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Nm)),s["ɵdid"](33,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](34,0,null,null,23,"div",[["class","form-group has-feedback"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](35,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](38,0,null,0,11,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](39,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","newpassword"],["id","newpassword"],["placeholder","New password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,40)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,40).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,40)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,40)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](40,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](42,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](44,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](45,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](46,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](47,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](48,0,null,null,1,"button",[["cdPasswordButton","newpassword"],["class","btn btn-outline-light btn-password"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,49).onClick()&&a),a}),null,null)),s["ɵdid"](49,81920,null,0,Qu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵeld"](50,0,null,0,1,"div",[["class","password-strength-level"]],null,null,null,null,null)),(t()(),s["ɵeld"](51,0,null,null,0,"div",[["data-toggle","tooltip"]],[[8,"className",0],[8,"title",0]],null,null,null,null)),(t()(),s["ɵand"](16777216,null,0,1,null,Cm)),s["ɵdid"](53,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Rm)),s["ɵdid"](55,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Am)),s["ɵdid"](57,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](58,0,null,null,19,"div",[["class","form-group has-feedback"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](59,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](62,0,null,0,11,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](63,0,null,null,7,"input",[["autocomplete","new-password"],["class","form-control"],["formControlName","confirmnewpassword"],["id","confirmnewpassword"],["placeholder","Confirm new password..."],["type","password"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,64)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,64).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,64)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,64)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](64,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](66,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](68,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](69,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](70,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](71,0,null,null,2,"span",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](72,0,null,null,1,"button",[["cdPasswordButton","confirmnewpassword"],["class","btn btn-outline-light btn-password"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,73).onClick()&&a),a}),null,null)),s["ɵdid"](73,81920,null,0,Qu.a,[s.ElementRef,s.Renderer2],{cdPasswordButton:[0,"cdPasswordButton"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,km)),s["ɵdid"](75,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,Em)),s["ɵdid"](77,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](78,0,null,null,8,"div",[["class","form-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](79,0,null,null,4,"cd-submit-button",[["btnClass","btn-block"],["class","full-width"]],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),$s.b,$s.a)),s["ɵdid"](80,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"],btnClass:[1,"btnClass"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](81,0,[" "," "," "])),s["ɵppd"](82,1),s["ɵppd"](83,1),(t()(),s["ɵeld"](84,0,null,null,2,"button",[["class","btn btn-light"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.onCancel()&&a),a}),null,null)),(t()(),s["ɵeld"](85,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cancel"]))],(function(t,e){var n=e.component;t(e,9,0,n.userForm),t(e,12,0,n.userForm),t(e,14,0),t(e,21,0,"oldpassword"),t(e,24,0,""),t(e,26,0,"oldpassword"),t(e,29,0,"oldpassword"),t(e,31,0,n.userForm.showError("oldpassword",s["ɵnov"](e,9),"required")),t(e,33,0,n.userForm.showError("oldpassword",s["ɵnov"](e,9),"notmatch")),t(e,35,0),t(e,42,0,"newpassword"),t(e,46,0,"newpassword"),t(e,49,0,"newpassword"),t(e,53,0,n.userForm.showError("newpassword",s["ɵnov"](e,9),"required")),t(e,55,0,n.userForm.showError("newpassword",s["ɵnov"](e,9),"notmatch")),t(e,57,0,n.userForm.showError("newpassword",s["ɵnov"](e,9),"passwordPolicy")),t(e,59,0),t(e,66,0,"confirmnewpassword"),t(e,70,0,"confirmnewpassword"),t(e,73,0,"confirmnewpassword"),t(e,75,0,n.userForm.showError("confirmnewpassword",s["ɵnov"](e,9),"required")),t(e,77,0,n.userForm.showError("confirmnewpassword",s["ɵnov"](e,9),"match")),t(e,80,0,n.userForm,"btn-block")}),(function(t,e){var n=e.component;t(e,7,0,s["ɵnov"](e,11).ngClassUntouched,s["ɵnov"](e,11).ngClassTouched,s["ɵnov"](e,11).ngClassPristine,s["ɵnov"](e,11).ngClassDirty,s["ɵnov"](e,11).ngClassValid,s["ɵnov"](e,11).ngClassInvalid,s["ɵnov"](e,11).ngClassPending),t(e,13,0,s["ɵnov"](e,14).hasErrors,s["ɵnov"](e,14).hasSuccess),t(e,18,0,s["ɵnov"](e,23).ngClassUntouched,s["ɵnov"](e,23).ngClassTouched,s["ɵnov"](e,23).ngClassPristine,s["ɵnov"](e,23).ngClassDirty,s["ɵnov"](e,23).ngClassValid,s["ɵnov"](e,23).ngClassInvalid,s["ɵnov"](e,23).ngClassPending,s["ɵnov"](e,26).validClass,s["ɵnov"](e,26).invalidClass),t(e,34,0,s["ɵnov"](e,35).hasErrors,s["ɵnov"](e,35).hasSuccess),t(e,39,0,s["ɵnov"](e,44).ngClassUntouched,s["ɵnov"](e,44).ngClassTouched,s["ɵnov"](e,44).ngClassPristine,s["ɵnov"](e,44).ngClassDirty,s["ɵnov"](e,44).ngClassValid,s["ɵnov"](e,44).ngClassInvalid,s["ɵnov"](e,44).ngClassPending,s["ɵnov"](e,46).validClass,s["ɵnov"](e,46).invalidClass),t(e,51,0,s["ɵinlineInterpolate"](1,"",n.passwordStrengthLevelClass,""),s["ɵinlineInterpolate"](1,"",n.passwordValuation,"")),t(e,58,0,s["ɵnov"](e,59).hasErrors,s["ɵnov"](e,59).hasSuccess),t(e,63,0,s["ɵnov"](e,68).ngClassUntouched,s["ɵnov"](e,68).ngClassTouched,s["ɵnov"](e,68).ngClassPristine,s["ɵnov"](e,68).ngClassDirty,s["ɵnov"](e,68).ngClassValid,s["ɵnov"](e,68).ngClassInvalid,s["ɵnov"](e,68).ngClassPending,s["ɵnov"](e,70).validClass,s["ɵnov"](e,70).invalidClass);var a=s["ɵunv"](e,81,0,t(e,82,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,81,1,t(e,83,0,s["ɵnov"](e,1),n.resource));t(e,81,0,a,r)}))}function Dm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-login-password-form",[],null,null,null,Lm,Sm)),s["ɵdid"](1,49152,null,0,Om,[fe.a,St.b,bt.a,Ot.a,J.a,no.a,Et.m,tp.a,Vt.a],null,null)],null,null)}var Pm=s["ɵccf"]("cd-login-password-form",Om,Dm,{},{},[]);class Mm{constructor(){}}var qm=s["ɵcrt"]({encapsulation:0,styles:[["#toast-container{margin-top:2vw}@media (max-width:1600px){  #toast-container{margin-top:2.5vw}}@media (max-width:calc(992px - 1px)){  #toast-container{margin-top:9vw}}@media (max-width:900px){  #toast-container{margin-top:10vw}}@media (max-width:319px){  #toast-container{margin-top:11vw}}@media (max-width:260px){  #toast-container{margin-top:14vw}}"]],data:{}});function jm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),s["ɵdid"](1,212992,null,0,Et.r,[Et.b,s.ViewContainerRef,s.ComponentFactoryResolver,[8,null],s.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}function Fm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-blank-layout",[],null,null,null,jm,qm)),s["ɵdid"](1,49152,null,0,Mm,[],null,null)],null,null)}var Vm=s["ɵccf"]("cd-blank-layout",Mm,Fm,{},{},[]);class Gm{constructor(){this.logoutUrl=window.location.origin+"/auth/saml2/slo"}}var Bm=s["ɵcrt"]({encapsulation:0,styles:[["h1[_ngcontent-%COMP%]{font-size:-webkit-xxx-large}*[_ngcontent-%COMP%]{font-family:monospace}img[_ngcontent-%COMP%]{width:50vw}"]],data:{}});function zm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","vertical-align full-height"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,16,"div",[["class","col-md-12 text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"h1",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Sorry, the user does not exist in Ceph."])),(t()(),s["ɵeld"](4,0,null,null,4,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Return to "])),(t()(),s["ɵeld"](6,0,null,null,1,"a",[["class","sso-logout"]],[[8,"href",4]],null,null,null,null)),(t()(),s["ɵted"](-1,null,["Login Page"])),(t()(),s["ɵted"](-1,null,[". You'll be logged out from the Identity Provider when you retry logging in."])),(t()(),s["ɵeld"](9,0,null,null,0,"img",[["class","img-fluid mx-auto rounded"],["src","assets/1280px-Nautilus_Octopus.jpg"]],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[' "'])),(t()(),s["ɵeld"](13,0,null,null,1,"a",[["href","https://www.flickr.com/photos/146401137@N06/40335060661"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Nautilus Octopus"])),(t()(),s["ɵted"](-1,null,['" by Jin Kemoole is licensed under '])),(t()(),s["ɵeld"](16,0,null,null,1,"a",[["class","external text"],["href","https://creativecommons.org/licenses/by/2.0/"],["rel","nofollow"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CC BY 2.0"]))],null,(function(t,e){t(e,6,0,e.component.logoutUrl)}))}function Ym(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-sso-not-found",[],null,null,null,zm,Bm)),s["ɵdid"](1,49152,null,0,Gm,[],null,null)],null,null)}var Hm=s["ɵccf"]("cd-sso-not-found",Gm,Ym,{},{},[]);class Um{constructor(){this.icons=pt.a}}var Wm=s["ɵcrt"]({encapsulation:0,styles:[["h1[_ngcontent-%COMP%]{font-size:-webkit-xxx-large;font-family:monospace}h2[_ngcontent-%COMP%]{font-size:xx-large;font-family:monospace}i[_ngcontent-%COMP%]{font-size:200px}"]],data:{}});function Km(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"div",[["class","horizontal-align vertical-align full-height"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,9,"div",[["class","text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"h1",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Forbidden"])),(t()(),s["ɵeld"](4,0,null,null,0,"i",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"h2",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Sorry, you are not allowed to see what you were looking for."])),(t()(),s["ɵeld"](7,0,null,null,3,"button",[["class","btn btn-primary"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,8).onClick()&&a),a}),null,null)),s["ɵdid"](8,16384,null,0,Et.n,[Et.m,Et.a,[8,null],s.Renderer2,s.ElementRef],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](9,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Back"]))],(function(t,e){t(e,8,0,"/login")}),(function(t,e){t(e,4,0,s["ɵinlineInterpolate"](1,"",e.component.icons.lock," text-danger"))}))}function $m(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-forbidden",[],null,null,null,Km,Wm)),s["ɵdid"](1,49152,null,0,Um,[],null,null)],null,null)}var Zm=s["ɵccf"]("cd-forbidden",Um,$m,{},{},[]);class Jm{constructor(){}}var Qm=s["ɵcrt"]({encapsulation:0,styles:[["h1[_ngcontent-%COMP%]{font-size:-webkit-xxx-large;font-family:monospace}*[_ngcontent-%COMP%]{font-family:monospace}img[_ngcontent-%COMP%]{width:50vw}"]],data:{}});function Xm(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,17,"div",[["class","horizontal-align vertical-align full-height"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,16,"div",[["class","text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,1,"h1",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Sorry, we could not find what you were looking for."])),(t()(),s["ɵeld"](4,0,null,null,0,"img",[["class","img-fluid mx-auto rounded"],["src","assets/1500px-Southern_Keeled_Octopus.jpg"]],null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,6,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,[' "'])),(t()(),s["ɵeld"](8,0,null,null,1,"a",[["href","https://collections.museumvictoria.com.au/species/8696"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Southern Keeled Octopus, Octopus berrima"])),(t()(),s["ɵted"](-1,null,['" by Museums Victoria (Photographer: Julian Finn) is licensed under '])),(t()(),s["ɵeld"](11,0,null,null,1,"a",[["class","external text"],["href","https://creativecommons.org/licenses/by/4.0"],["rel","nofollow"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["CC BY 4.0"])),(t()(),s["ɵeld"](13,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,3,"button",[["class","btn btn-primary"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==s["ɵnov"](t,15).onClick()&&a),a}),null,null)),s["ɵdid"](15,16384,null,0,Et.n,[Et.m,Et.a,[8,null],s.Renderer2,s.ElementRef],{routerLink:[0,"routerLink"]},null),(t()(),s["ɵeld"](16,0,null,null,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Back"]))],(function(t,e){t(e,15,0,"/login")}),null)}function ty(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-not-found",[],null,null,null,Xm,Qm)),s["ɵdid"](1,49152,null,0,Jm,[],null,null)],null,null)}var ey=s["ɵccf"]("cd-not-found",Jm,ty,{},{},[]),ny=n("ES0t"),ay=n("Xg1U"),ry=n("z5nN"),iy=n("iutN"),sy=n("EEJc"),uy=n("PEr+"),oy=n("a40w"),ly=n("hfeG"),dy=n("atuK"),cy=s["ɵcrt"]({encapsulation:0,styles:[[".about-container[_ngcontent-%COMP%]{background-color:#374249;background-image:url(ceph_background.7c127240f022e7baf57d.gif);background-position:right bottom;background-repeat:no-repeat;color:#fff;text-shadow:1px 1px #374249}.product-versions[_ngcontent-%COMP%]{margin-top:30px}.product-versions[_ngcontent-%COMP%]   strong[_ngcontent-%COMP%]{margin-right:10px}.modal-header[_ngcontent-%COMP%]{border-bottom:none}.modal-header[_ngcontent-%COMP%]   .close[_ngcontent-%COMP%]{color:#fff;font-size:2em}.modal-body[_ngcontent-%COMP%]{padding-left:80px;padding-right:80px}.ceph-logo[_ngcontent-%COMP%]{width:25%;margin-bottom:30px;object-position:-20px 0}.modal-footer[_ngcontent-%COMP%]{display:block;border-top:none;padding:15px 80px 35px}"]],data:{}});function fy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,45,"div",[["class","about-container"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"div",[["class","modal-header"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,2,"button",[["aria-label","Close"],["class","close float-right"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.modalRef.hide()&&a),a}),null,null)),(t()(),s["ɵeld"](3,0,null,null,1,"span",[["aria-hidden","true"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["×"])),(t()(),s["ɵeld"](5,0,null,null,37,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,0,"img",[["class","ceph-logo"],["src","assets/Ceph_Logo_Standard_RGB_Reversed_120411_fa.png"]],[[8,"alt",0]],null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,2,"h3",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](9,null,["",""])),(t()(),s["ɵeld"](10,0,null,null,6,"div",[["class","product-versions"]],null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Version"])),(t()(),s["ɵeld"](13,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵted"](14,null,[" "," "," "])),(t()(),s["ɵeld"](15,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵted"](16,null,[" "," "])),(t()(),s["ɵeld"](17,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,24,"dl",[],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Ceph Manager"])),(t()(),s["ɵeld"](21,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](22,null,["",""])),(t()(),s["ɵeld"](23,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["User"])),(t()(),s["ɵeld"](25,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](26,null,["",""])),(t()(),s["ɵeld"](27,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["User Role"])),(t()(),s["ɵeld"](29,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](30,null,["",""])),(t()(),s["ɵeld"](31,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Browser"])),(t()(),s["ɵeld"](33,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](34,null,["",""])),(t()(),s["ɵeld"](35,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Browser Version"])),(t()(),s["ɵeld"](37,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](38,null,["",""])),(t()(),s["ɵeld"](39,0,null,null,1,"dt",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Browser OS"])),(t()(),s["ɵeld"](41,0,null,null,1,"dd",[],null,null,null,null,null)),(t()(),s["ɵted"](42,null,["",""])),(t()(),s["ɵeld"](43,0,null,null,2,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](44,0,null,null,1,"div",[["class","text-left"]],null,null,null,null,null)),(t()(),s["ɵted"](45,null,[" "," "," "]))],null,(function(t,e){var n=e.component;t(e,6,0,s["ɵinlineInterpolate"](1,"",n.projectConstants.organization,"")),t(e,9,0,n.projectConstants.projectName),t(e,14,0,n.versionNumber,n.versionHash),t(e,16,0,n.versionName),t(e,22,0,n.hostAddr),t(e,26,0,n.modalVariables.user),t(e,30,0,n.modalVariables.role),t(e,34,0,n.modalVariables.browserName),t(e,38,0,n.modalVariables.browserVersion),t(e,42,0,n.modalVariables.browserOS),t(e,45,0,n.copyright,n.projectConstants.license)}))}function hy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-about",[],null,null,null,fy,cy)),s["ɵdid"](1,245760,null,0,It,[Ct.a,mt.a,Ot.a,J.a],null,null)],(function(t,e){t(e,1,0)}),null)}var gy=s["ɵccf"]("cd-about",It,hy,{},{},[]),py=s["ɵcrt"]({encapsulation:0,styles:[".dropdown[_nghost-%COMP%] {\n      z-index: 1000;\n    }\n\n    .dropdown-menu[_nghost-%COMP%], .dropdown-menu[_ngcontent-%COMP%] {\n      overflow-y: auto;\n      height: 100px;\n    }"],data:{animation:[{type:7,name:"typeaheadAnimation",definitions:[{type:0,name:"animated-down",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-down",animation:[{type:6,styles:{height:0,overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:0,name:"animated-up",styles:{type:6,styles:{height:"*",overflow:"hidden"},offset:null},options:void 0},{type:1,expr:"* => animated-up",animation:[{type:6,styles:{height:"*",overflow:"hidden"},offset:null},{type:4,styles:null,timings:"220ms cubic-bezier(0, 0, 0.2, 1)"}],options:null},{type:1,expr:"* => unanimated",animation:{type:4,styles:null,timings:"0s"},options:null}],options:{}}]}});function by(t){return s["ɵvid"](0,[(t()(),s["ɵand"](0,null,null,0))],null,null)}function my(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"span",[],[[8,"innerHTML",1]],null,null,null,null))],null,(function(t,e){t(e,0,0,e.component.highlight(e.context.match,e.context.query))}))}function yy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,[[2,0],["liElements",1]],null,1,"li",[["class","dropdown-header"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit)}))}function vy(t){return s["ɵvid"](0,[(t()(),s["ɵand"](0,null,null,0))],null,null)}function xy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,[[2,0],["liElements",1]],null,4,"li",[],[[24,"@typeaheadAnimation",0],[2,"active",null]],[[null,"mouseenter"]],(function(t,e,n){var a=!0;return"mouseenter"===e&&(a=!1!==t.component.selectActive(t.parent.context.$implicit)&&a),a}),null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"a",[["href","#"],["tabindex","-1"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.selectMatch(t.parent.context.$implicit,n)&&a),a}),null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,vy)),s["ɵdid"](3,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),s["ɵpod"](4,{item:0,index:1,match:2,query:3})],(function(t,e){var n=e.component,a=t(e,4,0,e.parent.context.$implicit.item,e.parent.context.index,e.parent.context.$implicit,n.query);t(e,3,0,a,n.itemTemplate||s["ɵnov"](e.parent.parent.parent,5))}),(function(t,e){var n=e.component;t(e,0,0,n.animationState,n.isActive(e.parent.context.$implicit))}))}function _y(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,yy)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,xy)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.context.$implicit.isHeader();t(e,1,0,n);var a=!e.context.$implicit.isHeader();t(e,3,0,a)}),null)}function Ty(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,[[1,0],["ulElement",1]],null,2,"ul",[["class","dropdown-menu"]],[[4,"overflow-y",null],[4,"height",null]],null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,_y)),s["ɵdid"](2,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){t(e,2,0,e.component.matches)}),(function(t,e){var n=e.component;t(e,0,0,n.needScrollbar?"scroll":"auto",n.needScrollbar?n.guiHeight:"auto")}))}function wy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"h6",[["class","dropdown-header"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit)}))}function Oy(t){return s["ɵvid"](0,[(t()(),s["ɵand"](0,null,null,0))],null,null)}function Sy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,[[2,0],["liElements",1]],null,3,"button",[["class","dropdown-item"]],[[24,"@typeaheadAnimation",0],[2,"active",null]],[[null,"click"],[null,"mouseenter"]],(function(t,e,n){var a=!0,r=t.component;return"click"===e&&(a=!1!==r.selectMatch(t.parent.context.$implicit,n)&&a),"mouseenter"===e&&(a=!1!==r.selectActive(t.parent.context.$implicit)&&a),a}),null,null)),(t()(),s["ɵand"](16777216,null,null,2,null,Oy)),s["ɵdid"](2,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),s["ɵpod"](3,{item:0,index:1,match:2,query:3})],(function(t,e){var n=e.component,a=t(e,3,0,e.parent.context.$implicit.item,e.parent.context.index,e.parent.context.$implicit,n.query);t(e,2,0,a,n.itemTemplate||s["ɵnov"](e.parent.parent.parent,5))}),(function(t,e){var n=e.component;t(e,0,0,n.animationState,n.isActive(e.parent.context.$implicit))}))}function Iy(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,wy)),s["ɵdid"](1,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Sy)),s["ɵdid"](3,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){var n=e.context.$implicit.isHeader();t(e,1,0,n);var a=!e.context.$implicit.isHeader();t(e,3,0,a)}),null)}function Ny(t){return s["ɵvid"](0,[(t()(),s["ɵand"](16777216,null,null,1,null,Iy)),s["ɵdid"](1,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](0,null,null,0))],(function(t,e){t(e,1,0,e.component.matches)}),null)}function Cy(t){return s["ɵvid"](0,[s["ɵqud"](671088640,1,{ulElement:0}),s["ɵqud"](671088640,2,{liElements:1}),(t()(),s["ɵand"](16777216,null,null,2,null,by)),s["ɵdid"](3,540672,null,0,i.NgTemplateOutlet,[s.ViewContainerRef],{ngTemplateOutletContext:[0,"ngTemplateOutletContext"],ngTemplateOutlet:[1,"ngTemplateOutlet"]},null),s["ɵpod"](4,{matches:0,itemTemplate:1,query:2}),(t()(),s["ɵand"](0,[["bsItemTemplate",2]],null,0,null,my)),(t()(),s["ɵand"](0,[["bs3Template",2]],null,0,null,Ty)),(t()(),s["ɵand"](0,[["bs4Template",2]],null,0,null,Ny))],(function(t,e){var n=e.component,a=t(e,4,0,n.matches,n.itemTemplate,n.query);t(e,3,0,a,n.optionsListTemplate||s["ɵnov"](e,n.isBs4?7:6))}),null)}function Ry(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"typeahead-container",[["class","dropdown open bottom"],["style","position: absolute;display: block;"]],[[2,"dropdown-menu",null],[4,"height",null],[4,"visibility",null],[2,"dropup",null]],[[null,"mouseleave"],[null,"blur"]],(function(t,e,n){var a=!0;return"mouseleave"===e&&(a=!1!==s["ɵnov"](t,1).focusLost()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,1).focusLost()&&a),a}),Cy,py)),s["ɵdid"](1,180224,null,0,Yu,[Na.a,s.Renderer2,s.ElementRef,s.ChangeDetectorRef],null,null)],null,(function(t,e){t(e,0,0,s["ɵnov"](e,1).isBs4,s["ɵnov"](e,1).isBs4&&s["ɵnov"](e,1).needScrollbar?s["ɵnov"](e,1).guiHeight:"auto","inherit",s["ɵnov"](e,1).dropup)}))}var Ay=s["ɵccf"]("typeahead-container",Yu,Ry,{},{},[]),ky=n("ajRT"),Ey=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Ly(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["Deep "]))],null,null)}function Dy(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["deep "]))],null,null)}function Py(t){return s["ɵvid"](0,[s["ɵpid"](0,Zo.a,[]),(t()(),s["ɵeld"](1,0,null,null,33,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](2,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](3,0,null,0,6,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["OSDs "])),(t()(),s["ɵeld"](5,0,null,null,3,null,null,null,null,null,null,null)),s["ɵdid"](6,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ly)),s["ɵdid"](8,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵted"](-1,null,["Scrub"])),(t()(),s["ɵeld"](10,0,null,1,24,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,23,"form",[["name","scrubForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,13).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,13).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,16).onSubmit()&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,K.G,[],null,null),s["ɵdid"](13,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](15,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](16,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](17,0,null,null,11,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](18,0,null,null,10,"p",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["You are about to apply a "])),(t()(),s["ɵeld"](20,0,null,null,3,null,null,null,null,null,null,null)),s["ɵdid"](21,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Dy)),s["ɵdid"](23,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵted"](-1,null,["scrub to the OSD(s): "])),(t()(),s["ɵeld"](25,0,null,null,2,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](26,null,["",""])),s["ɵppd"](27,1),(t()(),s["ɵted"](-1,null,["."])),(t()(),s["ɵeld"](29,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](30,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.scrub()&&a),a}),$s.b,$s.a)),s["ɵdid"](31,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Submit"])),(t()(),s["ɵeld"](33,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Js.b,Js.a)),s["ɵdid"](34,49152,null,0,Qs.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.bsModalRef),t(e,6,0,n.deep),t(e,8,0,"1"),t(e,13,0,n.scrubForm),t(e,16,0,n.scrubForm),t(e,21,0,n.deep),t(e,23,0,"1"),t(e,31,0,n.scrubForm),t(e,34,0,"Cancel",n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,11,0,s["ɵnov"](e,15).ngClassUntouched,s["ɵnov"](e,15).ngClassTouched,s["ɵnov"](e,15).ngClassPristine,s["ɵnov"](e,15).ngClassDirty,s["ɵnov"](e,15).ngClassValid,s["ɵnov"](e,15).ngClassInvalid,s["ɵnov"](e,15).ngClassPending);var a=s["ɵunv"](e,26,0,t(e,27,0,s["ɵnov"](e,0),n.selected));t(e,26,0,a)}))}function My(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-scrub-modal",[],null,null,null,Py,Ey)),s["ɵdid"](1,114688,null,0,Cl,[Ct.a,Pi,bt.a,fe.a,Zo.a],null,null)],(function(t,e){t(e,1,0)}),null)}var qy=s["ɵccf"]("cd-osd-scrub-modal",Cl,My,{},{},[]),jy=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Fy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"hr",[["class","m-1"]],null,null,null,null,null))],null,null)}function Vy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,11,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"checked",0],[8,"name",0],[8,"id",0],[8,"disabled",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=0!=(t.context.$implicit.value=!t.context.$implicit.value)&&a),a}),null,null)),s["ɵdid"](2,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](3,16384,null,0,Q.h,[[3,K.d],Q.a],null,null),(t()(),s["ɵeld"](4,0,null,null,5,"label",[["class","custom-control-label"],["ng-class","['tc_' + key]"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵeld"](7,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Fy)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,11,0,!e.context.last)}),(function(t,e){t(e,1,0,e.context.$implicit.value,e.context.$implicit.code,e.context.$implicit.code,e.context.$implicit.disabled,s["ɵnov"](e,3).validClass,s["ɵnov"](e,3).invalidClass),t(e,4,0,e.context.$implicit.code),t(e,6,0,e.context.$implicit.name),t(e,9,0,e.context.$implicit.description)}))}function Gy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),$s.b,$s.a)),s["ɵdid"](1,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Submit"]))],(function(t,e){t(e,1,0,e.component.osdFlagsForm)}),null)}function By(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,20,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](1,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster-wide OSD Flags"])),(t()(),s["ɵeld"](4,0,null,1,16,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,15,"form",[["cdFormScope","osd"],["name","osdFlagsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,8).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,11).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,Z.a,[],{cdFormScope:[0,"cdFormScope"]},null),s["ɵdid"](7,16384,null,0,K.G,[],null,null),s["ɵdid"](8,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](10,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](11,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](12,0,null,null,2,"div",[["class","modal-body osd-modal"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Vy)),s["ɵdid"](14,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](15,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](16,0,null,null,4,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Gy)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](19,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Js.b,Js.a)),s["ɵdid"](20,49152,null,0,Qs.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,6,0,"osd"),t(e,8,0,n.osdFlagsForm),t(e,11,0,n.osdFlagsForm),t(e,14,0,n.flags),t(e,18,0,n.permissions.osd.update),t(e,20,0,"Cancel",n.bsModalRef.hide)}),(function(t,e){t(e,5,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending)}))}function zy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-flags-modal",[],null,null,null,By,jy)),s["ɵdid"](1,114688,null,0,xl,[Ct.a,J.a,Pi,bt.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Yy=s["ɵccf"]("cd-osd-flags-modal",xl,zy,{},{},[]),Hy=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Uy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-hdd ml-2"]],[[8,"title",0]],null,null,null,null)),(t()(),s["ɵted"](-1,null,["Cluster-wide"]))],null,(function(t,e){t(e,0,0,e.component.clusterWideTooltip)}))}function Wy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"hr",[["class","m-1"]],null,null,null,null,null))],null,null)}function Ky(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,13,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,2,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"checked",0],[8,"indeterminate",0],[8,"name",0],[8,"id",0],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==t.component.changeValue(t.context.$implicit)&&a),a}),null,null)),s["ɵdid"](2,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](3,16384,null,0,Q.h,[[3,K.d],Q.a],null,null),(t()(),s["ɵeld"](4,0,null,null,7,"label",[["class","custom-control-label"],["ng-class","['tc_' + key]"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"strong",[],null,null,null,null,null)),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Uy)),s["ɵdid"](8,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](9,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](10,0,null,null,1,"span",[["class","form-text text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](11,null,["",""])),(t()(),s["ɵand"](16777216,null,null,1,null,Wy)),s["ɵdid"](13,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,8,0,e.context.$implicit.clusterWide),t(e,13,0,!e.context.last)}),(function(t,e){t(e,1,0,e.context.$implicit.value,e.context.$implicit.indeterminate,e.context.$implicit.code,e.context.$implicit.code,s["ɵnov"](e,3).validClass,s["ɵnov"](e,3).invalidClass),t(e,4,0,e.context.$implicit.code),t(e,6,0,e.context.$implicit.name),t(e,11,0,e.context.$implicit.description)}))}function $y(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),$s.b,$s.a)),s["ɵdid"](1,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Submit"]))],(function(t,e){t(e,1,0,e.component.osdFlagsForm)}),null)}function Zy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,20,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](1,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Individual OSD Flags"])),(t()(),s["ɵeld"](4,0,null,1,16,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,15,"form",[["name","osdFlagsForm"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,7).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,7).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,10).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,K.G,[],null,null),s["ɵdid"](7,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](9,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](10,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](11,0,null,null,2,"div",[["class","modal-body osd-modal"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Ky)),s["ɵdid"](13,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵeld"](14,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](15,0,null,null,1,"button",[["class","btn btn-light"],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.resetSelection()&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["Restore previous selection"])),(t()(),s["ɵand"](16777216,null,null,1,null,$y)),s["ɵdid"](18,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](19,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Js.b,Js.a)),s["ɵdid"](20,49152,null,0,Qs.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.activeModal),t(e,7,0,n.osdFlagsForm),t(e,10,0,n.osdFlagsForm),t(e,13,0,n.flags),t(e,18,0,n.permissions.osd.update),t(e,20,0,"Cancel",n.activeModal.hide)}),(function(t,e){t(e,5,0,s["ɵnov"](e,9).ngClassUntouched,s["ɵnov"](e,9).ngClassTouched,s["ɵnov"](e,9).ngClassPristine,s["ɵnov"](e,9).ngClassDirty,s["ɵnov"](e,9).ngClassValid,s["ɵnov"](e,9).ngClassInvalid,s["ɵnov"](e,9).ngClassPending)}))}function Jy(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-flags-indiv-modal",[],null,null,null,Zy,Hy)),s["ɵdid"](1,114688,null,0,vl,[Ct.a,J.a,Pi,bt.a,fe.a],null,null)],(function(t,e){t(e,1,0)}),null)}var Qy=s["ɵccf"]("cd-osd-flags-indiv-modal",vl,Jy,{},{},[]),Xy=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function tv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit.name),t(e,2,0,e.context.$implicit.name)}),(function(t,e){t(e,3,0,e.context.$implicit.text)}))}function ev(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function nv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](1,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](2,0,["",""]))],null,(function(t,e){t(e,2,0,e.parent.context.$implicit.value.desc)}))}function av(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function rv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["",""]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.value.patternHelpText)}))}function iv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too high! It must not be greater than ","."]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.value.maxValue)}))}function sv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too low! It must not be lower than ","."]))],null,(function(t,e){t(e,1,0,e.parent.context.$implicit.value.minValue)}))}function uv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,29,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,7,"label",[["class","col-form-label col-sm-6"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,4,"span",[],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](7,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpod"](8,{required:0}),(t()(),s["ɵted"](9,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,nv)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](12,0,null,0,17,"div",[["class","col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,8,"input",[["class","form-control"],["type","number"]],[[8,"id",0],[8,"readOnly",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,15)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,15).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,15)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,15)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,16).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,16).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,16).onTouched()&&a),a}),null,null)),s["ɵdid"](14,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](15,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](16,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](18,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](20,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](21,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,av)),s["ɵdid"](23,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,rv)),s["ɵdid"](25,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,iv)),s["ɵdid"](27,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,sv)),s["ɵdid"](29,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0);var a=t(e,8,0,n.osdRecvSpeedForm.getValue("customizePriority"));t(e,7,0,a),t(e,11,0,e.context.$implicit.value.desc),t(e,18,0,e.context.$implicit.key),t(e,21,0,e.context.$implicit.key),t(e,23,0,n.osdRecvSpeedForm.getValue("customizePriority")&&n.osdRecvSpeedForm.showError(e.context.$implicit.key,s["ɵnov"](e.parent,8),"required")),t(e,25,0,n.osdRecvSpeedForm.getValue("customizePriority")&&n.osdRecvSpeedForm.showError(e.context.$implicit.key,s["ɵnov"](e.parent,8),"pattern")),t(e,27,0,n.osdRecvSpeedForm.getValue("customizePriority")&&n.osdRecvSpeedForm.showError(e.context.$implicit.key,s["ɵnov"](e.parent,8),"max")),t(e,29,0,n.osdRecvSpeedForm.getValue("customizePriority")&&n.osdRecvSpeedForm.showError(e.context.$implicit.key,s["ɵnov"](e.parent,8),"min"))}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.context.$implicit.key),t(e,9,0,e.context.$implicit.value.text),t(e,13,1,[e.context.$implicit.key,!n.osdRecvSpeedForm.getValue("customizePriority"),s["ɵnov"](e,20).ngClassUntouched,s["ɵnov"](e,20).ngClassTouched,s["ɵnov"](e,20).ngClassPristine,s["ɵnov"](e,20).ngClassDirty,s["ɵnov"](e,20).ngClassValid,s["ɵnov"](e,20).ngClassInvalid,s["ɵnov"](e,20).ngClassPending,s["ɵnov"](e,21).validClass,s["ɵnov"](e,21).invalidClass])}))}function ov(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),$s.b,$s.a)),s["ɵdid"](1,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Submit"]))],(function(t,e){t(e,1,0,e.component.osdRecvSpeedForm)}),null)}function lv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,56,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](1,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["OSD Recovery Priority"])),(t()(),s["ɵeld"](4,0,null,1,52,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,51,"form",[["cdFormScope","osd"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,8).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,11).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,Z.a,[],{cdFormScope:[0,"cdFormScope"]},null),s["ɵdid"](7,16384,null,0,K.G,[],null,null),s["ɵdid"](8,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](10,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](11,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](12,0,null,null,38,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,18,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](14,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](17,0,null,0,1,"label",[["class","col-form-label col-sm-6 required"],["for","priority"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Priority"])),(t()(),s["ɵeld"](19,0,null,0,12,"div",[["class","col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](20,0,null,null,9,"select",[["class","form-control custom-select"],["formControlName","priority"],["id","priority"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,22).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,22).onTouched()&&a),"change"===e&&(a=!1!==r.onPriorityChange(n.target.value)&&a),a}),null,null)),s["ɵdid"](21,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](22,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](24,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](26,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](27,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,tv)),s["ɵdid"](29,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,ev)),s["ɵdid"](31,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](32,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](33,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](36,0,null,0,11,"div",[["class","offset-sm-6 col-sm-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](37,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](38,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","customizePriority"],["id","customizePriority"],["name","customizePriority"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0,r=t.component;return"change"===e&&(a=!1!==s["ɵnov"](t,40).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,40).onTouched()&&a),"change"===e&&(a=!1!==r.onCustomizePriorityChange()&&a),a}),null,null)),s["ɵdid"](39,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](40,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](42,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](44,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](45,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](46,0,null,null,1,"label",[["class","custom-control-label"],["for","customizePriority"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Customize priority values"])),(t()(),s["ɵand"](16777216,null,null,2,null,uv)),s["ɵdid"](49,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),s["ɵpid"](0,i.KeyValuePipe,[s.KeyValueDiffers]),(t()(),s["ɵeld"](51,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](52,0,null,null,4,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,ov)),s["ɵdid"](54,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](55,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Js.b,Js.a)),s["ɵdid"](56,49152,null,0,Qs.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,6,0,"osd"),t(e,8,0,n.osdRecvSpeedForm),t(e,11,0,n.osdRecvSpeedForm),t(e,14,0),t(e,24,0,"priority"),t(e,27,0,"priority"),t(e,29,0,n.priorities),t(e,31,0,n.osdRecvSpeedForm.showError("priority",s["ɵnov"](e,8),"required")),t(e,33,0),t(e,42,0,"customizePriority"),t(e,45,0,"customizePriority"),t(e,49,0,s["ɵunv"](e,49,0,s["ɵnov"](e,50).transform(n.priorityAttrs))),t(e,54,0,n.permissions.configOpt.update),t(e,56,0,"Cancel",n.bsModalRef.hide)}),(function(t,e){t(e,5,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending),t(e,13,0,s["ɵnov"](e,14).hasErrors,s["ɵnov"](e,14).hasSuccess),t(e,20,0,s["ɵnov"](e,26).ngClassUntouched,s["ɵnov"](e,26).ngClassTouched,s["ɵnov"](e,26).ngClassPristine,s["ɵnov"](e,26).ngClassDirty,s["ɵnov"](e,26).ngClassValid,s["ɵnov"](e,26).ngClassInvalid,s["ɵnov"](e,26).ngClassPending,s["ɵnov"](e,27).validClass,s["ɵnov"](e,27).invalidClass),t(e,32,0,s["ɵnov"](e,33).hasErrors,s["ɵnov"](e,33).hasSuccess),t(e,38,0,s["ɵnov"](e,44).ngClassUntouched,s["ɵnov"](e,44).ngClassTouched,s["ɵnov"](e,44).ngClassPristine,s["ɵnov"](e,44).ngClassDirty,s["ɵnov"](e,44).ngClassValid,s["ɵnov"](e,44).ngClassInvalid,s["ɵnov"](e,44).ngClassPending,s["ɵnov"](e,45).validClass,s["ɵnov"](e,45).invalidClass)}))}function dv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-recv-speed-modal",[],null,null,null,lv,Xy)),s["ɵdid"](1,114688,null,0,Il,[Ct.a,J.a,_l.a,bt.a,fe.a,Pi],null,null)],(function(t,e){t(e,1,0)}),null)}var cv=s["ɵccf"]("cd-osd-recv-speed-modal",Il,dv,{},{},[]),fv=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function hv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required."]))],null,null)}function gv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["The value needs to be between 0 and 1."]))],null,null)}function pv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,hv)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,gv)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,2,0,null==n.weight.errors?null:n.weight.errors.required),t(e,4,0,(null==n.weight.errors?null:n.weight.errors.max)||(null==n.weight.errors?null:n.weight.errors.min))}),null)}function bv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,32,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](1,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](3,null,["Reweight OSD: ",""])),(t()(),s["ɵeld"](4,0,null,1,28,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,27,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,7).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,7).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,10).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,K.G,[],null,null),s["ɵdid"](7,540672,null,0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](9,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](10,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](11,0,null,null,15,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,14,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,1,"label",[["class","col-sm-2 col-form-label"],["for","weight"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Weight"])),(t()(),s["ɵeld"](15,0,null,null,11,"div",[["class","col-sm-10"]],null,null,null,null,null)),(t()(),s["ɵeld"](16,0,null,null,8,"input",[["class","form-control"],["formControlName","weight"],["id","weight"],["max","1"],["min","0"],["step","0.1"],["type","number"]],[[8,"value",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"change"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,18)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,18).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,18)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,18)._compositionEnd(n.target.value)&&a),"change"===e&&(a=!1!==s["ɵnov"](t,19).onChange(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,19).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,19).onTouched()&&a),a}),null,null)),s["ɵdid"](17,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](18,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵdid"](19,16384,null,0,K.w,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t,e){return[t,e]}),[K.e,K.w]),s["ɵdid"](21,671744,null,0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](23,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](24,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,pv)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](27,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,2,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.reweight()&&a),a}),$s.b,$s.a)),s["ɵdid"](29,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"],disabled:[1,"disabled"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](-1,0,["Reweight"])),(t()(),s["ɵeld"](31,0,null,null,1,"cd-back-button",[["name","Cancel"]],null,null,null,Js.b,Js.a)),s["ɵdid"](32,49152,null,0,Qs.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,7,0,n.reweightForm),t(e,10,0,n.reweightForm),t(e,21,0,"weight"),t(e,24,0,"weight"),t(e,26,0,n.weight.errors),t(e,29,0,n.reweightForm,n.reweightForm.invalid),t(e,32,0,"Cancel",n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,3,0,n.osdId),t(e,5,0,s["ɵnov"](e,9).ngClassUntouched,s["ɵnov"](e,9).ngClassTouched,s["ɵnov"](e,9).ngClassPristine,s["ɵnov"](e,9).ngClassDirty,s["ɵnov"](e,9).ngClassValid,s["ɵnov"](e,9).ngClassInvalid,s["ɵnov"](e,9).ngClassPending),t(e,16,0,n.currentWeight,s["ɵnov"](e,23).ngClassUntouched,s["ɵnov"](e,23).ngClassTouched,s["ɵnov"](e,23).ngClassPristine,s["ɵnov"](e,23).ngClassDirty,s["ɵnov"](e,23).ngClassValid,s["ɵnov"](e,23).ngClassInvalid,s["ɵnov"](e,23).ngClassPending,s["ɵnov"](e,24).validClass,s["ɵnov"](e,24).invalidClass)}))}function mv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-reweight-modal",[],null,null,null,bv,fv)),s["ɵdid"](1,114688,null,0,Nl,[Ct.a,Pi,no.a],null,null)],(function(t,e){t(e,1,0)}),null)}var yv=s["ɵccf"]("cd-osd-reweight-modal",Nl,mv,{},{},[]),vv=s["ɵcrt"]({encapsulation:0,styles:[[".custom-checkbox[_ngcontent-%COMP%]   input[_ngcontent-%COMP%], .custom-checkbox[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{cursor:pointer}.col-form-label[_ngcontent-%COMP%]{text-align:left}"]],data:{}});function xv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](1,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](2,0,[" ",""]))],null,(function(t,e){t(e,2,0,e.parent.parent.context.$implicit.long_desc)}))}function _v(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,22,"div",[["class","form-group row pt-2"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,7,"label",[["class","col-form-label col-6"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,1,"b",[],null,null,null,null,null)),(t()(),s["ɵted"](6,null,["",""])),(t()(),s["ɵeld"](7,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,3,"span",[["class","text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](9,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,xv)),s["ɵdid"](11,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](12,0,null,0,10,"div",[["class","col-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,9,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](14,0,null,null,7,"input",[["class","custom-control-input"],["type","checkbox"]],[[8,"id",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,15).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,15).onTouched()&&a),a}),null,null)),s["ɵdid"](15,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](17,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](19,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](20,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](21,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](22,0,null,null,0,"label",[["class","custom-control-label"]],[[8,"htmlFor",0]],null,null,null,null))],(function(t,e){t(e,1,0),t(e,11,0,e.parent.context.$implicit.long_desc),t(e,17,0,e.parent.context.$implicit.name),t(e,21,0,e.parent.context.$implicit.name)}),(function(t,e){t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.parent.context.$implicit.name),t(e,6,0,e.parent.context.$implicit.text),t(e,9,0,e.parent.context.$implicit.desc),t(e,14,0,e.parent.context.$implicit.name,s["ɵnov"](e,19).ngClassUntouched,s["ɵnov"](e,19).ngClassTouched,s["ɵnov"](e,19).ngClassPristine,s["ɵnov"](e,19).ngClassDirty,s["ɵnov"](e,19).ngClassValid,s["ɵnov"](e,19).ngClassInvalid,s["ɵnov"](e,19).ngClassPending,s["ɵnov"](e,21).validClass,s["ɵnov"](e,21).invalidClass),t(e,22,0,e.parent.context.$implicit.name)}))}function Tv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"cd-helper",[],null,null,null,Zu.b,Zu.a)),s["ɵdid"](1,49152,null,0,Ju.a,[],null,null),(t()(),s["ɵted"](2,0,[" ",""]))],null,(function(t,e){t(e,2,0,e.parent.parent.context.$implicit.long_desc)}))}function wv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"div",[["class","input-group-append"]],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,4,"button",[["class","btn btn-light"],["data-toggle","button"],["title","Remove the custom configuration value. The default configuration will be inherited and used instead."],["type","button"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=!1!==t.component.resetValue(t.parent.parent.context.$implicit.name)&&a),a}),null,null)),(t()(),s["ɵeld"](2,0,null,null,3,"i",[["aria-hidden","true"]],null,null,null,null,null)),s["ɵprd"](512,null,i["ɵNgClassImpl"],i["ɵNgClassR2Impl"],[s.IterableDiffers,s.KeyValueDiffers,s.ElementRef,s.Renderer2]),s["ɵdid"](4,278528,null,0,i.NgClass,[i["ɵNgClassImpl"]],{ngClass:[0,"ngClass"]},null),s["ɵpad"](5,1)],(function(t,e){var n=t(e,5,0,e.component.icons.erase);t(e,4,0,n)}),null)}function Ov(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",""]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.additionalTypeInfo.patternHelpText)}))}function Sv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" ",""]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.additionalTypeInfo.patternHelpText)}))}function Iv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too high! It must not be greater than ","."]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.maxValue)}))}function Nv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","invalid-feedback"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,["The entered value is too low! It must not be lower than ","."]))],null,(function(t,e){t(e,1,0,e.parent.parent.context.$implicit.minValue)}))}function Cv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,30,"div",[["class","form-group row pt-2"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](1,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](4,0,null,0,6,"label",[["class","col-6 col-form-label"]],[[8,"htmlFor",0]],null,null,null,null)),(t()(),s["ɵted"](5,null,[""," "])),(t()(),s["ɵeld"](6,0,null,null,0,"br",[],null,null,null,null,null)),(t()(),s["ɵeld"](7,0,null,null,3,"span",[["class","text-muted"]],null,null,null,null,null)),(t()(),s["ɵted"](8,null,[" "," "])),(t()(),s["ɵand"](16777216,null,null,1,null,Tv)),s["ɵdid"](10,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](11,0,null,0,19,"div",[["class","col-6"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,10,"div",[["class","input-group"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,7,"input",[["class","form-control"]],[[8,"type",0],[8,"id",0],[8,"placeholder",0],[8,"step",0],[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,14)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,14).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,14)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,14)._compositionEnd(n.target.value)&&a),a}),null,null)),s["ɵdid"](14,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](16,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](18,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](19,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](20,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,wv)),s["ɵdid"](22,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Ov)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Sv)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Iv)),s["ɵdid"](28,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Nv)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){var n=e.component;t(e,1,0),t(e,10,0,e.parent.context.$implicit.long_desc),t(e,16,0,e.parent.context.$implicit.name),t(e,20,0,e.parent.context.$implicit.name),t(e,22,0,n.optionsFormShowReset),t(e,24,0,n.optionsForm.showError(e.parent.context.$implicit.name,n.optionsFormDir,"pattern")),t(e,26,0,n.optionsForm.showError(e.parent.context.$implicit.name,n.optionsFormDir,"invalidUuid")),t(e,28,0,n.optionsForm.showError(e.parent.context.$implicit.name,n.optionsFormDir,"max")),t(e,30,0,n.optionsForm.showError(e.parent.context.$implicit.name,n.optionsFormDir,"min"))}),(function(t,e){var n=e.component;t(e,0,0,s["ɵnov"](e,1).hasErrors,s["ɵnov"](e,1).hasSuccess),t(e,4,0,e.parent.context.$implicit.name),t(e,5,0,e.parent.context.$implicit.text),t(e,8,0,e.parent.context.$implicit.desc),t(e,13,1,[e.parent.context.$implicit.additionalTypeInfo.inputType,e.parent.context.$implicit.name,e.parent.context.$implicit.additionalTypeInfo.humanReadable,n.getStep(e.parent.context.$implicit.type,n.optionsForm.getValue(e.parent.context.$implicit.name)),s["ɵnov"](e,18).ngClassUntouched,s["ɵnov"](e,18).ngClassTouched,s["ɵnov"](e,18).ngClassPristine,s["ɵnov"](e,18).ngClassDirty,s["ɵnov"](e,18).ngClassValid,s["ɵnov"](e,18).ngClassInvalid,s["ɵnov"](e,18).ngClassPending,s["ɵnov"](e,20).validClass,s["ɵnov"](e,20).invalidClass])}))}function Rv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,0,"hr",[["class","my-2"]],null,null,null,null,null))],null,null)}function Av(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"div",[],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,_v)),s["ɵdid"](2,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Cv)),s["ɵdid"](4,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Rv)),s["ɵdid"](6,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null)],(function(t,e){t(e,2,0,"bool"===e.context.$implicit.type),t(e,4,0,"bool"!==e.context.$implicit.type),t(e,6,0,!e.context.last)}),null)}function kv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,6,"div",[],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,1).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,1).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,4).onSubmit()&&a),a}),null,null)),s["ɵdid"](1,540672,null,0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](3,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](4,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Av)),s["ɵdid"](6,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.optionsFormGroup),t(e,4,0,n.optionsFormGroup),t(e,6,0,n.options)}),(function(t,e){t(e,0,0,s["ɵnov"](e,3).ngClassUntouched,s["ɵnov"](e,3).ngClassTouched,s["ɵnov"](e,3).ngClassPristine,s["ɵnov"](e,3).ngClassDirty,s["ɵnov"](e,3).ngClassValid,s["ɵnov"](e,3).ngClassInvalid,s["ɵnov"](e,3).ngClassPending)}))}var Ev=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Lv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"a",[["class","pull-right margin-right-md"]],null,[[null,"click"]],(function(t,e,n){var a=!0;return"click"===e&&(a=0!=(t.component.advancedEnabled=!0)&&a),a}),null,null)),(t()(),s["ɵted"](-1,null,["Advanced..."]))],null,null)}function Dv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"h3",[["class","page-header"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Advanced configuration options"])),(t()(),s["ɵeld"](3,0,null,null,1,"cd-config-option",[],null,null,null,kv,vv)),s["ɵdid"](4,114688,[[2,4],["advancedOptionsValues",4]],0,wl,[_l.a],{optionNames:[0,"optionNames"],optionsForm:[1,"optionsForm"],optionsFormDir:[2,"optionsFormDir"],optionsFormGroupName:[3,"optionsFormGroupName"]},null)],(function(t,e){var n=e.component;t(e,4,0,n.advancedOptions,n.osdPgScrubForm,s["ɵnov"](e.parent,14),"advancedFormGroup")}),null)}function Pv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.submitAction()&&a),a}),$s.b,$s.a)),s["ɵdid"](1,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](2,0,[""," ",""])),s["ɵppd"](3,1),s["ɵppd"](4,1)],(function(t,e){t(e,1,0,e.component.osdPgScrubForm)}),(function(t,e){var n=e.component,a=s["ɵunv"](e,2,0,t(e,3,0,s["ɵnov"](e.parent,0),n.action)),r=s["ɵunv"](e,2,1,t(e,4,0,s["ɵnov"](e.parent,1),n.resource));t(e,2,0,a,r)}))}function Mv(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵpid"](0,Xs.a,[]),s["ɵqud"](402653184,1,{basicOptionsValues:0}),s["ɵqud"](671088640,2,{advancedOptionsValues:0}),(t()(),s["ɵeld"](4,0,null,null,28,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](5,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](6,0,null,0,3,null,null,null,null,null,null,null)),(t()(),s["ɵted"](7,null,[""," ",""])),s["ɵppd"](8,1),s["ɵppd"](9,1),(t()(),s["ɵeld"](10,0,null,1,22,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](11,0,null,null,21,"form",[["cdFormScope","osd"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,14).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,14).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,17).onSubmit()&&a),a}),null,null)),s["ɵdid"](12,16384,null,0,Z.a,[],{cdFormScope:[0,"cdFormScope"]},null),s["ɵdid"](13,16384,null,0,K.G,[],null,null),s["ɵdid"](14,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](16,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](17,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](18,0,null,null,8,"div",[["class","modal-body osd-modal"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,1,"cd-config-option",[],null,null,null,kv,vv)),s["ɵdid"](20,114688,[[1,4],["basicOptionsValues",4]],0,wl,[_l.a],{optionNames:[0,"optionNames"],optionsForm:[1,"optionsForm"],optionsFormDir:[2,"optionsFormDir"],optionsFormGroupName:[3,"optionsFormGroupName"]},null),(t()(),s["ɵeld"](21,0,null,null,3,"div",[["class","row"]],null,null,null,null,null)),(t()(),s["ɵeld"](22,0,null,null,2,"div",[["class","col-sm-12"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Lv)),s["ɵdid"](24,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Dv)),s["ɵdid"](26,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](27,0,null,null,5,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](28,0,null,null,4,"div",[["class","button-group text-right"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Pv)),s["ɵdid"](30,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](31,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](32,49152,null,0,Qs.a,[i.Location,St.b],{back:[0,"back"]},null)],(function(t,e){var n=e.component;t(e,5,0,n.bsModalRef),t(e,12,0,"osd"),t(e,14,0,n.osdPgScrubForm),t(e,17,0,n.osdPgScrubForm),t(e,20,0,n.basicOptions,n.osdPgScrubForm,s["ɵnov"](e,14),"basicFormGroup"),t(e,24,0,!n.advancedEnabled),t(e,26,0,n.advancedEnabled),t(e,30,0,n.permissions.configOpt.update),t(e,32,0,n.bsModalRef.hide)}),(function(t,e){var n=e.component,a=s["ɵunv"](e,7,0,t(e,8,0,s["ɵnov"](e,0),n.action)),r=s["ɵunv"](e,7,1,t(e,9,0,s["ɵnov"](e,1),n.resource));t(e,7,0,a,r),t(e,11,0,s["ɵnov"](e,16).ngClassUntouched,s["ɵnov"](e,16).ngClassTouched,s["ɵnov"](e,16).ngClassPristine,s["ɵnov"](e,16).ngClassDirty,s["ɵnov"](e,16).ngClassValid,s["ɵnov"](e,16).ngClassInvalid,s["ɵnov"](e,16).ngClassPending)}))}function qv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-pg-scrub-modal",[],null,null,null,Mv,Ev)),s["ɵdid"](1,49152,null,0,Sl,[Ct.a,J.a,bt.a,fe.a,St.b],null,null)],null,null)}var jv=s["ɵccf"]("cd-osd-pg-scrub-modal",Sl,qv,{},{},[]),Fv=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Vv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](1,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{value:[0,"value"]},null),s["ɵdid"](2,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{value:[0,"value"]},null),(t()(),s["ɵted"](3,null,[" "," "]))],(function(t,e){t(e,1,0,e.context.$implicit),t(e,2,0,e.context.$implicit)}),(function(t,e){t(e,3,0,e.context.$implicit)}))}function Gv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","help-block"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function Bv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","help-block"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["This field is required!"]))],null,null)}function zv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,2,"div",[["id","match-state"]],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,1,"span",[],[[8,"className",0]],null,null,null,null)),(t()(),s["ɵted"](2,null,[" "," "]))],null,(function(t,e){var n=e.component;t(e,0,0,s["ɵinlineInterpolate"](1,"cd-col-form-offset ",n.matcherMatch.cssClass,"")),t(e,1,0,s["ɵinlineInterpolate"](1,"text-muted ",n.matcherMatch.cssClass,"")),t(e,2,0,n.matcherMatch.status)}))}function Yv(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["Update"]))],null,null)}function Hv(t){return s["ɵvid"](0,[(t()(),s["ɵted"](-1,null,["Add"]))],null,null)}function Uv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,82,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](1,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Matcher"])),(t()(),s["ɵeld"](4,0,null,1,78,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,77,"form",[["class","form"],["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,7).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,7).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,10).onSubmit()&&a),a}),null,null)),s["ɵdid"](6,16384,null,0,K.G,[],null,null),s["ɵdid"](7,540672,[["formDir",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](9,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](10,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](11,0,null,null,59,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](12,0,null,null,22,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](13,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,1,{FormControlNames:1}),s["ɵqud"](603979776,2,{messagesBlock:0}),(t()(),s["ɵeld"](16,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","name"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Name"])),(t()(),s["ɵeld"](18,0,null,0,16,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,13,"select",[["class","form-control"],["formControlName","name"],["id","name"],["name","name"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,21).onChange(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,21).onTouched()&&a),a}),null,null)),s["ɵdid"](20,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](21,16384,null,0,K.A,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.A]),s["ɵdid"](23,671744,[[1,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](25,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](26,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](27,0,null,null,3,"option",[],null,null,null,null,null)),s["ɵdid"](28,147456,null,0,K.v,[s.ElementRef,s.Renderer2,[2,K.A]],{ngValue:[0,"ngValue"]},null),s["ɵdid"](29,147456,null,0,K.F,[s.ElementRef,s.Renderer2,[8,null]],{ngValue:[0,"ngValue"]},null),(t()(),s["ɵted"](-1,null,["-- Select an attribute to match against --"])),(t()(),s["ɵand"](16777216,null,null,1,null,Vv)),s["ɵdid"](32,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Gv)),s["ɵdid"](34,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](35,0,null,null,19,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](36,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,3,{FormControlNames:1}),s["ɵqud"](603979776,4,{messagesBlock:0}),(t()(),s["ɵeld"](39,0,null,0,1,"label",[["class","cd-col-form-label required"],["for","value"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Value"])),(t()(),s["ɵeld"](41,0,null,0,11,"div",[["class","cd-col-form-input"]],null,null,null,null,null)),(t()(),s["ɵeld"](42,16777216,null,null,8,"input",[["class","form-control"],["formControlName","value"],["id","value"],["type","text"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"input"],[null,"blur"],[null,"compositionstart"],[null,"compositionend"],[null,"keyup"],[null,"click"],[null,"focus"],[null,"keydown"]],(function(t,e,n){var a=!0;return"input"===e&&(a=!1!==s["ɵnov"](t,44)._handleInput(n.target.value)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,44).onTouched()&&a),"compositionstart"===e&&(a=!1!==s["ɵnov"](t,44)._compositionStart()&&a),"compositionend"===e&&(a=!1!==s["ɵnov"](t,44)._compositionEnd(n.target.value)&&a),"input"===e&&(a=!1!==s["ɵnov"](t,49).onInput(n)&&a),"keyup"===e&&(a=!1!==s["ɵnov"](t,49).onChange(n)&&a),"click"===e&&(a=!1!==s["ɵnov"](t,49).onFocus()&&a),"focus"===e&&(a=!1!==s["ɵnov"](t,49).onFocus()&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,49).onBlur()&&a),"keydown"===e&&(a=!1!==s["ɵnov"](t,49).onKeydown(n)&&a),a}),null,null)),s["ɵdid"](43,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](44,16384,null,0,K.e,[s.Renderer2,s.ElementRef,[2,K.b]],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.e]),s["ɵdid"](46,671744,[[3,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](48,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](49,212992,null,0,Uu,[U.a,Hu,s.ChangeDetectorRef,s.ElementRef,K.q,s.Renderer2,s.ViewContainerRef],{typeahead:[0,"typeahead"],typeaheadMinLength:[1,"typeaheadMinLength"]},null),s["ɵdid"](50,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Bv)),s["ɵdid"](52,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵand"](16777216,null,0,1,null,zv)),s["ɵdid"](54,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](55,0,null,null,15,"div",[["class","form-group row"]],[[2,"has-error",null],[2,"has-success",null]],null,null,Ws.b,Ws.a)),s["ɵdid"](56,1163264,null,2,Q.c,[s.ElementRef,Q.g],null,null),s["ɵqud"](603979776,5,{FormControlNames:1}),s["ɵqud"](603979776,6,{messagesBlock:0}),(t()(),s["ɵeld"](59,0,null,0,11,"div",[["class","cd-col-form-offset"]],null,null,null,null,null)),(t()(),s["ɵeld"](60,0,null,null,10,"div",[["class","custom-control custom-checkbox"]],null,null,null,null,null)),(t()(),s["ɵeld"](61,0,null,null,7,"input",[["class","custom-control-input"],["formControlName","isRegex"],["id","is-regex"],["name","is-regex"],["type","checkbox"]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null],[2,"is-valid",null],[2,"is-invalid",null]],[[null,"change"],[null,"blur"]],(function(t,e,n){var a=!0;return"change"===e&&(a=!1!==s["ɵnov"](t,63).onChange(n.target.checked)&&a),"blur"===e&&(a=!1!==s["ɵnov"](t,63).onTouched()&&a),a}),null,null)),s["ɵdid"](62,4210688,null,0,$.a,[[2,Z.a],J.a,s.ElementRef],null,null),s["ɵdid"](63,16384,null,0,K.c,[s.Renderer2,s.ElementRef],null,null),s["ɵprd"](1024,null,K.p,(function(t){return[t]}),[K.c]),s["ɵdid"](65,671744,[[5,4]],0,K.j,[[3,K.d],[8,null],[8,null],[6,K.p],[2,K.E]],{name:[0,"name"]},null),s["ɵprd"](2048,null,K.q,null,[K.j]),s["ɵdid"](67,16384,null,0,K.r,[[4,K.q]],null,null),s["ɵdid"](68,16384,null,0,Q.h,[[3,K.d],Q.a],{formControlName:[0,"formControlName"]},null),(t()(),s["ɵeld"](69,0,null,null,1,"label",[["class","custom-control-label"],["for","is-regex"]],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["Use regular expression"])),(t()(),s["ɵeld"](71,0,null,null,11,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](72,0,null,null,8,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),$s.b,$s.a)),s["ɵdid"](73,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵeld"](74,0,null,0,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](75,0,null,null,5,null,null,null,null,null,null,null)),s["ɵdid"](76,16384,null,0,i.NgSwitch,[],{ngSwitch:[0,"ngSwitch"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Yv)),s["ɵdid"](78,278528,null,0,i.NgSwitchCase,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],{ngSwitchCase:[0,"ngSwitchCase"]},null),(t()(),s["ɵand"](16777216,null,null,1,null,Hv)),s["ɵdid"](80,16384,null,0,i.NgSwitchDefault,[s.ViewContainerRef,s.TemplateRef,i.NgSwitch],null,null),(t()(),s["ɵeld"](81,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,Js.b,Js.a)),s["ɵdid"](82,49152,null,0,Qs.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,7,0,n.form),t(e,10,0,n.form),t(e,13,0),t(e,23,0,"name"),t(e,26,0,"name"),t(e,28,0,null),t(e,29,0,null),t(e,32,0,n.nameAttributes),t(e,34,0,n.form.showError("name",s["ɵnov"](e,7),"required")),t(e,36,0),t(e,46,0,"value"),t(e,49,0,n.possibleValues,0),t(e,50,0,"value"),t(e,52,0,n.form.showError("value",s["ɵnov"](e,7),"required")),t(e,54,0,n.form.getValue("value")&&!n.form.getValue("isRegex")&&n.matcherMatch),t(e,56,0),t(e,65,0,"isRegex"),t(e,68,0,"isRegex"),t(e,73,0,n.form),t(e,76,0,n.editMode),t(e,78,0,"1"),t(e,82,0,"Close",n.bsModalRef.hide)}),(function(t,e){t(e,5,0,s["ɵnov"](e,9).ngClassUntouched,s["ɵnov"](e,9).ngClassTouched,s["ɵnov"](e,9).ngClassPristine,s["ɵnov"](e,9).ngClassDirty,s["ɵnov"](e,9).ngClassValid,s["ɵnov"](e,9).ngClassInvalid,s["ɵnov"](e,9).ngClassPending),t(e,12,0,s["ɵnov"](e,13).hasErrors,s["ɵnov"](e,13).hasSuccess),t(e,19,0,s["ɵnov"](e,25).ngClassUntouched,s["ɵnov"](e,25).ngClassTouched,s["ɵnov"](e,25).ngClassPristine,s["ɵnov"](e,25).ngClassDirty,s["ɵnov"](e,25).ngClassValid,s["ɵnov"](e,25).ngClassInvalid,s["ɵnov"](e,25).ngClassPending,s["ɵnov"](e,26).validClass,s["ɵnov"](e,26).invalidClass),t(e,35,0,s["ɵnov"](e,36).hasErrors,s["ɵnov"](e,36).hasSuccess),t(e,42,0,s["ɵnov"](e,48).ngClassUntouched,s["ɵnov"](e,48).ngClassTouched,s["ɵnov"](e,48).ngClassPristine,s["ɵnov"](e,48).ngClassDirty,s["ɵnov"](e,48).ngClassValid,s["ɵnov"](e,48).ngClassInvalid,s["ɵnov"](e,48).ngClassPending,s["ɵnov"](e,50).validClass,s["ɵnov"](e,50).invalidClass),t(e,55,0,s["ɵnov"](e,56).hasErrors,s["ɵnov"](e,56).hasSuccess),t(e,61,0,s["ɵnov"](e,67).ngClassUntouched,s["ɵnov"](e,67).ngClassTouched,s["ɵnov"](e,67).ngClassPristine,s["ɵnov"](e,67).ngClassDirty,s["ɵnov"](e,67).ngClassValid,s["ɵnov"](e,67).ngClassInvalid,s["ɵnov"](e,67).ngClassPending,s["ɵnov"](e,68).validClass,s["ɵnov"](e,68).invalidClass)}))}function Wv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-silence-matcher-modal",[],null,null,null,Uv,Fv)),s["ɵdid"](1,49152,null,0,fh,[no.a,dh,Ct.a],null,null)],null,null)}var Kv=s["ɵccf"]("cd-silence-matcher-modal",fh,Wv,{},{submitAction:"submitAction"},[]),$v=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function Zv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"span",[["class","badge badge-dark ml-2"]],null,null,null,null,null)),(t()(),s["ɵted"](1,null,[" "," "]))],null,(function(t,e){t(e,1,0,e.context.$implicit)}))}function Jv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,5,"cd-alert-panel",[["size","slim"],["type","warning"]],null,null,null,be.b,be.a)),s["ɵdid"](1,114688,null,0,me.a,[fe.a],{type:[0,"type"],size:[1,"size"],showTitle:[2,"showTitle"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["At least one of these filters must be applied in order to proceed:"])),(t()(),s["ɵand"](16777216,null,0,1,null,Zv)),s["ɵdid"](5,278528,null,0,i.NgForOf,[s.ViewContainerRef,s.TemplateRef,s.IterableDiffers],{ngForOf:[0,"ngForOf"]},null)],(function(t,e){var n=e.component;t(e,1,0,"warning","slim",!1),t(e,5,0,n.requiredFilters)}),null)}function Qv(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,4,"div",[],null,null,null,null,null)),(t()(),s["ɵeld"](1,0,null,null,3,"p",[["class","text-center"]],null,null,null,null,null)),(t()(),s["ɵeld"](2,0,null,null,2,"span",[],null,null,null,null,null)),(t()(),s["ɵted"](3,null,["Number of devices: ",". Raw capacity: ","."])),s["ɵppd"](4,1)],null,(function(t,e){var n=e.component,a=n.filteredDevices.length,r=s["ɵunv"](e,3,1,t(e,4,0,s["ɵnov"](e.parent,0),n.capacity));t(e,3,0,a,r)}))}function Xv(t){return s["ɵvid"](0,[s["ɵpid"](0,Fa.a,[Ka.a]),s["ɵpid"](0,i.TitleCasePipe,[]),s["ɵqud"](671088640,1,{inventoryDevices:0}),(t()(),s["ɵeld"](3,0,null,null,25,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](4,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](5,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](6,null,[""," devices"])),(t()(),s["ɵeld"](7,0,null,1,21,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](8,0,null,null,20,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,10).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,10).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,13).onSubmit()&&a),a}),null,null)),s["ɵdid"](9,16384,null,0,K.G,[],null,null),s["ɵdid"](10,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](12,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](13,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](14,0,null,null,7,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵand"](16777216,null,null,1,null,Jv)),s["ɵdid"](16,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](17,0,null,null,2,"cd-inventory-devices",[],null,[[null,"filterChange"]],(function(t,e,n){var a=!0;return"filterChange"===e&&(a=!1!==t.component.onFilterChange(n)&&a),a}),fi,ci)),s["ɵdid"](18,245760,[[1,4],["inventoryDevices",4]],0,di,[J.a,Fa.a,fe.a,Ct.b,bt.a,si],{devices:[0,"devices"],hiddenColumns:[1,"hiddenColumns"],filterColumns:[2,"filterColumns"]},{filterChange:"filterChange"}),s["ɵpad"](19,2),(t()(),s["ɵand"](16777216,null,null,1,null,Qv)),s["ɵdid"](21,16384,null,0,i.NgIf,[s.ViewContainerRef,s.TemplateRef],{ngIf:[0,"ngIf"]},null),(t()(),s["ɵeld"](22,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](23,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),$s.b,$s.a)),s["ɵdid"](24,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"],disabled:[1,"disabled"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](25,0,["",""])),s["ɵppd"](26,1),(t()(),s["ɵeld"](27,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](28,49152,null,0,Qs.a,[i.Location,St.b],{back:[0,"back"]},null)],(function(t,e){var n=e.component;t(e,4,0,n.bsModalRef),t(e,10,0,n.formGroup),t(e,13,0,n.formGroup),t(e,16,0,!n.canSubmit);var a=n.devices,r=t(e,19,0,"available","osd_ids");t(e,18,0,a,r,n.filterColumns),t(e,21,0,n.canSubmit),t(e,24,0,n.formGroup,!n.canSubmit||0===n.filteredDevices.length),t(e,28,0,n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,6,0,n.deviceType),t(e,8,0,s["ɵnov"](e,12).ngClassUntouched,s["ɵnov"](e,12).ngClassTouched,s["ɵnov"](e,12).ngClassPristine,s["ɵnov"](e,12).ngClassDirty,s["ɵnov"](e,12).ngClassValid,s["ɵnov"](e,12).ngClassInvalid,s["ɵnov"](e,12).ngClassPending);var a=s["ɵunv"](e,25,0,t(e,26,0,s["ɵnov"](e,1),n.action));t(e,25,0,a)}))}function tx(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-devices-selection-modal",[],null,null,null,Xv,$v)),s["ɵdid"](1,4243456,null,0,Ul,[no.a,Ct.a,St.b],null,null)],null,null)}var ex=s["ɵccf"]("cd-osd-devices-selection-modal",Ul,tx,{},{submitAction:"submitAction"},[]),nx=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ax(t){return s["ɵvid"](0,[s["ɵpid"](0,i.TitleCasePipe,[]),(t()(),s["ɵeld"](1,0,null,null,23,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](2,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](3,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["OSD creation preview"])),(t()(),s["ɵeld"](5,0,null,1,19,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,18,"form",[["novalidate",""]],[[2,"ng-untouched",null],[2,"ng-touched",null],[2,"ng-pristine",null],[2,"ng-dirty",null],[2,"ng-valid",null],[2,"ng-invalid",null],[2,"ng-pending",null]],[[null,"submit"],[null,"reset"]],(function(t,e,n){var a=!0;return"submit"===e&&(a=!1!==s["ɵnov"](t,8).onSubmit(n)&&a),"reset"===e&&(a=!1!==s["ɵnov"](t,8).onReset()&&a),"submit"===e&&(a=!1!==s["ɵnov"](t,11).onSubmit()&&a),a}),null,null)),s["ɵdid"](7,16384,null,0,K.G,[],null,null),s["ɵdid"](8,540672,[["frm",4]],0,K.l,[[8,null],[8,null]],{form:[0,"form"]},null),s["ɵprd"](2048,null,K.d,null,[K.l]),s["ɵdid"](10,16384,null,0,K.s,[[4,K.d]],null,null),s["ɵdid"](11,16384,null,0,Q.d,[],{formGroup:[0,"formGroup"]},null),(t()(),s["ɵeld"](12,0,null,null,5,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](13,0,null,null,1,"h4",[],null,null,null,null,null)),(t()(),s["ɵted"](-1,null,["DriveGroups"])),(t()(),s["ɵeld"](15,0,null,null,2,"pre",[],null,null,null,null,null)),(t()(),s["ɵted"](16,null,["",""])),s["ɵpid"](0,i.JsonPipe,[]),(t()(),s["ɵeld"](18,0,null,null,6,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](19,0,null,null,3,"cd-submit-button",[],null,[[null,"submitAction"]],(function(t,e,n){var a=!0;return"submitAction"===e&&(a=!1!==t.component.onSubmit()&&a),a}),$s.b,$s.a)),s["ɵdid"](20,114688,null,0,Zs.a,[s.ElementRef],{form:[0,"form"]},{submitAction:"submitAction"}),(t()(),s["ɵted"](21,0,["",""])),s["ɵppd"](22,1),(t()(),s["ɵeld"](23,0,null,null,1,"cd-back-button",[],null,null,null,Js.b,Js.a)),s["ɵdid"](24,49152,null,0,Qs.a,[i.Location,St.b],{back:[0,"back"]},null)],(function(t,e){var n=e.component;t(e,2,0,n.bsModalRef),t(e,8,0,n.formGroup),t(e,11,0,n.formGroup),t(e,20,0,n.formGroup),t(e,24,0,n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,6,0,s["ɵnov"](e,10).ngClassUntouched,s["ɵnov"](e,10).ngClassTouched,s["ɵnov"](e,10).ngClassPristine,s["ɵnov"](e,10).ngClassDirty,s["ɵnov"](e,10).ngClassValid,s["ɵnov"](e,10).ngClassInvalid,s["ɵnov"](e,10).ngClassPending),t(e,16,0,s["ɵunv"](e,16,0,s["ɵnov"](e,17).transform(n.driveGroups)));var a=s["ɵunv"](e,21,0,t(e,22,0,s["ɵnov"](e,0),n.action));t(e,21,0,a)}))}function rx(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-osd-creation-preview-modal",[],null,null,null,ax,nx)),s["ɵdid"](1,114688,null,0,ad,[Ct.a,St.b,no.a,Pi,Ds.a],null,null)],(function(t,e){t(e,1,0)}),null)}var ix=s["ɵccf"]("cd-osd-creation-preview-modal",ad,rx,{driveGroups:"driveGroups"},{submitAction:"submitAction"},[]),sx=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function ux(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,10,"cd-modal",[],null,null,null,sy.c,sy.b)),s["ɵdid"](1,49152,null,0,ky.a,[],{modalRef:[0,"modalRef"]},null),(t()(),s["ɵeld"](2,0,null,0,1,null,null,null,null,null,null,null)),(t()(),s["ɵted"](3,null,[""," ",""])),(t()(),s["ɵeld"](4,0,null,1,6,null,null,null,null,null,null,null)),(t()(),s["ɵeld"](5,0,null,null,2,"div",[["class","modal-body"]],null,null,null,null,null)),(t()(),s["ɵeld"](6,0,null,null,1,"cd-orchestrator-doc-panel",[],null,null,null,ii,ri)),s["ɵdid"](7,49152,null,0,ai,[],null,null),(t()(),s["ɵeld"](8,0,null,null,2,"div",[["class","modal-footer"]],null,null,null,null,null)),(t()(),s["ɵeld"](9,0,null,null,1,"cd-back-button",[["name","Close"]],null,null,null,Js.b,Js.a)),s["ɵdid"](10,49152,null,0,Qs.a,[i.Location,St.b],{name:[0,"name"],back:[1,"back"]},null)],(function(t,e){var n=e.component;t(e,1,0,n.bsModalRef),t(e,10,0,"Close",n.bsModalRef.hide)}),(function(t,e){var n=e.component;t(e,3,0,n.actionDescription,n.itemDescription)}))}function ox(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-orchestrator-doc-modal",[],null,null,null,ux,sx)),s["ɵdid"](1,114688,null,0,Es,[Ct.a],null,null)],(function(t,e){t(e,1,0)}),null)}var lx=s["ɵccf"]("cd-orchestrator-doc-modal",Es,ox,{},{},[]),dx=s["ɵcrt"]({encapsulation:0,styles:[[""]],data:{}});function cx(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,16777216,null,null,1,"router-outlet",[],null,null,null,null,null)),s["ɵdid"](1,212992,null,0,Et.r,[Et.b,s.ViewContainerRef,s.ComponentFactoryResolver,[8,null],s.ChangeDetectorRef],null,null)],(function(t,e){t(e,1,0)}),null)}function fx(t){return s["ɵvid"](0,[(t()(),s["ɵeld"](0,0,null,null,1,"cd-root",[],null,null,null,cx,dx)),s["ɵdid"](1,49152,null,0,l,[],null,null)],null,null)}var hx=s["ɵccf"]("cd-root",l,fx,{},{},[]),gx=n("z6cu");let px=(()=>{class t{constructor(t,e,n){this.router=t,this.authStorageService=e,this.notificationService=n}intercept(t,e){return e.handle(t).pipe(Object(Oe.a)(t=>{if(t instanceof et.f){let e;switch(t.status){case 400:const n=new As.a,a=t.error.task;X.isPlainObject(a)?(a.metadata.component=a.metadata.component||t.error.component,n.name=a.name,n.metadata=a.metadata):n.metadata=t.error,n.success=!1,n.exception=t.error,e=this.notificationService.notifyTask(n);break;case 401:this.authStorageService.remove(),this.router.navigate(["/login"]);break;case 403:this.router.navigate(["/403"]);break;default:e=this.prepareNotification(t)}t.preventDefault=()=>{this.notificationService.cancel(e)},t.ignoreStatusCode=function(t){this.status===t&&this.preventDefault()}}return Object(gx.a)(t)}))}prepareNotification(t){return this.notificationService.show(()=>{let e="";return X.isPlainObject(t.error)&&X.isString(t.error.detail)?e=t.error.detail:X.isString(t.error)?e=t.error:X.isString(t.message)&&(e=t.message),new Je.b(le.a.error,`${t.status} - ${t.statusText}`,e,void 0,t.application)})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](Et.m),s["ɵɵinject"](J.a),s["ɵɵinject"](bt.a))},token:t,providedIn:"root"}),t})();function bx(){return"undefined"!=typeof process}function mx(t){switch(t.length){case 0:return new W.d;case 1:return t[0];default:return new W.k(t)}}function yx(t,e,n,a,r={},i={}){const s=[],u=[];let o=-1,l=null;if(a.forEach(t=>{const n=t.offset,a=n==o,d=a&&l||{};Object.keys(t).forEach(n=>{let a=n,u=t[n];if("offset"!==n)switch(a=e.normalizePropertyName(a,s),u){case W.l:u=r[n];break;case W.a:u=i[n];break;default:u=e.normalizeStyleValue(n,a,u,s)}d[a]=u}),a||u.push(d),l=d,o=n}),s.length){const t="\n - ";throw new Error(`Unable to animate due to the following errors:${t}${s.join(t)}`)}return u}function vx(t,e,n,a){switch(e){case"start":t.onStart(()=>a(n&&xx(n,"start",t)));break;case"done":t.onDone(()=>a(n&&xx(n,"done",t)));break;case"destroy":t.onDestroy(()=>a(n&&xx(n,"destroy",t)))}}function xx(t,e,n){const a=n.totalTime,r=_x(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==a?t.totalTime:a,!!n.disabled),i=t._data;return null!=i&&(r._data=i),r}function _x(t,e,n,a,r="",i=0,s){return{element:t,triggerName:e,fromState:n,toState:a,phaseName:r,totalTime:i,disabled:!!s}}function Tx(t,e,n){let a;return t instanceof Map?(a=t.get(e),a||t.set(e,a=n)):(a=t[e],a||(a=t[e]=n)),a}function wx(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let Ox=(t,e)=>!1,Sx=(t,e)=>!1,Ix=(t,e,n)=>[];const Nx=bx();(Nx||"undefined"!=typeof Element)&&(Ox=(t,e)=>t.contains(e),Sx=(()=>{if(Nx||Element.prototype.matches)return(t,e)=>t.matches(e);{const t=Element.prototype,e=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;return e?(t,n)=>e.apply(t,[n]):Sx}})(),Ix=(t,e,n)=>{let a=[];if(n)a.push(...t.querySelectorAll(e));else{const n=t.querySelector(e);n&&a.push(n)}return a});let Cx=null,Rx=!1;function Ax(t){Cx||(Cx=("undefined"!=typeof document?document.body:null)||{},Rx=!!Cx.style&&"WebkitAppearance"in Cx.style);let e=!0;return Cx.style&&!function(t){return"ebkit"==t.substring(1,6)}(t)&&(e=t in Cx.style,!e&&Rx)&&(e="Webkit"+t.charAt(0).toUpperCase()+t.substr(1)in Cx.style),e}const kx=Sx,Ex=Ox,Lx=Ix;function Dx(t){const e={};return Object.keys(t).forEach(n=>{const a=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[a]=t[n]}),e}class Px{validateStyleProperty(t){return Ax(t)}matchesElement(t,e){return kx(t,e)}containsElement(t,e){return Ex(t,e)}query(t,e,n){return Lx(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,a,r,i=[],s){return new W.d(n,a)}}let Mx=(()=>{class t{}return t.NOOP=new Px,t})();function qx(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:jx(parseFloat(e[1]),e[2])}function jx(t,e){switch(e){case"s":return 1e3*t;default:return t}}function Fx(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let a,r=0,i="";if("string"==typeof t){const n=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===n)return e.push(`The provided timing value "${t}" is invalid.`),{duration:0,delay:0,easing:""};a=jx(parseFloat(n[1]),n[2]);const s=n[3];null!=s&&(r=jx(parseFloat(s),n[4]));const u=n[5];u&&(i=u)}else a=t;if(!n){let n=!1,i=e.length;a<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),r<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(i,0,`The provided timing value "${t}" is invalid.`)}return{duration:a,delay:r,easing:i}}(t,e,n)}function Vx(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Gx(t,e,n={}){if(e)for(let a in t)n[a]=t[a];else Vx(t,n);return n}function Bx(t,e,n){return n?e+":"+n+";":""}function zx(t){let e="";for(let n=0;n<t.style.length;n++){const a=t.style.item(n);e+=Bx(0,a,t.style.getPropertyValue(a))}for(const n in t.style)t.style.hasOwnProperty(n)&&!n.startsWith("_")&&(e+=Bx(0,n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),t.style[n]));t.setAttribute("style",e)}function Yx(t,e,n){t.style&&(Object.keys(e).forEach(a=>{const r=Qx(a);n&&!n.hasOwnProperty(a)&&(n[a]=t.style[r]),t.style[r]=e[a]}),bx()&&zx(t))}function Hx(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=Qx(e);t.style[n]=""}),bx()&&zx(t))}function Ux(t){return Array.isArray(t)?1==t.length?t[0]:Object(W.f)(t):t}const Wx=new RegExp("{{\\s*(.+?)\\s*}}","g");function Kx(t){let e=[];if("string"==typeof t){const n=t.toString();let a;for(;a=Wx.exec(n);)e.push(a[1]);Wx.lastIndex=0}return e}function $x(t,e,n){const a=t.toString(),r=a.replace(Wx,(t,a)=>{let r=e[a];return e.hasOwnProperty(a)||(n.push("Please provide a value for the animation param "+a),r=""),r.toString()});return r==a?t:r}function Zx(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const Jx=/-+([a-z0-9])/g;function Qx(t){return t.replace(Jx,(...t)=>t[1].toUpperCase())}function Xx(t,e){return 0===t||0===e}function t_(t,e,n){const a=Object.keys(n);if(a.length&&e.length){let i=e[0],s=[];if(a.forEach(t=>{i.hasOwnProperty(t)||s.push(t),i[t]=n[t]}),s.length)for(var r=1;r<e.length;r++){let n=e[r];s.forEach((function(e){n[e]=n_(t,e)}))}}return e}function e_(t,e,n){switch(e.type){case 7:return t.visitTrigger(e,n);case 0:return t.visitState(e,n);case 1:return t.visitTransition(e,n);case 2:return t.visitSequence(e,n);case 3:return t.visitGroup(e,n);case 4:return t.visitAnimate(e,n);case 5:return t.visitKeyframes(e,n);case 6:return t.visitStyle(e,n);case 8:return t.visitReference(e,n);case 9:return t.visitAnimateChild(e,n);case 10:return t.visitAnimateRef(e,n);case 11:return t.visitQuery(e,n);case 12:return t.visitStagger(e,n);default:throw new Error("Unable to resolve animation metadata node #"+e.type)}}function n_(t,e){return window.getComputedStyle(t)[e]}function a_(t,e){const n=[];return"string"==typeof t?t.split(/\s*,\s*/).forEach(t=>function(t,e,n){if(":"==t[0]){const a=function(t,e){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(t,e)=>parseFloat(e)>parseFloat(t);case":decrement":return(t,e)=>parseFloat(e)<parseFloat(t);default:return e.push(`The transition alias value "${t}" is not supported`),"* => *"}}(t,n);if("function"==typeof a)return void e.push(a);t=a}const a=t.match(/^(\*|[-\w]+)\s*(<?[=-]>)\s*(\*|[-\w]+)$/);if(null==a||a.length<4)return n.push(`The provided transition expression "${t}" is not supported`),e;const r=a[1],i=a[2],s=a[3];e.push(s_(r,s)),"<"!=i[0]||"*"==r&&"*"==s||e.push(s_(s,r))}(t,n,e)):n.push(t),n}const r_=new Set(["true","1"]),i_=new Set(["false","0"]);function s_(t,e){const n=r_.has(t)||i_.has(t),a=r_.has(e)||i_.has(e);return(r,i)=>{let s="*"==t||t==r,u="*"==e||e==i;return!s&&n&&"boolean"==typeof r&&(s=r?r_.has(t):i_.has(t)),!u&&a&&"boolean"==typeof i&&(u=i?r_.has(e):i_.has(e)),s&&u}}const u_=new RegExp("s*:selfs*,?","g");function o_(t,e,n){return new l_(t).build(e,n)}class l_{constructor(t){this._driver=t}build(t,e){const n=new d_(e);return this._resetContextStyleTimingState(n),e_(this,Ux(t),n)}_resetContextStyleTimingState(t){t.currentQuerySelector="",t.collectedStyles={},t.collectedStyles[""]={},t.currentTime=0}visitTrigger(t,e){let n=e.queryCount=0,a=e.depCount=0;const r=[],i=[];return"@"==t.name.charAt(0)&&e.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),t.definitions.forEach(t=>{if(this._resetContextStyleTimingState(e),0==t.type){const n=t,a=n.name;a.toString().split(/\s*,\s*/).forEach(t=>{n.name=t,r.push(this.visitState(n,e))}),n.name=a}else if(1==t.type){const r=this.visitTransition(t,e);n+=r.queryCount,a+=r.depCount,i.push(r)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:r,transitions:i,queryCount:n,depCount:a,options:null}}visitState(t,e){const n=this.visitStyle(t.styles,e),a=t.options&&t.options.params||null;if(n.containsDynamicStyles){const r=new Set,i=a||{};if(n.styles.forEach(t=>{if(c_(t)){const e=t;Object.keys(e).forEach(t=>{Kx(e[t]).forEach(t=>{i.hasOwnProperty(t)||r.add(t)})})}}),r.size){const n=Zx(r.values());e.errors.push(`state("${t.name}", ...) must define default values for all the following style substitutions: ${n.join(", ")}`)}}return{type:0,name:t.name,style:n,options:a?{params:a}:null}}visitTransition(t,e){e.queryCount=0,e.depCount=0;const n=e_(this,Ux(t.animation),e);return{type:1,matchers:a_(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:f_(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>e_(this,t,e)),options:f_(t.options)}}visitGroup(t,e){const n=e.currentTime;let a=0;const r=t.steps.map(t=>{e.currentTime=n;const r=e_(this,t,e);return a=Math.max(a,e.currentTime),r});return e.currentTime=a,{type:3,steps:r,options:f_(t.options)}}visitAnimate(t,e){const n=function(t,e){let n=null;if(t.hasOwnProperty("duration"))n=t;else if("number"==typeof t)return h_(Fx(t,e).duration,0,"");const a=t;if(a.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=h_(0,0,"");return t.dynamic=!0,t.strValue=a,t}return n=n||Fx(a,e),h_(n.duration,n.delay,n.easing)}(t.timings,e.errors);let a;e.currentAnimateTimings=n;let r=t.styles?t.styles:Object(W.h)({});if(5==r.type)a=this.visitKeyframes(r,e);else{let r=t.styles,i=!1;if(!r){i=!0;const t={};n.easing&&(t.easing=n.easing),r=Object(W.h)(t)}e.currentTime+=n.duration+n.delay;const s=this.visitStyle(r,e);s.isEmptyStep=i,a=s}return e.currentAnimateTimings=null,{type:4,timings:n,style:a,options:null}}visitStyle(t,e){const n=this._makeStyleAst(t,e);return this._validateStyleAst(n,e),n}_makeStyleAst(t,e){const n=[];Array.isArray(t.styles)?t.styles.forEach(t=>{"string"==typeof t?t==W.a?n.push(t):e.errors.push(`The provided style string value ${t} is not allowed.`):n.push(t)}):n.push(t.styles);let a=!1,r=null;return n.forEach(t=>{if(c_(t)){const e=t,n=e.easing;if(n&&(r=n,delete e.easing),!a)for(let t in e)if(e[t].toString().indexOf("{{")>=0){a=!0;break}}}),{type:6,styles:n,easing:r,offset:t.offset,containsDynamicStyles:a,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let a=e.currentTime,r=e.currentTime;n&&r>0&&(r-=n.duration+n.delay),t.styles.forEach(t=>{"string"!=typeof t&&Object.keys(t).forEach(n=>{if(!this._driver.validateStyleProperty(n))return void e.errors.push(`The provided animation property "${n}" is not a supported CSS property for animations`);const i=e.collectedStyles[e.currentQuerySelector],s=i[n];let u=!0;s&&(r!=a&&r>=s.startTime&&a<=s.endTime&&(e.errors.push(`The CSS property "${n}" that exists between the times of "${s.startTime}ms" and "${s.endTime}ms" is also being animated in a parallel animation between the times of "${r}ms" and "${a}ms"`),u=!1),r=s.startTime),u&&(i[n]={startTime:r,endTime:a}),e.options&&function(t,e,n){const a=e.params||{},r=Kx(t);r.length&&r.forEach(t=>{a.hasOwnProperty(t)||n.push(`Unable to resolve the local animation param ${t} in the given list of values`)})}(t[n],e.options,e.errors)})})}visitKeyframes(t,e){const n={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push("keyframes() must be placed inside of a call to animate()"),n;let a=0;const r=[];let i=!1,s=!1,u=0;const o=t.steps.map(t=>{const n=this._makeStyleAst(t,e);let o=null!=n.offset?n.offset:function(t){if("string"==typeof t)return null;let e=null;if(Array.isArray(t))t.forEach(t=>{if(c_(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(c_(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}return e}(n.styles),l=0;return null!=o&&(a++,l=n.offset=o),s=s||l<0||l>1,i=i||l<u,u=l,r.push(l),n});s&&e.errors.push("Please ensure that all keyframe offsets are between 0 and 1"),i&&e.errors.push("Please ensure that all keyframe offsets are in order");const l=t.steps.length;let d=0;a>0&&a<l?e.errors.push("Not all style() steps within the declared keyframes() contain offsets"):0==a&&(d=1/(l-1));const c=l-1,f=e.currentTime,h=e.currentAnimateTimings,g=h.duration;return o.forEach((t,a)=>{const i=d>0?a==c?1:d*a:r[a],s=i*g;e.currentTime=f+h.delay+s,h.duration=s,this._validateStyleAst(t,e),t.offset=i,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:e_(this,Ux(t.animation),e),options:f_(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:f_(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:f_(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,a=t.options||{};e.queryCount++,e.currentQuery=t;const[r,i]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(u_,"")),[t=t.replace(/@\*/g,".ng-trigger").replace(/@\w+/g,t=>".ng-trigger-"+t.substr(1)).replace(/:animating/g,".ng-animating"),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+r:r,Tx(e.collectedStyles,e.currentQuerySelector,{});const s=e_(this,Ux(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:r,limit:a.limit||0,optional:!!a.optional,includeSelf:i,animation:s,originalSelector:t.selector,options:f_(t.options)}}visitStagger(t,e){e.currentQuery||e.errors.push("stagger() can only be used inside of query()");const n="full"===t.timings?{duration:0,delay:0,easing:"full"}:Fx(t.timings,e.errors,!0);return{type:12,animation:e_(this,Ux(t.animation),e),timings:n,options:null}}}class d_{constructor(t){this.errors=t,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null}}function c_(t){return!Array.isArray(t)&&"object"==typeof t}function f_(t){var e;return t?(t=Vx(t)).params&&(t.params=(e=t.params)?Vx(e):null):t={},t}function h_(t,e,n){return{duration:t,delay:e,easing:n}}function g_(t,e,n,a,r,i,s=null,u=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:a,duration:r,delay:i,totalTime:r+i,easing:s,subTimeline:u}}class p_{constructor(){this._map=new Map}consume(t){let e=this._map.get(t);return e?this._map.delete(t):e=[],e}append(t,e){let n=this._map.get(t);n||this._map.set(t,n=[]),n.push(...e)}has(t){return this._map.has(t)}clear(){this._map.clear()}}const b_=new RegExp(":enter","g"),m_=new RegExp(":leave","g");function y_(t,e,n,a,r,i={},s={},u,o,l=[]){return(new v_).buildKeyframes(t,e,n,a,r,i,s,u,o,l)}class v_{buildKeyframes(t,e,n,a,r,i,s,u,o,l=[]){o=o||new p_;const d=new __(t,e,o,a,r,l,[]);d.options=u,d.currentTimeline.setStyles([i],null,d.errors,u),e_(this,n,d);const c=d.timelines.filter(t=>t.containsAnimation());if(c.length&&Object.keys(s).length){const t=c[c.length-1];t.allowOnlyTimelineStyles()||t.setStyles([s],null,d.errors,u)}return c.length?c.map(t=>t.buildKeyframes()):[g_(e,[],[],[],0,0,"",!1)]}visitTrigger(t,e){}visitState(t,e){}visitTransition(t,e){}visitAnimateChild(t,e){const n=e.subInstructions.consume(e.element);if(n){const a=e.createSubContext(t.options),r=e.currentTimeline.currentTime,i=this._visitSubInstructions(n,a,a.options);r!=i&&e.transformIntoNewTimeline(i)}e.previousNode=t}visitAnimateRef(t,e){const n=e.createSubContext(t.options);n.transformIntoNewTimeline(),this.visitReference(t.animation,n),e.transformIntoNewTimeline(n.currentTimeline.currentTime),e.previousNode=t}_visitSubInstructions(t,e,n){let a=e.currentTimeline.currentTime;const r=null!=n.duration?qx(n.duration):null,i=null!=n.delay?qx(n.delay):null;return 0!==r&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,r,i);a=Math.max(a,n.duration+n.delay)}),a}visitReference(t,e){e.updateOptions(t.options,!0),e_(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let a=e;const r=t.options;if(r&&(r.params||r.delay)&&(a=e.createSubContext(r),a.transformIntoNewTimeline(),null!=r.delay)){6==a.previousNode.type&&(a.currentTimeline.snapshotCurrentStyles(),a.previousNode=x_);const t=qx(r.delay);a.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>e_(this,t,a)),a.currentTimeline.applyStylesToKeyframe(),a.subContextCount>n&&a.transformIntoNewTimeline()),e.previousNode=t}visitGroup(t,e){const n=[];let a=e.currentTimeline.currentTime;const r=t.options&&t.options.delay?qx(t.options.delay):0;t.steps.forEach(i=>{const s=e.createSubContext(t.options);r&&s.delayNextStep(r),e_(this,i,s),a=Math.max(a,s.currentTimeline.currentTime),n.push(s.currentTimeline)}),n.forEach(t=>e.currentTimeline.mergeTimelineCollectedStyles(t)),e.transformIntoNewTimeline(a),e.previousNode=t}_visitTiming(t,e){if(t.dynamic){const n=t.strValue;return Fx(e.params?$x(n,e.params,e.errors):n,e.errors)}return{duration:t.duration,delay:t.delay,easing:t.easing}}visitAnimate(t,e){const n=e.currentAnimateTimings=this._visitTiming(t.timings,e),a=e.currentTimeline;n.delay&&(e.incrementTime(n.delay),a.snapshotCurrentStyles());const r=t.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(n.duration),this.visitStyle(r,e),a.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=t}visitStyle(t,e){const n=e.currentTimeline,a=e.currentAnimateTimings;!a&&n.getCurrentStyleProperties().length&&n.forwardFrame();const r=a&&a.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(r):n.setStyles(t.styles,r,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,a=e.currentTimeline.duration,r=n.duration,i=e.createSubContext().currentTimeline;i.easing=n.easing,t.styles.forEach(t=>{i.forwardTime((t.offset||0)*r),i.setStyles(t.styles,t.easing,e.errors,e.options),i.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(i),e.transformIntoNewTimeline(a+r),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,a=t.options||{},r=a.delay?qx(a.delay):0;r&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=x_);let i=n;const s=e.invokeQuery(t.selector,t.originalSelector,t.limit,t.includeSelf,!!a.optional,e.errors);e.currentQueryTotal=s.length;let u=null;s.forEach((n,a)=>{e.currentQueryIndex=a;const s=e.createSubContext(t.options,n);r&&s.delayNextStep(r),n===e.element&&(u=s.currentTimeline),e_(this,t.animation,s),s.currentTimeline.applyStylesToKeyframe(),i=Math.max(i,s.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(i),u&&(e.currentTimeline.mergeTimelineCollectedStyles(u),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,a=e.currentTimeline,r=t.timings,i=Math.abs(r.duration),s=i*(e.currentQueryTotal-1);let u=i*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":u=s-u;break;case"full":u=n.currentStaggerTime}const o=e.currentTimeline;u&&o.delayNextStep(u);const l=o.currentTime;e_(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=a.currentTime-l+(a.startTime-n.currentTimeline.startTime)}}const x_={};class __{constructor(t,e,n,a,r,i,s,u){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=a,this._leaveClassName=r,this.errors=i,this.timelines=s,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=x_,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=u||new T_(this._driver,e,0),s.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(t,e){if(!t)return;const n=t;let a=this.options;null!=n.duration&&(a.duration=qx(n.duration)),null!=n.delay&&(a.delay=qx(n.delay));const r=n.params;if(r){let t=a.params;t||(t=this.options.params={}),Object.keys(r).forEach(n=>{e&&t.hasOwnProperty(n)||(t[n]=$x(r[n],t,this.errors))})}}_copyOptions(){const t={};if(this.options){const e=this.options.params;if(e){const n=t.params={};Object.keys(e).forEach(t=>{n[t]=e[t]})}}return t}createSubContext(t=null,e,n){const a=e||this.element,r=new __(this._driver,a,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(a,n||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(t),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(t){return this.previousNode=x_,this.currentTimeline=this.currentTimeline.fork(this.element,t),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(t,e,n){const a={duration:null!=e?e:t.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+t.delay,easing:""},r=new w_(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,a,t.stretchStartingKeyframe);return this.timelines.push(r),a}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,a,r,i){let s=[];if(a&&s.push(this.element),t.length>0){t=(t=t.replace(b_,"."+this._enterClassName)).replace(m_,"."+this._leaveClassName);let e=this._driver.query(this.element,t,1!=n);0!==n&&(e=n<0?e.slice(e.length+n,e.length):e.slice(0,n)),s.push(...e)}return r||0!=s.length||i.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),s}}class T_{constructor(t,e,n,a){this._driver=t,this.element=e,this.startTime=n,this._elementTimelineStylesLookup=a,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}getCurrentStyleProperties(){return Object.keys(this._currentKeyframe)}get currentTime(){return this.startTime+this.duration}delayNextStep(t){const e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+t),e&&this.snapshotCurrentStyles()):this.startTime+=t}fork(t,e){return this.applyStylesToKeyframe(),new T_(this._driver,t,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(t){this.applyStylesToKeyframe(),this.duration=t,this._loadKeyframe()}_updateStyle(t,e){this._localTimelineStyles[t]=e,this._globalTimelineStyles[t]=e,this._styleSummary[t]={time:this.currentTime,value:e}}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(t){t&&(this._previousKeyframe.easing=t),Object.keys(this._globalTimelineStyles).forEach(t=>{this._backFill[t]=this._globalTimelineStyles[t]||W.a,this._currentKeyframe[t]=W.a}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,a){e&&(this._previousKeyframe.easing=e);const r=a&&a.params||{},i=function(t,e){const n={};let a;return t.forEach(t=>{"*"===t?(a=a||Object.keys(e),a.forEach(t=>{n[t]=W.a})):Gx(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(i).forEach(t=>{const e=$x(i[t],r,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:W.a),this._updateStyle(t,e)})}applyStylesToKeyframe(){const t=this._pendingStyles,e=Object.keys(t);0!=e.length&&(this._pendingStyles={},e.forEach(e=>{this._currentKeyframe[e]=t[e]}),Object.keys(this._localTimelineStyles).forEach(t=>{this._currentKeyframe.hasOwnProperty(t)||(this._currentKeyframe[t]=this._localTimelineStyles[t])}))}snapshotCurrentStyles(){Object.keys(this._localTimelineStyles).forEach(t=>{const e=this._localTimelineStyles[t];this._pendingStyles[t]=e,this._updateStyle(t,e)})}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const t=[];for(let e in this._currentKeyframe)t.push(e);return t}mergeTimelineCollectedStyles(t){Object.keys(t._styleSummary).forEach(e=>{const n=this._styleSummary[e],a=t._styleSummary[e];(!n||a.time>n.time)&&this._updateStyle(e,a.value)})}buildKeyframes(){this.applyStylesToKeyframe();const t=new Set,e=new Set,n=1===this._keyframes.size&&0===this.duration;let a=[];this._keyframes.forEach((r,i)=>{const s=Gx(r,!0);Object.keys(s).forEach(n=>{const a=s[n];a==W.l?t.add(n):a==W.a&&e.add(n)}),n||(s.offset=i/this.duration),a.push(s)});const r=t.size?Zx(t.values()):[],i=e.size?Zx(e.values()):[];if(n){const t=a[0],e=Vx(t);t.offset=0,e.offset=1,a=[t,e]}return g_(this.element,a,r,i,this.duration,this.startTime,this.easing,!1)}}class w_ extends T_{constructor(t,e,n,a,r,i,s=!1){super(t,e,i.delay),this.element=e,this.keyframes=n,this.preStyleProps=a,this.postStyleProps=r,this._stretchStartingKeyframe=s,this.timings={duration:i.duration,delay:i.delay,easing:i.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let t=this.keyframes,{delay:e,duration:n,easing:a}=this.timings;if(this._stretchStartingKeyframe&&e){const r=[],i=n+e,s=e/i,u=Gx(t[0],!1);u.offset=0,r.push(u);const o=Gx(t[0],!1);o.offset=O_(s),r.push(o);const l=t.length-1;for(let a=1;a<=l;a++){let s=Gx(t[a],!1);s.offset=O_((e+s.offset*n)/i),r.push(s)}n=i,e=0,a="",t=r}return g_(this.element,t,this.preStyleProps,this.postStyleProps,n,e,a,!0)}}function O_(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class S_{}class I_ extends S_{normalizePropertyName(t,e){return Qx(t)}normalizeStyleValue(t,e,n,a){let r="";const i=n.toString().trim();if(N_[e]&&0!==n&&"0"!==n)if("number"==typeof n)r="px";else{const e=n.match(/^[+-]?[\d\.]+([a-z]*)$/);e&&0==e[1].length&&a.push(`Please provide a CSS unit value for ${t}:${n}`)}return i+r}}const N_=(()=>function(t){const e={};return t.forEach(t=>e[t]=!0),e}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(",")))();function C_(t,e,n,a,r,i,s,u,o,l,d,c,f){return{type:0,element:t,triggerName:e,isRemovalTransition:r,fromState:n,fromStyles:i,toState:a,toStyles:s,timelines:u,queriedElements:o,preStyleProps:l,postStyleProps:d,totalTime:c,errors:f}}const R_={};class A_{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,a){return function(t,e,n,a,r){return t.some(t=>t(e,n,a,r))}(this.ast.matchers,t,e,n,a)}buildStyles(t,e,n){const a=this._stateStyles["*"],r=this._stateStyles[t],i=a?a.buildStyles(e,n):{};return r?r.buildStyles(e,n):i}build(t,e,n,a,r,i,s,u,o,l){const d=[],c=this.ast.options&&this.ast.options.params||R_,f=this.buildStyles(n,s&&s.params||R_,d),h=u&&u.params||R_,g=this.buildStyles(a,h,d),p=new Set,b=new Map,m=new Map,y="void"===a,v={params:Object.assign({},c,h)},x=l?[]:y_(t,e,this.ast.animation,r,i,f,g,v,o,d);let _=0;if(x.forEach(t=>{_=Math.max(t.duration+t.delay,_)}),d.length)return C_(e,this._triggerName,n,a,y,f,g,[],[],b,m,_,d);x.forEach(t=>{const n=t.element,a=Tx(b,n,{});t.preStyleProps.forEach(t=>a[t]=!0);const r=Tx(m,n,{});t.postStyleProps.forEach(t=>r[t]=!0),n!==e&&p.add(n)});const T=Zx(p.values());return C_(e,this._triggerName,n,a,y,f,g,x,T,b,m,_)}}class k_{constructor(t,e){this.styles=t,this.defaultParams=e}buildStyles(t,e){const n={},a=Vx(this.defaultParams);return Object.keys(t).forEach(e=>{const n=t[e];null!=n&&(a[e]=n)}),this.styles.styles.forEach(t=>{if("string"!=typeof t){const r=t;Object.keys(r).forEach(t=>{let i=r[t];i.length>1&&(i=$x(i,a,e)),n[t]=i})}}),n}}class E_{constructor(t,e){this.name=t,this.ast=e,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new k_(t.style,t.options&&t.options.params||{})}),L_(this.states,"true","1"),L_(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new A_(t,e,this.states))}),this.fallbackTransition=new A_(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,a){return this.transitionFactories.find(r=>r.match(t,e,n,a))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function L_(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const D_=new p_;class P_{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._animations={},this._playersById={},this.players=[]}register(t,e){const n=[],a=o_(this._driver,e,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: "+n.join("\n"));this._animations[t]=a}_buildPlayer(t,e,n){const a=t.element,r=yx(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(a,r,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const a=[],r=this._animations[t];let i;const s=new Map;if(r?(i=y_(this._driver,e,r,"ng-enter","ng-leave",{},{},n,D_,a),i.forEach(t=>{const e=Tx(s,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(a.push("The requested animation doesn't exist or has already been destroyed"),i=[]),a.length)throw new Error("Unable to create the animation due to the following errors: "+a.join("\n"));s.forEach((t,e)=>{Object.keys(t).forEach(n=>{t[n]=this._driver.computeStyle(e,n,W.a)})});const u=mx(i.map(t=>{const e=s.get(t.element);return this._buildPlayer(t,{},e)}));return this._playersById[t]=u,u.onDestroy(()=>this.destroy(t)),this.players.push(u),u}destroy(t){const e=this._getPlayer(t);e.destroy(),delete this._playersById[t];const n=this.players.indexOf(e);n>=0&&this.players.splice(n,1)}_getPlayer(t){const e=this._playersById[t];if(!e)throw new Error("Unable to find the timeline player referenced by "+t);return e}listen(t,e,n,a){const r=_x(e,"","","");return vx(this._getPlayer(t),n,r,a),()=>{}}command(t,e,n,a){if("register"==n)return void this.register(t,a[0]);if("create"==n)return void this.create(t,e,a[0]||{});const r=this._getPlayer(t);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(a[0]));break;case"destroy":this.destroy(t)}}}const M_=[],q_={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},j_={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0};class F_{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=null!=(a=n?t.value:t)?a:null,n){const e=Vx(t);delete e.value,this.options=e}else this.options={};var a;this.options.params||(this.options.params={})}get params(){return this.options.params}absorbOptions(t){const e=t.params;if(e){const t=this.options.params;Object.keys(e).forEach(n=>{null==t[n]&&(t[n]=e[n])})}}}const V_=new F_("void");class G_{constructor(t,e,n){this.id=t,this.hostElement=e,this._engine=n,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,K_(e,this._hostClassName)}listen(t,e,n,a){if(!this._triggers.hasOwnProperty(e))throw new Error(`Unable to listen on the animation trigger event "${n}" because the animation trigger "${e}" doesn't exist!`);if(null==n||0==n.length)throw new Error(`Unable to listen on the animation trigger "${e}" because the provided event is undefined!`);if("start"!=(r=n)&&"done"!=r)throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);var r;const i=Tx(this._elementListeners,t,[]),s={name:e,phase:n,callback:a};i.push(s);const u=Tx(this._engine.statesByElement,t,{});return u.hasOwnProperty(e)||(K_(t,"ng-trigger"),K_(t,"ng-trigger-"+e),u[e]=V_),()=>{this._engine.afterFlush(()=>{const t=i.indexOf(s);t>=0&&i.splice(t,1),this._triggers[e]||delete u[e]})}}register(t,e){return!this._triggers[t]&&(this._triggers[t]=e,!0)}_getTrigger(t){const e=this._triggers[t];if(!e)throw new Error(`The provided animation trigger "${t}" has not been registered!`);return e}trigger(t,e,n,a=!0){const r=this._getTrigger(e),i=new z_(this.id,e,t);let s=this._engine.statesByElement.get(t);s||(K_(t,"ng-trigger"),K_(t,"ng-trigger-"+e),this._engine.statesByElement.set(t,s={}));let u=s[e];const o=new F_(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&u&&o.absorbOptions(u.options),s[e]=o,u||(u=V_),"void"!==o.value&&u.value===o.value){if(!function(t,e){const n=Object.keys(t),a=Object.keys(e);if(n.length!=a.length)return!1;for(let r=0;r<n.length;r++){const a=n[r];if(!e.hasOwnProperty(a)||t[a]!==e[a])return!1}return!0}(u.params,o.params)){const e=[],n=r.matchStyles(u.value,u.params,e),a=r.matchStyles(o.value,o.params,e);e.length?this._engine.reportError(e):this._engine.afterFlush(()=>{Hx(t,n),Yx(t,a)})}return}const l=Tx(this._engine.playersByElement,t,[]);l.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let d=r.matchTransition(u.value,o.value,t,o.params),c=!1;if(!d){if(!a)return;d=r.fallbackTransition,c=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:d,fromState:u,toState:o,player:i,isFallbackTransition:c}),c||(K_(t,"ng-animate-queued"),i.onStart(()=>{$_(t,"ng-animate-queued")})),i.onDone(()=>{let e=this.players.indexOf(i);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(i);t>=0&&n.splice(t,1)}}),this.players.push(i),l.push(i),i}deregister(t){delete this._triggers[t],this._engine.statesByElement.forEach((e,n)=>{delete e[t]}),this._elementListeners.forEach((e,n)=>{this._elementListeners.set(n,e.filter(e=>e.name!=t))})}clearElementCache(t){this._engine.statesByElement.delete(t),this._elementListeners.delete(t);const e=this._engine.playersByElement.get(t);e&&(e.forEach(t=>t.destroy()),this._engine.playersByElement.delete(t))}_signalRemovalForInnerTriggers(t,e,n=!1){this._engine.driver.query(t,".ng-trigger",!0).forEach(t=>{if(t.__ng_removed)return;const n=this._engine.fetchNamespacesByElement(t);n.size?n.forEach(n=>n.triggerLeaveAnimation(t,e,!1,!0)):this.clearElementCache(t)})}triggerLeaveAnimation(t,e,n,a){const r=this._engine.statesByElement.get(t);if(r){const i=[];if(Object.keys(r).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,"void",a);n&&i.push(n)}}),i.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&mx(i).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t);if(e){const n=new Set;e.forEach(e=>{const a=e.name;if(n.has(a))return;n.add(a);const r=this._triggers[a].fallbackTransition,i=this._engine.statesByElement.get(t)[a]||V_,s=new F_("void"),u=new z_(this.id,a,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:a,transition:r,fromState:i,toState:s,player:u,isFallbackTransition:!0})})}}removeNode(t,e){const n=this._engine;if(t.childElementCount&&this._signalRemovalForInnerTriggers(t,e,!0),this.triggerLeaveAnimation(t,e,!0))return;let a=!1;if(n.totalAnimations){const e=n.players.length?n.playersByQueriedElement.get(t):[];if(e&&e.length)a=!0;else{let e=t;for(;e=e.parentNode;)if(n.statesByElement.get(e)){a=!0;break}}}this.prepareLeaveAnimationListeners(t),a?n.markElementAsRemoved(this.id,t,!1,e):(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}insertNode(t,e){K_(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const a=n.player;if(a.destroyed)return;const r=n.element,i=this._elementListeners.get(r);i&&i.forEach(e=>{if(e.name==n.triggerName){const a=_x(r,n.triggerName,n.fromState.value,n.toState.value);a._data=t,vx(n.player,e.phase,a,e.callback)}}),a.markedForDestroy?this._engine.afterFlush(()=>{a.destroy()}):e.push(n)}),this._queue=[],e.sort((t,e)=>{const n=t.transition.ast.depCount,a=e.transition.ast.depCount;return 0==n||0==a?n-a:this._engine.driver.containsElement(t.element,e.element)?1:-1})}destroy(t){this.players.forEach(t=>t.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,t)}elementContainsData(t){let e=!1;return this._elementListeners.has(t)&&(e=!0),e=!!this._queue.find(e=>e.element===t)||e,e}}class B_{constructor(t,e,n){this.bodyNode=t,this.driver=e,this._normalizer=n,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(t,e)=>{}}_onRemovalComplete(t,e){this.onRemovalComplete(t,e)}get queuedPlayers(){const t=[];return this._namespaceList.forEach(e=>{e.players.forEach(e=>{e.queued&&t.push(e)})}),t}createNamespace(t,e){const n=new G_(t,e,this);return e.parentNode?this._balanceNamespaceList(n,e):(this.newHostElements.set(e,n),this.collectEnterElement(e)),this._namespaceLookup[t]=n}_balanceNamespaceList(t,e){const n=this._namespaceList.length-1;if(n>=0){let a=!1;for(let r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,e)){this._namespaceList.splice(r+1,0,t),a=!0;break}a||this._namespaceList.splice(0,0,t)}else this._namespaceList.push(t);return this.namespacesByHostElement.set(e,t),t}register(t,e){let n=this._namespaceLookup[t];return n||(n=this.createNamespace(t,e)),n}registerTrigger(t,e,n){let a=this._namespaceLookup[t];a&&a.register(e,n)&&this.totalAnimations++}destroy(t,e){if(!t)return;const n=this._fetchNamespace(t);this.afterFlush(()=>{this.namespacesByHostElement.delete(n.hostElement),delete this._namespaceLookup[t];const e=this._namespaceList.indexOf(n);e>=0&&this._namespaceList.splice(e,1)}),this.afterFlushAnimationsDone(()=>n.destroy(e))}_fetchNamespace(t){return this._namespaceLookup[t]}fetchNamespacesByElement(t){const e=new Set,n=this.statesByElement.get(t);if(n){const t=Object.keys(n);for(let a=0;a<t.length;a++){const r=n[t[a]].namespaceId;if(r){const t=this._fetchNamespace(r);t&&e.add(t)}}}return e}trigger(t,e,n,a){if(Y_(e)){const r=this._fetchNamespace(t);if(r)return r.trigger(e,n,a),!0}return!1}insertNode(t,e,n,a){if(!Y_(e))return;const r=e.__ng_removed;if(r&&r.setForRemoval){r.setForRemoval=!1,r.setForMove=!0;const t=this.collectedLeaveElements.indexOf(e);t>=0&&this.collectedLeaveElements.splice(t,1)}if(t){const a=this._fetchNamespace(t);a&&a.insertNode(e,n)}a&&this.collectEnterElement(e)}collectEnterElement(t){this.collectedEnterElements.push(t)}markElementAsDisabled(t,e){e?this.disabledNodes.has(t)||(this.disabledNodes.add(t),K_(t,"ng-animate-disabled")):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),$_(t,"ng-animate-disabled"))}removeNode(t,e,n,a){if(Y_(e)){const r=t?this._fetchNamespace(t):null;if(r?r.removeNode(e,a):this.markElementAsRemoved(t,e,!1,a),n){const n=this.namespacesByHostElement.get(e);n&&n.id!==t&&n.removeNode(e,a)}}else this._onRemovalComplete(e,a)}markElementAsRemoved(t,e,n,a){this.collectedLeaveElements.push(e),e.__ng_removed={namespaceId:t,setForRemoval:a,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,a,r){return Y_(e)?this._fetchNamespace(t).listen(e,n,a,r):()=>{}}_buildInstruction(t,e,n,a,r){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,a,t.fromState.options,t.toState.options,e,r)}destroyInnerAnimations(t){let e=this.driver.query(t,".ng-trigger",!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,".ng-animating",!0),e.forEach(t=>this.finishActiveQueriedAnimationOnElement(t)))}destroyActiveAnimationsForElement(t){const e=this.playersByElement.get(t);e&&e.forEach(t=>{t.queued?t.markedForDestroy=!0:t.destroy()})}finishActiveQueriedAnimationOnElement(t){const e=this.playersByQueriedElement.get(t);e&&e.forEach(t=>t.finish())}whenRenderingDone(){return new Promise(t=>{if(this.players.length)return mx(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t.__ng_removed;if(e&&e.setForRemoval){if(t.__ng_removed=q_,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,".ng-animate-disabled")&&this.markElementAsDisabled(t,!1),this.driver.query(t,".ng-animate-disabled",!0).forEach(t=>{this.markElementAsDisabled(t,!1)})}flush(t=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((t,e)=>this._balanceNamespaceList(t,e)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let n=0;n<this.collectedEnterElements.length;n++)K_(this.collectedEnterElements[n],"ng-star-inserted");if(this._namespaceList.length&&(this.totalQueuedPlayers||this.collectedLeaveElements.length)){const n=[];try{e=this._flushAnimations(n,t)}finally{for(let t=0;t<n.length;t++)n[t]()}}else for(let n=0;n<this.collectedLeaveElements.length;n++)this.processLeaveNode(this.collectedLeaveElements[n]);if(this.totalQueuedPlayers=0,this.collectedEnterElements.length=0,this.collectedLeaveElements.length=0,this._flushFns.forEach(t=>t()),this._flushFns=[],this._whenQuietFns.length){const t=this._whenQuietFns;this._whenQuietFns=[],e.length?mx(e).onDone(()=>{t.forEach(t=>t())}):t.forEach(t=>t())}}reportError(t){throw new Error("Unable to process animations due to the following failed trigger transitions\n "+t.join("\n"))}_flushAnimations(t,e){const n=new p_,a=[],r=new Map,i=[],s=new Map,u=new Map,o=new Map,l=new Set;this.disabledNodes.forEach(t=>{l.add(t);const e=this.driver.query(t,".ng-animate-queued",!0);for(let n=0;n<e.length;n++)l.add(e[n])});const d=this.bodyNode,c=Array.from(this.statesByElement.keys()),f=W_(c,this.collectedEnterElements),h=new Map;let g=0;f.forEach((t,e)=>{const n="ng-enter"+g++;h.set(e,n),t.forEach(t=>K_(t,n))});const p=[],b=new Set,m=new Set;for(let A=0;A<this.collectedLeaveElements.length;A++){const t=this.collectedLeaveElements[A],e=t.__ng_removed;e&&e.setForRemoval&&(p.push(t),b.add(t),e.hasAnimation?this.driver.query(t,".ng-star-inserted",!0).forEach(t=>b.add(t)):m.add(t))}const y=new Map,v=W_(c,Array.from(b));v.forEach((t,e)=>{const n="ng-leave"+g++;y.set(e,n),t.forEach(t=>K_(t,n))}),t.push(()=>{f.forEach((t,e)=>{const n=h.get(e);t.forEach(t=>$_(t,n))}),v.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>$_(t,n))}),p.forEach(t=>{this.processLeaveNode(t)})});const x=[],_=[];for(let A=this._namespaceList.length-1;A>=0;A--)this._namespaceList[A].drainQueuedTransitions(e).forEach(t=>{const e=t.player,r=t.element;if(x.push(e),this.collectedEnterElements.length){const t=r.__ng_removed;if(t&&t.setForMove)return void e.destroy()}const l=!d||!this.driver.containsElement(d,r),c=y.get(r),f=h.get(r),g=this._buildInstruction(t,n,f,c,l);if(g.errors&&g.errors.length)_.push(g);else{if(l)return e.onStart(()=>Hx(r,g.fromStyles)),e.onDestroy(()=>Yx(r,g.toStyles)),void a.push(e);if(t.isFallbackTransition)return e.onStart(()=>Hx(r,g.fromStyles)),e.onDestroy(()=>Yx(r,g.toStyles)),void a.push(e);g.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(r,g.timelines),i.push({instruction:g,player:e,element:r}),g.queriedElements.forEach(t=>Tx(s,t,[]).push(e)),g.preStyleProps.forEach((t,e)=>{const n=Object.keys(t);if(n.length){let t=u.get(e);t||u.set(e,t=new Set),n.forEach(e=>t.add(e))}}),g.postStyleProps.forEach((t,e)=>{const n=Object.keys(t);let a=o.get(e);a||o.set(e,a=new Set),n.forEach(t=>a.add(t))})}});if(_.length){const t=[];_.forEach(e=>{t.push(`@${e.triggerName} has failed due to:\n`),e.errors.forEach(e=>t.push(`- ${e}\n`))}),x.forEach(t=>t.destroy()),this.reportError(t)}const T=new Map,w=new Map;i.forEach(t=>{const e=t.element;n.has(e)&&(w.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,T))}),a.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{Tx(T,e,[]).push(t),t.destroy()})});const O=p.filter(t=>J_(t,u,o)),S=new Map;U_(S,this.driver,m,o,W.a).forEach(t=>{J_(t,u,o)&&O.push(t)});const I=new Map;f.forEach((t,e)=>{U_(I,this.driver,new Set(t),u,W.l)}),O.forEach(t=>{const e=S.get(t),n=I.get(t);S.set(t,Object.assign({},e,n))});const N=[],C=[],R={};i.forEach(t=>{const{element:e,player:i,instruction:s}=t;if(n.has(e)){if(l.has(e))return i.onDestroy(()=>Yx(e,s.toStyles)),i.disabled=!0,i.overrideTotalTime(s.totalTime),void a.push(i);let t=R;if(w.size>1){let n=e;const a=[];for(;n=n.parentNode;){const e=w.get(n);if(e){t=e;break}a.push(n)}a.forEach(e=>w.set(e,t))}const n=this._buildAnimation(i.namespaceId,s,T,r,I,S);if(i.setRealPlayer(n),t===R)N.push(i);else{const e=this.playersByElement.get(t);e&&e.length&&(i.parentPlayer=mx(e)),a.push(i)}}else Hx(e,s.fromStyles),i.onDestroy(()=>Yx(e,s.toStyles)),C.push(i),l.has(e)&&a.push(i)}),C.forEach(t=>{const e=r.get(t.element);if(e&&e.length){const n=mx(e);t.setRealPlayer(n)}}),a.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let A=0;A<p.length;A++){const t=p[A],e=t.__ng_removed;if($_(t,"ng-leave"),e&&e.hasAnimation)continue;let n=[];if(s.size){let e=s.get(t);e&&e.length&&n.push(...e);let a=this.driver.query(t,".ng-animating",!0);for(let t=0;t<a.length;t++){let e=s.get(a[t]);e&&e.length&&n.push(...e)}}const a=n.filter(t=>!t.destroyed);a.length?Z_(this,t,a):this.processLeaveNode(t)}return p.length=0,N.forEach(t=>{this.players.push(t),t.onDone(()=>{t.destroy();const e=this.players.indexOf(t);this.players.splice(e,1)}),t.play()}),N}elementContainsData(t,e){let n=!1;const a=e.__ng_removed;return a&&a.setForRemoval&&(n=!0),this.playersByElement.has(e)&&(n=!0),this.playersByQueriedElement.has(e)&&(n=!0),this.statesByElement.has(e)&&(n=!0),this._fetchNamespace(t).elementContainsData(e)||n}afterFlush(t){this._flushFns.push(t)}afterFlushAnimationsDone(t){this._whenQuietFns.push(t)}_getPreviousPlayers(t,e,n,a,r){let i=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(i=e)}else{const e=this.playersByElement.get(t);if(e){const t=!r||"void"==r;e.forEach(e=>{e.queued||(t||e.triggerName==a)&&i.push(e)})}}return(n||a)&&(i=i.filter(t=>!(n&&n!=t.namespaceId||a&&a!=t.triggerName))),i}_beforeAnimationBuild(t,e,n){const a=e.element,r=e.isRemovalTransition?void 0:t,i=e.isRemovalTransition?void 0:e.triggerName;for(const s of e.timelines){const t=s.element,u=t!==a,o=Tx(n,t,[]);this._getPreviousPlayers(t,u,r,i,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),o.push(t)})}Hx(a,e.fromStyles)}_buildAnimation(t,e,n,a,r,i){const s=e.triggerName,u=e.element,o=[],l=new Set,d=new Set,c=e.timelines.map(e=>{const c=e.element;l.add(c);const f=c.__ng_removed;if(f&&f.removedBeforeQueried)return new W.d(e.duration,e.delay);const h=c!==u,g=function(t){const e=[];return function t(e,n){for(let a=0;a<e.length;a++){const r=e[a];r instanceof W.k?t(r.players,n):n.push(r)}}(t,e),e}((n.get(c)||M_).map(t=>t.getRealPlayer())).filter(t=>!!t.element&&t.element===c),p=r.get(c),b=i.get(c),m=yx(0,this._normalizer,0,e.keyframes,p,b),y=this._buildPlayer(e,m,g);if(e.subTimeline&&a&&d.add(c),h){const e=new z_(t,s,c);e.setRealPlayer(y),o.push(e)}return y});o.forEach(t=>{Tx(this.playersByQueriedElement,t.element,[]).push(t),t.onDone(()=>function(t,e,n){let a;if(t instanceof Map){if(a=t.get(e),a){if(a.length){const t=a.indexOf(n);a.splice(t,1)}0==a.length&&t.delete(e)}}else if(a=t[e],a){if(a.length){const t=a.indexOf(n);a.splice(t,1)}0==a.length&&delete t[e]}return a}(this.playersByQueriedElement,t.element,t))}),l.forEach(t=>K_(t,"ng-animating"));const f=mx(c);return f.onDestroy(()=>{l.forEach(t=>$_(t,"ng-animating")),Yx(u,e.toStyles)}),d.forEach(t=>{Tx(a,t,[]).push(f)}),f}_buildPlayer(t,e,n){return e.length>0?this.driver.animate(t.element,e,t.duration,t.delay,t.easing,n):new W.d(t.duration,t.delay)}}class z_{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new W.d,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(t){this._containsRealPlayer||(this._player=t,Object.keys(this._queuedCallbacks).forEach(e=>{this._queuedCallbacks[e].forEach(n=>vx(t,e,void 0,n))}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(t.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(t){this.totalTime=t}syncPlayerEvents(t){const e=this._player;e.triggerCallback&&t.onStart(()=>e.triggerCallback("start")),t.onDone(()=>this.finish()),t.onDestroy(()=>this.destroy())}_queueEvent(t,e){Tx(this._queuedCallbacks,t,[]).push(e)}onDone(t){this.queued&&this._queueEvent("done",t),this._player.onDone(t)}onStart(t){this.queued&&this._queueEvent("start",t),this._player.onStart(t)}onDestroy(t){this.queued&&this._queueEvent("destroy",t),this._player.onDestroy(t)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(t){this.queued||this._player.setPosition(t)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(t){const e=this._player;e.triggerCallback&&e.triggerCallback(t)}}function Y_(t){return t&&1===t.nodeType}function H_(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function U_(t,e,n,a,r){const i=[];n.forEach(t=>i.push(H_(t)));const s=[];a.forEach((n,a)=>{const i={};n.forEach(t=>{const n=i[t]=e.computeStyle(a,t,r);n&&0!=n.length||(a.__ng_removed=j_,s.push(a))}),t.set(a,i)});let u=0;return n.forEach(t=>H_(t,i[u++])),s}function W_(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const a=new Set(e),r=new Map;return e.forEach(t=>{const e=function t(e){if(!e)return 1;let i=r.get(e);if(i)return i;const s=e.parentNode;return i=n.has(s)?s:a.has(s)?1:t(s),r.set(e,i),i}(t);1!==e&&n.get(e).push(t)}),n}function K_(t,e){if(t.classList)t.classList.add(e);else{let n=t.$$classes;n||(n=t.$$classes={}),n[e]=!0}}function $_(t,e){if(t.classList)t.classList.remove(e);else{let n=t.$$classes;n&&delete n[e]}}function Z_(t,e,n){mx(n).onDone(()=>t.processLeaveNode(e))}function J_(t,e,n){const a=n.get(t);if(!a)return!1;let r=e.get(t);return r?a.forEach(t=>r.add(t)):e.set(t,a),n.delete(t),!0}class Q_{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new B_(t,e,n),this._timelineEngine=new P_(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,a,r){const i=t+"-"+a;let s=this._triggerCache[i];if(!s){const t=[],e=o_(this._driver,r,t);if(t.length)throw new Error(`The animation trigger "${a}" has failed to build due to the following errors:\n - ${t.join("\n - ")}`);s=function(t,e){return new E_(t,e)}(a,e),this._triggerCache[i]=s}this._transitionEngine.registerTrigger(e,a,s)}register(t,e){this._transitionEngine.register(t,e)}destroy(t,e){this._transitionEngine.destroy(t,e)}onInsert(t,e,n,a){this._transitionEngine.insertNode(t,e,n,a)}onRemove(t,e,n,a){this._transitionEngine.removeNode(t,e,a||!1,n)}disableAnimations(t,e){this._transitionEngine.markElementAsDisabled(t,e)}process(t,e,n,a){if("@"==n.charAt(0)){const[t,r]=wx(n);this._timelineEngine.command(t,e,r,a)}else this._transitionEngine.trigger(t,e,n,a)}listen(t,e,n,a,r){if("@"==n.charAt(0)){const[t,a]=wx(n);return this._timelineEngine.listen(t,e,a,r)}return this._transitionEngine.listen(t,e,n,a,r)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function X_(t,e){let n=null,a=null;return Array.isArray(e)&&e.length?(n=eT(e[0]),e.length>1&&(a=eT(e[e.length-1]))):e&&(n=eT(e)),n||a?new tT(t,n,a):null}let tT=(()=>{class t{constructor(e,n,a){this._element=e,this._startStyles=n,this._endStyles=a,this._state=0;let r=t.initialStylesByElement.get(e);r||t.initialStylesByElement.set(e,r={}),this._initialStyles=r}start(){this._state<1&&(this._startStyles&&Yx(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Yx(this._element,this._initialStyles),this._endStyles&&(Yx(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(Hx(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Hx(this._element,this._endStyles),this._endStyles=null),Yx(this._element,this._initialStyles),this._state=3)}}return t.initialStylesByElement=new WeakMap,t})();function eT(t){let e=null;const n=Object.keys(t);for(let a=0;a<n.length;a++){const r=n[a];nT(r)&&(e=e||{},e[r]=t[r])}return e}function nT(t){return"display"===t||"position"===t}class aT{constructor(t,e,n,a,r,i,s){this._element=t,this._name=e,this._duration=n,this._delay=a,this._easing=r,this._fillMode=i,this._onDoneFn=s,this._finished=!1,this._destroyed=!1,this._startTime=0,this._position=0,this._eventFn=t=>this._handleCallback(t)}apply(){!function(t,e){const n=lT(t,"").trim();n.length&&(function(t,e){let n=0;for(let a=0;a<t.length;a++)","===t.charAt(a)&&n++}(n),e=`${n}, ${e}`),oT(t,"",e)}(this._element,`${this._duration}ms ${this._easing} ${this._delay}ms 1 normal ${this._fillMode} ${this._name}`),uT(this._element,this._eventFn,!1),this._startTime=Date.now()}pause(){rT(this._element,this._name,"paused")}resume(){rT(this._element,this._name,"running")}setPosition(t){const e=iT(this._element,this._name);this._position=t*this._duration,oT(this._element,"Delay",`-${this._position}ms`,e)}getPosition(){return this._position}_handleCallback(t){const e=t._ngTestManualTimestamp||Date.now(),n=1e3*parseFloat(t.elapsedTime.toFixed(3));t.animationName==this._name&&Math.max(e-this._startTime,0)>=this._delay&&n>=this._duration&&this.finish()}finish(){this._finished||(this._finished=!0,this._onDoneFn(),uT(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=lT(t,"").split(","),a=sT(n,e);a>=0&&(n.splice(a,1),oT(t,"",n.join(",")))}(this._element,this._name))}}function rT(t,e,n){oT(t,"PlayState",n,iT(t,e))}function iT(t,e){const n=lT(t,"");return n.indexOf(",")>0?sT(n.split(","),e):sT([n],e)}function sT(t,e){for(let n=0;n<t.length;n++)if(t[n].indexOf(e)>=0)return n;return-1}function uT(t,e,n){n?t.removeEventListener("animationend",e):t.addEventListener("animationend",e)}function oT(t,e,n,a){const r="animation"+e;if(null!=a){const e=t.style[r];if(e.length){const t=e.split(",");t[a]=n,n=t.join(",")}}t.style[r]=n}function lT(t,e){return t.style["animation"+e]}class dT{constructor(t,e,n,a,r,i,s,u){this.element=t,this.keyframes=e,this.animationName=n,this._duration=a,this._delay=r,this._finalStyles=s,this._specialStyles=u,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this.currentSnapshot={},this._state=0,this.easing=i||"linear",this.totalTime=a+r,this._buildStyler()}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}destroy(){this.init(),this._state>=4||(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}_flushDoneFns(){this._onDoneFns.forEach(t=>t()),this._onDoneFns=[]}_flushStartFns(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}finish(){this.init(),this._state>=3||(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}setPosition(t){this._styler.setPosition(t)}getPosition(){return this._styler.getPosition()}hasStarted(){return this._state>=2}init(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}play(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}pause(){this.init(),this._styler.pause()}restart(){this.reset(),this.play()}reset(){this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new aT(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",()=>this.finish())}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}beforeDestroy(){this.init();const t={};if(this.hasStarted()){const e=this._state>=3;Object.keys(this._finalStyles).forEach(n=>{"offset"!=n&&(t[n]=e?this._finalStyles[n]:n_(this.element,n))})}this.currentSnapshot=t}}class cT extends W.d{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=Dx(e)}init(){!this.__initialized&&this._startingStyles&&(this.__initialized=!0,Object.keys(this._styles).forEach(t=>{this._startingStyles[t]=this.element.style[t]}),super.init())}play(){this._startingStyles&&(this.init(),Object.keys(this._styles).forEach(t=>this.element.style.setProperty(t,this._styles[t])),super.play())}destroy(){this._startingStyles&&(Object.keys(this._startingStyles).forEach(t=>{const e=this._startingStyles[t];e?this.element.style.setProperty(t,e):this.element.style.removeProperty(t)}),this._startingStyles=null,super.destroy())}}class fT{constructor(){this._count=0,this._head=document.querySelector("head"),this._warningIssued=!1}validateStyleProperty(t){return Ax(t)}matchesElement(t,e){return kx(t,e)}containsElement(t,e){return Ex(t,e)}query(t,e,n){return Lx(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>Dx(t));let a=`@keyframes ${e} {\n`,r="";n.forEach(t=>{r=" ";const e=parseFloat(t.offset);a+=`${r}${100*e}% {\n`,r+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(a+=`${r}animation-timing-function: ${n};\n`));default:return void(a+=`${r}${e}: ${n};\n`)}}),a+=r+"}\n"}),a+="}\n";const i=document.createElement("style");return i.innerHTML=a,i}animate(t,e,n,a,r,i=[],s){s&&this._notifyFaultyScrubber();const u=i.filter(t=>t instanceof dT),o={};Xx(n,a)&&u.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>o[t]=e[t])});const l=function(t){let e={};return t&&(Array.isArray(t)?t:[t]).forEach(t=>{Object.keys(t).forEach(n=>{"offset"!=n&&"easing"!=n&&(e[n]=t[n])})}),e}(e=t_(t,e,o));if(0==n)return new cT(t,l);const d="gen_css_kf_"+this._count++,c=this.buildKeyframeElement(t,d,e);document.querySelector("head").appendChild(c);const f=X_(t,e),h=new dT(t,e,d,n,a,r,l,f);return h.onDestroy(()=>{var t;(t=c).parentNode.removeChild(t)}),h}_notifyFaultyScrubber(){this._warningIssued||(console.warn("@angular/animations: please load the web-animations.js polyfill to allow programmatic access...\n","  visit http://bit.ly/IWukam to learn more about using the web-animation-js polyfill."),this._warningIssued=!0)}}class hT{constructor(t,e,n,a){this.element=t,this.keyframes=e,this.options=n,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this.time=0,this.parentPlayer=null,this.currentSnapshot={},this._duration=n.duration,this._delay=n.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_triggerWebAnimation(t,e,n){return t.animate(e,n)}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(t=>t()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}setPosition(t){this.domPlayer.currentTime=t*this.time}getPosition(){return this.domPlayer.currentTime/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(e=>{"offset"!=e&&(t[e]=this._finished?this._finalKeyframe[e]:n_(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class gT{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(pT().toString()),this._cssKeyframesDriver=new fT}validateStyleProperty(t){return Ax(t)}matchesElement(t,e){return kx(t,e)}containsElement(t,e){return Ex(t,e)}query(t,e,n){return Lx(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,a,r,i=[],s){if(!s&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,a,r,i);const u={duration:n,delay:a,fill:0==a?"both":"forwards"};r&&(u.easing=r);const o={},l=i.filter(t=>t instanceof hT);Xx(n,a)&&l.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>o[t]=e[t])});const d=X_(t,e=t_(t,e=e.map(t=>Gx(t,!1)),o));return new hT(t,e,u,d)}}function pT(){return"undefined"!=typeof window&&void 0!==window.document&&Element.prototype.animate||{}}class bT extends W.b{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:s.ViewEncapsulation.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?Object(W.f)(t):t;return vT(this._renderer,null,e,"register",[n]),new mT(e,this._renderer)}}class mT extends W.c{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new yT(this._id,t,e||{},this._renderer)}}class yT{constructor(t,e,n,a){this.id=t,this.element=e,this._renderer=a,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",n)}_listen(t,e){return this._renderer.listen(this.element,`@@${this.id}:${t}`,e)}_command(t,...e){return vT(this._renderer,this.element,this.id,t,e)}onDone(t){this._listen("done",t)}onStart(t){this._listen("start",t)}onDestroy(t){this._listen("destroy",t)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset")}setPosition(t){this._command("setPosition",t)}getPosition(){return 0}}function vT(t,e,n,a,r){return t.setProperty(e,`@@${n}:${a}`,r)}class xT{constructor(t,e,n){this.delegate=t,this.engine=e,this._zone=n,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),e.onRemovalComplete=(t,e)=>{e&&e.parentNode(t)&&e.removeChild(t.parentNode,t)}}createRenderer(t,e){const n=this.delegate.createRenderer(t,e);if(!(t&&e&&e.data&&e.data.animation)){let t=this._rendererCache.get(n);return t||(t=new _T("",n,this.engine),this._rendererCache.set(n,t)),t}const a=e.id,r=e.id+"-"+this._currentId;return this._currentId++,this.engine.register(r,t),e.data.animation.forEach(e=>this.engine.registerTrigger(a,r,t,e.name,e)),new TT(this,r,n,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){this.promise.then(()=>{this._microtaskId++})}scheduleListenerCallback(t,e,n){t>=0&&t<this._microtaskId?this._zone.run(()=>e(n)):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(t=>{const[e,n]=t;e(n)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([e,n]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}}class _T{constructor(t,e,n){this.namespaceId=t,this.delegate=e,this.engine=n,this.destroyNode=this.delegate.destroyNode?t=>e.destroyNode(t):null}get data(){return this.delegate.data}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()}createElement(t,e){return this.delegate.createElement(t,e)}createComment(t){return this.delegate.createComment(t)}createText(t){return this.delegate.createText(t)}appendChild(t,e){this.delegate.appendChild(t,e),this.engine.onInsert(this.namespaceId,e,t,!1)}insertBefore(t,e,n){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,!0)}removeChild(t,e,n){this.engine.onRemove(this.namespaceId,e,this.delegate,n)}selectRootElement(t,e){return this.delegate.selectRootElement(t,e)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setAttribute(t,e,n,a){this.delegate.setAttribute(t,e,n,a)}removeAttribute(t,e,n){this.delegate.removeAttribute(t,e,n)}addClass(t,e){this.delegate.addClass(t,e)}removeClass(t,e){this.delegate.removeClass(t,e)}setStyle(t,e,n,a){this.delegate.setStyle(t,e,n,a)}removeStyle(t,e,n){this.delegate.removeStyle(t,e,n)}setProperty(t,e,n){"@"==e.charAt(0)&&"@.disabled"==e?this.disableAnimations(t,!!n):this.delegate.setProperty(t,e,n)}setValue(t,e){this.delegate.setValue(t,e)}listen(t,e,n){return this.delegate.listen(t,e,n)}disableAnimations(t,e){this.engine.disableAnimations(t,e)}}class TT extends _T{constructor(t,e,n,a){super(e,n,a),this.factory=t,this.namespaceId=e}setProperty(t,e,n){"@"==e.charAt(0)?"."==e.charAt(1)&&"@.disabled"==e?this.disableAnimations(t,n=void 0===n||!!n):this.engine.process(this.namespaceId,t,e.substr(1),n):this.delegate.setProperty(t,e,n)}listen(t,e,n){if("@"==e.charAt(0)){const a=function(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(t);let r=e.substr(1),i="";return"@"!=r.charAt(0)&&([r,i]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(r)),this.engine.listen(this.namespaceId,a,r,i,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}class wT extends Q_{constructor(t,e,n){super(t.body,e,n)}}function OT(){return"function"==typeof pT()?new gT:new fT}function ST(){return new I_}function IT(t,e,n){return new xT(t,e,n)}const NT=new s.InjectionToken("AnimationModuleType");class CT{}var RT=n("Avrn");let AT=(()=>{class t{constructor(t,e){this.router=t,this.authStorageService=e}canActivate(){return!(this.authStorageService.isLoggedIn()&&!this.authStorageService.isSSO()&&this.authStorageService.getPwdUpdateRequired()&&(this.router.navigate(["/login-change-password"]),1))}canActivateChild(){return this.canActivate()}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](Et.m),s["ɵɵinject"](J.a))},token:t,providedIn:"root"}),t})();var kT=n("Vhfg");let ET=(()=>{class t{constructor(t,e){this.http=t,this.router=e}canActivate(t){return this.doCheck(t)}canActivateChild(t){return this.doCheck(t)}doCheck(e){if(e.url.length>0&&t.WHITELIST.includes(e.url[0].path))return Object(_e.a)(!0);const n=e.data.moduleStatusGuardConfig;return this.http.get(`api/${n.apiPath}/status`).pipe(Object(Qe.a)(t=>(t.available||this.router.navigate([n.redirectTo,t.message||""]),t.available)),Object(Oe.a)(()=>(this.router.navigate([n.redirectTo]),Object(_e.a)(!1))))}}return t.WHITELIST=["501"],t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c),s["ɵɵinject"](Et.m))},token:t,providedIn:"root"}),t})(),LT=(()=>{class t{constructor(t,e){this.authStorageService=t,this.router=e}canActivate(){return!this.authStorageService.isSSO()||(this.router.navigate(["404"]),!1)}canActivateChild(){return this.canActivate()}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](J.a),s["ɵɵinject"](Et.m))},token:t,providedIn:"root"}),t})();class DT extends oa{resolve(t){const e=[],n=t.queryParams.fromLink||null;let a="";switch(n){case"/monitor":a="Monitors";break;case"/hosts":a="Hosts"}return e.push({text:"Cluster",path:null}),e.push({text:a,path:n}),e.push({text:"Performance Counters",path:""}),e}}class PT extends oa{resolve(t){const e=t.params.name;return[{text:X.startCase(e)+"/Edit",path:e}]}}const MT={breadcrumbs:"Cluster/Hosts"},qT={breadcrumbs:St.a.CREATE},jT={breadcrumbs:"Cluster/Monitors"},FT={breadcrumbs:"Cluster/Services"},VT={breadcrumbs:St.a.CREATE},GT={breadcrumbs:"Cluster/Inventory"},BT={breadcrumbs:"Cluster/OSDs"},zT={breadcrumbs:St.a.CREATE},YT={breadcrumbs:"Cluster/Configuration"},HT={breadcrumbs:St.a.EDIT},UT={breadcrumbs:"Cluster/CRUSH map"},WT={breadcrumbs:"Cluster/Logs"},KT={breadcrumbs:"Telemetry configuration"},$T={breadcrumbs:"Cluster/Monitoring"},ZT={breadcrumbs:St.a.CREATE+" Silence"},JT={breadcrumbs:St.a.CREATE},QT={breadcrumbs:St.a.EDIT},XT={breadcrumbs:St.a.RECREATE},tw={breadcrumbs:DT},ew={breadcrumbs:"Cluster/Manager Modules"},nw={breadcrumbs:PT},aw={breadcrumbs:"Pools"},rw=()=>Promise.all([n.e(1),n.e(6)]).then(n.bind(null,"nOaW")).then(t=>t.RoutedPoolModuleNgFactory),iw={breadcrumbs:!0,text:"Block",path:null},sw=()=>Promise.all([n.e(1),n.e(5)]).then(n.bind(null,"J6Oi")).then(t=>t.RoutedBlockModuleNgFactory),uw={breadcrumbs:"Filesystems"},ow={moduleStatusGuardConfig:{apiPath:"rgw",redirectTo:"rgw/501"},breadcrumbs:!0,text:"Object Gateway",path:null},lw=()=>n.e(7).then(n.bind(null,"Znkk")).then(t=>t.RoutedRgwModuleNgFactory),dw={breadcrumbs:"User management",path:null},cw=()=>n.e(8).then(n.bind(null,"DY6s")).then(t=>t.RoutedAuthModuleNgFactory),fw={breadcrumbs:"User profile",path:null},hw={breadcrumbs:St.a.EDIT},gw={breadcrumbs:"NFS"},pw={moduleStatusGuardConfig:{apiPath:"nfs-ganesha",redirectTo:"nfs/501"},breadcrumbs:"NFS"},bw={breadcrumbs:St.a.CREATE},mw={breadcrumbs:St.a.EDIT};class yw{}var vw=n("yT6U"),xw=n("4DD9"),_w=n("+0ag"),Tw=n("IzCI"),ww=n("Dwqy"),Ow=n("uYzU"),Sw=n("nSDx"),Iw=n("SB+Q"),Nw=n("BQkM"),Cw=n("dEH0"),Rw=n("G1/K"),Aw=n("TJUb"),kw=n("efK2");class Ew{constructor(){this.closeOthers=!1,this.isAnimated=!1}}class Lw{static forRoot(){return{ngModule:Lw,providers:[Ew]}}}let Dw=(()=>{class t{constructor(t){this.http=t}jsError(t,e,n){return this.http.post("ui-api/logging/js-error",{url:t,message:e,stack:n})}}return t.ngInjectableDef=s["ɵɵdefineInjectable"]({factory:function(){return new t(s["ɵɵinject"](et.c))},token:t,providedIn:ue.a}),t})();class Pw{constructor(t){this.injector=t}handleError(t){const e=this.injector.get(Dw),n=window.location.href;throw e.jsError(n,t&&t.message,t&&t.stack).subscribe(),t}}var Mw=n("aHM3"),qw=n("9Xeq"),jw=n("yGOH"),Fw=n("bxSN"),Vw=n("V/fk"),Gw=n("ChqD"),Bw=n("PCNd"),zw=n("LceX");class Yw{}class Hw{}var Uw=n("G6Q+");class Ww{}var Kw=n("kJI8");class $w{}class Zw{}class Jw{}class Qw{}class Xw{}var tO=s["ɵcmf"](o,[l],(function(t){return s["ɵmod"]([s["ɵmpd"](512,s.ComponentFactoryResolver,s["ɵCodegenComponentFactoryResolver"],[[8,[x,_.a,wa,Kr,Us,du,mu,ku,Wo,xi,Hl,bd,Ed,Jd,fc,_f,Mf,lh,kh,Mh,Hh,bg,Xg,hp,yp,Ep,lm,gm,wm,Pm,Vm,Hm,Zm,ey,M,Y,ny.a,Jt.a,ay.a,ry.a,ry.b,iy.a,sy.a,uy.a,oy.a,ly.a,dy.a,dy.c,dy.b,dy.d,gy,Ay,bl,qy,Yy,Qy,cv,yv,jv,Kv,ex,ix,lx,hx]],[3,s.ComponentFactoryResolver],s.NgModuleRef]),s["ɵmpd"](4608,et.j,et.p,[i.DOCUMENT,s.PLATFORM_ID,et.n]),s["ɵmpd"](4608,et.q,et.q,[et.j,et.o]),s["ɵmpd"](4608,J.a,J.a,[]),s["ɵmpd"](5120,et.a,(function(t,e,n,a){return[t,new px(e,n,a)]}),[et.q,Et.m,J.a,bt.a]),s["ɵmpd"](4608,et.m,et.m,[]),s["ɵmpd"](6144,et.k,null,[et.m]),s["ɵmpd"](4608,et.i,et.i,[et.k]),s["ɵmpd"](6144,et.b,null,[et.i]),s["ɵmpd"](4608,et.g,et.l,[et.b,s.Injector]),s["ɵmpd"](4608,et.c,et.c,[et.g]),s["ɵmpd"](4352,s.LOCALE_ID,"en-US",[]),s["ɵmpd"](4608,i.NgLocalization,i.NgLocaleLocalization,[s.LOCALE_ID,[2,i["ɵangular_packages_common_common_a"]]]),s["ɵmpd"](5120,s["ɵangular_packages_core_core_ba"],s["ɵangular_packages_core_core_r"],[s.NgZone]),s["ɵmpd"](5120,s.APP_ID,s["ɵangular_packages_core_core_f"],[]),s["ɵmpd"](5120,s.IterableDiffers,s["ɵangular_packages_core_core_n"],[]),s["ɵmpd"](5120,s.KeyValueDiffers,s["ɵangular_packages_core_core_o"],[]),s["ɵmpd"](4608,ve.b,ve.k,[i.DOCUMENT]),s["ɵmpd"](6144,s.Sanitizer,null,[ve.b]),s["ɵmpd"](4608,ve.e,ve.g,[]),s["ɵmpd"](5120,ve.c,(function(t,e,n,a,r,i,s,u){return[new ve.i(t,e,n),new ve.n(a),new ve.m(r,i,s,u)]}),[i.DOCUMENT,s.NgZone,s.PLATFORM_ID,i.DOCUMENT,i.DOCUMENT,ve.e,s["ɵConsole"],[2,ve.f]]),s["ɵmpd"](4608,ve.d,ve.d,[ve.c,s.NgZone]),s["ɵmpd"](135680,ve.l,ve.l,[i.DOCUMENT]),s["ɵmpd"](4608,ve.j,ve.j,[ve.d,ve.l,s.APP_ID]),s["ɵmpd"](5120,Mx,OT,[]),s["ɵmpd"](5120,S_,ST,[]),s["ɵmpd"](4608,Q_,wT,[i.DOCUMENT,Mx,S_]),s["ɵmpd"](5120,s.RendererFactory2,IT,[ve.j,Q_,s.NgZone]),s["ɵmpd"](6144,ve.o,null,[ve.l]),s["ɵmpd"](4608,s.Testability,s.Testability,[s.NgZone]),s["ɵmpd"](4608,W.b,bT,[s.RendererFactory2,i.DOCUMENT]),s["ɵmpd"](5120,Et.a,Et.B,[Et.m]),s["ɵmpd"](4608,Et.g,Et.g,[]),s["ɵmpd"](6144,Et.h,null,[Et.g]),s["ɵmpd"](135680,Et.s,Et.s,[Et.m,s.NgModuleFactoryLoader,s.Compiler,s.Injector,Et.h]),s["ɵmpd"](4608,Et.f,Et.f,[]),s["ɵmpd"](5120,Et.G,Et.x,[Et.m,i.ViewportScroller,Et.i]),s["ɵmpd"](5120,Et.j,Et.E,[Et.C]),s["ɵmpd"](5120,s.APP_BOOTSTRAP_LISTENER,(function(t){return[t]}),[Et.j]),s["ɵmpd"](4608,PT,PT,[]),s["ɵmpd"](4608,DT,DT,[]),s["ɵmpd"](4608,K.D,K.D,[]),s["ɵmpd"](4608,K.h,K.h,[]),s["ɵmpd"](4608,vw.a,vw.a,[]),s["ɵmpd"](4608,xw.a,xw.a,[]),s["ɵmpd"](5120,s.TRANSLATIONS,u,[s.LOCALE_ID]),s["ɵmpd"](4608,fe.a,fe.a,[s.TRANSLATIONS_FORMAT,s.TRANSLATIONS,s.LOCALE_ID,[2,fe.b]]),s["ɵmpd"](4608,md.a,md.a,[fe.a]),s["ɵmpd"](4608,i.DatePipe,i.DatePipe,[s.LOCALE_ID]),s["ɵmpd"](4608,ks.a,ks.a,[]),s["ɵmpd"](4608,_w.a,_w.a,[]),s["ɵmpd"](4608,Ka.a,Ka.a,[]),s["ɵmpd"](4608,Fa.a,Fa.a,[Ka.a]),s["ɵmpd"](4608,Tw.a,Tw.a,[Ka.a]),s["ɵmpd"](4608,Va.a,Va.a,[Ka.a]),s["ɵmpd"](4608,ww.a,ww.a,[]),s["ɵmpd"](4608,Ow.a,Ow.a,[]),s["ɵmpd"](4608,Zo.a,Zo.a,[]),s["ɵmpd"](4608,rf.a,rf.a,[]),s["ɵmpd"](4608,He.a,He.a,[i.DatePipe]),s["ɵmpd"](4608,Sw.a,Sw.a,[]),s["ɵmpd"](4608,Iw.a,Iw.a,[]),s["ɵmpd"](4608,Pp.a,Pp.a,[]),s["ɵmpd"](4608,Nw.a,Nw.a,[]),s["ɵmpd"](4608,Cw.a,Cw.a,[]),s["ɵmpd"](4608,Rw.a,Rw.a,[fe.a]),s["ɵmpd"](4608,Xs.a,Xs.a,[]),s["ɵmpd"](4608,Aw.a,Aw.a,[]),s["ɵmpd"](4608,kw.a,kw.a,[]),s["ɵmpd"](4608,ye.a,ye.a,[ve.b]),s["ɵmpd"](4608,Qt.b,Qt.b,[]),s["ɵmpd"](4608,Ia.a,Ia.a,[]),s["ɵmpd"](4608,Na.a,Na.a,[s.NgZone,s.RendererFactory2,s.PLATFORM_ID]),s["ɵmpd"](4608,U.a,U.a,[s.ComponentFactoryResolver,s.NgZone,s.Injector,Na.a,s.ApplicationRef]),s["ɵmpd"](4608,Be.c,Be.c,[]),s["ɵmpd"](4608,ba.a,ba.a,[]),s["ɵmpd"](4608,Ct.b,Ct.b,[s.RendererFactory2,U.a]),s["ɵmpd"](4608,Wf.y,Wf.y,[i.DOCUMENT]),s["ɵmpd"](4608,Wf.r,Wf.r,[]),s["ɵmpd"](4608,Wf.a,Wf.a,[]),s["ɵmpd"](4608,H.f,H.f,[]),s["ɵmpd"](4608,RT.a,RT.a,[Et.m,J.a]),s["ɵmpd"](4608,Sa.f,Sa.f,[]),s["ɵmpd"](4608,st.t,st.t,[]),s["ɵmpd"](4608,st.v,st.v,[]),s["ɵmpd"](4608,st.a,st.a,[]),s["ɵmpd"](4608,st.h,st.h,[]),s["ɵmpd"](4608,st.d,st.d,[]),s["ɵmpd"](4608,st.j,st.j,[]),s["ɵmpd"](4608,st.l,st.l,[]),s["ɵmpd"](4608,st.u,st.u,[st.v,st.l]),s["ɵmpd"](5120,O,A,[R]),s["ɵmpd"](4608,N,N,[O]),s["ɵmpd"](4608,Hu,Hu,[]),s["ɵmpd"](4608,Ec,Ec,[]),s["ɵmpd"](4608,gc,gc,[]),s["ɵmpd"](4608,Pc,Pc,[]),s["ɵmpd"](4608,ec.a,ec.a,[]),s["ɵmpd"](4608,Ew,Ew,[]),s["ɵmpd"](4608,Q.g,Q.g,[Q.b]),s["ɵmpd"](1073742336,et.e,et.e,[]),s["ɵmpd"](1073742336,et.d,et.d,[]),s["ɵmpd"](1073742336,i.CommonModule,i.CommonModule,[]),s["ɵmpd"](512,s.ErrorHandler,Pw,[s.Injector]),s["ɵmpd"](1024,s.NgProbeToken,(function(){return[Et.w()]}),[]),s["ɵmpd"](512,Et.C,Et.C,[s.Injector]),s["ɵmpd"](1024,s.APP_INITIALIZER,(function(t,e){return[ve.p(t),Et.D(e)]}),[[2,s.NgProbeToken],Et.C]),s["ɵmpd"](512,s.ApplicationInitStatus,s.ApplicationInitStatus,[[2,s.APP_INITIALIZER]]),s["ɵmpd"](131584,s.ApplicationRef,s.ApplicationRef,[s.NgZone,s["ɵConsole"],s.Injector,s.ErrorHandler,s.ComponentFactoryResolver,s.ApplicationInitStatus]),s["ɵmpd"](1073742336,s.ApplicationModule,s.ApplicationModule,[s.ApplicationRef]),s["ɵmpd"](1073742336,ve.a,ve.a,[[3,ve.a]]),s["ɵmpd"](1073742336,CT,CT,[]),s["ɵmpd"](1073742336,d.i,d.i,[]),s["ɵmpd"](1024,Et.v,Et.z,[[3,Et.m]]),s["ɵmpd"](512,Et.u,Et.c,[]),s["ɵmpd"](512,Et.b,Et.b,[]),s["ɵmpd"](256,Et.i,{useHash:!0,preloadingStrategy:Et.g},[]),s["ɵmpd"](1024,i.LocationStrategy,Et.y,[i.PlatformLocation,[2,i.APP_BASE_HREF],Et.i]),s["ɵmpd"](512,i.Location,i.Location,[i.LocationStrategy,i.PlatformLocation]),s["ɵmpd"](512,s.Compiler,s.Compiler,[]),s["ɵmpd"](512,s.NgModuleFactoryLoader,s.SystemJsNgModuleLoader,[s.Compiler,[2,s.SystemJsNgModuleLoaderConfig]]),s["ɵmpd"](1024,Et.k,(function(){return[[{path:"",redirectTo:"dashboard",pathMatch:"full"},{path:"",component:va,canActivate:[RT.a,AT],canActivateChild:[RT.a,AT],children:[{path:"dashboard",component:Br},{path:"hosts",data:MT,children:[{path:"",component:Ms},{path:"create",component:nu,data:qT}]},{path:"monitor",component:fu,data:jT},{path:"services",data:FT,children:[{path:"",component:Su},{path:"create",component:ao,data:VT}]},{path:"inventory",component:gi,data:GT},{path:"osd",data:BT,children:[{path:"",component:Al},{path:"create",component:id,data:zT}]},{path:"configuration",data:YT,children:[{path:"",component:Sd},{path:"edit/:name",component:Dd,data:HT}]},{path:"crush-map",component:rc,data:UT},{path:"logs",component:uf,data:WT},{path:"telemetry",component:Tf,data:KT},{path:"monitoring",data:$T,children:[{path:"",component:Xf},{path:"silence/create",component:hh,data:ZT},{path:"silence/create/:id",component:hh,data:JT},{path:"silence/edit/:id",component:hh,data:QT},{path:"silence/recreate/:id",component:hh,data:XT}]},{path:"perf_counters/:type/:id",component:Eh,data:tw},{path:"mgr-modules",data:ew,children:[{path:"",component:Gh},{path:"edit/:name",component:Uh,data:nw}]},{path:"pool",data:aw,loadChildren:rw},{path:"block",data:iw,loadChildren:sw},{path:"cephfs",component:$g,canActivate:[kT.a],data:uw},{path:"rgw",canActivateChild:[kT.a,ET],data:ow,loadChildren:lw},{path:"user-management",data:dw,loadChildren:cw},{path:"user-profile",data:fw,children:[{path:"edit",component:ep,canActivate:[LT],data:hw}]},{path:"nfs/501/:message",component:gp,data:gw},{path:"nfs",canActivateChild:[kT.a,ET],data:pw,children:[{path:"",component:Sp},{path:"create",component:Kp,data:bw},{path:"edit/:cluster_id/:export_id",component:Kp,data:mw}]}]},{path:"",component:dm,children:[{path:"login",component:bm},{path:"login-change-password",component:Om,canActivate:[LT]}]},{path:"",component:Mm,children:[{path:"sso/404",component:Gm},{path:"403",component:Um},{path:"404",component:Jm},{path:"**",redirectTo:"/404"}]}]]}),[]),s["ɵmpd"](1024,Et.m,Et.A,[s.ApplicationRef,Et.u,Et.b,i.Location,s.Injector,s.NgModuleFactoryLoader,s.Compiler,Et.k,Et.i,[2,Et.t],[2,Et.l]]),s["ɵmpd"](1073742336,Et.q,Et.q,[[2,Et.v],[2,Et.m]]),s["ɵmpd"](1073742336,yw,yw,[]),s["ɵmpd"](1073742336,k,k,[]),s["ɵmpd"](1073742336,Mw.a,Mw.a,[]),s["ɵmpd"](1073742336,K.C,K.C,[]),s["ɵmpd"](1073742336,K.n,K.n,[]),s["ɵmpd"](1073742336,Ia.d,Ia.d,[]),s["ɵmpd"](1073742336,K.y,K.y,[]),s["ɵmpd"](1073742336,qw.a,qw.a,[]),s["ɵmpd"](1073742336,Qt.c,Qt.c,[]),s["ɵmpd"](1073742336,Be.d,Be.d,[]),s["ɵmpd"](1073742336,ba.d,ba.d,[]),s["ɵmpd"](1073742336,Ma.b,Ma.b,[]),s["ɵmpd"](1073742336,Ct.e,Ct.e,[]),s["ɵmpd"](1073742336,jw.a,jw.a,[]),s["ɵmpd"](1073742336,H.e,H.e,[]),s["ɵmpd"](1073742336,Q.f,Q.f,[]),s["ɵmpd"](1073742336,Fw.ClickOutsideModule,Fw.ClickOutsideModule,[]),s["ɵmpd"](1073742336,We.b,We.b,[]),s["ɵmpd"](1073742336,Vw.a,Vw.a,[]),s["ɵmpd"](1073742336,Wf.u,Wf.u,[]),s["ɵmpd"](1073742336,Gw.a,Gw.a,[]),s["ɵmpd"](1073742336,ue.a,ue.a,[]),s["ɵmpd"](1073742336,Bw.a,Bw.a,[]),s["ɵmpd"](1073742336,Sa.d,Sa.d,[]),s["ɵmpd"](1073742336,st.g,st.g,[]),s["ɵmpd"](1073742336,zw.a,zw.a,[]),s["ɵmpd"](1073742336,$t,$t,[]),s["ɵmpd"](1073742336,Yw,Yw,[]),s["ɵmpd"](1073742336,Hw,Hw,[]),s["ɵmpd"](1073742336,Uw.a,Uw.a,[]),s["ɵmpd"](1073742336,Ww,Ww,[]),s["ɵmpd"](1073742336,Wu,Wu,[]),s["ɵmpd"](1073742336,qc,qc,[]),s["ɵmpd"](1073742336,ac.b,ac.b,[]),s["ɵmpd"](1073742336,Di.a,Di.a,[]),s["ɵmpd"](1073742336,Kw.a,Kw.a,[]),s["ɵmpd"](1073742336,$w,$w,[]),s["ɵmpd"](1073742336,Zw,Zw,[]),s["ɵmpd"](1073742336,Jw,Jw,[]),s["ɵmpd"](1073742336,Qw,Qw,[]),s["ɵmpd"](1073742336,Xw,Xw,[]),s["ɵmpd"](1073742336,Lw,Lw,[]),s["ɵmpd"](1073742336,o,o,[]),s["ɵmpd"](256,et.n,"XSRF-TOKEN",[]),s["ɵmpd"](256,et.o,"X-XSRF-TOKEN",[]),s["ɵmpd"](256,s["ɵAPP_ROOT"],!0,[]),s["ɵmpd"](256,NT,"BrowserAnimations",[]),s["ɵmpd"](256,s.TRANSLATIONS_FORMAT,"xlf",[]),s["ɵmpd"](256,H.a,{autoClose:!0,insideClick:!1},[]),s["ɵmpd"](256,R,{},[]),s["ɵmpd"](256,d.b,{default:d.a,config:{positionClass:"toast-top-right",preventDuplicates:!0,enableHtml:!0}},[]),s["ɵmpd"](1024,Q.b,(function(){return[[]]}),[]),s["ɵmpd"](256,Q.a,1,[])])}));i.registerLocaleData(r.a),Object(s.enableProdMode)(),ve.h().bootstrapModuleFactory(tO).catch(t=>console.log(t))},zWsK:function(t,e,n){"use strict";n.d(e,"a",(function(){return r})),n.d(e,"b",(function(){return a}));class a{transform(t,e,n){return n?e.call(n,t):e(t)}}class r{}},zavE:function(t,e,n){!function(t){"use strict";t.defineLocale("en-SG",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(t){var e=t%10;return t+(1==~~(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")},week:{dow:1,doy:4}})}(n("wd/R"))},zk60:function(t,e,n){var a=n("2oRo"),r=n("kRJp");t.exports=function(t,e){try{r(a,t,e)}catch(n){a[t]=e}return e}},zx6S:function(t,e,n){!function(t){"use strict";var e={words:{ss:["sekunda","sekunde","sekundi"],m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(t,e){return 1===t?e[0]:t>=2&&t<=4?e[1]:e[2]},translate:function(t,n,a){var r=e.words[a];return 1===a.length?n?r[0]:r[1]:t+" "+e.correctGrammaticalCase(t,r)}};t.defineLocale("sr",{months:"januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sre._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){return["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"][this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",ss:e.translate,m:e.translate,mm:e.translate,h:e.translate,hh:e.translate,d:"dan",dd:e.translate,M:"mesec",MM:e.translate,y:"godinu",yy:e.translate},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}})}(n("wd/R"))}},[[0,0]]]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.8f0b1a650c943458f796.js.LICENSE.txt b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/main.8f0b1a650c943458f796.js.LICENSE.txt
new file mode 100644 (file)
index 0000000..e401131
--- /dev/null
@@ -0,0 +1,113 @@
+/*!
+ * Chart.js v2.8.0
+ * https://www.chartjs.org
+ * (c) 2019 Chart.js Contributors
+ * Released under the MIT License
+ */
+
+/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ * @param {?} cb
+ * @return {?}
+ */
+
+/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ * @type {?}
+ */
+
+/**
+ * @license
+ * Copyright Google Inc. All Rights Reserved.
+ *
+ * Use of this source code is governed by an MIT-style license that can be
+ * found in the LICENSE file at https://angular.io/license
+ */
+
+/**
+ * @license
+ * Lodash <https://lodash.com/>
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
+ * Released under MIT license <https://lodash.com/license>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ */
+
+/**
+ * @license Angular v8.2.14
+ * (c) 2010-2019 Google LLC. https://angular.io/
+ * License: MIT
+ */
+
+/**
+* @license
+* Copyright Google Inc. All Rights Reserved.
+*
+* Use of this source code is governed by an MIT-style license that can be
+* found in the LICENSE file at https://angular.io/license
+*/
+
+//! author : Abdel Said: https://github.com/abdelsaid
+
+//! author : Ahmed Elkhatib
+
+//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira
+
+//! author : Chris Gedrim : https://github.com/chrisgedrim
+
+//! author : Julio Napurí : https://github.com/julionc
+
+//! author : Mikolaj Dadela : https://github.com/mik01aj
+
+//! author : Rafal Hirsz : https://github.com/evoL
+
+//! author : bustta : https://github.com/bustta
+
+//! author : forabi https://github.com/forabi
+
+//! author : lluchs : https://github.com/lluchs
+
+//! author : petrbela : https://github.com/petrbela
+
+//! author: Menelion Elensúle: https://github.com/Oire
+
+//! locale : Arabic [ar]
+
+//! locale : Czech [cs]
+
+//! locale : English (United Kingdom) [en-gb]
+
+//! locale : German [de]
+
+//! locale : Polish [pl]
+
+//! locale : Portuguese (Brazil) [pt-br]
+
+//! locale : Spanish (United States) [es-us]
+
+//! locale : Spanish [es]
+
+//! moment.js locale configuration
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/runtime.47bc076fdcd8bde0c19f.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/runtime.47bc076fdcd8bde0c19f.js
deleted file mode 100644 (file)
index 2b3d3bd..0000000
+++ /dev/null
@@ -1 +0,0 @@
-!function(e){function r(r){for(var n,a,c=r[0],i=r[1],f=r[2],p=0,s=[];p<c.length;p++)a=c[p],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&s.push(o[a][0]),o[a]=0;for(n in i)Object.prototype.hasOwnProperty.call(i,n)&&(e[n]=i[n]);for(l&&l(r);s.length;)s.shift()();return u.push.apply(u,f||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,c=1;c<t.length;c++)0!==o[t[c]]&&(n=!1);n&&(u.splice(r--,1),e=a(a.s=t[0]))}return e}var n={},o={0:0},u=[];function a(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,a),t.l=!0,t.exports}a.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var u,c=document.createElement("script");c.charset="utf-8",c.timeout=120,a.nc&&c.setAttribute("nonce",a.nc),c.src=function(e){return a.p+""+({}[e]||e)+"."+{1:"ecdc99fc68ced4743e9f",5:"3532f17ccbf4b268177b",6:"bbb14e8467017ca13aa5",7:"eee5262a4f5915f2d5d4",8:"a5d6e73e48ae0cf89ca6"}[e]+".js"}(e);var i=new Error;u=function(r){c.onerror=c.onload=null,clearTimeout(f);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),u=r&&r.target&&r.target.src;i.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",i.name="ChunkLoadError",i.type=n,i.request=u,t[1](i)}o[e]=void 0}};var f=setTimeout((function(){u({type:"timeout",target:c})}),12e4);c.onerror=c.onload=u,document.head.appendChild(c)}return Promise.all(r)},a.m=e,a.c=n,a.d=function(e,r,t){a.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,r){if(1&r&&(e=a(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(a.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)a.d(t,n,(function(r){return e[r]}).bind(null,n));return t},a.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(r,"a",r),r},a.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},a.p="",a.oe=function(e){throw console.error(e),e};var c=window.webpackJsonp=window.webpackJsonp||[],i=c.push.bind(c);c.push=r,c=c.slice();for(var f=0;f<c.length;f++)r(c[f]);var l=i;t()}([]);
\ No newline at end of file
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/runtime.aa14b459a46eea461c85.js b/ceph/src/pybind/mgr/dashboard/frontend/dist/en-US/runtime.aa14b459a46eea461c85.js
new file mode 100644 (file)
index 0000000..d8d2d80
--- /dev/null
@@ -0,0 +1 @@
+!function(e){function r(r){for(var n,a,i=r[0],c=r[1],f=r[2],p=0,d=[];p<i.length;p++)a=i[p],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&d.push(o[a][0]),o[a]=0;for(n in c)Object.prototype.hasOwnProperty.call(c,n)&&(e[n]=c[n]);for(l&&l(r);d.length;)d.shift()();return u.push.apply(u,f||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,i=1;i<t.length;i++)0!==o[t[i]]&&(n=!1);n&&(u.splice(r--,1),e=a(a.s=t[0]))}return e}var n={},o={0:0},u=[];function a(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,a),t.l=!0,t.exports}a.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var u,i=document.createElement("script");i.charset="utf-8",i.timeout=120,a.nc&&i.setAttribute("nonce",a.nc),i.src=function(e){return a.p+""+({}[e]||e)+"."+{1:"f2cb9c77bf340e0ea797",5:"7e995d52d0c4ff2d857a",6:"dc8bd57d45d56da356c9",7:"1c25843a719516e3e84b",8:"d45d4eb6e6f206518908"}[e]+".js"}(e);var c=new Error;u=function(r){i.onerror=i.onload=null,clearTimeout(f);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),u=r&&r.target&&r.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,t[1](c)}o[e]=void 0}};var f=setTimeout((function(){u({type:"timeout",target:i})}),12e4);i.onerror=i.onload=u,document.head.appendChild(i)}return Promise.all(r)},a.m=e,a.c=n,a.d=function(e,r,t){a.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,r){if(1&r&&(e=a(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(a.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)a.d(t,n,(function(r){return e[r]}).bind(null,n));return t},a.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(r,"a",r),r},a.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},a.p="",a.oe=function(e){throw console.error(e),e};var i=window.webpackJsonp=window.webpackJsonp||[],c=i.push.bind(i);i.push=r,i=i.slice();for(var f=0;f<i.length;f++)r(i[f]);var l=c;t()}([]);
\ No newline at end of file
index b42094d1d0b1be10c8297a72b26100149d5fd832..960b6111ca9b71eb9c9f9e5beccefe046a435c77 100644 (file)
@@ -2,7 +2,7 @@
   <ng-container i18n>Only available for RBD images with <strong>fast-diff</strong> enabled</ng-container>
 </ng-template>
 
-<tabset *ngIf="selection">
+<tabset *ngIf="selection && selection.source !== 'REMOVING'">
   <tab i18n-heading
        heading="Details">
     <table class="table table-striped table-bordered">
     </cd-grafana>
   </tab>
 </tabset>
+<ng-container *ngIf="selection && selection.source === 'REMOVING'">
+  <cd-alert-panel type="warning"
+                  i18n>Information can not be displayed for RBD in status 'Removing'.</cd-alert-panel>
+</ng-container>
 
 <ng-template
   #poolConfigurationSourceTpl
index 6a4999d0fc57de47cfa59bcc1927b821a01c7209..e257a07c10127dab81a406607c561d05c6faa72a 100644 (file)
@@ -14,4 +14,7 @@ export class RbdFormModel {
 
   /* Configuration */
   configuration: RbdConfigurationEntry[];
+
+  /* Deletion process */
+  source?: string;
 }
index dc198e90724f6d0b8d2329b463cb5ca3f7d931a4..cd2af51c394f901b0393509655dfd5d0e7183c75 100644 (file)
     </ng-container>
   </div>
 </ng-template>
+
+<ng-template #removingStatTpl
+             let-column="column"
+             let-value="value"
+             let-row="row">
+
+  <i [ngClass]="[icons.spinner, icons.spin]"
+     *ngIf="row.cdExecuting"></i>
+  <span [ngClass]="column?.customTemplateConfig?.valueClass">
+    {{ value }}
+  </span>
+  <span *ngIf="row.cdExecuting"
+        [ngClass]="column?.customTemplateConfig?.executingClass ?
+        column.customTemplateConfig.executingClass :
+        'text-muted italic'">
+    ({{ row.cdExecuting }})
+  </span>
+  <i *ngIf="row.source && row.source === 'REMOVING'"
+     i18n-title
+     title="RBD in status 'Removing'"
+     class="{{ icons.warning }} warn"></i>
+</ng-template>
index 87f8e78f994fec3048ae86a8f8cc6903e3e0be4a..a89abf450309c22d4f6edbdf1ccd4325060c8910 100644 (file)
@@ -306,4 +306,34 @@ describe('RbdListComponent', () => {
       }
     });
   });
+
+  const getActionDisable = (name: string) =>
+    component.tableActions.find((o) => o.name === name).disable;
+
+  const testActions = (selection: any, expected: { [action: string]: string | boolean }) => {
+    expect(getActionDisable('Edit')(selection)).toBe(expected.edit || false);
+    expect(getActionDisable('Delete')(selection)).toBe(expected.delete || false);
+    expect(getActionDisable('Copy')(selection)).toBe(expected.copy || false);
+    expect(getActionDisable('Flatten')(selection)).toBeTruthy();
+    expect(getActionDisable('Move to Trash')(selection)).toBe(expected.moveTrash || false);
+  };
+
+  it('should disable edit, copy, flatten and move action if RBD is in status `Removing`', () => {
+    component.selection.selected = [
+      {
+        name: 'foobar',
+        pool_name: 'rbd',
+        snapshots: [],
+        source: 'REMOVING'
+      }
+    ];
+
+    const message = `Action not possible for an RBD in status 'Removing'`;
+    const expected = {
+      edit: message,
+      copy: message,
+      moveTrash: message
+    };
+    testActions(component.selection, expected);
+  });
 });
index da53bb3fd549a201beb2787176dc7fdbfc3c659c..fccc5e660082a123914110f2dea1495d75016e01 100644 (file)
@@ -10,7 +10,6 @@ import { ConfirmationModalComponent } from '../../../shared/components/confirmat
 import { CriticalConfirmationModalComponent } from '../../../shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
 import { ActionLabelsI18n } from '../../../shared/constants/app.constants';
 import { TableComponent } from '../../../shared/datatable/table/table.component';
-import { CellTemplate } from '../../../shared/enum/cell-template.enum';
 import { Icons } from '../../../shared/enum/icons.enum';
 import { ViewCacheStatus } from '../../../shared/enum/view-cache-status.enum';
 import { CdTableAction } from '../../../shared/models/cd-table-action';
@@ -54,6 +53,8 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
   flattenTpl: TemplateRef<any>;
   @ViewChild('deleteTpl', { static: true })
   deleteTpl: TemplateRef<any>;
+  @ViewChild('removingStatTpl', { static: true })
+  removingStatTpl: TemplateRef<any>;
 
   permission: Permission;
   tableActions: CdTableAction[];
@@ -62,6 +63,7 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
   retries: number;
   viewCacheStatusList: any[];
   selection = new CdTableSelection();
+  icons = Icons;
 
   modalRef: BsModalRef;
 
@@ -131,7 +133,9 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
       permission: 'update',
       icon: Icons.edit,
       routerLink: () => this.urlBuilder.getEdit(getImageUri()),
-      name: this.actionLabels.EDIT
+      name: this.actionLabels.EDIT,
+      disable: (selection: CdTableSelection) =>
+        !selection.hasSingleSelection || this.getRemovingStatusDesc(selection)
     };
     const deleteAction: CdTableAction = {
       permission: 'delete',
@@ -144,7 +148,9 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
       permission: 'create',
       canBePrimary: (selection: CdTableSelection) => selection.hasSingleSelection,
       disable: (selection: CdTableSelection) =>
-        !selection.hasSingleSelection || selection.first().cdExecuting,
+        !selection.hasSingleSelection ||
+        selection.first().cdExecuting ||
+        this.getRemovingStatusDesc(selection),
       icon: Icons.copy,
       routerLink: () => `/block/rbd/copy/${getImageUri()}`,
       name: this.actionLabels.COPY
@@ -152,7 +158,10 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
     const flattenAction: CdTableAction = {
       permission: 'update',
       disable: (selection: CdTableSelection) =>
-        !selection.hasSingleSelection || selection.first().cdExecuting || !selection.first().parent,
+        !selection.hasSingleSelection ||
+        selection.first().cdExecuting ||
+        !selection.first().parent ||
+        this.getRemovingStatusDesc(selection),
       icon: Icons.flatten,
       click: () => this.flattenRbdModal(),
       name: this.actionLabels.FLATTEN
@@ -165,7 +174,8 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
       disable: (selection: CdTableSelection) =>
         !selection.first() ||
         !selection.hasSingleSelection ||
-        selection.first().image_format === RBDImageFormat.V1
+        selection.first().image_format === RBDImageFormat.V1 ||
+        this.getRemovingStatusDesc(selection)
     };
     this.tableActions = [
       addAction,
@@ -183,7 +193,7 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
         name: this.i18n('Name'),
         prop: 'name',
         flexGrow: 2,
-        cellTransformation: CellTemplate.executing
+        cellTemplate: this.removingStatTpl
       },
       {
         name: this.i18n('Pool'),
@@ -441,4 +451,12 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
       this.hasClonedSnapshots(selection.first())
     );
   }
+
+  getRemovingStatusDesc(selection: CdTableSelection): string | boolean {
+    const first = selection.first();
+    if (first && first.source && first.source === 'REMOVING') {
+      return this.i18n(`Action not possible for an RBD in status 'Removing'`);
+    }
+    return false;
+  }
 }
index 5b7010907d3408d301464ade07839b2e9fdc2edb..6df9bf4d4e8709d74b35a811ca3faa1b180bd0fb 100644 (file)
@@ -45,7 +45,7 @@ describe('OsdSummaryPipe', () => {
     ]);
   });
 
-  it('transforms having 3 osd with 2 up, 1 in, 1 down, 1 out', () => {
+  it('transforms having 3 osd with 2 up, 1 in, 1 down, 2 out', () => {
     const value = {
       osds: [
         { up: 1, in: 1 },
@@ -71,18 +71,18 @@ describe('OsdSummaryPipe', () => {
         class: 'card-text-line-break'
       },
       {
-        content: '1 down, 1 out',
+        content: '1 down, 2 out',
         class: 'card-text-error'
       }
     ]);
   });
 
-  it('transforms having 3 osd with 2 up, 2 in, 1 down, 0 out', () => {
+  it('transforms having 3 osd with 2 up, 3 in, 1 down, 0 out', () => {
     const value = {
       osds: [
         { up: 1, in: 1 },
         { up: 1, in: 1 },
-        { up: 0, in: 0 }
+        { up: 0, in: 1 }
       ]
     };
     expect(pipe.transform(value)).toEqual([
@@ -95,7 +95,7 @@ describe('OsdSummaryPipe', () => {
         class: 'card-text-line-break'
       },
       {
-        content: '2 up, 2 in',
+        content: '2 up, 3 in',
         class: ''
       },
       {
@@ -140,4 +140,37 @@ describe('OsdSummaryPipe', () => {
       }
     ]);
   });
+
+  it('transforms having 4 osd with 3 up, 2 in, 1 down, another 2 out', () => {
+    const value = {
+      osds: [
+        { up: 1, in: 1 },
+        { up: 1, in: 0 },
+        { up: 1, in: 0 },
+        { up: 0, in: 1 }
+      ]
+    };
+    expect(pipe.transform(value)).toEqual([
+      {
+        content: '4 total',
+        class: ''
+      },
+      {
+        content: '',
+        class: 'card-text-line-break'
+      },
+      {
+        content: '3 up, 2 in',
+        class: ''
+      },
+      {
+        content: '',
+        class: 'card-text-line-break'
+      },
+      {
+        content: '1 down, 2 out',
+        class: 'card-text-error'
+      }
+    ]);
+  });
 });
index c007c313cf32c780a995fd1a78d9095088ca7dcf..8804ac0f1ca96412d28b498d2c7ec100c875e007 100644 (file)
@@ -41,7 +41,7 @@ export class OsdSummaryPipe implements PipeTransform {
     });
 
     const downCount = value.osds.length - upCount;
-    const outCount = upCount - inCount;
+    const outCount = value.osds.length - inCount;
     if (downCount > 0 || outCount > 0) {
       osdSummary.push({
         content: '',
index 13b94a6cc189f437da787f9c17e5e09eb69ebb88..3251ca267db7b2074d0cda7eef844d3bd2995e49 100644 (file)
                      class="custom-control-input"
                      id="protocolNfsv3"
                      name="protocolNfsv3"
-                     formControlName="protocolNfsv3">
+                     formControlName="protocolNfsv3"
+                     disabled>
               <label i18n
                      class="custom-control-label"
                      for="protocolNfsv3">NFSv3</label>
index 01da887fefb66e972b1d584c0a4ea54e43fbf0b7..ce3c8bf0d7212a5112b40dde595513b9d84475f5 100644 (file)
@@ -94,7 +94,7 @@ describe('NfsFormComponent', () => {
       daemons: [],
       fsal: { fs_name: 'a', name: '', rgw_user_id: '', user_id: '' },
       path: '',
-      protocolNfsv3: true,
+      protocolNfsv3: false,
       protocolNfsv4: true,
       pseudo: '',
       sec_label_xattr: 'security.selinux',
@@ -141,6 +141,15 @@ describe('NfsFormComponent', () => {
     expect(component.nfsForm.get('cluster_id').disabled).toBeTruthy();
   });
 
+  it('should mark NFSv4 protocol as required', () => {
+    component.nfsForm.patchValue({
+      protocolNfsv4: false
+    });
+    component.nfsForm.updateValueAndValidity({ emitEvent: false });
+    expect(component.nfsForm.valid).toBeFalsy();
+    expect(component.nfsForm.get('protocolNfsv4').hasError('required')).toBeTruthy();
+  });
+
   describe('should submit request', () => {
     beforeEach(() => {
       component.nfsForm.patchValue({
index 5e89174e4861037576c832828dd47f01b08f6321..f742bcac24136a496fae97cc125b92b522752abe 100644 (file)
@@ -167,7 +167,7 @@ export class NfsFormComponent implements OnInit {
         })
       }),
       path: new FormControl(''),
-      protocolNfsv3: new FormControl(true, {
+      protocolNfsv3: new FormControl(false, {
         validators: [
           CdValidators.requiredIf({ protocolNfsv4: false }, (value: boolean) => {
             return !value;
index a8bf4c0d9577fd5a6f736378502cadbe313264e1..22619a2d0ab1d40a4e4793233f8c3020dba163bf 100644 (file)
             <span class="invalid-feedback"
                   *ngIf="bucketForm.showError('bid', frm, 'bucketNameExists')"
                   i18n>The chosen name is already in use.</span>
+            <span class="invalid-feedback"
+                  *ngIf="bucketForm.showError('bid', frm, 'containsUpperCase')"
+                  i18n>Bucket names must not contain uppercase characters or underscores.</span>
+            <span class="invalid-feedback"
+                  *ngIf="bucketForm.showError('bid', frm, 'lowerCaseOrNumber')"
+                  i18n>Each label must start and end with a lowercase letter or a number.</span>
+            <span class="invalid-feedback"
+                  *ngIf="bucketForm.showError('bid', frm, 'ipAddress')"
+                  i18n>Bucket names cannot be formatted as IP address.</span>
+            <span class="invalid-feedback"
+                  *ngIf="bucketForm.showError('bid', frm, 'onlyLowerCaseAndNumbers')"
+                  i18n>Bucket names can only contain lowercase letters, numbers, and hyphens.</span>
+            <span class="invalid-feedback"
+                  *ngIf="bucketForm.showError('bid', frm, 'shouldBeInRange')"
+                  i18n>Bucket names must be 3 to 63 characters long.</span>
           </div>
         </div>
 
index 9b4b3ef67824dfec19d8a9c116c09dad8d180afe..c6902afb9742a28e29c7cf5266f3f48e27adb717 100644 (file)
@@ -1,12 +1,12 @@
 import { HttpClientTestingModule } from '@angular/common/http/testing';
-import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { FormControl, ReactiveFormsModule } from '@angular/forms';
+import { ComponentFixture, fakeAsync, TestBed, tick } from '@angular/core/testing';
+import { ReactiveFormsModule } from '@angular/forms';
 import { Router } from '@angular/router';
 import { RouterTestingModule } from '@angular/router/testing';
 
 import * as _ from 'lodash';
 import { ToastrModule } from 'ngx-toastr';
-import { of as observableOf } from 'rxjs';
+import { of as observableOf, throwError } from 'rxjs';
 
 import { configureTestBed, FormHelper, i18nProviders } from '../../../../testing/unit-test-helper';
 import { RgwBucketService } from '../../../shared/api/rgw-bucket.service';
@@ -52,94 +52,91 @@ describe('RgwBucketFormComponent', () => {
   });
 
   describe('bucketNameValidator', () => {
-    const testValidator = (name: string, valid: boolean) => {
-      const validatorFn = component.bucketNameValidator();
-      const ctrl = new FormControl(name);
-      ctrl.markAsDirty();
-      const validatorPromise = validatorFn(ctrl);
-      expect(validatorPromise instanceof Promise).toBeTruthy();
-      if (validatorPromise instanceof Promise) {
-        validatorPromise.then((resp) => {
-          if (valid) {
-            expect(resp).toBe(null);
-          } else {
-            expect(resp instanceof Object).toBeTruthy();
-            expect(resp.bucketNameInvalid).toBeTruthy();
-          }
-        });
+    const testValidator = (name: string, valid: boolean, expectedError?: string) => {
+      rgwBucketServiceGetSpy.and.returnValue(throwError('foo'));
+      formHelper.setValue('bid', name, true);
+      tick();
+      if (valid) {
+        formHelper.expectValid('bid');
+      } else {
+        formHelper.expectError('bid', expectedError);
       }
     };
 
-    it('should validate empty name', () => {
-      testValidator('', true);
-    });
+    it('should validate empty name', fakeAsync(() => {
+      formHelper.expectErrorChange('bid', '', 'required', true);
+    }));
 
-    it('bucket names cannot be formatted as IP address', () => {
-      testValidator('172.10.4.51', false);
-    });
+    it('bucket names cannot be formatted as IP address', fakeAsync(() => {
+      const testIPs = ['1.1.1.01', '001.1.1.01', '127.0.0.1'];
+      for (const ip of testIPs) {
+        testValidator(ip, false, 'ipAddress');
+      }
+    }));
 
-    it('bucket name must be >= 3 characters long (1/2)', () => {
-      testValidator('ab', false);
-    });
+    it('bucket name must be >= 3 characters long (1/2)', fakeAsync(() => {
+      testValidator('ab', false, 'shouldBeInRange');
+    }));
 
-    it('bucket name must be >= 3 characters long (2/2)', () => {
+    it('bucket name must be >= 3 characters long (2/2)', fakeAsync(() => {
       testValidator('abc', true);
-    });
+    }));
 
-    it('bucket name must be <= than 63 characters long (1/2)', () => {
-      testValidator(_.repeat('a', 64), false);
-    });
+    it('bucket name must be <= than 63 characters long (1/2)', fakeAsync(() => {
+      testValidator(_.repeat('a', 64), false, 'shouldBeInRange');
+    }));
 
-    it('bucket name must be <= than 63 characters long (2/2)', () => {
+    it('bucket name must be <= than 63 characters long (2/2)', fakeAsync(() => {
       testValidator(_.repeat('a', 63), true);
-    });
+    }));
 
-    it('bucket names must not contain uppercase characters or underscores (1/2)', () => {
-      testValidator('iAmInvalid', false);
-    });
+    it('bucket names must not contain uppercase characters or underscores (1/2)', fakeAsync(() => {
+      testValidator('iAmInvalid', false, 'containsUpperCase');
+    }));
 
-    it('bucket names must not contain uppercase characters or underscores (2/2)', () => {
-      testValidator('i_am_invalid', false);
-    });
+    it('bucket names can only contain lowercase letters, numbers, and hyphens', fakeAsync(() => {
+      testValidator('$$$', false, 'onlyLowerCaseAndNumbers');
+    }));
 
-    it('bucket names with invalid labels (1/3)', () => {
-      testValidator('abc.1def.Ghi2', false);
-    });
+    it('bucket names must not contain uppercase characters or underscores (2/2)', fakeAsync(() => {
+      testValidator('i_am_invalid', false, 'containsUpperCase');
+    }));
 
-    it('bucket names with invalid labels (2/3)', () => {
-      testValidator('abc.1-xy', false);
-    });
+    it('bucket names must start and end with letters or numbers', fakeAsync(() => {
+      testValidator('abcd-', false, 'lowerCaseOrNumber');
+    }));
 
-    it('bucket names with invalid labels (3/3)', () => {
-      testValidator('abc.*def', false);
-    });
+    it('bucket names with invalid labels (1/3)', fakeAsync(() => {
+      testValidator('abc.1def.Ghi2', false, 'containsUpperCase');
+    }));
 
-    it('bucket names must be a series of one or more labels and can contain lowercase letters, numbers, and hyphens (1/3)', () => {
+    it('bucket names with invalid labels (2/3)', fakeAsync(() => {
+      testValidator('abc.1_xy', false, 'containsUpperCase');
+    }));
+
+    it('bucket names with invalid labels (3/3)', fakeAsync(() => {
+      testValidator('abc.*def', false, 'lowerCaseOrNumber');
+    }));
+
+    it('bucket names must be a series of one or more labels and can contain lowercase letters, numbers, and hyphens (1/3)', fakeAsync(() => {
       testValidator('xyz.abc', true);
-    });
+    }));
 
-    it('bucket names must be a series of one or more labels and can contain lowercase letters, numbers, and hyphens (2/3)', () => {
+    it('bucket names must be a series of one or more labels and can contain lowercase letters, numbers, and hyphens (2/3)', fakeAsync(() => {
       testValidator('abc.1-def', true);
-    });
+    }));
 
-    it('bucket names must be a series of one or more labels and can contain lowercase letters, numbers, and hyphens (3/3)', () => {
+    it('bucket names must be a series of one or more labels and can contain lowercase letters, numbers, and hyphens (3/3)', fakeAsync(() => {
       testValidator('abc.ghi2', true);
-    });
+    }));
 
-    it('bucket names must be unique', () => {
-      spyOn(rgwBucketService, 'enumerate').and.returnValue(observableOf(['abcd']));
-      const validatorFn = component.bucketNameValidator();
-      const ctrl = new FormControl('abcd');
-      ctrl.markAsDirty();
-      const validatorPromise = validatorFn(ctrl);
-      expect(validatorPromise instanceof Promise).toBeTruthy();
-      if (validatorPromise instanceof Promise) {
-        validatorPromise.then((resp) => {
-          expect(resp instanceof Object).toBeTruthy();
-          expect(resp.bucketNameExists).toBeTruthy();
-        });
-      }
-    });
+    it('bucket names must be unique', fakeAsync(() => {
+      testValidator('bucket-name-is-unique', true);
+    }));
+
+    it('bucket names must not contain spaces', fakeAsync(() => {
+      testValidator('bucket name  with   spaces', false, 'onlyLowerCaseAndNumbers');
+    }));
 
     it('should get zonegroup and placement targets', () => {
       const payload: Record<string, any> = {
index 86a3805235484ee86f07000ca72b031d06f13177..32a9fe0c2755cc41bbc1986977432d78d3fecff0 100644 (file)
@@ -4,6 +4,8 @@ import { ActivatedRoute, Router } from '@angular/router';
 
 import { I18n } from '@ngx-translate/i18n-polyfill';
 import * as _ from 'lodash';
+import { Observable, of as observableOf, timer as observableTimer } from 'rxjs';
+import { map, switchMapTo } from 'rxjs/operators';
 
 import { RgwBucketService } from '../../../shared/api/rgw-bucket.service';
 import { RgwSiteService } from '../../../shared/api/rgw-site.service';
@@ -224,59 +226,91 @@ export class RgwBucketFormComponent implements OnInit {
    *   start and end with a lowercase letter or a number.
    */
   bucketNameValidator(): AsyncValidatorFn {
-    const rgwBucketService = this.rgwBucketService;
-    return (control: AbstractControl): Promise<ValidationErrors | null> => {
-      return new Promise((resolve) => {
-        // Exit immediately if user has not interacted with the control yet
-        // or the control value is empty.
-        if (control.pristine || control.value === '') {
-          resolve(null);
-          return;
+    return (control: AbstractControl): Observable<ValidationErrors | null> => {
+      // Exit immediately if user has not interacted with the control yet
+      // or the control value is empty.
+      if (control.pristine || control.value === '') {
+        return observableOf(null);
+      }
+      const constraints = [];
+      let errorName: string;
+      // - Bucket names cannot be formatted as IP address.
+      constraints.push(() => {
+        const ipv4Rgx = /^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/i;
+        const ipv6Rgx = /^(?:[a-f0-9]{1,4}:){7}[a-f0-9]{1,4}$/i;
+        const name = this.bucketForm.get('bid').value;
+        let notIP = true;
+        if (ipv4Rgx.test(name) || ipv6Rgx.test(name)) {
+          errorName = 'ipAddress';
+          notIP = false;
         }
-        const constraints = [];
-        // - Bucket names cannot be formatted as IP address.
-        constraints.push((name: AbstractControl) => {
-          const validatorFn = CdValidators.ip();
-          return !validatorFn(name);
-        });
-        // - Bucket names can be between 3 and 63 characters long.
-        constraints.push((name: string) => _.inRange(name.length, 3, 64));
-        // - Bucket names must not contain uppercase characters or underscores.
-        // - Bucket names must start with a lowercase letter or number.
-        // - Bucket names must be a series of one or more labels. Adjacent
-        //   labels are separated by a single period (.). Bucket names can
-        //   contain lowercase letters, numbers, and hyphens. Each label must
-        //   start and end with a lowercase letter or a number.
-        constraints.push((name: string) => {
-          const labels = _.split(name, '.');
-          return _.every(labels, (label) => {
-            // Bucket names must not contain uppercase characters or underscores.
-            if (label !== _.toLower(label) || label.includes('_')) {
-              return false;
-            }
-            // Bucket names can contain lowercase letters, numbers, and hyphens.
-            if (!/[0-9a-z-]/.test(label)) {
-              return false;
-            }
-            // Each label must start and end with a lowercase letter or a number.
-            return _.every([0, label.length], (index) => {
-              return /[a-z]/.test(label[index]) || _.isInteger(_.parseInt(label[index]));
-            });
+        return notIP;
+      });
+      // - Bucket names can be between 3 and 63 characters long.
+      constraints.push((name: string) => {
+        if (!_.inRange(name.length, 3, 64)) {
+          errorName = 'shouldBeInRange';
+          return false;
+        }
+        return true;
+      });
+      // - Bucket names must not contain uppercase characters or underscores.
+      // - Bucket names must start with a lowercase letter or number.
+      // - Bucket names must be a series of one or more labels. Adjacent
+      //   labels are separated by a single period (.). Bucket names can
+      //   contain lowercase letters, numbers, and hyphens. Each label must
+      //   start and end with a lowercase letter or a number.
+      constraints.push((name: string) => {
+        const labels = _.split(name, '.');
+        return _.every(labels, (label) => {
+          // Bucket names must not contain uppercase characters or underscores.
+          if (label !== _.toLower(label) || label.includes('_')) {
+            errorName = 'containsUpperCase';
+            return false;
+          }
+          // Bucket names can contain lowercase letters, numbers, and hyphens.
+          if (!/^\S*$/.test(name) || !/[0-9a-z-]/.test(label)) {
+            errorName = 'onlyLowerCaseAndNumbers';
+            return false;
+          }
+          // Each label must start and end with a lowercase letter or a number.
+          return _.every([0, label.length - 1], (index) => {
+            errorName = 'lowerCaseOrNumber';
+            return /[a-z]/.test(label[index]) || _.isInteger(_.parseInt(label[index]));
           });
         });
-        if (!_.every(constraints, (func: Function) => func(control.value))) {
-          resolve({ bucketNameInvalid: true });
-          return;
-        }
-        // - Bucket names must be unique.
-        rgwBucketService.exists(control.value).subscribe((resp: boolean) => {
+      });
+      if (!_.every(constraints, (func: Function) => func(control.value))) {
+        return observableTimer().pipe(
+          map(() => {
+            switch (errorName) {
+              case 'onlyLowerCaseAndNumbers':
+                return { onlyLowerCaseAndNumbers: true };
+              case 'shouldBeInRange':
+                return { shouldBeInRange: true };
+              case 'ipAddress':
+                return { ipAddress: true };
+              case 'containsUpperCase':
+                return { containsUpperCase: true };
+              case 'lowerCaseOrNumber':
+                return { lowerCaseOrNumber: true };
+              default:
+                return { bucketNameInvalid: true };
+            }
+          })
+        );
+      }
+      // - Bucket names must be unique.
+      return observableTimer().pipe(
+        switchMapTo(this.rgwBucketService.exists.call(this.rgwBucketService, control.value)),
+        map((resp: boolean) => {
           if (!resp) {
-            resolve(null);
+            return null;
           } else {
-            resolve({ bucketNameExists: true });
+            return { bucketNameExists: true };
           }
-        });
-      });
+        })
+      );
     };
   }
 
index 340552b17f188bd98cc9f8acf3b458a4654a87ab..b6dc6dbbb2a8abb475e75af41d6f28a09aea5bd4 100644 (file)
@@ -103,7 +103,7 @@ describe('RgwBucketListComponent', () => {
               size_actual: 4,
               num_objects: 2
             },
-            'rgw.another': {
+            'rgw.none': {
               size_actual: 6,
               num_objects: 6
             }
@@ -123,17 +123,17 @@ describe('RgwBucketListComponent', () => {
         owner: 'testid',
         usage: {
           'rgw.main': { size_actual: 4, num_objects: 2 },
-          'rgw.another': { size_actual: 6, num_objects: 6 }
+          'rgw.none': { size_actual: 6, num_objects: 6 }
         },
         bucket_quota: {
           max_size: 20,
           max_objects: 10,
           enabled: true
         },
-        bucket_size: 10,
-        num_objects: 8,
-        size_usage: 0.5,
-        object_usage: 0.8
+        bucket_size: 4,
+        num_objects: 2,
+        size_usage: 0.2,
+        object_usage: 0.2
       }
     ]);
   });
index a1f79c312c88924264a4d3d93d0c77e595ea6011..915eb3b4c63ff6fade70a97cee9912b70cc9202b 100644 (file)
@@ -134,20 +134,18 @@ export class RgwBucketListComponent extends ListWithDetails implements OnInit {
 
   transformBucketData() {
     _.forEach(this.buckets, (bucketKey) => {
-      const usageList = bucketKey['usage'];
       const maxBucketSize = bucketKey['bucket_quota']['max_size'];
       const maxBucketObjects = bucketKey['bucket_quota']['max_objects'];
-      let totalBucketSize = 0;
-      let numOfObjects = 0;
-      _.forEach(usageList, (usageKey) => {
-        totalBucketSize = totalBucketSize + usageKey.size_actual;
-        numOfObjects = numOfObjects + usageKey.num_objects;
-      });
-      bucketKey['bucket_size'] = totalBucketSize;
-      bucketKey['num_objects'] = numOfObjects;
-      bucketKey['size_usage'] = maxBucketSize > 0 ? totalBucketSize / maxBucketSize : undefined;
+      bucketKey['bucket_size'] = 0;
+      bucketKey['num_objects'] = 0;
+      if (!_.isEmpty(bucketKey['usage'])) {
+        bucketKey['bucket_size'] = bucketKey['usage']['rgw.main']['size_actual'];
+        bucketKey['num_objects'] = bucketKey['usage']['rgw.main']['num_objects'];
+      }
+      bucketKey['size_usage'] =
+        maxBucketSize > 0 ? bucketKey['bucket_size'] / maxBucketSize : undefined;
       bucketKey['object_usage'] =
-        maxBucketObjects > 0 ? numOfObjects / maxBucketObjects : undefined;
+        maxBucketObjects > 0 ? bucketKey['num_objects'] / maxBucketObjects : undefined;
     });
   }
 
index d9b112f76623d6496518c576086249d0fa1261f5..70d819e4bb4e9953174243b53d375de35b57eb65 100644 (file)
@@ -162,14 +162,14 @@ describe('RgwUserFormComponent', () => {
     it('should validate that username is valid', fakeAsync(() => {
       spyOn(rgwUserService, 'get').and.returnValue(throwError('foo'));
       formHelper.setValue('user_id', 'ab', true);
-      tick(500);
+      tick();
       formHelper.expectValid('user_id');
     }));
 
     it('should validate that username is invalid', fakeAsync(() => {
       spyOn(rgwUserService, 'get').and.returnValue(observableOf({}));
       formHelper.setValue('user_id', 'abc', true);
-      tick(500);
+      tick();
       formHelper.expectError('user_id', 'notUnique');
     }));
   });
index 27dda06bc659fee2ee0bceeff9a27655a0af23dc..8460c08ab63bb05438d124b4b906adcefbdbc761 100644 (file)
@@ -1,11 +1,3 @@
-<form #docsForm
-      action="/docs"
-      target="_blank"
-      method="post">
-  <input type="hidden"
-         name="token" />
-</form>
-
 <div class="btn-group"
      dropdown>
   <a dropdownToggle
@@ -29,7 +21,8 @@
     <li>
       <a i18n
          class="dropdown-item"
-         (click)="goToApiDocs()">API</a>
+         href="/docs"
+         target="_blank">API</a>
     </li>
     <li>
       <a i18n
index 1cdaf523ba5851d9d0522d63e0b1ceb0d6f6f68b..016e3954af364db66ea8b3101da059cdb9bd388e 100644 (file)
@@ -1,4 +1,4 @@
-import { Component, OnInit, ViewChild } from '@angular/core';
+import { Component, OnInit } from '@angular/core';
 
 import { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';
 
@@ -12,8 +12,6 @@ import { AboutComponent } from '../about/about.component';
   styleUrls: ['./dashboard-help.component.scss']
 })
 export class DashboardHelpComponent implements OnInit {
-  @ViewChild('docsForm', { static: true })
-  docsFormElement: any;
   docsUrl: string;
   modalRef: BsModalRef;
   icons = Icons;
@@ -30,8 +28,4 @@ export class DashboardHelpComponent implements OnInit {
     this.modalRef = this.modalService.show(AboutComponent);
     this.modalRef.setClass('modal-lg');
   }
-
-  goToApiDocs() {
-    this.docsFormElement.nativeElement.submit();
-  }
 }
index 5a71b110bfb9871ffd96b82858fcb6df32f10325..161e21db9bf3a71798fbd5e3c9b0021760d0f1ec 100644 (file)
@@ -1,5 +1,6 @@
 <cd-pwd-expiration-notification></cd-pwd-expiration-notification>
 <cd-telemetry-notification></cd-telemetry-notification>
+<cd-motd></cd-motd>
 <cd-notifications-sidebar></cd-notifications-sidebar>
 
 <div class="cd-navbar-top">
@@ -18,7 +19,7 @@
 
     <button type="button"
             class="navbar-toggler"
-            (click)="isCollapsed = !isCollapsed">
+            (click)="toggleRightSidebar()">
       <span i18n
             class="sr-only">Toggle navigation</span>
       <span class="">
@@ -27,7 +28,7 @@
     </button>
 
     <div class="collapse navbar-collapse"
-         [collapse]="isCollapsed">
+         [ngClass]="{'show': rightSidebarOpen}">
       <ul class="nav navbar-nav cd-navbar-utility my-2 my-md-0">
         <ng-container *ngTemplateOutlet="cd_utilities"> </ng-container>
       </ul>
@@ -58,7 +59,8 @@
     <cd-language-selector class="cd-navbar"></cd-language-selector>
   </li>
   <li class="nav-item ">
-    <cd-notifications class="cd-navbar"></cd-notifications>
+    <cd-notifications class="cd-navbar"
+                      (click)="toggleRightSidebar()"></cd-notifications>
   </li>
   <li class="nav-item ">
     <cd-dashboard-help class="cd-navbar"></cd-dashboard-help>
index 9c0d8f09d733416476f6242d608f0ecc563ce1de..38aa60e2f505fc119bcdc22331e1f26276b6f30d 100644 (file)
@@ -9,10 +9,6 @@
     background: $color-navbar-bg;
     border-top: 4px solid $color-nav-top-bar;
 
-    &.isPwdDisplayed {
-      top: $top-notification-height;
-    }
-
     .navbar-brand,
     .navbar-brand:hover {
       color: $color-navbar-brand;
index 25fb4d6f7897cf7cadccb66147e51e64158d1655..75c97faf46d54498e1f164fa689f3a84dc70f43b 100644 (file)
@@ -1,3 +1,4 @@
+import { HttpClientTestingModule } from '@angular/common/http/testing';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { By } from '@angular/platform-browser';
 
@@ -51,7 +52,7 @@ describe('NavigationComponent', () => {
 
   configureTestBed({
     declarations: [NavigationComponent],
-    imports: [MockModule(NavigationModule)],
+    imports: [HttpClientTestingModule, MockModule(NavigationModule)],
     providers: [
       {
         provide: AuthStorageService,
index 5d45104cb82659df02f8244a94f9af3181e54340..00793dc9b247a8d47c096f651d8748d575dde6d4 100644 (file)
@@ -1,5 +1,6 @@
 import { Component, HostBinding, OnDestroy, OnInit } from '@angular/core';
 
+import * as _ from 'lodash';
 import { Subscription } from 'rxjs';
 
 import { Icons } from '../../../shared/enum/icons.enum';
@@ -9,6 +10,7 @@ import {
   FeatureTogglesMap$,
   FeatureTogglesService
 } from '../../../shared/services/feature-toggles.service';
+import { MotdNotificationService } from '../../../shared/services/motd-notification.service';
 import { PrometheusAlertService } from '../../../shared/services/prometheus-alert.service';
 import { SummaryService } from '../../../shared/services/summary.service';
 import { TelemetryNotificationService } from '../../../shared/services/telemetry-notification.service';
@@ -29,7 +31,7 @@ export class NavigationComponent implements OnInit, OnDestroy {
   summaryData: any;
   icons = Icons;
 
-  isCollapsed = true;
+  rightSidebarOpen = false; // rightSidebar only opens when width is less than 768px
   showMenuSidebar = true;
   displayedSubMenu = '';
 
@@ -43,7 +45,8 @@ export class NavigationComponent implements OnInit, OnDestroy {
     private summaryService: SummaryService,
     private featureToggles: FeatureTogglesService,
     private telemetryNotificationService: TelemetryNotificationService,
-    public prometheusAlertService: PrometheusAlertService
+    public prometheusAlertService: PrometheusAlertService,
+    private motdNotificationService: MotdNotificationService
   ) {
     this.permissions = this.authStorageService.getPermissions();
     this.enabledFeature$ = this.featureToggles.get();
@@ -70,6 +73,11 @@ export class NavigationComponent implements OnInit, OnDestroy {
         this.showTopNotification('telemetryNotificationEnabled', visible);
       })
     );
+    this.subs.add(
+      this.motdNotificationService.motd$.subscribe((motd: any) => {
+        this.showTopNotification('motdNotificationEnabled', _.isPlainObject(motd));
+      })
+    );
   }
 
   ngOnDestroy(): void {
@@ -96,6 +104,10 @@ export class NavigationComponent implements OnInit, OnDestroy {
     }
   }
 
+  toggleRightSidebar() {
+    this.rightSidebarOpen = !this.rightSidebarOpen;
+  }
+
   showTopNotification(name: string, isDisplayed: boolean) {
     if (isDisplayed) {
       if (!this.notifications.includes(name)) {
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/motd.service.spec.ts b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/motd.service.spec.ts
new file mode 100644 (file)
index 0000000..07cc544
--- /dev/null
@@ -0,0 +1,34 @@
+import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing';
+import { TestBed } from '@angular/core/testing';
+
+import { configureTestBed } from '../../../testing/unit-test-helper';
+import { MotdService } from './motd.service';
+
+describe('MotdService', () => {
+  let service: MotdService;
+  let httpTesting: HttpTestingController;
+
+  configureTestBed({
+    imports: [HttpClientTestingModule],
+    providers: [MotdService]
+  });
+
+  beforeEach(() => {
+    service = TestBed.get(MotdService);
+    httpTesting = TestBed.get(HttpTestingController);
+  });
+
+  afterEach(() => {
+    httpTesting.verify();
+  });
+
+  it('should be created', () => {
+    expect(service).toBeTruthy();
+  });
+
+  it('should get MOTD', () => {
+    service.get().subscribe();
+    const req = httpTesting.expectOne('ui-api/motd');
+    expect(req.request.method).toBe('GET');
+  });
+});
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/motd.service.ts b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/motd.service.ts
new file mode 100644 (file)
index 0000000..dd17b2e
--- /dev/null
@@ -0,0 +1,25 @@
+import { HttpClient } from '@angular/common/http';
+import { Injectable } from '@angular/core';
+
+import { Observable } from 'rxjs';
+
+export interface Motd {
+  message: string;
+  md5: string;
+  severity: 'info' | 'warning' | 'danger';
+  // The expiration date in ISO 8601. Does not expire if empty.
+  expires: string;
+}
+
+@Injectable({
+  providedIn: 'root'
+})
+export class MotdService {
+  private url = 'ui-api/motd';
+
+  constructor(private http: HttpClient) {}
+
+  get(): Observable<Motd | null> {
+    return this.http.get<Motd | null>(this.url);
+  }
+}
index 978aca1fc4fcc49f7cb201d564fe2fe95f1a4404..eefabb66d547618b33ebe82b3d1a932540f3ec53 100644 (file)
@@ -75,7 +75,7 @@ describe('RgwBucketService', () => {
     service.exists('foo').subscribe((resp) => {
       result = resp;
     });
-    const req = httpTesting.expectOne('api/rgw/bucket');
+    const req = httpTesting.expectOne('api/rgw/bucket/foo');
     expect(req.request.method).toBe('GET');
     req.flush(['foo', 'bar']);
     expect(result).toBe(true);
index b73bff0dddc59ecf9393453fe545bdf9dc7c3f68..5e12cb3046f532cb682953d4431c40367a06cec0 100644 (file)
@@ -3,7 +3,7 @@ import { Injectable } from '@angular/core';
 
 import * as _ from 'lodash';
 import { of as observableOf } from 'rxjs';
-import { mergeMap } from 'rxjs/operators';
+import { catchError, mapTo } from 'rxjs/operators';
 
 import { cdEncode } from '../decorators/cd-encode';
 import { ApiModule } from './api.module';
@@ -27,14 +27,6 @@ export class RgwBucketService {
     return this.http.get(this.url, { params: params });
   }
 
-  /**
-   * Get the list of bucket names.
-   * @return {Observable<string[]>}
-   */
-  enumerate() {
-    return this.http.get(this.url);
-  }
-
   get(bucket: string) {
     return this.http.get(`${this.url}/${bucket}`);
   }
@@ -102,10 +94,13 @@ export class RgwBucketService {
    * @return {Observable<boolean>}
    */
   exists(bucket: string) {
-    return this.enumerate().pipe(
-      mergeMap((resp: string[]) => {
-        const index = _.indexOf(resp, bucket);
-        return observableOf(-1 !== index);
+    return this.get(bucket).pipe(
+      mapTo(true),
+      catchError((error: Event) => {
+        if (_.isFunction(error.preventDefault)) {
+          error.preventDefault();
+        }
+        return observableOf(false);
       })
     );
   }
index 2b606ccdec673abd1a57569d532f8f1655ed32b6..aac801fef457ac4bd0c40b9875acc57cf9116a07 100644 (file)
@@ -1,4 +1,6 @@
-<alert type="{{ bootstrapClass }}">
+<alert type="{{ bootstrapClass }}"
+       [dismissible]="dismissible"
+       (onClose)="onClose()">
   <table>
     <ng-container *ngIf="size === 'normal'; else slim">
       <tr>
index 5798d24df11a37671bcfa85b3935b696345d0ec8..cd02741d24f182979aef92f07888545c26cb6150 100644 (file)
@@ -15,7 +15,7 @@ export class AlertPanelComponent implements OnInit {
   @Output()
   backAction = new EventEmitter();
   @Input()
-  type: 'warning' | 'error' | 'info' | 'success';
+  type: 'warning' | 'error' | 'info' | 'success' | 'danger';
   @Input()
   typeIcon: Icons | string;
   @Input()
@@ -24,6 +24,15 @@ export class AlertPanelComponent implements OnInit {
   showIcon = true;
   @Input()
   showTitle = true;
+  @Input()
+  dismissible = false;
+
+  /**
+   * The event that is triggered when the close button (x) has been
+   * pressed.
+   */
+  @Output()
+  dismissed = new EventEmitter();
 
   icons = Icons;
 
@@ -51,6 +60,15 @@ export class AlertPanelComponent implements OnInit {
         this.typeIcon = this.typeIcon || Icons.check;
         this.bootstrapClass = this.bootstrapClass || 'success';
         break;
+      case 'danger':
+        this.title = this.title || this.i18n(`Danger`);
+        this.typeIcon = this.typeIcon || Icons.warning;
+        this.bootstrapClass = this.bootstrapClass || 'danger';
+        break;
     }
   }
+
+  onClose(): void {
+    this.dismissed.emit();
+  }
 }
index 811e411340a6b9c1d240b30e9d27aab868bb1ebb..2b20e18c88d10758279d4730eda7d5fc389e3baf 100644 (file)
@@ -14,6 +14,7 @@ import { ProgressbarModule } from 'ngx-bootstrap/progressbar';
 import { TooltipModule } from 'ngx-bootstrap/tooltip';
 import { SimplebarAngularModule } from 'simplebar-angular';
 
+import { MotdComponent } from '../components/motd/motd.component';
 import { DirectivesModule } from '../directives/directives.module';
 import { PipesModule } from '../pipes/pipes.module';
 import { AlertPanelComponent } from './alert-panel/alert-panel.component';
@@ -85,7 +86,8 @@ import { ViewCacheComponent } from './view-cache/view-cache.component';
     TelemetryNotificationComponent,
     OrchestratorDocPanelComponent,
     OrchestratorDocModalComponent,
-    DocComponent
+    DocComponent,
+    MotdComponent
   ],
   providers: [],
   exports: [
@@ -108,7 +110,8 @@ import { ViewCacheComponent } from './view-cache/view-cache.component';
     PwdExpirationNotificationComponent,
     TelemetryNotificationComponent,
     OrchestratorDocPanelComponent,
-    DocComponent
+    DocComponent,
+    MotdComponent
   ],
   entryComponents: [
     ModalComponent,
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.html b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.html
new file mode 100644 (file)
index 0000000..2fbe5d7
--- /dev/null
@@ -0,0 +1,8 @@
+<cd-alert-panel *ngIf="motd"
+                size="slim"
+                [showTitle]="false"
+                [type]="motd.severity"
+                [dismissible]="motd.severity !== 'danger'"
+                (dismissed)="onDismissed()">
+  <span [innerHTML]="motd.message | sanitizeHtml"></span>
+</cd-alert-panel>
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.scss b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.scss
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.spec.ts b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.spec.ts
new file mode 100644 (file)
index 0000000..79f09e7
--- /dev/null
@@ -0,0 +1,26 @@
+import { HttpClientTestingModule } from '@angular/common/http/testing';
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { configureTestBed } from '../../../../testing/unit-test-helper';
+import { DashboardModule } from '../../../ceph/dashboard/dashboard.module';
+import { SharedModule } from '../../../shared/shared.module';
+import { MotdComponent } from './motd.component';
+
+describe('MotdComponent', () => {
+  let component: MotdComponent;
+  let fixture: ComponentFixture<MotdComponent>;
+
+  configureTestBed({
+    imports: [DashboardModule, HttpClientTestingModule, SharedModule]
+  });
+
+  beforeEach(() => {
+    fixture = TestBed.createComponent(MotdComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.ts b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/components/motd/motd.component.ts
new file mode 100644 (file)
index 0000000..f3171ff
--- /dev/null
@@ -0,0 +1,33 @@
+import { Component, OnDestroy, OnInit } from '@angular/core';
+
+import { Subscription } from 'rxjs';
+
+import { Motd } from '../../../shared/api/motd.service';
+import { MotdNotificationService } from '../../../shared/services/motd-notification.service';
+
+@Component({
+  selector: 'cd-motd',
+  templateUrl: './motd.component.html',
+  styleUrls: ['./motd.component.scss']
+})
+export class MotdComponent implements OnInit, OnDestroy {
+  motd: Motd | undefined = undefined;
+
+  private subscription: Subscription;
+
+  constructor(private motdNotificationService: MotdNotificationService) {}
+
+  ngOnInit(): void {
+    this.subscription = this.motdNotificationService.motd$.subscribe((motd: Motd | undefined) => {
+      this.motd = motd;
+    });
+  }
+
+  ngOnDestroy(): void {
+    this.subscription.unsubscribe();
+  }
+
+  onDismissed(): void {
+    this.motdNotificationService.hide();
+  }
+}
index 0d302bb90135746a18c39b83e6fb6d216760aacd..dba458b2b5e5b4f2e12e44ea254449ff3fb22681 100644 (file)
@@ -349,29 +349,26 @@ export class CdValidators {
     serviceFn: existsServiceFn,
     serviceFnThis: any = null,
     usernameFn?: Function,
-    uidfield = false,
-    dueTime = 500
+    uidField = false
   ): AsyncValidatorFn {
-    let uname: string;
+    let uName: string;
     return (control: AbstractControl): Observable<ValidationErrors | null> => {
       // Exit immediately if user has not interacted with the control yet
       // or the control value is empty.
       if (control.pristine || isEmptyInputValue(control.value)) {
         return observableOf(null);
       }
-      uname = control.value;
+      uName = control.value;
       if (_.isFunction(usernameFn) && usernameFn() !== null && usernameFn() !== '') {
-        if (uidfield) {
-          uname = `${control.value}$${usernameFn()}`;
+        if (uidField) {
+          uName = `${control.value}$${usernameFn()}`;
         } else {
-          uname = `${usernameFn()}$${control.value}`;
+          uName = `${usernameFn()}$${control.value}`;
         }
       }
 
-      // Forgot previous requests if a new one arrives within the specified
-      // delay time.
-      return observableTimer(dueTime).pipe(
-        switchMapTo(serviceFn.call(serviceFnThis, uname)),
+      return observableTimer().pipe(
+        switchMapTo(serviceFn.call(serviceFnThis, uName)),
         map((resp: boolean) => {
           if (!resp) {
             return null;
index 3deb535929d3c5509bdb15039e2ac22174f60dba..9ec4e0492df0586ecbf4faf9d37bdf0c1c7b64be 100755 (executable)
@@ -26,6 +26,7 @@ import { OrdinalPipe } from './ordinal.pipe';
 import { RbdConfigurationSourcePipe } from './rbd-configuration-source.pipe';
 import { RelativeDatePipe } from './relative-date.pipe';
 import { RoundPipe } from './round.pipe';
+import { SanitizeHtmlPipe } from './sanitize-html.pipe';
 import { TruncatePipe } from './truncate.pipe';
 import { UpperFirstPipe } from './upper-first.pipe';
 
@@ -58,7 +59,8 @@ import { UpperFirstPipe } from './upper-first.pipe';
     RbdConfigurationSourcePipe,
     DurationPipe,
     MapPipe,
-    TruncatePipe
+    TruncatePipe,
+    SanitizeHtmlPipe
   ],
   exports: [
     ArrayPipe,
@@ -87,7 +89,8 @@ import { UpperFirstPipe } from './upper-first.pipe';
     RbdConfigurationSourcePipe,
     DurationPipe,
     MapPipe,
-    TruncatePipe
+    TruncatePipe,
+    SanitizeHtmlPipe
   ],
   providers: [
     ArrayPipe,
@@ -112,7 +115,8 @@ import { UpperFirstPipe } from './upper-first.pipe';
     NotAvailablePipe,
     UpperFirstPipe,
     MapPipe,
-    TruncatePipe
+    TruncatePipe,
+    SanitizeHtmlPipe
   ]
 })
 export class PipesModule {}
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/sanitize-html.pipe.spec.ts b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/sanitize-html.pipe.spec.ts
new file mode 100644 (file)
index 0000000..1187525
--- /dev/null
@@ -0,0 +1,26 @@
+import { TestBed } from '@angular/core/testing';
+import { DomSanitizer } from '@angular/platform-browser';
+
+import { configureTestBed } from '../../../testing/unit-test-helper';
+import { SanitizeHtmlPipe } from '../pipes/sanitize-html.pipe';
+
+describe('SanitizeHtmlPipe', () => {
+  let pipe: SanitizeHtmlPipe;
+  let domSanitizer: DomSanitizer;
+
+  configureTestBed({
+    providers: [DomSanitizer]
+  });
+
+  beforeEach(() => {
+    domSanitizer = TestBed.get(DomSanitizer);
+    pipe = new SanitizeHtmlPipe(domSanitizer);
+  });
+
+  it('create an instance', () => {
+    expect(pipe).toBeTruthy();
+  });
+
+  // There is no way to inject a working DomSanitizer in unit tests,
+  // so it is not possible to test the `transform` method.
+});
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/sanitize-html.pipe.ts b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/pipes/sanitize-html.pipe.ts
new file mode 100644 (file)
index 0000000..f6a8b0c
--- /dev/null
@@ -0,0 +1,13 @@
+import { Pipe, PipeTransform, SecurityContext } from '@angular/core';
+import { DomSanitizer, SafeValue } from '@angular/platform-browser';
+
+@Pipe({
+  name: 'sanitizeHtml'
+})
+export class SanitizeHtmlPipe implements PipeTransform {
+  constructor(private domSanitizer: DomSanitizer) {}
+
+  transform(value: SafeValue | string | null): string | null {
+    return this.domSanitizer.sanitize(SecurityContext.HTML, value);
+  }
+}
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/services/motd-notification.service.spec.ts b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/services/motd-notification.service.spec.ts
new file mode 100644 (file)
index 0000000..03009f5
--- /dev/null
@@ -0,0 +1,117 @@
+import { HttpClientTestingModule } from '@angular/common/http/testing';
+import { TestBed } from '@angular/core/testing';
+
+import { configureTestBed } from '../../../testing/unit-test-helper';
+import { Motd } from '../api/motd.service';
+import { MotdNotificationService } from './motd-notification.service';
+
+describe('MotdNotificationService', () => {
+  let service: MotdNotificationService;
+
+  configureTestBed({
+    providers: [MotdNotificationService],
+    imports: [HttpClientTestingModule]
+  });
+
+  beforeEach(() => {
+    service = TestBed.get(MotdNotificationService);
+  });
+
+  it('should be created', () => {
+    expect(service).toBeTruthy();
+  });
+
+  it('should hide [1]', () => {
+    spyOn(service.motdSource, 'next');
+    spyOn(service.motdSource, 'getValue').and.returnValue({
+      severity: 'info',
+      expires: '',
+      message: 'foo',
+      md5: 'acbd18db4cc2f85cedef654fccc4a4d8'
+    });
+    service.hide();
+    expect(localStorage.getItem('dashboard_motd_hidden')).toBe(
+      'info:acbd18db4cc2f85cedef654fccc4a4d8'
+    );
+    expect(sessionStorage.getItem('dashboard_motd_hidden')).toBeNull();
+    expect(service.motdSource.next).toBeCalledWith(null);
+  });
+
+  it('should hide [2]', () => {
+    spyOn(service.motdSource, 'getValue').and.returnValue({
+      severity: 'warning',
+      expires: '',
+      message: 'bar',
+      md5: '37b51d194a7513e45b56f6524f2d51f2'
+    });
+    service.hide();
+    expect(sessionStorage.getItem('dashboard_motd_hidden')).toBe(
+      'warning:37b51d194a7513e45b56f6524f2d51f2'
+    );
+    expect(localStorage.getItem('dashboard_motd_hidden')).toBeNull();
+  });
+
+  it('should process response [1]', () => {
+    const motd: Motd = {
+      severity: 'danger',
+      expires: '',
+      message: 'foo',
+      md5: 'acbd18db4cc2f85cedef654fccc4a4d8'
+    };
+    spyOn(service.motdSource, 'next');
+    service.processResponse(motd);
+    expect(service.motdSource.next).toBeCalledWith(motd);
+  });
+
+  it('should process response [2]', () => {
+    const motd: Motd = {
+      severity: 'warning',
+      expires: '',
+      message: 'foo',
+      md5: 'acbd18db4cc2f85cedef654fccc4a4d8'
+    };
+    localStorage.setItem('dashboard_motd_hidden', 'info');
+    service.processResponse(motd);
+    expect(sessionStorage.getItem('dashboard_motd_hidden')).toBeNull();
+    expect(localStorage.getItem('dashboard_motd_hidden')).toBeNull();
+  });
+
+  it('should process response [3]', () => {
+    const motd: Motd = {
+      severity: 'info',
+      expires: '',
+      message: 'foo',
+      md5: 'acbd18db4cc2f85cedef654fccc4a4d8'
+    };
+    spyOn(service.motdSource, 'next');
+    localStorage.setItem('dashboard_motd_hidden', 'info:acbd18db4cc2f85cedef654fccc4a4d8');
+    service.processResponse(motd);
+    expect(service.motdSource.next).not.toBeCalled();
+  });
+
+  it('should process response [4]', () => {
+    const motd: Motd = {
+      severity: 'info',
+      expires: '',
+      message: 'foo',
+      md5: 'acbd18db4cc2f85cedef654fccc4a4d8'
+    };
+    spyOn(service.motdSource, 'next');
+    localStorage.setItem('dashboard_motd_hidden', 'info:37b51d194a7513e45b56f6524f2d51f2');
+    service.processResponse(motd);
+    expect(service.motdSource.next).toBeCalled();
+  });
+
+  it('should process response [5]', () => {
+    const motd: Motd = {
+      severity: 'info',
+      expires: '',
+      message: 'foo',
+      md5: 'acbd18db4cc2f85cedef654fccc4a4d8'
+    };
+    spyOn(service.motdSource, 'next');
+    localStorage.setItem('dashboard_motd_hidden', 'danger:acbd18db4cc2f85cedef654fccc4a4d8');
+    service.processResponse(motd);
+    expect(service.motdSource.next).toBeCalled();
+  });
+});
diff --git a/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/services/motd-notification.service.ts b/ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/services/motd-notification.service.ts
new file mode 100644 (file)
index 0000000..7e75edf
--- /dev/null
@@ -0,0 +1,82 @@
+import { Injectable, OnDestroy } from '@angular/core';
+
+import * as _ from 'lodash';
+import { BehaviorSubject, EMPTY, Observable, of, Subscription } from 'rxjs';
+import { catchError, delay, mergeMap, repeat, tap } from 'rxjs/operators';
+
+import { Motd, MotdService } from '../api/motd.service';
+
+@Injectable({
+  providedIn: 'root'
+})
+export class MotdNotificationService implements OnDestroy {
+  public motd$: Observable<Motd | null>;
+  public motdSource = new BehaviorSubject<Motd | null>(null);
+
+  private subscription: Subscription;
+  private localStorageKey = 'dashboard_motd_hidden';
+
+  constructor(private motdService: MotdService) {
+    this.motd$ = this.motdSource.asObservable();
+    // Check every 60 seconds for the latest MOTD configuration.
+    this.subscription = of(true)
+      .pipe(
+        mergeMap(() => this.motdService.get()),
+        catchError((error) => {
+          // Do not show an error notification.
+          if (_.isFunction(error.preventDefault)) {
+            error.preventDefault();
+          }
+          return EMPTY;
+        }),
+        tap((motd: Motd | null) => this.processResponse(motd)),
+        delay(60000),
+        repeat()
+      )
+      .subscribe();
+  }
+
+  ngOnDestroy(): void {
+    this.subscription.unsubscribe();
+  }
+
+  hide() {
+    // Store the severity and MD5 of the current MOTD in local or
+    // session storage to be able to show it again if the severity
+    // or message of the latest MOTD has changed.
+    const motd: Motd = this.motdSource.getValue();
+    if (motd) {
+      const value = `${motd.severity}:${motd.md5}`;
+      switch (motd.severity) {
+        case 'info':
+          localStorage.setItem(this.localStorageKey, value);
+          sessionStorage.removeItem(this.localStorageKey);
+          break;
+        case 'warning':
+          sessionStorage.setItem(this.localStorageKey, value);
+          localStorage.removeItem(this.localStorageKey);
+          break;
+      }
+    }
+    this.motdSource.next(null);
+  }
+
+  processResponse(motd: Motd | null) {
+    const value: string | null =
+      sessionStorage.getItem(this.localStorageKey) || localStorage.getItem(this.localStorageKey);
+    let visible: boolean = _.isNull(value);
+    // Force a hidden MOTD to be shown again if the severity or message
+    // has been changed.
+    if (!visible && motd) {
+      const [severity, md5] = value.split(':');
+      if (severity !== motd.severity || md5 !== motd.md5) {
+        visible = true;
+        sessionStorage.removeItem(this.localStorageKey);
+        localStorage.removeItem(this.localStorageKey);
+      }
+    }
+    if (visible) {
+      this.motdSource.next(motd);
+    }
+  }
+}
index b88fe1284a1a8d195e4f9381e906f9e2813228d6..e57aa45fc4ce9dc111961abc88793a80504653c3 100644 (file)
@@ -46,7 +46,7 @@ from .settings import options_command_list, options_schema_list, \
                       handle_option_command
 
 from .plugins import PLUGIN_MANAGER
-from .plugins import feature_toggles, debug  # noqa # pylint: disable=unused-import
+from .plugins import feature_toggles, debug, motd  # noqa # pylint: disable=unused-import
 
 
 PLUGIN_MANAGER.hook.init()
diff --git a/ceph/src/pybind/mgr/dashboard/plugins/motd.py b/ceph/src/pybind/mgr/dashboard/plugins/motd.py
new file mode 100644 (file)
index 0000000..eda54c6
--- /dev/null
@@ -0,0 +1,102 @@
+# -*- coding: utf-8 -*-
+
+import hashlib
+import json
+from enum import Enum
+from typing import Dict, NamedTuple, Optional
+
+from ceph.utils import datetime_now, datetime_to_str, parse_timedelta, str_to_datetime
+from mgr_module import CLICommand
+
+from . import PLUGIN_MANAGER as PM
+from .plugin import SimplePlugin as SP
+
+
+class MotdSeverity(Enum):
+    INFO = 'info'
+    WARNING = 'warning'
+    DANGER = 'danger'
+
+
+class MotdData(NamedTuple):
+    message: str
+    md5: str  # The MD5 of the message.
+    severity: MotdSeverity
+    expires: str  # The expiration date in ISO 8601. Does not expire if empty.
+
+
+@PM.add_plugin  # pylint: disable=too-many-ancestors
+class Motd(SP):
+    NAME = 'motd'
+
+    OPTIONS = [
+        SP.Option(
+            name=NAME,
+            default='',
+            type='str',
+            desc='The message of the day'
+        )
+    ]
+
+    @PM.add_hook
+    def register_commands(self):
+        @CLICommand("dashboard {name} get".format(name=self.NAME))
+        def _get(_):
+            stdout: str
+            value: str = self.get_option(self.NAME)
+            if not value:
+                stdout = 'No message of the day has been set.'
+            else:
+                data = json.loads(value)
+                if not data['expires']:
+                    data['expires'] = "Never"
+                stdout = 'Message="{message}", severity="{severity}", ' \
+                         'expires="{expires}"'.format(**data)
+            return 0, stdout, ''
+
+        @CLICommand("dashboard {name} set".format(name=self.NAME),
+                    "name=severity,type=CephChoices,strings={} ".format(
+                        "|".join(s.value for s in MotdSeverity))
+                    + "name=expires,type=CephString "
+                    + "name=message,type=CephString")
+        def _set(_, severity: str, expires: str, message: str):
+            if expires != '0':
+                delta = parse_timedelta(expires)
+                if not delta:
+                    return 1, '', 'Invalid expires format, use "2h", "10d" or "30s"'
+                expires = datetime_to_str(datetime_now() + delta)
+            else:
+                expires = ''
+            value: str = json.dumps({
+                'message': message,
+                'md5': hashlib.md5(message.encode()).hexdigest(),
+                'severity': severity,
+                'expires': expires
+            })
+            self.set_option(self.NAME, value)
+            return 0, 'Message of the day has been set.', ''
+
+        @CLICommand("dashboard {name} clear".format(name=self.NAME))
+        def _clear(_):
+            self.set_option(self.NAME, '')
+            return 0, 'Message of the day has been cleared.', ''
+
+    @PM.add_hook
+    def get_controllers(self):
+        from ..controllers import RESTController, UiApiController
+
+        @UiApiController('/motd')
+        class MessageOfTheDay(RESTController):
+            def list(_) -> Optional[Dict]:  # pylint: disable=no-self-argument
+                value: str = self.get_option(self.NAME)
+                if not value:
+                    return None
+                data: MotdData = MotdData(**json.loads(value))
+                # Check if the MOTD has been expired.
+                if data.expires:
+                    expires = str_to_datetime(data.expires)
+                    if expires < datetime_now():
+                        return None
+                return data._asdict()
+
+        return [MessageOfTheDay]
index 3cc9d62205a103783989abc2681e96847c46cdd8..5d573a3d6945cf3f1adacc3df7c50036f6ba931f 100644 (file)
@@ -517,6 +517,29 @@ class AccessControlDB(object):
             version = cls.VERSION
         return "{}{}".format(cls.ACDB_CONFIG_KEY, version)
 
+    def check_and_update_db(self):
+        logger.debug("Checking for previous DB versions")
+
+        def check_migrate_v1_to_current():
+            # Check if version 1 exists in the DB and migrate it to current version
+            v1_db = mgr.get_store(self.accessdb_config_key(1))
+            if v1_db:
+                logger.debug("Found database v1 credentials")
+                v1_db = json.loads(v1_db)
+
+                for user, _ in v1_db['users'].items():
+                    v1_db['users'][user]['enabled'] = True
+                    v1_db['users'][user]['pwdExpirationDate'] = None
+                    v1_db['users'][user]['pwdUpdateRequired'] = False
+
+                self.roles = {rn: Role.from_dict(r) for rn, r in v1_db.get('roles', {}).items()}
+                self.users = {un: User.from_dict(u, dict(self.roles, **SYSTEM_ROLES))
+                              for un, u in v1_db.get('users', {}).items()}
+
+                self.save()
+
+        check_migrate_v1_to_current()
+
     @classmethod
     def load(cls):
         logger.info("Loading user roles DB version=%s", cls.VERSION)
@@ -525,6 +548,8 @@ class AccessControlDB(object):
         if json_db is None:
             logger.debug("No DB v%s found, creating new...", cls.VERSION)
             db = cls(cls.VERSION, {}, {})
+            # check if we can update from a previous version database
+            db.check_and_update_db()
             return db
 
         dict_db = json.loads(json_db)
index 4e628342282eb1ed5e92aa1ac3fe843f852c043f..944e479046ee7f96491d8b542f586ce8145b9321 100644 (file)
@@ -2,6 +2,7 @@
 # pylint: disable=unused-argument
 from __future__ import absolute_import
 
+import errno
 import six
 
 import cherrypy
@@ -334,14 +335,30 @@ class RbdService(object):
             return stat
 
     @classmethod
-    def _rbd_image_names(cls, ioctx):
+    def _rbd_image_refs(cls, ioctx):
         rbd_inst = rbd.RBD()
-        return rbd_inst.list(ioctx)
+        return rbd_inst.list2(ioctx)
 
     @classmethod
     def _rbd_image_stat(cls, ioctx, pool_name, namespace, image_name):
         return cls._rbd_image(ioctx, pool_name, namespace, image_name)
 
+    @classmethod
+    def _rbd_image_stat_removing(cls, ioctx, pool_name, namespace, image_id):
+        rbd_inst = rbd.RBD()
+        img = rbd_inst.trash_get(ioctx, image_id)
+        img_spec = get_image_spec(pool_name, namespace, image_id)
+
+        if img['source'] == 'REMOVING':
+            img['unique_id'] = img_spec
+            img['pool_name'] = pool_name
+            img['namespace'] = namespace
+            img['deletion_time'] = "{}Z".format(img['deletion_time'].isoformat())
+            img['deferment_end_time'] = "{}Z".format(img['deferment_end_time'].isoformat())
+            return img
+        raise rbd.ImageNotFound('No image {} in status `REMOVING` found.'.format(img_spec),
+                                errno=errno.ENOENT)
+
     @classmethod
     @ViewCache()
     def rbd_pool_list(cls, pool_name, namespace=None):
@@ -356,13 +373,19 @@ class RbdService(object):
                 namespaces.append('')
             for current_namespace in namespaces:
                 ioctx.set_namespace(current_namespace)
-                names = cls._rbd_image_names(ioctx)
-                for name in names:
+                image_refs = cls._rbd_image_refs(ioctx)
+                for image_ref in image_refs:
                     try:
-                        stat = cls._rbd_image_stat(ioctx, pool_name, current_namespace, name)
+                        stat = cls._rbd_image_stat(
+                            ioctx, pool_name, current_namespace, image_ref['name'])
                     except rbd.ImageNotFound:
-                        # may have been removed in the meanwhile
-                        continue
+                        # Check if the RBD has been deleted partially. This happens for example if
+                        # the deletion process of the RBD has been started and was interrupted.
+                        try:
+                            stat = cls._rbd_image_stat_removing(
+                                ioctx, pool_name, current_namespace, image_ref['id'])
+                        except rbd.ImageNotFound:
+                            continue
                     result.append(stat)
             return result
 
index d384c4765b7b724c45371714edfbfea824eb3c36..c362d7b9b413f50869bc2c229d819f1c6f4f9789 100644 (file)
@@ -689,6 +689,115 @@ class AccessControlTest(unittest.TestCase, CLICommandTestMixin):
         self.validate_persistent_user('admin', ['read-only'], pass_hash,
                                       'admin User', 'admin@user.com')
 
+    def test_load_v1(self):
+        self.CONFIG_KEY_DICT['accessdb_v1'] = '''
+            {{
+                "users": {{
+                    "admin": {{
+                        "username": "admin",
+                        "password":
+                "$2b$12$sd0Az7mm3FaJl8kN3b/xwOuztaN0sWUwC1SJqjM4wcDw/s5cmGbLK",
+                        "roles": ["block-manager", "test_role"],
+                        "name": "admin User",
+                        "email": "admin@user.com",
+                        "lastUpdate": {}
+                    }}
+                }},
+                "roles": {{
+                    "test_role": {{
+                        "name": "test_role",
+                        "description": "Test Role",
+                        "scopes_permissions": {{
+                            "{}": ["{}", "{}"],
+                            "{}": ["{}"]
+                        }}
+                    }}
+                }},
+                "version": 1
+            }}
+        '''.format(int(round(time.time())), Scope.ISCSI, Permission.READ,
+                   Permission.UPDATE, Scope.POOL, Permission.CREATE)
+
+        load_access_control_db()
+        role = self.exec_cmd('ac-role-show', rolename="test_role")
+        self.assertDictEqual(role, {
+            'name': 'test_role',
+            'description': "Test Role",
+            'scopes_permissions': {
+                Scope.ISCSI: [Permission.READ, Permission.UPDATE],
+                Scope.POOL: [Permission.CREATE]
+            }
+        })
+        user = self.exec_cmd('ac-user-show', username="admin")
+        self.assertDictEqual(user, {
+            'username': 'admin',
+            'lastUpdate': user['lastUpdate'],
+            'password':
+                "$2b$12$sd0Az7mm3FaJl8kN3b/xwOuztaN0sWUwC1SJqjM4wcDw/s5cmGbLK",
+            'pwdExpirationDate': None,
+            'pwdUpdateRequired': False,
+            'name': 'admin User',
+            'email': 'admin@user.com',
+            'roles': ['block-manager', 'test_role'],
+            'enabled': True
+        })
+
+    def test_load_v2(self):
+        self.CONFIG_KEY_DICT['accessdb_v2'] = '''
+            {{
+                "users": {{
+                    "admin": {{
+                        "username": "admin",
+                        "password":
+                "$2b$12$sd0Az7mm3FaJl8kN3b/xwOuztaN0sWUwC1SJqjM4wcDw/s5cmGbLK",
+                        "pwdExpirationDate": null,
+                        "pwdUpdateRequired": false,
+                        "roles": ["block-manager", "test_role"],
+                        "name": "admin User",
+                        "email": "admin@user.com",
+                        "lastUpdate": {},
+                        "enabled": true
+                    }}
+                }},
+                "roles": {{
+                    "test_role": {{
+                        "name": "test_role",
+                        "description": "Test Role",
+                        "scopes_permissions": {{
+                            "{}": ["{}", "{}"],
+                            "{}": ["{}"]
+                        }}
+                    }}
+                }},
+                "version": 2
+            }}
+        '''.format(int(round(time.time())), Scope.ISCSI, Permission.READ,
+                   Permission.UPDATE, Scope.POOL, Permission.CREATE)
+
+        load_access_control_db()
+        role = self.exec_cmd('ac-role-show', rolename="test_role")
+        self.assertDictEqual(role, {
+            'name': 'test_role',
+            'description': "Test Role",
+            'scopes_permissions': {
+                Scope.ISCSI: [Permission.READ, Permission.UPDATE],
+                Scope.POOL: [Permission.CREATE]
+            }
+        })
+        user = self.exec_cmd('ac-user-show', username="admin")
+        self.assertDictEqual(user, {
+            'username': 'admin',
+            'lastUpdate': user['lastUpdate'],
+            'password':
+                "$2b$12$sd0Az7mm3FaJl8kN3b/xwOuztaN0sWUwC1SJqjM4wcDw/s5cmGbLK",
+            'pwdExpirationDate': None,
+            'pwdUpdateRequired': False,
+            'name': 'admin User',
+            'email': 'admin@user.com',
+            'roles': ['block-manager', 'test_role'],
+            'enabled': True
+        })
+
     def test_password_policy_pw_length(self):
         Settings.PWD_POLICY_CHECK_LENGTH_ENABLED = True
         Settings.PWD_POLICY_MIN_LENGTH = 3
index caee4029180f52f5e53fa8c9994cbee719d2a232..6989c9080c90b3140a7e8164230ab08982802d51 100644 (file)
@@ -3,12 +3,22 @@
 from __future__ import absolute_import
 
 import unittest
+from datetime import datetime
+from unittest.mock import MagicMock
+
 try:
     import mock
 except ImportError:
     import unittest.mock as mock
 
-from ..services.rbd import get_image_spec, parse_image_spec, RbdConfiguration
+from .. import mgr
+from ..services.rbd import get_image_spec, parse_image_spec, RbdConfiguration, RbdService
+
+
+class ImageNotFoundStub(Exception):
+    def __init__(self, message, errno=None):
+        super(ImageNotFoundStub, self).__init__(
+            'RBD image not found (%s)' % message, errno)
 
 
 class RbdServiceTest(unittest.TestCase):
@@ -43,3 +53,90 @@ class RbdServiceTest(unittest.TestCase):
         self.assertEqual(config.list(), [])
         config = RbdConfiguration('good-pool')
         self.assertEqual(config.list(), [1, 2, 3])
+
+    @mock.patch('dashboard.services.rbd.rbd.RBD')
+    def test_rbd_image_stat_removing(self, rbd_mock):
+        time = datetime.utcnow()
+        rbd_inst_mock = rbd_mock.return_value
+        rbd_inst_mock.trash_get.return_value = {
+            'id': '3c1a5ee60a88',
+            'name': 'test_rbd',
+            'source': 'REMOVING',
+            'deletion_time': time,
+            'deferment_end_time': time
+        }
+
+        ioctx_mock = MagicMock()
+
+        # pylint: disable=protected-access
+        rbd = RbdService._rbd_image_stat_removing(ioctx_mock, 'test_pool', '', '3c1a5ee60a88')
+        self.assertEqual(rbd, {
+            'id': '3c1a5ee60a88',
+            'unique_id': 'test_pool/3c1a5ee60a88',
+            'name': 'test_rbd',
+            'source': 'REMOVING',
+            'deletion_time': '{}Z'.format(time.isoformat()),
+            'deferment_end_time': '{}Z'.format(time.isoformat()),
+            'pool_name': 'test_pool',
+            'namespace': ''
+        })
+
+    @mock.patch('dashboard.services.rbd.rbd.ImageNotFound', new_callable=lambda: ImageNotFoundStub)
+    @mock.patch('dashboard.services.rbd.rbd.RBD')
+    def test_rbd_image_stat_filter_source_user(self, rbd_mock, _):
+        rbd_inst_mock = rbd_mock.return_value
+        rbd_inst_mock.trash_get.return_value = {
+            'id': '3c1a5ee60a88',
+            'name': 'test_rbd',
+            'source': 'USER'
+        }
+
+        ioctx_mock = MagicMock()
+        with self.assertRaises(ImageNotFoundStub) as ctx:
+            # pylint: disable=protected-access
+            RbdService._rbd_image_stat_removing(ioctx_mock, 'test_pool', '', '3c1a5ee60a88')
+        self.assertIn('No image test_pool/3c1a5ee60a88 in status `REMOVING` found.',
+                      str(ctx.exception))
+
+    @mock.patch('dashboard.services.rbd.rbd.ImageNotFound', new_callable=lambda: ImageNotFoundStub)
+    @mock.patch('dashboard.services.rbd.RbdService._rbd_image_stat_removing')
+    @mock.patch('dashboard.services.rbd.RbdService._rbd_image_stat')
+    @mock.patch('dashboard.services.rbd.RbdService._rbd_image_refs')
+    @mock.patch('dashboard.services.rbd.rbd.RBD')
+    def test_rbd_pool_list(self, rbd_mock, rbd_image_ref_mock, rbd_image_stat_mock,
+                           rbd_image_stat_removing_mock, _):
+        time = datetime.utcnow()
+
+        ioctx_mock = MagicMock()
+        mgr.rados = MagicMock()
+        mgr.rados.open_ioctx.return_value = ioctx_mock
+
+        rbd_inst_mock = rbd_mock.return_value
+        rbd_inst_mock.namespace_list.return_value = []
+        rbd_image_ref_mock.return_value = [{'name': 'test_rbd', 'id': '3c1a5ee60a88'}]
+
+        rbd_image_stat_mock.side_effect = mock.Mock(side_effect=ImageNotFoundStub(
+            'RBD image not found test_pool/3c1a5ee60a88'))
+
+        rbd_image_stat_removing_mock.return_value = {
+            'id': '3c1a5ee60a88',
+            'unique_id': 'test_pool/3c1a5ee60a88',
+            'name': 'test_rbd',
+            'source': 'REMOVING',
+            'deletion_time': '{}Z'.format(time.isoformat()),
+            'deferment_end_time': '{}Z'.format(time.isoformat()),
+            'pool_name': 'test_pool',
+            'namespace': ''
+        }
+
+        rbd_pool_list = RbdService.rbd_pool_list('test_pool')
+        self.assertEqual(rbd_pool_list, (0, [{
+            'id': '3c1a5ee60a88',
+            'unique_id': 'test_pool/3c1a5ee60a88',
+            'name': 'test_rbd',
+            'source': 'REMOVING',
+            'deletion_time': '{}Z'.format(time.isoformat()),
+            'deferment_end_time': '{}Z'.format(time.isoformat()),
+            'pool_name': 'test_pool',
+            'namespace': ''
+        }]))
index f62d968c8988f06147f810de2711f81c036f27f6..9ed5e342ee295d9b33d938f4c40a6738ff2d9e43 100644 (file)
@@ -1,10 +1,11 @@
 
 from mgr_module import MgrModule, CommandResult
-import threading
-import random
-import json
 import errno
 import six
+import json
+import random
+import sys
+import threading
 
 
 class Module(MgrModule):
@@ -101,6 +102,11 @@ class Module(MgrModule):
                 "desc": "Create an audit log record.",
                 "perm": "rw"
             },
+            {
+                "cmd": "mgr self-test python-version",
+                "desc": "Query the version of the embedded Python runtime",
+                "perm": "r"
+            },
             ]
 
     def __init__(self, *args, **kwargs):
@@ -110,7 +116,13 @@ class Module(MgrModule):
         self._health = {}
 
     def handle_command(self, inbuf, command):
-        if command['prefix'] == 'mgr self-test run':
+        if command['prefix'] == 'mgr self-test python-version':
+            major = sys.version_info.major
+            minor = sys.version_info.minor
+            micro = sys.version_info.micro
+            return 0, f'{major}.{minor}.{micro}', ''
+
+        elif command['prefix'] == 'mgr self-test run':
             self._self_test()
             return 0, '', 'Self-test succeeded'
 
index d4fb9930853f8ba90f05af72c8d5f432b69e87d3..f025e94013a81d05951e2bbea413ca2ba1ea83d0 100644 (file)
@@ -441,7 +441,7 @@ class Module(MgrModule):
         if not channels:
             channels = self.get_active_channels()
         report = {
-            'leaderboard': False,
+            'leaderboard': self.leaderboard,
             'report_version': 1,
             'report_timestamp': datetime.utcnow().isoformat(),
             'report_id': self.report_id,
@@ -451,8 +451,6 @@ class Module(MgrModule):
         }
 
         if 'ident' in channels:
-            if self.leaderboard:
-                report['leaderboard'] = True
             for option in ['description', 'contact', 'organization']:
                 report[option] = getattr(self, option)
 
index 2a272fa3321ec455cd0dca935e55007f4438eb6a..5c220b6149c9de3c42a34b41cb1deaf251bca4a0 100644 (file)
@@ -1,6 +1,8 @@
 import datetime
 import re
 
+from typing import Optional
+
 
 def datetime_now() -> datetime.datetime:
     """
@@ -66,3 +68,40 @@ def str_to_datetime(string: str) -> datetime.datetime:
 
     raise ValueError("Time data {} does not match one of the formats {}".format(
         string, str(fmts)))
+
+
+def parse_timedelta(delta: str) -> Optional[datetime.timedelta]:
+    """
+    Returns a timedelta object represents a duration, the difference
+    between two dates or times.
+
+    >>> parse_timedelta('foo')
+
+    >>> parse_timedelta('2d')
+    datetime.timedelta(days=2)
+
+    >>> parse_timedelta("4w")
+    datetime.timedelta(days=28)
+
+    >>> parse_timedelta("5s")
+    datetime.timedelta(seconds=5)
+
+    >>> parse_timedelta("-5s")
+    datetime.timedelta(days=-1, seconds=86395)
+
+    :param delta: The string to process, e.g. '2h', '10d', '30s'.
+    :return: The `datetime.timedelta` object or `None` in case of
+        a parsing error.
+    """
+    parts = re.match(r'(?P<seconds>-?\d+)s|'
+                     r'(?P<minutes>-?\d+)m|'
+                     r'(?P<hours>-?\d+)h|'
+                     r'(?P<days>-?\d+)d|'
+                     r'(?P<weeks>-?\d+)w$',
+                     delta,
+                     re.IGNORECASE)
+    if not parts:
+        return None
+    parts = parts.groupdict()  # type: ignore
+    args = {name: int(param) for name, param in parts.items() if param}  # type: ignore
+    return datetime.timedelta(**args)
index da7037b2d816958cc363652ef552ccc665fcfdeb..bee5d798234951c151ea4826383e0b2b8dfd7e8a 100644 (file)
@@ -6,7 +6,7 @@ skip_missing_interpreters = true
 deps=
     -rrequirements.txt
 commands=
-    pytest --doctest-modules ceph/deployment/service_spec.py
+    pytest --doctest-modules ceph/deployment/service_spec.py ceph/utils.py
     pytest --mypy --mypy-ignore-missing-imports {posargs}
 
 [tool:pytest]
index 72feddd6a3f856cbf72eb296638a07a2012dc5f9..989b50600fd8fba28e010c169909eaec4b655935 100755 (executable)
@@ -39,7 +39,7 @@ prompt_pool() {
        error_out "rados lspools" "$lspools_err"
     fi
     >&2 sed 's/^/    /' "$temp_file" # list pools and indent
-    >&2 printf "Which pool do you want to search for orphans? "
+    >&2 printf "Which pool do you want to search for orphans (for multiple, use space-separated list)? "
     local mypool
     read mypool
     echo $mypool
@@ -47,10 +47,8 @@ prompt_pool() {
 
 if [ $# -eq 0 ] ;then
     pool="$(prompt_pool)"
-elif [ $# -eq 1 ] ;then
-    pool="$1"
 else
-    error_out "Usage: $0 [pool]"
+    pool="$*"
 fi
 
 echo "Pool is \"$pool\"."
@@ -59,10 +57,15 @@ echo "Note: output files produced will be tagged with the current timestamp -- $
 
 echo "running 'rados ls' at $(date)"
 # since --format is not specified, plain should be used
-rados ls --pool="$pool" --all >"$rados_out" 2>"$rados_err"
-if [ "$?" -ne 0 ] ;then
-    error_out "rados ls" "$rados_err"
-fi
+
+rm -f "$rados_out" &> /dev/null
+for mypool in $pool ; do
+    echo "running 'rados ls' on pool ${mypool}."
+    rados ls --pool="$mypool" --all >>"$rados_out" 2>"$rados_err"
+    if [ "$?" -ne 0 ] ;then
+       error_out "rados ls" "$rados_err"
+    fi
+done
 
 # NOTE: Each entry (line of output) of `rados ls --all` should be in
 # one of four formats depending on whether or not an entry has a
index 5bd78a668e995237b2876b7e69c484c77d7cdbdd..a922182571d0bd324964442d8aaeb62635b016ce 100644 (file)
@@ -6171,6 +6171,10 @@ int main(int argc, const char **argv)
   }
 
   if (opt_cmd == OPT::BUCKET_CHOWN) {
+    if (bucket_name.empty()) {
+      cerr << "ERROR: bucket name not specified" << std::endl;
+      return EINVAL;
+    }
 
     bucket_op.set_bucket_name(bucket_name);
     bucket_op.set_new_bucket_name(new_bucket_name);
index 577f70f385d8942b135f44ce4981a33a6e7b9719..a15523f3ac3ead37a0ab50efe176a0e2382d5d6b 100644 (file)
@@ -22,6 +22,8 @@
 #include <boost/asio/ssl.hpp>
 #include <boost/beast/ssl/ssl_stream.hpp>
 
+#include "common/split.h"
+
 #include "services/svc_config_key.h"
 #include "services/svc_zone.h"
 
@@ -772,6 +774,56 @@ int AsioFrontend::init_ssl()
     return -EINVAL;
   }
 
+  std::optional<string> options = conf->get_val("ssl_options");
+  if (options) {
+    if (!cert) {
+      lderr(ctx()) << "no ssl_certificate configured for ssl_options" << dendl;
+      return -EINVAL;
+    }
+  } else if (cert) {
+    options = "no_sslv2:no_sslv3:no_tlsv1:no_tlsv1_1";
+  }
+
+  if (options) {
+    for (auto &option : ceph::split(*options, ":")) {
+      if (option == "default_workarounds") {
+        ssl_context->set_options(ssl::context::default_workarounds);
+      } else if (option == "no_compression") {
+        ssl_context->set_options(ssl::context::no_compression);
+      } else if (option == "no_sslv2") {
+        ssl_context->set_options(ssl::context::no_sslv2);
+      } else if (option == "no_sslv3") {
+        ssl_context->set_options(ssl::context::no_sslv3);
+      } else if (option == "no_tlsv1") {
+        ssl_context->set_options(ssl::context::no_tlsv1);
+      } else if (option == "no_tlsv1_1") {
+        ssl_context->set_options(ssl::context::no_tlsv1_1);
+      } else if (option == "no_tlsv1_2") {
+        ssl_context->set_options(ssl::context::no_tlsv1_2);
+      } else if (option == "single_dh_use") {
+        ssl_context->set_options(ssl::context::single_dh_use);
+      } else {
+        lderr(ctx()) << "ignoring unknown ssl option '" << option << "'" << dendl;
+      }
+    }
+  }
+
+  std::optional<string> ciphers = conf->get_val("ssl_ciphers");
+  if (ciphers) {
+    if (!cert) {
+      lderr(ctx()) << "no ssl_certificate configured for ssl_ciphers" << dendl;
+      return -EINVAL;
+    }
+
+    int r = SSL_CTX_set_cipher_list(ssl_context->native_handle(),
+                                    ciphers->c_str());
+    if (r == 0) {
+      lderr(ctx()) << "no cipher could be selected from ssl_ciphers: "
+                   << *ciphers << dendl;
+      return -EINVAL;
+    }
+  }
+
   auto ports = config.equal_range("ssl_port");
   auto endpoints = config.equal_range("ssl_endpoint");
 
index 659b5518128e8d5c1ca2a80ee78457be88a78958..43f4db4cbcea0e59472699a14577f4a9071c0642 100644 (file)
@@ -125,6 +125,11 @@ struct RGWCacheNotifyInfo {
   static void generate_test_instances(list<RGWCacheNotifyInfo*>& o);
 };
 WRITE_CLASS_ENCODER(RGWCacheNotifyInfo)
+inline std::ostream& operator <<(std::ostream& m, const RGWCacheNotifyInfo& cni) {
+  return m << "[op: " << cni.op << ", obj: " << cni.obj
+          << ", ofs" << cni.ofs << ", ns" << cni.ns << "]";
+}
+
 
 class RGWChainedCache {
 public:
index f706901dccb0de8cc03e3b9d201a609f52bdd3b9..98191b1d254657feeffdcacf51acf1ae91a0f6e8 100644 (file)
@@ -1483,6 +1483,41 @@ bool verify_object_permission(const DoutPrefixProvider* dpp, struct req_state *s
                                   op);
 }
 
+
+int verify_object_lock(const DoutPrefixProvider* dpp, const rgw::sal::RGWAttrs& attrs, const bool bypass_perm, const bool bypass_governance_mode) {
+  auto aiter = attrs.find(RGW_ATTR_OBJECT_RETENTION);
+  if (aiter != attrs.end()) {
+    RGWObjectRetention obj_retention;
+    try {
+      decode(obj_retention, aiter->second);
+    } catch (buffer::error& err) {
+      ldpp_dout(dpp, 0) << "ERROR: failed to decode RGWObjectRetention" << dendl;
+      return -EIO;
+    }
+    if (ceph::real_clock::to_time_t(obj_retention.get_retain_until_date()) > ceph_clock_now()) {
+      if (obj_retention.get_mode().compare("GOVERNANCE") != 0 || !bypass_perm || !bypass_governance_mode) {
+        return -EACCES;
+      }
+    }
+  }
+  aiter = attrs.find(RGW_ATTR_OBJECT_LEGAL_HOLD);
+  if (aiter != attrs.end()) {
+    RGWObjectLegalHold obj_legal_hold;
+    try {
+      decode(obj_legal_hold, aiter->second);
+    } catch (buffer::error& err) {
+      ldpp_dout(dpp, 0) << "ERROR: failed to decode RGWObjectLegalHold" << dendl;
+      return -EIO;
+    }
+    if (obj_legal_hold.is_enabled()) {
+      return -EACCES;
+    }
+  }
+  
+  return 0;
+}
+
+
 class HexTable
 {
   char table[256];
index 48115804fc9a3d0e5f8793b8dda14647734317f6..2c8d742b93d43f9368ab03aeb30165175b4b852c 100644 (file)
@@ -45,6 +45,7 @@ namespace ceph {
 
 namespace rgw::sal {
   class RGWUser;
+  using RGWAttrs = std::map<std::string, ceph::buffer::list>;
 }
 
 using ceph::crypto::MD5;
@@ -2276,6 +2277,12 @@ extern bool verify_object_permission_no_policy(
   int perm);
 extern bool verify_object_permission_no_policy(const DoutPrefixProvider* dpp, struct req_state *s,
                                               int perm);
+extern int verify_object_lock(
+  const DoutPrefixProvider* dpp,
+  const rgw::sal::RGWAttrs& attrs,
+  const bool bypass_perm,
+  const bool bypass_governance_mode);
+
 /** Convert an input URL into a sane object name
  * by converting %-escaped strings into characters, etc*/
 extern void rgw_uri_escape_char(char c, string& dst);
index c204c1886f2c37393bdb374fb16eb92387285f71..b78d0506ef840745f50233e4fb34ae5736efa789 100644 (file)
@@ -298,7 +298,7 @@ namespace rgw {
 
     int rc = rgwlib.get_fe()->execute_req(&req);
     if ((rc == 0) &&
-       (req.get_ret() == 0)) {
+        ((rc = req.get_ret()) == 0)) {
       lock_guard guard(rgw_fh->mtx);
       rgw_fh->set_atime(real_clock::to_timespec(real_clock::now()));
       *bytes_read = req.nread;
@@ -322,7 +322,7 @@ namespace rgw {
 
     int rc = rgwlib.get_fe()->execute_req(&req);
     if ((rc == 0) &&
-        (req.get_ret() == 0)) {
+        ((rc = req.get_ret()) == 0)) {
       lock_guard(rgw_fh->mtx);
       rgw_fh->set_atime(real_clock::to_timespec(real_clock::now()));
       *bytes_read = req.nread;
index 2267daa40cc55a1e9292b63876157f2f4c700338..898806558e9a4b7e5c6ed5fe6c5ac66ee4369b91 100644 (file)
@@ -312,11 +312,11 @@ class RGWGCIOManager {
 
 public:
   RGWGCIOManager(const DoutPrefixProvider* _dpp, CephContext *_cct, RGWGC *_gc) : dpp(_dpp),
-                                                  cct(_cct),
-                                                  gc(_gc),
-                                                  remove_tags(cct->_conf->rgw_gc_max_objs),
-                                                  tag_io_size(cct->_conf->rgw_gc_max_objs) {
+                                                                                  cct(_cct),
+                                                                                  gc(_gc) {
     max_aio = cct->_conf->rgw_gc_max_concurrent_io;
+    remove_tags.resize(min(static_cast<int>(cct->_conf->rgw_gc_max_objs), rgw_shards_max()));
+    tag_io_size.resize(min(static_cast<int>(cct->_conf->rgw_gc_max_objs), rgw_shards_max()));
   }
 
   ~RGWGCIOManager() {
index a91c51c4658eace59a1636901fc0c2e3bbb1a654..a3aaccb7310a6980e5efcc5bf57ed6f80d8144b5 100644 (file)
@@ -226,6 +226,12 @@ void RGWObjManifest::obj_iterator::operator++()
   if (manifest->explicit_objs) {
     ++explicit_iter;
 
+    if (explicit_iter == manifest->objs.end()) {
+      ofs = manifest->obj_size;
+      stripe_size = 0;
+      return;
+    }
+
     update_explicit_pos();
 
     update_location();
index 627e1ca4dec95f7d3e3c3f835dd336cb5e769198..6914cc1ab6a534e057b47d96eb6ce8cf663931bc 100644 (file)
@@ -534,8 +534,15 @@ static int read_obj_policy(rgw::sal::RGWRadosStore *store,
     const rgw_user& bucket_owner = bucket_policy.get_owner().get_id();
     if (bucket_owner.compare(s->user->get_id()) != 0 &&
         ! s->auth.identity->is_admin_of(bucket_owner)) {
+      auto r = eval_user_policies(s->iam_user_policies, s->env,
+                                  *s->auth.identity, rgw::IAM::s3ListBucket,
+                                  ARN(bucket));
+      if (r == Effect::Allow)
+        return -ENOENT;
+      if (r == Effect::Deny)
+        return -EACCES;
       if (policy) {
-        auto r =  policy->eval(s->env, *s->auth.identity, rgw::IAM::s3ListBucket, ARN(bucket));
+        r = policy->eval(s->env, *s->auth.identity, rgw::IAM::s3ListBucket, ARN(bucket));
         if (r == Effect::Allow)
           return -ENOENT;
         if (r == Effect::Deny)
@@ -2537,11 +2544,10 @@ void RGWGetUsage::execute()
   bool is_truncated = true;
 
   RGWUsageIter usage_iter;
-  
+
   while (is_truncated) {
     op_ret = store->getRados()->read_usage(s->user->get_id(), s->bucket_name, start_epoch, end_epoch, max_entries,
                                 &is_truncated, usage_iter, usage);
-
     if (op_ret == -ENOENT) {
       op_ret = 0;
       is_truncated = false;
@@ -4868,37 +4874,10 @@ void RGWDeleteObj::execute()
     op_ret = 0;
 
     if (check_obj_lock) {
-      auto aiter = attrs.find(RGW_ATTR_OBJECT_RETENTION);
-      if (aiter != attrs.end()) {
-        RGWObjectRetention obj_retention;
-        try {
-          decode(obj_retention, aiter->second);
-        } catch (buffer::error& err) {
-          ldpp_dout(this, 0) << "ERROR: failed to decode RGWObjectRetention" << dendl;
-          op_ret = -EIO;
-          return;
-        }
-        if (ceph::real_clock::to_time_t(obj_retention.get_retain_until_date()) > ceph_clock_now()) {
-          if (obj_retention.get_mode().compare("GOVERNANCE") != 0 || !bypass_perm || !bypass_governance_mode) {
-            op_ret = -EACCES;
-            return;
-          }
-        }
-      }
-      aiter = attrs.find(RGW_ATTR_OBJECT_LEGAL_HOLD);
-      if (aiter != attrs.end()) {
-        RGWObjectLegalHold obj_legal_hold;
-        try {
-          decode(obj_legal_hold, aiter->second);
-        } catch (buffer::error& err) {
-          ldpp_dout(this, 0) << "ERROR: failed to decode RGWObjectLegalHold" << dendl;
-          op_ret = -EIO;
-          return;
-        }
-        if (obj_legal_hold.is_enabled()) {
-          op_ret = -EACCES;
-          return;
-        }
+      int object_lock_response = verify_object_lock(this, attrs, bypass_perm, bypass_governance_mode);
+      if (object_lock_response != 0) {
+        op_ret = object_lock_response;
+        return;
       }
     }
 
@@ -6500,10 +6479,31 @@ void RGWGetHealthCheck::execute()
 
 int RGWDeleteMultiObj::verify_permission()
 {
+  int op_ret = get_params();
+  if (op_ret) {
+    return op_ret;
+  }
+
   if (s->iam_policy || ! s->iam_user_policies.empty()) {
+    if (s->bucket_info.obj_lock_enabled() && bypass_governance_mode) {
+      auto r = eval_user_policies(s->iam_user_policies, s->env, boost::none,
+                                               rgw::IAM::s3BypassGovernanceRetention, ARN(s->bucket_info.bucket));
+      if (r == Effect::Deny) {
+        bypass_perm = false;
+      } else if (r == Effect::Pass && s->iam_policy) {
+        r = s->iam_policy->eval(s->env, *s->auth.identity, rgw::IAM::s3BypassGovernanceRetention,
+                                     ARN(s->bucket_info.bucket));
+        if (r == Effect::Deny) {
+          bypass_perm = false;
+        }
+      }
+    }
+
+    bool not_versioned = s->object.empty() || s->object.instance.empty();
+
     auto usr_policy_res = eval_user_policies(s->iam_user_policies, s->env,
                                               boost::none,
-                                              s->object.instance.empty() ?
+                                              not_versioned ?
                                               rgw::IAM::s3DeleteObject :
                                               rgw::IAM::s3DeleteObjectVersion,
                                               ARN(s->bucket));
@@ -6514,7 +6514,7 @@ int RGWDeleteMultiObj::verify_permission()
     rgw::IAM::Effect r = Effect::Pass;
     if (s->iam_policy) {
       r = s->iam_policy->eval(s->env, *s->auth.identity,
-                                s->object.instance.empty() ?
+                                not_versioned ?
                                 rgw::IAM::s3DeleteObject :
                                 rgw::IAM::s3DeleteObjectVersion,
                                 ARN(s->bucket));
@@ -6547,11 +6547,6 @@ void RGWDeleteMultiObj::execute()
   RGWObjectCtx *obj_ctx = static_cast<RGWObjectCtx *>(s->obj_ctx);
   char* buf;
 
-  op_ret = get_params();
-  if (op_ret < 0) {
-    goto error;
-  }
-
   buf = data.c_str();
   if (!buf) {
     op_ret = -EINVAL;
@@ -6640,6 +6635,31 @@ void RGWDeleteMultiObj::execute()
       }
     }
 
+    // verify_object_lock
+    bool check_obj_lock = obj.key.have_instance() && s->bucket_info.obj_lock_enabled();
+    map<string,bufferlist> attrs;
+    if (check_obj_lock) {
+      int get_attrs_response = get_obj_attrs(store, s, obj, attrs);
+      if (get_attrs_response < 0) {
+        if (get_attrs_response == -ENOENT) {
+          // object maybe delete_marker, skip check_obj_lock
+          check_obj_lock = false;
+        } else {
+          // Something went wrong.
+          send_partial_response(*iter, false, "", get_attrs_response);
+          continue;
+        }
+      }
+    }
+
+    if (check_obj_lock) {
+      int object_lock_response = verify_object_lock(this, attrs, bypass_perm, bypass_governance_mode);
+      if (object_lock_response != 0) {
+        send_partial_response(*iter, false, "", object_lock_response);
+        continue;
+      }
+    }
+
     obj_ctx->set_atomic(obj);
 
     RGWRados::Object del_target(store->getRados(), s->bucket_info, *obj_ctx, obj);
index 7a398fe1f6dc76b6fbf59cb9564573be1b4a1094..8074607d3fbf2d91ae734faab5638a383326771f 100644 (file)
@@ -1931,11 +1931,16 @@ protected:
   bool quiet;
   bool status_dumped;
   bool acl_allowed = false;
+  bool bypass_perm;
+  bool bypass_governance_mode;
+
 
 public:
   RGWDeleteMultiObj() {
     quiet = false;
     status_dumped = false;
+    bypass_perm = true;
+    bypass_governance_mode = false;
   }
   int verify_permission() override;
   void pre_exec() override;
index d6ad28ff0e9439b1bd803fbafe95a4bb4c73c9a7..eb769d76c2fa809411234aae9125c85a292a207b 100644 (file)
@@ -1493,7 +1493,7 @@ int RGWRadosList::do_incomplete_multipart(
                               &is_listing_truncated, null_yield);
     if (ret == -ENOENT) {
       // could bucket have been removed while this is running?
-      ldout(store->ctx(), 20) << "RGWRadosList::" << __func__ <<
+      ldout(store->ctx(), 5) << "RGWRadosList::" << __func__ <<
        ": WARNING: call to list_objects of multipart namespace got ENOENT; "
        "assuming bucket removal race" << dendl;
       break;
@@ -1520,22 +1520,27 @@ int RGWRadosList::do_incomplete_multipart(
       }
 
       // now process the uploads vector
-      int parts_marker = 0;
-      bool is_parts_truncated = false;
-      do {
-       map<uint32_t, RGWUploadPartInfo> parts;
+      for (const auto& upload : uploads) {
+       const RGWMPObj& mp = upload.mp;
+       int parts_marker = 0;
+       bool is_parts_truncated = false;
 
-       for (const auto& upload : uploads) {
-         const RGWMPObj& mp = upload.mp;
+       do { // while (is_parts_truncated);
+         std::map<uint32_t, RGWUploadPartInfo> parts;
          ret = list_multipart_parts(store, bucket_info, store->ctx(),
                                     mp.get_upload_id(), mp.get_meta(),
-                                    max_parts,
-                                    parts_marker, parts, NULL, &is_parts_truncated);
+                                    max_parts, parts_marker,
+                                    parts, &parts_marker,
+                                    &is_parts_truncated);
          if (ret == -ENOENT) {
-           continue;
+           ldout(store->ctx(), 5) <<  "RGWRadosList::" << __func__ <<
+             ": WARNING: list_multipart_parts returned ret=-ENOENT "
+             "for " << mp.get_upload_id() << ", moving on" << dendl;
+           break;
          } else if (ret < 0) {
            lderr(store->ctx()) << "RGWRadosList::" << __func__ <<
-             ": ERROR: list_multipart_parts returned ret=" << ret << dendl;
+             ": ERROR: list_multipart_parts returned ret=" << ret <<
+             dendl;
            return ret;
          }
 
@@ -1547,10 +1552,10 @@ int RGWRadosList::do_incomplete_multipart(
              const rgw_raw_obj& loc =
                obj_it.get_location().get_raw_obj(store->getRados());
              std::cout << loc.oid << std::endl;
-           }
-         }
-       }
-      } while (is_parts_truncated);
+           } // for (auto obj_it
+         } // for (auto& p
+       } while (is_parts_truncated);
+      } // for (const auto& upload
     } // if objs not empty
   } while (is_listing_truncated);
 
index a25544bd7723ebd79a7ef35a91c11f2b78dabb98..5dc49c96bf638d75335d880c3217dd858c0a4d35 100644 (file)
@@ -594,6 +594,17 @@ int RGWPubSub::Bucket::remove_notification(const string& topic_name)
 
   bucket_topics.topics.erase(topic_name);
 
+  if (bucket_topics.topics.empty()) {
+    // no more topics - delete the notification object of the bucket
+    ret = ps->remove(bucket_meta_obj, &objv_tracker);
+    if (ret < 0 && ret != -ENOENT) {
+      ldout(ps->store->ctx(), 1) << "ERROR: failed to remove bucket topics: ret=" << ret << dendl;
+      return ret;
+    }
+    return 0;
+  }
+
+  // write back the notifications without the deleted one
   ret = write_topics(bucket_topics, &objv_tracker);
   if (ret < 0) {
     ldout(store->ctx(), 1) << "ERROR: failed to write topics info: ret=" << ret << dendl;
index 6a28999feaceff7ff8998eae24c62bbae7f3103f..0ae6aed6f5683701091b130ac76f7720fca32bb0 100644 (file)
@@ -714,7 +714,7 @@ int RGWRESTStreamRWRequest::do_send_prepare(RGWAccessKey *key, map<string, strin
                                          bufferlist *send_data)
 {
   string new_url = url;
-  if (new_url[new_url.size() - 1] != '/')
+  if (!new_url.empty() && new_url.back() != '/')
     new_url.append("/");
   
   RGWEnv new_env;
index f6697f92b8d57df3b152773cf56d6633d6ba461d..ac7d04098c0fc63650ad5675c863f6047f6d6a94 100644 (file)
@@ -1407,6 +1407,14 @@ void RGWGetUsage_ObjStore_S3::send_response()
        formatter->open_object_section("Stats");
      }
 
+     // send info about quota config
+     auto user_info = s->user->get_info();
+     encode_json("QuotaMaxBytes", user_info.user_quota.max_size, formatter);
+     encode_json("QuotaMaxBuckets", user_info.max_buckets, formatter);
+     encode_json("QuotaMaxObjCount", user_info.user_quota.max_objects, formatter);
+     encode_json("QuotaMaxBytesPerBucket", user_info.bucket_quota.max_objects, formatter);
+     encode_json("QuotaMaxObjCountPerBucket", user_info.bucket_quota.max_size, formatter);
+     // send info about user's capacity utilization
      encode_json("TotalBytes", stats.size, formatter);
      encode_json("TotalBytesRounded", stats.size_rounded, formatter);
      encode_json("TotalEntries", stats.num_objects, formatter);
@@ -2135,6 +2143,15 @@ static void dump_bucket_metadata(struct req_state *s, rgw::sal::RGWBucket* bucke
 {
   dump_header(s, "X-RGW-Object-Count", static_cast<long long>(bucket->get_count()));
   dump_header(s, "X-RGW-Bytes-Used", static_cast<long long>(bucket->get_size()));
+  // only bucket's owner is allowed to get the quota settings of the account
+  if (bucket->is_owner(s->user)) {
+    auto user_info = s->user->get_info();
+    dump_header(s, "X-RGW-Quota-User-Size", static_cast<long long>(user_info.user_quota.max_size));
+    dump_header(s, "X-RGW-Quota-User-Objects", static_cast<long long>(user_info.user_quota.max_objects));
+    dump_header(s, "X-RGW-Quota-Max-Buckets", static_cast<long long>(user_info.max_buckets));
+    dump_header(s, "X-RGW-Quota-Bucket-Size", static_cast<long long>(user_info.bucket_quota.max_size));
+    dump_header(s, "X-RGW-Quota-Bucket-Objects", static_cast<long long>(user_info.bucket_quota.max_objects));
+  }
 }
 
 void RGWStatBucket_ObjStore_S3::send_response()
@@ -3947,6 +3964,12 @@ int RGWDeleteMultiObj_ObjStore_S3::get_params()
     return ret;
   }
 
+  const char *bypass_gov_header = s->info.env->get("HTTP_X_AMZ_BYPASS_GOVERNANCE_RETENTION");
+  if (bypass_gov_header) {
+    std::string bypass_gov_decoded = url_decode(bypass_gov_header);
+    bypass_governance_mode = boost::algorithm::iequals(bypass_gov_decoded, "true");
+  }
+
   return do_aws4_auth_completion();
 }
 
index 0dce6afa600fe41d8f6dc1b8b951bbfa284d7061..db3bb717014d699411cdb98969657b992e35235a 100644 (file)
@@ -176,7 +176,7 @@ void RGWListBuckets_ObjStore_SWIFT::send_response_begin(bool has_buckets)
             global_stats,
             policies_stats,
             attrs,
-            user_quota,
+            s->user->get_info().user_quota,
             static_cast<RGWAccessControlPolicy_SWIFTAcct&>(*s->user_acl));
     dump_errno(s);
     dump_header(s, "Accept-Ranges", "bytes");
@@ -282,7 +282,7 @@ void RGWListBuckets_ObjStore_SWIFT::send_response_end()
             global_stats,
             policies_stats,
             attrs,
-            user_quota,
+            s->user->get_info().user_quota,
             static_cast<RGWAccessControlPolicy_SWIFTAcct&>(*s->user_acl));
     dump_errno(s);
     end_header(s, nullptr, nullptr, s->formatter->get_len(), true);
@@ -556,7 +556,7 @@ void RGWStatAccount_ObjStore_SWIFT::send_response()
             global_stats,
             policies_stats,
             attrs,
-            user_quota,
+            s->user->get_info().user_quota,
             static_cast<RGWAccessControlPolicy_SWIFTAcct&>(*s->user_acl));
   }
 
index 0dbe3400e69ab28847a09b70f25e16b9072385e3..89eabec7851a4d931a753187cd81bef56d93690d 100644 (file)
 #include "rgw_pubsub_push.h"
 #include "rgw_notify_event_type.h"
 #include "rgw_perf_counters.h"
-#ifdef WITH_RADOSGW_AMQP_ENDPOINT
-#include "rgw_amqp.h"
-#endif
-#ifdef WITH_RADOSGW_KAFKA_ENDPOINT
-#include "rgw_kafka.h"
-#endif
 
 #include <boost/algorithm/hex.hpp>
 #include <boost/asio/yield.hpp>
@@ -1553,25 +1547,6 @@ RGWPSSyncModuleInstance::RGWPSSyncModuleInstance(CephContext *cct, const JSONFor
   } else {
     effective_conf.decode_json(&p);
   }
-#ifdef WITH_RADOSGW_AMQP_ENDPOINT
-  if (!rgw::amqp::init(cct)) {
-    ldout(cct, 1) << "ERROR: failed to initialize AMQP manager in pubsub sync module" << dendl;
-  }
-#endif
-#ifdef WITH_RADOSGW_KAFKA_ENDPOINT
-  if (!rgw::kafka::init(cct)) {
-    ldout(cct, 1) << "ERROR: failed to initialize Kafka manager in pubsub sync module" << dendl;
-  }
-#endif
-}
-
-RGWPSSyncModuleInstance::~RGWPSSyncModuleInstance() {
-#ifdef WITH_RADOSGW_AMQP_ENDPOINT
-  rgw::amqp::shutdown();
-#endif
-#ifdef WITH_RADOSGW_KAFKA_ENDPOINT
-  rgw::kafka::shutdown();
-#endif
 }
 
 RGWDataSyncModule *RGWPSSyncModuleInstance::get_data_handler()
index ac2bbdc2e775fd6630e2dbffd13703a1f8c1c9e0..8acc1a626f9ae0f7ed7f075a40f32e21bc56abe0 100644 (file)
@@ -26,7 +26,7 @@ class RGWPSSyncModuleInstance : public RGWSyncModuleInstance {
   JSONFormattable effective_conf;
 public:
   RGWPSSyncModuleInstance(CephContext *cct, const JSONFormattable& config);
-  ~RGWPSSyncModuleInstance();
+  ~RGWPSSyncModuleInstance() = default;
   RGWDataSyncModule *get_data_handler() override;
   RGWRESTMgr *get_rest_filter(int dialect, RGWRESTMgr *orig) override;
   bool supports_user_writes() override {
index 23ccb344580a5a923f243ce5ae693871d2e1e4c2..39023d02214827d61b4177f47d70f08c76303512 100644 (file)
@@ -326,7 +326,7 @@ static void set_err_msg(std::string *sink, std::string msg)
 /*
  * Dump either the full user info or a subset to a formatter.
  *
- * NOTE: It is the caller's respnsibility to ensure that the
+ * NOTE: It is the caller's responsibility to ensure that the
  * formatter is flushed at the correct time.
  */
 
@@ -441,6 +441,43 @@ static void dump_user_info(Formatter *f, RGWUserInfo &info,
   f->close_section();
 }
 
+static int user_add_helper(RGWUserAdminOpState& op_state, std::string *err_msg)
+{
+  int ret = 0;
+  const rgw_user& uid = op_state.get_user_id();
+  std::string user_email = op_state.get_user_email();
+  std::string display_name = op_state.get_display_name();
+
+  // fail if the user exists already
+  if (op_state.has_existing_user()) {
+    if (op_state.found_by_email) {
+      set_err_msg(err_msg, "email: " + user_email +
+          " is the email address of an existing user");
+      ret = -ERR_EMAIL_EXIST;
+    } else if (op_state.found_by_key) {
+      set_err_msg(err_msg, "duplicate key provided");
+      ret = -ERR_KEY_EXIST;
+    } else {
+      set_err_msg(err_msg, "user: " + uid.to_str() + " exists");
+      ret = -EEXIST;
+    }
+    return ret;
+  }
+
+  // fail if the user_info has already been populated
+  if (op_state.is_populated()) {
+    set_err_msg(err_msg, "cannot overwrite already populated user");
+    return -EEXIST;
+  }
+
+  // fail if the display name was not included
+  if (display_name.empty()) {
+    set_err_msg(err_msg, "no display name specified");
+    return -EINVAL;
+  }
+
+  return ret;
+}
 
 RGWAccessKeyPool::RGWAccessKeyPool(RGWUser* usr)
 {
@@ -1028,7 +1065,7 @@ int RGWSubUserPool::check_op(RGWUserAdminOpState& op_state,
   }
 
   if (op_state.get_subuser_perm() == RGW_PERM_INVALID) {
-    set_err_msg(err_msg, "invaild subuser access");
+    set_err_msg(err_msg, "invalid subuser access");
     return -EINVAL;
   }
 
@@ -1530,28 +1567,22 @@ int RGWUser::update(RGWUserAdminOpState& op_state, std::string *err_msg)
 
 int RGWUser::check_op(RGWUserAdminOpState& op_state, std::string *err_msg)
 {
-  bool same_id;
-  bool populated;
-  rgw_user& op_id = op_state.get_user_id();
-
-  RGWUserInfo user_info;
-
-  same_id = (user_id.compare(op_id) == 0);
-  populated = is_populated();
+  int ret = 0;
+  const rgw_user& uid = op_state.get_user_id();
 
-  if (op_id.compare(RGW_USER_ANON_ID) == 0) {
+  if (uid.compare(RGW_USER_ANON_ID) == 0) {
     set_err_msg(err_msg, "unable to perform operations on the anonymous user");
     return -EINVAL;
   }
 
-  if (populated && !same_id) {
-    set_err_msg(err_msg, "user id mismatch, operation id: " + op_id.to_str()
+  if (is_populated() && user_id.compare(uid) != 0) {
+    set_err_msg(err_msg, "user id mismatch, operation id: " + uid.to_str()
             + " does not match: " + user_id.to_str());
 
     return -EINVAL;
   }
 
-  int ret = rgw_validate_tenant_name(op_id.tenant);
+  ret = rgw_validate_tenant_name(uid.tenant);
   if (ret) {
     set_err_msg(err_msg,
                "invalid tenant only alphanumeric and _ characters are allowed");
@@ -1691,46 +1722,12 @@ int RGWUser::execute_rename(RGWUserAdminOpState& op_state, std::string *err_msg)
 
 int RGWUser::execute_add(RGWUserAdminOpState& op_state, std::string *err_msg)
 {
-  std::string subprocess_msg;
-  int ret = 0;
-  bool defer_user_update = true;
-
-  RGWUserInfo user_info;
-
-  rgw_user& uid = op_state.get_user_id();
+  const rgw_user& uid = op_state.get_user_id();
   std::string user_email = op_state.get_user_email();
   std::string display_name = op_state.get_display_name();
 
-  // fail if the user exists already
-  if (op_state.has_existing_user()) {
-    if (op_state.found_by_email) {
-      set_err_msg(err_msg, "email: " + user_email +
-                 " is the email address an existing user");
-      ret = -ERR_EMAIL_EXIST;
-    } else if (op_state.found_by_key) {
-      set_err_msg(err_msg, "duplicate key provided");
-      ret = -ERR_KEY_EXIST;
-    } else {
-      set_err_msg(err_msg, "user: " + op_state.user_id.to_str() + " exists");
-      ret = -EEXIST;
-    }
-    return ret;
-  }
-
-  // fail if the user_info has already been populated
-  if (op_state.is_populated()) {
-    set_err_msg(err_msg, "cannot overwrite already populated user");
-    return -EEXIST;
-  }
-
-  // fail if the display name was not included
-  if (display_name.empty()) {
-    set_err_msg(err_msg, "no display name specified");
-    return -EINVAL;
-  }
-
-               
   // set the user info
+  RGWUserInfo user_info;
   user_id = uid;
   user_info.user_id = user_id;
   user_info.display_name = display_name;
@@ -1787,13 +1784,15 @@ int RGWUser::execute_add(RGWUserAdminOpState& op_state, std::string *err_msg)
   op_state.set_populated();
 
   // update the helper objects
-  ret = init_members(op_state);
+  int ret = init_members(op_state);
   if (ret < 0) {
     set_err_msg(err_msg, "unable to initialize user");
     return ret;
   }
 
   // see if we need to add an access key
+  std::string subprocess_msg;
+  bool defer_user_update = true;
   if (op_state.has_key_op()) {
     ret = keys.add(op_state, &subprocess_msg, defer_user_update);
     if (ret < 0) {
@@ -1818,11 +1817,14 @@ int RGWUser::execute_add(RGWUserAdminOpState& op_state, std::string *err_msg)
   return 0;
 }
 
-
 int RGWUser::add(RGWUserAdminOpState& op_state, std::string *err_msg)
 {
   std::string subprocess_msg;
-  int ret;
+  int ret = user_add_helper(op_state, &subprocess_msg);
+  if (ret != 0) {
+    set_err_msg(err_msg, "unable to parse parameters, " + subprocess_msg);
+    return ret;
+  }
 
   ret = check_op(op_state, &subprocess_msg);
   if (ret < 0) {
@@ -2096,14 +2098,7 @@ int RGWUser::modify(RGWUserAdminOpState& op_state, std::string *err_msg)
 
   ret = check_op(op_state, &subprocess_msg);
   if (ret < 0) {
-    if (is_populated() && (user_id.compare(op_state.get_user_id()) != 0)) {
-      set_err_msg(err_msg, "unable to create user " + user_id.to_str()
-                 + " because user id " + op_state.get_user_id().to_str()
-                 + " already exists with email "
-                 + op_state.get_user_email());
-    } else {
-      set_err_msg(err_msg, "unable to parse parameters, " + subprocess_msg);
-    }
+    set_err_msg(err_msg, "unable to parse parameters, " + subprocess_msg);
     return ret;
   }
 
index 8e911e577d5acd85cc4fa2818728b4a59298c57e..0000c91c8f55e2a70484de99ae613caa13967431 100644 (file)
@@ -5,6 +5,7 @@
 #include "include/Context.h"
 #include "common/errno.h"
 
+#include "rgw/rgw_cache.h"
 #include "svc_notify.h"
 #include "svc_finisher.h"
 #include "svc_zone.h"
@@ -33,6 +34,7 @@ class RGWWatcher : public librados::WatchCtx2 {
         watcher->reinit();
       }
   };
+
 public:
   RGWWatcher(CephContext *_cct, RGWSI_Notify *s, int i, RGWSI_RADOS::Obj& o) : cct(_cct), svc(s), index(i), obj(o), watch_handle(0) {}
   void handle_notify(uint64_t notify_id,
@@ -358,8 +360,8 @@ void RGWSI_Notify::_set_enabled(bool status)
   }
 }
 
-int RGWSI_Notify::distribute(const string& key, bufferlist& bl,
-                             optional_yield y)
+int RGWSI_Notify::distribute(const string& key, const RGWCacheNotifyInfo& cni,
+                            optional_yield y)
 {
   /* The RGW uses the control pool to store the watch notify objects.
     The precedence in RGWSI_Notify::do_start is to call to zone_svc->start and later to init_watch().
@@ -371,106 +373,51 @@ int RGWSI_Notify::distribute(const string& key, bufferlist& bl,
     RGWSI_RADOS::Obj notify_obj = pick_control_obj(key);
 
     ldout(cct, 10) << "distributing notification oid=" << notify_obj.get_ref().obj
-        << " bl.length()=" << bl.length() << dendl;
-    return robust_notify(notify_obj, bl, y);
+                      << " cni=" << cni << dendl;
+    return robust_notify(notify_obj, cni, y);
   }
   return 0;
 }
 
-int RGWSI_Notify::robust_notify(RGWSI_RADOS::Obj& notify_obj, bufferlist& bl,
+int RGWSI_Notify::robust_notify(RGWSI_RADOS::Obj& notify_obj,
+                               const RGWCacheNotifyInfo& cni,
                                 optional_yield y)
 {
-  // The reply of every machine that acks goes in here.
-  boost::container::flat_set<std::pair<uint64_t, uint64_t>> acks;
-  bufferlist rbl;
+  bufferlist bl;
+  encode(cni, bl);
 
   // First, try to send, without being fancy about it.
-  auto r = notify_obj.notify(bl, 0, &rbl, y);
+  auto r = notify_obj.notify(bl, 0, nullptr, y);
 
-  // If that doesn't work, get serious.
   if (r < 0) {
-    ldout(cct, 1) << "robust_notify: If at first you don't succeed: "
-                 << cpp_strerror(-r) << dendl;
-
-
-    auto p = rbl.cbegin();
-    // Gather up the replies to the first attempt.
-    try {
-      uint32_t num_acks;
-      decode(num_acks, p);
-      // Doing this ourselves since we don't care about the payload;
-      for (auto i = 0u; i < num_acks; ++i) {
-       std::pair<uint64_t, uint64_t> id;
-       decode(id, p);
-       acks.insert(id);
-       ldout(cct, 20) << "robust_notify: acked by " << id << dendl;
-       uint32_t blen;
-       decode(blen, p);
-       p += blen;
-      }
-    } catch (const buffer::error& e) {
-      ldout(cct, 0) << "robust_notify: notify response parse failed: "
-                   << e.what() << dendl;
-      acks.clear(); // Throw away junk on failed parse.
-    }
-
-
-    // Every machine that fails to reply and hasn't acked a previous
-    // attempt goes in here.
-    boost::container::flat_set<std::pair<uint64_t, uint64_t>> timeouts;
+    BackTrace bt(1);
+    ldout(cct, 1) << __PRETTY_FUNCTION__ << ":" << __LINE__
+                     << " Notify failed on object " << cni.obj << ": "
+                     << cpp_strerror(-r) << dendl;
+    ldout(cct, 1) << __PRETTY_FUNCTION__ << ":" << __LINE__
+                     << " Backtrace: " << ": "
+                     << bt << dendl;
+  }
 
-    auto tries = 1u;
-    while (r < 0 && tries < max_notify_retries) {
-      ++tries;
-      rbl.clear();
-      // Reset the timeouts, we're only concerned with new ones.
-      timeouts.clear();
-      r = notify_obj.notify(bl, 0, &rbl, y);
+  // If we timed out, get serious.
+  if (r == -ETIMEDOUT) {
+    RGWCacheNotifyInfo info;
+    info.op = REMOVE_OBJ;
+    info.obj = cni.obj;
+    bufferlist retrybl;
+    encode(info, retrybl);
+
+    for (auto tries = 0u;
+        r == -ETIMEDOUT && tries < max_notify_retries;
+        ++tries) {
+      ldout(cct, 1) << __PRETTY_FUNCTION__ << ":" << __LINE__
+                   << " Invalidating obj=" << info.obj << " tries="
+                   << tries << dendl;
+      r = notify_obj.notify(bl, 0, nullptr, y);
       if (r < 0) {
-       ldout(cct, 1) << "robust_notify: retry " << tries << " failed: "
+       ldout(cct, 1) << __PRETTY_FUNCTION__ << ":" << __LINE__
+                     << " invalidation attempt " << tries << " failed: "
                      << cpp_strerror(-r) << dendl;
-       p = rbl.begin();
-       try {
-         uint32_t num_acks;
-         decode(num_acks, p);
-         // Not only do we not care about the payload, but we don't
-         // want to empty the container; we just want to augment it
-         // with any new members.
-         for (auto i = 0u; i < num_acks; ++i) {
-           std::pair<uint64_t, uint64_t> id;
-           decode(id, p);
-           auto ir = acks.insert(id);
-           if (ir.second) {
-             ldout(cct, 20) << "robust_notify: acked by " << id << dendl;
-           }
-           uint32_t blen;
-           decode(blen, p);
-           p += blen;
-         }
-
-         uint32_t num_timeouts;
-         decode(num_timeouts, p);
-         for (auto i = 0u; i < num_timeouts; ++i) {
-           std::pair<uint64_t, uint64_t> id;
-           decode(id, p);
-           // Only track timeouts from hosts that haven't acked previously.
-           if (acks.find(id) != acks.cend()) {
-             ldout(cct, 20) << "robust_notify: " << id << " timed out."
-                            << dendl;
-             timeouts.insert(id);
-           }
-         }
-       } catch (const buffer::error& e) {
-         ldout(cct, 0) << "robust_notify: notify response parse failed: "
-                       << e.what() << dendl;
-         continue;
-       }
-       // If we got a good parse and timeouts is empty, that means
-       // everyone who timed out in one call received the update in a
-       // previous one.
-       if (timeouts.empty()) {
-         r = 0;
-       }
       }
     }
   }
index 031c53120c06d336203c0767f6962c66ca88a529..1e0b35f2c20e4dd3f3840eb200163bb743377525 100644 (file)
@@ -15,6 +15,7 @@ class RGWSI_Finisher;
 
 class RGWWatcher;
 class RGWSI_Notify_ShutdownCB;
+struct RGWCacheNotifyInfo;
 
 class RGWSI_Notify : public RGWServiceInstance
 {
@@ -41,7 +42,7 @@ private:
   bool enabled{false};
 
   double inject_notify_timeout_probability{0};
-  unsigned max_notify_retries{0};
+  static constexpr unsigned max_notify_retries = 10;
 
   string get_control_oid(int i);
   RGWSI_RADOS::Obj pick_control_obj(const string& key);
@@ -77,8 +78,8 @@ private:
   void _set_enabled(bool status);
   void set_enabled(bool status);
 
-  int robust_notify(RGWSI_RADOS::Obj& notify_obj, bufferlist& bl,
-                    optional_yield y);
+  int robust_notify(RGWSI_RADOS::Obj& notify_obj,
+                   const RGWCacheNotifyInfo& bl, optional_yield y);
 
   void schedule_context(Context *c);
 public:
@@ -95,7 +96,8 @@ public:
       virtual void set_enabled(bool status) = 0;
   };
 
-  int distribute(const string& key, bufferlist& bl, optional_yield y);
+  int distribute(const string& key, const RGWCacheNotifyInfo& bl,
+                optional_yield y);
 
   void register_watch_cb(CB *cb);
 };
index 5854d76547c44c70109f9474e017b9329b91361a..e699386f2a309b454b202f96f3c1acb86a082bf9 100644 (file)
@@ -422,9 +422,7 @@ int RGWSI_SysObj_Cache::distribute_cache(const string& normal_name,
   info.op = op;
   info.obj_info = obj_info;
   info.obj = obj;
-  bufferlist bl;
-  encode(info, bl);
-  return notify_svc->distribute(normal_name, bl, y);
+  return notify_svc->distribute(normal_name, info, y);
 }
 
 int RGWSI_SysObj_Cache::watch_cb(uint64_t notify_id,
index 330c91a68ddd8f4d5d0dfc5f0aebca868491da53..3b340f7a3c4fd754ce5e1f257fd80f341c6b6f2b 100644 (file)
@@ -580,7 +580,7 @@ TEST_F(cls_rgw, bi_list)
   uint64_t num_objs = 35;
 
   for (uint64_t i = 0; i < num_objs; i++) {
-    string obj = str_int("obj", i);
+    string obj = str_int(i % 4 ? "obj" : "об'єкт", i);
     string tag = str_int("tag", i);
     string loc = str_int("loc", i);
     index_prepare(ioctx, bucket_oid, CLS_RGW_OP_ADD, tag, obj, loc,
@@ -596,8 +596,8 @@ TEST_F(cls_rgw, bi_list)
   ret = cls_rgw_bi_list(ioctx, bucket_oid, name, marker, num_objs + 10, &entries,
                            &is_truncated);
   ASSERT_EQ(ret, 0);
-  if (cct->_conf->osd_max_omap_entries_per_request < num_objs) {
-    ASSERT_EQ(entries.size(), cct->_conf->osd_max_omap_entries_per_request);
+  if (is_truncated) {
+    ASSERT_LT(entries.size(), num_objs);
   } else {
     ASSERT_EQ(entries.size(), num_objs);
   }
@@ -610,8 +610,7 @@ TEST_F(cls_rgw, bi_list)
                          &is_truncated);
     ASSERT_EQ(ret, 0);
     if (is_truncated) {
-      ASSERT_EQ(entries.size(),
-               std::min(max, cct->_conf->osd_max_omap_entries_per_request));
+      ASSERT_LT(entries.size(), num_objs - num_entries);
     } else {
       ASSERT_EQ(entries.size(), num_objs - num_entries);
     }
@@ -635,7 +634,7 @@ TEST_F(cls_rgw, bi_list)
                            &is_truncated);
       ASSERT_EQ(ret, 0);
       if (is_truncated) {
-       ASSERT_EQ(entries.size(), cct->_conf->osd_max_omap_entries_per_request);
+       ASSERT_LT(entries.size(), num_objs - num_entries);
       } else {
        ASSERT_EQ(entries.size(), num_objs - num_entries);
       }
index 942d2a7e530c0cf8eea569a4260f7b47642d20ad..f9a7d6e6c6203b6e91519d43f614624fbddef2b4 100644 (file)
@@ -36,5 +36,5 @@ TEST(DecayCounter, steady)
    */
   double expected = -1*std::log(0.5)/rate*max*duration;
   std::cerr << "t " << total << " e " << expected << std::endl;
-  ASSERT_LT(std::abs(total-expected)/expected, 0.01);
+  ASSERT_LT(std::abs(total-expected)/expected, 0.05);
 }
index 23fb0e74a225d2240ef0e5dc0e99d9d55b0e50d3..8db91f7784cbcea5bded4efccfbda4911b6c0151 100644 (file)
@@ -15,6 +15,7 @@
 #include "include/compat.h"
 #include "gtest/gtest.h"
 #include "include/cephfs/libcephfs.h"
+#include "mds/mdstypes.h"
 #include "include/stat.h"
 #include <errno.h>
 #include <fcntl.h>
@@ -2461,3 +2462,134 @@ TEST(LibCephFS, Lseek) {
   ASSERT_EQ(0, ceph_close(cmount, fd));
   ceph_shutdown(cmount);
 }
+
+TEST(LibCephFS, LookupInoMDSDir) {
+  struct ceph_mount_info *cmount;
+  ASSERT_EQ(ceph_create(&cmount, NULL), 0);
+  ASSERT_EQ(ceph_conf_read_file(cmount, NULL), 0);
+  ASSERT_EQ(0, ceph_conf_parse_env(cmount, NULL));
+  ASSERT_EQ(ceph_mount(cmount, NULL), 0);
+
+  Inode *inode;
+  auto ino = inodeno_t(0x100); /* rank 0 ~mdsdir */
+  ASSERT_EQ(-ESTALE, ceph_ll_lookup_inode(cmount, ino, &inode));
+  ino = inodeno_t(0x600); /* rank 0 first stray dir */
+  ASSERT_EQ(-ESTALE, ceph_ll_lookup_inode(cmount, ino, &inode));
+
+  ceph_shutdown(cmount);
+}
+
+static int ceph_mksnap(struct ceph_mount_info *cmount, const char *path, const char *name,
+                      mode_t mode, void *unused, size_t nr_unused)
+{
+  char snap_path[PATH_MAX];
+
+  sprintf(snap_path, "%s/.snap/%s", path, name);
+  return ceph_mkdir(cmount, snap_path, mode);
+}
+
+static int ceph_rmsnap(struct ceph_mount_info *cmount, const char *path, const char *name)
+{
+  char snap_path[PATH_MAX];
+
+  sprintf(snap_path, "%s/.snap/%s", path, name);
+  return ceph_rmdir(cmount, snap_path);
+}
+
+TEST(LibCephFS, LookupVino) {
+  struct ceph_mount_info *cmount;
+  ASSERT_EQ(ceph_create(&cmount, NULL), 0);
+  ASSERT_EQ(ceph_conf_read_file(cmount, NULL), 0);
+  ASSERT_EQ(0, ceph_conf_parse_env(cmount, NULL));
+  ASSERT_EQ(ceph_mount(cmount, NULL), 0);
+
+  char dir_path[64];
+  char snap_name[64];
+  char snapdir_path[128];
+  char snap_path[256];
+  char file_path[PATH_MAX];
+  char snap_file[PATH_MAX];
+  sprintf(dir_path, "/dir0_%d", getpid());
+  sprintf(snap_name, "snap0_%d", getpid());
+  sprintf(file_path, "%s/file_%d", dir_path, getpid());
+  sprintf(snapdir_path, "%s/.snap", dir_path);
+  sprintf(snap_path, "%s/%s", snapdir_path, snap_name);
+  sprintf(snap_file, "%s/file_%d", snap_path, getpid());
+
+  ASSERT_EQ(0, ceph_mkdir(cmount, dir_path, 0755));
+  int fd = ceph_open(cmount, file_path, O_WRONLY|O_CREAT, 0666);
+  ASSERT_LE(0, fd);
+  ASSERT_EQ(0, ceph_close(cmount, fd));
+  ASSERT_EQ(0, ceph_mksnap(cmount, dir_path, snap_name, 0755, nullptr, 0));
+
+  // record vinos for all of them
+  struct ceph_statx stx;
+  ASSERT_EQ(0, ceph_statx(cmount, dir_path, &stx, CEPH_STATX_INO, 0));
+  vinodeno_t dir_vino(stx.stx_ino, stx.stx_dev);
+
+  ASSERT_EQ(0, ceph_statx(cmount, file_path, &stx, CEPH_STATX_INO, 0));
+  vinodeno_t file_vino(stx.stx_ino, stx.stx_dev);
+
+  ASSERT_EQ(0, ceph_statx(cmount, snapdir_path, &stx, CEPH_STATX_INO, 0));
+  vinodeno_t snapdir_vino(stx.stx_ino, stx.stx_dev);
+
+  ASSERT_EQ(0, ceph_statx(cmount, snap_path, &stx, CEPH_STATX_INO, 0));
+  vinodeno_t snap_vino(stx.stx_ino, stx.stx_dev);
+
+  ASSERT_EQ(0, ceph_statx(cmount, snap_file, &stx, CEPH_STATX_INO, 0));
+  vinodeno_t snap_file_vino(stx.stx_ino, stx.stx_dev);
+
+  // Remount
+  ASSERT_EQ(0, ceph_unmount(cmount));
+  ASSERT_EQ(0, ceph_create(&cmount, NULL));
+  ASSERT_EQ(0, ceph_conf_read_file(cmount, NULL));
+  ASSERT_EQ(0, ceph_conf_parse_env(cmount, NULL));
+  ASSERT_EQ(0, ceph_mount(cmount, NULL));
+
+  // Find them all
+  Inode *inode;
+  ASSERT_EQ(0, ceph_ll_lookup_vino(cmount, dir_vino, &inode));
+  ceph_ll_put(cmount, inode);
+  ASSERT_EQ(0, ceph_ll_lookup_vino(cmount, file_vino, &inode));
+  ceph_ll_put(cmount, inode);
+  ASSERT_EQ(0, ceph_ll_lookup_vino(cmount, snapdir_vino, &inode));
+  ceph_ll_put(cmount, inode);
+  ASSERT_EQ(0, ceph_ll_lookup_vino(cmount, snap_vino, &inode));
+  ceph_ll_put(cmount, inode);
+  ASSERT_EQ(0, ceph_ll_lookup_vino(cmount, snap_file_vino, &inode));
+  ceph_ll_put(cmount, inode);
+
+  // cleanup
+  ASSERT_EQ(0, ceph_rmsnap(cmount, dir_path, snap_name));
+  ASSERT_EQ(0, ceph_unlink(cmount, file_path));
+  ASSERT_EQ(0, ceph_rmdir(cmount, dir_path));
+
+  ceph_shutdown(cmount);
+}
+
+TEST(LibCephFS, LookupMdsPrivateInos) {
+  struct ceph_mount_info *cmount;
+  ASSERT_EQ(ceph_create(&cmount, NULL), 0);
+  ASSERT_EQ(ceph_conf_read_file(cmount, NULL), 0);
+  ASSERT_EQ(0, ceph_conf_parse_env(cmount, NULL));
+  ASSERT_EQ(ceph_mount(cmount, NULL), 0);
+
+  Inode *inode;
+  for (int ino = 0; ino < MDS_INO_SYSTEM_BASE; ino++) {
+    if (MDS_IS_PRIVATE_INO(ino)) {
+      ASSERT_EQ(-ESTALE, ceph_ll_lookup_inode(cmount, ino, &inode));
+    } else if (ino == CEPH_INO_ROOT || ino == CEPH_INO_GLOBAL_SNAPREALM) {
+      ASSERT_EQ(0, ceph_ll_lookup_inode(cmount, ino, &inode));
+    } else if (ino == CEPH_INO_LOST_AND_FOUND) {
+      // the ino 3 will only exists after the recovery tool ran, so
+      // it may return -ESTALE with a fresh fs cluster
+      int r = ceph_ll_lookup_inode(cmount, ino, &inode);
+      ASSERT_TRUE(r == -ESTALE || r == 0);
+    } else {
+      // currently the ino 0 and 4~99 is not useded yet.
+      ASSERT_EQ(-ESTALE, ceph_ll_lookup_inode(cmount, ino, &inode));
+    }
+  }
+
+  ceph_shutdown(cmount);
+}
index f6f0c38bec20abc5e9e00bbb3a3bb8328e45891b..b62e8bbba5229eb109b6e80a30866d14421cc5b9 100644 (file)
@@ -47,6 +47,23 @@ TEST_P(AllocTest, test_alloc_init)
   ASSERT_EQ(alloc->get_free(), (uint64_t) 0);
 }
 
+TEST_P(AllocTest, test_init_add_free)
+{
+  int64_t block_size = 1024;
+  int64_t capacity = 4 * 1024 * block_size;
+
+  {
+    init_alloc(capacity, block_size);
+
+    auto free = alloc->get_free();
+    alloc->init_add_free(block_size, 0);
+    ASSERT_EQ(free, alloc->get_free());
+
+    alloc->init_rm_free(block_size, 0);
+    ASSERT_EQ(free, alloc->get_free());
+  }
+}
+
 TEST_P(AllocTest, test_alloc_min_alloc)
 {
   int64_t block_size = 1024;
@@ -498,6 +515,47 @@ TEST_P(AllocTest, test_alloc_47883)
   EXPECT_EQ(got, 0x630000);
 }
 
+TEST_P(AllocTest, test_alloc_50656_best_fit)
+{
+  uint64_t block = 0x1000;
+  uint64_t size = 0x3b9e400000;
+
+  init_alloc(size, block);
+
+  // too few free extents - causes best fit mode for avls
+  for (size_t i = 0; i < 0x10; i++) {
+    alloc->init_add_free(i * 2 * 0x100000, 0x100000);
+  }
+
+  alloc->init_add_free(0x1e1bd13000, 0x404000);
+
+  PExtentVector extents;
+  auto need = 0x400000;
+  auto got = alloc->allocate(need, 0x10000, 0, (int64_t)0, &extents);
+  EXPECT_GT(got, 0);
+  EXPECT_EQ(got, 0x400000);
+}
+
+TEST_P(AllocTest, test_alloc_50656_first_fit)
+{
+  uint64_t block = 0x1000;
+  uint64_t size = 0x3b9e400000;
+
+  init_alloc(size, block);
+
+  for (size_t i = 0; i < 0x10000; i += 2) {
+    alloc->init_add_free(i * 0x100000, 0x100000);
+  }
+
+  alloc->init_add_free(0x1e1bd13000, 0x404000);
+
+  PExtentVector extents;
+  auto need = 0x400000;
+  auto got = alloc->allocate(need, 0x10000, 0, (int64_t)0, &extents);
+  EXPECT_GT(got, 0);
+  EXPECT_EQ(got, 0x400000);
+}
+
 INSTANTIATE_TEST_SUITE_P(
   Allocator,
   AllocTest,
index d6121a1e028e644e0b607245e91728b9ce06bb8f..3547d578de2a17200baeeb764436178a645ba91f 100644 (file)
@@ -137,7 +137,20 @@ int replay_and_check_for_duplicate(char* fname)
       continue;
     }
 
+    string alloc_type = "bitmap";
     sp = strstr(s, "BitmapAllocator");
+    if (!sp) {
+      alloc_type = "avl";
+      sp = strstr(s, "AvlAllocator");
+    }
+    if (!sp) {
+      alloc_type = "hybrid";
+      sp = strstr(s, "HybridAllocator");
+    }
+    if (!sp) {
+      alloc_type = "stupid";
+      sp = strstr(s, "StupidAllocator");
+    }
     if (sp) {
       // 2019-05-30 03:23:43.460 7f889a5edf00 10 fbmap_alloc 0x5642ed36e900 BitmapAllocator 0x15940000000/100000
       if (init_done) { 
@@ -156,7 +169,7 @@ int replay_and_check_for_duplicate(char* fname)
        std::cerr << "error: invalid init: " << s << std::endl;
       return -1;
       }
-      alloc.reset(Allocator::create(g_ceph_context, string("bitmap"), total,
+      alloc.reset(Allocator::create(g_ceph_context, alloc_type, total,
                                    alloc_unit));
 
       init_done = true;
index 92596dbf66474944aa6bc2f9c858efb48db7d956..13ece64799b80d133b38dad94ae87df2fa47fd91 100644 (file)
@@ -7652,6 +7652,76 @@ TEST_P(StoreTestSpecificAUSize, BluestoreRepairTest) {
 
 }
 
+TEST_P(StoreTestSpecificAUSize, BluestoreBrokenZombieRepairTest) {
+  if (string(GetParam()) != "bluestore")
+    return;
+
+  SetVal(g_conf(), "bluestore_fsck_on_mount", "false");
+  SetVal(g_conf(), "bluestore_fsck_on_umount", "false");
+
+  StartDeferred(0x10000);
+
+  BlueStore* bstore = dynamic_cast<BlueStore*> (store.get());
+
+  int r;
+
+  cerr << "initializing" << std::endl;
+  {
+    const size_t col_count = 16;
+    const size_t obj_count = 1024;
+    ObjectStore::CollectionHandle ch[col_count];
+    ghobject_t hoid[col_count][obj_count];
+
+    unique_ptr<coll_t> cid[col_count];
+
+    for (size_t i = 0; i < col_count; i++) {
+      cid[i].reset(new coll_t(spg_t(pg_t(0, i), shard_id_t::NO_SHARD)));
+      ch[i] = store->create_new_collection(*cid[i]);
+      for (size_t j = 0; j < obj_count; j++) {
+       hoid[i][j] = make_object(stringify(j).c_str(), i);
+      }
+    }
+
+    for (size_t i = 0; i < col_count; i++) {
+      ObjectStore::Transaction t;
+      t.create_collection(*cid[i], 0);
+      r = queue_transaction(store, ch[i], std::move(t));
+      ASSERT_EQ(r, 0);
+    }
+    cerr << "onode preparing" << std::endl;
+    bufferlist bl;
+    string s(0x1000, 'a');
+    bl.append(s);
+
+    for (size_t i = 0; i < col_count; i++) {
+      for (size_t j = 0; j < obj_count; j++) {
+       ObjectStore::Transaction t;
+       t.write(*cid[i], hoid[i][j], bl.length(), bl.length(), bl);
+       r = queue_transaction(store, ch[i], std::move(t));
+       ASSERT_EQ(r, 0);
+      }
+    }
+    cerr << "Zombie spanning blob injection" << std::endl;
+
+    sleep(5);
+
+    for (size_t i = 0; i < col_count; i++) {
+      for (size_t j = 0; j < obj_count; j++) {
+       bstore->inject_zombie_spanning_blob(*cid[i], hoid[i][j], 12345);
+      }
+    }
+
+    cerr << "fscking/fixing" << std::endl;
+    bstore->umount();
+    ASSERT_EQ(bstore->fsck(false), col_count * obj_count);
+    ASSERT_LE(bstore->quick_fix(), 0);
+    ASSERT_EQ(bstore->fsck(false), 0);
+  }
+
+  cerr << "Completing" << std::endl;
+  bstore->mount();
+}
+
 TEST_P(StoreTest, BluestoreRepairGlobalStats) {
   if (string(GetParam()) != "bluestore")
     return;
index 68db26f77f5f71d9cb71db20440dc46b940f64f7..6f274db61657bdfe6e568184f275db8bd154f50f 100644 (file)
@@ -840,6 +840,75 @@ TEST(BlueFS, test_replay_growth) {
   fs.umount();
 }
 
+TEST(BlueFS, test_tracker_50965) {
+  uint64_t size_wal = 1048576 * 64;
+  TempBdev bdev_wal{size_wal};
+  uint64_t size_db = 1048576 * 128;
+  TempBdev bdev_db{size_db};
+  uint64_t size_slow = 1048576 * 256;
+  TempBdev bdev_slow{size_slow};
+
+  ConfSaver conf(g_ceph_context->_conf);
+  conf.SetVal("bluefs_min_flush_size", "65536");
+  conf.ApplyChanges();
+
+  BlueFS fs(g_ceph_context);
+  ASSERT_EQ(0, fs.add_block_device(BlueFS::BDEV_WAL,  bdev_wal.path,  false, 0));
+  fs.add_block_extent(BlueFS::BDEV_WAL, 1048576, size_wal - 1048576);
+  ASSERT_EQ(0, fs.add_block_device(BlueFS::BDEV_DB,   bdev_db.path,   false, 0));
+  fs.add_block_extent(BlueFS::BDEV_DB, 1048576, size_db - 1048576);
+  ASSERT_EQ(0, fs.add_block_device(BlueFS::BDEV_SLOW, bdev_slow.path, false, 0));
+  fs.add_block_extent(BlueFS::BDEV_SLOW, 1048576, size_slow - 1048576);
+  uuid_d fsid;
+  ASSERT_EQ(0, fs.mkfs(fsid, { BlueFS::BDEV_DB, true, true }));
+  ASSERT_EQ(0, fs.mount());
+  ASSERT_EQ(0, fs.maybe_verify_layout({ BlueFS::BDEV_DB, true, true }));
+
+  string dir_slow = "dir.slow";
+  ASSERT_EQ(0, fs.mkdir(dir_slow));
+  string dir_db = "dir_db";
+  ASSERT_EQ(0, fs.mkdir(dir_db));
+
+  string file_slow = "file";
+  BlueFS::FileWriter *h_slow;
+  ASSERT_EQ(0, fs.open_for_write(dir_slow, file_slow, &h_slow, false));
+  ASSERT_NE(nullptr, h_slow);
+
+  string file_db = "file";
+  BlueFS::FileWriter *h_db;
+  ASSERT_EQ(0, fs.open_for_write(dir_db, file_db, &h_db, false));
+  ASSERT_NE(nullptr, h_db);
+
+  bufferlist bl1;
+  std::unique_ptr<char[]> buf1 = gen_buffer(70000);
+  bufferptr bp1 = buffer::claim_char(70000, buf1.get());
+  bl1.push_back(bp1);
+  h_slow->append(bl1.c_str(), bl1.length());
+  fs.flush(h_slow);
+
+  uint64_t h_slow_dirty_seq_1 = fs.debug_get_dirty_seq(h_slow);
+
+  bufferlist bl2;
+  std::unique_ptr<char[]> buf2 = gen_buffer(1000);
+  bufferptr bp2 = buffer::claim_char(1000, buf2.get());
+  bl2.push_back(bp2);
+  h_db->append(bl2.c_str(), bl2.length());
+  fs.fsync(h_db);
+
+  uint64_t h_slow_dirty_seq_2 = fs.debug_get_dirty_seq(h_slow);
+  bool h_slow_dev_dirty = fs.debug_get_is_dev_dirty(h_slow, BlueFS::BDEV_SLOW);
+
+  //problem if allocations are stable in log but slow device is not flushed yet
+  ASSERT_FALSE(h_slow_dirty_seq_1 != 0 &&
+              h_slow_dirty_seq_2 == 0 &&
+              h_slow_dev_dirty == true);
+
+  fs.close_writer(h_slow);
+  fs.close_writer(h_db);
+
+  fs.umount();
+}
+
 int main(int argc, char **argv) {
   vector<const char*> args;
   argv_to_vec(argc, (const char **)argv, args);
index e37151e48fc7264cb1c02bd5d2793e64c2b46a29..0d0c4a2719886f44c446dab589cc81635b1d9fc9 100644 (file)
@@ -98,6 +98,8 @@ struct amqp_socket_t_ {
   }
 };
 
+extern "C" {
+
 amqp_connection_state_t AMQP_CALL amqp_new_connection(void) {
   auto s = new amqp_connection_state_t_;
   return s;
@@ -256,7 +258,11 @@ amqp_confirm_select_ok_t* amqp_confirm_select(amqp_connection_state_t state, amq
   return state->confirm;
 }
 
+#if AMQP_VERSION >= AMQP_VERSION_CODE(0, 11, 0, 1)
+int amqp_simple_wait_frame_noblock(amqp_connection_state_t state, amqp_frame_t *decoded_frame, const struct timeval* tv) {
+#else
 int amqp_simple_wait_frame_noblock(amqp_connection_state_t state, amqp_frame_t *decoded_frame, struct timeval* tv) {
+#endif
   if (state->socket && state->socket->open_called &&
       state->login_called && state->channel1 && state->channel2 && state->exchange &&
       state->queue && state->consume && state->confirm && !FAIL_NEXT_READ) {
@@ -320,6 +326,8 @@ amqp_basic_consume_ok_t* amqp_basic_consume(
   return state->consume;
 }
 
+} // extern "C"
+
 // amqp_parse_url() is linked via the actual rabbitmq-c library code. see: amqp_url.c
 
 // following functions are the actual implementation copied from rabbitmq-c library
@@ -345,3 +353,4 @@ amqp_bytes_t amqp_bytes_malloc_dup(amqp_bytes_t src) {
   return result;
 }
 
+
index d904a6819fffde92ada756d041959c2d376f2284..f4c2d3a62b2c146f54f223d3a77ae3d4fe792796 100644 (file)
@@ -12,6 +12,7 @@
 #endif
 #include <arpa/inet.h>
 #include <ifaddrs.h>
+#include <net/if.h>
 
 static void ipv4(struct sockaddr_in *addr, const char *s) {
   int err;
@@ -38,7 +39,6 @@ TEST(CommonIPAddr, TestNotFound)
   struct sockaddr_in a_one;
   struct sockaddr_in6 a_two;
   struct sockaddr_in net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -53,9 +53,8 @@ TEST(CommonIPAddr, TestNotFound)
   ipv4(&a_one, "10.11.12.13");
   ipv6(&a_two, "2001:1234:5678:90ab::cdef");
   ipv4(&net, "10.11.234.56");
-
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 24);
-  ASSERT_EQ(0, result);
+  ASSERT_FALSE(matches_ipv4_in_subnet(one, (struct sockaddr_in*)&net, 24));
+  ASSERT_FALSE(matches_ipv6_in_subnet(two, (struct sockaddr_in6*)&net, 24));
 }
 
 TEST(CommonIPAddr, TestV4_Simple)
@@ -64,7 +63,6 @@ TEST(CommonIPAddr, TestV4_Simple)
   struct sockaddr_in a_one;
   struct sockaddr_in6 a_two;
   struct sockaddr_in net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -80,8 +78,8 @@ TEST(CommonIPAddr, TestV4_Simple)
   ipv6(&a_two, "2001:1234:5678:90ab::cdef");
   ipv4(&net, "10.11.12.42");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 24);
-  ASSERT_EQ((struct sockaddr*)&a_one, result->ifa_addr);
+  ASSERT_TRUE(matches_ipv4_in_subnet(one, (struct sockaddr_in*)&net, 24));
+  ASSERT_FALSE(matches_ipv4_in_subnet(two, (struct sockaddr_in*)&net, 24));
 }
 
 TEST(CommonIPAddr, TestV4_Prefix25)
@@ -90,7 +88,6 @@ TEST(CommonIPAddr, TestV4_Prefix25)
   struct sockaddr_in a_one;
   struct sockaddr_in a_two;
   struct sockaddr_in net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -106,8 +103,8 @@ TEST(CommonIPAddr, TestV4_Prefix25)
   ipv4(&a_two, "10.11.12.129");
   ipv4(&net, "10.11.12.128");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 25);
-  ASSERT_EQ((struct sockaddr*)&a_two, result->ifa_addr);
+  ASSERT_FALSE(matches_ipv4_in_subnet(one, (struct sockaddr_in*)&net, 25));
+  ASSERT_TRUE(matches_ipv4_in_subnet(two, (struct sockaddr_in*)&net, 25));
 }
 
 TEST(CommonIPAddr, TestV4_Prefix16)
@@ -116,7 +113,6 @@ TEST(CommonIPAddr, TestV4_Prefix16)
   struct sockaddr_in a_one;
   struct sockaddr_in a_two;
   struct sockaddr_in net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -132,8 +128,8 @@ TEST(CommonIPAddr, TestV4_Prefix16)
   ipv4(&a_two, "10.2.1.123");
   ipv4(&net, "10.2.0.0");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 16);
-  ASSERT_EQ((struct sockaddr*)&a_two, result->ifa_addr);
+  ASSERT_FALSE(matches_ipv4_in_subnet(one, (struct sockaddr_in*)&net, 16));
+  ASSERT_TRUE(matches_ipv4_in_subnet(two, (struct sockaddr_in*)&net, 16));
 }
 
 TEST(CommonIPAddr, TestV4_PrefixTooLong)
@@ -141,7 +137,6 @@ TEST(CommonIPAddr, TestV4_PrefixTooLong)
   struct ifaddrs one;
   struct sockaddr_in a_one;
   struct sockaddr_in net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -152,8 +147,7 @@ TEST(CommonIPAddr, TestV4_PrefixTooLong)
   ipv4(&a_one, "10.11.12.13");
   ipv4(&net, "10.11.12.12");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 42);
-  ASSERT_EQ(0, result);
+  ASSERT_FALSE(matches_ipv4_in_subnet(one, (struct sockaddr_in*)&net, 42));
 }
 
 TEST(CommonIPAddr, TestV4_PrefixZero)
@@ -162,7 +156,6 @@ TEST(CommonIPAddr, TestV4_PrefixZero)
   struct sockaddr_in6 a_one;
   struct sockaddr_in a_two;
   struct sockaddr_in net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -178,8 +171,8 @@ TEST(CommonIPAddr, TestV4_PrefixZero)
   ipv4(&a_two, "10.1.2.3");
   ipv4(&net, "255.0.1.2");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 0);
-  ASSERT_EQ((struct sockaddr*)&a_two, result->ifa_addr);
+  ASSERT_FALSE(matches_ipv4_in_subnet(one, (struct sockaddr_in*)&net, 0));
+  ASSERT_TRUE(matches_ipv4_in_subnet(two, (struct sockaddr_in*)&net, 0));
 }
 
 static char lo[] = "lo";
@@ -191,30 +184,38 @@ TEST(CommonIPAddr, TestV4_SkipLoopback)
   struct sockaddr_in a_one;
   struct sockaddr_in a_two;
   struct sockaddr_in a_three;
-  struct sockaddr_in net;
-  const struct ifaddrs *result;
-
-  memset(&net, 0, sizeof(net));
 
   one.ifa_next = &two;
   one.ifa_addr = (struct sockaddr*)&a_one;
   one.ifa_name = lo;
 
   two.ifa_next = &three;
+  two.ifa_flags = IFF_UP;
   two.ifa_addr = (struct sockaddr*)&a_two;
   two.ifa_name = lo0;
 
   three.ifa_next = NULL;
+  three.ifa_flags = IFF_UP;
   three.ifa_addr = (struct sockaddr*)&a_three;
   three.ifa_name = eth0;
 
   ipv4(&a_one, "127.0.0.1");
   ipv4(&a_two, "127.0.0.1");
   ipv4(&a_three, "10.1.2.3");
-  ipv4(&net, "255.0.0.0");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 0);
-  ASSERT_EQ((struct sockaddr*)&a_three, result->ifa_addr);
+  const struct sockaddr *result = nullptr;
+  // we prefer the non-loopback address despite the loopback addresses
+  result =
+    find_ip_in_subnet_list(nullptr, (struct ifaddrs*)&one,
+                           CEPH_PICK_ADDRESS_IPV4 | CEPH_PICK_ADDRESS_IPV6,
+                           "", "");
+  ASSERT_EQ((struct sockaddr*)&a_three, result);
+  // the subnet criteria leaves us no choice but the UP loopback address
+  result =
+    find_ip_in_subnet_list(nullptr, (struct ifaddrs*)&one,
+                           CEPH_PICK_ADDRESS_IPV4 | CEPH_PICK_ADDRESS_IPV6,
+                           "127.0.0.0/8", "");
+  ASSERT_EQ((struct sockaddr*)&a_two, result);
 }
 
 TEST(CommonIPAddr, TestV6_Simple)
@@ -223,7 +224,6 @@ TEST(CommonIPAddr, TestV6_Simple)
   struct sockaddr_in a_one;
   struct sockaddr_in6 a_two;
   struct sockaddr_in6 net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -239,8 +239,8 @@ TEST(CommonIPAddr, TestV6_Simple)
   ipv6(&a_two, "2001:1234:5678:90ab::cdef");
   ipv6(&net, "2001:1234:5678:90ab::dead:beef");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 64);
-  ASSERT_EQ((struct sockaddr*)&a_two, result->ifa_addr);
+  ASSERT_FALSE(matches_ipv6_in_subnet(one, (struct sockaddr_in6*)&net, 64));
+  ASSERT_TRUE(matches_ipv6_in_subnet(two, (struct sockaddr_in6*)&net, 64));
 }
 
 TEST(CommonIPAddr, TestV6_Prefix57)
@@ -249,7 +249,6 @@ TEST(CommonIPAddr, TestV6_Prefix57)
   struct sockaddr_in6 a_one;
   struct sockaddr_in6 a_two;
   struct sockaddr_in6 net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -265,8 +264,8 @@ TEST(CommonIPAddr, TestV6_Prefix57)
   ipv6(&a_two, "2001:1234:5678:90ab::cdef");
   ipv6(&net, "2001:1234:5678:90ab::dead:beef");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 57);
-  ASSERT_EQ((struct sockaddr*)&a_two, result->ifa_addr);
+  ASSERT_FALSE(matches_ipv6_in_subnet(one, (struct sockaddr_in6*)&net, 57));
+  ASSERT_TRUE(matches_ipv6_in_subnet(two, (struct sockaddr_in6*)&net, 57));
 }
 
 TEST(CommonIPAddr, TestV6_PrefixTooLong)
@@ -274,7 +273,6 @@ TEST(CommonIPAddr, TestV6_PrefixTooLong)
   struct ifaddrs one;
   struct sockaddr_in6 a_one;
   struct sockaddr_in6 net;
-  const struct ifaddrs *result;
 
   memset(&net, 0, sizeof(net));
 
@@ -285,8 +283,7 @@ TEST(CommonIPAddr, TestV6_PrefixTooLong)
   ipv6(&a_one, "2001:1234:5678:900F::cdef");
   ipv6(&net, "2001:1234:5678:900F::cdee");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 9000);
-  ASSERT_EQ(0, result);
+  ASSERT_FALSE(matches_ipv6_in_subnet(one, (struct sockaddr_in6*)&net, 9000));
 }
 
 TEST(CommonIPAddr, TestV6_PrefixZero)
@@ -295,7 +292,6 @@ TEST(CommonIPAddr, TestV6_PrefixZero)
   struct sockaddr_in a_one;
   struct sockaddr_in6 a_two;
   struct sockaddr_in6 net;
-  const struct ifaddrs *result;
 
   one.ifa_next = &two;
   one.ifa_addr = (struct sockaddr*)&a_one;
@@ -309,8 +305,8 @@ TEST(CommonIPAddr, TestV6_PrefixZero)
   ipv6(&a_two, "2001:f00b::1");
   ipv6(&net, "ff00::1");
 
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 0);
-  ASSERT_EQ((struct sockaddr*)&a_two, result->ifa_addr);
+  ASSERT_FALSE(matches_ipv6_in_subnet(one, (struct sockaddr_in6*)&net, 0));
+  ASSERT_TRUE(matches_ipv6_in_subnet(two, (struct sockaddr_in6*)&net, 0));
 }
 
 TEST(CommonIPAddr, TestV6_SkipLoopback)
@@ -319,30 +315,37 @@ TEST(CommonIPAddr, TestV6_SkipLoopback)
   struct sockaddr_in6 a_one;
   struct sockaddr_in6 a_two;
   struct sockaddr_in6 a_three;
-  struct sockaddr_in6 net;
-  const struct ifaddrs *result;
-
-  memset(&net, 0, sizeof(net));
 
   one.ifa_next = &two;
+  ipv6(&a_one, "::1");
   one.ifa_addr = (struct sockaddr*)&a_one;
   one.ifa_name = lo;
 
   two.ifa_next = &three;
+  two.ifa_flags = IFF_UP;
+  ipv6(&a_two, "::1");
   two.ifa_addr = (struct sockaddr*)&a_two;
   two.ifa_name = lo0;
 
   three.ifa_next = NULL;
+  three.ifa_flags = IFF_UP;
+  ipv6(&a_three, "2001:1234:5678:90ab::beef");
   three.ifa_addr = (struct sockaddr*)&a_three;
   three.ifa_name = eth0;
 
-  ipv6(&a_one, "::1");
-  ipv6(&a_two, "::1");
-  ipv6(&a_three, "2001:1234:5678:90ab::beef");
-  ipv6(&net, "ff00::1");
-
-  result = find_ip_in_subnet(&one, (struct sockaddr*)&net, 0);
-  ASSERT_EQ((struct sockaddr*)&a_three, result->ifa_addr);
+  const struct sockaddr *result = nullptr;
+  // we prefer the non-loopback address despite the loopback addresses
+  result =
+    find_ip_in_subnet_list(nullptr, (struct ifaddrs*)&one,
+                           CEPH_PICK_ADDRESS_IPV4 | CEPH_PICK_ADDRESS_IPV6,
+                           "", "");
+  ASSERT_EQ((struct sockaddr*)&a_three, result);
+  // the subnet criteria leaves us no choice but the UP loopback address
+  result =
+    find_ip_in_subnet_list(nullptr, (struct ifaddrs*)&one,
+                           CEPH_PICK_ADDRESS_IPV4 | CEPH_PICK_ADDRESS_IPV6,
+                           "::1/128", "");
+  ASSERT_EQ((struct sockaddr*)&a_two, result);
 }
 
 TEST(CommonIPAddr, ParseNetwork_Empty)
@@ -994,4 +997,3 @@ TEST(pick_address, ipv4_ipv6_enabled2)
     ASSERT_EQ(-1, r);
   }
 }
-
index 8fb670ad08e62a59186ac40a552a4933020c72ff..64974b59fc00f75647461e56e82af18c6acd8967 100644 (file)
@@ -17,6 +17,7 @@
 #include "common/ceph_argparse.h"
 #include <fstream>
 #include "include/util.h"
+#include "include/ceph_fs.h"
 
 #include "mds/CInode.h"
 #include "mds/InoTable.h"
@@ -368,7 +369,7 @@ int MetadataDriver::inject_unlinked_inode(
   // be ignoring dirfrags that exist
   inode.damage_flags |= (DAMAGE_STATS | DAMAGE_RSTATS | DAMAGE_FRAGTREE);
 
-  if (inono == MDS_INO_ROOT || MDS_INO_IS_MDSDIR(inono)) {
+  if (inono == CEPH_INO_ROOT || MDS_INO_IS_MDSDIR(inono)) {
     sr_t srnode;
     srnode.seq = 1;
     encode(srnode, inode.snap_blob);
@@ -409,7 +410,7 @@ int MetadataDriver::root_exists(inodeno_t ino, bool *result)
 int MetadataDriver::init_roots(int64_t data_pool_id)
 {
   int r = 0;
-  r = inject_unlinked_inode(MDS_INO_ROOT, S_IFDIR|0755, data_pool_id);
+  r = inject_unlinked_inode(CEPH_INO_ROOT, S_IFDIR|0755, data_pool_id);
   if (r != 0) {
     return r;
   }
@@ -429,7 +430,7 @@ int MetadataDriver::init_roots(int64_t data_pool_id)
 int MetadataDriver::check_roots(bool *result)
 {
   int r;
-  r = root_exists(MDS_INO_ROOT, result);
+  r = root_exists(CEPH_INO_ROOT, result);
   if (r != 0) {
     return r;
   }
@@ -895,8 +896,8 @@ bool DataScan::valid_ino(inodeno_t ino) const
   return (ino >= inodeno_t((1ull << 40)))
     || (MDS_INO_IS_STRAY(ino))
     || (MDS_INO_IS_MDSDIR(ino))
-    || ino == MDS_INO_ROOT
-    || ino == MDS_INO_CEPH;
+    || ino == CEPH_INO_ROOT
+    || ino == CEPH_INO_CEPH;
 }
 
 int DataScan::scan_links()
index 596408199ee23543a4fc0d52c7120397f9c6ff8c..d7fcf1253deb6b95a05428777eb8e220892fc48f 100644 (file)
@@ -95,8 +95,6 @@ int get_level_spec_args(const po::variables_map &vm,
 
     if (vm.count(at::POOL_NAME)) {
       pool_name = vm[at::POOL_NAME].as<std::string>();
-    } else if (pool_name.empty()) {
-      pool_name = utils::get_default_pool_name();
     }
 
     if (vm.count(at::NAMESPACE_NAME)) {
@@ -118,8 +116,6 @@ int get_level_spec_args(const po::variables_map &vm,
 
     if (vm.count(at::POOL_NAME)) {
       pool_name = vm[at::POOL_NAME].as<std::string>();
-    } else {
-      pool_name = utils::get_default_pool_name();
     }
 
     namespace_name = vm[at::NAMESPACE_NAME].as<std::string>();
@@ -142,6 +138,20 @@ int get_level_spec_args(const po::variables_map &vm,
   return 0;
 }
 
+void normalize_level_spec_args(std::map<std::string, std::string> *args) {
+  std::map<std::string, std::string> raw_args;
+  std::swap(raw_args, *args);
+
+  auto default_pool_name = utils::get_default_pool_name();
+  for (auto [key, value] : raw_args) {
+    if (key == "level_spec" && !value.empty() && value[0] == '/') {
+      value = default_pool_name + value;
+    }
+
+    (*args)[key] = value;
+  }
+}
+
 void add_schedule_options(po::options_description *positional) {
   positional->add_options()
     ("interval", "schedule interval");
index c92b9357a3d5606246905caf6b5976ad3f4626ba..90e78eb7f682c734cfd6d4ca0f17b2ebf058c931 100644 (file)
@@ -20,6 +20,8 @@ void add_level_spec_options(
   boost::program_options::options_description *options, bool allow_image=true);
 int get_level_spec_args(const boost::program_options::variables_map &vm,
                         std::map<std::string, std::string> *args);
+void normalize_level_spec_args(std::map<std::string, std::string> *args);
+
 void add_schedule_options(
   boost::program_options::options_description *positional);
 int get_schedule_args(const boost::program_options::variables_map &vm,
index 903e35ca755f9718914013fabe265cd69257270b..30eaccefc4ab81ecfabd13478831d985f1160065 100644 (file)
@@ -183,6 +183,12 @@ std::string get_positional_argument(const po::variables_map &vm, size_t index) {
   return "";
 }
 
+void normalize_pool_name(std::string* pool_name) {
+  if (pool_name->empty()) {
+    *pool_name = get_default_pool_name();
+  }
+}
+
 std::string get_default_pool_name() {
   return g_ceph_context->_conf.get_val<std::string>("rbd_default_pool");
 }
@@ -211,10 +217,6 @@ int get_pool_and_namespace_names(
     }
   }
 
-  if (default_empty_pool_name && pool_name->empty()) {
-    *pool_name = get_default_pool_name();
-  }
-
   if (!g_ceph_context->_conf.get_val<bool>("rbd_validate_names")) {
     validate_pool_name = false;
   }
@@ -261,10 +263,6 @@ int get_pool_image_id(const po::variables_map &vm,
     }
   }
 
-  if (pool_name != nullptr && pool_name->empty()) {
-    *pool_name = get_default_pool_name();
-  }
-
   if (image_id != nullptr && image_id->empty()) {
     std::cerr << "rbd: image id was not specified" << std::endl;
     return -EINVAL;
@@ -350,10 +348,6 @@ int get_pool_generic_snapshot_names(const po::variables_map &vm,
     }
   }
 
-  if (pool_name != nullptr && pool_name->empty()) {
-    *pool_name = get_default_pool_name();
-  }
-
   if (generic_name != nullptr && generic_name_required &&
       generic_name->empty()) {
     std::string prefix = at::get_description_prefix(mod);
@@ -363,7 +357,7 @@ int get_pool_generic_snapshot_names(const po::variables_map &vm,
     return -EINVAL;
   }
 
-  std::regex pattern("^[^@/]+?$");
+  std::regex pattern("^[^@/]*?$");
   if (spec_validation == SPEC_VALIDATION_FULL) {
     // validate pool name while creating/renaming/copying/cloning/importing/etc
     if ((pool_name != nullptr) && !std::regex_match (*pool_name, pattern)) {
@@ -451,8 +445,6 @@ int get_image_options(const boost::program_options::variables_map &vm,
   if (vm.count(at::IMAGE_FEATURES)) {
     features = vm[at::IMAGE_FEATURES].as<uint64_t>();
     features_specified = true;
-  } else {
-    features = get_rbd_default_features(g_ceph_context);
   }
 
   if (vm.count(at::IMAGE_STRIPE_UNIT)) {
@@ -661,7 +653,6 @@ int get_formatter(const po::variables_map &vm,
 void init_context() {
   g_conf().set_val_or_die("rbd_cache_writethrough_until_flush", "false");
   g_conf().apply_changes(nullptr);
-  common_init_finish(g_ceph_context);
 }
 
 int init_rados(librados::Rados *rados) {
@@ -698,8 +689,10 @@ int init(const std::string &pool_name, const std::string& namespace_name,
   return 0;
 }
 
-int init_io_ctx(librados::Rados &rados, const std::string &pool_name,
+int init_io_ctx(librados::Rados &rados, std::string pool_name,
                 const std::string& namespace_name, librados::IoCtx *io_ctx) {
+  normalize_pool_name(&pool_name);
+
   int r = rados.ioctx_create(pool_name.c_str(), *io_ctx);
   if (r < 0) {
     if (r == -ENOENT && pool_name == get_default_pool_name()) {
index 14e46d5c47886ec8c06ce3e68135a78300990120..476c229bec0e0b78f2e29e85cb9c3e7fe0f5a344 100644 (file)
@@ -99,7 +99,9 @@ int extract_spec(const std::string &spec, std::string *pool_name,
 std::string get_positional_argument(
     const boost::program_options::variables_map &vm, size_t index);
 
+void normalize_pool_name(std::string* pool_name);
 std::string get_default_pool_name();
+
 int get_pool_and_namespace_names(
     const boost::program_options::variables_map &vm,
     bool default_empty_pool_name, bool validate_pool_name,
@@ -154,9 +156,9 @@ void init_context();
 
 int init_rados(librados::Rados *rados);
 
-int init(const std::string &pool_name, const std::string& namespace_name,
+int init(const std::stringpool_name, const std::string& namespace_name,
          librados::Rados *rados, librados::IoCtx *io_ctx);
-int init_io_ctx(librados::Rados &rados, const std::string &pool_name,
+int init_io_ctx(librados::Rados &rados, std::string pool_name,
                 const std::string& namespace_name, librados::IoCtx *io_ctx);
 int set_namespace(const std::string& namespace_name, librados::IoCtx *io_ctx);
 
index e27901a28523ba696bbb64dfdd3f4663b5e18105..6f967f9086ad9d6c3a5328b1081669157e7b3aa0 100644 (file)
@@ -27,11 +27,7 @@ namespace kernel {
 namespace at = argument_types;
 namespace po = boost::program_options;
 
-namespace {
-
-std::map<std::string, std::string> map_options; // used for both map and unmap
-
-} // anonymous namespace
+typedef std::map<std::string, std::string> MapOptions;
 
 static std::string map_option_uuid_cb(const char *value_char)
 {
@@ -97,13 +93,15 @@ static std::string map_option_ms_mode_cb(const char *value_char)
   return "";
 }
 
-static void put_map_option(const std::string &key, const std::string &val)
+static void put_map_option(const std::string &key, const std::string &val,
+                           MapOptions* map_options)
 {
-  map_options[key] = val;
+  (*map_options)[key] = val;
 }
 
 static int put_map_option_value(const std::string &opt, const char *value_char,
-                                std::string (*parse_cb)(const char *))
+                                std::string (*parse_cb)(const char *),
+                                MapOptions* map_options)
 {
   if (!value_char || *value_char == '\0') {
     std::cerr << "rbd: " << opt << " option requires a value" << std::endl;
@@ -117,11 +115,12 @@ static int put_map_option_value(const std::string &opt, const char *value_char,
     return -EINVAL;
   }
 
-  put_map_option(opt, opt + "=" + value);
+  put_map_option(opt, opt + "=" + value, map_options);
   return 0;
 }
 
-static int parse_map_options(const std::string &options_string)
+static int parse_map_options(const std::string &options_string,
+                             MapOptions* map_options)
 {
   char *options = strdup(options_string.c_str());
   BOOST_SCOPE_EXIT(options) {
@@ -137,72 +136,82 @@ static int parse_map_options(const std::string &options_string)
       *value_char++ = '\0';
 
     if (!strcmp(this_char, "fsid")) {
-      if (put_map_option_value("fsid", value_char, map_option_uuid_cb))
+      if (put_map_option_value("fsid", value_char, map_option_uuid_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "ip")) {
-      if (put_map_option_value("ip", value_char, map_option_ip_cb))
+      if (put_map_option_value("ip", value_char, map_option_ip_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "share") || !strcmp(this_char, "noshare")) {
-      put_map_option("share", this_char);
+      put_map_option("share", this_char, map_options);
     } else if (!strcmp(this_char, "crc") || !strcmp(this_char, "nocrc")) {
-      put_map_option("crc", this_char);
+      put_map_option("crc", this_char, map_options);
     } else if (!strcmp(this_char, "cephx_require_signatures") ||
                !strcmp(this_char, "nocephx_require_signatures")) {
-      put_map_option("cephx_require_signatures", this_char);
+      put_map_option("cephx_require_signatures", this_char, map_options);
     } else if (!strcmp(this_char, "tcp_nodelay") ||
                !strcmp(this_char, "notcp_nodelay")) {
-      put_map_option("tcp_nodelay", this_char);
+      put_map_option("tcp_nodelay", this_char, map_options);
     } else if (!strcmp(this_char, "cephx_sign_messages") ||
                !strcmp(this_char, "nocephx_sign_messages")) {
-      put_map_option("cephx_sign_messages", this_char);
+      put_map_option("cephx_sign_messages", this_char, map_options);
     } else if (!strcmp(this_char, "mount_timeout")) {
-      if (put_map_option_value("mount_timeout", value_char, map_option_int_cb))
+      if (put_map_option_value("mount_timeout", value_char, map_option_int_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "osd_request_timeout")) {
-      if (put_map_option_value("osd_request_timeout", value_char, map_option_int_cb))
+      if (put_map_option_value("osd_request_timeout", value_char,
+                               map_option_int_cb, map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "lock_timeout")) {
-      if (put_map_option_value("lock_timeout", value_char, map_option_int_cb))
+      if (put_map_option_value("lock_timeout", value_char, map_option_int_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "osdkeepalive")) {
-      if (put_map_option_value("osdkeepalive", value_char, map_option_int_cb))
+      if (put_map_option_value("osdkeepalive", value_char, map_option_int_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "osd_idle_ttl")) {
-      if (put_map_option_value("osd_idle_ttl", value_char, map_option_int_cb))
+      if (put_map_option_value("osd_idle_ttl", value_char, map_option_int_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "rw") || !strcmp(this_char, "ro")) {
-      put_map_option("rw", this_char);
+      put_map_option("rw", this_char, map_options);
     } else if (!strcmp(this_char, "queue_depth")) {
-      if (put_map_option_value("queue_depth", value_char, map_option_int_cb))
+      if (put_map_option_value("queue_depth", value_char, map_option_int_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "lock_on_read")) {
-      put_map_option("lock_on_read", this_char);
+      put_map_option("lock_on_read", this_char, map_options);
     } else if (!strcmp(this_char, "exclusive")) {
-      put_map_option("exclusive", this_char);
+      put_map_option("exclusive", this_char, map_options);
     } else if (!strcmp(this_char, "notrim")) {
-      put_map_option("notrim", this_char);
+      put_map_option("notrim", this_char, map_options);
     } else if (!strcmp(this_char, "abort_on_full")) {
-      put_map_option("abort_on_full", this_char);
+      put_map_option("abort_on_full", this_char, map_options);
     } else if (!strcmp(this_char, "alloc_size")) {
-      if (put_map_option_value("alloc_size", value_char, map_option_int_cb))
+      if (put_map_option_value("alloc_size", value_char, map_option_int_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "crush_location")) {
       if (put_map_option_value("crush_location", value_char,
-                               map_option_string_cb))
+                               map_option_string_cb, map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "read_from_replica")) {
       if (put_map_option_value("read_from_replica", value_char,
-                               map_option_read_from_replica_cb))
+                               map_option_read_from_replica_cb, map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "compression_hint")) {
       if (put_map_option_value("compression_hint", value_char,
-                               map_option_compression_hint_cb))
+                               map_option_compression_hint_cb, map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "ms_mode")) {
-      if (put_map_option_value("ms_mode", value_char, map_option_ms_mode_cb))
+      if (put_map_option_value("ms_mode", value_char, map_option_ms_mode_cb,
+                               map_options))
         return -EINVAL;
     } else if (!strcmp(this_char, "udev") || !strcmp(this_char, "noudev")) {
-      put_map_option("udev", this_char);
+      put_map_option("udev", this_char, map_options);
     } else {
       std::cerr << "rbd: unknown map option '" << this_char << "'" << std::endl;
       return -EINVAL;
@@ -212,7 +221,8 @@ static int parse_map_options(const std::string &options_string)
   return 0;
 }
 
-static int parse_unmap_options(const std::string &options_string)
+static int parse_unmap_options(const std::string &options_string,
+                               MapOptions* unmap_options)
 {
   char *options = strdup(options_string.c_str());
   BOOST_SCOPE_EXIT(options) {
@@ -228,11 +238,12 @@ static int parse_unmap_options(const std::string &options_string)
       *value_char++ = '\0';
 
     if (!strcmp(this_char, "force")) {
-      put_map_option("force", this_char);
+      put_map_option("force", this_char, unmap_options);
     } else if (!strcmp(this_char, "udev") || !strcmp(this_char, "noudev")) {
-      put_map_option("udev", this_char);
+      put_map_option("udev", this_char, unmap_options);
     } else {
-      std::cerr << "rbd: unknown unmap option '" << this_char << "'" << std::endl;
+      std::cerr << "rbd: unknown unmap option '" << this_char << "'"
+                << std::endl;
       return -EINVAL;
     }
   }
@@ -364,7 +375,8 @@ static void print_error_description(const char *poolname,
 }
 
 static int do_kernel_map(const char *poolname, const char *nspace_name,
-                         const char *imgname, const char *snapname)
+                         const char *imgname, const char *snapname,
+                         MapOptions&& map_options)
 {
 #if defined(WITH_KRBD)
   struct krbd_ctx *krbd;
@@ -427,7 +439,7 @@ out:
 
 static int do_kernel_unmap(const char *dev, const char *poolname,
                            const char *nspace_name, const char *imgname,
-                           const char *snapname)
+                           const char *snapname, MapOptions&& unmap_options)
 {
 #if defined(WITH_KRBD)
   struct krbd_ctx *krbd;
@@ -435,14 +447,14 @@ static int do_kernel_unmap(const char *dev, const char *poolname,
   uint32_t flags = 0;
   int r;
 
-  for (auto it = map_options.begin(); it != map_options.end(); ) {
+  for (auto it = unmap_options.begin(); it != unmap_options.end(); ) {
     if (it->first == "udev") {
       if (it->second == "noudev") {
         flags |= KRBD_CTX_F_NOUDEV;
       }
-      it = map_options.erase(it);
+      it = unmap_options.erase(it);
     } else {
-      if (it != map_options.begin())
+      if (it != unmap_options.begin())
         oss << ",";
       oss << it->second;
       ++it;
@@ -500,17 +512,10 @@ int execute_map(const po::variables_map &vm,
     return r;
   }
 
-  // parse default options first so they can be overwritten by cli options
-  r = parse_map_options(
-      g_conf().get_val<std::string>("rbd_default_map_options"));
-  if (r < 0) {
-    std::cerr << "rbd: couldn't parse default map options" << std::endl;
-    return r;
-  }
-
+  MapOptions map_options;
   if (vm.count("options")) {
     for (auto &options : vm["options"].as<std::vector<std::string>>()) {
-      r = parse_map_options(options);
+      r = parse_map_options(options, &map_options);
       if (r < 0) {
         std::cerr << "rbd: couldn't parse map options" << std::endl;
         return r;
@@ -522,16 +527,38 @@ int execute_map(const po::variables_map &vm,
   // options so that common options win (in particular "-o rw --read-only"
   // should result in read-only mapping)
   if (vm["read-only"].as<bool>()) {
-    put_map_option("rw", "ro");
+    put_map_option("rw", "ro", &map_options);
   }
   if (vm["exclusive"].as<bool>()) {
-    put_map_option("exclusive", "exclusive");
+    put_map_option("exclusive", "exclusive", &map_options);
   }
 
-  utils::init_context();
+  // connect to the cluster to get the default pool and the default map
+  // options
+  librados::Rados rados;
+  r = utils::init_rados(&rados);
+  if (r < 0) {
+    return r;
+  }
+
+  utils::normalize_pool_name(&pool_name);
+
+  MapOptions default_map_options;
+  r = parse_map_options(
+      g_conf().get_val<std::string>("rbd_default_map_options"),
+      &default_map_options);
+  if (r < 0) {
+    std::cerr << "rbd: couldn't parse default map options" << std::endl;
+    return r;
+  }
+  for (auto& [key, value] : default_map_options) {
+    if (map_options.count(key) == 0) {
+      map_options[key] = value;
+    }
+  }
 
   r = do_kernel_map(pool_name.c_str(), nspace_name.c_str(), image_name.c_str(),
-                    snap_name.c_str());
+                    snap_name.c_str(), std::move(map_options));
   if (r < 0) {
     std::cerr << "rbd: map failed: " << cpp_strerror(r) << std::endl;
     return r;
@@ -569,9 +596,10 @@ int execute_unmap(const po::variables_map &vm,
     return -EINVAL;
   }
 
+  MapOptions unmap_options;
   if (vm.count("options")) {
     for (auto &options : vm["options"].as<std::vector<std::string>>()) {
-      r = parse_unmap_options(options);
+      r = parse_unmap_options(options, &unmap_options);
       if (r < 0) {
         std::cerr << "rbd: couldn't parse unmap options" << std::endl;
         return r;
@@ -579,11 +607,21 @@ int execute_unmap(const po::variables_map &vm,
     }
   }
 
-  utils::init_context();
+  if (device_name.empty() && pool_name.empty()) {
+    // connect to the cluster to get the default pool
+    librados::Rados rados;
+    r = utils::init_rados(&rados);
+    if (r < 0) {
+      return r;
+    }
+
+    utils::normalize_pool_name(&pool_name);
+  }
 
   r = do_kernel_unmap(device_name.empty() ? nullptr : device_name.c_str(),
                       pool_name.c_str(), nspace_name.c_str(),
-                      image_name.c_str(), snap_name.c_str());
+                      image_name.c_str(), snap_name.c_str(),
+                      std::move(unmap_options));
   if (r < 0) {
     std::cerr << "rbd: unmap failed: " << cpp_strerror(r) << std::endl;
     return r;
index 67d9e4f8414202b4ce142d8343833f3d693068fd..65ab03752adaf4bcc8df8c44075369c13b886a5b 100644 (file)
@@ -168,13 +168,19 @@ int list_process_image(librados::Rados* rados, WorkerEntry* w, bool lflag, Forma
 }
 
 int do_list(const std::string &pool_name, const std::string& namespace_name,
-            bool lflag, int threads, Formatter *f) {
+            bool lflag, Formatter *f) {
   std::vector<WorkerEntry*> workers;
   std::vector<librbd::image_spec_t> images;
   librados::Rados rados;
   librbd::RBD rbd;
   librados::IoCtx ioctx;
 
+  int r = utils::init(pool_name, namespace_name, &rados, &ioctx);
+  if (r < 0) {
+    return r;
+  }
+
+  int threads = g_conf().get_val<uint64_t>("rbd_concurrent_management_ops");
   if (threads < 1) {
     threads = 1;
   }
@@ -182,11 +188,6 @@ int do_list(const std::string &pool_name, const std::string& namespace_name,
     threads = 32;
   }
 
-  int r = utils::init(pool_name, namespace_name, &rados, &ioctx);
-  if (r < 0) {
-    return r;
-  }
-
   utils::disable_cache();
 
   r = rbd.list2(ioctx, &images);
@@ -325,7 +326,6 @@ int execute(const po::variables_map &vm,
   }
 
   r = do_list(pool_name, namespace_name, vm["long"].as<bool>(),
-              g_conf().get_val<uint64_t>("rbd_concurrent_management_ops"),
               formatter.get());
   if (r < 0) {
     std::cerr << "rbd: listing images failed: " << cpp_strerror(r)
index d47801ef76c598fb514466625c615a16816e63c1..5a929a75939d2adde2a679e476b87b623bcb4cea 100644 (file)
@@ -189,12 +189,11 @@ int execute_prepare(const po::variables_map &vm,
   }
 
   librados::IoCtx dest_io_ctx;
-  if (!dest_pool_name.empty()) {
-    r = utils::init_io_ctx(rados, dest_pool_name, dest_namespace_name,
-                           &dest_io_ctx);
-    if (r < 0) {
-      return r;
-    }
+  utils::normalize_pool_name(&dest_pool_name);
+  r = utils::init_io_ctx(rados, dest_pool_name, dest_namespace_name,
+                         &dest_io_ctx);
+  if (r < 0) {
+    return r;
   }
 
   r = do_prepare(io_ctx, image_name, dest_pool_name.empty() ? io_ctx :
index f8dbb5ec6b2d5fe083634d6ed3623d5a215ce77a..af684944017d118d13e235874c154471443351ba 100644 (file)
@@ -143,6 +143,7 @@ int execute_add(const po::variables_map &vm,
     return r;
   }
 
+  normalize_level_spec_args(&args);
   r = utils::mgr_command(rados, "rbd mirror snapshot schedule add", args,
                          &std::cout, &std::cerr);
   if (r < 0) {
@@ -177,6 +178,7 @@ int execute_remove(const po::variables_map &vm,
     return r;
   }
 
+  normalize_level_spec_args(&args);
   r = utils::mgr_command(rados, "rbd mirror snapshot schedule remove", args,
                          &std::cout, &std::cerr);
   if (r < 0) {
@@ -215,6 +217,7 @@ int execute_list(const po::variables_map &vm,
     return r;
   }
 
+  normalize_level_spec_args(&args);
   std::stringstream out;
   r = utils::mgr_command(rados, "rbd mirror snapshot schedule list", args, &out,
                          &std::cerr);
@@ -279,6 +282,7 @@ int execute_status(const po::variables_map &vm,
     return r;
   }
 
+  normalize_level_spec_args(&args);
   std::stringstream out;
   r = utils::mgr_command(rados, "rbd mirror snapshot schedule status", args,
                          &out, &std::cerr);
index 64e9fd21067da05590399ac72451b3c165c274bc..86df223dc751bf65b34dcd40b39b8bfa4fdc5678 100644 (file)
@@ -617,6 +617,7 @@ int execute_iostat(const po::variables_map &vm,
     return r;
   }
 
+  utils::normalize_pool_name(&pool);
   std::string pool_spec = format_pool_spec(pool, pool_namespace);
 
   // no point to refreshing faster than the stats period
@@ -679,6 +680,7 @@ int execute_iotop(const po::variables_map &vm,
     return r;
   }
 
+  utils::normalize_pool_name(&pool);
   iotop::MainWindow mainWindow(rados, format_pool_spec(pool, pool_namespace));
   r = mainWindow.run();
   if (r < 0) {
index a71457bbf4bcf994cf5a5a82ae8fb125f7c9449a..b3e6d19168e699b28f08314ce030bde900384fad 100644 (file)
@@ -399,8 +399,8 @@ void get_purge_arguments(po::options_description *positional,
        "value range: 0.0-1.0");
 }
 
-int execute_purge (const po::variables_map &vm,
-                   const std::vector<std::string> &ceph_global_init_args) {
+int execute_purge(const po::variables_map &vm,
+                  const std::vector<std::string> &ceph_global_init_args) {
   std::string pool_name;
   std::string namespace_name;
   size_t arg_index = 0;
@@ -445,10 +445,19 @@ int execute_purge (const po::variables_map &vm,
   r = rbd.trash_purge_with_progress(io_ctx, expire_ts, threshold, pc);
   if (r < 0) {
     pc.fail();
-  } else {
-    pc.finish();
+    if (r == -ENOTEMPTY || r == -EBUSY || r == -EMLINK || r == -EUCLEAN) {
+      std::cerr << "rbd: some expired images could not be removed"
+                << std::endl
+                << "Ensure that they are closed/unmapped, do not have "
+                << "snapshots (including trashed snapshots with linked "
+                << "clones), are not in a group and were moved to the "
+                << "trash successfully."
+                << std::endl;
+    }
+    return r;
   }
 
+  pc.finish();
   return 0;
 }
 
index b6282f91e063c05fb08a4d9b6890c6524cc57b92..f090754c4b9713e5e1d153d6426a5fdebfec78d6 100644 (file)
@@ -173,6 +173,7 @@ int execute_add(const po::variables_map &vm,
     return r;
   }
 
+  normalize_level_spec_args(&args);
   r = utils::mgr_command(rados, "rbd trash purge schedule add", args,
                          &std::cout, &std::cerr);
   if (r < 0) {
@@ -207,6 +208,7 @@ int execute_remove(const po::variables_map &vm,
     return r;
   }
 
+  normalize_level_spec_args(&args);
   r = utils::mgr_command(rados, "rbd trash purge schedule remove", args,
                          &std::cout, &std::cerr);
   if (r < 0) {
@@ -245,6 +247,7 @@ int execute_list(const po::variables_map &vm,
     return r;
   }
 
+  normalize_level_spec_args(&args);
   std::stringstream out;
   r = utils::mgr_command(rados, "rbd trash purge schedule list", args, &out,
                          &std::cerr);
@@ -309,6 +312,7 @@ int execute_status(const po::variables_map &vm,
     return r;
   }
 
+  normalize_level_spec_args(&args);
   std::stringstream out;
   r = utils::mgr_command(rados, "rbd trash purge schedule status", args, &out,
                          &std::cerr);
index 170d3c1d0cc81b34ae606345aa5bd63ecb05555c..c2c28171f87dcb63d79480e8f5f5553d004bb891 100644 (file)
@@ -211,7 +211,7 @@ private:
   int m_error_code = 0;
   std::string m_error_description;
 
-  C_UpdateWatchCtx* m_update_watch_ctx;
+  C_UpdateWatchCtx* m_update_watch_ctx = nullptr;
   uint64_t m_local_update_watcher_handle = 0;
   uint64_t m_remote_update_watcher_handle = 0;
   bool m_image_updated = false;